Merge "Fix change not picking up work profile" into udc-dev am: 3061bcf10a
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23138330 Change-Id: I154a0ea462d13c4e8733697b4288611c6bbcb972 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -122,8 +122,9 @@ public class CredentialManagerPreferenceController extends BasePreferenceControl
|
|||||||
mExecutor = ContextCompat.getMainExecutor(mContext);
|
mExecutor = ContextCompat.getMainExecutor(mContext);
|
||||||
mCredentialManager =
|
mCredentialManager =
|
||||||
getCredentialManager(context, preferenceKey.equals("credentials_test"));
|
getCredentialManager(context, preferenceKey.equals("credentials_test"));
|
||||||
mSettingsContentObserver = new SettingContentObserver(mHandler);
|
mSettingsContentObserver =
|
||||||
mSettingsContentObserver.register(context.getContentResolver());
|
new SettingContentObserver(mHandler, context.getContentResolver());
|
||||||
|
mSettingsContentObserver.register();
|
||||||
mSettingsPackageMonitor.register(context, context.getMainLooper(), false);
|
mSettingsPackageMonitor.register(context, context.getMainLooper(), false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -184,6 +185,10 @@ public class CredentialManagerPreferenceController extends BasePreferenceControl
|
|||||||
mIsWorkProfile = isWorkProfile;
|
mIsWorkProfile = isWorkProfile;
|
||||||
setDelegate(delegate);
|
setDelegate(delegate);
|
||||||
verifyReceivedIntent(launchIntent);
|
verifyReceivedIntent(launchIntent);
|
||||||
|
|
||||||
|
// Recreate the content observers because the user might have changed.
|
||||||
|
mSettingsContentObserver.unregister();
|
||||||
|
mSettingsContentObserver.register();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -889,17 +894,24 @@ public class CredentialManagerPreferenceController extends BasePreferenceControl
|
|||||||
private final Uri mCredentialPrimaryService =
|
private final Uri mCredentialPrimaryService =
|
||||||
Settings.Secure.getUriFor(Settings.Secure.CREDENTIAL_SERVICE_PRIMARY);
|
Settings.Secure.getUriFor(Settings.Secure.CREDENTIAL_SERVICE_PRIMARY);
|
||||||
|
|
||||||
public SettingContentObserver(Handler handler) {
|
private ContentResolver mContentResolver;
|
||||||
|
|
||||||
|
public SettingContentObserver(Handler handler, ContentResolver contentResolver) {
|
||||||
super(handler);
|
super(handler);
|
||||||
|
mContentResolver = contentResolver;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void register(ContentResolver contentResolver) {
|
public void register() {
|
||||||
contentResolver.registerContentObserver(mAutofillService, false, this, getUser());
|
mContentResolver.registerContentObserver(mAutofillService, false, this, getUser());
|
||||||
contentResolver.registerContentObserver(mCredentialService, false, this, getUser());
|
mContentResolver.registerContentObserver(mCredentialService, false, this, getUser());
|
||||||
contentResolver.registerContentObserver(
|
mContentResolver.registerContentObserver(
|
||||||
mCredentialPrimaryService, false, this, getUser());
|
mCredentialPrimaryService, false, this, getUser());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void unregister() {
|
||||||
|
mContentResolver.unregisterContentObserver(this);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onChange(boolean selfChange, Uri uri) {
|
public void onChange(boolean selfChange, Uri uri) {
|
||||||
updateFromExternal();
|
updateFromExternal();
|
||||||
|
Reference in New Issue
Block a user