Commit Graph

144 Commits

Author SHA1 Message Date
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
Ryan Mitchell
5f6924761e Fix Settings test that uses OverlayInfo
Now that targetOverlayableName has been added to OverlayInfo, the tests
that construct the info objects must be fixed.

Bug: 128830059
Test: atest SettingsRoboTestStub
Change-Id: I2cee25e417ec643f758ebe40551cc97b1f0828ac
2019-03-22 08:15:44 -07:00
Issei Suzuki
fd85a9fae6 Move AmbientDisplayConfiguration class out of internal package.
Test: m droid (run full build)
Bug: 126327497
Change-Id: Idc07c811864edb4f88151051e25d6e05e4caf3b2
2019-02-27 13:25:15 +01:00
Alex Salo
bb4e9ce201 Add "Adaptive sleep" setting
Adaptive sleep setting, if enabled, will perform an attention check
right before the power manager is scheduled to dim and then turn off the
display. If the attention check says that user is currently paying
attention to the device, the screen sleep timeout timer will be reset,
as if user had interacted with the display.

The animation and explanation strings are still TBC per UX team.

The setting is only displayed on supported devices.

Test: make RunSettingsRoboTests
Bug: 111939367
Change-Id: I191dd8ef06ecec4edbe4357671a7a9360971c06f
2019-01-28 11:39:00 -08:00
Christine Franks
ade7d943c3 Move color modes to ColorDisplayManager
Bug: 123352608
Test: make RunSettingsRoboTests

Change-Id: I3c054fa0cca4bbd1c955ef03d1733320ffe9e0f0
2019-01-24 10:57:30 -08:00
Christine Franks
5405d71616 Use ColorDisplayManager for night display
Bug: 111215474
Test: make ROBOTEST_FILTER="(Night*)" RunSettingsRoboTests -j48
Change-Id: I8b92407470446ef86e460985fc64cf2467eb3e5c
2019-01-23 13:32:30 -08:00
Lucas Dupin
a1916172d8 Night mode wording
Renaming to 'theme' per UX recomendation

Change-Id: I80817ea3778715c3514205ede738f70d92fa15e9
Fixes: 123042258
Test: manual
2019-01-20 14:56:04 -08:00
Fan Zhang
69e4302d40 New approach to override timeout max value
- Revert "Allow OEM customizing max screen timeout value."
- Use separate timeout list for screen timeout and lock timeout.

This reverts commit f57f490aa6.

Fixes: 113346164
Test: manual

Change-Id: Ifbb054c232c47455ae82e3ed817f9c1e96f694cf
2019-01-16 13:59:10 -08:00
Daniel Solomon
6f8934bf3a Merge "Hide display white balance setting depending on color mode" 2019-01-15 19:29:16 +00:00
Fan Zhang
f57f490aa6 Allow OEM customizing max screen timeout value.
Side fix - update string for select timezone.

Change-Id: Id61128b7dfcc27da8ed07225af3b6bec4e93b512
Fixes: 113346164
Fixes: 121986474
Test: robotest
2019-01-09 11:19:48 -08:00
Daniel Solomon
60418b4de8 Hide display white balance setting depending on color mode
Display white balance relies on a linear color transform matrix to work
as intended. When the current color mode is COLOR_MODE_SATURATED, this
condition is not guaranteed to be satisfied. In this case, hide the
display white balance setting.

Bug: 116516917

make ROBOTEST_FILTER=DisplayWhiteBalancePreferenceControllerTest
RunSettingsRoboTests -j32

Change-Id: I1fe1eb907485766888832db8b9c342339cc80ea7
2019-01-07 14:44:21 -08:00
Christine Franks
a226307b17 Add display white balance setting
Bug: 111215474
Test: make RunSettingsRoboTests -j100
Change-Id: Icf31ff820008740312ad811d0eda72fd3fb90a63
2018-12-21 09:16:01 -08:00
Ben Lin
11f698ba22 Add boolean flags to show/hide top-most settings.
Bug: None
Test: RunSettingsRoboTests
Change-Id: Ib576f5979feda0fa7f573915acffc5065d40095c
2018-12-14 16:00:21 -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
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
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
Christine Franks
26d0595373 Use ColorDisplayManager
Bug: 111215474
Test: make RunSettingsRoboTests -j100
Change-Id: I78bb44a1c4824f2b5223ca0d58ad224b96591d9a
2018-11-06 21:31:28 +00:00
Fan Zhang
0023558ec3 Fix Display settings summary when there is no wallpaper.
Change-Id: I715cef9dc42de1231491b5a7184f0f151d94af11
Fixes: 69905032
Test: robotests
2018-10-30 10:10:30 -07:00
Fan Zhang
9aca4cb48c Add config to disable app tray preview in display size.
Also move some files

Change-Id: I4636fcd81425991acadede0b703e09513c82543c
Fixes: 113374067
Test: robotests
2018-09-10 15:03:54 -07:00
Philip P. Moltmann
e3f721132a RestrictedLockUtils was split into ...Internal
This means that in some cases RestrictedLockUtils has to be used and in
some RestrictedLockUtilsInternal.

This causes a lot of trivial code changes.

I also updated the ordering of the imports in all affected files.

Bug: 110953302
Test: Built
      make -j RunSettingsRoboTests
Change-Id: I9bdf8b89134f853bae4f38c81af436715c73e924
2018-08-30 08:11:39 -07:00
TreeHugger Robot
a3738857da Merge "Add null check for vrManager" 2018-08-29 10:02:09 +00: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
Rick Yiu
bad519d0a4 Add null check for vrManager
If VrManagerService is not started, vrManager will be null. Need
add check for it.

Test: robotests
Bug: 112064298
Change-Id: I899337bb5a996efffe82970fa690f2c5d59c1bb5
2018-08-28 16:03:40 +08:00
jackqdyulei
076b674764 PowerUsageSummary: move controllers to xml
Also change the following controllers to have standard constructor
1. BatteryHeaderPreferenceController
2. BatteryTipPreferenceController

Change-Id: I2e68082295eb8ef18de9fef9483a10b070c77a47
Fixes: 111131567
Test: robotest
2018-07-26 11:40:28 -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
Fan Zhang
b0eab98754 Update auto brightness pref summary to show on/off
Change-Id: I7914957cc9dbffcc12e34fc714bb9c37783a4f33
Fixes: 109885418
Test: robotests
2018-07-10 11:27:25 -07:00
TreeHugger Robot
9fa595f9c2 Merge changes from topic "q_dark_theme"
* changes:
  Move NightMode to Display settings
  Revert "Setting to change sysui theme"
2018-07-05 03:46:24 +00:00
Fan Zhang
78ea7da54c Misc tweaks to Indexable usage and tests.
- Make SettingsPreferenceFragment implement Indexable directly
- Add existing fragments that are SettingsPrefFragment but not Indexable
  to grandfather list.
- Fix "font size" fragment so it shows up in search properly.
- Remove duplicates for "lock screen display", "Screen saver".

Bug: 70720645
Test: robotests
Change-Id: I44ce0cac0fdf5e882b315861bb4bebc45dbe01e6
2018-07-02 16:46:23 -07:00
Lucas Dupin
a7ea18a6ce Move NightMode to Display settings
Test: manual
Test: make RunSettingsRoboTests ROBOTEST_FILTER=DarkUIPreferenceController
Bug: 110758454
Change-Id: Ie389a0e55eb39f2b43d4e9c0739ad3f61469d740
2018-06-28 14:16:17 -07:00
Lucas Dupin
c74969e7cc Revert "Setting to change sysui theme"
This reverts commit 74fde3ea31.

Reason for revert: CL was intended to be a workaround while we were still working on global theming.

Change-Id: I2c10971b9eab5382c1782c8d09c569edc35ea191
2018-06-28 13:50:13 -07:00
Doris Ling
30692040be Set default display timeout if current value is disabled by admin.
- The display timeout dialog will only show values that are allowed by the
admin. If the current display time out is greater than the max timeout set by
admin, it becomes an invalid selection. In this case, instead of not
selecting anything, set the default to the last available item.
- move TimeoutListPreference into display package.

Change-Id: I6c88f72ff2b0afe8605800074fd4626bbb16bee0
Fixes: 110104437
Test: make RunSettingsRoboTests
2018-06-25 13:44:00 -07:00
Fan Zhang
7431c91de6 Remove search indexing pipeline from Settings
Index is already handled by SettingsIntelligenec. No longer needed in
Settings.

Change-Id: Id43fb3100dc2759185744441cff8cb9cd2d2da20
Fixes: 69808376
Test: robotests
2018-06-21 09:38: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
7f5692bdea Misc search clean up
- Make color mode page searchable and suppress its parent page.
- Suppress entire DataUsageSummaryLegacy page in search. This page will
  be deleted soon

Change-Id: I0f98c9073358934b98e986d034c89a9bf87e58ad
Fixes: 70720645
Test: robotests
2018-06-08 14:51:19 -07:00
Ching-Sung Li
feae5d79cf Remove OverlayManagerWrapper class out from Settings
Remove OverlayManagerWrapper and use IOverlayManager instead. Based on
comment from reviewer to refactor ThemePreferenceController.

Bug: 76167422
Test: RunSettingsRoboTests
Change-Id: I0bddf50d8ea7721fe258a9a9b51f8c56dd5afcce
2018-05-25 12:59:18 -07:00
Lucas Dupin
74fde3ea31 Setting to change sysui theme
Users now can manually pick if they want light or dark QS
and launcher

Change-Id: Ic0a43bc5e8777c39bfe5c0bbc606bf6be20f7168
Fixes: 63903361
Test: make RunSettingsRoboTests ROBOTEST_FILTER=SystemUiThemePreferenceControllerTest
Test: manual
2018-05-23 15:20:17 -07:00
Matthew Fritze
bf1f5b5813 Add isSliceable API to BasePrefController
Only support explicitly approved Settings Slices,
dictated by controllers which return true for the new
method isSliceable.

Updating the supported settings to a whitelist means that
the method to return all available slices must be updated,
and checking slicability when we index slices.

Test: robotests
Bug: 79779103
Change-Id: Ib2b9690cdd0036b5cc4a1cb846c52bce7c824ab9
2018-05-22 11:06:42 -07:00
Chia-I Wu
72a9730426 Merge "Show color modes from config_availableColorModes" into pi-dev am: 5c99a41a9c
am: 2dc9650a76

Change-Id: Ib248095ea777d13b4449369096953de574c98bb5
2018-05-22 00:31:52 -07:00
Chia-I Wu
d4cfb414c3 Show color modes from config_availableColorModes
Check config_availableColorModes to decide which color mode options
to show.

Bug: 73824924
Bug: 73825738
Test: 2016, 2017, and 2018 devices
Change-Id: I42915595348061ff4b3f2fdf14753e96dfcb2052
2018-05-21 19:58:08 -07:00
Andrew Sapperstein
d497de27c1 Merge "Make the night display suggestion depend on a flag." into pi-dev am: 96294df2f0
am: 95e789dc58

Change-Id: I732a4d92f23354db44ce294096ad1e38ae0f198b
2018-05-17 13:59:26 -07:00
Andrew Sapperstein
96294df2f0 Merge "Make the night display suggestion depend on a flag." into pi-dev 2018-05-17 20:40:21 +00:00
Daniel Nishi
4e9d52791b Make the night display suggestion depend on a flag.
This allows it to be enabled/disabled on certain devices.

Change-Id: I7b73bb866b05b92588e15ef7ffc2834cdde041ce
Fixes: 78601616
Test: Settings robotest
2018-05-17 10:29:59 -07:00
Fan Zhang
30d4d015b5 Merge Ambient display into Lockscreen settings.
And remove the entry point from security page. Now we only have 1 entry
point from Display page.

Change-Id: I06bc15a6fd8802a4918d8772af2722d5aafa332e
Fixes: 71892510
Test: robotests
2018-05-16 11:24:32 -07:00
Doris Ling
079738a26a Merge "Rename settings category." into pi-dev am: a44d07c10d
am: 374d15333f

Change-Id: Ic6b4980793aa8360b156fc11e36e79e1ba1f6635
2018-05-11 16:01:38 -07:00
Doris Ling
b715d6b675 Rename settings category.
- from night light to night display.

Change-Id: I2d6c8d931793439dc3b028b4b7a46c21444e10a0
Fixes: 79530682
Test: make RunSettingsRoboTests
2018-05-11 10:59:58 -07:00
Doris Ling
56df32dc0b Merge "Map the new category keys to the corresponding fragment." into pi-dev am: be5fa599be
am: b04528670b

Change-Id: I44e1cc9b2e631b19bb51079230821d5e59f496ec
2018-05-10 18:14:54 -07:00
Doris Ling
24827a1c7b Map the new category keys to the corresponding fragment.
- map category night_light to NightDisplaySettings
- map category gestures to GestureSettings

Bug: 79530682
Bug: 79532703
Test: make RunSettingsRoboTests
Change-Id: Idc45957d2515e148226897f58fcc358a8c7f37dd
2018-05-10 13:51:28 -07: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