-
Notifications
You must be signed in to change notification settings - Fork 0
Usage
QuadClicker launches into its GUI when run with no arguments (or with --minimized to start in the tray). Settings are saved on exit and restored on next launch.
Choose your mode with the radio buttons, then enter a value:
-
Delay — time between clicks. Units:
ms,sec,min.- Example:
100 ms= 10 clicks per second;5 sec= 1 click every 5 seconds.
- Example:
-
Frequency — clicks per unit of time. Units: per sec, per min, per hour.
- Example:
10per sec = 100 ms between clicks;60per hour = 1 click per minute.
- Example:
Bounds: The minimum delay is 1 ms (maximum rate: 1000 clicks/second). The maximum delay is 360 minutes. Input outside this range is rejected inline — no dialog appears.
The CLI also accepts free-form strings like 10/s, 600cpm, 5 times per second. See Click-Rate-Formats for the complete list.
Select Left (default), Right, or Middle via the radio group.
- Single (default) — one click per interval
- Double — two clicks separated by the OS double-click interval (read from the system, not hardcoded)
Three mutually exclusive modes:
Current Position (default) — clicks fire wherever your cursor is at the moment of injection. No coordinates needed.
Fixed Coordinate — enter X and Y pixel values (screen origin is top-left). The cursor moves to the specified point before each click.
Pick Location — click Pick to enter overlay mode:
- The app window minimizes
- A full-screen transparent overlay appears with a crosshair cursor and the hint: "Click to select location | ESC to cancel"
- Left-click anywhere to capture those coordinates; the selection click is swallowed (not forwarded to the app underneath)
- ESC cancels without changing stored coordinates
- The picker logs diagnostic output to
%APPDATA%\QuadClicker\picker.logif something goes wrong
Any condition that triggers first wins. All default to 0 (disabled = unlimited).
- After N clicks — stop once the click count reaches N
- After N seconds — stop after N seconds of clicking (timer starts after any idle wait)
- Manual — click Stop in the UI or press the Stop hotkey at any time
Idle wait (seconds): wait until the system has been idle for at least N seconds before starting. Set to 0 to start immediately.
While waiting, the status label shows "Waiting for idle…". Moving the mouse or pressing any key resets the idle timer (behavior is OS-native: GetLastInputInfo on Windows, XScreenSaverQueryInfo / D-Bus on Linux).
Two independently configurable global hotkeys: Start and Stop.
-
Stop hotkey default:
F10 - Start hotkey default: none (configure manually, or just use the Start button)
- Click the hotkey field and press the key combination you want to capture. Modifier keys (Ctrl, Alt, Shift) are supported in combination.
- Hotkeys work when the app is minimized to the tray or in the background.
- Setting both hotkeys to the same combination is blocked with an inline error.
See Hotkeys-and-Platform-Notes for platform-specific details and the Wayland caveat.
- Closing the window minimizes to tray — it does not quit.
- The tray icon tooltip changes from "QuadClicker - now with 4x the clicks" to "QuadClicker — Clicking" when active.
- Right-click the tray icon for a context menu: Show Window, Start / Stop, Quit.
- Double-click the tray icon to restore the window.
- Launch with
quadclicker --minimizedto start directly in the tray.
Toggle in the Advanced section. When enabled, the window floats above all other windows. The preference is saved on exit and restored on next launch.
All settings are saved to disk on exit and loaded on launch:
| Platform | Path |
|---|---|
| Windows | %APPDATA%\QuadClicker\settings.json |
| macOS | ~/Library/Application Support/QuadClicker/settings.json |
| Linux | ~/.config/quadclicker/settings.json |
The JSON format is identical across platforms, so a settings file copied from one platform loads correctly on another (useful if you're building from source on multiple machines).
On launch, the app performs an asynchronous HTTPS check against the GitHub Releases API. If a newer version is available, a non-modal notification appears with Update, Skip (this session), and Skip this version options.
-
Update: downloads the new EXE to a temp directory, verifies the SHA256 checksum from the release's
SHA256SUMS.txt, spawns a small staging script that waits for the current process to exit, copies the file, and relaunches with--post-update. - The check never blocks launch. Network errors are silently ignored.
- Disable with
--no-update-checkor via the update settings toggle. - Run
quadclicker --check-updatefor a one-shot check from the command line.