summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@digia.com>2010-09-30 07:42:21 (GMT)
committerMiikka Heikkinen <miikka.heikkinen@digia.com>2010-09-30 08:45:41 (GMT)
commit0725abc4607755833a1eb7cb9e083add48d03a88 (patch)
tree8e709eaa86d43bf44a4117eeb9f0d400af5a5d55
parentb9ab21b03dfebc7c5f8b4cbc2fdd2b880c7d9f99 (diff)
downloadQt-0725abc4607755833a1eb7cb9e083add48d03a88.zip
Qt-0725abc4607755833a1eb7cb9e083add48d03a88.tar.gz
Qt-0725abc4607755833a1eb7cb9e083add48d03a88.tar.bz2
Fix QApplication::desktop()->availableGeometry() for Symbian
Since screen geometry changes before client area geometry is changed in Eikon, we need to send two resize events, one for screen area change and one for client area change. Note that the correct way to detect client area change in applications is to connect to QApplication::desktop() signal workAreaResized(int) instead of filtering for resize events meant for QDesktopWidget. Task-number: QTBUG-14058 Reviewed-by: Jason Barron
-rw-r--r--src/gui/kernel/qapplication_s60.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp
index 2be3ed3..1127c84 100644
--- a/src/gui/kernel/qapplication_s60.cpp
+++ b/src/gui/kernel/qapplication_s60.cpp
@@ -673,6 +673,9 @@ void QSymbianControl::HandleStatusPaneSizeChange()
{
QS60MainAppUi *s60AppUi = static_cast<QS60MainAppUi *>(S60->appUi());
s60AppUi->HandleStatusPaneSizeChange();
+ // Send resize event to trigger desktopwidget workAreaResized signal
+ QResizeEvent e(qt_desktopWidget->size(), qt_desktopWidget->size());
+ QApplication::sendEvent(qt_desktopWidget, &e);
}
#endif