It is possible that a device running Android does not support rotation,
for example a Google TV box. The change adds a check to the rotation
policy to take this into account.
bug:8051556
Change-Id: I60a2a35da148271a18873f6c70556dacab29dae9
1. Certain accessibility settings are shown on a separate screen with
a toggle switch and a description. Sometimes the description does not
fit the screen. The preference framework is using a list view for
holding the description item. This list view was disabled, thus not
scrolling (done to avoid drawable state change on click). Now the
list view is enabled and the drawable state change on click problem
is solved by setting the selector and divider drawables to a
transparent one.
2. The layout for the list item that shows the feature description had
an unnecessary linear layout.
bug:8632146
Change-Id: Ib81a8513158d5b8d90fa80f57720c8590022ae1a
Since the enable touch exploration capability is dynamically granted by
the user for apps targeting pre-JellybeanMR2 API level, we have to avoid
caching copies of the service info.
Framework change:https://googleplex-android-review.googlesource.com/#/c/301722
bug:8633951
Change-Id: I2b409ca92931d1409e885d6f54e0f10cbece2e80
Accessibility services can perform special operations such as retrieve
the screen content, enable explore by touch, etc. To ensure the user
is aware that the service will perform special operations we were using
permissions. However, the special operations cannot be performed unless
the service is really enabled by the user and it is at this point that
we want to notify the user about the service capabilities.
This change adds the list of the service capabilities to the enable
warining dialog such that the user can asses whether to he/she is fine
with this service performing certain special operations.
Main change:https://googleplex-android-review.googlesource.com/#/c/298110/
bug:8633951
Change-Id: I1617fa82126b9a674cb74a15d7004a7cc007c7d3
The value whether accessibility should stay enabled was incorrectly
computed and as a result accessibility was disaabled when the second
accessibility service enabling is canceled.
bug:7716830
Change-Id: Ic23c24b1ffa90811e21210aeeca158568ad37904
1. We have added a global gesture to enable accessibility which is long press
on power followed by a long press with two fingers. If this gesture is
performed when the settings for an accessibility service are on the screen,
accessibility and the screen-reader are enabled while the UI does not reflect
that and the user may try to enable the already enabled screen-reader which
will show two irrelevant warning dialogs - one for enabling the screen-reader
and one for enabling explore by touch (assuming the screen-reader requests it).
This change adds a simple content observer for the relevant accessibility
settings which upon a change calls the functions to refresh the settings UI.
bug:7309127
Change-Id: I214c64877086eeb1fe156bcc195aa4e2931d6bdb
1. We have added a global gesture to enable accessibility which is long press
on power follower by a long press with two fingers. If this gesture is
performed when accessibility settings are on the screen, accessibility and
the screen-reader are enabled while the UI does not reflect that and the
user may try to enable the already enabled screen-reader which will show
two irrelevant warning dialogs - one for enabling the screen-reader and
one for enabling explore by touch (assuming the screen-reader requests it).
This change adds a simple content observer for the relevant accessibility
settings which upon a change calls the functions to refresh the settings UI.
bug:7309127
Change-Id: I45851d7789e24e9e0a5bc5aaac39db9a12b60e0c
1. Adding a setting to enable the gesture to turn on accessibility.
This is a new screen with a toggle switch similarly as screen
magnification which will contain explanation of how to perform
the gesture.
bug:6171929
Change-Id: I84dfa46a9b7b789d99923684e08e52cf7d236eb2
1. Screen magnification on the device has to he explicitly enabled
by the user before allowing a global gesture related interactions.
The feature toggle setting is in Settings->Accessibility and it
is a separate screen with instructions how to use the feature
and a toggle switch.
2. Added a setting in developer options for toggling the magnification
auto update feature. If this features is on the screen is zoomed
out or rotation or activity start. Also if the feature is enabled
the magnified viewport will scroll to show popped up windows.
bug:5587727
Change-Id: Ic45a21d3a3928e2f5aac034751801f090b261488
The search intent cannot be resolved if there aren't any
market apps installed, so it will cause Settings crashed by
the ActivityNotFound exception.
So we need to check if the market intent requst can be resolved.
Then determine to notify user to direct the accessibility services
to market to get TalkBack or not.
Change-Id: I0f0d7b54eb5215e1a886315bb6816704384f6c59
Signed-off-by: Roger Chen <cxr514033970@gmail.com>
Show "auto-rotate screen" option in Display only if the Rotation Lock
feature is not available on the device.
When the "auto-rotate screen" option is disabled in Accessibility or
Display settings, hide the Rotation Lock feature.
Use new RotationPolicy class to adjust rotation settings.
Bug: 6523269
Change-Id: Ifa89ff055e5ad0a00888e10720dd76b0054fe290
1. If the lock screen rotation preference is changed from the
status bar the checkbox in the accessibility settings was
not updated.
bug:6562028
Change-Id: I353e3ad59374ad207297d2a6682e50ed07df820c
1. Now the the setting is names lock screen rotation
which is the opposite as it was before so this
patch reverses the checkbox state.
bug:6507335
Change-Id: Ic0aab21fa70871f64e37ac05f7917d69f9c0a0df
1. Now accessibility services request this mode and
we show a dialog so the user can give a consent.
Accessibility servces can toggle this mode at
runtime from their settings, for example.
bug:5932640
Change-Id: Id4d3e9c83c488f97b7e53d4baadf7de886958a4d
By default we do not speak passwords if the user has no headset. However,
many users find this too restrictive and would like a way to enable
password announcement. While we cannot speak the passwords all the time
,to avoid leaking them, we expose a preference so each user can choose
the option that best works for him/her.
bug:5712607
Change-Id: I1a6e95c392c18dc8d7406b1cef49705756b31254
The state of the toggle switch for enabling/disabling an accessibility service
is not preserved on screen rotation after its state has been changed once.
bug:5478062
Change-Id: Ie453f78bc07dcd39d88bb4acf260768eccc73a74
Bug: 5371750
Changing the system setting directly results in inconsistent
behavior among the three different places where "auto-rotate"
settings appear in the UI. Use the WM APIs instead.
Change-Id: I1a8239af66b1cc3aeec8310383e72fc96c878d73
Now the state of accessibility is determined from the number of running, i.e. enabled and
installed, accessibility services - more than zero access is on else it is off. After a
restore the device may have some enabled and installed services but disabled accessibility
setting. In such case settings should respect the restored values and the services should
be displayed as disabled initially and then enabling one of them will enable accessibility.
bug:5367404
Change-Id: If3756aba3f59e282000247e99f87ebff2b64c9fd
If the setting for enabled accessibility serivces contains a service that
is not installed on the device the system gets into a state that does not
allow enabling accessibility. This state is not recoverable.
bug:5343351
Change-Id: I6127ae00f7a16b190cfe43b68b8e71d49b10911e
SetupWizard was adding a separator after the last service name while
building the enabled accessibility services string. This case was not
handled by the settings. Added code to handle that case since it is
possible to have not well-formed settings backed up.
bug:5098493
Change-Id: I8381872037611a7456ca31526c85effdb9949885
1. Some string changes according to updated UX specs.
2. Explore by touch now shown only if accessibility is on.
3. The one time dialog for installing TalkBack if no services
are installed was not showing.
bug:5293099
bug:5286578
Change-Id: I633999f798b16e2910d95d541a7c33d1a4f296b9
1. Removed the global toggle switch - now each accessibility
feature has to be turned on or off separately.
2. Added a setting for the screen rotation (same as Dispaly)
since most of blind users want that behavior.
bug:5166161
bug:5127475
Change-Id: I659aef62a8499461075f43520a3008fa7b8ff911
1. Reimplemented accessibility settings accrding to UX design.
NOTE: The strings are not final, rather reasonable placeholders
to avoid blocking on them. Will submit another CL with string
updates and any necessary polishes.
bug:5065409
Change-Id: I3ba229a624298dbf238bc8562b42616b386f8c34
1. The code was not checking whether the settings activity exists
before passing in to the SettingCheckboxClass.
bug:5038386
Change-Id: Iba4f5e2e5f6f3ed9c0fed5a5103d2e9a34399d97
Also re-arrange the UI a bit to clearly put the button for
enabling/disabiling accessibility services along-side said
services.
Change-Id: Ica1ddecddf6e97800909ba6bea9ce4e124b59c01
This is the settings part of the change for adding
support for accessibility service specific settings.
1. Added the first cut of a SettingsCheckBoxPreference
that is a CheckBoxPreference that optionally takes
an intent to be lauched as settings of the item
represented by the preference.
2. Updated the AccessibilitySettigns to use the
SettingsCheckBoxPreference.
Change-Id: If44262b8965c65620c6b8c252f8ef356eb0d95cf