From 9aab25ec536473ffe6d22c5efeae8fea6bd769be Mon Sep 17 00:00:00 2001 From: AntoineDoubovetzky Date: Fri, 25 Mar 2022 05:14:06 -0700 Subject: [PATCH] (AppState) fix removeEventListener adding another listener when type is blur or focus (#33491) Summary: I noticed the `AppState.removeEventListener` was in fact calling `addListener` instead of `removeListener` when type is blur or focus. I know this method is deprecated but it can't hurt to fix it. ## Changelog [General] [Fixed] - AppState.removeEventListener correctly removes listener for blur and focus events Pull Request resolved: https://github.com/facebook/react-native/pull/33491 Test Plan: I've thought about adding a unit test, but it isn't that easy since AppState is mocked and the method is deprecated so I don't think it is worth investing too much for it. Reviewed By: cortinico Differential Revision: D35139808 Pulled By: GijsWeterings fbshipit-source-id: 9d8ba157db3a62ea53759e1246f483182faf12f1 --- Libraries/AppState/AppState.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Libraries/AppState/AppState.js b/Libraries/AppState/AppState.js index 89459dd4104562..4c091c00e8d7e4 100644 --- a/Libraries/AppState/AppState.js +++ b/Libraries/AppState/AppState.js @@ -154,7 +154,7 @@ class AppState { case 'focus': // $FlowIssue[invalid-tuple-arity] Flow cannot refine handler based on the event type // $FlowIssue[incompatible-call] - emitter.addListener('appStateFocusChange', listener); + emitter.removeListener('appStateFocusChange', listener); return; } throw new Error('Trying to unsubscribe from unknown event: ' + type);