Previous logic in ViewRoot would schedule and perform a draw
when it was requested by offscreen objects. The problem was that the
logic checking for an interesection between the offscreen invalidation rectangle
and the onscreen display rectangle was flawed. The fix was to use the return value
from Rect.intersect() to do the right thing and skip drawing.
Issue #7366568 Offscreen invalidates can cause useless work for framework
Change-Id: Ie4e277c695dacee39848a8a223f0c4ee34d9bb4d
* commit '144d405511e9ed685568e50db87b22cc42b6a252':
Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."
- set the Configuration's layout direction in ViewRootImpl instead of PhoneWindow$DecorView
- then remove unecessary API on ListPopupWindow for passing the layout direction
Change-Id: Ia2c6e4aa8cb82aed9b088bc3b8004ea0a1ded1f3
- when adding a View to a ViewGroup reset all RTL properties of the View
to be added instead of only resetting its layout direction
Change-Id: Idfa3acce1700c52e20ebfd4c9c4f4ecb3c1d7520
* commit '8e6145013a6533ca6a33e03c8a5e45ad2de431e4':
This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.
When deferring scroll to a point, it's possible the text changed between
the time the scroll was requested to the time layout happens. In this
case, it attempts to scroll to a point past the end of the text buffer,
which created an infinite loop.
This patch clamps the scroll offset to the length of the text, so it
just scrolls to the end in that case, rather than crashing.
Change-Id: I53740d119d588560f5a4d9fb80e38f7057faab89
Document SyncQueue locking policy and protect in onUserStarting()
and clearAllBackoffs(). Return copy of ServiceInfo list from
RegisteredServicesCache instead of exposing locking externally.
Bug: 7357776, 7352537
Change-Id: I6a32ca98a355b639d4207a88bde572179beae359
- make SeekBar follow layout direction changes
- also fix onSizeChanged() missing call to super class
Change-Id: Ide036e673c5f104b12e7321648ac027547e04065
1. Sometimes unlocking the device when the IME is up and triple tapping on the keyboard
toggles screen magnification. The core reason is that when the kayguard window is
shown we hide all other windows and when it is hidden we show these windows. We did
not notify the screen magnifier for windows being shown and hidden. Also when the
windows are shown we may reassign layers to put the IME or the wallpaper in the
right Z order. The screen magnifier is now notified upon such layer reassignment
since window layers are used when computing the magnified region.
bug:7351531
Change-Id: I0931f4ba6cfa565d8eb1e3c432268ba1818feea6
This change makes WindowManager use the new eAnimation flag when animating
windows. This prevents some of the window updates from being combined with
updates from prior animation frames.
Bug: 7353840
Change-Id: I5a9f8fa2c1a2f5f08363a45cd9f28bb97cd77080
1. We are using the view drawing bounds but did not take into account the transformation
matrix. This leads to showing ugly artifacts on the launcher's hotseat which is
pretty much the first thing we see.
2. Updated the documentation of View.getDrawingRect to be more explicit that the
results does not have the transformation matrix applied.
bug:7354033
Change-Id: Ief2e0ea8da05471d71e215ce4497d94ff6e92d1a
The flickering was caused by trying to scroll to the cursor position
while the view was in an inconsistent state (text updated to change the
number of lines, but layout not done yet). This patch defers the actual
setting of the cursor until layout is done, when layout is pending.
Change-Id: I8ed3a402beb8058ac7a7f3935afeb946a23308ab