Commit Graph

559 Commits

Author SHA1 Message Date
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
Lucas Dupin
b1a2aba01a Setting to change sysui theme
Users now can manually pick if they want light or dark QS
and launcher

Change-Id: Iaabdb32d9af6a293dfbd5ba6dea3da1d38a13ad3
Merged-In: Ic0a43bc5e8777c39bfe5c0bbc606bf6be20f7168
Fixes: 63903361
Test: make RunSettingsRoboTests ROBOTEST_FILTER=SystemUiThemePreferenceControllerTest
Test: manual
2018-05-23 21:51:32 +00:00
Matthew Fritze
1dd25fd87c 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
Change-Id: I85848c2cdf3e151fa94b33dd1dc5c0374ef94b5b
Merged-In: Ib2b9690cdd0036b5cc4a1cb846c52bce7c824ab9
Fixes: 79779103
2018-05-22 22:43:24 +00: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
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
Christine Franks
77df09244e Add night display pref controllers and change UX
- Convert NightDisplaySettings to a DashboardFragment
- Add preference controllers for all Night Display settings
- Change UX for activation from a toggle to a button

Bug: 73739388
Bug: 69912911
Test: make -j100 and make RunSettingsRoboTests -j100
Change-Id: Ia173f16207ba59bf57eb7546cbb1e2dbca67b063
Merged-In: Ia173f16207ba59bf57eb7546cbb1e2dbca67b063
2018-05-04 09:35:29 -07:00
Christine Franks
d67ec89c4b Add night display pref controllers and change UX
- Convert NightDisplaySettings to a DashboardFragment
- Add preference controllers for all Night Display settings
- Change UX for activation from a toggle to a button

Bug: 73739388
Bug: 69912911
Test: make -j100 and make RunSettingsRoboTests -j100
Change-Id: Ia173f16207ba59bf57eb7546cbb1e2dbca67b063
2018-05-02 13:12:26 -07:00
Fan Zhang
ca44caa663 Merge "Update brightness percentage display logic to match sysui." into pi-dev am: 69d12406f0
am: e9045a7a41

Change-Id: I20c27b31caa7a44b6d114780a0b7b18206f75d12
2018-04-25 08:25:54 -07:00
Fan Zhang
1346b066bd Update brightness percentage display logic to match sysui.
The brightness raw value is in linear pace, we need to convert
it to gamma space to make it match the way sysui represents the
brightness level.

Bug: 73810208
Change-Id: Ic4551bbeff4a6af30f7af2871a79a7d797279edb
Fixes: 78173473
Test: robotests
2018-04-24 12:10:46 -07:00
Aurimas Liutikas
e0069d332d Migrate Settings to androidx.
Test: make Settings
Bug: 76692459
Change-Id: I941dea40562170649bf056e675cc32e5163c0e39
2018-04-20 12:52:29 -07:00
TreeHugger Robot
16594545ff Merge "Convert auto-brightness switch to a full screen UI." into pi-dev 2018-04-11 01:28:33 +00:00
TreeHugger Robot
d628116e2f Merge "Convert auto-brightness switch to a full screen UI." 2018-04-10 23:49:23 +00:00
Fan Zhang
89f668ce29 Convert auto-brightness switch to a full screen UI.
Change-Id: Id5e5ec959201102a7c60372a441dc6813ceedbae
Bug: 69795935
Test: Existing conformance tests still pass (CodeInspectionTest,
      UniquePreferenceTest, manual search test)
2018-04-10 21:25:09 +00:00
Fan Zhang
3dfcb3b326 Convert auto-brightness switch to a full screen UI.
Change-Id: Id5e5ec959201102a7c60372a441dc6813ceedbae
Merged-In: Id5e5ec959201102a7c60372a441dc6813ceedbae
Fixes: 69795935
Test: Existing conformance tests still pass (CodeInspectionTest,
      UniquePreferenceTest, manual search test)
2018-04-10 14:21:00 -07:00
Daniel Solomon
f414f5ab2d Merge "Hide color mode preference depending on Accessibility settings" into pi-dev am: e96b57a5fb
am: c767f493d8

Change-Id: I76912e1dbdf02c2a220d04f48df3f2b0b91a9a9f
2018-04-10 11:27:58 -07:00
Daniel Solomon
fbe8a1318b Hide color mode preference depending on Accessibility settings
Currently, when certain Accessibility color transforms are enabled, the
color mode preference radio buttons are disabled. To avoid confusing
users, hide the color mode preference entirely. If the color mode
settings screen is already open when the Accessibility transforms are
enabled, return the user back to the previous screen.

Bug: 77695840
Test: make ROBOTEST_FILTER=ColorModePreferenceFragmentTest
RunSettingsRoboTests -j40

Change-Id: I44812713bdc739b843e5806711d25ea950aa6250
2018-04-09 20:49:43 -07:00
Christine Franks
036cf51ac4 Merge "Remove Automatic color mode option" into pi-dev am: 0c92430be4
am: 00606b5d2a

Change-Id: I31fa05e75ddadbf11cd670e2b89455d222212b3e
2018-04-09 14:44:56 -07:00
Christine Franks
0c92430be4 Merge "Remove Automatic color mode option" into pi-dev 2018-04-09 21:18:28 +00:00
HJ ChangLiao
3c4c3fc5c7 GesturesSettingPreferenceController to Toggle
Convert GesturesSettingPreferenceController to
TogglePreferenceController,
All of its children need follow the change,
add setter and robotest for them:
AssistGestureSettingsPreferenceController
DoubleTapPowerPreferenceController
DoubleTapScreenPreferenceController
DoubleTwistPreferenceController
PickupGesturePreferenceController
SwipeToNotificationPreferenceController

Change-Id: I792b2d370eea828bf345fb2b1cc3eac260eb66f4
Merged-In: I792b2d370eea828bf345fb2b1cc3eac260eb66f4
Fixes: 74913806
Fixes: 67998110
Fixes: 67998098
Fixes: 67998048
Fixes: 67998069
Fixes: 67997452
Test: make RunSettingsRoboTests
2018-04-09 09:08:41 +00:00
HJ ChangLiao
22f53c0274 GesturesSettingPreferenceController to Toggle
Convert GesturesSettingPreferenceController to
TogglePreferenceController,
All of its children need follow the change,
add setter and robotest for them:
AssistGestureSettingsPreferenceController
DoubleTapPowerPreferenceController
DoubleTapScreenPreferenceController
DoubleTwistPreferenceController
PickupGesturePreferenceController
SwipeToNotificationPreferenceController

Change-Id: I792b2d370eea828bf345fb2b1cc3eac260eb66f4
Fixes: 74913806
Fixes: 67998110
Fixes: 67998098
Fixes: 67998048
Fixes: 67998069
Fixes: 67997452
Test: make RunSettingsRoboTests
2018-04-09 15:27:32 +08:00
Christine Franks
91490d4cd9 Remove Automatic color mode option
This is not yet implemented and should not appear as an option.

Bug: 76420446
Test: make RunSettingsRoboTests -j100

Change-Id: I40f1f48cc93417536a1680923c7628139a0534b1
2018-04-06 17:41:57 -07:00
Daniel Solomon
7f2ae90df2 Merge "Disable user control of color mode depending on Accessibility" into pi-dev am: c9bd31b2f8
am: c04f722cab

Change-Id: I51af3f1020c477304c11cac80c1675081e765d50
2018-04-06 10:48:49 -07:00
TreeHugger Robot
c9bd31b2f8 Merge "Disable user control of color mode depending on Accessibility" into pi-dev 2018-04-06 17:12:01 +00:00
Matthew Fritze
688ad64e00 Merge "Fix crash in non-indexable keys collection" into pi-dev am: 66e6e637a4
am: acc93635c3

Change-Id: I78aab2e3b7bc6f621e2425a88f3787e29f6ec2ff
2018-04-04 17:20:54 -07:00
Daniel Solomon
a1687df27b Disable user control of color mode depending on Accessibility
The Accessibility settings for color inversion and color correction are
incompatible with some color modes. When either of these settings is
enabled, disable GUI color mode controls.

Bug: 68856024
Change-Id: I12fad22190283bac38592b94e88d865d3af978ad
2018-04-04 16:04:14 -07:00
Matthew Fritze
3cd543fb85 Fix crash in non-indexable keys collection
Some of the AmbientDisplay preference controllers were
crashing when their isAvailable methods were being called
by their fragment's search index providers, which meant that
the entire collection of non-indexable keys failed. Thus,
all search results were showing up. In the case of a secondary
user, they were able to see developer options which crashed
settings when clicked.

There are two issues addressed in this cl.
1. Fix the crashes so the non-indexable keys collection works
2. Contain each fragment's collection, so that if a fragment does
crash, the damage is minimized.

Part 1 is checking that the config in isAvailable is not null,
and creating one if so.

Part 2 is fixed by surrounding the collection of non-indexable
keys in a try-catch, with an option in the catch to re-throw the
error if a system property is set. Thus, in a new pre-submit
instrumentation test, we can and docheck if any of the fragments crash
when collecting non-indexable keys.

Change-Id: I820bd9cb2649aa6faff7f82fcf575a62e41dc4fc
Fixes: 77486668
Test: atest NonIndexableCrashTest, robotests
2018-04-04 13:36:33 -07:00
Tony Mantler
0fcd6cbaa8 Autogenerate SearchIndexableResources subclass
Bug: 77148954
Test: RunSettingsLibRoboTests RunSettingsRoboTests RunSettingsGoogleRoboTests RunArcSettingsRoboTests
Change-Id: I842c42c55014c3310070ef22bd4f0d9a70dfd804
2018-04-03 10:26:55 -07:00
TreeHugger Robot
e35e00712c Merge "Remove wrapper for device policy manager" into pi-dev 2018-04-02 18:45:53 +00:00
Fan Zhang
aab36de0d6 Remove wrapper for device policy manager
Bug: 76167422
Test: robotests
Change-Id: I69dc7341cf1ff408bc24c2a062586cef25b7b918
2018-03-30 20:44:20 -07:00
HJ ChangLiao
5621641c41 Wake notifications to TogglePreferenceController
Convert Wake for new notifications to TogglePreferenceController
Because Slice controller only support Constructor(context)
Move other parameter to setAmbientDisplayConfiguration

Change-Id: I01042b84217ad9592fece966374140dffaf813e4
Fixes:67997460
Test: make RunSettingsRoboTests -j
2018-03-31 03:13:41 +00:00
TreeHugger Robot
e6a18f8105 Merge changes from topic "remove_wrappers" into pi-dev
* changes:
  Remove wrapper class for NotificationGroup.
  Remove more wrappers in favor of new Robolectric support
2018-03-31 01:26:16 +00:00
Sean Stout
2ae92b541d Improve Night Light suggestion criterion
Night Light suggestion will now show even if the user is using Night
Light in manual mode. If the user has previously tapped or dismissed the
suggestion, the suggestion will not show again.

Bug: 68938869
Test: make ROBOTEST_FILTER=\
"(NightDisplayPreferenceControllerTest|SuggestionFeatureProviderImplTest)" \
RunSettingsRoboTests

Change-Id: Iea838df043d75dfa73a1a383275dc42956374113
2018-03-30 23:12:16 +00:00
Fan Zhang
234854cb04 Remove more wrappers in favor of new Robolectric support
Bug: 76167422
Test: robotests
Change-Id: Ic71a181bee6f90f25f9fa2a748cf708887495394
2018-03-30 15:58:14 -07:00
Dieter Hsu
beb89c3545 Support AOD in the Universal Settings API
Bug: 67997452
Test: make -j RunSettingsRoboTests
Change-Id: I609ac74f70bf040bd9033f421b4bb7c02bf33440
2018-03-30 13:20:56 +08:00
LexHuang
78df73f00a Support Screen Rotate in the Universal Settings API
Change extend from AbstractPreferenceController to TogglePreferenceControllear

Bug: 67997439
Test: make RunSettingsRoboTests
Change-Id: I86e59d00384fb131f2f2b92186e8536324db2e1b
2018-03-30 02:32:36 +00:00
TreeHugger Robot
0ae4204f54 Merge changes I0fde4f80,Iea1cff48 into pi-dev
* changes:
  Update TimezoneInfoPrefController to register in xml
  Make FontSizePreferenceController slice compatible.
2018-03-29 23:49:22 +00:00
Fan Zhang
f75edca09f Revert "Support AOD in the Universal Settings API"
This reverts commit 537c2cfc2c.

Fixes: 77278897

Change-Id: I7a5ff34bf79b87f6a7be50c2e8f421bfc4a22195
2018-03-29 20:20:31 +00:00
Fan Zhang
fc1590e901 Make FontSizePreferenceController slice compatible.
Bug: 67997826
Test: robotests
Change-Id: Iea1cff48f39e1433abea285309376876e8356c07
2018-03-29 12:33:13 -07:00
Dieter Hsu
537c2cfc2c Support AOD in the Universal Settings API
Bug: 67997452
Test: make -j RunSettingsRoboTests
Change-Id: I161bc5746573444b284a03de8f5d4d8e510153dc
2018-03-28 02:12:16 +00:00
Sean Callanan
504cc266d8 [Settings] Add strings for Natural and Automatic color modes
These strings are not properly reflected in the UI yet.  Automatic and
Saturated currently map to the same display setting (and the UI reflects
this by checking both).

Bug: 75982435
Test: Modified the existing testcases to reflect the new string.
Change-Id: Iaef08599c0233e018eaafaf89d60eab92e102782
(cherry picked from commit e8f9bf5f68)
2018-03-23 20:06:25 +00:00
Sean Callanan
1619695402 Merge "Add a preview image to the color mode preference." 2018-03-01 22:39:23 +00:00
Sean Callanan
2dd4377423 Add a preview image to the color mode preference.
For high-color displays, it's desirable to have a preview of the
impact the user's color preference will have on images.  This commit
adds that functionality to ColorModePreferenceFragment by extending
RadioButtonPickerFragment to support static content.

The image used here is a placeholder pending UX.

Bug: 73670362
Test: Added a test verifying that the preview is added correctly.
Change-Id: Id54316bbef6a22291a8e8acbda5fcb2839b88c23
2018-03-01 13:10:26 -08:00
Fan Zhang
04f1423bfa Remove custom updateState() if it's just setting summary
Change-Id: I6311d67d6ba11961a6814b91dcd8e37a2e17df40
Fixes: 73950519
Test: rerun robotests
2018-02-28 15:22:09 -08:00