Commit Graph

44 Commits

Author SHA1 Message Date
Antony Sargent
0f93979e98 Merge "Fix focus behavior of ValidatedEditTextPreference" into oc-mr1-dev am: b8ff97fbd5
am: 707552888d

Change-Id: I2399b0336772742ef3afb34df393d96bb5a37a08
2017-09-11 20:16:44 +00:00
Antony Sargent
9be8c3fbfe Fix focus behavior of ValidatedEditTextPreference
The bug report was that the cursor is set to the beginning of the
EditText for wifi hotspot password field, instead of at the end (or
having the entire field selected). This fix makes it so that all
ValidatedEditTextPreference's will put the cursor at the end of the
EditText.

Bug: 65413206
Test: make RunSettingsRoboTests
Change-Id: I23f3bb1b3f1b49b2f193c0ae2e103eae5c1a1019
2017-09-11 10:12:05 -07:00
Doris Ling
87ca13d446 Merge "Set drawable for the entity header app preference button." into oc-mr1-dev am: 5fe8e76b36
am: c905662743

Change-Id: Iea22293c41c88fbd9c0a20e71bcfc3972fba17c0
2017-09-02 00:46:36 +00:00
Doris Ling
a7b40995de Set drawable for the entity header app preference button.
In the entity header layout, the action buttons resource is set to null by
default. When we bind the button with the app preference action, we
should also set the drawable to the settings icon as well.

Change-Id: Ic259b4c538f529671ca5a9c67664ef32fbbb25ae
Fixes: 64826061
Test: make RunSettingsRoboTests
2017-09-01 14:52:30 -07:00
Daniel Nishi
9d0a84e95f Merge "Move the Robolectric shadow config up." into oc-mr1-dev am: efcc8be05c
am: 5f97c05f1c

Change-Id: I46c4a921a25ef17197e90038ff71a982a192aae7
2017-08-24 22:15:39 +00:00
Daniel Nishi
739b0eef10 Move the Robolectric shadow config up.
In my testing, this reduces the runtime of the Robolectric Settings test
suite on my Z840 workstation from 440 seconds to 402 seconds on average.
By avoiding having a method-level Robolectric shadow import, we avoid
going down a code path which needs to add more shadows later in the
Robolectric execution.

Bug: 64808827
Test: Settings robotests still pass
Change-Id: I7b40d73b30306ae3f9759281afbd7f7266579e24
2017-08-17 14:37:27 -07:00
Fan Zhang
36717d4399 Compute aspect ratio properly
Change-Id: Ic4e1f20f7354b9ab5f4e9c7564d16d06324ec23d
Fixes: 64608152
Test: visual
2017-08-15 11:14:58 -07:00
Doris Ling
c2b7f12f30 Merge "Fix null pointer exception when updating action bar shadow." into oc-mr1-dev am: 51fb9ad956
am: 7cdb94384f

Change-Id: Iae7f415054b1848a4c33d89e176f38fb942ded03
2017-07-28 18:07:34 +00:00
Fan Zhang
2d28a4ceb4 Unify action buttons to a common widget (part 1)
- Create a preference type to host action button preferences.
- Convert app battery usage page to use the new preference
- Convert wifi detail page to use the new preference

Change-Id: I60bc473986ab46f2897e2537eb0e013fa813a4fc
Fix: 63991885
Test: robotests
2017-07-28 01:00:39 +00:00
Doris Ling
d53a3128e8 Fix null pointer exception when updating action bar shadow.
Check for valid activity when trying to access the action bar as the
activity can become null when in monkey test.

Change-Id: I684d873b9eabb9d8461e99bb4385d411a48c0c52
Fix: 64084651
Test: make RunSettingsRoboTests
2017-07-27 11:14:44 -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
Fan Zhang
75bee9bf98 App header cleanup
- Refactor the entity header layout to use LinearLayout and add id to
  content area
- Remove now unused AppHeader class
- Make entire icon+text area clickable and link to app info page
  Refactor the binding logic from bindButton to its own method.
- Remove unused MultiLinePreference

Fix: 62705377
Test: make RunSettingsRoboTests

Change-Id: I6db554695410e71b669f6fdba29d98fedc3364b9
2017-07-06 13:23:38 -07:00
Fan Zhang
896f1b363c Reduce jank around loading view when opening data usage UI
Change-Id: I3d23d8160b046de8fe125ba0697b7b3d7786453c
Fix: 28181319
Test: robotests
2017-06-26 15:15:30 -07:00
Fan Zhang
f18fa145f2 Merge "Add logging when entity header buttons are clicked" into oc-dr1-dev am: 58d27eef9a
am: 1d3f5e55cd

Change-Id: I1f0bd8ed2dcedb9add6c63d1ab72ce30fb93ca70
2017-06-20 23:44:21 +00:00
Fan Zhang
a74337c627 Add logging when entity header buttons are clicked
Change-Id: I673e5b4a6c5f8736bbec72e259a82acb3f514828
Fix: 62709062
Test: make RunSettingsRoboTests
2017-06-20 16:53:14 +00:00
Fan Zhang
78d5efdfea Refactor hotspot into a full page
- Deprecated WifiAPEnabler, and copied most of its logic into various
  controllers and WifiTetherSettings.
- Added tests

Fix: 37253404
Fix: 36181835

Test: make RunSettingsRoboTests
Change-Id: Iad994d61b694ad7f1113d045a3e7500eeaec178b
2017-06-14 12:32:44 -07:00
Andrew Sapperstein
9f1e911759 Refactor test runner to use static list of resource paths
Previously everything lived in an inner class method of
SettingsRobolectricTestRunner. That method has now been turned into
a static method so that it can be called by other runners.

Bug: 62460102
Test: robotests
Change-Id: I6612b1f26404587301c534c8ba60e39d59d6c840
2017-06-09 09:21:26 -07:00
TreeHugger Robot
cf162d1291 Merge "Extend single line summary preference to multi line." 2017-05-30 20:48:18 +00:00
Fan Zhang
d35f90c289 Extend single line summary preference to multi line.
also updated some strings char limit.

Change-Id: Ie068ecc410bb8211b4cd5e32a5539c824c48040f
Fix: 36413664
Fix: 62079108
Test: make RunSettingsRoboTests
2017-05-30 11:48:20 -07:00
Fan Zhang
012028e3a3 Misc logging changes
- log search result count, rank when clicking search result.
- log app package when default app is changed

Change-Id: Idd11bd67caba2beaa59c65839c40db8c71787388
Fix: 62072727
Test: make RunSettingsRoboTests
2017-05-26 12:28:13 -07:00
Antony Sargent
ff8e3e7bde Add setIconContentDescription to EntityHeaderController
This lets us set a contentDescription on the icon in entity headers
for accessibility.

Bug: 62068874
Test: make RunSettingsRoboTests
Change-Id: I1af7aad34aa65b616cf4edb8b144f315040a9fdd
2017-05-24 17:21:58 -07:00
Fan Zhang
841d1d5aab Show shadow when entity header starts scrolling.
- Add a controller to manage add/remove onScrollChangedListener to
  recyclerviews.
- When recyclerview on each screen is scrolled to top, set actionbar
  elevation to 0, otherwise set it to non-zero.
- When screen is moved to background, detach the listener.
- Use the controller in entity header.

Change-Id: Iecf194d885098c98c392810f62893ae9189f3936
Fix: 37670670
Test: make RunSettingsRoboTests
2017-05-22 17:16:24 -07:00
Fan Zhang
d7414259d0 Move entity header controller out of application package.
Bug: 37669238
Test: rerun robotests
Change-Id: I54eb30f28fa0a88a6f0b97b53f9f1408320b5ce0
2017-05-18 16:36:32 -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
Maurice Lam
c41e408aea Refactor choose lock password scrolling
Replace the negative margin + inset background hack with a overriding
call to requestRectangleOnScreen, which will also make a best effort
to show all the password requirements if there are multiple of them.

Bug: 38236574
Test: Added ScrollToParentEditTextTest
Change-Id: Id570652b64434b2d0b25c231540375d93884aaa9
2017-05-11 19:26:12 +00:00
Doris Ling
e249c00a3c Limit the summary text for App info->Permissions to one line.
- the summary text is the list of permissions that the app has. It is
dynamic, and when the list is long, setting the summary will expand
the text view height and make the page launch looks janky. We cannot
pre-set the summary to certain line, since the permissions list for each
app is unknown beforehand. To avoid the jank, limit the summary to 1
line and truncate it if necessary.

Change-Id: I1acb1ac9f46c55808ce03626e53cf71502231ab2
Fix: 36413664
Test: make RunSettingsRoboTests
2017-05-04 23:20:32 +00:00
Doris Ling
e2ad415fdb Add content description to the master switch toggle button.
Set the preference title as the toggle button's content description, so
that when user focus on the button, it will read the lable as well on
top of just "switch on" or "switch off".

Change-Id: Id1954fd54b7d38cb4e75d8b3e49d05ee694e0e41
Fix: 37618855
Test: make RunSettingsRoboTests
2017-04-27 15:09:21 -07:00
Julia Reynolds
c68ae0b9fd Channel settings updates
- Update master switch preference to store enabled state in case
it's set before the view holder is bound
- Update master switch preference to prevent disabled switches
from being toggled
- Show an importance summary for max importance
- properly handle null notification sounds

Change-Id: I395b95b76d2a3c1c94b41d1c2720bb0cf1cae917
Fixes: 36920159
Fixes: 37421928
Fixes: 36939825
Test: RunSettingsRoboTests & manual
2017-04-17 14:42:09 -04:00
Filip Pavlis
4bd1e4f73b Omit using ctor of PreferenceViewHolder in tests.
See the topic for related change in the support lib.

Bug: b/33774880
Test: N/A
Change-Id: I3514821db649e26068f151bd69c687faab5ae222
2017-04-05 11:12:11 +01:00
Fan Zhang
a278962dbc Refactor DefaultAppPicker to a general radio button picker
Bug: 36557316
Test: make RunSettingsRoboTests
Change-Id: I52985e527e55697cf29f8d97d775d4bbed025beb
2017-03-23 12:41:31 -07:00
Fan Zhang
fe292515d8 Refactor the layout for MasterSwitch to a 2 target pref
And move the layout to settingslib.

The new TwoTargetPreference is a preference object that has a vertical
divider between main panel and widget (if it exists).

Converted master switch, restricted preference, gear preference to use
the new style

Change-Id: Ia3848cebb06b8edc4e60abf9b0caf13cdb29c22c
Fix: 36511169
Test: make RunSettingsRoboTests
2017-03-22 16:03:40 -07:00
Christine Franks
c53ab43d94 Add color temperature preference to Night Display
Bug: 32463283
Test: make RunSettingsRoboTests
Change-Id: Ibf3cf9af05b44a071603d3d7efa6e90ae00c823a
2017-03-20 15:47:41 +00:00
Doris Ling
6467d2027e Extends the touch area for the switch in Master Switch preference.
- set view click listener on the entire widget view instead of only
listening to the switch button event.
- move the preference layout end padding into the widget frame, so that
clicking on the empty space at the end will send the click event to the
widget frame instead of the preference view.

Change-Id: I98025f723465f3941cebbbd03b812209c0240590
Fix: 35872094
Test: make RunSettingsRoboTests
2017-03-13 10:29:34 -07:00
Fan Zhang
bfb006aa32 Use framework support to customize dividers between prefs.
Bug: 33579296
Test: make RunSettingsRoboTests
Change-Id: I1bb3b82b88dc727cda05b00058e6f40564f0e5db
2017-02-27 12:47:44 -08:00
Doris Ling
c4c9f4d50e Update Network & internet->Wi-Fi to use MasterSwitchPreference.
- Add a preference controller for Network & internet->Wi-Fi to control
  the preference toggling and summary update.
- Refactor WifiSettings and WifiEnabler to share code between the new
  wifi preference controller and the wifi setting.
- Refactor BluetoothSummaryHelper to have a common base class with the
  WifiSummaryHelper.
- Rename the summary helper to summary updater.

Bug: 34280769
Test: make RunSettingsRoboTests
Change-Id: I00ebfc161bcef89331bb41ba405ed8cb8232d248
2017-01-25 10:43:01 -08:00
Doris Ling
1432cb8529 Add new preference class MasterSwitchPreference.
- Add a new preference type that has Title and optional summary on the
  left, and a toggle switch on the right. Clicking the left part of the
  preference will open a settings screen.
- Update Connected devices->Bluetooth to use this new preference.
- Refactor BluetoothSettings and BluetoothEnabler to share code between
  the new bluetooth preference controller and the bluetooth setting.

Bug: 34280769
Test: make RunSettingsRoboTests
Change-Id: I109ecdba640ecdd4748a6e5b2b4f4c47cbf653fd
2017-01-20 16:19:00 -08:00
Fan Zhang
4addb59265 Remove divider lines from all PreferenceFragments.
(this is partially revert of ag/I0ce486f7ac6)

- Only draw divider lines on top of PreferenceCategory and
  FooterPreference

Bug: 33601143
Test: make RunSettingsRoboTests
Change-Id: I26146dcae1603dc807e54ea431910685107be94c
2016-12-14 16:41:49 -08:00
Fan Zhang
d5b48454a3 Build a new FooterPreference UI.
- Create a new layout for footer prefs.
- Create a new FooterPreference type to use the layout
- Create a Mixin to create and add the pref to screen
- Create a new lifecycle observer type to invoke mixin at right time
- Switch SettingsPreferenceFragment to use footer mixin.
- Switch FingerprintSettings to use the new footer pref.

Bug: 33579394
Test: RunSettingsRoboTests
Change-Id: I548ac39a0d120196a7ffed09b4f98bd9a80bae90
2016-12-14 16:41:49 -08:00
Salvador Martinez
f86905ed50 Modified settings tests to use custom test runner
The custom test runner lets us use resources from
multiple projects which resolves many ResourceNotFound
errors that would come up when people who made changes
wrote tests.

Test: make RunSettingsRoboTests
Bug: 32180625
Change-Id: I71f30eecc1164b117351a74b3ea0533625feae5b
2016-10-25 17:20:20 -07:00
Maurice Lam
67df126291 [Fingerprint] Make enroll progress bar scalable
Make the fingerprint enroll progress bar scalable by moving it to a
single FingerprintProgressBar view and make it fill the remaining
space.

- The background fingerprint icon was changed to include the padding
internally so it can be added as the background directly onto the
progress bar view.
- The icon in landscape mode is also fixed to use the fingerprint
icon rather than the lock icon.

Test: cd tests/robotests && mm
Bug: 32123370
Change-Id: Ia5cf37d92f0af7c1cf39287f5070c44f51d44878
2016-10-20 17:20:56 -07:00
Fan Zhang
e6c60c24a8 Add test for new DashboardFragment and PreferenceController
Also added a FakeFeatureFactory to make it easier to mock different
FeatureProviders.

Bug: 31781480
Test: make RunSettingsRoboTests
Change-Id: Ie45db601e0bec951d7ef983ec2e3ca747ec1c3af
2016-10-06 10:33:01 -07:00
Fan Zhang
081b549768 Fix robolectric tests
Fix: 31751980
Test: make RunSettingsRoboTests
Change-Id: Id787665d7cb44ee8a0c6ff52927394de1c3e9efc
2016-09-27 12:28:13 -07:00
Matthew Fritze
9a3dc4e2a8 Update Robolectric tests to use google truth
Bug: 31545801
Test: make RunSettingsRoboTests
Change-Id: Idb801d51b6a4dc02ea062bc32086e1a8fc28b94b
2016-09-19 11:42:11 -07:00
jackqdyulei
e54dd3a0cd RTL: Navigate to previous tab when back.
When go back from RTL language, user should be navigated to the
previous setting tab.

Bug: 31145366
Test: make RunSettingsRoboTests

Change-Id: I2f2ec727f9737ea0e52dac9950c8af34559e3d9a
2016-09-15 11:22:53 -07:00