Fix an action bar accessibility regression
A previous fix introduced a problem with building content descriptions for accessibility of the home/up button in one code path while setting display options flags. Correct the issue and also refresh content descriptions immediately when setting related attributes one at a time. Bug 11542264 Change-Id: I40d07036d1026e8e40c77c47ac377c82edd827b4
This commit is contained in:
@@ -526,7 +526,7 @@ public class ActionBarView extends AbsActionBarView {
|
|||||||
if (mLogoNavItem != null) {
|
if (mLogoNavItem != null) {
|
||||||
mLogoNavItem.setTitle(title);
|
mLogoNavItem.setTitle(title);
|
||||||
}
|
}
|
||||||
mUpGoerFive.setContentDescription(buildHomeContentDescription());
|
updateHomeAccessibility(mUpGoerFive.isEnabled());
|
||||||
}
|
}
|
||||||
|
|
||||||
public CharSequence getSubtitle() {
|
public CharSequence getSubtitle() {
|
||||||
@@ -544,7 +544,7 @@ public class ActionBarView extends AbsActionBarView {
|
|||||||
(!TextUtils.isEmpty(mTitle) || !TextUtils.isEmpty(mSubtitle));
|
(!TextUtils.isEmpty(mTitle) || !TextUtils.isEmpty(mSubtitle));
|
||||||
mTitleLayout.setVisibility(visible ? VISIBLE : GONE);
|
mTitleLayout.setVisibility(visible ? VISIBLE : GONE);
|
||||||
}
|
}
|
||||||
mUpGoerFive.setContentDescription(buildHomeContentDescription());
|
updateHomeAccessibility(mUpGoerFive.isEnabled());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setHomeButtonEnabled(boolean enable) {
|
public void setHomeButtonEnabled(boolean enable) {
|
||||||
@@ -681,7 +681,7 @@ public class ActionBarView extends AbsActionBarView {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Make sure the home button has an accurate content description for accessibility.
|
// Make sure the home button has an accurate content description for accessibility.
|
||||||
updateHomeAccessibility(!mUpGoerFive.isEnabled());
|
updateHomeAccessibility(mUpGoerFive.isEnabled());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setIcon(Drawable icon) {
|
public void setIcon(Drawable icon) {
|
||||||
@@ -1332,11 +1332,13 @@ public class ActionBarView extends AbsActionBarView {
|
|||||||
|
|
||||||
public void setHomeActionContentDescription(CharSequence description) {
|
public void setHomeActionContentDescription(CharSequence description) {
|
||||||
mHomeDescription = description;
|
mHomeDescription = description;
|
||||||
|
updateHomeAccessibility(mUpGoerFive.isEnabled());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setHomeActionContentDescription(int resId) {
|
public void setHomeActionContentDescription(int resId) {
|
||||||
mHomeDescriptionRes = resId;
|
mHomeDescriptionRes = resId;
|
||||||
mHomeDescription = resId != 0 ? getResources().getText(resId) : null;
|
mHomeDescription = resId != 0 ? getResources().getText(resId) : null;
|
||||||
|
updateHomeAccessibility(mUpGoerFive.isEnabled());
|
||||||
}
|
}
|
||||||
|
|
||||||
static class SavedState extends BaseSavedState {
|
static class SavedState extends BaseSavedState {
|
||||||
|
|||||||
Reference in New Issue
Block a user