Releases: JoyHak/QuickSwitch
QuickSwitch βeta v1.9.11
This update brings new features and improvements. You can write a report or write a comment on the forum to participate in testing:
Directory opus
Total Commander
Xyplorer
1.9.11
Settings > Theme tab
-
Active pane only: displays paths only from the active pane of each supported file manager. The active tab will be the first one from each manager regardless of this option. If the adjacent
Show locked tabsis checked and all tabs from the active pane of some manager are locked, paths from this manager will not be displayed. -
Filter by windows:
- Active lister only: displays paths only from the active instance of each supported file manager. E.g. current active instance of XYplorer, plus current active instance of Dopus, etc.
- Last active lister only: displays paths only from the last active instance of each supported file manager.
Both options also include displaying paths from virtual desktops.
Improvements
- Applied dark theme for all elements in Menu Settings (enable
Theme > Apply dark theme). - The text of some settings has been improved to make it clear what these settings do.
Tip
You can read detailed documentation about many settings and features here.
Fixed
- Special characters in paths from
Explorerwere displayed incorrectly (#149). - Paths from
XYplorerwere not displayed if exactly one tab was open in XYplorer. - The active
Directory Opustab was incorrect if it's path was contained in the paths of other tabs. - The active
Total Commandertab was incorrect after enablingSettings > Theme > (show) locked tabscheckbox.
1.9.12
Settings > Theme tab
- Z-order index: displays paths from a single window (instance) of each supported file manager. The window can be selected by index in order of use (Z-order or Alt-Tab order). The active file manager has index
1, the recently opened one has index2, and so on. This option allows you to ignore other windows.

- Virtual desktops: displays all paths from all file managers if the Z-index is
0(see above) or displays the paths from lister according to the selected index. If you recently opened a file manager in another desktop (#162), select index2to see its paths.

1.9.13
- Added specific logging to test new menu appearance algorithm.
- Fixed settings positioning.
- Improved menu rendering speed if favorite paths weren't changed.
1.9.14
- Added additional logging.
- Improved dialog recognition reliability.
1.9.16
- Removed unnecessary logging.
Fixed
- Fixed dark theme by default on light-themed machines.
- Disabled dark theme by default on patched dark themes.
- Menu may stuck on the screen after launching any application while Menu is opened.
QuickSwitch v1.9
This update is aimed at improving performance and quality of life. Various annoyances and critical bugs have been fixed.
I really need your feedback! If something is not working for you, please let me know. If you think that some features can be improved, write to me.
Total Commander - increased the speed of:
- receiving and analyzing tabs;
- creating the user-defined command required for QuickSwitch (in usercmd.ini).
Increased the speed of:
- determining the type of file dialog;
- switching the selected path in the Menu and the speed of AutoSwitch;
- menu display.
New AutoSwitch features
- You can choose which path "AutoSwitch" option should open: pinned, favorite, ... (see details about the special paths here). Open
Settings > Menutab and select the target in the drop-down list. - You can select the index of the path that will be opened. Index starts with
1relative to current menu section (pinned, favorites, ...). - Select "MenuStack" target, then index will be relative to all visible paths in the Menu.
Tip
You can enable Always AutoSwitch option and select "PinnedPaths" or "MenuStack" as the target. Then AutoSwitch will always activate the pinned path according to the selected index (1st, 2nd, ...).
Warning
You need to enable specific target: Settings > Theme > Show sections .... For example, if you have selected the "PinnedPaths" target, select the Pinned Paths check box.
Scaling options
- Added the option to change the settings UI font and its size. The option also changes the size of all settings items. Now the UI adapt to the selected font and screen DPI: the larger the font (e.g. monospaced) or its size, the larger the UI elements will look.
Tip
Increase the DPI and font size to singificantly increase the size of the UI elements.
- Added the option to change Menu font and its size. I prefer
Nunitofor menus andImWritingQuatfor settings and file managers UI.
Caution
This option changes the font and its size for all menus in the system including:
- context menu
- status-bar menu at the top
- tray menu
- some tooltips
- some message boxes and popups
To roll back changes, open the settings, set the Menu font field empty and set the size to 0.
Other features
- After enabling
ShortPath > Show short path...option, 1st letter in the will be underlined. Press this letter on your keyboard to activate this path in the menu (see more about keys here). For example: S̲ystem32\Resources – pressSto activate this path.
Tip
The path shortening settings on the ShortPath tab allows you to completely change a path structure. It also allows you to change which key will activate the path.
When you turn on ShortPath > Show short path... the path is shortened to a specified number of directories. For example, enter number 2 in the Number of dirs field on the ShortPath tab. If any path in the Menu will contain more than 2 directories (C:\Windows\System32\Resources), it will be shortened to 2 directories: System32\Resources
The first letter of the path will be underscored in the menu if Menu > Paths numbers with shortcuts option is turned off or the number of paths in the Menu is greater than 9. Press the underscored letter on your keyboard to activate this path in the menu and change file dialog path.
See more about short path here.
- Open "Menu settings" and press
Debugbutton to see all controls of the active window. PressExportto save this data to the readable file.
Fixed annoyances
These issues have been coming and going since v1.5. With each update, I slowly fixed them. Now they are fully eliminated.
- After enabling "AutoSwitch" option, the file dialog may have closed (#77), the "Save As" dialog button did not work properly and focus was lost from the file name input field.
- The Menu might not close and stay above all windows after pressing
Escor clicking anywhere (#88, #94). - The menu didn't disappear after immediately pressing
Alt/Escwhen opening a file dialog; Copilot web page could open. - The Menu sometimes didn't appear when the file dialog was opened.
Fixed issues with paths
- Some paths from Total Commander containing Cyrillic and other characters did not work (#138).
- Some localized paths (depending on the system language) from Explorer did not work (e.g. C:\Benutzer, C:\Användare, ...) (#98).
- The Menu displayed system and special directories (e.g. Recycle Bin) that did not work.
- The active Explorer tab was not the first in the Menu on Windows 11.
- The Menu displayed incorrect paths from Xyplorer after disabling the
(show) locked tabsoption onSettings > Themetab. - The active Total Commander tab was displayed incorrectly after disabling the option
Theme > File manager paths > (Show) locked tabs.
Note
If the currently active tab is locked and this option is disabled, the next unlocked tab starting from the active pane (from left to right) will be shown first in the menu.
If all tabs are locked, nothing will appear in the Menu.
Fixed issues with menu
- The menu appeared twice. After turning on
AutoSwitch/always AutoSwitch. - The Menu no longer appears in non-file dialogs. (false-positives).
- The issue with path unpin (see pinned paths).
Fixed visual issues
- Wrong OS name in the
Errors.logon Win11 (#98). - Fixed the display of drop-down lists for selecting mouse buttons and special keys on the
Settings > Apptab after changing the screen DPI (#135). - The
Debugbutton no longer overlaps the settings tabs after changing the font to monospaced or when changing the screen DPI (#135).
QuickSwitch v1.8
This big update is aimed at changing the appearance of the Menu and it was prepared thanks to the @noticz and @eddablin! There are new Menu path sections, new customization options, and new settings tabs. The changelog only briefly describes the main changes. If you want to know the details of each change, open the drop-down list with details or click on the words highlighted in blue (hyperlinks).
I really need your feedback! If something is not working for you, please let me know. If you think that some features can be improved, write to me.
New appearance options
-
Settings > Menu tab- Blacklist by processes: you can add windows to the blacklist by their process names. This option is useful for turning off child windows or for windows with a changing title.
- Delete duplicate paths: if some paths are repeated, this option will leave only one of each path. Deletion goes from top to bottom: the first duplicate path will remain, the rest starting from this position in the menu will be removed. This is useful if you do not want the pinned paths to overlap with the paths from the file managers (see below)
-
Settings > Theme tab- Apply dark theme: enables dark mode in Settings and Menu. If dark colors are enabled in the system or a dark system theme is selected, option will be enabled automatically. I don't recommend using Windows default dark theme. Use the BigSur or CakeOS themes from Niivu.
- Show icons: shows icons from specified local directory. Size and directory can be changed in the input fields next to the option (the variables will be expanded). You can replace any icon in the selected directory, the main thing to remember is that the icon name must remain the same. Only ICO files are supported, you can convert any image to ICO here or here. If you want to use other extensions, see below. You can open a request to add alternative ICO files to the releases.
- Active tab only: will only show the active tab in the active pane.
- Locked tabs: will show all tabs, including blocked ones. If this option is turned off and the option above is turned on and the current tab is locked, nothing will show up in the Menu. Currently, this option is only supported for Total Commander and Xyplorer.
-
Enforce menu: press
Ctrl+Shift+Win+0and select the path to change the current path in the active file manager. This is useful if you want to duplicate paths between different file managers or their windows. If a non-file manager is open, the active window process will be started with the selected path as an argument. Let's reverse QuickSwitch!
Warning
The Menu sends a request to open a directory in the target application which can open all the files in the directory without warning!
-
Variables in paths: added support for variables in all path input fields: environment variables; built-in AutoHotkey variables; declared QuickSwitch variables. Enclose the variables in percent signs
%.Examples
Icons %AppData%\Icons %A_ScriptDir%\Icons
%SYSTEM_PATH%\%IconsDir%\SubDir
C:\%IconsDir%
Menu sections
In addition to the paths from the file managers, you can add additional paths to the Menu on Settings > Theme tab. The details of each section are described here. If you want to improve the logic of the sections or add a new one, please let me know.
- Pinned paths: select the key / mouse button in
Settings > App > Pin path...and left click on any path. Now it is pinned and it will be stored in the configuration. You will see this path on every restart.
Note
If you turn this option off, the paths will no longer be displayed. If you turn it on, all pinned paths will be displayed again. If you want to delete all pinned paths, check Settings > Reset > Delete pinned paths and press Enter.
-
Clipboard paths: copy one or more paths and they will appear in the Menu. They will disappear only when you open the file dialog from another application.
This option works in the background and analyzes the clipboard for the presence of a path when changing it. If several paths separated by line breaks (multi-line text) have been copied, they will be added to the Menu individually. The variables will be expanded. If you frequently work with paths, the Menu may become very large.
Background analysis is temporarily disabled when requesting paths from other file managers (if the
Settings > Theme > File managers pathsoption is enabled), as their data is exchanged via the clipboard. If the request takes a very long time (for example, QuickSwitch creates the configuration for Total Commander), clipboard analysis will be turned off until all paths are fully received. -
Favorite paths: select a directory (the variables will be expanded) with shortcuts (links) to the directories and they will appear in the Menu. You can customize how they are displayed in the Menu.
Create a shortcut to any directory or file in it (in this case the directory it is in will be used). From the context Menu, open the shortcut's "properties" and click on the "shortcut" tab.
You will see editable fields that will directly affect the display of the shortcut in QuickSwitch:- Target
- Start in (working dir.)
- Comment
- Change icon (button)
The "target" field is the main path you will see. You can change the displayed path and give it any name you want in the "comment" field. This field takes precedence over displaying the full or short path (`Settings > Short path`). All fields support [environment variables](https://github.com/JoyHak/QuickSwitch#variables).
You can click on "change icon" button and put the path to any resource that contains icons (ICO, DLL and so on). The selected icon will be shown in the menu. The default icons (just after shortcut creation) are not shown after the shortcut is created and will be replaced with the "Favorite.ico" icon from the "Icons" folder.
These options work well with Flow Launcher: it allows you to search for files using Everything, copy their paths and drag them to other windows.
Better hotkeys: Settings > App
- Mouse buttons support: now you can choose mouse buttons and their keyboard modifiers.
- All hotkeys and mouse buttons can be completely disabled. Press
Spaceto clear input field or select the appropriate option on theResettab. - You can even select special keys, like
CapsLock,Space,Winand so on in drop-down list after pressingmousebutton. There are few keys, so there is no separate list for them.
Note
The standard special keys functionality will be disabled while the file dialog is in focus. Changing the focus (opening settings or any other window) enables normal key operation.
For example, you will not be able to open the Start menu if you have selected the Win key in the settings. It will open the QuickSwitch menu.
Improved Menu settings and debug UI
- Improved button alignment.
- Now all UIs closes after pressing the
Escbutton. - The dark theme applies to all elements.
- Added the
Resettab to partially delete config sections, reset internal variables and completely delete the config.
Refactored building system
- The version number has been removed from the name of the release
.exeand.ahk. To update, download the archive to the directory containing the QuickSwitch files and extract the archive directly into it (choose "extract here" from context menu). Configuration (settings) will never be replaced or deleted. - The application building system has been changed to a more versatile. It automatically selects the Autohotkey interpreter and Ahk2Exe from your system. The building script is independent of changes in the source code, so you can configure it once and run it after each update.
Note
The script can be configured to build / archive any file, including your own scripts and projects.
Refactored source code
Settings > App > Icon (tray)edit field can now be left blank. In this case, the default AutoHotkey icon will be displayed in the system Tray. Path to the icon can variables, defaults to%IconsDir%\QuickSwitch.ico.- Improved the [structure of settings](https://github.com/JoyHak/Quick...
QuickSwitch v1.7
Changelog
Features
-
Enforce Menu: you can enforce the Menu in any application using the updated keyboard shortcut:
Ctrl+Shift+Win+0. The menu will display the paths obtained after the last opening of the file dialog and will not change them until the next opening. Details about this feature are described here. -
Limit the displayed paths: in "Menu settings" in the "Menu" tab you can set the maximum number of paths to be shown in the Menu. In this case the menu will show the N most recently opened paths in the file managers.
-
Path numbers with shortcuts: this option allows you to select a path using the keyboard and now it works with Numpad keys and additional mouse buttons (some mice have
1-4numpad). Numbers10, 11, ...are no longer displayed in the menu as they cannot be physically pressed on the keyboard.
Fixed
QuickSwitch v1.6
Changelog
Features
- Enforce Menu: now you can enforce the Menu in any application using the keyboard shortcut:
Ctrl+Shift+Win+0. The menu will display the paths obtained after the last opening of the file dialog and will not change them until the next opening. The menu will be empty the first time it is opened.
Note
You can use this feature to test whether QuickSwitch is working correctly in the (target) app in which Menu appears. If it really works, click "Settings > Debug > Export" to export the app info file. Open a suggestion to add this app to QuickSwitch, attach exported file.
Warning
You can use this feature to try changing the path in any app, but it probably won't work if there are no visible input field (e.g. Filename, Edit) or the target application is running as an administrator. If it works, see the Note above.
- Better error display: QuickSwitch now shows significantly fewer notifications if it's not launched as administrator and can't get paths from file managers or can't change file dialog path. The "permission error" appears once and will not spam you with notifications.
Note
In this case, it is better to restart QuickSwitch as admin or restart other applications with reduced permissions. You can see their names in the notification or find all their names in Errors.log. The error will tell you when this is really necessary. Otherwise, you don't have to worry about it.
Refactored
- The
TotalCmdconfiguration is no longer recreated ifTotalCmdis elevated. - Now any file manager is checked for "elevated" status and paths from it aren't requested if the status is "true".
- Apps aren't checked for elevated if QuickSwitch is running as an administrator. In this case, any errors are always displayed. However, in this case, no errors usually occur.
- Reduced code size.
- Improved comments.
- Improved errors logging.
- Improved file dialog type detection. Errors now interrupt app execution.
- Removed redundant
ByRefs.
Fixed
- If "Auto switch" was enabled, the file dialog closed immediately (#77) or the menu showed only one path (#94).
- Menu residue display and permanent display on top of screen (#88, #94).
- Broken option "Show menu after leaving settings" (#101).
- Selecting path error if the file dialog owner application has an "elevated" status.
- System error after opening multiple
Explorerinstances. - Internal key
Ctrl+Shift+Win+0errors. Altkey freezing in file dialog.- Rare issue of missing paths from XYplorer.
- Various syntax errors pop-ups.
- The tray icon did not reset after pressing "Reset".
- Entered empty string values in the settings were not saved.
QuickSwitch v1.5
New Total Commander core (#33)
Now the Menu displays all the paths from Total Commander without errors! Thank you Dalai for the config search algorithm and Horst for long and patient testing. For the most accurate results, please do not run TotalCmd as administrator or run QuickSwitch as admin.
Details
After a series of my unsuccessful attempts to add this feature, I finally succeeded! Now QuickSwitch searches for your config directory (regardless of its name) and creates a usercmd.ini in it with the custom EM_ command, which invokes the internal SaveTabs2 command.
This amazing update is aimed at improving performance and it was prepared thanks to the incredibly valuable testing by @Arsiendle and @CennoxX! Some settings have been changed, please set them again in "Menu settings".
I really need your feedback! If something is not working for you, please let me know. If you think that app can be improved, write to me.
Changelog
Menu options
- Black list option: if a menu appears where you don't want it to, you can add that window to the black list. The Menu can still be opened with the main key which can be changed in "Menu settings" > "App".
- Only Auto Switch: removed "not now", "never here" options. Now there is a single "auto switch" option.
- Keyboard support: now you need fewer keys to interact with the Menu:
- Path:
0-9. - Auto switch:
A - Black list:
B - Settings:
S - Hide menu:
Esc/clickanywhere
Each option and button in the settings has a corresponding key. Press the u̲n̲d̲e̲r̲l̲i̲n̲e̲d̲ l̲e̲t̲t̲e̲r̲ on the keyboard for quick focus:
C̲ancel –C; Path s̲eparator –S.
- Path:
Menu settings
- Always Auto Switch: always changes the path. But you can disable this mode for specific windows using "auto switch" Menu option (#64).
- Close old-style file dialog: enable this option if you want to close old-style file dialogs immediately after selecting a path a don't want to wait (#78).
- Nuke button: sets the default settings and puts the current configuration in the Recycle Bin. Use this option to remove all window settings and force "always Auto Switch" mode. The button is hidden for safety reasons. It can be found after clicking "Reset" or "Debug" buttons.
- Show menu:
- If all Menu options disabled (e.g. disable "Auto Switch" to show, enable to hide).
- After selecting path.
- Always (hide only after losing focus).
Features
- Empty menu: if no paths could be found or supported file managers are closed, the menu will display "no available paths".
- More file dialogs: added support for old-style TreeView dialog with
Editfield and simple tree (XY forum); added support for some archivers dialogs (including BandiZip, PeaZip, 7-zip and WinRar) (#43). - Performance: the speed of the following actions has been improved:
- Auto switch.
- Navigating the selected path.
- Determining the type of dialog.
- Getting paths from file managers.
- Getting the
Directory Opusactive tab. - Saving and reading the configuration.
Refactored
- All dialogs now uses same fast function which uses the
Editfield instead of theaddress bar(XY forum). - Reduced disk usage (reduced amount of I/O operations).
- Improved Menu settings and
inioptions readability (#84). - Added retries to fill the path in the dialog (#81).
- Added check for buttons in the dialog.
- Added arrows in "Menu settings" numeric fields and added validation of integers on input.
- Added dialog name to the "Debug" window. Also you can export dialog info and read internal and visible dialog name in the exported file.
- Reduced the number of iterations when parsing the dialog controls, file manager classes, xyplorer child windows.
0/1values replaced withtrue/false(ini still uses integers for reliability).- Improved documentation of code and libraries including comments and readme.
- Complex files are organized into separate libraries.
- Improved display of notifications and errors.
- Added logging about files QuickSwitch couldn't access (including main configuration ini and TotalCmd tabbs file.)
Fixed
- The Menu:
- Remained permanently open after opening the settings.
- Didn't disappear after closing the dailog.
- Showed the various XYplorer variables (XY forum).
- Slowdown if child window is open in
XYplorer. - Auto Switch didn't work the first time the dialog was opened.
- The colour field did not allow a HEX number to be entered in free format:
#111111,0x111111. . . - Errors appeared when the dialog was immediately closed after opening (#82).
- Rare system error appeared after opening many Explorer windows; added the ability to restart Explorer (#82).
QuickSwitch v1.4
Changelog
Features
- Display all tabs from:
- TotalCommander
- DirectoryOpus
- XYplorer panels
- Short path option:
- The option has become faster.
- You can hide the first path separator, for example:
..\dir
- XYplorer dual-pane support
- Multi-language hotkeys: now the keys set in the settings work in any keyboard layout.
- Performance: the code has been significantly revised for the better.
Refactoring highlights
- Improved date and localization display in logs.
- Added lost global variables in new validators.
- Keys uses scan codes when they are created.
- Added safe function to prevent key creation errors.
ShowShortPathhas been renamed toGetShortPathand now uses faster built-in functions.- Improved names and used proper naming style for local, static and global variables.
- Improved performance:
- Added AHK v1 specific directives and functions.
- Added identical variables one-line assigning.
Sleepreplaced byClipWait.- Xyplorer now works via clipboard because it's faster.
- Removed Return from
Voidfunctions. - Added multiple static variables in all
Libs.
Fixed
- Directory Opus wasn't working.
- The portable version of Total Commander was not detected.
- "Reset" button wasn't wotking for some settings.
- Missing "Debug" button.
- Nonexistent hotkey error.
- Menu did not disappear when clicking anywhere in the file dialog.
- Menu appeared in different applications and did not disappear after changing settings.
- Constant notification about missing icon in compiled version.
- The
Virtual PathXYplorer specific option has caused display problems: other file managers do not have a similar option that displays simplified real paths. The option has been removed.
QuickSwitch v1.2
Changelog
Features
- New settings interface:
- Tabs for menu settings, app and shortcut display options.
- Vertical alignment of the input fields. Now if you use large or monospaced font the settings items will adjust to your preference.
- Clear font quality and readable hotkeys input fields.
- Default colors: in Menu settings leave the color fields blank to use system colors. I recommend the BigSur or CakeOS themes from Niivu.
- Log with errors (including custom ones when entering wrong values in settings): you can read
.logif something doesn't work. It is located next to the script.
Refactored
- Function names renamed to clear and desriptive names for improved stack trace in the log.
- “Folder” has been replaced with “Dir”.
- Removed version from
INIandAutoStartuplink name to simplify updates. - Comments have been improved. Removed direct references to specific lines, names, and files to avoid obsolescence of comments over the course of development.
- Improved code readability.
- Added readme to
\Libsabout each included script. - Initialized missing variables.
- Changed encoding of all files from
ansitoutf-8.
Fixed
- Incorrect work in
SysTreeViewandSysListViewfile dialogs. - Incorrect check for no available paths.
- Error in known dialogs.
- Lost path requests to TotalCommander.
- AutoSwitch option was enabled in Menu at first startup but it didn't work.
QuickSwitch v1.1
Changelog
-
A new settings menu has been added. Now you can enable autorun, change font, icon and hotkeys. The
Debugbutton has been moved there. -
Added the ability to restart the script in the selected application. The default hotkey is
Ctrl+S, which allows you to change and compile the script on the fly when running an uncompiled script. -
Compilation directives have become more universal. Just specify the version once in the filename.
The file must have name-verison syntax, e.g..
QuickSwitch-1.0.Any other name is not allowed!
- Added error output via
TrayTip. Errors are output rarely and the script handles them silently if possible. However, you can remove them completely by disabling notifications in the system.
QuickSwitch v1.0
Changelog
-
The old
Autohotkey v1syntax was improved and became similar to thev2syntax for further porting. -
The code has been restructured to enhance its clarity and to facilitate self-documentation, with additional comments added to support its interpretation.
-
The code has been modified to remove
spaggificationandgotolabels, and to add structure by dividing the key elements of the script into parts and adding them toLibs. -
Tthe speed at which
menu with pathsfrom file managers appear has been increased. -
AutoSwitchhas been modified to no longer iterate over all paths and now works directly with the latest file manager. -
AutoSwitch exceptionhas been rendered obsolete. -
The drive letter can be removed from the menu.
-
The ability to shorten the displayed path and cut the path from either side (left or right) has now been added.
Extended support for XYplorer:
-
If you open a Rapid Access Folder or a virtual path (Rapid/Music, Downloads), it can be displayed instead of the full path.
-
The menu will display the paths from all open folders starting from the current one. Previously, only 1 path was displayed.
