summaryrefslogtreecommitdiff
path: root/users/drashna/pointing
diff options
context:
space:
mode:
Diffstat (limited to 'users/drashna/pointing')
-rw-r--r--users/drashna/pointing/pointing.c20
1 files changed, 11 insertions, 9 deletions
diff --git a/users/drashna/pointing/pointing.c b/users/drashna/pointing/pointing.c
index 0116ce0900..0dcfe73f34 100644
--- a/users/drashna/pointing/pointing.c
+++ b/users/drashna/pointing/pointing.c
@@ -42,19 +42,15 @@ report_mouse_t pointing_device_task_user(report_mouse_t mouse_report) {
layer_on(_MOUSE);
}
}
- }
- return pointing_device_task_keymap(mouse_report);
-}
-
-void matrix_scan_pointing(void) {
- if (timer_elapsed(mouse_timer) > 650 && layer_state_is(_MOUSE) && !mouse_keycode_tracker && !tap_toggling) {
+ } else if (timer_elapsed(mouse_timer) > 650 && layer_state_is(_MOUSE) && !mouse_keycode_tracker && !tap_toggling) {
layer_off(_MOUSE);
- }
- if (tap_toggling) {
+ } else if (tap_toggling) {
if (!layer_state_is(_MOUSE)) {
layer_on(_MOUSE);
}
}
+
+ return pointing_device_task_keymap(mouse_report);
}
bool process_record_pointing(uint16_t keycode, keyrecord_t* record) {
@@ -86,7 +82,7 @@ bool process_record_pointing(uint16_t keycode, keyrecord_t* record) {
case MO(_MOUSE):
#if defined(KEYBOARD_ploopy) || defined(KEYBOARD_handwired_tractyl_manuform)
case DPI_CONFIG:
-#elif defined(KEYBOARD_bastardkb_charybdis)
+#elif defined(KEYBOARD_bastardkb_charybdis) && !defined(NO_CHARYBDIS_KEYCODES)
case SAFE_RANGE ... (CHARYBDIS_SAFE_RANGE-1):
#endif
case KC_MS_UP ... KC_MS_WH_RIGHT:
@@ -98,6 +94,12 @@ bool process_record_pointing(uint16_t keycode, keyrecord_t* record) {
record->event.pressed ? mouse_keycode_tracker++ : mouse_keycode_tracker--;
mouse_timer = timer_read();
break;
+ case QK_ONE_SHOT_MOD ... QK_ONE_SHOT_MOD_MAX:
+ break;
+ case QK_MOD_TAP ... QK_MOD_TAP_MAX:
+ if (record->event.pressed || !record->tap.count) {
+ break;
+ }
default:
if (IS_NOEVENT(record->event)) break;
if ((keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX) && (((keycode >> 0x8) & 0xF) == _MOUSE)) {