diff options
author | Peter Penz <ppenz@openismus.com> | 2011-01-21 11:25:40 +0100 |
---|---|---|
committer | Holger Schröder <holger.schroeder.ext@basyskom.de> | 2011-01-25 16:09:03 +0100 |
commit | 4e94468f9498371082c810dedc6688af731bae5b (patch) | |
tree | 9dd0f03ce478a68639c1e2223907a87864d362c9 | |
parent | d696f87ce24df0aa277a93f23755cfeaefd4c1ab (diff) |
Changes: Clear the pixmap cache when the window is not shown on the display anymore or has been minimized.
RevBy: Armin Berres
Details: Widgets like MScalableImage and MLabel (when showing rich-texts) use QPixmapCache for the caching of pixmaps. If the window gets invisible or has been minimized there is no need to keep the pixmaps in the cache.
-rw-r--r-- | src/corelib/widgets/mwindow.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/corelib/widgets/mwindow.cpp b/src/corelib/widgets/mwindow.cpp index 2f0181f1..b362cbfb 100644 --- a/src/corelib/widgets/mwindow.cpp +++ b/src/corelib/widgets/mwindow.cpp @@ -547,6 +547,8 @@ void MWindowPrivate::doExitDisplayEvent() delete delayedMOnDisplayChangeEvent; delayedMOnDisplayChangeEvent = 0; } + + QPixmapCache::clear(); } void MWindowPrivate::_q_exitDisplayStabilized() @@ -663,6 +665,7 @@ void MWindowPrivate::handleWindowStateChangeEvent(QWindowStateChangeEvent *event // Check if window has entered / left the switcher if (!event->oldState().testFlag(Qt::WindowMinimized) && q->windowState().testFlag(Qt::WindowMinimized)) { doSwitcherEntered(); + QPixmapCache::clear(); } else if (event->oldState().testFlag(Qt::WindowMinimized) && !q->windowState().testFlag(Qt::WindowMinimized)) { |