logo

qmk_firmware

custom branch of QMK firmware git clone https://anongit.hacktivis.me/git/qmk_firmware.git

process_tri_layer.c (1241B)


  1. // Copyright 2023 QMK
  2. // SPDX-License-Identifier: GPL-2.0-or-later
  3. #include "process_tri_layer.h"
  4. #include "tri_layer.h"
  5. #include "action_layer.h"
  6. bool process_tri_layer(uint16_t keycode, keyrecord_t *record) {
  7. switch (keycode) {
  8. case QK_TRI_LAYER_LOWER:
  9. if (record->event.pressed) {
  10. layer_on(get_tri_layer_lower_layer());
  11. update_tri_layer(get_tri_layer_lower_layer(), get_tri_layer_upper_layer(), get_tri_layer_adjust_layer());
  12. } else {
  13. layer_off(get_tri_layer_lower_layer());
  14. update_tri_layer(get_tri_layer_lower_layer(), get_tri_layer_upper_layer(), get_tri_layer_adjust_layer());
  15. }
  16. return false;
  17. case QK_TRI_LAYER_UPPER:
  18. if (record->event.pressed) {
  19. layer_on(get_tri_layer_upper_layer());
  20. update_tri_layer(get_tri_layer_lower_layer(), get_tri_layer_upper_layer(), get_tri_layer_adjust_layer());
  21. } else {
  22. layer_off(get_tri_layer_upper_layer());
  23. update_tri_layer(get_tri_layer_lower_layer(), get_tri_layer_upper_layer(), get_tri_layer_adjust_layer());
  24. }
  25. return false;
  26. }
  27. return true;
  28. }