Commit Graph

427 Commits

Author SHA1 Message Date
Doris Ling
8e208c6516 Remove obsolete chart view widgets.
ChartDataUsageView and ChartNetworkSeriesView are no longer being used.
Remove them to avoid the need to maintain obsolete codes.

Bug: 117433810
Test: rebuild and make RunSettingsRoboTests
Change-Id: I0c99725500926083bee693c102a323d563647c3a
2018-10-08 14:18:50 -07: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
Philip P. Moltmann
a5918a6a68 Make Settings use system-api restricted icon.
Test: Browsed around settings
Bug: 110953302
Change-Id: I1b19be721719ed8946cb558b93119b1b0e173794
2018-09-17 15:48:31 -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
Mill Chen
1005e76690 Remove SettingsAppWidgetProvider and related resources
Bug: 111514449
Test: manual, RunSettingsRoboTests
Change-Id: I91e5662148a00a2aed12341304007f3b155e181c
2018-08-13 22:38:10 +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
TreeHugger Robot
1b47c056b2 Merge "Use BluetoothAdapter instead of LocalBluetoothAdapter" 2018-07-31 04:54:43 +00:00
hughchen
e94b02206e Use BluetoothAdapter instead of LocalBluetoothAdapter
LocalBluetoothAdapter only has a few APIs that is not supported
by BluetoothAdapter, and lots of LocalBluetoothAdapter function
pass parameter to BluetoothAdapter directly.
Do the refactor in Settings, use BluetoothAdapter instead of
LocalBluetoothAdapter.

Bug: 111769754
Test: make -j42 RunSettingsRoboTests
Change-Id: I88e5a8377b5d1106c7679e6a8c3fd1ca1a80ea6f
2018-07-31 11:35:36 +08: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
tmfang
41ab6b4bf8 Migrate all AlertDialogs to AndroidX version
This CL only changed AlertDialog imports.
So, reviewer can review it easily.

Change-Id: I097bc44394195b14287f4f920c570ac8653f356a
Fixes: 111413092
Test: This CL can't pass Robo test.
2018-07-20 11:32:13 +08:00
Fan Zhang
420f385a18 Fix a incorrect type cast for alert dialog
Change-Id: I2265c4510785f88ef7950cd29779848eb2e58dc4
Fixes: 111488148
Test: manual
2018-07-16 12:23:57 -07:00
Fan Zhang
176ccd0c35 Clean up: fix incorrect @VisibleForTesting imports
Test: rebuild and robotests
Change-Id: I33d7ee1c0622c01f592920baaf01d44ad19d9a13
2018-07-13 13:08:53 -07:00
TreeHugger Robot
368eec88b5 Merge "Add new widget SingleTargetGearPreference" 2018-07-12 08:16:32 +00:00
tmfang
27c84de325 Settings Fragment Migration (Build pass app)
This patch focused on fixing compile errors and some runtime errors.

Test: We can't test it now. But we will have an integration test later.
Bug: 110259478
Change-Id: I16c471ddcd0fa1460c665b7f74d86fcace5ee67b
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
Fan Zhang
4560ab7a35 Add a few pages to search index.
- Data saver
- A few special permission access pages
   - Picture-in-picture
   - Premium sms
   - do not disturb access
- And a unrelated cleanup: move EmptyTextFragment from
  notification/ to widget/

Bug: 70720645
Test: robotests
Change-Id: I6a87f712bf81f9fd32fa9a3826fba851ca748409
2018-07-10 17:02:09 -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
Ivan Chiang
ca0101fe1f Add new widget SingleTargetGearPreference
Add the new widget SingleTargetGearPreference
with a gear on the side.

Bug: 110238502
Test: m -j SettingsRoboTests RunSettingsRoboTests
Change-Id: I7463e5b4fdd8bc86d0ab6cb930f0053ce0fa79fa
2018-06-29 16:06:28 +08:00
Fan Zhang
c7162cd24d Reorder and clean up imports.
Test: rebuild
Change-Id: I178485c84ae7146f991fd77b6d7504b029942a68
2018-06-18 15:45:09 -07:00
Leo Hsu
2e4f9fe61b Usage graphs support RTL style.
Flips the canvas horizontally before drawing paths under RTL mode.

Bug: 78008951
Test: manually verified graphs of wifi data usage, app data usage, and
battery usage.

Change-Id: I79286e9f3f98632e3a9710d42c3e197231a14c39
2018-06-12 12:48:20 +08: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
Fan Zhang
ddc6c646c0 Convert BatterySaverButton controller to Slice compatible.
- Update preference key to match the key defined in SettingsSlicesContract
- Model TwoStateButtonPreference similar to TwoStatePreference (add
  setChecked, isChecked method)
- Remove TwoStateButtonPreferenceController entirely because all methods
  are moved into Preference directly for better encapsulation.
- Make BatterySaverButtonPrefController direclty implement
  TogglePreferenceController. It was not possible before because the
  interface between TwoStateButtonPreferene is too different from
  TwoStatePreference.

Bug: 80106671
Test: robotests
Change-Id: Ib72807dcf1b36e959e08df8d80538c3f9f79b76d
2018-05-22 20:22:26 -07:00
Fan Zhang
71c402b152 Misc GAR fixes
- Use colorPrimary for EntityHeader background.
- Update data usage header text to be 87% black.

Change-Id: Ic361155d7cd36a2f1cca96e918af0e3855fb8ced
Fixes: 79773433
Test: robotests
Test: visual
2018-05-21 15:37:43 -07:00
Jason Chang
a76797e756 [SettingsLib] Update Utils.getColorAccent() and Utils.getColorError() to return ColorStateLists instead of colors.
Update Utils.getColorAccent() and Utils.getColorError() to return ColorStateLists instead of colors and change every callers entry.

Bug: 78215054
Test: manually test for UI
Change-Id: Ie201aee439bd9e8337eca989b4cdc836a6e8e917
2018-05-21 17:23:41 +08:00
Fan Zhang
1d04fa9197 Merge "Don't use cached app icon in app info page." into pi-dev am: 7312f55549
am: 9b8684fd12

Change-Id: I99e6bf942928fe64595c1eba03c3099910fc0545
2018-05-18 16:10:25 -07:00
Fan Zhang
fcbf155b47 Don't use cached app icon in app info page.
The cache in ApplicationsState is causing a lot of damage because AS
object is not smart enough to invalidate the cache in all conditions. So
we end up having bugs like stale app label or icon in weird cases.

This change stops using the cache when loading app icon in entity
headres. This is only a stop gap solution to fix most visible (and most
frequently complained) parts of the page. We still need to address the
cache in ApplicationsState eventually.

Change-Id: Iea88ad99d4069d678d09943cfb0b0e5c94eb3326
Fixes: 79881693
Test: robotests
2018-05-18 14:31:48 -07:00
hughchen
b6ac12eed4 Update DialogFragment UI when BT device is add/remove/rename
* Add AudioSwitchCallback() in AudioSwitchPreferenceController.
  This callback is used to notify SoudSettings to update the dialogFragment UI.
* Add UpdatableListPreferenceDialogFragment that updates the available
  options when dialog is shown
* Add test to verify the adapter count when
  onListPreferenceUpdated() is called.

Bug: 77783217
Test: make -j50 RunSettingsRoboTests
Change-Id: I8cac1b30ec50df026f4b7722dd1cd2f69e77a4cb
Merged-In: I8cac1b30ec50df026f4b7722dd1cd2f69e77a4cb
2018-05-17 07:40:52 +00:00
Fan Zhang
cac18e12ac Move app setting link from Entity header to pref controller
Change-Id: I13a27486a9c9b4c4fb358715d678473e63c1b624
Merged-In: I13a27486a9c9b4c4fb358715d678473e63c1b624
Fixes: 79688822
Test: robotest
2018-05-16 19:56:33 +00:00
Fan Zhang
8e925a4282 Merge "Move app setting link from Entity header to pref controller" 2018-05-16 19:48:32 +00:00
Fan Zhang
e2346643c7 Move app setting link from Entity header to pref controller
Change-Id: I13a27486a9c9b4c4fb358715d678473e63c1b624
Fixes: 79688822
Test: robotest
2018-05-16 10:51:31 -07:00
hughchen
acb6e89c52 Update DialogFragment UI when BT device is add/remove/rename
* For fix the "Automatic merge failed" in pi-dev, cherry pick the ag/3937781 in
  master. Change android.support.* to androidx.*
* Add AudioSwitchCallback() in AudioSwitchPreferenceController.
  This callback is used to notify SoudSettings to update the dialogFragment UI.
* Add UpdatableListPreferenceDialogFragment that updates the available
  options when dialog is shown
* Add test to verify the adapter count when
  onListPreferenceUpdated() is called.

Bug: 77783217
Test: make -j50 RunSettingsRoboTests
Change-Id: I8cac1b30ec50df026f4b7722dd1cd2f69e77a4cb
2018-05-16 22:13:24 +08:00
android-build-team Robot
02ec86a17b Merge "Establish permanently unavailable settings" 2018-05-09 18:14:32 +00:00
Matthew Fritze
bd376296cd Establish permanently unavailable settings
Distinguish between settings which are permanently unavailable on
the device, and temporarily unavailable. This enables us to restrict
which setting slices are exposed in onSliceGetDescendants.

The primary changes in this CL are renaming:
"DISABLED_UNSUPPORTED" -> "UNSUPPORTED_ON_DEVICE"
to be more clear the the setting will cannot be accessed on the device, and,
adding a new enum to encapsulate settings which are currently unavailable, but
could be enabled in the future.

Also remove UNAVAILABLE_UNKNOWN. Devs should never need this enum.

Bug: 78910582
Fixes: 79245656
Test: robotests
Change-Id: I42c2cedab66be2d76999795f46470a079cc1ec71
Merged-In: I58821a6cfd6134b3b351657b6edf5f74ead00643
2018-05-09 10:03:40 -07:00
Matthew Fritze
f87a1f3f41 Establish permanently unavailable settings
Distinguish between settings which are permanently unavailable on
the device, and temporarily unavailable. This enables us to restrict
which setting slices are exposed in onSliceGetDescendants.

The primary changes in this CL are renaming:
"DISABLED_UNSUPPORTED" -> "UNSUPPORTED_ON_DEVICE"
to be more clear the the setting will cannot be accessed on the device, and,
adding a new enum to encapsulate settings which are currently unavailable, but
could be enabled in the future.

Also remove UNAVAILABLE_UNKNOWN. Devs should never need this enum.

Bug: 78910582
Bug: 79245656
Test: robotests
Change-Id: I58821a6cfd6134b3b351657b6edf5f74ead00643
2018-05-09 08:36:59 -07:00
android-build-team Robot
714b15cbdf Merge "Use ListFormatter to join strings" 2018-05-08 20:20:28 +00:00
yuemingw
01816f4cbb Policy transparency dialog should be shown when SwitchBar is restricted.
After ag/3818911, touch event of Switchbar is delegated to the switch.
When the SwithBar is disabled by admin, switch is GONE and restricted icon
is VISIBLE instead. We should let touch event be delegaed to restricted
icon and show policy transparency dialog when it's clicked in this case.

Bug: 77898233
Bug: 70206452
Test: Manually via setting disallow_share_location in TestDPC.

Merged-In: Ifa4fa6ebbe7986277f5cd0951a399ea2377a39f9

Change-Id: If4a5349134e6f0e064561b4860966f950ce423b3
2018-05-02 13:38:12 +01:00
yuemingw
69fa9e0d49 Policy transparency dialog should be shown when SwitchBar is restricted.
After ag/3818911, touch event of Switchbar is delegated to the switch.
When the SwithBar is disabled by admin, switch is GONE and restricted icon
is VISIBLE instead. We should let touch event be delegaed to restricted
icon and show policy transparency dialog when it's clicked in this case.

Cherry-picked from ag/3924516.

Bug: 77898233
Bug: 70206452
Test: Manually via setting disallow_share_location in TestDPC.

Change-Id: Ifa4fa6ebbe7986277f5cd0951a399ea2377a39f9
2018-05-02 09:40:21 +00:00
jyhshiangwang
4d015b17b3 Use ListFormatter to join strings
Currently in Settings we are using R.string.join_many_items_first, R.string.join_many_items_middle and R.string.join_many_items_last to manually join strings. The join code is messy and the joined string is incorrect in some languages, so we migrate all string join to just use ListFormatter.getInstance().format().

Bug: b/78248791
Test: robotests
Change-Id: I898339978e6e2027587e28994b0280fa46821fd6
2018-05-02 11:15:32 +08:00
Tony Huang
e0b3323bde Merge "Update StorageSummaryDonutPreference content" into pi-dev am: 070238df13
am: 3ba6c42ab0

Change-Id: Ibb80c748317948ab1b5b62f606c06375ee0c1cc9
2018-04-26 20:09:01 -07:00
Tony Huang
070238df13 Merge "Update StorageSummaryDonutPreference content" into pi-dev 2018-04-27 02:58:15 +00:00
Phil Weaver
16904e3019 Merge "Improve battery saver setting a11y semantics" into pi-dev am: 577f2af92b
am: d7d1f98fa7

Change-Id: Ic79fa7da89397c517acd3087e23d652056296e89
2018-04-26 17:57:23 -07:00
Phil Weaver
577f2af92b Merge "Improve battery saver setting a11y semantics" into pi-dev 2018-04-26 23:50:54 +00:00
Tony Huang
494a848545 Update StorageSummaryDonutPreference content
- Set its view as unclickable
- Add content discription on DountView

Fixes: 78172416
Fixes: 78170302
Test: manual open talkback to check voice content
Change-Id: Ic40f88fb27344822bbb14cf62a79d8e030ee16ac
2018-04-25 10:55:51 +08:00
Salvador Martinez
811de70915 Merge "Check if boxes still available when restoring state" into pi-dev am: 6fcce25b72
am: f6d5f31564

Change-Id: I8b59411b62292b8f65a62f60bde8981c66f3401a
2018-04-24 19:13:32 -07:00
Phil Weaver
1979829294 Improve battery saver setting a11y semantics
Adding the ability to override a couple a11y traits
of the Settings version of SeekBarPreference.
Setting semantics for the battery level to report
itself as a percentage. Also tweaking the content
description to use a different title. The title isn't
exactly what I'd like, but it is better than just
saying "At 15% - 15%".

Bug: 74357845
Fixes: 78479637
Test: Used a custom accessibility service to inspect
the information coming from the battery saver seek bar.

Change-Id: I9db55cf0bb3cfee86a46d22c1208262407332d5f
2018-04-24 15:23:38 -07:00