microsoft / microsoft/PowerToys

CmdPal: Support double-tapping modifier keys (e.g., Ctrl, Alt) for activation

Open
#45,295 0 comments 3 reactions 0 assignees View on GitHub
Needs-Triage Product-Command Palette
Dominant language
C
Stars
139k
Forks
8.6k
PR merge metrics
PR metrics pending

Description

### Description of the new feature / enhancement

### Is your feature request related to a problem? Please describe.
Currently, the default activation shortcut for CmdPal is a combination of keys (e.g., `Alt+Space`). While effective, these combinations often require two hands or a specific hand position.

Many users are accustomed to "Double-Tap" activation methods found in other productivity tools (like Alfred on macOS, Listary, or Wox), where double-pressing a single modifier key (like `Left Ctrl` or `Alt`) instantly summons the launcher.

Referencing older discussion in PowerToys Run #3957, this feature is highly requested for improved accessibility and speed.

### Describe the solution you'd like
I would like to suggest adding a configuration option in the **CmdPal** settings to enable "Double-Tap to Activate".

**Proposed Settings:**
1. **Enable/Disable Toggle:** A checkbox to turn this feature on.
2. **Key Selection:** A dropdown menu to select which key to double-tap. Options should ideally include:
- Left Control
- Right Control
- Left Alt
- Right Alt
- Left Shift
3. **Sensitivity (Optional):** Adjustable timeout for what counts as a "double press" (similar to Windows mouse double-click speed).

### Describe alternatives you've considered
- Using third-party remapping tools (like AutoHotkey) to map `Double Ctrl` to the CmdPal shortcut. However, having this native to PowerToys would be much cleaner and more stable.
- Sticking to `Alt+Space`, which is less ergonomic for one-handed use compared to double-tapping a corner key like `Ctrl`.

### Additional context
**Crucially, this interaction logic is already implemented in PowerToys "Find My Mouse" utility.** The [Find My Mouse](https://learn.microsoft.com/en-us/windows/powertoys/mouse-utilities#find-my-mouse) tool successfully uses a double-press of the `Left Ctrl` key to activate the spotlight effect.
- Bringing this same functionality to **CmdPal** would maintain consistency across the PowerToys suite.
- The existing low-level keyboard hook or detection logic from Mouse Utilities could potentially be reused or adapted for CmdPal, reducing implementation complexity.
- Existing implementation: PowerToys Settings -> Mouse Utilities -> Find My Mouse -> Activation method (Double press Left Ctrl).

### Scenario when this would be used?

This feature would significantly lower the friction for launching commands, making CmdPal better than PowerToys Run.

### Supporting information

**Similar request for PowerToys Run:**
#3957
#7399
#13947
#15658
#17241
#22437

**Implemented in PowerToys "Find My Mouse":**
https://github.com/microsoft/PowerToys/blob/67d96b0a13e14118fb3ef6d238bbd788c256f919/src/modules/MouseUtils/FindMyMouse/FindMyMouse.cpp#L327

Contributor guide

Open the contributing guide

Research direction

Start by reading the cited FindMyMouse.cpp implementation around line 327, then trace how CmdPal activation and settings are wired. Compare the existing double-press behavior with the requested modifier-key options; done means CmdPal can be configured to activate from a selected modifier double-tap.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
desktop, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.