diff --git a/xdgshellclient.cpp b/xdgshellclient.cpp index 629f0d8011..7694d71e6e 100644 --- a/xdgshellclient.cpp +++ b/xdgshellclient.cpp @@ -547,6 +547,11 @@ bool XdgToplevelClient::isMinimizable() const return true; } +bool XdgToplevelClient::isPlaceable() const +{ + return !m_plasmaShellSurface || !m_plasmaShellSurface->isPositionSet(); +} + bool XdgToplevelClient::isTransient() const { return m_isTransient; diff --git a/xdgshellclient.h b/xdgshellclient.h index aea4b311f2..1cad828050 100644 --- a/xdgshellclient.h +++ b/xdgshellclient.h @@ -132,6 +132,7 @@ public: bool isFullScreenable() const override; bool isMaximizable() const override; bool isMinimizable() const override; + bool isPlaceable() const override; bool isTransient() const override; bool userCanSetFullScreen() const override; bool userCanSetNoBorder() const override;