- [x] Use left click on the system tray icon and verify the flyout appears. (It'll take a bit the first time)
- [x] Try to launch a module from the launch screen in the flyout.
- [x] Try disabling a module in the all apps screen in the flyout, make it a module that's launchable from the launch screen. Verify that the module is disabled and that it also disappeared from the launch screen in the flyout.
- [x] Open the main settings screen on a module page. Verify that when you disable/enable the module on the flyout, that the Settings page is updated too.
- [ ] Edit templates (number of zones, spacing, distance to highlight adjacent zones). Verify after reopening the editor that saved settings are kept the same.
- [ ] Edit canvas layout: zones size and position, create or delete zones.
- [ ] Check `Save and apply` and `Cancel` buttons behavior after editing.
- [ ] Assign a layout to each monitor.
- [ ] Assign keys to quickly switch layouts (custom layouts only), `Win + Ctrl + Alt + number`.
- [ ] Assign horizontal and vertical default layouts
- [ ] Test duplicate layout focus
* Select any layout X in 'Templates' or 'Custom' section by click left mouse button
* Mouse right button click on any layout Y in 'Templates' or 'Custom' sections
* Duplicate it by clicking 'Create custom layout' (Templates section) or 'Duplicate' in 'Custom' section
* Expect the layout Y is duplicated
## FancyZones
- [ ] Switch between `Allow zones to span across monitors` on and off. Verify that layouts are applied correctly in both cases.
- [ ] Change zone colors and opacity.
- [ ] Exclude some apps, verify that they're not applicable to a zone.
- [ ] Disable spacing on any grid layout, verify that there is no space between zones while dragging a window.
- [ ] Launch PT in user mode, try to assign a window with administrator privileges to a zone. Verify the notification is shown.
- [ ] Launch PT in administrator mode, assign a window with administrator privileges.
- [ ] Create virtual desktop, verify that there are the same layouts as applied to the previous virtual desktop.
- [ ] After creating a virtual desktop apply another layout or edit the applied one. Verify that the other virtual desktop layout wasn't changed.
- [ ] Delete an applied custom layout in the Editor, verify that there is no layout applied instead of it.
* Open `Task view` , right-click on the window, check the `Show this window on all desktops` or the `Show windows from this app on all desktops` option to turn it on.
- [ ] Turn Show this window on all desktops on, verify you can snap this window to a zone.
- [ ] Turn Show windows from this app on all desktops on, verify you can snap this window to a zone.
* Switch between layouts with quick keys.
- [ ] Switch with `Win` + `Ctrl` + `Alt` + `key`
- [ ] Switch with just a key while dragging a window.
* Change screen resolution or scaling.
- [ ] Assign grid layout, verify that the assigned layout fits the screen.
NOTE: canvas layout could not fit the screen if it was created on a monitor with a different resolution.
- [ ] Apply 2 windows to the same zone, verify that window swithing works (`Win + PgUp/PgDown`)
- [ ] Verify that window switching still works after switching to another virtual desktop and back.
- [ ] Disable FZ
- [ ] Re-enable FZ, verify that everything is in the same state as it was before disabling.
* Test layout resetting.
Before testing
* Remove all virtual desktops
* Remove `CurrentVirtualDesktop` from `\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\SessionInfo\1\VirtualDesktops`
* Remove `VirtualDesktopIDs` from `\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\VirtualDesktops`
- [ ] Test screen locking
* Set custom layouts on each monitor
* Lock screen / unplug monitor / plug monitor
* Verify that layouts weren't reset to defaults
- [ ] Test restart
* Set custom layouts on each monitor
* Restart the computer
* Verify that layouts weren't reset to defaults
- [ ] Test applying default layouts on reset
* Set default horizontal and vertical layouts
* Delete `applied-layouts.json`
* Verify that selected default layout is applied according to configuration
* the Icon Preview for the existing SVG will still show since the icons are cached (you can also use `cleanmgr.exe` to clean all thumbnails cached in your system). You may need to restart the machine for this setting to apply as well.
- [x] In Remap keys, add and remove rows to validate those buttons. While the blank rows are present, pressing the OK button should result in a warning dialog that some mappings are invalid.
- [x] Using only the Type buttons, for both the remap windows, try adding keys/shortcuts in all the columns. The right-side column in both windows should accept both keys and shortcuts, while the left-side column will accept only keys or only shortcuts for Remap keys and Remap shortcuts respectively. Validate that the Hold Enter and Esc accessibility features work as expected.
- [x] Using the drop downs try to add key to key, key to shortcut, shortcut to key and shortcut to shortcut remapping and ensure that you are able to select remapping both by using mouse and by keyboard navigation.
- [x] Validate that remapping can be saved by pressing the OK button and re-opening the windows loads existing remapping.
For all the remapping below, try pressing and releasing the remapped key/shortcut and pressing and holding it. Try different behaviors like releasing the modifier key before the action key and vice versa.
- [x] Similar remaps to above with Edge (entered as `msedge`), VSCode (entered as `code`) and cmd. For cmd try admin and non-admin (requires PT to run as admin)
- [x] Try some cases where focus is lost due to the shortcut. Example remapping to Alt+Tab or Alt+F4
- [x] Test switching between remapping while holding down modifiers - Eg. Ctrl+D->Ctrl+A and Ctrl+E->Ctrl+V, hold Ctrl and press D followed by E. Should select all and paste over it in a text editor. Similar steps for Windows key shortcuts.
- [x] Press `a` and the left or right arrow and verify the accent menu appears and adds the accented letter you've selected. Use left and arrow keys to cycle through the options.
- [x] Press `a` and the space key and verify the accent menu appears and adds the accented letter you've selected. Use <kbd>Space</kbd> to navigate forward, <kbd>Space</kbd> + <kbd>Shift</kbd> to navigate backward.
- [x] Disable Quick Accent and verify you can no longer add accented characters through Quick Accent.
- [x] Right-click the executable file, select "What's using this file?" and verify it shows up. (2 entries will show, since the installer starts two processes)
- [x] End the tasks in File Locksmith UI and verify that closes the installer.
- [x] Start the installer executable again and press the Refresh button in File Locksmith UI. It should find new processes using the files.
- [x] Close the installer window and verify the processes are delisted from the File Locksmith UI. Close the window
- [x] Right click the directory where the executable is located, select "What's using this file?" and verify it shows up.
- [x] Right click the drive where the executable is located, select "What's using this file?" and verify it shows up. You can close the PowerToys installer now.
- [x] Right click "Program Files", select "What's using this file?" and verify "PowerToys.exe" doesn't show up.
- [x] Press the File Locksmith "Restart as an administrator" button and verify "PowerToys.exe" shows up.
- [x] Right-click the drive where Windows is installed, select "What's using this file?" and scroll down and up, verify File Locksmith doesn't crash with all those entries being shown. Repeat after clicking the File Locksmith "Restart as an administrator" button.
- [x] Disable File Locksmith in Settings and verify the context menu entry no longer appears.