[Settings] Support master switch of inline toggle of Settings Injection v2
Allow developers to inject MasterSwitchPreference, a switch preference with two tap targets, to Settings page. Developers should declare keyhint and switch_uri for the activity in AndroidManifest,and then implement a SwitchesProvider. Bug: 132808482 Test: robotest Change-Id: I64cdf18268be0cfcd38aab2c059144536dd79b32
This commit is contained in:
@@ -48,6 +48,7 @@ import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settings.slices.BlockingSlicePrefController;
|
||||
import com.android.settings.testutils.FakeFeatureFactory;
|
||||
import com.android.settings.widget.MasterSwitchPreference;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
||||
import com.android.settingslib.core.instrumentation.VisibilityLoggerMixin;
|
||||
@@ -323,6 +324,15 @@ public class DashboardFragmentTest {
|
||||
assertThat(pref).isInstanceOf(SwitchPreference.class);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void createPreference_isActivityTileAndHasSwitch_returnMasterSwitchPreference() {
|
||||
mActivityTile.getMetaData().putString(META_DATA_PREFERENCE_SWITCH_URI, "uri");
|
||||
|
||||
final Preference pref = mTestFragment.createPreference(mActivityTile);
|
||||
|
||||
assertThat(pref).isInstanceOf(MasterSwitchPreference.class);
|
||||
}
|
||||
|
||||
private static class TestPreferenceController extends AbstractPreferenceController
|
||||
implements PreferenceControllerMixin {
|
||||
|
||||
|
Reference in New Issue
Block a user