summaryrefslogtreecommitdiff
path: root/doc/src/snippets/code/src_sql_kernel_qsqlindex.cpp
diff options
context:
space:
mode:
authorLaszlo Agocs <laszlo.p.agocs@nokia.com>2011-08-29 13:24:53 +0300
committerLaszlo Agocs <laszlo.p.agocs@nokia.com>2011-08-29 14:56:39 +0300
commit8f7535c3939e78f0c397d32945b577a98c234980 (patch)
tree646b8614fb90e3cb66f2b43633220a9bf2732c85 /doc/src/snippets/code/src_sql_kernel_qsqlindex.cpp
parent2485dea76dc36acb8fa9a5506ee66971ed89ff10 (diff)
downloadqt4-tools-8f7535c3939e78f0c397d32945b577a98c234980.tar.gz
Fix pointer event mapping when windows are fixed to native orientation
When the "fix native orientation" feature is enabled via WA_SymbianNoSystemRotation, QSymbianControl has to do an extra mapping for all pointer events because in this special mode the RWindow and thus the CCoeControl will "rotate" (i.e. will change their dimensions according to the orientation of the device), however the EGL window surface and the QWidget will remain locked to the native orientation of the device (typically portrait). This means that the pointer events will correspond to the current orientation of the device, which is not what Qt wants: typically a graphics view or similar will perform the transformation of the input events too, and therefore passing already-transformed events is wrong (as it would result in double transformation). To solve this, all pointer event coordinates are mapped back to the native orientation. This had a problem however: It only took the traditional portrait and landscape modes into account. When there are two landscape modes (i.e. rotations of both 90 and 270 degrees are supported), the mapping of pointer events generated wrong results in one of them because they treated them the same. The patch corrects this, so all three orientations will result in proper input behavior, even when NoSystemRotation is set. Task-number: QT-5236 Reviewed-by: Sami Merila
Diffstat (limited to 'doc/src/snippets/code/src_sql_kernel_qsqlindex.cpp')
0 files changed, 0 insertions, 0 deletions