Come disabilitare il collegamento Ctrl + Q in Firefox su Linux


57

Da Firefox 57 non c'è modo di disabilitare Ctrl+ Qcollegamento tramite plugin su Linux (vedi questo bug ). Tutte le soluzioni alternative che ho trovato si basano sull'impostazione del collegamento globale Ctrl+ Qper "rubarlo" da Firefox. Questo disabiliterà questa scorciatoia in ogni applicazione e desidero disabilitare questa scorciatoia solo in Firefox, senza influire su altre app.

C'è un modo per disabilitare o catturare il collegamento solo per un'applicazione? Sto usando Ubuntu con Unity.


Domanda interessante, ma la risposta può dipendere dal caso d'uso. Pressione accidentale del tasto? Modalità chiosco?
l0b0,

4
@ l0b0 Pressione accidentale dei tasti. Questo è un PC normale, niente di speciale.
rob006,

In tal caso, hai maggiori dettagli? Sto solo controllando se esiste un modo per impostare il sistema su Do What You Want ™, come salvare le schede quando esci, per evitare qualcosa che sospetto sia un fragile hack.
l0b0

6
@ l0b0 Voglio impedire la chiusura del browser premendo accidentalmente il tasto. Ci sono troppe cose che stanno cambiando dopo la chiusura del browser (chiusura delle sessioni, chiusura delle connessioni), preferirei impedire la chiusura del browser piuttosto che correggerne gli effetti.
rob006,

Risposte:


46

Nelle about:configpreferenze impostate.

Firefox> = 65

browser.sessionstore.warnOnQuit true
browser.warnOnQuit true

inserisci qui la descrizione dell'immagine

fonte

Firefox precedente

browser.showQuitWarning true
browser.warnOnQuit true

Testato in tutte le versioni, ho riscontrato 61.0.2-64.0.2 su Linux a 64 bit (e il canale 60esr su Win10). immagine dello schermo


2
Qualche feedback costruttivo con quel downvote?
CrazyPyro,

4
E ora, a partire da FF 63.0.3 (Ubuntu a 64 bit), ctrl-Q si chiude di nuovo immediatamente per me, nonostante entrambe le opzioni siano abilitate. È sorprendente che casino abbiano fatto con questa semplice (cattiva) funzione. Ah bene, forse funzionerà di nuovo in v64 ...
Pont

3
Non vedo l' browser.showQuitWarningff quantum 64.0 64bit su linux. browser.warnOnQuitè abilitato ma non fa nulla?
bool3max,

4
Questo non funziona per me in Firefox 66.0.5 in Manjaro Linux. Dovrà occuparsi browser.tabs.warnOnClose;trueora. Correlati: bugzilla.mozilla.org/show_bug.cgi?id=502908#c73
aguadopd

3
La risposta selezionata non risolve più il problema.
Paul,

15

tl / dr: assegna una scorciatoia globale a Ctrl-Q

In Firefox Quantum, le about:configimpostazioni utilizzate per mettere in guardia contro la chiusura di Firefox tramite una pressione accidentale del tasto Ctrl-Q non funzionano più.

Soluzione alternativa: su Arch Linux | Ambiente desktop XFCE (altre distro e / o desktop Linux possono consentire un approccio simile):

  • Menu Baffi >> Tutte le impostazioni >> Tastiera >> Tasti di scelta rapida dell'applicazione >> Aggiungi

  • Aggiungi una nuova "applicazione" null,; assegnarlo al Ctrl-Qtasto premuto

    • Aggiornamento (commento di @justderb): "Usare 'true' invece di 'null' è utile se non si desidera che venga visualizzata la finestra di errore."

Firefox: "disabilita" Ctrl-Q

Invocazione: qui, ho premuto Ctrl-Qin Firefox Quantum v. 60.0.1 (64-bit); invece di uscire da Firefox, ottengo questo popup,

Firefox - Ctrl-Q 'disabilitato'

Avvertenza: questo, ovviamente, influenza globalmente tutti i tasti premuti Ctrl-Q. Tuttavia, per mia preferenza, questa mancanza è compensata annullando quelle chiusure accidentali di Ctrl-Q di Firefox (dopodiché devo accedere nuovamente ai siti Web: GitHub; reddit; ...).

Aggiornare

La risposta di @crazypyro funziona anche per me (FF Quantum 63.0 su Linux x86_64) dando un avviso popup se si tenta di uscire da Firefox. Questa dovrebbe essere probabilmente considerata la risposta specifica, con la mia soluzione come soluzione più generale.

about:config(entrambi i seguenti set su true):

  • browser.showQuitWarning
  • browser.warnOnQuit

7
Usare al trueposto di nullè bello se non si desidera che venga visualizzata la finestra di errore.
justderb,

@justderb: bello! MrGreen
Victoria Stuart il

1
per me nel plasma archlinux / kde 5 non potevo fare scorciatoia globale senza prima scegliere un'applicazione - non poteva essere vero | null, ma grazie al tuo suggerimento sono stato in grado di rimappare per attivare il microfono - che sul computer di lavoro non ha senso per me comunque grazie!
JTC

La mappatura di CTRL + q in sxhkd dirotta anche il collegamento, impedendo la chiusura di Firefox.
Simon Cedergren Malmqvist

Funziona in Zecca 19.
Paul

7

Disabilita Ctrl + q con userChrome.js in Firefox Quantum

Questo può essere realizzato senza un'applicazione esterna da un po 'di javascript nel tuo profilo Firefox.

Come prerequisito, è necessario abilitare userChrome.js (vedere di seguito o ottenere dal repository GitHub originale )

Dopo aver copiato la directory di Chrome e i suoi contenuti nel tuo profilo utente, crea un file <profile-dir>/chrome/disable_ctrl_q.uc.jscon il seguente contenuto:

var kqa = document.getElementById('key_quitApplication');
if (kqa) kqa.remove();

Infine, riavvia Firefox e ctrl + q non causerà più la chiusura dell'applicazione.


Abilitazione userChrome.js in Firefox Quantum

Per completezza, di seguito sono riportati i contenuti completi dei file Chrome modificati. Per abilitare userChrome javascript, crea questi due file all'interno di una chromedirectory all'interno del tuo profilo Firefox.

  1. Digita about:supportla barra degli indirizzi.
  2. Sotto Nozioni di base sull'applicazione> Directory profilo, fai clic sul pulsante Apri directory per aprire la directory del profilo di Firefox.
  3. All'interno della directory del profilo, crea una nuova directory chiamata chrome
  4. All'interno della chromedirectory, creare nuovi file userChrome.csse userChrome.xmlcon i contenuti elencati di seguito.
  5. Riavvia Firefox (probabilmente vorrai anche creare il file .uc.js sopra se stai seguendo questi passaggi per disabilitare 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>

1
Questo non funziona in Firefox 62
Grief

1
Funziona con l'ultima versione stabile, Firefox 61. Speriamo che 62 sia stato risolto prima che lasci la beta.
thinkmassive

Ora uso la soluzione di CrazyPyro superuser.com/a/1352295/308508
thinkmassive

Non funziona in 69.0.2 (non beta). Inoltre, document.getElementById('key_quitApplication')restituisce null. Il nome di questo elemento è cambiato?
tsbertalan,

6

Una soluzione brutta, ma semplice ed efficace, mantiene sempre aperta una pagina con un onbeforeunloadgestore attivo , ovvero attiverà il messaggio "Questa pagina ti chiede di confermare che vuoi lasciare - i dati che hai inserito potrebbero non essere salvati". finestra di dialogo quando si tenta di chiuderlo.

In questo modo, se provi accidentalmente a CTRL + Q, riceverai quella finestra di dialogo e potrai scegliere "Resta su questa pagina" per annullare l'uscita.

Modifica: pagina personalizzata che ho creato solo per questo scopo


bello spirito hacker lì!
Daniel Hitzel,

Grazie! Aggiunto un link alla mia implementazione.
Jan Schejbal,

Grazie per questo. Funziona per me, e così sfacciato che lo adoro (: è sorprendente per me che FF abbia incasinato questa cosa semplice.
jwd

4

Sono stato in grado di ottenere ciò di cui ho bisogno con AutoKey . Dopo l'installazione ho creato uno script vuoto con assegnato Ctrl+ Qcome "Tasto di scelta rapida" e .*Firefoxcome "Filtro finestra".

inserisci qui la descrizione dell'immagine

Quindi nelle preferenze di AutoKey l'ho aggiunto all'avvio automatico e disabilitato l'icona di notifica, quindi diventa trasparente per me.

inserisci qui la descrizione dell'immagine

L'ho usato per alcune ore e sembra promettente: finora non ci sono falsi positivi o catture mancate. Al momento Ctrl+ Qnon funziona per Firefox, ma funziona perfettamente in PhpStorm, ad esempio.


Inoltre, il bug 1215061 dà qualche speranza che questo sarà più facile in futuro e Firefox avrà finalmente alcune impostazioni di scorciatoie da tastiera decenti.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.