Impedire a Mavericks di aprire app sulla seconda schermata?


15

Ho un MacBook Pro e ad esso ho collegato un display esterno, finora fantastico. Tuttavia, Mavericks sembra insistere sull'apertura di nuove applicazioni sul display secondario, anche se la finestra / app attualmente attiva (chiave e principale) è sul display principale. Incredibilmente frustrante perché hanno schermi di dimensioni diverse e si incastra terribilmente con le dimensioni delle mie finestre salvate. Esiste un modo per impedire a Mavericks di farlo? Voglio solo aprire le app sul display principale o almeno farle ricordare su quale display le ho chiuse l'ultima volta.

Nel caso in cui aiuti, questa è la mia disposizione di visualizzazione dalle preferenze di sistema: inserisci qui la descrizione dell'immagine


forse dovresti rendere l'altro display il tuo display principale. dai un'occhiata qui osxdaily.com/2010/04/27/set-the-primary-display-mac
konqui

Ho provato con un'installazione pulita, ancora, lo stesso problema. Ha archiviato un radar per esso, dal momento che sembra essere un bug e niente di proposito.
JustSid,

Risposte:


16

Sono abituato a collegarmi a proiettori per sale conferenze o grandi schermi che variano in risoluzione, quindi mentre mi muovo da una stanza all'altra nel corso della giornata, anche le mie finestre devono essere costantemente ridimensionate. Quindi sento il tuo dolore. :-)

Per evitare confusione, voglio definire un paio di termini per questa risposta:

  • Il display principale è quello con la barra dei menu nella scheda Disposizione in Preferenze di Sistema.
  • Il display principale è quello su cui vuoi fare cose, indipendentemente dal fatto che sia il display principale.
  • Il display secondario è quello senza la barra dei menu nella scheda Disposizione in Preferenze di Sistema.

Fondamentalmente, il problema è che vedi una differenza importante tra il display principale e quello principale; Mac OS X no, e ti combatterà quando proverai a mantenere questa distinzione trattando il display secondario come display principale.

A meno che non provino diversamente a fare diversamente, le app si apriranno sempre su qualsiasi display principale. Questa è sicuramente una delle caratteristiche del display principale. (È una parte di livello piuttosto basso dell'API Quartz, in particolare la chiamata CGConfigureDisplayOrigin , quindi questo comportamento non è configurabile se l'app stessa non consente di configurarla.)

Suggerirei forse di chiederti quali sono le cose che ti rendono fastidioso ("pasticciare con altre cose" mentre lo metti nel tuo commento) per non mantenere il tuo display principale come display principale quando ti connetti, perché potrebbero essere configurabili ; questo comportamento non lo è.

Ho un paio di trucchi per te che potrebbero aiutarti, però:

Il mirroring e quindi il non-mirroring dei display fanno sì che tutte le finestre troppo grandi per adattarsi allo schermo più piccolo vengano ridimensionate e si adattino a tutte le finestre sul display principale. Non è la soluzione perfetta, lo so, poiché vuoi cose sul display secondario, ma può essere un'utile soluzione alternativa quando combinata con il trucco successivo, specialmente se conosci la scorciatoia da tastiera: ⌘-F1. Premerlo, lasciare che il sistema passi al mirroring e premerlo di nuovo. Tutte le finestre verranno ridimensionate sul display più piccolo e saranno sul display principale.

Un altro strumento molto utile per aggirare il problema è BetterTouchTool , che consente di impostare i gesti "Centra finestra su Monitor successivo" e "Massimizza finestra su Monitor successivo". Assegna questi a clic a quattro e cinque dita, rispettivamente, e quindi posso rapidamente aprire una finestra da un monitor all'altro semplicemente schiacciando il trackpad. (Se non si utilizza un trackpad quando si è collegati al grande display, BTT può fare gesti anche con altri dispositivi di puntamento.)

Questi due trucchi insieme hanno reso il lavoro con risoluzioni in costante cambiamento non perfetto, ma almeno tollerabile. Se voglio avere tutte le mie finestre sul display secondario (sto dando una sessione di allenamento, diciamo, e voglio che la barra dei menu sia visibile agli studenti, ma voglio che tutte le mie finestre non correlate al training siano sull'altro display) , Faccio il trucco del mirror / unmirror e poi schiaccio quattro volte il trackpad un sacco di volte fino a quando le finestre non sono saltate fuori.

Infine, se ti piace giocherellare, potresti dare un'occhiata a questo Applescript che sposta tutte le finestre in primario con un metodo diverso. A differenza del metodo di mirroring, che sposta Windows in primario come effetto collaterale, questo lo fa esplicitamente, quindi è possibile modificarlo per spostare Windows sul display principale, secondario, preferito. Ma non è facile, il che potrebbe darti un'idea del perché tutto ti sta combattendo contro questo uso. Ecco la linea cruciale di questo Applescript:

set position of window x to {0, 22}

Poiché la barra dei menu ha 22 coordinate di visualizzazione (che prima erano i "pixel" prima della visualizzazione di Retina) e gli schermi e le finestre hanno i loro punti di origine in alto a sinistra, questa linea sposta la finestra x a destra in basso e a filo a sinistra con la barra dei menu. Per adattare questo script in modo da spostare invece tutte le finestre nella parte superiore sinistra del display secondario, dovresti capire le sue coordinate e usarlo come valore x. Nella disposizione che mostri nel tuo screenshot, lo "0" verrà sostituito da un numero negativo , poiché sei alla sinistra della barra dei menu. Ci vorrebbe un po 'di confusione per ottenere il giusto, soprattutto se si voleva che la sceneggiatura funzionasse indipendentemente dalla disposizione.

Questo è tutto kludgey, lo so; ma dovrai accettare kludges se vuoi che il display principale e quelli principali siano diversi. Ecco perché ti consiglio vivamente di provare ad affrontare ciò che ti impedisce di lasciare che l'altro display sia primario piuttosto che combattere questa battaglia particolare.


Scusate la confusione, ma volevo dire che voglio che il mio display principale sia il display principale (abbastanza stranamente, il display principale È il display principale. CoreGraphics restituisce lo stesso CGDisplayIDper loro)
JustSid

@JustSid - Interessante, stai dicendo che le app si stanno aprendo nella schermata più a sinistra in alto? È semplicemente bizzarro e non posso replicarlo: come ho già detto, uno dei comportamenti specifici della finestra principale è che le app aprono nuove finestre per impostazione predefinita. Tutto quello che posso pensare è, provare a spingere il display verso il basso in modo che non sia a filo in cima? Non ho alcuna spiegazione del perché questo sarebbe, ma forse avere il display principale più in alto sull'asse y sarebbe di aiuto. Ho detto che non potevo replicarlo, ma non ho un display esterno più piccolo da provare se questo - stranamente - è ciò che lo sta causando.
Trey,

Sì, questo è esattamente il problema. Tutto si apre sullo schermo secondario più piccolo, anche se voglio che le cose si aprano sul grande display principale! Ma, riorganizzare il display secondario di un po 'ha risolto il problema! Non so dove ti sia venuta quell'idea, ma è geniale, grazie mille! Vado ad aggiornare il mio radar e spero che sia stato risolto in 10.9.1 (non era presente in 10.7-10.8).
JustSid,

@JustSid "stai dicendo che le app si stanno aprendo nella schermata più a sinistra in alto?" Ho lo stesso problema: si aprono app e documenti sul mio display secondario.
bames53

5

A partire da Mavericks, esiste una distinzione tra monitor attivi e non attivi. Puoi vedere quale monitor è attivo guardando la tua barra dei menu (presumo che tu usi il nuovo comportamento degli spazi di Mavericks). Se li confronti su entrambi gli schermi, uno sarà sbiadito e uno sarà per lo più opaco. Viene attivato quello che è per lo più opaco e le nuove finestre dell'applicazione si apriranno sullo schermo con la schermata della barra dei menu opaca a meno che non ci siano altre finestre della stessa app sull'altro schermo.

Quindi, come puoi cambiare quale schermo è attivo?

Basta premere un punto qualsiasi del desktop sullo schermo che si desidera aprire la finestra. Ciò renderà la barra dei menu dello schermo quasi opaca e l'apertura della finestra dovrebbe ora aprirla sullo schermo.

Si noti inoltre che questo comportamento è indipendente dalla posizione dei Docks. Nella mia esperienza, ho dovuto fare clic sul desktop (tra i fileS) per attivare l'altra schermata (per cui intendo metterlo nello stato attivo)

Aggiornare

È vero che ciò non impedisce a Mavericks di aprire le finestre sull'altro schermo 8.Puoi andare al "controllo missione" nelle Impostazioni di sistema e deselezionare "I monitor usano spazi diversi" per tornare al comportamento precedente a Mavericks. In questo modo si aprirà sullo schermo chiuso per ultimo e / o sullo schermo in cui si trova la barra dei menu. Il metodo che ho descritto sopra l'aggiornamento è solo una soluzione del modo Mavericks.


"Viene attivato quello che è per lo più opaco e le nuove finestre dell'applicazione si apriranno sullo schermo con la schermata della barra dei menu opaca a meno che non ci siano altre finestre della stessa app sull'altro schermo." Sto aprendo documenti e si stanno aprendo sul display secondario nonostante non ci siano altre finestre in quell'applicazione aperte su quello schermo e ci siano finestre aperte da quell'app sullo schermo principale (perché continuo a spostarle tutte). Se chiudo una finestra del documento sulla schermata principale e quindi apro di nuovo quel documento, la finestra viene visualizzata sulla schermata secondaria e devo spostarla di nuovo.
bames53

3

con l'app aperta, premi F3 per aprire Mission Control, quindi trascina l'app sullo schermo su cui desideri aprirla in futuro. È assegnato a uno "spazio" sul tuo computer - Cambia lo spazio a cui è assegnato.


2

Le nuove finestre si apriranno sempre sul display con la "barra dei menu", quindi sposta semplicemente la barra dei menu "predefinita" sul display dove preferisci avviare le nuove finestre.

Guarda lo screenshot sopra della finestra di dialogo "Preferenze di visualizzazione". Notare che solo uno dei "Display" mostra una barra dei menu. Inoltre, osserva il testo "Per spostare la barra dei menu, trascinala su un altro display".


4
Bene, sì, il mio punto era che la barra dei menu era già sullo schermo giusto e quello schermo aveva sicuramente il focus, eppure i programmi si aprivano sull'altro schermo.
JustSid

1

Avevo lo stesso problema. Quello che ho trovato sono le applicazioni aperte su qualunque schermo sia acceso il dock.

I miei schermi erano configurati come i tuoi, dock sul lato sinistro. Ho spostato il dock a destra e ora si aprono sul monitor principale e non su quello secondario.


0

Per fare in modo che OS X apra sempre un'app su uno schermo specifico in Mavericks o versioni successive, fai clic con il pulsante destro del mouse sull'icona del dock per l'app e seleziona "Opzioni" - Assegna al desktop 1 o 2 (Desktop 2 dovrebbe essere lo schermo secondario). Ho scoperto che non sempre funziona dopo aver trascinato alcune app sull'altro display (ad esempio Safari in El Capitan). Una volta lì, a volte vuole continuare ad aprirsi lì e almeno a El Capitan, normalmente si apre sul display principale a meno che non sia stato specificamente detto di aprirlo sul display secondario. Puoi anche utilizzare le OPZIONI -> Assegna sul dock per spostare un programma su qualsiasi display (puoi risparmiare tempo non spostando il mouse su un altro display per trascinarlo di nuovo, in particolare se hai più di due monitor.

Vorrei solo che ci fosse un'opzione per avere un Dock su ogni display in ogni momento. Preferisco i moli laterali e non puoi farli migrare, il che è un dolore reale. Ho inviato feedback su questo ad Apple, ma lo ignorano e basta. Sarebbe così facile avere un dock su ogni schermo in ogni momento come la barra dei menu (forse anche un altrodock per ogni schermata per le configurazioni in cui si utilizzano spesso determinate app su determinate schermate) e ogni dock su ogni schermata apre le app su quella schermata "attiva". Non mi dispiacerebbe avere un pulsante sulla finestra stessa con un "invia per visualizzare". È più semplice che dover trascinare le finestre, in particolare se le hai disposte in modo che non siano affiancate (ad esempio uso la diagonale in modo da non spostare accidentalmente il mouse sull'altro display e questo mi permette di tenere un Dock acceso il lato sinistro del monitor destro poiché mi piace il dock a sinistra e le icone a destra in ogni momento, indipendentemente dalle posizioni del monitor).


1
L'unica app con cui ho problemi è TextEdit che apre SEMPRE i file sullo schermo della mia TV (display secondario). Nessuna delle risposte in questo thread modifica questo comportamento. Tutte le altre app si aprono sul mio display principale (Macbook). Non è una tragedia dover prendere manualmente le finestre TextEdit da un display, trascinarle sull'altro e ridimensionarle, ma rientra nella categoria Applesoft, non è vero. (Apple preventivamente coniare questo termine per la sua BASIC non mi impedisce di utilizzare anche per descrivere i prodotti di Apple che si comportano come quelli di Microsoft.)
mathematrucker
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.