Add Intentfilter BasePreferenceController

For settings which can change in the framework, outside of
the settings app and a slice, a Slice needs to be able to
register a listener for these changes.

Adding a getter for an IntentFilter in BasePreferenceControllers
allows us to use the SliceBroadcastRelay in SysUi to listen for
these changes.

Test: robotests
Fixes: 78138654

Change-Id: I579375069ca98fd21b60cd3a69c1a122cabf96e2
Merged-In: Ifa05b651aaa3458c54866f71469964b1a070e458
This commit is contained in:
Matthew Fritze
2018-05-11 08:35:42 -07:00
parent 6dc6462a54
commit 4a6f058552
5 changed files with 60 additions and 9 deletions

View File

@@ -18,6 +18,8 @@
package com.android.settings.testutils;
import android.content.Context;
import android.content.IntentFilter;
import android.net.wifi.WifiManager;
import android.provider.Settings;
import com.android.settings.core.TogglePreferenceController;
@@ -28,6 +30,9 @@ public class FakeToggleController extends TogglePreferenceController {
public static final String AVAILABILITY_KEY = "fake_toggle_availability_key";
public static final IntentFilter INTENT_FILTER = new IntentFilter(
WifiManager.WIFI_AP_STATE_CHANGED_ACTION);
private final int ON = 1;
private final int OFF = 0;
@@ -52,4 +57,9 @@ public class FakeToggleController extends TogglePreferenceController {
return Settings.Global.getInt(mContext.getContentResolver(),
AVAILABILITY_KEY, AVAILABLE);
}
@Override
public IntentFilter getIntentFilter() {
return INTENT_FILTER;
}
}