370d421495
An application might choose to change focus when receiving mouse/touch press/move events. This is in conflict with Qt assigning focus on touch release (QPlatformIntegration::SetFocusOnTouchRelease), since Qt might then reassign focus to something else. An example of this is seen with the "frozencolumn" example. Here, when the user double clicks on a cell, the application creates an 'edit' widget inside the cell that gets focus. But at soon as the last release is sent, Qt will change focus to the focus proxy of QScrollArea instead. This patch will introduce an exception to setting focus on release, so that we only set focus if we detect that focus didn't change (by the app) while processing press/move events. Task-number: QTBUG-39390 Change-Id: I7b398b59e3175265afd2fcd938e11f88155abc89 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com> |
||
---|---|---|
bin | ||
config.tests | ||
dist | ||
doc | ||
examples | ||
lib | ||
mkspecs | ||
qmake | ||
src | ||
tests | ||
tools | ||
util | ||
.gitattributes | ||
.gitignore | ||
.qmake.conf | ||
.tag | ||
configure | ||
configure.bat | ||
header.BSD | ||
header.FDL | ||
header.LGPL | ||
header.LGPL3 | ||
header.LGPL21 | ||
header.LGPL-ONLY | ||
INSTALL | ||
LGPL_EXCEPTION.txt | ||
LICENSE.FDL | ||
LICENSE.LGPLv3 | ||
LICENSE.LGPLv21 | ||
LICENSE.PREVIEW.COMMERCIAL | ||
qtbase.pro | ||
sync.profile |