From b57bf090aab0828459e9cda4a7052a1d07039cfa Mon Sep 17 00:00:00 2001 From: Marc Mulcahy Date: Tue, 30 Apr 2019 14:38:22 -0500 Subject: [PATCH 1/2] Update Android view state when accessibility states are changed. --- .../facebook/react/uimanager/BaseViewManager.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java index 3135afa71120f5..742aa0fff418b0 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java @@ -146,11 +146,22 @@ public void setViewStates(@Nonnull T view, @Nullable ReadableArray accessibility return; } view.setTag(R.id.accessibility_states, accessibilityStates); + view.setSelected(false); + view.setEnabled(true); + boolean shouldUpdateContentDescription = false; for (int i = 0; i < accessibilityStates.size(); i++) { String state = accessibilityStates.getString(i); if (sStateDescription.containsKey(state)) { - updateViewContentDescription(view); + shouldUpdateContentDescription = true; } + if (state.equals("selected")) { + view.setSelected(true); + } else if (state.equals("disabled")) { + view.setEnabled(false); + } + } + if (shouldUpdateContentDescription) { + updateViewContentDescription(view); } } From 8a3b7c4ceeac6c9f489e1898cf1c8bec45abf640 Mon Sep 17 00:00:00 2001 From: Christoph Nakazawa Date: Tue, 7 May 2019 10:26:55 +0100 Subject: [PATCH 2/2] Update BaseViewManager.java --- .../com/facebook/react/uimanager/BaseViewManager.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java b/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java index 742aa0fff418b0..bb559a64b61bc3 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java @@ -152,16 +152,16 @@ public void setViewStates(@Nonnull T view, @Nullable ReadableArray accessibility for (int i = 0; i < accessibilityStates.size(); i++) { String state = accessibilityStates.getString(i); if (sStateDescription.containsKey(state)) { - shouldUpdateContentDescription = true; + shouldUpdateContentDescription = true; } if (state.equals("selected")) { - view.setSelected(true); + view.setSelected(true); } else if (state.equals("disabled")) { - view.setEnabled(false); + view.setEnabled(false); } } if (shouldUpdateContentDescription) { - updateViewContentDescription(view); + updateViewContentDescription(view); } }