Commit Graph

157 Commits

Author SHA1 Message Date
Edgar Wang
73454f2607 "Disallow adjust volume" restricted dialog didn't show
root casue: VolumeSeekBarPreference & SeekBarPreference will return
false when call isSelectable() then this preference won't perform Click

Fixes: 123745455
Test: Manual & robotest
Change-Id: Iba27b503e8a272260c80bd41aecdd5cdbc39f962
2019-04-16 09:41:07 +08:00
hughchen
9d4b634535 Remove method that used to get rainbow bt icon
Move get rainbow bt icon method to settingsLib

Bug: 128570540
Test: RunSettingsRoboTests
Change-Id: Iee022bd1471f1da057b1852bb648e9c7ce334727
2019-03-28 10:58:55 +08:00
Salvador Martinez
ef1b5ceb10 Merge "Update dark theme to have new screen" 2019-03-26 22:32:15 +00:00
Salvador Martinez
1053ec04b4 Update dark theme to have new screen
The dark theme preference should have it's own screen rather than
being a dialog. This adds some boilerplate code that will be
needed for the illustration as well as converting the current
list preference to open a new screen.

Test: robotests
Bug: 128686189
Change-Id: I5b62276353c0d39ad2ad00d21d2280e76cceb09b
2019-03-26 13:17:11 -07:00
jackqdyulei
6aeed0eaa1 Fix broken settings tests(Round 2)
1. Mark a few as Ignore with bug number
2. Remove some tests since they are obsolete.

Bug: 129159331
Test: RunSettingsRoboTests
Change-Id: I801681609c31c1f824c44b49ec89d9d28c716539
2019-03-26 12:46:01 -07:00
jackqdyulei
36ce63dcb5 Add fp icon with background shape
Fixes: 126425211
Test: RunSettingsRoboTests

Change-Id: I779f76f597b80d73b6dd6eb9e43a96abc9fee0bb
2019-03-22 12:06:36 -07:00
jackqdyulei
7fb5e75752 Make BT icon colorful
Add new method to get rainbow bt icon and also refactor
AdaptiveHomepageIcon:
1. Rename
2. Add ConstantState

Bug: 126425211
Test: RunSettingsRoboTests

Change-Id: Idb8aaf253d0d9e2ab33d8852f093e6689ebadde4
2019-03-19 12:22:38 -07:00
Alex Buynytskyy
0be46defa6 Robotest fix.
Repro: m dist RunSettingsRoboTests ROBOTEST_FILTER=widget

Test: Robolectric test
Change-Id: I4bd4be29ac28d7532bba8aa26d70758c58bd9a0e
2019-02-13 15:57:09 -08:00
TreeHugger Robot
7b35e42f34 Merge "Set default background color for home icon." 2019-02-13 19:56:35 +00:00
Fan Zhang
07207c0113 Misc ui tweaks.
- Update conditional card layout
  - move action button from right side to bottom.
  - Get rid of the forking between small/big screens.

- Update a few icons

Fixes: 121189136
Fixes: 124315564
Fixes: 124316920

Test: visual
Change-Id: I205d9995a2d7ed06ad9d32f3cea74f2840a28aed
2019-02-12 16:14:21 -08:00
Doris Ling
18cb6feee4 Set default background color for home icon.
- the previous change to update the adaptive home page icon has removed
the default background color for the icon. Set it back to the correct
default if we do not find any background color set from the tile.

Fixes: 124183074
Test: make RunSettingsRoboTests
Change-Id: Idafc08ff1a3b20659c5f275d1a6c404f6c7ef2c0
2019-02-12 15:39:46 -08:00
Amin Shaikh
3304bec980 Use adaptive icon shapes for settings homeepage
- Add AdaptiveIconShapeDrawable for the homepage icon backgrounds
- Rename RoundedHomepageIcon -> AdaptiveHomepageIcon to reflect that the
adaptive icon shape is used

Bug: 123829919
Test: mp settings; manually viewing homepage icons
Change-Id: I9fddfbf57461b300200f30f716d861878bbbcc38
2019-02-05 15:18:52 -05:00
TreeHugger Robot
d47c73549b Merge "Use settingslib ActionBarShadowController" 2019-01-30 04:29:44 +00:00
Fan Zhang
1107d310f1 Use settingslib ActionBarShadowController
Change-Id: Ib70a0ca307bb98e576f2c3deb8f7aea88e59b10e
Fixes: 123311100
Test: robotests
2019-01-29 15:39:32 -08:00
Antony Sargent
59adc31773 Add a plus button to the mobile pref on Network & internet page
On the Network & internet page, we have a "Mobile network" pref that in
single-SIM mode leads to a detail page for the current SIM. In multi-SIM
mode it has more complicated behavior (leading either to details about
the current subscription if there is only one, or a list of
subscriptions if more than one).

One of the things we wanted to add was a shortcut to add another eSIM
subscription. So this CL adds a plus button control on the right of the
preference which leads to a flow to add another mobile subscription via
the eSIM manager.

Bug: 116349402
Test: make RunSettingsRoboTests
Change-Id: I38e0031e3bd603e93c45dcb4557750e7bc1b8b5a
2019-01-29 12:27:46 -08:00
jackqdyulei
6da5e32bd8 Add CardPreference in battery settings page
This is MatrialCardView styled preference that only support
icon, title and summary.

Bug: 119618813
Test: RunSettingsRoboTests
Change-Id: Ibbf9eb2a01c8ee0579e1553ead6e43e96531c92a
2019-01-11 11:00:03 -08:00
TreeHugger Robot
1bbe4241ee Merge "Fix "Play media to" popup close issue when screen rotate" 2019-01-10 19:43:49 +00:00
James Lu
7ce23b578a Fix "Play media to" popup close issue when screen rotate
- Avoid calling getListPreference() in onDialogClose() everytime.
  Due to exception in onDialogClose(). Move preference declaration into if condition.
- Add test case for crash case.

Bug: 119744621
Test: make -j50 RunSettingsRoboTests ROBOTEST_FILTER=UpdatableListPreferenceDialogFragmentTest
Change-Id: Ia20b8289a5863136ea74e02e32b537f6967474e8
2019-01-10 17:09:46 +08:00
Raff Tsai
2831b14048 Release the media player when the video preference is not visible.
Mediaplayer is not released when the device is paused, and hence it
keep consuming battery.

Fixes: 120945749
Test: adb root && watch -n 0.5 -d "adb shell cat /sys/kernel/debug/msm_vidc/core0/inst*/info\|egrep -i \"height\|width\|instance\|fps\|name\""
      Use above command to check if any decoder instance exists.

Change-Id: Ia0edbba0c2fd3c70753bc36d23d82c0770f95672
2019-01-03 12:12:51 +08:00
James Lemieux
f1dade40d2 Use binary resource support in robolectric
The resources available to tests are now exactly the merged resources
located in the APK under test.

Bug: 74359828
Test: make -j56 RunSettingsRoboTests
Change-Id: I050db81a92decefea23314b5ec7a62f77ff4bb2b
2018-12-12 19:53:49 -08:00
Salvador Martinez
6974be492b Merge "Create shell UI for smart battery saver" 2018-12-11 23:24:53 +00:00
Salvador Martinez
108faaf1ce Create shell UI for smart battery saver
This CL creates the new screen WITHOUT any of the behaviors
(changing the global settings/calling power manager apis) and
hooks it up to the preference in BatterySaverSettings for
navigation. The logic for the preference in BatterySaver Settings
is also added so that it shows the correct summary when the
schedule settings are modified. Additionally, a small tweak is
made to the radio preference widget to make it possible to hide
the appendix view. It didn't seem to do anything except get in
the way and potentially ruin your day, much like its biological
counterpart.

Test: Overriding power mode via adb, robotests
Bug: 111450127
Change-Id: Ic681aaf565ce1caf7d00d314e14ae6c4779fe8f6
2018-12-11 11:20:02 -08:00
TreeHugger Robot
e4128eca14 Merge "Allow appending static preferences to RadioButtonPickerFragment" 2018-12-06 23:57:39 +00:00
Salvador Martinez
42e9d26635 Allow appending static preferences to RadioButtonPickerFragment
This makes it so that static preferences can also be added after
the candidates so they can show up on the bottom of the screen.
This is done via a new xml tag for the preference screen that
is usually mostly empty that RaiodButtonPickerFragments use

Test: robotests
Bug: 111450127
Change-Id: I0fe2f480f0ff59b9bf9269e94b33ab4b008b47b8
2018-12-06 14:03:08 -08:00
Sunny Shao
2f7f14f08c Added FloatingAppBarScrollingViewBehavior
-Added FloatingAppBarScrollingViewBehavior for search bar. It can be scolling,
 transparent and overlapped the scrolling child view.
-Exchanged the position of NestedScrollView and AppBarLayout in
 settings_homepage_container.xml.
-Set the app bar height.

Change-Id: I6ef4c9001a1f893292fcbc825a0a9f2069b7286b
Fixes: 118886724
Test: robotest
2018-12-06 14:24:49 +08:00
tmfang
8ad18fb3eb Use SettingsLib's ActionButtonsPreference
Since we moved old ActionButtonPreference into
SettingsLib, we need to update new imports and
declaration in Settings source code.

Test: robotest, manual test
Bug: 120005054
Change-Id: I1e3514ba68a856071c81534d54c99c3d1a11a8ca
2018-12-03 15:12:41 +00:00
Fan Zhang
8e14ca0058 Remove obsolete logic in SettingsActivity.
mIsShowingDashboard is always false, it used to be true when we are
displaying homepage, but now homepage is hosted in a entirely different
activity.

so all related logic can now be removed.

Test: robotests

Misc clean up: remove unused colors

Test: rebuild, color-lint
Change-Id: I1e1628c1e9606c2b7dc40ef3c21d4ed1391a8c03
2018-11-29 11:37:00 -08:00
tmfang
15f2fe9551 Expand more buttons for ActionButtonPreference
Old design, we only need two action buttons in Settings app.
In the future, we need four buttons for some use cases.

Test: visual, robotest
Bug: 120005054
Change-Id: I859fee8d7167ce59222059cc441e4a3c167c7b34
2018-11-28 10:24:07 +08:00
tmfang
dce94bb237 Use SettingsLib's LayoutPreference
- Remove LayoutPreference in Settings source code.
- Remove unused style, layout
- Replace old imports to com.android.settingslib.widget.LayoutPreference
- Replace old XML tag to com.android.settingslib.widget.LayoutPreference

Test: robotest, manual test
Bug: 120005054
Change-Id: I9ae1ae14a16f443e11ac5d75b6038c7c5e253844
2018-11-27 13:12:53 +08:00
tmfang
012b089a91 Allow below divider for all EntityHeader
- Create an method in LayoutPreference let other class can
  set divider status.
- EntityHeaderController will allow to have a below divider
  by default.

Test: visual, robotest
Bug: 116346008
Change-Id: Ic041b8fef8d22ce1b7ea48eedfbe97c708c41ce7
2018-11-20 11:52:29 +08:00
tmfang
5c7f4de999 Remove setButtonPositive method
Since new UI design only exist two button in layout,
we don't need these methods anymore.

Test: robotest
Bug: 116346008
Change-Id: If2e8f7dddb9c13e480438f36fe3c5d6affa4e9ff
2018-11-16 14:33:16 +08:00
tmfang
8f65efa8f9 Create a new visual design for action buttons
- Create a new style for two action buttons.
- Change the layout of two_action_buttons.
  Since we use same style for positive/nagative
  buttons now, we only remain button1/button2 for
  this layout.
- Create a setButtonIcon interface in ActionButtonPreference.
  So, user can set icon for each button in this preferece.

Test: visual, robotest
Bug: 116346008
Change-Id: I511272cba5fd961349b85cae6d30004ddabe2c8e
2018-11-15 10:15:58 +08:00
Fan Zhang
cdf284b732 Make Settings robotest work with tot Robolectric
Bug: 116278591
Test: make -j RunSettingsRoboTests
Change-Id: I32cb2fcf6094675f79d2fc24702ef6298a9691e4
2018-10-31 17:59:17 -07:00
Fan Zhang
394ea1cde5 Merge "Move AppPreference to settingslib, and change imports." 2018-09-25 19:15:19 +00:00
Fan Zhang
754f737c2c Move AppPreference to settingslib, and change imports.
Bug: 116364655
Test: robotests
Change-Id: I313272737dc7c068c47abf8ea021de7d2bea0a25
2018-09-25 09:51:19 -07:00
Fan Zhang
1f0879955c Settings icon pack refresh
* ic_add_24dp
* ic_airplane
* ic_arrow_down_24dp
* ic_cellular_off
* ic_data_saver
* ic_device_others
* ic_info_outline_24dp
* ic_search
* ic_night_display
* ic_lock_open
* ic_wifi
* ic_sync
* ic_wallpaper
* ic_phone

Bug: 116360411
Test: visual
Change-Id: I626cbb88043c36d32ab34b90fc83170bca0be12a
2018-09-24 15:40:14 -07:00
Fan Zhang
23f8d59d02 Sort imports
Having consistent import order will reduce chance of merge
conflict between internal and external master

Test: rebuild
Change-Id: I0b1a170967ddcce7f388603fd521f6ed1eeba30b
2018-08-28 22:13:15 +00:00
Mill Chen
32db609df1 Remove red underline from Device name
- Turn off auto-correction for normal text.

Bug: 79421621
Test: make RunSettingsRoboTest
Change-Id: Ie7c4ebd33073ecaac2048d8630ec7b51e706341c
2018-08-24 13:38:17 +08:00
Fan Zhang
fde4f207ff Force externally injected tiles to use rounded icon.
Bug: 110405144
Change-Id: Ic65200fce5010ea8077254e7a67bbe4dae886ec3
Fixes: 79748104
Test: robotests
2018-08-10 15:45:50 -07:00
Fan Zhang
7d5a9eebb8 Add a config to force rounded icon for DashboardFragment.
And each page has ability to turn on/off rounded icons. This CL only
adds the flag, it doesn't actually change icon shape yet.

- Boolean config in xml
- New protected method for each DashboardFragment to load config
- Plumb the boolean into DashboardFeatureProvider for future use.
- Remove some unused APIs from DashboardFeatureProvider

Bug: 110405144
Fixes: 79748104
Test: robotests
Change-Id: Id34782e75aa7289967e4dd1f4fe2978688092702
2018-08-10 10:57:18 -07:00
jackqdyulei
db0b4f49c9 Update AppCheckBoxPreference to show summary
The summary is invisible by default if we use preference_app.xml,
this CL turn it on if summary is not empty.

Bug: 111366678
Test: RunSettingsRoboTests
Change-Id: I3fe5827a5e80a8e21309b163dbbaa1070f5ee61e
2018-07-26 15:06:45 -07:00
Doris Ling
c24865e242 Merge "Fix battery animation not being played." 2018-07-20 22:28:53 +00:00
Doris Ling
09f527d053 Fix battery animation not being played.
- VideoPreference now checks the view visible flag to see if it
should start playing the video when the surface texture is being
updated. Added a default controller for the VideoPreference to
update the view visible flag of the VideoPrefernece when the
setting page is paused/resumed accordingly.
- add the default controller to the adaptive battery video and the
adaptive brightness video.

Change-Id: I1aae2148c27c7157c97541346790542c74377e5a
Fixes: 111103815
Test: make RunSettingsRoboTests
2018-07-20 14:10:25 -07:00
jackqdyulei
63a5c6f9ab Use SettingsRobolectricTestRunner in settings app
Change-Id: I3682ea52c53ff4fcce7e9aa52a4a6827bb31b2cb
Fixes: 111646366
Test: robotest
2018-07-19 11:21:20 -07:00
tmfang
f12e6adcdc Settings Fragment Migration (Fix test cases)
Fix all Roboletric test cases.
In this CL, some test cases are broken.
So, We ignored these test cases temporarily.

Test: make RunSettingsRoboTests -j56
Bug: 110259478
Change-Id: I1a3075438a614432a2de4f2d96d8abf9a83ce58c
2018-07-11 18:24:51 -07:00
tmfang
99cc23d0da Settings Fragment Migration (Change imports)
This commit *only* changes imports and optimize imports.
We don't do anything else.

This patch can't compile pass and run test case.
We will update other patches to fix these problem.

Change list.

1. import android.app.Fragment; ->
   import androidx.fragment.app.Fragment;
2. import android.app.DialogFragment; ->
   import androidx.fragment.app.DialogFragment;
3. import android.app.ListFragment; ->
   import androidx.fragment.app.ListFragment;
4. import android.app.LoaderManager; ->
   import androidx.loader.app.LoaderManager;
5. import android.content.AsyncTaskLoader; ->
   import androidx.loader.content.AsyncTaskLoader;
6. import android.content.Loader; ->
   import androidx.loader.content.Loader;
7. import android.app.FragmentTransaction; ->
   import androidx.fragment.app.FragmentTransaction;
8. import android.app.FragmentManager; ->
   import androidx.fragment.app.FragmentManager;
9. import android.app.LoaderManager.LoaderCallbacks; ->
    import androidx.loader.app.LoaderManager.LoaderCallbacks;

Bug: 110259478
Test: Can't test it.
Change-Id: I0a3f98fff34a3494a839c3c42aeabcec3df2c8b3
2018-07-11 18:23:51 -07:00
Doris Ling
8700777839 Fix continous playing of gesture animation video.
In the gesture settings, we listen to surface texture updates to
determine when both the view and video is ready, and we auto play the
animation video. However, sometimes, the video listener will receive
the surface texture updates after the settings activity is being paused,
in which case, the video will continue to play until the user navigate
back to that gesture settings page.

In onSurfaceTextureUpdated(), check for view visibility before we try to
update anything to avoid unnecessary operation.

Change-Id: I46474c9f461d5705f599deb8b2535d8505f2fe75
Bug: 110923173
Test: make RunSettingsRoboTests
2018-06-29 14:22:36 -07:00
Fan Zhang
c7162cd24d Reorder and clean up imports.
Test: rebuild
Change-Id: I178485c84ae7146f991fd77b6d7504b029942a68
2018-06-18 15:45:09 -07:00
Fan Zhang
670ce333ae Misc clean up. move widgets from graph to widget package.
Bug: n/a
Test: robotests, rebuild
Change-Id: I910f355312d52e81a0bf57b46a3f267e1eb9882a
2018-06-11 16:05:12 -07:00
Salvador Martinez
e83388164c Change UI for wireless AP tether band selection
We decided to use the list preference after all due to
some devices not supporting various combinations of AP
configurations. This change makes it so that there are
three different UIs depending on the configurations
which are supported.
- 5.0 GHz unsupported: disable the preference and just
set the value to 2.4 GHz
- all supported, no dual mode: allow the user to choose
EITHER 2.4 GHz or 5.0 GHz
- all supported, dual mode: allow the user to choose
2.4 GHz or BOTH 2.4 GHz & 5.0 GHz with 5.0 being
preferred

Test: atest SettingsRoboTests
Bug: 80315296
Change-Id: I888d35811a98b8cf0155a3cb96c42ff762763378
2018-06-06 13:09:41 -07:00