The injection dynamic data was loaded in the background and then post to
main thread to update UI. However, it usually updates after
Fragement.onResume(), which causes the flicker.
To make it more smooth, DashboardFragment to wait for the dynamic data
observers to update UI for a short period, which eliminates the flicker
in most cases.
Also skip the repeated tiles refresh called by onCategoriesChanged in
onResume after all preferences refreshed.
Test: robotest, visual
Bug: 229177114
Change-Id: I04650af9692703f1fc1e6e5ad2090f051b1eeb81
The approach of reloading all rules (and recreating all ZenRulePreferences) every time the rule set changed causes the switches on the page to stop working.
This change keeps the ZenRulePreference around as long as the rule itself is around and keeps it updated, while re-adding the preferences to the PreferenceCategory if needed due to rules changing.
Fixes: 229879326
Test: manual, ZenModeAutomaticRulesPreferenceControllerTest
Change-Id: I4eba41e8252cedd87ac866e4b97513970ca2d94a
There is a special UID for network data tethering usage, we will handle
it in a special case to avoid the current rule considering it as an
invalid UID case without showing in the usage list. We will disable the
click behavior to protect the optimization mode page first.
Bug: 227395125
Test: make RunSettingsRoboTests -j56 ROBOTEST_FILTER="com.android.settings.fuelgauge"
Change-Id: I8d96473d382ebc3253748cce8345d6f2261a233d
When the presenter app doesn't have certain permissions,
it's safer to go with a generic fallback slice
which just redirects user to the actual settings page.
Test: test on the presenter app. robo test
Fix: 178014725
Change-Id: I6f5358af2e00cb2fedba0b3f1474a026135986c6
Save the query string before configuration changed and set the previous
query string upon the re-create.
Fixes: 204158119
Test: robotest
Change-Id: I48b2a4b272873665a653d2ebc4c02bb99d4b0d0d
- Hide Wi-Fi toggle and show restriction message in the Wi-Fi slice if Wi-Fi state is disallowed to change
- See the result screenshot in b/203168097#comment30
Bug: 203168097
Test: manual test
make RunSettingsRoboTests ROBOTEST_FILTER=WifiSliceTest
Change-Id: I09ccb6349dadf64a2f903245ba203ce77c86d1e1
- Remove Wi-Fi toggle preferences in settings search if Wi-Fi state is disallowed to change
- See the result screenshot in b/203168097#comment29
Bug: 203168097
Test: manual test
make RunSettingsRoboTests ROBOTEST_FILTER=NetworkProviderSettingsTest
Change-Id: Ibe352f3ec3413fb0774de0b2bd213bb705e919e0
- Currently most the sliders are implemented by
com.android.settings.widget.SeekBarPreference.
- Volume ones are implemented by VolumeSeekBarPreference, which resets
the OnSeekBarChangeListener, so need special handling.
- PointerSpeedPreference is standalone, added separately.
Bug: 230285829
Test: Verify trace via jank developer guideline.
Change-Id: Ia2978df196676ad6675d2834f6af6cb2aa9094cf
- This CL is using 'USB_CONFIGURED' to check whether the USB enumeration
is completed from the intent. If 'USB_CONFIGURED' is true then update
the UI.
Bug: 229200265
Test: make -j65 RunSettingsRoboTests
Change-Id: Icab05e37ae3fcc9f1bf404a610fc97c368c453f5
- Remove Wi-Fi hotspot preferences in settings search if Wi-Fi hotspot is disallowed
- See the result screenshot in b/203168953#comment12
Bug: 203168953
Test: manual test
make RunSettingsRoboTests ROBOTEST_FILTER=WifiTetherSettingsTest
Change-Id: Id4416fd0659b596e4e6f31890a139198219f4552
The bottom list flashes because it takes some time to create a
DomainAppPreference, where each perference takes around 6ms to load an
icon. When there are, that say, 30 apps installed, then it will take
around 180ms to be ready, which introduces the flashing issue.
In order to tackle icon loading, this CL applies the icon cache
mechanism to speed up the loading time.
Fixes: 222981986
Test: robotest
Change-Id: Ia8f7cbf5af5ea9f694c352ea40ccca47bedb175c