summaryrefslogtreecommitdiff
path: root/sway/input/cursor.c
diff options
context:
space:
mode:
authorRyan Dwyer <[email protected]>2018-07-21 11:23:48 +1000
committerRyan Dwyer <[email protected]>2018-07-22 23:10:19 +1000
commit9df660ee3188386c907d8feb999636ce8d61d095 (patch)
treeeb9343b66221d664ac995995d7bcceb45d25ee94 /sway/input/cursor.c
parent6767d8a593723a9b69d018eed13d24a789be9516 (diff)
Store last button and use it when views request to move or resize
Diffstat (limited to 'sway/input/cursor.c')
-rw-r--r--sway/input/cursor.c18
1 files changed, 7 insertions, 11 deletions
diff --git a/sway/input/cursor.c b/sway/input/cursor.c
index 43721d28..ad0ceb94 100644
--- a/sway/input/cursor.c
+++ b/sway/input/cursor.c
@@ -429,7 +429,7 @@ static void dispatch_cursor_button_floating(struct sway_cursor *cursor,
// Deny moving or resizing a fullscreen view
if (cont->type == C_VIEW && cont->sway_view->is_fullscreen) {
- wlr_seat_pointer_notify_button(seat->wlr_seat, time_msec, button, state);
+ seat_pointer_notify_button(seat, time_msec, button, state);
return;
}
@@ -442,7 +442,7 @@ static void dispatch_cursor_button_floating(struct sway_cursor *cursor,
// Check for beginning move
if (button == BTN_LEFT && state == WLR_BUTTON_PRESSED &&
(mod_pressed || over_title)) {
- seat_begin_move(seat, cont);
+ seat_begin_move(seat, cont, BTN_LEFT);
return;
}
@@ -456,7 +456,7 @@ static void dispatch_cursor_button_floating(struct sway_cursor *cursor,
}
// Send event to surface
- wlr_seat_pointer_notify_button(seat->wlr_seat, time_msec, button, state);
+ seat_pointer_notify_button(seat, time_msec, button, state);
}
void dispatch_cursor_button(struct sway_cursor *cursor,
@@ -480,8 +480,7 @@ void dispatch_cursor_button(struct sway_cursor *cursor,
if (layer->current.keyboard_interactive) {
seat_set_focus_layer(cursor->seat, layer);
}
- wlr_seat_pointer_notify_button(cursor->seat->wlr_seat,
- time_msec, button, state);
+ seat_pointer_notify_button(cursor->seat, time_msec, button, state);
} else if (cont && container_is_floating(cont)) {
dispatch_cursor_button_floating(cursor, time_msec, button, state,
surface, sx, sy, cont);
@@ -501,15 +500,12 @@ void dispatch_cursor_button(struct sway_cursor *cursor,
if (new_ws != old_ws) {
seat_set_focus(cursor->seat, cont);
}
- wlr_seat_pointer_notify_button(cursor->seat->wlr_seat,
- time_msec, button, state);
+ seat_pointer_notify_button(cursor->seat, time_msec, button, state);
} else if (cont) {
seat_set_focus(cursor->seat, cont);
- wlr_seat_pointer_notify_button(cursor->seat->wlr_seat,
- time_msec, button, state);
+ seat_pointer_notify_button(cursor->seat, time_msec, button, state);
} else {
- wlr_seat_pointer_notify_button(cursor->seat->wlr_seat,
- time_msec, button, state);
+ seat_pointer_notify_button(cursor->seat, time_msec, button, state);
}
transaction_commit_dirty();