elementary / gala

Gala Window Manager for elementary OS and Pantheon
https://elementary.io
GNU General Public License v3.0
272 stars 76 forks source link

Quarter/corner tiling #105

Open peteruithoven opened 6 years ago

peteruithoven commented 6 years ago

Not sure why the following issue wasn't duplicated to this github repo: https://bugs.launchpad.net/gala/+bug/1432067

I'd like gala to support - in addition to tiling windows just to the left / right half of the screen when dragging per mouse - tiling to quarters of the screen. So, when dragging windows to some areas of the screen, the following should happen:

  • left top corner +/- some threshold --> tile window to the top left quarter of the screen
  • left center +/- some threshold --> tile window to the left half of the screen
  • left bottom corner +/- some threshold --> tile window to the bottom left quarter of the screen
  • right top corner +/- some threshold --> tile window to the top right quarter of the screen
  • right center +/- some threshold --> tile window to the right half of the screen
    • right bottom corner +/- some threshold --> tile window to the bottom right quarter of the screen
  • top of the screen --> maximize window

This behaviour should - as already mentioned - be possible by dragging windows per MOUSE (so please no suggestions to keyboard control, THX!)

Thank you in advance!

best regards, Christian

I personally would also like keyboard support.

(I've been using Quicktile for quarter tiles in the mean time, but it has the following issue: https://github.com/elementary/gala/issues/104) Update: Quicktile doesn't work in elementary OS Juno, see: https://github.com/ssokolow/quicktile/issues/95.

Also relevant: https://www.bountysource.com/issues/931574-gala-should-support-better-window-tiling

peteruithoven commented 6 years ago

I'm pretty sure this logic is handled by Mutter, which Gala uses, so this would probably be out of scope for Gala itself? Recent update on this: https://gitlab.gnome.org/GNOME/mutter/issues/52#note_77121 The actual Mutter issue to track: https://bugzilla.gnome.org/show_bug.cgi?id=751857

peteruithoven commented 5 years ago

I've figured out a crude way of doing quarter tiling using this script: https://gist.github.com/peteruithoven/db0cba0b0849c8cb5e267f6e75126304

Installation:

  1. Move file to: /usr/local/bin/quarter-tiler
  2. Make executable: sudo chmod +x /usr/local/bin/quarter-tiler
  3. Go to System Settings > Keyboard > Shortcuts > Custom
  4. Add custom shortcuts, like: screenshot from 2018-11-07 21 49 41

Issues:

  1. "native" elementary OS apps have a different margin around them than other apps. It's currently configured for elementary native margins.
  2. You'll have to adapt some values based on your screen size.
  3. These settings are for an HiDPI screen, it doesn't currently automatically adjust
peteruithoven commented 5 years ago

I've implemented a quarter tiling Gala plugin that works with keys only at the moment: https://github.com/elementary/gala/pull/408

1280px commented 1 year ago

Is this issue any active now? Would be nice to see this feature in 7.1 or 8

nevillepark commented 1 year ago

I also really miss this feature from other WMs and would love to see it in elementary.