Skip to content
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

[Keyboard][Keymap] Fix random keys being sent on Mac + userspace changes #15648

Merged
merged 70 commits into from
Oct 10, 2022
Merged

[Keyboard][Keymap] Fix random keys being sent on Mac + userspace changes #15648

merged 70 commits into from
Oct 10, 2022

Conversation

artjomsR
Copy link
Contributor

As I was working on my keymap I've found that my split75 keyboard started sending random keys when connected to a Mac (wasn't an issue 1+ year ago). The fix in #14941 helped: I'm applying it on a keyboard level ( keyboards/wheatfield/split75/config.h) since other users are likely to exprience it. The rest of the PR contains changes to my userspace:

  • hardware Workman support
  • extract common functions to separate files and minimise duplication with LED functions
  • secrets
  • capsword

Description

Types of Changes

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

Issues Fixed or Closed by This PR

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).

@github-actions github-actions bot added the stale Issues or pull requests that have become inactive without resolution. label Jul 30, 2022
Copy link
Member

@drashna drashna left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The example files should have license headers too, but otherwise, LGTM.

@drashna drashna requested a review from a team July 30, 2022 04:05
@github-actions github-actions bot removed the stale Issues or pull requests that have become inactive without resolution. label Jul 31, 2022
@github-actions
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 Sep 14, 2022
@github-actions github-actions bot removed the stale Issues or pull requests that have become inactive without resolution. label Sep 25, 2022
Copy link
Member

@noroadsleft noroadsleft left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Need some copyright headers. Looks good to me otherwise.

users/art/art_user_config.h.example Show resolved Hide resolved
users/art/custom_definitions.h.example Show resolved Hide resolved
users/art/secr.h.example Show resolved Hide resolved
artjomsR and others added 6 commits October 4, 2022 20:30
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
@artjomsR artjomsR requested a review from noroadsleft October 4, 2022 20:02
users/art/art.h Outdated
#pragma once
#include QMK_KEYBOARD_H
#include "art_user_config.h"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs to be removed.

Suggested change
#include "art_user_config.h"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @drashna, sorry to necro an old thread. My bad, I actually didn't check this when you suggested it - why did you say this line needs to be removed? I just tried it and realised it doesn't compile without it: 'lang_switch_combo' undeclared (first use in this function) send_string(lang_switch_combo); which makes sense because lang_switch_combo is declared in art_user_config.h.

If it's no good to include .h files in user.h, then what is the alternative please?

Co-authored-by: Drashna Jaelre <drashna@live.com>
Copy link
Member

@noroadsleft noroadsleft left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me.

@noroadsleft noroadsleft merged commit cd4a265 into qmk:master Oct 10, 2022
@noroadsleft
Copy link
Member

For future reference, we recommend against committing to your master branch as you've done here, because pull requests from modified master branches can make it more difficult to keep your QMK fork updated. It is highly recommended for QMK development – regardless of what is being done or where – to keep your master updated, but NEVER commit to it. Instead, do all your changes in a branch (branches are basically free in Git) and issue PRs from your branches when you're developing.

There are instructions on how to keep your fork updated here:

Best Practices: Your Fork's Master: Update Often, Commit Never

Fixing Your Branch will walk you through fixing up your master branch moving forward. If you need any help with this just ask.

Thanks for contributing!

SjB added a commit to SjB/qmk_firmware that referenced this pull request Oct 13, 2022
* upstream/master:
  Remove xealousbrown keyboard (qmk#18658)
  Bugfix waffling60 rev d solder (qmk#18673)
  [Keyboard] Add hardwareabstraction/handwire Board  (qmk#18504)
  Vertex AngleR2 Layout Refactor (qmk#18661)
  [Keyboard][Keymap] Fix random keys being sent on Mac + userspace changes (qmk#15648)
  [Keyboard] New IDOBAO ID61 (a.k.a. Denwir D60) (qmk#17362)
  [Keyboard] Add ANAVI Macro Pad 10 (qmk#18620)
  Fix future naming collisions. (qmk#18645)
  Synth Labs Solo Configurator Fixes (qmk#18642)
  Update CRKBD keymap (qmk#18619)
  Remove all `BACKLIGHT_LEVELS 0` (qmk#18630)
  DD mappings for build.debounce_type and backlight.levels (qmk#18628)
  Add encoder map support for Keychron Q1v1 and Q2 (qmk#18598)
  Studio Kestra Nascent Refactor (qmk#18625)
  [Keyboard] Add supersplit (qmk#18611)
quinnyo pushed a commit to quinnyo/qmk_firmware that referenced this pull request Oct 21, 2022
…ges (qmk#15648)

* qmk art 2020+

* fix compilation

* remove functions. translation matrix

* fix edgecases

* whitespace

* fix memory oddity changing the keymap with every string print

* return edge cases

* support workman layout for git strings

* subm

* secrets

* fix git ignore

* rename var

* workman HW feature toggle

* remember lenght for inserting secrets

* blink leds on secret finish

* 75:fix LEDs not reflecting state on boot

* move common led functions to user file

* move common led funcs to separate file

* move funcs file to separate folder

* capsword

* move string functions to a separate file

* consolidate led funcs

* tidy up variables

* email

* fix printing random keys on Mac + temp disable dynamic macro

* make switch lang shortcut configurable

* revert ergodone behaviour

* move git ignore to userspace folder

* ergodone clean up + saving space

* navigation combos

* shift caps always turns on caps lock. more combos

* convert led funcs into header file

* convert string funcs into header file

* fix compilation for split75

* remove git cherry pick

* update legal headers

* more legal headers

* home row macros

* refactor combo names

* redo combos for homerow + f10 11 12

* custom strings implementation (like secrets)

* ergodone: more consistent f keys

* tweak left right combos to minimise typing interference

* ctr z shortcut

* ergodone: move del to a more convenient key

* rename secrets file to a shorter length

* ergodone tweaks

* fix after merge

* removed included .c files

* Update keyboards/ktec/ergodone/keymaps/art/user_config.c.example

* Update keyboards/mt/split75/keymaps/art/user_config.c.example

* Update users/art/secr.h.example

* Update users/art/custom_definitions.h.example

* Update users/art/art_user_config.h.example

* Update users/art/art.h
aivalja pushed a commit to aivalja/qmk_firmware that referenced this pull request Nov 7, 2022
…ges (qmk#15648)

* qmk art 2020+

* fix compilation

* remove functions. translation matrix

* fix edgecases

* whitespace

* fix memory oddity changing the keymap with every string print

* return edge cases

* support workman layout for git strings

* subm

* secrets

* fix git ignore

* rename var

* workman HW feature toggle

* remember lenght for inserting secrets

* blink leds on secret finish

* 75:fix LEDs not reflecting state on boot

* move common led functions to user file

* move common led funcs to separate file

* move funcs file to separate folder

* capsword

* move string functions to a separate file

* consolidate led funcs

* tidy up variables

* email

* fix printing random keys on Mac + temp disable dynamic macro

* make switch lang shortcut configurable

* revert ergodone behaviour

* move git ignore to userspace folder

* ergodone clean up + saving space

* navigation combos

* shift caps always turns on caps lock. more combos

* convert led funcs into header file

* convert string funcs into header file

* fix compilation for split75

* remove git cherry pick

* update legal headers

* more legal headers

* home row macros

* refactor combo names

* redo combos for homerow + f10 11 12

* custom strings implementation (like secrets)

* ergodone: more consistent f keys

* tweak left right combos to minimise typing interference

* ctr z shortcut

* ergodone: move del to a more convenient key

* rename secrets file to a shorter length

* ergodone tweaks

* fix after merge

* removed included .c files

* Update keyboards/ktec/ergodone/keymaps/art/user_config.c.example

* Update keyboards/mt/split75/keymaps/art/user_config.c.example

* Update users/art/secr.h.example

* Update users/art/custom_definitions.h.example

* Update users/art/art_user_config.h.example

* Update users/art/art.h
ramonimbao pushed a commit to ramonimbao/qmk_firmware that referenced this pull request Nov 28, 2022
…ges (qmk#15648)

* qmk art 2020+

* fix compilation

* remove functions. translation matrix

* fix edgecases

* whitespace

* fix memory oddity changing the keymap with every string print

* return edge cases

* support workman layout for git strings

* subm

* secrets

* fix git ignore

* rename var

* workman HW feature toggle

* remember lenght for inserting secrets

* blink leds on secret finish

* 75:fix LEDs not reflecting state on boot

* move common led functions to user file

* move common led funcs to separate file

* move funcs file to separate folder

* capsword

* move string functions to a separate file

* consolidate led funcs

* tidy up variables

* email

* fix printing random keys on Mac + temp disable dynamic macro

* make switch lang shortcut configurable

* revert ergodone behaviour

* move git ignore to userspace folder

* ergodone clean up + saving space

* navigation combos

* shift caps always turns on caps lock. more combos

* convert led funcs into header file

* convert string funcs into header file

* fix compilation for split75

* remove git cherry pick

* update legal headers

* more legal headers

* home row macros

* refactor combo names

* redo combos for homerow + f10 11 12

* custom strings implementation (like secrets)

* ergodone: more consistent f keys

* tweak left right combos to minimise typing interference

* ctr z shortcut

* ergodone: move del to a more convenient key

* rename secrets file to a shorter length

* ergodone tweaks

* fix after merge

* removed included .c files

* Update keyboards/ktec/ergodone/keymaps/art/user_config.c.example

* Update keyboards/mt/split75/keymaps/art/user_config.c.example

* Update users/art/secr.h.example

* Update users/art/custom_definitions.h.example

* Update users/art/art_user_config.h.example

* Update users/art/art.h
nolanseaton pushed a commit to nolanseaton/qmk_firmware that referenced this pull request Jan 23, 2023
…ges (qmk#15648)

* qmk art 2020+

* fix compilation

* remove functions. translation matrix

* fix edgecases

* whitespace

* fix memory oddity changing the keymap with every string print

* return edge cases

* support workman layout for git strings

* subm

* secrets

* fix git ignore

* rename var

* workman HW feature toggle

* remember lenght for inserting secrets

* blink leds on secret finish

* 75:fix LEDs not reflecting state on boot

* move common led functions to user file

* move common led funcs to separate file

* move funcs file to separate folder

* capsword

* move string functions to a separate file

* consolidate led funcs

* tidy up variables

* email

* fix printing random keys on Mac + temp disable dynamic macro

* make switch lang shortcut configurable

* revert ergodone behaviour

* move git ignore to userspace folder

* ergodone clean up + saving space

* navigation combos

* shift caps always turns on caps lock. more combos

* convert led funcs into header file

* convert string funcs into header file

* fix compilation for split75

* remove git cherry pick

* update legal headers

* more legal headers

* home row macros

* refactor combo names

* redo combos for homerow + f10 11 12

* custom strings implementation (like secrets)

* ergodone: more consistent f keys

* tweak left right combos to minimise typing interference

* ctr z shortcut

* ergodone: move del to a more convenient key

* rename secrets file to a shorter length

* ergodone tweaks

* fix after merge

* removed included .c files

* Update keyboards/ktec/ergodone/keymaps/art/user_config.c.example

* Update keyboards/mt/split75/keymaps/art/user_config.c.example

* Update users/art/secr.h.example

* Update users/art/custom_definitions.h.example

* Update users/art/art_user_config.h.example

* Update users/art/art.h
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants