Currently, when schedule sets to "Turns on at bedtime", the footer will
show a slid up animation when entering the page, this is because the
"Start time" & "End time" preferences are hidden in onResume().
This is because these 2 preferences always return AVAILABLE in
getAvailabilityStatus(), and manually update visibility in
refreshSummary(), which is called each time updateState() is called.
Usually the controller not set the visibility explicitly, but return
CONDITIONALLY_UNAVAILABLE in getAvailabilityStatus() when they want to
hide the preference.
Because getAvailabilityStatus() is called in onCreate(), by using this,
we can fix the flicker.
Fix: 234399017
Test: visual & robo test
Change-Id: I4cb7dd95d2985bd1ca4c8cb30aaebdc21a5415f8
The usage of this dialog is removed in
Change Ie2cf147de53385ae0c626c8472306f1b85317686
But this dialog is created (but not show) in DarkUIPreferenceController
each time dark mode toggle is turned on by user.
So clean this up.
Fix: 234419979
Test: make Settings
Change-Id: Icdc9d7a4fb77dc8b2a3f1a9d8e3f40fc0af4917d
Uri.toSafeString strips out paths and shouldn't be used
for situations other than logging.
Bug: 232694281
Test: PtsPowerTestCases
Change-Id: Iec835b738c3e928e922bd6a14573106f2ce4f526
Use correct user id context to query the type,
so we won't get empty result unexpectedly.
If we get the null result, then we won't set sound sucessfully.
Fix: 233580016
Test: Manual test and set work profile sound works.
Change-Id: I7f8fb737a7c6f77a380f3f075a5c89a1970e39ad
When the page is entered from the AppInfoDashboardFragment, there is no
way to know whether the cycle data is available before finished the
async loading. If it's zero usage, the cycle spinner will be removed,
which cause a flicker.
Temporarily disable the preference list's animator before initial
page updates can solve this issue.
This also fix another flicker on this page when the background data is
off.
Fix: 233963355
Test: manual visual test
Change-Id: I795ed95e15bb3216fa17adfd4f57faf5fd92fa00
The condition whether the slot is esim slot should use getIsEuicc
api since the esim may be removable.
Bug: 233338345
Test: atest UiccSlotUtilTest
Change-Id: I47dc068e57a0faa7f7ce85af7933a48caa2c93e4
SeekBarPreference is set to unselectable in change
Ie5d819088dc3c435005ddd00e232b2f6992b234a
Update the test accordingly.
Bug: 230553896
Test: robotest
Change-Id: Ia024b81e3f8e3808b0bb1e48c41a84d0ececaa85
To avoid double registering, which prevent potential issues and could
improve latency.
Since DashboardFragment already supported register lifecycle
automatically for the controllers bound by XML which implements
androidx.lifecycle.Lifecycle, so doing a cleanup to prevent register
lifecycle event manually (doubling).
Bug: 149338098
Test: temporarily add logging to make sure the lifecycle method is
called and only called once
Change-Id: I4dbc36414991ef6b599be61aa77ff0dc8c52468c
In this page, 3 conversation lists are implemented by the
ConversationListPreferenceController, these lists updates its contents
in updateState(), which is after the preference screen view created.
So when the first time this page is showed, animations of added contents
will be shown.
The improvement is when the first time, update the list in the
onCreate(), which is called before view creation, instead of the
updateState().
And also do the same thing for RecentConversationsPreferenceController.
Also, to reduce latency,
1. Because currently there are duplicated calls in
NoConversationsPreferenceController to check whether conversations are
exists or not, by removing the duplicated calls and reuse the result
from other controllers, the latency could be reduced.
2. Currently, there are seperated api calls, the
mBackend.getConversations(false) in AllConversationsPreferenceController
and the mBackend.getConversations(true) in
PriorityConversationsPreferenceController, use one
mBackend.getConversations(false) in ConversationListSettings to improve,
this does not change the behavior because the result is filtered in
matchesFilter() both before and after.
3. Currently, we sort conversations first then filter them, change to
filter first then sort to reduce latency.
Fix: 215073227
Test: visual check & robo tests
Change-Id: I028a7fabbbf64cf5627e6615372282a36eb784e5
- Sync the same design to query and set carrier Wi-Fi enabled status from MergedCarrierEntry
- Add more logs for issue tracking
Bug: 227236604
Test: manual test
atest -c CarrierWifiTogglePreferenceControllerTest \
WifiPickerTrackerHelperTest
Change-Id: I869fa97bd24ed31a3224b4a395ffc97a17aa1471
This reverts commit d9453bf8c6.
Reason for revert: This introduces a new flicker which doesn't seem good. Will have another solution once all things are ready.
Fixes: 232355879
Change-Id: I0bbc4561ce4fbef36d59de15ae98705a6d81574c
- If carrier Wi-Fi is active then use carrier Wi-Fi level instead of
mobile data level.
- If carrier Wi-Fi level is less than min-level, use min-level instead.
Bug: 222885558
Test: manual test
atest -c SubscriptionsPreferenceControllerTest \
WifiPickerTrackerHelperTest
Change-Id: I46ba5129357bae47e5e44dcbbb26e6673581fdc8
Add jank detection when click the following preferences,
- SwitchPreference
Single target, detect click in InstrumentedPreferenceFragment
- PrimarySwitchPreference
Two target, only detect click switch in switch's onClick()
- MainSwitchPreference
Single target, detect click in TogglePreferenceController
- SettingsMainSwitchPreference
Single target, detect click in its onSwitchChanged()
Bug: 230285829
Test: manual & robo tests
Change-Id: I97a13e05a601237b16cd2d903ba2fb6ec4a69a74
Changing the configuration of network mode could take a long time.
In some cases, it blocks the query operation.
This is a change to stop query operation from execution during the time
when configuration is changing.
Bug: 227431634
Test: local
Change-Id: Ifeb16e7e9a0ec3de970fe588a1cce6d31fbba9cd
* Pop up dialog in 'Connected deivce' page and 'Accessibility -> Hearing
aids' page
Bug: 225117454
Bug: 226511985
Test: make RunSettingsRoboTests ROBOTEST_FILTER=HearingAidPairingDialogFragmentTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AvailableMediaDeviceGroupControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityHearingAidPreferenceControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=HearingAidUtils
Change-Id: I34a1e3ac680a7efe97dc501bfbe93f840ad16364