aboutsummaryrefslogtreecommitdiff
path: root/sway/input
diff options
context:
space:
mode:
Diffstat (limited to 'sway/input')
-rw-r--r--sway/input/cursor.c4
-rw-r--r--sway/input/seat.c4
2 files changed, 2 insertions, 6 deletions
diff --git a/sway/input/cursor.c b/sway/input/cursor.c
index 80b4f9dc..3f417e96 100644
--- a/sway/input/cursor.c
+++ b/sway/input/cursor.c
@@ -429,6 +429,8 @@ static void dispatch_cursor_button_floating(struct sway_cursor *cursor,
struct sway_container *cont) {
struct sway_seat *seat = cursor->seat;
+ seat_set_focus(seat, cont);
+
// Deny moving or resizing a fullscreen container
if (container_is_fullscreen_or_child(cont)) {
seat_pointer_notify_button(seat, time_msec, button, state);
@@ -469,8 +471,6 @@ static void dispatch_cursor_button_floating(struct sway_cursor *cursor,
return;
}
- // Send event to surface
- seat_set_focus(seat, cont);
seat_pointer_notify_button(seat, time_msec, button, state);
}
diff --git a/sway/input/seat.c b/sway/input/seat.c
index dd4d5c3b..6dd7cf7d 100644
--- a/sway/input/seat.c
+++ b/sway/input/seat.c
@@ -717,12 +717,8 @@ void seat_set_focus_warp(struct sway_seat *seat,
// If we've focused a floating container, bring it to the front.
// We do this by putting it at the end of the floating list.
- // This must happen for both the pending and current children lists.
if (container && container_is_floating(container)) {
list_move_to_end(container->parent->children, container);
- if (container_has_ancestor(container, container->current.parent)) {
- list_move_to_end(container->parent->current.children, container);
- }
}
// clean up unfocused empty workspace on new output