Fix rootston seat button count

This commit is contained in:
emersion 2017-12-22 15:06:12 +01:00
parent 0a370c5298
commit 9e2d936b4a
No known key found for this signature in database
GPG Key ID: 0FDE7BE0E88F5E48
1 changed files with 7 additions and 1 deletions

View File

@ -166,6 +166,13 @@ static void roots_cursor_press_button(struct roots_cursor *cursor,
}
return;
}
if (state == WLR_BUTTON_RELEASED &&
cursor->mode != ROOTS_CURSOR_PASSTHROUGH) {
cursor->mode = ROOTS_CURSOR_PASSTHROUGH;
if (seat->seat->pointer_state.button_count == 0) {
return;
}
}
uint32_t serial;
if (is_touch) {
@ -178,7 +185,6 @@ static void roots_cursor_press_button(struct roots_cursor *cursor,
int i;
switch (state) {
case WLR_BUTTON_RELEASED:
seat->cursor->mode = ROOTS_CURSOR_PASSTHROUGH;
if (!is_touch) {
roots_cursor_update_position(cursor, time);
}