aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAntti Kervinen <antti.kervinen@nokia.com>2010-09-08 15:09:26 +0300
committerDaniel d'Andrada <daniel.dandrada@nokia.com>2010-09-15 09:35:36 +0300
commitf2d26be44103107f9dda3a3f740d8b43a6357fb0 (patch)
treee17d1eb3479e7b073974097b7855ca96794abb62 /src
parent9c97a8f71501df5005dece8c1280bcf9910b0e5f (diff)
Fixes: NB#190565 - displayEntered can be received by application page without visible window
RevBy: Daniel d'Andrada Details: MWidget::setVisible(true) fixed to check the visibility of the widget by calling isOnDisplay(). This is a bit slower than the previous implementation, but setVisible(true) is not called very frequently. Test added to MWidget unit test.
Diffstat (limited to 'src')
-rw-r--r--src/corelib/widgets/core/mwidget.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/corelib/widgets/core/mwidget.cpp b/src/corelib/widgets/core/mwidget.cpp
index 917d7365..e498f1ac 100644
--- a/src/corelib/widgets/core/mwidget.cpp
+++ b/src/corelib/widgets/core/mwidget.cpp
@@ -503,7 +503,11 @@ void MWidget::setVisible(bool visible)
// show() called: resolve visibility
if (visible) {
- d->resolveIsOnDisplay(this, &visibleSceneRect);
+ if (isOnDisplay()) {
+ MOnDisplayChangeEvent event(MOnDisplayChangeEvent::FullyOnDisplay,
+ visibleSceneRect);
+ d->resolveIsOnDisplay(this, &visibleSceneRect, &event);
+ }
// hide() called: explicitly send FullyOffDisplay
} else {
MOnDisplayChangeEvent event(MOnDisplayChangeEvent::FullyOffDisplay,