am: 361124e
* commit '361124ef082a79ddae6ece153aebecac09f0fbd7':
Update surface insets on window elevation changes.
Fixed bug with cropping out drop shadow for pinned stack.
Change-Id: Iad5f58cc43ed5b24d23dcf878c941820b92a7ac8
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: f58d81e
* commit 'f58d81e640ac2d471259838af986b410f5cd2938':
Crash early when requesting a keyboard shortcut helper...
Change-Id: I2ef9f779a6295d90e9654738317ea39cd4f10870
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: 72c98d6
* commit '72c98d6a08796b457ee0e83c7232276b77af6677':
Make additional IME Subtype ID persistent.
Change-Id: I1e2afb7e2586f26b4e001bd991b996776eafcd00
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: fe6cec1
* commit 'fe6cec1ac00a4b60689a774bfef720c3b6f06b61':
Only force drawing status bar background if target >= N
Change-Id: Iaacf9fb25df6ce08ab0b6fbcf7fcc23b5abfea26
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: 620a86e
* commit '620a86e464d585c796e51a16dad419d46d3837e4':
Make stopped state a first-class thing
Change-Id: Idd258fd34c68ec214e41ceb90f1d911901535802
am: c724dcf
* commit 'c724dcf23c5e2ebd22c042a8a6f2424b7e9d5029':
Make stopped state a first-class thing
Change-Id: Idfa3cc5d8fa5b07c742c2700b38441ff7d692f42