fix(core): handle GestureObservers the same as event listeners #10538
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.
This PR is related to #10537, but can be merged independently. Whichever is merged first will cause minor conflicts with the other, but it's a simple rebase that I'd be happy to take care of.
PR Checklist
What is the current behavior?
Although listeners for gesture events are set up in the same way as any other events, there are subtle differences in how they get handled.
eventName-callback-thisArg
gesture observer multiple times.callback-thisArg
identity.thisArg
, even falsy values.What is the new behavior?
eventName-callback-thisArg
tuple.thisArg
arguments, e.g. viaviewCommon.removeEventListener("tap")
_observe
is nowprotected
rather thanpublic
. My thought is that we're exposing far too many internal APIs and it prevents us from refactoring our internals in future. This API was not used in any tests, nor was it documented, and is prefixed with_
, so it's clearly internal-looking to begin with.