react-native/Libraries/Interaction
Hedger Wang 4843a90c1c PanResponder should not hold stale handle for interaction.
Summary:
For now, `PanResponder.create()` return a new object which may hold a handle
for interaction. The handle is created when the gesture starts, and it's cleared
when the gesture finishes.

However, the handle may become stale cause the owner (view) is removed or
re-rendered before the gesture finishes, which leaves InteractionManager
with handles that can never be removed.

In some cases, this blocks the app that waits for InteractionManager to
be idle and having leaky handles prevents InteractionManager from being idle
again.

The fix is to move the handle from the instance to the static variable, and
we'd clear it whenever a gesture finishes.

Reviewed By: sahrens

Differential Revision: D3550699

fbshipit-source-id: 412e9046a6cd9be34b3a7d572258008016a29f41
2016-07-15 11:58:31 -07:00
..
__tests__ Fix bug in cancelling last task in TaskQueue 2016-07-11 16:13:49 -07:00
InteractionManager.js Make InteractionManager tasks cancellable 2016-06-08 22:58:19 -07:00
InteractionMixin.js flowify a few more Libraries 2015-03-26 10:13:38 -08:00
JSEventLoopWatchdog.js Fix JSWatchdog reset 2016-05-03 19:20:26 -07:00
PanResponder.js PanResponder should not hold stale handle for interaction. 2016-07-15 11:58:31 -07:00
TaskQueue.js Fix bug in cancelling last task in TaskQueue 2016-07-11 16:13:49 -07:00