imawizard / MiguruWM

A tiling window manager for Windows
BSD 2-Clause "Simplified" License
39 stars 3 forks source link

How to make MIGURU_DECOLESS windows to be tiled automatically? #20

Closed kyx0r closed 1 year ago

kyx0r commented 1 year ago

Setting MIGURU_DECOLESS works, but if miguru is reloaded such windows remain managed but not tiled. To fix it I have to use ^t manually on each one. This is cumbersome, what change do I need to make this automatic?

imawizard commented 1 year ago

You mean Reload() on Alt-Q? When I open qutebrowser without having it added to MIGURU_DECOLESS, it doesn't get managed at all, so cycling through the windows with Alt-J/Alt-K wouldn't focus it. After adding it, it is managed and automatically tiled for me everytime Miguru is started or reloaded. After adding it also to MIGURU_AUTOFLOAT it's floating, thus still focused when cycling through the windows but not repositioned/resized, but can be tiled with Alt-T. Upon reloading it's floating again.

kyx0r commented 1 year ago

Yes Reload() on alt-q. Maybe the difference is that my window originally spawns with decorations and then later on those decorations are removed via calls such as WinSetStyle "^0xC40000", "A"

imawizard commented 1 year ago

Ah, qutebrowser has no window decoration but it still has WS_EX_WINDOWEDGE. However, when you unset WS_BORDER | WS_DLGFRAME | WS_THICKFRAME with WinSetStyle "^0xC40000", "A" then WS_EX_WINDOWEDGE is gone, too, and the window gets floated automatically. I'll update MIGURU_DECOLESS to always tile, so it'd always behave like I described with qutebrowser.