diff options
Diffstat (limited to 'firmware/target/hosted/ibasso/dx90/button-dx90.c')
-rw-r--r-- | firmware/target/hosted/ibasso/dx90/button-dx90.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/firmware/target/hosted/ibasso/dx90/button-dx90.c b/firmware/target/hosted/ibasso/dx90/button-dx90.c index 27e4be0c1e..a25bcc30b5 100644 --- a/firmware/target/hosted/ibasso/dx90/button-dx90.c +++ b/firmware/target/hosted/ibasso/dx90/button-dx90.c | |||
@@ -82,11 +82,11 @@ int handle_button_event(__u16 code, __s32 value, int last_btns) | |||
82 | } | 82 | } |
83 | } | 83 | } |
84 | 84 | ||
85 | if( (button == BUTTON_RIGHT) | 85 | if(button == BUTTON_RIGHT && ((last_btns & BUTTON_LEFT) == BUTTON_LEFT)) |
86 | && ((last_btns & BUTTON_LEFT) == BUTTON_LEFT) | ||
87 | && (value == EVENT_VALUE_BUTTON_RELEASE)) | ||
88 | { | 86 | { |
89 | /* Workaround for a wrong feedback, only present with DX90. */ | 87 | /* Workaround for a wrong feedback, only present with DX90: the kernel |
88 | * sometimes report right press in the middle of a [left press, left release] | ||
89 | * interval, which is clearly wrong. */ | ||
90 | button = BUTTON_LEFT; | 90 | button = BUTTON_LEFT; |
91 | } | 91 | } |
92 | 92 | ||