summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel/qapplication_s60.cpp
diff options
context:
space:
mode:
authorGareth Stockwell <ext-gareth.stockwell@nokia.com>2010-09-02 12:07:59 (GMT)
committerGareth Stockwell <ext-gareth.stockwell@nokia.com>2010-09-02 12:56:07 (GMT)
commit55b067d14d8c12bd29b03c17e0281a11a49f95ca (patch)
treeec195e466bbd5ac15f727f1a1981962dc4279479 /src/gui/kernel/qapplication_s60.cpp
parent9d88ff485e93e9701719263ce0a46cb86b0398ca (diff)
downloadQt-55b067d14d8c12bd29b03c17e0281a11a49f95ca.zip
Qt-55b067d14d8c12bd29b03c17e0281a11a49f95ca.tar.gz
Qt-55b067d14d8c12bd29b03c17e0281a11a49f95ca.tar.bz2
Update QDesktopWidget geometry when S60 furniture visibility changes
Task-number: QTBUG-13204 Reviewed-by: axis
Diffstat (limited to 'src/gui/kernel/qapplication_s60.cpp')
-rw-r--r--src/gui/kernel/qapplication_s60.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp
index 21f930e..e937918 100644
--- a/src/gui/kernel/qapplication_s60.cpp
+++ b/src/gui/kernel/qapplication_s60.cpp
@@ -129,6 +129,12 @@ void QS60Data::setStatusPaneAndButtonGroupVisibility(bool statusPaneVisible, boo
statusPaneVisibilityChanged = (s->IsVisible() != statusPaneVisible);
s->MakeVisible(statusPaneVisible);
}
+ if (buttonGroupVisibilityChanged || statusPaneVisibilityChanged) {
+ const QSize size = qt_TRect2QRect(static_cast<CEikAppUi*>(S60->appUi())->ClientRect()).size();
+ const QSize oldSize; // note that QDesktopWidget::resizeEvent ignores the QResizeEvent contents
+ QResizeEvent event(size, oldSize);
+ QApplication::instance()->sendEvent(QApplication::desktop(), &event);
+ }
if (buttonGroupVisibilityChanged && !statusPaneVisibilityChanged && QApplication::activeWindow())
// Ensure that control rectangle is updated
static_cast<QSymbianControl *>(QApplication::activeWindow()->winId())->handleClientAreaChange();