Funziona con l'applicazione selezionata

1

Sto cercando di scrivere un AppleScript che sposterà la mia finestra di app attiva al secondo schermo in modalità a schermo intero. Per fare questo sto cercando un modo per:

  1. Scegli come target un'applicazione selezionata. Non importa se si tratta di Firefox, Spotify o Calendar.

  2. Sposta l'app selezionata in seconda visualizzazione.

  3. Visualizza l'app selezionata nella visualizzazione a schermo intero.

Sto facendo fatica a trovare un modo per scegliere come target la finestra dell'app / app selezionata / attiva. Qualche idea? Sto eseguendo macOS High Sierra.

    
posta Peter Ševčík 11.09.2018 - 15:59
fonte

1 risposta

0

Le informazioni di cui hai bisogno per lavorare con il tuo progetto sono in questi altri thread:

1) Apice per fare clic su verde (zoom) pulsante con opzione giù
--- > Puoi trovare lì (^) come mostrare a schermo intero una finestra (o ingrandirla)

2) Recupera la risoluzione dello schermo di una finestra [che schermo è usato?]
--- > Informazioni su come dimensioni e posizione sono definite su schermi (diversi)

Se avvii questo script (o app) da Editor o dal menu -used-items di Apple avrai bisogno delle linee 2 & 3.
Altrimenti, ad es. chiamati da una scorciatoia, devono essere cancellati.
ANYWAY: Meglio testare questo script con una nuova finestra vuota!

Lo script potrebbe essere simile a questo:

tell application "System Events"
set visible of first process whose frontmost is 1 to 0   -- These 2 lines MAY be
delay 0.2                                                -- necessary, or may NOT.

set dTopSize to size of scroll area 1 of process "Finder" as list  -- Screen size
set frontApp to first process whose frontmost is true    -- Frontmost app
set win_Size to size of window 1 of frontApp as list     -- Window size

-- EITHER [1.]: to move a window onto a screen to its right side:
set position of window 1 of frontApp to {item 1 of dTopSize, 22}
perform action "AXPress" of (first button whose subrole is "AXFullScreenButton") ¬
  of window 1 of frontApp

-- OR [2.]: to move a window onto a screen to its left side (=> negative value):
set position of window 1 of frontApp to {(item 1 of win_Size) * -1, 22}
perform action "AXPress" of (first button whose subrole is "AXFullScreenButton") ¬
  of window 1 of frontApp
end tell

Non uso io stesso una schermata secondaria, quindi posso dedurre solo questo codice dall'origine 2).
Si prega di usare EITH [1.] OPPURE [2.] ... se ENTRAMBI SONO chiamati, possono accadere cose divertenti ...
(Si noti che la modalità a schermo intero "crea" temporaneamente uno spazio di lavoro aggiuntivo.)
Potresti voler testare il comportamento con "AXZoomWindow" invece di "AXPress".

Per favore pubblica le tue esperienze e / o problemi con questo codice qui !!!

    
risposta data 28.11.2018 - 16:55
fonte

Leggi altre domande sui tag