Fix voice access problem on location page.
- Remove the seletcable attribute on footer preference so that voice access can identify learn more. - Apply latest footer preference API to set an action on learn more. - Remove unuse string resource. Test: Verify that talkback and voice access work well. Fix: 189652942 Change-Id: I45fcd21d6a2d693d8b5eaa446aaccb769f1c0c7f
This commit is contained in:
@@ -695,9 +695,8 @@
|
|||||||
emergency responders when you call or text an emergency number.
|
emergency responders when you call or text an emergency number.
|
||||||
</string>
|
</string>
|
||||||
<!-- Location settings footer link to support page [CHAR LIMIT=NONE] -->
|
<!-- Location settings footer link to support page [CHAR LIMIT=NONE] -->
|
||||||
<string name="location_settings_footer_learn_more">
|
<string name="location_settings_footer_learn_more_link" translatable="false">
|
||||||
<a href="<xliff:g example="http://www.google.com"
|
https://support.google.com/android/answer/3467281
|
||||||
id="url"> https://support.google.com/android/answer/3467281</xliff:g>">Learn more</a>
|
|
||||||
</string>
|
</string>
|
||||||
<!-- Location settings footer link content description [CHAR LIMIT=NONE] -->
|
<!-- Location settings footer link content description [CHAR LIMIT=NONE] -->
|
||||||
<string name="location_settings_footer_learn_more_content_description">
|
<string name="location_settings_footer_learn_more_content_description">
|
||||||
|
@@ -71,7 +71,6 @@
|
|||||||
<com.android.settingslib.widget.FooterPreference
|
<com.android.settingslib.widget.FooterPreference
|
||||||
android:title="@string/location_settings_footer_general"
|
android:title="@string/location_settings_footer_general"
|
||||||
android:key="location_footer"
|
android:key="location_footer"
|
||||||
android:selectable="false"
|
|
||||||
settings:searchable="false"
|
settings:searchable="false"
|
||||||
settings:controller="com.android.settings.location.LocationSettingsFooterPreferenceController"/>
|
settings:controller="com.android.settings.location.LocationSettingsFooterPreferenceController"/>
|
||||||
</PreferenceScreen>
|
</PreferenceScreen>
|
||||||
|
@@ -31,6 +31,7 @@ import androidx.preference.Preference;
|
|||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
|
import com.android.settingslib.HelpUtils;
|
||||||
import com.android.settingslib.widget.FooterPreference;
|
import com.android.settingslib.widget.FooterPreference;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@@ -104,15 +105,22 @@ public class LocationSettingsFooterPreferenceController extends LocationBasePref
|
|||||||
+ footerString;
|
+ footerString;
|
||||||
}
|
}
|
||||||
if (mFooterPreference != null) {
|
if (mFooterPreference != null) {
|
||||||
mFooterPreference.setTitle(Html.fromHtml(footerString
|
mFooterPreference.setTitle(Html.fromHtml(footerString));
|
||||||
+ PARAGRAPH_SEPARATOR
|
mFooterPreference.setLearnMoreAction(v -> openLocationLearnMoreLink());
|
||||||
+ mContext.getString(
|
mFooterPreference.setLearnMoreContentDescription(mContext.getString(
|
||||||
R.string.location_settings_footer_learn_more)));
|
R.string.location_settings_footer_learn_more_content_description));
|
||||||
mFooterPreference.setContentDescription(Html.fromHtml(footerString + mContext.getString(
|
|
||||||
R.string.location_settings_footer_learn_more_content_description)));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void openLocationLearnMoreLink() {
|
||||||
|
mFragment.startActivityForResult(
|
||||||
|
HelpUtils.getHelpIntent(
|
||||||
|
mContext,
|
||||||
|
mContext.getString(R.string.location_settings_footer_learn_more_link),
|
||||||
|
/*backupContext=*/""),
|
||||||
|
/*requestCode=*/ 0);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Location footer preference group should always be displayed.
|
* Location footer preference group should always be displayed.
|
||||||
*/
|
*/
|
||||||
|
Reference in New Issue
Block a user