Advertisement
Guest User

Untitled

a guest
Jul 22nd, 2017
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.57 KB | None | 0 0
  1. bit_t is_media_keycode(keycode_t keycode) {
  2. return is_media(keycode);
  3. }
  4.  
  5. void handle_media_keycode(keycode_t keycode, key_event_t event) REENT {
  6. uint8_t consumer_code = 0;
  7. if (event == EVENT_PRESSED) {
  8. switch (keycode) {
  9. case KC_MEDIA_NEXT_TRACK : consumer_code = HID_CONSUMER_SCAN_NEXT_TRACK ; break ;
  10. case KC_MEDIA_PREV_TRACK : consumer_code = HID_CONSUMER_SCAN_PREVIOUS_TRACK ; break ;
  11. case KC_MEDIA_FAST_FORWARD : consumer_code = HID_CONSUMER_FAST_FORWARD ; break ;
  12. case KC_MEDIA_REWIND : consumer_code = HID_CONSUMER_REWIND ; break ;
  13. case KC_MEDIA_STOP : consumer_code = HID_CONSUMER_STOP ; break ;
  14. case KC_MEDIA_EJECT : consumer_code = HID_CONSUMER_EJECT ; break ;
  15. case KC_MEDIA_PLAY_PAUSE : consumer_code = HID_CONSUMER_PLAY_PAUSE ; break ;
  16. case KC_AUDIO_MUTE : consumer_code = HID_CONSUMER_MUTE ; break ;
  17. case KC_AUDIO_VOL_UP : consumer_code = HID_CONSUMER_VOLUME_INCREMENT ; break ;
  18. case KC_AUDIO_VOL_DOWN : consumer_code = HID_CONSUMER_VOLUME_DECREMENT ; break ;
  19. }
  20. g_media_report.id = REPORT_ID_CONSUMER;
  21. g_media_report.code = consumer_code;
  22. g_report_pending_media = true;
  23. } else if (event == EVENT_RELEASED) {
  24. g_media_report.id = REPORT_ID_CONSUMER;
  25. g_media_report.code = 0;
  26. g_report_pending_media = true;
  27. }
  28. }
  29.  
  30. const XRAM keycode_callbacks_t media_keycodes = {
  31. .checker = is_media_keycode,
  32. .handler = handle_media_keycode,
  33. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement