Commit Graph

8286 Commits

Author SHA1 Message Date
John Reck
f5159155d0 Merge \"DO NOT MERGE Move SurfaceView offscreen if the app stops drawing it\" into nyc-dev
am: d11b5e6661

Change-Id: I1caf2fbac785c68c6afeb61b60493e728a83a670
2016-06-18 02:14:29 +00:00
John Reck
34bf49e4de DO NOT MERGE Move SurfaceView offscreen if the app stops drawing it
Bug: 29360411
Change-Id: Iefb9d7a9dafb34a2b4f79130a2a8b5a7cf7de906
(cherry picked from commit aa6e84f21d)
2016-06-17 20:26:10 +00:00
Chong Zhang
dba235d91a Merge \"Do a forceLayout if pending insets is changed after relayout window\" into nyc-dev
am: 2756d0707f

Change-Id: Ia95dd424c118b962a9a10ac074d508758b49ea90
2016-06-17 18:26:45 +00:00
Chong Zhang
71f2c31469 Do a forceLayout if pending insets is changed after relayout window
We might have a pending MSG_RESIZED_REPORT, but if it's executed after
relayoutWindow, mPendingInsets will already be the new value and it'll
not forceLayout. So we need to forceLayout here to make sure the measure
cache is cleared.

bug: 29391054

Change-Id: I73793b1427b89e75700369ec3b37053a6a732f0d
2016-06-17 01:11:49 +00:00
Yorke Lee
3d80871032 Merge \"Limit global drags to apps targeting SDK 24 and above\" into nyc-dev
am: f33af2285b

Change-Id: I539f39cfea50f34dade2141829b21d422809b09f
2016-06-16 21:22:22 +00:00
Yorke Lee
0e85247195 Limit global drags to apps targeting SDK 24 and above
Bug: 29127791

Change-Id: Ib5f85a207bdb79eeac0418fda78e452d225761bc
2016-06-16 09:35:40 -07:00
Selim Cinek
0630d92064 Merge \"Added dismiss, expand, and collapse accessibility actions\" into nyc-dev
am: c1720dce1b

Change-Id: I25bd41f1307233bba14067952086ca7be3118505
2016-06-16 04:25:26 +00:00
Selim Cinek
e9bad242f3 Added dismiss, expand, and collapse accessibility actions
Fixes: 20343017
Fixes: 29368014
Change-Id: Ib571242aac04c67aea2f3c3ce76139eaedc1f3f1
2016-06-15 16:30:09 -07:00
Yorke Lee
71ab239765 Merge \"Check for detached view in drag-related APIs\" into nyc-dev
am: cdc9d7bed9

Change-Id: I95d551726913c95d2806fe22ee93fcc24d1862c2
2016-06-13 22:14:24 +00:00
TreeHugger Robot
cdc9d7bed9 Merge "Check for detached view in drag-related APIs" into nyc-dev 2016-06-13 20:09:43 +00:00
Yorke Lee
07452c37ab Check for detached view in drag-related APIs
Bug: 29253539
Change-Id: I26285404ee15bb17e87ac23c67f7c3c6aaa2d968
2016-06-13 11:32:23 -07:00
John Reck
93ff5124c6 Merge \"Don\'t call surfaceCreated for just changed surfaces\" into nyc-dev
am: e4b1fb94e3

Change-Id: I896ffb151a1b6625fe6b6c937dac9b54f1d5d252
2016-06-10 18:02:20 +00:00
John Reck
e4b1fb94e3 Merge "Don't call surfaceCreated for just changed surfaces" into nyc-dev 2016-06-10 17:46:54 +00:00
Phil Weaver
e2b3248823 Merge \"Improve accessibility window title behavior\" into nyc-dev
am: f8af34365c

Change-Id: Id9d2de6b82f8e8062c0d66d759440b574b113a02
2016-06-09 23:42:47 +00:00
Phil Weaver
f8af34365c Merge "Improve accessibility window title behavior" into nyc-dev 2016-06-09 23:32:10 +00:00
John Reck
208c47cfb0 Don't call surfaceCreated for just changed surfaces
Fixes: 29223302

If the surface only changed we want to just call onSurfaceChanged,
not onSurfaceCreated.

Change-Id: I65c8b210a7e34eaa2862020335ee7f6ef56eeac2
2016-06-09 16:26:21 -07:00
Phil Weaver
155edc693e Improve accessibility window title behavior
Un-reverts ag/1057448, but uses a version of Resources#getText
that returns null rather than throw an exception when no title
is available. This is the same call made before, so this change
should be safer.

Bug: 28744278
Change-Id: I8c123f4f6d74f796ab9e8ffcf955aaf881770da1
2016-06-09 13:45:46 -07:00
Robert Carr
5978cf5ff8 Merge \"PiP animation: Move window with resize when ending animation.\" into nyc-dev
am: 4624d687f7

Change-Id: I94fc4de5fd24f75b2b69f6380048d8e57ae7980e
2016-06-09 19:36:27 +00:00
Robert Carr
a9408d4a48 PiP animation: Move window with resize when ending animation.
At the end of the animation (when going from larger to smaller),
we are left with a scaled surface, that we want to seamlessly
resize to an unscaled surface of the new size. Because we have scaled
the shadow region of the surface, the position of the content
will differ before and after the resize applies. We use new
SurfaceFlinger API to cause position updates to apply after
resize. Because we have to switch into SCALING_MODE_FREEZE,
we could end up prematurely cropping the window, so we
switch to using screen space crop for the pinned stack.

Bug: 28899837
Change-Id: I9b762a237413e4fa3d432e67d30c7125bfef484c
2016-06-09 10:31:17 -07:00
Phil Weaver
2c8099110e Merge \"Revert \"Improve accessibility window title behavior\"\" into nyc-dev
am: fc71309640

Change-Id: Ia2728037f9e610dd49db2bd1a22fd72690bd5340
2016-06-08 02:24:47 +00:00
Phil Weaver
fc71309640 Merge "Revert "Improve accessibility window title behavior"" into nyc-dev 2016-06-08 02:19:34 +00:00
Phil Weaver
266ed9acc3 Revert "Improve accessibility window title behavior"
Bug: 29127065

This reverts commit 2a7e4442bf.

Change-Id: Ibc5527cfedd49c685ffd1b8ae59e87ed99c93d39
2016-06-08 00:34:40 +00:00
Chong Zhang
2f2af39911 Merge "Fix scroll amount calculation in ViewRootImpl" into nyc-dev
am: b1e24209f1

* commit 'b1e24209f16621fd095dacb615364bfd15dfe721':
  Fix scroll amount calculation in ViewRootImpl

Change-Id: Idb326fa8e459aaf3a97d841c91b3ccefc48dad81
2016-06-02 21:06:00 +00:00
Chong Zhang
6725472329 Fix scroll amount calculation in ViewRootImpl
When calculating scroll amount, we should check whehter focus
is visible using before-scrolling position.

It's possible that the view is already scrolled, then visible
insets changes (eg. IME went away). Previous scroll position
still makes the focus visible, but it will leave the focus
in a bad position when it should be scrolled back.

bug: 29025892
Change-Id: I091f16bebc4c1e5ba831616c51ab2ac75d4c4b3c
2016-06-02 13:33:40 -07:00
Selim Cinek
f874020399 Merge "Fixed a few accessibility issues with notifications and groups" into nyc-dev
am: ddc6de1eda

* commit 'ddc6de1eda495790e6564438994df5d49ddf248f':
  Fixed a few accessibility issues with notifications and groups

Change-Id: Iaa2ddc8bedaad3623190e65116f0d8b85687eb78
2016-05-31 19:36:27 +00:00
Selim Cinek
ddc6de1eda Merge "Fixed a few accessibility issues with notifications and groups" into nyc-dev 2016-05-31 19:26:16 +00:00
Selim Cinek
ddf1b399d8 Fixed a few accessibility issues with notifications and groups
Change-Id: I78fa62884eaa0efe825b5eb1e6cac7d88fc05a7f
Fixes: 28069681
2016-05-27 17:04:56 -07:00
Jorim Jaggi
26dea2d518 Merge "Close IME when attaching dock stack" into nyc-dev
am: c5fc6c602c

* commit 'c5fc6c602c16f0e985d8f8ba7f94075229e52320':
  Close IME when attaching dock stack

Change-Id: I40abf80fcea522c8082e622c33f3a6726f781145
2016-05-27 21:15:26 +00:00
Jorim Jaggi
3c5d0f1041 Close IME when attaching dock stack
So we don't end up with animation weirdness.

Bug: 28905720
Change-Id: I04124995dd99fa26d2e9be467c5976d7b20810a7
2016-05-27 21:08:39 +00:00
Teng-Hui Zhu
b076ee0a42 Merge "Update the light center when the root view\'s layout changed" into nyc-dev
am: e78ba24c17

* commit 'e78ba24c176fd6a0c54eaf7e52be545952ba1ab7':
  Update the light center when the root view's layout changed

Change-Id: I03e6d183e2a98b4d08f1e5be74447ddf942e8337
2016-05-26 17:53:31 +00:00
Tenghui Zhu
e78ba24c17 Merge "Update the light center when the root view's layout changed" into nyc-dev 2016-05-26 17:48:49 +00:00
Michael Wright
4f6ae7bbaa Merge "DO NOT MERGE Remove Pointer Capture API" into nyc-dev
am: c396f0f70e

* commit 'c396f0f70ef40ea0fb42a0872a13f4c4e9a6a5f0':
  DO NOT MERGE Remove Pointer Capture API

Change-Id: Iede50a709849ed27cb9723a565b946e00fb23be7
2016-05-26 14:39:03 +00:00
Michael Wright
c396f0f70e Merge "DO NOT MERGE Remove Pointer Capture API" into nyc-dev 2016-05-26 14:03:47 +00:00
Phil Weaver
062d24f9ec Merge "Improve accessibility window title behavior" into nyc-dev
am: 7ab1a4d286

* commit '7ab1a4d286898acffd1f3b444f9efc9e1d2a104e':
  Improve accessibility window title behavior

Change-Id: I29286da845751351f3dcf603efb12441a6efe74e
2016-05-26 00:18:34 +00:00
Phil Weaver
7ab1a4d286 Merge "Improve accessibility window title behavior" into nyc-dev 2016-05-26 00:11:25 +00:00
Phil Weaver
2a7e4442bf Improve accessibility window title behavior
Suppress the default, unlocalized strings from being read as title.

Bug: 28744278
Change-Id: Iea0f7d8fed3d6428ada725cf3ffa077ba974b74a
2016-05-25 12:48:13 -07:00
Robert Carr
e1b1fb1740 Merge "Force pending transactions to flush before screenshot." into nyc-dev
am: 39e8022a75

* commit '39e8022a75507be06179c3de7358cebb1bb22e06':
  Force pending transactions to flush before screenshot.

Change-Id: I2dc18293c1507a7f427c3ad554d3f70467dac98d
2016-05-25 19:21:16 +00:00
TreeHugger Robot
39e8022a75 Merge "Force pending transactions to flush before screenshot." into nyc-dev 2016-05-25 19:16:13 +00:00
Mady Mellor
8bfb5b971d Merge "Changes based on API council feedback for performContextClick" into nyc-dev
am: 7c17e70f2f

* commit '7c17e70f2f795ca06006ff2560c8b8211ce1dd52':
  Changes based on API council feedback for performContextClick

Change-Id: Ibf53f8081db8b847d18eaa8fee983b677b62f9bc
2016-05-25 19:08:17 +00:00
Mady Mellor
7c17e70f2f Merge "Changes based on API council feedback for performContextClick" into nyc-dev 2016-05-25 19:00:08 +00:00
Mady Mellor
4f3ab93147 Changes based on API council feedback for performContextClick
Added an overloaded version with (float x, float y).

Fixes: 28295818
Change-Id: I41c2bf225964436655986b3ad4d0c630c658e38b
2016-05-25 09:52:51 -07:00
Yohei Yukawa
ef68474698 Merge "Make IMM more robust to spurious window focus-in" into nyc-dev
am: 50c33d1ca1

* commit '50c33d1ca1218ec00eb37f66a7c11315603c9ef7':
  Make IMM more robust to spurious window focus-in

Change-Id: I1d9a138798d982f2164907b49713a7b90cec9adc
2016-05-25 04:58:20 +00:00
Yohei Yukawa
8e9214b4bd Make IMM more robust to spurious window focus-in
InputMethodManager (IMM) has a latch switch named IMM#mHasBeenInactive
to forcefully refresh IME focus state when an inactive client
(IMM#mActive == false) is gaining window focus.  However, it turns out
that there is a race condition where the latch could be unexpectedly
turned off. This is probably what we have been chasing in bug 25373872.

Imagine the following scenario:

  1. An app receives MSG_WINDOW_FOCUS_CHANGED w/ hasWindowFocus=false
  2. IMM inside the app receives MSG_SET_ACTIVE w/ active=false
  3. The app receives MSG_WINDOW_FOCUS_CHANGED w/ hasWindowFocus=true
  4. The app receives MSG_WINDOW_FOCUS_CHANGED w/ hasWindowFocus=false
  5. The app receives MSG_WINDOW_FOCUS_CHANGED w/ hasWindowFocus=true

Here, our current strategy has been:
  A. Turn on the latch when MSG_SET_ACTIVE (w/active=false) is handled.
  B. Turn off the latch and ask IMMS to start input when
     MSG_WINDOW_FOCUS_CHANGED (w/ hasWindowFocus=true) is handled.

The problem is that in the step B IMMS can reject the request if
WindowManagerService (WMS) tells that the window in question no longer
has window focus. This is not surprising because the app is
just handling messages in the message queue sequentially.  As a result,
the IME focus is not updated expectedly in the step 5, because the latch
is no longer enabled as we expected.

With this CL, the latch will be re-enabled if the app fails to start
input while IMM#mActive is false as a short-term solution.

In future we may want to address this issue in protocol level so that
we can address other known issues such as bug 26851566 at the same time.

Bug: 28281870
Change-Id: I60adb38013b063918b074c7b947649eada77b2c8
2016-05-24 23:55:29 +00:00
Mady Mellor
470c001355 Merge "Children should have backgrounds" into nyc-dev
am: 31e49b0964

* commit '31e49b0964cfba0b6b91e8ae67cbc04730098569':
  Children should have backgrounds

Change-Id: I4c123a7cf9efd38c46ff155a70f5b9c053e4df02
2016-05-24 21:09:33 +00:00
Mady Mellor
b0a824687f Children should have backgrounds
To add a background to children of a group, a couple of things
are changed when a group is in the expanded state:
- The parent's shadow + background is removed
- The group header is given a background and elevation
- The children are elevated to cast a shadow and have backgrounds
- When it's fully expanded the dividers won't be shown
- There's extra height added to the parent so that the child
  may cast the bottom shadow of the group
- As the children move into the bottom stack the last visible
  one alters its height and the ones below it are hidden
  to achieve the clipping effect

Fixes: 27591195
Fixes: 28655641
Change-Id: I0484308843e9b8bc10391387e54de07973a48f7d
2016-05-24 11:39:12 -07:00
Robert Carr
e9953b1752 Force pending transactions to flush before screenshot.
Following 14e54ba747 (ag/1043009) we need to push an empty
synchronous transaction if we want to ensure all previous
transactions have occured before taking a screenshot. In
light of Bug 7552304 it seems wise to do this before screenshoting
applications.

Bug: 27098060
Bug: 7552304
Change-Id: I6d7dfbe634a288c55449d2f1d6fbbfc13bab08ad
2016-05-23 20:57:11 -07:00
Phil Weaver
f2b72b3a9d Merge "Fix a11y crash when window layer isn\'t unique." into nyc-dev
am: 227d33439d

* commit '227d33439da72495b39508ebc7e4f3719bb5175f':
  Fix a11y crash when window layer isn't unique.

Change-Id: Ie5bfa1fcee7ec463190ef73311f20f3a6f087e82
2016-05-19 21:57:12 +00:00
Phil Weaver
227d33439d Merge "Fix a11y crash when window layer isn't unique." into nyc-dev 2016-05-19 21:50:29 +00:00
Phil Weaver
adaafb2980 Fix a11y crash when window layer isn't unique.
TalkBack is seeing crashes that I can only explain by our assumption
that window layer is unique in all cases. TalkBack reports that it
happens during animation, so I assume that the layer may repeat
transiently.

Reducing our dependence on this assumption by traversing the list of
windows sorted by layer without assuming that the list has the same
length as the list of unsorted windows.

Also documenting the undefined behavior of SparseArray when indexing
beyond its bounds. The undefined behavior itself is intentional for
performance reasons.

Bug: 28679528
Bug: 28815817
Change-Id: I0c9f90b0b458b4cde465f603ba204fe6691e5c2c
2016-05-19 13:32:24 -07:00
Michael Wright
1831ca8f04 Merge "DO NOT MERGE Rename PointerIcon and Pointer Capture APIs" into nyc-dev
am: a1e0cebf3a

* commit 'a1e0cebf3a18ac097d370e21d698e079f974bfff':
  DO NOT MERGE Rename PointerIcon and Pointer Capture APIs

Change-Id: I20532a3148a99d4ea91ba7dc050f8669d5f19400
2016-05-19 15:12:30 +00:00