GNOME Bugzilla – Bug 723294
Add touchscreen support for the testing widget
Last modified: 2014-02-13 14:11:39 UTC
Touchscreen doesn't work correctly with the testing widget. See: https://bugzilla.redhat.com/show_bug.cgi?id=1051045
Created attachment 267649 [details] [review] add touch support
Adding GDK_TOUCH_MASK fixes this bug, however it is weird. GtkDrawingArea receives button_press_event with delay (sometimes e.g. 2 seconds) without GDK_TOUCH_MASK. With this mask it works like charm. Carlos could you look at please?
What I think is necessary (and sufficient) is adding GDK_BUTTON_RELEASE_MASK, the lack of this in the drawing area event mask confuses GtkScrolledWindow kinetic scroll implementation, which thinks the touch is never released, and triggers the hold-still-to-start-selection gesture. GDK_TOUCH_MASK also fixes this because it ensures the full touch sequence (begin/update/end) is listened for, but GDK_BUTTON_RELEASE_MASK should be sufficient as we're just checking pointer (emulation) features in that dialog.
Created attachment 268267 [details] [review] add touch support Use GDK_BUTTON_RELEASE_MASK instead of GDK_TOUCH_MASK, untested.
Created attachment 268270 [details] [review] remove unnecessary events There are unnecessary events for GtkLabel, so remove it...
Comment on attachment 268267 [details] [review] add touch support I did test that one :), makes things work as expected too.
Review of attachment 268270 [details] [review]: The commit message really needs more information than that.
Comment on attachment 268270 [details] [review] remove unnecessary events This patch is probably stupidity. It looks like glade is producing this code in some cases by default...
Comment on attachment 268267 [details] [review] add touch support Committed to master as commit 0c5044609d26b8a55f1b64b272f2587925cc513b.