Closed Bug 1223440 Opened 9 years ago Closed 9 years ago

Implement setIsLongpressEnabled for C++ APZ

Categories

(Firefox for Android Graveyard :: Toolbar, defect)

All
Android
defect
Not set
normal

Tracking

(firefox45 fixed)

RESOLVED FIXED
Firefox 45
Tracking Status
firefox45 --- fixed

People

(Reporter: kats, Assigned: rbarker)

References

Details

Attachments

(1 file)

Attached patch Randall's patchSplinter Review
In some Fennec tests (e.g. [1]) we disable the long-press gesture because it can get triggered accidentally due to random delays in the test harness. When it gets triggered it throws off the test and causes an intermittent failure. We need to maintain the ability to disable this gesture when switching to the C++ APZ code. Randall has a patch for this already, it is attached. [1] https://dxr.mozilla.org/mozilla-central/rev/4a7526d26bd47ce2e01f938702b91c95424026ed/mobile/android/tests/browser/robocop/src/org/mozilla/gecko/tests/MotionEventHelper.java#82
Comment on attachment 8685489 [details] [diff] [review] Randall's patch Review of attachment 8685489 [details] [diff] [review]: ----------------------------------------------------------------- r=me with nits fixed ::: gfx/layers/apz/src/APZCTreeManager.cpp @@ +32,5 @@ > #include "TaskThrottler.h" // for TaskThrottler > #include "TreeTraversal.h" // for generic tree traveral algorithms > #include "LayersLogging.h" // for Stringify > #include "Units.h" // for ParentlayerPixel > +#include "GestureEventListener.h" // for GestureEventListener::setLongTapEnabled just |for GestureEventListener|. @@ +1627,5 @@ > +/* static */ void > +APZCTreeManager::SetLongTapEnabled(const bool aLongTapEnabled) > +{ > + APZThreadUtils::RunOnControllerThread( > + new DispatchLongTapEnabledOnControllerThread(aLongTapEnabled)); We can use a NewRunnableMethod or one of the other predefined helpers here as appropriate. ::: gfx/layers/apz/src/APZCTreeManager.h @@ +409,5 @@ > + * > + * On slow running tests, drags and touch events can be misinterpreted > + * as a long tap. This allows tests to disable long tap gesture detection. > + */ > + static void SetLongTapEnabled(const bool aTapGestureEnabled); the |const| is not really needed here
Attachment #8685489 - Flags: review+
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 45
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: