An optimization prunes invalidates on views which are not inside their
parent's bounds. This works in most cases, but it is possible to run
a situation where a view has been invalidated (and is thus waiting to
be redrawn), but the pruning logic ensures that that draw call
will not happen. Further, when/if the view comes into the bounds
of its parent again, it may still not be redrawn, because now future
invalidates on the view are noop'd because it is already in an invalidated
state (and thus will not propagate invalidates up the hierarchy).
The fix is to remove the optitmization. This will cause some overhead
sending the invalidation request up to the view root, but this
overhead is minimal (and only extra for cases of out-of-bounds views),
and the more expensive part of rendering these views will still not be done
since the view root will avoid re-drawing the hierarchy when the dirty
rectangle is empty.
Issue #6773607 Layered views animating from offscreen sometimes remain invisible
Change-Id: Ia2c1a2b9d3e7f267253cb325ccceff1e7fdbe8bd
When an error in fetching a column occurs in your suggestions cursor
adapter this will ensure the stacktrace is logged to provide more
context about what failed.
Change-Id: Iafe4918caebb9b0fb712b758b2d3ace329fd2512
1. If the application does not accommodate different screen density the
system applies an application scale equal to the device density over
the a default density. The AccessibilityNodeInfo coordinates were not
reported after applying the compatibility scale, therefore the bounds
in parent and screen were not as perceived by the user.
bug:6764586
Change-Id: Iae2d6ea81049364194c7cb09df2240b5eda3d939
1. The purpose of the View#announceForAccessibility method is to
give a message to the user that is not related to a predefined
view state change. The current implementation is grabbing the
source view's content description which in general overrides
the event text which defeats the purpose of the announcement.
bug:6721440
Change-Id: I8814914bea38c5f4c04f57391a64cf2bb06cb975
1. In JellyBean we have added some APIs to search for next accessibility
focus in various directions and set accessibility focus from hover.
However, we have decided that there is not clean answer for how this
should behave and the APIs were hidden. Now the accessibility service
is responsible for that. The unused code is now taken out.
2. This patch also takes out the hidden attribute accessibiligyFocusable
since we moved the responsibility for implementing focus search strategy
to accessibility services and we did not need that for Jellybean which
is a good sign that this is not needed. I general this is one less thing
for an app developer to worry about. We can add this if needed later.
bug:6773816
Change-Id: I0c858d72c93a2b7ff1f8f35a08d33ec4b9eb85fd
Make StateMachine#quit non-conditional and remove the need to
process the SM_QUIT_CMD it is now private.
Rename halting to onHalting.
Add onQuitting
Change the message specific logging to be more generic and change
the xxxProcessedMessagesYyy methods to xxxLogRecXyy names. Also add
addLogRec(String) and addLogRec(String, State) as the generic logging
methods.
bug: 5678189
Change-Id: I22f66d11828bfd70498db625fe1be728b90478b7
Conflicts:
services/java/com/android/server/NsdService.java
Add a one way method to notify Views that the window has moved
on the screen. Fixes issues arising from the IME popping up and
translating the window that uses it. Accessibility was left unaware
of these movements and was drawing the box around the wrong widgets.
Similarly PopupWindow used getLocationOnScreen to determine how
much screen real estate was above and below the anchor point to
determine where to put an anchored window.
Fixes bug 6623031.
Change-Id: I4731a94d5424c1ec77bf1729fba8fc9ea34cae46
The package manager calls to clear data / clear cache were not also
having default container service clear the data on external storage. Now
they do.
Change-Id: Ib5e5eb6adf2cac5a4cc094cc1a02ac8cfb6a2edf
I got this reproduce a few times, then wasn't able to. I made this
change and then couldn't reproduce it. Maybe it fixed it.
The change here is to explicitly pass in the handler class to
apply() and reapply(), instead of relying it being set as a member of
the RemoteViews class. This is much cleaner and more explicitly about
setting that for the click callbacks.
Bug: 6756472
Change-Id: I8d029c3836501df3206c433838124b4be3890a8b
This should help developers use some of the features of
Style via subclassing rather than duplicating functionality.
Bug: 6716608
Change-Id: I048e8221c8046e9779e08e6e262ac3fb37b01cb3
Skipping spaces at ends of line used to be done only when ok != here
(a potential line break was found).
Moved this logic up one level to handle all cases.
Also moved maxLine test in the block that actually adds a new line.
Updated the unit tests accordingly.
Change-Id: Ib10bc838b1ffa5b8a60259ea4b622d9fecb2ec70
allow to resolve it even more lazily: if resolution is asked then do it
only if possible (the View needs to have a parent that can also do its
resolution)
Change-Id: I8e808f0ef392521e59b27b82f86e9058f20af9ba