Skip to content

#2174 feat: add default do not remap preference#2178

Merged
sds100 merged 5 commits into
developfrom
claude/issue-2174-do-not-remap-default
Jul 9, 2026
Merged

#2174 feat: add default do not remap preference#2178
sds100 merged 5 commits into
developfrom
claude/issue-2174-do-not-remap-default

Conversation

@keymapper-ai

Copy link
Copy Markdown
Collaborator

Summary

Closes #2174.

Adds a "Do not remap by default" toggle to the Change Default Options settings page (Settings → Change default options). When enabled, new trigger keys added to a key map will have consumeEvent = false by default — meaning the original key event is passed through to other apps rather than being consumed by Key Mapper.

Changes

  • data/Keys.kt — adds defaultDoNotRemap boolean DataStore key (pref_default_do_not_remap)
  • data/PreferenceDefaults.kt — adds DO_NOT_REMAP = false default constant
  • GetDefaultKeyMapOptionsUseCase — exposes defaultDoNotRemap: StateFlow<Boolean> backed by the new preference key
  • SettingsViewModel — extends defaultSettingsScreenState via a nested combine to include doNotRemap; adds onDefaultDoNotRemapChanged callback override; adds doNotRemap field to DefaultSettingsState
  • DefaultOptionsSettingsScreen — adds a SwitchPreferenceCompose for the new preference and onDefaultDoNotRemapChanged to DefaultOptionsSettingsCallback
  • ConfigTriggerDelegate — adds defaultDoNotRemap: Boolean = false parameter to both addKeyEventTriggerKey and addEvdevTriggerKey; uses it as the initial value of consumeEvent (modifier keys still force it to false regardless)
  • ConfigTriggerUseCase — passes defaultDoNotRemap.value from GetDefaultKeyMapOptionsUseCase to the delegate when adding new trigger keys
  • strings.xml — adds title_pref_default_do_not_remap and summary_pref_default_do_not_remap
  • CHANGELOG.md — adds entry under 4.2.0 Added

Generated by Claude Code

claude and others added 2 commits June 27, 2026 00:37
Add a "Do not remap by default" toggle to the Change Default Options settings
page. When enabled, new trigger keys will have consumeEvent = false by default,
letting the original key event pass through to other apps.
@sds100 sds100 self-requested a review July 9, 2026 09:25
sds100
sds100 previously approved these changes Jul 9, 2026
@sds100 sds100 merged commit bd5db65 into develop Jul 9, 2026
4 checks passed
@sds100 sds100 deleted the claude/issue-2174-do-not-remap-default branch July 9, 2026 09:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Do Not Remap preference to 'Change default options' page

3 participants