summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel/qapplication_s60.cpp
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2011-08-31 07:28:23 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2011-08-31 07:28:23 (GMT)
commit4f933036a0ecbc6e6174b312ec2fd6078cea5b70 (patch)
tree2359dbf112a07a005f913aa46765bbf52b8bff95 /src/gui/kernel/qapplication_s60.cpp
parent1e48d40597bbe12321a5a3e42b3595dc17a7f8e7 (diff)
parentdffa9fdeae46974aab53a502af257a83ec319b1b (diff)
downloadQt-4f933036a0ecbc6e6174b312ec2fd6078cea5b70.zip
Qt-4f933036a0ecbc6e6174b312ec2fd6078cea5b70.tar.gz
Qt-4f933036a0ecbc6e6174b312ec2fd6078cea5b70.tar.bz2
Merge branch 'master' of scm.dev.nokia.troll.no:qt/qt-symbian-staging into master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-symbian-staging: Fix Symbian system date format parsing. Fix QXmlSimpleReader auto test failer Fix pointer event mapping when windows are fixed to native orientation Fix incorrect Symbian version check. Fix BLD_INF_RULES.prj_exports statements in Qt libs for shadow builds. Improved support for shadow builds in Symbian. Fix def file paths for Symbian shadow builds Giving QUuid::createUuid() more entropy on Symbian Enable running of XQuery test suite QXmlSimpleReader handle external entity reference file over 1k
Diffstat (limited to 'src/gui/kernel/qapplication_s60.cpp')
-rw-r--r--src/gui/kernel/qapplication_s60.cpp15
1 files changed, 11 insertions, 4 deletions
diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp
index da1c778..361af8b 100644
--- a/src/gui/kernel/qapplication_s60.cpp
+++ b/src/gui/kernel/qapplication_s60.cpp
@@ -582,13 +582,20 @@ QPoint QSymbianControl::translatePointForFixedNativeOrientation(const TPoint &po
{
QPoint pos(pointerEventPos.iX, pointerEventPos.iY);
if (qwidget->d_func()->fixNativeOrientationCalled) {
- QSize wsize = qwidget->size();
- TSize size = Size();
+ QSize wsize = qwidget->size(); // always same as the size in the native orientation
+ TSize size = Size(); // depends on the current orientation
if (size.iWidth == wsize.height() && size.iHeight == wsize.width()) {
qreal x = pos.x();
qreal y = pos.y();
- pos.setX(size.iHeight - y);
- pos.setY(x);
+ if (S60->screenRotation == QS60Data::ScreenRotation90) {
+ // DisplayRightUp
+ pos.setX(size.iHeight - y);
+ pos.setY(x);
+ } else if (S60->screenRotation == QS60Data::ScreenRotation270) {
+ // DisplayLeftUp
+ pos.setX(y);
+ pos.setY(size.iWidth - x);
+ }
}
}
return pos;