La scorciatoia «Display successivo» di Rectangle bloccata da un’app a schermo intero? Ecco perché
Un caso limite specifico con più monitor, documentato in una delle segnalazioni più vecchie e ancora rilevanti di Rectangle app (issue #51), riguarda chiunque usi tre o più display con un’app a schermo intero nativa su uno dei display intermedi: Display successivo può bloccarsi, incapace di spostare una finestra oltre l’app a schermo intero per raggiungere il display che sta dietro.
Lo scenario esatto segnalato
Tre display disposti in orizzontale, chiamiamoli 1, 2 e 3, con il display 2 che mostra un’app a schermo intero nativo di macOS. Una finestra normale, non a schermo intero, si trova sul display 1, e l’obiettivo è spostarla sul display 3, saltando completamente il display 2.
Premere Display successivo sposta la finestra dal display 1 al display 2 come previsto, ma poiché il display 2 è occupato da un’app a schermo intero, la finestra finisce di fatto nascosta dietro di essa invece di diventare visibile lì. Premere di nuovo Display successivo, aspettandosi che prosegua verso il display 3, non fa nulla. La scorciatoia si blocca di fatto invece di proseguire il suo percorso attraverso i display rimanenti.
Perché accade
Un’app a schermo intero nativa occupa il proprio Spazio invece di esistere come una finestra ordinaria su quel display, una distinzione trattata più approfonditamente altrove in questa serie. Dal punto di vista di Rectangle mac, «display 2» e «lo Spazio dell’app a schermo intero attualmente mostrato sul display 2» non sono esattamente lo stesso obiettivo, e secondo la descrizione della persona che ha segnalato il problema, Rectangle app non rileva questo automaticamente e non prosegue il ciclo verso il display fisico successivo, come apparentemente faceva l’app Spectacle ormai non più sviluppata nello stesso scenario, secondo il confronto fatto da chi ha segnalato per primo il problema.
La risposta del maintainer, e cosa significa per le versioni attuali
Secondo la discussione sulla stessa issue, il maintainer non ha respinto l’idea, descrivendola come qualcosa a cui non si opponeva ma che non aveva reso prioritaria, e ha suggerito che un collaboratore potrebbe implementarla in modo relativamente semplice rilevando se un display di destinazione sta eseguendo un’app a schermo intero e, in tal caso, passando al successivo. Considerando quanto sia vecchia questa issue specifica, e che all’epoca era più una richiesta di miglioramento aperta che un bug attivamente affrontato, l’approccio più sicuro è controllare direttamente lo stato attuale della issue invece di dare per scontato che questo comportamento resti irrisolto nella versione che usi oggi, una vecchia issue aperta nel tracker di un progetto non è una garanzia permanente che da allora nulla sia cambiato.
Come aggirarlo se ci si imbatte oggi in questo problema
- Sposta prima manualmente la finestra sul display vicino a quello a schermo intero. Invece di affidarti a Display successivo perché salti automaticamente l’ostacolo, usa Mission Control o trascina manualmente per riposizionare l’app a schermo intero stessa, oppure esci temporaneamente dalla sua modalità a schermo intero, liberando il display 2 dall’ostacolo.
- Riduci la dipendenza dallo schermo intero nativo su un display attraverso cui devi far passare regolarmente le finestre. Se un display specifico ospita costantemente un’app a schermo intero che blocca le tue scorciatoie Display successivo, mantenere quell’app in una normale finestra massimizzata (tramite il comando Massimizza di Rectangle app invece dello schermo intero nativo) evita del tutto il problema, dato che l’azione Display successivo di Rectangle app funziona normalmente sulle finestre ordinarie, indipendentemente da quanto siano grandi.
- Spostati direttamente invece di scorrere un passo alla volta, se la tua configurazione lo consente. Una funzione più recente di Rectangle, spostare una finestra su un display specifico indicandone il numero invece di limitarsi ad andare al successivo o al precedente, evita del tutto il problema dello scorrimento sequenziale, dato che punta direttamente al display di destinazione invece di attraversare i display intermedi. Controlla se la tua versione installata include questa funzione prima di affidarti alla soluzione precedente.
Perché questo è un caso limite ristretto, non un problema comune
Questa interazione specifica richiede tre condizioni contemporaneamente: tre o più display, un’app a schermo intero (non solo massimizzata) su un display fisicamente compreso tra l’origine e la destinazione, e la dipendenza dalla scorciatoia Display successivo/precedente passo per passo invece di uno spostamento diretto per numero. La maggior parte delle configurazioni multi-monitor con due display, o le configurazioni che non fanno girare app a schermo intero sul display «intermedio», non incontreranno affatto questo problema. È incluso qui specificamente perché è un comportamento reale e documentato che vale la pena conoscere se la tua configurazione corrisponde esattamente a questo scenario, non perché sia un problema diffuso.
