diff options
author | Bernd Weimer <bweimer@blackberry.com> | 2013-07-25 09:36:10 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-09-12 10:36:23 +0200 |
commit | d8ba940b949d60f43fe3b2a4e2973b7a2fdc4b2a (patch) | |
tree | f9c3390422730ebd9c7f402c8d5572f93a5e8137 /src/plugins/platforms/qnx/qqnxwindow.cpp | |
parent | 23964bc338b9b00e204d45a917a0bb330cb795c4 (diff) |
QNX: Prevent rendering when app is minimized
Windows will only be exposed and hence rendered when they are not
minimized. This will save useless computations and hence battery.
Change-Id: I83166cc6c3d89e878106c998a35890dd7788ed8a
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Diffstat (limited to 'src/plugins/platforms/qnx/qqnxwindow.cpp')
-rw-r--r-- | src/plugins/platforms/qnx/qqnxwindow.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/plugins/platforms/qnx/qqnxwindow.cpp b/src/plugins/platforms/qnx/qqnxwindow.cpp index 9b9576c88b..61b13099fd 100644 --- a/src/plugins/platforms/qnx/qqnxwindow.cpp +++ b/src/plugins/platforms/qnx/qqnxwindow.cpp @@ -75,6 +75,7 @@ QQnxWindow::QQnxWindow(QWindow *window, screen_context_t context) m_screen(0), m_parentWindow(0), m_visible(false), + m_exposed(true), m_windowState(Qt::WindowNoState), #if !defined(QT_NO_OPENGL) m_platformOpenGLContext(0), @@ -334,9 +335,19 @@ void QQnxWindow::setOpacity(qreal level) // the transparency will look wrong... } +void QQnxWindow::setExposed(bool exposed) +{ + qWindowDebug() << Q_FUNC_INFO << "window =" << window() << "expose =" << exposed; + + if (m_exposed != exposed) { + m_exposed = exposed; + QWindowSystemInterface::handleExposeEvent(window(), window()->geometry()); + } +} + bool QQnxWindow::isExposed() const { - return m_visible; + return m_visible && m_exposed; } QSize QQnxWindow::requestedBufferSize() const |