This mod lets you assign an action to a mouse click on the Windows taskbar. Single, double, and triple clicks are supported - both mouse and touchscreen clicks. You can also assign a keyboard modifier to the action. For example, you can set up a double-click on the taskbar to open Task Manager while holding down the Ctrl key. The mod is designed to be as flexible as possible. You can assign any action to any mouse click or touchscreen tap. You can also assign multiple actions to the same trigger. This mod reacts when empty space on the taskbar is clicked. Buttons, menus, or other taskbar functions are not affected. Click events are normally forwarded to the system, so you can still use the taskbar as usual. Both primary and secondary taskbars are supported.
The following animation shows how to set up the taskbar auto-hide feature toggle on middle mouse button click and toggle volume mute on Ctrl + double-click.

Once set, a simple middle-click on empty taskbar space will toggle the auto-hide feature:

Some actions support or require additional arguments. You can set them in the Settings menu. Arguments are separated by semicolon. For example: arg1;arg2.
priTaskBarBtnState1;priTaskBarBtnState2;secTaskBarBtnState1;secTaskBarBtnState2
COMBINE_ALWAYS, COMBINE_WHEN_FULL, COMBINE_NEVERCOMBINE_ALWAYS, COMBINE_WHEN_FULL, COMBINE_NEVERCOMBINE_ALWAYS, COMBINE_WHEN_FULL, COMBINE_NEVERCOMBINE_ALWAYS, COMBINE_WHEN_FULL, COMBINE_NEVERCOMBINE_ALWAYS;COMBINE_WHEN_FULL;COMBINE_ALWAYS;COMBINE_NEVERreverse inverts the order of iteration through the windows (Ctrl+Alt+Shift+Tab behavior)
reverse argument is provided, direction is backwardapplicationPath arg1 arg2 ... argN
"c:\Program Files\Notepad++\notepad++.exe" C:\Users\username\Desktop\test.txt - use quotes around paths with spacesuac;C:\Windows\System32\notepad.exe C:\Windows\System32\drivers\etc\hosts - start application with elevated privileges (UAC prompt will appear)python.exe D:\MyScripts\my_python_script.py arg1 "arg 2 with space" arg3 - user must handle proper quoting of argumentscmd.exe /c echo Hello & pause - execute shell commandshttps://windhawk.net/mods/ - open URL in default web browserc:\Users\John Doe\Documents\ - open folder in Explorershell:Recent - open special shell folder in Explorer (more special shell commands)uac, the application will be started with elevated privileges (UAC prompt will appear).virtualKey1;virtualKey2;...;virtualKeyN
0x5B;0x45 or 0x7A;focusPreviousWindowfocusPreviousWindow that can be used to set focus back to the previously active window. This is useful when you want to send keypresses to the last active window instead of the taskbar. That way you can, for example, turn on fullscreen mode in the web browser by sending the F11 key. You can use this keyword anywhere in the sequence of virtual keys.Windows lets you set few handy touchpad gestures for media playback or window control. However, if you are using a mouse, you might miss those gestures.
Following examples serves as an inspiration for setting up your own actions. Of course you are not limited to these examples only. You can set up any action to any mouse click or touchscreen tap. Especially with the virtual key press action, you can setup own macros and shortcuts.
reverse argument)reverse argument)Consider installing Alt+Tab per monitor mod if you are using multiple monitors. Check out Virtual Desktop Helper and Virtual Desktop Preserve Taskbar Order mods if you are into virtual desktops.
By default, after every click or tap on the taskbar, the mod waits for the Windows double-click time (GetDoubleClickTime, usually 500 ms) before running any action.
This short delay is needed so the mod can correctly decide whether you did a:
This is what allows you, for example, to double-click the taskbar without triggering the single-click action first.
If you don't like this delay, you can turn on the Eager trigger evaluation option in the mod's settings.
With Eager trigger evaluation enabled:
The action runs immediately when a matching trigger is detected (no waiting). However, double or triple clicks/taps can still trigger the single-click/tap action, as long as you haven't configured a separate double or triple click/tap action for that same trigger. In other words, this option is a trade-off:
When you configure any right-click trigger (single, double, or triple), the mod needs to temporarily delay the taskbar's context menu to detect your intended action.
If you set up a right-click trigger without keyboard modifiers (for example, a right double-click), you'll notice a brief delay before the context menu appears after a single right-click. This happens because the mod waits to see if you're going to complete a double or triple click. The delay is short but noticeable—it's the trade-off for having custom right-click actions.
Tip: To avoid this delay, consider using keyboard modifiers with your right-click triggers (like Ctrl + right double-click). This way, the mod can instantly show the context menu when you right-click without holding the modifier key.
I will not be supporting Insider preview or other minor versions of Windows. However, feel free to report any issues related to those versions. I'll appreciate the heads-up in advance.
⚠️ Caution! Avoid using the option "Get the latest updates as soon as they're available" in Windows Update. Microsoft releases symbols for new Windows versions with a delay. This can render Windhawk mods unusable until the symbols are released (usually a few days).
If you are using the old Windows 10 taskbar on Windows 11 (ExplorerPatcher or a similar tool), enable the corresponding option in the Settings menu. ExplorerPatcher should get detected automatically.
If your taskbar becomes fully occupied by open windows and pinned icons, there is no empty space left to click on. To reserve minimal empty space on the taskbar (the Reserve empty space feature from 7+ Taskbar Tweaker), you can use the Windows 11 Taskbar Styler mod with this example configuration.
If you are using Vertical Taskbar for Windows 11 or Taskbar on top for Windows 11 mod, taskbar click detection might not work correctly when the Task Switching window is opened. See here for more details. As a workaround, you can install Alt+Tab per monitor that implicitly fixes the Task Switching window rect size so that the taskbar is not overlaid by it anymore.
If you've manually selected an app/window from the Task Switching dialog using the mouse, but the window is not focused after closing the dialog, try pressing Win+Tab once. I encountered a weird issue where the underlying mechanism used to identify what you clicked would work only once and then stop working. Opening the Win+Tab window once seems to fix the issue until the next logout/restart.
The mod uses Windhawk's ArrayOfNestedOptions widget type that enables you to create multiple trigger+action configurations. However, if you have just installed or updated the mod, there are no configurations set up yet. It might happen that Windhawk spawns a default empty configuration with all keyboard modifiers selected and no mouse trigger or action selected. Users then overlook the modifiers and only set up the mouse trigger and action. The mod will never trigger any action since it is impossible to press all keyboard modifiers at once on most keyboards. If that's the case, open the mod's Settings and either remove the empty configuration or set up your desired trigger+action configuration (including keyboard modifiers). For more information, please see the gif animation on the mod's Description tab.
Please see the previous section about empty configuration. If that is not the issue, check the mod's log for any error messages or other clues:
Advanced tabDebug logging, select Mod logsShow log output buttonMake sure the action trigger parsed from settings corresponds to your expectation. Make sure the mod reports a taskbar version that corresponds to your Windows taskbar. If you are using ExplorerPatcher with the Windows 10 taskbar, check that the mod is using Windows 10 taskbar mode. If you are using the Windows 11 taskbar with ExplorerPatcher, make sure the mod is using Windows 11 taskbar mode.
If you can't find anything useful, try enabling DEBUG logging:
Edit button// #define ENABLE_LOG_DEBUG and remove the leading // characters to uncomment the lineCompile ModPlease open an Issue on the GitHub page describing your problem. Please always include the following information:
winver command to get this informationAdvanced tabDEBUG logging enabled (see the previous section for instructions on how to enable it)By default, Windows opens new application windows on the primary monitor. Even if monitor hint information is provided, many applications ignore it and still open on the primary monitor. If you want to open an application on the currently active monitor more reliably, you can use Microsoft PowerToys with the FancyZones feature enabled. FancyZones will remember the last active monitor and open new windows there. For more information, see GitHub issue #52.
The mod tries to find the Start button on the taskbar you clicked on to open the Start menu. However, if you used e.g., Windows 11 Taskbar Styler mod to hide the button, the mod will fall back and send a Win key press to open the Start menu. By default, Windows opens the Start menu on the primary monitor. If you want to open the Start menu on the currently active monitor, you can use the Start menu open location mod.
If you wish to extend media playback control further, you can use the Taskbar Volume Control mod. It lets you control the system volume by scrolling the mouse wheel over the taskbar.
By default, Windows opens Task Switching dialog on the primary monitor. If you want it to open on the currently active monitor, consider using Alt+Tab per monitor mod.
The "Switch virtual desktop" feature is based on u2x1's Virtual Desktop Helper mod. If you want more fine-grained control over virtual desktops (e.g., switch to a specific desktop number, move the current window to another desktop, etc.), consider installing that mod and sending custom keypresses to it using this mod. Also checkout Virtual Desktop Preserve Taskbar Order mod.
If you have a request for new functions, suggestions, or you are experiencing some issues, please post an Issue on the GitHub page. Please be as specific as possible and provide as much information as you can. Please consider using an AI chatbot if you are struggling to put everything together in English.
You can contact me via Windhawk's Discord channel (@m1lhaus) or GitHub page.