summaryrefslogtreecommitdiffstats
path: root/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/shellintegration/xdg-shell/qwaylandxdgshell_p.h')
-rw-r--r--src/plugins/shellintegration/xdg-shell/qwaylandxdgshell_p.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell_p.h b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell_p.h
index 37a4a8a4c..45d7d4b0e 100644
--- a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell_p.h
+++ b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell_p.h
@@ -129,9 +129,12 @@ private:
Popup(QWaylandXdgSurface *xdgSurface, QWaylandXdgSurface *parent, QtWayland::xdg_positioner *positioner);
~Popup() override;
+ void grab(QWaylandInputDevice *seat, uint serial);
void xdg_popup_popup_done() override;
QWaylandXdgSurface *m_xdgSurface = nullptr;
+ QWaylandXdgSurface *m_parent = nullptr;
+ bool m_grabbing = false;
};
void setToplevel();
@@ -144,6 +147,8 @@ private:
bool m_configured = false;
QRegion m_exposeRegion;
uint m_pendingConfigureSerial = 0;
+
+ friend class QWaylandXdgShell;
};
class Q_WAYLAND_CLIENT_EXPORT QWaylandXdgShell : public QtWayland::xdg_wm_base
@@ -164,6 +169,9 @@ private:
QWaylandDisplay *m_display = nullptr;
QScopedPointer<QWaylandXdgDecorationManagerV1> m_xdgDecorationManager;
+ QWaylandXdgSurface::Popup *m_topmostPopup = nullptr;
+
+ friend class QWaylandXdgSurface;
};
QT_END_NAMESPACE