commit 43228bd493f53f996a645156f0505b63e79a4f72
parent 03e167dbb70fbc967e310f95200bcd63f43cac72
Author: Leonardo Hernández Hernández <leohdz172@protonmail.com>
Date: Sun, 13 Mar 2022 20:54:44 -0600
don't use fullscreen event in fullscreennotify()
Diffstat:
2 files changed, 14 insertions(+), 3 deletions(-)
diff --git a/client.h b/client.h
@@ -96,6 +96,16 @@ client_is_float_type(Client *c)
}
static inline int
+client_wants_fullscreen(Client *c)
+{
+#ifdef XWAYLAND
+ if (client_is_x11(c))
+ return c->surface.xwayland->fullscreen;
+#endif
+ return c->surface.xdg->toplevel->requested.fullscreen;
+}
+
+static inline int
client_is_unmanaged(Client *c)
{
#ifdef XWAYLAND
diff --git a/dwl.c b/dwl.c
@@ -1042,13 +1042,14 @@ void
fullscreennotify(struct wl_listener *listener, void *data)
{
Client *c = wl_container_of(listener, c, fullscreen);
- struct wlr_xdg_toplevel_set_fullscreen_event *event = data;
+ int fullscreen = client_wants_fullscreen(c);
+
if (!c->mon) {
/* if the client is not mapped yet, let mapnotify() call setfullscreen() */
- c->isfullscreen = event->fullscreen;
+ c->isfullscreen = fullscreen;
return;
}
- setfullscreen(c, event->fullscreen);
+ setfullscreen(c, fullscreen);
}
Monitor *