Loading src/com/android/settings/datetime/AutoTimePreferenceController.java +20 −10 Original line number Diff line number Diff line Loading @@ -53,15 +53,24 @@ public class AutoTimePreferenceController extends AbstractPreferenceController getTimeCapabilitiesAndConfig().getCapabilities(); int capability = timeCapabilities.getConfigureAutoDetectionEnabledCapability(); // The preference only has two states: present and not present. The preference is never // present but disabled. if (capability == CAPABILITY_NOT_SUPPORTED || capability == CAPABILITY_NOT_ALLOWED || capability == CAPABILITY_NOT_APPLICABLE) { // The preference has three states: visible, not visible, and visible but disabled. // This method handles the "is visible?" check. switch (capability) { case CAPABILITY_NOT_SUPPORTED: return false; } else if (capability == CAPABILITY_POSSESSED) { case CAPABILITY_POSSESSED: return true; } else { case CAPABILITY_NOT_ALLOWED: // This case is expected for enterprise restrictions, where the toggle should be // present but disabled. Disabling is handled declaratively via the // settings:userRestriction attribute in .xml. The client-side logic is expected to // concur with the capabilities logic in the system server. return true; case CAPABILITY_NOT_APPLICABLE: // CAPABILITY_NOT_APPLICABLE is not currently expected, so this is return value is // arbitrary. return true; default: throw new IllegalStateException("Unknown capability=" + capability); } } Loading @@ -71,6 +80,7 @@ public class AutoTimePreferenceController extends AbstractPreferenceController if (!(preference instanceof SwitchPreference)) { return; } ((SwitchPreference) preference).setChecked(isEnabled()); } Loading src/com/android/settings/datetime/AutoTimeZonePreferenceController.java +21 −11 Original line number Diff line number Diff line Loading @@ -27,11 +27,11 @@ import android.app.time.TimeZoneCapabilitiesAndConfig; import android.app.time.TimeZoneConfiguration; import android.content.Context; import androidx.annotation.VisibleForTesting; import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import androidx.preference.SwitchPreference; import com.android.internal.annotations.VisibleForTesting; import com.android.settings.R; import com.android.settings.core.PreferenceControllerMixin; import com.android.settingslib.core.AbstractPreferenceController; Loading Loading @@ -63,15 +63,24 @@ public class AutoTimeZonePreferenceController extends AbstractPreferenceControll getTimeZoneCapabilitiesAndConfig().getCapabilities(); int capability = timeZoneCapabilities.getConfigureAutoDetectionEnabledCapability(); // The preference only has two states: present and not present. The preference is never // present but disabled. if (capability == CAPABILITY_NOT_SUPPORTED || capability == CAPABILITY_NOT_ALLOWED || capability == CAPABILITY_NOT_APPLICABLE) { // The preference has three states: visible, not visible, and visible but disabled. // This method handles the "is visible?" check. switch (capability) { case CAPABILITY_NOT_SUPPORTED: return false; } else if (capability == CAPABILITY_POSSESSED) { case CAPABILITY_POSSESSED: return true; } else { case CAPABILITY_NOT_ALLOWED: // This case is expected for enterprise restrictions, where the toggle should be // present but disabled. Disabling is handled declaratively via the // settings:userRestriction attribute in .xml. The client-side logic is expected to // concur with the capabilities logic in the system server. return true; case CAPABILITY_NOT_APPLICABLE: // CAPABILITY_NOT_APPLICABLE is not currently expected, so this is return value is // arbitrary. return true; default: throw new IllegalStateException("Unknown capability=" + capability); } } Loading @@ -86,6 +95,7 @@ public class AutoTimeZonePreferenceController extends AbstractPreferenceControll if (!(preference instanceof SwitchPreference)) { return; } ((SwitchPreference) preference).setChecked(isEnabled()); } Loading Loading
src/com/android/settings/datetime/AutoTimePreferenceController.java +20 −10 Original line number Diff line number Diff line Loading @@ -53,15 +53,24 @@ public class AutoTimePreferenceController extends AbstractPreferenceController getTimeCapabilitiesAndConfig().getCapabilities(); int capability = timeCapabilities.getConfigureAutoDetectionEnabledCapability(); // The preference only has two states: present and not present. The preference is never // present but disabled. if (capability == CAPABILITY_NOT_SUPPORTED || capability == CAPABILITY_NOT_ALLOWED || capability == CAPABILITY_NOT_APPLICABLE) { // The preference has three states: visible, not visible, and visible but disabled. // This method handles the "is visible?" check. switch (capability) { case CAPABILITY_NOT_SUPPORTED: return false; } else if (capability == CAPABILITY_POSSESSED) { case CAPABILITY_POSSESSED: return true; } else { case CAPABILITY_NOT_ALLOWED: // This case is expected for enterprise restrictions, where the toggle should be // present but disabled. Disabling is handled declaratively via the // settings:userRestriction attribute in .xml. The client-side logic is expected to // concur with the capabilities logic in the system server. return true; case CAPABILITY_NOT_APPLICABLE: // CAPABILITY_NOT_APPLICABLE is not currently expected, so this is return value is // arbitrary. return true; default: throw new IllegalStateException("Unknown capability=" + capability); } } Loading @@ -71,6 +80,7 @@ public class AutoTimePreferenceController extends AbstractPreferenceController if (!(preference instanceof SwitchPreference)) { return; } ((SwitchPreference) preference).setChecked(isEnabled()); } Loading
src/com/android/settings/datetime/AutoTimeZonePreferenceController.java +21 −11 Original line number Diff line number Diff line Loading @@ -27,11 +27,11 @@ import android.app.time.TimeZoneCapabilitiesAndConfig; import android.app.time.TimeZoneConfiguration; import android.content.Context; import androidx.annotation.VisibleForTesting; import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import androidx.preference.SwitchPreference; import com.android.internal.annotations.VisibleForTesting; import com.android.settings.R; import com.android.settings.core.PreferenceControllerMixin; import com.android.settingslib.core.AbstractPreferenceController; Loading Loading @@ -63,15 +63,24 @@ public class AutoTimeZonePreferenceController extends AbstractPreferenceControll getTimeZoneCapabilitiesAndConfig().getCapabilities(); int capability = timeZoneCapabilities.getConfigureAutoDetectionEnabledCapability(); // The preference only has two states: present and not present. The preference is never // present but disabled. if (capability == CAPABILITY_NOT_SUPPORTED || capability == CAPABILITY_NOT_ALLOWED || capability == CAPABILITY_NOT_APPLICABLE) { // The preference has three states: visible, not visible, and visible but disabled. // This method handles the "is visible?" check. switch (capability) { case CAPABILITY_NOT_SUPPORTED: return false; } else if (capability == CAPABILITY_POSSESSED) { case CAPABILITY_POSSESSED: return true; } else { case CAPABILITY_NOT_ALLOWED: // This case is expected for enterprise restrictions, where the toggle should be // present but disabled. Disabling is handled declaratively via the // settings:userRestriction attribute in .xml. The client-side logic is expected to // concur with the capabilities logic in the system server. return true; case CAPABILITY_NOT_APPLICABLE: // CAPABILITY_NOT_APPLICABLE is not currently expected, so this is return value is // arbitrary. return true; default: throw new IllegalStateException("Unknown capability=" + capability); } } Loading @@ -86,6 +95,7 @@ public class AutoTimeZonePreferenceController extends AbstractPreferenceControll if (!(preference instanceof SwitchPreference)) { return; } ((SwitchPreference) preference).setChecked(isEnabled()); } Loading