microsoft / PowerToys

Windows system utilities to maximize productivity
MIT License
109.43k stars 6.45k forks source link

[FancyZones] Zone tabs #15921

Open FLOAT4 opened 2 years ago

FLOAT4 commented 2 years ago

Description of the new feature / enhancement

Add a visual indication of the windows snapped to a zone.

Scenario when this would be used?

Windows snapped to the same zone hide each other. Using a tabs-like GUI we would be able to see which windows are snapped. The GUI could also support switching the current window by clicking the appropriate tab.

Supporting information

No response

WakoKnight commented 2 years ago

Take a look at Groupy by Stardock and TidyTabs by Nurgo Software. It could give you good ideas for this feature request.

crutkas commented 2 years ago

My thought would be to have some kind of overlay in the zone in one of the corners. Or the 'tabs' appear at the top (yet inside) or bottom (yet inside) the zone when some key is activated. this would be more akin to a context menu of sorts

WakoKnight commented 2 years ago

I like that idea. It could be as simple as press 2 hotkeys like Windows + Shift while over the zone and all the app icons (with names under) appear in the middle of the screen. And if Windows + Shift + CTRL keys are pressed at once while over, the windows are shown as when we press WIN+TAB or ALT+TAB. It would be much better than Groupy and TidyTabs.

FLOAT4 commented 2 years ago

@crutkas

  1. What do you mean by overlay in one of the corners? Is it like the context menu that appears when you click the icon in the title bar (the system menu)?

  2. What do you mean by "inside the zone"? Is it like the taskbar is inside the screen? Are you suggesting something like an auto-hiding taskbar?

FLOAT4 commented 2 years ago

@WakoKnight What is the difference between the two options?

crutkas commented 2 years ago

if this was my window: imagine the inside corners having the overlay modal. We stay inside the FZ zone barrier image

yes like something like a hiding taskbar came to mind

FLOAT4 commented 2 years ago

Let me make sure I understand correctly.

The most important thing is that the overlay would not appear outside of the zone. Using the taskbar analogy, if the overlay is the taskbar, and the zone is the screen, the taskbar must not appear outside of the screen (obviously).

Now, the difference between the two options: The second option suggests a taskbar that spans the entire width of the zone, while the first is aligned to the left.

Is that correct?

WakoKnight commented 2 years ago

@WakoKnight What is the difference between the two options?

One show the icon of the applications in the zone and the other show the real-time state of the windows in the zone. It is only suggestions.

There is many ways to do it and multiple way could be chosen:

  1. Reproduce the ALT+TAB and WIN+TAB effect
  2. Add tabs to the zone like Groupy does (with all the tabs sorting headache)
  3. Group all the Windows from the same zone into one in the taskbar like Groupy does, but in a better way. Instead of changing the group icon/app name to the last selected application in the group, it should be a fixed one that we can customize ourselves. We could name it and add the icon of our choice.
  4. Add a taskbar like @crutkas suggests. There should be a way to sort the taskbar item manually or have sort options like “by tab title name”, “by application” and “by last opened/creation time” and ascending/descending order. There should be a group “by application” option also. When selected, all the child windows should move with the main application, but there should be a way to sort the child windows manually within the group.

My favorite options are 4, 1 and 3 in that order. If they can all be done and working together, it would be awesome.

WakoKnight commented 2 years ago

When a new child window is open, there should be multiple options to show it:

  1. In the same zone as parent
  2. In a specific zone (I use Outlook in a small zone, but I would like to open e-mail messages by double-clicking on it in a larger zone). Moving a child window to a new zone automatically set the zone for all future child windows.
  3. In the default zone when the “same zone as the parent” is disabled and there is still no specific zone for children of that application.
WakoKnight commented 2 years ago

@crutkas What about a taskbar that spans the entire width while pressing the hotkey(s)? I would suggest these settings for placement:

  1. Top of the zone
  2. Centered
  3. Bottom of the zone
  4. Follow the mouse height position

When pressing the hotkey(s) and switching to another zone, the taskbar appears in the new zone and disappear from the previous one.

If the active application is snapped to multiple zones, there should be a way to switch and see the taskbar from other zones under (maybe add arrows to switch the zone).

If the zone is not large enough, do we show a taskbar? Does the taskbar can be larger than the zone in this situation? Do we add an alternate method to switch app in this case (like option 1 I proposed that act like ALT+TAB or WIN+TAB)?

FLOAT4 commented 2 years ago

Let me make sure I understand correctly.

The most important thing is that the overlay would not appear outside of the zone. Using the taskbar analogy, if the overlay is the taskbar, and the zone is the screen, the taskbar must not appear outside of the screen (obviously).

Now, the difference between the two options: The second option suggests a taskbar that spans the entire width of the zone, while the first is aligned to the left.

Is that correct?

@crutkas Is this a good direction? Should the auto-hide work like the ALT+TAB does (in the sense that the overlay shows on first switch, when both keys are down, and kept until the both keys are up)?

goyalyashpal commented 2 years ago

This issue is related to: https://github.com/microsoft/PowerToys/issues/11562

NathanaelMangold commented 2 years ago

Is there any update to this or any way to help/contribute to speed this up? I really want and need this feature a lot.

FLOAT4 commented 2 years ago

Is there any update to this or any way to help/contribute to speed this up? I really want and need this feature a lot.

See #14982

Jay-o-Way commented 2 years ago

Remind me - what's the difference between this and #12696 again?

crutkas commented 2 years ago

they are the same ask IMO