Is it possible to create some kind of overlay to show potential window management zones when moving a window while pressing shift?

I am basically trying to duplicate a feature of FancyZones. See PowerToys FancyZones utility for Windows | Microsoft Learn for more information.

You create different zones on your monitor. Then, while you're moving a window, if you press shift it will show you available zones to drag your window into. When you drag your window into a zone it will resize the window into that zone.

So I am wondering if BTT can:

  1. Trigger something to happen when I drag a window while clicking shift
  2. Show a transparent overlay while I am doing the shift + dragging with potential zones I can move to

this is called „snap area“ in BTT. You can create them by clicking the menubar icon -> snap areas -> create new snap area

Best google for some tutorial, it’s an old feature but very powerful

OMG. Really? I feel like an idiot. Let me look. Thanks!

It's definitely not as powerful as fancy zones though. I do have significant upgrades planned for the snap area feature, but they will probably not be realized this year... probably sometime around April next year.

1 Like

Well anything I can do to help drive it let me know. I'm not above paying extra. TBH, FancyZones is the only thing that is keeping me from using macOS as main machine. Right now I have both and I use Windows mostly.'

But I love how powerful BTT is. Thank you so much for creating it.

Oh wait, no. Snap Areas are way better than FancyZones cause I can create overlapping areas, each with a specific drop zone. This is perfect. Perfect. Thank you!

(The only thing that might be nice is being able to create/edit zones in bulk using a text file or something.)

If I export my configuration, edit the .bttpreset file, add more BTTDisplaySnappedDragpoints to the JSON but leave BTTSnapAreaUUID the same or blank, will it work? Or how does the UUID get created?

A UUID is required, however you can generate it yourself. It doesn't require any specific format, any string will do - only make sure only one with the same UUID exists. (It has been 10 years since I created this, I hope I remember correctly)

Thanks. I think I found a better way. I created a trigger that shows a menu when I double click a window title bar. The menu has all the different placement options I want. I think this will work better.

Just gotta figure out what these re-position/based on things translate to.

Figured it out. A bit confusing but this works way better for what I am after.

image

This could maybe also be interesting for you:
Using one gesture for all your window management - Tutorials - BetterTouchTool Community (folivora.ai)

Why would you do this to me? Now I'm gonna spend another 30 minutes configuring this. Heh. Thanks. Love it.

The menu thing I created works great cause I use an external mouse. But I will see how I can use the mouse gestures too.

If you have a free button on that mouse you could make it trigger that preset functions as well :wink:

This could be pretty cool.

I don't but I've been meaning to get a new mouse with more buttons. :slight_smile:

If I create a snap area, is there a way to select multiple snap areas for dropping a window in?

I'm basically trying to re-create a specific feature of FancyZones in Windows.

Imagine your monitor has a 3x3 grid -- 9 "drop zones":

| 1 | 2 | 3 |
| 4 | 5 | 6 |
| 7 | 8 | 9 |

You can drop a window into each zone with BTT -- that's already there. But imagine, while you're clicking with the mouse on a window to move it, you press the shift key to select two "drop zones" for the window to drop into it and fill both zones. For example, maybe you select cell 1 + 2, or 1 + 4, or 5 + 6 + 8 + 9. It would allow for endless custom window management.

If this does not make sense, I can explain more or even include a video.

For the record, I wanted to mention that while I'm a power user of both Windows and macOS, I've always preferred Windows because I found it to be better for productivity. But now with BTT, I haven't touched my Windows machine in weeks -- and I don't think I will for a while. This one feature above is the only thing I am missing so I'm trying to figure out a way to make it work. BTT is great but this one feature of FancyZones really allows for some very fluid and organic window management. I have my desktop set to a grid of 12x12 and I can shift while I drag to make any custom dimension I need. Very fluid.