Accessibility shortcut secondary action - divide different fragment for different fragment type
Different accessibility service fragment type have different UI. - AccessibilityServiceFragmentType.LEGACY will use LegacyAccessibilityServicePreferenceFragment - AccessibilityServiceFragmentType.INVISIBLE will use InvisibleToggleAccessibilityServicePreferenceFragment - AccessibilityServiceFragmentType.INTUITIVE will use ToggleAccessibilityServicePreferenceFragment Bug: 142530063 Test: Manual Change-Id: Ib32a4f97514450e5c0d29e99c22935efecf8b6df
This commit is contained in:
@@ -48,6 +48,7 @@ import com.android.internal.accessibility.AccessibilityShortcutController;
|
||||
import com.android.internal.content.PackageMonitor;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.Utils;
|
||||
import com.android.settings.accessibility.AccessibilityUtil.AccessibilityServiceFragmentType;
|
||||
import com.android.settings.dashboard.DashboardFragment;
|
||||
import com.android.settings.display.DarkUIPreferenceController;
|
||||
import com.android.settings.search.BaseSearchIndexProvider;
|
||||
@@ -402,7 +403,24 @@ public class AccessibilitySettings extends DashboardFragment {
|
||||
preference.setEnabled(true);
|
||||
}
|
||||
|
||||
preference.setFragment(ToggleAccessibilityServicePreferenceFragment.class.getName());
|
||||
switch (AccessibilityUtil.getAccessibilityServiceFragmentType(info)) {
|
||||
case AccessibilityServiceFragmentType.LEGACY:
|
||||
preference.setFragment(
|
||||
LegacyAccessibilityServicePreferenceFragment.class.getName());
|
||||
break;
|
||||
case AccessibilityServiceFragmentType.INVISIBLE:
|
||||
preference.setFragment(
|
||||
InvisibleToggleAccessibilityServicePreferenceFragment.class.getName());
|
||||
break;
|
||||
case AccessibilityServiceFragmentType.INTUITIVE:
|
||||
preference.setFragment(
|
||||
ToggleAccessibilityServicePreferenceFragment.class.getName());
|
||||
break;
|
||||
default:
|
||||
// impossible status
|
||||
throw new AssertionError();
|
||||
}
|
||||
|
||||
preference.setPersistent(true);
|
||||
|
||||
final Bundle extras = preference.getExtras();
|
||||
|
Reference in New Issue
Block a user