Go to file
Gunnar Sletta e63f861e52 Add support for filtering in the qevdevtouch plugin
This patch adds a Kalman filter to the evdev touch plugin
which samples velocity and position in x and y direction
and uses this to emit touch points in sync with the application's
repaint rate. The filter also allows for basic prediction
based on current position and velocity estimates.

Filtering is opt-in, and can be enabled by passing for instance
 > app -plugin evdevtouch:/dev/touchscreen:filtered:prediction=16

The logic relies on a stable QWindow::requestUpdate() and will work
best in combination with QtQuick and blocking swap buffers (or
equivalent). QScreen::refreshRate() will also have to be reasonably
accurate.

[ChangeLog][Platform Specific Changes] The evdevtouch plugin now
has the option to apply filtering and prediction. Enabled by
passing "filtered" as an argument. Prediction can be specified
by passing "prediction=X" as an argument, where X is in
milliseconds.

Change-Id: I682db4386fe3a7cef8b4a08ea0d16c1491efb873
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2016-12-13 13:59:46 +00:00
bin don't include injected headers into linker version script 2016-10-14 09:00:29 +00:00
config.tests PCRE2: port QRegularExpression to PCRE2 2016-12-12 15:22:01 +00:00
dist Add changes file for 5.7.1 2016-11-03 05:12:00 +00:00
doc Merge remote-tracking branch 'origin/5.8' into dev 2016-12-13 09:39:20 +01:00
examples Merge remote-tracking branch 'origin/5.8' into dev 2016-12-13 09:39:20 +01:00
lib Purge all fonts 2015-08-18 19:59:14 +00:00
mkspecs Merge remote-tracking branch 'origin/5.8' into dev 2016-12-13 09:39:20 +01:00
qmake Merge remote-tracking branch 'origin/5.8' into dev 2016-12-13 09:39:20 +01:00
src Add support for filtering in the qevdevtouch plugin 2016-12-13 13:59:46 +00:00
tests Merge remote-tracking branch 'origin/5.8' into dev 2016-12-13 09:39:20 +01:00
tools Merge remote-tracking branch 'origin/5.8' into dev 2016-12-13 09:39:20 +01:00
util Handle indirect sibling selector 2016-07-27 20:18:02 +00:00
.gitattributes Update the git-archive export options 2012-09-07 15:39:31 +02:00
.gitignore rename configure.exe => configureapp.exe 2016-10-04 08:25:08 +00:00
.qmake.conf Bump version 2016-08-29 14:35:49 +02:00
.tag Update the git-archive export options 2012-09-07 15:39:31 +02:00
config_help.txt PCRE2: port QRegularExpression to PCRE2 2016-12-12 15:22:01 +00:00
configure Merge remote-tracking branch 'origin/5.8' into dev 2016-12-13 09:39:20 +01:00
configure.bat rename configure.exe => configureapp.exe 2016-10-04 08:25:08 +00:00
configure.json Merge remote-tracking branch 'origin/5.8' into dev 2016-12-13 09:39:20 +01:00
configure.pri move license check to qmake-based configure system 2016-12-08 12:40:53 +00:00
header.BSD Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.BSD-OLD Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.COMM Add header template for commercial only modules 2015-10-19 10:37:18 +00:00
header.FDL Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.FDL-OLD Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.GPL Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.GPL-EXCEPT Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.LGPL Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.LGPL3 Update copyright headers 2015-02-11 06:49:51 +00:00
header.LGPL3-COMM Update copyright headers 2015-02-11 06:49:51 +00:00
header.LGPL21 Update copyright headers 2015-02-11 06:49:51 +00:00
header.LGPL-NOGPL2 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
header.LGPL-ONLY Update copyright headers 2015-02-11 06:49:51 +00:00
INSTALL Doc: Update links in INSTALL file 2015-02-16 09:06:41 +00:00
LGPL_EXCEPTION.txt Update copyright headers 2015-02-11 06:49:51 +00:00
LICENSE.FDL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.GPL2 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3-EXCEPT Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPLv3 Expand license scope from "Qt GUI Toolkit" to "Qt Toolkit" 2016-06-15 07:02:32 +00:00
LICENSE.LGPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.LGPLv3 Expand license scope from "Qt GUI Toolkit" to "Qt Toolkit" 2016-06-15 07:02:32 +00:00
LICENSE.LGPLv21 Expand license scope from "Qt GUI Toolkit" to "Qt Toolkit" 2016-06-15 07:02:32 +00:00
LICENSE.PREVIEW.COMMERCIAL Add new license header templates and license files 2016-01-14 20:43:46 +00:00
qtbase.pro Merge remote-tracking branch 'origin/5.7' into 5.8 2016-10-06 20:12:27 +02:00
sync.profile Merge remote-tracking branch 'origin/5.8' into dev 2016-11-17 14:43:26 +01:00