diff options
author | Eric-L-T <etang2099@gmail.com> | 2016-04-01 18:26:43 -0700 |
---|---|---|
committer | Eric-L-T <etang2099@gmail.com> | 2016-04-01 18:26:43 -0700 |
commit | 420fc8620bfd47604848066b9d3798fb68a12e03 (patch) | |
tree | 707257cbf7bea248ad570ff7a6926582b34cfb3b | |
parent | 9a35f01c5516081a8c503d2344f0d082b1a29cd5 (diff) | |
download | qmk_firmware-420fc8620bfd47604848066b9d3798fb68a12e03.tar.gz qmk_firmware-420fc8620bfd47604848066b9d3798fb68a12e03.zip |
Update action.c
-rw-r--r-- | tmk_core/common/action.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/tmk_core/common/action.c b/tmk_core/common/action.c index 9ba03675a1..e4cbac9e80 100644 --- a/tmk_core/common/action.c +++ b/tmk_core/common/action.c @@ -82,18 +82,18 @@ action_t store_or_get_action(bool pressed, keypos_t key) if (disable_action_cache) { return layer_switch_get_action(key); } - uint8_t key_number = key.col + (key.row * MATRIX_COLS); - uint8_t storage_row = key_number / 8; - uint8_t storage_bit = key_number % 8; - uint8_t layer; + int8_t key_number = key.col + (key.row * MATRIX_COLS); + int8_t storage_row = key_number / 8; + int8_t storage_bit = key_number % 8; + int8_t layer; if (pressed) { layer = layer_switch_get_layer(key); - for (uint8_t bit_number = 0; bit_number <= 4; bit_number++) { + for (int8_t bit_number = 0; bit_number <= 4; bit_number++) { source_layers_cache[bit_number][storage_row] ^= (-(!!(layer & (1 << bit_number)) ^ source_layers_cache[bit_number][storage_row])) & (1 << storage_bit); } } else { layer = 0; - for (uint8_t bit_number = 0; bit_number <= 4; bit_number++) { + for (int8_t bit_number = 0; bit_number <= 4; bit_number++) { layer |= (!!(source_layers_cache[bit_number][storage_row] & (1 << storage_bit))) << bit_number; } } |