Show admin dialog when preference is disabled by Device Admin

Fixes: 130694312
Test: manual & robotest
Change-Id: I9c6487ac056ec3d784bd6f6901e96869e27e0b3e
This commit is contained in:
Edgar Wang
2019-04-30 11:58:32 +08:00
committed by Raff Tsai
parent 9fcb35a009
commit 133ffc9c57
2 changed files with 26 additions and 4 deletions

View File

@@ -33,7 +33,6 @@ import androidx.fragment.app.FragmentManager;
import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
import com.android.settings.core.TogglePreferenceController;
import com.android.settingslib.RestrictedSwitchPreference;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
@@ -114,8 +113,10 @@ public class RoamingPreferenceController extends TelephonyTogglePreferenceContro
public void updateState(Preference preference) {
super.updateState(preference);
final RestrictedSwitchPreference switchPreference = (RestrictedSwitchPreference) preference;
switchPreference.setEnabled(mSubId != SubscriptionManager.INVALID_SUBSCRIPTION_ID);
switchPreference.setChecked(isChecked());
if (!switchPreference.isDisabledByAdmin()) {
switchPreference.setEnabled(mSubId != SubscriptionManager.INVALID_SUBSCRIPTION_ID);
switchPreference.setChecked(isChecked());
}
}
@VisibleForTesting