summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/feature_key_lock.md3
-rw-r--r--keyboards/40percentclub/ut47/matrix.c6
-rw-r--r--keyboards/ai03/orbit/matrix.c5
-rw-r--r--keyboards/amj96/matrix.c6
-rw-r--r--keyboards/angel64/alpha/matrix.c7
-rw-r--r--keyboards/angel64/rev1/matrix.c7
-rw-r--r--keyboards/bpiphany/kitten_paw/matrix.c7
-rw-r--r--keyboards/bpiphany/pegasushoof/2013/matrix.c7
-rw-r--r--keyboards/converter/palm_usb/matrix.c7
-rw-r--r--keyboards/converter/sun_usb/matrix.c7
-rw-r--r--keyboards/converter/usb_usb/custom_matrix.cpp4
-rw-r--r--keyboards/dc01/arrow/matrix.c8
-rw-r--r--keyboards/dc01/left/matrix.c8
-rw-r--r--keyboards/dc01/numpad/matrix.c8
-rw-r--r--keyboards/dc01/right/matrix.c8
-rw-r--r--keyboards/dm9records/ergoinu/matrix.c6
-rw-r--r--keyboards/duck/jetfire/matrix.c6
-rw-r--r--keyboards/ergodox_stm32/matrix.c4
-rw-r--r--keyboards/ergotaco/matrix.c5
-rw-r--r--keyboards/gboards/gergoplex/matrix.c5
-rw-r--r--keyboards/georgi/matrix.c5
-rw-r--r--keyboards/gergo/matrix.c5
-rw-r--r--keyboards/handwired/dactyl/matrix.c8
-rw-r--r--keyboards/handwired/frenchdev/matrix.c6
-rw-r--r--keyboards/handwired/not_so_minidox/matrix.c6
-rw-r--r--keyboards/handwired/promethium/matrix.c8
-rw-r--r--keyboards/handwired/pterodactyl/matrix.c8
-rw-r--r--keyboards/handwired/wakizashi40/config.h20
-rw-r--r--keyboards/handwired/wakizashi40/info.json88
-rw-r--r--keyboards/handwired/wakizashi40/keymaps/default/keymap.c44
-rw-r--r--keyboards/handwired/wakizashi40/keymaps/via/keymap.c92
-rw-r--r--keyboards/handwired/wakizashi40/keymaps/via/rules.mk4
-rw-r--r--keyboards/handwired/wakizashi40/readme.md19
-rw-r--r--keyboards/handwired/wakizashi40/rules.mk1
-rw-r--r--keyboards/helix/pico/matrix.c6
-rw-r--r--keyboards/helix/rev1/matrix.c6
-rw-r--r--keyboards/helix/rev2/matrix.c6
-rw-r--r--keyboards/hhkb/ansi/matrix.c9
-rw-r--r--keyboards/hhkb/jp/matrix.c9
-rwxr-xr-xkeyboards/hid_liber/matrix.c6
-rw-r--r--keyboards/kinesis/alvicstep/matrix.c6
-rw-r--r--keyboards/meira/matrix.c6
-rw-r--r--keyboards/nek_type_a/matrix.c8
-rwxr-xr-xkeyboards/redscarf_iiplus/verb/matrix.c7
-rwxr-xr-xkeyboards/redscarf_iiplus/verc/matrix.c7
-rw-r--r--keyboards/redscarf_iiplus/verd/matrix.c7
-rw-r--r--keyboards/sirius/unigo66/custom_matrix.cpp4
-rw-r--r--keyboards/sixkeyboard/matrix.c5
-rw-r--r--keyboards/sx60/matrix.c8
-rw-r--r--keyboards/thedogkeyboard/matrix.c7
-rw-r--r--keyboards/yosino58/rev1/matrix.c6
-rw-r--r--quantum/debounce.h2
-rw-r--r--quantum/debounce/asym_eager_defer_pk.c1
-rw-r--r--quantum/debounce/none.c2
-rw-r--r--quantum/debounce/sym_defer_g.c2
-rw-r--r--quantum/debounce/sym_defer_pk.c1
-rw-r--r--quantum/debounce/sym_eager_pk.c1
-rw-r--r--quantum/debounce/sym_eager_pr.c1
-rw-r--r--quantum/matrix.h2
-rw-r--r--quantum/matrix_common.c6
-rw-r--r--quantum/process_keycode/process_key_lock.c5
-rw-r--r--quantum/process_keycode/process_key_lock.h1
-rw-r--r--readme.md4
-rw-r--r--tmk_core/protocol/usb_descriptor.c2
64 files changed, 281 insertions, 300 deletions
diff --git a/docs/feature_key_lock.md b/docs/feature_key_lock.md
index 8e6e29f0e6..7681394229 100644
--- a/docs/feature_key_lock.md
+++ b/docs/feature_key_lock.md
@@ -19,4 +19,5 @@ First, enable Key Lock by setting `KEY_LOCK_ENABLE = yes` in your `rules.mk`. Th
Key Lock is only able to hold standard action keys and [One Shot modifier](one_shot_keys.md) keys (for example, if you have your Shift defined as `OSM(KC_LSFT)`).
This does not include any of the QMK special functions (except One Shot modifiers), or shifted versions of keys such as `KC_LPRN`. If it's in the [Basic Keycodes](keycodes_basic.md) list, it can be held.
-Switching layers will not cancel the Key Lock.
+Switching layers will not cancel the Key Lock. The Key Lock can be cancelled by calling the `cancel_key_lock()` function.
+
diff --git a/keyboards/40percentclub/ut47/matrix.c b/keyboards/40percentclub/ut47/matrix.c
index e47c7f8e13..c1284535bc 100644
--- a/keyboards/40percentclub/ut47/matrix.c
+++ b/keyboards/40percentclub/ut47/matrix.c
@@ -104,12 +104,6 @@ uint8_t matrix_scan(void)
return 1;
}
-bool matrix_is_modified(void)
-{
- if (debouncing) return false;
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/ai03/orbit/matrix.c b/keyboards/ai03/orbit/matrix.c
index b8e3296686..024233524c 100644
--- a/keyboards/ai03/orbit/matrix.c
+++ b/keyboards/ai03/orbit/matrix.c
@@ -83,11 +83,6 @@ inline uint8_t matrix_rows(void) { return MATRIX_ROWS; }
inline uint8_t matrix_cols(void) { return MATRIX_COLS; }
-bool matrix_is_modified(void) {
- if (debounce_active()) return false;
- return true;
-}
-
inline bool matrix_is_on(uint8_t row, uint8_t col) { return (matrix[row] & ((matrix_row_t)1 << col)); }
inline matrix_row_t matrix_get_row(uint8_t row) { return matrix[row]; }
diff --git a/keyboards/amj96/matrix.c b/keyboards/amj96/matrix.c
index 8e7bbaa791..ffd66d120f 100644
--- a/keyboards/amj96/matrix.c
+++ b/keyboards/amj96/matrix.c
@@ -108,12 +108,6 @@ uint8_t matrix_scan(void)
return 1;
}
-bool matrix_is_modified(void)
-{
- if (debouncing) return false;
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/angel64/alpha/matrix.c b/keyboards/angel64/alpha/matrix.c
index 474fbec030..2851859cf2 100644
--- a/keyboards/angel64/alpha/matrix.c
+++ b/keyboards/angel64/alpha/matrix.c
@@ -90,13 +90,6 @@ uint8_t matrix_cols(void) {
return MATRIX_COLS;
}
-//Deprecated.
-bool matrix_is_modified(void)
-{
- if (debounce_active()) return false;
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/angel64/rev1/matrix.c b/keyboards/angel64/rev1/matrix.c
index 474fbec030..2851859cf2 100644
--- a/keyboards/angel64/rev1/matrix.c
+++ b/keyboards/angel64/rev1/matrix.c
@@ -90,13 +90,6 @@ uint8_t matrix_cols(void) {
return MATRIX_COLS;
}
-//Deprecated.
-bool matrix_is_modified(void)
-{
- if (debounce_active()) return false;
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/bpiphany/kitten_paw/matrix.c b/keyboards/bpiphany/kitten_paw/matrix.c
index b59089cdf4..56114858f1 100644
--- a/keyboards/bpiphany/kitten_paw/matrix.c
+++ b/keyboards/bpiphany/kitten_paw/matrix.c
@@ -117,13 +117,6 @@ uint8_t matrix_scan(void) {
return 1;
}
-bool matrix_is_modified(void) {
- if (debouncing)
- return false;
- else
- return true;
-}
-
inline bool matrix_is_on(uint8_t row, uint8_t col) {
return (matrix[row] & ((matrix_row_t)1<<col));
}
diff --git a/keyboards/bpiphany/pegasushoof/2013/matrix.c b/keyboards/bpiphany/pegasushoof/2013/matrix.c
index 037f323c00..09244982d9 100644
--- a/keyboards/bpiphany/pegasushoof/2013/matrix.c
+++ b/keyboards/bpiphany/pegasushoof/2013/matrix.c
@@ -110,13 +110,6 @@ uint8_t matrix_scan(void)
return 1;
}
-bool matrix_is_modified(void)
-{
- if (debouncing)
- return false;
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/converter/palm_usb/matrix.c b/keyboards/converter/palm_usb/matrix.c
index 289284b616..5cb3c23572 100644
--- a/keyboards/converter/palm_usb/matrix.c
+++ b/keyboards/converter/palm_usb/matrix.c
@@ -58,8 +58,6 @@ static uint16_t disconnect_counter = 0;
#define COL(code) ((code & COL_MASK) )
#define KEYUP(code) ((code & KEY_MASK) >>7 )
-static bool is_modified = false;
-
__attribute__ ((weak))
void matrix_init_kb(void) {
matrix_init_user();
@@ -354,11 +352,6 @@ uint8_t matrix_scan(void)
return code;
}
-bool matrix_is_modified(void)
-{
- return is_modified;
-}
-
inline
bool matrix_has_ghost(void)
{
diff --git a/keyboards/converter/sun_usb/matrix.c b/keyboards/converter/sun_usb/matrix.c
index 21f45111ec..9ab34bcef7 100644
--- a/keyboards/converter/sun_usb/matrix.c
+++ b/keyboards/converter/sun_usb/matrix.c
@@ -38,8 +38,6 @@ static uint8_t matrix[MATRIX_ROWS];
#define ROW(code) ((code>>3)&0xF)
#define COL(code) (code&0x07)
-static bool is_modified = false;
-
__attribute__ ((weak))
void matrix_init_kb(void) {
matrix_init_user();
@@ -154,11 +152,6 @@ uint8_t matrix_scan(void)
return code;
}
-bool matrix_is_modified(void)
-{
- return is_modified;
-}
-
inline
bool matrix_has_ghost(void)
{
diff --git a/keyboards/converter/usb_usb/custom_matrix.cpp b/keyboards/converter/usb_usb/custom_matrix.cpp
index 296f7fcd02..91986f6eb9 100644
--- a/keyboards/converter/usb_usb/custom_matrix.cpp
+++ b/keyboards/converter/usb_usb/custom_matrix.cpp
@@ -192,10 +192,6 @@ extern "C"
return 1;
}
- bool matrix_is_modified(void) {
- return matrix_is_mod;
- }
-
bool matrix_is_on(uint8_t row, uint8_t col) {
uint8_t code = CODE(row, col);
diff --git a/keyboards/dc01/arrow/matrix.c b/keyboards/dc01/arrow/matrix.c
index 0102ad0fa4..b69e147914 100644
--- a/keyboards/dc01/arrow/matrix.c
+++ b/keyboards/dc01/arrow/matrix.c
@@ -205,14 +205,6 @@ uint8_t matrix_scan(void)
return 1;
}
-bool matrix_is_modified(void)
-{
-#if (DEBOUNCE > 0)
- if (debouncing) return false;
-#endif
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/dc01/left/matrix.c b/keyboards/dc01/left/matrix.c
index bf5aba8497..084978a1fd 100644
--- a/keyboards/dc01/left/matrix.c
+++ b/keyboards/dc01/left/matrix.c
@@ -230,14 +230,6 @@ if (i2c_transaction(SLAVE_I2C_ADDRESS_NUMPAD, 0x1FFFF, 11)) {
return 1;
}
-bool matrix_is_modified(void)
-{
-#if (DEBOUNCE > 0)
- if (debouncing) return false;
-#endif
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/dc01/numpad/matrix.c b/keyboards/dc01/numpad/matrix.c
index 38130114eb..e8e2a1b14a 100644
--- a/keyboards/dc01/numpad/matrix.c
+++ b/keyboards/dc01/numpad/matrix.c
@@ -205,14 +205,6 @@ uint8_t matrix_scan(void)
return 1;
}
-bool matrix_is_modified(void)
-{
-#if (DEBOUNCE > 0)
- if (debouncing) return false;
-#endif
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/dc01/right/matrix.c b/keyboards/dc01/right/matrix.c
index 544c8dc538..2509bd7d4c 100644
--- a/keyboards/dc01/right/matrix.c
+++ b/keyboards/dc01/right/matrix.c
@@ -206,14 +206,6 @@ uint8_t matrix_scan(void)
return 1;
}
-bool matrix_is_modified(void)
-{
-#if (DEBOUNCE > 0)
- if (debouncing) return false;
-#endif
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/dm9records/ergoinu/matrix.c b/keyboards/dm9records/ergoinu/matrix.c
index b1c58f88fe..87a5817313 100644
--- a/keyboards/dm9records/ergoinu/matrix.c
+++ b/keyboards/dm9records/ergoinu/matrix.c
@@ -223,12 +223,6 @@ void matrix_slave_scan(void) {
}
}
-bool matrix_is_modified(void)
-{
- if (debouncing) return false;
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/duck/jetfire/matrix.c b/keyboards/duck/jetfire/matrix.c
index 2dd94a72ac..729fa6dd14 100644
--- a/keyboards/duck/jetfire/matrix.c
+++ b/keyboards/duck/jetfire/matrix.c
@@ -116,12 +116,6 @@ uint8_t matrix_scan(void)
return 1;
}
-bool matrix_is_modified(void)
-{
- if (debouncing) return false;
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/ergodox_stm32/matrix.c b/keyboards/ergodox_stm32/matrix.c
index 383bf9790a..094d4a9e0f 100644
--- a/keyboards/ergodox_stm32/matrix.c
+++ b/keyboards/ergodox_stm32/matrix.c
@@ -119,10 +119,6 @@ uint8_t matrix_scan(void) {
return 0;
}
-bool matrix_is_modified(void) {
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col) {
return (matrix[row] & (1 << col));
diff --git a/keyboards/ergotaco/matrix.c b/keyboards/ergotaco/matrix.c
index e5af1c27fd..16300a7e4f 100644
--- a/keyboards/ergotaco/matrix.c
+++ b/keyboards/ergotaco/matrix.c
@@ -199,11 +199,6 @@ uint8_t matrix_scan(void)
return 1;
}
-bool matrix_is_modified(void) // deprecated and evidently not called.
-{
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/gboards/gergoplex/matrix.c b/keyboards/gboards/gergoplex/matrix.c
index 716390241a..a075b85725 100644
--- a/keyboards/gboards/gergoplex/matrix.c
+++ b/keyboards/gboards/gergoplex/matrix.c
@@ -152,11 +152,6 @@ uint8_t matrix_scan(void) {
return 1;
}
-bool matrix_is_modified(void) // deprecated and evidently not called.
-{
- return true;
-}
-
inline bool matrix_is_on(uint8_t row, uint8_t col) { return (matrix[row] & ((matrix_row_t)1 << col)); }
inline matrix_row_t matrix_get_row(uint8_t row) { return matrix[row]; }
diff --git a/keyboards/georgi/matrix.c b/keyboards/georgi/matrix.c
index 438412102b..7d635ad8d7 100644
--- a/keyboards/georgi/matrix.c
+++ b/keyboards/georgi/matrix.c
@@ -220,11 +220,6 @@ uint8_t matrix_scan(void)
return 1;
}
-bool matrix_is_modified(void) // deprecated and evidently not called.
-{
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/gergo/matrix.c b/keyboards/gergo/matrix.c
index 655e729356..443e97132b 100644
--- a/keyboards/gergo/matrix.c
+++ b/keyboards/gergo/matrix.c
@@ -273,11 +273,6 @@ uint8_t matrix_scan(void) {
return 1;
}
-bool matrix_is_modified(void) // deprecated and evidently not called.
-{
- return true;
-}
-
inline bool matrix_is_on(uint8_t row, uint8_t col) { return (matrix[row] & ((matrix_row_t)1 << col)); }
inline matrix_row_t matrix_get_row(uint8_t row) { return matrix[row]; }
diff --git a/keyboards/handwired/dactyl/matrix.c b/keyboards/handwired/dactyl/matrix.c
index a21cd08e14..a70e8c5aca 100644
--- a/keyboards/handwired/dactyl/matrix.c
+++ b/keyboards/handwired/dactyl/matrix.c
@@ -281,14 +281,6 @@ uint8_t matrix_scan(void)
return 1;
}
-bool matrix_is_modified(void) // deprecated and evidently not called.
-{
-#if (DEBOUNCE > 0)
- if (debouncing) return false;
-#endif
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/handwired/frenchdev/matrix.c b/keyboards/handwired/frenchdev/matrix.c
index 5ab254a6f9..a043f78538 100644
--- a/keyboards/handwired/frenchdev/matrix.c
+++ b/keyboards/handwired/frenchdev/matrix.c
@@ -174,12 +174,6 @@ uint8_t matrix_scan(void)
return 1;
}
-bool matrix_is_modified(void)
-{
- if (debouncing) return false;
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/handwired/not_so_minidox/matrix.c b/keyboards/handwired/not_so_minidox/matrix.c
index b7cec9370c..d2bbf7d303 100644
--- a/keyboards/handwired/not_so_minidox/matrix.c
+++ b/keyboards/handwired/not_so_minidox/matrix.c
@@ -239,12 +239,6 @@ void matrix_slave_scan(void) {
#endif
}
-bool matrix_is_modified(void)
-{
- if (debouncing) return false;
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/handwired/promethium/matrix.c b/keyboards/handwired/promethium/matrix.c
index e3a41af288..90dbce14a9 100644
--- a/keyboards/handwired/promethium/matrix.c
+++ b/keyboards/handwired/promethium/matrix.c
@@ -148,14 +148,6 @@ uint8_t matrix_scan(void)
return 1;
}
-bool matrix_is_modified(void)
-{
-#if (DEBOUNCE > 0)
- if (debouncing) return false;
-#endif
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
diff --git a/keyboards/handwired/pterodactyl/matrix.c b/keyboards/handwired/pterodactyl/matrix.c
index 21e6a128df..d0f74802a0 100644
--- a/keyboards/handwired/pterodactyl/matrix.c
+++ b/keyboards/handwired/pterodactyl/matrix.c
@@ -282,14 +282,6 @@ uint8_t matrix_scan(void)
return 1;
}
-bool matrix_is_modified(void) // deprecated and evidently not called.
-{
-#if (DEBOUNCE > 0)
- if (debouncing) return false;
-#endif
- return true;
-}
-
inline
bool matrix_is_on(uint8_t row, uint8_t col)
{
diff --git a/keyboards/handwired/wakizashi40/config.h b/keyboards/handwired/wakizashi40/config.h
new file mode 100644
index 0000000000..78f85f2197
--- /dev/null
+++ b/keyboards/handwired/wakizashi40/config.h
@@ -0,0 +1,20 @@
+/* Copyright 2021 xiao (@xia0)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *