aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sway/desktop/xdg_shell.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/sway/desktop/xdg_shell.c b/sway/desktop/xdg_shell.c
index 8da922d5..9b6456da 100644
--- a/sway/desktop/xdg_shell.c
+++ b/sway/desktop/xdg_shell.c
@@ -67,7 +67,13 @@ static void popup_unconstrain(struct sway_xdg_popup *popup) {
struct sway_view *view = popup->child.view;
struct wlr_xdg_popup *wlr_popup = popup->wlr_xdg_popup;
- struct sway_output *output = view->container->pending.workspace->output;
+ struct sway_workspace *workspace = view->container->pending.workspace;
+ if (!workspace) {
+ // is null if in the scratchpad
+ return;
+ }
+
+ struct sway_output *output = workspace->output;
// the output box expressed in the coordinate system of the toplevel parent
// of the popup