Merge "Fix instances of ContentObserver#onChange in SystemUI" into rvc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
bea69abe17
@@ -44,8 +44,9 @@ public class CarDeviceProvisionedControllerImpl extends DeviceProvisionedControl
|
||||
CarSettings.Secure.KEY_SETUP_WIZARD_IN_PROGRESS);
|
||||
private final ContentObserver mCarSettingsObserver = new ContentObserver(
|
||||
Dependency.get(Dependency.MAIN_HANDLER)) {
|
||||
|
||||
@Override
|
||||
public void onChange(boolean selfChange, Uri uri, int userId) {
|
||||
public void onChange(boolean selfChange, Uri uri, int flags) {
|
||||
if (USER_SETUP_IN_PROGRESS_URI.equals(uri)) {
|
||||
notifyUserSetupInProgressChanged();
|
||||
}
|
||||
|
||||
@@ -125,14 +125,19 @@ class ControlsControllerImpl @Inject constructor (
|
||||
|
||||
@VisibleForTesting
|
||||
internal val settingObserver = object : ContentObserver(null) {
|
||||
override fun onChange(selfChange: Boolean, uri: Uri, userId: Int) {
|
||||
override fun onChange(
|
||||
selfChange: Boolean,
|
||||
uris: MutableIterable<Uri>,
|
||||
flags: Int,
|
||||
userId: Int
|
||||
) {
|
||||
// Do not listen to changes in the middle of user change, those will be read by the
|
||||
// user-switch receiver.
|
||||
if (userChanging || userId != currentUserId) {
|
||||
return
|
||||
}
|
||||
available = Settings.Secure.getIntForUser(contentResolver, CONTROLS_AVAILABLE,
|
||||
DEFAULT_ENABLED, currentUserId) != 0
|
||||
DEFAULT_ENABLED, currentUserId) != 0
|
||||
resetFavorites(available)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -261,7 +261,7 @@ public class DozeSensors {
|
||||
|
||||
private final ContentObserver mSettingsObserver = new ContentObserver(mHandler) {
|
||||
@Override
|
||||
public void onChange(boolean selfChange, Uri uri, int userId) {
|
||||
public void onChange(boolean selfChange, Iterable<Uri> uris, int flags, int userId) {
|
||||
if (userId != ActivityManager.getCurrentUser()) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -164,8 +164,8 @@ class PeopleHubSettingChangeDataSourceImpl @Inject constructor(
|
||||
// Immediately report current value of setting
|
||||
updateListener(listener)
|
||||
val observer = object : ContentObserver(handler) {
|
||||
override fun onChange(selfChange: Boolean, uri: Uri?, userId: Int) {
|
||||
super.onChange(selfChange, uri, userId)
|
||||
override fun onChange(selfChange: Boolean, uri: Uri?, flags: Int) {
|
||||
super.onChange(selfChange, uri, flags)
|
||||
updateListener(listener)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -59,7 +59,7 @@ public class DeviceProvisionedControllerImpl extends CurrentUserTracker implemen
|
||||
mUserSetupUri = Secure.getUriFor(Secure.USER_SETUP_COMPLETE);
|
||||
mSettingsObserver = new ContentObserver(mainHandler) {
|
||||
@Override
|
||||
public void onChange(boolean selfChange, Uri uri, int userId) {
|
||||
public void onChange(boolean selfChange, Uri uri, int flags) {
|
||||
Log.d(TAG, "Setting change: " + uri);
|
||||
if (mUserSetupUri.equals(uri)) {
|
||||
notifySetupChanged();
|
||||
|
||||
@@ -99,8 +99,10 @@ public class ThemeOverlayController extends SystemUI {
|
||||
Settings.Secure.getUriFor(Settings.Secure.THEME_CUSTOMIZATION_OVERLAY_PACKAGES),
|
||||
false,
|
||||
new ContentObserver(mBgHandler) {
|
||||
|
||||
@Override
|
||||
public void onChange(boolean selfChange, Uri uri, int userId) {
|
||||
public void onChange(boolean selfChange, Iterable<Uri> uris, int flags,
|
||||
int userId) {
|
||||
if (DEBUG) Log.d(TAG, "Overlay changed for user: " + userId);
|
||||
if (ActivityManager.getCurrentUser() == userId) {
|
||||
updateThemeOverlays();
|
||||
|
||||
@@ -262,10 +262,13 @@ public class TunerServiceImpl extends TunerService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onChange(boolean selfChange, Uri uri, int userId) {
|
||||
public void onChange(boolean selfChange, Iterable<Uri> uris, int flags, int userId) {
|
||||
if (userId == ActivityManager.getCurrentUser()) {
|
||||
reloadSetting(uri);
|
||||
for (Uri u : uris) {
|
||||
reloadSetting(u);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -408,7 +408,7 @@ class ControlsControllerImplTest : SysuiTestCase() {
|
||||
fun testDisableFeature_notAvailable() {
|
||||
Settings.Secure.putIntForUser(mContext.contentResolver,
|
||||
ControlsControllerImpl.CONTROLS_AVAILABLE, 0, user)
|
||||
controller.settingObserver.onChange(false, ControlsControllerImpl.URI, 0)
|
||||
controller.settingObserver.onChange(false, listOf(ControlsControllerImpl.URI), 0, 0)
|
||||
assertFalse(controller.available)
|
||||
}
|
||||
|
||||
@@ -421,7 +421,7 @@ class ControlsControllerImplTest : SysuiTestCase() {
|
||||
|
||||
Settings.Secure.putIntForUser(mContext.contentResolver,
|
||||
ControlsControllerImpl.CONTROLS_AVAILABLE, 0, user)
|
||||
controller.settingObserver.onChange(false, ControlsControllerImpl.URI, user)
|
||||
controller.settingObserver.onChange(false, listOf(ControlsControllerImpl.URI), 0, user)
|
||||
assertTrue(controller.getFavorites().isEmpty())
|
||||
}
|
||||
|
||||
@@ -432,7 +432,7 @@ class ControlsControllerImplTest : SysuiTestCase() {
|
||||
|
||||
Settings.Secure.putIntForUser(mContext.contentResolver,
|
||||
ControlsControllerImpl.CONTROLS_AVAILABLE, 0, otherUser)
|
||||
controller.settingObserver.onChange(false, ControlsControllerImpl.URI, otherUser)
|
||||
controller.settingObserver.onChange(false, listOf(ControlsControllerImpl.URI), 0, otherUser)
|
||||
|
||||
assertTrue(controller.available)
|
||||
assertFalse(controller.getFavorites().isEmpty())
|
||||
|
||||
Reference in New Issue
Block a user