-
Enhancement
-
Resolution: Fixed
-
P4
-
8u20
On some hardware we have a need to do additional cleanup of touch events. We should provide a way to define what touch event clean-up is done on each device.
To do this we can provide a pipeline that takes a series of filters:
- Common filters, the list of which is set in the system property monocle.input.touchFilters
- Per-device filters, the list of which is set in the system property monocle.input.<product ID>.touchFilters, where <product ID> is the quartet of hex values that udev reports as the product on Linux, with the form "<bus>/<vendor>/<product>/<value>". For example, "18/eef/20/1". This is already the format we are using for applying reflection, rotation, translation and scaling to touch points.
- Per input device processor filters, handling features such as motion compression and mapping IDs to points
Filters need to be applied in priority order. Some filters need to be applied before touch IDs are assigned to points; some filters need to be applied afterwards.
This will allow the decision as to what touch event clean-up is done to be made at deployment time. It will also allow the creation of custom filters.
To do this we can provide a pipeline that takes a series of filters:
- Common filters, the list of which is set in the system property monocle.input.touchFilters
- Per-device filters, the list of which is set in the system property monocle.input.<product ID>.touchFilters, where <product ID> is the quartet of hex values that udev reports as the product on Linux, with the form "<bus>/<vendor>/<product>/<value>". For example, "18/eef/20/1". This is already the format we are using for applying reflection, rotation, translation and scaling to touch points.
- Per input device processor filters, handling features such as motion compression and mapping IDs to points
Filters need to be applied in priority order. Some filters need to be applied before touch IDs are assigned to points; some filters need to be applied afterwards.
This will allow the decision as to what touch event clean-up is done to be made at deployment time. It will also allow the creation of custom filters.