@@ -2453,14 +2453,26 @@ public void setPlaceholderText(@Nullable final CharSequence placeholderText) {
2453
2453
if (placeholderTextView == null ) {
2454
2454
placeholderTextView = new AppCompatTextView (getContext ());
2455
2455
placeholderTextView .setId (R .id .textinput_placeholder );
2456
- placeholderTextView .setImportantForAccessibility (View .IMPORTANT_FOR_ACCESSIBILITY_NO );
2456
+ placeholderTextView .setImportantForAccessibility (View .IMPORTANT_FOR_ACCESSIBILITY_YES );
2457
+ placeholderTextView .setAccessibilityLiveRegion (ViewCompat .ACCESSIBILITY_LIVE_REGION_POLITE );
2457
2458
2458
2459
placeholderFadeIn = createPlaceholderFadeTransition ();
2459
2460
placeholderFadeIn .setStartDelay (PLACEHOLDER_START_DELAY );
2460
2461
placeholderFadeOut = createPlaceholderFadeTransition ();
2461
2462
2462
2463
setPlaceholderTextAppearance (placeholderTextAppearance );
2463
2464
setPlaceholderTextColor (placeholderTextColor );
2465
+
2466
+ ViewCompat .setAccessibilityDelegate (
2467
+ placeholderTextView ,
2468
+ new AccessibilityDelegateCompat () {
2469
+ @ Override
2470
+ public void onInitializeAccessibilityNodeInfo (
2471
+ @ NonNull View host , @ NonNull AccessibilityNodeInfoCompat info ) {
2472
+ super .onInitializeAccessibilityNodeInfo (host , info );
2473
+ info .setVisibleToUser (false );
2474
+ }
2475
+ });
2464
2476
}
2465
2477
2466
2478
// If placeholder text is null, disable placeholder.
@@ -2531,7 +2543,6 @@ private void showPlaceholderText() {
2531
2543
TransitionManager .beginDelayedTransition (inputFrame , placeholderFadeIn );
2532
2544
placeholderTextView .setVisibility (VISIBLE );
2533
2545
placeholderTextView .bringToFront ();
2534
- announceForAccessibility (placeholderText );
2535
2546
}
2536
2547
}
2537
2548
0 commit comments