Wie erhalte ich Aero Snap in Unity 2D?

19

Ich vermisse wirklich die "Aero Snap" -Fensterfangfunktion in Unity 3D. Gibt es eine Möglichkeit, es in Unity 2D zu bekommen oder eine Alternative dazu?

Shibumi
quelle

Antworten:

8

11.10 und höher

Der vollwertige Aero-Snap ist ein Compiz-Feature.

Wenn compiz für Ihren PC zu umfangreich / problematisch ist, können Sie einen modifizierten Fenstermanager wie z xfwm4

Bildbeschreibung hier eingeben

Durch Ziehen der Fenster nach oben / unten / links oder rechts wird das Fenster an diesem Teil des Bildschirms ausgerichtet. Durch Ziehen über die Titelleiste wird die ursprüngliche Größe wiederhergestellt.

Der nette Nebeneffekt der Verwendung xfwm4ist, dass Sie die netten GUI-Optimierungswerkzeuge erhalten, um die Tastatur / Dekoratoren usw. zu modifizieren:

  • xfwm4-settings - Stil / Tastaturkürzel / Fensterfokusmodell / Fensterfangsteuerung
  • xfwm4-tweaks-settings - Window Cycling / schöner leichter Compositor und vieles mehr
  • xfwm4-workspace-settings - Legen Sie die Anzahl der zu verwendenden Arbeitsbereiche fest.

wie man

Der geänderte Fensterfang ist in meiner PPA verfügbar

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

Empfehlung

Standardmäßig ist dieser Fenstermanager nicht in das globale Menü integriert.

Zwei Vorschläge -

Vorschlag 1:

Entfernen Sie das globale Menü, wenn Sie die meiste Zeit über maximierte Fenster verwenden, da sich die xfwm4-Dekorationen nicht in das Gnome-Panel integrieren lassen.

sudo apt-get remove indicator-appmenu

Verwenden Sie xfwm4 --replacediesen Fenstermanager als Startanwendung anstelle der Metacity.

Vorschlag 2:

Verwenden Sie maximusdiese Option , um die Fensterdekoration für maximierte Fenster gemäß den folgenden Fragen und Antworten zu entfernen:

Mutter: Globale Menüintegration

fossfreedom
quelle
3

Dies funktioniert nicht so gut wie die Funktion in Unity 3D, funktioniert jedoch in gewissem Maße. Meine Lösung verwendet Tastaturkürzel, aber Sie können stattdessen problemlos Kantenbindungen (dh links, rechts und oben) verwenden, um den Effekt auszulösen.

  1. Pakete installieren. Füge dies in das Terminal ein (Strg + Umschalt + V):sudo apt-get install compizconfig-settings-manager compiz-fusion-plugins-extra wmctrl

  2. Öffnen Sie nun den Compiz Config Settings Manager (ALT + F2 ccsm oder system> preferences> CompizConfig…, etc). Wählen Sie die Option "Befehle".

  3. In 'Command Line 0' einfügen: -

    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. In 'Command Line 1' einfügen: -

    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. Und in 'Command Line 2' einfügen: -

    wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz
    
  6. Gehen Sie jetzt zu "Key Bindings". Klicken Sie auf die Schaltfläche für 'Run Command 0', aktivieren Sie sie und greifen Sie auf diese Tastenkombination zu: Drücken Sie auf die Schaltfläche "Start" und den Pfeil nach links. Machen Sie dasselbe für alle Befehle, so ist es so:

    • Führen Sie den Befehl 0 ~ Left aus
    • Führen Sie den Befehl 1 ~ Right aus
    • Führen Sie den Befehl 2 ~ Top aus

NB: Sie können das Grid-Plugin (wie in Unity 3D) installieren, mit dem Sie mit Strg + Alt + 6 [Num-Pad] usw. Fenster in ein Gitter einrasten lassen. Ich kann mich jedoch nicht erinnern, wie man dafür Fensterränder verwendet.

Die negative Form
quelle
1
funktioniert das für jemanden Prost
Typ
Denken Sie nicht, dass dies für Unity2D funktioniert, was vom OP eindeutig angegeben wurde. Ich bin irgendwie verwirrt, worauf sich die negative Form bezieht.
Chzbrgla
Mit der obigen Lösung konnte ich das Verhalten in Unity 2D nicht zum Laufen bringen. Die Befehle sind in Ordnung, wenn sie über ein Terminalfenster ausgegeben werden, aber das Compiz- CommandPlugin lässt dies nicht zu &&. Stattdessen könnte ich dieses Problem lösen, indem ich die Befehle in separate .sh-Dateien und sh /path/to/script.shin die Befehlszeilen in compiz setze .
Christian Skjødt
2

Sie können wmctrl auch für Aero Snap verwenden, was die folgenden Vorteile hat:

  1. Sie müssen sich nicht mit Compiz anlegen.
  2. Sie können es in Gnome (Unity2D) ausführen, ohne einen weiteren Fenstermanager installieren zu müssen.

Ich habe ein Python-Skript geschrieben, um die Befehle einzurichten. Alles was Sie tun müssen ist:

  1. Passen Sie die Auflösung an Ihre Anzeige an
  2. Weisen Sie den erstellten Befehlen Tastaturkürzel zu

http://pastebin.com/T6StxqQd

Uhrwerk
quelle
1

Ich hatte besseres Glück mit Quicktile. Verwenden Sie es auf die gleiche Weise, erstellen Sie Verknüpfungen zum Befehl.

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

Stephen
quelle
Sie können es auch mit --daemonizeder integrierten Tastenkombination ausführen. Es reagiert schneller, da es nicht bei jedem Tastendruck gestartet, ausgeführt und dann beendet werden muss.
ssokolow