logo

qmk_firmware

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

process_connection.c (1658B)


  1. // Copyright 2024 Nick Brassel (@tzarc)
  2. // SPDX-License-Identifier: GPL-2.0-or-later
  3. #include "connection.h"
  4. #include "process_connection.h"
  5. bool process_connection(uint16_t keycode, keyrecord_t *record) {
  6. if (record->event.pressed) {
  7. switch (keycode) {
  8. case QK_OUTPUT_NEXT:
  9. connection_next_host();
  10. return false;
  11. case QK_OUTPUT_PREV:
  12. connection_prev_host();
  13. return false;
  14. case QK_OUTPUT_AUTO:
  15. connection_set_host(CONNECTION_HOST_AUTO);
  16. return false;
  17. case QK_OUTPUT_NONE:
  18. connection_set_host(CONNECTION_HOST_NONE);
  19. return false;
  20. case QK_OUTPUT_USB:
  21. connection_set_host(CONNECTION_HOST_USB);
  22. return false;
  23. case QK_OUTPUT_BLUETOOTH:
  24. connection_set_host(CONNECTION_HOST_BLUETOOTH);
  25. return false;
  26. case QK_OUTPUT_2P4GHZ:
  27. connection_set_host(CONNECTION_HOST_2P4GHZ);
  28. return false;
  29. case QK_BLUETOOTH_PROFILE_NEXT:
  30. case QK_BLUETOOTH_PROFILE_PREV:
  31. case QK_BLUETOOTH_UNPAIR:
  32. case QK_BLUETOOTH_PROFILE1:
  33. case QK_BLUETOOTH_PROFILE2:
  34. case QK_BLUETOOTH_PROFILE3:
  35. case QK_BLUETOOTH_PROFILE4:
  36. case QK_BLUETOOTH_PROFILE5:
  37. // As-yet unimplemented.
  38. // When implementation is done, ensure `docs/keycodes.md`, `docs/features/bluetooth.md` are updated accordingly.
  39. return false;
  40. }
  41. }
  42. return true;
  43. }