Clicker is a program designed to minimize mouse clicks by enabling comfortable hand positioning for clicking. It helps reduce strain and improves efficiency during long hours of computer usage.
Quick Understanding of Execution Workflow
This section is intended to provide a clear overview of the setup and workflow, helping users quickly understand the concepts needed to handle Clicker effectively.
fig 1: outlines the setup process
All panels show up from the Main Panel (Panel 2).
The workflow proceeds from left to right.
Default set
- L ( left click) =
1
- R (right click) =
2
- M (wheel click) =
3
- Mode Toggle =
Backtick
( the key located below the ESC
)
Step-by-Step Execution
- Key Mapping - Remap displaced keys to maintain full keyboard functionality:
- When you assign keys for mouse functions, those keys can no longer perform their original functions
- Use Panel 1 (Key Mapper) to redirect these displaced keys to alternative locations
- Create a KMP profile that defines these key redirections for your setup
- Refer to how-to for detailed mapping instructions
- This ensures all keyboard functions remain accessible while enabling mouse functionality
- Main Panel Configuration - Set up primary mouse controls and activate your key mapping:
- Set
L
, R
, and M
buttons through Panel 2 (Main Panel) or 👉 VK code input
- Select the KMP profile you created from the Key Group Manage droplist
- This combination gives you full mouse control (clicks) and maintains keyboard functionality
- When Clicker runs, both your mouse button assignments and key remappings are applied together
- Saving Profiles - Store your configurations for quick access:
- Enter a profile name in Panel 3 (Clicker Saver) and press
Enter
- The profile will appear in the Profile Registered list
- Your complete setup (mouse buttons and key remappings) is now saved as a single profile
- Select the profile from the list to review
L
, R
, M
, and K
details
- Optionally, configure F (script file) and click Update Profile to save changes
- More details here
- Saving profiles allows you to switch between different configurations easily
- Hotkey Run (HKR) Setup - Create shortcuts for instant profile switching:
- Assign up to 8 hotkeys (
F1
–F8
) for different profiles
- Select the desired profile for each hotkey (configurations are auto-saved)
- Use the assigned hotkeys to instantly apply any saved profile's settings
- Ensure
HKR is active
to use these profile shortcuts
- Activation Toggle Hotkey:
Ctrl+F9
- More details here
- This gives you one-press access to completely different configurations for different applications or tasks
Known Limitations
GUI Self-Click Drag Issue ( ClickLock )
- Description:
When simulating a click on Clicker's own GUI window using keyboard-initiated clicks (e.g., through the L
key), the clicker window may remain attached to the mouse pointer, as if in a stuck drag state.
- Cause:
This behavior results from AutoHotkey's internal threading and message handling model.
When the script simulates a click (Click ... Down
and Click ... Up
) on its own GUI, AHK does not properly release the drag state because both the GUI and the simulated input are processed on the same thread.
- Benefits:
Interestingly, this "ClickLock" style can be convenient for users who prefer keeping the drag or click state without holding down a physical button. In certain workflows, being able to click once and move the window or perform extended drag actions can reduce strain and simplify repeated operations.
- Scope:
This issue (or behavior) only affects Clicker's own GUI windows.
Simulated clicks on other application windows behave correctly.
- Workarounds:
- Just input enter
- Use a real mouse click to reset the state
- Combine
L
with a modifier key (Shift
, Alt
, Ctrl
) to bypass drag interference
- Status:
This is a structural limitation in AHK and cannot be fully resolved through additional scripting alone.
Future versions may explore moving input handling to a helper process or native-level workaround.
Meanwhile, if you find the “ClickLock” effect useful in certain scenarios, you can keep using it as a feature rather than a bug. Otherwise, consider using the workarounds above to minimize unintended dragging.