Commit Graph

6138 Commits

Author SHA1 Message Date
Svetoslav
eaaa38aea0 am b1ecf0d7: Merge "Adding APIs to enable apps to influence accessibility traversal." into lmp-mr1-dev
automerge: 97fcd2b

* commit '97fcd2b5d15ed01b1ee27a30132e95b4733793cf':
  Adding APIs to enable apps to influence accessibility traversal.
2014-10-31 19:58:57 +00:00
Svetoslav
b1ecf0d776 Merge "Adding APIs to enable apps to influence accessibility traversal." into lmp-mr1-dev 2014-10-31 19:53:32 +00:00
Alan Viverette
1dfcd0cc96 am e1f9f231: am 685a8770: Merge "Fix inset check in ThreadedRenderer" into lmp-mr1-dev
* commit 'e1f9f2311035177a91dd568c7ec9a821a76b9e24':
  Fix inset check in ThreadedRenderer
2014-10-31 00:38:39 +00:00
Craig Mautner
6a80527f61 am 3bfd2b7b: am 159da3db: Merge "Add enter-animation-done callback for system windows" into lmp-mr1-dev
* commit '3bfd2b7b8fb83d47d4a624993c096e1f716df551':
  Add enter-animation-done callback for system windows
2014-10-31 00:29:52 +00:00
Alan Viverette
349e93ea65 am 65d792e4: am 10450405: Merge "Show scroll indicators in AlertDialog" into lmp-mr1-dev
* commit '65d792e46cad687b2457ac4903cd489ec9dc77e6':
  Show scroll indicators in AlertDialog
2014-10-31 00:14:38 +00:00
Svetoslav
6c70290ff0 Adding APIs to enable apps to influence accessibility traversal.
Accessibility focus is a token that can be put on any view and is
entirely controlled by accessibility services which decide whether
to put accessibility focus on a given view and what the traversal
strategy is.

Currently accessibility service use the view tree structure for
traversal which does not always reflect the logical order and the
user experience is sub-optimal. In such cases apps should be able
to influence how they are traversed for accessibility.

This change adds the notion of an accessibilty traversal order.
If a view has next in the traversal, an accessibility service has
to traverse the content of this view before traversing the content
next one.

This change will enable accessibility service to move away from
using the view tree and use spatial location of the content while
app developers can also influence the treversal order.

bug:17319923

Change-Id: Ib67ae4577f30b2c96575c71538dc1afdea08bfd3
2014-10-30 16:55:53 -07:00
Alan Viverette
c2663dfdab am 0ab3e1df: am 4e7c562c: Merge "Update drawable state after updating tint list" into lmp-mr1-dev
* commit '0ab3e1df1de76f54296eefb1df05664950da8d2b':
  Update drawable state after updating tint list
2014-10-30 23:44:49 +00:00
Alan Viverette
b50a6f39ca am baed009e: am 2d3443fc: Merge "Add setters for window elevation and clipToOutline properties" into lmp-mr1-dev
* commit 'baed009eaeaacffef7cc0972517434451e357aef':
  Add setters for window elevation and clipToOutline properties
2014-10-30 23:44:37 +00:00
Alan Viverette
aff329f867 am 9b5a4e9d: am 66c0adcf: Merge "Ensure accessibility focus rect is drawn correctly" into lmp-mr1-dev
* commit '9b5a4e9dafda3c9c5c62d3d7cf151f13c4126309':
  Ensure accessibility focus rect is drawn correctly
2014-10-30 23:44:31 +00:00
Alan Viverette
136974c066 am 19b1c266: am 8785a56c: Merge "Create translucent hardware renderer if surface insets are non-zero" into lmp-mr1-dev
* commit '19b1c26622bd17165f2bb187fcddf036fd3f53cd':
  Create translucent hardware renderer if surface insets are non-zero
2014-10-30 23:44:25 +00:00
Alan Viverette
685a8770c0 Merge "Fix inset check in ThreadedRenderer" into lmp-mr1-dev 2014-10-30 22:30:21 +00:00
Craig Mautner
159da3dba8 Merge "Add enter-animation-done callback for system windows" into lmp-mr1-dev 2014-10-30 22:12:31 +00:00
Craig Mautner
9c79504225 Add enter-animation-done callback for system windows
Existing hidden methods allow activities to be notified when their
windows have completed animating in. This change adds that capability
to system windows using a ViewTreeObserver callback since system
windows lack an activity token.

The first subsystem to use this is the UserSwitchingDialog which was
previously using a 250 msec timeout to dismiss the dialog. That
deadline was often missed leaving the user with no dialog on the
screen during the transition.

Fixes bug 16661752.

Change-Id: I70789e0d9c07112f275e76fb82850926305f290d
2014-10-30 14:43:18 -07:00
Alan Viverette
3aa1ffbc75 Fix inset check in ThreadedRenderer
BUG: 17729606
Change-Id: I9303a788968b424fd8ca27fe4bb99bab51ec34a7
2014-10-30 12:22:08 -07:00
Alan Viverette
104504053d Merge "Show scroll indicators in AlertDialog" into lmp-mr1-dev 2014-10-30 00:18:32 +00:00
Alan Viverette
154c2c24dc Show scroll indicators in AlertDialog
BUG: 16353356
Change-Id: I0307283751ccb23b9d85b0c36cb78b01243e70dd
2014-10-30 00:18:22 +00:00
Alan Viverette
4e7c562c43 Merge "Update drawable state after updating tint list" into lmp-mr1-dev 2014-10-29 22:20:18 +00:00
Alan Viverette
2d3443fc5a Merge "Add setters for window elevation and clipToOutline properties" into lmp-mr1-dev 2014-10-29 22:05:11 +00:00
Alan Viverette
66c0adcfd4 Merge "Ensure accessibility focus rect is drawn correctly" into lmp-mr1-dev 2014-10-29 22:05:05 +00:00
Alan Viverette
79c067c54a Add setters for window elevation and clipToOutline properties
These are available as XML attributes but were lacking setters. None
of the Window properties have getters, so just adding setters here.

BUG: 16847753
Change-Id: I9c032903e94b7f12125210bd73c911243612df69
2014-10-29 14:27:47 -07:00
Alan Viverette
d513379239 Update drawable state after updating tint list
BUG: 18155988
Change-Id: Ic536027a54c10b2082fbc22476530165b76e2c59
2014-10-29 19:46:54 +00:00
Alan Viverette
2b12b58f94 Create translucent hardware renderer if surface insets are non-zero
BUG: 18160604
Change-Id: Ie4483b9841bd91778659d83b154f69e777fa1dfc
2014-10-29 11:11:40 -07:00
Alan Viverette
632af84924 Ensure accessibility focus rect is drawn correctly
Reverts previous change that draws it as part of View.draw() and ensures
that the display is always redrawn if a view has accessibility focus.
Correctly removes focus from views with accessibility focused ancestors.

Also reverts the focus indicator to use a solid line since the dotted
line looked janky.

BUG: 17675993
Change-Id: I25718334cc1ae1c2cd19d3c23af1c18c6a67504c
2014-10-28 20:57:47 +00:00
John Reck
c7c8b06940 Merge "Cleanup debug options" into lmp-mr1-dev automerge: b0aeaad
automerge: 49a01fc

* commit '49a01fc7dc8d2b9cc7591a94d19f3c209e470aea':
  Cleanup debug options
2014-10-28 00:35:14 +00:00
Alan Viverette
7e79fd3ee2 Merge "Clean up some javadocs in Window.setFeature...()" into lmp-mr1-dev automerge: 253626b
automerge: b64176b

* commit 'b64176bd87e08bcb952d6c22eea7ffd9a8b6df62':
  Clean up some javadocs in Window.setFeature...()
2014-10-28 00:32:19 +00:00
John Reck
b0aeaad442 Merge "Cleanup debug options" into lmp-mr1-dev 2014-10-27 23:27:30 +00:00
Alan Viverette
253626b822 Merge "Clean up some javadocs in Window.setFeature...()" into lmp-mr1-dev 2014-10-27 22:39:12 +00:00
George Mount
8b92704f02 am 03d5c6f5: Merge "Add resizeClip attribute to ChangeBounds." into lmp-mr1-dev
automerge: 3437192

* commit '34371925470e43dfe1b194fd3f6d0b942f13f1bd':
  Add resizeClip attribute to ChangeBounds.
2014-10-27 21:21:18 +00:00
John Reck
23d307c8d8 Cleanup debug options
Bug: 18138852
Bug: 18065434
Change-Id: Ibb07b73b147c2a8b287fe8aee3f6624582f21b00
2014-10-27 12:43:25 -07:00
George Mount
03d5c6f55b Merge "Add resizeClip attribute to ChangeBounds." into lmp-mr1-dev 2014-10-27 14:30:34 +00:00
George Mount
b7573c2dba Add resizeClip attribute to ChangeBounds.
Bug 17765948

Added the XML attribute for the resizeClip property of
ChangeBounds. Also updated support for resizing a view
using its clip bounds and position to fix the TODO.

Change-Id: I358d07d6a28fed4b7f39f9ccb9d89b9325f64239
2014-10-24 16:21:01 -07:00
Svetoslav
89e5035da6 am dcf21b96: Merge "Enhance computation of click point for accessibility." into lmp-mr1-dev automerge: 74a4a8d
* commit 'dcf21b968d3bd15f7e917ee585cf2a8dbe1babd5':
  Enhance computation of click point for accessibility.
2014-10-24 23:03:25 +00:00
Alan Viverette
9678e34521 Clean up some javadocs in Window.setFeature...()
Change-Id: I80812f9ce7a746ad9686aa4462f7570dfd9b4c0e
2014-10-24 15:23:58 -07:00
Svetoslav
74a4a8d616 Merge "Enhance computation of click point for accessibility." into lmp-mr1-dev 2014-10-24 21:57:39 +00:00
Svetoslav
eed63916a1 am bd6fabe2: Merge "APIs for an accessibility service to put interaction tracking overlays." into lmp-mr1-dev
automerge: 89e7ffe

* commit '89e7ffedadd20a3091e72b42f86c500452df193c':
  APIs for an accessibility service to put interaction tracking overlays.
2014-10-24 02:04:11 +00:00
Svetoslav
bd6fabe2ae Merge "APIs for an accessibility service to put interaction tracking overlays." into lmp-mr1-dev 2014-10-23 23:17:21 +00:00
Yigit Boyar
ab43570f5d am f3ab4410: am fa9ed8ca: Merge "Added a generic configuration and theme based cache" into lmp-mr1-dev
* commit 'f3ab441090a05bd428b9488b2e8e175f33bd6fe9':
  Added a generic configuration and theme based cache
2014-10-23 22:04:11 +00:00
John Reck
35447aeabd am fed6f4ef: am aca6ccf4: Merge "Improve documentation" into lmp-mr1-dev
* commit 'fed6f4ef2310ab3ec33d439702ea47f9b623795a':
  Improve documentation
2014-10-23 22:04:01 +00:00
George Mount
b5742f997d am 941252d3: am 523a129c: Merge "Use one method to change bounds in ChangeBounds." into lmp-mr1-dev
* commit '941252d3f002bbace92212e4f6340980984ce3ae':
  Use one method to change bounds in ChangeBounds.
2014-10-23 22:03:38 +00:00
Yigit Boyar
fa9ed8ca0a Merge "Added a generic configuration and theme based cache" into lmp-mr1-dev 2014-10-23 21:06:24 +00:00
John Reck
aca6ccf403 Merge "Improve documentation" into lmp-mr1-dev 2014-10-23 21:00:45 +00:00
John Reck
43a5328c83 Improve documentation
Bug: 17440886

Change-Id: I3f5c0dab6e08c0097fe60eb269e7fffe7b48b563
2014-10-23 13:58:34 -07:00
George Mount
523a129ced Merge "Use one method to change bounds in ChangeBounds." into lmp-mr1-dev 2014-10-23 20:52:13 +00:00
George Mount
d359952459 Use one method to change bounds in ChangeBounds.
Bug 17936593

Instead of calling setLeft(), setTop(), setRight(), setBottom()
separately, make one call that does all at the same time.

Change-Id: I986274f3a98b3136e71204501ffc272986ad31dd
2014-10-23 13:08:15 -07:00
Yigit Boyar
d422dc358f Added a generic configuration and theme based cache
For now, only animators use it but we can consider migrating
drawable cache to it as well.

Bug: 17456416
Change-Id: I571b96856805edb171f0fc52e6bff5a365f46b70
2014-10-23 11:46:01 -07:00
Svetoslav
8c4e97db87 Enhance computation of click point for accessibility.
In explore by touch mode the user performs a double tap to click on
an item. In this case the system sends down and up events at the
location of accessibility focus. The accessibility focused view may
be partially covered. In order to click in this view we compute a
point where to send the down and up events. This clicking strategy
is a bridge-gap and we will switch to accessibility actions in the
future.

When computing the point to click we were taking into account whether
the view was covered by a clickable sibling or a clickable sibling of
a predecessor. Despite our expectation cases in which this is not
enough happen in practice. In particular, the focused view may be
covered by a clickable descendant of a non-clickable sibling of a
predecessor that covers the focused view. This change takes care
of handling this case. Note that computing the click point is a fair
amount of work but this happens very rarely and on demand. Also the
code is short circuiting where possible.

Change-Id: I4d3cd8b67a7baf0bcc12f370ea7ba1b04c42c355
2014-10-23 17:46:39 +00:00
Wale Ogunwale
cbe7f81819 am 1546422e: am d0aae5a2: Merge "Fix issue #17789629: PopupWindow overlaps with navigation bar." into lmp-mr1-dev
* commit '1546422ea7b0c62e6205ab9e85a370caf1d01756':
  Fix issue #17789629: PopupWindow overlaps with navigation bar.
2014-10-22 22:39:35 +00:00
Wale Ogunwale
d0aae5a222 Merge "Fix issue #17789629: PopupWindow overlaps with navigation bar." into lmp-mr1-dev 2014-10-22 22:17:19 +00:00
Svetoslav
3a5c721072 APIs for an accessibility service to put interaction tracking overlays.
An accessibility service may register to observe the interactive windows
on the primary display. These windows are the one that has input focus and
ones a sighted user can touch. It is sometimes beneficial for an
accessibility service to overlay a window to intercept user interaction
and based on that introspect and perform an action on the windows that
are on the screen. This is problematic as overlaying a full screen window
that is touchable prevents the accessibility service to introspect the
content under this window.

This change adds a special type of window that only an accessibility service
can place which does not affect what an accessibility service can "see" on
the screen. Hence, even putting such a window full screen the service will
be able to interact with the other interactive windows it covers.

Change-Id: I053ccc3a5c6360a98dc40bdb172b54dab35d8b31
2014-10-21 14:45:53 -07:00
John Reck
76f24bde78 am e73a54f3: am bf463af2: Merge "Surface:lockHardwareCanvas" into lmp-mr1-dev
* commit 'e73a54f33c029552469fcf1cda46eed2f360a38e':
  Surface:lockHardwareCanvas
2014-10-21 21:39:36 +00:00