Come posso impedire alle applicazioni di rubare il focus all'avvio su Mac OS X?


13

Ecco un esempio di caso d'uso:

  1. Apri Firefox
  2. Posiziona il cursore da qualche parte dove puoi digitare
  3. Apri qualcos'altro (eclissi è il mio esempio attuale ..)
  4. Inizia a digitare in Firefox fino a quando eclipse non toglie lo stato attivo e interrompe ciò che stavi digitando

Come posso impedire alle applicazioni di rubare lo stato attivo e interrompere la mia digitazione?

Aggiornare:

Le risposte che sto ricevendo sembrano suggerire che questo non può essere fatto, tuttavia può essere fatto su Windows, quindi trovo difficile immaginare che non possa essere fatto su OSX, sarebbe un enorme fallimento dell'usabilità se fosse così .


Puoi collegarti alla tua fonte per farlo in Windows?
Bwerks,

Risposte:


1

Penso che non puoi: D Puoi sempre eseguire Eclipse su un desktop diverso;)


cambiare desktop sul mio macbook è troppo lavoro imo (due tasti distanti tra loro, nessuna tastiera retroilluminata ..), perdo molto la caduta di 4 dita.
erikvold,

Windows può fare questo a proposito, e trovo difficile credere che osx non possa farlo, perché sarebbe un enorme fallimento dell'usabilità.
erikvold,

1
"Non mi piace" ≠ "usabilità fallita".
Lawrence Velázquez,

vero .. ma non è quello che ho detto. Il mio punto è che consentire alle applicazioni di rubare la messa a fuoco senza fornire all'utente la possibilità di disabilitare ciò è un fallimento dell'usabilità.
erikvold,

specialmente quando windows-xp offre una soluzione per lo stesso problema ..
erikvold

6

Nel caso in cui qualcuno stia ancora cercando una risposta a questo, ho recentemente trovato questo articolo che dovrebbe far luce sulle possibili soluzioni:

http://reviews.cnet.com/8301-13727_7-20085680-263/keep-applications-from-stealing-focus-when-opening-in-os-x/

Certo, è da poco più di un anno dopo che è stata posta la domanda originale, ma la gente sta ancora cercando le risposte alle domande difficili della vita, a quanto pare.

TL; DR: puoi potenzialmente modificare l'applicazione stessa e aggiungere un set di parametri al "info.plist" dell'app, oppure puoi scrivere uno script che avvierà l'app dietro altre finestre. C'è una terza "opzione" che dice sostanzialmente che puoi avere un'app che rimanga sopra le altre, anche mentre si sta avviando, ma ciò non impedisce necessariamente all'app appena lanciata di rubare il focus.


Nota: non perdere tempo ... CNet ha rimosso qualunque contenuto si trovasse alla fine del collegamento indicato in questa risposta. Sono trascorsi quasi 7 anni da quando questa risposta è stata pubblicata ... Poche risposte come questa non possono essere deprecate dall'archivio; perdono MOLTO tempo.
Seamus,

0

Queste qualità sono definite sia nell'applicazione che stai avviando, sia nell'applicazione attualmente in primo piano. Vedi, anche il Finder da cui avvii Eclipse è un'applicazione: se Eclipse non rubasse il focus al Finder, non sembrerebbe che il lancio dell'applicazione abbia fatto qualcosa. L'impostazione predefinita, quindi, è quella di rubare l'attenzione all'avvio dell'applicazione. Forse c'è un plugin per Firefox che lo rende "autocratico?" Puoi sempre aggiungere una chiave LSUIElement al Info.plist dell'applicazione avviata (all'interno del pacchetto dell'app) che rimuove gli elementi dell'interfaccia utente dell'intera applicazione, ma ciò potrebbe ridurne in qualche modo l'utilità.

Eseguire una nuova app in uno spazio diverso e poi tornare indietro non ha funzionato per me; l'app avviata ti riporterà in quello spazio solo dopo aver completato il caricamento.

In realtà, il metodo infallibile per evitare di rubare la concentrazione è solo quello di trattenere i cavalli e attendere il caricamento di un'app una volta avviata. La maggior parte degli utenti esperti manterrà tutte le app che usano su base regolare aperte in background e apriranno qualcosa di nuovo solo quando dovranno distogliere completamente l'attenzione su di esso.


Apro eclissi dal dock, ma se è lo stesso del caso del Finder nella tua risposta, ecco cosa c'è di sbagliato nella tua risposta: non importa che l'eclissi rubi il focus dal Finder o dal dock, perché dopo ruba il focus da quello è quando passo a Firefox e inizio a digitare.
erikvold,

per riassumere, ciò che voglio fare non può essere fatto afayk?
erikvold,

Bene: a qualsiasi applicazione è consentito rubare la messa a fuoco in qualsiasi momento, a meno che l'applicazione attuale non lo proibisca. Alcune app possono farlo più volte nel loro ciclo di avvio prima che si stabilizzino - l'ho sicuramente provato. In realtà, è una funzione dell'applicazione e l'unico modo per aggirarlo è modificare le applicazioni come ho descritto sopra o usarne di diverse.
NReilingh,

quindi Windows ti consentirà di impedire alle applicazioni di rubare lo stato attivo, ma osx no. Lo trovo difficile da credere.
erikvold,

È strano - ci sono alcune domande postate qui su come impedire alle app di Windows di rubare l'attenzione e la soluzione sembra essere un software di terze parti.
NReilingh,
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.