diff options
author | Felix Uhl <iFreilicht@users.noreply.github.com> | 2016-08-18 12:02:31 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-08-18 12:02:31 +0200 |
commit | ed6ecff292eae378eb89bf6a7b5b8dd4229b84b7 (patch) | |
tree | b2290e1a983134e0d7fc2f328eb949c37d99961c /quantum/quantum.c | |
parent | 73f13c8f26f7f3777cec9d3036628a7dd6021ee9 (diff) | |
parent | 8144ce8852f690d5772d80ed2b96ae4af201e266 (diff) | |
download | firmware-ed6ecff292eae378eb89bf6a7b5b8dd4229b84b7.tar.gz firmware-ed6ecff292eae378eb89bf6a7b5b8dd4229b84b7.tar.bz2 firmware-ed6ecff292eae378eb89bf6a7b5b8dd4229b84b7.zip |
Merge pull request #1 from jackhumbert/master
Merging from base Repo
Diffstat (limited to 'quantum/quantum.c')
-rw-r--r-- | quantum/quantum.c | 25 |
1 files changed, 15 insertions, 10 deletions
diff --git a/quantum/quantum.c b/quantum/quantum.c index bc2da510f..cb1ba04ff 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c @@ -46,18 +46,20 @@ bool process_record_quantum(keyrecord_t *record) { uint16_t keycode; #if !defined(NO_ACTION_LAYER) && defined(PREVENT_STUCK_MODIFIERS) - uint8_t layer; + /* TODO: Use store_or_get_action() or a similar function. */ + if (!disable_action_cache) { + uint8_t layer; - if (record->event.pressed) { - layer = layer_switch_get_layer(key); - update_source_layers_cache(key, layer); - } else { - layer = read_source_layers_cache(key); - } - keycode = keymap_key_to_keycode(layer, key); - #else - keycode = keymap_key_to_keycode(layer_switch_get_layer(key), key); + if (record->event.pressed) { + layer = layer_switch_get_layer(key); + update_source_layers_cache(key, layer); + } else { + layer = read_source_layers_cache(key); + } + keycode = keymap_key_to_keycode(layer, key); + } else #endif + keycode = keymap_key_to_keycode(layer_switch_get_layer(key), key); // This is how you use actions here // if (keycode == KC_LEAD) { @@ -87,6 +89,9 @@ bool process_record_quantum(keyrecord_t *record) { #ifdef UNICODE_ENABLE process_unicode(keycode, record) && #endif + #ifdef UCIS_ENABLE + process_ucis(keycode, record) && + #endif true)) { return false; } |