qt5base-lts/tests/manual
Mitch Curtis a18e3a3cef Fix key navigation through cells with spans in QTableView.
When navigating with the directional keys or tab/backtab, there are
certain situations where the cell that is edited is incorrect.
For example, consider the table below.

 '^' represents the starting cell and the direction of navigation.
 'c' represents the index that is arrived at as the currentIndex prior to this patch as
reported by view.selectionModel()->currentIndex().
 'x' is the cell that should be edited:

+---+---+---+---+
|   |   | e |   |
+---+---+---+---+
|   | x     |   |
+---+       +---+
|   |     c |   |
+---+---+---+---+
|   |   | ^ |   |
+---+---+---+---+

Before this patch, the cell that will actually be edited is c, rather
than x, so after editing the cell and pressing enter, the previous
contents of the cell will still be shown.

With this patch, currentIndex() will be changed after every call to
cursorMove(). Navigation into and out of cells is not affected because
the visualCursor member in the QTableViewPrivate tracks the keyboard
navigation entry point. If after the up navigation into the span, the
user presses up, the cell entered is 'e', not the cell above 'x'.

Task-number: QTBUG-29239

[ChangeLog][QtWidgets][QTableView][QTableWidget] currentIndex() now
reflects the top left cell when in a span.

Change-Id: I3dc3db46ebba340102860fc4ad98fcaf91484983
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2014-06-06 15:50:58 +02:00
..
bearerex expand tabs and related whitespace fixes in *.{cpp,h,qdoc} 2014-01-13 22:46:50 +01:00
cocoa qpa: Rename qwidgetwindow_qpa_p.h to qwidgetwindow_p.h 2014-05-20 00:20:02 +02:00
corelib/tools QVarLengthArray - check if iterators arguments are valid (in debugmode) 2013-07-12 16:15:44 +02:00
dialogs OSX: add several menuitem roles to support menu shortcuts in dialogs 2014-04-07 08:30:24 +02:00
filetest Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
gestures Compile most manual tests with Qt 4. 2013-03-22 19:52:26 +01:00
highdpi Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
inputmethodhints Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
keypadnavigation Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
lance Merge remote-tracking branch 'origin/stable' into dev 2013-01-22 18:40:13 +01:00
mkspecs Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
network_remote_stresstest Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
network_stresstest Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
qcursor Compile most manual tests with Qt 4. 2013-03-22 19:52:26 +01:00
qdesktopservices QUrl: do not decode "#" in fragments 2013-08-04 04:48:35 +02:00
qdesktopwidget Compile most manual tests with Qt 4. 2013-03-22 19:52:26 +01:00
qgraphicsitem Fix some typos 2014-03-03 18:24:29 +01:00
qgraphicsitemgroup Compile most manual tests with Qt 4. 2013-03-22 19:52:26 +01:00
qgraphicslayout/flicker Compile most manual tests with Qt 4. 2013-03-22 19:52:26 +01:00
qhttpnetworkconnection Fix domain in manual test qhttpnetworkconnection. 2013-07-12 12:41:30 +02:00
qimagereader Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
qlayout Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
qlocale Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
qmetatype QMetaType: remember whether a type was registered with Q_DECLARE_METATYPE 2012-12-11 11:12:08 +01:00
qnetworkaccessmanager/qget Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qnetworkconfiguration QNetworkConfiguration: add public member bearerTypeFamily() 2013-06-28 23:05:57 +02:00
qnetworkconfigurationmanager Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qnetworkreply network: add support for the SPDY protocol 2014-02-19 21:44:15 +01:00
qopenglcontext Support adopting an existing EGLContext in eglfs and xcb 2014-05-09 13:24:55 +02:00
qopengltextureblitter QOpenGLTextureBlitter: fix source rect when origin is top left 2014-02-16 11:06:40 +01:00
qopenglwidget/openglwidget QOpenGLWidget retina support. 2014-03-20 08:35:24 +01:00
qprintdevice_dump QPlatformPrintDevice - New QPA base class 2014-03-17 13:45:31 +01:00
qscreen Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qssloptions Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
qsslsocket SSL: add support for the Next Protocol Negotiation extension 2014-02-11 15:37:10 +01:00
qtabletevent Add painting of points to the QTabletEvents manual test. 2013-06-26 21:06:44 +02:00
qtbug-8933 Compile most manual tests with Qt 4. 2013-03-22 19:52:26 +01:00
qtexteditlist Fix clipping of QTextList decorators. 2013-05-23 12:49:39 +02:00
qtouchevent Compile most manual tests with Qt 4. 2013-03-22 19:52:26 +01:00
qwidget_zorder Compile most manual tests with Qt 4. 2013-03-22 19:52:26 +01:00
repaint Compile most manual tests with Qt 4. 2013-03-22 19:52:26 +01:00
shortcuts Add manual test for shortcuts 2013-08-19 12:13:56 +02:00
socketengine Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
textrendering Compile most manual tests with Qt 4. 2013-03-22 19:52:26 +01:00
transientwindow Added transient window manual test 2013-02-25 15:00:24 +01:00
unc Add manual test for UNC paths 2013-07-19 10:10:19 +02:00
widgetgrab Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
widgets Fix key navigation through cells with spans in QTableView. 2014-06-06 15:50:58 +02:00
windowchildgeometry Cocoa: Allow frameless NSWindow child QWindows 2014-02-05 23:12:50 +01:00
windowflags Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
windowgeometry Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
windowmodality Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
windowtransparency Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
xembed-raster Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
xembed-widgets Update manualtests license to say "part of test suite". 2013-05-26 20:54:51 +02:00
manual.pro Support adopting an existing EGLContext in eglfs and xcb 2014-05-09 13:24:55 +02:00