This should fix the surface not going back to its original position
after unsetting fullscreen or maximized states.
---
 desktop-shell/shell.c | 3 +++
 src/compositor.c      | 1 +
 2 files changed, 4 insertions(+)

diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c
index de54e37..d270c27 100644
--- a/desktop-shell/shell.c
+++ b/desktop-shell/shell.c
@@ -2213,6 +2213,7 @@ unset_fullscreen(struct shell_surface *shsurf)
                weston_surface_destroy(shsurf->fullscreen.black_view->surface);
        shsurf->fullscreen.black_view = NULL;
 
+       printf(">>> restored position: %d,%d\n", shsurf->saved_x, 
shsurf->saved_y);
        weston_view_set_position(shsurf->view,
                                 shsurf->saved_x, shsurf->saved_y);
        if (shsurf->saved_rotation_valid) {
@@ -2364,6 +2365,7 @@ set_full_output(struct shell_surface *shsurf)
 {
        shsurf->saved_x = shsurf->view->geometry.x;
        shsurf->saved_y = shsurf->view->geometry.y;
+       printf(">>> saved position: %d,%d\n", shsurf->saved_x, shsurf->saved_y);
        shsurf->saved_width = shsurf->surface->width;
        shsurf->saved_height = shsurf->surface->height;
        shsurf->saved_size_valid = true;
@@ -2399,6 +2401,7 @@ set_surface_type(struct shell_surface *shsurf)
                                                 pev->geometry.x + 
shsurf->transient.x,
                                                 pev->geometry.y + 
shsurf->transient.y);
                }
+               break;
 
        case SHELL_SURFACE_XWAYLAND:
                weston_view_set_position(shsurf->view, shsurf->transient.x,
diff --git a/src/compositor.c b/src/compositor.c
index 8f4bdef..7bb17a9 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -1077,6 +1077,7 @@ weston_view_set_position(struct weston_view *view, float 
x, float y)
 
        view->geometry.x = x;
        view->geometry.y = y;
+       printf(">>> view set position: %0.3f,%0.3f\n", x, y);
        weston_view_geometry_dirty(view);
 }
 
-- 
1.8.3.1

_______________________________________________
wayland-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to