qmk_firmware

QMK firmware for my keyboards (Corne, Sweep Ferris) and trackball (Ploopy Adept)
Log | Files | Refs | Submodules | LICENSE

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 
      6 bool process_connection(uint16_t keycode, keyrecord_t *record) {
      7     if (record->event.pressed) {
      8         switch (keycode) {
      9             case QK_OUTPUT_NEXT:
     10                 connection_next_host();
     11                 return false;
     12             case QK_OUTPUT_PREV:
     13                 connection_prev_host();
     14                 return false;
     15 
     16             case QK_OUTPUT_AUTO:
     17                 connection_set_host(CONNECTION_HOST_AUTO);
     18                 return false;
     19             case QK_OUTPUT_NONE:
     20                 connection_set_host(CONNECTION_HOST_NONE);
     21                 return false;
     22             case QK_OUTPUT_USB:
     23                 connection_set_host(CONNECTION_HOST_USB);
     24                 return false;
     25             case QK_OUTPUT_BLUETOOTH:
     26                 connection_set_host(CONNECTION_HOST_BLUETOOTH);
     27                 return false;
     28             case QK_OUTPUT_2P4GHZ:
     29                 connection_set_host(CONNECTION_HOST_2P4GHZ);
     30                 return false;
     31 
     32             case QK_BLUETOOTH_PROFILE_NEXT:
     33             case QK_BLUETOOTH_PROFILE_PREV:
     34             case QK_BLUETOOTH_UNPAIR:
     35             case QK_BLUETOOTH_PROFILE1:
     36             case QK_BLUETOOTH_PROFILE2:
     37             case QK_BLUETOOTH_PROFILE3:
     38             case QK_BLUETOOTH_PROFILE4:
     39             case QK_BLUETOOTH_PROFILE5:
     40                 // As-yet unimplemented.
     41                 // When implementation is done, ensure `docs/keycodes.md`, `docs/features/bluetooth.md` are updated accordingly.
     42                 return false;
     43         }
     44     }
     45     return true;
     46 }