logo

qmk_firmware

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

undead60m.c (1859B)


  1. /* Copyright 2021 jfescobar18
  2. *
  3. * This program is free software: you can redistribute it and/or modify
  4. * it under the terms of the GNU General Public License as published by
  5. * the Free Software Foundation, either version 2 of the License, or
  6. * (at your option) any later version.
  7. *
  8. * This program is distributed in the hope that it will be useful,
  9. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. * GNU General Public License for more details.
  12. *
  13. * You should have received a copy of the GNU General Public License
  14. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  15. */
  16. #include "quantum.h"
  17. bool encoder_update_kb(uint8_t index, bool clockwise) {
  18. if (!encoder_update_user(index, clockwise)) { return false; }
  19. if (index == 0) {
  20. switch (get_highest_layer(layer_state)) {
  21. case 0: /* Layer 1: Volume */
  22. if (clockwise) {
  23. tap_code(KC_VOLD);
  24. } else {
  25. tap_code(KC_VOLU);
  26. }
  27. break;
  28. case 1: /* Layer 2: Scroll */
  29. if (clockwise) {
  30. tap_code(KC_WH_U);
  31. } else {
  32. tap_code(KC_WH_D);
  33. }
  34. break;
  35. case 2: /* Layer 3: Change Track */
  36. if (clockwise) {
  37. tap_code(KC_MPRV);
  38. } else {
  39. tap_code(KC_MNXT);
  40. }
  41. break;
  42. case 3: /* Layer 4: Brightness */
  43. if (clockwise) {
  44. tap_code(KC_BRID);
  45. } else {
  46. tap_code(KC_BRIU);
  47. }
  48. break;
  49. default: /* Default: Volume */
  50. if (clockwise) {
  51. tap_code(KC_VOLU);
  52. } else {
  53. tap_code(KC_VOLD);
  54. }
  55. break;
  56. }
  57. }
  58. return true;
  59. }