diff options
Diffstat (limited to 'src/desktop/Popup.cpp')
| -rw-r--r-- | src/desktop/Popup.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/desktop/Popup.cpp b/src/desktop/Popup.cpp index 92f0e312..29594e47 100644 --- a/src/desktop/Popup.cpp +++ b/src/desktop/Popup.cpp @@ -116,6 +116,7 @@ void CPopup::onMap() { m_pSubsurfaceHead = std::make_unique<CSubsurface>(this); unconstrain(); + sendScale(); } void CPopup::onUnmap() { @@ -234,3 +235,12 @@ void CPopup::recheckChildrenRecursive() { Vector2D CPopup::size() { return m_vLastSize; } + +void CPopup::sendScale() { + if (m_pWindowOwner) + g_pCompositor->setPreferredScaleForSurface(m_sWLSurface.wlr(), m_pWindowOwner->m_pWLSurface.m_fLastScale); + else if (m_pLayerOwner) + g_pCompositor->setPreferredScaleForSurface(m_sWLSurface.wlr(), m_pLayerOwner->surface.m_fLastScale); + else + UNREACHABLE(); +} |
