If a developer explicitly sets the empty string as the title of a
Toolbar that is used as an action bar via Activity#setActionBar, don't
overwrite it with the window title. This clears up a nonintuitive
behavior when explicitly clearing the title of a toolbar.
Bug 17510951
Change-Id: I183c2ca57d3bd16ae1f89bb7daa2cdf086189138
It's possible, especially with legacy mode, for a last frame for a
sequence to have already arrived when a repeating sequence is stopped.
In that case, need to check for sequence complete as soon as the
requestId, framenumber pair is added to the pending queue of completions.
Bug: 17428716
Change-Id: Ie5c6ea5a43639c812b8441da326c6303e150fce0
Preserves pre-L behavior and avoids requiring developers to manually
set the tintMode to SRC_ATOP when targeting SDK 21+.
BUG: 17507827
Change-Id: I43f86cbcb9662172254f46700441ca85a54428f6
We were invalidating the view during outline invalidation far
too often. Sometimes, it's appropriate to invalidate the view when
the outline changes, but not when the outline is being invalidated
in the middle of drawing the view, which is done in reaction to a view
invalidation.
Issue #17460940 Volantis: panning in Calendar from month to month is only at 30fps
Change-Id: I7bdee17dc9c7df89d4cd3d781010823cef931222
Fix bottom spacing for dialogs with no button bar
Remove default dividers from dialog lists
Bug 17503404
Change-Id: Icdcaaad99f70a259ff3f892d6385257801e38437
Since all TV devices are required to have a DPad as a form of
navigation we should suppress any configuration instances where it
claims one doesn't exist just because it isn't currently connected.
This prevents applications from going through a configuration change
and potentially an app restart when a remote disconnects to save
battery.
Bug: 17493314
Change-Id: Ice87b7056984afe02917ccba9196fdbcac9985fc
Bug 17499971
The enter and exit transitions were targeting the shared element.
This means you'd get double transitions on the shared element.
Also, the enter transition was not properly initialized to have
an invalid target so it was targeting all views.
Change-Id: I4f3510c70bea90f09be01776bc0ad1ffb42d99d5
Have maximum size for Visibility transition bitmaps.
Also changed Visibility to avoid transitioning out child views
while transitioning out their parents.
Also moved view-to-bitmap code to common utility.
Bug 17469198
Change-Id: I05f069a267539b479da1b39cdad2cc9270c5c381
With this CL, the behavior of getDefaultEnabledImes() changes
as follows:
- Previously system IMEs are always enabled by default as long
as it is a software keyboard that supports En_* subtype. With
this CL, getDefaultEnabledImes() relies on the locale returned
from getFallbackLocaleForDefaultIme() instead of calling
isSystemImeThatHasEnglishKeyboardSubtype() to minimize the
number of enabled IMEs.
- Previously default enabled system IMEs are chosen in a
country-agnostic way. As a result, "en_IN" is enabled even
when the system locale is "en_US". With this CL, the system
first tries to find IMEs with taking the coutnry into account,
and use the country-agnostic way when and only when fallback
logic is required.
BUG: 17347871
Change-Id: I6571d464a46453934f0a8f5e79018a67a9a3c845
In the past it's been a recommended approach to avoiding overdraw for
apps to set their window background to null at runtime if their
content view fully covers their window surface. The problem with this
is the IME.
The IME can force a resize of the window at unexpected times and
unless an app has been configured to fit system windows and manually
cover the padded area that the IME window covers, the asynchronous
nature of the IME-show process can leave surface buffer garbage
visible to the user. In previous platform versions this wasn't an
issue since pre-renderthread we would always animate a crossfade from
the closed to open state. This animation was always a bit of a hack
since it could break the contract of requestLayout/invalidate on the
view hierarchy - it could result in a draw happening into the saved
"before" state of the crossfade before a pending layout.
Now that this has been cleaned up the buffer garbage is sometimes
visible.
To prevent this, PhoneWindow now detects the state of a null window
background and draws solid rects into the area not covered by a
window's content. Which color is determined by the window context's
theme, though this is not a public API available to apps.
Bug 17006497
Change-Id: I714439a1608c4ae135f3d9d49bb165330d9fbe9f
- If a session is closed, and a new session is created immediately
afterwards, but then fails to be configured, the first session sees an
onUnconfigured call which it wasn't expecting, and throws an
exception on an internal thread, leading to app death.
Add a guard against this case.
- If the lower levels skip a frame (illegal per design), be slightly more
robust to that by accepting any successful result as the latest completed
frame, instead of just incrementing the completed frame count. This will
lead to missing results, but should allow shutdown, etc, to complete
cleanly.
- Convert TIMED_OUT error codes to CAMERA_ERROR CameraAccessExceptions.
This is a common error code returned by waitUntilIdle.
Also, improve debug logging to log a session ID with verbose logging,
and add a few verbose logs.
Bug: 16899526
Change-Id: I7a31f0a12effc2611e1f9c2408224ee82c37c912
ActionBarContainer was setting the bounds of its background assuming the
visibility of the ActionBarView. But that view becomes GONE when the
ActionBarContextView is visible, causing artifacts such as wrong shadows
when resized (as in custom configuration changes).
Issue #17280341 Quantum: drop shadow on CAB has wrong width after rotation on L, when configuration change is handled by the app
Change-Id: I07e57f00e27b41d5370cb9440b35734a8ec10f3a