Index: chrome/android/java/src/org/chromium/chrome/browser/banners/AppBannerView.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/banners/AppBannerView.java b/chrome/android/java/src/org/chromium/chrome/browser/banners/AppBannerView.java |
index 9345693824256146903a5939f53024940756e817..e5f7fde9a514f6d2d473b35956b69ba082e1c327 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/banners/AppBannerView.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/banners/AppBannerView.java |
@@ -242,6 +242,7 @@ public class AppBannerView extends SwipableOverlayView |
mTitleView.setText(mAppData.title()); |
mIconView.setImageDrawable(mAppData.icon()); |
mRatingView.initialize(mAppData.rating()); |
+ setAccessibilityInformation(); |
// Determine how much the user can drag sideways before their touch is considered a scroll. |
mTouchSlop = ViewConfiguration.get(getContext()).getScaledTouchSlop(); |
@@ -250,6 +251,15 @@ public class AppBannerView extends SwipableOverlayView |
updateButtonAppearance(); |
} |
+ /** |
+ * Creates a succinct description about the app being advertised. |
+ */ |
+ private void setAccessibilityInformation() { |
+ String bannerText = getContext().getString( |
+ R.string.app_banner_view_accessibility, mAppData.title(), mAppData.rating()); |
+ setContentDescription(bannerText); |
+ } |
+ |
@Override |
public void onClick(View view) { |
if (mObserver == null) return; |
@@ -431,6 +441,8 @@ public class AppBannerView extends SwipableOverlayView |
fgColor = res.getColor(R.color.app_banner_install_button_fg); |
if (mInstallState == INSTALL_STATE_NOT_INSTALLED) { |
text = mAppData.installButtonText(); |
+ mInstallButtonView.setContentDescription( |
+ getContext().getString(R.string.app_banner_install_accessibility, text)); |
} else { |
text = res.getString(R.string.app_banner_installing); |
} |