aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIsaac Freund <mail@isaacfreund.com>2023-11-08 13:16:50 +0100
committerIsaac Freund <mail@isaacfreund.com>2023-11-08 13:16:50 +0100
commit6c819901632ab6307a1dfe55a0f7e51e8c7becc1 (patch)
tree0381206288042f8a8791f48ddf8119fd366eb645
parentc4fe1e1a3fbd90ac86706a37101d7add80701587 (diff)
downloadriver-6c819901632ab6307a1dfe55a0f7e51e8c7becc1.tar.gz
river-6c819901632ab6307a1dfe55a0f7e51e8c7becc1.tar.xz
xdg-toplevel: ignore redundant move/resize requests
Such requests currently lead to an assertion failure. I don't know what changed in nautilus 45.0 that caused it to start doing this and I probably don't want to know.
-rw-r--r--river/XdgToplevel.zig10
1 files changed, 8 insertions, 2 deletions
diff --git a/river/XdgToplevel.zig b/river/XdgToplevel.zig
index 8952106..dd42a99 100644
--- a/river/XdgToplevel.zig
+++ b/river/XdgToplevel.zig
@@ -381,7 +381,10 @@ fn handleRequestMove(
if (view.pending.fullscreen) return;
if (!(view.pending.float or view.pending.output.?.layout == null)) return;
- seat.cursor.startMove(view);
+ switch (seat.cursor.mode) {
+ .passthrough, .down => seat.cursor.startMove(view),
+ .move, .resize => {},
+ }
}
fn handleRequestResize(listener: *wl.Listener(*wlr.XdgToplevel.event.Resize), event: *wlr.XdgToplevel.event.Resize) void {
@@ -406,7 +409,10 @@ fn handleRequestResize(listener: *wl.Listener(*wlr.XdgToplevel.event.Resize), ev
if (view.pending.fullscreen) return;
if (!(view.pending.float or view.pending.output.?.layout == null)) return;
- seat.cursor.startResize(view, event.edges);
+ switch (seat.cursor.mode) {
+ .passthrough, .down => seat.cursor.startResize(view, event.edges),
+ .move, .resize => {},
+ }
}
/// Called when the client sets / updates its title