Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

With FancyZones version 0.15.1 I can no longer cycle through different pre-defined layouts with keyboard shortcut #1440

Closed
albertony opened this issue Mar 4, 2020 · 11 comments
Assignees
Labels
FancyZones-Hotkeys Issue around shortcut keys in FancyZones Issue-Bug Something isn't working Issue-DCR A request to change the way an existing feature works Product-FancyZones Refers to the FancyZones PowerToy Severity-Regression This was working in a previous release

Comments

@albertony
Copy link

Environment

Windows build number: 10.0.17134.1304
PowerToys version: 0.15.1
PowerToy module for which you are reporting the bug (if applicable): FancyZones

I was previously using version 0.14, but before installing version 0.15.1 I did uninstall PowerToys manually and then delete any configuration left in registry (HKCU\Software\SuperFancyZones) and on disk (%LocalAppData%\Microsoft\PowerToys).

Steps to reproduce

In version 0.14 of PowerToys I would first apply a set of pre-defined layouts that I wanted to be able to quickly switch between, by doing the following steps:

  • Edit zones, in the Templates tab, select 2 as number of zones, select Columns layout, and click Apply.
  • Edit zones, in the Templates tab, select 3 as number of zones, select Columns layout, and click Apply.
  • Edit zones, in the Templates tab, select 4 as number of zones, select Columns layout, and click Apply.

Expected behavior

In version 0.14 of PowerToys I could use keyboard shortcut Win+Ctrl+2, Win+Ctrl+3 or Win+Ctrl+4 to activate one of the layouts that I previously had applied, as documented:

Win+Ctrl+<Number> | Cycles through saved layouts with the corresponding number of zones

E.g. Win+Ctrl+2 would flash the 2 zone columns layout, and I could snap windows to 2 zones. Then Win+Ctrl+3 would flash 3 zone columns layout which I then could snap windows to.

Actual behavior

In version 0.15.1 Win+Ctrl+ only flashes the layout last applied from Edit zones dialog, unable to change the active layout.

Additional comments

I am not sure if it even was intended to work the way I used it in version 0.14, or what "saved layouts" is referring to exactly (perhaps only custom layouts or something). The user interface would not show which layouts I had applied and was available to cycle through, the only way to see was either to test it using the keyboard shortcut or to try to make sense of the configuration stored in registry.

I understand the storage of zone configuration has moved from registry to file. In previous version I could see my applied layouts being added as binary values below the HKCU\Software\SuperFancyZones\ScreenWidth_ScreenHeight key. In the new version I do not see any similar information being added to the zones-settings.json file.

@jstaro
Copy link

jstaro commented Mar 4, 2020

Same, except with the previous version I could cycle through the different layouts with the less RSI-inducing Number [1, 2, 3] shortcuts as long as I had a window selected and Shift pressed. Now nothing works to cycle.

@crutkas crutkas added FancyZones-Hotkeys Issue around shortcut keys in FancyZones Product-FancyZones Refers to the FancyZones PowerToy labels Mar 4, 2020
@crutkas crutkas added this to the v1.0 Release milestone Mar 4, 2020
@enricogior
Copy link
Contributor

enricogior commented Mar 5, 2020

Linking related issue:
#325

@vldmr11080 vldmr11080 self-assigned this Mar 6, 2020
@enricogior
Copy link
Contributor

enricogior commented Mar 8, 2020

@crutkas
the way this feature was design is:
every time a layout is applied, it is added to the current desktop history and it will remain there forever. There is no way to remove it beside manually deleting the FZ settings.
When win+cntrl+number is pressed, the first layout with that "number" of zones is applied, pressing again the same win+cntrl+number will apply the next layout with that same number of zones (if there is any).
So if you have multiple layouts with the same number of zones you have to press the shortcut multiple times until the desired layout is selected.

This feature was created when FZ only had the legacy editor and at that time it made sense, but when the new editor was added, it wasn't updated to provide a consistent experience to the user.
So custom layouts were also added to the desktop history and left there forever, even after being deleted in the editor:
#1179
#1069

When the FZ settings were migrated to the json file, we fixed the problem with the deleted custom zones but we end up breaking the feature.

Fixing the feature to just remove the custom zones from the desktop history doesn't seem like a real fix. The problem here is the design of the feature that still doesn't provide a way for the users to really configure it as they want it and since all applied templates cannot be removed, it can become really frustrating at the point that many users will simply avoid using this feature in the first place.

One possible solution, that doesn't require too much UI work to make it usable, would be:

  • apply this feature only to existing custom layouts (regardless if they have been previously applied to the current desktop or not)
  • in the editor, show the index of each layout
  • win+cntrl+number instead of identifying a layout with that number of zones, will simply identify the layout index

That should provide enough flexibility to make the feature useful and it can be done without too many changes in the code.

Adding ref to "FanzyZone Custom Layout hotkeys" #1411

@enricogior enricogior added Issue-Bug Something isn't working Severity-Regression This was working in a previous release Issue-DCR A request to change the way an existing feature works labels Mar 8, 2020
@DavidGretzschel
Copy link

DavidGretzschel commented Mar 17, 2020

@enricogior
Yes, that's exactly how I assumed the feature would work. [like described in the bulletpoints]
I've started using PowerToys after the legacy editor and I had no idea what it did instead, except that it somehow involved the Templates-layout (which aren't mine, so irrelevant) and was on top of that completely unpredictable.

If the feature was implemented like that, it would also make a lot of sense to (eventually):

  • make it possible ot reorder Template-Layouts (presumably the index would unchangeably correspond to the order of creation, which is highly inconvenient)
  • make it possible to address 9 additional layouts, by adding another modifier (9 Layouts is not enough, I'm planning to use 9 Virtual Desktops with one Layout for the main monitor, as well as a seperate Layout for the second monitor
  • some kind of further extendeability beyond that, since there are people who use many monitors more than just two and they might also want to use 9 Virtual Desktops

@crutkas
Copy link
Member

crutkas commented Mar 25, 2020

@enricogior disable feature, and work on fixing for 0.17

@crutkas
Copy link
Member

crutkas commented Mar 26, 2020

this is a multi-monitor aware editor feature. Talking with @enricogior, we need to think about this as part of that. #1032 is the tracking item for the larger bucket of work

@crutkas crutkas modified the milestones: Build 2020, v1.0 Release Mar 26, 2020
@KamyMouss
Copy link

@albertony @jstaro Hey everyone, I'm currently working on a feature to implement Hotkeys to quickly switch between FancyZones custom layouts, and would love to get your feedback! If you're interested, please fill out this 3-min form.

Feedback from anyone else who would need such a feature is welcome as well.

@albertony
Copy link
Author

Option 2 means I can assign a single hotkey that will change to an individual layout for every screen, e.g. a 2-zone layout on screen A and 3-zone layout on screen B?

An alternate new feature in FancyZones would allow you to assign a hotkey to a a preset of layouts across all your displays (see image). You would then be able to change your entire workspace's layout by pressing the hotkey. How likely is is that you use this feature?

@DavidGretzschel
Copy link

DavidGretzschel commented May 11, 2020

@albertony
That's how I interpreted it as well. A Meta-Layout.
I considered suggesting it myself at some point, but I can't keep track anymore what's already been suggested and what hasn't.
Don't care about it personally anymore, as I think I'm over multi-monitors since having an absurdly 32:9 49incher filling my whole field of vision on its own.

@KamyMouss
Copy link

Option 2 means I can assign a single hotkey that will change to an individual layout for every screen, e.g. a 2-zone layout on screen A and 3-zone layout on screen B?

Yes, this is exactly what I meant.

@crutkas
Copy link
Member

crutkas commented Jun 3, 2020

Going to move everything to #1411 for hotkey for FZ

@crutkas crutkas closed this as completed Jun 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
FancyZones-Hotkeys Issue around shortcut keys in FancyZones Issue-Bug Something isn't working Issue-DCR A request to change the way an existing feature works Product-FancyZones Refers to the FancyZones PowerToy Severity-Regression This was working in a previous release
Projects
None yet
Development

No branches or pull requests

7 participants