[gesture recognition] Implement improved edge gesture detection to reduce false positives and pass non-edge gestures through to the focused app

Bug #1236290 reported by John Lea
78
This bug affects 13 people
Affects Status Importance Assigned to Milestone
Ubuntu UX
Fix Released
Critical
John Lea
unity8 (Ubuntu)
Fix Released
Critical
Daniel d'Andrada
unity8 (Ubuntu RTM)
Fix Released
Critical
Daniel d'Andrada

Bug Description

(from section "3.1 Edge drag gestures" in the "Unity Gesture UI Guidelines" doc https://docs.google.com/a/canonical.com/document/d/1WJF8YdphrorvHiB5FFVxsitL5Pz-tpZ5-kmtzoD3tFc/edit )

These are Unity level gestures that allow the user to reveal and interact with shell elements like the Launcher. To reduce the number of false positives, edge drag gestures are only triggered when a user drags their finger over the edge of the screen and the drag does not have following charastics:

- If the initial velocity is zero or close to zero an edge gesture is not triggered. The gesture is passed through to the app. This is because the intended gesture is probably a tap or a hold

- If the initial velocity is high an edge gesture is not triggered. The gesture is passed through to the app. This is because the intended gesture is probably a flick

- If the initial direction is not close to perpendicular to the edge an edge gesture is not triggered. This is because the intended gesture may be a vertical drag.

- If at the gesture’s initiation the user has more than one finger touching the screen an edge gesture is not triggered. This is because the intended gesture may be a pinch, spread or rotate.

---------------------------------------
Desired resolution:

- Implement the heuristics defined above for detecting edge gestures to reduce the incidence of false positives.

- The exact values for these heuristics should be easily modifiable so that we can experiment with different values to find the optimal values.

- Gestures performed on the edge of the screen when are no longer detected as edge gestures due to the above heuristics should be passed through to the currently focused app.

Note: The solution must fix the problem described in bug 1350881

Related branches

John Lea (johnlea)
Changed in ubuntu-ux:
assignee: nobody → John Lea (johnlea)
importance: Undecided → Critical
status: New → Fix Committed
Changed in unity8:
status: New → Confirmed
importance: Undecided → Critical
tags: added: sabdfl-ux-requests
Revision history for this message
Michał Sawicz (saviq) wrote :

This is effectively the same as bug #1130102 :/

Revision history for this message
Daniel d'Andrada (dandrader) wrote :

FYI: Groundwork for it is pretty much done but depends on landing "mir using qt scenegraph" first.

Changed in unity8:
assignee: nobody → Daniel d'Andrada (dandrader)
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in unity8 (Ubuntu):
status: New → Confirmed
Bill Filler (bfiller)
tags: added: rtm14
Changed in unity8 (Ubuntu):
importance: Undecided → Critical
assignee: nobody → Daniel d'Andrada (dandrader)
Revision history for this message
Michael Sheldon (michael-sheldon) wrote :

As a slight update to this bug: now that the QtCompositor allows for edge gestures over the OSK this bug makes it difficult to press keys at the far left of the keyboard, as roughly 1/3rd of any far-left key is covered by the edge swiping area.

Bill Filler (bfiller)
tags: removed: rtm14
Michał Sawicz (saviq)
Changed in unity8:
importance: Critical → Wishlist
status: Confirmed → Triaged
Michał Sawicz (saviq)
Changed in unity8 (Ubuntu):
status: Confirmed → Triaged
Michał Sawicz (saviq)
Changed in unity8 (Ubuntu):
importance: Critical → Wishlist
Michał Sawicz (saviq)
no longer affects: unity8
Revision history for this message
Victor Tuson Palau (vtuson) wrote :

putting back as critical, as there is no comment on why this was downgraded. Reviewed with PdMgt this is a critical bug. However, the main concern is reducing false positives. This doesnt necesarily mean the solution in the description is the prescribed approach.

tags: added: rtm14
Changed in unity8 (Ubuntu):
importance: Wishlist → Critical
kevin gunn (kgunn72)
tags: added: touch-2014-11-14
kevin gunn (kgunn72)
tags: added: touch-2014-11-13
removed: touch-2014-11-14
tags: added: ota-1
removed: touch-2014-11-13
Changed in unity8 (Ubuntu):
status: Triaged → In Progress
description: updated
description: updated
tags: added: beta qa-daily-testing
kevin gunn (kgunn72)
tags: added: touch-2014-10-16
kevin gunn (kgunn72)
Changed in unity8 (Ubuntu RTM):
status: New → In Progress
assignee: nobody → Daniel d'Andrada (dandrader)
importance: Undecided → Critical
Revision history for this message
Olli Ries (ories) wrote :

not a target for 10/16, moving to 10/23

tags: added: touch-2014-10-23
removed: touch-2014-10-16
Revision history for this message
Daniel d'Andrada (dandrader) wrote :

Released in uniyt8 version 8.00+14.10.20141013.2

Changed in unity8 (Ubuntu):
status: In Progress → Fix Released
tags: removed: ota-1
Changed in unity8 (Ubuntu RTM):
status: In Progress → Fix Released
Changed in ubuntu-ux:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.