diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2010-09-30 07:42:21 (GMT) |
---|---|---|
committer | Jason McDonald <jason.mcdonald@nokia.com> | 2010-10-01 04:51:50 (GMT) |
commit | 89f383cdd9aa9d928341b15f99ecd9396b2f43cb (patch) | |
tree | d4c80c619073b7402faeec42dc23ec231292fdc3 | |
parent | bc93f0cb3af281957101b1427635044ac94dac5d (diff) | |
download | Qt-89f383cdd9aa9d928341b15f99ecd9396b2f43cb.zip Qt-89f383cdd9aa9d928341b15f99ecd9396b2f43cb.tar.gz Qt-89f383cdd9aa9d928341b15f99ecd9396b2f43cb.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
(cherry picked from commit 0725abc4607755833a1eb7cb9e083add48d03a88)
-rw-r--r-- | src/gui/kernel/qapplication_s60.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp index e937918..988823b 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 |