[PATCH weston 1/2] shell: fix positioning of maximized surfaces with a custom geometry

Giulio Camuffo giuliocamuffo at gmail.com
Fri Jan 9 10:10:45 PST 2015


---
 desktop-shell/shell.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c
index a7514f7..f6d9c79 100644
--- a/desktop-shell/shell.c
+++ b/desktop-shell/shell.c
@@ -5374,8 +5374,13 @@ set_maximized_position(struct desktop_shell *shell,
 	pixman_box32_t *e;
 
 	get_output_work_area(shell, shsurf->output, &area);
-	surface_subsurfaces_boundingbox(shsurf->surface,
-					&surf_x, &surf_y, NULL, NULL);
+	if (shsurf->has_set_geometry) {
+		surf_x = shsurf->geometry.x;
+		surf_y = shsurf->geometry.y;
+	} else {
+		surface_subsurfaces_boundingbox(shsurf->surface,
+						&surf_x, &surf_y, NULL, NULL);
+	}
 	e = pixman_region32_extents(&shsurf->output->region);
 
 	weston_view_set_position(shsurf->view,
-- 
2.2.1



More information about the wayland-devel mailing list