am: 0697c7a
* commit '0697c7a877d87acd572ed7ce62472d5866375e86':
Do not update accessibilityTitle in LayoutParams.setTitle
Change-Id: I006620e1ac9c8571dd698f45da75284010dc58e9
am: c1699a9
* commit 'c1699a9f4cf679ebc87e5b5bc99dd07446950be7':
Populate RangeInfo correctly when acquiring from pool
Change-Id: I0227f6b9a842fa1e63827cda51e0cb5a435e278e
If the thread a toast is shown on is shut down,
the attempt to post the hide message to it's handler
will fail and it will never request removal. If this was
only some application background thread we will also not
receive a death notification. It seems best to use a timeout
to ensure we don't need the clients cooperation, espescially
as toasts can keep the screen on.
Bug: 21693547
Change-Id: I1d6e54ded5b9e2050daedc4d263e2e21fbe69862
am: 3fb1c81
* commit '3fb1c81394f98b025b488774916b7580f9e31dab':
Update surface insets on window elevation changes.
Fixed bug with cropping out drop shadow for pinned stack.
Change-Id: If788ed4af5292b76576c7abd728633f20cc6eb93
am: 52546e4
* commit '52546e46353f455d6a5bd070da6095868d7fc8bd':
Crash early when requesting a keyboard shortcut helper...
Change-Id: Ia1be80e54af4c04af0c33ef2d03f7fc4e8dfee84
The goal of this CL is to enable
InputMethodSubtype#getLocaleDisplayName() to return more natural locale
display name in terms of capitalization rules.
The key idea here is to use LocaleDisplayNames#localeDisplayName() with
an appropriate DisplayContext.CAPITALIZATION_FOR_* parameter rather than
relying on Locale#getDisplayName().
Bug: 22845728
Change-Id: If105082ce703db7a86738455db7e9fb37f3c6fe8
with a null IResultReceiver.
We're seeing Dialer crashes in this code path but they happen in the
main Handler loop so we can't see where the request with the null
request is coming from. Crashing earlier will hopefully give us a
stack trace that we can use to diagnose the issue.
Bug: 27963013
Change-Id: I60e4ef2ef328fa69790bbcaa4f196c02f7443296
When a view becomes newly invisible/gone via setFlags, its visibility
state will have already changed by the time we
dispatchVisibilityAggregated. Since we already do visibility filtering
in the ViewGroup override when we traverse to child views, permit the
normal View implementation to dispatch onVisibilityAggregated if we're
not visible and dispatching visibility false.
Bug 28123146
Change-Id: I528dffe95d2057ef938508b9fb4219c5338b060c
am: 063fe65
* commit '063fe652be5ac01f1d4ffe621dc2a5f7e2170198':
Make additional IME Subtype ID persistent.
Change-Id: I468fdb96d5a4963ae905059e38178e775da7755d
It turns out that IME subtypes specified to
InputMethodManager#setAdditionalInputMethodSubtypes() are stored in the
presistent storate without subtype IDs. As a result, when the system is
rebooted, the system would no longer consider those additional subtypes
as enabled due to subtype ID mismatch, until the IME re-adds those
additional subtypes again with the original subtype IDs.
Bug: 28104337
Change-Id: I1445213e0b83d76631a839b974ec1ab9b28ad7d2
It turns out that the current CursorAnchorInfo#equals() is quite
inefficient because our CursorAnchorInfo#hashCode() tries to use almost
all the fields. Even worse, as Matrix#hashCode() is hard-coded to 44,
we get the same hashCode() when comparing two CursorAnchorInfo objects
that are different only in transformation Matrix after such a complex
hash calculation.
In the real world scenarios, most likely calculation hash code only from
Matrix and composing text would be good enough for our use case, because
the former can cover UI scrolling scenario and the latter can cover the
text typing scenario. More complex hash calculation is probably
inefficient.
With this CL, CursorAnchorInfo#hashCode() is pre-calculated only from
those two fields, and carefully reorder comparisons in
CursorAnchorInfo#equals() to improve the likelihood of returning false
with fewer comparisons.
Bug: 28105733
Change-Id: Id896adeab5ffe87ceddb2c2762d6d91475e28ec4
am: fe52f91
* commit 'fe52f91f0cee39b186b1b892fc3344d3279640cf':
Only force drawing status bar background if target >= N
Change-Id: I424d896d801dc57ed8e14fce3205644060d33e8e
Since forcing it all the time has the potential of breaking
compatibility with apps, we don't want to do this.
Instead, we only force it if the app targets >= N.
We communicate this to window manager with
PRIVATE_FLAG_FORCE_DRAW_STATUS_BAR_BACKGROUND.
We introduced this for 2-up split-screen. If we have an app
that doesn't draw the status bar background by itself, we
just force the whole bar to be black.
The same applies for windows that used translucent status
bar - we also force the whole bar to be black
Bug: 27285627
Change-Id: I7f1ceaa364f8a4e851935f77aa5e8d913bf11791
Tracking if accessibility focus is being cleared because it is being
set to another view in the same window. In this case, leave
accessibility focus on the window.
This change greatly reduces the amount of cache re-indexing.
Previously we flushed the cache every time accessibility focus moved.
Bug: 28077283
Change-Id: If80899d36e7f58b22635f844bdd4ea37a55b875e
am: c724dcf
* commit 'c724dcf23c5e2ebd22c042a8a6f2424b7e9d5029':
Make stopped state a first-class thing
Change-Id: Idfa3cc5d8fa5b07c742c2700b38441ff7d692f42