- Updated condition interface to use Drawable instead of Icon for icons.
- Converted all conditions to return drawable instead of Icon.
- Created a BatterySaverDrawable to draw a static battery saver icon.
Change-Id: Ie964f3439009c7658603a8ff352a05e964a0a795
Fixes: 76168403
Test: robotests
- check whether the receiver is registered before trying to unregister
it.
Change-Id: Ia949f5a90b8866f01684dc2c7797e87d8dc7804e
Fixes: 74073233
Test: make RunSettingsRoboTests
After introducing the new data usage UI behind a feature flag a bug was
introduced that causes the data saver suggestion to throw an exception
from a missing class reference in "legacy" mode.
Bug: 73648306
Test: manual
Change-Id: I4fcd2bd0f55931f40738266dca94a55fea5087b3
1. Make BatterySaverSettings extend from DashboardFragment
2. Add new layout
3. Add battery saver controller
Future cl will add controllers for seekbar and button
Bug: 72228477
Test: RunSettingsRoboTests
Change-Id: I21fb62aef874c04eca2988271f2fd9d7aacb0c6c
- Zen condition in settings has same secondary text as dnd qs tile
- Zen condition's primary click brings user to DND settings instead of
ZenPanel
Test: manual
Change-Id: I0090c09e19376d3aafff45a893485d19cd7b91da
Fixes: 72570739
- remove the check for feature flag for suggestion UI v2 and switch to
use the v2 codes.
- remove all code related to v1 of suggestion UI
Fixes: 70573674
Test: make RunSettingsRoboTests
Change-Id: I99ab318c1c0192508a9c5e9e708e86319120d55b
- Rename UserAndAccountDashboard* to AccountDashboard*
- Move emergency info from account to device info page
- Move auto sync data toggles (4 of them) from Account page to user page
- Move the controllers too. UserSettings is a not a DashboardFragment
so I had to manually call each controller method.
TODO: refactor UserSettings to a DashboardFragment
- Move legal information/regulatory info above advance button within device info page.
Fixes: 72523158
Bug: 71871075
Test: robotests
Change-Id: I1b8af8af61e49d17926f984978a09a974b6c62e1
- remove useless intent-filters on a few activities
- Fix condition layout (icon size too big)
- clicking airplane condition card no longer crashes
Fixes: 72314527
Test: logcat | grep -i "TileUtils" and observe no more warning log
Change-Id: I3c6f9fb4f4e480ade220bc8602c04de5332d551c
This is the initial change for updating the suggestion cards:
- add a feature flag to swap between the new and current UI
- change suggestions to a standalone dashboard item. It becomes a
horizontal scroll list that won't collapse/expand.
- the expand/collapse logic now only control the conditions list
- add draft for the new suggestion UI elements, but detail to fine-tune
to match the UI spec will come in following changes.
Bug: 70573674
Test: make RunSettingsRoboTests
Change-Id: I00c901e2598b26a34288fc73fd6031cc26a29ac6
BUG:70212757
Test: Settings -> Work profile settings -> Toggle work mode
Test: Turn off work mode -> Settings -> Turn on work mode in the suggestion
Change-Id: Ic5c2c5b141fb8be365c07c70ad1d0291342d7106
Now that it controls both night display and color mode,
the NightDisplayController should reflect its expanded
purpose.
Bug: 68258004
Test: make RunSettingsRoboTests -j100
Change-Id: If0ad2539b44daf821fdba83b81de1199ad1ecc21
- also remove "new_ui" from the condition tile and suggestion tile
layout file name.
Change-Id: I2a1fe4ea2ed69768f6e7c464608039c9c962c9f1
Fix: 63674319
Test: visual
When the condition card is being swiped, add null check for the
retrieved Condition to ensure it is still valid before trying to
dismiss it.
Change-Id: I265091a5fe290e359fa9a6e16b1d87c03894c1b8
Fix: 63624859
Test: make RunSettingsRoboTests
Change to always use the new UI that combines the suggestion and conditions,
and remove all codes relating to the old UI.
Fix: 37645754
Fix: 62621808
Test: make RunSettingsRoboTests
Merged-In: I3421a9e5182f6606843392d6fae8b9f07c5f2e46
Change-Id: I5ef169a563166520dad0ac44f6780da814e2f1f7
- Add a flag in dashboard feature provider to specify whether to use the
combined UI for suggestions and conditions.
- Move Conditions below Suggestions.
- Add dashboard entity for condition and suggestion container, and
wrap the condition and suggestion list inside the container. The
container itself will be a single dashboard item, and within it will
be the list of suggestion or condition.
- Add suggestion/condition header that will show the combined info for
the conditions and suggestion data, and have the expand button to
control expanding both the suggestion and condition list.
- Change the individual condition card to be always expanded, and
remove the logic to collapse/expand individual condition card.
- Remove the divider between the action button and condition detail
within each condition card.
- Add suggestion/condition footer for collapsing the whole suggestion and
condition list.
Bug: 37645754
Test: make RunSettingsRoboTests
Change-Id: I86df75f7e4551778f79d730851c03121fd0dcbdf
The implementations have been imported into SettingsLib. Setting's copy
can now be removed, which this change also does.
Test: Manually check battery status, which uses FooterMixin, looks OK.
make RunSettingsLibRobotTests && make RunSettingsRoboTests
&& make RunSettingsGoogleRoboTests
Change-Id: I6539605fdad80d156ff5ff249e68df4a1c412067
- check if the broadcast receiver is being registered before trying to
un-regist it.
Change-Id: I6af215f393d16173f317c9e5bc05237c935e7133
Fix: 38131851
Test: make RunSettingsRoboTests
Stress/Stability testing, Settings crash when receiving data state
broadcast
Solution: Do null judgement before function was called
Test: Stress/Stability test
Change-Id: Id71448ed89eeffcea268c4a2e7154d9ea7639db4
1. Update the dnd receiver to listen when dashboard summary running.
- remove the dnd receiver from Android manifest, and create it inside
the dnd condition.
- add lifecycle implementation to condition manager, so that the dnd
condition can know when to register and unregister the receiver.
- remove getReceiverClass() from dnd condition so that its receiver will
not be disabled by the default condition handling when condition is
silenced.
2. Remove all other conditions receiver from Android manifest.
- the broadcast receivers for HotspotCondition, AirplaneModeCondition,
CellularDataCondition from the manifest and create them inside the
condition classes.
- update Condition.onSilenceChanged() to register/unregister the
receivers instead of enable/disable the receiver class.
Change-Id: Iea6288382680df2b02884d1934b8db85daae404c
Fix: 35968517
Test: make RunSettingsRoboTests
- Move dismiss suggestion logic into feature provider
- In DashboardData, use hashcode as suggestion's stable id. This is much
more likely to provide a truely stable id for each suggestion card.
Eventually I want to use hash for all tiles to provide stable id.
- Add a SuggestionDismissionController to handle swipe to dismiss
callbacks
Change-Id: If3770f07a90c5469a0b86fc28f3eb5e4c17227cd
Fix: 35159816
Test: make RunSettingsRoboTests
- remove WirelessSettingsActivity and update other references to it.
- move the intent filter android.settings.WIRELESS_SETTINGS and
android.settings.AIRPLANE_MODE_SETTINGS into Network dashboard
- move intent filter android.settings.NFC_SETTINGS into Connected
devices dashboard.
Change-Id: I84f75ac45d0712eac9c40aa6c8f052bc060ed03a
Fix: 32342061
Test: make RunSettingsRoboTests
- remove AccountSettings and all related code that is used in old IA, so
that it will not show up in search.
Change-Id: I9f83112f760fd991caf89de109fde9e675b8c981
Fix: 34165913
Test: make RunSettingsRoboTests
- Add a method in VisibilityLoggerMixin to log visible event using
LogMaker, which allows logging additional FIELD_CONTEXT field.
- In Utils.startFragment, add current page's metricsCategory as an extra
to next page.
- In next page's onResume(), extract the previous page's metricsCategory
and send it to VisibilityLoggerMixin.visible()
- Update all caller with additional paramters
Change-Id: I8e1f2597fa465b7d3aa16fa1d21c052a3219694a
Fix: 35359289
Test: RunSettingsRoboTests
Sometimes the airplane mode banner will show up even
though airplane mode is not on. Logging has been added
to several areas around this condition in addition to
where the actual view is created. This will be used
to try and get a better handle on what the source of
the bug is.
Test: manual
Bug: 30860132
Change-Id: I7213aa7e187c5a8c0e94a5ce7a3269e6667cd61b
Bug: 31685838
Test: manual, will add automated test in master.
The NPE happens when try to refresh dnd condition before the condition
object is created.
Change-Id: Idbd6898472e1ad21a2bbb3be5f0b9c24c03b5c80
Bug: 31664539
Test: make RunSettingsRoboTests
This allows different metric clients to listen to these events.
Change-Id: Ib19c8099b16ff78d9aa4901278e0ff33eeefd4a8
Bug: 30200101
It used to lead user to detailed setting for that conditional. This
leaves some confusion about which click target goes to where.
Change-Id: Ic9525ace65ca488f4e709576fb1ec96a1cb99938
(cherry picked from commit a2db2ca8fa)
Bug: 30200101
It used to lead user to detailed setting for that conditional. This
leaves some confusion about which click target goes to where.
Change-Id: Ic9525ace65ca488f4e709576fb1ec96a1cb99938