diff --git a/src/hidpp20.c b/src/hidpp20.c index e300a53e..3a042af9 100644 --- a/src/hidpp20.c +++ b/src/hidpp20.c @@ -526,7 +526,7 @@ static const struct hidpp20_1b04_mapping hidpp20_1b04_logical_mapping[] = { 83, "Back" , RATBAG_BUTTON_TYPE_SIDE}, { 86, "Forward" , RATBAG_BUTTON_TYPE_EXTRA}, { 195, "AppSwitchGesture" , RATBAG_BUTTON_TYPE_UNKNOWN}, - { 196, "SmartShift" , RATBAG_BUTTON_TYPE_UNKNOWN}, + { 196, "SmartShift" , RATBAG_BUTTON_TYPE_WHEEL_RATCHET_MODE_SHIFT}, { 315, "LedToggle" , RATBAG_BUTTON_TYPE_UNKNOWN}, }; @@ -554,7 +554,7 @@ static const struct hidpp20_1b04_action_mapping hidpp20_1b04_physical_mapping[] { 61, "Wheel Side Click Right" , BUTTON_ACTION_BUTTON(11)}, /* FIXME */ { 62, "Forward Click" , BUTTON_ACTION_BUTTON(5) }, { 156, "Gesture Button" , BUTTON_ACTION_NONE }, - { 157, "SmartShift" , BUTTON_ACTION_NONE }, + { 157, "SmartShift" , BUTTON_ACTION_SPECIAL(RATBAG_BUTTON_ACTION_SPECIAL_RATCHET_MODE_SWITCH) }, { 221, "LedToggle" , BUTTON_ACTION_NONE }, }; diff --git a/src/libratbag.h b/src/libratbag.h index 5e9dc40a..f8cd29e1 100644 --- a/src/libratbag.h +++ b/src/libratbag.h @@ -433,6 +433,7 @@ enum ratbag_button_type { RATBAG_BUTTON_TYPE_WHEEL_CLICK, /* FIXME: same as middle click? */ RATBAG_BUTTON_TYPE_WHEEL_UP, RATBAG_BUTTON_TYPE_WHEEL_DOWN, + RATBAG_BUTTON_TYPE_WHEEL_RATCHET_MODE_SHIFT, RATBAG_BUTTON_TYPE_EXTRA, RATBAG_BUTTON_TYPE_SIDE, @@ -518,6 +519,7 @@ enum ratbag_button_action_special { RATBAG_BUTTON_ACTION_SPECIAL_WHEEL_RIGHT, RATBAG_BUTTON_ACTION_SPECIAL_WHEEL_UP, RATBAG_BUTTON_ACTION_SPECIAL_WHEEL_DOWN, + RATBAG_BUTTON_ACTION_SPECIAL_RATCHET_MODE_SWITCH, /* DPI switch */ RATBAG_BUTTON_ACTION_SPECIAL_RESOLUTION_CYCLE_UP,