Accessibility framework & Settings to support the Android accessibility intro & footer

- Implements a TopIntroPreference into the Accessibility Settings base fragment.
- Creates a protected API or variable to provide content to support if needed.

Bug: 218407398
Test: make RunSettingsRoboTests ROBOTEST_FILTER=ToggleFeaturePreferenceFragmentTest
Change-Id: Id0f7700bb8f62960951913db8bd034fce1b15a90
This commit is contained in:
menghanli
2022-02-08 14:06:24 +08:00
parent d920ad507c
commit 426e781f19
2 changed files with 35 additions and 0 deletions

View File

@@ -51,6 +51,7 @@ import com.android.settings.R;
import com.android.settings.accessibility.AccessibilityDialogUtils.DialogType;
import com.android.settings.accessibility.AccessibilityUtil.UserShortcutType;
import com.android.settings.testutils.shadow.ShadowFragment;
import com.android.settingslib.widget.TopIntroPreference;
import org.junit.Before;
import org.junit.Test;
@@ -81,6 +82,7 @@ public class ToggleFeaturePreferenceFragmentTest {
private static final String PLACEHOLDER_DIALOG_TITLE = "title";
private static final String DEFAULT_SUMMARY = "default summary";
private static final String DEFAULT_DESCRIPTION = "default description";
private static final String DEFAULT_TOP_INTRO = "default top intro";
private static final String SOFTWARE_SHORTCUT_KEY =
Settings.Secure.ACCESSIBILITY_BUTTON_TARGETS;
@@ -293,6 +295,23 @@ public class ToggleFeaturePreferenceFragmentTest {
assertThat(getLatestPopupWindow().isShowing()).isTrue();
}
@Test
public void initTopIntroPreference_hasTopIntroTitle_shouldSetAsExpectedValue() {
mFragment.mTopIntroTitle = DEFAULT_TOP_INTRO;
mFragment.initTopIntroPreference();
TopIntroPreference topIntroPreference =
(TopIntroPreference) mFragment.getPreferenceScreen().getPreference(/* index= */ 0);
assertThat(topIntroPreference.getTitle().toString()).isEqualTo(DEFAULT_TOP_INTRO);
}
@Test
public void initTopIntroPreference_topIntroTitleIsNull_shouldNotAdded() {
mFragment.initTopIntroPreference();
assertThat(mFragment.getPreferenceScreen().getPreferenceCount()).isEqualTo(0);
}
@Test
public void createFooterPreference_shouldSetAsExpectedValue() {
mFragment.createFooterPreference(mFragment.getPreferenceScreen(),