Désactivez Ctrl + q avec userChrome.js dans Firefox Quantum
Cela peut être accompli sans application externe par un tout petit peu de javascript dans votre profil Firefox.
Comme condition préalable, vous devez activer userChrome.js (voir ci-dessous, ou obtenir à partir du dépôt GitHub d'origine )
Après avoir copié le répertoire chrome et son contenu dans votre profil utilisateur, créez un fichier <profile-dir>/chrome/disable_ctrl_q.uc.js
avec le contenu suivant:
var kqa = document.getElementById('key_quitApplication');
if (kqa) kqa.remove();
Enfin, redémarrez Firefox et ctrl + q ne provoquera plus la fermeture de l'application.
Activation de userChrome.js dans Firefox Quantum
Pour être complet, voici le contenu complet des fichiers Chrome modifiés. Pour activer javascript userChrome, créez ces deux fichiers dans un chrome
répertoire de votre profil Firefox.
- Tapez
about:support
dans la barre d'adresse.
- Sous Application Basics> Profile Directory, cliquez sur le bouton Open Directory pour ouvrir votre répertoire de profil Firefox.
- Dans le répertoire de profil, créez un nouveau répertoire appelé
chrome
- Dans le
chrome
répertoire, créez de nouveaux fichiers userChrome.css
et userChrome.xml
avec le contenu répertorié ci-dessous.
- Redémarrez Firefox (vous souhaiterez probablement également créer le fichier .uc.js ci-dessus si vous suivez ces étapes pour désactiver 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>