diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java index 648b20f2ee6d76..b11ef472ba7ccb 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java @@ -52,6 +52,7 @@ import com.facebook.react.views.text.CustomStyleSpan; import com.facebook.react.views.text.ReactAbsoluteSizeSpan; import com.facebook.react.views.text.ReactBackgroundColorSpan; +import com.facebook.react.views.text.ReactForegroundColorSpan; import com.facebook.react.views.text.ReactSpan; import com.facebook.react.views.text.ReactTextUpdate; import com.facebook.react.views.text.ReactTypefaceUtils; @@ -692,6 +693,16 @@ public boolean test(ReactBackgroundColorSpan span) { return span.getBackgroundColor() == mReactBackgroundManager.getBackgroundColor(); } }); + + stripSpansOfKind( + sb, + ReactForegroundColorSpan.class, + new SpanPredicate() { + @Override + public boolean test(ReactForegroundColorSpan span) { + return span.getForegroundColor() == getCurrentTextColor(); + } + }); } private void stripSpansOfKind( @@ -731,6 +742,7 @@ private void restoreStyleEquivalentSpans(SpannableStringBuilder workingText) { List spans = new ArrayList<>(); spans.add(new ReactAbsoluteSizeSpan(mTextAttributes.getEffectiveFontSize())); + spans.add(new ReactForegroundColorSpan(getCurrentTextColor())); int backgroundColor = mReactBackgroundManager.getBackgroundColor(); if (backgroundColor != Color.TRANSPARENT) {