With this, there is no synchronous destroy SurfaceTexture requirement any more.
Revert the previous change which only applies to the sync SurfaceTexture.
Change-Id: Id4790d38a27f2982d0c8ad471bc1107683d27ffc
We were applying the density compat mode scaling multiple times to
display metrics, causing bad values.
Change-Id: Iafafd9a5e94b9d774cd2715bf968e91602a1bd82
- reset resolution if setLayoutDirection() is called
- propagate resolution reset to the children if the View is a ViewGroup and direction is inherited
Change-Id: Iab1a75b17426aead7e28caba827614d7cf8e9450
Therea re 2 fixes here:
- We sometimes cleared a flag in ViewAncestor too soon that controlled
how invalidated areas were redrawn (related to whether the invalidates
happened on opaque views or not).
- TransitionDrawable was always setting/restoring alpha values on its
drawables every time it was drawn. setAlpha on BitmapDrawable causes
an invalidation, so essentially this was an infinite invalidation/redrawing
loop. The fix was to notice when the animation was done and to simply
draw the appropriate drawable[s].
Change-Id: I1849a5a909b0039a0e9bce0aa3cfc33c50f8f854
Now that landscape on phones uses the config_prefDialogWidth setting
to restrict the default size of dialog windows, the options menu panel
was affected.
Restrict the ratcheting preferred width feature based on the width
LayoutParam only, and respect the LayoutParams width provided by panel
windows.
Change-Id: Idc62f41910f6f22dc50cab978c5642bb0a8dbdaf
Previously we only sent hover to the topmost child, but this doesn't
handle cases where multiple children are overlapped to achieve
certain special effects. Now we send hover to all children until
one of them handles it.
Also moved the call to send the accessibility event into the
main dispatch function so that we can send the accessibility event
for all innermost hovered views even when setHovered() might
not be called.
Change-Id: I6fb8b974db44b594c441deafc012b8415afdfac7
- revert previous fix (transforming >=0 to >0)
- initialize mUserPaddingStart and mUserPaddingEnd to -1 in the specific View(Context context) constructor
- cache mUserPaddingStart and mUserPaddingEnd a bit earlier in View(Context context, AttributeSet attrs, int defStyle) constructor
- cache also mUserPaddingStart and mUserPaddingEnd in setPaddingRelative()
Change-Id: Ibe398da7af35f77655d7006444fa49c9c5387f62
Modified onHoverEvent so that a view only has its state changed to
hovered when the view is clickable. The intent is to prevent labels
from taking hover focus away from their containing view group despite
not being actionable in any way. The child will still receive
a hover event but, if it does not handle the event (returns false),
the hover event will bubble up to its parent and ancestors allowing
them a chance to handle the event instead.
The new onHoverEvent semantics are better because now they closely
mirror those of onTouchEvent. This makes it straightforward to
implement views that respond to hover by changing their visual
appearance (such as by making buttons glow when hovered).
Added onInterceptHoverEvent to enable ViewGroups to explicitly
intercept hover events within their bounds.
Exposed the new hover event API for real.
Change-Id: I63195c8f5c74b859f6047487f9a0f703e8f40ffe
Tainted events should still be processed, even if we don't bother
the developer with the details.
The check for nested calls to the event verifier must incorporate
the event type because different event types might be overridden
in different subclasses so the nesting depths may vary.
Change-Id: If2fb213e07db783a0bd1da97bb12aad93126d712
1. Updated the code to return empty list instead.
2. Updated the doc to explain that the search is done in the
sub-tree rooted at the info whose method is called.
Change-Id: I560d2563ed4772305bf2d7919560ef19baa30a1d
1. AccessibilityEvent was incorrectly setting the
connection of an owned AccessibilityRecord after
the record is initialized since during initialization
the record may become sealed.
bug:4724101
Change-Id: I39087dc8023c62252f31431ece23de901dc45972
- use a lazy padding resolution (because layout direction is lazyly resolved too)
- cache resolved layout direction as getResolvedLayoutDirection() will be more called
- enable resetting layout direction cache if needed
- update unit tests
Change-Id: I30ce19e3100cc137f84e60163b60e1577ff61819
Bug: 4176026
Spec of TextServiceManager
- Chooses the most applicable TextService(e.g. SpellCheckerService, WordBreakIteratorService..)
for each locale
Spec of SpellCheckerService
- Returns whether the given string is a correct word or not
- Returns Suggestions for the given string
Change-Id: Ia25e7b4f308778891929e31b8cbd741f6848cce4
This method is invoked by TextureView.getBitmap() and failures must be
caught to avoid leaving the GL context in a potentially bad state.
Change-Id: I620de395ba1bc20154de58c81963223dc55cac78
The invalidation logic was broken for invisible views, causing
a problem when an animation was set to start on an invisible view
(to fade it in), but the view would not propagate the invalidation
event that would trigger the start of the animation rendering.
Fix: reset the DRAWN flag when a view becomes invisible to allow
the invalidation logic to work as intended.
Change-Id: Ibf49c6e8b39506a92a6e5f45cb8a12626ae4f931
This enables new fragments or views that have a focused EditText to register
the view with the input method framework as the served view.
Change-Id: I260439223b56626f2e57bd778bbe5194ed44e361
Mechanism for removing possible earlier animations should
call removeCallbacks on the view, not on the (possibly null)
handler of the view.
Change-Id: I76c6f0bea5e009be9197a6e49e9360ed9ef1a9cb
1. Infisible children of a ViewGroup are reported by View group
while constructing an AccessibilityNodeInfo.
2. AncestorView does not check whether a found view is shown before
returining it or perform action on it.
bug:4672230
Change-Id: Ic620ea71b7755c598407bdd813a2beeee400c89c