summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sway/desktop/render.c6
-rw-r--r--sway/desktop/transaction.c4
-rw-r--r--sway/tree/view.c4
3 files changed, 6 insertions, 8 deletions
diff --git a/sway/desktop/render.c b/sway/desktop/render.c
index bd85282c..fee19a33 100644
--- a/sway/desktop/render.c
+++ b/sway/desktop/render.c
@@ -289,10 +289,8 @@ static void render_saved_view(struct sway_view *view,
289 } 289 }
290 290
291 struct wlr_box box = { 291 struct wlr_box box = {
292 .x = view->container->surface_x - output->lx - 292 .x = saved_buf->x - view->saved_geometry.x - output->lx,
293 view->saved_geometry.x + saved_buf->x, 293 .y = saved_buf->y - view->saved_geometry.y - output->ly,
294 .y = view->container->surface_y - output->ly -
295 view->saved_geometry.y + saved_buf->y,
296 .width = saved_buf->width, 294 .width = saved_buf->width,
297 .height = saved_buf->height, 295 .height = saved_buf->height,
298 }; 296 };
diff --git a/sway/desktop/transaction.c b/sway/desktop/transaction.c
index eac38991..2d71ad2b 100644
--- a/sway/desktop/transaction.c
+++ b/sway/desktop/transaction.c
@@ -214,8 +214,8 @@ static void apply_container_state(struct sway_container *container,
214 struct sway_saved_buffer *saved_buf; 214 struct sway_saved_buffer *saved_buf;
215 wl_list_for_each(saved_buf, &view->saved_buffers, link) { 215 wl_list_for_each(saved_buf, &view->saved_buffers, link) {
216 struct wlr_box box = { 216 struct wlr_box box = {
217 .x = container->current.content_x - view->saved_geometry.x + saved_buf->x, 217 .x = saved_buf->x - view->saved_geometry.x,
218 .y = container->current.content_y - view->saved_geometry.y + saved_buf->y, 218 .y = saved_buf->y - view->saved_geometry.y,
219 .width = saved_buf->width, 219 .width = saved_buf->width,
220 .height = saved_buf->height, 220 .height = saved_buf->height,
221 }; 221 };
diff --git a/sway/tree/view.c b/sway/tree/view.c
index c1ce4e6b..3b1e67ea 100644
--- a/sway/tree/view.c
+++ b/sway/tree/view.c
@@ -1350,8 +1350,8 @@ static void view_save_buffer_iterator(struct wlr_surface *surface,
1350 saved_buffer->buffer = surface->buffer; 1350 saved_buffer->buffer = surface->buffer;
1351 saved_buffer->width = surface->current.width; 1351 saved_buffer->width = surface->current.width;
1352 saved_buffer->height = surface->current.height; 1352 saved_buffer->height = surface->current.height;
1353 saved_buffer->x = sx; 1353 saved_buffer->x = view->container->surface_x + sx;
1354 saved_buffer->y = sy; 1354 saved_buffer->y = view->container->surface_y + sy;
1355 saved_buffer->transform = surface->current.transform; 1355 saved_buffer->transform = surface->current.transform;
1356 wlr_surface_get_buffer_source_box(surface, &saved_buffer->source_box); 1356 wlr_surface_get_buffer_source_box(surface, &saved_buffer->source_box);
1357 wl_list_insert(&view->saved_buffers, &saved_buffer->link); 1357 wl_list_insert(&view->saved_buffers, &saved_buffer->link);