diff options
author | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2018-09-04 21:05:03 +0200 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2018-09-05 08:06:56 +0200 |
commit | f970499651c85d429cc31518ed65c37c33c9936b (patch) | |
tree | eb60f367c5d1339f205d3367351186c7f062e8d5 /vcl/qt5/Qt5Frame.cxx | |
parent | 58069fef2d81a81f35a0a5f40441d841a5636cd0 (diff) |
kde5: add screensaver disable and fixups
- call X11 screensaver disable for preso
- add SAL_NO_MOUSEGRABS check for mouse capture
- call min/max size methods on correct widget
Change-Id: I0dc838d9254d3a7f8848ec8283b0c10d00f36b42
Reviewed-on: https://gerrit.libreoffice.org/60009
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Diffstat (limited to 'vcl/qt5/Qt5Frame.cxx')
-rw-r--r-- | vcl/qt5/Qt5Frame.cxx | 30 |
1 files changed, 21 insertions, 9 deletions
diff --git a/vcl/qt5/Qt5Frame.cxx b/vcl/qt5/Qt5Frame.cxx index 198c75b04b82..895c9742cd89 100644 --- a/vcl/qt5/Qt5Frame.cxx +++ b/vcl/qt5/Qt5Frame.cxx @@ -317,13 +317,23 @@ void Qt5Frame::Show(bool bVisible, bool /*bNoActivate*/) void Qt5Frame::SetMinClientSize(long nWidth, long nHeight) { if (!isChild()) - m_pQWidget->setMinimumSize(nWidth, nHeight); + { + if (m_pTopLevel) + m_pTopLevel->setMinimumSize(nWidth, nHeight); + else + m_pQWidget->setMinimumSize(nWidth, nHeight); + } } void Qt5Frame::SetMaxClientSize(long nWidth, long nHeight) { if (!isChild()) - m_pQWidget->setMaximumSize(nWidth, nHeight); + { + if (m_pTopLevel) + m_pTopLevel->setMaximumSize(nWidth, nHeight); + else + m_pQWidget->setMaximumSize(nWidth, nHeight); + } } void Qt5Frame::Center() @@ -572,19 +582,21 @@ void Qt5Frame::SetPointer(PointerStyle ePointerStyle) void Qt5Frame::CaptureMouse(bool bMouse) { - QWidget* const pWidget = m_pTopLevel ? m_pTopLevel : m_pQWidget; + static const char* pEnv = getenv("SAL_NO_MOUSEGRABS"); + if (pEnv && *pEnv) + return; + if (bMouse) - pWidget->grabMouse(); + m_pQWidget->grabMouse(); else - pWidget->releaseMouse(); + m_pQWidget->releaseMouse(); } void Qt5Frame::SetPointerPos(long nX, long nY) { - QWidget* const pWidget = m_pTopLevel ? m_pTopLevel : m_pQWidget; - QCursor aCursor = pWidget->cursor(); - aCursor.setPos(pWidget->mapToGlobal(QPoint(nX, nY))); - pWidget->setCursor(aCursor); + QCursor aCursor = m_pQWidget->cursor(); + aCursor.setPos(m_pQWidget->mapToGlobal(QPoint(nX, nY))); + m_pQWidget->setCursor(aCursor); } void Qt5Frame::Flush() |