[Android] Avoid double event subscribes in gesture manager #23242
+72
−5
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of Change
Alternative to #23238 and #23183
Adding dynamic gesture recognizers to a control on android did cause us to register multiple times to the Touch event on the platform view from the Gesture Manager. This change instead tries to always unsubscribe first when setting up the gestures (which happens every time the gesture collection changes). Previously we only unsubscribed if we decided we did not need the touch event for any of the gesture recognizers, but then would subscribe again over and over if we decided we did need a touch event.
Issues Fixed
Fixes #23177