github JoyHak/QuickSwitch 1.8
QuickSwitch v1.8

latest releases: 1.9, 1.8.1
4 months ago

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+0 and 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!

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 paths option 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 Space to clear input field or select the appropriate option on the Reset tab.
  • You can even select special keys, like CapsLock, Space, Win and so on in drop-down list after pressing mouse button. 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 Esc button.
  • The dark theme applies to all elements.
  • Added the Reset tab 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 .exe and .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 and its design.
  • Reduced amount of path changing attempts.
  • "Path numbers with shortcuts" option is enabled by default.
  • The Main file structure has been simplified: one level of nesting has been removed, elevated apps check has been moved to a separate function (0af9532).
  • New libraries have been added: DarkTheme and SettingsMouse.
  • Validators now return the current value from the configuration (ea1b5c3) as paramName=default\n if the value is incorrect.
  • All path getters return the number of paths added (6518688 and f2b05ab) except ParseTotalTabs(): returns an error if it fails.
  • Improved code and syntax in Lib\TotalCommander* (7a4a54d).
  • All paths-related arrays (including Paths) array has become multi-dimensional arrays (b4d7b2d): [[path, icon, iconNumber?, title?], …]. See the implementation and documentation in Lib\MenuFrontend.
  • All AHK commands in the code have been rewritten in force expression syntax (d815505).

Fixed

  • Empty paths from Total Commander.
  • Repeated attempts to create user command for Total Commander in usercmd.ini. Now, if the user command already exists and QuickSwitch fails to retrieve the list of tabs, an error is displayed.
  • Repeated warnings about file overwriting after enabling (Always) Auto Switch.
  • Impossibility to change the path in the file dialog after the warning about file overwriting.
  • Rare freeze of Ctrl or Alt keys after the Menu display.
  • Saved options were reset after incorrect input. Some options were mistakenly overwritten after exiting the settings.
  • Logging has been reduced (antivirus issue #108).
  • Waiting time for rendering the file dialog has been increased (immediate close #77).

Don't miss a new QuickSwitch release

NewReleases is sending notifications on new releases.