Fix Command feature: use get_mods() instead of keyboard_report->mods (#4955)

* Remove unnecessary IS_COMMAND definition in clueboard/66/rev4

* Replace keyboard_report->mods with get_mods() in IS_COMMAND definitions

* Update docs to use get_mods() instead of keyboard_report->mods

* Replace keyboard_report->mods with get_mods() in tmk_core/protocol/usb_hid/test

For some reason, this occurrence used KB_LSHIFT and KB_RSHIFT, which don't exist

* Replace keyboard_report->mods with get_mods() in Massdrop keyboards (as per @patrickmt)
This commit is contained in:
Konstantin Đorđević 2019-01-27 09:28:40 +01:00 committed by Drashna Jaelre
parent 53d86b2c57
commit 4d9b11af14
33 changed files with 122 additions and 127 deletions

View File

@ -87,7 +87,7 @@ This is a C header file that is one of the first things included, and will persi
* mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap * mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap
* `#define LOCKING_RESYNC_ENABLE` * `#define LOCKING_RESYNC_ENABLE`
* tries to keep switch state consistent with keyboard LED state * tries to keep switch state consistent with keyboard LED state
* `#define IS_COMMAND() ( keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) )` * `#define IS_COMMAND() (get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)))`
* key combination that allows the use of magic commands (useful for debugging) * key combination that allows the use of magic commands (useful for debugging)
* `#define USB_MAX_POWER_CONSUMPTION` * `#define USB_MAX_POWER_CONSUMPTION`
* sets the maximum power (in mA) over USB for the device (default: 500) * sets the maximum power (in mA) over USB for the device (default: 500)

View File

@ -16,35 +16,35 @@ To use Command, hold down the key combination defined by the `IS_COMMAND()` macr
If you would like to change the key assignments for Command, `#define` these in your `config.h` at either the keyboard or keymap level. All keycode assignments here must omit the `KC_` prefix. If you would like to change the key assignments for Command, `#define` these in your `config.h` at either the keyboard or keymap level. All keycode assignments here must omit the `KC_` prefix.
|Define |Default |Description | |Define |Default |Description |
|------------------------------------|--------------------------------------------------------------------------------------|------------------------------------------------| |------------------------------------|---------------------------------------------------------------------------|------------------------------------------------|
|`IS_COMMAND()` |<code>(keyboard_report->mods == (MOD_BIT(KC_LSHIFT) &#124; MOD_BIT(KC_RSHIFT)))</code>|The key combination to activate Command | |`IS_COMMAND()` |<code>(get_mods() == (MOD_BIT(KC_LSHIFT) &#124; MOD_BIT(KC_RSHIFT)))</code>|The key combination to activate Command |
|`MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS` |`true` |Set default layer with the Function row | |`MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS` |`true` |Set default layer with the Function row |
|`MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS` |`true` |Set default layer with the number keys | |`MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS` |`true` |Set default layer with the number keys |
|`MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM`|`false` |Set default layer with `MAGIC_KEY_LAYER0..9` | |`MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM`|`false` |Set default layer with `MAGIC_KEY_LAYER0..9` |
|`MAGIC_KEY_DEBUG` |`D` |Toggle debugging over serial | |`MAGIC_KEY_DEBUG` |`D` |Toggle debugging over serial |
|`MAGIC_KEY_DEBUG_MATRIX` |`X` |Toggle key matrix debugging | |`MAGIC_KEY_DEBUG_MATRIX` |`X` |Toggle key matrix debugging |
|`MAGIC_KEY_DEBUG_KBD` |`K` |Toggle keyboard debugging | |`MAGIC_KEY_DEBUG_KBD` |`K` |Toggle keyboard debugging |
|`MAGIC_KEY_DEBUG_MOUSE` |`M` |Toggle mouse debugging | |`MAGIC_KEY_DEBUG_MOUSE` |`M` |Toggle mouse debugging |
|`MAGIC_KEY_CONSOLE` |`C` |Enable the Command console | |`MAGIC_KEY_CONSOLE` |`C` |Enable the Command console |
|`MAGIC_KEY_VERSION` |`V` |Print the running QMK version to the console | |`MAGIC_KEY_VERSION` |`V` |Print the running QMK version to the console |
|`MAGIC_KEY_STATUS` |`S` |Print the current keyboard status to the console| |`MAGIC_KEY_STATUS` |`S` |Print the current keyboard status to the console|
|`MAGIC_KEY_HELP1` |`H` |Print Command help to the console | |`MAGIC_KEY_HELP1` |`H` |Print Command help to the console |
|`MAGIC_KEY_HELP2` |`SLASH` |Print Command help to the console (alternate) | |`MAGIC_KEY_HELP2` |`SLASH` |Print Command help to the console (alternate) |
|`MAGIC_KEY_LAYER0` |`0` |Make layer 0 the default layer | |`MAGIC_KEY_LAYER0` |`0` |Make layer 0 the default layer |
|`MAGIC_KEY_LAYER1` |`1` |Make layer 1 the default layer | |`MAGIC_KEY_LAYER1` |`1` |Make layer 1 the default layer |
|`MAGIC_KEY_LAYER2` |`2` |Make layer 2 the default layer | |`MAGIC_KEY_LAYER2` |`2` |Make layer 2 the default layer |
|`MAGIC_KEY_LAYER3` |`3` |Make layer 3 the default layer | |`MAGIC_KEY_LAYER3` |`3` |Make layer 3 the default layer |
|`MAGIC_KEY_LAYER4` |`4` |Make layer 4 the default layer | |`MAGIC_KEY_LAYER4` |`4` |Make layer 4 the default layer |
|`MAGIC_KEY_LAYER5` |`5` |Make layer 5 the default layer | |`MAGIC_KEY_LAYER5` |`5` |Make layer 5 the default layer |
|`MAGIC_KEY_LAYER6` |`6` |Make layer 6 the default layer | |`MAGIC_KEY_LAYER6` |`6` |Make layer 6 the default layer |
|`MAGIC_KEY_LAYER7` |`7` |Make layer 7 the default layer | |`MAGIC_KEY_LAYER7` |`7` |Make layer 7 the default layer |
|`MAGIC_KEY_LAYER8` |`8` |Make layer 8 the default layer | |`MAGIC_KEY_LAYER8` |`8` |Make layer 8 the default layer |
|`MAGIC_KEY_LAYER9` |`9` |Make layer 9 the default layer | |`MAGIC_KEY_LAYER9` |`9` |Make layer 9 the default layer |
|`MAGIC_KEY_LAYER0_ALT1` |`ESC` |Make layer 0 the default layer (alternate) | |`MAGIC_KEY_LAYER0_ALT1` |`ESC` |Make layer 0 the default layer (alternate) |
|`MAGIC_KEY_LAYER0_ALT2` |`GRAVE` |Make layer 0 the default layer (alternate) | |`MAGIC_KEY_LAYER0_ALT2` |`GRAVE` |Make layer 0 the default layer (alternate) |
|`MAGIC_KEY_BOOTLOADER` |`PAUSE` |Enter the bootloader | |`MAGIC_KEY_BOOTLOADER` |`PAUSE` |Enter the bootloader |
|`MAGIC_KEY_LOCK` |`CAPS` |Lock the keyboard so nothing can be typed | |`MAGIC_KEY_LOCK` |`CAPS` |Lock the keyboard so nothing can be typed |
|`MAGIC_KEY_EEPROM` |`E` |Clear the EEPROM | |`MAGIC_KEY_EEPROM` |`E` |Clear the EEPROM |
|`MAGIC_KEY_NKRO` |`N` |Toggle N-Key Rollover (NKRO) | |`MAGIC_KEY_NKRO` |`N` |Toggle N-Key Rollover (NKRO) |
|`MAGIC_KEY_SLEEP_LED` |`Z` |Toggle LED when computer is sleeping | |`MAGIC_KEY_SLEEP_LED` |`Z` |Toggle LED when computer is sleeping |

View File

@ -37,11 +37,6 @@
/* Locking resynchronize hack */ /* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE #define LOCKING_RESYNC_ENABLE
/* key combination for command */
#define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
)
/* /*
* Feature disable options * Feature disable options
* These options are also useful to firmware size reduction. * These options are also useful to firmware size reduction.

View File

@ -39,11 +39,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT) | MOD_BIT(KC_RALT) | MOD_BIT(KC_RCTL)) \ get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT) | MOD_BIT(KC_RALT) | MOD_BIT(KC_RCTL)) \
) )
/* /*
* PS/2 USART configuration for ATMega32U4 * PS/2 USART configuration for ATMega32U4
*/ */
#ifdef PS2_USE_USART #ifdef PS2_USE_USART

View File

@ -39,8 +39,8 @@ Ported to QMK by Techsock <info@techsock.com>
/* magic key */ /* magic key */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LALT) | MOD_BIT(KC_LGUI)) || \ get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LALT) | MOD_BIT(KC_LGUI)) || \
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LALT) | MOD_BIT(KC_LCTL)) \ get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LALT) | MOD_BIT(KC_LCTL)) \
) )
/* boot magic key */ /* boot magic key */

View File

@ -34,19 +34,19 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
// IO pins to serial // IO pins to serial
// https://deskthority.net/wiki/Arduino_Pro_Micro for pin lookup // https://deskthority.net/wiki/Arduino_Pro_Micro for pin lookup
#define VCC_PIN D1 // pro micro 2 #define VCC_PIN D1 // pro micro 2
#define RX_PIN D0 //pro micro 3 , was 8 on cy384 #define RX_PIN D0 //pro micro 3 , was 8 on cy384
#define RTS_PIN C6 // 5 //[ was D4 // 4 on the cy384 #define RTS_PIN C6 // 5 //[ was D4 // 4 on the cy384
#define DCD_PIN E6 //7 #define DCD_PIN E6 //7
// if using the particular arduino pinout of CY384 // if using the particular arduino pinout of CY384
#ifdef CY384 #ifdef CY384
#define GND_PIN D7 //6 #define GND_PIN D7 //6
#define PULLDOWN_PIN B1 // 15 #define PULLDOWN_PIN B1 // 15
#endif #endif
#ifndef HANDSPRING #ifndef HANDSPRING
// Set to 1 for Handspring or to disable RTS/DCD based handshake. // Set to 1 for Handspring or to disable RTS/DCD based handshake.
#define HANDSPRING 0 #define HANDSPRING 0
#endif #endif
@ -59,9 +59,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LALT) | MOD_BIT(KC_RALT)) || \ get_mods() == (MOD_BIT(KC_LALT) | MOD_BIT(KC_RALT)) || \
keyboard_report->mods == (MOD_BIT(KC_LGUI) | MOD_BIT(KC_RGUI)) || \ get_mods() == (MOD_BIT(KC_LGUI) | MOD_BIT(KC_RGUI)) || \
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
) )
@ -74,10 +74,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define SERIAL_SOFT_BIT_ORDER_LSB #define SERIAL_SOFT_BIT_ORDER_LSB
#if (HANDSPRING == 0) #if (HANDSPRING == 0)
#define SERIAL_SOFT_LOGIC_NEGATIVE //RS232 logic #define SERIAL_SOFT_LOGIC_NEGATIVE //RS232 logic
#endif #endif
/* RXD Port */ /* RXD Port */
#define SERIAL_SOFT_RXD_ENABLE #define SERIAL_SOFT_RXD_ENABLE
// we are using Pro micro pin 3 / D0 as serial // we are using Pro micro pin 3 / D0 as serial
#define SERIAL_SOFT_RXD_DDR DDRD #define SERIAL_SOFT_RXD_DDR DDRD
#define SERIAL_SOFT_RXD_PORT PORTD #define SERIAL_SOFT_RXD_PORT PORTD

View File

@ -33,9 +33,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LALT) | MOD_BIT(KC_RALT)) || \ get_mods() == (MOD_BIT(KC_LALT) | MOD_BIT(KC_RALT)) || \
keyboard_report->mods == (MOD_BIT(KC_LGUI) | MOD_BIT(KC_RGUI)) || \ get_mods() == (MOD_BIT(KC_LGUI) | MOD_BIT(KC_RGUI)) || \
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \
) )

View File

@ -31,8 +31,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) || \ get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) || \
keyboard_report->mods == (MOD_BIT(KC_LCTRL) | MOD_BIT(KC_RSHIFT)) \ get_mods() == (MOD_BIT(KC_LCTRL) | MOD_BIT(KC_RSHIFT)) \
) )

View File

@ -37,8 +37,8 @@
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ get_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \
keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \
) )
/* number of backlight levels */ /* number of backlight levels */

View File

@ -55,8 +55,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ get_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \
keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \
) )
/* number of backlight levels */ /* number of backlight levels */

View File

@ -47,8 +47,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ get_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \
keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \
) )
/* key matrix size */ /* key matrix size */

View File

@ -49,8 +49,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ get_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \
keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \
) )
/* key matrix size */ /* key matrix size */

View File

@ -24,11 +24,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Defaults */ /* Defaults */
#ifndef BALLSTEP #ifndef BALLSTEP
#define BALLSTEP 20 #define BALLSTEP 20
#endif #endif
#ifndef SCROLLSTEP #ifndef SCROLLSTEP
#define SCROLLSTEP 1 #define SCROLLSTEP 1
#endif #endif
#define VERBOSE #define VERBOSE
@ -36,7 +36,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define VENDOR_ID 0xFEED #define VENDOR_ID 0xFEED
#define PRODUCT_ID 0x1307 #define PRODUCT_ID 0x1307
#define DEVICE_VER 0x0001 #define DEVICE_VER 0x0001
#define MANUFACTURER g Heavy Industries #define MANUFACTURER g Heavy Industries
#define PRODUCT Gergo #define PRODUCT Gergo
#define DESCRIPTION QMK keyboard firmware for Gergo #define DESCRIPTION QMK keyboard firmware for Gergo
@ -65,8 +65,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ get_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \
keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \
) )
#define DEBOUNCE 5 #define DEBOUNCE 5

View File

@ -53,8 +53,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ get_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \
keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \
) )
/* fix space cadet rollover issue */ /* fix space cadet rollover issue */

View File

@ -59,8 +59,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ get_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \
keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \
) )
/* /*

View File

@ -95,7 +95,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT) | MOD_BIT(KC_LCTRL) | MOD_BIT(KC_RCTRL)) \ get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT) | MOD_BIT(KC_LCTRL) | MOD_BIT(KC_RCTRL)) \
) )
/* control how magic key switches layers */ /* control how magic key switches layers */

View File

@ -60,9 +60,9 @@ void matrix_init_user(void) {
void matrix_scan_user(void) { void matrix_scan_user(void) {
}; };
#define MODS_SHIFT (keyboard_report->mods & MOD_BIT(KC_LSHIFT) || keyboard_report->mods & MOD_BIT(KC_RSHIFT)) #define MODS_SHIFT (get_mods() & MOD_BIT(KC_LSHIFT) || get_mods() & MOD_BIT(KC_RSHIFT))
#define MODS_CTRL (keyboard_report->mods & MOD_BIT(KC_LCTL) || keyboard_report->mods & MOD_BIT(KC_RCTRL)) #define MODS_CTRL (get_mods() & MOD_BIT(KC_LCTL) || get_mods() & MOD_BIT(KC_RCTRL))
#define MODS_ALT (keyboard_report->mods & MOD_BIT(KC_LALT) || keyboard_report->mods & MOD_BIT(KC_RALT)) #define MODS_ALT (get_mods() & MOD_BIT(KC_LALT) || get_mods() & MOD_BIT(KC_RALT))
bool process_record_user(uint16_t keycode, keyrecord_t *record) { bool process_record_user(uint16_t keycode, keyrecord_t *record) {
static uint32_t key_timer; static uint32_t key_timer;

View File

@ -60,9 +60,9 @@ void matrix_init_user(void) {
void matrix_scan_user(void) { void matrix_scan_user(void) {
}; };
#define MODS_SHIFT (keyboard_report->mods & MOD_BIT(KC_LSHIFT) || keyboard_report->mods & MOD_BIT(KC_RSHIFT)) #define MODS_SHIFT (get_mods() & MOD_BIT(KC_LSHIFT) || get_mods() & MOD_BIT(KC_RSHIFT))
#define MODS_CTRL (keyboard_report->mods & MOD_BIT(KC_LCTL) || keyboard_report->mods & MOD_BIT(KC_RCTRL)) #define MODS_CTRL (get_mods() & MOD_BIT(KC_LCTL) || get_mods() & MOD_BIT(KC_RCTRL))
#define MODS_ALT (keyboard_report->mods & MOD_BIT(KC_LALT) || keyboard_report->mods & MOD_BIT(KC_RALT)) #define MODS_ALT (get_mods() & MOD_BIT(KC_LALT) || get_mods() & MOD_BIT(KC_RALT))
bool process_record_user(uint16_t keycode, keyrecord_t *record) { bool process_record_user(uint16_t keycode, keyrecord_t *record) {
static uint32_t key_timer; static uint32_t key_timer;

View File

@ -60,9 +60,9 @@ void matrix_init_user(void) {
void matrix_scan_user(void) { void matrix_scan_user(void) {
}; };
#define MODS_SHIFT (keyboard_report->mods & MOD_BIT(KC_LSHIFT) || keyboard_report->mods & MOD_BIT(KC_RSHIFT)) #define MODS_SHIFT (get_mods() & MOD_BIT(KC_LSHIFT) || get_mods() & MOD_BIT(KC_RSHIFT))
#define MODS_CTRL (keyboard_report->mods & MOD_BIT(KC_LCTL) || keyboard_report->mods & MOD_BIT(KC_RCTRL)) #define MODS_CTRL (get_mods() & MOD_BIT(KC_LCTL) || get_mods() & MOD_BIT(KC_RCTRL))
#define MODS_ALT (keyboard_report->mods & MOD_BIT(KC_LALT) || keyboard_report->mods & MOD_BIT(KC_RALT)) #define MODS_ALT (get_mods() & MOD_BIT(KC_LALT) || get_mods() & MOD_BIT(KC_RALT))
bool process_record_user(uint16_t keycode, keyrecord_t *record) { bool process_record_user(uint16_t keycode, keyrecord_t *record) {
static uint32_t key_timer; static uint32_t key_timer;

View File

@ -60,9 +60,9 @@ void matrix_init_user(void) {
void matrix_scan_user(void) { void matrix_scan_user(void) {
}; };
#define MODS_SHIFT (keyboard_report->mods & MOD_BIT(KC_LSHIFT) || keyboard_report->mods & MOD_BIT(KC_RSHIFT)) #define MODS_SHIFT (get_mods() & MOD_BIT(KC_LSHIFT) || get_mods() & MOD_BIT(KC_RSHIFT))
#define MODS_CTRL (keyboard_report->mods & MOD_BIT(KC_LCTL) || keyboard_report->mods & MOD_BIT(KC_RCTRL)) #define MODS_CTRL (get_mods() & MOD_BIT(KC_LCTL) || get_mods() & MOD_BIT(KC_RCTRL))
#define MODS_ALT (keyboard_report->mods & MOD_BIT(KC_LALT) || keyboard_report->mods & MOD_BIT(KC_RALT)) #define MODS_ALT (get_mods() & MOD_BIT(KC_LALT) || get_mods() & MOD_BIT(KC_RALT))
bool process_record_user(uint16_t keycode, keyrecord_t *record) { bool process_record_user(uint16_t keycode, keyrecord_t *record) {
static uint32_t key_timer; static uint32_t key_timer;

View File

@ -63,9 +63,9 @@ void matrix_init_user(void) {
void matrix_scan_user(void) { void matrix_scan_user(void) {
}; };
#define MODS_SHIFT (keyboard_report->mods & MOD_BIT(KC_LSHIFT) || keyboard_report->mods & MOD_BIT(KC_RSHIFT)) #define MODS_SHIFT (get_mods() & MOD_BIT(KC_LSHIFT) || get_mods() & MOD_BIT(KC_RSHIFT))
#define MODS_CTRL (keyboard_report->mods & MOD_BIT(KC_LCTL) || keyboard_report->mods & MOD_BIT(KC_RCTRL)) #define MODS_CTRL (get_mods() & MOD_BIT(KC_LCTL) || get_mods() & MOD_BIT(KC_RCTRL))
#define MODS_ALT (keyboard_report->mods & MOD_BIT(KC_LALT) || keyboard_report->mods & MOD_BIT(KC_RALT)) #define MODS_ALT (get_mods() & MOD_BIT(KC_LALT) || get_mods() & MOD_BIT(KC_RALT))
bool process_record_user(uint16_t keycode, keyrecord_t *record) { bool process_record_user(uint16_t keycode, keyrecord_t *record) {
static uint32_t key_timer; static uint32_t key_timer;

View File

@ -63,9 +63,9 @@ void matrix_init_user(void) {
void matrix_scan_user(void) { void matrix_scan_user(void) {
}; };
#define MODS_SHIFT (keyboard_report->mods & MOD_BIT(KC_LSHIFT) || keyboard_report->mods & MOD_BIT(KC_RSHIFT)) #define MODS_SHIFT (get_mods() & MOD_BIT(KC_LSHIFT) || get_mods() & MOD_BIT(KC_RSHIFT))
#define MODS_CTRL (keyboard_report->mods & MOD_BIT(KC_LCTL) || keyboard_report->mods & MOD_BIT(KC_RCTRL)) #define MODS_CTRL (get_mods() & MOD_BIT(KC_LCTL) || get_mods() & MOD_BIT(KC_RCTRL))
#define MODS_ALT (keyboard_report->mods & MOD_BIT(KC_LALT) || keyboard_report->mods & MOD_BIT(KC_RALT)) #define MODS_ALT (get_mods() & MOD_BIT(KC_LALT) || get_mods() & MOD_BIT(KC_RALT))
bool process_record_user(uint16_t keycode, keyrecord_t *record) { bool process_record_user(uint16_t keycode, keyrecord_t *record) {
static uint32_t key_timer; static uint32_t key_timer;

View File

@ -37,7 +37,7 @@ enum ctrl_keycodes {
DBG_KBD, //DEBUG Toggle Keyboard Prints DBG_KBD, //DEBUG Toggle Keyboard Prints
DBG_MOU, //DEBUG Toggle Mouse Prints DBG_MOU, //DEBUG Toggle Mouse Prints
MD_BOOT, //Restart into bootloader after hold timeout MD_BOOT, //Restart into bootloader after hold timeout
L_SP_PR, //LED Splash Pattern Select Previous L_SP_PR, //LED Splash Pattern Select Previous
L_SP_NE, //LED Splash Pattern Select Next L_SP_NE, //LED Splash Pattern Select Next
@ -178,7 +178,7 @@ static void init_distance_map(void){
uint8_t id2 = ktli(KEY_POSITION_MAP[j][i]); uint8_t id2 = ktli(KEY_POSITION_MAP[j][i]);
if(id1 == id2) continue; if(id1 == id2) continue;
uint8_t dx = abs(i - x); uint8_t dx = abs(i - x);
uint8_t dy = abs(j - y); uint8_t dy = abs(j - y);
uint8_t dis = dx + dy; uint8_t dis = dx + dy;
@ -277,15 +277,15 @@ void led_matrix_run(void)
bo = 0; bo = 0;
uint8_t led_index = led_cur - led_map; // only this part differs from the original function. uint8_t led_index = led_cur - led_map; // only this part differs from the original function.
if(led_index < KEY_LED_COUNT){ // if(led_index < KEY_LED_COUNT){ //
user_led_cur = USER_LED[led_index]; // `struct user_led_t USER_LED[]` is stored globally. user_led_cur = USER_LED[led_index]; // `struct user_led_t USER_LED[]` is stored globally.
} // } //
// //
if(led_index < KEY_LED_COUNT && user_led_cur.state){ // `user_led_cur` is just for convenience if(led_index < KEY_LED_COUNT && user_led_cur.state){ // `user_led_cur` is just for convenience
ro = user_led_cur.r; // ro = user_led_cur.r; //
go = user_led_cur.g; // go = user_led_cur.g; //
bo = user_led_cur.b; // bo = user_led_cur.b; //
} // } //
else if (led_lighting_mode == LED_MODE_KEYS_ONLY && led_cur->scan == 255) else if (led_lighting_mode == LED_MODE_KEYS_ONLY && led_cur->scan == 255)
{ {
//Do not act on this LED //Do not act on this LED
@ -513,7 +513,7 @@ static uint8_t COLOR_PATTERNS[][COLOR_PATTERN_RGB_COUNT][3] = {
{181, 181, 181}, {164, 164, 164}, {147, 147, 147}, {181, 181, 181}, {164, 164, 164}, {147, 147, 147},
{128, 128, 128}, {108, 108, 108}, { 88, 88, 88}, {128, 128, 128}, {108, 108, 108}, { 88, 88, 88},
{ 66, 66, 66}, { 45, 45, 45}, { 23, 23, 23}, { 66, 66, 66}, { 45, 45, 45}, { 23, 23, 23},
}, },
}; };
static const uint8_t COLOR_PATTERNS_COUNT = ( static const uint8_t COLOR_PATTERNS_COUNT = (
sizeof(COLOR_PATTERNS) / sizeof(COLOR_PATTERNS[0])); sizeof(COLOR_PATTERNS) / sizeof(COLOR_PATTERNS[0]));
@ -561,7 +561,7 @@ void refresh_color_pattern_indicators(void){
static uint8_t ZXCVBNM_COMM_DOT[] = { static uint8_t ZXCVBNM_COMM_DOT[] = {
KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT,
}; };
if(layer_state >= 0x04){ if(layer_state >= 0x04){
uint8_t (*c)[3] = &COLOR_PATTERNS[USER_CONFIG.COLOR_PATTERN_INDEX][0]; uint8_t (*c)[3] = &COLOR_PATTERNS[USER_CONFIG.COLOR_PATTERN_INDEX][0];
for(uint8_t i = 0; i < 9; ++i){ for(uint8_t i = 0; i < 9; ++i){
@ -589,7 +589,7 @@ void matrix_scan_user(void) {
calculate_keystroke_distance(); calculate_keystroke_distance();
#define USE_PATTERN 0 #define USE_PATTERN 0
#define BLACK_RGB 1 #define BLACK_RGB 1
#define COLOR_RGB 2 #define COLOR_RGB 2
@ -599,7 +599,7 @@ void matrix_scan_user(void) {
uint8_t distance; uint8_t distance;
for(uint8_t i = 1; i <= KEY_LED_COUNT; ++i){ for(uint8_t i = 1; i <= KEY_LED_COUNT; ++i){
if(USER_LED[i-1].state >= 2) continue; if(USER_LED[i-1].state >= 2) continue;
handle_type = USE_PATTERN; handle_type = USE_PATTERN;
distance = DISTANCE_FROM_LAST_KEYSTROKE[i]; distance = DISTANCE_FROM_LAST_KEYSTROKE[i];
@ -695,9 +695,9 @@ void matrix_scan_user(void) {
}; };
#define MODS_SHIFT (keyboard_report->mods & MOD_BIT(KC_LSHIFT) || keyboard_report->mods & MOD_BIT(KC_RSHIFT)) #define MODS_SHIFT (get_mods() & MOD_BIT(KC_LSHIFT) || get_mods() & MOD_BIT(KC_RSHIFT))
#define MODS_CTRL (keyboard_report->mods & MOD_BIT(KC_LCTL) || keyboard_report->mods & MOD_BIT(KC_RCTRL)) #define MODS_CTRL (get_mods() & MOD_BIT(KC_LCTL) || get_mods() & MOD_BIT(KC_RCTRL))
#define MODS_ALT (keyboard_report->mods & MOD_BIT(KC_LALT) || keyboard_report->mods & MOD_BIT(KC_RALT)) #define MODS_ALT (get_mods() & MOD_BIT(KC_LALT) || get_mods() & MOD_BIT(KC_RALT))
bool process_record_user(uint16_t keycode, keyrecord_t *record) { bool process_record_user(uint16_t keycode, keyrecord_t *record) {
static uint32_t key_timer; static uint32_t key_timer;
@ -835,7 +835,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
case L_SP_PR: // previous dripple pattern case L_SP_PR: // previous dripple pattern
case L_SP_NE: // next dripple pattern case L_SP_NE: // next dripple pattern
if (record->event.pressed) { if (record->event.pressed) {
@ -880,7 +880,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
USER_CONFIG.WAVE_PERIOD = 10; USER_CONFIG.WAVE_PERIOD = 10;
break; break;
} }
// remove effect after changing pattern // remove effect after changing pattern
for(int i = 0; i < KEY_STROKES_LENGTH; ++i){ for(int i = 0; i < KEY_STROKES_LENGTH; ++i){
KEY_STROKES[i].alive = 0; KEY_STROKES[i].alive = 0;
@ -903,7 +903,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
case L_SP_SL: case L_SP_SL:
if(record->event.pressed){ if(record->event.pressed){
short incre = keycode == L_SP_FA ? -1 : 1; short incre = keycode == L_SP_FA ? -1 : 1;
USER_CONFIG.WAVE_PERIOD += 10 * incre; USER_CONFIG.WAVE_PERIOD += 10 * incre;
if(USER_CONFIG.WAVE_PERIOD < 10){ if(USER_CONFIG.WAVE_PERIOD < 10){
USER_CONFIG.WAVE_PERIOD = 10; USER_CONFIG.WAVE_PERIOD = 10;

View File

@ -34,7 +34,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for magic key command */ /* key combination for magic key command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LALT)) \ get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LALT)) \
) )
#ifdef RGBLIGHT_ENABLE #ifdef RGBLIGHT_ENABLE

View File

@ -65,7 +65,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LGUI)) \ get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LGUI)) \
) )
/* ws2812 RGB LED */ /* ws2812 RGB LED */

View File

@ -70,7 +70,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LGUI)) \ get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LGUI)) \
) )
/* ws2812 RGB LED */ /* ws2812 RGB LED */

View File

@ -62,7 +62,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LGUI)) \ get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LGUI)) \
) )
/* ws2812 RGB LED */ /* ws2812 RGB LED */

View File

@ -1,10 +1,10 @@
#pragma once #pragma once
#define IS_COMMAND() (get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RCTL)))
#define LAYER_FN #define LAYER_FN
#define LAYER_NUMPAD #define LAYER_NUMPAD
#define IS_COMMAND() (keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RCTL)))
#define MAGIC_KEY_LAYER0_ALT1 BSLS #define MAGIC_KEY_LAYER0_ALT1 BSLS
#define MAGIC_KEY_BOOTLOADER ESC #define MAGIC_KEY_BOOTLOADER ESC

View File

@ -3,10 +3,10 @@
#include QMK_KEYBOARD_CONFIG_H #include QMK_KEYBOARD_CONFIG_H
#undef MOUSEKEY_DELAY #undef MOUSEKEY_DELAY
#undef MOUSEKEY_INTERVAL #undef MOUSEKEY_INTERVAL
#undef MOUSEKEY_MAX_SPEED #undef MOUSEKEY_MAX_SPEED
#undef MOUSEKEY_TIME_TO_MAX #undef MOUSEKEY_TIME_TO_MAX
#define MOUSEKEY_DELAY 100 #define MOUSEKEY_DELAY 100
#define MOUSEKEY_INTERVAL 20 #define MOUSEKEY_INTERVAL 20
@ -28,8 +28,8 @@
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() ( \ #define IS_COMMAND() ( \
keyboard_report->mods == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \ get_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || \
keyboard_report->mods == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \ get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) \
) )
#endif /* KEYBOARDS_ERGODOX_CONFIG_H_ */ #endif /* KEYBOARDS_ERGODOX_CONFIG_H_ */

View File

@ -132,7 +132,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for magic key command */ /* key combination for magic key command */
/* defined by default; to change, uncomment and set to the combination you want */ /* defined by default; to change, uncomment and set to the combination you want */
// #define IS_COMMAND() (keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT))) // #define IS_COMMAND() (get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)))
/* control how magic key switches layers */ /* control how magic key switches layers */
//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true //#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true

View File

@ -44,7 +44,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for magic key command */ /* key combination for magic key command */
/* defined by default; to change, uncomment and set to the combination you want */ /* defined by default; to change, uncomment and set to the combination you want */
// #define IS_COMMAND() (keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT))) // #define IS_COMMAND() (get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)))
/* Bootmagic Lite key configuration */ /* Bootmagic Lite key configuration */
// #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_ROW 0

View File

@ -35,7 +35,7 @@ bool command_proc(uint8_t code);
#endif #endif
#ifndef IS_COMMAND #ifndef IS_COMMAND
#define IS_COMMAND() (keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT))) #define IS_COMMAND() (get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)))
#endif #endif
#ifndef MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS #ifndef MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS

View File

@ -35,6 +35,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key combination for command */ /* key combination for command */
#define IS_COMMAND() (keyboard_report->mods == (MOD_BIT(KB_LSHIFT) | MOD_BIT(KB_RSHIFT))) #define IS_COMMAND() (get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)))
#endif #endif