Comment obtenir Aero Snap dans Unity 2D?


19

Je manque vraiment la fonction de capture de fenêtre "Aero Snap" présente dans Unity 3D. Existe-t-il un moyen de l'obtenir, ou une alternative à celui-ci, dans Unity 2D?

Réponses:


8

11.10 et plus

L' Aero-snap à part entière est une fonction compiz.

Si compiz est trop lourd / problématique pour votre PC, vous pouvez utiliser un gestionnaire de fenêtres modifié tel que xfwm4

entrez la description de l'image ici

En faisant glisser les fenêtres vers le haut / le bas / la gauche ou la droite, la fenêtre s'accrochera à cette partie de l'écran. Faire glisser via la barre de titre rétablira sa taille d'origine.

L'effet sympa de l'utilisation xfwm4est que vous obtenez les bons outils de réglage de l'interface graphique pour modifier le clavier / les décorateurs, etc.:

  • xfwm4-settings - style / raccourcis clavier / modèle de focus de fenêtre / contrôle d'accrochage de fenêtre
  • xfwm4-tweaks-settings - cycle de fenêtre / beau compositeur léger et bien plus encore
  • xfwm4-workspace-settings - définissez le nombre d'espaces de travail que vous utiliserez.

comment

Le snap de fenêtre modifié est disponible dans mon PPA

sudo add-apt-repository ppa:fossfreedom/xfwm4
sudo apt-get upgrade
sudo apt-get install xfwm4

recommandation

Par défaut, ce gestionnaire de fenêtres ne s'intègre pas au menu global.

Deux suggestions -

Suggestion 1:

Supprimez le menu global si vous utilisez des fenêtres maximisées beaucoup de temps car les décorations xfwm4 ne s'intègrent pas avec le panneau gnome.

sudo apt-get remove indicator-appmenu

Utilisez-la xfwm4 --replacecomme application de démarrage pour utiliser ce gestionnaire de fenêtres au lieu de Metacity.

Suggestion 2:

Utilisez maximuspour supprimer la décoration de la fenêtre pour les fenêtres maximisées selon ce Q&A:

Mutter: intégration de menu globale


3

Cela ne fonctionne pas aussi bien que la fonctionnalité dans Unity 3D, mais cela fonctionne dans une certaine mesure. Ma solution utilise des raccourcis clavier, mais vous pouvez facilement utiliser les liaisons de bord (c'est-à-dire gauche, droite et haut) à la place pour déclencher l'effet.

  1. Installez les packages. Collez (Ctrl + Maj + V) ceci dans le terminal:sudo apt-get install compizconfig-settings-manager compiz-fusion-plugins-extra wmctrl

  2. Ouvrez maintenant le gestionnaire de paramètres de configuration Compiz (ALT + F2 ccsm, ou système> préférences> CompizConfig…, etc.). Sélectionnez l'option «Commandes».

  3. Dans la «ligne de commande 0», collez: -

    WIDTH=`xdpyinfo | grep 'dimensions:' | cut -f 2 -d ':' | cut -f 1 -d 'x'` && HALF=$((($WIDTH/2)-10)) && wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz && wmctrl -r :ACTIVE: -b add,maximized_vert && wmctrl -r :ACTIVE: -e 0,0,0,$HALF,-1
    
  4. Dans la ligne de commande 1, collez: -

    WIDTH=`xdpyinfo | grep 'dimensions:' | cut -f 2 -d ':' | cut -f 1 -d 'x'` && HALF=$(($WIDTH/2)) && wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz && wmctrl -r :ACTIVE: -b add,maximized_vert && wmctrl -r :ACTIVE: -e 0,$HALF,0,$HALF,-1
    
  5. Et dans la pâte 'Command Line 2': -

    wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz
    
  6. Maintenant, allez dans "Liaisons de touches". Cliquez sur le bouton «Exécuter la commande 0», activez-le et saisissez cette combinaison de touches: appuyez sur «bouton de démarrage» et sur la flèche gauche. Faites de même pour toutes les commandes, c'est comme ceci:

    • Exécuter la commande 0 ~ gauche
    • Exécuter la commande 1 ~ droite
    • Exécutez la commande 2 ~ Haut

NB: vous pouvez installer le plugin de grille (comme dans Unity 3D) qui vous permet d'utiliser Ctrl + Alt + 6 [Pavé numérique] etc. pour accrocher des fenêtres dans une grille. Cependant, je ne me souviens pas comment utiliser les bords de fenêtre pour cela.


1
ça marche pour quelqu'un? cheers
tapez

Ne pensez pas que cela fonctionne pour Unity2D, ce que l'OP a clairement indiqué. Je suis un peu confus quant à la référence à la forme négative.
chzbrgla

Je n'ai pas pu faire fonctionner le comportement dans Unity 2D avec la solution ci-dessus. Les commandes sont correctes lorsqu'elles sont émises depuis une fenêtre de terminal mais le Commandplugin compiz ne le permet pas &&. Au lieu de cela, je pourrais résoudre ce problème en plaçant les commandes dans des fichiers .sh séparés et en les mettant sh /path/to/script.shdans les lignes de commande dans compiz.
Christian Skjødt

2

Vous pouvez également utiliser wmctrl pour Aero snap, qui présente les avantages suivants:

  1. Vous n'avez pas à vous soucier de Compiz.
  2. Vous pouvez l'exécuter depuis Gnome (Unity2D) sans avoir à installer un autre gestionnaire de fenêtres.

J'ai écrit un script Python pour configurer les commandes. Il vous suffit de:

  1. Ajustez la résolution pour l'adapter à votre affichage
  2. Attribuer des raccourcis clavier aux commandes qu'il crée

http://pastebin.com/T6StxqQd


1

J'ai eu plus de chance avec quicktile. Utilisez-le de la même manière, créez des raccourcis vers la commande.

http://ssokolow.github.com/quicktile/


Vous pouvez également l'exécuter avec --daemonizepour utiliser le raccourci clavier intégré et il sera plus réactif car il n'a pas à démarrer, à exécuter l'action, puis à quitter chaque fois que vous appuyez sur une touche.
ssokolow
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.