Commit Graph

63 Commits

Author SHA1 Message Date
Doris Ling
a213bf0839 Separate suggestions and conditions.
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
2018-01-17 11:08:53 -08:00
Tony Mak
3e81ae7748 Rename trySetQuietModeEnabled to requestQuietModeEnabled as per ...
the feedback from API council

Fix: 71818127

Test: Build
Change-Id: Iab976fefcf00e0d5abada123b7c19344241b928a
2018-01-12 12:12:30 +00:00
Tony Mak
99a3a2f205 Update the usage of quiet mode @hide API
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
2017-12-12 13:03:13 +00:00
Christine Franks
4f03562716 NightDisplayController -> ColorDisplayController
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
2017-11-03 12:03:20 -07:00
Fan Zhang
e651ddf9e6 Add shadow to searchbar when user scrolls vertically
Bug: 63528057
Test: robotests

Change-Id: Ib85676d78b43be38aab1eacd0820d0755a601f60
2017-07-20 20:32:09 +00:00
Doris Ling
1b6685f4a4 Add background color to suggestion/condition view.
- also remove "new_ui" from the condition tile and suggestion tile
layout file name.

Change-Id: I2a1fe4ea2ed69768f6e7c464608039c9c962c9f1
Fix: 63674319
Test: visual
2017-07-14 15:34:42 -07:00
Doris Ling
84c7739986 Fix mokey crash on swiping settings condition.
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
2017-07-13 11:00:29 -07:00
Doris Ling
b99af0e4a2 Change to use new suggestion/condition UI.
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
2017-06-28 12:22:34 -07:00
Thecrazyskull
07a97c7d8a Merge "ConditionManager: don't crash when trying to add unexpected condition" am: 46f7199cb1 am: 6270dce2cd am: 7151be926d
am: ecc7355bde

Change-Id: Ic422ded3965a9f8bc3cafb7cbf0b1e4585142672
2017-06-04 00:10:11 +00:00
Thecrazyskull
ecc7355bde Merge "ConditionManager: don't crash when trying to add unexpected condition" am: 46f7199cb1 am: 6270dce2cd
am: 7151be926d

Change-Id: I16805427f0d053c6d1c5975275f00cb0ed1c9cbb
2017-06-04 00:04:25 +00:00
Treehugger Robot
46f7199cb1 Merge "ConditionManager: don't crash when trying to add unexpected condition" 2017-06-03 23:49:39 +00:00
Thecrazyskull
f7791d75bf ConditionManager: don't crash when trying to add unexpected condition
* Instead, just don't add the unexpected condition

Test: none

Change-Id: Id768d54e90fac6cbbfdca514e769cb3b331fbc46
2017-06-02 22:50:47 +00:00
Doris Ling
83a6621b38 Combine settings suggestion and condition.
- 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
2017-06-02 14:59:48 -07:00
Juan Lang
777ed2535a Depend on SettingsLib's version of lifecycle and FooterMixin.
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
2017-05-12 11:10:46 -07:00
Doris Ling
ce5e0c3dc6 Merge "Fix crash when silencing condition." into oc-dev
am: ba2f3ee3ba

Change-Id: Iee2ce7c27469008142862ab866bf53e9e02d74e1
2017-05-10 01:45:17 +00:00
Doris Ling
b72163b9d0 Fix crash when silencing condition.
- check if the broadcast receiver is being registered before trying to
un-regist it.

Change-Id: I6af215f393d16173f317c9e5bc05237c935e7133
Fix: 38131851
Test: make RunSettingsRoboTests
2017-05-08 15:28:33 -07:00
Miao Miao (苗苗)
d0cb54b27e Merge "Settings crash when receiving data state broadcast" am: 2ed42d009b am: c6e3467cc2
am: b1480c8cab

Change-Id: I803440c63bfb4a4355765b2dc670e2ca54f7c9e1
2017-05-02 17:48:41 +00:00
Miao Miao (苗苗)
e4b5d69493 Settings crash when receiving data state broadcast
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
2017-04-27 07:57:23 +00:00
Doris Ling
0f01c849cd Only register conditions receiver when needed.
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
2017-03-29 10:47:04 -07:00
Fan Zhang
a5b620e738 Swipe to dismiss suggestions
- 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
2017-03-13 14:39:00 -07:00
Doris Ling
26208220cf Remove WirelessSettings and related code not used in new IA.
- 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
2017-03-03 13:20:12 -08:00
Doris Ling
f074f0f6dd Removed AccountSettings used in old IA only.
- 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
2017-02-24 16:04:35 -08:00
Fan Zhang
c6ca314c0b Log source with visibility change
- 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
2017-02-15 17:17:19 -08:00
Salvador Martinez
179e16445e Added logging to pinpoint source of bug
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
2016-12-05 15:32:14 -08:00
Tamas Berghammer
265d3c2a0c Update package names to work with the proto3 compiler
Bug: b/28974522
Change-Id: I5f3adf4946ee4ba1e09e4f40afe83c151405972a
2016-11-08 14:06:17 +00:00
jackqdyulei
8e5f66ce39 Remove animateChange in ConditionAdapterUtils
Bug: 30319913
Test: make RunSettingsRoboTests

Change-Id: Iea3fa574c4f0f80e70a6360b5b4a5f748a80a899
2016-10-26 13:09:38 -07:00
Fan Zhang
e40eb2457a Fix NPE when trying to refreshes dnd condition. am: 98487f4d65 am: 80c589e1f8
am: f77c940f9a

Change-Id: Ib0f089321000e100dbbf4510ebb9d5bce3b3abca
2016-09-23 23:57:03 +00:00
Fan Zhang
98487f4d65 Fix NPE when trying to refreshes dnd condition.
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
2016-09-22 22:13:21 +00:00
Fan Zhang
c93d18e29c Use MetricsFeatureProvider for condition/suggestion/search.
Bug: 31664539
Test: make RunSettingsRoboTests

This allows different metric clients to listen to these events.

Change-Id: Ib19c8099b16ff78d9aa4901278e0ff33eeefd4a8
2016-09-22 13:22:26 -07:00
Fan Zhang
89d7bca166 When click conditional's title, expand/collapse content.
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)
2016-08-22 18:30:16 +00:00
Fan Zhang
a2db2ca8fa When click conditional's title, expand/collapse content.
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
2016-08-12 10:12:18 -07:00
Fan Zhang
0aebaf1556 Set correct flag when enabling listener for conditions.
Bug: 30551655

Without this flag Settings app will close whenever listener is
enabled/disabled.

Change-Id: I99102308ada3897cf44917e96015c71b926e5fb5
2016-08-01 13:58:57 -07:00
Fan Zhang
bebba4478d Never disable DnD receiver to dislay condition correctly.
Bug: 30360853
Change-Id: I3e470c2955d7f066970442e281f9d66b153b8d10
2016-07-27 11:08:29 -07:00
Fan Zhang
a0ebd1a9f0 Refresh state after loading conditions from xml.
Fixes: 30330909

When start Settings, conditions is loaded from a xml with potentially
stale state. ConditionLoader needs to refresh states after reading xml
to make sure they are up to date.

Change-Id: Ice1b8bacb0486c5dd230b83670c1494710d1c061
2016-07-25 13:58:39 -07:00
Jason Monk
bd6a4f9066 Merge "Protect against work conditional crash" into nyc-mr1-dev 2016-07-20 13:28:13 +00:00
Justin Klaassen
d60f09edaf Add Night display settings conditional
Bug: 30043281
Change-Id: I2464cd90f1f7f379aabf123f602e6150a87120cf
2016-07-19 14:31:46 -07:00
Jason Monk
31678f14e9 Protect against work conditional crash
Change-Id: Iba6e7281c622e3ba34fa6bd4672b2380b0329808
Fixes: 30014085
2016-07-19 14:22:14 -04:00
Christopher Wiley
9d251279ca Do not use TetherUtil.setWifiTethering
This functionality is replaced by ConnectivityManager.startTethering()
and ConnectivityManager.stopTethering().

Bug: 30147602
Test: Can toggle tethering on/off via all of settings, quick settings,
      and quick quick settings.
Change-Id: I4d190185c473237982b988f898e76d4997dc401c
2016-07-18 11:17:14 -07:00
Jason Monk
095d9e3d3f Fix DND conditional null state
Persist all of the data it needs to produce the UI.

Change-Id: Ifb143b2cd3fef075cd77feaf53051eb8b7153a51
Fixes: 27664882
2016-06-27 12:29:47 -04:00
Jason Monk
e4d0ed502d Fix crash from battery saver switch
Turns out most things expect the conditions to be loaded immediately
so if the dashboard hasn't been hit, they crash.  Instead load
immediately for everything but the dashboard.

Change-Id: Iaa1114c88b3766e2ac513acb417ef2a55a0f4e7f
Fixes: 28952354
2016-05-26 11:07:53 -04:00
Jason Monk
6cb280d146 Don't update conditions on background threads
Instead build a list and set it on the main thread to avoid
concurrent modification crashes.

Change-Id: I936fbeb70359583e55ae8ddcb0ea46b5753cb3b0
Fixes: 28794277
2016-05-25 12:53:34 -04:00
Jason Monk
2386dfc18d Dashboard performance work
Push more stuff to backround threads (this will cause conditions/suggestions
to load slightly slower than normal content) and cache more info.

Fixes: 28613950
Bug: 28435146
Change-Id: I1080930e8f31c7f12a2d89f266bfd3236979cf40
2016-05-06 13:17:47 -04:00
Clara Bayarri
58440b2801 Fix Settings Condition expand button a11y label
Bug: 27276008
Change-Id: Ie62ed8a73b300948f053b5d35f344bce3b63869a
2016-04-27 16:54:22 +01:00
Zoltan Szatmary-Ban
295f1060e9 Merge "Apply policy transparency to HotspotCondition and WiFi settings..." into nyc-dev 2016-04-19 13:25:22 +00:00
Zoltan Szatmary-Ban
3f6208170d Apply policy transparency to HotspotCondition and WiFi settings...
...when there is an active hotspot and user restriction for disallowing
tether config is in effect. This is to avoid getting security exceptions
from WifiManager when engaging with HotspotCondition or Wifi enable switch.

Bug:27936528
Change-Id: Ib3324e853277c177966b55668758d349ffe6ecf5
2016-04-15 16:13:27 +01:00
Benjamin Franz
89726fd952 Merge "Only try disabling quiet mode" into nyc-dev 2016-04-15 14:53:16 +00:00
Jason Monk
d49a846a39 Don't debug log on ConditionManager
Change-Id: I383c8ca4cfea732ace8213a17df375babad5f793
2016-04-13 15:30:07 -04:00
Benjamin Franz
e00cd80a1e Only try disabling quiet mode
The underlying API has slightly changed to require the profile
challenge if the profile that we're trying to enable hasn't been
unlocked yet.

Bug: 27764124
Change-Id: I9efb3d3ed49034b573abb4c18119ffadcccfe947
2016-04-13 19:14:37 +01:00
Jason Monk
5673ced93c Work on settings startup speed
- Cut down on amount stored in conditions xml
 - Remove extra work from dashboard startup
 - Move summary to min priority

Change-Id: I51ca3828e4446632d6faa60dcfbab3446d19d335
Fixes: 28134360
2016-04-12 15:19:50 -04:00
Fan Zhang
905002a01d Fix animation when expand conditional notices in Settings.
Bug: 28017593
Change-Id: I8275cb2050f79d26e58c02ffd91cb1a3e32a5ff2
2016-04-06 10:07:03 -07:00