[PATCH weston] xwayland: fix fullscreening

Marek Chalupa mchqwerty at gmail.com
Wed Oct 29 05:44:44 PDT 2014


set_fullscreen has been sending configure before changing the state
and xwayland windows added border to the fullscreen size.

This fixes the bug:
https://bugs.freedesktop.org/show_bug.cgi?id=83502

Signed-off-by: Marek Chalupa <mchqwerty at gmail.com>
---
 desktop-shell/shell.c     | 4 ++--
 xwayland/window-manager.c | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c
index 9fafb39..8e3f79d 100644
--- a/desktop-shell/shell.c
+++ b/desktop-shell/shell.c
@@ -2929,10 +2929,10 @@ shell_interface_set_fullscreen(struct shell_surface *shsurf,
 			       struct weston_output *output)
 {
 	surface_clear_next_states(shsurf);
-	set_fullscreen(shsurf, method, framerate, output);
-
 	shsurf->next_state.fullscreen = true;
 	shsurf->state_changed = true;
+
+	set_fullscreen(shsurf, method, framerate, output);
 }
 
 static int
diff --git a/xwayland/window-manager.c b/xwayland/window-manager.c
index 2902373..e7e5a7a 100644
--- a/xwayland/window-manager.c
+++ b/xwayland/window-manager.c
@@ -2193,7 +2193,7 @@ send_configure(struct weston_surface *surface, int32_t width, int32_t height)
 	struct theme *t = window->wm->theme;
 	int vborder, hborder;
 
-	if (window->decorate) {
+	if (window->decorate && !window->fullscreen) {
 		hborder = 2 * t->width;
 		vborder = t->titlebar_height + t->width;
 	} else {
-- 
1.9.3



More information about the wayland-devel mailing list