aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--rootston/xdg_shell_v6.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/rootston/xdg_shell_v6.c b/rootston/xdg_shell_v6.c
index fe63e697..295d9ff4 100644
--- a/rootston/xdg_shell_v6.c
+++ b/rootston/xdg_shell_v6.c
@@ -84,14 +84,16 @@ static void popup_unconstrain(struct roots_xdg_popup_v6 *popup) {
int width = 0, height = 0;
wlr_output_effective_resolution(output, &width, &height);
- struct wlr_box toplevel_box = {
+ // the output box expressed in the coordinate system of the toplevel parent
+ // of the popup
+ struct wlr_box output_box_toplevel = {
.x = output->lx - view->x,
.y = output->ly - view->y,
.width = width,
.height = height
};
- wlr_xdg_popup_v6_unconstrain_from_box(popup->wlr_popup, &toplevel_box);
+ wlr_xdg_popup_v6_unconstrain_from_box(popup->wlr_popup, &output_box_toplevel);
}
static struct roots_xdg_popup_v6 *popup_create(struct roots_view *view,