Ricordando le posizioni delle windows (e preferibilmente anche le dimensioni) in Ubuntu 14.04

Ho appena installato Ubuntu 14.04 insieme a Windows e trovo che una cosa sia molto irritante. Cioè, quando apro qualsiasi applicazione, si apre in alto a sinistra dello schermo.

La prima cosa che devo fare per ogni applicazione aperta è spostarla al centro dello schermo (o ovunque io voglia che sia). Successivamente, chiudo l’app. Ma la prossima volta, è di nuovo in alto a sinistra sullo schermo!

Ho letto domande correlate su AskUbuntu e sul web. Comunque mi stavo chiedendo, dal momento che quelle domande sono state fatte riguardo a Ubuntu 12 .04, se ci fosse una soluzione migliore a questo problema per gli utenti di 14.04? Non dovrebbe esserci qualcosa di simile in Impostazioni? Voglio dire, è solo buon senso. Non è vero? Davvero non lo so più.

Installa ccsm (CompizConfigSettingsManager).

Dopo aver avviato ccsm (lanciato dal pulsante di ricerca Unity), procedi come segue:

(Fare clic su) Windows Manager
(Fare clic su) Posiziona Windows

Usa queste impostazioni:

Soluzioni alternative non Unticked
Multi Output Mode Place across all outputs

La modalità di posizionamento Smart è la chiave per ricordare la posizione desiderata.

Si prega di tenere presente che alcune applicazioni sono programmate per ignorare le impostazioni perferredate del sistema.

(La mia altra risposta spiega perché il ripristino di una posizione della finestra non è ansible per il caso generale).

Per casi speciali in cui è ansible salvare e ripristinare una posizione della finestra, è ansible utilizzare gli script della shell per salvare e ripristinare la posizione o la geometria (la geometria è la posizione più la dimensione) per i casi che non possono essere gestiti dalla configurazione del gestore windows (vedere di seguito).

Esistono vari strumenti da riga di comando per leggere e impostare le proprietà di Windows, ad esempio wmiface e wmctrl .
Un esempio minimo:

Ottieni la geometria di una finestra in formato geometria X (in genere WxH + X + Y) (nota la coordinata y – Sto usando 16 desktop virtuali / viewport virtuali):

 $ wmiface windowGeometry 46137711 1256x814+1186+5005 

Sposta la finestra altrove (nota il diverso formato per la geometria):

 wmctrl -i -r 46137711 -e "0,1186,4005,1256,814" 

Un altro approccio consiste nel definire posizioni fisse per determinate windows anziché ripristinarne la posizione. Questo di solito può essere configurato nei dettagli della configurazione della gestione della finestra, come ccsm .

Le posizioni delle windows non sono così semplici da gestire come può suggerire il “buon senso”.
Una posizione è razionale per alcuni riferimenti, come “lo schermo”. Ma ci sono così tante varianti di cosa “lo schermo” potrebbe significare qui (vedi sotto), che non è ansible salvare le posizioni in modo generale.

Ovviamente può essere fatto in vari modi che sono adatti ad alcuni ambienti – ma se si tratta di “salvare una posizione e ripristinarla in un secondo momento” – ciò non è ansible perché il sistema di coordinate per ripristinare la posizione non è chiaro.

Quindi, cosa è difficile mostrare una finestra in una certa posizione su uno schermo?

Sotto Ubuntu – come su qualsiasi moderno sistema basato su X11 – lo “schermo” può cambiare in vari modi – durante il runtime, quindi il salvataggio della posizione deve gestirlo.

Ad esempio, la forma può cambiare; Da un rettangolo a due rettangoli affiancati, a tre rettangoli con uno spazio non accessibile tra loro. Il “desktop virtuale” può cambiare. Il viewport può cambiare. Ciascuno interessa le coordinate che verrebbero ripristinate.

Un problema speciale è assicurarsi che nulla venga spostato dalla parte attualmente accessibile della “schermata”.


Sul lato problema dell’apertura delle windows in alto a sinistra: è ansible scegliere uno tra più algoritmi per decidere dove posizionare una nuova finestra nelle impostazioni di gestione della finestra (ad esempio in ccsm ). Ad esempio, potresti averli aperti dove si trova il puntatore del mouse corrente.

Nel caso in cui qualcuno atterra qui e vuole davvero che Windows sia dove li metti – installa il desktop Enlightenment. È ansible fare clic con il pulsante destro del mouse sull’icona in alto a sinistra di qualsiasi pagina, selezionare la finestra, ricordare e selezionare la dimensione e la posizione. Adoro questa opzione ed è uno dei motivi per cui rimango con e17.