grail creates two identical gestures under certain circustances

Bug #1023397 reported by Daniel d'Andrada
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Grail
Fix Released
Medium
Daniel d'Andrada
grail (Ubuntu)
Fix Released
Undecided
Unassigned
Precise
Fix Released
Medium
Francis Ginther

Bug Description

[Impact]
The gestures generated by grail must accurately represent the input from the user. This bug can cause multiple gestures to be created for one action, causing unexpected behavior in client applications. This may manifest as unintended user interactions or as a "locking up" of touch input devices.

[Test Case]
Preconditions:
  there's a subscription for 3-touches Touch gestures

Steps that lead to the bug:
  The user lays 3 fingers over a touchscreen or trackpad and the device momentarily (just for a couple of milliseconds) loses contact with one of the fingers.

That will cause the touch for that finger to end and a new touch to be created for that same finger, all that happening before gesture composition time (60 milliseconds) is reached.

Expected outcome:
  The original gesture ends and a new one with the remaining three touch points is created.

Actual outcome:
  The original gesture ends and two new gestures, both containing the remaining three touch points, are created.

When performing this action in Unity, a touchscreen will appear to "lock up" because one of the gestures is not accepted or rejected properly. Users can attempt many three touch drags to determine if the issue is resolved.

[Regression Potential]
Small. The source code changes are non-trivial, but are the minimum required to resolve the issue. A regression test has been added for this issue. All previous functional and regression test cases continue to pass.

Areas of concern for testing is whether gestures continue to operate properly, and whether touchscreens become unresponsive after gestural or pointer interactions.

Related branches

Changed in utouch-grail:
status: In Progress → Fix Committed
Changed in utouch-grail:
milestone: none → 3.0.6
Changed in utouch-grail:
status: Fix Committed → Fix Released
affects: utouch-grail (Ubuntu) → grail (Ubuntu)
Changed in grail (Ubuntu):
status: New → Fix Released
description: updated
Changed in grail (Ubuntu Precise):
status: New → In Progress
importance: Undecided → High
importance: High → Medium
assignee: nobody → Francis Ginther (fginther)
description: updated
Revision history for this message
Adam Conrad (adconrad) wrote : Please test proposed package

Hello Daniel, or anyone else affected,

Accepted grail into precise-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/grail/3.0.6-0ubuntu0.12.04.01 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in grail (Ubuntu Precise):
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
Daniel d'Andrada (dandrader) wrote :

Since it's hard to reliably reproduce and check the outcome of this bug the verification was done in the following way:
The regression test for this bug, Intermittent3TouchTest, was run against the libgrail 3.0.6-0ubuntu0.12.04.01 provided by precise-proposed and returned success. Therefore I'm marking this bug as verified.

Also no outstanding regressions were noticed while performing unity gestures.

tags: added: verification-done
removed: verification-needed
Revision history for this message
Adam Conrad (adconrad) wrote : Update Released

The verification of this Stable Release Update has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regresssions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package grail - 3.0.6-0ubuntu0.12.04.01

---------------
grail (3.0.6-0ubuntu0.12.04.01) precise-proposed; urgency=low

  * Update debian/watch file for project rename
  * New upstream microrelease, bug fixes only
    - Fix documentation of UGSubscriptionPropertyTapThreshold
    - Properly process gestures that end before composition time (LP: #1020315)
    - Don't expand gestures that have physically ended already (LP: #1023397)
    - Correct behaviour when a touch ends before ownership is gained
      for it (LP: #1026962)
    - Fix include path for correct compilation of some tests
    - Rename project to "Grail"
    - Remove ChangeLog
  * Removed grail v2 symbols
    - Renamed libgrail1 package to libgrail5 due to SONAME bump
  * Rename package and update packaging (lp: #1029643)
    - Added Conflicts and Replaces clauses for libgrail-dev and grail-tools
  * Remove no longer necessary build depends on mtdev and evemu
    - Added 01-remove-mtdev-dependency.patch and
      02-remove-evemu-dependency.patch
 -- Francis Ginther <email address hidden> Mon, 27 Aug 2012 14:18:32 -0500

Changed in grail (Ubuntu Precise):
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.