5

Power Toys is an open source toolbox that contains a lot of very useful tools for Windows 10+ and I use it on a daily basis at work. One of them though I really wish I could use in my personal system, which is an Ubuntu 20. That tool is called FancyZones.

You can follow the link for a detailed explanation of all features of it, but in abstract, FancyZones is a tool for zoning your screen area, so you can place windows in these zones. The way it works is, I drag the window with left mouse button down and while at that, I right click, so the zones will show up. When I let go of left mouse button, the window will fill the zone, or I can cancel that by right clicking again while still dragging.

The zones should be fully customizable and it should be possible to change between zoning layouts per monitor through a keyboard shortcut.

For example, I have the laptop monitor and an ultra-wide monitor. The laptop monitor has a layout with 4 zones one on each corner, while the ultra-wide monitor has 3 layouts, 1 is the same as the the laptop's, 2 is 4 zones side by side and 3 is a focused space on the left a little under what a normal monitor would have and the rest to the right is the unfocused content. This one also has another zone on top of it emulating a 720p size monitor for when I screen-share, so I can share just a window with the perfect proportion and size, which means people can enjoy full-screen without having to zoom to understand what I'm sharing

It's not a requirement, but if possible, I would like for it to be available within Ubuntu Software app

3 Answers 3

2

I tried a handful of tiling solutions and put my notes here: https://gist.github.com/bmaupin/5ebd4d7fd52f8911e14fa55cd58aee2d

Here are my current recommendations in order:

Tiling Shell

I'm currently using Tiling Shell. Out of all the tiling extensions, it seems to me to be most similar to FancyZones. It works really well out of the box, with useful default layouts. Ctrl works out of the box to snap to a zone, and Ctrl plus Alt works to span multiple zones.

It does currently have a few bugs when using Wayland and multiple monitors, but it's under active development and they're being worked on. I encountered the same issues with gSnap once I started using Wayland.

gSnap

gSnap was what I used previously. It's another great extension and also works well, although I don't care as much for its default settings, and on rare occasions the functionality to snap to a zone would simply stop working on certain workspaces. Also as mentioned above, it seems to have some bugs when using Wayland and multiple monitors, but it's not as actively developed as Tiling Shell so I'm less hopeful that a fix will come soon.

I did make a couple changes to make it function more like FancyZones:

  1. Click the tray icon > Settings

  2. I unchecked Show tabs. FancyZones doesn't have them and I really didn't like how much space they took up or how they sometimes covered up parts of the screen I was trying to see. Plus there are plenty of other ways to change windows (from the app icon in the dock, Alt+Tab, etc).

  3. I checked Hold CTRL to snap windows. FancyZones doesn't snap windows to zones by default either. The default behaviour of gSnap is to snap every window to a zone, which I didn't like. Sometimes I don't want to move a window to a zone, especially smaller windows. And when a new window popped up (e.g. a password prompt) it would snap it to a zone, spreading the UI elements out to places where I wasn't expecting them to be.

You can also further imitate FancyZones by setting the margins in the gSnap settings, although I didn't do this.

Tiling Assistant

I tried Tiling Assistant and it's not my first choice. It seems just as powerful and customisable as Tiling Shell (and more so than gSnap) but with a less intuitive UX. Also, layout support in Tiling Assistant is still labeled as "experimental."

It's actually included by default starting with Ubuntu 23.10, renamed Ubuntu Tiling Assistant. However I wasn't able to get layouts working at all with this version.

0

Tiling Assistant

Tiling Assistant is a gnome shell extension. More details in the accepted answer for this same question I made on Ask Ubuntu:

https://askubuntu.com/questions/1438213/are-there-any-close-alternatives-to-microsoft-powertoys-fancy-zones

0

Pop Shell

As someone who was looking for exactly the same thing, I stumbled onto this, and I can never go back, it just works better:

https://github.com/pop-os/shell

It's a tiling window manager for GNOME. You could call it "automatic fancy zones". Just take your time to learn the binds, it took me a few days personally till I remembered them.

Here are the most important:

  • Super+Y for toggling on/off the window management
  • Super+Enter for entering "management mode", or whatever you want to call it
  • Arrow keys (or HJKL vim instead) while in management mode, will move windows around.
  • Shift+Arrow keys (or Shift+HJKL vim instead) while in management mode, will resize the currently focused window.

Best of luck!

3
  • Thanks, that looks good as well! Does it let you design the layouts you want? Also, can I manage the positioning by grabbing the window instead of keyboard shortcuts? Commented Nov 7, 2022 at 17:43
  • 1
    No, there are no layouts unfortunately. It's all managed automatically... only you can know if it really works for your use case, but personally it's been great. You can manage the positioning & the sizes by dragging the windows instead of shortcuts, yes. If you learn the keybinds though (and you run x11/xorg) you can disable "window titles", ganing that much little more vertical space, which personally I value.
    – g_elef
    Commented Nov 9, 2022 at 14:12
  • Ah ok. It's not really what I'm looking for then. I have a few permanent areas on my screen. When I want a window to go in one of them, I just drag it there. No need to Alt+Tab for getting focus and then do another keyboard combination to send to an area. The one mentioned in the accepted answer still doesn't fully solve the issue for me, but it's close enough. Commented Nov 9, 2022 at 16:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.