[PATCH v2 2/2] xdg-shell: fix maximizing in multi-head setup
Marek Chalupa
mchqwerty at gmail.com
Mon Sep 1 08:20:33 PDT 2014
Set the right position of maximized window. Up until now we ignored
output's "position" and were using only the working area
of output which is in output-relative coordinates. This led to
showing the maximized window always on the first output.
This, along with the previous patch, fixes
https://bugs.freedesktop.org/show_bug.cgi?id=82967
Signed-off-by: Marek Chalupa <mchqwerty at gmail.com>
---
desktop-shell/shell.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c
index d5996a3..9c0e721 100644
--- a/desktop-shell/shell.c
+++ b/desktop-shell/shell.c
@@ -5114,15 +5114,16 @@ set_maximized_position(struct desktop_shell *shell,
{
int32_t surf_x, surf_y;
pixman_rectangle32_t area;
+ pixman_box32_t *e;
- /* use surface configure to set the geometry */
get_output_work_area(shell, shsurf->output, &area);
surface_subsurfaces_boundingbox(shsurf->surface,
&surf_x, &surf_y, NULL, NULL);
+ e = pixman_region32_extents(&shsurf->output->region);
weston_view_set_position(shsurf->view,
- area.x - surf_x,
- area.y - surf_y);
+ e->x1 + area.x - surf_x,
+ e->y1 + area.y - surf_y);
}
static void
--
1.9.3
More information about the wayland-devel
mailing list