
Key binds
Hi
I am using mozilla firefox on windows 10.
I sometimes fat finger ctrl+shift+w or ctrl+shift+q which closes the browser instead of just closing the tab which I indented.
Is there a way to disable these 2 key binds?
Best regards child
All Replies (7)
That is the why it's keys are programmed for combo keypress - is there a reason why the mouse doesn't work for this.
ctrl+w (close tab) and ctrl+shift+w (close firefox) are very close to each other.
I was thinking it would be enough to have ctrl+shift+q to close firefox (not also ctrl+shift+w).
Using a mouse to close a tab is of course possible. But key binds are very nice to use, both for speed and comfort. Imagine not having a keyboard at all and instead use an on screen keyboard and click every single key with the mouse. It may solve something but it's not really a suitable solution.
Disable a this keybind would be really nice for my problem. Do anyone know how to?
Using a mouse instead of any shortcuts is not good enough for me.
Unless you have a full touchscreen that is the only other way to close tabs opened in a Browser. Those keys are programmed into the Browser key combo settings already. So unless you find a 3rd party software to change those key-combo that is the only other way around to change the key-combo.
There are extensions for configuring keyboard shortcuts but AFAIK they don't enable you to disable Firefox shortcuts. The only way I know is to assign those shortcuts to other actions on your system. I have trained myself to use shortcuts which I set myself using the extension linked below.
https://addons.mozilla.org/en-GB/firefox/addon/select-after-closing-current/
If you close a window accidentally then you can restore that window via "History -> Recently Closed Windows".
Firefox 87+ versions have a pref to disable Ctrl+Shift+Q (Mac/Linux:Command/Ctrl+Q) to close Firefox. You need to close and restart Firefox after toggling this pref.
- about:config => browser.quitShortcut.disabled = true
Disabling the "Ctrl+Q" warning is controlled by this pref.
- about:config => browser.warnOnQuitShortcut
Modified
cor-el said
If you close a window accidentally then you can restore that window via "History -> Recently Closed Windows". Firefox 87+ versions have a pref to disable Ctrl+Shift+Q (Mac/Linux:Command/Ctrl+Q) to close Firefox. You need to close and restart Firefox after toggling this pref.Disabling the "Ctrl+Q" warning is controlled by this pref.
- about:config => browser.quitShortcut.disabled = true
- about:config => browser.warnOnQuitShortcut
Thank you! This disabled the "Ctrl+Shift+Q" command.
Is there a way to disable "Ctrl+shift+W" as well?
Modified
The only way to disable the Ctrl+Shift+W shortcut to close a window is via an autoconfig,cfg file like I posted in the thread.
- /questions/1342992#answer-1426736 How to edit shortcuts
See also:
In your case you need to modify this line:
- let KEYS = ['key_quitApplication','key_reload'];
Change to:
- let KEYS = ['key_closeWindow'];
In case you want to include more keys, see also:
You can use the autoconfig.cfg file in the Firefox installation folder to initialize (set/lock) preferences and run privileged JavaScript code.
To use Autoconfig, place two files into the Firefox installation directory.
- on Windows, they go into the same directory where Firefox is installed
- on macOS, they go into the Contents/Resources directory of the Firefox.app
The autoconfig.js file that specifies to use autoconfig.cfg is placed into the "defaults\pref" directory where the channel-prefs.js file is located.
// pref("general.config.filename", "autoconfig.cfg"); pref("general.config.obscure_value", 0); pref("general.config.sandbox_enabled", false); // disable sandbox to allow privileged JavaScript
The autoconfig.cfg file is placed at the top level of the Firefox directory.
- autoconfig.cfg and autoconfig.js need to start with a comment line (//)
- autoconfig.js needs to use Unix line endings (LF instead of CR/LF)
See also:
Content of autoconfig.cfg
// first line in autoconfig.cfg is a comment line try { let {classes:Cc, interfaces:Ci, manager:Cm, utils:Cu} = Components; const {Services} = Cu.import('resource://gre/modules/Services.jsm'); function ConfigJS() { Services.obs.addObserver(this, 'chrome-document-global-created', false); } ConfigJS.prototype = { observe: function (aSubject) { aSubject.addEventListener('DOMContentLoaded', this, {once: true}); }, handleEvent: function (aEvent) { let document = aEvent.originalTarget; let window = document.defaultView; let location = window.location; if (/^(chrome:(?!\/\/(global\/content\/commonDialog|browser\/content\/webext-panels)\.x?html)|about:(?!blank))/i.test(location.href)) { if (window._gBrowser) { let attr, elm, key, mbo; let KEYS = ['key_closeWindow']; let ATTR = ['key','modifiers','command','oncommand']; for (key in KEYS){ elm = window.document.getElementById(KEYS[key]); if (elm) for (attr in ATTR) if (ATTR[attr] in elm.attributes) elm.removeAttribute(ATTR[attr]); } } } } }; if (!Services.appinfo.inSafeMode) { new ConfigJS(); } } catch(e) {Cu.reportError(e);}
Modified