Commit Graph

554 Commits

Author SHA1 Message Date
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
Roozbeh Pournader
15bebece94 Fix bidi direction of dialog and bidi-wrap service name
Previously, the name of the service being in a different direction
from the locale could cause bidi artifacts.

Now, we explicitly set the direction of the dialog to the locale, and
bidi-wrap the service name.

Test: Manual
Change-Id: I563299866b24a4ce90fa2d09781aa269d8de2edd
Fixes: 37761152
2017-05-05 13:40:05 -07:00
TreeHugger Robot
e2987d7173 Merge "Remove accessibility duplicates in settings search" 2017-05-02 19:07:44 +00:00
Matthew Fritze
49915a64c5 Remove accessibility duplicates in settings search
Bug: 33701673
Test: make RunSettingsRoboTests
Change-Id: Iae179b558065d728c14eb76f136d398081577779
2017-05-02 17:39:24 +00:00
Jeff Sharkey
4869effb72 Merge "Change String to CharSequence in #loadSummary." into oc-dev am: ad597344a2
am: e86e611f76

Change-Id: Id13f41ae6cb32d575193732136489bbac0702a3c
2017-05-01 18:22:36 +00:00
Jeff Sharkey
ad597344a2 Merge "Change String to CharSequence in #loadSummary." into oc-dev 2017-05-01 17:52:27 +00:00
Saige McVea
2cc818acce Change String to CharSequence in #loadSummary.
Per API council review, localized strings should return CharSequence. Changes here
account for the different type returned.

Test: ag/1813674

Bug: 37723508

Change-Id: I7dacab8af48932db031de22835b65eba30393956
2017-04-28 20:35:21 -07:00
Phil Weaver
debcceb6b4 Merge "Fix default for a11y shortcut setting" into oc-dev am: 5ef1135b9f
am: bffd5636ff

Change-Id: I37e5b5651d3f1930791acf013bce10f9e5cb50ce
2017-04-20 18:53:23 +00:00
Phil Weaver
a989b19646 Fix default for a11y shortcut setting
Settings thought the default for "Allow from lock screen" was
on. It's really off.

Bug: 37158451
Test: Manually confirmed that a fresh device now shows off.
Change-Id: I38dc4f6d2bfec5e0c8562c0d2c6e034db461aa98
2017-04-19 11:09:23 -07:00
Phil Weaver
e9edc8f357 Merge "Respect user's choice on a11y shortcut dialog" into oc-dev am: d4ce883c64
am: 8a3d606a60

Change-Id: Id39f650645400b4e5076ea0a9cd86925244e76d5
2017-04-19 16:16:14 +00:00
Phil Weaver
d4ce883c64 Merge "Respect user's choice on a11y shortcut dialog" into oc-dev 2017-04-19 16:09:16 +00:00
Phil Weaver
ed69e8a417 Respect user's choice on a11y shortcut dialog
Wasn't checking if the user actually agreed. Whoops.

Bug: 37123004
Test: Manually verified that canceling leaves the selection
unchanged.

Change-Id: I48a052eb74733d3d0105fc1e72c4bf77ce8be0c5
2017-04-18 17:53:14 -07:00
Saige McVea
c83b8de6a7 Merge "Conditionally reposition experimental preferences." into oc-dev am: b18e31bc5a
am: f869788eb8

Change-Id: I6346767b427cd4d3711251b841afa62863db8bfe
2017-04-18 22:00:48 +00:00
Saige McVea
b18e31bc5a Merge "Conditionally reposition experimental preferences." into oc-dev 2017-04-18 21:47:25 +00:00
Casey Burkhardt
1a63f973e9 Merge "Hide "Magnify with button" if no navbar is shown" into oc-dev am: 65523b9cb0
am: 855391b66f

Change-Id: Id976a6a4c502dbe8624e810587555869588f3264
2017-04-18 02:50:09 +00:00
Casey Burkhardt
65523b9cb0 Merge "Hide "Magnify with button" if no navbar is shown" into oc-dev 2017-04-18 00:06:53 +00:00
Saige McVea
6a6b97905f Conditionally reposition experimental preferences.
Specifically, move colour inversion and colour correction preferences
to the display category if device is color transform accelerated.

Test: Manual

Bug: 36603386

Change-Id: I4f7e4e569f5f358e6e3c705f9df02e0da473a081
2017-04-17 11:59:07 -07:00
Saige McVea
4d75b8812e Merge "Added generic icon and magnification icon to a11y Settings." into oc-dev am: ba7a4751a0
am: 8fb5b5fd0e

Change-Id: I1167930dd65752403876d462150a4c63dbb1dd84
2017-04-14 15:52:41 +00:00
Casey Burkhardt
875d3b2471 Hide "Magnify with button" if no navbar is shown
Devices without a software-rendered navigation bar will be unable to
use "Magnify with button" as no accessibility button trigger for
magnification can be shown.

In this case, we hide the setting by preventing
MagnificationPreferenceFragment from showing the list of mag
modes, instead launching directly into the PreferenceFragment for
"Magnify with triple-tap"

Bug: 36862906
Test: Manual - Configured marlin to disable the navigation bar and
      verified behavior in SUW and Settings

Change-Id: Ie614ec292d7779044274b7c79eaed1df080c0fd1
2017-04-13 15:50:28 -07:00
Saige McVea
ba7a4751a0 Merge "Added generic icon and magnification icon to a11y Settings." into oc-dev 2017-04-13 19:07:33 +00:00
Noah Wang
c7b2bc65cb Merge "Prevent gaining audio focus when opening magnification screen." into oc-dev am: 93799e8758
am: d26d3e77a3

Change-Id: Ie7e2a1b947f3ba42209a77f824d7b4754fc0ce1b
2017-04-13 04:12:54 +00:00
Saige McVea
672cb2edc6 Added generic icon and magnification icon to a11y Settings.
Test: Manual

Bug: 36895362

Change-Id: I85281c0904bd6f562f9ebd39dd35b1eeb79108e6
2017-04-12 12:52:21 -07:00
Noah Wang
ea5ebaa50c Prevent gaining audio focus when opening magnification screen.
bug: 30521125
Change-Id: I22fe63ed2b0529c2a08b7be03c12753f3f060c1a
2017-04-12 11:52:23 -07:00
Phil Weaver
19ebace6c4 Merge "Don't enable a11y service if scary dialog obscured" into oc-dev am: 0b9cd1b40e
am: ba98033945

Change-Id: I81533c721182e0e118bc2ed6eea7800c62b5be69
2017-04-07 05:55:19 +00:00
Phil Weaver
c8e20afa3c Don't enable a11y service if scary dialog obscured
We were only checking if the OK button itself was obscured.
Changing to check if any part of the window is obscured.

Bug: 31855267
Test: Created a sample a11y service that displays a UI to cover
part of the window, but not the OK button. It was possible to
enable an a11y service before this change, but now it displays
a warning toast.

Change-Id: I21974535aba734da6ea9d7accf67fb9237fd16fc
2017-04-05 09:28:32 -07:00
Noah Wang
474c291fa7 Adding help links to font size and display settings screens.
bug: 33110518
Change-Id: I5b75adc493ed0ab16a2dd653554af7a7c6e137ad
2017-03-28 02:01:26 -07:00
Casey Burkhardt
059a8e3d12 Fix Accessibility Settings crash
Update preference key to reference new magnification preference screen.
Bug: 36606349
Test: Manual

Change-Id: Iefb114bea6a58d6f8939ae863959d4a6922f5a1d
2017-03-24 23:33:45 -07:00