diff options
author | Qt Continuous Integration System <qt-info@nokia.com> | 2011-12-02 12:59:44 (GMT) |
---|---|---|
committer | Qt Continuous Integration System <qt-info@nokia.com> | 2011-12-02 12:59:44 (GMT) |
commit | 235e4fb7316cfe65605c3a035cf3a4f0d167335c (patch) | |
tree | e628e11b5806294492bf8aef62b9eaeef83dd421 | |
parent | 62b02e0ad19bcef3487467f828d05c59151550b6 (diff) | |
parent | 1c9d051399c683bf89dfd1bca54bc3c48d534087 (diff) | |
download | Qt-235e4fb7316cfe65605c3a035cf3a4f0d167335c.zip Qt-235e4fb7316cfe65605c3a035cf3a4f0d167335c.tar.gz Qt-235e4fb7316cfe65605c3a035cf3a4f0d167335c.tar.bz2 |
Merge branch 'master' of git://scm.dev.nokia.troll.no/qt/qt-symbian-team
* 'master' of git://scm.dev.nokia.troll.no/qt/qt-symbian-team:
Correct client rect calculation for MCL
-rw-r--r-- | src/gui/kernel/qapplication_s60.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp index c94d66d..587c0f2 100644 --- a/src/gui/kernel/qapplication_s60.cpp +++ b/src/gui/kernel/qapplication_s60.cpp @@ -273,19 +273,16 @@ void QS60Data::controlVisibilityChanged(CCoeControl *control, bool visible) TRect QS60Data::clientRect() { TRect r = static_cast<CEikAppUi*>(S60->appUi())->ClientRect(); - if (S60->partialKeyboardOpen) { - // Adjust client rect when splitview is open, since for some curious reason - // native side insists that clientRect starts from (0,0) even though status - // pane might be visible. + if (S60->partialKeyboardOpen && !QApplication::testAttribute(Qt::AA_S60DontConstructApplicationPanes)) { + // Adjust client rect when splitview is open + // We want it to take the client rect space as if the splitview keyboard was not there TRect statusPaneRect; TRect mainRect; AknLayoutUtils::LayoutMetricsRect(AknLayoutUtils::EStatusPane, statusPaneRect); AknLayoutUtils::LayoutMetricsRect(AknLayoutUtils::EMainPane, mainRect); int clientAreaHeight = mainRect.Height(); CEikStatusPane *const s = S60->statusPane(); - if (s && s->IsVisible()) - r.Move(0, statusPaneRect.Height()); - else + if (!(s && s->IsVisible())) clientAreaHeight += statusPaneRect.Height(); r.SetHeight(clientAreaHeight); } |