KamoCRM

Dare il menu di scelta rapida la copia e incollare che non aveva mai avuto

Fixkamo-internal
Spegnimento
6 settembre 2026 alle ore 01:03 UTC
Autore
Kamo
Impegno
20358db

Supprimere il menu contestuale del browser (734f68cb) ha preso l'unica copia / incollare il La finestra del terminale era in realtà. Non è quello che sembrava — ci sono Copia e Paste pulsanti sulla striscia — quindi questo è ciò che era sotto. Leggere il clipboard è permesso-gated in ogni browser, e `paste()` gettato il suo rifiuto lontano in un nudo `catch`; `copySelection` era peggio, in attesa Il che non puo' prendere nulla quando `navigator.clipboard` non è definito perché l'accesso alla proprietà getta prima C'è una promessa. Entrambi fallirono invisibilmente. Il menu del browser era l'unico percorso che non richiedeva alcun permesso a tutti: xterm registra un `paste` nativo ascoltatore sulla sua area di testo nascosta e sulla sua radice proprio in modo che un nativo Paste atterra nel guscio. Quindi il pulsante destro diventa quello di questa finestra, e la finestra disegna il menu: - La stampa viene fermata nella fase di cattura, sopra gli ascoltatori di xterm, quindi è mai segnalato a tmux (`mouse on`, impostato dall'agente desktop) e tmux disegni nessun menu di riquadro dietro il nostro. Un menu, che era il punto di 734f68cb. Ogni altro pulsante è intoccato. Verificato in Chrome, non solo in jsdom: la stampa non raggiunge l'emulatore, `contextmenu` spara ancora con le sue coordinate, e il menu nativo rimane prevenuto. - Copia rientra in un'area di testo graffiante ed execCommand quando l'API di Clipboard rifiuta, quindi una copia è sempre disponibile. Paste utilizza readText, che è il metà che può essere rifiutato. - E' per questo che ogni elemento nomina la sua scorciatoia. Ctrl+ Shift+V è il browser OWN incollare e non può mai essere rifiutato: restituire falso dalla chiave personalizzata di xterm handler restituisce da ` keyDown` prima di prevenireDefault, in modo che il browser incolla nell'area di testo xterm sta ascoltando. Quell'ultimo corregge anche una doppia pasta. Ctrl+ Shift+V ha restituito falso e chiamato readText, così la pasta del browser e il nostro entrambi atterrati — ogni pasta raddoppiato il suo proprio testo per chiunque abbia concesso il permesso. Ctrl+ Shift+C cancella ora esplicitamente, o Chrome apre l'ispettore elemento sopra il terminale su copia.

Tutte le modifiche

Come quello che vedi la spedizione?

Tutto questo arriva nel vostro spazio di lavoro da solo. Iniziare sul piano gratuito e leggere di nuovo questa pagina in un mese.

Inizia gratis per sempreVisualizza il prezzo