Skip to content

Commit 2b97682

Browse files
authored
ISSUE-319-Accessibility not working perfectly in Android 11 devices (#323)
* accessibility fix for android 11 version * accessibility fix - issue 319 * reverting unused changes * Update the `compileSdkVersion` for both lib and example (#324) * Use API level 30 for Android SDK * Update the compileSdkVersion for example app * accessibility fix for android 11 version * accessibility fix - issue 319 * reverting unused changes * modified as per review comment
1 parent 269e421 commit 2b97682

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

src/android/src/main/java/com/reactnativecommunity/slider/ReactSlider.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ public void onPopulateAccessibilityEvent(AccessibilityEvent event) {
111111
super.onPopulateAccessibilityEvent(event);
112112
if (event.getEventType() == AccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUSED ||
113113
(event.getEventType() == AccessibilityEvent.TYPE_VIEW_SELECTED && this.isAccessibilityFocused())) {
114-
this.setupAccessibility();
114+
this.setupAccessibility((int) mValue);
115115
}
116116
}
117117

@@ -139,9 +139,8 @@ public void run() {
139139
}
140140
}
141141

142-
private void setupAccessibility() {
142+
public void setupAccessibility(int index) {
143143
if (mAccessibilityUnits != null && mAccessibilityIncrements != null && mAccessibilityIncrements.size() - 1 == (int)mMaxValue) {
144-
int index = (int)mValue;
145144
String sliderValue = mAccessibilityIncrements.get(index);
146145
int stringLength = mAccessibilityUnits.length();
147146

src/android/src/main/java/com/reactnativecommunity/slider/ReactSliderManager.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,10 @@ public void setValue(ReactSlider view, double value) {
149149
view.setOnSeekBarChangeListener(null);
150150
view.setValue(value);
151151
view.setOnSeekBarChangeListener(ON_CHANGE_LISTENER);
152+
if (view.isAccessibilityFocused() && Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
153+
int index = (int)value;
154+
view.setupAccessibility(index);
155+
}
152156
}
153157

154158
@ReactProp(name = "minimumValue", defaultDouble = 0d)

0 commit comments

Comments
 (0)