Michael Richters
c00bd1a0d6
Adapt Redial to keyboard state array
...
Because the active key for redial was getting cached as the key being pressed,
Redial would only ever see a key toggled on event for `Key_Redial`. It would
then set `redial_held_` to `true`, but it would never get set to `false` on the
key's release.
This change both fixes it and simplifies the plugin as it is adapted to the
keyboard state array by doing away with unnecessary state variables, including
`redial_held_`.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
a1bbe40967
Adapt Escape-OneShot to keyboard state array
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
d4f80b101c
Adapt ShapeShifter to keyboard state array
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
71bf24a503
Adapt TopsyTurvy to keyboard state array
...
This is an extensive rewrite, but I think it simplifies the logic and makes the
plugin's code easier to follow.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
a956c2d77d
Adapt TapDance to keyboard state array
...
This is a major rewrite of TapDance, taking advantage of the keyboard state
array and the `KeyAddrEventQueue` class originally written for Qukeys.
fixes #806
fixes #922
fixes #908
fixes #985
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
081ca52c91
Adapt Qukeys to keyboard state array
...
When Qukeys stops event processing from its `onKeyswitchEvent()` handler, it's
because the event should be treated as non-existent (in most cases, it's merely
delayed). This keeps the keyboard state array from getting updated, as well as
completely stopping event processing.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
b16b47beaa
Remove spurious third argument in call to `Mouse::move()`
...
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
51fef2b33e
Remove the (mostly) useless `MouseWrapper.diagonalize()` function
...
Because the input value was always very small, it never really served its
purpose.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Gergely Nagy
17f8d6c2c5
Merge pull request #1012 from gedankenexperimenter/c/Ranges.macros
...
Clarify the Macros plugin `Key` value range
4 years ago
Michael Richters
c9534155e6
Clarify the Macros plugin `Key` value range
...
This replaces the magic number `24576` with the old definition of the start of
the Macros plugin's `Key` range, to make it clear that it will match bitwise
tests for "not a plugin key" (the two high bits are both zeros) and the
`SYNTHETIC` flags bit.
I also elaborated on the reasons for keeping the existing `Key` values stable
and added a comment addressing the more likely case where new values are being
added, rather than fighting the last war and focusing only on the one legacy
plugin range that exists outside the canonical plugin range, whose values have
already been incorporated here.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Michael Richters
44cffeb3c0
Move header includes in Model01Side.h outside namespace blocks
...
Some headers in the file Model01Side.h were included inside the namespace
`kaleidoscope::driver::keyboardio` instead of being left in the global
namespace, where they should have been.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
4 years ago
Gergely Nagy
fc1296395e
New hook: onNameQuery()
...
This implements a new `FocusSerial` command: `plugins`. The `plugins` command
will reply back with a list of plugins enabled in the firmware. The list is not
exhaustive, only plugins that opt-in to this mechanism will be listed. It is
opt-in, because for a lot of plugins, having them listed isn't useful in a
practical sense.
The goal with this feature is to allow Chrysalis to detect plugins that would
affect what keys it offers, or which additional settings it displays, and do so
in a consistent way. This is why IdleLEDs has an `onNameQuery` handler too, even
though it can be detected otherwise: for consistency.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
4 years ago
Gergely Nagy
b41a7a5502
Macros: Document the QWERTY limitation
...
This partially addresses #1011 .
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
4 years ago
Jesse Vincent
bdcdb54d3f
Merge pull request #1018 from keyboardio/jesse/plugin-docs-cleanup
...
Jesse/plugin docs cleanup
4 years ago
Jesse Vincent
5d3e5d49d1
Merge pull request #1006 from keyboardio/f/devel-trace
...
This small plugin adds affordances for print-statement debugging.
4 years ago
Jesse Vincent
589c2dd799
Get the two remaining files out of the plugins directory in docs to make it easier to ignore this dir
4 years ago
Gergely Nagy
4f9afcfdb9
plugins/Ranges: Add an explanatory comment above the ranges enum
...
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
4 years ago
Gergely Nagy
9c49d5b2ac
plugins/Ranges: Fix the Macro key ranges
...
Macro keycodes pre-date the Ranges plugin, so they previously had a keycode that
sorted before ranges::FIRST. For the sake of backwards compatibility, we want to
keep using the same keycodes.
Fixes #1010 .
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
4 years ago
Jesse Vincent
90dd2f3778
Add a new plugin which wraps and configures ArduinoTrace to make print statement debugging easier
...
Import ArduinoTrace.h as of c225e14638fcb48e4392e38ab1155dbc1e8eb13a
from https://github.com/bblanchon/ArduinoTrace/blob/master/ArduinoTrace.h
4 years ago
Jesse Vincent
b3b56efdf8
Merge pull request #1002 from keyboardio/f/remove-deprecations
...
Remove stuff that was deprecated as of december 31
4 years ago
Jesse Vincent
81ae19a7ec
Cleanups for typos and broken links across the documentation
4 years ago
Jesse Vincent
706c15a381
Remove deprecated QuKeys functions on schedule
4 years ago
Jesse Vincent
3bfd045065
Remove deprecated Key Masking system on schedule
4 years ago
Jesse Vincent
efeea31589
More library tweaking to comply with arduino requirements
4 years ago
Jesse Vincent
33626a569f
Move most plugin READMEs back into the plugins
4 years ago
Jesse Vincent
46c567c01a
Add generated 'author' lines to plugins based on Copyright statements.
4 years ago
Jesse Vincent
1a5193c443
Add maintainer, sentence, and url to all the plugin libraries
4 years ago
Jesse Vincent
c15c71777e
Fix capitalization of a couple plugins
4 years ago
Jesse Vincent
f7b2d49618
Clean up toplevel header files so we can extra their short descriptions
4 years ago
Jesse Vincent
944e41bc6f
fixup Model 01 extraction
4 years ago
Jesse Vincent
440fdd2b9e
Extract keyboardio keyboards to plugins
4 years ago
Jesse Vincent
e39a5b0810
Extract Technomancy Atreus to a plugin
4 years ago
Jesse Vincent
ee526315f6
Extract SOFTHRUF Splitography
4 years ago
Jesse Vincent
5c9e827918
Extract Dygma Raise out to a plugin
4 years ago
Jesse Vincent
74986b6757
Extract KBDFans KBD4x out to a plugin
4 years ago
Jesse Vincent
cedfc0b935
extract the planck out to a plugin dir
4 years ago
Jesse Vincent
5b5bf237e1
move the ErgoDox EZ out to a plugin
4 years ago
Jesse Vincent
d82bc7b154
extract gHeavy boards to plugins
4 years ago
Jesse Vincent
54cae3365d
Extract Kaleidoscope-Ranges back to a plugin
4 years ago
Jesse Vincent
af336b55dc
Migrate Kaleidoscope-LEDEffects to the plugins directory
4 years ago
Jesse Vincent
171146e405
Migrate Kaleidoscope-HardwareTestMode to the plugins directory
4 years ago
Jesse Vincent
17d09b7fe9
Migrate Kaleidoscope-LED-AlphaSquare to the plugins directory
4 years ago
Jesse Vincent
c6d26f47e9
Migrate Kaleidoscope-LED-ActiveModColor to the plugins directory
4 years ago
Jesse Vincent
c8c4ea7e6a
Migrate Kaleidoscope-LED-ActiveLayerColor to the plugins directory
4 years ago
Jesse Vincent
9d958025c3
Migrate Kaleidoscope-EEPROM-Settings to the plugins directory
4 years ago
Jesse Vincent
da75121d9b
Migrate Kaleidoscope-EEPROM-Keymap to the plugins directory
4 years ago
Jesse Vincent
110da0e334
Migrate Kaleidoscope-EEPROM-Keymap-Programmer to the plugins directory
4 years ago
Jesse Vincent
86268c56dc
Migrate Kaleidoscope-PersistentLEDMode to the plugins directory
4 years ago
Jesse Vincent
285afc6858
Migrate Kaleidoscope-Model01-TestMode to the plugins directory
4 years ago
Jesse Vincent
4a57e09a9c
Migrate Kaleidoscope-OneShot to the plugins directory
4 years ago
Jesse Vincent
58e33f5903
Migrate Kaleidoscope-LEDEffect-SolidColor to the plugins directory
4 years ago
Jesse Vincent
8478ed971e
Migrate Kaleidoscope-LEDEffect-Rainbow to the plugins directory
4 years ago
Jesse Vincent
36574517ad
Migrate Kaleidoscope-LEDEffect-Chase to the plugins directory
4 years ago
Jesse Vincent
c87cdc9555
Migrate Kaleidoscope-LEDEffect-Breathe to the plugins directory
4 years ago
Jesse Vincent
5bb7f4b592
Migrate Kaleidoscope-LEDEffect-BootGreeting to the plugins directory
4 years ago
Jesse Vincent
bed33a4ad7
Migrate Kaleidoscope-LEDEffect-BootAnimation to the plugins directory
4 years ago
Jesse Vincent
7918065ddb
Migrate Kaleidoscope-LED-Palette-Theme to the plugins directory
4 years ago
Jesse Vincent
593e31919f
Migrate Kaleidoscope-LED-Stalker to the plugins directory
4 years ago
Jesse Vincent
3eb5bf96ed
Migrate Kaleidoscope-LED-Wavepool to the plugins directory
4 years ago
Jesse Vincent
1efbf31baf
Migrate Kaleidoscope-Escape-OneShot to the plugins directory
4 years ago
Jesse Vincent
2995e87bdf
Migrate Kaleidoscope-Colormap to the plugins directory
4 years ago
Jesse Vincent
3201833153
Migrate Kaleidoscope-Qukeys to the plugins directory
4 years ago
Jesse Vincent
8a6bd8023b
Migrate Kaleidoscope-LayerFocus to the plugins directory
4 years ago
Jesse Vincent
bd9dcc0c1f
Migrate Kaleidoscope-MouseKeys to the plugins directory
4 years ago
Jesse Vincent
f12a07c249
Migrate Kaleidoscope-NumPad to the plugins directory
4 years ago
Jesse Vincent
3299a3b361
Migrate Kaleidoscope-Macros to the plugins directory
4 years ago
Jesse Vincent
eb238e7b75
Migrate Kaleidoscope-MagicCombo to the plugins directory
4 years ago
Jesse Vincent
73178c7229
Migrate Kaleidoscope-ShapeShifter to the plugins directory
4 years ago
Jesse Vincent
8ea60fb414
Migrate Kaleidoscope-GhostInTheFirmware to the plugins directory
4 years ago
Jesse Vincent
ad07aeee97
Migrate Kaleidoscope-FocusSerial to the plugins directory
4 years ago
Jesse Vincent
da1318cfaa
Migrate Kaleidoscope-FingerPainter to the plugins directory
4 years ago
Jesse Vincent
8d3cb76f7e
Migrate Kaleidoscope-DynamicTapDance to the plugins directory
4 years ago
Jesse Vincent
b9633a4916
Migrate Kaleidoscope-DynamicMacros to the plugins directory
4 years ago
Jesse Vincent
b9f6a1b1eb
Migrate Kaleidoscope-Cycle to the plugins directory
4 years ago
Jesse Vincent
a2775565e5
Migrate Kaleidoscope-CycleTimeReport to the plugins directory
4 years ago
Jesse Vincent
b3ef48dcce
Migrate Kaleidoscope-Leader to the plugins directory
4 years ago
Jesse Vincent
b573f37f15
Migrate Kaleidoscope-SpaceCadet to the plugins directory
4 years ago
Jesse Vincent
36cd49e8d4
Migrate Kaleidoscope-TopsyTurvy to the plugins directory
4 years ago
Jesse Vincent
3b30588fb0
Migrate Kaleidoscope-Unicode to the plugins directory
4 years ago
Jesse Vincent
e98ea83a0a
Migrate Kaleidoscope-Redial to the plugins directory
4 years ago
Jesse Vincent
51f10ac3e9
Migrate Kaleidoscope-HostPowerManagement to the plugins directory
4 years ago
Jesse Vincent
bc77d2e1f6
Migrate Kaleidoscope-IdleLEDs to the plugins directory
4 years ago
Jesse Vincent
21dc498e6c
Migrate Kaleidoscope-Heatmap to the plugins directory
4 years ago
Jesse Vincent
1d5ddbb0a5
Migrate Kaleidoscope-Turbo to the plugins directory
4 years ago
Jesse Vincent
51fddee9af
Migrate Kaleidoscope-TapDance to the plugins directory
4 years ago
Jesse Vincent
d59503161a
Migrate Kaleidoscope-FirmwareDump to the plugins directory
4 years ago
Jesse Vincent
3998bdc15b
Migrate Kaleidoscope-Steno to the plugins directory
4 years ago
Jesse Vincent
2db54d1f74
Migrate Kaleidoscope-USB-Quirks to the plugins directory
4 years ago
Jesse Vincent
e61f7a275d
Migrate Kaleidoscope-TypingBreaks to the plugins directory
4 years ago
Jesse Vincent
c7efb77b95
Migrate Kaleidoscope-Syster to plugins directory
4 years ago
Jesse Vincent
9619cf2f52
Move WinKeyToggle to the plugins repo
4 years ago
Jesse Vincent
a63a567abd
Move the HostOS plugin into the plugins directory
4 years ago