Commit Graph

162 Commits

Author SHA1 Message Date
TreeHugger Robot
9f7927f6d5 Merge "Hide wifi card sometimes." 2018-12-19 17:42:58 +00:00
Raff Tsai
f7a6d94863 Add sliceUri in broadcast intent
Bug: 119748954
Test: robolectric
Change-Id: I24eb8d5a274be60ba3395d05d2b306e185e7dcab
2018-12-19 02:29:52 +08:00
Fan Zhang
0db4ead2b3 Hide wifi card sometimes.
When there is a connected wifi, we now hide the wifi slice card.

However, if we initially shows this card but later wifi is connected
while the card is visible, we keep showing this card to avoid janky
animation. The card will be gone if user nagivates to a different UI and
comes back.

- Create a new slice ContextualWifiSlice for homepage use case, all
  special logic for homepage are added here.
- Change reference for WIFI_SLICE to CONTEXTUAL_WIFI_SLICE where make
  sense.

Change-Id: Ibd87f88058f357aabef0f7d68a5bf48350d75b06
Fixes: 121040746
Test: robotests
2018-12-18 10:18:08 -08:00
Yi-Ling Chuang
39dcad9bd1 Don't have cards auto-filled in the foreground when a card gets dismissed.
Currently if users dismiss a card or navigate back to the homepage,
new suggestions will be auto filled in. We should only add new cards
upon next visit.

Also fix suggestion cards undismissable problem.

Fixes: 121175037
Bug: 120628661
Test: robotests
Change-Id: I01d74aaaa21c8408e5cecafef04a7d52c97bccc5
2018-12-18 17:03:41 +08:00
Fan Zhang
44b28f4a2b Remove battery saver condition.
Battery saver is also implemented as a contextual card. no need to use
condition any more.

Change-Id: I2607c610593c6e250569fbd3b4f1a5516f6ea62f
Fixes: 121115306
Test: robotests
2018-12-17 12:31:50 -08:00
Jason Chiu
93d4993556 Micro cleanup and refactoring
- organize import
- remove unused code in ContextualCardLoaderTest
- refactor CardDatabaseHelper

Test: robotest
Change-Id: I1a5a49bee1c4edb34f1c59f3dbe37cb22f01b0d4
2018-12-17 17:13:08 +08:00
Fan Zhang
e824c7e005 Merge changes I6e73bcf9,I257ba108
* changes:
  Add a timeout waiting for contextual card loader.
  Set setting back to default when turning off dev option
2018-12-13 04:03:28 +00:00
TreeHugger Robot
5f10245da9 Merge "Add vertical and horizontal dividers for large cards of homepage" 2018-12-13 03:55:34 +00:00
Jason Chiu
c0c5511862 Add vertical and horizontal dividers for large cards of homepage
- Add a new field in ContextualCard to store whether this card is a large one
- Set dividers for large cards in renderer

Fixes: 119528161
Fixes: 119641839
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.homepage
Change-Id: I5cb95214789f44ccfd8d9ce2177ca2b84835b7a4
2018-12-13 03:40:05 +00:00
Fan Zhang
ad12b76a98 Add a timeout waiting for contextual card loader.
- Intially setting it to 1 second.
- Also changed card appear animation from drop in to fade in. It looks
  less janky if we don't animate any size change.
- And some random code cleanup

Change-Id: I6e73bcf98fd9aa1d76ae002b94ab5b068dfecf1e
Fixes: 120916829
Test: robotests
2018-12-12 16:28:24 -08:00
Raff Tsai
c886544a55 Do not return null in getSlice()
- It will result in a empty SliceView. Because we can use
slice.hasHint(HINT_ERROR) to check if we should show the slice,
always return a valid slice object.
- Set tintcolor -1 therefore battery icon will not have tint

Bug: 120221527
Test: manual
Change-Id: Idfc97f90c75515b079e1faed802c9b9047bfdeb4
2018-12-13 00:39:34 +08:00
Yanting Yang
09b130529c Rename ConnectedDeviceSlice to BluetoothDevicesSlice
Bug: 120029006
Test: robotests
Change-Id: I7e39f52a87ebd017bf0635cd5a76945b39eee6fc
2018-12-10 18:33:51 +08:00
Yanting Yang
327c9a0871 Merge "Add pair new device to ConnectedDeviceSlice" 2018-12-08 15:45:35 +00:00
Yanting Yang
84b3035b21 Add pair new device to ConnectedDeviceSlice
Show "Pair new device" when the number of devices is less than 3.

Bug: 114807655
Test: visual, robotest
Change-Id: Ia8dbff163d758bb077d4960616d1c6538c04aebb
2018-12-08 21:02:26 +08:00
TreeHugger Robot
a0d2adf198 Merge "Reload data if slice binding returns null at rendering time." 2018-12-07 17:02:11 +00:00
Yi-Ling Chuang
ddfc085f2b Reload data if slice binding returns null at rendering time.
We are not able to guarantee the binding results in the pre-check and
real binding would always be the same sinc slice may decide what it
would be based on some conditions. Hence, we should reload data and
refresh UI when it comes to null to prevent from blank suggestion.

Bug: 120221527
Test: visual
Change-Id: I79790edfe7fc3af7b9c3b3a7df6a7ffa7d405d50
2018-12-07 09:54:15 +08:00
Raff Tsai
e58e0c6e0e Log contextual card is visible and homepage is displayed event
Bug: 79698338
Test: Robolectric
Change-Id: I89ac5ed2765729d8571e84d3a050f0aa07385caa
2018-12-07 09:00:05 +08:00
Fan Zhang
fec2c738ef Merge "Correct metrics category in ConnectedDeviceSlice" 2018-12-06 17:59:30 +00:00
Yanting Yang
bd8374fb26 Merge "Fix deep link issue of Slice cards in home page" 2018-12-06 09:56:19 +00:00
TreeHugger Robot
97a6c1f4a4 Merge "Stop observing a slice view when a slice is dismissed." 2018-12-06 06:36:23 +00:00
Fan Zhang
d7fa2fa64e Make a few custom slices implement CustomSliceable.
Bug: 80263568
Test: robotests, slice-browser
Change-Id: Id809a347d77448917154c2d1144fd2517e70829a
2018-12-05 15:47:14 -08:00
Yanting Yang
66b2b91d72 Fix deep link issue of Slice cards in home page
Add setData(uri) back to intent to fix deep link launching error.

Change-Id: Ibffce43ddeb9a1388d001515d8d3b320c5b45520
Fixes: 120473478
Test: robotests, visual
2018-12-05 21:10:47 +08:00
Yanting Yang
7b0dc688c2 Correct metrics category in ConnectedDeviceSlice
The used category METRICS_CATEGORY_UNKNOWN in Bluetooth detail intent is
not matched. Correct the category to BLUETOOTH_DEVICE_DETAILS.

Bug: 114807655
Test: robotest
Change-Id: I941db81164ac2b3a09b6d3c0d97f14c5e65fb6ed
2018-12-05 19:03:56 +08:00
Yi-Ling Chuang
72e54c8f85 Stop observing a slice view when a slice is dismissed.
In order to receive updates of slices, we make sliceLiveData observes
slice views. When a slice is dismissed, it should stop observing
the view so the view can be recycled and reused.

Fixes: 120465506
Test: robotests
Change-Id: Ie4f12e9a3e6e0e7d59d3346ab17282707047bf16
2018-12-05 13:52:11 +08:00
Yi-Ling Chuang
2efa93460c Reset dismissal UI to the baseline when exiting the page.
Flip the card back to slice view if users exit the page instead of
getting the dismissal UI preserved. We should also reset the UI to the baseline
if users dismiss a card, so when the view is reused, slice view can
then be displayed correctly.

Change-Id: If5448c57dec44ef5c1d3472358d4ddc9398538b8
Fixes: 119820168
Test: robotests
2018-12-05 11:58:34 +08:00
Yanting Yang
d0a9103855 Update the card behavior of Low Storage slice
If used storage >= 85%, show low storage slice to all clients. Else, a
generic storage slice with error flag will be given. Home page will
check error flag in loading eligible cards.

Bug: 114808204
Test: robotests, visual
Change-Id: I757c46b3bbff785dc112fec6bdc37e5ce9269ed8
2018-12-04 12:13:21 +08:00
Yanting Yang
82b5cb307f Update title of ConnectedDeviceSlice header
Bug: 114807655
Test: visual, robotest
Change-Id: Ibda3f1439787541de0e7aac9f3bcfb016522cdc1
2018-12-03 21:31:02 +08:00
Raff Tsai
626c6e0b17 Replace SliceAction deprecated method
- Replace new SliceAction with SliceAction.createDeeplink() or
SliceAction.create()

Test: make RunSettingsRoboTests
Change-Id: Ied34469d2220d8220a2dcc6c2fb4d32dd9cd9b8c
Fixes: 119879284
2018-12-01 06:21:01 +08:00
Raff Tsai
1ad5c9805a Merge "Add log feature" 2018-11-30 02:58:38 +00:00
Fan Zhang
53f75f0df9 Move all custom slice uris to a registry class.
Change-Id: I192320f95ac81d14c8891ce2531d603912e59f56
Fixes: 119776308
Test: robotests
2018-11-29 16:41:21 -08:00
Raff Tsai
da7a5d1171 Add log feature
- Add ContextualCardFeatureProvider to handle card interaction

Bug: 79698338
Test: manual
Change-Id: I2a76f5ccfd07072a98ee927bed7dc39731d4cb09
2018-11-30 06:41:22 +08:00
Fan Zhang
154f34a35e Merge "Update the strings of conditional cards" 2018-11-29 21:56:56 +00:00
TreeHugger Robot
d4fc724f95 Merge "Add contextual card feedback email mechanism." 2018-11-29 03:43:39 +00:00
TreeHugger Robot
f22268c854 Merge "Fix conditional cards disappeared from contextual homepage" 2018-11-29 03:31:50 +00:00
Yi-Ling Chuang
68f37a19ae Add contextual card feedback email mechanism.
When users dismiss a card, ask them for feedback.

Bug: 113783548
Test: robotests
Change-Id: I4f53f89ff8377b0dae8c1fc13c6e474456f90c2f
2018-11-29 10:10:57 +08:00
Mill Chen
e44d953a25 Fix conditional cards disappeared from contextual homepage
This symptom only occurred in the case of more than 3 conditional cards
and no suggestion cards in homepage. It is caused by incompletely keeping
conditional cards. So adding missing card types makes conditional cards
be kept correctly.

Bug: 120115919
Test: robotest
Change-Id: Ic67c0a813de4f966c164bf92e4d4d64debcf95be
2018-11-29 10:00:13 +08:00
Mill Chen
8552458b7e Update the strings of conditional cards
Bug: 113451905
Test: visual
Change-Id: I023e005a0a913981f0e0445fa42b7a76b51d3021
2018-11-28 20:33:08 +08:00
Mill Chen
d780928149 Remove TODO item from ContextualCardsAdapter in homepage
Bug: 114009676
Test: rebuild
Change-Id: I57138d766d75c717189c81ddab21503bd1cb9471
2018-11-28 19:32:10 +08:00
TreeHugger Robot
ef02d589c8 Merge "Implement the collapsible feature of conditional card" 2018-11-27 21:43:57 +00:00
Mill Chen
da1ffe8807 Implement the collapsible feature of conditional card
Add two control views for conditional card to achieve collapsibility.
One of these control views is a footer that is appended to the last
position when expanding all conditional cards. The other is a header
that is used in the collapsed state of conditional cards.

Bug: 119593268
Bug: 113451905
Test: visual, robotests
Change-Id: I39e79b8925a9e3e4ce80c422bcd0ba889aba5f6a
2018-11-27 22:55:04 +08:00
Yanting Yang
e11c1d0382 Stop showing battery card in homepage
In previous design, we add default card feature for "me Card". But "me
Card" is being built by another team. We have removed related cards from
default card feature in ag/5394464 but battery card. Now, remove it.

Fixes: 119819851
Test: robotests
Change-Id: I445546024c80c227abce649008ec648340577e99
2018-11-27 19:08:23 +08:00
Mill Chen
7fb3461a59 Implement the renderers for conditional header and footer
Bug: 119593268
Bug: 113451905
Test: visual
Change-Id: I43d6ca8508f0ba49796004d679d6cbe37ddf4455
2018-11-27 10:45:39 +08:00
Raff Tsai
dbbbd7a83d Merge "Add BatteryFix Slice" 2018-11-21 05:57:32 +00:00
Raff Tsai
b92e9d4239 Add BatteryFix Slice
Change-Id: I504df1e9caadced71cc37f8be9207ab9fd26f9ab
Fixes: 114807643
Test: manual
2018-11-21 12:25:06 +08:00
James Lemieux
3a55de44c5 Prepare tests for impending robolectric merge
Some ShadowUserManager function moved into the basic shadow in
robolectric proper and has been removed from the Settings
ShadowUserManager.

Test: make -j56 RunSettingsRoboTests
Change-Id: I38647dae5d16bc79bc7925ca139c9362a2035393
2018-11-20 16:40:57 -08:00
Emily Chuang
1e24cb02dc Add contextual card dismissal implementation
When users clcik on the remove button in dismissal view, the card should
be marked as dismissed in the database, and the UI should be refreshed.

Bug: 113783548, 119594116
Test: robotests
Change-Id: I980600c4c0753ad5abc52ae63bac7196a4b818f1
2018-11-20 12:53:19 +08:00
TreeHugger Robot
f9fcdc1b74 Merge "Refined the CardContentProvider unused operations" 2018-11-19 18:00:25 +00:00
TreeHugger Robot
3f31a7820d Merge "Make UI refresh when there is only one contextual card left." 2018-11-16 09:50:31 +00:00
Sunny Shao
8e5807fcc9 Refined the CardContentProvider unused operations
updated delete and update operations to throw UnsupportedOperationException

Bug: 119647595
Test: robotest
Change-Id: If77662213b89dc91b9ca2d6b028c635a46266eab
2018-11-16 15:44:53 +08:00
Emily Chuang
9c52951ba6 Make UI refresh when there is only one contextual card left.
After having card dismissal mechanism implemented, it is possible that
the card list loaded from the card loader will be empty (users may
dismiss all cards). When there is only one card remaining on the screen
and user dismiss it, the card should go away.

Fixes: 119580732
Test: robotest
Change-Id: I7ae3b03f16a0b8b009d8aa77811b5a6d39c359e7
2018-11-16 14:15:54 +08:00