Root: fix auto-layout output coordinates

Outputs using the wlr_output_layout auto-layout feature may have their
coordinates update any time an output is added/removed to the layout or
the position of another output in the layout is set.

River currently doesn't keep the scene node coordinates of such outputs
in sync with their position in the output layout, which leads to bugs
with e.g. the cursor not working properly for such outputs.
This commit is contained in:
Isaac Freund
2024-02-25 14:37:34 +01:00
parent 60b06a6741
commit 0605ce507e
2 changed files with 41 additions and 36 deletions

View File

@ -409,7 +409,7 @@ fn handleDestroy(listener: *wl.Listener(*wlr.Output), _: *wlr.Output) void {
util.gpa.destroy(output);
server.root.sendOutputManagerConfig();
server.root.handleOutputConfigChange() catch std.log.err("out of memory", .{});
server.root.applyPending();
}