Wayland compositor (wlroots)
git clone https://git.lucas.co/cce-compositor.git
Xwayland: don't use min_width/min_height as fallback max_width/max_height
river/XwaylandWindow.zig | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/river/XwaylandWindow.zig b/river/XwaylandWindow.zig
index ce6a24b..43e5fc3 100644
--- a/river/XwaylandWindow.zig
+++ b/river/XwaylandWindow.zig
@@ -196,11 +196,19 @@ pub fn handleMap(listener: *wl.Listener(void)) void {
if (xwindow.xsurface.size_hints) |size_hints| {
const min_width: u31 = @max(0, size_hints.min_width);
const min_height: u31 = @max(0, size_hints.min_height);
+ var max_width: u31 = @max(0, size_hints.max_width);
+ var max_height: u31 = @max(0, size_hints.max_height);
+ if (min_width > max_width) {
+ max_width = min_width;
+ }
+ if (min_height > max_height) {
+ max_height = min_height;
+ }
window.setDimensionsHint(.{
.min_width = min_width,
- .max_width = @max(min_width, size_hints.max_width),
+ .max_width = max_width,
.min_height = min_height,
- .max_height = @max(min_height, size_hints.max_height),
+ .max_height = max_height,
});
}