From c28edd2411920db5413a1391c507753e0e9e45d7 Mon Sep 17 00:00:00 2001 From: Benjamin Tissoires Date: Wed, 26 Aug 2015 11:01:25 -0400 Subject: [PATCH] Add the ratchet mode switch button type and action type Found on the Logitech MX Master. Most of other Logitech device with physical ratchet disable capability do not show this button to the host however. Signed-off-by: Benjamin Tissoires --- src/hidpp20.c | 4 ++-- src/libratbag.h | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) 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,