microsoft / PowerToys

Windows system utilities to maximize productivity
MIT License
109.66k stars 6.46k forks source link

[FancyZones] Hide snapped windows from taskbar #15600

Open FLOAT4 opened 2 years ago

FLOAT4 commented 2 years ago

Description of the new feature / enhancement

Add an option to hide snapped windows from Taskbar and the Alt+Tab switcher window.

Scenario when this would be used?

Snapped windows are always in a specific location, just the windows that are not snapped are floating around. The taskbar and the Alt + Tab switcher window are mostly useful for searching through the floating windows.

FLOAT4 commented 2 years ago

@crutkas Is it OK that I would start implementing this?

crutkas commented 2 years ago

how would you go about doing this? IMO this would be an 'off by default' item

FLOAT4 commented 2 years ago

I agree. It should be off by default.

Other than that, is it OK?

FLOAT4 commented 2 years ago

Technically, I want to do it using GWLP_HWNDPARENT.

FLOAT4 commented 2 years ago

I agree. It should be off by default.

Other than that, is it OK?

Technically, I want to do it using GWLP_HWNDPARENT.

@crutkas I am not sure whether or not you see comments that do not tag you.

crutkas commented 2 years ago

you'll just putting that flag onto the window? correct?

FLOAT4 commented 2 years ago

@crutkas Yes. It would be something like

SetWindowLongPtr(window, GWLP_HWNDPARENT, (LONG_PTR)val);

where val is a WS_EX_TOOLWINDOW hidden window (created for the purpose of hiding other windows from the taskbar).

FLOAT4 commented 2 years ago

@crutkas Is that OK?

rzfzr commented 5 months ago

I'm also very interested in this, related to #3705 and #11833, Ui wise, it could be a matter of setting locked zones, my specific use case: imageUntitled

All apps snapped inside the locked zones would be excluded from the alt-tab view, as if they were part of the background, as I use them as widgets for quick lookup....

My monitor setup is a bit particular, you can imagine a more common usecase of an super ultra wide monitor, where the middle works as usual but the sides are locked.

rzfzr commented 5 months ago

I have tried building a little script to toggle visibility (window specific, not dealing with zones, so not as practical) by toggling WS_EX_TOOLWINDOW

It is very crude and in go: https://gist.github.com/rzfzr/9912a86218b872b044a83a2b06d62fd8

But it did nothing on 2/6 of the apps I wanted to "pin", so WS_EX_TOOLWINDOW is not enough, we may need something else more robust

rzfzr commented 5 months ago

@FLOAT4 and @crutkas, I'm interested in developing this feature, may I start working on it?