Commit Graph

580 Commits

Author SHA1 Message Date
Ben Lin
c07124feeb Merge changes from topic "move-a11y-changes"
* changes:
  Revert "Add ability to show/hide Color Correction and Color Inversion."
  Revert "Add ability to show/hide accessibility_shortcut_preference."
2018-02-21 18:18:57 +00:00
Fan Zhang
e8afdb819f Merge "Convert VibrationSettings to DashboardFragment." 2018-02-21 02:18:56 +00:00
Fan Zhang
6ccc81818d Convert VibrationSettings to DashboardFragment.
- DashboardFragment integrates Slices and settings search better than
  SettingsPreferenceFragment, and is more testable.

Test: robotests
Change-Id: I5f73836f94712c03521eac6b3f67964524381078
2018-02-20 16:20:59 -08:00
Fan Zhang
be45f9c865 Migrate more settings to SubSettingsLauncher
Bug: 73250851
Test: robotests
Change-Id: I4100bef20e2ed477e4e31c9b7816f1b03f3f2809
2018-02-19 13:36:57 -08:00
Ben Lin
c64531bbce Revert "Add ability to show/hide Color Correction and Color Inversion."
This reverts commit f1346930bc.

Reason for revert: Moving logic elsewhere.

Change-Id: Ia07b3f4c33e0078e8f35c69d5ed51daf197ff165
2018-02-16 15:10:11 -08:00
Ben Lin
463c9a07f0 Revert "Add ability to show/hide accessibility_shortcut_preference."
This reverts commit 4983dc1227.

Reason for revert: Moving logic somewhere else.

Change-Id: I2f2e3ac6545e8599de32afb1fe6f6d108601e37d
2018-02-16 14:27:34 -08:00
Ben Lin
90e070d8c5 Mark AccessibilitySettings#update methods as protected.
Bug: 62387367
Test: None
Change-Id: Ie70c8b167f8e61210fddb8f370c1ac0481b58f0c
2018-02-07 10:32:40 -08:00
Michael Wright
29d526719a Add new touch and notification vibration intensity settings.
Bug: 64185329
Test: ROBOTEST_FILTER=VibrationSettingsTest m -j RunSettingsRoboTests
Change-Id: I449c7e0041aabfe48935a57cde93e8af77dcd783
2018-02-06 18:14:07 +00:00
Fan Zhang
b79e727307 Merge "Override switch bar string for wifi/battery saver screen" 2018-01-12 17:15:22 +00:00
Fan Zhang
87d120a7e1 Override switch bar string for wifi/battery saver screen
Bug: 69462439
Test: visual
Change-Id: I18d03ee1664f111222d7b9bb7ee893e4ce0e1343
2018-01-11 15:17:14 -08:00
Ben Lin
f1346930bc Add ability to show/hide Color Correction and Color Inversion.
This adds two new boolean flags:
config_show_color_inversion_preference
config_show_color_correction_preference

Which whent set to false, will hide the color inversion and color
correction preference items, respectively.

Bug: 62378109
Test: make RunSettingsRoboTests
ROBOTEST_FILTER=AccessibilitySettingsTest

Change-Id: I06eac8e141bd6564495298c6c6544a7b059a4e73
2018-01-10 18:33:01 -08:00
Ben Lin
4983dc1227 Add ability to show/hide accessibility_shortcut_preference.
This adds a new boolean flag,
config_show_accessibility_shortcut_preference, which when set to false
will hide the accessibility shortcut preference item.

Bug: 62387367
Test: make RunSettingsRoboTests
ROBOTEST_FILTER=AccessibilitySettingsTest
Change-Id: I3fd941695df1ad89f717f464d2383be909839a3b
2018-01-03 10:36:01 -08:00
Phil Weaver
e0693ced0d Add setting to disable animations
Fixes: 12910879
Test: make RunSettingsRoboTests
Also went to Settings -> Accessibility, turned off animations,
and observed that animations stopped. Turned it back on, and
the came back. Also fiddled with the granular settings in
developer options, which behaved as expected.

Change-Id: I189fbc4152d3cdb5ee45562c33f94c739f569c32
2017-12-15 16:13:41 -08:00
Phil Weaver
0db26b3a87 Add icons for color inversion and daltonizer
For accessibilty settings, both on the main page
and the shortcut picker.

Also now observing settings that could be toggled
by the shortcut, so changes can be reflected immediately
in the settings ui.

Bug: 34621067
Fixes: 70335904
Test: Observe icons in settings and shortcut picker.
Toggling color inversion and color correction now changes
the setting ui immediately.

Change-Id: Id27b6471376059288ff971e5aea72d76078bef36
2017-12-11 10:59:34 -08:00
Phil Weaver
d7d5754cfd Merge "Settings enable a11y shortcut framework features" 2017-12-06 17:38:58 +00:00
Phil Weaver
b9cf0d2a4f Settings enable a11y shortcut framework features
Bug: 34621067
Test: Settings->Accessibility->Volume key shortcut
dialog now shows color inversion and color correction,
and selecting them works.
Change-Id: If7b4f55bd39fbd4c00b1ad95c6568a77e23c4e7e
2017-12-05 15:14:11 -08:00
Fan Zhang
681a4cdd47 Add search menu to all pages
Change-Id: I0910df3d26fe583deb70d7052bde28b64e7844a7
Fixes: 68814716
Test: robotests
2017-11-30 10:43:18 -08:00
Fan Zhang
e0b0e9f902 Refactor help menu stuff into a controller
This is a clean up to action bar menu item pattern, we will use the same
pattern to build search icon on all pages in a later change.

Bug: 68814716
Test: robotests
Change-Id: Iedd3ec263e8ccb63ed75ec7a95b28c00878b1de4
2017-11-29 15:51:04 -08:00
Doris Ling
4a01283309 Remove the feature flag for using new title.
- remove all code that check for the feature flag, and use the new logic
by default.

Change-Id: I7fbe60da84c1c0f35e7241402a71d2bc4cd300e6
Fixes: 64564191
Test: make RunSettingsRoboTests
2017-11-13 17:58:13 -08:00
TreeHugger Robot
fd1b6f408c Merge "Revert the change that remove the video layout listener." 2017-11-06 22:57:12 +00:00
Doris Ling
d8f208e2ff Revert the change that remove the video layout listener.
The change causes regression on the video animation when the video view
scrolls out and back into view where it becomes blank in the
magnification settings page.

Change-Id: I6cb15ced8ddc193a01822fd5dcc50194a46a4939
Fixes: 68839840
Test: manual
2017-11-04 00:25:43 +00:00
Doris Ling
024668a2c5 Remove duplicate preferences in Accessibility settings.
- addPreferencesFromResource() call has been added to
InstrumentedPreferenceFragment, and hence sub-class should not call it
again.

Change-Id: Ia016d9d407ac3f838c962d1ced585647382a051a
Fixes: 68820835
Test: make RunSettingsRoboTests
2017-11-02 18:12:27 -07:00
Fan Zhang
57ef92a810 Eliminate duplicate keys in pref xmls.
- Remove additional_system_update pref device_info page, we don't need
  it.
- Update keys in xml and Preference controller, and search index
  provider.
- Clean up in ScreenZoomPreference, it's anti-pattern to set fragment in
  constructor.
- Whitelist 2 that are super hard to remove.

Change-Id: Ibab6e2cb074513042a2ae007d9085aa64046eec8
Fixes: 67852637
Test: uniquePreferenceTest
2017-10-28 11:06:37 -07:00
Doris Ling
ed4685fafb Update activity titles for fragments without preference screen.
1. Move getPreferenceScreenResId() from individual subclass to
InstrumentedPreferenceFragment.

2. Removed InstrumentedPreferenceFragment.getTitle() and let the
preference fragments that do not have preference screen set the activity
title directly instead.

3. Removed OptionsMenuFragment as all it does is call
setHasOptionMenu().
- changed subclasses of OptionsMenuFragment to extend from
InstrumentedPreferenceFragment directly.
- none of the exisitng subclasses actually implements the option menu
related methods to provide any option menu. So, the setHasOptionMenu()
call is not added to the subclasses.

4. Update Languages preference title.
- launch the fragment from the preference controller instead of from the
default handling, as we need the title res id at launch time to get it
work properly when retrieving the title from back stack.

Bug: 64564191
Test: blaze-bin/screenshots/android/i18nscreenshots/i18nscreenshots
Change-Id: Ibecdcab32cbaed8bf604ec5ebe0a926b4e489a7d
2017-10-26 12:01:06 -07:00
Doris Ling
03a3b518de Update preference screen title.
- Add missing title to preference screen xml so that they will be used to
set the activity title when the fragment is launched.
- Also updated some incorrect preference screen titles.
- Overrides getTitle() in preference fragments that do not use the
preference screen xml.

Bug: 64564191
Test: blaze-bin/screenshots/android/i18nscreenshots/i18nscreenshots
Change-Id: Id72d5ddf18f0962bc484de8bbd847a2e55d6371e
2017-10-25 11:02:07 -07:00
Fan Zhang
efa763624a Use IconDrawableFactory to load icons for default apps.
Bug: 64336923
Test: robotests
Change-Id: I2a4ca05a866784f97e247bad1c1679a6ec0f5efa
2017-10-17 15:56:16 -07:00
Felipe Leme
bd88450183 Adds a Util.setSafeIcon() function used to avoid crashes.
There are many places on Settings that loads an icon provided by an application,
and if the icon is too big it crashes Settings.

This CL creates a helper method used to set an icon in a safe way, and
uses it in a few places (but most likely not all of them).

Bug: 65739885
Test: manual verification with an app providing a 2MB png

Change-Id: Iae2becb6d0ec8893328d9ef1de618f9bd12fa4a0
2017-10-10 08:56:56 -07:00
jackqdyulei
bd3c83b4c2 Add OWNER for accessibility package.
Bug: 65294119
Test: Manual
Change-Id: I39eec9ebc1db2dc14669f27b17624394e25eb47f
2017-09-07 14:11:53 -07:00
Fan Zhang
18a168239e Index TTS-Settings and dedupe TTS-engine in search result.
Fixes: 63022866
Test: robotests
Change-Id: I5c711e7bafba4e413ee271768c58742be05d8640
2017-08-16 15:46:41 -07:00
Fan Zhang
5035f8c559 Move a11y indexing from DynamicContentMonitor to loader
This is necessary to kill DynamicContentMonitor later

- Removed all logic related to indexing accesiblitysetting from the
  monitor class and AccessibilitySetting page itself
- Created a loader to search against A11yServices at runtime

I noticed adding a loader in SearchResultsAdapter is rather manual. It's
something we should consider refactor in the future.

Bug: 64310452
Test: robotests
Change-Id: Iff31aff65ce000991229433f294e2ec69af99da2
2017-08-03 10:10:59 -07:00
Phil Weaver
633c9be21c Migrate to new overlay-stopping flag
Bug: 62196835
Test: Started an accessibility service that displays an app
overlay and verified that it disappears when approving an
accessibility service's capabilities.

Change-Id: I7c8d8b4143a5dd1cb684c31c4503608c8d5be0e3
2017-07-05 10:41:18 -07:00
Fan Zhang
cf38863a6b Update string id to make it more generic
Test: builds
Bug: 62354743
Change-Id: I321f5e3d7560dbc21d52dbaa8ebe2df07f99a3db
2017-06-27 14:24:47 -07:00
Phil Weaver
928045e5d5 Merge "Adjust a11y shortcut settings based on UX input" 2017-06-27 15:09:35 +00:00
Juan Lang
4482812cb1 Use SettingsLib's versions of Custom* classes.
Test: make RunSettingsRoboTests
Change-Id: I2584e820b72bb4672c53fd1a9f63c7f1662e0809
2017-06-21 12:07:50 -07:00
gaochong
aedbdd0df5 Merge "Fix Screen Magnification recursive draw" am: 4e7846fbe4 am: db233c6e88
am: dd3945eca5

Change-Id: Idb43358ecaa0ab0b04c59f255c75476857a5fb5d
2017-06-19 17:24:00 +00:00
gaochong
dd3945eca5 Merge "Fix Screen Magnification recursive draw" am: 4e7846fbe4
am: db233c6e88

Change-Id: If8a23a012e0b7a82dc0c6a7d349a15310b4eb43e
2017-06-19 17:12:41 +00:00
gaochong
f4372d914e Fix Screen Magnification recursive draw
When invoke the method View#setLayoutParams(), ViewRootImpl
will run method ViewRootImpl#performTraversals(). And
OnGlobalLayoutListener#onGlobalLayout() will be invoked.
When the method View#setLayoutParams() is invoked in
OnGlobalLayoutListener#onGlobalLayout(), there will be recursive
call. The view will be draw on and on. This situation happen in
Screen Magnification. It should remove the listener after
work completion.

Bug: https://issuetracker.google.com/issues/62613000

Test: use systrace when enter Screen Magnification,and view the
"traversal" times.

Change-Id: I01b1fcccb8b915ec436fb95f1d30c8ec0c0de0a9
Signed-off-by: gaochong <gaochong@xiaomi.com>
2017-06-19 17:26:18 +08:00
Fan Zhang
179645eecd Add help url placeholders for new pages
Bug: 38412798
Test: visual
Change-Id: I4ede523cb13790ea05309279f80a778b2086f850
2017-06-05 14:50:01 -07:00
Phil Weaver
8fcf4d8349 Adjust a11y shortcut settings based on UX input
Disabling the shortcut if no service is configured, so we
users won't see an "On" unless the shortcut will have an
effect.

If no service is configured and the user tries to enable
the shortcut, the service picking UI is shown. If the user
chooses a service, the shortcut turns on. If not, the
shortcut remains off.

Service selection is disabled when the shortcut is disabled
(except for the specific case above).

Lock screen behavior selection is disabled when the shortcut
is disabled.

Also updating a couple of strings based on UX input.

Adding an AOSP header to a file that somehow got checked in
without one.

Fixes: 37443184
Fixes: 38030853

Test: Manually went through the various combinations of
shortcut on and service enabled. I turned off the default
selection of TalkBack as the shortcut service to ensure
that we show a dialog when no service is selected.

Change-Id: Iac5cff12edea91a496fc81781518db4ae49ef334
2017-06-02 16:10:13 -07:00
Phil Weaver
64822d40dc Merge "Manual merge of ag/2319717" 2017-05-30 19:46:18 +00:00
Phil Weaver
ed0866ebfd Fix clickjacking again for accessibility services
Turns out that the flag for the window being obscured
does not imply that it is also partially obscured.

Also blocking system alerts and toast windows over the
accessibility service preference screen (and its associated
warning dialog) as well as the warning dialog shown when
a service is made available with the accessibiity shortcut.

Bug: 62104030
Test: Manually verified that I can't enable Select to Speak
when switch access is highlighting the button. I am able to
do that without this fix. Also started a service that
displayed a system overlay and confirmed that the overlay
disappears on a11y service preference screens and when a
new service is configured for the a11y shortcut.
Merged-In: Ie00bafa736c837881a258c9de10891b27c5baefd

Change-Id: Iabbded1a12dbc33d76e51c0bac710280a88080f3
2017-05-30 10:45:23 -07:00
Phil Weaver
2e2dbfe549 Manual merge of ag/2319717
Bug: 62104030
Test: Manually tested as described in original commit msg.
Change-Id: Ie00bafa736c837881a258c9de10891b27c5baefd
2017-05-30 10:41:52 -07:00
Phil Weaver
be39d57762 Merge "Follow O patterns for a11y settings" 2017-05-24 19:37:41 +00:00
Phil Weaver
ed5f0951f8 Follow O patterns for a11y settings
Move the summary for the toggled features to a footer.
Make the settings appear as a preference.

Bug: 36780887
Test: Start settings and observe the new UI looks a lot
like the mocks referenced in the bug. Also added unit
test to verify that summary text shows up.

Change-Id: I1d002b194991d0901ecb27198ba5de73bd23a5a9
2017-05-24 10:35:20 -07:00
Fan Zhang
cbfe1eb881 Add title to SeekbarPreference content description.
Adding a title to contentDesciption of the seekbar.
The title is helpful to indicate which seekbar user is changing when
talkback is enabled.

Also move SeekBarPreference from root package to widget packge.

Change-Id: I793f41c4902e350b6bc6d62761362779cc3722a9
Fix: 35421942
Test: make RunSettingsRoboTests
2017-05-16 12:35:45 -07:00
Maurice Lam
2eb170cd6f Clean up choose lock intent creation
Consolidated the many variants of ChooseLock*.createIntent, so that
it will take the same set of arguments.

Also modified SetupChooseLock*.createIntent to modifyIntentForSetup,
which will take the intent created by ChooseLock* and modify it for
use with setup.

Test: cd tests/robotests && mma
Change-Id: I5ff033f459c33ec9980872a536b3996d89f2bbbb
2017-05-12 15:35:20 -07:00
TreeHugger Robot
8fc602fed8 Merge "Remove accessibility duplicates in settings search" into oc-dev 2017-05-10 05:07:53 +00:00
Matthew Fritze
6ad5848775 Remove accessibility duplicates in settings search
Merge for: ag/2148817

Bug: 33701673
Test: make RunSettingsRoboTests
Change-Id: Idda6d2f98cb8d2cb91a9a4721b2ef84921f9056a
2017-05-09 09:17:13 -07:00
Matthew Fritze
7ae3c078b6 Remove accessibility duplicates in settings search
Bug: 33701673
Test: make RunSettingsRoboTests
Change-Id: I46e79051d10c4cae851f8e76304e6cfe0a3f73d4
Merged-In: Idda6d2f98cb8d2cb91a9a4721b2ef84921f9056a
2017-05-08 18:34:43 +00:00
Roozbeh Pournader
16db0413f1 Merge "Fix bidi direction of dialog and bidi-wrap service name" into oc-dev am: 869d246021
am: 6b06aa1099

Change-Id: I3db0d2e88659b4cd1822a368845b9179521a69e6
2017-05-06 01:41:43 +00:00