Have clients where we've set their position as non-placeable

If the client opted to position them on purpose, don't move them around.
If the geometry of the workspace changes it's their job to react
accordingly.

BUG: 429353
This commit is contained in:
Aleix Pol 2020-11-19 16:31:42 +01:00 committed by Vlad Zahorodnii
parent bcba2e252f
commit 7f4d1120c5
2 changed files with 6 additions and 0 deletions

View file

@ -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;

View file

@ -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;