Commit Graph

70 Commits

Author SHA1 Message Date
Salvador Martinez
ef7ce46657 Change dark theme screen to toggle
The dark theme screen has been removed in favor of a simple
toggle with a dialog that shows up the first time a user
tries to enable dark theme when in light theme.

Test: robotests pass
Bug: 130251804
Change-Id: I48f8e24a2b2a117e5a8054c5bc0b240ba68fe1ad
2019-04-15 19:52:49 -07:00
pastychang
7539cf8ed8 Change accessibility setup page to use glif v3 theme
Bug: 126065441
Test: Manual
Change-Id: I383ac07aa588db4604323de54a37fa03078dee57
2019-03-29 13:28:38 +08:00
Salvador Martinez
70da69b0ac Merge "Update dark mode in accessiblity settings" 2019-03-28 20:56:27 +00:00
Salvador Martinez
194abe94d0 Update dark mode in accessiblity settings
There was an entry point to dark mode that wasn't updated when the
display settings one was changed to point to a new screen. This
change makes it so that clicking dark mode in accessiblity also
opens the same screen.

Test: robotests pass
Bug: 129406772
Change-Id: I0ad830638e04e5520cdf7de6927764fa6b68a179
2019-03-27 18:29:40 -07:00
Pasty Chang
d606815585 Merge "Apply a11y screen to glif layout" 2019-03-27 10:03:16 +00:00
Anthony Tripaldi
308d833d16 Add Live Caption preference to Accessibility page.
This reverts commit fa27a88292.

The original was only a temporary revert in order to remove from initial beta release for dogfooding before the feature was ready.

Reason for revert: b/123652115

Bug:123652115
Test: manual
Change-Id: Id647c2992e30289d72a4f6144829a997677be3fa
2019-03-26 13:09:50 -04:00
pastychang
9fdbe80f8b Apply a11y screen to glif layout
Screenshot: https://hsv.googleplex.com/5745610682531840

Test: atest
Bug: 126065441
Change-Id: I31f39d5d78a80e6badb92a4e79df261eeeeaa4d4
2019-03-18 12:00:38 +08:00
Kevin Chang
ece6d94b57 Merge "Add test cases for BalanceSeekBar" 2019-03-11 08:21:13 +00:00
Kevin Chang
a22bd67d5c Add test cases for BalanceSeekBar
Bug: 123722274
Test: Manual
      make RunSettingsRoboTests ROBOTEST_FILTER=BalanceSeekBar

Change-Id: Ie6b560b2f92d78a0d3bd7ddb0e0d0a85c7803827
2019-03-11 10:46:13 +08:00
TreeHugger Robot
30784fdd03 Merge "Add flag to hide top-level accessibility." 2019-03-04 22:30:12 +00:00
Jackal Guo
60e3236604 Merge "Provide a way to ToggleA11yServicePreferenceFragment via Intent" 2019-03-04 03:35:56 +00:00
Ben Lin
5124ab5d92 Add flag to hide top-level accessibility.
Bug: None
Test: robotests
Change-Id: I67cee6054e54389812bc025e637029547c8f2896
2019-03-01 16:13:23 -08:00
Kevin Chang
40d496471a Merge "Duplicate dark mode settings to accessibility display settings" 2019-02-27 03:15:39 +00:00
Jackal Guo
2936551f70 Provide a way to ToggleA11yServicePreferenceFragment via Intent
Intent can only open the list of a11y services in Settings currently.
PermissionController needs a way to open the screen with the a11y
service toggle.

Bug: 123693167
Test: manual
Test: atest AccessibilityDetailsSettingsFragmentTest
Change-Id: I32ed39330cf9e4c18a1747521fb65eb911d1c6e4
2019-02-27 09:38:14 +08:00
Kevin Chang
a78b9222b0 Duplicate dark mode settings to accessibility display settings
Bug: 123227114
Test: Manual
      make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilitySettings
Change-Id: Icb60bc18e31377a2e73780004bd1bdea7bc96eea
2019-02-27 09:18:40 +08:00
timhypeng
23233700e5 Fix only one "active" HA showing under Accessibility Settings
-return main device on getConnectedHearingAidDevice()
-add test case

Bug: 123777253
Test: make -j42 RunSettingsRoboTests
Change-Id: I63522311b2248df983f200864b5465c0055056da
2019-02-14 01:31:03 +00:00
Fan Zhang
fa27a88292 Revert "Add live caption preference in accessibility page."
This reverts commit d64901494f.

Reason for revert: b/123636344

Change-Id: If6307935ba3613cb24f5bab2234febef83c6f7d2
2019-01-30 18:10:17 +00:00
Fan Zhang
d64901494f Add live caption preference in accessibility page.
Change-Id: Idd9725ddbbcf658325b1f04b07a0ed9cfa6c2682
Fixes: 121373754
Test: robotests
2019-01-11 15:15:12 -08:00
Alexey Kuzmin
3c51e824eb Split ring and notification vibration settings
Synchronize settings between sound and accessibility menus

Bug: 116172311
Test: See accessibility vibration settings - ring and notification
settings sould be separate. Try changing vibration settings in sound and
accessibility menus - the settings should stay in sync.

Change-Id: I515a7188cdf5a26a229ac8f08c6fcfe98e2f91a0
2019-01-10 14:22:49 +00:00
timhypeng
e7cc5d6431 Replace ArgumentCaptor with getReceiversForIntent()
Bug: 117989208
Test: make -j RunSettingsRoboTests
Change-Id: I0a790a6af4075fbb2228aa77c3a4e237d89e3b98
2018-12-20 01:52:08 +00: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
Leon Liao
2457f46fa8 Add summary with accessibility timeout item
Add summary with accessibility timeout item in Accessibility
Settings. This summary describe its level to time limit of
Accessibility timeout feature.

Bug: 119283926
Test: atest AccessibilitySettingsTest
Test: atest AccessibilityTimeoutControllerTest
Test: make RunSettingsRoboTests
Change-Id: I86c096e6f4adb62150e1ff2af4c22afac240b41e
2018-12-05 05:35:54 +08:00
James Lemieux
3a55de44c5 Prepare tests for impending robolectric merge
Some ShadowUserManager function moved into the basic shadow in
robolectric proper and has been removed from the Settings
ShadowUserManager.

Test: make -j56 RunSettingsRoboTests
Change-Id: I38647dae5d16bc79bc7925ca139c9362a2035393
2018-11-20 16:40:57 -08:00
Leon Liao
fc29b1c331 Implement a11y UI for Accessibility timeout feature.
This UI control the Accessibility Timeout API in Settings App.
Add a user control to set timeout length to suit their need.

Bug: 119283926
Test: atest AccessibilityTimeoutControllerTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=CodeInspectionTest
Test: atest UniquePreferenceTest
Change-Id: Ic8f7337e6bd7739c1189382cc87d45465b64c6ed
2018-11-15 10:24:43 +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
tmfang
c28c836dcb Remove FragmentUtilsTest class
We directly use FragmentController to start fragment.

Change-Id: Iff78f321165d666f96d84f001ff054257a1aaede
Fixes: 111195449
Test: robotest
2018-09-27 18:51:20 +08: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
Chienyuan
fca684aab6 Replace LocalBluetoothAdapter with BluetoothAdapter
LocalBluetoothAdapter is obsolete, use BluetoothAdapter instead.

Bug: 111810977
Test: make -j50 RunSettingsRoboTests
Change-Id: I5109a0296c1006a3c2e346bf966ef8901c101e30
2018-08-09 11:40:54 +08:00
timhypeng
53a12ee7b8 Add Hearing Aid UI into Settings-Accessibility App
- dynamically show/hide preference by HearingAid profile is supported or not
- add AccessibilityHearingAidPreferenceController to handle hearingAid preference
- add HearingAidDialogFragment to handle dialog behavior

Bug: 109948484
Test: make -j50 RunSettingsRoboTests

Change-Id: Ic55dde475dc40311f7e652f4a86d342597f09f0e
2018-07-30 16:48:39 +08: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
TreeHugger Robot
1693bc9d71 Merge "Add TogglePrefController for Color Invert" 2018-06-22 17:00:52 +00:00
hjchangliao
bc64434365 Add TogglePrefController for Color Invert
Add ColorInversionPreferenceController,
and remove old control code in fragment.

Change-Id: I773e5aa2d6c9bf6b5140be45ee60567a7ed22318
Fixes: 67997748
Test: make RunSettingsRoboTests
2018-06-22 10:03:25 +08: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
Michael Wright
1c7ae169ac Merge "Hide haptic intensity settings for devices without enough dynamic range." into pi-dev am: 8c60fc69b7
am: 23460d03bc

Change-Id: I5c5e8a4157874f19abe28201fba772c72bc7f9d9
2018-05-25 19:17:33 -07:00
TreeHugger Robot
8c60fc69b7 Merge "Hide haptic intensity settings for devices without enough dynamic range." into pi-dev 2018-05-26 02:03:09 +00:00
Michael Wright
3dbaac6e71 Hide haptic intensity settings for devices without enough dynamic range.
Despite our hope, devices prior to P18 just don't have the dynamic range
to give three distinct vibration intensity settings. Given this, only
show an on / off toggle for devices by default unless they explicitly
opt-in to multiple intensity levels.

Test: m -j RunSettingsRoboTests
Bug: 80243632
Change-Id: I14ece855cf20f9fa44b0648d28f89c0053be5c5f
2018-05-25 22:57:03 +01:00
Matthew Fritze
61227fb093 Add remaining whitelisted controllers
Because I missed them in the long whitelist the first time...

Change-Id: I9fbd7b33e06b3f2f6e5e5778f78abfdb1a52006a
Merged-In: I01c8c80fe306667c1d3ac007b16fad546c5a5f40
Fixes: 79779103
Test: robotests
2018-05-24 17:29:03 +00:00
Matthew Fritze
0cb62643d6 Add remaining whitelisted controllers
Because I missed them in the long whitelist the first time...

Bug: 79779103
Test: robotests
Change-Id: I01c8c80fe306667c1d3ac007b16fad546c5a5f40
2018-05-24 10:27:29 -07:00
hjchangliao
a92271c26d Convert Magnify controller to TogglePrefController
Convert below to TogglePreferenceController:
MagnificationNavbarPreferenceController
(Magnify with Button)
MagnificationGesturesPreferenceController
(Magnify with triple-tap)

The two controllers share the same fragment,
Add static method for set/get state in fragment,
And use them in controllers and fragment.

Change-Id: I2bdbdb36be71e1a3ffb557abc5a6115d48de53cf
Merged-In: I2bdbdb36be71e1a3ffb557abc5a6115d48de53cf
Fixes: 67997698
Fixes: 67997726
Test: make RunSettingsRoboTests
2018-05-16 16:45:47 +00:00
hjchangliao
2f73a6646f Convert Magnify controller to TogglePrefController
Convert below to TogglePreferenceController:
MagnificationNavbarPreferenceController
(Magnify with Button)
MagnificationGesturesPreferenceController
(Magnify with triple-tap)

The two controllers share the same fragment,
Add static method for set/get state in fragment,
And use them in controllers and fragment.

Change-Id: I2bdbdb36be71e1a3ffb557abc5a6115d48de53cf
Fixes: 67997698
Fixes: 67997726
Test: make RunSettingsRoboTests
2018-05-16 16:05:41 +08:00
AL Ho
ae2893db10 Update Accessibility vibration settings.
- Get notification vibration and haptic feedback intensity respectively.
- Use xliffs to compose these strings.
- Use the version that passed in Vibrator.class to get Vibrator
  instance.
- Refactor switch/case part in getSummary() of
  VibrationIntensityPreferenceController.
  Let AccessibilitySettings and VibrationIntensityPreferenceController
  both call it.
- Add robolectric test for method: updateVibrationSummary().
- Refine test method, use real preference and test summary value.
- Remove redundancy.

Bug: 75322064
Test: make ROBOTEST_FILTER=AccessibilitySettingsTest RunSettingsRoboTests
Change-Id: Ia3c7447b1ab1e336b36ad439800b673821417e48
Merged-In: Ia3c7447b1ab1e336b36ad439800b673821417e48
2018-05-11 08:56:13 +00:00
AL Ho
92216ae148 Update Accessbility vibration settings.
- Get notification vibration and haptic feedback intensity repectively.
- Use xliffs to compose these strings.
- Use the version that passed in Vibrator.class to get Vibrator
  instance.
- Refactor switch/case part in getSummary() of
  VibrationIntensityPreferenceController.
  Let AccessibilitySettings and VibrationIntensityPreferenceController
  both call it.
- Add robolectric test for method: updateVibrationSummary().
- Refine test method, use real preference and test summary value.
- Remove redundancy.

Bug: 75322064
Test: make ROBOTEST_FILTER=AccessibilitySettingsTest RunSettingsRoboTests
Change-Id: Ia3c7447b1ab1e336b36ad439800b673821417e48
Merged-In: Ia3c7447b1ab1e336b36ad439800b673821417e48
2018-05-11 11:13:25 +08: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
Aurimas Liutikas
e0069d332d Migrate Settings to androidx.
Test: make Settings
Bug: 76692459
Change-Id: I941dea40562170649bf056e675cc32e5163c0e39
2018-04-20 12:52:29 -07:00
Matthew Fritze
a711ed8330 Add A11y Slices
Add AccessibilityPreferenceController, which wraps all a11y settings
since they are share common infrastructure for enabling, current value,
and availability.

We add an overlay for OEMs to declare their bundled a11y services.
This is the only list of services that will be possible to enabled via
Settings slices.

Accessibility Slices are built by getting a list of valid services,
and indexing the service names as a key in the Slices DB. When they are
built at runtime, they use the generic A11yPrefController to get the status
and enable/disable the service.

Bug: 67997836
Bug: 67997672
Test: robotests
Change-Id: I66f905bf1c55eecb937945c4675c12bcbc96d698
2018-04-17 10:27:02 -07:00
rafftsai
807506b166 MagnificationPreferenceFragment use DashboardFragment
- Move preference related logic to Controller
- Add settings:controller in xml file

Bug: 73899467
Test: manual
Test: make RunSettingsRoboTests

Change-Id: I3eaccc617c4408f50110bf1f5df3482f491f7393
Signed-off-by: rafftsai <rafftsai@android.com>
2018-04-02 13:18:58 -07:00
James Lemieux
22a39c2b93 Use external/robolectric-shadows/run_robotests.mk
This allows Settings to test against the latest framework changes.

Also replaced TestConfig with traditional robolectric.properties.

Bug: 73173204
Bug: 73892008
Test: make -j56 RunSettingsRoboTests
Change-Id: I3135b4fa5f095ba79b282a76f45dd9baa2584bc7
2018-03-04 03:50:08 -08:00