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) } } - if( (button == BUTTON_RIGHT) - && ((last_btns & BUTTON_LEFT) == BUTTON_LEFT) - && (value == EVENT_VALUE_BUTTON_RELEASE)) + if(button == BUTTON_RIGHT && ((last_btns & BUTTON_LEFT) == BUTTON_LEFT)) { - /* Workaround for a wrong feedback, only present with DX90. */ + /* Workaround for a wrong feedback, only present with DX90: the kernel + * sometimes report right press in the middle of a [left press, left release] + * interval, which is clearly wrong. */ button = BUTTON_LEFT; }