Skip to content

Commit e43c5db

Browse files
NickGerlemanfacebook-github-bot
authored andcommitted
Spannable -> Spanned (#51006)
Summary: Pull Request resolved: #51006 Moves a bit of code, reading spans that we may not control, to query for `Spanned`, instead of `Spannable`, since some code (see last diff around ellipsization) may wrap intermediate Spannables. Changelog: [internal] Reviewed By: joevilches Differential Revision: D73820368 fbshipit-source-id: e107bcf1f2f7d5555fca68fb2209c12c3f99c099
1 parent 746275f commit e43c5db

File tree

2 files changed

+6
-8
lines changed

2 files changed

+6
-8
lines changed

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextViewManager.kt

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
package com.facebook.react.views.text
99

1010
import android.text.Layout
11-
import android.text.Spannable
11+
import android.text.Spanned
1212
import android.view.View
1313
import com.facebook.react.R
1414
import com.facebook.react.internal.SystraceSection
@@ -69,15 +69,14 @@ internal class PreparedLayoutTextViewManager :
6969

7070
// If this text view contains any clickable spans, set a view tag and reset the accessibility
7171
// delegate so that these can be picked up by the accessibility system.
72-
if (layout.text is Spannable) {
73-
val spannableText = layout.text as Spannable
72+
if (layout.text is Spanned) {
73+
val spannedText = layout.text as Spanned
7474

7575
val clickableSpans =
76-
spannableText.getSpans(0, layout.text.length, ReactClickableSpan::class.java)
76+
spannedText.getSpans(0, layout.text.length, ReactClickableSpan::class.java)
7777
view.setTag(
7878
R.id.accessibility_links,
79-
if (clickableSpans.size > 0) AccessibilityLinks(clickableSpans, spannableText)
80-
else null)
79+
if (clickableSpans.size > 0) AccessibilityLinks(clickableSpans, spannedText) else null)
8180
ReactTextViewAccessibilityDelegate.resetDelegate(
8281
view, view.isFocusable, view.importantForAccessibility)
8382
}

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewAccessibilityDelegate.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ package com.facebook.react.views.text
1010
import android.graphics.Paint
1111
import android.graphics.Rect
1212
import android.os.Bundle
13-
import android.text.Spannable
1413
import android.text.Spanned
1514
import android.text.style.AbsoluteSizeSpan
1615
import android.text.style.ClickableSpan
@@ -270,7 +269,7 @@ internal class ReactTextViewAccessibilityDelegate : ReactAccessibilityDelegate {
270269
return null
271270
}
272271

273-
public class AccessibilityLinks(spans: Array<out ClickableSpan>, text: Spannable) {
272+
public class AccessibilityLinks(spans: Array<out ClickableSpan>, text: Spanned) {
274273
private val links: List<AccessibleLink>
275274

276275
init {

0 commit comments

Comments
 (0)