This change will update some strings for smart-auto-rotate and replace
the activity based switchbar with SettingsMainSwitchPreference. The
switchbar had to be replaced to allow the new text to appear above the main toggle.
Test: locally with flame and with resolver service enabled & disabled
Bug: 220182618
Change-Id: I4b60bf006bdde9e47b33a52c7719ec770caf5746
Merged-In: I4b60bf006bdde9e47b33a52c7719ec770caf5746
Fix the logic used that determines whether the automatic time
zone detection toggle is available in the Settings UI Date & Time
screen. Also, ensure that the TimeZonePreferenceController uses correct
logic for whether the user can manually enter a time zone.
This change migrates the controllers to use a existing high-level
TimeManager API rather than (incorrectly) duplicating in Settings UI the
logic for whether time zone detection is supported / enabled.
Without this change, WiFi-only devices _with_ location-based time zone
detection enabled would incorrectly hide the "auto time zone" toggle,
which would have the knock-on of making it look like the user is allowed
to enter a time zone manually when they aren't (because it is
enabled/disabled based on the presence of the toggle).
That toggle still needs to be present while there is a possible time
zone detection mechanism. All the (quite complex) logic around this is
already considered by the TimeManager API.
Possible side effects:
This change decouples the "does the toggle show true or false?"
(isEnabled()) from the "should the toggle be shown at all?"
(isAvailable()) logic by removing a call to isAvailable() inside of
isEnabled(). This is to avoid making multiple (probably more expensive
than what it was doing before) calls to the time_zone_detector service,
and avoid the extra complexity of caching / cache invalidation that
would be needed to mitigate it. Previously, as a result of the call to
isAvailable(), isEnabled() would always return false when mIsFromSUW is
true, but now it will return the underlying value of the device's
auto_time_zone setting. This means that if the UI is changed in future
to render a visible-but-can't-be-changed-by-the-user toggle for auto
time zone, it will display the current setting value, which is perfectly
reasonable. It is assumed it will have no other side effects.
The AutoTimeZonePreferenceControllerTest.isFromSUW_notEnable test has
been changed to reflect the change in behavior. Various name changes
made to tests to reflect the new behavior.
Bug: 228247623
Bug: 186625820
Bug: 172891783
Test: treehugger
Test: Manual test on a device with telephony
Test: m ROBOTEST_FILTER=AutoTimeZonePreferenceControllerTest RunSettingsRoboTests -j40
Test: m ROBOTEST_FILTER=TimeZonePreferenceControllerTest RunSettingsRoboTests -j40
Change-Id: I4c7608e8645eee5994c8ecf85a14a27d3278ac04
(cherry picked from commit 7a8ac683d4)
This is an implementation of BroadcastReceiver which supported by
LifecycleCallbackConverter.
Registration of BroadcastReceiver only take place when Lifecycle in
RESUME status.
Bug: 229689535
Test: unit test
Change-Id: Ia2af82d5cbb391034627e5259a9e0c8683a0c5a1
config_showOperatorNameInStatusBar has moved to
CarrierConfigManager.KEY_SHOW_OPERATOR_NAME_IN_STATUSBAR_BOOL
Bug: 116847905
Test: Build Product
Change-Id: Ia5e7b5e498ce33ffe58ff922ab3799a1b263a88b
ManageStoragePreferenceController should only consume click
event when its preference key matches the key of the clicked
preference.
Bug: 228970667
Test: atest ManageStoragePreferenceControllerTest
Change-Id: Ia6c62cf457fc4cadc27dc160dbd9b04ec3392d68
Prior to this cl, slice provider always exposes wifi slice
to calling package without confirming any wifi permissions.
For current solution, we will check calling package's permission state
and decide whether slice provider should expose wifi slice or not.
Because settings search is a part of settings app,
this permission checker won't be applied to settings intelligence.
Test: manual, robotest, cts
Also run manul
Bug: 178014725
Change-Id: I2770b5b43366a5aa65c7519efc4243d350a21b26
This is an abstract class for building a set of callback behavior
based on Lifecycle status change.
Through extending this class, the implemented methods are invoked
only when required.
Bug: 229689535
Test: unit test
Change-Id: I7534393546f821738a63ebde121a5a88ee03b23b
We determine if the visibility should be updated by mIsFirstLaunch, and
mIsFirstLaunch is set to false in onStop(). This breaks the updatability
if there's a change before onStop() gets called.
So we move the value assignment to the end of checkUiBlocker() because
at that time, all blocker work should be either finished or timeout.
Also remove mIsFirstLaunch since mUiBlockerFinished can cover the
determination with the new design.
Fixes: 229565193
Test: Toggle Use Location in the location page and see the Recent used
section react accordingly.
Change-Id: Id6005e5b8b29cb8a6309068d0a2177489a3fb2f4
Root cause: Override the padding by phone padding to caues inconsisstent
behahvior.
Solution: Remove the attributes
Bug: 229106829
Test: Manual testing in t6 (tablet) and raven (phone)
Change-Id: I583626a00088d36bda311087e8830f47e49a1152
Biometric fingerprint flow is abnormal because BiometricEnrollActivity
is relaunched during SUW because diplay or orientation is changed.
Bug: 205059704
Bug: 228812876
Test: atest BiometricEnrollActivityTest
Test: Before clicking "No thanks" manully unfold or rotate device on the
fingerprint setup screen of SUW
Change-Id: If0abe785c74c7fb40da779af166d79eeba6ad57f