Skip to content

v1.1.0-dev.97: Bays, and the end of the FancyZones zones

Pre-release
Pre-release

Choose a tag to compare

@defessler defessler released this 04 Sep 19:01

v1.1.0-dev.97: Bays, and the end of the FancyZones zones

Pre-release off the dev branch. Builds on v1.1.0-dev.96.

Group windows into a Bay and move them as one

A profile is a flat list of windows. Arrange three of them the way you
like, then decide the whole cluster belongs on the other monitor. Now
you're dragging them one at a time and hoping the spacing survives.

A Bay is a named group of windows inside one profile. Select two or more
in the visual editor with Ctrl-click or Shift-click, then press Group
into Bay
in the strip below the canvas. There's no dialog. The name
comes from the apps inside. Two apps give you "Chrome + Code". Three or
more give you "Chrome + 2 more". A dashed outline appears under the
members with that name above its top left corner. It goes solid when the
whole Bay is selected.

Drag any member and the whole Bay goes with it, with the arrangement
inside preserved exactly. Hold Shift and the group snaps by its own
outer edges rather than by the window under your pointer. It lands flush
against a monitor edge the way a single window does.

Move to monitor… sends every member to one display and keeps the
offsets between them. It anchors the group at the target's top left work
area corner rather than the spot it held on its old display. Expect the
Bay to jump into the corner. That's also how you gather one back onto
a single screen after a drag across a seam has left half of it on the
neighbour. Ungroup drops the grouping and leaves every window exactly
where it is. Nothing leaves the profile.

Bays save with the profile and survive an Update. Re-capturing your desk
keeps the groups you set up. Every Bay action is undoable with
Ctrl+Z and turns up in History (Ctrl+H) on its own line, like
"Grouped 3 windows into Chrome + 2 more".

Loading a profile is unchanged. The members go back the way any window
does, in one pass, with nothing focused or raised on the way. A Bay is a
grouping inside the profile and the editor. Nothing about it reaches
Windows.

A plain click now selects the whole Bay

This is the habit that changes. Clicking any member selects every window
in its Bay and the strip below the canvas becomes the Bay strip: the name
in a box you can type in, the window count, Move to monitor…,
Ungroup and Remove.

To get at one member on its own, Ctrl-click it. That brings back the
ordinary window panel with Edit, Block app and the position and size
pills.

Two rough edges worth knowing about. Selecting only some of a Bay's
members gives you the ordinary multi-select strip with Group into Bay
on it. Pressing it there splits those windows off into a new Bay.
Selecting members of two different Bays and pressing it merges them.
Neither is signposted at time of writing.

The FancyZones zones are gone from the visual editor

dev.79 added a checkbox that drew your PowerToys zones on the editor's
canvas and snapped a dragged window into one. It was off unless you
turned it on. If you never ticked that box, nothing here looks any
different to you.

The checkbox, the layout picker beside it, the note about what could and
couldn't be read, and the dashed numbered rectangles are all out.
Dragging a window onto a zone no longer moves it there and no longer
resizes it to fit. This is a removal rather than a rework. There's no
setting that brings it back.

It worked by reading PowerToys' own config files, a private format that
another app owns and rewrites on its own schedule. It needed PowerToys
installed with a layout covering the monitors in your profile. Some
layout types it could only ever draw approximately.

Shift-drag snapping in the editor is untouched. Hold Shift while
dragging and a window still snaps its edges and centers to nearby monitor
edges and to the other windows in the profile, exactly as it did before
dev.79 and during it. The one thing Shift-drag lost is landing on a zone.
Snapping monitors with Shift in Display settings is a different feature
and isn't affected.

Your PowerToys setup is untouched too. WLM only ever read those files and
never wrote to them. No zones were changed, moved or lost. FancyZones'
own drag-snap in Windows works the way it always did. PowerToys is still
in the Companion Software list and still worth having. Your saved
profiles need nothing done to them either.

Live mode stops forgetting what you set by hand

Found while building Bays. It predates them. Moving a window while a
profile was in live mode rewrote that window's saved entry from what the
watcher saw on your desk. The watcher reports geometry and knows nothing
about the things you set in the editor. A per-window color set from the
window editor was dropped the first time you nudged that window.

Anything only the editor can set now survives a live move: the color, the
match rule, and the Bay the window belongs to.

Smaller things

Resizing isn't group aware. Dragging a member's corner resizes that one
window and leaves the rest where they are. The outline follows.

The list view doesn't know about Bays. Members show as ordinary rows with
no name and no sign they belong together. Bays live in the visual editor
for now.

A Bay can span two monitors. Each member picks its own display from its
own center, the same as a lone window does. A drag across a seam can
leave a group on both. That's allowed and it's saved that way. Move to
monitor…
is how you gather it up again.

Install

Auto-updates from dev.53 and later. Otherwise unzip and run.