Deshabilita Ctrl + q con userChrome.js en Firefox Quantum
Esto se puede lograr sin una aplicación externa con un poco de JavaScript en su perfil de Firefox.
Como requisito previo, debe habilitar userChrome.js (consulte a continuación u obtener de repositorio original de GitHub )
Después de copiar el directorio de Chrome y su contenido en su perfil de usuario, cree un archivo <profile-dir>/chrome/disable_ctrl_q.uc.jscon el siguiente contenido:
var kqa = document.getElementById('key_quitApplication');
if (kqa) kqa.remove();
Por último, reinicie Firefox y ctrl + q ya no hará que la aplicación se cierre.
Habilitar userChrome.js en Firefox Quantum
Para completar, a continuación se muestran los contenidos completos de los archivos de Chrome modificados. Para habilitar javascript userChrome, cree estos dos archivos dentro de un chromedirectorio dentro de su perfil de Firefox.
- Escriba
about:supporten la barra de direcciones.
- En Conceptos básicos de aplicaciones> Directorio de perfiles, haga clic en el botón Abrir directorio para abrir su directorio de perfiles de Firefox.
- Dentro del directorio de perfil, cree un nuevo directorio llamado
chrome
- Dentro del
chromedirectorio, cree archivos nuevos userChrome.cssy userChrome.xmlcon los contenidos que se enumeran a continuación.
- Reinicie Firefox (probablemente también desee crear el archivo .uc.js anterior si sigue estos pasos para deshabilitar ctrl + q)
userChrome.css
/* Copyright (c) 2017 Haggai Nuchi
Available for use under the MIT License:
https://opensource.org/licenses/MIT
*/
@namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);
toolbarbutton#alltabs-button {
-moz-binding: url("userChrome.xml#js");
}
userChrome.xml
<?xml version="1.0"?>
<!-- Copyright (c) 2017 Haggai Nuchi
Available for use under the MIT License:
https://opensource.org/licenses/MIT
-->
<bindings id="generalBindings"
xmlns="http://www.mozilla.org/xbl"
xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
xmlns:xbl="http://www.mozilla.org/xbl">
<binding id="js" extends="chrome://global/content/bindings/toolbarbutton.xml#menu">
<implementation>
<constructor><![CDATA[
function makeRelativePathURI(name) {
let absolutePath = Components.stack.filename;
return absolutePath.substring(0, absolutePath.lastIndexOf("/") + 1) + name;
}
// The following code executes in the browser context,
// i.e. chrome://browser/content/browser.xul
Services.scriptloader.loadSubScript(makeRelativePathURI("userChrome.js"), window);
]]></constructor>
</implementation>
</binding>
</bindings>