Skip to content

Add combo key repress feature #22858

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Sep 6, 2024
Merged

Add combo key repress feature #22858

merged 5 commits into from
Sep 6, 2024

Conversation

Filios92
Copy link
Contributor

@Filios92 Filios92 commented Jan 7, 2024

Allows for running code for combo key repressing after release

Description

A copy-paste from new docs:
By defining COMBO_PROCESS_KEY_REPRESS and implementing bool process_combo_key_repress(uint16_t combo_index, combo_t *combo, uint8_t key_index, uint16_t keycode) you can run your custom code when you repress just released key of a combo. By combining it with custom process_combo_event we can for example make special handling for Alt+Tab to switch windows, which, on combo F+G activation, registers Alt and presses Tab - then we can switch windows forward by releasing G and pressing it again, or backwards with F key.

Types of Changes

  • Core
  • Bugfix
  • New feature
  • Enhancement/optimization
  • Keyboard (addition or update)
  • Keymap/layout/userspace (addition or update)
  • Documentation

Checklist

  • My code follows the code style of this project: C, Python
  • I have read the PR Checklist document and have made the appropriate changes.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • I have tested the changes and verified that they work and don't break anything (as well as I can manage).

@drashna
Copy link
Member

drashna commented Jan 8, 2024

Branch should be updated, but unit tests really should/need to be added.

@Filios92 Filios92 force-pushed the combo-repress branch 3 times, most recently from 0f6d869 to 01904af Compare January 22, 2024 17:57
@drashna drashna requested a review from a team February 1, 2024 07:50
Copy link

Thank you for your contribution!
This pull request has been automatically marked as stale because it has not had activity in the last 45 days. It will be closed in 30 days if no further activity occurs. Please feel free to give a status update now, or re-open when it's ready.
For maintainers: Please label with bug, awaiting review, breaking_change, in progress, or on hold to prevent the issue from being re-flagged.

@github-actions github-actions bot added the stale Issues or pull requests that have become inactive without resolution. label Mar 18, 2024
@drashna drashna added awaiting review and removed stale Issues or pull requests that have become inactive without resolution. labels Mar 30, 2024
@tzarc tzarc added breaking_change_2024q3 develop-fast-track Intended to be merged early in the next develop cycle. and removed breaking_change_2024q2 labels May 27, 2024
@drashna
Copy link
Member

drashna commented Jul 26, 2024

This has some merge conflicts that need to be resolved.

Co-authored-by: jack <jack@pngu.org>
@drashna drashna merged commit 0fd9909 into qmk:develop Sep 6, 2024
5 checks passed
itsme-zeix pushed a commit to itsme-zeix/qmk_firmware that referenced this pull request Oct 2, 2024
Co-authored-by: jack <jack@pngu.org>
ilham-agustiawan pushed a commit to ilham-agustiawan/qmk_firmware that referenced this pull request Nov 30, 2024
Co-authored-by: jack <jack@pngu.org>
smallketchup82 pushed a commit to smallketchup82/qmk_firmware that referenced this pull request Dec 1, 2024
Co-authored-by: jack <jack@pngu.org>
jlaptavi pushed a commit to jlaptavi/qmk_firmware that referenced this pull request Dec 3, 2024
Co-authored-by: jack <jack@pngu.org>
DmNosachev pushed a commit to DmNosachev/qmk_firmware that referenced this pull request Dec 7, 2024
Co-authored-by: jack <jack@pngu.org>
SyrupSplashin pushed a commit to SyrupSplashin/qmk_firmware that referenced this pull request Dec 10, 2024
Co-authored-by: jack <jack@pngu.org>
LeonMusCoden pushed a commit to LeonMusCoden/qmk_firmware that referenced this pull request Jan 5, 2025
Co-authored-by: jack <jack@pngu.org>
MichaelScofield45 pushed a commit to MichaelScofield45/qmk_firmware that referenced this pull request Jan 8, 2025
Co-authored-by: jack <jack@pngu.org>
pashashocky pushed a commit to pashashocky/qmk that referenced this pull request Jan 17, 2025
Co-authored-by: jack <jack@pngu.org>
Rumadon pushed a commit to Rumadon/qmk_firmware that referenced this pull request Jan 31, 2025
Co-authored-by: jack <jack@pngu.org>
MaximumP pushed a commit to MaximumP/qmk_firmware that referenced this pull request Feb 1, 2025
Co-authored-by: jack <jack@pngu.org>
alinelena pushed a commit to alinelena/qmk_firmware that referenced this pull request Feb 3, 2025
Co-authored-by: jack <jack@pngu.org>
artlugovoy pushed a commit to artlugovoy/qmk_firmware that referenced this pull request Feb 16, 2025
Co-authored-by: jack <jack@pngu.org>
srphcr pushed a commit to srphcr/qmk_firmware that referenced this pull request Mar 24, 2025
Co-authored-by: jack <jack@pngu.org>
oskar-wigstrom pushed a commit to oskar-wigstrom/qmk_firmware that referenced this pull request Apr 23, 2025
Co-authored-by: jack <jack@pngu.org>
minyu7374 pushed a commit to minyu7374/qmk_firmware that referenced this pull request Apr 25, 2025
Co-authored-by: jack <jack@pngu.org>
MasayukiFukada pushed a commit to MasayukiFukada/qmk_firmware that referenced this pull request May 1, 2025
Co-authored-by: jack <jack@pngu.org>
w31mann pushed a commit to w31mann/qmk_firmware that referenced this pull request Aug 3, 2025
Co-authored-by: jack <jack@pngu.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting review core develop-fast-track Intended to be merged early in the next develop cycle. documentation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants