• Home
  • History
  • Annotate
  • only in /frameworks/base/core/java/android/view/
History log of /frameworks/base/core/java/android/view/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
0e40462e11d27eb859b829b112cecb8c6f0d7afb 13-May-2015 John Reck <jreck@google.com> Revert "DO NOT MERGE Backport of limited jank-tracking metrics"

This reverts commit 2614bd225f84f7a23e6b30fc6b47bede153e5f4c.

Change-Id: I344b4cbaa0bb0caf50bceb806d1446ee27ea52d8
horeographer.java
rameInfo.java
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
indowManagerGlobal.java
d5a4a1aac980c304d6f46f07f15bfc5c94d8f9d0 19-Feb-2015 John Reck <jreck@google.com> DO NOT MERGE Backport of limited jank-tracking metrics

Bug: 19821830

Cherry-pick of ba6adf66d3c44c0aa2fd8a224862ff1901d64300
Cherry-pick of e70c5754d01f2ab0ff47ea3eabaa88aca5ed2a36

Change-Id: Id342fa0ab345f204bec58acf45ce72f6de950cfb
horeographer.java
rameInfo.java
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
indowManagerGlobal.java
48a5ed5617067b52676c26b9230ce5b75946984b 29-Jan-2015 Svetoslav <svetoslavganov@google.com> AccessibilityNodeInfo refresh returns a stale state. - DO NOT MERGE

AccessibilityNodeInfo refresh was getting the latest cached
state but this is not good enough as an accessibility service
can execute an action on the node and then refresh it to get
the new state.

bug:16954787

Change-Id: I004b4987b8dc423a2ab7031a4fbfe64365ddd7fe
(cherry picked from commit 5738fec00db65e0ee246475a7236e57ba3ee8d55)
ccessibility/AccessibilityNodeInfo.java
27ad2e95b40fd0ca76de384695498ea114d627ca 13-Feb-2015 Svetoslav <svetoslavganov@google.com> Accessibility: Ensure fresh accessilbity focused and input focused nodes.

Change-Id: Ia3c84284843a415cdbbc2b6a9b06d9ddffbe0e04
ccessibility/AccessibilityCache.java
c73cfa0ffba344a83d61e2f4eb9715152a2807b8 10-Feb-2015 Svetoslav <svetoslavganov@google.com> Accessibiltiy: missed update to the previous patch.

Change-Id: I4c47d38f5e137dcc1c6db0561b3824a26572027d
iewGroup.java
iewRootImpl.java
f33fe1f4860d4cbc49633162cf6441d315550cc9 07-Feb-2015 Svet Ganov <svetoslavganov@google.com> Accessibility: Handle a missed case when clicking focused views.

The special logic for clicking on views in accessibility mode should not
prevent event interception and if a view interceptes the gesture we must
clear the special flag and do normal event dispatch. Also once we have a
view handling the touch gesture we do not need the special flag as we
know what will handle the event. This tightly follows standard event
dispatching.

bug:19252492

Change-Id: I0c9764c5050ec73f5f7980f3f0340dd9509a725a
iewGroup.java
iewRootImpl.java
34123f1ce83e39a5a6045b1a90a148cd4c514e7e 06-Feb-2015 Svet Ganov <svetoslavganov@google.com> Merge "Accessibility: ignore children of a view with node provider." into lmp-mr1-dev
55bdb10c168615ee7721c657e0633b3aefbff777 06-Feb-2015 Svet Ganov <svetoslavganov@google.com> Accessibility: ignore children of a view with node provider.

A view that has an accessibility node provider should not have real children
since the provider is responsible to generate the node infos for the subtree
rooted at its hosting view. This is how the APIs are designed to work. However,
it is a common mistake and if this occurs the accessibility services
introspecting the screen get into an infinite loop.

The framework now does not add the real children of a view with a node provider
to the list of accessibility children. If the developer wants them exposed they
have to do that via the provider APIs as per contract.

bug:19297093

Change-Id: I1b01b1e4a85e1c397886fcd2506b434beb063687
iewGroup.java
0a2cceebd5503329f7038847906351af21434048 06-Feb-2015 Svet Ganov <svetoslavganov@google.com> Accessibility: Handle a missed case when clicking focused views.

The clicking logic was missing the case where a child of the accessibility
focused view reacts to the injected down up events for clicking. This
results of a whole class of views being non-interactive. Now if an event
is targeting accessibility focus and the dispatching view group has this
focus, we clear the flag before dispatching to children, so they can
handle the event rather ignoring it becuase they are not accessibility
focused.

bug:19252492

Change-Id: I6ac25bb7a50b35bb638ca4bfb9fc4198d08c2d4d
iew.java
iewGroup.java
f8512ce08174426dfbba96e8108e5a64332f1e71 06-Feb-2015 Alan Viverette <alanv@google.com> Mutate scroll bar drawables

Bug: 19285726
Change-Id: I4bb596433c1fa1cc4e2fa53d0cdae992f9add858
iew.java
c3a043cf0e1c91dcffc2cd596908266ba92a4c28 04-Feb-2015 George Mount <mount@google.com> Fix TODO in javadoc for FEATURE_CONTENT_TRANSITIONS.

Bug 19254085

Change-Id: I22d4c4e3d1d754ab96741eb0e0290d1ecfc05552
indow.java
ded133c446fa9d0d23e6bde19a66fb2ce3980491 31-Jan-2015 Svetoslav <svetoslavganov@google.com> Fix broken activation of the selected view in accessibility mode.

We were using an approximation to determine where to send a pair of down
and up events to click on the view that has accessibility focus. We were
doing reverse computation to figuring out which portion of the view is
not covered by interactive views and get a point in this region. However,
determining whether a view is interactive is not feasible in general since
for example may override onTouchEvent. This results in views not being
activated or which is worse wrong views being activated.

This change swithes to a new approach to activate views in accessibility
mode which is guaranteed to always work except the very rare case of a
view that overrides dispatchTouchEvent (which developers shouldn't be
doing). The new approach is to flag the down and up events pair sent
by the touch explorer as targeting the accessibility focused view. Such
events are dispatched such that views predecessors of the accessibility
focus do not handle them guaranteeing that these events reach the accessibiliy
focused view. Once the accessibiliy focused view gets such an event it clears
the flag and the event is dispatched following the normal event dispatch
semantics.

The new approach is semantically equivalent to requesting the view to perform
a click accessiblitiy action but is more generic as it is not affected by
views not implementing click action support correctly.

bug:18986806
bug:18889611

Change-Id: Id4b7b886c9fd34f7eb11e606636d8e3bab122869
ccessibilityInteractionController.java
otionEvent.java
iew.java
iewGroup.java
iewRootImpl.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/IAccessibilityInteractionConnection.aidl
ccessibility/IAccessibilityInteractionConnectionCallback.aidl
197adec3656fc087d4aa56396e601bb8d04aa9fd 27-Jan-2015 Svetoslav <svetoslavganov@google.com> Merge "Accessibility: Ignore overlapping siblings when computing a click location" into lmp-mr1-dev
c43a82094584d2112aef2ee7bf74e1510a7a0b16 26-Jan-2015 Chris Craik <ccraik@google.com> Invalidate outline on padding update

bug:19113359

Ensures that ViewOutlineProvider#PADDED_BOUNDS is always kept up to
date with the view's padding.

Change-Id: I5e090bd8272e89d6b8b9055dbe95ef3d45333fcb
iew.java
a1ac6a09252a8a615230f08767ab6153bd23a165 24-Jan-2015 Svetoslav <svetoslavganov@google.com> Accessibility: Ignore overlapping siblings when computing a click location

To click a view we were computing a click location by ignoring overlapping
views that are actionable. However, detection whether a view is actionable
is not always possible as the view may handle touch events directly. This
leads to unhandled edge cases. We are taking a conservative approach and
ignore all overlapping siblings regardless if clickable. This is also has
limitations but hopefully less frequent edge cases.

bug:18889611

Change-Id: Icea0b7b3e2d4ed53e50e01cb6a99b880be560b14
iew.java
iewGroup.java
41fceb462b6eefbaa3a4d4e56b962fdb2910a6f5 23-Jan-2015 Svetoslav <svetoslavganov@google.com> Accessibilty: Cannot click on views in a scrollable container covered by the toolbar.

In accessibility mode we calculate a point where to click in the accessibility
focused view as a bridge-gap solution before switching to accessibility click
actions. We cannot detect whether a view is covered by another one that consumes
all touch events, and therefore we may click on the wrong target. This was the
case with the toolbar. As a result a partially scrolled view in a scrollable
container covered by a toolbar cannot be activated and this is not an edge case.

bug:18986806

Change-Id: Ib41470c39806cec13e9b00b319879cd7f3412ab5
iewGroup.java
9320e9f0a6af9269bc145ec7ab3d4b351f0614af 13-Jan-2015 Bryce Lee <brycelee@google.com> Merge "Update javadoc for DEFAULT_FEATURES deprecation." into lmp-mr1-dev
69c22e82e9c3e95f4689a57320de3199ffd29262 13-Jan-2015 Adam Powell <adamp@google.com> Merge "Add API for nested pre-processing of a11y events; fix ResolverDrawerLayout" into lmp-mr1-dev
aa1008cba4b97a269f65f86534d994347b6cdeff 13-Jan-2015 Bryce Lee <brycelee@google.com> Update javadoc for DEFAULT_FEATURES deprecation.

Bug: 18983343
Change-Id: I10936e292edf9146e7acca231632fb704054215c
indow.java
71922de6c8e407ff24bb1a500cb53bb1a647c758 13-Jan-2015 Alan Viverette <alanv@google.com> Update docs for Window.setElevation(), apply changes immediately

BUG: 18983689
Change-Id: I471104092d6296dc0ba2689da96783be088fbce8
indow.java
74bf065e43a3075ffcaf9fcdc1ef423a1e14b761 12-Jan-2015 Wale Ogunwale <ogunwale@google.com> Don't allow windows with invalid types to be added.

Bug: 18950225
Change-Id: Ia7ead72d036c7628e0a97f8fe9fef2a35525e4df
iewRootImpl.java
indowManagerGlobal.java
b6ab098bad4b126eaaaa3aaa5a512fefc4e0749b 08-Jan-2015 Adam Powell <adamp@google.com> Add API for nested pre-processing of a11y events; fix ResolverDrawerLayout

Add API for handling nested pre-processing of accessibility events
similar to nested pre-scroll or pre-fling. This allows custom views to
delegate a nested scroll to a parent via the accessibility system.

Use this functionality to allow opening the ResolverDrawerLayout via
accessibility commands.

Bug 18827274

Change-Id: Icd5a502605b78a861bb03e7b11923841a72eb9ab
iew.java
iewGroup.java
iewParent.java
iewRootImpl.java
8c6b59f46da3e65ce157fe40a08f1c1fbba3e1c2 05-Jan-2015 Filip Gruszczynski <gruszczy@google.com> Merge "Add system api for disabling touch events in wallpaper behind the window." into lmp-mr1-dev
b15703c9b4bd77383344a06c0043f5f7448b24ae 05-Jan-2015 Alan Viverette <alanv@google.com> Avoid double-translating View background

Reverse-translate the canvas before passing to Drawable.draw() so that
we don't double-apply the drawable's translation.

BUG: 18904688
Change-Id: I8450de9b240ddeae887b4e1003c0608da814a001
iew.java
fe568359340e58492e2ca1ebdab0f234b91e328a 05-Jan-2015 Filip Gruszczynski <gruszczy@google.com> Add system api for disabling touch events in wallpaper behind the window.

Bug: 18721756
Change-Id: I40b749a9916536d52042e5dd49a23575bedad754
indow.java
e5ea48a7fe295a2815bab57f2e870901ce48b312 29-Dec-2014 Svetoslav <svetoslavganov@google.com> Fix a race in accessibility manager.

The accessibility manager has APIs for clients to observe changes
in accessibility, touch exploration, and high contrast states. The
notification of the listeners has to be done with no lock held but
in an attempt to do that the code was incorrectly iterating over
the copy on write collection.

bug:18840784

Change-Id: I6803ff1657fbf6b0cc7936671d5bbdebb5cbf6bb
ccessibility/AccessibilityManager.java
257ffbda601d287a0f5d54160a0b30be1b2ebe5e 19-Dec-2014 Svet Ganov <svetoslavganov@google.com> Remove a bad heuristic when determining click location for accessibility.

As a bride-gap solution to click on partially covered views in accessibility
mode we compute a point on the screen where to send a down/up event pair.
A heuristic we used was that if the action target is covered by a view that
that has a touch listener we consider the target obscured by the one with
the listener. However, this generates false positives, for example the target
is covered by a view that observers touches for scrolling but not clicking.

bug:18782023

Change-Id: I31ff34011d45667f1eddda47373ec00e4a23dbf6
iew.java
9973643bfc123fcc73803542ef8cb74e243907ce 15-Dec-2014 Alan Viverette <alanv@google.com> Merge "Give accessibility delegate the first pass at handling ACTION_CLICK" into lmp-mr1-dev
cd305ae3ceef14dd5de807d75aa6167dfcd69c86 12-Dec-2014 Alan Viverette <alanv@google.com> Give accessibility delegate the first pass at handling ACTION_CLICK

Delegation is broken for widgets, but this fixes the most egregious issue
where TextViews that are top-level list items weren't handling CLICK
actions correctly. This will still need work, since now the focus action
won't run, but it's an improvement.

BUG: 18736135
Change-Id: I808ef628198946cc87f13c53d6245cd162a1e517
iew.java
7486bc1f5a8156e9b586ebb9c32ced218e668652 12-Dec-2014 Svet Ganov <svetoslavganov@google.com> Merge "Fix an edge case in computing click location in accessibility mode." into lmp-mr1-dev
9fc96c5371c1ce62db40aee9b93482504b79769b 12-Dec-2014 Svet Ganov <svetoslavganov@google.com> Fix an edge case in computing click location in accessibility mode.

In accessibility mode to click a view we computed a point where to send
down and up touch events. The logic that computes where to send the
events was not clipping the bounds of the child to these of the parent.
As a result we wrongly computed we can send the events in a location
of the child that is outside of its parent, thus the click having no
effect or clicking the wrong thing.

bug:18672945

Change-Id: If9c452e7e5b196f699db33d37dbc6775d5d1622a
iewGroup.java
35da41e6c35e1c6af3afe29d6ec41609ab07ca33 11-Dec-2014 Adam Powell <adamp@google.com> Have ViewGroups without a parent clip child visible rects to bounds

getChildVisibleRect was enhanced to obey the official contracts for
clipping children and clip to padding. Unfortunately this meant that
ViewGroups with no parent have no way of checking if they will be
clipped to their own bounds and therefore should clip a child rect.

Treat orphaned view subtrees as entities that clip to the root view
bounds to preserve prior CTS guarantees.

Bug 18642973

Change-Id: I9fcbeb0e92cd6715cd9184183d36889614ed0bed
iewGroup.java
4f1942d999c60fd91cb826651b6d978d47a74321 10-Dec-2014 John Reck <jreck@google.com> Merge "Teach AssetAtlas about more drawables" into lmp-mr1-dev
dad7d84c04c5954b63ea8bb58c52b2291f44b4df 09-Dec-2014 John Reck <jreck@google.com> Teach AssetAtlas about more drawables

Bug: 18317479

Change-Id: I16868ee204d24af72af9a2efc987f7e9eb1d266b
hreadedRenderer.java
c47c98be04d602f331e0ea9704d2c11f8c53852d 09-Dec-2014 John Reck <jreck@google.com> Fix issue with RNA destruction mid-animation

Bug: 18521508

Fix an issue where an RNA's native object was destroyed
before the java-side object was started

Change-Id: I487fb476e0ecdf7000515f4f7320e8cfbc50a52b
enderNodeAnimator.java
381a423634a293d53f972a0ce4abd7fe7cf7d703 08-Dec-2014 Svet Ganov <svetoslavganov@google.com> Merge "When accessibility on cannot click on a view covered by a HorizontalScrollView" into lmp-mr1-dev
e232d4a6aadbd32cb80ffd0da9a5d164910b1b79 08-Dec-2014 Svet Ganov <svetoslavganov@google.com> Merge "Clear clicked nodes from the accessibiliy cache." into lmp-mr1-dev
b942b6f15c51c2ff48c59d8f620ee6156d00f67e 08-Dec-2014 Alan Viverette <alanv@google.com> Fix hotspot coordinate propagation in ViewGroup and AbsListView

There was a weird disconnect between setPressed() and hotspot propagation
behavior. This makes hotspot propagation work like setPressed(). Also
fixes ripple animation during drag-to-open.

BUG: 18631557
BUG: 18593243
Change-Id: Id4adf5d815e4d426b4182aac4d0c780f04472ae4
iew.java
iewGroup.java
0322100598e3afae207bb98202b9ce53604bdb28 06-Dec-2014 Svet Ganov <svetoslavganov@google.com> Clear clicked nodes from the accessibiliy cache.

Nodes that are clicked can change state as a result of a click,
e.g. a check box. The accessibility service may decide to get the
source node from the click event to probe its state and get a
cached state since the window content changed event is after the
click one. Therefore, we have to clear the state of the click
event's source from the cache to ensure the client can query the
latest state of that source.

bug:18625975

Change-Id: I9e339c2fdcf74f260bb8ad86b9b873f7ddd75f19
ccessibility/AccessibilityCache.java
b3fa2787eabd2be6d7780e215db0d9a5904ba47c 05-Dec-2014 Svet Ganov <svetoslavganov@google.com> When accessibility on cannot click on a view covered by a HorizontalScrollView

In accessibility mode we send down and up events activate a view. We will later
switch to accessibility actions but for now as a bridge-gap we compute a point on
the screen where to click for activating the view. The heuristic we use has edge
cases such as a view that handles all touch events but does not have any listeners.
In this case we do not ignore the target view's area covered by a view that handles
all touch events. As a result we click on the wrong target. While we cannot solve
this generically, in the case of standard components such as HorizontalScrollView
we can.

bug:18612258

Change-Id: If8482aac0d0ea53c5c90367d099d1b8d3a4559ed
iew.java
iewGroup.java
26af8c197c17487ac0400a7a3310037e57eda2a0 05-Dec-2014 Filip Gruszczynski <gruszczy@google.com> am 26b18771: Merge "Private Window flag to disable touch events in WallpaperService." into lmp-sprout-dev

* commit '26b187711fdf6224e14df465a58f30f510011b49':
Private Window flag to disable touch events in WallpaperService.
3a0d878ab56475276c61d574af7651820a5cea5a 04-Dec-2014 Svetoslav <svetoslavganov@google.com> Ensure all events from a showing window are dispatched.

Accessibility services may opt-in to introspect the interactive
windows on the screen. If window introspection is enabled there
is a case where some events from a showing window are received
before the updated window state from the window manager. Now the
window manager sends over the windows before notifying the app
for the focus change.

bug:18625996

Change-Id: Ic481e01efbe12dc92f090f799feeb236672fc7b3
indow.java
b8c0694ae883b0e14beab97c947a7c121c64dda6 05-Dec-2014 Filip Gruszczynski <gruszczy@google.com> Private Window flag to disable touch events in WallpaperService.

Change-Id: I18b46340f89cbea0b6daeb1efe9c31656f4e1a5d
indowManager.java
4d9da135caf8d4f38bb728343c1aabbf45f81d5b 04-Dec-2014 Derek Sollenberger <djsollen@google.com> Merge "Update AndroidPixelRef to prevent VM from cleaning up memory prematurely." into lmp-mr1-dev
01a5ea35fbba4c5bb1d7790ae1677a2fa752e042 03-Dec-2014 John Reck <jreck@google.com> Resume RT-animations after a pauseSurface

Bug: 18203577

The issue occurs as a result of performTraversals() both doing
a window relayout call *and* early-returning because it's not dirty.

To fix this pauseSurface() returns whether or not the RT-side is
"dirty" to force ViewRootImpl to do a draw even if mDirty is
otherwise empty.

Change-Id: I534f367e75d18d273ebf14df3927f5c464ef6bef
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
f29d5a5b211786248d0557157c304c5fff428bd4 03-Dec-2014 Derek Sollenberger <djsollen@google.com> Update AndroidPixelRef to prevent VM from cleaning up memory prematurely.

bug:18306529
Change-Id: I1ea94df1dcaf4fcf248b63dc8b0a13f36412570a
LES20Canvas.java
81defc6a840367dcf9591d14b827f2d8d756ef00 02-Dec-2014 Chris Craik <ccraik@google.com> Merge "Sync ViewOverlay size init with RenderNode" into lmp-mr1-dev
2180ba7abd7edbd5b3a880d15f828b58ab34e578 02-Dec-2014 Chris Craik <ccraik@google.com> Sync ViewOverlay size init with RenderNode

bug:18381202

Setting mRight/mBottom must be accompanied by updating the RenderNode.

Change-Id: I4dae06a5ca43247b0b3642d85808e2724e486692
iewOverlay.java
e6bd61d5bbea012b6b80c8bff915042f615630bc 01-Dec-2014 Alan Viverette <alanv@google.com> Merge "Fix visible rect computation for views with padding" into lmp-mr1-dev
ab2cf6dafe1dbc9e7533562f146087901e79f389 26-Nov-2014 Alan Viverette <alanv@google.com> Fix visible rect computation for views with padding

Previously, the computation was double-counting the left and top padding
because it was treating the third and fourth Rect.intersect() arguments
as width and height rather than right and bottom.

BUG: 18418091
Change-Id: I2ab669ee5060372ae11cfe804dcc05c7426be1ec
iewGroup.java
361ca21acc0831a9f8bbb259bb30218c252a2aa0 20-Nov-2014 Wale Ogunwale <ogunwale@google.com> Added unique id to display devices and their settings.

The display setting saved to disk were using a localized name for
the key. This is an issue if the user changes languages after the
display settings have been saved. We now use the non-localized
name for the display to access the settings if it is available,
else we fall back on the localized name.

Bug: 18190800
Change-Id: I837c06a8935df10727229a1aa2bb6eeb3953707f
isplayInfo.java
2b36a86b8ee4e8c0952494dd17b5e96ded22f2ee 14-Nov-2014 John Reck <jreck@google.com> Wire up surface width/height to lockHardwareCanvas DO NOT MERGE

Bug: 18338026
Change-Id: I6c37774ef1312278ae81280561060662fef923fb
(cherry picked from commit b35c9602cf5c628c621e4fe102a461505f302bfe)
urface.java
418c8549dca8bff8c38c67ed7f7d7fbbaccd4e71 22-Nov-2014 John Reck <jreck@google.com> Merge "It's super critical to call nStart" into lmp-mr1-dev
72d6e4facb1abd81809fdaddbe42f41ad885189c 21-Nov-2014 John Reck <jreck@google.com> It's super critical to call nStart

Bug: 18204974

Even if we are canceling or ending an animation
nStart() *must* be called, otherwise the native-side listener
is not attached (lazy-attached for JNI cyclic reference reasons),
and then Animator::callOnFinishedListener() no-ops as there's
no listener set

Add a lifecycle verifier to ensure that nStart is always
called on animators that are attached and get finished

Change-Id: Ibc345b5be97b6d3f95a11c361ebe020d030fd3b6
enderNodeAnimator.java
29dc496a42d49a37dcd99c0465f3cec18a47e6ff 21-Nov-2014 Chris Craik <ccraik@google.com> Merge "Revert "Add a way to override Xfermode DO NOT MERGE"" into lmp-mr1-dev
69e65019b0a6204f0ed9487d8fd7b3564eba6df8 21-Nov-2014 Chris Craik <ccraik@google.com> Revert "Add a way to override Xfermode DO NOT MERGE"

Feature no longer needed.

bug:18448377

This reverts commit 4678dcc5524258908eadc5fe1e5e1874768967eb.

Change-Id: Ib0a19946e966a54857165555827b5fa7b34b6bea
LES20Canvas.java
d45cedd6f5efd141be08ce4ffcecf478fbedb056 21-Nov-2014 Bryce Lee <brycelee@google.com> Merge "Make default windows features configurable." into lmp-mr1-dev
d6e6e7235a7e5c82d64beada54ac89c2b1dec201 21-Nov-2014 Bryce Lee <brycelee@google.com> Make default windows features configurable.

Bug: 18434078
Change-Id: I0bafce1a201088a8681f4b9e43237e23b49296a2
indow.java
a83c5806ded083f51549ba4bf70e0c1f6a17fc61 21-Nov-2014 Filip Gruszczynski <gruszczy@google.com> Merge "SwipeDismissLayout makes activity opaque only after entry animation ends." into lmp-sprout-dev
automerge: 96c5d37

* commit '96c5d37fb5139465cdd3d882b5deba830497557a':
SwipeDismissLayout makes activity opaque only after entry animation ends.
83fb64e8ec4c6bc0930f50b24bd1c36a81f6a1c2 21-Nov-2014 John Reck <jreck@google.com> Merge "If the surface is lost, release it" into lmp-mr1-dev
0b2dac3452a58e76be7379b85e7505c531842b57 21-Nov-2014 John Reck <jreck@google.com> Merge "Rename callDrawGLFunction" into lmp-mr1-dev
680df8d60e3445bd14df902796079d730c283c46 20-Nov-2014 John Reck <jreck@google.com> Rename callDrawGLFunction

Bug: 18471503
Change-Id: I00cb356ff2338da7fd07b9ba30b5b3dcbdffdb2e
LES20Canvas.java
ardwareCanvas.java
8ccf071ab83510c8ef7b4d311d894d5c4a352f6c 20-Nov-2014 Alan Viverette <alanv@google.com> Merge "Move default token handling into WindowManagerImpl" into lmp-mr1-dev
3b2ba44be3699a4e133d7a09cb4ed182405d7ff9 20-Nov-2014 Chris Craik <ccraik@google.com> Merge "Improve logging around performance critical events" into lmp-mr1-dev
b13de07f0b26953115f4315bc7417ca87c70594b 20-Nov-2014 John Reck <jreck@google.com> If the surface is lost, release it

Bug: 18403246

Surface#isValid() is used throughout ViewRootImpl to
determine Surface validity. However, this will return true
until Surface#release() is called, even if the underlying
BufferQueue is abandoned. We have a very strong signal
from EGL that the Surface is now dead, so use that signal
to call Surface#release() so ViewRootImpl's isValid() usage
will be valid.

Change-Id: Ib355560ef4ca7625c3c784174863d2d55267d93d
hreadedRenderer.java
iewRootImpl.java
70850ea258cbf91477efa57a1f1a23cc0044cc93 18-Nov-2014 Chris Craik <ccraik@google.com> Improve logging around performance critical events

bug:17702227

Add details useful to developers (such as layer size/View name), and
switch away from logging implementation names/details, since they
are generally not relevant to developers.

Change-Id: Iee605d182f241450f7e75a6d0c283d51fa1312f5
hreadedRenderer.java
iew.java
7c9746d4ef8ab3c500b501ab32933c5172a856ab 20-Nov-2014 Alan Viverette <alanv@google.com> Move default token handling into WindowManagerImpl

BUG: 18451795
Change-Id: I1fc6db988ad879fded5318f33d08a4f09da38907
indowManagerGlobal.java
indowManagerImpl.java
85603a7faf0a8067803ae6424bc590f6e2a17e07 20-Nov-2014 Chet Haase <chet@google.com> Merge "Fix seeking and scaled duration behavior" into lmp-mr1-dev
0d1c27a713cb49de8f6f4fd0a129baa883153921 03-Nov-2014 Chet Haase <chet@google.com> Fix seeking and scaled duration behavior

The animation scaled was not being factored in early enough in the
activity lifecycle. Also, setCurrentPlaytTime() was not accounting for
the scaled duration correctly. Finally, added setCurrentFraction() as
a more general-purpose seeking facility.

Issue #18222006 Animator duration scale ignored in some situations
Issue #17951668 add ability to seek fraction, not just time

Change-Id: Idad401f5ff5026d7046c36eee09d78a4793215dc
indowManagerGlobal.java
6eafa902cbc15fa35f8f0dfb5e559673fa67f637 14-Nov-2014 Filip Gruszczynski <gruszczy@google.com> SwipeDismissLayout makes activity opaque only after entry animation ends.

Bug: 18340863
Change-Id: Ic60fa2463618f86b1ae23fc4a0c06cd348f28334
iewTreeObserver.java
0455174d347bf451e830584bc3f6f35c3c560282 19-Nov-2014 Chris Craik <ccraik@google.com> Merge "Update clipToPadding docs" into lmp-mr1-dev
37cdc191e380cca8edcc58f116b9b319bea1c140 18-Nov-2014 John Reck <jreck@google.com> Merge "Don't invalidate() on setClipBounds" into lmp-mr1-dev
9029e5ecd09759cf566f34429a57b69af70c335f 18-Nov-2014 John Reck <jreck@google.com> Don't invalidate() on setClipBounds

Bug: 17510133

This is a RenderNode property now, so use
the faster invalidateViewProperty() shortcut
since a re-record isn't necessary

Change-Id: If3999bce9a1fb9b60e42f0ee624bb554361f96ac
iew.java
c99d3c99f86be8cace507379c0d4f4b7a26fd1e1 17-Nov-2014 John Reck <jreck@google.com> Fix invalidateOutline

Bug: 18175261

invalidateOutline was switched to a lazy-method, but this doesn't
work because invalidateViewProperty intentionally does not
do a traversal, therefore the invalidate was never consumed.

However it was attempting to be lazy about work that is cheap to
do, so nuke the lazy aspect and restore invalidateOutline's previous,
correct behavior. rebuildOutline is kept to avoid triggering
traversals in places they are not needed

Change-Id: I70f8cbacd54a607c0bf0bc7fe6eea78554cb2ea3
iew.java
b3ec64e1005c82d41b6d1a1d86b6933fd25d87d2 17-Nov-2014 John Reck <jreck@google.com> Merge "Wire up surface width/height to lockHardwareCanvas" into lmp-mr1-dev
b165296a9c6e998541ea18c72ffb2de7ba03d596 15-Nov-2014 Chris Craik <ccraik@google.com> Update clipToPadding docs

Clarify that it doesn't clip anything but children,
and only if padding is non-zero.

Change-Id: I3e3ae31f52fc22304eb13d88765f9f4fc6e43e66
iewGroup.java
8f5839be21f028885b6171e75cba479a020a3a0c 14-Nov-2014 John Reck <jreck@google.com> Merge "Document that circular reveal is async" into lmp-mr1-dev
a3b35907de9a8cd5e9f8fdf1700974f9c39a3df6 14-Nov-2014 John Reck <jreck@google.com> Document that circular reveal is async

Bug: 18058966
Change-Id: I64b35441f12bec433f633580319ec73c1e11e7a2
iewAnimationUtils.java
505ffe3633f45778e493e23ad8c163f09ed1dbb5 14-Nov-2014 Raph Levien <raph@google.com> Merge "Check bounds on CharSequence drawText methods" into lmp-mr1-dev
0224d25db2f897ddfc29a722ad91d67dcf2500a9 14-Nov-2014 Alan Viverette <alanv@google.com> Merge "Account for window bounds in accessibility view click point computation" into lmp-mr1-dev
b35c9602cf5c628c621e4fe102a461505f302bfe 14-Nov-2014 John Reck <jreck@google.com> Wire up surface width/height to lockHardwareCanvas

Bug: 18338026
Change-Id: I6c37774ef1312278ae81280561060662fef923fb
urface.java
28d3c245a1dde4aa5294192bec9980d8a93b0489 13-Nov-2014 Wale Ogunwale <ogunwale@google.com> Merge "Cancel or drop key events if activity is stopped." into lmp-mr1-dev
87bc2acfd3e874ff94fd3da948c329d2547a2bfc 13-Nov-2014 Adam Powell <adamp@google.com> Merge "Optimize setting padding and backgrounds for views" into lmp-mr1-dev
fa781f8c2cdbd176d8ab8c9c82fcd6496e73e3be 13-Nov-2014 George Mount <mount@google.com> Merge "Update GhostView properly when underlying view changes." into lmp-mr1-dev
d82f8a9a3869448e6d7d4b3fc962e34e33a1ba0e 13-Nov-2014 Raph Levien <raph@google.com> Check bounds on CharSequence drawText methods

The canvas drawText() methods on CharSequence arguments didn't check
whether the start and end offsets were within bounds, which triggered
native crashes. This patch checks the bounds and throws
IndexOutOfBoundsException when invalid.

Bug: 18282500
Change-Id: I1935bf21f828b960c817b40ebce6affd4ce8bb99
LES20Canvas.java
4acd0ecc7b2351cadafc02986f8165f811e00cb1 12-Nov-2014 Alan Viverette <alanv@google.com> Account for window bounds in accessibility view click point computation

BUG: 18177402
Change-Id: If591d1b9e5a8a7c4cade3ef4f3ec5e42d623b53c
iew.java
70cb4f3e7131cda1e58c1f6d422e296c4935289d 12-Nov-2014 George Mount <mount@google.com> Merge "Fix getChildVisibleRect to clip correctly." into lmp-mr1-dev
41a8043b30a289bdba55a2469e598b3fe67c3bf1 12-Nov-2014 Rob Tsuk <robtsuk@google.com> Merge "Add a way to override Xfermode DO NOT MERGE" into lmp-mr1-dev
4678dcc5524258908eadc5fe1e5e1874768967eb 12-Nov-2014 Rob Tsuk <robtsuk@google.com> Add a way to override Xfermode DO NOT MERGE

Add a non-public API to Canvas/GLES20Canvas to provide a way to draw
the touch ripple animation without using a save layer.

Change-Id: I6e2095adffe515194f669fb75bb67abf813bd518
LES20Canvas.java
05f35127e322552b04633f38d45b6a6f6ca78f66 11-Nov-2014 Adam Powell <adamp@google.com> Optimize setting padding and backgrounds for views

Don't reset the entire chain of child views whenever we set our own
padding or background; clear our own bidi resolution bits only. This
prevents doing a lot of extra recursive work when changing properties
of a parent view that cannot affect children.

Bug 18159214

Change-Id: I94300402785c79c3199e768ad7b6d7027d8d5d5f
iew.java
iewGroup.java
c3672cd3f7e2bd87d6de9dada499de82b62fae84 06-Nov-2014 Wale Ogunwale <ogunwale@google.com> Cancel or drop key events if activity is stopped.

After an activity instance state is saved due to onStop()/onPause(),
there is a small window where it can still get key events like the
back button since we still allow the ActivityThread to handle
pending messages (like memory trim request) before informing the
activity manager that we are done. If the activity is stopped,
we will now drop non-terminal input events and set the cancel
flag on terminal events.

Bug: 18151331
Change-Id: I370d7c871530eea4b16fa42428d0248f1a87abb6
nputEvent.java
eyEvent.java
otionEvent.java
iewRootImpl.java
3ae0d3157d5fdeee851f3e72b80f4ed57add0ff8 07-Nov-2014 Wale Ogunwale <ogunwale@google.com> Fixed constant window switching on lock screen with Swype KB.

We allow TYPE_INPUT_METHOD windows to show on the lock screen.
These windows can attached other types of windows (For this
case the Swype KB was attaching a PopupWinow which will be
of TYPE_APPLICATION). This causes the popup window app token
to be added to the list of apps to be hidden on the lock
screen, thereby preventing the lock screen from been hidden,
which then causes a layout cycle(s). Now, we remove app
tokens for non-app windows from the hidden list in case it
was added by any attached widow they migth have.

Also, when we are updating window animations, set the
hideWhenLocked flag for windows that are IME tragets so
they don't go through unneeded cycles of having their
visibility policy set to hide/show/hide/show/...

Bug: 18021493
Change-Id: I3680256d41793f62def42fda00e26db1dcc990cc
indowManagerPolicy.java
002d43d29b84e8a4e55c995a350783e80132d61a 11-Nov-2014 George Mount <mount@google.com> Fix getChildVisibleRect to clip correctly.

Bug 18292516

getClipVisibleRect now takes into account clipChildren,
clipBounds, and clipToPadding.

Change-Id: I181cd68354e70767868e9edd56bf82a58357391d
iewGroup.java
264d3a21a02cdf56857689d822396e3079e63f38 11-Nov-2014 George Mount <mount@google.com> Update GhostView properly when underlying view changes.

Bug 18308803

Change-Id: Iad1366ea8fe3ba488dfb82ff1f9e170cafb4b2ec
iew.java
12403b242f86c0572a99a963fd1e71eda680192b 11-Nov-2014 George Mount <mount@google.com> Merge "Make setOutlineProvider change transitionGroup." into lmp-mr1-dev
37d7a68de7e353c31a3a4736054cd86f0e002eaf 06-Nov-2014 Adrian Roos <roosa@google.com> Fix inset hinting when adding window

Windows with FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS were
getting an incorrect content inset hint, because the
hinting didn't see the adjusted systemUiVisibility.

Also adds hinting for the stable insets.

Bug: 17508238
Change-Id: If9647277feb6811b15665b801accd896c51dbd12
WindowSession.aidl
urfaceView.java
iewRootImpl.java
indowManagerPolicy.java
ca93f69c96df85bd6bc72a2a47dae6c0d5336ab2 07-Nov-2014 John Reck <jreck@google.com> Merge "Have an actual fallback if the surface is lost" into lmp-mr1-dev
050a8a050de04bd0098cde8fdf665a7202929ee0 07-Nov-2014 John Reck <jreck@google.com> DO NOT MERGE Fix finalizer ordering/double-free issue

Bug: 18289984

If Surface:finalize() happens after HwuiContext:finalize()
it would try to manipulate a destroyed object. However, as
Surface:finalize() always calls HwuiContext:destroy() this
can be fixed by simply getting rid of HwuiContext's finalizer

Change-Id: I7c912214417ab32891b1c58d045c9721e5f01965
(cherry picked from commit c298f9c9170b9e8721cfb616f784ec22734f22f4)
urface.java
ea4e76f68a60a02e175755d22e88894f11282850 07-Nov-2014 John Reck <jreck@google.com> Merge "Fix finalizer ordering/double-free issue" into lmp-mr1-dev
aa95a88327d9a3ac8a4a00b065b78ac0f28b3a19 07-Nov-2014 John Reck <jreck@google.com> Have an actual fallback if the surface is lost

Bug: 17516789

This will force a relayout/reinitialize pass if the Surface
is lost mid-render instead of crashing on the next frame

Change-Id: If08bfa16f740728fa7c05904fa11e26f07b81e2e
hreadedRenderer.java
4b19b7aaff1d1ff972ebe68101c2107454bbe5de 07-Nov-2014 John Reck <jreck@google.com> Merge "Fix wrong-thread issue" into lmp-mr1-dev
c298f9c9170b9e8721cfb616f784ec22734f22f4 07-Nov-2014 John Reck <jreck@google.com> Fix finalizer ordering/double-free issue

Bug: 18289984

If Surface:finalize() happens after HwuiContext:finalize()
it would try to manipulate a destroyed object. However, as
Surface:finalize() always calls HwuiContext:destroy() this
can be fixed by simply getting rid of HwuiContext's finalizer

Change-Id: I7c912214417ab32891b1c58d045c9721e5f01965
urface.java
12f5e3433226f0a2886a98b0b8da8d5e947c5cde 07-Nov-2014 John Reck <jreck@google.com> Fix wrong-thread issue

Bug: 18259560

Change-Id: Ic63a86efba9c86f21defac0695a73db8b09ae284
LES20Canvas.java
ardwareLayer.java
3ed9f2f903a8e6c38ca9f2ce3819ac063281a020 07-Nov-2014 Winson Chung <winsonc@google.com> Merge "Adding bounce animation for affiliated tasks. (Bug 16656169)" into lmp-mr1-dev
044d52934e57a337665f707aa4be1d423ee3fb29 06-Nov-2014 Winson Chung <winsonc@google.com> Adding bounce animation for affiliated tasks. (Bug 16656169)

Change-Id: I39e4a57c4e6b707d15513dacde2d40c23bb05058
WindowManager.aidl
2d42f484494e4183c42114ce5918fc4592a33fb6 06-Nov-2014 Justin Koh <justinkoh@google.com> am b8038d58: Merge "Hide Surface#lockHardwareCanvas DO NOT MERGE" into lmp-sprout-dev

* commit 'b8038d58da04456e9e7b6e264af69226bf21592c':
Hide Surface#lockHardwareCanvas DO NOT MERGE
427c64140d1c6e031a128323d14b4b30952e1564 06-Nov-2014 George Mount <mount@google.com> Make setOutlineProvider change transitionGroup.

Bug 18203878

Change-Id: Ia343477b8b37566e0fd8fd1a275b56e805bb18dc
iewGroup.java
9342b049b9a605b1904e03f904ec3cbf90f7742d 05-Nov-2014 Alan Viverette <alanv@google.com> Merge "Use default token instead of wrapped window manager" into lmp-mr1-dev
a446195b0d22659ff402e3b6ac76b1b876e5fe3b 05-Nov-2014 Alan Viverette <alanv@google.com> Merge "Fix hasSurfaceInsets check when creating hardware renderer" into lmp-mr1-dev
9c95264e847b02b688e12a3dd75b1e54502b3246 05-Nov-2014 Alan Viverette <alanv@google.com> Merge "Abort accessibility node prefetch if parent node is null" into lmp-mr1-dev
d2fa5143910c74fd126359f74b08de84b0f7cf2a 05-Nov-2014 Alan Viverette <alanv@google.com> Use default token instead of wrapped window manager

BUG: 18248602
Change-Id: Id7f06c896dc71db3564fa21d3704222557613035
indowManagerGlobal.java
2cd23e6b9d8fcdf5dfd052fb2ed0cd80f1d278ba 05-Nov-2014 Alan Viverette <alanv@google.com> Fix hasSurfaceInsets check when creating hardware renderer

BUG: 17729606
Change-Id: I8c7092428b790e0ff3bbf84b64ba385ef2b2f521
iewRootImpl.java
84feea1185b8f438f9c7153b9e59bb7361b0a17d 05-Nov-2014 Alan Viverette <alanv@google.com> Abort accessibility node prefetch if parent node is null

BUG: 18004444
Change-Id: I80757daeb6b381947c4f3abbd762711cff2a978c
ccessibilityInteractionController.java
93cad8c4d41f2256d0bfaa455686acf8442d97ff 04-Nov-2014 Alan Viverette <alanv@google.com> Pass surface insets from window attributes rather than params

Params only gets set in certain situations, whereas the actual window
attributes always contain the correct surface insets.

BUG: 18214798
Change-Id: Ib5236ccf3f120b26c5abc8671bf29cb3dc269186
iewRootImpl.java
7c1ad0cac642dc9a2e84499d7503b7804e0552fe 04-Nov-2014 Justin Koh <justinkoh@google.com> Hide Surface#lockHardwareCanvas DO NOT MERGE

Hide this for now, will be public in a later release.

Change-Id: Ie13438ed10918df8b044103ef04016494aed1d10
urface.java
1787b4ea436f361e16c289755fa1a35c6e1c8845 03-Nov-2014 John Reck <jreck@google.com> Merge "Fix cancel crash" into lmp-mr1-dev
55b46eff394e23cde692e8acdfd7b42676a3f198 03-Nov-2014 John Reck <jreck@google.com> Fix cancel crash

Bug: 18059003
Change-Id: I579468fbd1645049f8fbe335faf4da1f2d3bb0a3
enderNodeAnimator.java
808fe6f99fba753e0ec4c5e90de0ff7a2140e8a6 03-Nov-2014 Adrian Roos <roosa@google.com> Merge "Fix colored status bar panning issues" into lmp-mr1-dev
b1ecf0d776a2dce5d60802f83fb97c893ba42bf1 31-Oct-2014 Svetoslav <svetoslavganov@google.com> Merge "Adding APIs to enable apps to influence accessibility traversal." into lmp-mr1-dev
6c70290ff0b20329c8f173d5c3423eb83ddc46f1 10-Oct-2014 Svetoslav <svetoslavganov@google.com> Adding APIs to enable apps to influence accessibility traversal.

Accessibility focus is a token that can be put on any view and is
entirely controlled by accessibility services which decide whether
to put accessibility focus on a given view and what the traversal
strategy is.

Currently accessibility service use the view tree structure for
traversal which does not always reflect the logical order and the
user experience is sub-optimal. In such cases apps should be able
to influence how they are traversed for accessibility.

This change adds the notion of an accessibilty traversal order.
If a view has next in the traversal, an accessibility service has
to traverse the content of this view before traversing the content
next one.

This change will enable accessibility service to move away from
using the view tree and use spatial location of the content while
app developers can also influence the treversal order.

bug:17319923

Change-Id: Ib67ae4577f30b2c96575c71538dc1afdea08bfd3
iew.java
ccessibility/AccessibilityNodeInfo.java
685a8770c018d02080d29f18fcb9e50a182912aa 30-Oct-2014 Alan Viverette <alanv@google.com> Merge "Fix inset check in ThreadedRenderer" into lmp-mr1-dev
159da3dba8811017c683fcee26c795be1948b0c4 30-Oct-2014 Craig Mautner <cmautner@google.com> Merge "Add enter-animation-done callback for system windows" into lmp-mr1-dev
9c79504225f60c72c947220b6aca928f11279e1c 29-Oct-2014 Craig Mautner <cmautner@google.com> Add enter-animation-done callback for system windows

Existing hidden methods allow activities to be notified when their
windows have completed animating in. This change adds that capability
to system windows using a ViewTreeObserver callback since system
windows lack an activity token.

The first subsystem to use this is the UserSwitchingDialog which was
previously using a 250 msec timeout to dismiss the dialog. That
deadline was often missed leaving the user with no dialog on the
screen during the transition.

Fixes bug 16661752.

Change-Id: I70789e0d9c07112f275e76fb82850926305f290d
Window.aidl
iewRootImpl.java
iewTreeObserver.java
3aa1ffbc75e39b8e53b64256775ea917ca0c6bee 30-Oct-2014 Alan Viverette <alanv@google.com> Fix inset check in ThreadedRenderer

BUG: 17729606
Change-Id: I9303a788968b424fd8ca27fe4bb99bab51ec34a7
hreadedRenderer.java
indowManager.java
104504053d33d337d52350960c48a1edc5ba1444 30-Oct-2014 Alan Viverette <alanv@google.com> Merge "Show scroll indicators in AlertDialog" into lmp-mr1-dev
154c2c24dc3b741bcc0d54c46d349478d24472ac 29-Oct-2014 Alan Viverette <alanv@google.com> Show scroll indicators in AlertDialog

BUG: 16353356
Change-Id: I0307283751ccb23b9d85b0c36cb78b01243e70dd
iew.java
4e7c562c43e9014c8fb3e75d02ba98fa4edadbde 29-Oct-2014 Alan Viverette <alanv@google.com> Merge "Update drawable state after updating tint list" into lmp-mr1-dev
2d3443fc5a6cf0830edd6a498a87760143dbc570 29-Oct-2014 Alan Viverette <alanv@google.com> Merge "Add setters for window elevation and clipToOutline properties" into lmp-mr1-dev
66c0adcfd4351518512df2f3e81526d2d67d6d65 29-Oct-2014 Alan Viverette <alanv@google.com> Merge "Ensure accessibility focus rect is drawn correctly" into lmp-mr1-dev
79c067c54a944660438c81ac2caf37ec68eedfa9 29-Oct-2014 Alan Viverette <alanv@google.com> Add setters for window elevation and clipToOutline properties

These are available as XML attributes but were lacking setters. None
of the Window properties have getters, so just adding setters here.

BUG: 16847753
Change-Id: I9c032903e94b7f12125210bd73c911243612df69
indow.java
d5133792391443521dc15f7da7de5d280e6703dd 28-Oct-2014 Alan Viverette <alanv@google.com> Update drawable state after updating tint list

BUG: 18155988
Change-Id: Ic536027a54c10b2082fbc22476530165b76e2c59
iew.java
2b12b58f942e34e8c0cc5095cca71dbaaa029624 29-Oct-2014 Alan Viverette <alanv@google.com> Create translucent hardware renderer if surface insets are non-zero

BUG: 18160604
Change-Id: Ie4483b9841bd91778659d83b154f69e777fa1dfc
iewRootImpl.java
0e7ae4efe8f424fa1ced8f7e5f3d8ae78066592b 01-Oct-2014 Adrian Roos <roosa@google.com> Fix colored status bar panning issues

Bug: 17695293
Change-Id: I6a1267f8dff27e7b78ab312a71648ef16ab9483b
iewRootImpl.java
632af849240f54f91b2b4fde77d3a51c4d045f74 28-Oct-2014 Alan Viverette <alanv@google.com> Ensure accessibility focus rect is drawn correctly

Reverts previous change that draws it as part of View.draw() and ensures
that the display is always redrawn if a view has accessibility focus.
Correctly removes focus from views with accessibility focused ancestors.

Also reverts the focus indicator to use a solid line since the dotted
line looked janky.

BUG: 17675993
Change-Id: I25718334cc1ae1c2cd19d3c23af1c18c6a67504c
iew.java
iewGroup.java
iewRootImpl.java
b0aeaad442e6cd4920d75a63d65a91267cf9199a 28-Oct-2014 John Reck <jreck@google.com> Merge "Cleanup debug options" into lmp-mr1-dev
253626b822b3b20fdb9727705593b4b5b55b8553 27-Oct-2014 Alan Viverette <alanv@google.com> Merge "Clean up some javadocs in Window.setFeature...()" into lmp-mr1-dev
23d307c8d88f4a3849163b9e5b7cd11d0d4f372c 27-Oct-2014 John Reck <jreck@google.com> Cleanup debug options

Bug: 18138852
Bug: 18065434
Change-Id: Ibb07b73b147c2a8b287fe8aee3f6624582f21b00
hreadedRenderer.java
03d5c6f55b316a5b0e1aae405077d1083df60b36 27-Oct-2014 George Mount <mount@google.com> Merge "Add resizeClip attribute to ChangeBounds." into lmp-mr1-dev
b7573c2dbaff442a0f9f814bdc05aaa685574870 24-Oct-2014 George Mount <mount@google.com> Add resizeClip attribute to ChangeBounds.

Bug 17765948

Added the XML attribute for the resizeClip property of
ChangeBounds. Also updated support for resizing a view
using its clip bounds and position to fix the TODO.

Change-Id: I358d07d6a28fed4b7f39f9ccb9d89b9325f64239
iew.java
9678e34521d7eaa38cd93bee32b1e307956b74bd 25-Oct-2014 Alan Viverette <alanv@google.com> Clean up some javadocs in Window.setFeature...()

Change-Id: I80812f9ce7a746ad9686aa4462f7570dfd9b4c0e
indow.java
74a4a8d6162dde06297ff6c3ef264e7f9066b88f 24-Oct-2014 Svetoslav <svetoslavganov@google.com> Merge "Enhance computation of click point for accessibility." into lmp-mr1-dev
bd6fabe2ae535cf5d31fc7a1952e43ad6e653e2e 24-Oct-2014 Svetoslav <svetoslavganov@google.com> Merge "APIs for an accessibility service to put interaction tracking overlays." into lmp-mr1-dev
fa9ed8ca0a08be0b32b2ccc33563a47df1f6d3da 23-Oct-2014 Yigit Boyar <yboyar@google.com> Merge "Added a generic configuration and theme based cache" into lmp-mr1-dev
aca6ccf403a4b861419fae1be64500e3df3a81f7 23-Oct-2014 John Reck <jreck@google.com> Merge "Improve documentation" into lmp-mr1-dev
43a5328c8377aa29acd51098d915503e87f13a9a 23-Oct-2014 John Reck <jreck@google.com> Improve documentation

Bug: 17440886

Change-Id: I3f5c0dab6e08c0097fe60eb269e7fffe7b48b563
urface.java
523a129ced08a41468f3d52cf16ebb237f280e39 23-Oct-2014 George Mount <mount@google.com> Merge "Use one method to change bounds in ChangeBounds." into lmp-mr1-dev
d359952459f96a9b57f50a7434b8660836c6e987 23-Oct-2014 George Mount <mount@google.com> Use one method to change bounds in ChangeBounds.

Bug 17936593

Instead of calling setLeft(), setTop(), setRight(), setBottom()
separately, make one call that does all at the same time.

Change-Id: I986274f3a98b3136e71204501ffc272986ad31dd
iew.java
d422dc358f0100106dc07d7b903201eb9b043b11 25-Sep-2014 Yigit Boyar <yboyar@google.com> Added a generic configuration and theme based cache

For now, only animators use it but we can consider migrating
drawable cache to it as well.

Bug: 17456416
Change-Id: I571b96856805edb171f0fc52e6bff5a365f46b70
nimation/AccelerateDecelerateInterpolator.java
nimation/AccelerateInterpolator.java
nimation/AnimationUtils.java
nimation/AnticipateInterpolator.java
nimation/AnticipateOvershootInterpolator.java
nimation/BaseInterpolator.java
nimation/BounceInterpolator.java
nimation/CycleInterpolator.java
nimation/DecelerateInterpolator.java
nimation/LinearInterpolator.java
nimation/OvershootInterpolator.java
nimation/PathInterpolator.java
8c4e97db879eef3b943325a971a145e5223f49f8 23-Oct-2014 Svetoslav <svetoslavganov@google.com> Enhance computation of click point for accessibility.

In explore by touch mode the user performs a double tap to click on
an item. In this case the system sends down and up events at the
location of accessibility focus. The accessibility focused view may
be partially covered. In order to click in this view we compute a
point where to send the down and up events. This clicking strategy
is a bridge-gap and we will switch to accessibility actions in the
future.

When computing the point to click we were taking into account whether
the view was covered by a clickable sibling or a clickable sibling of
a predecessor. Despite our expectation cases in which this is not
enough happen in practice. In particular, the focused view may be
covered by a clickable descendant of a non-clickable sibling of a
predecessor that covers the focused view. This change takes care
of handling this case. Note that computing the click point is a fair
amount of work but this happens very rarely and on demand. Also the
code is short circuiting where possible.

Change-Id: I4d3cd8b67a7baf0bcc12f370ea7ba1b04c42c355
iew.java
iewGroup.java
d0aae5a2226c620c547690039fc06dfdf20ea35d 23-Oct-2014 Wale Ogunwale <ogunwale@google.com> Merge "Fix issue #17789629: PopupWindow overlaps with navigation bar." into lmp-mr1-dev
2615de920be16de6c7fe49e85fc65923074c2041 21-Oct-2014 John Reck <jreck@google.com> Surface:lockHardwareCanvas DO NOT MERGE

Bug: 17440886

Cherry pick of bb2d0cc7e1d487f7021b1f9ec0c6740e41b535f2

Change-Id: I78f25cdcfc49cc6a142a51b8aab009c37be8e6de
urface.java
3a5c721072c60c7ed9c8a95d0a65d0e3cb4eb9bb 14-Oct-2014 Svetoslav <svetoslavganov@google.com> APIs for an accessibility service to put interaction tracking overlays.

An accessibility service may register to observe the interactive windows
on the primary display. These windows are the one that has input focus and
ones a sighted user can touch. It is sometimes beneficial for an
accessibility service to overlay a window to intercept user interaction
and based on that introspect and perform an action on the windows that
are on the screen. This is problematic as overlaying a full screen window
that is touchable prevents the accessibility service to introspect the
content under this window.

This change adds a special type of window that only an accessibility service
can place which does not affect what an accessibility service can "see" on
the screen. Hence, even putting such a window full screen the service will
be able to interact with the other interactive windows it covers.

Change-Id: I053ccc3a5c6360a98dc40bdb172b54dab35d8b31
indowManager.java
indowManagerInternal.java
ccessibility/AccessibilityWindowInfo.java
bf463af2a5ed6c37df5d0e5a49f6a15d457e1c85 21-Oct-2014 John Reck <jreck@google.com> Merge "Surface:lockHardwareCanvas" into lmp-mr1-dev
bb2d0cc7e1d487f7021b1f9ec0c6740e41b535f2 21-Oct-2014 John Reck <jreck@google.com> Surface:lockHardwareCanvas

Bug: 17440886

Change-Id: I1f2d98c63ec1a2814c2258cf7e0096139263770a
urface.java
393b1c1e88cbdd0f65c8f217c495dbbe8de9125d 19-Oct-2014 Wale Ogunwale <ogunwale@google.com> Fix issue #17789629: PopupWindow overlaps with navigation bar.

The Lollipop release introduced a feature that allowed
apps to extend under the navigation bar. This also means
any popup window that is anchored to the bottom of its
parent window will overlap with the navigation bar if the
parent window is extending underneath the navigation bar.

This change introduces a new window flag
(FLAG_LAYOUT_ATTACHED_IN_DECOR) that allows the app to
specify if the popup window should be attached to the decor
frame of the parent window thereby avoiding an overlap
with the screen decorations.

By default the flag is set on SDK version LOLLIPOP_MR1 or
greater and cleared on lesser SDK versions.

Also, replaced flags FLAG_NEEDS_MENU_KEY and
PRIVATE_FLAG_NEEDS_MENU_KEY_SET with needsMenuKey state
variable to make room for the new
FLAG_LAYOUT_ATTACHED_IN_DECOR flag.

Bug: 17789629
Change-Id: I2150e0c6ac688c966c0e8f7e54d42fd20285bea6
indow.java
indowManager.java
e28cd1a276d64d697da89cac4941baf79f380f6c 20-Oct-2014 Alan Viverette <alanv@google.com> Merge "Only request layout when removeView() actually removes a view" into lmp-mr1-dev
5f978bfa0949d58a187dec0fe9ee6b341cb97c1f 20-Oct-2014 Adrian Roos <roosa@google.com> Merge "Retire RecentApplicationsDialog" into lmp-mr1-dev
0b5af04a8b202a2f274bb90c4fa982c813c40a20 18-Oct-2014 Svetoslav <svetoslavganov@google.com> am ebb38bcc: am cd2b54e6: Merge "Accessibility no longer overrides strong encryption." into lmp-dev

* commit 'ebb38bcc03a0f770d371b2ed997570572df7aed1':
Accessibility no longer overrides strong encryption.
a6711ff6f09cc25c693cbb50452e3f807c6122f5 17-Oct-2014 Svetoslav <svetoslavganov@google.com> Accessibility no longer overrides strong encryption.

Updating the accessibility layer behavior to reflect the new
model where accessibility no longer overrides strong encryption.
Now enabling an accessibility service lowers the encryption
level but the user can bump it up in settings if desired.

bug:17881324

Change-Id: Ic60d760c267d3f934040a42e1963b179bd8b9f5f
ccessibilityManagerInternal.java
177ec4608e919b309ec98ba8272cc1a16d1277e3 17-Oct-2014 Alan Viverette <alanv@google.com> Only request layout when removeView() actually removes a view

BUG: 18035456
Change-Id: Iec82be63ef9fc4d0ff90d93f8f3a65328a5e1eba
iewGroup.java
721fc2adf4d4d5b890b12cb2067db10e78888aba 17-Oct-2014 Alan Viverette <alanv@google.com> Fix build

Change-Id: Idd7ae84c0d128bd40f0e7a83882e4ed4181e8a4d
iewDebug.java
2f68a204b2299029dd492ab25bd3bcfe7216bafc 17-Oct-2014 Alan Viverette <alanv@google.com> Merge "Check type resolution on declared methods and fields in ViewDebug" into lmp-mr1-dev
9cefbda11ee5308145d58b0b99ced0f66a0b1cf9 15-Oct-2014 Adam Powell <adamp@google.com> View measurement optimization

If a view hasn't explicitly requested layout and it's asked to measure
with MeasureSpec.EXACTLY in both dimensions and sizes that match its
current measured size, the measure operation is a no-op.

This helps out a number of ViewGroups that perform initial speculative
measurements with AT_MOST or UNSPECIFIED followed by looping over
child views and measuring EXACTLY to lock in the final measurement
with perhaps some extra leftover space distributed. In practice this
happens a fair bit, especially for views high up in the view
hierarchy. This optimization allows ViewGroup measurement code to be a
little cleaner in not having to keep track of this on its own.

Change-Id: I88ff46a7d37aeda7a4cd16204b68cab0d051b341
iew.java
6f1edae88c3f6cfa2e9c046cf77658154640ba7a 15-Oct-2014 Alan Viverette <alanv@google.com> Merge "Send VIEW_SELECTED event when View selection state changes" into lmp-mr1-dev
99562fbbb40c72722468e5dc8c84b3e28494a20f 14-Oct-2014 Alan Viverette <alanv@google.com> Check type resolution on declared methods and fields in ViewDebug

BUG: 17375269
Change-Id: I8a74dfab1a1cf11b4240afb011d2729beea307c5
iewDebug.java
be98cdc702e9efef11274fef699c7513aa07de09 14-Oct-2014 Alan Viverette <alanv@google.com> Send VIEW_SELECTED event when View selection state changes

BUG: 11354667
Change-Id: I55d69e0e156c7bd83c14025f313a9d7261b7ccda
iew.java
8d3cf106aa53ccf03c9f57c4e3b4af5799e2b530 14-Oct-2014 Jesse Hall <jessehall@google.com> am d4b38fe5: am 647e0df0: Merge "Surface: Leave object in unlocked state when unlockCanvasAndPost fails" into lmp-dev

* commit 'd4b38fe5c06f622b984e7f84f299269efce92e42':
Surface: Leave object in unlocked state when unlockCanvasAndPost fails
d7e559675c96071b6ee46c3b45aa3c9e7216a9c4 13-Oct-2014 Jesse Hall <jessehall@google.com> Surface: Leave object in unlocked state when unlockCanvasAndPost fails

If nativeUnlockCanvasAndPost() throws, Surface was maintaining a
reference to the native Surface, and assuming it was still locked.
That would cause future lockCanvas() calls to throw without even
trying to lock the native Surface, even though in some cases the
native lock was actually released before the exception was thrown.

Now Surface treats the native object as unlocked even if
nativeUnlockCanvasAndPost() throws, so it will attempt the native lock
on lockCanvas() rather than assuming it would fail.

This change also changes an IllegalStateException to
IllegalArgumentException in unlockCanvasAndPost(). That exception was
added in KitKat, and was never documented or added to the throws
declaration. This was essentially a silent public API change. Quite a
bit of code in the framework (and likely in applications) catches
IAE from this method, but didn't attempt to handle ISE. Although ISE
is more correct here, it's not worth breaking code (and it did -- in
this bug it changed a problem that should have been silently and
perfectly recovered from into a fatal exception in system_server.)

Bug: 17684556
Change-Id: Ia8d3e5d33eaa690d16c7d0f557390c7bb4e1e32e
urface.java
e78aa53123df02a021cf20f2d19af8d07e890058 10-Oct-2014 Svetoslav <svetoslavganov@google.com> am 9ab1b1bb: am c43caf52: Merge "Fix child view ordering for accessibility." into lmp-dev

* commit '9ab1b1bbe62aa0424214bb5bbcfd707cb8ac8199':
Fix child view ordering for accessibility.
88e447b576bb330e4e25f4a6840df5aa9296a5b5 10-Oct-2014 Svetoslav <svetoslavganov@google.com> Fix child view ordering for accessibility.

When reporting views to accessibility services we are ordering the
children in a parent based on their location on the screen. The
initial implementation worked pretty well in practive but violated
the transitivity property leading to rare crashes in apps. The current
implementation does not violate transitivity but does not produce
good ordering.

Given the lack of time and to minumize risk this change uses the
old strategy which works most of the time and if that fails we
fall back to the current strategy. Coming up with a correct strategy
that produces good results requires more time.

bug:17887986

Change-Id: I1c233ecdf318befc315e793696ac48bd6c652ab6
iewGroup.java
7cb761fe8c29fc00e66515c40f7fcb9111b70da0 09-Oct-2014 Adam Powell <adamp@google.com> Merge "Document that MarginLayoutParams margins should be positive." into lmp-mr1-dev
a7a735fb2a5d56e5ec7ca2f65cb14e29e3793f3c 09-Oct-2014 Adam Powell <adamp@google.com> Document that MarginLayoutParams margins should be positive.

Negative margins can cause all sorts of other problematic assumptions,
subtle errors and unexpected behavior. While they technically work
developers should steer clear of them.

Change-Id: Ia1f7d9a33e25444ebdc3c32679ae1179210558e1
iewGroup.java
45a9da5076f4482e82ada5f394a9e69f730b9734 09-Oct-2014 Adam Powell <adamp@google.com> Throw a more descriptive exception when adding null to a ViewGroup

Help developers during debugging bad calls to addView by throwing an
IllegalArgumentException earlier rather than implicitly tossing NPE
the first time the child view is accessed.

Change-Id: I4a554635815a5d0b415f637b93592fb45973f26d
iewGroup.java
d83e9e42805e340384f30199777fbc472c5c6f20 09-Oct-2014 Dianne Hackborn <hackbod@google.com> am 0761b1b5: am 89b19695: Merge "Put in real "code" (aka marketing) name." into lmp-dev

* commit '0761b1b5ebb453a411e3289c1c972dbfddcee880':
Put in real "code" (aka marketing) name.
955d8d69ea6caabce1461dc25b339b9bf9dc61a6 08-Oct-2014 Dianne Hackborn <hackbod@google.com> Put in real "code" (aka marketing) name.

Change-Id: Idb3976edfae37293ed75cb5b869b4b42d8042bbe
indowManagerGlobal.java
9a64513c7fccc2a9cf331a384906a7669b29b3f4 08-Oct-2014 Adrian Roos <roosa@google.com> Retire RecentApplicationsDialog

Bug: 5162991
Change-Id: I429da977502f33e2091496f3a075b2c507a88e1f
indowManager.java
6a2296d856fe4db524ab71c6500f356ff0454f29 04-Oct-2014 John Reck <jreck@google.com> am 9da6e743: am d988a45d: Merge "Cleanup DeferredLayerUpdater" into lmp-dev

* commit '9da6e7435945e34d05e0c8c5c9a324218480c6ff':
Cleanup DeferredLayerUpdater
749906b468912dab7bf69a86e852deac3e80b0cc 04-Oct-2014 John Reck <jreck@google.com> Cleanup DeferredLayerUpdater

Bug: 17765082

DeferredLayerUpdater had fallen behind RT updates. Re-snap to
latest expectations, ensuring to call requireGlContext() prior
to detachSurfaceTexture to avoid leaking SurfaceTextures

Change-Id: Ic65fb9831e5284f658866da8da9ad5af1d227699
hreadedRenderer.java
438fe5937f3bc04087f48b511a799f9f6cf5a205 02-Oct-2014 Chris Craik <ccraik@google.com> Merge "Clear preordered list in translateBoundsAndIntersectionsInWindowCoordinates" into lmp-mr1-dev
d84ce32bd2d7c3cebac15545504f4fec464a6956 02-Oct-2014 Newton Allen <newt@google.com> Merge "Fix some documentation typos." into lmp-dev
77e4a5250fc6df451999efe508f57968a44b603f 01-Oct-2014 John Reck <jreck@google.com> Re-allow suppressing onDetachedFromWindow

Bug: 17578553

Games seem to be doing this to prevent destruction of their
GL contexts, and they assume it works even if it doesn't. However,
GLSurfaceView is clunky here, so while the app is doing something
questionable we don't really offer a better way. For now revert
back to kitkat behavior.

Change-Id: Icfa9e496279b9cfa47f9bc7f6848d9313caed0d5
urfaceView.java
46cbf7e1903f5cf1c3960e63989499f373ad7db4 30-Sep-2014 Adam Powell <adamp@google.com> Inset the non-overlay contextual action bar without a status guard

When the status guard is not available, (e.g. when the window is not
drawing system bars) do not consume the insets when an action mode is
active.

Bug 17691453

Change-Id: I459622eaf161a96152fb9ac5f60bb9508aa4de89
iew.java
44d4eeaa48721296663a05d01071f196a509dc34 30-Sep-2014 Svetoslav <svetoslavganov@google.com> Merge "Use default encryption password if an accessibility service is enabled." into lmp-dev
16e4a1aade2b73edfdaa42aa86a3893fd039fc62 30-Sep-2014 Svetoslav <svetoslavganov@google.com> Use default encryption password if an accessibility service is enabled.

When device is encrypted the user has to authenticate in order to decrypt
the data partition which is required for running accessibility services
and Text-To-Speech. In order to address this issue we are falling back
to use the default password if there is an enabled accessibility service
and the user has secure lock. This will enable the user to authenticate
when accessibility layer is completely functional.

bug:17671790

Change-Id: Iafffe7bcd234008cf91ffb5011b21b803dca227a
ccessibilityManagerInternal.java
57c79c8a4988e236b223502258a799e8b0ea4ca0 30-Sep-2014 Chris Craik <ccraik@google.com> Clear preordered list in translateBoundsAndIntersectionsInWindowCoordinates

bug:17697944
Change-Id: I1c2296707df5fc29bfc85385d766217afc1063cf
iewGroup.java
8f8a11b7fa26e603519131001ab46596aa30ba1a 26-Nov-2013 Newton Allen <newt@google.com> Fix some documentation typos.

Change-Id: I747a0ade5c7b9c45d4465bf327952338bbc1cfaa
(cherry picked from commit 4465d1a03ee5fddc5987c19fc36b0bb79e19572f)
iew.java
nputmethod/InputConnection.java
50ac6cb9820da352bd5e89596b17561878e969cc 30-Sep-2014 George Mount <mount@google.com> Clear preordered list after use.

Bug 17671834
Bug 17697944

Change-Id: I0ba46f32661869db0c925b00342211ea543e2f88
hostView.java
8120652bb1155d762d945c1a3bf1636b6825dbd2 27-Sep-2014 George Mount <mount@google.com> Order GhostViews so that they display in their ghosted view's order.

Bug 17671834

GhostViews can be added in arbitrary order since they are added
depending on how they are insterted into the TransitionValues
maps. This CL does two things: it ensures that GhostViews are always
pulled to the top of the Overlay and inserts GhostViews into
the Overlay in the order that their ghosted views are drawn.

Change-Id: I9f68105126834cc8f30a6cfe5d58fc3c51465afd
hostView.java
iewGroup.java
ed2fdc6ef560c76ba310a2c4e5bb63f01d08af40 27-Sep-2014 Svetoslav <svetoslavganov@google.com> Accessibility node provider getting invalid virtual view id.

If the virtual child id is not specified we should ask the node
provider to create a node info for the hosting view bu passing
the special host node id.

bug:17664111

Change-Id: Iaf1387acdfe33b50b50729d293adcdf82340a648
ccessibilityInteractionController.java
b3ba1d4e717d6292df4273108f0da61dac4f7b10 27-Sep-2014 Svetoslav <svetoslavganov@google.com> Accessibility node provider getting invalid virtual view id.

If the virtual child id is not specified we should ask the node
provider to create a node info for the hosting view bu passing
the special host node id.

bug:17664111

Change-Id: I9c2d3195ad813eed7ea4108fe0d7ccb9cc32a1a0
iewRootImpl.java
c569d3594574598d54f69b36239d88f7e0d15b7d 26-Sep-2014 Svetoslav <svetoslavganov@google.com> Using wrong virtual view id When prefetching accessibility nodes.

When getting an accessibility node info we also prefetch its predecessors,
siblings and descendants up to fifty. If a view has a node provider, i.e.
virtual descendants, and the id of the virtual descendant is not specified
we use a speacial constant to refer that the provider should create a node
for its hosting view. The bug was that we were not using the correct constant
when calling into the provider.

bug:17664111

Change-Id: I4f6b2333e1e7e3e2bb6b164c0752613417c60d16
ccessibilityInteractionController.java
ccf2fa00314b91c7d25e0edf48e0e2b51dbc4e63 25-Sep-2014 John Reck <jreck@google.com> Missing null check

Bug: 17642023
Change-Id: I874b76e1e184a59dec714191d759c1045b7b9814
indowManagerGlobal.java
e7482460af6c0a2ea02d6cc42df129b583132571 24-Sep-2014 Svetoslav <svetoslavganov@google.com> Ignore not visible views computing click point for accessibility.

In accessibility mode we compute a location to where to send down and up
events to click a view (triggered by a double tap). This solves the problem
of interacting with views that are partially covered by other interactive
views. The logic that computes the click point was not ignoring siblings
that are not visible. As a result a blind user cannot interact with some
views.

bug:17632224

Change-Id: I93e637ee6702e4ba3e79faa736205430e2196d01
iewGroup.java
3ee549ca2404067bb8b2fcbaa741ec118c76bf3e 23-Sep-2014 Jeff Brown <jeffbrown@google.com> Fix window manager policy state when waking from doze.

Once upon a time when the world was fresh and new, the heavens
had an easy rhythm. Day and night. Night and day. In the day,
the pixel fairies would cavort and play in the bright gardens
with narry a mark of shadow or gloom. In the night, they would
rest peacefully, dreaming no dreams and knowing no fear.

Then one night a fairy dreamed the first dream. At first
the dream was peaceful, full of colors and delight, hopes and
memories. Then all at once, jarringly, it awoke in bright
daylight. The pixel fairy knew fear, for the world had changed
and it was unprepared.

Time passed and the pixel fairies grew accustomed to their
fate, day and night, night and day, sometimes dreaming, until
there came a night when a fairy did not sleep. It roamed
the land in a dreamless doze, lost and afraid amid a grim haze
of grey and darkness. The fairy despaired. It wanted no
part of this place. It pretended for a time to be awake but
the bright daylight would not come. It pretended for a time to
be dreaming but the colors and memories would not come.
That is when the fairy wished for oblivion. Then just as
suddenly, it awoke in the daylight. It fell to the ground,
stunned as if it had forgotten how to walk in the too bright
daylight.

Though the world again grew softer and kinder in time, the pixel
fairies were never the same. For the night is dark and full
of terrors.

---

It used to be easy. Screen on and screen off could explain almost
everything about the state of the device but it's different now with
ambient display. We need to be able to wait for all windows to be
drawn even in the case where the device is still nominally asleep.
In truth, the window manager policy which drives a lot of these
interactions is a thicket of outdated assumptions.

Added a new method to tell the window manager policy when the screen
is being turned off so that it can correctly account for changes
to the interactive state (wakeUp and goingToSleep) and screen state
(screenTurningOn and screenTurnedOff). Now we can independently
poke keyguard during interactive state changes and we can apply
screen on blocking during screen state changes.

Moved the code which manages screen on blocking (which is what
ensures the UI has fully drawn before revealing screen contents)
from the power manager to the display manager since the display
manager is in a better position to accurately track the state of
the screen, particularly when the screen is being turned off.

Fixed a bunch of synchronization issues. Previously some work
had been moved to a handler without considering what might
happen if it became reordered relative to other work happening
elsewhere. Documented the desired behavior in the code to
prevent this from happening again.

There's still a bunch of stuff in here that isn't quite right,
particularly the assumption that there's only one screen, but
it's good enough for now. Hopefully there aren't too many bugs.

Bug: 17605802
Change-Id: Ic7319e09948c8a3cda014d7e169c964a3ad86f14
indowManagerPolicy.java
73840ea3670f1c117843acc6069635c80ba2ffd2 22-Sep-2014 John Reck <jreck@google.com> Aggressively trim memory for system_process

Bug: 16978006

Don't HWUI-accelerate KeyguardScrim
Aggressively trim memory as soon as a ViewRootImpl
dies or has its visibility changed.

Change-Id: Ie1b7c9d30653456bd2e9f309128174f972999368
ardwareRenderer.java
iewRootImpl.java
indowManagerGlobal.java
650d7d9dd27adb7fc700e99bb5167fe697785c61 21-Sep-2014 Svetoslav <svetoslavganov@google.com> Merge "Fix memory leak in accessibility cache." into lmp-dev
13bd771c993f96a06add4057c5f5d5be7ac4b42a 20-Sep-2014 Svetoslav <svetoslavganov@google.com> Fix memory leak in accessibility cache.

We were not clearing the cache if window state change event
is fired which was the behavior before adding the window
inspection APIs. As a result if no accessibility service
cares about windows we get a leek. Also when the accessibiilty
service cares about windows we were not clearing all windows
nodes from the cache. Now if a windows change or a window
state change event is recived we clear the cache.

bug:17589257

Change-Id: I8c416fbcab623160c6f505128b9fca713fcc6623
ccessibility/AccessibilityCache.java
1a74dc45473fe5d15dc1b52458e33b91def370c2 20-Sep-2014 Yigit Boyar <yboyar@google.com> Merge "Find activity from context in menu inflator for click events" into lmp-dev
36c4db8bd3bd7dad4b6cb8abd9cdc1a627fe3bbc 19-Sep-2014 Jeff Brown <jeffbrown@google.com> Decouple turning screen on from waking up in policy.

This allows us to ensure windows are fully drawn before unblocking
screen on while dozing.

Bug: 17516245
Change-Id: Ibe63c212b8db855ce26a34a8169f33764b266ee6
indowManagerPolicy.java
d66a7324ccaf0c792fc9d60f6a33afd08eac0f31 19-Sep-2014 Yohei Yukawa <yukawa@google.com> Merge "Speculative fix of IMMS crash" into lmp-dev
fcedfa01907d8a5f804974a4a3585498e8d6c261 19-Sep-2014 Yohei Yukawa <yukawa@google.com> Speculative fix of IMMS crash

This CL is a follow up CL for I6571d464a46453934f0a8f5e790.

Do not propagate Resources.NotFoundException to the caller
of InputMethodInfo.isDefault().

BUG: 17553712
BUG: 17549437
BUG: 17517332

Change-Id: Ie95880c1f68f49eb63518e69b7dfa20af3ce8737
nputmethod/InputMethodInfo.java
20d01ad8a17b85ed8a100178f01e5eed12f31cf5 19-Sep-2014 Dan Sandler <dsandler@android.com> Merge "Fix LayoutInflater copy constructor logic." into lmp-dev
0c7bb33e03392416fc98c27738d1bcca386a6b2f 19-Sep-2014 Dan Sandler <dsandler@android.com> Fix LayoutInflater copy constructor logic.

Avoids an NPE in mFilterMap.

Bug: 17548265
Change-Id: I6556373862f706dbcf5549eaec61c3e10a47b482
ayoutInflater.java
07ecc748fb378a1acb86f3b93a7ad35d8fbb5aa5 18-Sep-2014 Alan Viverette <alanv@google.com> Merge "Use action bar theme for action modes, fix ViewStub inflation theme" into lmp-dev
7e3d6c988c1fdd27720dbfef9bf2fe1a5abe70b7 18-Sep-2014 John Reck <jreck@google.com> Merge "Revert "Make starting window hw-accelerated"" into lmp-dev
61375a8bb5e112d4e79ee4240699ffe7e3f4c8e5 18-Sep-2014 John Reck <jreck@google.com> Revert "Make starting window hw-accelerated"

Bug: 17516789

This change corresponds to a sudden influx of bad surface crashes.
Reverting to see if stability returns as this was an optimization
CL

This reverts commit 29ff1bc57ac2c995c56f15ed6e56e5fb247b2a44.

Change-Id: I7835e89017161d94ad05fe46d81bd437c3dae3a7
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
indowManager.java
b8c19b1b33c1de2b17a51ccc9fc2893489f9f878 18-Sep-2014 Yigit Boyar <yboyar@google.com> Find activity from context in menu inflator for click events

Bug: 17514128
Change-Id: I3028182a5bdb85eccd9db0faa13da9fc459af3c6
enuInflater.java
a9ddb8dc23b253c53f24ceb81e9d596c072d834e 18-Sep-2014 Alan Viverette <alanv@google.com> Use action bar theme for action modes, fix ViewStub inflation theme

BUG: 17262483
BUG: 17513621
Change-Id: I74764570a11da162a224e94978e21e52d17e2e84
ayoutInflater.java
543f21da4684fd07cbf21df0155ecfdf747d589a 17-Sep-2014 Adrian Roos <roosa@google.com> Merge "Fix broken dispatch of onApplyWindowInsets" into lmp-dev
f1820064d9cfcf43e4cfd16872acca3bf5a7d94b 17-Sep-2014 Alan Viverette <alanv@google.com> Ensure we always have valid colors in CaptionStyle

BUG: 17521623
Change-Id: I861aa189970fc14dd3e4426e5487a14f373d3a2e
ccessibility/CaptioningManager.java
39381948b9bb4c98434a32d6eef76b045bb22a78 16-Sep-2014 Adrian Roos <roosa@google.com> Fix broken dispatch of onApplyWindowInsets

Fixes an issue where window insets were not further dispatched
if all happen to be zero. To prevent further dispatch, the
insets must now be consumed explicitly.

Bug: 17522145
Change-Id: Ia8f6c10c8369b58db7a7cf49f8bcc2cab8e304f1
indowInsets.java
072707dfad1da6f49f4d3ce58ca104f6c46a7266 15-Sep-2014 Jorim Jaggi <jjaggi@google.com> Use RenderThread for navigation bar ripples

Bug: 17506181
Change-Id: Icf3b80f8c4bc29fe85313381d4019dda3ef85ea9
LES20Canvas.java
ardwareCanvas.java
84f20ec49df3bfc8b40a27964ba2b074e5f101fc 16-Sep-2014 Yohei Yukawa <yukawa@google.com> Merge "Minimize the number of default enabled IMEs part 3" into lmp-dev
18c56d0ac4c1535132c79ac6f5007d8d5b5ed2bc 16-Sep-2014 Chet Haase <chet@google.com> Merge "Avoid invalidating view during some outline invalidations" into lmp-dev
27652eff447a3331701466cf969a50cc106a9940 15-Sep-2014 Chet Haase <chet@google.com> Avoid invalidating view during some outline invalidations

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
iew.java
7436d1997ce335275486d3472e386bcb9c5571fb 15-Sep-2014 Chris Craik <ccraik@google.com> Merge "Enable shadow for GhostView" into lmp-dev
dc489241cfb3691a87942344cf55efd3d98c1107 13-Sep-2014 Yohei Yukawa <yukawa@google.com> Minimize the number of default enabled IMEs part 3

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
nputmethod/InputMethodInfo.java
203d1cce5c6e45c329c27271f01041aa94509e27 15-Sep-2014 Chris Craik <ccraik@google.com> Enable shadow for GhostView

bug:17331776
Change-Id: Ia5819422e8cb53d2a4da110f819823b4e90e2fee
hostView.java
b56f5d2ab18f881eb075b698e9ce1b4a4a09ff64 15-Sep-2014 Alan Viverette <alanv@google.com> Clean up view drawable tinting methods, fix default modes

Calling setTint now only modifies the tint. It won't force a mode change.

BUG: 17494736
Change-Id: I91392634869ed23981d8e61a403bb2be42aa7a07
iew.java
d72068b38ec4e5732dde6093e39b2602babc27a3 12-Sep-2014 Adam Powell <adamp@google.com> Provide a public API for View#computeFitSystemWindows

The current hidden API is necessary to perform correct inset behavior
for support libraries like appcompat. Provide a public method
consistent with the new WindowInsets APIs.

Bug 17411097

Change-Id: I71a63eea0238b94cae6b5c6f1721d5567560ba81
iew.java
indowInsets.java
3fadee479107f0494e1e190aba2a1eea12cb0a75 08-Sep-2014 Yohei Yukawa <yukawa@google.com> API Review: Clean up removed APIs

This CL removes old API signatures marked as @removed
in the follow CLs.
- Ic8c6fab58c01206872a34e7ee604cdda1581364d
- Ia8cbb9f6b41cd9509fc0147fd68763dfde593ffc
- I772c48ff18918e48a81e807b48ff907614485c09

This is just a clean-up CL. No behavior change is intended.

BUG: 17200900
BUG: 17320996
BUG: 17365414
Change-Id: Ibfbd5cc1cdebb8851c73477cff55c9b2d631fdea
nputmethod/BaseInputConnection.java
nputmethod/CursorAnchorInfo.java
nputmethod/InputConnection.java
nputmethod/InputConnectionWrapper.java
cbc771f50e998ec307c7e92009425c730cde49c5 12-Sep-2014 Craig Mautner <cmautner@google.com> Merge changes Ia6fe9724,I682b9acb into lmp-dev

* changes:
Show all windows from activity that hides keyguard
Make sure FLAG_DISMISS_KEYGUARD brings up bouncer
7d7808fcf8e6a1c27d52375210f9da2705d5f590 12-Sep-2014 Craig Mautner <cmautner@google.com> Show all windows from activity that hides keyguard

Popup windows from the activity hiding the keyguard weren't being
shown. This change retrieves that activity from PhoneWindowManager
and applies the show or hide call to the windows that match the
activity.

Fixes bug 16479813.

Change-Id: Ia6fe97240aec85c5233eee9038138f7d48095a6e
indowManagerPolicy.java
fb008d6ac3326649e422945de0e62022a64c8a33 12-Sep-2014 Adam Powell <adamp@google.com> Merge "Remove View methods that can't be used safely from the SDK" into lmp-dev
5eb3ffc24cbcce7e0c2995d0d4be62844fef4999 12-Sep-2014 Adam Powell <adamp@google.com> Remove View methods that can't be used safely from the SDK

View methods that previously accepted a TypedArray to initialize
parameters parsed from xml cannot be used correctly by apps. The
TypedArray passed must always be obtained from a context using the
filter array com.android.internal.R.styleable.View, which is not
visible to the SDK.

A previous change already made this safe for existing apps already
using it so that they don't crash, this change removes these methods
from the SDK entirely.

Change-Id: I62099087ad6fd5bf8363e863b04fd0434b8cdfca
iew.java
db352c783575afee2d6bc29baf45c83d5fc421cf 11-Sep-2014 George Mount <mount@google.com> Merge "Have Activity Transitions activited by a new window attribute." into lmp-dev
969e543b3256044987e4f837cf7a1702dcff82be 11-Sep-2014 Chet Haase <chet@google.com> Merge "Make starting window hw-accelerated" into lmp-dev
4f52b3420684e85252a7341d906e47145855b6ec 11-Sep-2014 Chet Haase <chet@google.com> Make starting window hw-accelerated

An earlier fix in L disabled hw acceleration for the starting window
after the system process became hw accelerated. This was done to preserve
the old behavior of the starting window having some default behavior
(in particular, being filled with a default color). However, this ends up
being a memory and performance problem on some platforms (memory because
some platforms have backing store for software surfaces, performance
because it takes far longer to create a screen-size software surface than
a hardware surface).

The fix is to allow the starting window to inherit the hw acceleration
behavior of its process, and to detect when we are drawing the contents
of that starting window and to fill it with a default color (black).

Issue #17443449 use hardware rendering for app preview window

Change-Id: I8be8111d9e38c51fbbc07185acca065815ce26dc
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
indowManager.java
9826f636ad4fe3714d60972acd918e09eb44d971 11-Sep-2014 George Mount <mount@google.com> Have Activity Transitions activited by a new window attribute.

Bug 17006497

Window content transitions were being enabled by default in
the Material Theme so that Activity Transitions could be
enabled by default. Unfortunately, this gave the effect that
many applications did not want -- the default transition between
window content is a fade out/in. Here, a new attribute is
added: windowActivityTransitions that is enabled by default
in the Material theme and windowContentTransitions is disabled
by default in all themes.

Change-Id: Iab453d608f00a48ff7ab7f09ce84b52cf5f20294
indow.java
83e3ec9d4e85df7a5b14657c296c75198f17157f 10-Sep-2014 Jon Miranda <jonmiranda@google.com> Merge "Tries to resolve reference resource names instead of its data." into lmp-dev
443c2bafd824779a75cd4b922b6839a8df9795e9 10-Sep-2014 Yohei Yukawa <yukawa@google.com> Use public APIs to instantiate InputMethodSubtype

This is a groundwork for subsequent CLs that are
supposed to improve default input method selection
logics.

Historically we have had a @hide constructor of
InputMethodSubtype. However, this contructor is
a bit obsolete because we can not specify some
parameters that were added in recent platform
releases. We should use InputMethodSubtypeBuilder
instead.

BUG: 17347871
Change-Id: I72ad79682a58344e14380eb20e26edf98aee37cd
nputmethod/InputMethodSubtype.java
7c744bdbf35aedbdde3a5ff9f2374e91f16f3641 10-Sep-2014 Jon Miranda <jonmiranda@google.com> Tries to resolve reference resource names instead of its data.

Example: @16974751 can be resolved to android:style/TextApperance.Material.

Bug: 17446752
Change-Id: I3ffede3ecc8689badd646a27d50a7a73ce45cf86
iewDebug.java
0b81adcaea4acd2968947efa516321e6378dd51d 09-Sep-2014 Riley Andrews <riandrews@google.com> Merge "Use surfaceflinger for recents thumbnail rotations." into lmp-dev
bb8c4834613207cf880e8491b33eb495cc268548 09-Sep-2014 Dianne Hackborn <hackbod@google.com> Merge "Add new wallpaper features for insets and offsets." into lmp-dev
1d13406538b79785d2d0928689b8d5037e851ecf 22-Aug-2014 Riley Andrews <riandrews@google.com> Use surfaceflinger for recents thumbnail rotations.

+ This removes 30ms of latency on app to home transitions
on volantis.
Change-Id: Ia3747b8f8be0d41b9b3d095753edfe1df185c84d
urfaceControl.java
067e5f68b9216b233df1c6529db182ff9b2887ab 08-Sep-2014 Dianne Hackborn <hackbod@google.com> Add new wallpaper features for insets and offsets.

Issue #17394151: WallpaperService / Engines need to get notified
of WindowInsets

Issue #17394203 Wallpapers need a system API to be shifted in order
to support burn in protection

Adds a new API on WallpaperManager to set additional offsets to
make wallpapers extend beyond the display size.

Insets are now reported to wallpapers, to use as they may. This
includes information about the above offsets, so they can place
their content within the visible area. And to help with this, also
expose the stable offsets APIs in WindowInsets which is also very
useful information for the wallpaper.

Another new API on WallpaperManager to set a raw offset to apply
to the wallpaper window, forcing it to move on the screen regardless
of what the wallpaper is drawing.

Fix wallpapers when used with overscan enabled, so they still extend
out across the entire screen. Conveniently, the above new window
insets information is very useful for this case as well!

And a new wallpaper test app for all this stuff.

Change-Id: I287ee36581283dd34607609fcd3170d99d120d8e
WindowSession.aidl
iewRootImpl.java
indowInsets.java
2bb02c799cac8facc712a9e87dddfe3c50363222 08-Sep-2014 Svet Ganov <svetoslavganov@google.com> Merge "Clicking on partially coverd views by other views or windows." into lmp-dev
7498efdc5e163d6b4a11db941c7d13c169d37284 04-Sep-2014 Svet Ganov <svetoslavganov@google.com> Clicking on partially coverd views by other views or windows.

In touch exploration mode an accessibility service can move
accessibility focus in response to user gestures. In this case
when the user double-taps the system is sending down and up
events at the center of the acessibility focused view. This
works fine until the clicked view's center is covered by another
clickable view. In such a scenario the user thinks he is clicking
on one view but the click is handled by another. Terrible.

This change solves the problem of clicking on the wrong view
and also solves the problem of clicking on the wrong window.
The key idea is that when the system detects a double tap or
a double tap and hold it asks the accessibility focused node
(if such) to compute a point at which a click can be performed.
In respinse to that the node is asking the source view to
compute this.

If a view is partially covered by siblings or siblings of
predecessors that are clickable, the click point will be
properly computed to ensure the click occurs on the desired
view. The click point is also bounded in the interactive
part of the host window.

The current approach has rare edge cases that may produce false
positives or false negatives. For example, a portion of the
view may be covered by an interactive descendant of a
predecessor, which we do not compute (we check only siblings of
predecessors). Also a view may be handling raw touch events
instead of registering click listeners, which we cannot compute.
Despite these limitations this approach will work most of the
time and it is a huge improvement over just blindly sending
the down and up events in the center of the view.

Note that the additional computational complexity is incurred
only when the user wants to click on the accessibility focused
view which is very a rare event and this is a good tradeoff.

bug:15696993

Change-Id: I85927a77d6c24f7550b0d5f9f762722a8230830f
ccessibilityInteractionController.java
iew.java
iewGroup.java
iewRootImpl.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/IAccessibilityInteractionConnection.aidl
ccessibility/IAccessibilityInteractionConnectionCallback.aidl
5f183f0671dfa1d87ca6d741deb457170c432493 02-Sep-2014 Yohei Yukawa <yukawa@google.com> L API proposal: Introduce IS_RTL flag

This CL introduces CursorAnchorInfo.FLAG_IS_RTL for better
RTL support. This CL also renames *CharacterRect() with
*CharacterBounds() so that they can look more consistent
with other existing APIs.

Rationale:

CursorAnchorInfo.FLAG_IS_RTL addresses following issues.
1. There is no way to associate the RTL information with
the insertion marker.
2. Returning mirrored (right < left) RectF for RTL in
CursorAnchorInfo#getCharacterRect() is turned out
to be bug-prone. Such usage of RectF is not fully
supported. For example, RectF#isEmpty() always returns
false when right < left.
3. There is no reliable to provide the RTL information
when CursorAnchorInfo#getCharacterRect() returns an
empty (right == left) RectF. Perhaps we could use +0.0
and -0.0, but I'm afraid that it is also bug-prone.

BUG: 17365414
BUG: 17335734
Change-Id: Ic8c6fab58c01206872a34e7ee604cdda1581364d
nputmethod/CursorAnchorInfo.java
2e7f3bdcc9ec0b3e95b565b943ecee2210f4b937 05-Sep-2014 Winson Chung <winsonc@google.com> Removing unnecessary delays, ensuring transition thumbnail is the size of the header. (Bug. 16987565)

Change-Id: Ic104876c5fe16997eca00e0a2b3d8644c927120c
WindowManager.aidl
05cc48292b7c49be7aa11310173013cd3b656e08 06-Sep-2014 Jon Miranda <jonmiranda@google.com> Merge "Added getStyleAttributes to access all Theme attributes." into lmp-dev
3207ffe12045ed6d8a2ea04993738cf71320183d 06-Sep-2014 John Reck <jreck@google.com> Merge "Disable RT-anim for AnimatorSet" into lmp-dev
9ffe8c06e5baa730229fd5eaeaccb7ff8f8d9518 06-Sep-2014 Alan Viverette <alanv@google.com> Merge "Propagate drawable hotspots when duplicate parent state is enabled" into lmp-dev
042ad633bc68bdda2bb0c50216706d73575a5992 04-Sep-2014 Jon Miranda <jonmiranda@google.com> Added getStyleAttributes to access all Theme attributes.

ViewDebug uses getStyleAttributes to get the attributes, and then gets the
attribute name and value so that Hierarchy Viewer can display it.

Bug: 17407087
Change-Id: I3577e32ae99668383701dc908bb46db14a75c3c4
iewDebug.java
f5945a0c8bb868f978d9d0d22043a8b44464a86e 06-Sep-2014 John Reck <jreck@google.com> Disable RT-anim for AnimatorSet

Bug: 17317184

Unfortunately this will disable *all* RT animations in a scene,
but we don't have more selective targetting currently

Change-Id: I57e1c0ae43957f45229473bdcdaf34c05825fab7
enderNodeAnimator.java
83eb430270a8de2e231639d6498f6451b9958fc6 06-Sep-2014 Chris Craik <ccraik@google.com> Merge "Add shadow/clipping properties to HierarchyViewer" into lmp-dev
5c75c52e048a01c23b18f4e31ae624b5fe43e23c 05-Sep-2014 Chris Craik <ccraik@google.com> Add shadow/clipping properties to HierarchyViewer

bug:15777980

Change-Id: Ic3d24326f585d2d2b9889486f0ed322eb98b5af8
enderNode.java
iew.java
iewGroup.java
a3e49a4b1df9c2a22b637af0833e0a813ecbd9b7 05-Sep-2014 Alan Viverette <alanv@google.com> Propagate drawable hotspots when duplicate parent state is enabled

Makes hotspot-centered ripples "just work" everywhere that old-style
pressed states work.

BUG: 17407652
Change-Id: Id4802662aea537959122f029e85aa576cf51b641
iewGroup.java
a6863ad62296a5280504165a1fbc70523940a9c8 05-Sep-2014 Michael Wright <michaelwr@google.com> Merge "Allow for event dispatching when in non-interactive states." into lmp-dev
def8a3712830fb1c2edde0f44aa166c8235f6285 05-Sep-2014 Chris Craik <ccraik@google.com> Merge "Replace native crash with IAE when calling picture.draw() w/ a HW canvas" into lmp-dev
96890564bdbd2f2a41dfc323fc8b3938fb335639 05-Sep-2014 Chris Craik <ccraik@google.com> Replace native crash with IAE when calling picture.draw() w/ a HW canvas

bug:17397958
Change-Id: I75f942db0e604f9fd6ab31e6c81f718c0f57b16a
LES20Canvas.java
53dcd394aa389e1e80aa1113be38255716bf2e4c 05-Sep-2014 Svetoslav <svetoslavganov@google.com> Update FrameStats API per api-council request.

bug:17390382

Change-Id: I50518834569f4d0ec394709294537256f03530e0
rameStats.java
70af00abf73160235d4efe114fcf4753007a8ff3 04-Sep-2014 Michael Wright <michaelwr@google.com> Allow for event dispatching when in non-interactive states.

We need to allow for event dispatching in non-interactive states so
that we can enable a richer set of interactions when a device is
dozing (i.e. is in a low power state with an Always-on-Display).

Bug: 17167296
Change-Id: I8ae0f544a8106cb91ff38c2309b8b57cbe2f2c72
indowManagerPolicy.java
2d3f9033f8803d471720be60228d9894dd385488 04-Sep-2014 Chris Craik <ccraik@google.com> Merge "Prioritize reveal clipping over Outline clipping" into lmp-dev
e83cbd451868a734bfac07ccd680d5617080b579 04-Sep-2014 Chris Craik <ccraik@google.com> Prioritize reveal clipping over Outline clipping

bug:15780987
bug:17350602

Also update docs around clipping nesting behavior,
and some Z ordering behavior.

Change-Id: Iaa204350a0adfdcbd8c4b821fb4a9c0ae22f2613
iew.java
iewAnimationUtils.java
iewGroup.java
c65e9a480ae50ea01a1aeaf2492213ecdab92c08 04-Sep-2014 Alan Viverette <alanv@google.com> Merge "Fix clip rect when drawing accessibility focus rect" into lmp-dev
eb3ca22426f2789761a5f4b25f258722a3a6b68b 04-Sep-2014 Alan Viverette <alanv@google.com> Fix clip rect when drawing accessibility focus rect

BUG: 17320910
Change-Id: I4112c2c9c10187d4b085c7eb96112fab090612ce
iew.java
ac0d317c311a9f3e298f3e67cf3422bd8c419c17 04-Sep-2014 Svetoslav <svetoslavganov@google.com> Merge "Update accessibility focused virtual view bounds." into lmp-dev
18aa9f65fd27aa3d5322dd669b52c8cc1c4d9b5a 04-Sep-2014 Michael Wright <michaelwr@google.com> Merge "Add support for SW_CAMERA_LENS_COVER." into lmp-dev
f0c758be0d27910d026bee176eef9434c15fc3cd 04-Sep-2014 Svetoslav <svetoslavganov@google.com> Update accessibility focused virtual view bounds.

We keep track of the accessibility focused virtual view in order to
draw the accessibility focus highlight. We were not updating this
virtual view when the view tree changes in a way that may affect
the virtial view's bounds in the screen.

bug:17211255

Change-Id: I69dd949b91ed9c8242521332081d50d75cac6921
iewRootImpl.java
94b88e7103b0ce7a1bb1f79156b5fdc07f1c90b4 03-Sep-2014 Alan Viverette <alanv@google.com> Merge "Remove partial support for hotspot changes on focus movement" into lmp-dev
2d72dd2e3e435e39a8d3bfeee7814fbb7f369556 03-Sep-2014 John Reck <jreck@google.com> Merge "Have destroy call freePrefetchedLayers" into lmp-dev
17035b0211a3c9d45ea46a99217a6acbe76e8fbe 03-Sep-2014 John Reck <jreck@google.com> Have destroy call freePrefetchedLayers

Bug: 17208461

There's a potential race condition between HardwareRenderer.destroy()
being called (which calls destroyCanvasAndSurface()) and the renderer
being finalized (which is what calls freePrefetchedLayers), during which
time it's possible we get a TRIM_MEMORY_COMPLETE and destroy the EGL
context.

Fix this race condition by moving stopDrawing() and freePrefetchedLayers()
into destroyCanvasAndSurface() where they should have been in the first
place.

Also, if we hit the assertion failure, dump the current state of
Caches to try and provide more context for the failure.

Change-Id: Ife0ba3562041e8b08e87e3e13640472b3004eed6
hreadedRenderer.java
a25d54ffb0a83fc1ac4517d98992a426948b7d53 03-Sep-2014 Wally Yau <wyau@google.com> Merge "New keycode definitions for TV remotes." into lmp-dev
a2327aacac0336aa549fa123e4e8342287787c86 03-Sep-2014 George Mount <mount@google.com> Merge "Make Fragment Transitions match Acitivty Transitions API" into lmp-dev
d8636ea7ca78df83d6b04088eab7853f15f3e999 03-Sep-2014 Yohei Yukawa <yukawa@google.com> API Review: InputConnection

This CL does nothing but rename some L API candidates
in InputConnection class, as per requested.

- requestUpdateCursorAnchorInfo()
-> requestCursorUpdates()
- REQUEST_UPDATE_CURSOR_ANCHOR_INFO_IMMEDIATE
-> CURSOR_UPDATE_IMMEDIATE
- REQUEST_UPDATE_CURSOR_ANCHOR_INFO_MONITOR
-> CURSOR_UPDATE_MONITOR

BUG: 17320996
Change-Id: I772c48ff18918e48a81e807b48ff907614485c09
nputmethod/BaseInputConnection.java
nputmethod/InputConnection.java
nputmethod/InputConnectionWrapper.java
nputmethod/InputMethodManager.java
f0e57e10edb0f76d1675285d352bba69838d407c 03-Sep-2014 Svetoslav <svetoslavganov@google.com> Merge "Fix AccessibilityNode's isVisibleToUser behavior." into lmp-dev
9ae9ed24aa252acbc2e6288068b991dd5291967b 03-Sep-2014 Svetoslav <svetoslavganov@google.com> Fix AccessibilityNode's isVisibleToUser behavior.

The isVisibleToUser property of an AccessibilityNodeInfo specifies
whether the user can see the source view. It is used by accessibility
services to figure out whether to focus on a view. This property
was giving a wrong value if the view is covered by another window
such as the keyboard. As a result the user hears one thing but when
double taps interacts with the overlaid window which is another thing.

bug:15938254

Change-Id: Ib9feb20ea422a24a512c47ed1234961ae0386a7f
ccessibilityInteractionController.java
iewRootImpl.java
ccessibility/IAccessibilityInteractionConnection.aidl
d780ce19201b0e0e220a3d002d903502267092c9 03-Sep-2014 Yohei Yukawa <yukawa@google.com> Merge "API Review: CursorAnchorInfo" into lmp-dev
a8a8ff000b2902eb4e187e62be39fd9535c6c839 03-Sep-2014 Alan Viverette <alanv@google.com> Remove partial support for hotspot changes on focus movement

Also removes unused x/y position and tween values on RippleBackground. The
background is now always centered within the hotspot area.

BUG: 17300399
Change-Id: I1904c9f44e6bebb2b434d2b092205edd42204263
iew.java
d379361ecb8aa31fce26e50ac0ff0b57c74e2e78 03-Sep-2014 Alan Viverette <alanv@google.com> Merge "Update pointer hotspots to scale for DPI" into lmp-dev
c03da0e7a9ef721709d51cf8a2d539a5bd8a320e 23-Aug-2014 George Mount <mount@google.com> Make Fragment Transitions match Acitivty Transitions API

Bug 17188255

Change-Id: I506a097be4010d7156caf465c95295c58612c16e
indow.java
cc24e2b6a2a429d70b75c6810a5cfd8816ce03ad 30-Aug-2014 Yohei Yukawa <yukawa@google.com> API Review: CursorAnchorInfo

This CL introduces following combinable flags as a replacement
of CHARACTER_RECT_TYPE_* constants.
- CursorAnchorInfo.FLAG_HAS_VISIBLE_REGION
- CursorAnchorInfo.FLAG_HAS_INVISIBLE_REGION

This CL also replaces #isInsertionMarkerClipped() with
flags.

Rationale:
getCharacterRectFlags() should return a set of flags, rather
than enum-like types.

getInsertionMarkerFlags() is more consistent with
getCharacterRectFlags() than isInsertionMarkerClipped().
It is also open for future extension.

BUG: 17200900
Change-Id: Ia8cbb9f6b41cd9509fc0147fd68763dfde593ffc
nputmethod/CursorAnchorInfo.java
3818c9261ceaa3a700ff984fbcd245faeede38d7 02-Sep-2014 Michael Wright <michaelwr@google.com> Add support for SW_CAMERA_LENS_COVER.

This allows for magic cover type accessories to launch the camera application.

Bug: 16034563
Change-Id: I0a46ef885737d964a1482c99f41145053d559faf
indowManagerPolicy.java
dbd6abaf5fb83b3d34978ad498839a9163f81173 27-Aug-2014 ASAZU, Hideki <Hideki.Asazu@jp.sony.com> New keycode definitions for TV remotes.

Keys which are necessary for supporting world-wide broadcast
standard or used commonly for TV/STB remotes.

Change-Id: I86fa41e17fedb8133aba6cdb5aae4d560b31ae8e
eyEvent.java
376d10e99e7db597fdff8a4e8f396161017c243c 02-Sep-2014 Alan Viverette <alanv@google.com> Update pointer hotspots to scale for DPI

Also updates the bitmap resources, which weren't scaled correctly
for their respective DPI buckets.

BUG: 16459309
Change-Id: Iedc781e2ee47a8b960390fea718cb08bcfb84ae3
ointerIcon.java
e05d4ca4dc13f2e92d6fa5ec437d6b2e8de0adde 01-Sep-2014 Yohei Yukawa <yukawa@google.com> Get rid of one redundant comparison of #mComposingTextStart

The code in question is not only redundant but also
harmful because it causes unnecessary integer boxing.

BUG: 17340578
Change-Id: Ife6e48889db80394d224297c53806105dc41d56e
nputmethod/CursorAnchorInfo.java
4d2c47206a8e1706e5f89ef73c0e50e7321bf862 29-Aug-2014 John Reck <jreck@google.com> Listener callbacks ordering fixups

Bug: 17228458
Bug: 17317816

Ensure that onStart is called prior to onCancel/onFinished if those
happen prior to the UI-thread handled start delay.

Ensure that onFinished is called if cancel/end is called

Change-Id: I23c16ea1c4f925d59d41ec5281d62dfc0c38595b
enderNodeAnimator.java
f87fcf9716c4d605a274e2a82176e32c9d5eba31 29-Aug-2014 RoboErik <epastern@google.com> Merge "Add javadoc to Window.set/getMediaController" into lmp-dev
fd63dd0ce20dbb4170d675938671f07a276ccd8f 29-Aug-2014 RoboErik <epastern@google.com> Add javadoc to Window.set/getMediaController

Fleshes out the javadoc a bit more instead of just a reference to
the description of the methods in Activity.

bug:17198774
Change-Id: I24afe1c5d9f2e46e201c84072a6b34a619867889
indow.java
abedca398334236f9f03b5af04c58d4bb00a1247 29-Aug-2014 Chris Craik <ccraik@google.com> Support Z reorder/shadows in root render node

bug:17310188
Change-Id: If2281218c458cf767d79b4d81944e2c8a23ca32c
hreadedRenderer.java
06c34e7cbed0640ec537f725a8a6652d929e322d 28-Aug-2014 Chet Haase <chet@google.com> Merge "Canceling ViewPropertyAnimator now removes pending actions" into lmp-dev
5637b7d2396636886688cf67ba1446882cc5fbfb 28-Aug-2014 Chet Haase <chet@google.com> Canceling ViewPropertyAnimator now removes pending actions

Normally, calling cancel() on ViewPropertyAnimator() will cancel any
running animations as well as any associated actions (layers and
start/end actions). But if the animation is canceled before the first
frame, these other actions are still pending and will not be canceled.

This fix also cancels these pending actions.

Issue #17296082 VPA.cancel() doesn't clear the end action

Change-Id: If104d21c1e2d64516500048a06ba217284732ef0
iewPropertyAnimator.java
4c5a27b5f667ebc7cb2b188655820ad3fddedb52 28-Aug-2014 John Reck <jreck@google.com> Merge "Animator stuff" into lmp-dev
040a7f0526532995a072a0473483e69b6575ac72 28-Aug-2014 Svetoslav <svetoslavganov@google.com> Merge "Fix live region updates." into lmp-dev
119907cd2575c56b1ebf66348b52e67aaf6a88d8 14-Aug-2014 John Reck <jreck@google.com> Animator stuff

Bug: 17228458

Change-Id: Id884a429a512f9cd2be0ed16dbd0f10e92b4440d
ardwareRenderer.java
enderNode.java
enderNodeAnimator.java
hreadedRenderer.java
iew.java
iewRootImpl.java
f14d924cd706438b52ba2bf7a698ea1645fe6399 26-Aug-2014 Filip Gruszczynski <gruszczy@google.com> Allowing isRound and outsetBottom properties to be passed to ActivityView.

We remove requirement for having display id == 0 or allow circumventing it
through a flag.

Change-Id: Ia4671614b51894393d47e681cc72718d394230f6
iewRootImpl.java
22d8a776cd5914e65797a5c17744dac15944df56 27-Aug-2014 Alan Viverette <alanv@google.com> Merge "Use bounds in screen for better A11y backwards compatibility" into lmp-dev
f3542fd63f97be96c41a10f6a42e12af66888068 27-Aug-2014 Alan Viverette <alanv@google.com> Merge "Make shadow alpha properties public, add lighting values for TV" into lmp-dev
ed6f14a20c69da3d221cc1acbaa31e74e837917c 26-Aug-2014 Alan Viverette <alanv@google.com> Make shadow alpha properties public, add lighting values for TV

BUG: 17189722
BUG: 17221975
Change-Id: I4ed477b658fec96ce69fa278f67345dab6bacaa3
hreadedRenderer.java
e39baa73079c343085bd43d677d54b86d41f8138 26-Aug-2014 Svetoslav <svetoslavganov@google.com> Merge "Fix accessiblity CTS tests (framework)." into lmp-dev
5c1b42e4f5d7307ad09d0d7ad094adf34650fb62 26-Aug-2014 Winson Chung <winsonc@google.com> Merge "Multiple performance changes to speed recents invocation/app launching time. (Bug 16987565)" into lmp-dev
04cab1bcc46b05cbb72632c53ad83943f705b494 26-Aug-2014 Svetoslav <svetoslavganov@google.com> Fix accessiblity CTS tests (framework).

1. An external contribution changed the ordering of views for
accessibility. While it attempted to fix a platform issue
for a comparator breaking transitivity, it changed the way
we order views and results in very unnatural accessibility
traversal order. It also broke CTS tets. This change tweaks
the comparator which fixes the tests and improves traversal
order.

2. If there is at least one accessibility service which cares
about windows we register a callback in the window manager
for window change notifications. We are updating the window
list on this callback. There was a case where if the service
requests window updates and immediately asks for the windows
it gets none as we have not received a callback from the
window manager yet. Now this call returns after we get the
callback in a timed fashion. This is consistent with how the
other introspection APIs work.

3. Window info objects are cached in the accessibility service
process. When putting them in the cache a cloning call was
missing resulting in some cases of clobbering windows given
to the client. For example, we get some windows, cache them,
and return these windows to the client. Now a call to clear
the cache arrives while the user processes the windows and
the client windows get clobbered.

4. Added API for checking if a window has accessiblity focus
to be consistent to the API we have to check whether this
window has input focus.

5. Removed some obsolete code.

bug:16402352

Change-Id: Ided6da4a82cc0fc703008c58a2dff0119a3ff317
iewGroup.java
ccessibility/AccessibilityCache.java
ccessibility/AccessibilityWindowInfo.java
a4ccb86ddc8f9f486aee25fb836f4aff97bf7679 23-Aug-2014 Winson Chung <winsonc@google.com> Multiple performance changes to speed recents invocation/app launching time. (Bug 16987565)

- Reverting changes to the existing thumbnail transition to prevent breaking applications
that currently depend on that transition. As a result, we need to create a new, hidden,
aspect-scaled thumbnail transition, and instead use that thumbnail to animate the
recents header so that we don't have to wait to do that inside the Recents activity.

In order for this to work, we also have to ensure that the thumbnail surface destruction
is synchronized with the application that is currently closing (when going down to
recents) or opening (when coming back up). The current thumbnail is destroyed when the
animation ends, but that can be at least 1 frame before the surface for the animating
window is destroyed. We change this by deferring destruction of this thumbnail window
to the animation that is being closed.

Especially on the way up, not having to wait for us to hide the header before doing the
transition up can save us the duration of that first animation (> 100ms).

- Other optimizations:
* No longer creating a new stack view on each transition to calculate the target rect
* Removing unnecessary call to get the thumbnail when transitioning up/down (the actual
window does its own animation.
* We reduced numerous system calls per task by adding a flag to ignore home-stack tasks
and caching the activity label and icon (and task description icon). These caches
follow the same eviction schemes as the thumbnail and icon cache.

- Also tweaked the touch slop for the nav bar swiping gesture to prevent conflicting with
tapping on home (Bug 17109581)

Change-Id: Ica697aad788051a9203edd9351c583e1cb038a71
WindowManager.aidl
8afd0f245cc0c4a0366f39f41b5f78e47ee83be3 22-Aug-2014 Chris Craik <ccraik@google.com> Create z reordering boundaries around dispatchDraw

bug:16012254

This means rendernodes with a Z will no longer be drawn at the end of
their parent's DisplayList, but at the end of the associated reorder
region (DisplayListData::Chunk).

Change-Id: Ia033fee9d9a4db567b2a8d5e90fc57a4d0a64544
LES20Canvas.java
iewGroup.java
f86cb678a5afd94505c42497817e7f63427683b9 26-Aug-2014 Alan Viverette <alanv@google.com> Use bounds in screen for better A11y backwards compatibility

BUG: 17203775
Change-Id: I9db3de6bf4a67d705489d4ca9d29efe52a36e071
iew.java
931b2e7c3a0133929f72e729e4ed8edf2b55c15e 22-Aug-2014 Michael Wright <michaelwr@google.com> Merge "Add Voice Assist key." into lmp-dev
a277db28e990d1f6f74ace0c32fe92401660a840 22-Aug-2014 Yohei Yukawa <yukawa@google.com> Remove CursorAnchorInfoRequest and related stuff

This CL removes CursorAnchorInfoRequest and related stuff
in favor of InputConnection.requestUpdateCursorAnchorInfo,
which is more easy to understand. This CL also deprecates
InputMethodManager#updateCursor and related stuff.

Rationale:
1. The spec of #updateCursor says that it provides the cursor
position in local coordinates, while the input method
requires it in the screen coordinates.
2. #updateCursor has never been enabled in AOSP, because
InputMethodManager#isWatchingCursor always returned false.
3. There has been no way to let
InputMethodManager#isWatchingCursor return true.
4. In L, InputMethodManager#updateCursorAnchorInfo is
introduced to address all the issues above.

Given that we no longer need to support #updateCursor,
CursorAnchorInfoRequest is overkill when we need to convey
just a couple of parameters.

BUG: 17185263
BUG: 17182367

Change-Id: I4a577bfd02b37b9e56c80b8b41bb25afa95dd8ef
nputmethod/BaseInputConnection.java
nputmethod/CursorAnchorInfoRequest.aidl
nputmethod/CursorAnchorInfoRequest.java
nputmethod/InputConnection.java
nputmethod/InputConnectionWrapper.java
nputmethod/InputMethodManager.java
bc070818271981df5a475666f005aa2084a2c40b 22-Aug-2014 Chet Haase <chet@google.com> Merge "Fix docs for circular reveal" into lmp-dev
dc63f7b91c1632ca9e3f8725ae5ed43e7f7dcd8b 22-Aug-2014 Michael Wright <michaelwr@google.com> Add Voice Assist key.

The action taken is dependent on whether the device is in an
interactive state, allowing for interactions to work even when the
device isn't actively being used

Bug: 16292420
Change-Id: I897f4383e7e4766c0bcb6246b41514b46e03a9ac
eyEvent.java
4c902fa56d2dc0b0f50bb2255cb511ea7e970c6e 22-Aug-2014 Chet Haase <chet@google.com> Fix docs for circular reveal

Issue #17189634 API Review: reveal animation

Change-Id: Iffcec2669368fc95b50ddcba63d0f5c552f49231
iewAnimationUtils.java
99db6030e135f0cee88408c4ec6588a6fce23963 22-Aug-2014 George Mount <mount@google.com> Merge "Add Parent Change to ChangeTransform" into lmp-dev
c94e2b393f6eba684ee2c84eaa50746fc1459d0f 22-Jul-2014 Dake Gu <dake@google.com> Add Parent Change to ChangeTransform

Bug 16460123

Modified ChangeTransform to support any pivot changes.
Modified ChangeTransform to support changes between parents.

Change-Id: I6374890dab9f3d795f334b951bdb9d51d434b8ee
iew.java
7762e8e7984c9726334149357ed941dad3a2317f 22-Aug-2014 George Mount <mount@google.com> Merge "Allow Activities to opt into using Overlay for shared elements." into lmp-dev
b89d5cc2c64112a0ff7e66e4dd3bb2114caed935 19-Aug-2014 George Mount <mount@google.com> Allow Activities to opt into using Overlay for shared elements.

Bug 17001227

Change-Id: Icc49a81357ee69abd2a15a1d1efcead298ab3fb7
indow.java
2b5d920e800d89b695f01bfe704d12f6d53902ec 21-Aug-2014 John Reck <jreck@google.com> Merge "Fix supporting modifying listeners in callbacks" into lmp-dev
04e723c1afaa8a507534d3b33aa845e2de061517 21-Aug-2014 Alan Viverette <alanv@google.com> Merge "Jump drawable state (including ripples) on view detach" into lmp-dev
d78a44576c6bac5541e04c1f38599d43c9943653 21-Aug-2014 Alan Viverette <alanv@google.com> Jump drawable state (including ripples) on view detach

BUG: 15350931
Change-Id: I09928f59fb7b9f6d87b1f5219353a41ae6b5681d
iew.java
3b27e59e1ea3b9928d2ddd0d37c0a13d83ae834b 21-Aug-2014 John Reck <jreck@google.com> Fix supporting modifying listeners in callbacks

Bug: 17179442

Change-Id: I2d64f86395c0b1befb5c10b9c696330db1c96821
enderNodeAnimator.java
94f6878bbd98753aa60fd80f5a73b5f198579b04 21-Aug-2014 John Reck <jreck@google.com> Merge "Run RevealAnimator on RT" into lmp-dev
9f44eeaedc8d95921d015f696eeb0b8acd1b8d7f 20-Aug-2014 Svetoslav <svetoslavganov@google.com> Fix live region updates.

There is a sequence of update requests that put the logic
for sending live region events in a bad state where no events
are being sent anymore.

bug:15146442

Change-Id: Id53756ddfcc835f063bf9790e53c246296f9dc6e
iew.java
291161ac3815fb853fd6af21055d60f57a869608 22-Jul-2014 John Reck <jreck@google.com> Run RevealAnimator on RT

Bug: 16894195

Change-Id: I9acffa7aecc04c68b60c67f8f8a20aa225075a42
enderNodeAnimator.java
enderNodeAnimatorCompat.java
iewAnimationUtils.java
iewPropertyAnimatorRT.java
836c0a8b949d71293c996761691e065f0651acef 11-Aug-2014 Jon Miranda <jonmiranda@google.com> Exposes style and theme data, adds developer option.

Adds support for a String[] return type in ViewDebug; and in addition to that,
the hasAdjacentMapping method can use the String array as means to map a key to
its value.

Adds DEBUG_VIEW_ATTRIBUTES to Settings so that the heavy per-view
computations only affect those who opt in. This setting is used in
CoreSettingsObserver to avoid impacting start time.

Change-Id: I8f507e4e5361414c30d247e8d9815205feb5e91f
iew.java
iewDebug.java
4a5ccead04aa5046539832434b793323d5d30298 21-Aug-2014 John Reck <jreck@google.com> Merge "Implement full View.buildLayer" into lmp-dev
3e8249568cc428296ac76c7ddce3f0382d40fe5b 20-Aug-2014 John Reck <jreck@google.com> Implement full View.buildLayer

Bug: 17152292

Change-Id: Ia3cc2aadf72fe14517f50762fc634794df51ad5a
ardwareRenderer.java
hreadedRenderer.java
iew.java
611f8f17f333f7702cd8c60e2f4908ae306a02db 19-Aug-2014 Jon Miranda <jonmiranda@google.com> Merge "Exposes style and theme data, adds developer option." into lmp-dev
8b987196ca8a030010739b50f76c1e03d6302214 19-Aug-2014 Michael Wright <michaelwr@google.com> Merge "Update MenuItem#setShortcut docs" into lmp-dev
7b69e056fde74413e2a028b504d9f526ae04ca8a 10-Aug-2014 Michael Wright <michaelwr@google.com> Update MenuItem#setShortcut docs

Change-Id: I6b73992b0c8d590e8c9884bec377c7c0c1e35720
enuItem.java
f56885d413b9910a414716c4652c26f888dac316 08-Aug-2014 Chris Craik <ccraik@google.com> Add outlineProvider attribute

bug:16871683
Change-Id: Iae9326c41872ac03d40ebeec6257522a34cbe1ff
iew.java
iewOutlineProvider.java
997aa40645a1ccdd30c88ba6d5b7bb389fcec72c 19-Aug-2014 Alan Viverette <alanv@google.com> Draw accessibility focus in View rather than ViewRootImpl

This ensures that the focus rect position is correct when running in
render thread accelerated mode. Also adds a missing call to draw the
overlay.

BUG: 16796647
BUG: 17063342
Change-Id: I377e5eaea89d3f20c8c7e82c264a0f106021d58b
iew.java
iewRootImpl.java
fb5899d6e08c231901cbaefa8156b27ff92b8801 16-Aug-2014 John Reck <jreck@google.com> Don't mangle layer paint's alpha

Bug: 15918037

Change-Id: Iecca0908c6e3b77f15807f75a8294d34975533b4
iew.java
iewGroup.java
14e1afe0d86de826ae1831d64ca00da03da86b4b 19-Aug-2014 Adam Powell <adamp@google.com> Fix a bug propagating navigation button events from ToolbarActionBar

Add a simple internal wrapper for dealing with window callback events.
This should also make working with things like action modes from
ToolbarActionBar significantly easier in later changes.

Bug 16980711

Change-Id: I2c3d7525489a21847f4af9b80f6ebf9b34b4dd58
indowCallbackWrapper.java
84a3e7aacf6dbeccf4afb36a29f2f069dca7d486 13-Aug-2014 Jorim Jaggi <jjaggi@google.com> Use different unlock animation when going to full shade

Also fixes a bug that the notify flag was not reset, and fix the
transition for the phone/camera affordance (in these cases, no
animation is needed).

Bug: 15991916
Change-Id: Idbb4fa40f86bda597cd66cc38da838ef4f75514d
WindowManager.aidl
indowManagerPolicy.java
72eb2ae21bc8d1788ffc4445b39ede87bc91cdc4 13-Aug-2014 Jorim Jaggi <jjaggi@google.com> Merge "Lockscreen launch animations" into lmp-dev
7360591bbfc91594f96b3169509d1ea5f2ab5c44 13-Aug-2014 Yohei Yukawa <yukawa@google.com> Suppress warnings of redundant calls of #updateCursorAnchorInfo

Warnings of redundant calls of #updateCursorAnchorInfo should be
suppressed at least until such redundant calls from
android.widget.Editor are addressed.

BUG: 16996008
Change-Id: I62b6acdab06178520473bd53e56e2cfb62fb17be
nputmethod/InputMethodManager.java
79dea425af818c3fe1d4edb0af7ad301cdd621a4 09-Aug-2014 Svet Ganov <svetoslavganov@google.com> Check accessibility cache integrity only on eng builds.

The checks may have false ositives and spam test logs.

bug:1689853:

Change-Id: I576600192823f159e28ecea29f888187eeceb98b
ccessibility/AccessibilityCache.java
f2546bf4235d0c875e9394986535febf068b6101 13-Aug-2014 Alan Viverette <alanv@google.com> Merge "Add API for obtaining max text length for accessibility" into lmp-dev
177f08e593a9a1a4b37ab8b92c55f7178c42c78a 13-Aug-2014 Jon Miranda <jonmiranda@google.com> Merge "Changed flow in export methods to continue through the loop if it encounters an int[] return type." into lmp-dev
aa2474d50a9c61301d973349ba3eab4e69974729 13-Aug-2014 Dake Gu <dake@google.com> Merge "fix ghost clipBounds problem" into lmp-dev
0017ef9ee1ca342863a76fd44d1cce4709a7ce67 12-Aug-2014 Dake Gu <dake@google.com> fix ghost clipBounds problem

OverlayViewGroup clipChildren=true, so that RenderNode
of GhostView will be forced clip its content to its bounds.
Because GhostView is transformed to a different location
other than (0,0), the content left/up to the bounds
is clipped out.

Introduce another clipChildren=false view between
OverlayViewGroup and GhostView.

b/16982904

Change-Id: Ia11926c78e19bffe80c3d4584a59b83b2fbee6df
hostView.java
8de4311c51229efbe2f2d0afbf298982c5cadd96 11-Aug-2014 Jorim Jaggi <jjaggi@google.com> Lockscreen launch animations

- Get rid of ActivityManager.dismissKeyguardOnNextActivity, which was
used for two different things: Dismiss keyguard from somewhere else
(not really necessary anymore), wait to actually dismiss keyguard
after the window behind is drawn. Instead, introduce
keyguardWaitingForActivityDrawn(), and change the semantics where
necessary.
- Make wallpaper_close_enter consistent with task_open_enter and the
Keyguard launch animation.
- Close the panel even on lockscreen when launching a notification.
- Block notification shade updates during the collapsing motion so
notification don't play the disappear animation immediately after
having launched a notification.

Bug: 15991916

Change-Id: I133c177b84e926c87c1a404ba93d633593fec3ab
indowManagerPolicy.java
48520210958b07d99791779abd52ba8034f3aa21 08-Aug-2014 Jon Miranda <jonmiranda@google.com> Changed flow in export methods to continue through the loop if it encounters
an int[] return type.

There are two such instances:

1. "private int[] mRules" within RelativeLayout LayoutParams.
2. "public int[] getLocationOnScreen" in View.

When I added #2, we noticed missing annotated fields/methods in Hierarchy
Viewer, but #1 also caused the same issue (mainly not exporting
alignWithParent field)

Bug: 16844914
Change-Id: I0d83a4391aa0565897cd7f0523995c97b7a4976d
iewDebug.java
029942f77d05ed3d20256403652b220c83dad6e1 12-Aug-2014 Alan Viverette <alanv@google.com> Add API for obtaining max text length for accessibility

BUG: 16736956
Change-Id: I15ffb9bf68e074adf3e0dbcd230367e115c03e3c
ccessibility/AccessibilityNodeInfo.java
99421aed1f57195254b36cf10e23c92219d72270 13-Aug-2014 Alan Viverette <alanv@google.com> Merge "Invalidate root render node when accessibility focus moves" into lmp-dev
76a1623afc170a13923b68f3256057d8adeb7937 08-Aug-2014 Jorim Jaggi <jjaggi@google.com> Preparations for lockscreen launch animations

- Update unlock animations to new spec to make the consistent with
lockscreen launch animations.
- Introduce disappearing motion for security views which runs before
we actually dismiss Keyguard.
- If a window is running the un-force-hide animation, treat as it
would have the wallpaper flag set so the wallpaper stays until
the animation is completely done.
- Run an animation on the wallpaper if the wallpaper is going away.

Bug: 15991916
Bug: 16234603
Bug: 15326120
Change-Id: I063aa4f269ddcf75b9a705e90f0c3056b541b642
indowManagerPolicy.java
1dd0e0fae2135a0aaf8c9f3686e70d3544597bec 12-Aug-2014 John Reck <jreck@google.com> Don't use libhwui to draw starting window

Bug: 16735410

Change-Id: I763c10b9d34eadcb768ad580d2387b1e825cbd53
iewRootImpl.java
f6cf1a02537959c5953553000cb7151c0554a333 11-Aug-2014 Alan Viverette <alanv@google.com> Invalidate root render node when accessibility focus moves

BUG: 16796647
Change-Id: Ibfc6ec4aa50c6354ea095a35470dd54e768d911b
iewRootImpl.java
9985aaf2688a84181f4c0efec47f51d453f76379 09-Aug-2014 George Mount <mount@google.com> Merge "Move shared elements to overlay when in a transition group." into lmp-dev
fe361d2113b8f3c54797d7bd720ca739328bd7aa 09-Jul-2014 George Mount <mount@google.com> Move shared elements to overlay when in a transition group.

Bug 15744995

Change-Id: Icf1ee603de23c7bb3bce3723cb24009e36f153d7
hostView.java
iew.java
iewGroup.java
0df0e19f2962f4b1f37f3c8838eaf593735c68f2 08-Aug-2014 Alan Viverette <alanv@google.com> Merge "Don't make ripples respond to selection state" into lmp-dev
dbcbca447564245921697c6965b77d69cb1e795f 08-Aug-2014 Alan Viverette <alanv@google.com> Don't make ripples respond to selection state

Also exports view pressed state for hierarchyviewer.

BUG: 16622634
Change-Id: I754428dd1d59f3b7450b01976a73d5151d27152e
iew.java
4937a70cc6b4a5a84a26985f177b00348523b61c 08-Aug-2014 John Reck <jreck@google.com> Don't use ViewPropertyAnimatorRT yet

Bug: 16894195

Needs more work and soak time

Change-Id: I8d38492b32780f5bba8a3439bfe3dbd30da3811c
iewPropertyAnimator.java
82a53881f1e0257f700bdca27216fc26d0c87b59 08-Aug-2014 Adam Powell <adamp@google.com> Un-hide WindowInsets#isConsumed

Bug 16874227

Change-Id: I8b6386b46e71a06890cda2d3d6d9278ab35fc700
indowInsets.java
f79aad63085445384086f921a754d872397594c1 08-Aug-2014 Alan Viverette <alanv@google.com> Send accessibility click event after calling click listener

This ensures that any state changes made by the click listener are
correctly reflected in the accessibility event.

BUG: 16847704
Change-Id: Ib0a3b3cd5879bb77c2cd3d97e923cdfa31c8051a
iew.java
74cf7e6a25c6d7b331c231b7bc2512044f9d2950 07-Aug-2014 Chris Craik <ccraik@google.com> Cap scales used for tessellation with minimum and maximum

bug:15615144
Change-Id: I3e833864af3a7b34e444bd13db34b6c90496a8b6
LES20Canvas.java
enderNode.java
dbed893ba88b76f88ea51d8666653458955cdc67 07-Aug-2014 Alan Viverette <alanv@google.com> Preserve surface insets when view layout is updated

Also makes canvas save & restore in threaded renderer a little safer.

BUG: 16654228
Change-Id: Ie0d49450ed408cffd0b859c08e524b6f904c77ca
hreadedRenderer.java
iewRootImpl.java
a426445dfdab43886dd894f2ba8a1d55bfcbb278 29-Jul-2014 Alan Viverette <alanv@google.com> Separate tint and tintMode properties

BUG: 16054922
Change-Id: I820fb857b671faf9eb27612e470e820c5c4cd6b5
iew.java
3f145a2f958320766ae9240c7a57debc20d578aa 23-Jul-2014 Michael Wright <michaelwr@google.com> Add supported refresh rate to displays

Change-Id: I51231dd6dd231d57dd1ac499349d6335121f07d5
isplay.java
isplayInfo.java
indowManager.java
ce0c13a169931e757b98d0f40239c508caa237bd 30-Jul-2014 Michael Wright <michaelwr@google.com> Mark all Meta combos as system combos

Also make a meta-tab a recents accelerator.

Bug: 14066931
Change-Id: Iac6aab276e4e16d5f70c92a5a03172bd81559afa
eyEvent.java
01e840ff9441e005153d799e71d65b38bcb21902 27-Jun-2014 Michael Wright <michaelwr@google.com> Add resize method for virtual displays

Change-Id: I2632fc56c2d2cba356379e42f5c1a3e283b11d1e
urfaceControl.java
e4cf152cb766784b514f99caf82da5648e5de358 05-Aug-2014 Chris Craik <ccraik@google.com> Move clip bound execution into drawChild()

bug:15698973

This makes native and java implementations match up in the sequence of
clip vs applying other properties / draw calls.

Change-Id: Ia75e00c5b42f81ecd516722ef1c5233d483e0c97
iew.java
iewGroup.java
c946f14a67f36d398f30040976ec6e7baf2643ac 05-Aug-2014 Svet Ganov <svetoslavganov@google.com> Properly update accessibility manager state.

Applciations that fire accessibility events have to first check
it accessibility is on and then fire the event. If the app fires
an event when the feature is off an exception is thrown. However,
due to the way accessibility state is pushed to the local
accessibility manager it was possible that the app checks that
aaccessibility is off, fires an event, then the state of the
local manager changes by the time the event is propagated up
the view tree and an exception is thrown. This is a regression.

We really want this exception to prevent apps sending events
across processes if accessibility is off, so now the state
we get from the system manager service is applied via a
message so if the app checks that accessibility is off, then
it will remain off (locally) until the event is propagated.

bug:16672964

Change-Id: Icf5d1b1bdff87b58f285f0d9e1a098552513bbe8
ccessibility/AccessibilityManager.java
6efd17588bc29b1ff37143d6627f04309b1a0d7d 04-Aug-2014 Chris Craik <ccraik@google.com> Set default outline alpha to 1.0f

bug:16795461
Change-Id: I7ccecee84b47a2bbf91fc11ad3005160f913ba77
iew.java
iewOutlineProvider.java
6c0665fd0f7717dc3301b0612860a5007d4ba2f3 01-Aug-2014 Chet Haase <chet@google.com> Give disappearing children a chance to recreate DisplayLists

Views which are on the secondary "disappearingChildren" list in a
ViewGroup can be displayed and animated, but are unable to properly
update their underlying DisplayLists. This change processes these
children the same as other children in a ViewGroup, enabling changes
in those children to be reflected in their DisplayLists.

Issue #11551606 disappearing views don't invalidate/redraw correctly

Change-Id: I8d016ada7b73f6a5e74c2f21c979c0b6f84703b1
iewGroup.java
8e554924c527183962fc908c5f916f390f806c74 01-Aug-2014 Chris Craik <ccraik@google.com> Merge "Add outline alpha" into lmp-dev
77b5cad3efedd20f2b7cc14d87ccce1b0261960a 31-Jul-2014 Chris Craik <ccraik@google.com> Add outline alpha

bug:16140822
bug:16566746

This allows background drawables to alter the opacity of a shadow
being cast with their own alpha values.

Change-Id: I49698cc7c1bf4b2b55ffe2f82899543ca62bc61c
enderNode.java
iewOutlineProvider.java
68f96d8db5e5e701b6a12b5cddecc985e56a26c6 31-Jul-2014 George Mount <mount@google.com> Add differentiating transitions for returning/reentering.

Bug 16550363

Change-Id: I85f9a8bcbc92ce048d06b36579bb05893534f7f8
indow.java
a87863a8bddb033ca9ace11e7d78932d70d08ce3 29-Jul-2014 Sander Alewijnse <salewijnse@google.com> Fix deadlock window manager and device policy manager.

Removed all communication from wm to device policy manager.
Added initialization of cache in wm by dpms.

Change-Id: Ifa0b8bfcd625464b156d5cc0fb66d342deda1c27
WindowManager.aidl
af4d04cab6d48ae0d6a5e79bd30f679af87abaad 29-Jul-2014 Chris Craik <ccraik@google.com> Use RoundRect clipping for circle reveal animation

bug:16630975

Also, remove inverse clipping feature from reveal animator.

Change-Id: I770a4eb48cd123b0ca0f39d16a0f3eefd1be3653
enderNode.java
enderNodeAnimator.java
iew.java
iewAnimationUtils.java
5e1565ead6dbb7d5c414522591f61b16a23de1c3 30-Jul-2014 Alan Viverette <alanv@google.com> Enable hardware rendering for system process

Also enables hardware rendering by default on windows created
without a parent activity (e.g. by services).

BUG: 16240470
Change-Id: I906d48cb07af50fa02dae4f4ecdb5e65211fc6ef
indowManagerGlobal.java
0615026ba15d7d7a68d0a191d449da47a1ceabea 29-Jul-2014 Jon Miranda <jonmiranda@google.com> Merge "Exposed getLocationOnScreen, added formatToHexString method." into lmp-dev
4597e9806948256e82b9f1cdaa7019cbbd912668 29-Jul-2014 Jon Miranda <jonmiranda@google.com> Exposed getLocationOnScreen, added formatToHexString method.

In order to use the ExportedProperty annotation, I needed a public non-void
method which is why I created a new "public int[] getLocationOnScreen()."

The formatToHexString method is used to convert an int or byte to a hex string
prefixed with "0x". I set the value to true on these flags: mGravity,
mPrivateFlags, mSystemUiVisibility, mViewFlags, mGroupFlags, mMarginFlags,
and flags.

Change-Id: I5914992ba19b80643dfcc6caa487398452e18cbc
iew.java
iewDebug.java
iewGroup.java
indowManager.java
7299bc1305db0de9531b0d875769735a0ebfa2bd 29-Jul-2014 George Mount <mount@google.com> Merge "Allow a "ghost view" that paint a different view from the overlay." into lmp-dev
807e40c55cd74004ecc2392f8655fb89b3bb5304 09-Jul-2014 George Mount <mount@google.com> Allow a "ghost view" that paint a different view from the overlay.

Bug 15744995

The ghost view doesn't route touch events, but hides another
view in its normal parent, and paints it as a child of another
ViewGroup or ViewGroupOverlay.

Change-Id: I352e14c366ccfb7303cee1dbff8563c673fd12ff
hostView.java
iew.java
e411fdfa4c131cfd1cac14e9e1be1ae9e40cc2a5 28-Jul-2014 Jorim Jaggi <jjaggi@google.com> Remove WindowManager.LayoutParams.TYPE_KEYGUARD (1/2)

Change-Id: I5d234dc4383bbf205bde1a0e7f1e8266fc37d13a
indowManager.java
68eccdade2aad22b7eb34a28572c204dcd54f7b9 07-Jul-2014 Riley Andrews <riandrews@google.com> Add cursor flags into SpriteController to suppor async cursor updates.
- This is fairly blindly taken from nvidia's implementation.

Change-Id: I825ecbd9cb4b394793dce079591b37efca546bbe
urfaceControl.java
1c7a170fa3f571b48bb8ab03287db8057017126f 28-Jul-2014 John Reck <jreck@google.com> Merge "Avoid calling non-final methods in ctor" into lmp-dev
aae9f3bf17616a8fc31f4bc5a29d1e0c33961876 28-Jul-2014 John Reck <jreck@google.com> Avoid calling non-final methods in ctor

Bug: 16239227

Avoid potential issues in views that override invalidate() but
are not prepared to have overridden methods called prior to their
ctor

Change-Id: Ic2574bdfea454451d6881c7e27a6474dc4dbc07c
iewGroup.java
30794944d151ac17af6ce300747dbd9ce245929e 28-Jul-2014 John Reck <jreck@google.com> Throw IAE on invalid scale

Bug: 16565964

Change-Id: I0cc35c532b42433381e1ae7f350c95ecbb4d09c3
enderNode.java
a753f4c6cb8558795e673df1896532cd148781e2 24-Jul-2014 Chris Craik <ccraik@google.com> Move ClipBounds to native

bug:15698973

Also simplifies RenderNode LTRB properties

Change-Id: I09263a697b71d325a46b57cd5250a2b165f251c8
LES20RecordingCanvas.java
enderNode.java
iew.java
iewGroup.java
a4725efd0bfa52cbddf6ca587d37fc4ebcbfaf72 24-Jul-2014 Svetoslav <svetoslavganov@google.com> Improve the window query API performamce.

We are caching the window data in the accessibility service process.
When windows change we were sending the dalta of the windows the
service knows about. To make this work when the app asked for all
windows we had to call into the system as new windows may have
appeared. This was slow.

Now we are telling the service some windows change and if it gets
the windows we cache them. We call into the system only on a cache
miss and evict all windows from the cache on window change event.
We do not evict the nodes of the window as the former may have
just moved. If views in a window change they fire accessibility
events that trigger the correct eviction.

Change-Id: I586a72a2497b0d44a75288fa758e7e88817f3300
ccessibility/AccessibilityCache.java
ccessibility/AccessibilityInteractionClient.java
f7c42c506796b8d828fbd1233edb9752a1f50e12 24-Jul-2014 Svetoslav <svetoslavganov@google.com> Updated accessibility nodes not properly cached.

We have an accessibiliy node info cache in the process of each
accessibility service. Sometimes the cached node changes and
in this case we have evict from the cache the sub-trees rooted
at children that are no longer present. There was bug where if
none of the children is present anymore we did not evict their
sub-trees.

Also the verification logic was not stopping if a duplicate
node is seen potentially getting into an infinite loop.

bug:15729762

Change-Id: I7adf4f0a1bde07b385556d9acdded5059231f1f3
ccessibility/AccessibilityCache.java
058fc640017c90120c599d378a4cbc55668b05b7 24-Jul-2014 Chris Craik <ccraik@google.com> Connect shadow style attributes to renderer

bug:15859361

Moves lighting info out of StatefulBaseRenderer, since it's not useful
at record time, and only used by OGLR.

Change-Id: I7ab065d02d9304afad1dc4c48597a7a621366f8e
hreadedRenderer.java
d2a1eec400128f39e1b223a720a88dbd395f3e6e 09-Jul-2014 Sander Alewijnse <salewijnse@google.com> Add Device Policy API to disable screen capture.

WindowManager will set secure flag on SurfaceControl for
all windows of a flagged user to prevent screen capture.
API is consistent with the camera disable API.

Change-Id: Ib180f67f1ad827b6f4aca2af615274256cce58f4
WindowManager.aidl
c403a3908940ff9c7436c0153f941bec693bb39d 23-Jul-2014 Chris Craik <ccraik@google.com> Merge "Make setter methods on Outline call setEmpty() based on params" into lmp-dev
0645128b80621edee70f8cab4afb208fe0c26bec 21-Jul-2014 Chris Craik <ccraik@google.com> Make setter methods on Outline call setEmpty() based on params

bug:16142564

Additionally, better define behavior around null outline providers:

A view with an empty outline, and setClipToOutline=true will not be
rendered, though one with a null outline provider
(and thus no outline) will be.

Change-Id: Ic9549841b107b2eb51b417c66058a0cd69dd89eb
enderNode.java
f1489c75f6ed73a2e2c7b437c1397ab8334b4386 22-Jul-2014 Adam Powell <adamp@google.com> Merge "Allow focusable in touch mode views to ignore touchscreen focus blocks" into lmp-dev
970d4132ea28e748c1010be39450a98bbf7466f3 19-Jul-2014 Jeff Brown <jeffbrown@google.com> Allow dreams to control screen state and brightness.

Added setDozeScreenState() and setDozeScreenBrightness() methods to
DreamService. The values specified here only take effect once
startDozing is called and can be changed while dozing.

This required some significant rework of the display power controller
but the result seems quite nice and better represents the policy
we want to apply.

Changed the test dream a little bit to make it flash the screen
every minute using the new functions.

Bug: 15903322
Change-Id: I83bcc34503f1b87727d2b2b3c0ef08507f9f0808
isplay.java
88c11754c19a6bbdbf9f822d928761d23029f31f 22-Jul-2014 Adam Powell <adamp@google.com> Allow focusable in touch mode views to ignore touchscreen focus blocks

Bug 16284253

Change-Id: I7cddf1988b0c24ae3050a13d2ce6fb3143d8aade
iew.java
iewGroup.java
4f64c048505a432e549ccb756634ecebf28f9e80 22-Jul-2014 Alan Viverette <alanv@google.com> Clean up view tinting APIs, tileModeX/Y attribute docs

BUG: 16400590
BUG: 16403307
Change-Id: Ie924815a39eb0e683d1982b08ec478ed3edbfb7b
iew.java
ac89416c77a1fab6921aa31a999ccefc1223be7c 21-Jul-2014 Alan Viverette <alanv@google.com> Always apply surface insets

Change-Id: I9d8ad0c7fcf7a1016e01c2332f45614da5d2cf0c
iewRootImpl.java
ad8f1673f6f28fd9187b21a0a683208ad27bb87f 19-Jul-2014 Yohei Yukawa <yukawa@google.com> Merge "Add FLAG_CURSOR_ANCHOR_INFO_IMMEDIATE support in TextView" into lmp-dev
ff328ae7438a9c5c2fe49c286833a30e25015e63 17-Jul-2014 Yohei Yukawa <yukawa@google.com> Add FLAG_CURSOR_ANCHOR_INFO_IMMEDIATE support in TextView

This CL adds an initial support of
CursorAnchorInfoRequest#FLAG_CURSOR_ANCHOR_INFO_IMMEDIATE for
TextView.

This implementation is not highly optimized yet, but it just
works as it should.

BUG: 16379288
Change-Id: Iecb32b4c4dcd7db14d8b2a0d929e1d64e161bc58
nputmethod/BaseInputConnection.java
c01bd1167a1b08d59557f214ddc48cf24d3b8d0a 19-Jul-2014 John Reck <jreck@google.com> Return Animator instead of ValueAnimator

Change-Id: I29a7cfdc7ffbb3a4d33f9e64f9d7ca791f5c947c
iew.java
iewAnimationUtils.java
31ba192dd201df2cad96a8c503f730130ab0d80f 18-Jul-2014 Chris Craik <ccraik@google.com> Tweaks to outline API

b/15283203
b/16142564

Remove boolean return value chaining, as it's redundant with
the data in the Outline itself.

Change-Id: I3116e57cd1b35c98b74e95195117edd7e39fb2df
iew.java
iewOutlineProvider.java
7bf379c8af399626d5b8b568fe1d4f96f56badcc 16-Jul-2014 Dake Gu <dake@google.com> ActivityTransition: fix wrong width/height applied to sharedelement.

transform screen position/size to position/size in parent of sharedelement.
fixed bug of transformMatirxToLocal() and transformMatrixToGlobal() that gets

Change-Id: I4c7b12f1ada7004ab7594961df4079be4ca4c909
iew.java
iewRootImpl.java
d3de42cae84fadfa1befd082a2cf1bf72f9ad82a 15-Jul-2014 John Reck <jreck@google.com> Add RT-enabled reveal animator

Bug: 16161431

Also re-writes RevealAnimator to avoid using any listeners internally,
removing the logic around shadowing the update listeners.

Change-Id: I6ed8126398eed971a87f20bccb7584c9acafbb6c
enderNodeAnimator.java
enderNodeAnimatorCompat.java
iew.java
iewAnimationUtils.java
5dc219142a756d57355b511c8f8ab913c01710da 18-Jul-2014 Jeff Brown <jeffbrown@google.com> Add new Display.STATE_DOZE_SUSPEND power state.

Change-Id: Ia62f4f0d25234281dc600d0b7f08b3c6a312db7a
isplay.java
urfaceControl.java
6648dded69439eae6197450c1689b73b02493796 16-Jul-2014 Narayan Kamath <narayan@google.com> Fix broken locale related assumptions in TextServicesManager.

startsWith is a bogus check unless languages match. Also, don't
assume 2 letter languages.

bug: 10090157
Change-Id: I8adda61bddc465aac261c0ce2023fa9606affe1b
extservice/TextServicesManager.java
6712495297a549b546ba781c6858c18f4cc9484b 17-Jul-2014 Chris Craik <ccraik@google.com> Merge "Simplify ViewRootImpl's AttachInfo usage" into lmp-dev
d36a81f392946bbc84a5a97f911a337b8ed6770b 17-Jul-2014 Chris Craik <ccraik@google.com> Simplify ViewRootImpl's AttachInfo usage

Change-Id: I4230e95ed5a52c8c5fae7d7b8d58827925db13ba
iewRootImpl.java
b72be59a6a5ca5fae3ede2470f1662598098b666 17-Jul-2014 Adam Powell <adamp@google.com> Add nested pre-fling for nested scrolling

Nested pre-fling allows a nested scrolling parent to consume a fling
operation before the child view does. If a parent has been consuming
nested pre-scroll events in a particular direction, this is generally
a good indication that it should also consume the resulting fling at
the end.

Bug 15538504

Change-Id: I88e8753a96c9b41815c3be530cafab8345164e64
iew.java
iewGroup.java
iewParent.java
iewRootImpl.java
889fc94ffa70633e510e812b9da86723f4eee384 17-Jul-2014 Chris Craik <ccraik@google.com> Merge "Add accessibility text contrast setting" into lmp-dev
cce47eb580d666ead1f6095d1e3b65233592bbaa 17-Jul-2014 Chris Craik <ccraik@google.com> Add accessibility text contrast setting

b/14624452

Adds a feature which draws all text (in the HW accelerated standard
path) in a high contrast mode. Text is drawn at full alpha, and either
white or black (depending on its original color) with a starkly
contrasted outline beneath it.

Change-Id: I943f624b6367de35367cced3b2a8298f2bc62377
LES20Canvas.java
iew.java
iewRootImpl.java
ccessibility/AccessibilityManager.java
a51cab9288fea0a8c8ce9a4ccdb834a11984b32c 17-Jul-2014 Alan Viverette <alanv@google.com> Fix software dirty region, don't add insets to software windows

BUG: 16324957
Change-Id: Ia99619b7c314fbfce60a5ef8ac16b54680332899
iewRootImpl.java
514a8b88f7a57fd348dde193ee9ced0403deebd4 17-Jul-2014 John Reck <jreck@google.com> Merge "Fix root RenderNode damage calculation" into lmp-dev
0a97330b98dd633b58dcfff405d94476c89e867d 16-Jul-2014 John Reck <jreck@google.com> Fix root RenderNode damage calculation

Bug: 15888445

Change-Id: I281ec9271c9889673dcdfcb6d31e341a7b47b7de
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
7068c39526459c18a020e29c1ebfa6aed54e2d0f 14-Jul-2014 Alan Viverette <alanv@google.com> Fix hotspot movement on focus change

BUG: 15726988
Change-Id: I97f88e5f7e404ecfcd5c254fddd18c8f6616064e
iew.java
57774a82f02c225941f81cf89c7a03bf899df2c1 16-Jul-2014 Alan Viverette <alanv@google.com> Ensure surfaces with insets aren't rendered as opaque

BUG: 16312821
Change-Id: Ie3012c34712b7bf91a2086a6b8c922d0ebfff2e6
hreadedRenderer.java
bd9152f6ee156ee473f05f6f05f238605996fca4 01-Oct-2013 Fabrice Di Meglio <fdimeglio@google.com> Update DatePicker widget and its related dialog

- the old DatePicker widget is still there for obvious layout compatibility reasons
- add a new delegate implementation for having a new UI
- use the new delegate only for the DatePickerDialog (which does not need to be
the same)
- added support for Theming and light/dark Themes
- added support for RTL
- added support for Accessibility
- verified support for Keyboard
- verified that CTS tests for DatePicker are passing (for both the legacy and the
new widgets)

Also added a new HapticFeedbackConstants.CALENDAR_DATE and its related code for
enabling day selection vibration

Change-Id: I256bd7c21edd8f3b910413ca15ce26d3a5ef7d9c
apticFeedbackConstants.java
bb742462781a73bb25516067c8fe6311c1c8a93e 08-Jul-2014 Craig Mautner <cmautner@google.com> Launch activity behind launching task.

Use ActivityOptions.makeLaunchTaskBehindAnimation() to launch tasks
behind the current task. Includes animations for launching and
launched tasks.

Fixes bug 16157517.

Change-Id: I0a94af70b4748592e94673b958ee824cfb3d7ec0
WindowManager.aidl
49a22e82025ea947d81681a0abb7ef00600eac3b 13-Jul-2014 Alan Viverette <alanv@google.com> Add window elevation for dialogs, clean up surface insets API

BUG: 13211941
Change-Id: I9d605d0b2fb24f9bf8e73fbecd520b6b52ae5751
iewRootImpl.java
indowManager.java
550116576cce028d3c435f7c3ae9f6e3b92b5cf2 10-Jul-2014 RoboErik <epastern@google.com> Add API to set a default session in Activity

We may have multiple remote sessions at once so an app needs a way
to specify a default session to route media and volume commands to
when its activity is in the foreground. This adds an api that works
in parallel with the default stream api on Activity.

bug:15727927
Change-Id: I5b67cb3e20647f9437d90aa65be63efe8c7865cf
indow.java
58c42c3596a2b79184c9a6b7beffc6e94cce112c 13-Jul-2014 Alan Viverette <alanv@google.com> Specify light and shadow properties in theme

BUG: 15859361
Change-Id: I65c9aa8c7ad7a709504c879d96158efba040d3ce
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
7b7ca3cdf25bee73aa9e58aaaf6ce75fe81bd045 11-Jul-2014 Chris Craik <ccraik@google.com> Disable setOutline() functionality, pending full removal

bug:15283203
Change-Id: Ibf127fecfcda835117c6087180c64f622b3041e4
iew.java
1c35b08c9308adfc8dde562f97b29ca6d5d21dcf 12-Jul-2014 Adam Powell <adamp@google.com> Add ViewGroup#getClipToPadding()

It's kind of silly that we've gone this long without a good way to
query this since it makes writing custom views that properly handle
EdgeEffects, etc. a real pain.

Change-Id: I08e1cdf9ec7b8ec3c287c22a5aa19d07a166a4e0
iewGroup.java
685206cb03c086fd7282df03f58f6b6b22578cd3 11-Jul-2014 Chet Haase <chet@google.com> Merge "Optimize gatherTransparentRegions to account for transparent bg"
2b45a16b8b0f46090c0e612ef8a3d6084997fc27 11-Jul-2014 Chet Haase <chet@google.com> Optimize gatherTransparentRegions to account for transparent bg

gatherTransparentRegions() incorrectly takes the background into account
even when that background drawable is a completely transparent ColorDrawable
(which you can get by calling View.setBackgroundColor(0)). Checking
the opacity of the drawable allows us to ignore drawables that are not
visible.

Issue #13465427 Performance suggestion: View.setBackgroundColor(0) should set background to null

Change-Id: Ic552bf6a07cc9229fd32febc3ada73a0701cad0c
iew.java
bb9f624252174afa49359ed2a90ec06113adff35 11-Jul-2014 Yohei Yukawa <yukawa@google.com> Use a bit more descriptive name for a parameter

The current parameter name "index" in
CursorAnchorInfo.Builder#setComposingText is a bit hard
to understand.

This CL names it with "composingTextStart" to clarify its usage.

Change-Id: I504939b8d2b48875d8baa9630b5a4f04a5d66dbe
nputmethod/CursorAnchorInfo.java
f3de5a2e34412710234cd1f5f3933ce266ea0e49 09-Jul-2014 George Mount <mount@google.com> Remove modified APIs

viewName was changed to transitionName and
MoveImage was replaced with ChangeImageTransform + ChangeBounds.

Change-Id: I5e0b0250ef3c926d1c3de212de3a5e1503e89b86
iew.java
d66a8719b019e948d1dfbda2dace8762189e298f 11-Jul-2014 Leon Scroggins III <scroggo@google.com> Merge "Simplify Shader.setLocalMatrix."
ab87983a11e0bd2e08d752d86d5e945ea7d39a04 09-Jul-2014 Leon Scroggins III <scroggo@google.com> Simplify Shader.setLocalMatrix.

Previously, calling setLocalMatrix updated any Paint that had the
Shader attached. This depended on deprecated behavior in Skia. Use
new Skia APIs, and do not modify any Paints that use the Shader.

In addition, update callers to call setShader (again) after modifying
the Shader.

Sample app at ag/499573 for testing.

Depends on I673801444f0a8fd4f192b5b7effdde1aa83e702b in external/skia.

BUG:14315916
Change-Id: I3c3316377874e89fccc85afb864bc038b0ef3890
iew.java
7c940e94c97ce3c86f2d54ad567127fc11cc8074 11-Jul-2014 Yohei Yukawa <yukawa@google.com> Merge "Polish new IME API for L part 2: CursorAnchorInfo"
0023d0e0c4f5339b299d1eacbd4e7181c2fd271f 10-Jul-2014 Yohei Yukawa <yukawa@google.com> Polish new IME API for L part 2: CursorAnchorInfo

This CL addresses feedbacks from internal customers for new
input method APIs that are mainly used for physical keyboard
support in L.

For performance reasons, #onUpdateCursorAnchorInfo is not called
back by default and each input method has to enable this
event notification explicitly whenever fine-grained character
locations are needed.

In L-preview, InputMethodSession#setCursorAnchorMonitorMode was
introduced for this purpose. However, we got several feedbacks
to be addressed.
- The effect of #setCursorAnchorMonitorMode is not preserved
during focus change. IMEs need to call
#setCursorAnchorMonitorMode every time when #onStartInput is
called. This is tricky and hard to understand.
- As #onUpdateCursorAnchorInfo is a new API, not all
applications/text editors have supported it. Therefore IMEs
can't always rely on it. However, there is no way to query
if the attached target is supporting this new API or not.
It would helpful for IME authors if we can provide a
reliable way to query if the attached input target is
supporting the new API or not.

In order to address these issues, the triggering method has
moved from InputMethodSession to InputConnection in this CL,
as an analogy of existing InputConnection#getExtractedText API,
which has provided similar functionality including optional
reactive event callbacks from the application to the IME.

BUG: 15812658
BUG: 16118603
Change-Id: I3c6b69bd9d79b199afe68d838f25effa6048e5cc
nputmethod/BaseInputConnection.java
nputmethod/CursorAnchorInfoRequest.aidl
nputmethod/CursorAnchorInfoRequest.java
nputmethod/InputConnection.java
nputmethod/InputConnectionWrapper.java
nputmethod/InputMethodManager.java
e34560b21989eea54a139a0586d156ba573cc2ea 10-Jul-2014 Alan Viverette <alanv@google.com> Add accessibility action to open power long-press dialog

Also fixes an infinite recursion bug in the WindowManagerService
implementation of WindowManagerInternal.

BUG: 16129909
Change-Id: I4f9d32f4e6c3ad460652c5e5271540fa5032a1f5
indowManagerInternal.java
indowManagerPolicy.java
ff0d298adb4a91499779fece33e97e1c4d8cea32 11-Jul-2014 Adam Powell <adamp@google.com> Add API to block focus in the presence of a touchscreen

For the sake of devices with touchscreens and optional keyboards, add
the touchscreenBlocksFocus attr and associated get/set methods to
ViewGroup. This will act much like FOCUS_BLOCKS_DESCENDANTS, but only
if the context reports that a touchscreen is present. This allows an
app to define much coarser-grained block elements for focus instead of
navigating between each individual (normally) focusable element, on
the theory that the readily available touchscreen or other keyboard
shortcuts allow for more fine-grained interaction. Keyboard focus
navigation thereby becomes more efficient at a coarse level.

Bug 13987814

Change-Id: Ie652b8845122a59046e96ad6074b3de163779adc
iew.java
iewGroup.java
0b01e7fc58cdde00d8350285a3386c4209b72d78 08-Jul-2014 Yohei Yukawa <yukawa@google.com> Polish new IME API for L: CursorAnchorInfo

This CL allows application authors and input method authors to
communicate with each other more precisely on the visibility of
insertion marker and composing characters. Now we can describe
the situation where the coordinates of them are available but
they are overlapped by other UI elements.

This change is based on feedbacks from internal customers of
this preview API.

Change-Id: I82eba0e844a6f8b99ba11a68fad272399034cc24
BUG: 16118303
nputmethod/CursorAnchorInfo.java
nputmethod/SparseRectFArray.java
6bdc9bae74be594a75fff744c72755560e475396 10-Jul-2014 Jorim Jaggi <jjaggi@google.com> Merge "Add glyph rerasterization hack for SystemUI."
362dd6d632f0eb63de4edf4a6eec281342391d9f 09-Jul-2014 Jorim Jaggi <jjaggi@google.com> Add glyph rerasterization hack for SystemUI.

Change-Id: I39d84e981b828b501801349d7a5e70a089b5f14e
ardwareCanvas.java
503dca6f58b9c774165dfe270bc1bc3bebac64f5 10-Jul-2014 Alan Viverette <alanv@google.com> Merge "Add API for specifying popup window shadows and shadow insets"
ccb11e183763db5cbaca96abe461adf480ed8e44 09-Jul-2014 Alan Viverette <alanv@google.com> Add API for specifying popup window shadows and shadow insets

BUG: 14569120
BUG: 13211941

Change-Id: Ia21596b25a0471344d42d59377074f67fce00042
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
indowManager.java
eea0b8b051e916051d0d09da3f41f9ec4d508bff 08-Jul-2014 Yohei Yukawa <yukawa@google.com> Fix inconsistencies in CursorAnchorInfo#equals

This CL addresses some inconsistencies found in
CursorAnchorInfo#equals.

- #mComposingText is now taken into consideration when
compared with other instances.
- NaN is now treated as if it was just a number in
CursorAnchorInfo#equals if and only if NaN is used in
-- #mInsertionMarkerHorizontal
-- #mInsertionMarkerTop
-- #mInsertionMarkerBaseline
-- #mInsertionMarkerBottom.
This is useful if we want to use NaN as a marker to
indicate that no value is specified.

Change-Id: Ibff31bc34b9d488731b294ad38240c567a06b627
nputmethod/CursorAnchorInfo.java
bf655982f8b05ee6aa3a35cf4581a6849d846b25 09-Jul-2014 Yohei Yukawa <yukawa@google.com> Fix regressions in existing constructors of TextInfo

This is a follow up CL for Ib58ece68dee4c6187d469049,
which unexpectedly changed behavior of existing public
constructors of TextInfo class.

BUG: 15869548
Change-Id: If5837eb771d78cc24f4d68079009eb98a5641db7
extservice/TextInfo.java
dcba6725e8b9d3eba9ad7a01258d6aa974feafba 08-Jul-2014 John Reck <jreck@google.com> Fix layers lifecycle issues

Bug: 16118540

Fix an issue where we could have a reference to a Layer after
the GL context was destroyed

Change-Id: I7bfd909d735ca6b942ebe188fc10099422eb6d95
iew.java
83601538918620e63f5a765d3eaab3a63494b454 08-Jul-2014 John Reck <jreck@google.com> Revert "Fix destroyHardwareResources"

This reverts commit bac48c4d0c6f71f67074a430cd365ea2e15924b8.

Change-Id: Iba8b729d5e91ca31976fc2bdf9c1dd5fdb19de9a
hreadedRenderer.java
iew.java
7f87e8acbbe02cb28af35f9f6dde09e700d7c5d2 08-Jul-2014 Chris Craik <ccraik@google.com> Merge "Query outline on background size change"
0f632046ddb26740aff356ef21b374521912075b 08-Jul-2014 Chris Craik <ccraik@google.com> Query outline on background size change

Background bounds are updated out of sync with View bounds, so query
as they change.

Change-Id: I9c94df17bac42dfcd4bb93b31903b59ebb58204b
iew.java
ec0c92548071801c81e02ca72b9864739e1c080c 08-Jul-2014 John Reck <jreck@google.com> Fix destroyHardwareResources

The UI thread needs to know whether or not the display list is
valid, so bring back View.destroyHardwareResources and instead
have the native side assert that View did the right thing

Change-Id: I4f8dee6e9c13ec7ab520becdc5cfe20e92a76f8f
hreadedRenderer.java
iew.java
fccbff5f021a6f95fe1c18f55866545c767ef8eb 08-Jul-2014 Alan Viverette <alanv@google.com> Add API on AccessibilityNodeInfo for retrieving TextView error

BUG: 11155198
Change-Id: Ie01b92e1071ff584b360cfa3ece4320ad05e4aae
ccessibility/AccessibilityNodeInfo.java
7f7bd3c705570588a9d2d4f1bda55b4cc9e1b446 05-Jul-2014 Nick Kralevich <nnk@google.com> am 89c9c67a: am d92ab153: am a6336747: Merge "Fix a copy/paste typo in ViewPropertyAnimator"

* commit '89c9c67a33abd2f9ef9f160c6fae73364e2b8c4f':
Fix a copy/paste typo in ViewPropertyAnimator
89c9c67a33abd2f9ef9f160c6fae73364e2b8c4f 05-Jul-2014 Nick Kralevich <nnk@google.com> am d92ab153: am a6336747: Merge "Fix a copy/paste typo in ViewPropertyAnimator"

* commit 'd92ab153a3a33dcd1304661a9929112ab0b40d5a':
Fix a copy/paste typo in ViewPropertyAnimator
a6336747a42fa5b64f82b7fe57ddf614d1fda9b2 05-Jul-2014 Nick Kralevich <nnk@google.com> Merge "Fix a copy/paste typo in ViewPropertyAnimator"
4cce48e63fe9d63bac1f5a3b43ebb3ec6a1a730b 02-Jul-2014 John Reck <jreck@google.com> Merge "Fixes to startDelay"
8d8af3c1b768d590754d657a7d1242dcb462454b 02-Jul-2014 John Reck <jreck@google.com> Fixes to startDelay

Bug: 15991758

Don't update the UI thread with final value until after
startDelay

Change-Id: Ie8bffb5a3ace353ec1d82943a4efcbd01c42c28f
horeographer.java
enderNodeAnimator.java
enderNodeAnimatorCompat.java
iewPropertyAnimatorRT.java
238010f056433d64e6eb27c45ab8124563651eba 01-Jul-2014 George Mount <mount@google.com> Allow activity transitions to target nav and status bar colors.

Bug 15885062

Action bar can already be targeted via android:action_bar.
Navigation bar background is now android:navigation:background.
Status bar background is now android:status:background.

Change-Id: I4604906923f3473af3beec4f865463b2fe4a5316
indow.java
fa10423fa00f3495e451016acba9b6848eb995c9 21-Jun-2014 Adrian Roos <roosa@google.com> Add stable insets for stable system windows

Adds a new kind of inset that only accounts for stable system
windows like the system or navigation bar.

Bug: 15457292
Change-Id: I681b711f6f40a94c25b7acd3a44eb3539486afab
Window.aidl
WindowSession.aidl
urfaceView.java
iew.java
iewRootImpl.java
indowInsets.java
indowManagerPolicy.java
8b4c1e953f0ed25d6da8219b17657bb980356830 02-Jul-2014 Yohei Yukawa <yukawa@google.com> Merge "Require coordinate transformation matrix if necessary"
b5268dcc17cd9ecb540b06ad59bd74188b57a069 27-Jun-2014 Yohei Yukawa <yukawa@google.com> Require coordinate transformation matrix if necessary

With this CL, CursorAnchorInfo.Builder#build() raises
IllegalArgumentException when an application author attempts to
instantiate CursorAnchorInfo without the coordinate
transformation matrix but with specifying some positional
parameters such as composing character rectangle.

Since any other positional members in CursorAnchorInfo are
supposed to be specified in local coordinates, the application
author must provide the coordinate transformation matrix for
such positional data.

Change-Id: I2b0fd0f146a2b95fe4fa1324837d8cfee667208c
nputmethod/CursorAnchorInfo.java
nputmethod/SparseRectFArray.java
cc32bd83e4d420c1adaeb3ea40f8986471e54590 20-May-2014 Sujith Ramakrishnan <sujithrk@google.com> Add support for mouse-based text selection.

Incorporate patch from Logitech (donated under AOSP license) to the
framework to add mouse-based text selection to ArrowKeyMovementMethod.

Bug: 14652753

Change-Id: Iab264bb954b72ccedfada763eba8f13ef37a4578
otionEvent.java
d76008352eeb246af76ba4a81eaeb4901ca4ef7f 02-Jul-2014 Adam Powell <adamp@google.com> Remove ActionBar.LayoutParams MarginLayoutParams constructor

Adding this for L caused some fun issues with source compatibility.
Apps that previously passed another MarginLayoutParams subclass to
ActionBar.LayoutParams' constructor started statically linking to a
constructor overload that did not exist on older platform changes with
no other source changes. In the interests of avoiding these headaches
for developers, remove it.

Bug 15933193

Change-Id: I01cf8dfa2341b9d9629331639433b59352e7e15a
iewGroup.java
ff1d65b32f9911b373b12a3c65a77462c53d5fc7 01-Jul-2014 Svetoslav <svetoslavganov@google.com> Merge "Reverting change in accessibility focus behavior"
f159c1a460a98b47a9f5ac14cbf75bc65559a882 01-Jul-2014 Svetoslav <svetoslavganov@google.com> Reverting change in accessibility focus behavior

bug:15995066

Change-Id: Ie22f203b9a95c3002188dacc3d753ff5d789ffd9
iew.java
a0b13bddb282b6b177c7756dcc8ff006eb8fc971 01-Jul-2014 John Reck <jreck@google.com> ViewPropAnimRT fixes

* Fixes NPE in isNativeInterpolator
* Fixes null interpolator to mean LinearInterpolator instead of
the default interpolator which is AccelerateDecelerateInterpolator

Bug: 15991759

Change-Id: I66ff27154de1e227a07daaebc0519ee3cc0dd38f
iewPropertyAnimator.java
iewPropertyAnimatorRT.java
d907e5b1efeae51c302fd502f42a06bd16d6cae3 01-Jul-2014 John Reck <jreck@google.com> Merge "Fix onTrimMemory for HardwareRenderer"
f47a594f5250b1914c36423ee6b371f0b8db09d0 01-Jul-2014 John Reck <jreck@google.com> Fix onTrimMemory for HardwareRenderer

Also fixes detachFunctor possibly drawing after return

Bug: 15189843
Bug: 15990672

Change-Id: I64c48cb674c461a8eeaba407b697e09f72c98ce3
LES20Canvas.java
ardwareRenderer.java
hreadedRenderer.java
iew.java
iewRootImpl.java
indowManagerGlobal.java
9a347f199284ad8bcb8a81bfbd306fe0b1a710ba 28-Jun-2014 Chris Craik <ccraik@google.com> Initial replacement of setOutline() with ViewOutlineProvider API

bug:15283203

A View's outline is now managed by its outline provider. This means
the outline is automatically requeried when needed (e.g. drawable
updates or resize), with customizable querying behavior.

Also adds 'isFilled' property to outline, to be used for hinting
shadow overdraw avoidance.

Change-Id: Ie137548fa850f1ff7863ab2f660d05145c2ad11e
enderNode.java
iew.java
iewOutlineProvider.java
9fa3a24d65f3f00cda399abbbdf423ee4667c6b8 28-Jun-2014 John Reck <jreck@google.com> Add missing invalidate calls

Bug: 13675947

Change-Id: Ifaf8a43f487d167672d40fa49c85949738ab9396
iewGroup.java
711ecaf000f66ea8e68e3d6fc8fe9212d1882e2a 30-Jun-2014 John Reck <jreck@google.com> Merge "More cleanups"
918ad523b2780e0c893f3d2a32d4ec13f2a7e921 27-Jun-2014 John Reck <jreck@google.com> More cleanups

Change-Id: Id5967944b949a2aec57e4fe9fdcdc04c11b8c35a
ardwareLayer.java
ardwareRenderer.java
extureView.java
hreadedRenderer.java
iewRootImpl.java
5d6b6f2892c90e95ef3bc650a245a5f2ca021d38 25-Jun-2014 Yohei Yukawa <yukawa@google.com> Allow TextInfo to store ParcelableSpans for TextService

This CL adds a new constructor of TextService so that spell
parcelable spans can be preserved in TextInfo. The primary usage
scenario is to provide locale information for spell checker
service.

BUG: 15869548
Change-Id: Ib58ece68dee4c6187d469049fca8c35a307c7a01
extservice/TextInfo.java
f74930be6037b858f956093ce1b45bd7b6c1e48a 30-Jun-2014 Dan Stoza <stoza@google.com> Merge "Surface: Add allocateBuffers to avoid render delay"
31e8005e06acf363a0cd92b891d43f79c72dac30 27-Jun-2014 George Mount <mount@google.com> Merge "Don't use overlay to transition ImageViews."
a1fda005f9583486f4372ecbb0eec503ee9cece8 26-Jun-2014 Yohei Yukawa <yukawa@google.com> Use CharSequence instead of String in CursorAnchorInfo

This might be useful if we need to pass some spans from the
application to the input method through CursorAnchorInfo.

This change makes CursorAnchorInfo more consistent with other
input method APIs where CharSequence is preferred over String.

BUG: 15088391
Change-Id: Ie04e8a27050849fee1c93ef14b9944acc70fafe4
nputmethod/CursorAnchorInfo.java
990205eada00ad3e575761d19607bb03e12f9aa3 24-Jun-2014 George Mount <mount@google.com> Don't use overlay to transition ImageViews.

Bug 15744992

MoveImage used an overlay to transition ImageViews. This
caused strange problems when ImageViews were contained in
other Views. The new ChangeImageTransform does a smooth
transition for changes in scale type and bounds.

Change-Id: Ia5021f4828f8f818a8699b3bdd38437aeba1cfc8
indow.java
68bfe0a37a0dcef52abd81688d8520c5d16e1a85 25-Jun-2014 John Reck <jreck@google.com> Animator refactoring & fixes

Tweaks animators to have less unnecessary refcounting

Pull animator management out into seperate class

More control to tweak animator lifecycle, such as doing
Java-side handling of start delay by attaching but not
starting the animator

Change-Id: I4ff8207580ca11fb38f45ef0007b406e0097281c
enderNode.java
enderNodeAnimator.java
371a809179c843d7ae661a10bc9b4b8cfcaff566 20-Jun-2014 Adam Powell <adamp@google.com> Inflate fragments from layout into child FragmentManagers

Previously, if an app inflated a layout in a Fragment's onCreateView
that itself had fragments included, those fragments would be added to
the Activity-level FragmentManager and would not share the same
lifecycle with the fragment it was inflated for. This led to some
nasty management headaches.

If an app targets L or above, add the fragment to the child
FragmentManager of the current fragment when inflated using the
LayoutInflater passed to the parent fragment.

Bug 12763389

Change-Id: Iad4ed7d5df602aea9579bf1503e206fa894630c1
ayoutInflater.java
cd028f336e36b22dbe8cf623eb5bd2361314495c 24-Jun-2014 John Reck <jreck@google.com> Fix contants; RT-enable WebView pt2

Bug: 15838537

* Fix kSync_UIRedrawRequired constant value (woops)
* Tell CanvasContext that WebView is now rt-safe

Change-Id: Idf15cf21115c2ca24b8ccd00025e8502864cd87c
hreadedRenderer.java
9970aee6e8858f2f9efe329aa0ab68b56ed1659e 24-Jun-2014 Hui Shu <hush@google.com> Remove the return value of invokeFunctor

BUG: 15513308

Change-Id: I900800a6c63f15bf68afaf66b34303039038d3c2
iewRootImpl.java
bbc9cd32d70343ff0144fe706b4090e776ec5a0c 24-Jun-2014 Bo Liu <boliu@google.com> Merge "Remove View.executeHardwareAction"
26cab31d784c44a2e2605ec3478562f9e6ffd99d 23-Jun-2014 Bo Liu <boliu@google.com> Remove View.executeHardwareAction

Webview does not need this anymore.

BUG: 13961296
Change-Id: Ia0681dea35155513b916844ecf83faf6d544a2e3
iew.java
6b39324d7756f1a36faf275941aabb19ee6bbb53 24-Jun-2014 John Reck <jreck@google.com> Merge "No-fail invokeFunctor"
3b20251a355c88193c439f928a84ae69483fb488 23-Jun-2014 John Reck <jreck@google.com> No-fail invokeFunctor

Bug: 15513308
Bug: 15449247

Change-Id: I13a29f9c8d4975cdda6dcb33b6332c2555ff0f7c
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
287c0361877057e50190cc0d7224e5bb2a7c4955 23-Jun-2014 Adam Powell <adamp@google.com> Compatibility shim for apps calling View methods with TypedArray params

Apps calling the View methods that accept TypedArray params have
always been wrong. There is no way to call these methods safely since
apps can't get at the correct filter array assumed in these methods'
implementations. Do the best we can with these calls anyway; ignore
whatever they did pass and just get the styled attributes from the
Context used to construct the view and its associated theme.

Bug 15792674

Change-Id: I6dfa1abf273b581e79a17a72f68c97ff9a9148c5
iew.java
43015f241ebc6a03e36af4d300a3dbceeb078771 24-Jun-2014 Craig Mautner <cmautner@google.com> Merge "Return to recents when coming from recents"
84984faf530e525b066e28710d0f9beb32142ec5 19-Jun-2014 Craig Mautner <cmautner@google.com> Return to recents when coming from recents

If a task is launched from recents then backing all the way
out of the task will return you to recents. Entering the task
in any other way (home, another activity, nav bar) will reset
this behavior.

Fixes bug 15703876.

Change-Id: I98dc36e4dbcb238d59e2175832076de7225bfdd9
indowManagerPolicy.java
13f6ea78b0aa98ffea6ea644770e4320ec9a2242 23-Jun-2014 Craig Mautner <cmautner@google.com> Avoid unnecessary timeouts.

And fix a couple of other inefficiencies.

Fixes bug 15444410.

Change-Id: Idad95d4e4d70bc7d2965e1bd6ff3d3135b73dd9c
indowManagerInternal.java
c6ffc840c4e34a61b537e1fc3e90b111d4150244 21-Jun-2014 Michael Kolb <kolby@google.com> am 270c099f: Merge "Move emulator check & save system properties access" into klp-modular-dev

* commit '270c099faf63868dcc21836a84de778337ff3be9':
Move emulator check & save system properties access
71f65485bf47c8bfbae2b3a0a9573b311668b4a2 21-Jun-2014 Michael Kolb <kolby@google.com> am db9fed74: Merge "Make WindowInsets.isRound work with emulator" into klp-modular-dev

* commit 'db9fed74c2bbf97157683b47f3cbdcd04c729839':
Make WindowInsets.isRound work with emulator
5795d6408d8bf44ffe2f49a25f9f333069b59a49 20-Jun-2014 Dan Stoza <stoza@google.com> Surface: Add allocateBuffers to avoid render delay

This plumbs up a new call on the native Surface object that allows
the client to request that BufferQueue pre-allocate all of the buffers
that it might need for rendering. This hopefully prevents allocation
delays during dequeuing and reduces jank.

Bug: 11792166
Change-Id: Ibeaa7475492d4ac2bcacb107ef60c6240081d8b7
urface.java
hreadedRenderer.java
437d31390b564bbf31f7034930a33b2a86d1ae26 20-Jun-2014 Michael Kolb <kolby@google.com> Make WindowInsets.isRound work with emulator

Bug: 15775489

Change-Id: I53a14ccd3be776d46c9cea43c0d5d3f41674dd75
iewRootImpl.java
22dfdcb7eea428e041b66cb6dc430dc0582e861a 21-Jun-2014 Michael Kolb <kolby@google.com> Move emulator check & save system properties access

Bug: 15775489

Change-Id: I375aee36b212ae044101a65b65c51e6f889fd263
iewRootImpl.java
eeda22b46f8ebd30ec065070c89eb3952a955e48 23-Jun-2014 George Mount <mount@google.com> Merge "Revert "Revert "API Review: Change View viewName attribute to transitionName."""
0a2ae002e60f7ea9b6bea282086b5eb0ae3c6e51 23-Jun-2014 George Mount <mount@google.com> Revert "Revert "API Review: Change View viewName attribute to transitionName.""

This reverts commit 1bdfbc68e22a64215ab8fa3e3d17676513546997.

Change-Id: Ie3fdf53b33cb2f61c1878055940f52ed9dfc8b08
iew.java
iewGroup.java
a3c1025b80c910fd7c0e9b1c178de32cab83f6de 23-Jun-2014 John Reck <jreck@google.com> Revert "API Review: Change View viewName attribute to transitionName."

This reverts commit f1b1adf51b2a84e0ac83685812c7e8d86590af12.

Change-Id: I0e49aeed84f2a548e272a59f4e13c3fb74c2bfd9
iew.java
iewGroup.java
a7090e0cfd7c719a6d4c03aae34f5db98754cbdd 21-Jun-2014 Chris Craik <ccraik@google.com> Update 'DisplayList' vs 'RenderNode' naming in several places

Change-Id: I635c6627d098b661fb9b0ba1bd42fa6d7277d287
LES20Canvas.java
ardwareCanvas.java
hreadedRenderer.java
iew.java
4fb48d24bb5fb534cc6f017d80c3d6c423d9f94a 23-Jun-2014 John Reck <jreck@google.com> Merge "Revert "API Review: Change View viewName attribute to transitionName.""
7a73fda47d968954cb7de7143ee6709926b6ecf0 23-Jun-2014 George Mount <mount@google.com> Merge "API Review: Change View viewName attribute to transitionName."
125578a8637a9ad5e7430d16b9fc0096a8b596d7 18-Jun-2014 George Mount <mount@google.com> API Review: Change View viewName attribute to transitionName.

Bug 15548520

Change-Id: I4009458d83dbffb20ff0100aaa42eea44d943378
iew.java
iewGroup.java
8dab261d81e84b0a5cac3fc525d4c4bc0077bacd 22-Jun-2014 Michael Kolb <kolby@google.com> am c6ffc840: am 270c099f: Merge "Move emulator check & save system properties access" into klp-modular-dev

* commit 'c6ffc840c4e34a61b537e1fc3e90b111d4150244':
Move emulator check & save system properties access
c0fcf109f04e56617680b41d69b7d952ac4bea0b 21-Jun-2014 Michael Kolb <kolby@google.com> am 71f65485: am db9fed74: Merge "Make WindowInsets.isRound work with emulator" into klp-modular-dev

* commit '71f65485bf47c8bfbae2b3a0a9573b311668b4a2':
Make WindowInsets.isRound work with emulator
44244ff7fe686b1c6b122341148964cbca32088a 20-Jun-2014 John Reck <jreck@google.com> Fix alpha animations in ViewPropAnimRT

Change-Id: Iffa0631b84070f12cf7b1a5e6db061c2afe7ca80
iewPropertyAnimator.java
iewPropertyAnimatorRT.java
2218472d23483f09341bf655d55db21dcbabc1b6 20-Jun-2014 John Reck <jreck@google.com> Re-enable ViewPropAnimRT

Change-Id: I2f30547c4e2212747c479760dff4f3f901d1eaf3
iewPropertyAnimator.java
iewPropertyAnimatorRT.java
45b161d24d82ef1df3ff854a1d97db0c9bad187a 19-Jun-2014 Andy McFadden <fadden@android.com> Merge "Make two Display methods public"
77db7d09ff61ae4de5f75cd507d6e93cb2f4410a 18-Jun-2014 Andy McFadden <fadden@android.com> Make two Display methods public

Un-hide getAppVsyncOffsetNanos() and getPresentationDeadlineNanos().

Bug 14612039

Change-Id: I76bee166b7bda3b96db36ffcb8d946d2b713ac09
isplay.java
8de1494557cf1d00c1c3fce439138a28de7fbd61 19-Jun-2014 Alan Viverette <alanv@google.com> Fix switch & slider anim, make View drawable hotspot API public

BUG: 15287810
Change-Id: Ic7a9549dc1ba8afd07e9a196371ed349a54aaf2f
iew.java
e3c433aa457138425e514494e4d06590076a1d07 19-Jun-2014 Alan Viverette <alanv@google.com> Persist selector on ListView and GridView layout

BUG: 15472031
Change-Id: I0d10be3e0cf8a4d7580bd834e432c1c15fc481f5
iew.java
580ecd4b2b6698d3597a32654dcd948fe69ebfdb 19-Jun-2014 Raph Levien <raph@google.com> Merge "Simple implementation of drawPosText"
3f0d6167227d6d2cdd85f7718d92db859b443e92 18-Jun-2014 Raph Levien <raph@google.com> Simple implementation of drawPosText

The existing implementation of drawPosText is broken in various subtle
ways, in any case doesn't work with Minikin. This patch just implements
it by drawing a separate run for each Unicode character, which should
have the least surprising results for complex scripts such as Khmer.

Part of b/11750374 Resolve TODO items for Minikin

Change-Id: I874ae3c163f0cbe3cdf0160564fab04305aed5aa
LES20Canvas.java
65eb8e844e25fa52248503094c5bf51ffc0130f8 19-Jun-2014 ztenghui <ztenghui@google.com> Merge "Add path support into xml files for PathInterpolator and ObjectAnimator."
cf4832f69c8786b098ce18c24319021f8cd6733a 17-Jun-2014 ztenghui <ztenghui@google.com> Add path support into xml files for PathInterpolator and ObjectAnimator.

The test case is showing that AnimatedVectorDrawable is able to use path to
define time interpolator and object movement now.

Change-Id: If3c0418265d0fd762c8f5f0bb8c39cce3ad34ef3
nimation/PathInterpolator.java
96bb8adf4c89878adc96252e340099c6922e19ee 19-Jun-2014 John Reck <jreck@google.com> Revert changes to invalidateChild

Bug: 15682142

Apparently it's still necessary to invalidate the parent if a child
is a hardware layer

Change-Id: Iaf4c1b49debd1b78b1fc8a095f685ddfcf752373
iewGroup.java
c802c8cda234129c1ce3c7a939bd68a1d5813ce6 18-Jun-2014 Raph Levien <raph@google.com> Merge "Implement drawTextOnPath with Minikin"
9d2b5e1930bfc4b1da1c865843c247c708ea1565 16-Jun-2014 Raph Levien <raph@google.com> Implement drawTextOnPath with Minikin

This patch contains an implementation of drawTextOnPath for both
software and hardware Canvas using Minikin for text layout. One of the
steps for switching all remaining text operations to Minikin so the old
TextLayout and Skia fallback fonts mechanisms can be deleted.

Bug: 11750374 Resolve TODO items for Minikin
Change-Id: I06bfe74a101fa1dcdfc38f530f7194d71e522a85
LES20Canvas.java
bc8bd76bc707cede75638ca299feb4a8d8698f3b 18-Jun-2014 Derek Sollenberger <djsollen@google.com> Merge "Refactor android.graphics.Picture JNI bindings."
50b9fcfae1ec7e3388ec8a31611cb7bc2c3221e6 18-Jun-2014 Andy McFadden <fadden@android.com> Merge "Add two new display info fields"
1f681448c6b7db451c31af7d61c0b85b7b5af04f 18-Jun-2014 Alan Viverette <alanv@google.com> Merge "Add attributes and accessors for tinting View drawables"
911743652b597057a1bd7ef8a921e9ff8dce0f4a 17-Jun-2014 Alan Viverette <alanv@google.com> Add attributes and accessors for tinting View drawables

Also cleans up handling in setters for managed drawables.

BUG: 15391544
Change-Id: Idc08f7eaea0050feb6403566985a6d58185b81f8
iew.java
b65f0d5f08b38832252de59501c54c80cede9f92 17-Jun-2014 John Reck <jreck@google.com> Merge "Fix setLayerType"
ca0608af3ce04121fc5889f93b161cbad0f7e620 17-Jun-2014 John Reck <jreck@google.com> Fix setLayerType

Bug: 15682142

mLayerType/getLayerType() can modify the display list, so invalidate()
is necessary

Change-Id: I1d323c1bd4356b31159b51d4299de099e53a0389
iew.java
96401d99959afc2034a6b43580a93dae94da684a 17-Jun-2014 Chris Craik <ccraik@google.com> Merge "Added primitive parameters to various functions requiring rectangles."
75af3f3c9693f939c73ce1a7c2889a7f8d4853c0 17-Jun-2014 Chris Craik <ccraik@google.com> Merge "Add abort logging for huge scales and tessellation recursion depth"
24609581330bc350f797179e3c1a59789c645ec2 13-Jun-2014 Antonio Calabrese <acalabrese@google.com> Added primitive parameters to various functions requiring rectangles.

Change-Id: I5a2678fa989f0ff34404b8236787a8153b05f113

bug:14322352
LES20Canvas.java
4b0959d8db20c08ab1fed37f397b303af229162b 12-Jun-2014 Derek Sollenberger <djsollen@google.com> Refactor android.graphics.Picture JNI bindings.

This is the first CL in a series of CLs to refactor the Graphics JNI bindings.

bug: 15672762
Change-Id: I1455fa1330c7426407c06eeaad81ad37a57373b1
LES20Canvas.java
fe02b4b344c37200486d8afc972560fb550cb17e 17-Jun-2014 Chris Craik <ccraik@google.com> Add abort logging for huge scales and tessellation recursion depth

bug:15615144
Change-Id: I275732eb97f9d5179beed23eecd2ee3cc7112e10
LES20Canvas.java
e8b1aeb51e1e5da64f1d4fd40f2ee1e815886fe5 13-Jun-2014 Andy McFadden <fadden@android.com> Add two new display info fields

This adds SurfaceFlinger's app VSYNC offset and buffer deadline
values to DisplayInfo. The values will be available to apps
through queries on a Display object (currently hidden).

Bug 14612039

Change-Id: I48760f58a9d74d99651b02a9d595f420410f2bb5
isplay.java
isplayInfo.java
urfaceControl.java
9d7ee60e5e9fab801a21c8bf174ef1e8175ccdd2 17-Jun-2014 John Reck <jreck@google.com> Remove incorrect isEnabled() check

Bug: 15683945

invokeFunctor() does not require isEnabled() to be true
to execute. Specifically it does not care if HardwareRenderer
has a Surface or not, as it will fall back to a pbuffer surface
if available. If there is no context at all, it will invoke
with kModeProcessNoContext.

Change-Id: Ie6abe566b92c8fa33bb7a673fc3b9fa9ce913446
iewRootImpl.java
b69fc08303af782539d09d1775e6f63d4ccad3a1 17-Jun-2014 John Reck <jreck@google.com> Merge "Add atlas map pointer validation"
b8802b1293c05a14399005aeaeb93b82ec2e2f27 17-Jun-2014 John Reck <jreck@google.com> Add atlas map pointer validation

Bug: 15425820

This just prevents the crash, it's still unclear how bad pointers
are getting into the map in the first place

Change-Id: I3acffaae09548ec48973035b7fcf5f35606bad60
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
466cd7a2a65b1204c07ff5eaeebb7decc86a1fff 17-Jun-2014 Raph Levien <raph@google.com> Merge "Clean up dirFlags / bidiFlags confusion"
051910b9f998030dacb8a0722588cc715813fde1 16-Jun-2014 Raph Levien <raph@google.com> Clean up dirFlags / bidiFlags confusion

The dirFlags and bidiFlags enums are distinct, and have different
meanings. The former is a determined direction for a run of text, while
the latter is a request for the bidi algorithm. They have been used
interchangeably, and this has caused some problems, notably running the
bidi algorithm needlessly when the direction for a run is already
determined.

This patch cleans up the confusion, by always naming each occurrence
explicitly "boolean isRtl" or "int bidiFlags" (the previous code often
just used "int flags", which added to the confusion), and converts
between the meanings when a function takes an isRtl argument but passes
it to another function expecting bidiFlags.

Fixes b/15089607 Clean up bidi flag mess

Change-Id: I410b6604376e853dd12c255e7f5a9d2b9a310dd9
LES20Canvas.java
61eb51b8f5fb9d747ce5e06c0799f81ff8ddac16 14-Jun-2014 Vinod Krishnan <vinodkrishnan@google.com> am 1e6048e0: Merge "DO NOT MERGE Cherry picking 3 CLs to fix CTS testFitSystemWindows" into klp-modular-dev

* commit '1e6048e0158310ee31e0310661bed06a41ac7dd7':
DO NOT MERGE Cherry picking 3 CLs to fix CTS testFitSystemWindows
11335f14b9a3fd0a672a0fa0206e1f58b688dd36 12-Jun-2014 Adam Powell <adamp@google.com> DO NOT MERGE Cherry picking 3 CLs to fix CTS testFitSystemWindows

----
Explicitly track consumed state for WindowInsets

Treating 0-insets as fully consumed is incorrect since it means that
you can't dispatch empty insets down the view hierarchy - traversal
terminates immediately. Track consumed state independent of actual
values. Replacing a given set of insets with all zeroes will mark it
consumed.
----
Fix incorrect dispatch of empty WindowInsets from ActionBarOverlayLayout

Fix a bug where ActionBarOverlayLayout was using a private constructor
of WindowInsets to return empty insets that should have been marked
fully consumed. This caused dispatch to further child views not to
stop appropriately, corrupting application layout in some cases.
---
Fix CTS regression in fitSystemWindows

Don't attempt to apply null insets from a call to fitSystemWindows.
Immediately return false since null insets cannot be applied.
----

Bug: 15452706
Change-Id: I34276a90305b141b4653aef0048f70350c69d02a
iew.java
iewGroup.java
indowInsets.java
8a30b31a7765b9a3beaacd2ebc9467fedba73d3f 13-Jun-2014 Adam Powell <adamp@google.com> Fix CTS regression in fitSystemWindows

Don't attempt to apply null insets from a call to fitSystemWindows.
Immediately return false since null insets cannot be applied.

Bug 15452706

Change-Id: I1ad4cc0288db36b3e9485481173e64b2140a0204
iew.java
7cd8ec237b5a157dd393e443d2233430523a6058 16-Jun-2014 ztenghui <ztenghui@google.com> Merge "Make ViewAnimationUtils final"
1c2ebed64b361691343346595894cc5254292537 12-Jun-2014 ztenghui <ztenghui@google.com> Make ViewAnimationUtils final

Change-Id: I356586c77e8a495709e5a99c8b51620b82d9fbac
iewAnimationUtils.java
e5e92602a41a4ddc7b42cd1c171a0edfbd09b8da 03-Jun-2014 ztenghui <ztenghui@google.com> Add AnimatedVectorDrawable

Currently as a hidden class.
It can support many the animations now as far as ObjectAnimator and
hierarchical group can support.
And we don't have path morphing yet.

Also support the Animator / Interpolator inflation from Context and Resources.

Change-Id: I948bbdf7373ad291171eed0b497959dce8c2edf3
nimation/AccelerateInterpolator.java
nimation/AnimationUtils.java
nimation/AnticipateInterpolator.java
nimation/AnticipateOvershootInterpolator.java
nimation/CycleInterpolator.java
nimation/DecelerateInterpolator.java
nimation/OvershootInterpolator.java
nimation/PathInterpolator.java
30794097acd0911ca481a2636bfa62d8514edbcf 14-Jun-2014 Alan Viverette <alanv@google.com> Fix NPE in focus hotspot management

BUG: 15631051
Change-Id: I24b014f940c43a1f92fd050439bb6a42b8e24310
iew.java
cebc6bab51d9c77db8f346c1390169eabac4f27d 14-Jun-2014 Alan Viverette <alanv@google.com> Support hotspots in View drawables

BUG: 15285217
Change-Id: Iad44454fe16ac27ed20b9c17ae2df69649339eed
iew.java
1e96bdf344d7395bd377ae07eacaa75ba17c1204 13-Jun-2014 John Reck <jreck@google.com> Don't buildLayer if size == 0

Bug: 15598692

Change-Id: Ia4e9e68c712b318b8d66e8cdfb2aceda4e892289
iew.java
a43e79cfcdc85a610b7bf1331137767bf66ba15e 11-Jun-2014 Svetoslav <svetoslavganov@google.com> am 6af2b51b: Merge "Accessibility window changes not reported." into lmp-preview-dev

* commit '6af2b51b3c233d2c9d77282355c798c01a8afba1':
Accessibility window changes not reported.
e16a5009cc02548266e483ee2456c631914519ac 11-Jun-2014 Svetoslav <svetoslavganov@google.com> Accessibility window changes not reported.

On accessibility service side we were asking only for cached windows but since
to optimize performance the system is sending only deltas for windows the service
already introspected, new windows were not seen by the accessibility service.

bug:15092286

Change-Id: I7e9c360f624c53ff1773c485a8907dc425e3352a
ccessibility/AccessibilityInteractionClient.java
816f71b7e0dc263362e9fc8d251c8d1944bff17c 13-Jun-2014 John Reck <jreck@google.com> Merge "Move LayerType to RenderNode"
25fbb3fa1138675379102a44405852555cefccbd 12-Jun-2014 John Reck <jreck@google.com> Move LayerType to RenderNode

Change-Id: Icb79a5015cb0362b1f3a66d09007450730135a97
ardwareLayer.java
ardwareRenderer.java
enderNode.java
extureView.java
hreadedRenderer.java
iew.java
iewGroup.java
iewRootImpl.java
a447d29c65fb811cd184775a3476101a1cede929 12-Jun-2014 John Reck <jreck@google.com> Fix DA bugs

* Now aware of transform of DrawDisplayListOp
* Supports projection

Bug: 15539677
Bug: 15506680

Change-Id: Ic16f482cd48c3add12e49eca529281be12b93491
enderNode.java
iew.java
a46ac5094e51827e40080ddead6268edcf5d3982 13-Jun-2014 Craig Mautner <cmautner@google.com> Merge "Do not display unsecure windows behind dialogs"
85c262772de33a12a20bbcc11eb8349738e550d7 13-Jun-2014 Adam Powell <adamp@google.com> am d3b9bac6: Merge "Fix incorrect dispatch of empty WindowInsets from ActionBarOverlayLayout" into lmp-preview-dev

* commit 'd3b9bac6a96a065cd4058429569e0ed6ec4df032':
Fix incorrect dispatch of empty WindowInsets from ActionBarOverlayLayout
c9457faeb6bf22ce8fc72bc61af5109a2b567c51 06-Jun-2014 Craig Mautner <cmautner@google.com> Do not display unsecure windows behind dialogs

If a dialog activity has FLAG_SHOW_WHEN_LOCKED set it will dismiss
the keyguard. Previously this would expose any full screen unsecure
windows behind the dialog. With this fix the dialog is displayed
over the wallpaper.

Fixes bug 15006623.

Change-Id: I85a6713c7647db52211bd0f7280010e859723710
indowManagerPolicy.java
3d187c2e9f7604d199f9bc0a9a9ebb8376777976 12-Jun-2014 Svetoslav <svetoslavganov@google.com> Merge "Fix backwards compatibility for introspected windows."
f7174e87b6007000777b0124de9cef70d8618788 12-Jun-2014 Svetoslav <svetoslavganov@google.com> Fix backwards compatibility for introspected windows.

1. The APIs for introspecting interactive windows were reporting only
the touchable windows but were missing the focused window. The user
can interact with the latter by typing, hence it should always be
reported. Also this was breaking backwards compatibility as if the
focused window is covered by a modal one, the focused window was not
reporeted and this was putting the active window in a bad state as
the latter is either the focused window or the one the user is touching.

2. Window change events are too frequent as on window transition things
are chanign a lot. Now we are trottling the windows changed events
at the standard recurring accessibility event interval.

3. Fixed a wrong flag comparison and removed some unneded code.

buy:15434666
bug:15432989

Change-Id: I825b33067e8cbf26396a4d38642bde4907b6427a
WindowSession.aidl
iewRootImpl.java
indowInfo.java
9c68b42dc421e1c4260bc388deb7b26e7221c810 12-Jun-2014 ztenghui <ztenghui@google.com> Merge "Add AnimatedVectorDrawable"
cadc7a200a5f21088deee06bcb42d1e5a5574db9 12-Jun-2014 Winson Chung <winsonc@google.com> Merge "Exploring transitions to/from Recents."
d42a6cfe2bf632222617450a1ed340268e82f06c 04-Jun-2014 Winson Chung <winsonc@google.com> Exploring transitions to/from Recents.

- refactored hwlayers and change view property animations to use a reference counted trigger
- cleaned up RecentsConfiguration, and move it into classes using it
- moved task bar animations back into TaskBarView
- refactoring enter/exit animations to use an animation context

Change-Id: Ia66b622b094f22145c2fab07c2a9bdfd62344be2
iew.java
2a97b54f491346be193cc72b89d6712cf1abacc9 12-Jun-2014 Yohei Yukawa <yukawa@google.com> am f09cb58d: Merge "Rename CursorAnchorInfoBuilder with Builder" into lmp-preview-dev

* commit 'f09cb58d5f528665e6e96d8740eeeeab4167e357':
Rename CursorAnchorInfoBuilder with Builder
90132dd7ca8427af768c5167e5722cb611d95f7c 12-Jun-2014 Adam Powell <adamp@google.com> am c72a2a82: Merge "Explicitly track consumed state for WindowInsets" into lmp-preview-dev

* commit 'c72a2a82160099e8f20c42eb0d36881c31537130':
Explicitly track consumed state for WindowInsets
13592c623cdd87047e68d88d87be84819292819a 12-Jun-2014 Yohei Yukawa <yukawa@google.com> Merge "Rename CursorAnchorInfoBuilder with Builder" into lmp-preview-dev
0d9fdbad751318b1e9a7a2789bf0e9240252e15f 12-Jun-2014 Adam Powell <adamp@google.com> Explicitly track consumed state for WindowInsets

Treating 0-insets as fully consumed is incorrect since it means that
you can't dispatch empty insets down the view hierarchy - traversal
terminates immediately. Track consumed state independent of actual
values. Replacing a given set of insets with all zeroes will mark it
consumed.

Bug 15341653

Change-Id: I55b33b7dfbf4cae1e906a82140537156cffdbf47
iew.java
iewGroup.java
indowInsets.java
720924b6a9770f03355999102a11d98c5954407c 12-Jun-2014 Adam Powell <adamp@google.com> Fix incorrect dispatch of empty WindowInsets from ActionBarOverlayLayout

Fix a bug where ActionBarOverlayLayout was using a private constructor
of WindowInsets to return empty insets that should have been marked
fully consumed. This caused dispatch to further child views not to
stop appropriately, corrupting application layout in some cases.

Bug 15588587

Change-Id: I97fcefa4755addf2385a7e7b0ffbf6d3e91adc5c
indowInsets.java
530ae0a5ecb680a6e60b74a08c2726a74a440a75 12-Jun-2014 George Mount <mount@google.com> Merge "Allow customization of background fade duration."
ed1e01d7e431edbcaab983b4b240418f2b090fac 05-Jun-2014 George Mount <mount@google.com> Allow customization of background fade duration.

Bug 15195468

Change-Id: I02c1ef446cfa8aaedce640ab5694b6d9245bb9f7
indow.java
98908aa0c97d9685045a168ca39ec1ee7988dabe 12-Jun-2014 Jeff Brown <jeffbrown@google.com> Merge "Add call to set power mode for display"
e830c37a4a499c439083afc56c64fa178ea5889d 12-Jun-2014 John Reck <jreck@google.com> Merge "Fix DA bugs"
de233aec5a4de4c3eebc2927a7afdacf8c2066f0 11-Jun-2014 John Reck <jreck@google.com> Merge "DO NOT MERGE Disable AtlasInitializer" into lmp-preview-dev
c60676624ce211bbfb0f8d3dfcc886ffad921440 06-Jun-2014 John Reck <jreck@google.com> DO NOT MERGE Disable AtlasInitializer

Bug: 15425820

Change-Id: I15270eb7a5856523625e2de48ef9efc2520ddb0f
hreadedRenderer.java
2f4bd692d367f349422c5d727b644e9d4bac9672 10-Jun-2014 Yohei Yukawa <yukawa@google.com> Merge "Use more user actions to update the IME rotation order"
c46b5f04aa2a9fd292c117d2824f70fcf06e86ba 09-Jun-2014 Yohei Yukawa <yukawa@google.com> Rename CursorAnchorInfoBuilder with Builder

Inner Builder class should not inherit full class name of outer
class.

BUG: 15516230
Change-Id: I2d56edebb0c85639db57ca5b2aadb22c67fc5926
nputmethod/CursorAnchorInfo.java
0c4122c9b50285fc57969cc86a835aa3cf834f1a 10-Jun-2014 Justin Koh <justinkoh@google.com> am ce8c1086: am eba8782a: Add NPE check to getSystemWindowInsets

* commit 'ce8c1086fbc42e80056b59d9dbbd6144cb85f20d':
Add NPE check to getSystemWindowInsets
ce8c1086fbc42e80056b59d9dbbd6144cb85f20d 09-Jun-2014 Justin Koh <justinkoh@google.com> am eba8782a: Add NPE check to getSystemWindowInsets

* commit 'eba8782a1f8412a3510fc78a71b843ef6e89bdbb':
Add NPE check to getSystemWindowInsets
eba8782a1f8412a3510fc78a71b843ef6e89bdbb 06-Jun-2014 Justin Koh <justinkoh@google.com> Add NPE check to getSystemWindowInsets

Bug: 15452706
Change-Id: Ica83593eadd0155e1370dba268a9f15ad0affa7d
indowInsets.java
ab4bb06bec572d7533c4d3db15a277a5a1d4642f 09-Jun-2014 Kristian Monsen <kristianm@google.com> Merge "Update ViewLocationHolder#compareTo to properly implement Comparable"
446956f7893aec7adb618d0a3749325ff22c29d8 09-Jun-2014 George Mount <mount@google.com> Merge "Capture right/bottom of images properly when doing Activity Transitions."
39dd1510ea2bfb79709075f352384730862fd4c4 05-Jun-2014 Yohei Yukawa <yukawa@google.com> Use more user actions to update the IME rotation order

Previously, only the text update event in composing mode
is used to update the IME rotation order. This may look strange
to a user especially when the character is input without
composition.

With this CL, to cover above cased, sending a key event is also
used as a trigger to update update the rotation order.

Note that the cost of calling IMM#notifyUserAction multiple times
is now cheap enough because of the optimization made in
I19ad8542659bc092b92ee13e.

BUG: 7043015
Change-Id: I03fa436df0a5e348b3f93170aab3a8ac5a7e1677
nputmethod/BaseInputConnection.java
0fcedfd8ea4a613a6669bbe02cb0434c67bdbe01 09-Jun-2014 Yohei Yukawa <yukawa@google.com> Merge "Introduce a sequence number to avoid redundant IPCs"
3d1e8129ebd69db49d80e5d598f608c59b884cdf 06-Jun-2014 Yohei Yukawa <yukawa@google.com> Introduce a sequence number to avoid redundant IPCs

This CL introduces a sequence number to avoid redundant IPCs
between IMM and IMMS. The basic concept is that:
1. IMMS maintains a sequence number for #notifyUserAction.
2. IMMS increases the sequence number whenever the current
IME/subtype is changed.
3. IMMS notifies the new sequence number to IMM.
4. IMM maintains the last sent sequence number and the next
sequence number. IMM should call #notifyUserAction only
once per particular sequence number.
5. IMMS ignores #notifyUserAction if the specified sequence
number is not the expected one.

BUG: 7043015
Change-Id: I19ad8542659bc092b92ee13eb9f1d68ddd4b815a
nputmethod/InputMethodManager.java
7f8d1c3f3e693d7dd8f20fab1bba7f3bfadec723 06-Jun-2014 Chris Craik <ccraik@google.com> am 493ae7d7: Add doc for View.getElevation()

* commit '493ae7d7aa547f366c6de244f5535ba2c0417598':
Add doc for View.getElevation()
5985dfbf1458f487c7f162a486874467997e699c 29-May-2014 Chris Craik <ccraik@google.com> Add doc for View.getElevation()

Change-Id: I5a843969fa03db6bb0faef80962c1256c64aa450
iew.java
bb1b857841ad10674930f3b88499cd1fe7cc9f24 06-Jun-2014 Svetoslav <svetoslavganov@google.com> Merge "Refactor printing"
a798c0a984f29f7180883a61839f68d2cbf0c6ce 15-May-2014 Svetoslav <svetoslavganov@google.com> Refactor printing

Change-Id: I19850154ef2798afff511e4490a268ce38e8cbae
iew.java
d8883df650b77dba3be38fb2ca8980594b901461 06-Jun-2014 Dianne Hackborn <hackbod@google.com> am 87bc3c25: Merge "Improvements to low power mode." into lmp-preview-dev

* commit '87bc3c258d8be516bc0fcedeb6eec34088582061':
Improvements to low power mode.
421e2fd044815f00f0160810a052658abd95c4d8 06-Jun-2014 Dianne Hackborn <hackbod@google.com> Merge "Improvements to low power mode." into lmp-preview-dev
eb94fa7975b1e8742f3b00cec6bd4f9d6b329e3a 04-Jun-2014 Dianne Hackborn <hackbod@google.com> Improvements to low power mode.

Add new public API for monitoring low power mode.

BatteryService now puts device in to low power mode when
battery level is low.

Window manager now watches low power mode to turn off
animations.

Modifying the animator scale now gets propagated to all
processes.

Change-Id: I8fa566994764ddd4e1977631e28381ab9409f8ee
WindowManager.aidl
WindowSessionCallback.aidl
indowManagerGlobal.java
8e43d6d62fb3a94b2a7175d1dee3174c62f217ba 06-Jun-2014 George Mount <mount@google.com> Capture right/bottom of images properly when doing Activity Transitions.

Bug 15140681

Change-Id: I91baf1708fc40e13133db8aa791697ac6bb654f8
iew.java
743922e9dfe295d4cc837eee1646272aa88da135 06-Jun-2014 John Reck <jreck@google.com> Merge changes Ie0773f85,Ie5e75505

* changes:
Even FASTER damage calculations!
Have all the setters return changed
c1026e17c6f178dfcf9ec5c671381ccc10a87227 06-Jun-2014 Yohei Yukawa <yukawa@google.com> Naming style fix for an internal constant

This CL does nothing except for adding MSG_ prefix to
an internal constant.

Change-Id: Ic41a8f1e31f5a6a84e6ff8fe9214e9cbc92e04d9
nputmethod/InputMethodManager.java
537d7ea039425b867fbcce9731205cd74bdc9a2b 06-Jun-2014 ztenghui <ztenghui@google.com> am 42decb1b: Merge "API Review: move the CreateRevealAnimator to ViewAnimationUtils" into lmp-preview-dev

* commit '42decb1bfe354923205a7cdf856f395f9070b64f':
API Review: move the CreateRevealAnimator to ViewAnimationUtils
2050d39e08fd1266d0686b6e3aa5d09a4fdd525f 06-Jun-2014 ztenghui <ztenghui@google.com> Merge "API Review: move the CreateRevealAnimator to ViewAnimationUtils" into lmp-preview-dev
c954e61cd73875e74115c778cb5e35eab9695a59 05-Jun-2014 Alan Viverette <alanv@google.com> am 3966c960: Merge "Add defaults for caption colors and edge type" into lmp-preview-dev

* commit '3966c9604e55c9183a6d1ba8b3540add3be4434f':
Add defaults for caption colors and edge type
62f30e0bb14b38c54d5fed4771141dc5b3fb6f4b 05-Jun-2014 ztenghui <ztenghui@google.com> API Review: move the CreateRevealAnimator to ViewAnimationUtils

b/15451650

Change-Id: If270bbf757047ce7847cab457d3836d756830124
iew.java
iewAnimationUtils.java
0297051162193ef2b7d906409868e404f77e4c31 05-Jun-2014 Yohei Yukawa <yukawa@google.com> Trivial method renaming for notifyTextCommitted

This CL does not change existing behavior but only renames
notifyTextCommitted with notifyUserAction so that we can use
not only text commit but also other actions such as just typing
a character will be used as a trigger to update the IME
rotation order for better IME switching experience.

BUG: 7043015
Change-Id: I7f3e13a7226ef0dceee82b67e8a0d8536f7e9807
nputmethod/BaseInputConnection.java
nputmethod/InputMethodManager.java
e88aee8ad85b01229b12dbc0c3cc2f0b8b490192 05-Jun-2014 Alan Viverette <alanv@google.com> Add defaults for caption colors and edge type

BUG: 8151470
Change-Id: I4d7b75bf647aeded77b4000cdcd37e9ace46a374
ccessibility/CaptioningManager.java
2c35d03cc0f82eef88772cd61e4457b695168418 05-Jun-2014 Kristian Monsen <kristianm@google.com> Update ViewLocationHolder#compareTo to properly implement Comparable

The previous implementation violates the transitive property, and
can lead to IllegalArgumentException being thrown.

See: https://code.google.com/p/android/issues/detail?id=55933
and bug 10791961.

Change-Id: I050e626aff9cc4b0ec5690a430d3bcb26f905425
iewGroup.java
c55929a2a5686fe456b19cd54a73b8bde2a4332b 25-May-2014 Prashant Malani <pmalani@google.com> Add call to set power mode for display

The blank/unblank interface is being replaced by a generic
setPowerMode() call. This will allow the support of low power modes in
displays where such functionality is available. Currently three modes
are defined:

- POWER_MODE_OFF
- POWER_MODE_DOZE
- POWER_MODE_NORMAL

POWER_MODE_OFF would be analogous to blanking the screen,
POWER_MODE_NORMAL akin to unblanking it, and POWER_MODE_DOZE would
trigger an entry into the display's low power mode.

We also tie the JNI call to set power mode to the call from services which
actually invokes it.

The generic setPowerMode() call can be expanded to potentially include
other display power states.

Bug: 13472578
Change-Id: I74677506d3ee2ccc50ba70c5102d96b31fe7b837
Signed-off-by: Prashant Malani <pmalani@google.com>
urfaceControl.java
713059d4af8ae60b91b4f30ef7406dfa5c942955 04-Jun-2014 Michael Wright <michaelwr@google.com> Merge "Making KEYCODE_PAIRING a wakeup key."
8ac485a3030a2103365e261e555c6b4fb3613eac 04-Jun-2014 Michael Wright <michaelwr@google.com> Making KEYCODE_PAIRING a wakeup key.

Bug: 15430207
Change-Id: I4bb862e22d32af1a89741d39a694b790aa52dfcd
eyEvent.java
e4267ea4f20740c37c01bfb6aefcf61fddc4566a 04-Jun-2014 John Reck <jreck@google.com> Even FASTER damage calculations!

* Now with more native!
* Less matrix math thanks to bulk-property-update support!
* Zero JNI on the View.damageInParent() path!
* Fully aware of RT-driven animators!
* Likely full of new and exciting bugs!
* But it also fixes at least 1 existing invalidate bug!

Change-Id: Ie0773f85a60850ff2668370c58defef2e8aa079f
ardwareLayer.java
ardwareRenderer.java
enderNode.java
hreadedRenderer.java
iew.java
iewGroup.java
iewRootImpl.java
f3f8a73a57a34b405e73c83af8f4d42e9592079c 04-Jun-2014 Craig Mautner <cmautner@google.com> am 05cd6c39: Merge "Force all windows to redraw before unblanking screen" into lmp-preview-dev

* commit '05cd6c39824653e0f7e8641444a7134e8cac72f4':
Force all windows to redraw before unblanking screen
79c7de77a7da9cbcb9428ab6203987feb35a427f 23-May-2014 John Reck <jreck@google.com> Have all the setters return changed

Change-Id: Ie5e755058a7094bb0c2fce60ec3cef47c23823ce
enderNode.java
8a0da0184f6c5c95d94ab6adfee79bace4040abd 01-Jun-2014 Craig Mautner <cmautner@google.com> Force all windows to redraw before unblanking screen

The screen turning on would show windows as they were when the screen
turned off. This fix forces all showing windows to redraw first and
only then allow the screen to turn on.

Fixes bug 15092354.

Change-Id: I52c3f47438176a5ac00ba9a4d5205b56a5aa48f9
WindowManager.aidl
indowManagerInternal.java
22af5b842869abff5418263e6fb0b4b925077629 04-Jun-2014 Craig Mautner <cmautner@google.com> am 81dfc082: Merge "Force all windows to redraw before unblanking screen" into klp-modular-dev

* commit '81dfc082d2add8463469e3eac9db94d6d93005ce':
Force all windows to redraw before unblanking screen
a5dd05f26f8498f609fcc0bca8ffcad64cd9203a 03-Jun-2014 Adam Powell <adamp@google.com> am ef7c0948: Merge "Add an internal method for setting optical insets." into lmp-preview-dev

* commit 'ef7c0948ea1379ee9f3f5f40267ca2cf5e76a36b':
Add an internal method for setting optical insets.
7e3a7fc35f1972819e9e8dfabb8c8efb3667dc67 03-Jun-2014 John Reck <jreck@google.com> Merge "Remove GLRenderer"
228742d2781c2c6b924e2c2dc0ac2a6b62e33e10 01-Jun-2014 Craig Mautner <cmautner@google.com> Force all windows to redraw before unblanking screen

The screen turning on would show windows as they were when the screen
turned off. This fix forces all showing windows to redraw first and
only then allow the screen to turn on.

Fixes bug 15092354.

Change-Id: I349995bf6446d6c462dccdc2b599bab9ab0ab2c8
WindowManager.aidl
indowManagerInternal.java
84a4c887a07c1c2939443f4e0587d7f1ac109e4b 30-May-2014 John Reck <jreck@google.com> Remove GLRenderer

Change-Id: I180286417c1a354fc7eb1eadb1884ac6add0795c
LES20Canvas.java
LES20RecordingCanvas.java
LRenderer.java
ardwareCanvas.java
ardwareLayer.java
ardwareRenderer.java
hreadedRenderer.java
iew.java
iewRootImpl.java
08c06495ccf9709b4540abda12221f177adad6ec 02-Jun-2014 Adam Powell <adamp@google.com> Merge "Add an internal method for setting optical insets." into lmp-preview-dev
dbb06e0c8c60ade44d38cda0dc570ccf588d324f 02-Jun-2014 Adam Powell <adamp@google.com> Add an internal method for setting optical insets.

This will allow views to calculate their own optical insets
e.g. during measurement. Candidate for public API down the road once
it proves itself for framework views.

Change-Id: I098d7b7b52e5aaf7eccc8ef34d79791d127d8c77
iew.java
776512d4b6a7c1b1b7893cde5bec1f3d65c0ea94 02-Jun-2014 John Reck <jreck@google.com> am feccbdc4: Merge "Add setStartValue to RNA" into lmp-preview-dev

* commit 'feccbdc4d0bee3eb4c395bd93ba51cbc6616527a':
Add setStartValue to RNA
c6b3264e16f1d2b72e7f9508559981ce9970157c 02-Jun-2014 John Reck <jreck@google.com> Add setStartValue to RNA

Bug: 15198607
Should be good-enough for Ripples to use for pseudo-chaining
support.

Change-Id: Ia8666928ccb69ae401cb583751632a52bd928b63
enderNodeAnimator.java
8cdef8293f75b3bf3ba4f57d4bb58dae2bad1a64 31-May-2014 Jorim Jaggi <jjaggi@google.com> am 698c8194: Merge "Fade scrim in unlock animation." into lmp-preview-dev

* commit '698c81948ed277253d567aa4c34996d2d0477992':
Fade scrim in unlock animation.
e29b2dbc762bfa66093d76f5a65f55328d8753c9 30-May-2014 Jorim Jaggi <jjaggi@google.com> Fade scrim in unlock animation.

This also introduces a startTime which gets sent from window manager
to SystemUI, which tells when the animation should start, to allow
for a more synchronized animation with fading out the scrim and
fading in the activity behind.

Bug: 15163546
Change-Id: I16212b1ef9eb76f1f98734da1d14fc5b7e626937
indowManagerPolicy.java
c6b6154ac1eb4e839f363115aef3649c967bcfdd 30-May-2014 John Reck <jreck@google.com> am ea5af639: Merge "Re-jigger layers" into lmp-preview-dev

* commit 'ea5af63965bf323580aa1e2854efb2f8cc3dc396':
Re-jigger layers
ca8eb243d1268e8f89ecd02063960667aca3374b 30-May-2014 John Reck <jreck@google.com> Merge "Re-jigger layers" into lmp-preview-dev
d72e0a339b54af0c4e731513bbad120dff694723 30-May-2014 John Reck <jreck@google.com> Re-jigger layers

Bug: 15185239
Bug: 15238382

Make DeferredLayerUpdater ref counted so that
HardwareLayer:finalizer() works non-crashily on
leaked layers
Give DeferredLayerUpdater the ability to have a layer destroyer
set so that leaked layers can still be recycled on the
RenderThread
Order layer updates based off of pushLayerUpdate() calls to fix
issue with nested layers

Change-Id: I4449cee607f7e5126e02fed7464cf48038e3dfdf
LRenderer.java
ardwareLayer.java
ardwareRenderer.java
hreadedRenderer.java
bf9767cd8172de64693d7c88d29ff215f5c6c66d 30-May-2014 Keisuke Kuroyanagi <ksk@google.com> Null check for sentence level spell checking method.

Bug: 15334309
Change-Id: Id7dd440f7df37da76ae6381abe057ff92a76f4a1
extservice/SpellCheckerSession.java
30643dfcd117753044067f6b671b8fb1a7576b9f 30-May-2014 John Reck <jreck@google.com> am 7f0d1e19: Merge "Fix NPE in onVisibilityChanged" into lmp-preview-dev

* commit '7f0d1e193bbf2dc189c2de6e3329aac0afda1d76':
Fix NPE in onVisibilityChanged
2dedafb48f85e34a2f48262f12908866fc9de132 30-May-2014 John Reck <jreck@google.com> Fix NPE in onVisibilityChanged

Bug: 15089790
onVisibilityChanged may happen before the View is attached.
Only attempt to re-set the update listener if mLayer is not null,
as it means the View is attached and has already drawn once. If
mLayer is null then the update listener will be set when the view
next draws

Change-Id: I406e359a0a0720988f026f9cbde26afdb564ca92
extureView.java
2cfc0e543f69750b4ccc9d5f52b384e525cf9e77 30-May-2014 John Reck <jreck@google.com> am 894bb170: Merge "Enable debug stuffs" into lmp-preview-dev

* commit '894bb1701ae15b87af1e3bfe865fe191081cc806':
Enable debug stuffs
aee470c0232afdac4256d13020fa0cf04f30395c 30-May-2014 John Reck <jreck@google.com> Merge "Enable debug stuffs" into lmp-preview-dev
fe5e7b7346a54537b980796ceeca66bfdbd05561 24-May-2014 John Reck <jreck@google.com> Enable debug stuffs

Bug: 14596762
* dumpsys gfxinfo implemented
* profile GPU visual_bars implemented

Change-Id: Icb948a9d5af5989b5615504d0d76ade64b93ef5b
LRenderer.java
ardwareRenderer.java
enderNode.java
hreadedRenderer.java
iewRootImpl.java
indowManagerGlobal.java
7a184985590e25c9b4a5b534953924d0abef5ef1 29-May-2014 Craig Mautner <cmautner@google.com> am b5b37c2b: Merge "Add methods to coordinate unlock animation." into lmp-preview-dev

* commit 'b5b37c2babe744acb002ed9b8556a9d9cd2202fc':
Add methods to coordinate unlock animation.
71ac80c46a1b094ad951e59c24791d9e9ef769bf 29-May-2014 Craig Mautner <cmautner@google.com> Merge "Revert "Modify task navigation to return to recent tasks." DO NOT MERGE" into lmp-preview-dev
b9a6c8ad99c7885dccc23223068c0a551f350cd5 29-May-2014 Craig Mautner <cmautner@google.com> Revert "Modify task navigation to return to recent tasks." DO NOT MERGE

This reverts commit 1a4e211e03f1f795d935058e27356a0e8bc5df7c.

Change-Id: Ia691b93347c7eb2395933e5a5ba385ea94e08d6f
indowManagerPolicy.java
fdaaf91f356a1dcd960c48a5f0137869d561cb23 29-May-2014 Craig Mautner <cmautner@google.com> Merge "Revert "Modify task navigation to return to recent tasks.""
719e621186adc1ba5a365bddea01cbe73bb26b02 29-May-2014 Craig Mautner <cmautner@google.com> Revert "Modify task navigation to return to recent tasks."

This reverts commit 19174878e25ebfd8806595f83df7bdea1d239c07.

Change-Id: I98db2c9aa975495c5828b3d16b8b45f515e6a5fa
indowManagerPolicy.java
219d7a50fb7a269fe54dd9d70587c269d217336f 29-May-2014 Craig Mautner <cmautner@google.com> Merge "Add methods to coordinate unlock animation." into lmp-preview-dev
d3a5b916b1655c9a36d531afc8420fc5ca0ccfdd 29-May-2014 Dianne Hackborn <hackbod@google.com> am c2091a1f: Merge "Add system layer for voice interaction services." into lmp-preview-dev

* commit 'c2091a1fbc463941b3e42db36e369124ac3c1013':
Add system layer for voice interaction services.
09daefbb9a6d09a62c8a2097a84bd79db1ddcebb 29-May-2014 Chris Craik <ccraik@google.com> am ec67c4b0: Merge "Make ViewPropertyAnimator correctly damage shadow receivers" into lmp-preview-dev

* commit 'ec67c4b0ac8095c94c424a9fc37d7b11fa098ee9':
Make ViewPropertyAnimator correctly damage shadow receivers
80d55ba8e204e125caec822f3a4a1507582148be 29-May-2014 Chris Craik <ccraik@google.com> am 9ecf9b12: Merge "Respect Z ordering in touch dispatch, software drawing" into lmp-preview-dev

* commit '9ecf9b1292d547aebe4588f1051b22f9683e2149':
Respect Z ordering in touch dispatch, software drawing
a923758d80ad50ac79a22074cf6e4c9463bb2b0b 29-May-2014 Dianne Hackborn <hackbod@google.com> Merge "Add system layer for voice interaction services." into lmp-preview-dev
e30e02f5d9a9141c9ee70c712d4f9d52c88ea969 28-May-2014 Dianne Hackborn <hackbod@google.com> Add system layer for voice interaction services.

New window layer that voice interaction service windows
go in to. Includes a new voice-specific content rectangle
that voice activities are placed in to.

Add specific animations for this layer, sliding down from
the top (though this can be customized by the voice interaction
service).

Also add the concept of activities running for voice interaction
services for purposes of adjusting the animation used for them,
again sliding from the top, but not (yet?) customizable by the
voice interaction service.

Change-Id: Ic9e0e8c843c2e2972d6abb4087dce0019326155d
WindowManager.aidl
indowManager.java
indowManagerPolicy.java
c1073c3376763a68d4acff68be745227ee63bef9 29-May-2014 Chris Craik <ccraik@google.com> Merge "Make ViewPropertyAnimator correctly damage shadow receivers" into lmp-preview-dev
b8a091347160bbdf8d1720746d106a25ad205863 29-May-2014 Chris Craik <ccraik@google.com> Merge "Respect Z ordering in touch dispatch, software drawing" into lmp-preview-dev
3048545c5a7c1bf610b054330c4df79b5d1cfc53 28-May-2014 Chris Craik <ccraik@google.com> Make ViewPropertyAnimator correctly damage shadow receivers

bug:14313537
Change-Id: Ib0a2fa1bf6b611acd26cec59203075a193e30a1e
iewPropertyAnimator.java
ab008f0c642461b033e6f7dd3edfc49a43fb6293 24-May-2014 Chris Craik <ccraik@google.com> Respect Z ordering in touch dispatch, software drawing

bug:14390526
Change-Id: I617a6ea7dbac1facae246491a247cf307452fc0e
iewGroup.java
c93ee799ee55d3eb738e6f951d9b0bf6aa1b67f5 28-May-2014 John Reck <jreck@google.com> am 94e5ee1c: Merge "Disable RT animations" into lmp-preview-dev

* commit '94e5ee1c3b2c5f70a5e687a77dcc2c93db50b062':
Disable RT animations
4645ab81b78746f2ff2ec206b35b8542599ae69c 28-May-2014 John Reck <jreck@google.com> Disable RT animations

Bug: 15287046

Change-Id: Ib511053726153649ea1bda337d14bc05db4f0bf9
iewPropertyAnimator.java
00f535845bebe4fba1de77ebd0119c7c23197a4f 28-May-2014 Dan Stoza <stoza@google.com> Merge "SurfaceFlinger: Add sourceCrop to screenshot"
81d29b5f0c8018f3cb49d2598322aa652a4417f2 28-May-2014 John Reck <jreck@google.com> am 2d196d9f: Merge "Implement FlushCaches TODO" into lmp-preview-dev

* commit '2d196d9f9d4978fd0df80815e15012518be5ff18':
Implement FlushCaches TODO
45d01929291eba56e1bce582192941446b86bf5a 28-May-2014 John Reck <jreck@google.com> Merge "Implement FlushCaches TODO" into lmp-preview-dev
f87ec6a64484e263e66795f24faea73b3620cacb 28-May-2014 Chris Craik <ccraik@google.com> am 365dfe93: Merge "Update docs around empty/null outline behavior" into lmp-preview-dev

* commit '365dfe93dd3baab1417e20bc9ba7e3175600faa0':
Update docs around empty/null outline behavior
ddce68996b8a37e49091a22d3320039c8488d7cc 28-May-2014 Chris Craik <ccraik@google.com> Merge "Update docs around empty/null outline behavior" into lmp-preview-dev
0d674623facfbd3e9c520d2be4ed98977b92a1a2 21-May-2014 Jorim Jaggi <jjaggi@google.com> Add methods to coordinate unlock animation.

Introduce IWindowManager.keyguardGoingAway to notify that Keyguard
wants to dismiss it self. This method starts the state machine in
WindowAnimator which animates in the activity behind the keyguard.
Animating out the keyguard is done by the StatusBar/Keyguard
software when it receives the startKeyguardExitAnimation() callback.

Bug: 14118756

Change-Id: Id3b8f41189410bad808b4892fbec74245e59efce
WindowManager.aidl
indowManagerPolicy.java
67c360f3d52e705258182dbc448ef528599482fa 27-May-2014 Chris Craik <ccraik@google.com> Update docs around empty/null outline behavior

bug:15257846
Change-Id: Ie4d1b0aaeb900eaaa7e54097f3e0d795beb8f445
iew.java
e67a784eb2c914c04c62ea5dfa1e3751df5582cc 21-May-2014 Craig Mautner <cmautner@google.com> Modify task navigation to return to recent tasks. DO NOT MERGE

Tasks launched from the recent task list will now return to the list
when they are finished. Also tasks that are launched from the
notification panel and services will now return to the list,
provided that the launcher is not front and center when they are
launched.

Fixes bug 14464114.

Change-Id: Ic0d3731fc7248d1eaa80e5ee399753d80e80c979
indowManagerPolicy.java
df6523f2703920a1d2a84c45b862b325b8cebf40 21-May-2014 Craig Mautner <cmautner@google.com> Modify task navigation to return to recent tasks.

Tasks launched from the recent task list will now return to the list
when they are finished. Also tasks that are launched from the
notification panel and services will now return to the list,
provided that the launcher is not front and center when they are
launched.

Fixes bug 14464114.

Change-Id: Ic0d3731fc7248d1eaa80e5ee399753d80e80c979
indowManagerPolicy.java
cd3a8245489fa36c528b075efe99a147cf4f6785 24-May-2014 Chris Craik <ccraik@google.com> Merge "DO NOT MERGE Inspect SkShader to determine hw shader." into lmp-preview-dev
e1628b7c6fc3822fa83cf02028ce8ad67abb0afe 24-May-2014 John Reck <jreck@google.com> Implement FlushCaches TODO

Change-Id: Id05429e98ffe0858275b32c41fb215c1d8d930b2
hreadedRenderer.java
d04d303e5d8521403514cf960a694e566df19536 23-May-2014 John Reck <jreck@google.com> resolved conflicts for merge of 1f6c973b to master

Change-Id: I0d0a72f1d737fa80ac4c258c1f9fc52ef85724bd
a5dda645da738da7b4ae15e28fa7d93d3b04b94f 23-May-2014 John Reck <jreck@google.com> Bag of scheduling tweaks

Bug: 15118640

* Prevent over-stuffing the queue by dropping frames
* Prevent double-drawing in one pulse by RT by deferring
vsync registration until post-draw so that it catches
the next vsync pulse instead of the current one
* Bias vsync race condition towards the UI thread
* Fix queueDelay to actually work

Change-Id: Ibf584258bd93ebcbba058bd976dc8b307f1c6155
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
9890e341bf9d565309cd7db5e6c4194c66c0a1d8 23-May-2014 Dan Stoza <stoza@google.com> SurfaceFlinger: Add sourceCrop to screenshot

Adds a sourceCrop Rect parameter to screenshot commands, which allows
clients to capture only a portion of the screen instead of the whole
screen.

Bug: 15137922
Change-Id: I629447573cd34ffb96334cde7ba02490b9ea06d8
urfaceControl.java
0fa2bd699ab5539c0ce6b79eb6b4b681734b8bb5 05-May-2014 Leon Scroggins III <scroggo@google.com> DO NOT MERGE Inspect SkShader to determine hw shader.

cherry-pick of Iaa7189178bda1c55f96da044d2a9fa602ba36034

Instead of duplicating internal info about SkShader, inspect the
SkShader installed on the SkPaint.

core/java/android/view/GLES20Canvas.java:
Remove setupModifiers, nResetModifiers, and nSetupShader.

core/jni/android/graphics/Shader.cpp:
Remove calls to create/destroy the (previously) attached SkiaShader.

core/jni/android_view_GLES20Canvas.cpp:
Remove native code for setupShader and resetModifiers.

graphics/java/android/graphics/BitmapShader.java:
graphics/java/android/graphics/ComposeShader.java:
graphics/java/android/graphics/LinearGradient.java:
graphics/java/android/graphics/RadialGradient.java:
graphics/java/android/graphics/Shader.java:
graphics/java/android/graphics/SweepGradient.java:
Remove code keeping track of native SkiaShader.

libs/hwui/Caches.h:
Include Extensions.h.

libs/hwui/DeferredDisplayList.cpp:
Compare shaders on the paint, instead of on DrawModifiers.

libs/hwui/DisplayList.cpp:
libs/hwui/DisplayList.h:
Remove vector of SkiaShaders.

libs/hwui/DisplayListOp.h:
Access the SkShader on mPaint.
Remove SetupShaderOp and ResetShaderOp.

libs/hwui/DisplayListRenderer.cpp:
libs/hwui/DisplayListRenderer.h:
Remove resetShader, setupShader, refShader, and mShaderMap.

libs/hwui/FontRenderer.cpp:
Pass SkShader to setupDrawShader and setupDrawShaderUniforms.

libs/hwui/OpenGLRenderer.cpp:
libs/hwui/OpenGLRenderer.h:
Add LayerShader, a class inheriting from SkShader, to mimic the
behavior of SkiaLayerShader. Unlike SkiaLayerShader, it can be set on
the SkPaint so it can be inspected later.
Set a LayerShader instead of a SkiaLayerShader.
setupDrawShader and setupDrawShaderUniforms now inspect an SkShader
passed in.
Inspect SkShader instead of mDrawModifiers.mShader.
Remove resetShader and setupShader.
setupDrawColorUniforms now takes a boolean indicating whether there is
a shader.
Add an inline function for accessing the SkShader on an SkPaint.
In setupDrawBlending(Layer*, bool), do not check the shader (which will
never be set), but do check whether the color filter may change the
alpha (newly fixed behavior).
In setupDrawBlending(SkPaint, ...), check the SkShader and whether the
color filter affects alpha (the latter is new behavior).

libs/hwui/Renderer.h:
Remove pure virtual functions setupShader and resetShader.

libs/hwui/ResourceCache.cpp:
libs/hwui/ResourceCache.h:
Remove functions for refing/unrefing shaders.

libs/hwui/SkiaShader.cpp:
libs/hwui/SkiaShader.h:
Much of this code was redundant and has been removed.
Convert structs into class with nothing but static functions for
calling describe/setupProgram.

libs/hwui/TextureCache.cpp:
libs/hwui/TextureCache.h:
Use the SkPixelRef as the key to the bitmap Lru cache, since shader
inspection will provide a different SkBitmap pointer (though it will
hold the correct SkPixelRef with the correct generation ID).

tests/CanvasCompare/src/com/android/test/hwuicompare/DisplayModifier.java:
tests/CanvasCompare/src/com/android/test/hwuicompare/ResourceModifiers.java:
Update manual test to have more shaders: radial, sweep, compose,
invalid compose.

BUG:10650594
Change-Id: I2e7182b3fc28268e7ca82fac6780540b6b45365c
LES20Canvas.java
2a89b08eb1d48208f52eeaf12cb8b687abe81e1c 23-May-2014 Michael Wright <michaelwr@google.com> Merge "Add ability to request unbuffered dispatching."
d490aa426090fc358873821b47ef27ead0c97409 23-May-2014 Chris Craik <ccraik@google.com> Merge "Inspect SkShader to determine hw shader."
d1ad5e62fda248c6d185cde3cb6d9f01a223066c 05-May-2014 Leon Scroggins III <scroggo@google.com> Inspect SkShader to determine hw shader.

Instead of duplicating internal info about SkShader, inspect the
SkShader installed on the SkPaint.

core/java/android/view/GLES20Canvas.java:
Remove setupModifiers, nResetModifiers, and nSetupShader.

core/jni/android/graphics/Shader.cpp:
Remove calls to create/destroy the (previously) attached SkiaShader.

core/jni/android_view_GLES20Canvas.cpp:
Remove native code for setupShader and resetModifiers.

graphics/java/android/graphics/BitmapShader.java:
graphics/java/android/graphics/ComposeShader.java:
graphics/java/android/graphics/LinearGradient.java:
graphics/java/android/graphics/RadialGradient.java:
graphics/java/android/graphics/Shader.java:
graphics/java/android/graphics/SweepGradient.java:
Remove code keeping track of native SkiaShader.

libs/hwui/Caches.h:
Include Extensions.h.

libs/hwui/DeferredDisplayList.cpp:
Compare shaders on the paint, instead of on DrawModifiers.

libs/hwui/DisplayList.cpp:
libs/hwui/DisplayList.h:
Remove vector of SkiaShaders.

libs/hwui/DisplayListOp.h:
Access the SkShader on mPaint.
Remove SetupShaderOp and ResetShaderOp.

libs/hwui/DisplayListRenderer.cpp:
libs/hwui/DisplayListRenderer.h:
Remove resetShader, setupShader, refShader, and mShaderMap.

libs/hwui/FontRenderer.cpp:
Pass SkShader to setupDrawShader and setupDrawShaderUniforms.

libs/hwui/OpenGLRenderer.cpp:
libs/hwui/OpenGLRenderer.h:
Add LayerShader, a class inheriting from SkShader, to mimic the
behavior of SkiaLayerShader. Unlike SkiaLayerShader, it can be set on
the SkPaint so it can be inspected later.
Set a LayerShader instead of a SkiaLayerShader.
setupDrawShader and setupDrawShaderUniforms now inspect an SkShader
passed in.
Inspect SkShader instead of mDrawModifiers.mShader.
Remove resetShader and setupShader.
setupDrawColorUniforms now takes a boolean indicating whether there is
a shader.
Add an inline function for accessing the SkShader on an SkPaint.
In setupDrawBlending(Layer*, bool), do not check the shader (which will
never be set), but do check whether the color filter may change the
alpha (newly fixed behavior).
In setupDrawBlending(SkPaint, ...), check the SkShader and whether the
color filter affects alpha (the latter is new behavior).

libs/hwui/Renderer.h:
Remove pure virtual functions setupShader and resetShader.

libs/hwui/ResourceCache.cpp:
libs/hwui/ResourceCache.h:
Remove functions for refing/unrefing shaders.

libs/hwui/SkiaShader.cpp:
libs/hwui/SkiaShader.h:
Much of this code was redundant and has been removed.
Convert structs into class with nothing but static functions for
calling describe/setupProgram.

libs/hwui/TextureCache.cpp:
libs/hwui/TextureCache.h:
Use the SkPixelRef as the key to the bitmap Lru cache, since shader
inspection will provide a different SkBitmap pointer (though it will
hold the correct SkPixelRef with the correct generation ID).

tests/CanvasCompare/src/com/android/test/hwuicompare/DisplayModifier.java:
tests/CanvasCompare/src/com/android/test/hwuicompare/ResourceModifiers.java:
Update manual test to have more shaders: radial, sweep, compose,
invalid compose.

BUG:10650594

Change-Id: Iaa7189178bda1c55f96da044d2a9fa602ba36034
LES20Canvas.java
b8fe2fcd71e438b5ea6a85b1e2024ca9dc62b9d1 22-May-2014 Chris Craik <ccraik@google.com> Merge "Define light position (using new lighting spec) in Java"
5c4cd189f298b3ddb9a5e8afc5f68546a9f96726 21-May-2014 Svetoslav <svetoslavganov@google.com> Fixing bugs due to the new custom accessibility action APIs.

1. AccessibiltiyAction was incorectly throwing an exception when
a custom action was constructed.

2. AccessibilityManagerService should no longer enforce only standard
actions as we allow custom ones too.

bug:15110963

Change-Id: Iea57e0a6449b87bd8d103c55ca255e80705f2565
ccessibility/AccessibilityNodeInfo.java
797b95b26bbb7557678af78b9a2a61830158920f 21-May-2014 Chris Craik <ccraik@google.com> Define light position (using new lighting spec) in Java

Also updates the relative shadow strengths.

Change-Id: I6cac7275d38df98aea9f0dda463cd7207102986a
LRenderer.java
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
3346a802087f621c6441bc512dfcc17b07143fc6 20-May-2014 John Spurlock <jspurlock@google.com> VolumeZen: SystemUI now hosts the volume dialog.

- Allow SystemUI to set the volume controller interface using
a new binder call to audio service.
- Remove VolumePanel's dependency on AudioService.
- Host the base VolumePanel in the SystemUI process.

Change-Id: I095d5a1a579d42b68d0f81abb4087bd0c754b876
olumePanel.java
7a8e6e59abf23640cdb21a0ed62934779a52b0c9 21-May-2014 Kristian Monsen <kristianm@google.com> Merge "Consider addAction(int action) to possibly be a bit mask"
8d5f3fa6455c1eedb4f31bbaf075f2c1f9a2887a 20-May-2014 Kristian Monsen <kristianm@google.com> Consider addAction(int action) to possibly be a bit mask

bug=15092606

Change-Id: I885808b3f4d2337129d1660300be8e926f8a8425
ccessibility/AccessibilityNodeInfo.java
47a7d61e70230bbed030e8795a17bf43c479616f 21-May-2014 Chris Craik <ccraik@google.com> Merge "Clean up Outline API, method on drawable"
7dc5b41e609d3ff55ca194682832d14a7236fa87 20-May-2014 Chris Craik <ccraik@google.com> Clean up Outline API, method on drawable

bug:15025466
bug:15089680
Change-Id: I8d3b64a0d9dbdbaf679042c8b384d2050323a8e6
enderNode.java
iew.java
1fcc3b18969815ab1a386823fa246f483465dd04 20-May-2014 John Reck <jreck@google.com> Merge "Baby steps"
96658f716779b4f2f5dd148cbf6df59d5a87ace4 14-May-2014 Jinsuk Kim <jinsukkim@google.com> New keycode definitions for HDMI-CEC

Following keys are added to be mapped to HDMI-CEC standard keys:

KEYCODE_MEDIA_TOP_MENU
KEYCODE_11
KEYCODE_12
KEYCODE_LAST_CHANNEL
KEYCODE_TV_DATA_SERVICE

Also updated the information on the key code update by removing
some files not present any more.

Change-Id: I305d9b578c1824f34c457144a68132717dc9a97f
nputDevice.java
eyEvent.java
c80ad99a33ee49d0bac994c1749ff24d243c3862 20-May-2014 Alan Viverette <alanv@google.com> TouchFeedbackDrawable is now RippleDrawable

Change-Id: I59f5f04b73089215c6320560556ac21beb03db06
iew.java
918988c1ce5af002d41c7ac37f3fa490558b0c90 19-May-2014 John Reck <jreck@google.com> Baby steps

Run ViewPropertyAnimators with no listeners on the RenderThread

Change-Id: I7ff5300db96c7f4b59b09e3fff8a0df173f132dd
enderNodeAnimator.java
iewPropertyAnimator.java
iewPropertyAnimatorRT.java
86faf9ec3edc24a9d04548e151bca3a2510396a4 19-May-2014 John Reck <jreck@google.com> Workaround double-translate bug

Bug: 15065005

Change-Id: Ie0f77c6ea13eebf3508df7513b79efaa65d31de0
hreadedRenderer.java
677a9f24962eee95ad959e587b193da93d8872d1 18-May-2014 Alan Viverette <alanv@google.com> Merge "Fix onHardwarePreDraw call in ThreadedRenderer"
d5b2ec4ff15f828298290534c9d322c82f8d130c 18-May-2014 Alan Viverette <alanv@google.com> Fix onHardwarePreDraw call in ThreadedRenderer

Change-Id: Ia3852cbd7afc21e9f57824e9f207ba02acae12a7
hreadedRenderer.java
d27a69c40d285c8911dac19c22926ec279110e51 17-May-2014 Michael Wright <michaelwr@google.com> Merge "Add InputStage debugging logs"
9d744c731295e6ba9b0031f3fb63b0df13e591d8 19-Feb-2014 Michael Wright <michaelwr@google.com> Add ability to request unbuffered dispatching.

While in general input batching has a lot of benefits, some apps would prefer
the input system not batch at all. This is typically because they do some of
the batching as part of their own input processing, as is the case with Chrome.

Bug: 12973909
Change-Id: I2e0c2b4c51bacc06f88245c528aa8849e4c4dab2
iew.java
iewRootImpl.java
87cd0dc425201d56f1b07fa710d4f44fff4131bc 15-Apr-2014 Tim Kilbourn <tkilbourn@google.com> Add KEYCODE_PAIRING.

Used for initiating a peripheral pairing mode.

Change-Id: I8e172bdda1f3c34eff36f3001c174f7a6b6e6e41
eyEvent.java
4b300d7dcbe47035ce6cea3fab6eff76bdc4d803 16-May-2014 John Reck <jreck@google.com> Merge "Add missing fence()"
44ac42a6c9c3aa2614ef2369cda2e3de989c1fe0 16-May-2014 John Reck <jreck@google.com> Add missing fence()

Bug: 14995924

Change-Id: I991fe74f01468b1b7e34aee0455dc419637f5c8d
iewRootImpl.java
ad2f8e334f3ef22d3e412b0660a2e1f996f94116 16-May-2014 Alan Viverette <alanv@google.com> Update ripple behavior, use render thread animation

Change-Id: Ib6bc1e08b05d29606f452961963d58b8fc866746
enderNodeAnimator.java
iew.java
6d6ce03a03583b0e8effc1d825057578af382d0b 16-May-2014 John Reck <jreck@google.com> resolved conflicts for merge of 313c5f38 to master

Conflicts:
core/java/android/view/HardwareRenderer.java

Change-Id: Ic5e4d578932fdcfe52d5f541bf1e1a93f33c32cd
313c5f38e850b77713e11088326f0c98c3880a59 16-May-2014 John Reck <jreck@android.com> am f18aed83: am 0661ddee: Merge "Enable display list updates with zero delta time"

* commit 'f18aed83f63b41fc9e2fd4cecc1fdf2c08c302c0':
Enable display list updates with zero delta time
f18aed83f63b41fc9e2fd4cecc1fdf2c08c302c0 16-May-2014 John Reck <jreck@android.com> am 0661ddee: Merge "Enable display list updates with zero delta time"

* commit '0661ddee112477db180d65e605f34fd538fdf8bc':
Enable display list updates with zero delta time
c9ee304c91b5572f0c1cd95e9bd1e4a84e28587d 16-May-2014 Chris Craik <ccraik@google.com> Merge "Round rect outline clipping"
deeda3d337aed1eee218b89a7aba5992ced371f0 06-May-2014 Chris Craik <ccraik@google.com> Round rect outline clipping

Change-Id: Iee9cf4f719f6f1917507b69189ad114fa365917b
enderNode.java
iew.java
e78e6f923774ac2cadee43fbf09b4df6b2b4ee87 15-May-2014 Adrian Roos <roosa@google.com> Merge "Colorize SystemUI"
e71c2af2a1b1a93f879df2258ab74368efac0780 15-May-2014 Adrian Roos <roosa@google.com> Merge "Add System UI Color API"
a3d5d3ca1140304e26c41cc29b029dc9c5330b1b 15-May-2014 John Reck <jreck@google.com> Merge "Animator start value..."
177cf2155dae43cb8766dd239d34a861d8fba335 15-May-2014 Svetoslav Ganov <svetoslavganov@google.com> Merge "Adding custom events to AccessibilityNodeInfo"
74bc19476536f2b5462eaa29e6f3029ee897c16d 29-Apr-2014 Kristian Monsen <kristianm@google.com> Adding custom events to AccessibilityNodeInfo

Change-Id: Id7a1985d1a6c4a9f7153f6d4d7e45f80c8d2b2b0
iew.java
ccessibility/AccessibilityNodeInfo.java
ea56251d92050e9a672d1f66d0d4621e4dd4136e 05-May-2014 Adrian Roos <roosa@google.com> Colorize SystemUI

Makes the color of the status and navigation bars customizable by
the app.

Bug: 14564488
Change-Id: I036edc228cfe1b659c7f11a43cdc4598ee705ff8
iew.java
indow.java
217ccd2f82031f05d111bce7308a65136f278c7a 09-May-2014 Adrian Roos <roosa@google.com> Add System UI Color API

Bug: 14564488
Change-Id: Ibebe87faeb1b730f9ac33bb5074a7b4f71b9d1c7
indow.java
indowManager.java
ff941dcd815021bb20d6504eb486acb1e50592c3 15-May-2014 John Reck <jreck@google.com> Animator start value...

Change-Id: Ifd35ed95a28c625086d7fa97764fe63ab4a997f1
enderNodeAnimator.java
45bbc06c7c647e7fcf0a61bf9b13518bbf96c1f7 15-May-2014 George Mount <mount@google.com> Merge "Support Activity Transitions when activity stopped."
62ab9b78b77b7dd851c47115f4d8d7611d657585 02-May-2014 George Mount <mount@google.com> Support Activity Transitions when activity stopped.

Bug 14459812
Bug 14454812
Bug 14450295

A new transport was supported for Activity Transitions
in which convertToTranslucent can now take a Bundle
to transport to the calling Activity. This also allows
waking Activities to regain the communication between
the exiting Activity and the calling Activity.

Change-Id: I29aee14b7e56d9b8b9fb656f382b2c4172b02e14
iewGroup.java
ed1a18f40f59ea54a59a06af31429289731e2405 15-May-2014 Yohei Yukawa <yukawa@google.com> Merge "Make a copy of Matrix in CursorAnchorInfoBuilder"
419b1b0498e33a556780be1702b444d54fcaa7dd 15-May-2014 Yohei Yukawa <yukawa@google.com> Make a copy of Matrix in CursorAnchorInfoBuilder

This CL fixes a bug that CursorAnchorInfoBuilder does't make a
copy if the Matrix specified with #setMatrix.

Without this fix, IMM#updateCursorAnchorInfo could fail to detect
duplicated events when the same instances of
CursorAnchorInfoBuilder and Matrix are reused to optimize
performance.

Change-Id: I50c50a12a06d3cda4dec445b171b61ceb78da21a
nputmethod/CursorAnchorInfo.java
2836c4722a156ec78d7f4101b394885a354f5dd6 15-May-2014 Raph Levien <raph@google.com> Merge "Start of Minikin integration"
9edfec8b4527c62f594adb275e49f6d6ca945c05 15-May-2014 Yohei Yukawa <yukawa@google.com> Merge "Enable CursorAnchorInfo to contain composing string"
cf85d6ee0f533b78925330d464bf98856f76bb8a 13-May-2014 Tina Zhang <tina.zhang@intel.com> Enable display list updates with zero delta time

It's better not to cancel display lists updates. In the emulator, if we use
low precision clock source like refined-jiffies, the display list which
should be updated with a new frame, won't be updated due to the delta time
is 0 . And this makes all the hardware accelerated GUI out of order.

Change-Id: I41dba8965c96b6ad1b6d326ad1d6fa4a0a49173f
Signed-off-by: Tina Zhang <tina.zhang@intel.com>
ardwareRenderer.java
06a7925a2e5ac604b57c3b2855010558fd7bc46b 06-May-2014 Michael Wright <michaelwr@google.com> Add InputStage debugging logs

Change-Id: I0cd606b0c43ec9ab34f006b750e77bc312f66439
iewRootImpl.java
92ddeeab47c9c98454df725275764e708025615f 14-May-2014 Michael Wright <michaelwr@google.com> Merge "Remove reflection from InputEventConsistencyVerifier ctor."
fa28b984474204ce918370fb249bfab8870140b6 14-May-2014 Michael Wright <michaelwr@google.com> Merge "Only translate prefixed strings to keys / axes."
c941fedf506aa48445999c4b20a8ea8ecdcc6991 14-May-2014 Yohei Yukawa <yukawa@google.com> Use java.util.Objects

This is a follow up CL for I451544fba746a76618.

This CL replaces libcore.util.Objects with java.util.Objects as
java.util.Objects is getting more and more widely used in
Android. There should be no behavioural change anyway.

Change-Id: Id9568ee98aa3845588017c3711e7d03a3481beea
nputmethod/InputMethodManager.java
81f4cb3f858f46a4d9b793c4d326b9bf6aca868d 13-May-2014 Yohei Yukawa <yukawa@google.com> Enable CursorAnchorInfo to contain composing string

This CL adds one more functionality to CursorAnchorInfo
that enables applications to associate the composition
string with its positional information. This is useful
for an IME to handle CursorAnchorInfo asynchronously.

This is also useful for the framework to detect if
the application is unnecessarily calling
IMM#updateCursorAnchroInfo with duplicate event.

BUG: 14579622
Change-Id: Ie75c17b523dad33e97b08c15f5f5267573ce2063
nputmethod/CursorAnchorInfo.java
973efa0813260c24390d46b07e524de605630180 14-May-2014 Michael Wright <michaelwr@google.com> Only translate prefixed strings to keys / axes.

In order to maintain compatibility, we need to only translate strings
prefixed with KEYCODE_ or AXIS_ into the appropriate key codes /
axes. Otherwise things like `adb shell input` will convert 4 into
KEYCODE_4 whereas before it would convert it into KEYCODE_BACK.

Bug: 14807833
Change-Id: I2cb41aa55dbb2e3fd62664c1b944877290d7e4be
eyEvent.java
otionEvent.java
957d620267045521603051a2816d5c538ba8d0a7 14-May-2014 Michael Wright <michaelwr@google.com> Remove reflection from InputEventConsistencyVerifier ctor.

InputEventConsistencyVerifier can be instantiated during
performTraversals, so we should probably not perform reflection when
it isn't necessary.

Bug: 14899726
Change-Id: Ia722fdc2de469b1ea6463c6523e18a85ddfbc110
nputEventConsistencyVerifier.java
191437447a2a3f2e58aec18e894ad571932dff6e 13-May-2014 John Reck <jreck@google.com> Merge "Wire up texture atlas"
66f0be65a1046f54ddce0498b242c1fa0776b1ea 13-May-2014 John Reck <jreck@google.com> Wire up texture atlas

Bug: 14590563

Change-Id: I2dffbc089dc801f5fb2d1c8fd38e1c71d160e110
hreadedRenderer.java
0ab4c72914be6490667f3e12fa9a1ae5f642daac 13-May-2014 George Mount <mount@google.com> Merge "Change sharedElementName to viewName."
515396a6b5ee3eab57fed87ee0f4aa63783e2e61 13-May-2014 John Reck <jreck@google.com> Merge "More native interpolators"
056ffe6d066592f19cdc6b19d246b00509dce621 13-May-2014 Yohei Yukawa <yukawa@google.com> Do not send duplicate CursorAnchorInfo to IME

This CL adds an optimization which checks if the same
CursorAnchorInfo is sent to the input method to
prevent these duplicate messages from being sent
unnecessarily.

BUG: 14579622
Change-Id: I451544fba746a766186123b9ac276221e968c8c3
nputmethod/InputMethodManager.java
c8ac775659fd252ce2cc9a61837c170ff70f0a1a 13-May-2014 John Reck <jreck@google.com> More native interpolators

Gotta collect 'em all

Change-Id: I3ccc2b5c842b27b906c8a0470fbedc2bf285bc38
nimation/AccelerateInterpolator.java
nimation/AnticipateInterpolator.java
nimation/AnticipateOvershootInterpolator.java
nimation/BounceInterpolator.java
nimation/CycleInterpolator.java
nimation/DecelerateInterpolator.java
nimation/LinearInterpolator.java
nimation/OvershootInterpolator.java
315c329544d7c593d1072b071cbb92d9afe74021 10-May-2014 John Reck <jreck@google.com> Add TimeInterpolator support to RNA

Bug: 14678626

Change-Id: I6554e7fcd42c49fac3618ca792083bb68e358f55
horeographer.java
enderNodeAnimator.java
hreadedRenderer.java
nimation/AccelerateDecelerateInterpolator.java
abb352a941cbd87c14cce9ccfa83157b913d41f2 09-May-2014 George Mount <mount@google.com> Change sharedElementName to viewName.

Bug 14624181

Change-Id: Ic98554c257d4115a917481eb50505373f6d58fa8
iew.java
iewGroup.java
1a73f732f91e97c9c66b808c245ddda36a10e987 31-Jan-2014 Raph Levien <raph@google.com> Start of Minikin integration

This is the current state of the Minikin integration. All changes are
hidden behind USE_MINIKIN #ifdef, so it should be safe to apply. To
play with the Minikin branch, set this in your BoardConfig.mk .

This change also merges in 64-bit changes that were happenening in
parallel.

Change-Id: Idd94553bcbe324c5875d0ff06495c966c3e95b7f
LES20Canvas.java
c8d31963d6af81465de9801e6a88ebcbf862da35 12-May-2014 Yohei Yukawa <yukawa@google.com> Remove an unused member.

IMM#mCursorAnchorInfoBuilder was added in I61dec2f8fa671ba891d
but not used actually.

Change-Id: If320e2814cf977305f6a0bea890d562590620348
nputmethod/InputMethodManager.java
17048b84ec10e406da3d25f966b69f91871da5f8 10-May-2014 Adam Powell <adamp@google.com> Merge "Revert "Remove the View#initializeScrollbars API""
d20aa6c5315b817f053a84f86e5c3e44049399d7 10-May-2014 Adam Powell <adamp@google.com> Revert "Remove the View#initializeScrollbars API"

Looks like there are some bugs in the API checker for @removed.

This reverts commit 172c26e20fd71a2b4489a80b96ea5f6292db6430.

Change-Id: Ia4e610f71af19c5521fc019b9a6c26d0c11f23f1
iew.java
0604dbc18e4f6fcb6ba35da4e0867cc4cf1a8f4a 10-May-2014 Adam Powell <adamp@google.com> Merge "Remove the View#initializeScrollbars API"
5d4c35d1eabd4b8b58d606099b6664d2611c6fc0 10-May-2014 Adam Powell <adamp@google.com> Remove the View#initializeScrollbars API

This was never a safe API for apps to call since the TypedArray
parameter must have been obtained by filtering on
android.R.styleable.View, which is not public. Any behavior in the
wild has therefore been undefined.

Change-Id: Id19f571c92748ef2a8c036072fd83a417527f779
iew.java
9fa4071c4768c63902c6a74a4b480b51a8b95d43 10-May-2014 John Reck <jreck@google.com> Refactor VirtualLightRefBase & JNI

Change-Id: I8e244e7109e59d5be96871b23bb9b1201c7f9eaa
enderNodeAnimator.java
2ac997917924161ed2eed5f4387246beb58c456e 09-May-2014 Yohei Yukawa <yukawa@google.com> Merge "Introduce new API for floating window support"
c2ddd6023688db5ecf6c586e05f55e262b4a802e 06-May-2014 Yohei Yukawa <yukawa@google.com> Introduce new API for floating window support

This CL introduces a new API IMM#updateCursorAnchorInfo for
floating window support.

BUG: 14579622
Change-Id: I61dec2f8fa671ba891da1d4af08975750e3acb04
nputmethod/CorrectionInfo.java
nputmethod/CursorAnchorInfo.aidl
nputmethod/CursorAnchorInfo.java
nputmethod/InputMethodManager.java
nputmethod/InputMethodSession.java
nputmethod/SparseRectFArray.java
7c1c71e27b44c9a735e27399d7d9859193f59b81 09-May-2014 Michael Wright <michaelwr@google.com> Temporarily remove the dpad keys from system keys.

Bug: 14438911
Change-Id: Ibb58a4af89585b6e266f5236df22f0465dd17bd4
eyEvent.java
5b554f010358d8f47e31d92a42aa3edc4a71ec47 08-May-2014 Derek Sollenberger <djsollen@google.com> Merge "Avoid caching shadow properties in Java & HWUI."
b466977765342754b45b946a8ace9f5f132db13f 08-May-2014 Alan Viverette <alanv@google.com> Merge "State based animators for Views"
f4c5bf30b445874cf353e1b96cab94185a39ce6d 07-May-2014 Yigit Boyar <yboyar@google.com> State based animators for Views

Set quantum theme buttons to elevate 2dp on press

Change-Id: Ibf4f5ef166b901382c304d392eba075836a96a35
iew.java
ae493d967ff47312f7b6d80fdd67377c73214a5e 08-May-2014 John Reck <jreck@google.com> Merge "Allow all loopers to be RT-accelerated"
030d619aaab044491381e72f222cc9ba8dabcc19 08-May-2014 John Reck <jreck@google.com> Allow all loopers to be RT-accelerated

Bug: 14445956

Change-Id: I03e92642aa118db5c7fefa1f09c3a5bde6ea671d
iewRootImpl.java
ef27453cf71e331e4076df5e5c665b06d5c3e050 07-May-2014 John Reck <jreck@google.com> Merge "Cleanup attachFunctor"
832b151465ed81c43e59891d5eebe62128b21fbb 07-May-2014 John Reck <jreck@google.com> Cleanup attachFunctor

Bug: 13961296

Change-Id: Id48d11bfcc234afd1fd7e4fdd409a50e7208c81d
LES20Canvas.java
LRenderer.java
ardwareCanvas.java
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
b6d9211d31d29221501a8f2a33e6ba0fe18d6ef5 07-May-2014 John Reck <jreck@google.com> Merge "Implement TODO(romainguy)"
63a06673253914510bbeebd500655008682dade1 07-May-2014 John Reck <jreck@google.com> Implement TODO(romainguy)

Bug: 14277445

Change-Id: Id52d6f7fcc023000adcc440bd4da67d9a673536b
LRenderer.java
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
4297409e458646db914d78f20aef71606622ca7e 07-May-2014 Guang Zhu <guangzhu@google.com> resolved conflicts for merge of 1e8a87dd to master

Change-Id: Id51218b4e2ca06344b5e7596ebde355fba9cfa54
c29a0a4664a4b9871fadd668b632469a0db240b9 31-Mar-2014 Derek Sollenberger <djsollen@google.com> Avoid caching shadow properties in Java & HWUI.

bug: 10650594
Change-Id: I6f57df002710bb0567ed7e53fc0bfe96cfd504b8
LES20Canvas.java
05ee2bd617f50fe129cf36ae306e6059335e02aa 07-May-2014 Adam Powell <adamp@google.com> am bfbddcad: am 4f295fe8: Merge "Clean up WindowInsets API for release" into klp-modular-dev

* commit 'bfbddcad6004b7d178fb777c3a2b8b8a3dfe53ad':
Clean up WindowInsets API for release
1e8a87dd3c7735a8a0c6c1115450ba80501800c2 07-May-2014 Guang Zhu <guangzhu@google.com> am f31d73c9: Merge "send accessibility events on view property invalidation" into klp-modular-dev

* commit 'f31d73c9859a4124e5d4e618f4b147f55f693ef6':
send accessibility events on view property invalidation
f31d73c9859a4124e5d4e618f4b147f55f693ef6 07-May-2014 Guang Zhu <guangzhu@google.com> Merge "send accessibility events on view property invalidation" into klp-modular-dev
84e25098233ff3776357cb74edeeb33e3c3f6c3d 02-May-2014 Guang Zhu <guangzhu@google.com> send accessibility events on view property invalidation

from certain call sites of invalidateViewProperty, appropriate
accessibility event needs to be delivered as well.

Below is a list of call references found, ones with "*" are
modified by this change:

package: android.view
View
*offsetLeftAndRight(int) (4 matches)
*offsetTopAndBottom(int) (4 matches)
*setAlpha(float)
setCameraDistance(float) (2 matches)
setLayerPaint(Paint)
setPivotX(float) (2 matches)
setPivotY(float) (2 matches)
*setRotation(float) (2 matches)
*setRotationX(float) (2 matches)
*setRotationY(float) (2 matches)
*setScaleX(float) (2 matches)
*setScaleY(float) (2 matches)
setTransitionAlpha(float)
*setTranslationX(float) (2 matches)
*setTranslationY(float) (2 matches)
ViewGroup
*offsetChildrenTopAndBottom(int)
ViewOverlay
OverlayViewGroup
invalidateViewProperty(boolean, boolean) (2 matches)
ViewPropertyAnimator
AnimatorEventListener
onAnimationUpdate(ValueAnimator) (2 matches)

Bug: 14262013

Change-Id: Ibc9ed438f476ad10a6ad8df668142958c5903f55
iew.java
iewGroup.java
6c8e788e37dea5db682e2ad405f8e1b23990765e 07-May-2014 Jeff Brown <jeffbrown@google.com> Merge "Fix crash due to texture view callback threading invariants."
bfbddcad6004b7d178fb777c3a2b8b8a3dfe53ad 07-May-2014 Adam Powell <adamp@google.com> am 4f295fe8: Merge "Clean up WindowInsets API for release" into klp-modular-dev

* commit '4f295fe8c66ef2878d93be420f73745d88422e35':
Clean up WindowInsets API for release
c7282e57cd01f1576baac04356bf99bee34e4c18 07-May-2014 Jeff Brown <jeffbrown@google.com> Fix crash due to texture view callback threading invariants.

Allow the client of a SurfaceTexture to specify the Handler to
which the update callback should be directed to avoid unnecessary
scheduling ping-pong between threads.

Fixed an invalid assumption in TextureView that it is attached
to the main looper which could result in a crash under certain
circumstances. In normal app processes, it is true that TextureViews
must be created on the main looper since hardware rendering is
currently only supported on the main looper. However, in the
system server, UI components run a different thread. Although
hardware rendering is normally disabled in the system server,
it may be enabled for certain developer features.

Bug: 14445309
Change-Id: I5ae17ad018b9ef05ba87ec2f972c7c82e2bca70a
extureView.java
f4a3941ebe0dab5eeded96059a6a5f7c1d075e64 06-May-2014 Adam Powell <adamp@google.com> Clean up WindowInsets API for release

Hide window decor inset methods and rename the clone* methods to have
less baggage.

Bug 14566960

Change-Id: Ia06bb959fd77acd6ff69f337c3200047a529612a
iew.java
indowInsets.java
9bd01ef0c6ba09ca626f49bd162ce9aede41b027 06-May-2014 Dan Stoza <stoza@google.com> Merge "Enable changing display configuration"
5f97930fc5dd44fcf1864acd53401c00b4de3a24 06-May-2014 Adam Powell <adamp@google.com> am c41fa708: am a0516e7a: Merge "onWindowDismissed API cleanup" into klp-modular-dev

* commit 'c41fa708271e204a7983aba291389ea1554227b2':
onWindowDismissed API cleanup
c41fa708271e204a7983aba291389ea1554227b2 06-May-2014 Adam Powell <adamp@google.com> am a0516e7a: Merge "onWindowDismissed API cleanup" into klp-modular-dev

* commit 'a0516e7ad12a647cc40fb5651e8d14cd39571c7a':
onWindowDismissed API cleanup
a0516e7ad12a647cc40fb5651e8d14cd39571c7a 06-May-2014 Adam Powell <adamp@google.com> Merge "onWindowDismissed API cleanup" into klp-modular-dev
55d47f6be8ba5aab8d9d9cc19e3549c354f08e4f 06-May-2014 Chris Craik <ccraik@google.com> Merge "Fix pivot update rejection logic"
00101052b5bf99a29acea3525864ed64b709c16c 03-May-2014 Dan Stoza <stoza@google.com> Enable changing display configuration

This allows querying and switching display device configurations
through the ISurfaceComposer/SurfaceComposerClient interface.

Bug: 14320401
Change-Id: Ie4363bc8353d95428f1114ea48e5b1c8976e1730
urfaceControl.java
6c1787cfea03758d4884119d387b348d629c2794 06-May-2014 Chris Craik <ccraik@google.com> Fix pivot update rejection logic

bug:14228573
Change-Id: Ia4c88f878ce325ee961117cf255c971d9947d5c6
iew.java
ebb9e69513b690881a5bad7bf45c6f32e0fc7062 06-May-2014 John Reck <jreck@google.com> Merge "Implement loadSystemProperties"
117b695222135cc684e891d4126116b97a64bc9e 06-May-2014 Adam Powell <adamp@google.com> onWindowDismissed API cleanup

Move the window swipe to dismiss plumbing off of Window.Callback into
its own internal interface implemented by Activity and Dialog. Make it
internal API instead of public. Apps should control this via the
window feature setting.

Change-Id: I64cd237fa7eab08719b2c34e31dac7d34f02563a
indow.java
d6fe30600c86e46df499b3ab8f8b5fbbc8a2c528 06-May-2014 Justin Koh <justinkoh@google.com> am 9241a8d6: am 8031fa01: Fix build due to @deprecated tag not having content

* commit '9241a8d681397d5bacbae19cb081854ebed14d03':
Fix build due to @deprecated tag not having content
9241a8d681397d5bacbae19cb081854ebed14d03 06-May-2014 Justin Koh <justinkoh@google.com> am 8031fa01: Fix build due to @deprecated tag not having content

* commit '8031fa014cd9f8bb9eb7de47b76a732cdfade687':
Fix build due to @deprecated tag not having content
e4280baaa709c74d86cf6a389a4674ca665f5af6 06-May-2014 John Reck <jreck@google.com> Implement loadSystemProperties

Bug: 14087580

Change-Id: I7153f38c70b554a78c56a0e794da929fc401ee7a
hreadedRenderer.java
8031fa014cd9f8bb9eb7de47b76a732cdfade687 06-May-2014 Justin Koh <justinkoh@google.com> Fix build due to @deprecated tag not having content

Bug: 14441321
Change-Id: Ia42040db7030e4318ed2c34bbe90808a49f002db
iewConfiguration.java
7b529fcd6dc9064f5cbc2db95f9ac08bd59b0953 06-May-2014 Justin Koh <justinkoh@google.com> am 268f858b: Merge "Hide KeyEvent#isCancelKey, isConfirmKey DO NOT MERGE" into klp-modular-dev

* commit '268f858be57089e568bc55aa9089af54a53dcc94':
Hide KeyEvent#isCancelKey, isConfirmKey DO NOT MERGE
268f858be57089e568bc55aa9089af54a53dcc94 06-May-2014 Justin Koh <justinkoh@google.com> Merge "Hide KeyEvent#isCancelKey, isConfirmKey DO NOT MERGE" into klp-modular-dev
e0cc71fa19706dee06b1ef17dec720e420753162 06-May-2014 Justin Koh <justinkoh@google.com> am 1440cc6b: Merge "Hide InputDevice#supportsSource DO NOT MERGE" into klp-modular-dev

* commit '1440cc6bf37a268b439dfe86a9078b93bf1baf39':
Hide InputDevice#supportsSource DO NOT MERGE
6f5dcc35468d564eee925c0a479d988d0fd91163 06-May-2014 Justin Koh <justinkoh@google.com> Hide KeyEvent#isCancelKey, isConfirmKey DO NOT MERGE

Bug: 14116162
Change-Id: I6b947c9b46bb5ea094b39428bb432e8f6fc6b57a
eyEvent.java
8bed554e4ffe1a4b6b107b74da6651f31bd73e04 06-May-2014 Justin Koh <justinkoh@google.com> Hide InputDevice#supportsSource DO NOT MERGE

Bug: 14116162
Change-Id: I7c0ae516596f965083622aa77281abf6d47dc0b7
nputDevice.java
a13a17ee0cf08c9c961c67d33719c12b7e5540c5 06-May-2014 Justin Koh <justinkoh@google.com> am fd04632a: am 3caf9258: Merge "Hide getDeviceGlobalActionKeyTimeout" into klp-modular-dev

* commit 'fd04632ab5fe9272b0f1d2ff94367a574e026a5b':
Hide getDeviceGlobalActionKeyTimeout
fd04632ab5fe9272b0f1d2ff94367a574e026a5b 06-May-2014 Justin Koh <justinkoh@google.com> am 3caf9258: Merge "Hide getDeviceGlobalActionKeyTimeout" into klp-modular-dev

* commit '3caf92582498bad8fe79f6e3235be218e82b7f68':
Hide getDeviceGlobalActionKeyTimeout
1aa59f86ca63769f5b5c9b6be9078911e24998e9 04-May-2014 Justin Koh <justinkoh@google.com> Hide getDeviceGlobalActionKeyTimeout

Hide getDeviceGlobalActionKeyTimeout, as requested. Remove mention from
@deprecated notice.
Bug: 14441321

Change-Id: Ic6e84e718c2eaa15a86d8cd4d13645be88490b61
iewConfiguration.java
c6d2d3a069a22161e488f0bb5a53c8d654a657eb 05-May-2014 Alan Viverette <alanv@google.com> Merge "Partial revert "Load device default theme mapping from resources""
f9be77940e365036fecd8cc0e491e8545c34e79b 03-May-2014 John Reck <jreck@google.com> Make RenderNodeAnimator and WebView play nice

Change-Id: Ifaefcf510b2d377663fc86f60608d6ec9be8329a
hreadedRenderer.java
5effd7e89f83824ac8982a6cbcebbf5cc331e436 05-May-2014 Alan Viverette <alanv@google.com> Partial revert "Load device default theme mapping from resources"

This reverts commit e4ab72d54cf41d16819b72e94d9b0d0d51289647.

Change-Id: Id17170312c75993fc1f7859d52c7e050b2aeaf80
ontextThemeWrapper.java
18f16e6fba74eda173e1e7c869e6e2e2acc073ff 03-May-2014 John Reck <jreck@google.com> TIME LORD!

Bug: 14444180

Change-Id: I68bec3807c4d1c88d5af1aec2fe6907d60b5f2f3
horeographer.java
hreadedRenderer.java
1c058e96b3fb5075c34b89cf22773373811abf7a 02-May-2014 John Reck <jreck@google.com> Allow starting an RT animation via Canvas

Change-Id: I8b105a01cf28ad03797b63347343f6b999d46386
LES20RecordingCanvas.java
enderNode.java
enderNodeAnimator.java
52244fff29042926e21fa897ef5ab11148e35299 02-May-2014 John Reck <jreck@google.com> Add CanvasProperty for drawCircle

Change-Id: Icbcc030f5033d2094e567d7c519b9d672f2aac1c
LES20Canvas.java
ardwareCanvas.java
enderNodeAnimator.java
f46009225bc06b0c6f0230b9f8585a81d8857477 02-May-2014 Justin Koh <justinkoh@google.com> am 9abf0b90: am 60158445: Merge "Make global action key timeout configurable." into klp-modular-dev

* commit '9abf0b9031d0ddc33970589d2fb88065d15de712':
Make global action key timeout configurable.
9abf0b9031d0ddc33970589d2fb88065d15de712 02-May-2014 Justin Koh <justinkoh@google.com> am 60158445: Merge "Make global action key timeout configurable." into klp-modular-dev

* commit '6015844578dc4d725c7ab3d3004d18ffea446087':
Make global action key timeout configurable.
feabd2c7304f05eab30eebeb50016b073735443b 02-May-2014 Justin Koh <justinkoh@google.com> Make global action key timeout configurable.

Make global action key timeout configurable: deprecated the old public method
and created a new one: getDeviceGlobalActionKeyTimeout.
Bug: 14441321

Change-Id: Ifa9b136984a9f02cfe4040baeff11275174967c5
iewConfiguration.java
fb0448ab4b42c1b390cd75c3660ec0de511b7b3b 02-May-2014 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 4f8cd188 to master

Change-Id: I148cd616cd14d834915978aa2dc3f9e27188dbd3
4f8cd18880f1a63d2db376c3bfbfe11c55e6f1ee 02-May-2014 Jeff Brown <jeffbrown@google.com> am 7f6ab17d: Merge "Clean up some terminology related to interactive state." into klp-modular-dev

* commit '7f6ab17d414726868563105cd995b37dd519320b':
Clean up some terminology related to interactive state.
0a7e8f99970f8adaeaa895343ff0d1863900e9e3 02-May-2014 Alan Viverette <alanv@google.com> Fix build, also always draw accessibility focus rect

BUG: 13873026
Change-Id: Ie8c0b9d6ef10968f64fb33a89e010b9b15e93f8b
iewRootImpl.java
140ffc783c50bbe3b62e817c117a31b93e7f627e 02-May-2014 Jeff Brown <jeffbrown@google.com> Clean up some terminology related to interactive state.

Change-Id: Ife4445685a5314dea64332a3490fa8dd3ffd89a2
indowManagerPolicy.java
2f3c8d070a7511129f80b11b5916f2f3a4264f3e 01-May-2014 Alan Viverette <alanv@google.com> Merge "Load device default theme mapping from resources"
0810b63739c9981f993063749f804b54faed0ba5 01-May-2014 Alan Viverette <alanv@google.com> Load device default theme mapping from resources

Also adds a few missing styles and reorganizes some XML files. Makes
stackViewStyle public since it's defined in DeviceDefault.

Change-Id: I8f6a0f93410948b38619594474d60dc40ece5917
ontextThemeWrapper.java
ayoutInflater.java
e02bfb6fbdaee62694c589758d6ac5f52addd90c 01-May-2014 Michael Wright <michaelwr@google.com> Merge "Add unhandledInputEvent API to ViewRoot"
5f81193f801f77c0c00bcc4f65a68bd995e7b954 01-May-2014 Mindy Pereira <mindyp@google.com> am ed7e36dc: am d5e92318: Merge "Update fling min velocity" into klp-modular-dev

* commit 'ed7e36dc2ef400916356459f9ea67d66645a85fb':
Update fling min velocity
ed7e36dc2ef400916356459f9ea67d66645a85fb 01-May-2014 Mindy Pereira <mindyp@google.com> am d5e92318: Merge "Update fling min velocity" into klp-modular-dev

* commit 'd5e92318b69d8af6d91dc3b51738913595e0f536':
Update fling min velocity
b36e4f944fe28ce68182f9ec91e5341866b49084 01-May-2014 Adam Powell <adamp@google.com> Add support for hiding action bars on scroll.

Also tweak the nested scrolling API around nested flings and fix a bug
where recursive nested scrolling would stop prematurely.

Change-Id: I561226db878b2493970440a6af3e2332c56a1913
iew.java
iewGroup.java
iewParent.java
iewRootImpl.java
d1da11529813f6d3f51518b5fe028e0b8084f5cc 01-May-2014 Yohei Yukawa <yukawa@google.com> Add unit tests for InputMethodSubtypeSwitchingController

This CL adds unit tests for InputMethodSubtypeSwitchingController
as a ground work to make it aware of
supportsSwitchingToNextInputMethod in a subsequent CL.

This CL never changes existing behavior.

BUG: 12981505
Change-Id: I3b2c46c47c7686b811fa248ad549f20875367425
nputmethod/InputMethodInfo.java
23ffc73abd9fa7084e656ea6a9ae281cf87914b8 01-May-2014 Mindy Pereira <mindyp@google.com> Update fling min velocity

Make it configurable for watch

Change-Id: Icf90ebd5bd5924fb2a5beb6715479d5dbe7e7dd9
iewConfiguration.java
293513a59d36cd96a3e474dde5981380d372d8c9 30-Apr-2014 Bill Yi <byi@google.com> Merge commit '0b62467b142b61ee1e449ba958ba37dfd961ef56' into HEAD
15c32f2699f03ba2065e663b3beb2c8d328f42ef 30-Apr-2014 Michael Wright <michaelwr@google.com> Merge "Move key attribute information into KeyEvent."
899d70568b565280dd33fa8892e25c5511f95769 24-Apr-2014 Michael Wright <michaelwr@google.com> Add unhandledInputEvent API to ViewRoot

Update WebViewClient to use it instead, and add a new public API,
onUnhandledInputEvent. Note that WebViewClients won't receive this
call back until WebView is updated to use it.

Bug: 14279909

Change-Id: Ied49791b469849f5c4cf4471f2b26c56b03f4961
iewRootImpl.java
f38475bc28fe5596e27d44cfad74d4efb537623c 29-Apr-2014 Chris Craik <ccraik@google.com> Merge "Add Z property to View"
02931d9af6602cce3efd6a6290e9fa2f4a41e28f 29-Apr-2014 Bo Liu <boliu@google.com> DO NOT MERGE Add invokeFunctor stub

Change-Id: Ib7637d68c4f63065b909075a8f5d8cd1dd0674bd
iewRootImpl.java
25ff2c1ec1b0a3e33710fcf6777abd0fed809877 29-Apr-2014 John Reck <jreck@google.com> Merge "RenderThread animator support"
e45b1fd03b524d2b57cc6c222d89076a31a08bea 15-Apr-2014 John Reck <jreck@google.com> RenderThread animator support

Change-Id: Icf29098edfdaf7ed550bbe9d49e9eaefb4167084
enderNode.java
enderNodeAnimator.java
hreadedRenderer.java
iewPropertyAnimator.java
8efc566abf4060f295505cf761906b16ceef3e70 29-Apr-2014 Selim Cinek <cinek@google.com> Merge "Fixed a bug where the outline was not correctly updated"
61571f1422e1f62397c60ef38d60fd8d03c02ea0 29-Apr-2014 Selim Cinek <cinek@google.com> Fixed a bug where the outline was not correctly updated

The outline was not correctly copied to the field when it already
existed.

Change-Id: I02a7006f7ceff9241b1c52c73ea159c59aa7464e
iew.java
19db0f036aa889ff05220b630262461e333faa85 29-Apr-2014 Jae Seo <jaeseo@google.com> Merge "Dispatch input events to the TV input"
6a6059a29edf31e65541b3d8927a46f5846fb0a2 18-Apr-2014 Jae Seo <jaeseo@google.com> Dispatch input events to the TV input

TvInputManagerService now creates an InputChannel pair and passes one
end to the app and the other end to the service. Then the TvInputManager
in the app creates an InputEventSender around one end of the channel to
send events and the service creates an InputEventReceiver around the
other end of the channel to receive events.
Most of the newly added code here was borrowed heavily from the IME.

Change-Id: I0bd83847cba0033ccb6f4b6dad267ebeaf5e9c7c
iewRootImpl.java
9103e4f748b3950ecfe3c3f6171c6b404ee8ae0d 29-Apr-2014 Chris Craik <ccraik@google.com> Add Z property to View

Change-Id: Iff0b2fc616c650c46e5567a1cc81301afffcbfce
iew.java
337d9d2edc262141f9b8f684e53aae5e47f0ae13 23-Apr-2014 Michael Wright <michaelwr@google.com> Move key attribute information into KeyEvent.

This consolidates all of the information that was in the native
KeyEvent and the KeyLayout files into the managed KeyEvent class.

It also moves the definition for all of the key names to the native
side, rather than having them in both places.

Change-Id: I172e3b554e7eb52c79ae2ec406ef4332e8b25ffa
eyEvent.java
otionEvent.java
indowManagerPolicy.java
cc39e16cb98855f35079941b5e7e6eac2b7bc388 26-Apr-2014 Chris Craik <ccraik@google.com> Add elevation, Z properties to View

Change-Id: I3dd3b683a66e248a0fdf2ca69d1e962615b0daf9
enderNode.java
iew.java
iewPropertyAnimator.java
ae738a7a45d710115f8aedacf218d4bfa0b25698 28-Apr-2014 Bo Liu <boliu@google.com> Add invokeFunctor call to ViewRootImpl

BUG: 13961296

Change-Id: Ief8eea0b4c79a64ea76d75daaec176f1b8438581
LRenderer.java
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
985fd3063c6b33ad3f1c9cda4d6c5c1b2d296fab 28-Apr-2014 Yohei Yukawa <yukawa@google.com> Merge "Return the cursor position in screen coordinates"
4de04795f988cc7447feb9ad00e179273f75a6a3 16-Apr-2014 Yohei Yukawa <yukawa@google.com> Return the cursor position in screen coordinates

From its beginning, InputMethodService#onUpdateCursor has
provided the cursor position in local coordinates in the attached
view. However, the local coordinates is not useful for IMEs
to render a floating UI near the cursor because the IME is not
able to know the origin of the attached view.

With this CL, CURSOR_ANCHOR_MONITOR_MODE_CURSOR_RECT also means
that the IME will receive the cursor position in screen
coordinates. Because this is a new constant in the next release,
conditionally changing the coordinates never causes
compatibility issues as long as its behavior is well documented.

BUG: 14323360
Change-Id: I3acf2317ae1d763d11dae5ef73c2a1348b377c71
nputmethod/InputMethodManager.java
d1ca75bffef070f62ab70ed514f7f91824f73cbc 28-Apr-2014 Alan Viverette <alanv@google.com> Quantum ripple for ListView selector

Also fixes row clipping and ripple alpha channel. Only supports showing
ripple on a single list row -- multiple rows for focus traversal and
drag-to-open are coming soon.

BUG: 13212804
BUG: 14257108
Change-Id: Ided15611dc868a513e8d2a994723cdf57b0d206c
iew.java
6689c9700da7d391a0e0e90adfe9fa34a88fc3ea 26-Apr-2014 Chris Craik <ccraik@google.com> Merge "Support Oval GradientDrawable outlines, and ShapeDrawable"
7979388d4f7d5d9dbfcf7e1cc4709f8088c034ae 25-Apr-2014 Chris Craik <ccraik@google.com> Support Oval GradientDrawable outlines, and ShapeDrawable

Change-Id: Ifc9e55757d3325cb28a1a812ec696512d4a18b39
iew.java
07064fa73066c1b1aa03b9181794cfe449137281 25-Apr-2014 Adam Powell <adamp@google.com> Merge "Fix ScrollView nested scrolling with touch down on buttons"
e9a16a5a3e7e41551e8c95b84d0e2af0dd130afe 25-Apr-2014 Adam Powell <adamp@google.com> Fix ScrollView nested scrolling with touch down on buttons

Start ScrollView's nested scroll in onIntercept to signal nested
scrolling parents not to intercept along the vertical axis.

Change-Id: Ieb343ff6b8216b113d3876bf93a804e609257f2a
iew.java
iewGroup.java
07f0b8ee730be00a2a4bccf797bd8cb71e556546 25-Apr-2014 Chris Craik <ccraik@google.com> Merge "Refactor Drawable outline production, flesh out Outline methods"
e6a39b12656ab8d5c77d8366b24aa6410fd42e11 24-Apr-2014 Chris Craik <ccraik@google.com> Refactor Drawable outline production, flesh out Outline methods

Change-Id: I1b8c25384b5f123e86cf5e0b2270eb741bc3159b
iew.java
06916dcb05eeee8c809bb18d170a3f73b5ee1427 24-Apr-2014 Chris Craik <ccraik@google.com> Merge "Add floats-only drawRoundRect to Canvas"
4d1c1538e2422d0a5b19ad1cd2fb353ed6279a88 24-Apr-2014 Chris Craik <ccraik@google.com> Add floats-only drawRoundRect to Canvas

Change-Id: Ib0033a2d2486a808a44984ec4adf7fef76d9ea17
LES20Canvas.java
10ba27734ee6274a772be8d6b1faa703ee3a3d6b 15-Apr-2014 Adam Powell <adamp@google.com> Nested scrolling!

or, "Excuse me, Egon, you said crossing the streams was bad."

Add API for driving a nested scroll from the most deeply nested
applicable scrolling view. The deepest scrolling view dispatches
high-level scrolling events up to cooperative parent views.

Augment ScrollView to support nested scrolling. Next up, more public
framework scrolling views.

Change-Id: I53b5e207fcdece796e08c8592ddb4496b96f600e
iew.java
iewGroup.java
iewParent.java
iewRootImpl.java
5dee1a093abc4d6fd197ba2c3be012c9536ba1c5 24-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am e17ed922: am 126f4057: am 5ba2f230: Add view cookies for action bar menus. [DO NOT MERGE]

* commit 'e17ed922001cf70c48969eb7b10ee2e2557b41f9':
Add view cookies for action bar menus. [DO NOT MERGE]
e17ed922001cf70c48969eb7b10ee2e2557b41f9 24-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 126f4057: am 5ba2f230: Add view cookies for action bar menus. [DO NOT MERGE]

* commit '126f4057a06756fbb1c194b5d9d40f9f922d14ee':
Add view cookies for action bar menus. [DO NOT MERGE]
126f4057a06756fbb1c194b5d9d40f9f922d14ee 24-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 5ba2f230: Add view cookies for action bar menus. [DO NOT MERGE]

* commit '5ba2f230faa355eb9bc1e90f6c48eeeb437f390c':
Add view cookies for action bar menus. [DO NOT MERGE]
5ba2f230faa355eb9bc1e90f6c48eeeb437f390c 18-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Add view cookies for action bar menus. [DO NOT MERGE]

The change adds the view cookies for the menus rendered in the action
bar. This enables the IDE to map the menu to the relevant XML Tag in the
menu xml and show the highlighting accordingly.

The change also contains a bugfix where a method wasn't renamed
properly.

Change-Id: Idcfc263a8ebe0a4f25afa3a1eb085fa628fd03ca
(cherry-picked from commit 1001961f904bac5294aaf73a47c2497aa764bf7f)
enuInflater.java
f4201925d9e3d01e7a2a1db07c8186e4ba9a0fb5 24-Apr-2014 John Reck <jreck@google.com> Merge "Add missing try/finallys"
05e858400adee0f579b1e27e321b48bd55843fbd 23-Apr-2014 John Reck <jreck@google.com> Add missing try/finallys

Change-Id: I32be65f5a46768449f26b69f72f502acd1e72769
hreadedRenderer.java
iew.java
iewRootImpl.java
1001961f904bac5294aaf73a47c2497aa764bf7f 18-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Add view cookies for action bar menus.

The change adds the view cookies for the menus rendered in the action
bar. This enables the IDE to map the menu to the relevant XML Tag in the
menu xml and show the highlighting accordingly.

Change-Id: Idcfc263a8ebe0a4f25afa3a1eb085fa628fd03ca
enuInflater.java
3da2834f0ee77268e0076ad1e24f319635c38b89 23-Apr-2014 Michael Wright <michaelwr@google.com> Add ViewRootImpl#unhandledInputEvent API stub.

Doesn't actually work yet for non-KeyEvents.

Change-Id: I3482ff780a9a7aef8ae27436f91a3619490b369f
iewRootImpl.java
4899e66db9897279e4ae704b139c50b384a1ae34 22-Apr-2014 Alan Viverette <alanv@google.com> Merge "Add touch feedback to edit text"
c3f35b01b5a21e110ca4eedf09c8c6164ab85dfb 22-Apr-2014 Alan Viverette <alanv@google.com> Add touch feedback to edit text

Change-Id: Id25692bfa40f5145d6ca807111bbd5d0c4774d07
iew.java
6b2c07cb3655b0f98990961e15c2b6077aaad5ca 22-Apr-2014 Youngsang Cho <youngsang@google.com> Merge "Add overlay view in Tv Input Framework"
49d8fa473970265a182549cc1673719e5101320e 21-Apr-2014 Adam Lesinski <adamlesinski@google.com> am a281be67: am 370cda70: Merge "Allow InputEvents to propagate w/o IME" into klp-modular-dev

* commit 'a281be67030a834d455a84ce62c173140564211a':
Allow InputEvents to propagate w/o IME
a281be67030a834d455a84ce62c173140564211a 21-Apr-2014 Adam Lesinski <adamlesinski@google.com> am 370cda70: Merge "Allow InputEvents to propagate w/o IME" into klp-modular-dev

* commit '370cda7074a02139fa5374bbdd94c37be376ca7a':
Allow InputEvents to propagate w/o IME
c0f6eed40fd2fc0922de34d691d31f0e320ca9b7 29-Oct-2013 Adam Lesinski <adamlesinski@google.com> Allow InputEvents to propagate w/o IME

If no IME was present, InputEvents such as KeyEvents
would simple be dropped instead of going through
to the Activity's View hierarchy.

Change-Id: I9de25bdbf5d1564b77b25679e19dae18591a8c1c
iewRootImpl.java
9a22f0f0a631849d9c622c642d3ab0395f77584b 09-Apr-2014 Youngsang Cho <youngsang@google.com> Add overlay view in Tv Input Framework

A TvInputService app developers sometimes want to draw UI above a surface
playing TV. For this purpose, we add a window in TIS and allow developers to
attach their customized view on the TV surface.

Change-Id: I65c3dffa17580b8d4c42fac58bbfc8dad338c185
urfaceView.java
f4399e7243c35bef3eabfd20582246818a0bbbd3 18-Apr-2014 Michael Kolb <kolby@google.com> resolved conflict for merge from d42eeab2 to master

Change-Id: I41bd238f0628110c923b79259de4cd11a783340c
d42eeab20fea37fbf92b5c1a4f6f194ab9303083 18-Apr-2014 Michael Kolb <kolby@google.com> am 4abbd0a6: Merge "Populate isRound from config.xml to WindowInsets" into klp-modular-dev

* commit '4abbd0a685cb418eb3cfc1f030d3091ef394a7e3':
Populate isRound from config.xml to WindowInsets
473917208961a90ca76fa9b9341b95902859b682 18-Apr-2014 Selim Cinek <cinek@google.com> Merge "ViewGroup now applies clipBounds to its children"
6642e51ac5d0351f02fc929817603d7371e08e10 17-Apr-2014 Michael Kolb <kolby@google.com> Populate isRound from config.xml to WindowInsets

Change-Id: I41b3aef1322a7cdccdcbc679eb753e0a1e561fad
iewRootImpl.java
indowInsets.java
31a217290cf376d0573fc36e21c8940987485019 25-Mar-2014 George Mount <mount@google.com> Split Activity Transitions out of PhoneWindow.

Bug 13622834
Made it possible to use shared elements without making
Views invisible.

Change-Id: I1e85c6bc19e634a9af225ad7f0309b4f003ea462
iewGroup.java
indow.java
19cadc203e3fdede40a89b13738464493ed3834a 16-Apr-2014 Selim Cinek <cinek@google.com> ViewGroup now applies clipBounds to its children

Fixed a bug where a ViewGroup did not clip its children to the
set clipBounds unless willNotDraw was set to true.

Bug: 14104527
Change-Id: I4892639bb860c1767f1ae6892f3e69525691e55e
iew.java
iewGroup.java
c731435649ef42a454a7e2e22fa2e303a242f8f9 17-Apr-2014 John Reck <jreck@google.com> Merge "Add missing resume() call"
3b3d66ef68628adb34c7c315fa5cefbce92c4bf1 17-Apr-2014 John Reck <jreck@google.com> Merge "Clear mIgnoreDirtyState after draw"
6f07a0dc875a9eac67312085a8e0133b9e2f4771 17-Apr-2014 John Reck <jreck@google.com> Add missing resume() call

Bug: 14087850

Change-Id: Ic555ca6027e617c7ed6e7e66b5cf713c36ed1c6c
LES20Canvas.java
6313b9259d37b59f3402058e197637aa3014516c 17-Apr-2014 John Reck <jreck@google.com> Clear mIgnoreDirtyState after draw

Change-Id: I6dfb39e0ebc9a5732678d735d9bc5e8813926096
LRenderer.java
hreadedRenderer.java
3d678ad462ee237d86efd9d985eb518817761e05 17-Apr-2014 Adam Powell <adamp@google.com> am 973ddaac: DO NOT MERGE Add isRound to WindowInsets

* commit '973ddaacaef255b8659d35cfe4151dd5b7436138':
DO NOT MERGE Add isRound to WindowInsets
2accbf904f0dfa42f1a776d2e1ea7b01898929c0 17-Apr-2014 Adam Powell <adamp@google.com> Revert the revert of adding isRound to WindowInsets after early merge

This reverts commit 01ebfbd0a0a3a89b563ab6c8c346c669eca39a1a.

Change-Id: I3d5a3523a1505cc3bfd0172c7282a8eda21ae206
iewRootImpl.java
indowInsets.java
01ebfbd0a0a3a89b563ab6c8c346c669eca39a1a 17-Apr-2014 Michael Kolb <kolby@google.com> Revert "Add isRound to WindowInsets"

This reverts commit e5244b5638535964103ca1dfc867442a64243db1.

Change-Id: I6371c718e2189968699e980fd0e7ba91c486aca6
iewRootImpl.java
indowInsets.java
973ddaacaef255b8659d35cfe4151dd5b7436138 16-Apr-2014 Adam Powell <adamp@google.com> DO NOT MERGE Add isRound to WindowInsets

isRound allows a view to determine whether the window it is contained
within obscures the corners of the window content. This allows views
aware of this property to adapt their layout accordingly.

Switch ViewRootImpl to use dispatchApplyInsets instead of
fitSystemWindows.

Change-Id: Ic3e3936b73815b2593cb9720af1a309fbd18406e

Conflicts:
core/java/android/view/ViewRootImpl.java
iewRootImpl.java
indowInsets.java
e5244b5638535964103ca1dfc867442a64243db1 16-Apr-2014 Adam Powell <adamp@google.com> Add isRound to WindowInsets

isRound allows a view to determine whether the window it is contained
within obscures the corners of the window content. This allows views
aware of this property to adapt their layout accordingly.

Switch ViewRootImpl to use dispatchApplyInsets instead of
fitSystemWindows.

Change-Id: Ic3e3936b73815b2593cb9720af1a309fbd18406e
iewRootImpl.java
indowInsets.java
e1070928795210a1894a454ff88e9d529ca381a7 15-Apr-2014 Adam Powell <adamp@google.com> am 50d7bfd8: DO NOT MERGE Refactoring of fitSystemWindows to applyWindowInsets for views

* commit '50d7bfd8224f9da170dac668888bcf0831373051':
DO NOT MERGE Refactoring of fitSystemWindows to applyWindowInsets for views
50d7bfd8224f9da170dac668888bcf0831373051 03-Feb-2014 Adam Powell <adamp@google.com> DO NOT MERGE Refactoring of fitSystemWindows to applyWindowInsets for views

Applying insets is now handled by:

* WindowInsets class - Encapsulate system insets and local decor
insets into a single object, written specifically so that new inset
categories may be added later. Apps cannot construct their own
WindowInsets, only clone with optional modifications. This is to
prevent losing data in the event of new insets added in the future.

* onApplyWindowInsets - Actually perform the application of insets.

* OnApplyWindowInsetsListener - Allow an app to use a separate
Listener object to apply insets to a View. This allows for things
like support lib integration in custom views written for older
versions where the verifier would otherwise complain about the use
of the new WindowInsets class as a method parameter. It also allows
for applying insets in a custom way without writing a custom view.

* dispatchApplyWindowInsets - Dispatch the call to self and children
in turn, if applicable. An OnApplyWindowInsetsListener will override
the behavior of the view's default onApplyWindowInsets method; a
listener wishing to call down to the 'superclass' implementation as
part of its own operation should call view.onApplyWindowInsets. App
code should generally not override this method and instead override
onApplyWindowInsets or provide a listener.

Compatibility support with the existing fitSystemWindows method has
been provided in both directions: for code that previously called
fitSystemWindows on arbitrary views and also for code that overrode
the fitSystemWindows method in custom views. A view that supports the
newer onApplyWindowInsets mechanism should not mix that behavior with
other calls to fitSystemWindows or vice versa. Support lib-style code
should take care to consistently use one mechanism or the other at
runtime.

Change-Id: Ie88b96e0382beb5d3c3f6cd013f7043acbc0a105
iew.java
iewGroup.java
indowInsets.java
1562f2e574a423ea8e000b84432d4cae2a848cc3 14-Apr-2014 John Reck <jreck@google.com> Merge "Fence on destruction"
fae904d63947fe1687d1d44be29234cc3d538f24 14-Apr-2014 John Reck <jreck@google.com> Fence on destruction

Bug: 14052927
destroyCanvasAndSurface() needs a fence as when it returns the
underlying BufferQueue is going to be released from under
the render thread.

Change-Id: I0147a1d5ec5adf0239c761ef22f65cd8c8a137df
hreadedRenderer.java
352e108259bcb3305f034cfb042287d43a5e8f80 14-Apr-2014 Dan Sandler <dsandler@android.com> Merge "Merge remote-tracking branch 'goog/master-lockscreen-dev'"
15b0bef9250e084bfbceb388716d28ed62ca018f 12-Apr-2014 Jeff Brown <jeffbrown@google.com> am 9e2fde9c: am d912e1f6: Use the display\'s actual state in the view hierarchy.

* commit '9e2fde9c8a3557d6e8d1f3971a421ecdf5c2ce07':
Use the display's actual state in the view hierarchy.
9e2fde9c8a3557d6e8d1f3971a421ecdf5c2ce07 12-Apr-2014 Jeff Brown <jeffbrown@google.com> am d912e1f6: Use the display\'s actual state in the view hierarchy.

* commit 'd912e1f6a111fb33118d116bd72da1a328041bca':
Use the display's actual state in the view hierarchy.
d912e1f6a111fb33118d116bd72da1a328041bca 12-Apr-2014 Jeff Brown <jeffbrown@google.com> Use the display's actual state in the view hierarchy.

Previously, the view hierarchy would suppress drawing whenever the
PowerManager.isScreenOn() method returned false. However, this method
really describes the interactive state of the device rather than the
actual display state. This is especially a problem when there are
multiple displays but it also breaks drawing while in doze mode.

This change makes the view hierarchy consider the actual state of the
display instead on an individual basis.

Bug: 13133142
Change-Id: I69870b6b14a3504607a30562aa48c3452f777c1f
Window.aidl
iew.java
iewRootImpl.java
777648cde44c83b0e8c7b15473c9d7d29de653b7 12-Apr-2014 John Reck <jreck@google.com> Merge "Support onHardwarePostDraw in ThreadedRenderer"
bc0cc0220b830df54c8ed41d0b53daffd7f6c991 12-Apr-2014 John Reck <jreck@google.com> Support onHardwarePostDraw in ThreadedRenderer

Bug: 13958485

Change-Id: Ie9c7af7cee582850a7f0a3d891aa3685c230cfc7
hreadedRenderer.java
iewRootImpl.java
24e2e6674d45acf22d9008368ee692746a5971ab 12-Apr-2014 Alan Viverette <alanv@google.com> Merge "Clean up VolumePanel, tweak volume & brightness dialog styling"
e8ebaf3f6f2a105f45041431b5f820a1db1ff08a 12-Apr-2014 Alan Viverette <alanv@google.com> Clean up VolumePanel, tweak volume & brightness dialog styling

Change-Id: Ibd008fbc6acab00bf642422cb322ec147799d3d7
olumePanel.java
3758304ca9e4750cf3936b05c524a7378f1696f2 11-Apr-2014 John Reck <jreck@google.com> am c70f3db8: Merge "Simplify matrix calculations"

* commit 'c70f3db80ad522bdb5938b5944b3d9c7d7758f12':
Simplify matrix calculations
c70f3db80ad522bdb5938b5944b3d9c7d7758f12 11-Apr-2014 John Reck <jreck@google.com> Merge "Simplify matrix calculations"
f7483e3af0513a1baa8341d403df2e0c0896a9ff 11-Apr-2014 John Reck <jreck@google.com> Simplify matrix calculations

Bug: 13913604

Change-Id: I2c0f85a34e1e520050a5a6131306d6b7c352d827
iew.java
02b9b981eae877a4624c1820f96298d88a5ced60 11-Apr-2014 Svetoslav <svetoslavganov@google.com> am 0f7ed1f4: Merge "Adding system support for a single accessibility focus."

* commit '0f7ed1f4776844f3ee8d3ce9d903f62cace66a06':
Adding system support for a single accessibility focus.
0f7ed1f4776844f3ee8d3ce9d903f62cace66a06 11-Apr-2014 Svetoslav <svetoslavganov@google.com> Merge "Adding system support for a single accessibility focus."
1e0d4af9986c8c2a658769a63bf8b385d25e0435 11-Apr-2014 Svetoslav <svetoslavganov@google.com> Adding system support for a single accessibility focus.

Now that we have APIs to query all interactive windows and allow
an accessibility service to put accessibility focus in each of
them we have to guarantee that there is a single accessibility
focus. This is required for correct operation of the touch
explorer as on double tap in clicks in the center of the focused
area, hence having more that one focus is an issue. Also the
system is maintaining a single input focus so now accessibility
focus behaves consistently with that.

bug:13965563

Change-Id: I0b5c26dadfabbf80dbed8dc4602073aa575ac179
iew.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityNodeInfo.java
858737d08d9a2db7ef230a17975cd4ded709c3c5 11-Apr-2014 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 4e5c089e to master-lockscreen-dev

Change-Id: I456ff6be1e39b65f3e0efeb7fb1924e71d11f6b1
4e5c089ef3e62e7f658e71c0be262d09bd3e399b 11-Apr-2014 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 337e764d to master

Change-Id: I8168dbf42b68c2f7b5ccb300e0080dddc627af26
337e764debde56b1462fb5f2794b3e917d8a42e2 11-Apr-2014 Jeff Brown <jeffbrown@google.com> am f24687e2: Merge "Plumb display power state through display manager." into klp-modular-dev

* commit 'f24687e2731811fd0e3803b691fd47a659f89329':
Plumb display power state through display manager.
037c33eae74bee2774897d969d48947f9abe254f 09-Apr-2014 Jeff Brown <jeffbrown@google.com> Plumb display power state through display manager.

Declare a new method, Display.getState() to retrieve the actual
power state of a display.

Improved documentation for Intent.ACTION_SCREEN_ON and
Intent.ACTION_SCREEN_OFF to clarify what they really mean in
terms of the interactive state of the device.

Deprecated PowerManager.isScreenOn() and replaced it with
PowerManager.isInteractive() with a more suggestive name and
better documentation.

Redirect display power state changes to go through the display
manager first and only then head over to the power manager for
legacy compatibility.

Eliminated the bright here and woke here policy flags since they
were unused. Simplified the input dispatch policy somewhat.

Ensure that screen wake locks are respected up until the point
when dozing really begins.

Fixed a regression in DreamService where onDreamingStarted
might be called before onWindowAttached.

Bug: 13133142
Bug: 13472578
Bug: 13929355
Bug: 13760290
Change-Id: Iabef96921dd554ce3768fb18619cefc3230b5fb0
isplay.java
isplayInfo.java
eyEvent.java
indowManager.java
indowManagerPolicy.java
3b5f8522f7f1bb45d9eb495fdee5f00e939cffea 11-Apr-2014 Alan Viverette <alanv@google.com> am 494fb7b5: Update volume panel

* commit '494fb7b58a21a7a9a8eba3bacecffe115edcb8c6':
Update volume panel
494fb7b58a21a7a9a8eba3bacecffe115edcb8c6 11-Apr-2014 Alan Viverette <alanv@google.com> Update volume panel

Change-Id: I6f0887069598f8addc5c5af5aef9c07a69532424
olumePanel.java
c1776b14266935b40a1f8d57dbb4ca4ddc7e15a6 11-Apr-2014 John Reck <jreck@google.com> am 822bbb38: Merge "Make attachFunctor blocking"

* commit '822bbb382fa6b6c8d1b45770e27c2c2732a7afb7':
Make attachFunctor blocking
822bbb382fa6b6c8d1b45770e27c2c2732a7afb7 11-Apr-2014 John Reck <jreck@google.com> Merge "Make attachFunctor blocking"
d3d8dafc2f61fb118c060720b52684c59303f3db 11-Apr-2014 John Reck <jreck@google.com> Make attachFunctor blocking

Bug: 13930200

Change-Id: I9b0cf92fd16bb30baa09b6f8d7ae22a8b2a7fd80
hreadedRenderer.java
dd137a85d3e0295989b5b9d1f67ff32027be867d 10-Apr-2014 Svetoslav <svetoslavganov@google.com> resolved conflicts for merge of 6be2f952 to master-lockscreen-dev

Conflicts:
core/java/android/view/IWindowManager.aidl
tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java

Change-Id: Idcbc581294cc52b53eabefd61e5c20cbcea611db
6be2f95202237b7284542e692273d13a5bd26913 10-Apr-2014 Svetoslav <svetoslavganov@google.com> Merge "Adding render stats APIs to UiAutomation (framework)."
04c90404911e573a7aedba53c7ca892bde5e4f18 10-Apr-2014 John Reck <jreck@google.com> am 9817ddd4: Merge "Merge hasFunctors & pushStaging into prepareTree"

* commit '9817ddd420aaa885f92f778ae2cfd17e6a71bc87':
Merge hasFunctors & pushStaging into prepareTree
f4198b713e43c0c0f9adac74203cf24c2a49b802 10-Apr-2014 John Reck <jreck@google.com> Merge hasFunctors & pushStaging into prepareTree

Bug: 13902607
Fixes synchronous mode for WebView in HardwareLayers

Change-Id: I90de1e26dcfd9b75cc2f03bac72705fc23237b68
LRenderer.java
615c946448d9afb08a0cce0eeabc4a9d775f402e 10-Apr-2014 John Reck <jreck@google.com> am 8e1f9187: Merge "Switch DisplayListData to a staging model"

* commit '8e1f918738abf70a4dc86dbb12b386a9deea37f8':
Switch DisplayListData to a staging model
8e1f918738abf70a4dc86dbb12b386a9deea37f8 10-Apr-2014 John Reck <jreck@google.com> Merge "Switch DisplayListData to a staging model"
8de65a8e05285df52a1e6f0c1d5616dd233298a7 10-Apr-2014 John Reck <jreck@google.com> Switch DisplayListData to a staging model

Bug: 13912977

Change-Id: I5b2f664e797be22a58300964f57ceb4fab60528c
LRenderer.java
ardwareRenderer.java
enderNode.java
hreadedRenderer.java
iew.java
iewRootImpl.java
dc6f2a254d78ad407751a2f01bf6ba56d3c658c0 09-Apr-2014 John Reck <jreck@google.com> am a040977d: Merge "Fix ThreadedRenderer.setEnabled()"

* commit 'a040977de8b3ec791bf3b7e0115630e8c27fd8ca':
Fix ThreadedRenderer.setEnabled()
f7d9c1dc84671d4e99657ef071d275700d85bb11 09-Apr-2014 John Reck <jreck@google.com> Fix ThreadedRenderer.setEnabled()

Bug: 13914116
Fixes lifecycle issues around setEnabled where ThreadedRenderer
was reporting as being enabled before it had a Surface. This is
incorrect.

Also fix some EGL lifecycle issues

Change-Id: I12ebb279707f9b533a570b61d68735d858b560bf
LRenderer.java
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
0e8c7aa485b1a6b360100abc260c0f12e55714ec 08-Apr-2014 John Reck <jreck@google.com> am 77ecf0bb: Merge "Don\'t make HardwareRenderer calls in the finalizer"

* commit '77ecf0bb9687a4841a4880267bdb2cd7de05055f':
Don't make HardwareRenderer calls in the finalizer
77ecf0bb9687a4841a4880267bdb2cd7de05055f 08-Apr-2014 John Reck <jreck@google.com> Merge "Don't make HardwareRenderer calls in the finalizer"
0ed751dd22a98f0c1f637570c5775b4f5e97d895 08-Apr-2014 John Reck <jreck@google.com> Don't make HardwareRenderer calls in the finalizer

Bug: 13902530
Don't try to set the RenderNode's displayListData to 0 in the finalizer.
The HardwareRenderer may have already been finalized and it's not valid
to make calls into HardwareRenderer from another thread anyway.

The fix is that now that RenderNode is a refcounted object, this step
can be skipped entirely. The RenderNode destructor handles deleting
its DisplayListData if it needs to.

Change-Id: Ieab75575b98c24678a531dd5aa41a2d0afde0eef
enderNode.java
hreadedRenderer.java
cf1b3b4791aac33c5184d8998252041a08e324bc 08-Apr-2014 Yohei Yukawa <yukawa@google.com> am 59fee2d5: Merge "Allow IMEs to start/stop receiving onUpdateCursor callback"

* commit '59fee2d5534965f0986e68e0c3562da5e65e6c45':
Allow IMEs to start/stop receiving onUpdateCursor callback
59fee2d5534965f0986e68e0c3562da5e65e6c45 08-Apr-2014 Yohei Yukawa <yukawa@google.com> Merge "Allow IMEs to start/stop receiving onUpdateCursor callback"
95b8cfda9b8cd3f394bb0abd1b12e1f903b3c44f 08-Apr-2014 John Reck <jreck@google.com> am 1f3f55b4: Merge "Enable RT, round 2"

* commit '1f3f55b434ce324c5fdbe74db1982fea4812a2e9':
Enable RT, round 2
ed8c903a6c9d74bf797689990e9bc4e004600e08 08-Apr-2014 John Reck <jreck@google.com> Enable RT, round 2

Change-Id: I8035f477f67ede9a5cd1b4de4498bc7850c7fbf3
ardwareRenderer.java
bbd924fa8c5544efe8756ea8410d758d0ccc2bae 08-Apr-2014 John Reck <jreck@google.com> am 85189c5d: Merge "Fence on draws that are reported"

* commit '85189c5dafb08f051c7024f42ceedcbcf5dbbc7c':
Fence on draws that are reported
85189c5dafb08f051c7024f42ceedcbcf5dbbc7c 08-Apr-2014 John Reck <jreck@google.com> Merge "Fence on draws that are reported"
1376d600d8e0eefdbc0aa11d398cf7517fc77129 13-Mar-2014 Svetoslav <svetoslavganov@google.com> Adding render stats APIs to UiAutomation (framework).

bug:12927198

Change-Id: Iae21481c75ae58dcdab3731bf5f1e2844e29d434
nimationRenderStats.aidl
rameStats.java
WindowManager.aidl
urfaceControl.java
indowAnimationFrameStats.aidl
indowAnimationFrameStats.java
indowContentFrameStats.aidl
indowContentFrameStats.java
ccessibility/IAccessibilityManager.aidl
28ad7b52e038ef0cdd89f753d9839444a434b299 08-Apr-2014 John Reck <jreck@google.com> Fence on draws that are reported

Change-Id: Ib2ec16cbda40f40df1710bdc868869ea8301f17e
LRenderer.java
ardwareRenderer.java
hreadedRenderer.java
iewRootImpl.java
f4360efb52734774db3ab0b2df50728840a6336d 07-Apr-2014 George Mount <mount@google.com> am dde10d07: Merge "Implement "Back" for Activity Transitions."

* commit 'dde10d073f819e78c0b26d7f37ed10f01b45125c':
Implement "Back" for Activity Transitions.
cb4b7d999e7bcba608726188421772e313e67163 25-Feb-2014 George Mount <mount@google.com> Implement "Back" for Activity Transitions.

Change-Id: Iceaf888f57f2c7598f9291687ac9ad76d55bd82c
indow.java
b7b7907fb5e4b2252b3c594a6bc4402217fe662a 25-Mar-2014 Yohei Yukawa <yukawa@google.com> Allow IMEs to start/stop receiving onUpdateCursor callback

This CL introduces an API which allows IMEs to start/stop
receiving onUpdateCursor callback upon their request.

BUG: 13388665
Change-Id: I987326872def181dda5d9d701b762f088e0d9c39
nputmethod/InputMethodManager.java
a66a735dc6bbec1dbf942fe392ba3dacd5035302 03-Apr-2014 Chris Craik <ccraik@google.com> am ef4c0c9f: Merge "Move most TransformationInfo properties to RenderNode"

* commit 'ef4c0c9fd5db395b2eea0a246b93bce9cc9e859a':
Move most TransformationInfo properties to RenderNode
ef4c0c9fd5db395b2eea0a246b93bce9cc9e859a 03-Apr-2014 Chris Craik <ccraik@google.com> Merge "Move most TransformationInfo properties to RenderNode"
55da62288dcec75c34721a59d71f917dcb8a62b4 03-Apr-2014 Ben Murdoch <benm@android.com> am 14424043: am 369a0057: Merge "Update ViewRootImpl for 64bit functor type."

* commit '14424043b9c20edf639004e05fe8e9264a2e66f5':
Update ViewRootImpl for 64bit functor type.
031c49ff1c927a7b70ffbde44572f087504a77fa 03-Apr-2014 Alan Viverette <alanv@google.com> am aa11084c: Merge "Fix dialog style, selectable item bg pinning, and pressed state"

* commit 'aa11084c3ba1bf166febce53ccb9852f72f2a4a5':
Fix dialog style, selectable item bg pinning, and pressed state
45dc35b3c9e7e1494c09f4ed167426da6d376a7d 03-Apr-2014 Alan Viverette <alanv@google.com> Fix dialog style, selectable item bg pinning, and pressed state

BUG: 13746931
Change-Id: I31c2959f3e773a3aeb66ba5842d8d6fbb288acc1
iew.java
49e6c73913e9bee58ea5e3984be151ee8e033163 31-Mar-2014 Chris Craik <ccraik@google.com> Move most TransformationInfo properties to RenderNode

This change dedupes the various properties that were represented both
in TransformationInfo, and RenderProperties on the native side.

RenderNode (and its associated properties) are now permanently
attached to a View in SW or HW. The native copy of these properties
are their sole representation.

Alpha to come in a later CL.

Also fixed issue with copying RenderNode's transform, and added
support of deleting RenderNodes in software rendering.

Change-Id: Ideb6e7f32b780e87aa1c32637c368356b3eee3a1
enderNode.java
iew.java
iewGroup.java
iewOverlay.java
iewPropertyAnimator.java
ae6ffcc3c74d12ebf59a26cce24d04fdd2b56f4e 02-Apr-2014 Jorim Jaggi <jjaggi@google.com> Merge "Wait for Keyguard to be drawn after boot." into master-lockscreen-dev
cff0acb6b1eea23c3f44a078a0a5e81c11faea35 31-Mar-2014 Jorim Jaggi <jjaggi@google.com> Wait for Keyguard to be drawn after boot.

The old logic with waiting for the Keyguard to be drawn assumed that
it is in an own window, and just checked for the visibility. This is
no longer possible as the Keyguard is in the status bar, and the status
bar might have been drawn without the Keyguard. So we have to wait
explicitely until Keyguard told PhoneWindowManager that it has now been
drawn and we can turn on the screen.

In addition, the starting logic of SystemUI is moved into
SystemUIApplication such the we can make sure that the status bar
already exists when the callbacks from PhoneWindowManager reach
KeyguardService. This simplifies the logic a lot.

Bug: 13635952
Change-Id: Ifd6ba795647edcf3501641e39052e4d04bc826fb
WindowManager.aidl
indowManagerPolicy.java
4ae6e2f909cfbdd859f3b86db33b2062ad82601b 02-Apr-2014 John Reck <jreck@google.com> am a8b93711: Merge "Revert "Force-enable hardware acceleration for apps""

* commit 'a8b937115ac3bf047c8fc6c750f052fd633c5dd8':
Revert "Force-enable hardware acceleration for apps"
a8b937115ac3bf047c8fc6c750f052fd633c5dd8 02-Apr-2014 John Reck <jreck@google.com> Merge "Revert "Force-enable hardware acceleration for apps""
dd58e797aa453f468232c6a5949a37e4691f309e 02-Apr-2014 John Reck <jreck@google.com> Revert "Force-enable hardware acceleration for apps"

This reverts commit 2a0901107443685ef2f2a55d0b62ddcc6cf183ba.

Change-Id: I47c58b7251411432bd6a3eeb6fe567385b1c084f
iewRootImpl.java
cf61c9b71faa053f407430fde043b4672c501340 02-Apr-2014 Ben Murdoch <benm@google.com> Update ViewRootImpl for 64bit functor type.

Change-Id: Ie9020f0276c58ebf0977e4aef725fbc26aaf67b2
iewRootImpl.java
624818b0c133ac619996b2f0553b20fa060f6487 01-Apr-2014 John Reck <jreck@google.com> am 4126693b: Merge "Disable RenderThread"

* commit '4126693be37244116d23e9c6dce2a15b88ad988f':
Disable RenderThread
9afe775ca9110bb4d24ab511919c42cfeeae3178 01-Apr-2014 John Reck <jreck@google.com> Disable RenderThread

Now that there's a half dozen bugs to fix, switch back
to the stable renderer until the issues are addressed

Change-Id: I1513cf26717e8ab6b1a038e86ae9a40f5f1a3c50
ardwareRenderer.java
2b2ad8f7287ede15b30aa595073012cf025fda22 31-Mar-2014 ztenghui <ztenghui@google.com> am 2f9ec356: Merge "Make the reveal animation API public"

* commit '2f9ec3560d21e3db4f91a64e68d6b678714cd749':
Make the reveal animation API public
2f9ec3560d21e3db4f91a64e68d6b678714cd749 31-Mar-2014 ztenghui <ztenghui@google.com> Merge "Make the reveal animation API public"
0949792f77ef89bd580556ff02c2bc3c1540f3a6 31-Mar-2014 John Reck <jreck@google.com> am b4a132a0: Merge "Turn on RenderThread"

* commit 'b4a132a05f5dc1cc10352d63cb80921b1004bd7a':
Turn on RenderThread
b4a132a05f5dc1cc10352d63cb80921b1004bd7a 31-Mar-2014 John Reck <jreck@google.com> Merge "Turn on RenderThread"
26311cb5d5cd4264452ee9a2ddf36e7007e56229 31-Mar-2014 John Reck <jreck@google.com> am 8e150fef: Merge "Add invokeFunctor"

* commit '8e150fef2bb0d3e672b7ecba2caa35ee37a8c27d':
Add invokeFunctor
be23fa2f73f24aa158bec5e1e8639be36f9ee368 28-Mar-2014 ztenghui <ztenghui@google.com> Make the reveal animation API public

Change-Id: Iafb17bc768b33b320ffa731a9474be05382126e6
iew.java
0f61cde23452a8d257b43648fcec473a3574414a 31-Mar-2014 John Reck <jreck@google.com> Turn on RenderThread

Change-Id: I50fd607420baa438eb16b99b1de8604037c11a88
ardwareRenderer.java
bd490ad59ffbc7890adec4e53c72afae4d81087b 31-Mar-2014 Jorim Jaggi <jjaggi@google.com> Merge "Make Keyguard a library and make StatusBar the new Keyguard." into master-lockscreen-dev
0d1f634f4b5e1bb37aa51777efb6a68619488d01 29-Mar-2014 John Reck <jreck@google.com> Add invokeFunctor

Change-Id: I09e675d3e02e3e528642175ada00b2b17fab7652
LRenderer.java
ardwareRenderer.java
hreadedRenderer.java
c75db8266b352ef3a7a6b76654f770d7a24d547a 29-Mar-2014 John Reck <jreck@google.com> Merge "Remove kStatusInvoke & kStatusDraw"
903d6407b0f5fcf12373daadcce90aaad44a5491 29-Mar-2014 John Reck <jreck@google.com> Merge "Remove DisplayList.java"
42dda81e15490193fe5a9d10464dd9049c3362cc 29-Mar-2014 Chris Craik <ccraik@google.com> Merge "Update several stale RenderNode variable names"
64a12e177de64ae5d907e3020ea3f37cc96ee325 29-Mar-2014 Chris Craik <ccraik@google.com> Update several stale RenderNode variable names

Change-Id: I61c8c66f5a79e3a89ae0d3cffbfd351c05bd6a2b
LRenderer.java
iew.java
iewGroup.java
iewPropertyAnimator.java
iewRootImpl.java
84ad5d8891d3a6921b9cfd1329022840682d55e2 29-Mar-2014 Michael Wright <michaelwr@google.com> am 5d7db503: am e9eb58c9: Merge "Add InputDevice#supportsSource(int)." into klp-modular-dev

* commit '5d7db503bd779fb712391174a2b12327a0f9ec51':
Add InputDevice#supportsSource(int).
5d7db503bd779fb712391174a2b12327a0f9ec51 29-Mar-2014 Michael Wright <michaelwr@google.com> am e9eb58c9: Merge "Add InputDevice#supportsSource(int)." into klp-modular-dev

* commit 'e9eb58c9a0f48f1ea3afa60f01cfab1f539e5d8e':
Add InputDevice#supportsSource(int).
4669cfff1ed590087eade846aee8b4ef58f31739 29-Mar-2014 Michael Wright <michaelwr@google.com> am d020fd33: Merge changes Ib18c99b9,I9f42eeb9 into klp-modular-dev

* commit 'd020fd33d147c88a9cda4976d2fa559e55b4ab03':
Generate and respect ACTION_CANCEL for joystick fallbacks. DO NOT MERGE
Adds API for determining confirm and cancel keys.
e9eb58c9a0f48f1ea3afa60f01cfab1f539e5d8e 29-Mar-2014 Michael Wright <michaelwr@google.com> Merge "Add InputDevice#supportsSource(int)." into klp-modular-dev
69a30b5e549e9da545e3545391e6027d9822e022 29-Mar-2014 Chris Craik <ccraik@google.com> Merge "Simplify RenderNode refresh/build/update process"
df0c431e6cc23c0348d2e71fd834d74379afa33d 29-Mar-2014 Chris Craik <ccraik@google.com> Simplify RenderNode refresh/build/update process

A View's RenderNode is created lazily, but the instance never changes
afterward.

Change-Id: I0b05769cd49aa55061d3fb8c2ea55a04e8391e48
enderNode.java
iew.java
iewGroup.java
efaf51ad0cb7a371aefe9ac7e08bff637ba59021 29-Mar-2014 Alan Viverette <alanv@google.com> Merge "Fix drag-to-open forwarding behavior"
78efdbac8a35a199f602e10a2d9ec3d86c0dbf5f 29-Mar-2014 Alan Viverette <alanv@google.com> Fix drag-to-open forwarding behavior

BUG: 13695088
Change-Id: I4c6e824267b145e6dcedb1aa46c8378fd5b6ff83
iew.java
750ca6dbdb259aea0ca5b77380a9303e586ef3ea 29-Mar-2014 John Reck <jreck@google.com> Remove kStatusInvoke & kStatusDraw

They are unused

Change-Id: I44ecf1164dc6bc1b09438e733976d5a97a25f00e
LRenderer.java
ardwareCanvas.java
7d89b85f499331523e6c976edbd2919603ab9f69 29-Mar-2014 Jeff Hao <jeffhao@google.com> am f1354dd2: am d648e5f7: am e9b4fd07: Merge "Mark constructor as accessible in LayoutInflater."

* commit 'f1354dd206a74e1475e8c1f8682dfd9d5e146f00':
Mark constructor as accessible in LayoutInflater.
673a784c60d634e5cabb96e9557b86d0abfbc967 29-Mar-2014 John Reck <jreck@google.com> Remove DisplayList.java

Bug: 13478302

Change-Id: I88574ec585b7eb165f3009a4f0492c12f70d3513
isplayList.java
f1354dd206a74e1475e8c1f8682dfd9d5e146f00 29-Mar-2014 Jeff Hao <jeffhao@google.com> am d648e5f7: am e9b4fd07: Merge "Mark constructor as accessible in LayoutInflater."

* commit 'd648e5f7ba26fc835c0448740f33c49874d51a3b':
Mark constructor as accessible in LayoutInflater.
380ecb81db52a9d0197ca969951d07b91c20d2b9 14-Mar-2014 Jorim Jaggi <jjaggi@google.com> Make Keyguard a library and make StatusBar the new Keyguard.

This change achieves a couple of things:
- Let Keyguard be a library, so we can use it in SystemUI.
- Introduce FLAG_KEYGUARD for windows and deprecate TYPE_KEYGUARD. Make
all the TYPE_KEYGUARD behaviour dependant on the flag.
- Implement a new KeyguardService in SystemUI, and bind that service
from PhoneWindowManager.
- Introduce BaseStatusBar.setKeyguardState and inflate
KeyguardSimpleHostView there and use FLAG_KEYGUARD for the window, such
that the status bar window essentially gets the Keyguard.

Bug: 13635952
Change-Id: I059d80d8b9b9818a778ab685f4672ea2694def63
indowManager.java
aaa114215bd1e0a2f526e97571fc5fefcd81cb48 28-Mar-2014 Svetoslav <svetoslavganov@google.com> Disable node tree consistency check on user builds.

Change-Id: I6ec8cfc41fefc12e4c8fb6f39715831f072cb074
ccessibilityInteractionController.java
d08c864784b5d416805aee502e5294b0188a7bd8 28-Mar-2014 Michael Wright <michaelwr@google.com> Add InputDevice#supportsSource(int).

This mirrors the InputEvent#isFromSource API.

Change-Id: Ie4869cc52d22d49a71d4d3e22f1ae38b16367395
nputDevice.java
e3abd2ccbef4c50b48df3605c65d732fa49a980b 28-Mar-2014 Jeff Hao <jeffhao@google.com> Mark constructor as accessible in LayoutInflater.

Needed to bypass new access checks for fields, methods, and
constructors.

Change-Id: I8ff0b44a6cb4f4af1c72734bca366d8b89528030
ayoutInflater.java
1c97a5266a2cae8177721cab83c62436321e3b41 28-Mar-2014 ztenghui <ztenghui@google.com> Merge "Add RevealAnimator"
4dc16b370ca633d6937c8e0ebf9f5aca46baa9a4 25-Mar-2014 ztenghui <ztenghui@google.com> Add RevealAnimator

Expose this as a ValueAnimator throught a new API as
View.createRevealAnimator().

Change-Id: Ia6aac452988f001023478ee1ca0f268960e23f25
iew.java
2a0901107443685ef2f2a55d0b62ddcc6cf183ba 27-Mar-2014 John Reck <jreck@google.com> Force-enable hardware acceleration for apps

Change-Id: Ie45581fac2b6b71aeb7b652485915e2518372efc
iewRootImpl.java
1b10869f39978a864cfcc4efc73aefc312d8ed79 19-Mar-2014 Michael Wright <michaelwr@google.com> Generate and respect ACTION_CANCEL for joystick fallbacks. DO NOT MERGE

Also change MotionEvent.PointerCoords bit packing and unpacking
methods to be consistent with BitSets which are now used on the
native PointerCoords object.

Bug: 11480300
Change-Id: Ib18c99b94ac555104c69eac526860aa501e89e03
otionEvent.java
iewRootImpl.java
1e3c93975ee9c88284449406d49df2569f03f498 24-Mar-2014 Michael Wright <michaelwr@google.com> Adds API for determining confirm and cancel keys.

Bug: 13624048
Change-Id: I9f42eeb9c3a6bdae35eb0d7213fb4ac0fd8dc0d9
eyEvent.java
iew.java
62828dfca2b009d42a414b60117d7f34034841f8 26-Mar-2014 Chris Craik <ccraik@google.com> Merge "Add private circular reveal API on View/RenderNode"
8a2b46d535e28c102b972407faa866cd15246445 26-Mar-2014 Svetoslav <svetoslavganov@google.com> Merge "Wrong constant used for undefined accessibility window id."
cbcc9695f0a701d620f48de75eaee05c4fef6f22 26-Mar-2014 Svetoslav <svetoslavganov@google.com> Wrong constant used for undefined accessibility window id.

Change-Id: I8b14db034a42a7ffd211a46fa3fee7bf2a6eac8f
iew.java
8c271ca63b62061fd22cfee78fd6a574b44476fd 25-Mar-2014 Chris Craik <ccraik@google.com> Add private circular reveal API on View/RenderNode

Change-Id: I139c8e12b354083149a665f6768f3f6931a8dd15
enderNode.java
iew.java
c21929c710949a48790fa2701c47cedfabb7b9dc 25-Mar-2014 Chris Craik <ccraik@google.com> Merge "Fix doc build"
f975823773ffddde476e8a8563702f5acc45ab6c 25-Mar-2014 Chris Craik <ccraik@google.com> Fix doc build

Change-Id: I18627229be3e8e242e469af83e7e5ae580b03707
iew.java
bcad68ad80e5a44e5dc6988eddb8acabdc01a737 25-Mar-2014 John Reck <jreck@google.com> Merge "Move where updateProperties is called"
bfb07a03777af424e99bca1dac4c903aaf44e99d 25-Mar-2014 John Reck <jreck@google.com> Move where updateProperties is called

Change-Id: I27da448996019094c44487ce28c5689d098d6535
LRenderer.java
9adca065148f704187866c53cceda8e0050b1f35 19-Mar-2014 Michael Wright <michaelwr@google.com> Respect ACTION_CANCEL for joystick fallbacks

Also change MotionEvent.PointerCoords bit packing and unpacking
methods to be consistent with BitSets which are now used on the
native PointerCoords object.

Bug: 11480300
Change-Id: Ic6c7ebda5c545d07ea1ed259ca1f1184ccf85f29
otionEvent.java
iewRootImpl.java
76c30ce3c1d8f1a818502aaea2c42c84d6bd3f92 24-Mar-2014 Chris Craik <ccraik@google.com> Merge "Rework Outline API, remove isolatedZVolume remnants"
48600b95cad8d49772ca5634a317b893d2346f42 24-Mar-2014 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #13564072: Back button no longer dismisses IME after voice usage"
b49f446c98096c4790a11d9b5bc83a4e585278c9 20-Mar-2014 Chris Craik <ccraik@google.com> Rework Outline API, remove isolatedZVolume remnants

Change-Id: I30c2fe832dcb98fa6329b1a595b3d3aafbdcad6b
enderNode.java
iew.java
iewGroup.java
6b6b3fdbf5547417fde3ce56d9eb883963a54b58 24-Mar-2014 Dianne Hackborn <hackbod@google.com> Fix issue #13564072: Back button no longer dismisses IME after voice usage

Calling identity wasn't being cleared in an incoming code path.

Change-Id: Ib32060a91bf81531de049fafde69835b5382a25f
nputmethod/InputMethodManager.java
a73b0c54b3f8c00028ff9b39aa1e0f5556d7c6f2 24-Mar-2014 Mathew Inwood <mathewi@google.com> Merge "Fix log spam from View.toString()."
296f1a9130cc5d5339ab1d1c3cfc7324920acf8a 23-Mar-2014 Craig Mautner <cmautner@google.com> Merge "Revert "Apply FLAG_SHOW_WHEN_LOCKED within tasks.""
9cf34e2ee4cb3d2e14c2863298ad3a2fafc31d39 23-Mar-2014 Craig Mautner <cmautner@google.com> Revert "Apply FLAG_SHOW_WHEN_LOCKED within tasks."

This reverts commit f7ad855718dc576a1618a54035b82e92356aa0d8.

After careful consideration this would prove to be a security leak to leave it in. Tasks could deliberately launch dialog activities that don't want to be seen in an unsecure setting. These would then be visible over the task background.

Change-Id: Ia7e984bc9616573af6c7772f6ea0f2dd588bb85d
indowManagerPolicy.java
caf947737d3e94d2f5d839ec1fa951df7937fdb2 21-Mar-2014 Bo Liu <boliu@google.com> Merge "Convert a attach/detach functor in ViewRootImpl to x64"
3daafcd7bab6e3ace72396576529e3049ab4c066 21-Mar-2014 John Spurlock <jspurlock@google.com> Merge "Annotate framework vibrate calls with stream hints."
f7ad855718dc576a1618a54035b82e92356aa0d8 21-Mar-2014 Craig Mautner <cmautner@google.com> Apply FLAG_SHOW_WHEN_LOCKED within tasks.

If the bottommost fullscreen window of a task has FLAG_SHOW_WHEN_LOCKED
set then show all windows of the task that are above that window.

Fixes bug 13558398.

Change-Id: Ied8ada54efbb079eaf375470b2eae749e5551c24
indowManagerPolicy.java
845535a76d5348847a827d981ef361d0b18e68ad 21-Mar-2014 Bo Liu <boliu@google.com> Convert a attach/detach functor in ViewRootImpl to x64

Change-Id: I93c1df8abd0ecd1686e392cada099f9864926d33
iewRootImpl.java
d15990aa501b683c143700e246b390c8bb79b210 21-Mar-2014 Mathew Inwood <mathewi@google.com> Fix log spam from View.toString().

If a view has a non-zero ID that is not defined in resources (i.e. has been
set pragmatically), the calls to Resources.getResourcePackageName() and
Resources.getResourceEntryName() result in a log warning:
No package identifier when getting name for resource number 0x00000001

Fix this by not attempting to resolve the package & name when there is
none.

Change-Id: Id88a61539fffb36187da7911f8e8a42d5a1bb951
iew.java
f9e1a0b369740e11ea1ed4f141ffb936fc1a6cdb 20-Mar-2014 John Spurlock <jspurlock@google.com> Annotate framework vibrate calls with stream hints.

Migrate existing framework usages of Vibrator.vibrate to use
the new overload with an explicit stream hint. This prevents
them from being blocked by rules targeting the unspecified stream.

For calls that pass the existing appops check in VibrateService,
pass streamHint down to the input device vibrator so we don't lose
the signal, but leave it up to InputManager to decide what to do
with it - currently unused.

Change-Id: I65c944e4010edea29a412bf57d8d7d3b8098b746
olumePanel.java
7bcdb33d859ffb70f235cc8e0f22a0598194ddf8 21-Mar-2014 Winson Chung <winsonc@google.com> Merge "Adding support for clipping window transition for alternate recents."
399f62052a88e5e7628b7312637ae54fbbaa4bec 19-Mar-2014 Winson Chung <winsonc@google.com> Adding support for clipping window transition for alternate recents.

Change-Id: Ic7df4e6c0396afc794ffc21694814c0a93f20f31
nimation/ClipRectAnimation.java
nimation/Transformation.java
576b6f2c25ab388e9dbc3bfc4df445ca648e7253 20-Mar-2014 Baligh Uddin <baligh@google.com> Fix Build
ccessibility/AccessibilityManager.java
a053d095ae9d49aa22a0c717bb6ede687feb3fd2 20-Mar-2014 Svetoslav <svetoslavganov@google.com> Fix build

Change-Id: Icde98afd1471295320dc9042e1ecf680bb88ebd2
ccessibility/AccessibilityManager.java
8e3feb15c5aec2c72b0ef120a1da325e1e8f0dda 24-Feb-2014 Svetoslav <svetoslavganov@google.com> Added accessibility APIs for introspecting interactive windows.

1. The old introspection model was allowing querying only the active window
which is the one the user is touching or the focused one if no window is
touched. This was limiting as auto completion drop downs were not inspectable,
there was not way to know when the IME toggles, non-focusable windows were
not inspectable if the user taps them as until a screen-reader starts
introspecting the users finger is up, accessibility focus was limited to
only one window and the user couldn't use gestures to visit the whole UI,
and other things I can't remember right now.

The new APIs allow getting all interactive windows, i.e. ones that a
sighted user can interact with. This prevents an accessibility service
from interacting with content a sighter user cannot. The list of windows
can be obtained from an accessibility service or the host window from an
accessibility node info. Introspecting windows obey the same rules for
introspecting node, i.e. the service has to declare this capability
in its manifest.

When some windows change accessibility services receive a new type
of event. Initially the types of windows is very limited. We provide
the bounds in screen, layer, and some other properties which are
enough for a client to determined the spacial and hierarchical
relationship of the windows.

2. Update the documentation in AccessibilityService for newer event types.

3. LongArray was not removing elements properly.

4. Composite accessibility node ids were not properly constructed as they
are composed of two ints, each taking 32 bits. However, the values for
undefined were -1 so composing a 64 long from -1, -1 prevents from getting
back these values when unpacking.

5. Some apps were generating inconsistent AccessibilityNodeInfo tree. Added
a check that enforces such trees to be well formed on dev builds.

6. Removed an necessary code for piping the touch exploration state to
the policy as it should just use the AccessibilityManager from context.

7. When view's visibility changed it was not firing an event to notify
clients it disappeared/appeared. Also ViewGroup was sending accessibility
events for changes if the view is included for accessibility but this is
wrong as there may be a service that want all nodes, hence events from them.
The accessibility manager service takes care of delivering events from
not important for accessibility nodes only to services that want such.

8. Several places were asking for prefetching of sibling but not predecessor
nodes which resulted in prefetching of unconnected subtrees.

9. The local AccessibilityManager implementation was relying on the backing
service being ready when it is created but it can be fetched from a context
before that. If that happens the local manager was in a broken state forever.
Now it is more robust and starts working properly once the backing service
is up. Several places were lacking locking.

bug:13331285

Change-Id: Ie51166d4875d5f3def8d29d77973da4b9251f5c8
ccessibilityInteractionController.java
MagnificationCallbacks.aidl
WindowManager.aidl
iew.java
iewGroup.java
iewRootImpl.java
indowInfo.aidl
indowInfo.java
indowManagerInternal.java
indowManagerPolicy.java
ccessibility/AccessibilityCache.java
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityManager.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityNodeInfoCache.java
ccessibility/AccessibilityNodeProvider.java
ccessibility/AccessibilityRecord.java
ccessibility/AccessibilityWindowInfo.aidl
ccessibility/AccessibilityWindowInfo.java
c768e1b673fa02719db3e5323803c0109dd78ec9 19-Mar-2014 Jeff Brown <jeffbrown@google.com> am 3e1b03e4: am 5693d403: am 96abebd0: am 80af5316: am f260ed09: Merge "Fix inverted conditional in View.setFilterTouchesWhenObscured." into klp-dev

* commit '3e1b03e4e73d46a752537e6dcec9abdf6f5116a6':
Fix inverted conditional in View.setFilterTouchesWhenObscured.
5693d403600b430acb995573d1648f6a551ed510 19-Mar-2014 Jeff Brown <jeffbrown@google.com> am 96abebd0: am 80af5316: am f260ed09: Merge "Fix inverted conditional in View.setFilterTouchesWhenObscured." into klp-dev

* commit '96abebd02559137fa320a17c5b7a985d6fc068ba':
Fix inverted conditional in View.setFilterTouchesWhenObscured.
96abebd02559137fa320a17c5b7a985d6fc068ba 19-Mar-2014 Jeff Brown <jeffbrown@google.com> am 80af5316: am f260ed09: Merge "Fix inverted conditional in View.setFilterTouchesWhenObscured." into klp-dev

* commit '80af53162477385f20956a55305d0c048ef5c1df':
Fix inverted conditional in View.setFilterTouchesWhenObscured.
1c394559d9aa2c160a929164b761728a79eb8bed 19-Mar-2014 Jeff Brown <jeffbrown@google.com> am 80af5316: am f260ed09: Merge "Fix inverted conditional in View.setFilterTouchesWhenObscured." into klp-dev

* commit '80af53162477385f20956a55305d0c048ef5c1df':
Fix inverted conditional in View.setFilterTouchesWhenObscured.
80af53162477385f20956a55305d0c048ef5c1df 19-Mar-2014 Jeff Brown <jeffbrown@google.com> am f260ed09: Merge "Fix inverted conditional in View.setFilterTouchesWhenObscured." into klp-dev

* commit 'f260ed09263d60ff941225e31e22d344afd90c0f':
Fix inverted conditional in View.setFilterTouchesWhenObscured.
aba566589e0011c4b973c0d4f77be4e9ee176089 19-Mar-2014 Jeff Brown <jeffbrown@google.com> Fix inverted conditional in View.setFilterTouchesWhenObscured.

Bug: 13530806
Change-Id: Icdaf909c355f5b22635e1060f2190502916b144f
iew.java
edb67190d65659ff1da563f1d081d9429bd31a31 18-Mar-2014 Wonsik Kim <wonsik@google.com> Merge "Revert "VideoPlaneView initial implementation""
97d9b65470957ce4c9983921bd59c4cf902885ce 17-Mar-2014 Alan Viverette <alanv@google.com> Lower tap timeout to 100ms, because 180ms is a lot of ms

Change-Id: I708848480544825474785e0918feba70c1089090
iewConfiguration.java
34f67f26e355925aa1e00a20bc11e09b8dc32988 17-Mar-2014 Chris Craik <ccraik@google.com> Remove castsShadow and globalCamera APIs

Change-Id: I5c1c375f45946609b1635d952c5adf55e23bdd60
enderNode.java
iew.java
618236fe886b84f99cd7c48ece96b16f82a9d2b2 17-Mar-2014 Chris Craik <ccraik@google.com> Revert "Remove castsShadow and globalCamera APIs"

This reverts commit 0334c314a5721f49b4d172a9cefe10f157cb28a4.

Change-Id: I64714d17fb877e1b43c65eb44820d1128281c7a2
enderNode.java
iew.java
0334c314a5721f49b4d172a9cefe10f157cb28a4 15-Mar-2014 Chris Craik <ccraik@google.com> Remove castsShadow and globalCamera APIs

Change-Id: I4d81a7849eba60a1a9debce74eedd55d6331842d
enderNode.java
iew.java
f666ad7046c0b1b255835f75aeb7d1391067df93 15-Mar-2014 John Reck <jreck@google.com> Rename DisplayList->RenderNode

Change-Id: Idcca6f26ba6282594789962f5edb3ed53a290fef
isplayList.java
LES20Canvas.java
LRenderer.java
ardwareCanvas.java
ardwareLayer.java
enderNode.java
hreadedRenderer.java
iew.java
iewPropertyAnimator.java
iewRootImpl.java
475e3f0e887cd23d3107acc06d29d440c60fbecf 17-Mar-2014 Wonsik Kim <wonsik@google.com> Revert "VideoPlaneView initial implementation"

This reverts commit 5f8aa4142919b3001fd2621f7acd5f609a5129a5.

Change-Id: I161748f365512c5e24acba2c3d9ebd9405fa8e3f
urfaceControl.java
urfaceView.java
ideoPlaneView.java
indowManager.java
b61d39957b5af68138e7bb80c6ef0bbd7796ec95 14-Mar-2014 Adam Powell <adamp@google.com> am 898d6d96: am 7f2c9e94: Merge "Add a config override for ViewConfiguration#hasPermanentMenuKey" into klp-dev

* commit '898d6d964cb3b650b5c9bed2276310547e5455e0':
Add a config override for ViewConfiguration#hasPermanentMenuKey
6cde6c75b3469b7f76343ef7fc646f65c8393a17 14-Mar-2014 Adam Powell <adamp@google.com> am 41685ce9: am 898d6d96: am 7f2c9e94: Merge "Add a config override for ViewConfiguration#hasPermanentMenuKey" into klp-dev

* commit '41685ce983abd6b4ccbb0ae8043d6a1dc118f7d3':
Add a config override for ViewConfiguration#hasPermanentMenuKey
41685ce983abd6b4ccbb0ae8043d6a1dc118f7d3 14-Mar-2014 Adam Powell <adamp@google.com> am 898d6d96: am 7f2c9e94: Merge "Add a config override for ViewConfiguration#hasPermanentMenuKey" into klp-dev

* commit '898d6d964cb3b650b5c9bed2276310547e5455e0':
Add a config override for ViewConfiguration#hasPermanentMenuKey
40503f9f8cc75c37d38ca0b34049e9b337ba040c 13-Mar-2014 John Reck <jreck@google.com> App compat

Bug: 13450310

Change-Id: I32d948a243385d1bb9f2615759127f4b13ce01bd
iew.java
932d98a0137bdf7093839a1c24994172cde97791 13-Mar-2014 Jeff Brown <jeffbrown@android.com> am 33282d66: am a41ddccd: Merge "Fixed typo errors in documentation"

* commit '33282d66155e8d68acea512989ec61cb15fae1ce':
Fixed typo errors in documentation
306c46884eb3121a981a0d1ed0c5461908c227fc 12-Mar-2014 RoboErik <epastern@google.com> am ca9eef62: b/12068020 Make kb layouts only unique to vendor/product. Do not merge

* commit 'ca9eef6203b7cfb0084f8305d4dcc5d70a7a25cd':
b/12068020 Make kb layouts only unique to vendor/product. Do not merge
ca9eef6203b7cfb0084f8305d4dcc5d70a7a25cd 16-Dec-2013 RoboErik <epastern@google.com> b/12068020 Make kb layouts only unique to vendor/product. Do not merge

This is a cherry-pick of https://googleplex-android-review.git.corp.google.com/#/c/399886/

Instead of storing a kb layout per device descriptor (which is expected
to be unique), store it for each vendor/product. This way we can keep
a consistent layout between identical but physically different keyboards.

There are some corner cases this is expected to fail on, namely devices
that incorrectly have the same vendor/product id. Devices that don't
define a vendor/product id will continue to use the descriptor to store
layout files.

Change-Id: I1f2508561992080459310d5a644dad65a9c24f1a
nputDevice.java
a7124cdd83723027f5880fa96f0c285a7615f3fa 12-Mar-2014 Fabrice Di Meglio <fdimeglio@google.com> Merge "Cleanup ContextThemeWrapper"
898d6d964cb3b650b5c9bed2276310547e5455e0 12-Mar-2014 Adam Powell <adamp@google.com> am 7f2c9e94: Merge "Add a config override for ViewConfiguration#hasPermanentMenuKey" into klp-dev

* commit '7f2c9e9420252a493b7399639f794c8a963444e5':
Add a config override for ViewConfiguration#hasPermanentMenuKey
15b13a792c0fd1f7349347f096de86b85cfc2f1f 04-Dec-2013 Adam Powell <adamp@google.com> Add a config override for ViewConfiguration#hasPermanentMenuKey

Allow device overlays to override the behavior of the
hasPermanentMenuKey method at build time. This is useful for devices
that do not behave as the usual autodetection mechanism expects.

Device overlays should set config_overrideHasPermanentMenuKey to 1 if
the device DOES have a permanent menu key or 2 if the device DOES NOT
have a permanent menu key.

Bug 11698700

Change-Id: I467b68528cf681b08adcaebc2402d8bdd84f6b5c
iewConfiguration.java
e769cdf017bb5a8e45648ef1bdd657f5320b2691 11-Mar-2014 Jeff Brown <jeffbrown@android.com> am 1491aaf5: am 14006523: am 33282d66: am a41ddccd: Merge "Fixed typo errors in documentation"

* commit '1491aaf503de47491bc97457c77bb51c0320793e':
Fixed typo errors in documentation
140065230900b465f85f64c5da5181d124076e1d 11-Mar-2014 Jeff Brown <jeffbrown@android.com> am 33282d66: am a41ddccd: Merge "Fixed typo errors in documentation"

* commit '33282d66155e8d68acea512989ec61cb15fae1ce':
Fixed typo errors in documentation
a41ddccdc67ace7c9363efebbf6e51710928ce12 11-Mar-2014 Jeff Brown <jeffbrown@android.com> Merge "Fixed typo errors in documentation"
005c0324c52b7affd8a5fac1a4925c23fc22f3db 11-Mar-2014 Adam Powell <adamp@google.com> am 8566f156: am c8b43bc0: am fd6b9975: Prevent overflow from MeasureSpec.adjust; measure cache fix

* commit '8566f1561bb99eeff16b7845156c978b42ada227':
Prevent overflow from MeasureSpec.adjust; measure cache fix
c8b43bc0021aea63858044551f13cae86f4e5699 11-Mar-2014 Adam Powell <adamp@google.com> am fd6b9975: Prevent overflow from MeasureSpec.adjust; measure cache fix

* commit 'fd6b99750bfab7f930ee375a79009874a3196165':
Prevent overflow from MeasureSpec.adjust; measure cache fix
fd6b99750bfab7f930ee375a79009874a3196165 07-Mar-2014 Adam Powell <adamp@google.com> Prevent overflow from MeasureSpec.adjust; measure cache fix

Extract the size from the MeasureSpec value before adding the
delta. The opposite order could result in a negative delta causing
overflow into size from the EXACTLY mode, creating a very large size
value in the resulting MeasureSpec.

Don't reapply optical bounds insets after pulling a value from the
measurement cache. (The insets will have already been applied before
insertion into the cache.)

Change-Id: Ib0154f4d6c3a7c31e7fee24fd7d5d10cc5dc71a1
iew.java
be34f2f3b340196426bdf558b28951359a4d84fa 10-Mar-2014 John Reck <jreck@google.com> DisplayList lifecycle changes

Bug: 13360343
Change DisplayList to be more forgiving with weaker lifecycle
requirements. Is more self-managed with a strong reference
to the renderer it needs

Also fix naming mismatch

Change-Id: I5c89453a72a52954f6f959f0846199705dbb6476
isplayList.java
LRenderer.java
ardwareLayer.java
ardwareRenderer.java
hreadedRenderer.java
iew.java
30c86ad4754e228ecc0ff07ecb3d76ea37a619e0 10-Mar-2014 Jean Chalard <jchalard@google.com> Merge "Improve doc for EditorInfo#initialSel{Start,End}"
2901e0442ab63d3148b708e88f445acaf8d4dc15 08-Mar-2014 Jeff Brown <jeffbrown@google.com> am 9e3de5f7: am 6f9f8e7a: am 01b5e765: Merge "Declare KEYCODE_SLEEP and KEYCODE_WAKEUP." into klp-modular-dev

* commit '9e3de5f70d77f7152b25fec6c27b73d037c1376d':
Declare KEYCODE_SLEEP and KEYCODE_WAKEUP.
be59a211644d17b00bc24b3359f5ffc8723a4be0 08-Mar-2014 Elliott Hughes <enh@google.com> am 29d60b95: am 8d41e653: Merge "Miscellaneous small documentation fixes."

* commit '29d60b95fa8019c0542f46551057c4d376bb8a7a':
Miscellaneous small documentation fixes.
29cc47a5f1021ad42f4699f08ebaea025925f410 08-Mar-2014 Chris Craik <ccraik@google.com> Update Z documentation to avoid hidden API

Change-Id: I723930b951327a06dfbf2aeb8417409e6ce02c2e
iew.java
ebb9f3a1a3cb405dac7f98815b37c198c65739cd 08-Mar-2014 Fabrice Di Meglio <fdimeglio@google.com> Cleanup ContextThemeWrapper

- remove reference to base Context as we can get it thru
getBaseContext() call

Change-Id: I2687c15db12624243fadba44d624e2e4bdae240d
ontextThemeWrapper.java
6f9f8e7aad2f74bc2089a081139111012e62f7db 08-Mar-2014 Jeff Brown <jeffbrown@google.com> am 01b5e765: Merge "Declare KEYCODE_SLEEP and KEYCODE_WAKEUP." into klp-modular-dev

* commit '01b5e765e59c14cdfb62f1a8684e9116a46874d2':
Declare KEYCODE_SLEEP and KEYCODE_WAKEUP.
6212a49a9475768316a999596ffc4dd0f4ce96e5 07-Mar-2014 Jeff Brown <jeffbrown@google.com> Declare KEYCODE_SLEEP and KEYCODE_WAKEUP.

These new keys behave in similarly to KEYCODE_POWER but do not
simply toggle between awake and asleep states.

Sleep puts the device to sleep if it is awake.
Wakeup wakes up the device if it is asleep.

Bug: 12938999
Change-Id: I260fb918cc858882fe06fa880910df5763a76c5d
eyEvent.java
2d70802fec68ccd4b83c6634abcfe2bc4ba428c1 07-Mar-2014 Chris Craik <ccraik@google.com> Merge "Hide isolatedZVolume API"
b3a8b2c823b07c9caf5e2f769749f62c32b1936b 07-Mar-2014 Chris Craik <ccraik@google.com> Hide isolatedZVolume API

Change-Id: Ia3a70aaac3d7027285a7510d6fed9ca3548a0bf1
iewGroup.java
cde786835676f14c4d24cc4769a2de7ead853c5c 07-Mar-2014 Narayan Kamath <narayan@google.com> am b152473f: am 9fce8535: Merge "AArch64: Make AssetAtlasService 64-bit compatible"

* commit 'b152473f46d8176e7eb2c55b54342a7a29c525cf':
AArch64: Make AssetAtlasService 64-bit compatible
d556b429092b59b433bc14d42ecee97a2cd19922 07-Mar-2014 Narayan Kamath <narayan@google.com> am 3bec0fbb: am fa8f95e9: Merge "AArch64: Use long for pointers in SurfaceSession class"

* commit '3bec0fbb349a969934828ee726956877a3a21dee':
AArch64: Use long for pointers in SurfaceSession class
ae90d762c3ae5cd9c8c918849dc91dfea825387b 07-Mar-2014 Yohei Yukawa <yukawa@google.com> Merge "Introduce InputMethodSubtypeArray for memory efficient IPCs"
b14dfe20ef300c47cc5cdfbd844c21f7fd302f0c 06-Mar-2014 John Reck <jreck@google.com> Revert "Revert "Workaround apps not calling super.onDetachedFromWindow()""

This reverts commit bac16fae7e6fceb1e516252ede673844b772e7c3.

Change-Id: I61e997b23fac1aa984129fdc0328426ff8891bdd
urfaceView.java
extureView.java
iew.java
acbc41d656be91854d9c128aee06b5ecc9f54528 06-Mar-2014 Bart Sears <bsears@google.com> Merge "Revert "Workaround apps not calling super.onDetachedFromWindow()""
bac16fae7e6fceb1e516252ede673844b772e7c3 06-Mar-2014 Bart Sears <bsears@google.com> Revert "Workaround apps not calling super.onDetachedFromWindow()"

Requested by jreck to fix the build.

This reverts commit 198d20842a537f3df3584ea084e74220e172b086.

Change-Id: I733065cc124b59bf914034f5bac5e2e951a5b604
urfaceView.java
extureView.java
iew.java
d621e77c8dfc99d0c347ff4cef765e9809f51333 06-Mar-2014 John Reck <jreck@google.com> Merge "Workaround apps not calling super.onDetachedFromWindow()"
198d20842a537f3df3584ea084e74220e172b086 06-Mar-2014 John Reck <jreck@google.com> Workaround apps not calling super.onDetachedFromWindow()

Bug: 13338698
Move the releasing of hardware resources to a new
@hide onDetachedFromWindowInternal

Change-Id: I52b4e6ba4d5b3ce20b89cabffa248d1d780e3e81
urfaceView.java
extureView.java
iew.java
b7d0cfa0d8d10ec613bcd6f5072729571d3a9588 06-Mar-2014 Chris Craik <ccraik@google.com> Merge "Add Path.isConvex, and force View outlines to be convex"
ecc7ca53852a395157ac1b45ee6aa4fe13ade3d1 06-Mar-2014 Michael Wright <michaelwr@google.com> resolved conflicts for merge of fa2e53cc to master

Change-Id: Idc54765c28ab7c6c810095aba1ba21d7695e08d5
f06569561fe1c6e898debf8bb9f37331a9f87323 03-Mar-2014 Yohei Yukawa <yukawa@google.com> Introduce InputMethodSubtypeArray for memory efficient IPCs

This CL introduces InputMethodSubtypeArray which compresses
multiple instances of InputMethodSubtype to reduce the risk
of TransactionTooLargeException during IPCs.

There are some IMEs which rapidly adding new subtypes into
their supported language list. One problem here is that each
instance of InputMethodInfo internally owns the list of
supported subtypes. Basically it requires additional
200 ~ 300 bytes for each subtype when InputMethodInfo is
transffered via IPCs. We should keep the size less than
100 KB in typical scenario.

With this CL, the list of InputMethodSubtype is marshalled
with GZIP compression. Approximately one InputMethodInfo is
marshalled within 10 KB even when it has 100 subtypes.

No negative performance impact is observed so far. The cost of
decompression seems to be compensated by another optimization
in this CL. Actually marshalling cost is reduced with this CL
by caching the compressed data on demand.

BUG: 12954290
Change-Id: Ibb2940fcc02f3b3b51ba6bbe127d646fd7de7c45
nputmethod/InputMethodInfo.java
nputmethod/InputMethodSubtypeArray.java
b50cea0267763d271df14a55859c6f203eeff041 06-Mar-2014 Filip Gruszczyński <gruszczy@google.com> resolved conflicts for merge of 1569d61f to master

Change-Id: I5bc751a2ae52a8d7542b5b49d27fc90b4a1c7673
1f762b3490ce3583354ac3bf23732e88ebdb7b81 06-Mar-2014 Michael Wright <michaelwr@google.com> am 9aa7c6e5: am e4a71792: am 4448f9d7: am c5dea68e: Merge "Revert Japanese special case fallback keys." into klp-dev

* commit '9aa7c6e583ac18d6c338af8d478512c4ab5293b4':
Revert Japanese special case fallback keys.
9aa7c6e583ac18d6c338af8d478512c4ab5293b4 06-Mar-2014 Michael Wright <michaelwr@google.com> am e4a71792: am 4448f9d7: am c5dea68e: Merge "Revert Japanese special case fallback keys." into klp-dev

* commit 'e4a7179278375f48171746ffe93ca4529a927ecb':
Revert Japanese special case fallback keys.
e4a7179278375f48171746ffe93ca4529a927ecb 06-Mar-2014 Michael Wright <michaelwr@google.com> am 4448f9d7: am c5dea68e: Merge "Revert Japanese special case fallback keys." into klp-dev

* commit '4448f9d7ade3d08a29b1a191e182a403c5584388':
Revert Japanese special case fallback keys.
4448f9d7ade3d08a29b1a191e182a403c5584388 06-Mar-2014 Michael Wright <michaelwr@google.com> am c5dea68e: Merge "Revert Japanese special case fallback keys." into klp-dev

* commit 'c5dea68e9856698953dafca868eaee7207614641':
Revert Japanese special case fallback keys.
c5dea68e9856698953dafca868eaee7207614641 06-Mar-2014 Michael Wright <michaelwr@google.com> Merge "Revert Japanese special case fallback keys." into klp-dev
1f3c72c5e23c0846ec2e52b534dd30f2f23e7e59 06-Mar-2014 John Reck <jreck@google.com> Merge "Detach disappearing children in onDetach"
ca7a9da76d6e663595970e8d3a02099fe5a3fff5 06-Mar-2014 John Reck <jreck@google.com> Detach disappearing children in onDetach

Bug: 13324881

Change-Id: Iba6501b164842c5786a6f4763e334e6c80c6fa41
iewGroup.java
d54530e9cecda7bc69d6479bae4c48189bcf50e9 06-Mar-2014 Filip Gruszczyński <gruszczy@google.com> am 1ae480a2: Merge changes I2104037d,I125c4a00 into klp-modular-dev

* commit '1ae480a24deed18cb1ca95344995150f3a3f5c98':
Passing and using defStyle in ViewGroup initFromAttributes.
Set android:descendantFocusability to blocksDescendants for all NumberPicker in clockwork.
2665f6e9f5163d27608c21ed029a224d53ede43d 06-Mar-2014 John Reck <jreck@google.com> Merge "Remove invalid usage of DisplayList.isValid()"
7558aa708160c287552f4e1e33c33d8b191e9f0e 05-Mar-2014 John Reck <jreck@google.com> Remove invalid usage of DisplayList.isValid()

Bug: 13324734

Editor was using isValid as a mechanism to track whether or not it
needed to re-record the DisplayList. This is not correct as isValid()
is not a general-purpose dirty bit. Add an explicit dirty bit for
Editor to use instead

Change-Id: I5608b151791870fca3681056b5507bd39ee48f52
isplayList.java
c16ba8cda7f16970debba9df9bbc168a9c7c1797 05-Mar-2014 Filip Gruszczyński <gruszczy@google.com> Passing and using defStyle in ViewGroup initFromAttributes.

Change-Id: I2104037d6f701aa3a27bf09226aca171ec77495d
iewGroup.java
eef19cc2ee55de75817db3c5ce22c712a97aeb77 05-Mar-2014 John Reck <jreck@google.com> DisplayList lifecycle fixes

Bug: 13324014
Bug: 13324861

Don't use a DisplayList for the background if the View is detached.
mAttachInfo can be null in onDetachedFromWindow

Change-Id: I6d1413b956dd35cd2f5256860223013d2a570870
iew.java
24ba99c235c328824ec8bcc1bf0382972f5b1616 05-Mar-2014 John Reck <jreck@google.com> Merge "DisplayList overhaul"
568628dc2cb92b3ec3a87cae9de3203fbdc5968c 05-Mar-2014 Will Haldean Brown <haldean@google.com> Manually merge commit '2faf28cf' into master

Original commit message:

Add swipe-to-dismiss support to PhoneWindow.

This adds a new window feature -- FEATURE_SWIPE_TO_DISMISS -- and a
theme attribute to activate that feature. When the feature is
activated, a SwipeDismissLayout is inflated as the DecorView layout.
SwipeDismissLayout intercepts touch events and steals ones that are
large swipes to the right if its children don't. PhoneWindow
registers handlers that listen for these swipe events, translate the
window when necessary, and finish the activity at the end of the
gesture.

Conflicts:
core/java/android/view/Window.java
core/res/res/values/attrs.xml

Change-Id: I943290b436864ca4a1bd401b88d696e08c921cdd
44fd8d24f761f82d21e9b00932648a1b6bf91449 26-Feb-2014 John Reck <jreck@google.com> DisplayList overhaul

Change-Id: I53418d580c98f706e971545cff81b9921c12cc5f
isplayList.java
LES20Canvas.java
LES20RecordingCanvas.java
LRenderer.java
ardwareLayer.java
ardwareRenderer.java
hreadedRenderer.java
iew.java
iewRootImpl.java
11c51608ee1c368dd38b134603e85943629c6f44 04-Mar-2014 Will Haldean Brown <haldean@google.com> am bd79652a: Merge "Add swipe-to-dismiss support to PhoneWindow." into klp-modular-dev

* commit 'bd79652a9afeee1e81f0f51d11e5869091f58af9':
Add swipe-to-dismiss support to PhoneWindow.
bd79652a9afeee1e81f0f51d11e5869091f58af9 04-Mar-2014 Will Haldean Brown <haldean@google.com> Merge "Add swipe-to-dismiss support to PhoneWindow." into klp-modular-dev
76ee9b727a0ec0105a0aafa79f163f70b9533430 04-Mar-2014 John Spurlock <jspurlock@google.com> am 3b869238: am c6ecac77: am 38f81ccc: am fee6f69e: Merge "Volume panel should not clear system ui flags." into klp-dev

* commit '3b86923854069fa1b3bcabc8643a5e2db40d7b10':
Volume panel should not clear system ui flags.
c15254781569fdc75362f1a0ba50ae019fddab4c 04-Mar-2014 Chris Craik <ccraik@google.com> Pass correct paint to HW layer

bug:13299767

Change-Id: I8372a830b2076c489ed0837aba9a85650a4202fd
iew.java
3b86923854069fa1b3bcabc8643a5e2db40d7b10 04-Mar-2014 John Spurlock <jspurlock@google.com> am c6ecac77: am 38f81ccc: am fee6f69e: Merge "Volume panel should not clear system ui flags." into klp-dev

* commit 'c6ecac77cfa35bbc72a4b7e1e3374ad00f83b305':
Volume panel should not clear system ui flags.
c6ecac77cfa35bbc72a4b7e1e3374ad00f83b305 04-Mar-2014 John Spurlock <jspurlock@google.com> am 38f81ccc: am fee6f69e: Merge "Volume panel should not clear system ui flags." into klp-dev

* commit '38f81ccc768958b1a9100cb2caa93ec3aedd9b5e':
Volume panel should not clear system ui flags.
38f81ccc768958b1a9100cb2caa93ec3aedd9b5e 04-Mar-2014 John Spurlock <jspurlock@google.com> am fee6f69e: Merge "Volume panel should not clear system ui flags." into klp-dev

* commit 'fee6f69e8321c3f94c2b341fe483f7b1f6534169':
Volume panel should not clear system ui flags.
ca6234e084a71e0c968cff404620298bcd971fcc 12-Feb-2014 Will Haldean Brown <haldean@google.com> Add swipe-to-dismiss support to PhoneWindow.

This adds a new window feature -- FEATURE_SWIPE_TO_DISMISS -- and a
theme attribute to activate that feature. When the feature is
activated, a SwipeDismissLayout is inflated as the DecorView layout.
SwipeDismissLayout intercepts touch events and steals ones that are
large swipes to the right if its children don't. PhoneWindow registers
handlers that listen for these swipe events, translate the window when
necessary, and finish the activity at the end of the gesture.

Change-Id: I512e758f3c3ffd3b353dba3b911c0e80a88d6f5f
indow.java
ca4d040342a70d42d6dd6f15361931c054275804 04-Dec-2013 John Spurlock <jspurlock@google.com> Volume panel should not clear system ui flags.

Remove private WM flag (used only by the volume panel) to force
the clearable system UI flags clear.

Instead, always lay out the volume panel as if the bars are visible,
as we do for system dialogs - and don't clear the flags.

Reverts part of I25f29af5b6518aba695b64a75977ae240b742118

Bug:11986621
Change-Id: I842729d729d2a6eb2a687d0b930ddb160c6a1b57
olumePanel.java
indowManager.java
b5c5bb0df94d29dd1f96554da4b0663b2b6f3373 04-Mar-2014 Svetoslav <svetoslavganov@google.com> Merge "NPE in AccessibilityNodeInfoCahce."
375e23a6bcbe5a2560cd4d5fe0140f70949e0989 04-Mar-2014 Svetoslav <svetoslavganov@google.com> NPE in AccessibilityNodeInfoCahce.

Change-Id: I2401e40842ef4ae47bba0a30a5e2589c11e488bc
ccessibility/AccessibilityNodeInfoCache.java
7b57d6162ea14a48970c32eebd83437a39cf7ef7 04-Mar-2014 Svetoslav <svetoslavganov@google.com> Merge "Reverting changes to the accessibility layer."
1100714350923fb96d825bacd4809df2c97bea3d 04-Mar-2014 Svetoslav <svetoslavganov@google.com> Reverting changes to the accessibility layer.

1. Views not important for accessibility should still fire accessibility
events as some accessibility service may be registered to introspect
all views.

2. Reverting a correct fix from AccessibilityNodeInfoCache to port it in
a separate change for cherry-pick.

Change-Id: If768259597ed1c884952209dad948c46dff14878
iew.java
ccessibility/AccessibilityNodeInfoCache.java
5be83edd15e11420287cc0af93a95d5a6dfae68f 04-Mar-2014 Chris Craik <ccraik@google.com> Add Path.isConvex, and force View outlines to be convex

Change-Id: Idf3f1ee44240d77f7a7ddd0da898da8aa5d41864
iew.java
99b3534761d6333fef771f114a56d9ac15cd2369 03-Mar-2014 Chris Craik <ccraik@google.com> Merge "Ensure setLayerType pushes Paint changes"
0ebe07263da8c102102ffac7457bb89ab2d1b31a 03-Mar-2014 Chris Craik <ccraik@google.com> Ensure setLayerType pushes Paint changes

Even if layerType and Paint instance haven't changed, since values in
the Paint may have changed.

bug:13208986
Change-Id: Ieb817ba2347bcaf4dce84ee921588ce92d537bb0
iew.java
fa22e9e00169aacabbbbf7aad6df3ac5b7582166 28-Feb-2014 John Reck <jreck@google.com> Merge "Avoid running functors after detach"
f9a901e1018408ddf9e21105695b2bd5814db1fb 28-Feb-2014 John Reck <jreck@google.com> Avoid running functors after detach

Bug: 10861732

Change-Id: Ida55fff716c37c6ab1c98eef02582282de0034f6
iewRootImpl.java
94b5ca811e5716bddb4a4d86df35c29bb9165e5f 27-Feb-2014 George Mount <mount@google.com> Merge "Change Activity Scene Transitions to be more automatic redo."
a9499d704c1a196b1c0bf8317b71e4f7ddd3f75d 27-Feb-2014 Wonsik Kim <wonsik@google.com> Merge "VideoPlaneView initial implementation"
bdffc3ad05180d716cc4b808b292e2262f0cd461 27-Feb-2014 Michael Wright <michaelwr@google.com> Revert Japanese special case fallback keys.

Reverts commits 4567e40eb04589d211af82f2dcb16cb3955c605e and
a977707d6e7006d11cfde045f187e777b31b9e04, which added special case fallbacks
for game controllers in the Japanese locale.

Bug: 12923922
Change-Id: I229126e589e11fb5de86772ef9c59d09723af941
iewRootImpl.java
e180337ee99b9155fe441ea55451f4d2167b5d9a 26-Feb-2014 George Mount <mount@google.com> Change Activity Scene Transitions to be more automatic redo.

This reverts commit 206e30cd93afe3eb72ec94178324417db5424ed2
along with removing the additional startActivity* methods
and replaces them with ActivityOptions makeSceneTransitionAnimation
methods.

Change-Id: I52bec31ae3c4cea6d549810ae5a7acd8aea176d8
iew.java
iewGroup.java
indow.java
206e30cd93afe3eb72ec94178324417db5424ed2 26-Feb-2014 George Mount <mount@google.com> Revert "Change Activity Scene Transitions to be more automatic."

This reverts commit f10587faadb9080a7bf9991cbe04bac5525da482.

Change-Id: I2785a3d2d6b667cad6d61dcbbc1c624161735fa4
iew.java
iewGroup.java
indow.java
5f8aa4142919b3001fd2621f7acd5f609a5129a5 18-Feb-2014 Wonsik Kim <wonsik@google.com> VideoPlaneView initial implementation

Note that eventually VideoPlaneView should not inherit from SurfaceView.

Remove a few trailing spaces too.

Change-Id: Ia0a461169d560435a827861be2cc15f1e3ee68fa
urfaceControl.java
urfaceView.java
ideoPlaneView.java
indowManager.java
121e25dcf0d4da5c1c97fad2bd27dbd361db4153 26-Feb-2014 George Mount <mount@google.com> Merge "Change Activity Scene Transitions to be more automatic."
f10587faadb9080a7bf9991cbe04bac5525da482 06-Feb-2014 George Mount <mount@google.com> Change Activity Scene Transitions to be more automatic.

Shared element transitions are enabled by default
when the Window has a TransitionManager.

Shared element location and size are captured and
transferred to the target Activity.

ActionBar is treated as a shared element.

Change-Id: I0f22ea4e5cbe80254e848444e3f235cb742684f4
iew.java
iewGroup.java
indow.java
be85725e1ec0fc8a4e9dbcf5be222906b3861dc7 24-Feb-2014 Chris Craik <ccraik@google.com> Merge "Damage IsolatedZVolume when shadows change"
ee64201004f07eb79b11bd0ecb7c03944cb8b8ff 24-Feb-2014 John Reck <jreck@google.com> Merge "Add back resize buffer"
66996dafa7137ebac795347576fb8fde14d1e142 24-Feb-2014 Yohei Yukawa <yukawa@google.com> Remove trailing spaces and tabs

Actual fix will be covered by subsequent patches.

BUG: 12954290
Change-Id: I55f2374fd447d5b3d5a696de6f9b493e32f4e17a
nputmethod/InputMethodInfo.java
e56e9df5f12b2714d79415e2c5b3f30d58ca7c12 22-Feb-2014 John Reck <jreck@google.com> Add back resize buffer

Bug: 12825810

Change-Id: Ic2329c30524010f54778101853b30f8f8d9eeb6c
LRenderer.java
iewRootImpl.java
ff641477a75b7318a936f048e2bd87a1ae114b98 21-Feb-2014 Chris Craik <ccraik@google.com> Damage IsolatedZVolume when shadows change

bug:12874322
Change-Id: I3dd92f551dfb00965ccd08647586f378f8949b1c
iew.java
550267f72b6217f797e7f93bb312ecbe6541ff49 22-Feb-2014 Alan Viverette <alanv@google.com> Fix refactoring of invalidate methods

Was incorrectly clearing the DRAWN flag and updating mLastIsOpaque from
partial invalidations, though why this should be different is somewhat
of a mystery.

BUG: 13138721
Change-Id: Ic8d11a64406bc78e94adec7355c1f50d87567887
iew.java
3b49a8a629fb66431bf320d0a759299c5383cb06 22-Feb-2014 Alan Viverette <alanv@google.com> Fix typo in invalidate

BUG: 13138721
Change-Id: If7e10208c3ba752eca5f5cbcf26f8a63b1f4ad51
iew.java
f4f4e863bea74b243a1afada6db7a21df693f8fa 22-Feb-2014 Alan Viverette <alanv@google.com> Fix conditional in invalidateInternal

BUG: 13138721
Change-Id: I433faff7d3e93796dca59ac5b2706c59901558ba
iew.java
c8124a1e7905a20e221a40546d4cf42b2aaaff45 21-Feb-2014 Guang Zhu <guangzhu@google.com> Merge "add new accessibility action for EditText to set text content"
3a4ab768a95a249baceef025a8a214fa0c499a16 21-Feb-2014 Alan Viverette <alanv@google.com> Merge "Invalidate projection receiver, refactor invalidate methods"
449e46600f75a21975ceb1c991f768f833ed7fbf 21-Feb-2014 Elliott Hughes <enh@google.com> am 0047d3e0: am e253b514: am 29d60b95: am 8d41e653: Merge "Miscellaneous small documentation fixes."

* commit '0047d3e025b43fd2dc05734f7ea6229291445046':
Miscellaneous small documentation fixes.
e253b514f4ef74a23c784d2cd893eb035d1c793f 21-Feb-2014 Elliott Hughes <enh@google.com> am 29d60b95: am 8d41e653: Merge "Miscellaneous small documentation fixes."

* commit '29d60b95fa8019c0542f46551057c4d376bb8a7a':
Miscellaneous small documentation fixes.
8d41e653bae240488281d430309e2d501e9524e5 21-Feb-2014 Elliott Hughes <enh@google.com> Merge "Miscellaneous small documentation fixes."
2fb1fa6c88901fd16f1756a744a5f066f95c9253 21-Feb-2014 Narayan Kamath <narayan@google.com> Merge "AArch64: Make AssetAtlasService 64-bit compatible"
52382757753b54be7d5ed4c2cc8496cab36192d8 21-Feb-2014 Derek Sollenberger <djsollen@google.com> Merge "Reapply "Refactor setting an SkPaint onto a hwui Layer.""
17ab38f8a87bc90eab11373f878f220ce3031de6 27-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Make AssetAtlasService 64-bit compatible

Changes in this patch include

[x] Long(64-bit) is used to store native pointers in
AssetAtlasService and related classes as they can be 64-bit.

[x] Some minor changes have been done to conform with
standard JNI practice (e.g. use of jint instead of int
in JNI function prototypes)

Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>

(cherry-picked from 4de3f481bc59ab4b766dc027e41aff7cda9d62f7)

Change-Id: If22daf40eef46f8df9f94d65ddcc52c45b3acf2a
LES20Canvas.java
LRenderer.java
AssetAtlas.aidl
6fd68e0930a0260437a50b3a0e3edbac073dfcec 20-Feb-2014 Jean Chalard <jchalard@google.com> Improve doc for EditorInfo#initialSel{Start,End}

Bug: 12772035
Change-Id: I2fe444685b9d02c15d002d36b1cb1fcfce42cb37
iew.java
nputmethod/EditorInfo.java
nputmethod/InputMethodManager.java
4cd353c038ec3c21f25c12897992e5e9826fe824 13-Feb-2014 Guang Zhu <guangzhu@google.com> add new accessibility action for EditText to set text content

Bug: 12872344
Change-Id: I85a3805ab0c34b96a7d4228f2382c8ff664e36e8
ccessibility/AccessibilityNodeInfo.java
10102e4c0e501333a12b38a5cfe709d1558d84dd 21-Feb-2014 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of baaa080b to master

Change-Id: I3ee12321e298f7a2ea577a99f30c49f3bb497fae
d7a1054b7ab47774cbad217800a5b4e7ee08b0bb 21-Feb-2014 Alan Viverette <alanv@google.com> Invalidate projection receiver, refactor invalidate methods

Change-Id: I61bd705abeadbdc6ef611d1c7368cecfd908076f
iew.java
90506a41c6b85cf7e65b663480e4fe003a99c8c2 20-Feb-2014 Jeff Brown <jeffbrown@google.com> am 07e6d1b9: Merge "Add a new "doze mode" based on Dream components." into klp-modular-dev

* commit '07e6d1b9a5f81ff5a5bf91f2b260ee487d5f2b65':
Add a new "doze mode" based on Dream components.
2687550272ba061448f5d5b914700dc335299ee7 31-Jan-2014 Jeff Brown <jeffbrown@google.com> Add a new "doze mode" based on Dream components.

When a doze component has been specified in a config.xml resource
overlay, the power manager will try to start a preconfigured dream
whenever it would have otherwise gone to sleep and turned the
screen off. The dream should render whatever it intends to show
then call startDozing() to tell the power manager to put the display
into a low power "doze" state and allow the application processor
to be suspended. The dream may wake up periodically using the
alarm manager or other features to update the contents of the display.

Added several new config.xml resources related to dreams and dozing.
In particular for dozing there are two new resources that pertain to
decoupling auto-suspend mode and interactive mode from the display
state. This is a requirement to enable the application processor
and other components to be suspended while dozing. Most devices
do not support these features today.

Consolidated the power manager's NAPPING and DREAMING states into one
to simplify the logic. The NAPPING state was mostly superfluous
and simply indicated that the power manager should attempt to start
a new dream. This state is now tracked in the mSandmanSummoned field.

Added a new DOZING state which is analoguous to DREAMING. The normal
state transition is now: AWAKE -> DREAMING -> DOZING -> ASLEEP.
The PowerManager.goToSleep() method now enters the DOZING state instead
of immediately going to sleep.

While in the doze state, the screen remains on. However, we actually
tell the rest of the system that the screen is off. This is somewhat
unfortunate but much of the system makes inappropriate assumptions
about what it means for the screen to be on or off. In particular,
screen on is usually taken to indicate an interactive state where
the user is present but that's not at all true for dozing (and is
only sometimes true while dreaming). We will probably need to add
some more precise externally visible states at some point.

The DozeHardware interface encapsulates a generic microcontroller
interface to allow a doze dream for off-loading rendering or other
functions while dozing. If the device possesses an MCU HAL for dozing
then it is exposed to the DreamService here.

Removed a number of catch blocks in DreamService that caught Throwable
and attempted to cause the dream to finish itself. We actually just
want to let the process crash. Cleanup will happen automatically if
needed. Catching these exceptions results in mysterious undefined
behavior and broken dreams.

Bug: 12494706
Change-Id: Ie78336b37dde7250d1ce65b3d367879e3bfb2b8b
indowManagerPolicy.java
2f2c0e75af6c1a52e067903d0cf9aa4cddd4e37e 20-Feb-2014 John Reck <jreck@google.com> Merge "Fix NPE in layer destruction"
674554fc36932ca50b15bba41ac6f650254d4e72 19-Feb-2014 Derek Sollenberger <djsollen@google.com> Reapply "Refactor setting an SkPaint onto a hwui Layer."

This reverts commit 90d0c75e94a32fb7d993fae69762820aabc2fcbb.

Change-Id: Ie807761231edf7c848b019931dccbf466208c0be
ardwareLayer.java
6b3c4113c4a43a2e06d1c3f31ae640c11bfd7d6e 20-Feb-2014 John Reck <jreck@google.com> Fix NPE in layer destruction

Bug: 13111945
Fixes an issue where a layer is destroyed after the GLRenderer
lost its Surface. Instead just check that the context we want is
current regardless of the active surface

Change-Id: I6537e6232b5c667b218b896ed5ef390fbe956344
LRenderer.java
40c3ddd3a2462bc41e5fbf4932373ebd83961a6f 20-Feb-2014 Michael Wright <michaelwr@google.com> Merge "Make deliverInputEvent tracing asynchronous"
520a5673fbe8bff90954045b24a361982861ef8d 20-Feb-2014 Narayan Kamath <narayan@google.com> am b152473f: am 9fce8535: Merge "AArch64: Make AssetAtlasService 64-bit compatible"

* commit 'b152473f46d8176e7eb2c55b54342a7a29c525cf':
AArch64: Make AssetAtlasService 64-bit compatible
4de3f481bc59ab4b766dc027e41aff7cda9d62f7 27-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Make AssetAtlasService 64-bit compatible

Changes in this patch include

[x] Long(64-bit) is used to store native pointers in
AssetAtlasService and related classes as they can be 64-bit.

[x] Some minor changes have been done to conform with
standard JNI practice (e.g. use of jint instead of int
in JNI function prototypes)

Change-Id: Ib4c77c134e3ad5b21732e20cde9a54a0b16bdab1
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
LES20Canvas.java
ardwareRenderer.java
AssetAtlas.aidl
d2c3adc9c95683d70d1ce798447a86131602b80b 19-Feb-2014 Michael Wright <michaelwr@google.com> Make deliverInputEvent tracing asynchronous

Change-Id: I640ed4003194d6d4b202680e5c8fffc81749d60f
iewRootImpl.java
a13a69f0e56a4e9998ec4faa78e24c7431b68e72 20-Feb-2014 John Reck <jreck@google.com> Merge "Fix layer recycling for GLRenderer"
0b2c8df7a6883a6af84c52efbd93619cc63cde53 20-Feb-2014 John Reck <jreck@google.com> Fix layer recycling for GLRenderer

Bug: 13007905

Change-Id: I1589f2bb14429099e391c03d7dfb1650da145f28
LRenderer.java
b88a904dfe719a8cbb0b9d73cb4637c22a1deed4 20-Feb-2014 Dan Stoza <stoza@google.com> Merge "Allow disabling layer rotation during screenshots"
498aa8bb3c51b7c5ba66cb38167263157d13bcc1 20-Feb-2014 Alan Viverette <alanv@google.com> Merge "Always redraw background display list when view is redrawn"
81547effacfea78a3c26d34b77e1e99ffc89c89a 20-Feb-2014 Alan Viverette <alanv@google.com> Always redraw background display list when view is redrawn

BUG: 12974357
Change-Id: I358351257e8b099a681e93be8f64e396fdfd6720
iew.java
332886854438809e956fb232b69879e33b5dc2bb 20-Feb-2014 RoboErik <epastern@google.com> Merge "Initial round of MediaSession APIs"
01fe661ae5da3739215d93922412df4b24c859a2 13-Feb-2014 RoboErik <epastern@google.com> Initial round of MediaSession APIs

This is far from complete but puts the basic components in place
for an app to interact with media sessions.

Change-Id: Icfe313f90ad76ae56badbe42b0e43fc5f68db36f
eyEvent.java
5efe5a2d35604595913c9e372c904b85c32e71c8 19-Feb-2014 John Reck <jreck@google.com> Merge "Support HardwareLayers in RenderThread"
19b6bcfd83eb7fb92ebd06d2fec89e308311f1d0 15-Feb-2014 John Reck <jreck@google.com> Support HardwareLayers in RenderThread

Also has a few HardwareLayer lifecycle fixes

Change-Id: I6308cb05f8f199eed72189ace768013a46815941
LRenderer.java
ardwareLayer.java
ardwareRenderer.java
extureView.java
hreadedRenderer.java
iew.java
iewRootImpl.java
66d792b6631a8dfd0dd0b7abc75077760fa083cc 19-Feb-2014 Chris Craik <ccraik@google.com> Merge "Make outline and shadow APIs public"
e9b8817bd720cd2a294126074eb533f943a9348f 11-Feb-2014 Chris Craik <ccraik@google.com> Make outline and shadow APIs public

Change-Id: If40dc27b2fdc41c3ed355bc9029474b1344c1a03
isplayList.java
iew.java
iewGroup.java
1bf3795798aa462187a8c83220f900f293dfc1ee 19-Feb-2014 Craig Mautner <cmautner@google.com> am db0f3e82: Merge "Allow "opaque" flag to be updated. DO NOT MERGE" into klp-modular-dev

* commit 'db0f3e825fb4da01f887c41a877708734b0899e3':
Allow "opaque" flag to be updated. DO NOT MERGE
4f0a80d0b89b4a42deb4023ffb3d3f0af8f82d88 30-Jan-2014 Andy McFadden <fadden@android.com> Allow "opaque" flag to be updated. DO NOT MERGE

Added a setOpaque() call and a bunch of comments.

Bug 12387406

Change-Id: Ic066cba926223f22f9bc56a7013987001d9cc795
urfaceControl.java
16ec12ae77fdd2b09ea0ea0885ac52f11bd32c59 15-Feb-2014 Dan Stoza <stoza@google.com> Allow disabling layer rotation during screenshots

Add the ability to ignore layers' transformation matrices during
screenshot capture, which will allow the window manager to capture
unrotated images for recents during the device rotation animation.

Bug: 11805195
Change-Id: I96e65506b198d34724eb3aa84815aae6f6de4935
urfaceControl.java
8a5dbac349ed5bced0d9509aa5bdcf707df40da2 13-Feb-2014 Michael Wright <michaelwr@google.com> Remove Japanese button swap

Bug: 12923922
Change-Id: I4960d8189e751514a595823d7ed9b273e3ff8eb8
iewRootImpl.java
ee904d4d3ee710f292b607224a6017e843827360 14-Feb-2014 Narayan Kamath <narayan@google.com> am 6795e9c7: am 7a66d8ea: am 3bec0fbb: am fa8f95e9: Merge "AArch64: Use long for pointers in SurfaceSession class"

* commit '6795e9c783242b31188d76c5186dfe0751f1731a':
AArch64: Use long for pointers in SurfaceSession class
7a66d8ea7caba75b03e5a75d234a8598e2d887c6 14-Feb-2014 Narayan Kamath <narayan@google.com> am 3bec0fbb: am fa8f95e9: Merge "AArch64: Use long for pointers in SurfaceSession class"

* commit '3bec0fbb349a969934828ee726956877a3a21dee':
AArch64: Use long for pointers in SurfaceSession class
7d57765db927d8803bd8898463cc6f9979b6bf35 14-Feb-2014 Alan Viverette <alanv@google.com> Merge "Add selection properties to CollectionInfo, CollectionItemInfo"
831663d8fad6b31fb01b626dc2c15623690cbf37 13-Feb-2014 Guang Zhu <guangzhu@google.com> Merge "reduce error logs from disconnected AccessibilityNodeInfo's"
32569caa6ac77ad6a93709985815ae9ee76a8f06 13-Feb-2014 Guang Zhu <guangzhu@google.com> reduce error logs from disconnected AccessibilityNodeInfo's

ChromeView generates a large amount of such logs; while the real
root cause is being fixed, reduce the verbosity so other
interesting logs won't get overwritten.

Bug: 10871032
Change-Id: If42116671062d7b2cc2a13384424575da499c493
ccessibility/AccessibilityNodeInfoCache.java
76769ae02e713f50816ee67ff618b748d95050a8 13-Feb-2014 Alan Viverette <alanv@google.com> Add selection properties to CollectionInfo, CollectionItemInfo

BUG: 12552541
Change-Id: Iae10abc02eeffea7c7fcb25020b343181e1e3482
ccessibility/AccessibilityNodeInfo.java
b67ca78d97f775cfd5b37e9a63fc708fd2897d01 13-Feb-2014 ztenghui <ztenghui@google.com> Merge "Fix one flag setting bug"
b9122c672e76923018198ab0eda07fa6a2145dbc 12-Feb-2014 ztenghui <ztenghui@google.com> Fix one flag setting bug

TODO: encapsulate the bit operations into functions.

Change-Id: I68ada214c080ac54ea43c327684c87dacef85491
iew.java
c70c723cf8a892fb4be2f5917e596d79dfb3cb91 12-Feb-2014 Chris Craik <ccraik@google.com> Merge "Avoid crash if layer is destroyed after GLRenderer"
637314d15c2dacc2d5daeecf17dc668ce405b25c 12-Feb-2014 Chris Craik <ccraik@google.com> Avoid crash if layer is destroyed after GLRenderer

bug:12988766
Change-Id: I96961aeef0b1d42ae8c609f1607a100e61a3d593
LRenderer.java
09591e89e4cf6d3ea836b02e3ef965375f4ab214 12-Feb-2014 Alan Viverette <alanv@google.com> Merge "Add support for assigning keyed View tags via XML"
cdd2eddcb288763341172ead488e92cafb19bab6 12-Feb-2014 Alan Viverette <alanv@google.com> Set properties for pooled CollectionItemInfo, CollectionInfo

BUG: 12978446
Change-Id: I64a366952090ab663ffef43a1d210528805e113c
ccessibility/AccessibilityNodeInfo.java
e889298cd6ae1fc0d76bc00d7d12586db03eb261 11-Feb-2014 Derek Sollenberger <djsollen@google.com> Refactor setting an SkPaint onto a hwui Layer.

This CL removes the unecessary JNI call to set the colorFilter on
a layer.

Change-Id: I9e088f888938d4315745aa618334bfdb9e61343a
ardwareLayer.java
451a3417e97d9d3bb835290a65f9af30b112c789 12-Feb-2014 Alan Viverette <alanv@google.com> Add support for assigning keyed View tags via XML

BUG: 12768823
Change-Id: Ic55c88894dc153c0af0805e403ad8e40d13abcd2
ayoutInflater.java
fc53ef27793a39e9effd829e9cae02a9ca14147e 11-Feb-2014 John Reck <jreck@google.com> Implement missing safelyRun() on ThreadedRenderer

Change-Id: I14b75f37a13fabaa759a51369190dbdc84087c4b
hreadedRenderer.java
04fc583c3dd3144bc6b718fcac4b3e1afdfdb067 06-Feb-2014 John Reck <jreck@google.com> Refactor HardwareLayer

Defer all the things!
Groundwork to allow hardware layers to work in a renderthread world

Change-Id: Ib3aa47525f393083621254a743dbaa6352f933bd
LES20Canvas.java
LES20Layer.java
LES20RenderLayer.java
LES20TextureLayer.java
LRenderer.java
ardwareLayer.java
ardwareRenderer.java
extureView.java
hreadedRenderer.java
iew.java
iewRootImpl.java
eef1be1d83eeb35377cfeb8a4932e317a3a975a7 10-Feb-2014 Derek Sollenberger <djsollen@google.com> Merge "Removing SkiaColorFilter and inspecting the native object directly."
b67a7bf27ba2ecdb55be2117717b6818053f47fc 08-Feb-2014 Chris Craik <ccraik@google.com> Add shadow casting / global perspective APIs, hidden for now.

Global perspective isn't yet hooked up in rendering.

Change-Id: I64ad272ea5dc523505260ce114f0a6bebdcfe9dc
isplayList.java
iew.java
iewGroup.java
76d3a1b8d035d27bc80b0f2fc480a903bd001514 10-Dec-2013 Derek Sollenberger <djsollen@google.com> Removing SkiaColorFilter and inspecting the native object directly.

bug: 10650594
Change-Id: I4fcf66d008765afa0e35d011f58bc792183cb74f
LES20Canvas.java
LES20Layer.java
fad4593a3c9db193a4308c34168cc91c28218e2b 06-Feb-2014 ztenghui <ztenghui@google.com> Add the clipToOutline by just using the clipPathOp

Change-Id: I6ba23b589e579599d018600d0744be0efe2028c1
isplayList.java
iew.java
27bfb24518934f0344c79a1d655ea8d1208d2446 07-Feb-2014 Chris Craik <ccraik@google.com> Merge "Rework and clean up DisplayList projection"
1df26446b7eac7050767c38ca977fde03a41a033 06-Feb-2014 Chris Craik <ccraik@google.com> Rework and clean up DisplayList projection

Move the projection surface to be a property of a DisplayList,
set to true for every background drawable.

Additionally, handle a projecting view background such that it doesn't
try to project onto itself (which is undesirable).

Change-Id: Ic70b17474bd87340e80767f8518f73b233419c7a
isplayList.java
iew.java
6250c59e0d917fb3641ac499ca69b011aa50a4bd 06-Feb-2014 Adam Powell <adamp@google.com> Merge "Refactoring of fitSystemWindows to applyWindowInsets for views"
593b19a49e899a1668755b5040162f2b31f95877 06-Feb-2014 John Reck <jreck@google.com> Remove overdraw counter

Change-Id: Iee05362b9080b28714a4cca5a571f19ce81eadfd
LES20Canvas.java
LRenderer.java
ardwareRenderer.java
a3850d8f8fc096a7195d34f05f45a4e29926e36c 08-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Use long for pointers in SurfaceSession class

For storing pointers, long is used in SurfaceSession class,
as native pointers can be 64-bit.

Change-Id: I1535a488dfffaddd20e3beac57e558035d715cbf
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
urfaceSession.java
d5154ec2bc7e7c0bdfd14fc784912d390afe43cc 06-Feb-2014 Alan Viverette <alanv@google.com> Add prototype for borderless touch feedback drawable

Change-Id: I6366855b1fb838aa077bc6bdb62adc2134c51dca
iew.java
dc9125880c372b3d3a2af09d48225c9c50b962f7 05-Feb-2014 Alan Viverette <alanv@google.com> Merge "Temporary fix for background invalidation"
e6875f1575a71402cd86f75e4d031c95ccd43cc4 05-Feb-2014 Alan Viverette <alanv@google.com> Temporary fix for background invalidation

Not a complete solution, since we could be more efficient, but enough
to have both background display lists and proper invalidation.

Change-Id: I0216a104948c0930760275bb2b98318b0a4487e7
iew.java
46e38fd9abe1af3ccb903a80ff89bc3faef4d3e3 03-Feb-2014 Adam Powell <adamp@google.com> Refactoring of fitSystemWindows to applyWindowInsets for views

Applying insets is now handled by:

* WindowInsets class - Encapsulate system insets and local decor
insets into a single object, written specifically so that new inset
categories may be added later. Apps cannot construct their own
WindowInsets, only clone with optional modifications. This is to
prevent losing data in the event of new insets added in the future.

* onApplyWindowInsets - Actually perform the application of insets.

* OnApplyWindowInsetsListener - Allow an app to use a separate
Listener object to apply insets to a View. This allows for things
like support lib integration in custom views written for older
versions where the verifier would otherwise complain about the use
of the new WindowInsets class as a method parameter. It also allows
for applying insets in a custom way without writing a custom view.

* dispatchApplyWindowInsets - Dispatch the call to self and children
in turn, if applicable. An OnApplyWindowInsetsListener will override
the behavior of the view's default onApplyWindowInsets method; a
listener wishing to call down to the 'superclass' implementation as
part of its own operation should call view.onApplyWindowInsets. App
code should generally not override this method and instead override
onApplyWindowInsets or provide a listener.

Compatibility support with the existing fitSystemWindows method has
been provided in both directions: for code that previously called
fitSystemWindows on arbitrary views and also for code that overrode
the fitSystemWindows method in custom views. A view that supports the
newer onApplyWindowInsets mechanism should not mix that behavior with
other calls to fitSystemWindows or vice versa. Support lib-style code
should take care to consistently use one mechanism or the other at
runtime.

Change-Id: Ie88b96e0382beb5d3c3f6cd013f7043acbc0a105
iew.java
iewGroup.java
indowInsets.java
0a778eda690a66173733a63622886e888d405c45 13-Dec-2013 George Mount <mount@google.com> Cross-Activity Scene transition API.

First pass at API for cross-Activity Scene transitions.
Remaining work:
Transition back
Automatically capture hero element info
Transfer of surface texture to synchronize between Activities
Possibly use scene names to indicate preferred transition

Change-Id: I59d07de1fae694a46b92b1c82525daa301ec1377
iew.java
iewGroup.java
indow.java
143b46d50c0c01970c7d280228bd1e58c2afb32b 04-Feb-2014 Alan Viverette <alanv@google.com> Check for null display list

BUG: 12764584
Change-Id: I071aa0d9bc4f4ac353a5d0f534cf7c44964d4bf0
iew.java
9f244efbfac8d592a0af0321f7985761ed17ec6c 04-Feb-2014 Alan Viverette <alanv@google.com> Merge "Make background projection a property of View"
4085aac5833e6d88c3f77b6c86cc7520a2550bfc 04-Feb-2014 Alan Viverette <alanv@google.com> Make background projection a property of View

BUG: 12764584
Change-Id: Id80afd6d26c814d3fd551f6690d4a88c441b0b9f
iew.java
8eea3ea5591e59f55cbb4f6b2b7e9363a285ced3 04-Feb-2014 Alan Viverette <alanv@google.com> Add APIs for obtaining themed Drawable from Theme, Context

BUG: 12611005
Change-Id: Ic0057be4e4c2d0c61ce02a019b3f7d0625e3a016
ointerIcon.java
iew.java
iewRootImpl.java
indow.java
40b9ef1e2d91615cba6fb5d9527f81090a705026 30-Jan-2014 Andy McFadden <fadden@android.com> Remove setFlags()

Remove setFlags(), which doesn't seem to be used, and make the flag
declarations private. The flags can be set with hide(), show(), and
setOpaque().

Change-Id: I2bdff0881d9397b0c4455f6663c2a1e8084df719
urfaceControl.java
fe0ea8c21fe6f6cbaa0594295ec371efca4af824 31-Jan-2014 Alan Viverette <alanv@google.com> Merge "Allow specification of View theme override as a theme attribute"
1d89563ff8f5afd77457ef58489a234f490b480c 31-Jan-2014 Chris Craik <ccraik@google.com> Merge "Add initial hidden outline APIs"
d0856259762eddd873a068c2e9cd3d4e45009a68 31-Jan-2014 George Mount <mount@google.com> Merge "Add PathInterpolator to interpolate along a Path."
6e5f045ddfd779ee5059765df6180b961ea88c2a 11-Oct-2013 George Mount <mount@google.com> Add PathInterpolator to interpolate along a Path.

Change-Id: I45b361ef8edd49b5e22d66ba9e25600065e0d5e7
nimation/AnimationUtils.java
nimation/PathInterpolator.java
a2fe7affd3d077ac163da90996cb2e5e0ca3b8d1 29-Jan-2014 Chris Craik <ccraik@google.com> Add initial hidden outline APIs

Background drawable outline usage and drawable outline calculation
still to come.

Change-Id: I8c7539f1638f86e1f8eb11f4fe49f705f61d58ba
isplayList.java
iew.java
acdbb9a9e1443b6690864446d76e4067f2bd7640 30-Jan-2014 Andy McFadden <fadden@android.com> Merge "Allow "opaque" flag to be updated"
314405bf891904d1bbeeaf0f9fc387c1a1aded9a 30-Jan-2014 Andy McFadden <fadden@android.com> Allow "opaque" flag to be updated

Added a setOpaque() call and a bunch of comments.

Bug 12387406

Change-Id: Ic066cba926223f22f9bc56a7013987001d9cc795
urfaceControl.java
0e7eb954f132d11116bcbafaea4e0e9e1c3c8592 30-Jan-2014 Chris Craik <ccraik@google.com> Fix build breakage

Change-Id: I65ab3cb691935db23b7a1f600e421fb5d8e850cd
iewGroup.java
6657a6c53930eb0ff8d03317eb10ea7ddb0c49b4 26-Jan-2014 Chris Craik <ccraik@google.com> Update reordering method names, and make 3d reordering API public

IsContainedVolume -> hasIsolatedZVolume conveys that this affects Z
ordering of views

ProjectToContainedBackground -> ProjectBackwards, since it ended up
using its own projection target, separate from the 3d volume bit

Change-Id: Ia2cde838cc4da134366fe6ff623290fbd65e50c3
isplayList.java
iew.java
iewGroup.java
c0877962b3dc49edb42aeda766593123c81613f1 22-Jan-2014 Svetoslav Ganov <svetoslavganov@google.com> Adding the print and accessibility pacelables to framework.aidl

1. There are a few parcelable classes related to printing and accessibility
which are public but not added in the framework.aidl list so third parties
cannot write aidl interfaces that pass these classes. As these classes
are public it is resonable for devepers to be able to pass them between
processes.

Change-Id: I85da1de5198902b74f19d23e3fe16b45b4a11051
ccessibility/AccessibilityRecord.aidl
583b7b16718b2787e64f1f26e476d349b96a909a 28-Jan-2014 Narayan Kamath <narayan@google.com> am 39a789bf: am 7ae1726d: am aa9ba887: am 6e09eb4c: Merge "AArch64: Make graphics classes 64-bit compatible"

* commit '39a789bf6efd5c3478a442e60e896cae371fd04c':
AArch64: Make graphics classes 64-bit compatible
a0398430fcf365fba6e42ad0bdca2fbf45ed6fe0 20-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Make graphics classes 64-bit compatible

Changes in this patch include

[x] Long is used to store native pointers as they can
be 64-bit.

[x] Some minor changes have been done to conform with
standard JNI practice (e.g. use of jint instead of int
in JNI function prototypes)

[x] AssetAtlasManager is not completely 64-bit compatible
yet. Specifically mAtlasMap member has to be converted
to hold native pointer using long. Added a TODO to
AssetAtlasManager.java to indicate the change required.

Change-Id: I940433f601c6db998c1a8ffff338f5361200d5ed
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Craig Barber <craig.barber@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
LES20Canvas.java
LES20DisplayList.java
LES20Layer.java
LES20RecordingCanvas.java
raphicBuffer.java
ardwareCanvas.java
ardwareRenderer.java
urface.java
urfaceControl.java
extureView.java
36bef0bf30d6bae48cf3837df351075ca4fce654 20-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Make graphics classes 64-bit compatible

This a merger of two commits submitted to AOSP by
the following authors:

ashok.bhat@arm.com, david.butcher@arm.coma
craig.barber@arm.com, kevin.petit@arm.com and
marcus.oakland@arm.com

Due to the very large number of internal conflicts, I
have chosen to cherry-pick this change instead
of letting it merge through AOSP because the merge
conflict resolution would be very hard to review.

Commit messages below:

================================================
AArch64: Make graphics classes 64-bit compatible

Changes in this patch include

[x] Long is used to store native pointers as they can
be 64-bit.

[x] Some minor changes have been done to conform with
standard JNI practice (e.g. use of jint instead of int
in JNI function prototypes)

[x] AssetAtlasManager is not completely 64-bit compatible
yet. Specifically mAtlasMap member has to be converted
to hold native pointer using long. Added a TODO to
AssetAtlasManager.java to indicate the change required.

Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Craig Barber <craig.barber@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>

==================================================================

AArch64: Use long for pointers in graphics/Camera

For storing pointers, long is used in
android/graphics/Camera class, as native
pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use of
jint instead of int in JNI function prototypes)

Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>

===================================================================

Change-Id: Id5793fa0ebc17ee8b1eecf4b3f327977fdccff71
isplayList.java
LES20Canvas.java
LES20Layer.java
LES20RecordingCanvas.java
LRenderer.java
raphicBuffer.java
ardwareCanvas.java
ardwareRenderer.java
urface.java
urfaceControl.java
extureView.java
hreadedRenderer.java
4f02bf4eef6af47f35c70c4dda5b7b9523d89ca0 04-Jan-2014 John Reck <jreck@google.com> Native-side proxy

Remove RemoteGLRenderer
Remove reflection-based control

Change-Id: If17c2bbb61c7141986d88c4763def77ed1074985
LRenderer.java
ardwareRenderer.java
emoteGLRenderer.java
hreadedRenderer.java
iewRootImpl.java
7023df08f14ec5dee76ac54c03e870f84e297636 27-Jan-2014 Narayan Kamath <narayan@google.com> Revert "AArch64: Make graphics classes 64-bit compatible"

This reverts commit 18b4cbeedef21c1fa666a110a157bab66edff976.

Change-Id: I0c52983a3ab1ace3ff743de546a43eca28e5cb0e
isplayList.java
LES20Canvas.java
LES20Layer.java
LES20RecordingCanvas.java
LRenderer.java
raphicBuffer.java
ardwareCanvas.java
ardwareRenderer.java
emoteGLRenderer.java
urface.java
urfaceControl.java
extureView.java
hreadedRenderer.java
18b4cbeedef21c1fa666a110a157bab66edff976 20-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Make graphics classes 64-bit compatible

This a merger of two commits submitted to AOSP by
the following authors:

ashok.bhat@arm.com, david.butcher@arm.coma
craig.barber@arm.com, kevin.petit@arm.com and
marcus.oakland@arm.com

Due to the very large number of internal conflicts, I
have chosen to cherry-pick this change instead
of letting it merge through AOSP because the merge
conflict resolution would be very hard to review.

Commit messages below:

================================================
AArch64: Make graphics classes 64-bit compatible

Changes in this patch include

[x] Long is used to store native pointers as they can
be 64-bit.

[x] Some minor changes have been done to conform with
standard JNI practice (e.g. use of jint instead of int
in JNI function prototypes)

[x] AssetAtlasManager is not completely 64-bit compatible
yet. Specifically mAtlasMap member has to be converted
to hold native pointer using long. Added a TODO to
AssetAtlasManager.java to indicate the change required.

Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Craig Barber <craig.barber@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>

==================================================================

AArch64: Use long for pointers in graphics/Camera

For storing pointers, long is used in
android/graphics/Camera class, as native
pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use of
jint instead of int in JNI function prototypes)

Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>

===================================================================

Change-Id: Ib3eab85ed97ea3e3c227617c20f8d213f17d4ba0
isplayList.java
LES20Canvas.java
LES20Layer.java
LES20RecordingCanvas.java
LRenderer.java
raphicBuffer.java
ardwareCanvas.java
ardwareRenderer.java
emoteGLRenderer.java
urface.java
urfaceControl.java
extureView.java
hreadedRenderer.java
ef259e4484deb69ada76970e26f2b2542b1fe4c1 25-Jan-2014 Alan Viverette <alanv@google.com> Allow specification of View theme override as a theme attribute

WE MUST GO DEEPER.

Change-Id: I492c3750e108d01d6f8d325ccc2bedb1ade5b91b
ayoutInflater.java
509cc13b705f8c488774e7097ab17471c3dacd2e 18-Jan-2014 Jeff Brown <jeffbrown@google.com> am e2c9cd58: Merge "Refactor display manager service to new pattern." into klp-modular-dev

* commit 'e2c9cd583f4f706b48270b8cbe84df627c69af24':
Refactor display manager service to new pattern.
4ccb823a9f62e57f9d221f83a97e82967e79a9e5 17-Jan-2014 Jeff Brown <jeffbrown@google.com> Refactor display manager service to new pattern.

Transform DisplayManagerService into a SystemService and start cleaning
up other local services that it uses from window manager and input manager.

Clean up service thread initialization.

Remove unnecessary static variables from ActivityManagerService.

It's starting to become clear that we really need a better way to manage
service dependencies. Boot phases don't quite cut it.

Change-Id: If319dbd7cbfbd4812fe55ece969e818d4b20755b
indowManagerInternal.java
c4d0696dd37957025bfef2facc4c053847d70be9 17-Jan-2014 Yohei Yukawa <yukawa@google.com> Merge "Make the range checking of BaseInputConnection#setSelection stricter"
ef0904106d09a5471f809feec4219dc22fc740fe 17-Jan-2014 Yohei Yukawa <yukawa@google.com> Make the range checking of BaseInputConnection#setSelection stricter

With this change, setSelection will not cause java.lang.IndexOutOfBoundsException
even if a negative index is specified.

Bug: 8841916
Change-Id: Ib62a6ba235f80b7495fefb2e5cc2d5357d804310
nputmethod/BaseInputConnection.java
5bd2c855af2cac7774776019e6c737962c7a8bd3 17-Jan-2014 Alan Viverette <alanv@google.com> Explicit documentation for View.getTag() return value when not set

Change-Id: I143d445b0c801ffabe04f0042e559594e52d07ed
iew.java
103d34d3bb6c7d570b00fda0970b89d807b2c0b8 16-Jan-2014 Narayan Kamath <narayan@google.com> am 23b7e0a3: am d8facb67: am d569e21d: am 48de490c: am 486544f7: Merge "AArch64: Use long for pointers in view/input classes"

* commit '23b7e0a32bee5234ef65fccfef1596659a08b630':
AArch64: Use long for pointers in view/input classes
a3340da7d4ef3872bd1191fcd4bf8b25d1179a25 16-Jan-2014 Narayan Kamath <narayan@google.com> am e18f0e2a: am 19bd2c28: am ab220dee: am 947d88a0: am 138d67c8: Merge "AArch64: Use long for pointers in MotionEvent class"

* commit 'e18f0e2a463374502c0236a0d54909d980bf1043':
AArch64: Use long for pointers in MotionEvent class
a98bf2017ec8d1ef6b60e09b873effb2e370cd25 16-Jan-2014 Narayan Kamath <narayan@google.com> am e413dae8: am 8e96d73a: am e488f2c1: am a0b25d41: am d85bba8e: Merge "AArch64: Use long for pointers in VelocityTracker class"

* commit 'e413dae8926f45e08e93dd9454f3b683514f3106':
AArch64: Use long for pointers in VelocityTracker class
d4513aea25346770427e19587a77f2e06c551ddd 16-Jan-2014 Narayan Kamath <narayan@google.com> am a5a0d384: am 425b08f1: am c1abb5e3: am 53321d99: am f19c50d6: Merge "AArch64: Use long for pointers in KeyCharacterMap class"

* commit 'a5a0d384fce9e9475c1414f69cb47bf6b5259a4d':
AArch64: Use long for pointers in KeyCharacterMap class
23b7e0a32bee5234ef65fccfef1596659a08b630 16-Jan-2014 Narayan Kamath <narayan@google.com> am d8facb67: am d569e21d: am 48de490c: am 486544f7: Merge "AArch64: Use long for pointers in view/input classes"

* commit 'd8facb6763638178bd12f1010466e426c0754f49':
AArch64: Use long for pointers in view/input classes
e18f0e2a463374502c0236a0d54909d980bf1043 16-Jan-2014 Narayan Kamath <narayan@google.com> am 19bd2c28: am ab220dee: am 947d88a0: am 138d67c8: Merge "AArch64: Use long for pointers in MotionEvent class"

* commit '19bd2c28f9c3e4db12cad93ed2a69c17c95e42fd':
AArch64: Use long for pointers in MotionEvent class
e413dae8926f45e08e93dd9454f3b683514f3106 16-Jan-2014 Narayan Kamath <narayan@google.com> am 8e96d73a: am e488f2c1: am a0b25d41: am d85bba8e: Merge "AArch64: Use long for pointers in VelocityTracker class"

* commit '8e96d73a755348b25ceb80f907eae15be2da0d75':
AArch64: Use long for pointers in VelocityTracker class
a5a0d384fce9e9475c1414f69cb47bf6b5259a4d 16-Jan-2014 Narayan Kamath <narayan@google.com> am 425b08f1: am c1abb5e3: am 53321d99: am f19c50d6: Merge "AArch64: Use long for pointers in KeyCharacterMap class"

* commit '425b08f14419a1e67a3d9d2c9b97ea61ecd4f5cb':
AArch64: Use long for pointers in KeyCharacterMap class
486544f763bd27eb92c95101e23f939c79c9890e 16-Jan-2014 Narayan Kamath <narayan@google.com> Merge "AArch64: Use long for pointers in view/input classes"
138d67c8476a846030be74ced1b1990d497402e0 16-Jan-2014 Narayan Kamath <narayan@google.com> Merge "AArch64: Use long for pointers in MotionEvent class"
d85bba8ebd24257cb52867b6a082350746e97ad2 16-Jan-2014 Narayan Kamath <narayan@google.com> Merge "AArch64: Use long for pointers in VelocityTracker class"
2114aef4eaa1c6539d4fe83bb130395dad7fbae7 15-Jan-2014 John Reck <jreck@google.com> Remove dead code

Change-Id: I9c96d3d21bd3faed91a5146f5a2b8916c634fdff
LES20Canvas.java
LRenderer.java
ardwareCanvas.java
emoteGLRenderer.java
a931d5218cfee89c7629ffa6cde324fa966449f9 08-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Use long for pointers in view/input classes

For storing pointers, long is used in view/input classes,
as native pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use
of jint instead of int in JNI function prototypes)

Change-Id: Iafda9f4653c023bcba95b873637d935d0b569f5d
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
nputChannel.java
nputEventReceiver.java
nputEventSender.java
nputQueue.java
58f09b352417c4ff7e01365727cbf8a09b9bed23 09-Jan-2014 Alan Viverette <alanv@google.com> Add DisplayList bit for projecting onto a contained volume

Does not handle reordering/translating the projected DisplayList.

Change-Id: I6f1ebb2b20b7436c86fe849b35d582fd9c8a8967
isplayList.java
2dfae9bea104c0594fd5641f9704f34b204abd87 08-Jan-2014 RoboErik <epastern@google.com> Merge "b/12068020 Make kb layouts only unique to vendor/product"
96804bc8fb3d6b2de11e3b9779c976e7b0e96ee8 08-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Use long for pointers in VelocityTracker class

For storing pointers, long is used in VelocityTracker class,
as native pointers can be 64-bit.

Change-Id: I8c454663a97745c7440bb6f99ef49d28e9026876
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
elocityTracker.java
99a1ef2b7f1eb7266e1c3782f649de0d8dbe23bf 08-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Use long for pointers in MotionEvent class

For storing pointers, long is used in MotionEvent class,
as native pointers can be 64-bit.

Change-Id: I88ebfef26070b7f49c14945cad37aa3db209ec90
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Craig Barber <craig.barber@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
otionEvent.java
0c3f9210166a861fe568ac15994a0d7a42f7e28a 08-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Use long for pointers in KeyCharacterMap class

For storing pointers, long is used in KeyCharacterMap class,
as native pointers can be 64-bit.

Change-Id: Idc1b39874202e96b9231d7801e6707003787659b
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
eyCharacterMap.java
fb290df3c9a6f37ec050163029e25844de2f8590 16-Dec-2013 RoboErik <epastern@google.com> b/12068020 Make kb layouts only unique to vendor/product

Instead of storing a kb layout per device descriptor (which is expected
to be unique), store it for each vendor/product. This way we can keep
a consistent layout between identical but physically different keyboards.

There are some corner cases this is expected to fail on, namely devices
that incorrectly have the same vendor/product id. Devices that don't
define a vendor/product id will continue to use the descriptor to store
layout files.

Change-Id: Id0890d13e1c859eaf993d4831b7b1acbaf5df80f
nputDevice.java
24927f2798fdeee3aa4fa13dee5acfa218e993e3 08-Jan-2014 Alan Viverette <alanv@google.com> Allow Views to specify a theme override

During inflation, any view with a theme attribute will wrap its context
with a theme override. Child views inflated during recursion will inherit
the wrapped context.

BUG: 12178430
Change-Id: Icba019d1c4f4f7e1a66d19dd402038defb42b7a6
ayoutInflater.java
ed20ebbde5cebc470f426416445b697a0312aac5 08-Jan-2014 John Reck <jreck@google.com> Merge "EGL migration to native"
23b797ab5151eb2474f3bdd679f2f07bfd723042 04-Jan-2014 John Reck <jreck@google.com> EGL migration to native

Move EGL state management to native side for RemoteGLRenderer

Change-Id: I12b0fed70246564d4caebf87374e8bbca655c572
emoteGLRenderer.java
58a8a678bd72da68e6a21852926084fefbb3e02a 07-Jan-2014 Alan Viverette <alanv@google.com> Merge "Revert "Allow Views to specify a theme override""
eb14ccf0202b3050830523865e147b2dcfa819ba 07-Jan-2014 Alan Viverette <alanv@google.com> Revert "Allow Views to specify a theme override"

Inheriting the parent view's Context breaks RemoteView inflation.

This reverts commit dd9233253b88d86473403d5b63c72e223b5e40bd.

Change-Id: I1c9a940a31169cd42b7356ad58548597a2efbb24
ayoutInflater.java
2e09e57e3de418671164e98d92e3154acf221109 07-Jan-2014 Narayan Kamath <narayan@google.com> am 0d8c3c46: am 5f83ff6f: am e7d7908c: am 02baba25: am 67032754: Merge "AArch64: Use long for pointers in DisplayEventReceiver"

* commit '0d8c3c469e4a5e74b702b58307c1e24fa15da3d8':
AArch64: Use long for pointers in DisplayEventReceiver
0d8c3c469e4a5e74b702b58307c1e24fa15da3d8 07-Jan-2014 Narayan Kamath <narayan@google.com> am 5f83ff6f: am e7d7908c: am 02baba25: am 67032754: Merge "AArch64: Use long for pointers in DisplayEventReceiver"

* commit '5f83ff6ffa82fb84df6feab4339054b302ac391e':
AArch64: Use long for pointers in DisplayEventReceiver
27285821b74ca9bc381d33f40028f06ff0f85e0c 18-Dec-2013 Ashok Bhat <ashok.bhat@arm.com> AArch64: Use long for pointers in DisplayEventReceiver

For storing pointers, long is used as
native pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use
of jint instead of int in JNI function prototypes)

Change-Id: I3c0855373c0e4bedc172adb82b103586de9219dc
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
isplayEventReceiver.java
dd9233253b88d86473403d5b63c72e223b5e40bd 04-Jan-2014 Alan Viverette <alanv@google.com> Allow Views to specify a theme override

During inflation, any view with a theme attribute will wrap its context
with a theme override. Views inflated using a parent will inherit the
wrapped context.

BUG: 12178430
Change-Id: I3448e5174e94c19960a1e21df5bd6127d0d33c07
ayoutInflater.java
9525f2a72e2786f1b53927878dd8234859ea5c39 02-Jan-2014 Mark Doliner <markdoliner@google.com> Miscellaneous small documentation fixes.

Most of these I noticed on my own. The change to docs/html/tools/testing/testing_ui.jd is mentioned in a bug report:
https://code.google.com/p/android/issues/detail?id=56324

Signed-off-by: Mark Doliner <markdoliner@google.com>
iew.java
d863a10b2870ca27f631b2ec69f3e13faed1d02a 19-Dec-2013 Chris Craik <ccraik@google.com> Add initial APIs for 3d view manipulation.

Change-Id: I6de00bc577d5b3a1fbc9ca3a3b3668fcfa32b867
isplayList.java
iew.java
iewGroup.java
iewPropertyAnimator.java
3c8a529b3c2a0bb1eceb3c1ec7afa58634ace044 20-Dec-2013 Chris Craik <ccraik@google.com> Merge "Move GLES20DisplayList functionality into DisplayList"
5438979e498750b6a28ada7974d4e9fe17fd8394 20-Dec-2013 Chris Craik <ccraik@google.com> Move GLES20DisplayList functionality into DisplayList

Removes unneeded indirection layer

Change-Id: I75d3e369eda2788cbc52a3575c4e1c521e842f59
isplayList.java
LES20Canvas.java
LES20DisplayList.java
LES20RecordingCanvas.java
LES20RenderLayer.java
ca7a2576289f371acc28e39825a2fe05a587b29b 20-Dec-2013 Alan Viverette <alanv@google.com> Merge "Add APIs and implementation for additional caption edge types"
49782e46c0eb85a25ae2abcf80880c48dbab5aea 20-Dec-2013 Amith Yamasani <yamasani@google.com> am 9158825f: Move some system services to separate directories

* commit '9158825f9c41869689d6b1786d7c7aa8bdd524ce':
Move some system services to separate directories
9158825f9c41869689d6b1786d7c7aa8bdd524ce 22-Nov-2013 Amith Yamasani <yamasani@google.com> Move some system services to separate directories

Refactored the directory structure so that services can be optionally
excluded. This is step 1. Will be followed by another change that makes
it possible to remove services from the build.

Change-Id: Ideacedfd34b5e213217ad3ff4ebb21c4a8e73f85
ccessibility/AccessibilityManager.java
ce32ea7345f0157a595b1dd4306a9a65f444d7c2 19-Dec-2013 Alan Viverette <alanv@google.com> Add APIs and implementation for additional caption edge types

Change-Id: I62d97a0b3e3b751d698a889eec80dc79fb908d7a
ccessibility/CaptioningManager.java
223622a50db319d634616311ff74267cf49679e7 17-Dec-2013 Alan Viverette <alanv@google.com> Add reveal drawable, APIs for forwarding Drawable focus and touch

Hotspot APIs are hidden pending finalization of how we handle IDs.

BUG: 11416827
Change-Id: Iecacb4b8e3690930d2d805ae65a50cf33482a218
iew.java
iewGroup.java
iewRootImpl.java
ba9b613437c34873fa95800a25fc51720638267c 16-Dec-2013 Chris Craik <ccraik@google.com> Create private properties on GLCanvas for experimentation with 3d

Change-Id: I17772f61efce727cb4c1111f4d97f58c741786b8
LES20Canvas.java
0a11eb10ff08ad7a683cfc7c458b6625b955df2c 16-Dec-2013 John Reck <jreck@google.com> Merge "Add drawGlFunctor support to RenderThread"
3dfe19f72cbd95b201e89376ae1810c5c9229b00 13-Dec-2013 John Reck <jreck@google.com> Add drawGlFunctor support to RenderThread

Add gl functor to the prototype support to allow
webview team to begin playing with RT

Also create RemoteGLRenderer to avoid needing to make
breaking changes to GLRenderer. Currently the differences
are mainly around mFunctorsRunnable and how it queues itself up

Change-Id: I1ca39056189b68cd7b8dded4dd5889d331f6660a
LRenderer.java
ardwareRenderer.java
emoteGLRenderer.java
hreadedRenderer.java
6a0db5990187a71427029fb0fd64394e849aa057 14-Dec-2013 Kenny Root <kroot@google.com> resolved conflicts for merge of e0b14ea7 to master

Change-Id: Ie018d3e2eba1eb2d655c153880e1951b68c2bd51
e0b14ea70b58cd04696fb37ffcf733eefc2dd717 13-Dec-2013 Kenny Root <kroot@google.com> am 31b9ec01: am 62d509d2: am 37c69fdd: Merge "Use java.util.Objects instead on internal API"

* commit '31b9ec01ff6087773cb35af6824a6422a0181afb':
Use java.util.Objects instead on internal API
18809c063b89d9b235401d080b952885a4ef9628 13-Dec-2013 Chris Craik <ccraik@google.com> Merge "3d view system!"
e6585b32ea586743258a5457e2184ffc087f2d2f 13-Dec-2013 Kenny Root <kroot@google.com> Use java.util.Objects instead on internal API

Not needed since java.util.Objects implements all the needed
functionality.

Change-Id: Icd31d49a9801d1705427f028e9ac927d58e7d34c
isplayAdjustments.java
f8bc964289df5ea53672df401c6d51dd47c02e53 26-Nov-2013 Svetoslav <svetoslavganov@google.com> Fixing some accessibility bugs.

1. Views not important for accessibility should not send events.

2. The base View implementation should not add it self to the
list of children for accessibility.

3. Null pointer exception in AccessibilityNodeInfoCache.

Change-Id: Ie5b373362269200ead13ffe632679bd42ee40309
iew.java
ccessibility/AccessibilityNodeInfoCache.java
f57776b2d195f0937906eb88b777bb55ccc36967 26-Oct-2013 Chris Craik <ccraik@google.com> 3d view system!

True 3d transformations are now supported by DisplayLists and the
renderer, initially with the translationZ property on view.

Renderer operations used directly by DisplayList (formerly,
clip/save/restore/saveLayer) are now more simply managed by allocating
them temporarily on the handler's allocator, which exists for a single
frame. This is much simpler than continuing to expand the pool of
pre-allocated DisplayListOps now that more operations are called
directly by DisplayList, especially with z ordered drawing.

Still TODO:
-APIs for camera positioning, shadows
-Make Z apis public, and expose through XML
-Make invalidation / input 3d aware

Change-Id: I95fe6fa03f9b6ddd34a7e0c6ec8dd9fe47c6c6eb
isplayList.java
LES20DisplayList.java
iew.java
iewPropertyAnimator.java
774e89f14df5e2617a7c40492218cabdf11a7296 12-Dec-2013 Alan Viverette <alanv@google.com> Merge "Verify drawables added to ViewOverlay so they can be scheduled"
55d70620d9fda8afafb2fdec59757a710eec0e89 12-Dec-2013 Alan Viverette <alanv@google.com> Add caption window color attribute

The WebVTT rendering implementation interprets window color as region
color, since there is no window for non-region captions.

BUG: 12020757
Change-Id: Ie891e1343d718783fc32c712860f886de22558ec
ccessibility/CaptioningManager.java
39de9bfa7f922f1994c4a6dd4494c31042cf6bd3 11-Dec-2013 Alan Viverette <alanv@google.com> Verify drawables added to ViewOverlay so they can be scheduled

Change-Id: I73d0633966f84876e2093c874acd6813efdbc370
iewOverlay.java
7d2edfc073b4a87f9584e12b0c6e80cffea730f5 11-Dec-2013 John Reck <jreck@google.com> Merge "Unbreak display list debug dumping"
630491973269da1b260e69d6a3f9490b97705037 11-Dec-2013 John Reck <jreck@google.com> Unbreak display list debug dumping

Change-Id: I1c6a79f047b29fa60907f6e128cb843a45b88bff
isplayList.java
LES20Canvas.java
LES20DisplayList.java
ardwareCanvas.java
iewRootImpl.java
4a8e5a05bbb344c96bca12bb8d4a768cabbdbce5 10-Dec-2013 Michael Wright <michaelwr@google.com> Merge "Generate locale-aware gamepad fallbacks for webview"
71c8fa17762d517c4c5daa11c7471882bf26a978 10-Dec-2013 John Reck <jreck@google.com> Merge "RenderThread work"
cec24ae16e9a0a7c3075f1a8d9149bb7fb3813fc 05-Nov-2013 John Reck <jreck@google.com> RenderThread work

Hacky prototype needs a private API to enable

Change-Id: I21e0ddf3cdbd38a4036354b5d6012449e1a34849
LRenderer.java
ardwareRenderer.java
hreadedRenderer.java
iew.java
iewRootImpl.java
e63f6f7c8d0094bdea3fe031a178490b273162cd 15-Nov-2013 Mike Lockwood <lockwood@google.com> DO NOT MERGE: Remove obsolete "headless" support

Change-Id: I829fe48e6ebcb819e260646bb19ac6ddfcf07f83
urfaceControl.java
1eb87f2c57718379d43893852668abd7d9e1fdac 09-Dec-2013 Alan Viverette <alanv@google.com> Merge "Unhide accessibility focus and importance getter APIs"
a93ff445c0e3dec426115c90a24a4034e19b92e8 05-Dec-2013 Adam Powell <adamp@google.com> Merge "Add support for cross-activity scenes and transitions"
3a621bbdc49151de80beb85f57f4aad01d08a5e3 05-Dec-2013 Adam Powell <adamp@google.com> Merge "Add a config override for ViewConfiguration#hasPermanentMenuKey"
cfbe9be5b3b701d95fb24fa0f7c8d9be43eec776 06-Nov-2013 Adam Powell <adamp@google.com> Add support for cross-activity scenes and transitions

* Add theme attributes for specifying a top-level TransitionManager
for an activity window.

* Add window feature for automatic content transitions. This
automatically assigns/creates a Scene for setContentView calls.

* Add named transitions. This allows apps to define APIs for
handshake-agreements about which exit/entrance transitions to play.

* Add new transition type for ActivityOptions. This lets the system
use ActivityOptions to communicate transition specifics and
arguments to the called activity.

* Have ActivityManager pass appropriate ActivityOptions through to the
called Activity. Have the called activity call back into the caller
to let it know which transition of a possible requested set was
chosen.

Still to do:

* Define and pass arguments for transitions. This will require
defining a Parcelable version of TransitionValues and deciding how
much leeway apps should have for these things.

* Determine how to appropriately filter the ActivityOptions bundle so
that only appropriate data reaches the target.

* Determine if generalizing the auto-Scenes functionality to
ViewGroups is appropriate.

Change-Id: I10684b926129ab2fbc1adec9ef31767237acae79
indow.java
cc84ff4f31f20dcb4cd76db749852c47d18c4a2e 04-Dec-2013 Adam Powell <adamp@google.com> Add a config override for ViewConfiguration#hasPermanentMenuKey

Allow device overlays to override the behavior of the
hasPermanentMenuKey method at build time. This is useful for devices
that do not behave as the usual autodetection mechanism expects.

Device overlays should set config_overrideHasPermanentMenuKey to 1 if
the device DOES have a permanent menu key or 2 if the device DOES NOT
have a permanent menu key.

Change-Id: I467b68528cf681b08adcaebc2402d8bdd84f6b5c
iewConfiguration.java
414c1f0e861dead042689827aa1fbbd205f36d41 04-Dec-2013 John Spurlock <jspurlock@google.com> Volume panel should not clear system ui flags.

Remove private WM flag (used only by the volume panel) to force
the clearable system UI flags clear.

Instead, always lay out the volume panel as if the bars are visible,
as we do for system dialogs - and don't clear the flags.

Reverts part of I25f29af5b6518aba695b64a75977ae240b742118

Bug:11986621
Change-Id: I842729d729d2a6eb2a687d0b930ddb160c6a1b57
olumePanel.java
indowManager.java
916b649d06ed34c16b2ee9047f086dff184c03ee 04-Dec-2013 Michael Wright <michaelwr@google.com> Generate locale-aware gamepad fallbacks for webview

Since WebView's input handling is asynchronous its KeyEvents get
re-injected to ViewRootImpl via dispatchUnhandledKey. Make sure these
events generate the new synthetic, locale-aware keys before
using the kcm fallbacks.

Bug: 11193726
Change-Id: I2605f15130ba4bb4ad23c7ad1f3e5edfbc4be99d
iewRootImpl.java
06f37728b92450035a256504fe4e289d058861ef 03-Dec-2013 Alan Viverette <alanv@google.com> Merge "Generalize mapping between local and global View coordinates"
4ecee5c2a6a350860b19d2bc7fab740afaa02621 28-Nov-2013 Alan Viverette <alanv@google.com> Unhide accessibility focus and importance getter APIs

BUG: 11421928
Change-Id: Ica5cf80fc7e4c1cb0900d4d0d2e7b0d02ff13c87
iew.java
6090995951c6e2e4dcf38102f01793f8a94166e1 19-Nov-2013 John Spurlock <jspurlock@google.com> Remove unused imports from frameworks/base.

Change-Id: Ia1f99bd2c1105b0b0f70aa614f1f4a67b2840906
ccessibilityInteractionController.java
ccessibilityIterators.java
ontextThemeWrapper.java
isplayInfo.java
nputQueue.java
eyEvent.java
urfaceControl.java
iewGroup.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityNodeInfoCache.java
nimation/BounceInterpolator.java
nputmethod/ExtractedTextRequest.java
nputmethod/InputBinding.java
180979f76b0c99cd7053a44692f6408721b74bce 15-Nov-2013 John Spurlock <jspurlock@google.com> Fix logic problems in AnimationDrawable and View.

1. View now checks both queues when unscheduling runnables,
fixing the case where work was scheduled pre-attach, and unscheduled
post-attach.

2. AnimationDrawable avoids posting duplicate runnables when rescheduling
itself.

3. Decouple is-animation-running state from current frame pointer in
AnimationDrawable. Some calls init to the first frame, but do not
kick off the animation.

4. Remove workaround in SystemUI's AnimatedImageView (status bar icon)
now that the underlying framework issues are fixed.

Bug:11694594
Change-Id: I77ca6bd80262f7edcf980b2d7efc2592f8051f29
iew.java
cac68c3f641447dfdad98f3bb6e77e133a39c1c0 16-Nov-2013 Alan Viverette <alanv@google.com> Merge "Deprecate Activity.setTitleColor()"
2525d9c8437c34440e4df0583f333a06a5c4fc10 15-Nov-2013 Alan Viverette <alanv@google.com> Deprecate Activity.setTitleColor()

BUG: 11712103
Change-Id: Id34ffb59d3f848c591a98880c6cdd9058e5a38dc
indow.java
ed8902d3b5452860d87aaa0ed7fba8abb73fc983 15-Nov-2013 Mike Lockwood <lockwood@google.com> Remove obsolete "headless" support

Change-Id: I18e7a4c5166163372ec0a8abbef1063668a0f5b6
urfaceControl.java
a51b01c8c11b772b6c76b605b4e34b3f30c9339c 15-Nov-2013 Mindy Pereira <mindyp@google.com> am bb8e75e6: am cce2e194: am 5823352c: Cancel double tap mode on action_up

* commit 'bb8e75e6c451a71bc7d0301f376d61781cc08393':
Cancel double tap mode on action_up
cce2e1944c4ac9411fa25534eb9b51d6f044dfb4 15-Nov-2013 Mindy Pereira <mindyp@google.com> am 5823352c: Cancel double tap mode on action_up

* commit '5823352c6c5bfa3824afacd023b01af537b5dfa0':
Cancel double tap mode on action_up
5823352c6c5bfa3824afacd023b01af537b5dfa0 15-Nov-2013 Mindy Pereira <mindyp@google.com> Cancel double tap mode on action_up

fixes b/11592408 Dragging immediately after double touch turns gesture into double touch drag

Change-Id: I3e7926a4f6f9ab4951f380bd004499c78b3bda69
caleGestureDetector.java
fed3f728b7fea15c73d4fda551bd0433dd4f85eb 14-Nov-2013 Alan Viverette <alanv@google.com> Generalize mapping between local and global View coordinates

Change-Id: Ib7f5d51debe2e9773d9ef2fa60a33379b229371a
iew.java
iewRootImpl.java
4335047ea409506bb5a0ec773946f9b645462ce0 14-Nov-2013 Satoshi Kataoka <satok@google.com> am b97e102c: am 1b570b57: am 5fd5aa3d: Fix compatibility issue on InputMethodSubtype

* commit 'b97e102c4b9041ea8c5bb753743f2e1d7d3cf06a':
Fix compatibility issue on InputMethodSubtype
1b570b571a63311f7f7d5b7cc5e17b3103fa8af9 14-Nov-2013 Satoshi Kataoka <satok@google.com> am 5fd5aa3d: Fix compatibility issue on InputMethodSubtype

* commit '5fd5aa3d066fc12c92b5b6541d85ac243556223f':
Fix compatibility issue on InputMethodSubtype
c3c0c18d5a3c38c057948ec592ae42d46ab16d90 14-Nov-2013 Adam Powell <adamp@google.com> am 73a4aeb9: am 75ae8983: am 48d2bcf2: Reset padding flags when set programmatically or implicitly from background

* commit '73a4aeb9ffa15a2c08edf3ba69157c08821930ee':
Reset padding flags when set programmatically or implicitly from background
5fd5aa3d066fc12c92b5b6541d85ac243556223f 13-Nov-2013 Satoshi Kataoka <satok@google.com> Fix compatibility issue on InputMethodSubtype

Bug: 11032428
Change-Id: If722bbbfb69d00e1830007582d46a33319203eea
nputmethod/InputMethodSubtype.java
75ae89837615fa9cebd6cbb051213c025c48bcf6 14-Nov-2013 Adam Powell <adamp@google.com> am 48d2bcf2: Reset padding flags when set programmatically or implicitly from background

* commit '48d2bcf2ce2305356c5a4f0dfbb928dc5a4c8331':
Reset padding flags when set programmatically or implicitly from background
48d2bcf2ce2305356c5a4f0dfbb928dc5a4c8331 14-Nov-2013 Adam Powell <adamp@google.com> Reset padding flags when set programmatically or implicitly from background

Bug 11673480

Change-Id: I4f33c7ae46e937302e625bf1f3260adb25843645
iew.java
e1ce53209a0a2f2d9b6e527eb5ace1ab2db648e1 13-Nov-2013 Jean Chalard <jchalard@google.com> am 9ea18d49: am d952ac4c: am 218ecd43: Fix the docs build

* commit '9ea18d495c4c3d47d279f3f63cb4a24641544f89':
Fix the docs build
d952ac4c171780da78a157de73702d60d4737916 13-Nov-2013 Jean Chalard <jchalard@google.com> am 218ecd43: Fix the docs build

* commit '218ecd43946001f07b60757db130ef5585d474d3':
Fix the docs build
218ecd43946001f07b60757db130ef5585d474d3 13-Nov-2013 Jean Chalard <jchalard@google.com> Fix the docs build

Change-Id: I05f1f39aaa9d72201a7fd06377799246039cd505
nputmethod/EditorInfo.java
cfafb5059dc1532ccc764b38d5298022dac367b4 13-Nov-2013 Jean Chalard <jchalard@google.com> am 45637283: am 383ef79d: am 7d57b7a3: Merge "Improve documentation for InputType and EditorInfo." into klp-dev

* commit '4563728371520de38445d5758edd3da7538a1934':
Improve documentation for InputType and EditorInfo.
383ef79d14a64b335d94353e87e824ea2f37ee65 13-Nov-2013 Jean Chalard <jchalard@google.com> am 7d57b7a3: Merge "Improve documentation for InputType and EditorInfo." into klp-dev

* commit '7d57b7a35bd64d271b666f16aa1e85a4c2b99ca7':
Improve documentation for InputType and EditorInfo.
7d57b7a35bd64d271b666f16aa1e85a4c2b99ca7 13-Nov-2013 Jean Chalard <jchalard@google.com> Merge "Improve documentation for InputType and EditorInfo." into klp-dev
b12eb71c4fd82ac27fb3fe9a86cf9d92e0e511f2 13-Nov-2013 Craig Mautner <cmautner@google.com> Merge commit 'bf581034' into manualmerge

Conflicts:
tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java

Change-Id: I9fd35ea9166ec73ce1f9f6154aa4ec87e79e20cb
679ba4e86e4fecb6dbfe48d6c49205c32f995a1c 13-Nov-2013 Craig Mautner <cmautner@google.com> am 6cd206b2: Merge "Relayout windows that handle their own config change." into klp-dev

* commit '6cd206b2aa0039c215fc0a4cc487471c4b3f1496':
Relayout windows that handle their own config change.
6cd206b2aa0039c215fc0a4cc487471c4b3f1496 13-Nov-2013 Craig Mautner <cmautner@google.com> Merge "Relayout windows that handle their own config change." into klp-dev
5d9f547720e07a2715d34320a9e11004654cede6 12-Nov-2013 Craig Mautner <cmautner@google.com> Relayout windows that handle their own config change.

If a window claims to handle its own configuration change then we
won't destroy and recreate its window on a configuration change.
Normally that recreation triggers the first layout following
orientation change because mHaveFrame is false. Windows that handle
their own configuration changes never got a relayout pass following a
change in orientation.

This change passes the configuration changes that an application
handles into the AppWindowToken. If the app says it handles
orientation or screen size changes then a relayout will occur when the
configuration has changed.

Fixes bug 11647107.

Change-Id: Ie8d49fd050442ebbdcf0b805087894e3a2fc4be9
WindowManager.aidl
43983c7bd9796a2d547c3c3faa0af65c3870f1c1 12-Nov-2013 Fabrice Di Meglio <fdimeglio@google.com> am d303549b: am db976ea0: am 3f183a23: Merge "Fix bug #11586041 Regression: text truncation in Clock" into klp-dev

* commit 'd303549b5175d3e589ca656c5e01a88b55bf373a':
Fix bug #11586041 Regression: text truncation in Clock
db976ea0fc4f21b94666f0c91b7369c45ed1dd80 12-Nov-2013 Fabrice Di Meglio <fdimeglio@google.com> am 3f183a23: Merge "Fix bug #11586041 Regression: text truncation in Clock" into klp-dev

* commit '3f183a234bef643080d4f9dce44bcaa68e5d4694':
Fix bug #11586041 Regression: text truncation in Clock
c1a11f17a2de18911317d235ff75fa17e098a962 11-Nov-2013 Jean Chalard <jchalard@google.com> Improve documentation for InputType and EditorInfo.

Bug: 11245912
Change-Id: Ie92ba20079461f7f0e30d969ba3692fec3a3b97f
nputmethod/EditorInfo.java
nputmethod/InputConnection.java
82d37b40c55722e87428a146800e21e7412a4f6b 08-Nov-2013 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #11586041 Regression: text truncation in Clock

Background padding should be used only and only if
- no padding is already defined into a layout file
- an explicit call to setBackground() / setBackgroundDrawable() has been done

Change-Id: I0a732c61b898e006ee86377bcbe7691740d68111
iew.java
e77a040f3adcdbfc8fea265126c2d27f73c01243 11-Nov-2013 John Reck <jreck@google.com> Merge "More refactoring"
3083579424785e55ca8f82856a6553ee983c3ffb 07-Nov-2013 John Reck <jreck@google.com> More refactoring

Merge GlRenderer and Gl20Renderer
Move GLRenderer to its own file
Move native methods from HardwareRenderer to GLRenderer

Change-Id: Ib4680b03dd98101b2a428062cc94774ff73baa75
isplayList.java
LRenderer.java
ardwareRenderer.java
iew.java
iewRootImpl.java
7da5bbedc75d7143d5b2cf36c4876f7b09a88807 08-Nov-2013 Jeff Brown <jeffbrown@google.com> am c2b652fd: am 5182ea4b: am d40a4d74: Merge "Add media router service and integrate with remote displays." into klp-dev

* commit 'c2b652fd4d386b79dc99af249b6ad3844e53fdf1':
Add media router service and integrate with remote displays.
5182ea4bb20ec8fbe9562d0eaae8135d433ea0b6 08-Nov-2013 Jeff Brown <jeffbrown@google.com> am d40a4d74: Merge "Add media router service and integrate with remote displays." into klp-dev

* commit 'd40a4d74c623175c96a2e9d865a99826e56d1132':
Add media router service and integrate with remote displays.
d40a4d74c623175c96a2e9d865a99826e56d1132 08-Nov-2013 Jeff Brown <jeffbrown@google.com> Merge "Add media router service and integrate with remote displays." into klp-dev
fe2737282fe3eac6b7e7b3863f82f6a6cc191af8 08-Nov-2013 Alan Viverette <alanv@google.com> Merge "Add methods for removing children and actions from A11y nodes"
69b07161bebdb2c726e3a826c2268866f1a94517 07-Nov-2013 Jeff Brown <jeffbrown@google.com> Add media router service and integrate with remote displays.

This change adds a new media router service whose purpose is to track
global state information associated with media routes. This service
publishes routes to the media router instance in application processes
and handles requested state changes such as selecting or unselecting
global routes. The service also binds to remote display provider
services which can offer new remote display routes to the system.

Includes a test application for manually verifying certain aspects
of the operation of the media router service.

The remote display provider interface is essentially a stripped down
media route provider interface as defined in the support library
media router implementation. For now, it is designed to be used only
by first parties to publish remote display routes to the system so
it is not exposed as public API in the SDK. In the future, the remote
display provider interface will most likely be deprecated and replaced
with a more featureful media route provider interface for third
party integration, similar to what is in the support library today.

Further patch sets integrate these new capabilities into the System UI
and Settings for connecting remote displays.

Bug: 11257292
Change-Id: I31109f23f17b474d17534d0f5f4503e388b081c2
isplay.java
badb59cd5d2a2905494964889f002a277211000a 07-Nov-2013 Newton Allen <newt@google.com> am 47feee53: Merge "Fix some documentation typos." into klp-docs

* commit '47feee535f9e4e77165b93b6b9f10379e7aa4bbd':
Fix some documentation typos.
6e3cc2acaee0c300eb978f10fefc29529b137dd3 07-Nov-2013 John Reck <jreck@google.com> Merge "Cleanups"
f0aed09ed8153043e40b3ac99788d47ba0831306 07-Nov-2013 Alan Viverette <alanv@google.com> Add methods for removing children and actions from A11y nodes

BUG: 11421730
Change-Id: Ide396e6a0fec871395a9cadf8880c16d0de08294
ccessibilityInteractionController.java
iewGroup.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityNodeInfoCache.java
339f901ba65d6b8478b6d7680cfb2f5421e42d9b 06-Nov-2013 John Reck <jreck@google.com> Cleanups

Simplify DisplayList creation
Remove unnecessary debug code

Change-Id: I310c9196485c6bf65a6793669bd2dc2b9a8a0a15
isplayList.java
ardwareRenderer.java
iew.java
d033e67afe04ba2c3360df7d8f2a7b3e3e85ab73 06-Nov-2013 Adam Powell <adamp@google.com> Merge "Make Scenes and Transitions first-class in PhoneWindow/Themes"
18e905f42d017c4721d33bd25d7d39ef8d64b5d5 24-Oct-2013 Adam Powell <adamp@google.com> Make Scenes and Transitions first-class in PhoneWindow/Themes

Add a window feature for content transitions. This implicitly creates
a Scene for each setContentView operation and runs the appropriate
transition. Applications can specify a TransitionManager XML in their
theme that will apply the appropriate transitions when these implicit
scene changes occur. Apps can specify a "to" with no "from" in a
transition to request an entrance transition for the given
content. This lays the groundwork for further full content
change/activity to activity transitions.

Change-Id: Ic815d9e0b9ce958152d70bf6ee01be075aa9fe88
indow.java
79d81e68aa61fe7b00cdcba433f9f58f255cb368 05-Nov-2013 John Reck <jreck@google.com> Remove dead code

Change-Id: I242eacf68067ffe353802f07d6bfe5bb152fe9d0
iew.java
iewRootImpl.java
93c9093a32876f97a3c6c1a70538e650f3d02ec1 05-Nov-2013 Fabrice Di Meglio <fdimeglio@google.com> am 641bac8e: am 073041c3: am f48bcd5b: Merge "Fix bug #11256076 Spinner text is too close from the opening triangle in RTL Locales" into klp-dev

* commit '641bac8e21673a2d526b9c0ccf28d5fd08bd6994':
Fix bug #11256076 Spinner text is too close from the opening triangle in RTL Locales
49d68621837a7895479a819526553acb55b7ab7c 05-Nov-2013 Fabrice Di Meglio <fdimeglio@google.com> am 346d001b: am 0804ff1f: am cad157b3: Merge "Fix bug #11252410 Recents items stuck behind hammerhead navigation panel in landscape" into klp-dev

* commit '346d001b6fae9c5abb0de8d58b3c6d778d3508dc':
Fix bug #11252410 Recents items stuck behind hammerhead navigation panel in landscape
641bac8e21673a2d526b9c0ccf28d5fd08bd6994 05-Nov-2013 Fabrice Di Meglio <fdimeglio@google.com> am 073041c3: am f48bcd5b: Merge "Fix bug #11256076 Spinner text is too close from the opening triangle in RTL Locales" into klp-dev

* commit '073041c3708b5856a027d32c93c6945e2266336e':
Fix bug #11256076 Spinner text is too close from the opening triangle in RTL Locales
346d001b6fae9c5abb0de8d58b3c6d778d3508dc 05-Nov-2013 Fabrice Di Meglio <fdimeglio@google.com> am 0804ff1f: am cad157b3: Merge "Fix bug #11252410 Recents items stuck behind hammerhead navigation panel in landscape" into klp-dev

* commit '0804ff1f5a27239c7bc5b02581585f4a61e72aa6':
Fix bug #11252410 Recents items stuck behind hammerhead navigation panel in landscape
04b7821496a5aac43a1f023e7cd6c7f1a8925099 05-Nov-2013 Newton Allen <newt@google.com> am 47feee53: Merge "Fix some documentation typos." into klp-docs

* commit '47feee535f9e4e77165b93b6b9f10379e7aa4bbd':
Fix some documentation typos.
f48bcd5b68613b0a4ff0162091047fb9465b5290 05-Nov-2013 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #11256076 Spinner text is too close from the opening triangle in RTL Locales" into klp-dev
cad157b370524782183de688bf97c9078c1c08da 05-Nov-2013 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #11252410 Recents items stuck behind hammerhead navigation panel in landscape" into klp-dev
efdb985f2eabde8cf9dab3f51254865d59d305f7 01-Nov-2013 Michael Wright <michaelwr@google.com> am 9730fbc0: am cd250cc8: am 17d28ca3: Check view and focus invariants after calling into app

* commit '9730fbc0ea71ee0c41c94cf2772cc9884455c4e1':
Check view and focus invariants after calling into app
17d28ca3d76e943e30bdaafb98596cf35bb45087 01-Nov-2013 Michael Wright <michaelwr@google.com> Check view and focus invariants after calling into app

When we dispatch input events into the actual application, make sure
the input invariants we rely on haven't changed. If they have, we
drop the event and log why.

Bug: 11399505

Change-Id: Id772e41ca41dc332bb02725ab486e3b10a73c220
iewRootImpl.java
ff236f5fc1a088b1210d37a67b0e88b06c0fbdb2 13-Aug-2013 Newton Allen <newt@google.com> Fix some documentation typos.

Change-Id: I0360d468d54d970c87f313e24e50965245206f28
(cherry picked from commit c502744f2ddcc80a34f5197b5d2c0d701c7d6e71)
ravity.java
iew.java
52e3393afd1f6b6351357d6a45df7097ba3579f8 01-Nov-2013 Newton Allen <newt@google.com> Merge "Fix some documentation typos."
c502744f2ddcc80a34f5197b5d2c0d701c7d6e71 13-Aug-2013 Newton Allen <newt@google.com> Fix some documentation typos.

Change-Id: I0360d468d54d970c87f313e24e50965245206f28
ravity.java
iew.java
3ec7e54c8a3afb751cbd4b17428a5b3a9aa1f621 29-Oct-2013 John Spurlock <jspurlock@google.com> am 646f19c9: am de50a5e7: am 927d854f: Merge "Optimize sysui ui queue during keyguard unlock." into klp-dev

* commit '646f19c929ae85ab703533c36962292fa6c990ca':
Optimize sysui ui queue during keyguard unlock.
927d854ff4dc66edd22c109400233eb2d76dfce6 29-Oct-2013 John Spurlock <jspurlock@google.com> Merge "Optimize sysui ui queue during keyguard unlock." into klp-dev
0160bcbe531eebe882999f041348ce0182fc5bab 29-Oct-2013 Michael Wright <michaelwr@google.com> am 0116f08b: am 961cc671: am 3f836741: Merge "Speculatively schedule input consumption" into klp-dev

* commit '0116f08b387d237c334b10bb0266426e1ab3c793':
Speculatively schedule input consumption
e7c285725d1b6af76e7655a79a3e71f3809fdd9f 29-Oct-2013 John Spurlock <jspurlock@google.com> Optimize sysui ui queue during keyguard unlock.

Target the two biggest offenders:
- Coalesce keyguard setHidden(false) calls during unlock.
- Make sysui->WM call async.

Found during investigation into b/11221659.

Bug: 11221659
Change-Id: Icab48376bc356a933e0f9940bc2f924e2e77ab22
WindowManager.aidl
bd88de46a126c1e6dfc84ba6c1f942f51fe57582 28-Oct-2013 Taeho Kim <jyte82@gmail.com> Fixed typo errors in documentation

Fixed some type errors in developer documentation.

Change-Id: I92629a4350508fb96fda1842741c5ced64171464
Signed-off-by: Taeho Kim <jyte82@gmail.com>
iew.java
62ce65d6edbc2c34c63b0e2f2fef9cb08e28c783 25-Oct-2013 Michael Wright <michaelwr@google.com> Speculatively schedule input consumption

With the new tuned vsync offset, vsyncs are likely to occur shortly
after the input is received, meaning we will empty the input queue,
and thus won't schedule input consumption until more input is
received. If an application then speculatively posts draw commands to
the main looper faster than 60 hz, it will eventually end up blocking
in eglSwapBuffers. Since we're blocking in eglSwapBuffers, we won't
even schedule consumption until after the current frame (8-16ms), and
it's entirely likely we won't actually get around to consuming input
until after the next frame (another 16 ms of latency). This means we
can often go 16-32ms without processing any input events, causing
very noticeable amounts of jank.

Rather than waiting for the next input event to schedule input
consumption, speculatively schedule it every frame as long as we've
consumed some motion batch during this frame.

Bug: 11398045
Change-Id: I25e46308e00e9f9de00a1d8906f6b0e0f2e845b4
nputEventReceiver.java
iewRootImpl.java
b5c2092c4c120e5cef128d9222983d00ba5e46b7 23-Oct-2013 Satoshi Kataoka <satok@google.com> Merge "Notify commitText event to InputMethodManagerService"
d7443c83ceae0bdd20d68bf84648cf3b40115d85 15-Oct-2013 Satoshi Kataoka <satok@google.com> Notify commitText event to InputMethodManagerService

for the intelligent subtype switching

Bug: 7043015
Change-Id: I11ed9a767588f8080753cd9bce011dac7db579ad
nputmethod/BaseInputConnection.java
nputmethod/InputMethodManager.java
942d0d6a8cb64381575882323e676d44320fe3d2 21-Oct-2013 Scott Main <smain@google.com> am 48f2a25a: am e26c353c: am bab3348f: Merge "add xml attributes to IME javadoc" into klp-dev

* commit '48f2a25a7ffd2c89ca54e7b1873545a4e3b476f4':
add xml attributes to IME javadoc
5df0631003392c416c9617458dc2814f9eaec317 19-Oct-2013 Scott Main <smain@google.com> add xml attributes to IME javadoc

Change-Id: I7a3505753188ba23777391a286d8595ed64777cb
nputmethod/InputMethodInfo.java
nputmethod/InputMethodSubtype.java
200223cd0e0d91e6575ee29c92a45aeb288c19ce 18-Oct-2013 Scott Main <smain@google.com> am 24512c85: am 6f756e56: am 96844ed8: fix javadoc link

* commit '24512c8586f8a3e0d3c9bff07639f968fe1b3e25':
fix javadoc link
96844ed886cc887a34bfc2fd04fc569d9c098623 18-Oct-2013 Scott Main <smain@google.com> fix javadoc link

Change-Id: I509fb12393ee0b8bf78ff4110fc18420739f7c58
ccessibility/AccessibilityNodeInfo.java
600d7dd1c6d9d1ff81b71085eff2a6be50d6f36c 16-Oct-2013 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #11256076 Spinner text is too close from the opening triangle in RTL Locales

Background Drawable padding was not taken into account in RTL Locales

- make sure the Drawables are resolved before resolving padding
- during padding resolution take care about background padding

Change-Id: Ib0c722adf5341ab4fa2182a0d0ac2ca639e85cfc
iew.java
b1eb620219de034b28a0130b07ca05140c4ff830 18-Oct-2013 Jeff Brown <jeffbrown@google.com> am 83bf4404: am 3e3296e5: am 82f31701: Merge "Log view root, input and looper state in bug reports." into klp-dev

* commit '83bf440440309a394f792e3d8a6acb98197d9d7c':
Log view root, input and looper state in bug reports.
b77c586050f1bef63db1683ee595d85bef70f07a 18-Oct-2013 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #11252410 Recents items stuck behind hammerhead navigation panel in landscape

Right padding was wrong for the LinearLayout with id/recents_linear_layout. Its value
was first correctly set by the fitSystemWindows(Rect insets) call but then was reset
to "0" during padding resolution.

Thus make sure that the initial values for user padding left/righ are also set to the
ones coming from the computed ones.

Change-Id: I60390ff7a24286a8f7214eaff8606cb76268ee90
iew.java
03e1c70802f7d9af9c8c286359dafd7c2e56f498 17-Oct-2013 Satoshi Kataoka <satok@google.com> Merge "Introduce an API to get the recommended height of the InputMethodWindow"
e5799cbec23e36e537884dbbd0d77a10532e35fb 16-Oct-2013 Alan Viverette <alanv@google.com> Merge "Lazily create AccessibilityEvent record list"
502cb33f8d13b23c8ddfb1a53db7472404215560 16-Oct-2013 Alan Viverette <alanv@google.com> Lazily create AccessibilityEvent record list

Change-Id: Id4e0a403da811498f2b0f748d86e330fff774154
ccessibility/AccessibilityEvent.java
5182c780a8b42acd46a06d693ab63a0dd78c6d70 16-Oct-2013 Jeff Brown <jeffbrown@google.com> Log view root, input and looper state in bug reports.

Bug: 10948648
Change-Id: I956cce2a0fb516c02f9bbbc021f6238bcb226891
horeographer.java
iewRootImpl.java
b45bdac3407a25122e37175ba0b5d8e04dfa0b1d 15-Oct-2013 John Spurlock <jspurlock@google.com> am 5a87a4e3: am 30408434: am f8033360: Merge "Give IMEs the entire screen to use for measuring purposes." into klp-dev

* commit '5a87a4e3554872dced265ee32551656f0a9643ac':
Give IMEs the entire screen to use for measuring purposes.
e81f80ad9416949758f1471246c2a4f4bcf5d93e 15-Oct-2013 Adam Lesinski <adamlesinski@google.com> am 04e2a47a: am 461f06f4: am 53a5e317: Merge "Wrap measurement optimization in targetSdk check" into klp-dev

* commit '04e2a47ab72038672647a9994f19e1254c90413a':
Wrap measurement optimization in targetSdk check
658c7b896a751b971db1292d86655dbb97f00067 10-Oct-2013 Satoshi Kataoka <satok@google.com> Introduce an API to get the recommended height of the InputMethodWindow

Bug: 11035379
Bug: 5137498

Change-Id: I0e920ee79c526c3aea6872b063cf294e2ab081c8
indowManagerPolicy.java
nputmethod/InputMethodManager.java
f803336028e1a183facec1a526268f2bcf54e16b 15-Oct-2013 John Spurlock <jspurlock@google.com> Merge "Give IMEs the entire screen to use for measuring purposes." into klp-dev
f8508272adb93b5377edfeb69e85442c3d9ed6d2 15-Oct-2013 John Spurlock <jspurlock@google.com> Give IMEs the entire screen to use for measuring purposes.

IMEs recently gained the ability to layout out under the nav bar,
but our core measuring logic does not give height=WRAP_CONTENT windows
the entire screen height when computing desired window height.

Since IMEs can be identified by type, let them use the entire screen
height for measuring purposes, to properly handle the cases where
space is constrained, making that unaccounted-for nav bar height
important.

Bug:11215678
Change-Id: I1d0b73454c0c629e7d669b9de70641c7e8c4d333
iewRootImpl.java
cf18b47ed44157e7aadc55fe8c4796df13e1b86f 14-Oct-2013 Adam Lesinski <adamlesinski@google.com> Wrap measurement optimization in targetSdk check

A measurement optimization has exposed some apps that are relying
on incidental layout requests to have themselves update. With the
optimization enabled, these apps break.

Apps targetted at older versions of Android should not
break due to this optimization.

bug:11192311
Change-Id: Id5fc7f83ec2cb1541d3d0d16f951cd57c0afaccd
iew.java
9d343c26063b8981294d85e0a42819b628c022d7 14-Oct-2013 Dianne Hackborn <hackbod@google.com> am f2896e28: am 9e4403d4: am ef53fcc3: Merge "Fix issue #11199654: Action bar enter animation skips frames when cleared by the system" into klp-dev

* commit 'f2896e2897cace31d82d917f73b787a9d87b21cb':
Fix issue #11199654: Action bar enter animation skips frames when cleared by the system
37c4687190410bbd0bd417a8a29ccb8c1d737b85 14-Oct-2013 Chris Craik <ccraik@google.com> am e0db6fc6: am 8d56f667: am 709129ba: Merge "Document special case in hasOverlappingRendering" into klp-dev

* commit 'e0db6fc6847f0404b704c179d4795b27d9025693':
Document special case in hasOverlappingRendering
021d243d6d113b114d5e71931e728f2aacb9ca14 14-Oct-2013 Dianne Hackborn <hackbod@google.com> Fix issue #11199654: Action bar enter animation skips frames when cleared by the system

We have become too aggressive about not allowing windows to draw while windw
animations are running, basically not allowing any drawing in any window when
there is any window animation. So if you did a relayout while the status bars
were being animated, your window would stop drawing until that status bar
animation was complete.

This change relaxes those rules in two ways:

- A particular window will only be told to stop updating when *it* is
currently involved in a window animation. So animations in status bars
will not stop app windows from update, and vice versa.

- If a window receives input events while it is in the "do not update"
state, we will immediately terminate that state and start allowing it to
draw. If the user is actually interacting with a window, we don't want
to wait to show feedback.

Change-Id: I72574eec048aee53115b46a78686cf27f42c42f7
iewRootImpl.java
c09127a7c3282326cacabcd4ffd32c22306bc782 11-Oct-2013 Chris Craik <ccraik@google.com> Document special case in hasOverlappingRendering

bug:11121809

Change-Id: I074ac47aa510bd2362cfda7dffc73930f07e925c
iew.java
46b2cc1323c643a5f199dca7584bdd8811563c3e 10-Oct-2013 Alan Viverette <alanv@google.com> am 66b5b5b2: am cb38a97c: am 90abd6d1: Merge "Ensure accessibility node cache is synced with service state" into klp-dev

* commit '66b5b5b2b74baa9b7c26d5d72eaa2b6f9f5675dc':
Ensure accessibility node cache is synced with service state
90abd6d1dfe883efc4a305db45f6812ea0de1d7b 10-Oct-2013 Alan Viverette <alanv@google.com> Merge "Ensure accessibility node cache is synced with service state" into klp-dev
a393d6750ceb1b2508a77cedfd343d07bcebe43e 10-Oct-2013 Alan Viverette <alanv@google.com> am 1cac53fa: am b8a140f3: am 1e2b6438: Merge "Fix accessibility state callbacks" into klp-dev

* commit '1cac53fa63060ec3fa3b0249b941ccf8544b3333':
Fix accessibility state callbacks
7e361d22e3ceb7dac79acd1cf3567de86eb045bc 10-Oct-2013 Alan Viverette <alanv@google.com> Fix accessibility state callbacks

BUG: 11141708
Change-Id: Ieff1fb90c4f894eba3c203089dd61e1dabdb7982
ccessibility/AccessibilityManager.java
3d1c5a7236c4709550ca7c0cfa293fc5c974c56b 10-Oct-2013 Alan Viverette <alanv@google.com> Ensure accessibility node cache is synced with service state

BUG: 11152210
Change-Id: Ibffd2909b6b06568de9344e536a200d8a7abac9d
ccessibility/AccessibilityNodeInfoCache.java
359404288c441904d636d48094669fcf66d49308 10-Oct-2013 Alan Viverette <alanv@google.com> am 9f57774e: am 972de252: am 24305da7: Merge "Add listener for changes to touch exploration state" into klp-dev

* commit '9f57774ebb3b400b6597a9dbe854b4b6b1c8afd4':
Add listener for changes to touch exploration state
24305da7d66682930764e77695a884dd78b49039 10-Oct-2013 Alan Viverette <alanv@google.com> Merge "Add listener for changes to touch exploration state" into klp-dev
5baeb9ad1e68cd1bdd0df0c14fe284a1660e2ee6 09-Oct-2013 Alan Viverette <alanv@google.com> Add listener for changes to touch exploration state

BUG: 11141708
Change-Id: I353dfa2542ebd5e2ac89029dcd88623cc4c688e7
ccessibility/AccessibilityManager.java
b44c4439ad237913de03908cd0751b285b18f787 09-Oct-2013 Alan Viverette <alanv@google.com> am 606fadc8: am 6d1e4522: am d9f53c02: Merge "Clear accessibility focus when view becomes invisible" into klp-dev

* commit '606fadc84a96b7e0a1f0b95bc03c9430b32ad22f':
Clear accessibility focus when view becomes invisible
d9f53c02766d9a9c00f303d8047cacef4e9673cf 09-Oct-2013 Alan Viverette <alanv@google.com> Merge "Clear accessibility focus when view becomes invisible" into klp-dev
4d873d87cc813b899709742217b39c3adfbbfbf2 09-Oct-2013 John Spurlock <jspurlock@google.com> am bba545e7: am 4f241a29: am 92128144: Merge "Introduce View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY." into klp-dev

* commit 'bba545e73ca63be2e275b6e982251ab930d0a644':
Introduce View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY.
92128144d95e913a6702586cf4f0468bcb90c0c4 09-Oct-2013 John Spurlock <jspurlock@google.com> Merge "Introduce View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY." into klp-dev
67c8d20ed28e0b75de50fc8353a132b8404310b6 09-Oct-2013 Svetoslav <svetoslavganov@google.com> am fdcd50f1: am 53f16ba2: am 0cc8276d: Merge "Add missing locking when updating the accessibility node info cache." into klp-dev

* commit 'fdcd50f13d961514ed1a47573b627b6b3184c1fc':
Add missing locking when updating the accessibility node info cache.
a12dccc0981cbde289c678c54aa57d9b86edfb1f 09-Oct-2013 John Spurlock <jspurlock@google.com> Introduce View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY.

The existing View.SYSTEM_UI_FLAG_IMMERSIVE flag will be somewhat
redefined. Swiping will clear the flags, revealing the normal bars.

The new View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY flag will enable
hideybars - the auto-hiding, semi-transparent bar mode.

Bug:11062108
Change-Id: Ibf8be9072f0075953baa4580cd976e7562d44455
iew.java
3edcd8cfdf5faa1c229c3b2edde2fe3c722f175d 09-Oct-2013 Svetoslav <svetoslavganov@google.com> Add missing locking when updating the accessibility node info cache.

bug:10489954

Change-Id: Iccf55d074ea712566f441b9f6616a4c1fe847e0a
ccessibility/AccessibilityNodeInfoCache.java
e94ec3e79aa787d1201d91eb58961f5006689d3c 09-Oct-2013 Alan Viverette <alanv@google.com> am 57cc6283: am 76597552: am 3a407fad: Merge "Fix HIDE_DESCENDANTS accessibility importance mode" into klp-dev

* commit '57cc628355e434d4b313e9b60e1a68a0643fda04':
Fix HIDE_DESCENDANTS accessibility importance mode
2e84a9946750fbc0e411a4ea1f4ef5b565ce20bf 08-Oct-2013 Alan Viverette <alanv@google.com> Clear accessibility focus when view becomes invisible

BUG: 10912882
Change-Id: I8c7c6906fcf7688ecdfac6649464f088dd812c41
iew.java
3a407fad3554fe9567bb8769b060233b3efc0633 08-Oct-2013 Alan Viverette <alanv@google.com> Merge "Fix HIDE_DESCENDANTS accessibility importance mode" into klp-dev
24cafbc56cacfad42af375e7545de45ff500cdbe 08-Oct-2013 Alan Viverette <alanv@google.com> Fix HIDE_DESCENDANTS accessibility importance mode

Ensures accessibility framework is notified when subtree visibility
changes as a result of hiding descendants. Fixes collision between
HAS_TRANSIENT_STATE flag and IMPORTANT_FOR_ACCESSIBILITY mask.

BUG: 11087525
Change-Id: I92dba27350970a09e76b5a878c7604ea06cae197
iew.java
550b89e6de08731249b87ef3e9250306107d810c 08-Oct-2013 Alan Viverette <alanv@google.com> am 80fad292: am 6d774ac6: am bdae8148: Merge "Provide example actions in AccessibilityEvent.setAction() docs" into klp-dev

* commit '80fad292318ac2e1e76435bb8334017a702a62d7':
Provide example actions in AccessibilityEvent.setAction() docs
bdae814816085ac9d4a48580e86a7ef4a0bcb5d6 08-Oct-2013 Alan Viverette <alanv@google.com> Merge "Provide example actions in AccessibilityEvent.setAction() docs" into klp-dev
516f953a82896a9b431ad87cb457277c62c75162 08-Oct-2013 Alan Viverette <alanv@google.com> resolved conflicts for merge of e4ccb864 to master

Change-Id: I50c41c712c4eb4f68b22777efb2e5d5370536b22
5a0f4eccfb1e1774c4aac825bf39bcc4f5fc00e0 08-Oct-2013 Alan Viverette <alanv@google.com> Ignore certain WindowManager flags when touch exploration is enabled

Specifically, ignore any flags that alter the visibility of the navigation
bar and transparency.

BUG: 11082573
Change-Id: I17264dc55a1c6c3cb9b9cf92d5121799cecee5b8
WindowManager.aidl
indowManagerPolicy.java
2b5a190d2d21c2b2302752e48151b7e626eb36e7 07-Oct-2013 John Spurlock <jspurlock@google.com> am 64157f23: am 1fc7bd3e: am 619fc89a: Merge "Fix transparent -> translucent reference in private docs." into klp-dev

* commit '64157f23d808f44d304020c7e0c43dfc42b398e8':
Fix transparent -> translucent reference in private docs.
3f7cd517aace5ca418a2e5c6bc7a33238a54597b 07-Oct-2013 John Spurlock <jspurlock@google.com> Fix transparent -> translucent reference in private docs.

Bug:10781433
Change-Id: I9e71b38df3909c367c80a9a589d28f703d1c9936
indowManager.java
13431ad822a6479c8512ea4a6ab799e2f5b46d97 07-Oct-2013 John Spurlock <jspurlock@google.com> am 4818db0f: am b88ede00: am d5102f19: Merge "Transparent system ui flags -> Translucent WM flags." into klp-dev

* commit '4818db0fc5dec465a2cdb76c0faff4750a3a3fff':
Transparent system ui flags -> Translucent WM flags.
bd95740648372449a4d5c164d7050eee352d4c24 03-Oct-2013 John Spurlock <jspurlock@google.com> Transparent system ui flags -> Translucent WM flags.

Migrate View.SYSTEM_UI_FLAG_TRANSPARENT_(STATUS/NAVIGATION) to
WindowManager.LayoutParams.FLAG_TRANSLUCENT_(STATUS|NAVIGATION).

Add associated public attrs for both new window flags:
windowTranslucentStatus
windowTranslucentNavigation

Introduce convenient four new themes that set translucent decor:
Theme.Holo.NoActionBar.TranslucentDecor
Theme.Holo.Light.NoActionBar.TranslucentDecor
Theme.DeviceDefault.NoActionBar.TranslucentDecor
Theme.DeviceDefault.Light.NoActionBar.TranslucentDecor

Update PhoneWindowManager mechanism to plumb these values back to
SystemUI to drive bar mode state.

The new translucent flags come from the top fullscreen window, not
the focused window, so translucency does not change when opening
dialogs.

Imply some window-level system-ui visibility if one or both of these
new flags are present, specifically:
FLAG_TRANSLUCENT_STATUS implies LAYOUT_STABLE, LAYOUT_FULLSCREEN
FLAG_TRANSLUCENT_NAVIGATION implies LAYOUT STABLE, LAYOUT_HIDE_NAV

Rename all associated variable & resource names to use the term
translucent instead of transparent. (Retain the term semi-transparent
for the transient bar style).

Recents activity allowed to inherit translucent decor state via the
new PRIVATE_FLAG_INHERIT_TRANSLUCENT_DECOR. Compensating changes
to use the full screen area more appropriately.

Update keyguard to use new WM flags.

Update docs and various api artifacts.

Sanity-check fixes:
- Toasts and alerts given stable layout.
- Suppress nu-gradient when in transient (hidey) mode.
- New translucent flags use top-fullscreen window, dialogs don't clear.

Bug:10674960
Bug:11062108
Bug:10987178
Bug:10786445
Bug:10781433
Change-Id: If667a55bea4cf5e008549524b9899197fab55ebe
iew.java
iewRootImpl.java
indowManager.java
af43110c020a9557233a64c08cede07bb37fe440 04-Oct-2013 Alan Viverette <alanv@google.com> Provide example actions in AccessibilityEvent.setAction() docs

BUG: 11070461
Change-Id: I05799e721dd1285e5165e94c7d63084010fa478b
ccessibility/AccessibilityEvent.java
1461e26674d73e9ad7d7896c59c936a2f88af3f4 04-Oct-2013 Alan Viverette <alanv@google.com> resolved conflicts for merge of 92a827b8 to master

Change-Id: Ia262f5c80cdaa391db08f766cee62919a8705e80
b7ba2630bdd6a0d7f68f3ca62b6ceb5160266c9a 04-Oct-2013 John Spurlock <jspurlock@google.com> am bee8af82: am c3752cfb: am e660ecc4: Merge "Store decor rects per window for transition cropping." into klp-dev

* commit 'bee8af8207938fb0d29b38d915be1803edc64d69':
Store decor rects per window for transition cropping.
38dc2ad85e4572d6e56f0a98edd97945312f708c 04-Oct-2013 Adam Lesinski <adamlesinski@google.com> am b2db2fbc: am 6d90862f: am d65825ab: Merge "Private flags are masked in correct variable" into klp-dev

* commit 'b2db2fbce33dbcfa52ccb20267ad4897c558c34f':
Private flags are masked in correct variable
eebcc0ff6079c5505496314308e86e3bf7118134 04-Oct-2013 John Reck <jreck@google.com> am cd6a2d30: am 47dc3248: am 9a93f6f0: Merge "Reduce max recents on lowram" into klp-dev

* commit 'cd6a2d3079ee67658535773021c16787b9adba6e':
Reduce max recents on lowram
093318eeac4fd839c722a902612c2f00e1da2f71 03-Oct-2013 Alan Viverette <alanv@google.com> Merge "Add importantForAccessibility mode to block entire hierarchy" into klp-dev
92a6f3018ace5aa2d5ea74e7d378b6960b5e053e 03-Oct-2013 Satoshi Kataoka <satok@google.com> Fix InputMethodSubtype#equals corresponding to hashCode

Change-Id: Ic9305a6f0f5d753f0ad674ad6c9ee648cc8a6ce9
nputmethod/InputMethodSubtype.java
e660ecc436c6bb9d3476298e97976a24b432482e 03-Oct-2013 John Spurlock <jspurlock@google.com> Merge "Store decor rects per window for transition cropping." into klp-dev
d65825ab1cdbfd88122beaaad8cf815434cbf46d 03-Oct-2013 Adam Lesinski <adamlesinski@google.com> Merge "Private flags are masked in correct variable" into klp-dev
172e87ce5113d75afbf894aef83bd30b43c98f5e 03-Oct-2013 John Reck <jreck@google.com> Reduce max recents on lowram

Bug: 10918599
Reduce the number of recent tasks to 10 on lowram devices
Use RGB_565 on low ram devices for thumbnails instead of ARGB_8888
Combined this saves ~9MB across system_process and systemui

Change-Id: Ieddcb512c7341a90097bc7cbc72d7355a775b416
WindowManager.aidl
23be199171bedb05e81864f8941492af066fa667 03-Oct-2013 Alan Viverette <alanv@google.com> Add importantForAccessibility mode to block entire hierarchy

Since older versions of the platform will crash if the mode is
set to 3, this CL adds an extra bit and uses 4 as the mode. This
will also cleanly default the mode to AUTO on unsupported
platforms.

BUG: 11031947
Change-Id: I48035abbf35523d65cead6f27be10f8087973ceb
iew.java
95c42974f719d1fac90fc0438eac778e9795681f 02-Oct-2013 Adam Lesinski <adamlesinski@google.com> Private flags are masked in correct variable

Newly added private flags were being masked in the public flag variable
as opposed to the correct privateFlags variable.

bug:11033280
bug:11043194
Change-Id: Idda3a70a083457f3f1b7d4b46d231f4a7e704cf0
urfaceView.java
iewRootImpl.java
indow.java
indowManager.java
indowManagerPolicy.java
4664623c304cf162b9a78f3aee3290a92e54b628 01-Oct-2013 John Spurlock <jspurlock@google.com> Store decor rects per window for transition cropping.

Instead of keeping a single global system decor rect around
in WindowManagerService, calculate and store policy-defined
system-decor frame for each window.

The per-window decor rect is useful for smooth transitions, since it
determines window cropping during transition animations.

Bug:10938001
Change-Id: Ice6652aa5946027c45c0b7ab4e46473a0f8e3f90
indowManagerPolicy.java
49e43291b2120884320441e9519f5f3c74d40cb2 02-Oct-2013 Adam Lesinski <adamlesinski@google.com> am 234c6c8a: am ff7cba54: am 42e9b631: Merge "Make room for new public flags" into klp-dev

* commit '234c6c8aafa4abc440d5bf38aac058b96ba1434c':
Make room for new public flags
67ee6fe019e551f477624fca59d0966d7e0e055e 02-Oct-2013 Alan Viverette <alanv@google.com> am 0adaf034: am 6320305a: am f079a6d0: Merge "Set live region property on AccessibilityNodeInfo" into klp-dev

* commit '0adaf034886d9e3dd0ed81aa192f07fcff49c1a5':
Set live region property on AccessibilityNodeInfo
87c9f89412f67f3a0dbaacf6585dbed3dc388442 02-Oct-2013 Alan Viverette <alanv@google.com> am e3ba7f24: am c379752a: am 3320ef95: Merge "Add findFocus API for AccessibilityNodeProvider" into klp-dev

* commit 'e3ba7f24dacfc8ef16e2f297fe3eec3c0719bfd1':
Add findFocus API for AccessibilityNodeProvider
772bafad5adf6aeec8909c6057614e958b93bb64 02-Oct-2013 Cyril Mottier <cyrilmottier@gmail.com> Fix a copy/paste typo in ViewPropertyAnimator

Change-Id: I149351f062e874fc11da61f416da5cfa5b1cb444
iewPropertyAnimator.java
d09d5f9e4cb9cd03c47eab0f1e9256dc1e2a7527 02-Oct-2013 Jeff Brown <jeffbrown@google.com> am 10478213: am 5e65adaf: Merge "Reset insets when inset computer is removed." into klp-dev

* commit '10478213759a486524000c4164e4176437afa2d7':
Reset insets when inset computer is removed.
6a591f585909415a1da431a2cc76b7732724037d 02-Oct-2013 Adam Lesinski <adamlesinski@google.com> Make room for new public flags

Moved two hidden flags to private

bug:11033280
Change-Id: Icca867b073aff643eefdaf84df68de86bb6b05ac
urfaceView.java
iewRootImpl.java
indowManager.java
d273cae2c49c3f6d21f53406b7540e572c11bba0 02-Oct-2013 Jim Miller <jaggies@google.com> resolved conflicts for merge of fb2e3c8d to master

Change-Id: Ic9fe2674e0eb82d071f9b547b6089acacf705576
f079a6d07f64045526a094077a1e9f4ceb40da76 01-Oct-2013 Alan Viverette <alanv@google.com> Merge "Set live region property on AccessibilityNodeInfo" into klp-dev
18c631931bcabdadabe9dd92713c2f1f0d482308 01-Oct-2013 Alan Viverette <alanv@google.com> Merge "Add accessibility display adjustments"
3320ef95de1775cfdb2bdc0c31cf6ba54d8e8900 01-Oct-2013 Alan Viverette <alanv@google.com> Merge "Add findFocus API for AccessibilityNodeProvider" into klp-dev
c993e7447d4520e5499a722971f13bcb40e84b76 01-Oct-2013 Fabrice Di Meglio <fdimeglio@google.com> Merge "Update TimePicker widget and its related dialog"
f877ed96b78a48503d3a302d61cab55e445160b8 01-Oct-2013 Alan Viverette <alanv@google.com> Set live region property on AccessibilityNodeInfo

BUG: 11012854
Change-Id: I2c88468be597eb3694fe3d0eb2f2d86981ea9829
iew.java
2e05ec3235150a93a3459cd260be45f02dadbe84 01-Oct-2013 Jeff Brown <jeffbrown@google.com> Reset insets when inset computer is removed.

When an inset computer is registered with the view tree observer,
we report content insets to the window manager. When an inset computer
is subsequently unregistered, we must take care to clear these insets.

This patch remembers whether the previously computed insets were
non-empty so that it can force insets to be reset when needed.

Bug: 10840662
Change-Id: I4cce5ba64cc5234b98363b025ac4bb42e64349f1
iew.java
iewRootImpl.java
iewTreeObserver.java
410d4e33c5542ccdeacdc8d0ac4aa0e194da688a 01-Oct-2013 Alan Viverette <alanv@google.com> Add accessibility display adjustments

BUG: 9057596
Change-Id: I5e7cc05159387cb00701e162d015e2f7ca6cbf4c
ccessibility/AccessibilityManager.java
04fa5918453695e674c2c7ca094a992616409424 30-Sep-2013 Michael Wright <michaelwr@google.com> am edb444b4: Merge "Add missing constructor parameter to KeyEvent" into klp-dev

* commit 'edb444b44419def54292cf8325c22697213153fa':
Add missing constructor parameter to KeyEvent
25419efae8b5ac113ad4841c1a9511f1cb729520 30-Sep-2013 Jean Chalard <jchalard@google.com> am 5638d29a: Merge "Fix conflicting/unclear documentation in InputConnection." into klp-dev

* commit '5638d29a648ee5722bb88355351c56fde7d6bc93':
Fix conflicting/unclear documentation in InputConnection.
e3fb7eca81d078a993901daa23a6523d33875e66 30-Sep-2013 Romain Guy <romainguy@google.com> am 33ed738d: Expose View.executeHardwareAction() Bug #10911502

* commit '33ed738d49dce3af5851d0566739e9ed593057a5':
Expose View.executeHardwareAction() Bug #10911502
2e1e081146546a04bc3813dde9c44babbddc0712 30-Sep-2013 Alan Viverette <alanv@google.com> Add findFocus API for AccessibilityNodeProvider

BUG: 9372171
Change-Id: Iea46ce5a4bf25baaabe5c07cd7d0c58bb31f23d9
ccessibilityInteractionController.java
ccessibility/AccessibilityNodeProvider.java
fb2e3c8d47c162166a029a97d68ad3bedff89cce 28-Sep-2013 Jim Miller <jaggies@google.com> Merge "Fix permissions on WindowManagerService.showAssistant()" into klp-dev
6c9df5054a25f179ea7359a1a5e59e7d5d8da122 20-Sep-2013 Jim Miller <jaggies@google.com> Fix permissions on WindowManagerService.showAssistant()

Since binder call permissions are not transitive by design,
the proper way to fix this is to have the call talk directly
to keyguard from the navigation bar.

Fixes bug 9409008

Change-Id: Ibd90a79bb638c969b514455a2ad93c6ff668222d
WindowManager.aidl
indowManagerPolicy.java
a977707d6e7006d11cfde045f187e777b31b9e04 27-Sep-2013 Michael Wright <michaelwr@google.com> Add missing constructor parameter to KeyEvent

When in the SyntheticKeyHandler, a missing constructor paramater caused the
wrong contstructor to be called. This would cause the device id, scan code and
flags to be incorrect.

Bug: 10966229
Change-Id: Ib84ef88d28c0da517b376c5493a851cf8fe0a9f7
iewRootImpl.java
eeff63a5c347f282b5c8c3ae6a0924bf03fbce8f 05-Aug-2013 Fabrice Di Meglio <fdimeglio@google.com> Update TimePicker widget and its related dialog

- the old TimePicker widget is still there for obvious layout compatibility reasons
- add a new delegate implementation for having a new UI based on a radial picker
- use the new delegate only for the TimePickerDialog (which does not need to be
the same)
- added support for Theming and light/dark Themes
- added support for I18N (hour formatting and time separator and also position of
AM/PM indicator coming from Unicode CLDR)
- added support for RTL
- verified support for Keyboard
- verified that CTS tests for TimePicker are passing (for both the legacy and the
new widgets)

Also added a new HapticFeedbackConstants.CLOCK_TICK and its related code for
enabling ticks vibration.

Change-Id: Ib9b53a152bd9e97383dc391ef8c26da91217298f
apticFeedbackConstants.java
5638d29a648ee5722bb88355351c56fde7d6bc93 27-Sep-2013 Jean Chalard <jchalard@google.com> Merge "Fix conflicting/unclear documentation in InputConnection." into klp-dev
8232eb9c19c9d74e9ec605ad0bf436a76a748f33 27-Sep-2013 Alan Viverette <alanv@google.com> Preserve but don't draw accessibility focus for unfocused windows

BUG: 6472572
Change-Id: Id3d7d76cc59a3d8141d043d6797f176345fd0cbb
iewRootImpl.java
33ed738d49dce3af5851d0566739e9ed593057a5 26-Sep-2013 Romain Guy <romainguy@google.com> Expose View.executeHardwareAction()
Bug #10911502

Views creating hardware resources need a way to safely interact
with the hardware. This new method invokes HardwareRenderer.safelyRun()
which executes a Runnable after making sure the hardawre rendering
context is in a valid state.

With the OpenGL backend, executeHardwareAction() tries to call
eglMakeCurrent() if needed. This method is not guaranteed to
work.

Change-Id: I38ec65132eeba85605cffb1a6de12b7a0184e213
extureView.java
iew.java
4510eb40491d60acb62ed0588b40e1d229d75bf6 26-Sep-2013 Jean Chalard <jchalard@google.com> Fix conflicting/unclear documentation in InputConnection.

Bug: 10247660
Change-Id: I88f36a3764d5e6dee4e864cb9f6df713dde5e0f5
nputmethod/InputConnection.java
7adbecf0004a7aa0ad9d221220dd5db4cb1f1079 18-Sep-2013 Chet Haase <chet@google.com> am c8bcf4f2: am d73d34c8: Merge "Use transition-only alpha property for fading transitions" into klp-dev

* commit 'c8bcf4f21ac81ab8e36470d50c3a238c7627b970':
Use transition-only alpha property for fading transitions
7e9c8e22d0c66ef6096ed4eefec7265f15b7bc78 18-Sep-2013 Chet Haase <chet@google.com> am 07861ea8: am 4fa809fe: Merge "Fix leak fix in ViewTreeObserver" into klp-dev

* commit '07861ea82b5e86e3e4a141f2f1f1468a3f8cc709':
Fix leak fix in ViewTreeObserver
d73d34c873dbf409af3cf6ecbf27cb2be3953b4f 18-Sep-2013 Chet Haase <chet@google.com> Merge "Use transition-only alpha property for fading transitions" into klp-dev
4fa809fe74635720528ab46cff7d2ba0d0aebd8a 18-Sep-2013 Chet Haase <chet@google.com> Merge "Fix leak fix in ViewTreeObserver" into klp-dev
c46181a963be736186ae29101625a05b5c1f0ba8 16-Sep-2013 Chet Haase <chet@google.com> Use transition-only alpha property for fading transitions

The original bug is fixed already, but showed up some problems in
the underlying fade-transition implementation. This fix addresses
those and other issues. The biggest part of the change should help
transition robustness in general, as it removes the dependency on the
public 'alpha' property of views and uses, instead, a new hidden property
on views called 'transitionAlpha'. This is a value which is normally
opaque (1), but which can be used by transitions (only) to animate the
translucency of views without disturbing the actual 'alpha' value which
might be manipulated outside of transitions. This should make transitions
much more robust in general.

In implementing and testing this overall fix, I noticed a couple of things
about transitions that were simply wrong (such as starting fades from the
wrong start value, and incorrectly avoiding transitions on some views
that didn't happen to have ids), and those are fixed in this CL as well.

Issue #10726905 ActionBar weirdness in People app
Issue #10727937 Menu items in gallery appear in faded color after selecting an image/album by long press

Change-Id: If1618446db10c1bfcff4761449241de4f559afc1
iew.java
fc343967c8310a425d2df2aefd01fbe60bf3ef3a 18-Sep-2013 Chet Haase <chet@google.com> Fix leak fix in ViewTreeObserver

The leak fix of the CopyOnWriteArray in ViewTreeObserver was
too aggressive, always clearing the shadow copy when it should only
have cleared it when needed. The way it works now, we will always
clear the listeners for ViewTreeObserver after the listeners
are processed.

Issue #10815924 ViewTreeObserver leak fix too aggressive

Change-Id: Iff0095d73beb38e52b0a5ae6b6378afec4458fd3
iewTreeObserver.java
788abe8fe0d2d6de787079c4de6dcfecd4cd4c11 18-Sep-2013 Mindy Pereira <mindyp@google.com> am 2fed38ec: am 09804e41: Merge "Add isQuickScaleEnabled to ScaleGestureDetector" into klp-dev

* commit '2fed38ec137108564e7cd53805ea716e4ea39a3b':
Add isQuickScaleEnabled to ScaleGestureDetector
9f1221f87e4762457c8fa0b4c0e5a291d9aef5c9 16-Sep-2013 Mindy Pereira <mindyp@google.com> Add isQuickScaleEnabled to ScaleGestureDetector

Change-Id: I23dabb8bec69573ca833e06a4fd36435c75d7d04
caleGestureDetector.java
f6e1e8e0375abb01b0a48a4704938f72b6fa9c36 16-Sep-2013 Chet Haase <chet@google.com> am fe11c5d8: am 978a455d: Merge "Plug leaks in transitions" into klp-dev

* commit 'fe11c5d8cd02897b5156460c9a7ae6578cad1fc6':
Plug leaks in transitions
7660d121b2ef21164ed33e6091e5dd50f5d0f939 13-Sep-2013 Chet Haase <chet@google.com> Plug leaks in transitions

Transitions were leaking views due to TransitionsValues holding references
to views/parents. The references were fine, but the retention of the transition
objects themselves were not. There were a few different places that needed to
be plugged:
- clones were not making new copies of some fields, leading to caching references
in the original object (which was then cloned later to other clones)
- Visibility was using a persistent field to cache temporary values. This transition,
when cloned, would retain these instances, keeping references to views
- ViewTreeObserver had a bug that would leak listeners

Issue #10749071 Activity instance leak between TransitionManager and InputMethodManager

Change-Id: I1d5d457dc5e020c7b9e8392a95e3b2c488461119
iewTreeObserver.java
69d9cd7c373f09c2cec27f648bac7451cfa573d2 14-Sep-2013 Chet Haase <chet@google.com> am 140f3dff: am 750ce3ac: Merge "Only buildLayer() on attached views" into klp-dev

* commit '140f3dff592a93cf5ace2c3a2830c56933b5bc54':
Only buildLayer() on attached views
5fd37236dff9ab4d605ddac873d6a353f74838b5 14-Sep-2013 Chet Haase <chet@google.com> Only buildLayer() on attached views

A recent change to ViewPropertyAnimator.withLayer() builds the layer
immediately after creating it. This works in general, but if the view
is not attached, buildLayer() throws an exception.

The fix is to ensure that the view is attached before calling buildLayer().

Issue #10750925 Dialer crashed and phone dropped while on call

Change-Id: I801c835a0f5cb81e159fe90c157c122cf2d0da01
iewPropertyAnimator.java
d17e719da0914aaee0bf6b21e92f4f3e4a4e8293 14-Sep-2013 Alan Viverette <alanv@google.com> Merge "Clean up layout constructors, make them consistent"
f6fac14e2ea5581abf931de816b1e42d3bb56ab8 13-Sep-2013 Jean Chalard <jchalard@google.com> am 4895ec3d: am 940a2ad6: Merge "Don\'t send the same values to onUpdateSelection repeatedly" into klp-dev

* commit '4895ec3dcc214891b9788cde3c9720ee9656596c':
Don't send the same values to onUpdateSelection repeatedly
bd51158d61ef10cea65a31d5795887444d2d9cbf 13-Sep-2013 Kenny Root <kroot@google.com> resolved conflicts for merge of aca95ca0 to master

Change-Id: I91adf923288ca724a8040ecf887e28e42ad7e259
90ce2f3f52722e24cd5b055d0282b1bc9c3639b9 13-Sep-2013 Svetoslav <svetoslavganov@google.com> am 9282b9ac: am b72ff5aa: Merge "Remove unneeded print APIs and update the min margins APIs." into klp-dev

* commit '9282b9ac8eda1591bb54b46ddc4e88da1c2f0c56':
Remove unneeded print APIs and update the min margins APIs.
940a2ad69eaf25ef16b6f470f759f9eef28fc0c5 13-Sep-2013 Jean Chalard <jchalard@google.com> Merge "Don't send the same values to onUpdateSelection repeatedly" into klp-dev
2a65a2839e9b3e59a72348ee088f86cda7df604a 13-Sep-2013 Alan Viverette <alanv@google.com> Merge "Add live region politeness to View, AccessibilityNodeInfo" into klp-dev
77e9a28e2faa36f127231b842476d47f9823a83a 13-Sep-2013 Alan Viverette <alanv@google.com> Add live region politeness to View, AccessibilityNodeInfo

Alters the content change API to contain a bit mask of types of
changes represented by the event. Live regions send CONTENT_CHANGED
events immediately. Removes unused APIs for EXPANDABLE/EXPANDED.

BUG: 10527284
Change-Id: I21523e85e47df23706976dc0a8bf615f83072c04
iew.java
iewGroup.java
iewParent.java
iewRootImpl.java
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityNodeInfoCache.java
651dd4e6ee6510caf9f15c51094a11121af17ec2 12-Sep-2013 Svetoslav <svetoslavganov@google.com> Remove unneeded print APIs and update the min margins APIs.

1. Removed unneeded code in Resolution that was storing its
label as resource and package name. We do not have predefined
resolutions, therefore we always persist the label.

2. Renamed the print attribute margins to minMargins to reflect
that these are the minimal margins the printer support. Updated
the docs as well.

3. Renamed the create method of all builder to build.

bug:10727487

Change-Id: Ie72ab8aaa5215b8bd2853885011b3b4efa4deb2e
ccessibility/AccessibilityNodeInfoCache.java
f3142095fda28cbe2355aaad897b68e94b022f97 13-Sep-2013 Jeff Brown <jeffbrown@google.com> am 3cb86769: am 26267660: Merge "Make View onKeyUp symmetric with onKeyDown." into klp-dev

* commit '3cb86769fd04891f01e2ea8fcf54edb9ecb97922':
Make View onKeyUp symmetric with onKeyDown.
311913d09eb6305c968daf8a24f6c27ad6d9d653 13-Sep-2013 Tor Norbye <tnorbye@google.com> Removing trailing comma in initializer; fails on some javac versions

Change-Id: Ie651ca8ee625a881f739dc3ede5190adb9eb9860
iew.java
b6a3ef18342e6671d9674312b66a015d6caa80ed 13-Sep-2013 Tor Norbye <tnorbye@google.com> Merge "Add typedefs and nullness annotations."
26267660957a4428a66d8f142e2bdfa6ce6fe12f 12-Sep-2013 Jeff Brown <jeffbrown@google.com> Merge "Make View onKeyUp symmetric with onKeyDown." into klp-dev
c743cb94770701ec20a01b57b09232f1aae5bcbb 12-Sep-2013 Jean Chalard <jchalard@google.com> Don't send the same values to onUpdateSelection repeatedly

If the IME is repeatedly changing the text in its
onUpdateSelection handler, this will crash it with a
stack overflow exception. It's better than the old behavior,
which would result in a busyloop likely to make the
device completely unresponsive.

Bug: 10301239
Change-Id: I170cfb8ef20fc056d4725931890a987aefcaea8b
nputmethod/InputMethodManager.java
fb07349c073ab6aa3c8a24435a68e3236c8ede23 12-Sep-2013 Jeff Brown <jeffbrown@google.com> Make View onKeyUp symmetric with onKeyDown.

Properly use KeyEvent.isConfirmKey() in both methods.

Change-Id: Id87158f2163f75af20350dc445df6a59f7190752
iew.java
3878b78631c8fda57dc4bb99d235760233662771 12-Sep-2013 Mindy Pereira <mindyp@google.com> am 21497c5f: am af2d8bbd: Merge "Scale feels too quick in relation to movement" into klp-dev

* commit '21497c5f5d6ed3ddf90cf48c5a21b7f7de1f91b5':
Scale feels too quick in relation to movement
33069f40e5ba5a8c036671a67668b6bdfe6eb3a9 12-Sep-2013 Igor Murashkin <iam@google.com> am 47869404: am 2cad64c0: Merge "Surface: Change OutOfResourcesException to be a runtime exception" into klp-dev

* commit '47869404cb8233c536a0a5d2c5ce4d0089e39882':
Surface: Change OutOfResourcesException to be a runtime exception
af2d8bbdbd9fdbcf109949ec18dc2bb2312b5744 12-Sep-2013 Mindy Pereira <mindyp@google.com> Merge "Scale feels too quick in relation to movement" into klp-dev
d9273d6f289d9b55da3fd0db2f659fdfb48106a8 31-May-2013 Tor Norbye <tnorbye@google.com> Add typedefs and nullness annotations.

This changeset adds in typedef annotations (custom annotations
marked with @IntDef) for various int parameters and return values
in the API. It also adds nullness annotations for cases where the
documentation explicitly mentioned null policy, or where it was
blindingly obvious from the context. Also fixed some typos in the
documentation.

Change-Id: Ica27c01368895818e26237544edd8483007155bb
isplay.java
isplayInfo.java
urface.java
iew.java
indow.java
indowManagerPolicy.java
2cad64c0fbeba07bb546674e19cfb0166d7ec332 11-Sep-2013 Igor Murashkin <iam@google.com> Merge "Surface: Change OutOfResourcesException to be a runtime exception" into klp-dev
ae277d89aa26cac8a8bd587721d7cf167aa85ed3 11-Sep-2013 Chet Haase <chet@google.com> am a22f4e98: am c19d683d: Merge "Build layer immediately when setting it in ViewPropertyAnimator" into klp-dev

* commit 'a22f4e981a668025d059ca1710403aedb6a6ac30':
Build layer immediately when setting it in ViewPropertyAnimator
c19d683d9ea5dafdd8e355dc3fa34b362bc379e9 11-Sep-2013 Chet Haase <chet@google.com> Merge "Build layer immediately when setting it in ViewPropertyAnimator" into klp-dev
74d31d106bc0a2462aac8af58dbefd6a4e1212d8 11-Sep-2013 Chet Haase <chet@google.com> Build layer immediately when setting it in ViewPropertyAnimator

Previously, withLayer() would simply set the layer type in the runnable
called in onAnimationStart(). Now we also call buildLayer(), to get it
out of the way prior to the view drawing for the first time after the
animation begins.

Issue #9422420 ViewPropertyAnimator.withLayer() should build layer immediately

Change-Id: I99923a234f7ca1ec0b6f1b0bf28b62a71ab7eb4d
iewPropertyAnimator.java
d6479ec5eec13914f656f6be996d95fe1610fd57 11-Sep-2013 Alan Viverette <alanv@google.com> Clean up layout constructors, make them consistent

All constructors now flow through to each class's own 4-argument
constructor. This ensures that theme attributes are applied even
if a base AttributeSet is not provided.

BUG: 10680863
Change-Id: I727d2961bf017c6a5e0206367081670782583394
iewGroup.java
279f3cdf70652a211c54f7b70fb08722a50e6cec 11-Sep-2013 Jeff Brown <jeffbrown@google.com> am 9993f8ff: am dc6fd0a2: Merge "Propagate input ANR reason to activity manager log." into klp-dev

* commit '9993f8ff24718553c05872d9f13f4114701b3428':
Propagate input ANR reason to activity manager log.
dc6fd0a20a095ac0fb544184d8a4258e80b4a14d 11-Sep-2013 Jeff Brown <jeffbrown@google.com> Merge "Propagate input ANR reason to activity manager log." into klp-dev
bd181bb83282571eb793d2e4a48b4d19585de7f2 11-Sep-2013 Jeff Brown <jeffbrown@google.com> Propagate input ANR reason to activity manager log.

Make it a little easier to diagnose input dispatch timeouts by
providing the detailed reason as the ANR annotation in the log.

Bug: 10689184
Change-Id: Ie18fd9ad066b0673d1f57c030e027ad0085f4650
ApplicationToken.aidl
a86ab640f7bb0bf3cb4eaed80473ca8c5d131903 30-Aug-2013 Igor Murashkin <iam@google.com> Surface: Change OutOfResourcesException to be a runtime exception

- Deprecates SurfaceTexture.OutOfResourcesException, it wasn't used
- Make all JNI code throw only Surface.OutOfResourcesException
- Get rid of redundant SurfaceControl.OutOfResourcesException

Bug: 10566539
Change-Id: I58126260771b9ccff6a69c672ce7719b9f98138d
ardwareRenderer.java
urface.java
urfaceControl.java
urfaceView.java
iewRootImpl.java
e995af44a729b2c6f5d31f1a1e18c17fb6e01762 10-Sep-2013 Jeff Brown <jeffbrown@google.com> am 404c4855: am 392c76b1: Merge "Clarify InputDevice#getControllerNumber documentation" into klp-dev

* commit '404c4855ab0f85bd5ccccf0d3e443819bad6762a':
Clarify InputDevice#getControllerNumber documentation
392c76b1f6bc756359a70263c1708682f884027a 10-Sep-2013 Jeff Brown <jeffbrown@google.com> Merge "Clarify InputDevice#getControllerNumber documentation" into klp-dev
5b73e365079198e24f0872c9915446629ca6205f 10-Sep-2013 Alan Viverette <alanv@google.com> Merge "Add View constructor that supplies a default style resource"
617feb99a06e7ffb3894e86a286bf30e085f321a 10-Sep-2013 Alan Viverette <alanv@google.com> Add View constructor that supplies a default style resource

Also updates the constructor of every class that extends View.

BUG: 10676369
Change-Id: Ifaf27bf82028d180afa4931c0e906df88d858ac3
urfaceView.java
extureView.java
iew.java
iewGroup.java
iewStub.java
24870ce4f222fec664a24e47cf6b12db36dbdff2 10-Sep-2013 Mindy Pereira <mindyp@google.com> Scale feels too quick in relation to movement

Reduce scale factor in relation to amount of y movement

Change-Id: Iaf351edb2eb1a67f542aa9b3aa3587fc231f8c5c
caleGestureDetector.java
bce89a426978ab7bd40e5fa9eb2d99e569422a2e 10-Sep-2013 Chet Haase <chet@google.com> Merge "Add updateListener to ViewPropertyAnimator" into klp-dev
d94b1e11b94b599a70e4a8cf738a9f62b7d67e36 09-Sep-2013 Chet Haase <chet@google.com> Merge "Show view overlays in hierarchyviewer" into klp-dev
3bbd3aea604e6132c95a2f1f6e10c993ecc70d8b 09-Sep-2013 Svetoslav Ganov <svetoslavganov@google.com> Merge "AccessibilityNodeInfo incorrectly cloned." into klp-dev
6685f1bacead5f765c71a49f5cf0dc88750344d5 09-Sep-2013 Svetoslav Ganov <svetoslavganov@google.com> AccessibilityNodeInfo incorrectly cloned.

The code that creates a clone of an AccessibilityNodeInfo was not cloning
the extension objects (CollectionInfo, CollectionItemInfo, and RangeInfo)
and as a result if the original accessibility node info is recycled the
extension objects of the clone are also recycled and now if one tries to
recycle the clone gets an exception that the extension objects are already
recycled. Fun!

bug:10642952

Change-Id: I84192466bff0e865de04b79079e6ceecdffb37a6
ccessibility/AccessibilityNodeInfo.java
013634cc44d62fe90cd3e80a7530cffdc79f9715 09-Sep-2013 Alan Viverette <alanv@google.com> Merge "Add WebVTT caption renderer" into klp-dev
87f4ae67c86c7044253b3e1bcec6956a8c8bf017 07-Sep-2013 Chet Haase <chet@google.com> Add updateListener to ViewPropertyAnimator

New method setUpdateListener() on ViewPropertyAnimator that will
send out update events to the provided listener.

Issue #10118113 Offer update listener on ViewPropertyAnimator

Change-Id: Ib9f8fc6dbbc3c1c58113246d9a3b01e7ac27b14c
iewPropertyAnimator.java
bbddd49d6dc1b72dc81d4bb0033dea578066853e 09-Sep-2013 Chet Haase <chet@google.com> Merge "Propagate pivot values of 0 to native layer" into klp-dev
183e2a351daa8071be69eacb514b9405193a7a35 11-Jun-2013 Chet Haase <chet@google.com> Propagate pivot values of 0 to native layer

Logic in pivotXY setters noops when the new value equals
the previous value. However, the initial value is "0" even
though we actually use a value of the view's midpoint by
default. If an app sets a new value of 0, we don't send it
down to the native layer because it's the same as the initial
value, even though we're actually using a midpoint value instead.
This causes a conflict between the matrix used for invalidations
(which use the actual values the app set) and the matrix used
for rendering (which uses the default midpoint values).

The fix is to make sure we send down the initial value, even when it
equals the default value, by checking to see whether this is the
first time we're setting the pivot.

Issue #9337635 Clipping and bad rendering of view corners when y pivot is set

Change-Id: I4aa20c4a3c9a866ca17df3e067232b832d0ef504
iew.java
edaf6af16a5c33557a9c4ed00f9bebdac0dd83aa 07-Sep-2013 Michael Wright <michaelwr@google.com> Merge "Remove tap to click from touch nav devices" into klp-dev
7b4f60deb2819496733c0c85c57c6236900fe0c2 07-Sep-2013 Michael Wright <michaelwr@google.com> Merge "Special case game controller fallback keys for Japan" into klp-dev
d43daf361e993457e64eeeddab6d1a0ebc828c99 06-Sep-2013 Alan Viverette <alanv@google.com> Add WebVTT caption renderer

Currently missing support for region anchor points, robust layout
when snapping to lines, and vertical text.

BUG: 10260603
Change-Id: I3463b4aa0039442159144e66922d67f5dfee58ed
ccessibility/CaptioningManager.java
b8b017cb6879352aee015ba24e9bfd05cc094e74 06-Sep-2013 Adam Powell <adamp@google.com> Merge "Add a minimum timeout for double-tap in GestureDetector" into klp-dev
68bf5bd3858684dbaa79f265943d7adaba982e85 06-Sep-2013 Chet Haase <chet@google.com> Show view overlays in hierarchyviewer

ViewOverlays can hold Drawables and Views. But none of these things
show up in hierarchyviewer, so what you see on the screen is not necessarily
what you see in hierarchyviewer.

This CL adds logic to ViewDebug to enable these views/drawables to be displayed.

Issue #8943158 plumb overlay views through into hierarchy viewer

Change-Id: I020e85530a68390b37986269fa3e9e7e43725bab
iew.java
iewDebug.java
af1785f0b54bff4fcc6218619e34b9861e129cb9 05-Sep-2013 Adam Powell <adamp@google.com> Add a minimum timeout for double-tap in GestureDetector

Prevent noisy falsing. Minimum timeout is currently 40ms and can be
tuned for later. Consider un-hiding the ViewConfiguration query method
later.

Bug 10476944

Change-Id: Ib470735ec929b0b358fca4597e92dc81084e675f
estureDetector.java
iewConfiguration.java
a73c3a54886c302cc72e469d27603ef6bb92a6a1 05-Sep-2013 Adam Powell <adamp@google.com> Merge "Add View#cancelPendingInputEvents API" into klp-dev
e8222dddaf2e3da14380101e818d4254899e0c0d 05-Sep-2013 Chet Haase <chet@google.com> Change build version from KEY_LIME_PIE to KITKAT

Issue #10631619 Change build version to KitKat

Change-Id: I6ad13f6169ad74204078d36929479998b498ad8b
iew.java
iewParent.java
1487466dc2ce14cccf0ff2bd2f824238aaa0044e 19-Jul-2013 Adam Powell <adamp@google.com> Add View#cancelPendingInputEvents API

This API allows an application to cancel deferred high-level input
events already in flight. It forms one tool of several to help apps
debounce input events and prevent things like multiple startActivity
calls, FragmentTransactions, etc. from executing when only one was
desired since it's otherwise not desirable for things like click
events to fire synchronously.

Change-Id: I60b12cd5350898065f0019d616e24d779eb8cff9
iew.java
iewGroup.java
d82c8ac4db7091d2e976af4c89a1734465d20cd2 26-Aug-2013 Chet Haase <chet@google.com> Transition API changes from API council recommendations

Issue #10460684 KLP API Review: android.view.transition and android.animation
Issue #10570740 Transitions: inflate transition targets from xml

Change-Id: I7a3f6d3aece2fcafc5efd555d033f79e86635c98
iew.java
ransition/AutoTransition.java
ransition/Crossfade.java
ransition/Fade.java
ransition/Move.java
ransition/Recolor.java
ransition/Rotate.java
ransition/Scene.java
ransition/Slide.java
ransition/TextChange.java
ransition/Transition.java
ransition/TransitionGroup.java
ransition/TransitionInflater.java
ransition/TransitionManager.java
ransition/TransitionValues.java
ransition/TransitionValuesMaps.java
ransition/Visibility.java
ransition/package.html
cb039124c145f95bd46fa6c84b585fbad88cf036 04-Sep-2013 Romain Guy <romainguy@google.com> Merge "Don't draw with invalid display lists Bug #10301674" into klp-dev
f66645671f9c3d8e621296e11fd65941c22f057f 04-Sep-2013 Romain Guy <romainguy@google.com> Don't draw with invalid display lists
Bug #10301674

Change-Id: I900322dcb9b53f0eb82741c94d4ab1eaf939259e
iewRootImpl.java
5f25f7c37390e407b5c3d8545c5d6e0ef03b753a 04-Sep-2013 Chet Haase <chet@google.com> Merge "Perform layout and invalidation after bringChildToFront()" into klp-dev
cb96db8d144a01aa41ec396247c548d8aa496131 04-Sep-2013 Chet Haase <chet@google.com> Perform layout and invalidation after bringChildToFront()

Previously, calls to ViewGroup.bringChildToFront() or View.bringToFront()
would need to be followed by calls to requestLayout() and invalidate()
to force the container to redraw with the new child ordering. This
change calls requestLayout() and invalidate() automatically.

Issue #8667065 bringtoTop does not work

Change-Id: Id37ce7a64dead82119e49f7a1b28385cf0d1f20d
iew.java
iewGroup.java
iewParent.java
703b34bb13e009b8d82f96f17626f806007bd042 04-Sep-2013 Scott Main <smain@google.com> am f579f134: am e0718c04: am 605d56c0: Merge "clarify javadoc for constructors. bug: 10563421" into jb-mr2-docs

* commit 'f579f134ee9495571899be958983a1a242457603':
clarify javadoc for constructors. bug: 10563421
f579f134ee9495571899be958983a1a242457603 04-Sep-2013 Scott Main <smain@google.com> am e0718c04: am 605d56c0: Merge "clarify javadoc for constructors. bug: 10563421" into jb-mr2-docs

* commit 'e0718c044bc81db0334f2973b9884b968c18ce07':
clarify javadoc for constructors. bug: 10563421
3e8105e212e65005c0ef0ecc345b47eb0bf129bd 03-Sep-2013 Romain Guy <romainguy@google.com> Merge "Update Bitmap.Config.ARGB_4444 documentation Bug #10510122" into klp-dev
10fac45b6f620ac2ef242e983c3b4d6ad85eb223 03-Sep-2013 Michael Wright <michaelwr@google.com> Clarify InputDevice#getControllerNumber documentation

Bug: 10461158
Change-Id: I7a4e6e3eb09daa48ed72d2acf9638d8cf54d86ef
nputDevice.java
25ba1c86945a441428194d9ebcabbf31be75a45a 03-Sep-2013 Romain Guy <romainguy@google.com> Update Bitmap.Config.ARGB_4444 documentation
Bug #10510122

ARGB_4444 is deprecated and always replaced with ARGB_8888.

Change-Id: I0da96216af701a7df00ad35913066fbfa997d790
iew.java
510caf30d2f7b240ee0cb470f52299af8576ea8d 03-Sep-2013 Mindy Pereira <mindyp@google.com> Merge "Add doubletap swipe to scalegesturedetector" into klp-dev
f272446372b865e315240bce50853769d77fa939 02-Sep-2013 satok <satok@google.com> Merge "Improve the API document for supportsSwitchingToNextInputMethod" into klp-dev
083199efed839274619eb7a003a7d7c9229e5ffc 30-Aug-2013 Alan Viverette <alanv@google.com> Merge "Update captioning APIs" into klp-dev
c27ea258d2790f3f38bfc64c90f32fe0cbcc35a7 30-Aug-2013 Scott Main <smain@google.com> clarify javadoc for constructors.
bug: 10563421

Change-Id: Ifa898005a13f987e4de07d1a34cb3b289d533256
estureDetector.java
e8ce8ba2b5633e479ccaa82d8e3147ccbba62961 22-Aug-2013 Mindy Pereira <mindyp@google.com> Add doubletap swipe to scalegesturedetector

Change-Id: I070b09ed7295e0c3e07c6dffcdaba20226f7c2a3
caleGestureDetector.java
88d7f7992553dde4d140325b306ac9d8f43b9387 28-Aug-2013 Michael Wright <michaelwr@google.com> Remove tap to click from touch nav devices

Bug: 10508608
Change-Id: I842a181e847af41b8401dd9dd7aed3f6af556a39
iewRootImpl.java
69ce69b0e1500bcf0bfa87eaf0b89ae47f552f5c 29-Aug-2013 Alan Viverette <alanv@google.com> Update captioning APIs

CaptioningManager is now a first-class service in Context and can
have listeners added to it to monitor changes.

BUG: 10260603, 10461210
Change-Id: I2df5b2997537bb343d902b7ace3343ad483f3717
ccessibility/CaptioningManager.java
b432ca60c6c7af42989db28594137f6fe1e888b4 29-Aug-2013 Alan Viverette <alanv@google.com> Merge "Fix documentation regarding defStyle in View constructor" into klp-dev
ab8fe692961bb3bf71169fd7a43aff4de837ab26 29-Aug-2013 John Spurlock <jspurlock@google.com> Merge "Rename hideybars constant to SYSTEM_UI_FLAG_IMMERSIVE." into klp-dev
fb410d219fae2e07a6be3c7365bedc3e11c96f6c 29-Aug-2013 Alan Viverette <alanv@google.com> Fix documentation regarding defStyle in View constructor

BUG: 8912583
Change-Id: Ib8b1f8baa4ee98aae0e66edc547ab014b2401415
iew.java
52485b0b7ef066241371393dc6060bccd090a222 29-Aug-2013 Chet Haase <chet@google.com> Merge "Better transition interruption and TextChange fixes" into klp-dev
af78bdd615ecd5ce9d41a6160ce9f53fa269b119 28-Aug-2013 Chet Haase <chet@google.com> Better transition interruption and TextChange fixes

Previously, the TextChange transition didn't handle interruption/
cancellation at all, which made it problematic to use in any real
situation where a transition might get interrupted mid-animation.
Also, the way that it side-effected the text of TextView objects caused
errors in the UI when the transition was interrupted, because it would
not clean up after itself properly as new transitions queried the
current state of the UI.

Also, the prior cancellation logic for all transitions was not quite
correct; we were pausing transitions but resuming the animations, making it
tricky to write transitions that would restore state correctly.

Change-Id: I5a9f3c915e9834ec59ce1e1c3c96a88d11e4aa1b
ransition/Move.java
ransition/TextChange.java
ransition/Transition.java
ransition/TransitionManager.java
ransition/Visibility.java
3d1b3cb9d9ea206d4244ed369224faf4d859973e 28-Aug-2013 Alan Viverette <alanv@google.com> Merge "Add documentation to onTouchEvent for accessibility" into klp-dev
f1c3f28eb9e87ddc6b5a3fdc5a3553b8134aff61 27-Aug-2013 Chet Haase <chet@google.com> Merge "Fix NPE when setting new LayoutTransition" into klp-dev
fee6f2b3d30fe222486a70a773683e21d9dd12bf 27-Aug-2013 Chet Haase <chet@google.com> Fix NPE when setting new LayoutTransition

ViewGroup.setLayoutTransition() has logic to cancel a previously-running
transition and remove the ViewGroup's listener from that transition. However,
it is possible for the transition to be set to null on the ViewGroup on the
cancel() call, making the next call to remove the listener crash with an NPE.

The fix is to use a temporary variable to hold the old reference and
not depend on the class instance variable remaining valid/non-null across
the call to cancel().

Issue #10488932 Hangout NPE in ViewGroup.setLayoutTransition on initiating a new conversation
Issue #10509201 ViewGroup.setLayoutTransition(null) causes crash when being called in LayoutTransition.TransitionListener.endTransition()

Change-Id: I7c181b79e6601024c93a8dc246d32b751f78b216
iewGroup.java
e47193d8e1795f334bcb29819a571f08bb742c68 27-Aug-2013 John Spurlock <jspurlock@google.com> Rename hideybars constant to SYSTEM_UI_FLAG_IMMERSIVE.

And add more colour to the docs.

Bug:10460791
Change-Id: I703d927101bb034ba6dd061e6afd3e1946440fe5
iew.java
6b8c69edd210ad86eb659e06681422bb29ba2123 27-Aug-2013 Svetoslav Ganov <svetoslavganov@google.com> Merge "Update AccessibilityNodeInfo API as per API council request" into klp-dev
cb8ed39b3fb591be60b9fb1799d4ea4530eab758 24-Aug-2013 Svetoslav Ganov <svetoslavganov@google.com> Update AccessibilityNodeInfo API as per API council request

bug:10461302

Change-Id: I9709a271ab3720e064b98c79c0950d811fe37b73
ccessibility/AccessibilityNodeInfo.java
15ab6b016c0cabda502c97d248b45f5c617f0428 26-Aug-2013 satok <satok@google.com> Improve the API document for supportsSwitchingToNextInputMethod

Bug: 10461455
Change-Id: I0d3c5d3cd40f7ad057970fddd141bfd838e246f4
nputmethod/InputMethodManager.java
be6cf71dc52ce2fdecc5d432abf1b30a1c62e376 27-Aug-2013 Chet Haase <chet@google.com> Merge "Tweak visibility logic for inflated view scenarios" into klp-dev
35a457a3bac0851a1fabd6cda58d1ea67f997b33 26-Aug-2013 Chet Haase <chet@google.com> Tweak visibility logic for inflated view scenarios

Previously, Visibility would determine whether a given view was
worthy of a transition by checking the visibility of that view's
parent hierarchy. This is done to avoid fading every view in
a hierarchy when only the top-most node should be faded.

However, the logic was flawed because it assumed the end scene
parent was stable between scenes, which is not the case with inflated
layout scenes, in which the parent views are not the same, even though they
may represent the same parents (via ids).

The new approach is to check information on both the start and end scene
parents, and to take ids into account when checking the state of these
parents in the start/end scenes. Also, avoid this logic altogether if the
transition is targeted at specific views (don't bother checking the
parents if the transition was told to fade specific views).

Issue #10442447 Transitions: Fades don't happen correctly in some situations

Change-Id: Icea24b892f2eff2d37c6436ccfe4e288aac84178
ransition/Visibility.java
3c6e8f43b43b0f493d5a589adb2cf60f09a6da4b 27-Aug-2013 Alan Viverette <alanv@google.com> Add documentation to onTouchEvent for accessibility

BUG: 10429918
Change-Id: I2e2826601ba1560186e19f15928de41674a72505
iew.java
0da4a282eec40364d54f9e658632c5aab85142b7 26-Aug-2013 Adam Powell <adamp@google.com> Expand documentation around ViewParent#childHasTransientStateChanged

Bug 10461020

Change-Id: Id27df5de171b01effae949bcb1ce69bd4101b5ee
iewParent.java
aad44178685c1e31a8fa1519edd561b043b7c886 26-Aug-2013 Alan Viverette <alanv@google.com> Merge "Use transient state to preserve accessibility focus in ListView" into klp-dev
4567e40eb04589d211af82f2dcb16cb3955c605e 17-Aug-2013 Michael Wright <michaelwr@google.com> Special case game controller fallback keys for Japan

Bug: 10306633
Change-Id: I647fc5286678ddd85599a00e68e2fd70c2c3db49
iewRootImpl.java
b77edbfdab54531023c8bbea7d89b6cefc42096c 22-Aug-2013 John Spurlock <jspurlock@google.com> Improve transparent bar transitions.

1. Migrate transparent transitions to the new optimized
background color animations.

2. Ensure sysui animation transparent -> opaque has enough
time to run before window manager crops off the content area.

3. Lose the individual alpha on each status bar icon if the bars
are not opaque. Animate the alpha if visible, make sure they
play together.

4. Documentation typo fix found in AnimatorSet.

Bug:10344949
Change-Id: I615668ce3c552d3df15dbba5cdeeca67549a0220
nimation/AnimationSet.java
d866f5002aef29de5cde0e3b5e84ed3992214916 23-Aug-2013 Satoshi Kataoka <satok@google.com> Merge "Add new API shouldOfferSwitchingToNextInputMethod" into klp-dev
8e3a41738fba4883f9951406f334567f621db102 22-Aug-2013 Michael Wright <michaelwr@google.com> Merge "Expose API to query devices for supported keys" into klp-dev
6820751c0ad396328da39adfb3756ffc838c0cc7 22-Aug-2013 Alan Viverette <alanv@google.com> Use transient state to preserve accessibility focus in ListView

Removes several stray calls to clearAccessibilityFocus() that were
preventing temporarily detached views from retaining accessibility
focus.

BUG: 10089858
Change-Id: Ieb88a6cd14fe1069ebeeb78bc0edba7a10131f5b
iew.java
2b10b52f6c08eb79f48f7388e2f1c69f58a9c96d 21-Aug-2013 Satoshi Kataoka <satok@google.com> Add new API shouldOfferSwitchingToNextInputMethod

Bug: 8364845
Change-Id: I6767f5640a07aa515a930645b0cf0b36fbe94831
nputmethod/InputMethodManager.java
5a284c42087104ffe56619b204b9936cd2c345c7 21-Aug-2013 Chet Haase <chet@google.com> Merge "Cancel running LayoutTransition before removing it from a container" into klp-dev
ef3cbfd4c42719d3e4feabb74c08f0311066c194 21-Aug-2013 Chet Haase <chet@google.com> Cancel running LayoutTransition before removing it from a container

Previously, setting a new LayoutTransition object on a container would
not do anything to the old transition object (if it existed). This means
that the previous transition could be mid-flight, changing stuff in that
container, and would continue doing so even after it was removed.
This could cause artifacts like that in the bug below where views
that are fading out would be put in the containers "disappearing children"
list for the duration of the fade... and then would never be removed from
that list because the container was no longer connected to that transition.
This caused items to stay visible even after they were removed from
their parent containers.

Issue #10119571 LayoutTransitions sometimes does not honor view's visibility

Change-Id: I3efa4065e47fa97c4dd90410bbc1a0273c2b8079
iewGroup.java
dc70afaeabd7acacc07e8852b15cc820cd07531c 21-Aug-2013 Chris Craik <ccraik@google.com> Merge "Add inPremutiplied option to BitmapFactory.Options, functionality in Bitmap" into klp-dev
b06b8b02674bb6d93f10a5c512aad8694867aa5c 21-Aug-2013 John Spurlock <jspurlock@google.com> Merge "Improve transient bar transitions." into klp-dev
1abf5d62429e5a9329520b2f7c2b5a5e7a8e72ec 16-Aug-2013 Chris Craik <ccraik@google.com> Add inPremutiplied option to BitmapFactory.Options, functionality in Bitmap

bug:2248948

Change-Id: I8fdd649332667598504a1076d5a447572bd53086
LES20Canvas.java
59210de17c840bb60fc1c623250df8f39ebba132 20-Aug-2013 Andy McFadden <fadden@android.com> Merge "Avoid crashing in unlockCanvasAndPost" into klp-dev
5b9145bf990a9bbf4fdef1739e61ff8c70ec868f 20-Aug-2013 John Spurlock <jspurlock@google.com> Improve transient bar transitions.

1. If app clears transient flag w/ a gesture, the touch-outside
listener would always win, causing an unsightly hide + immediate
reshow. Instead, give the app some time to clear the flag, then
perform a smooth transition in place.

2. When the transient bars are hidden, we do not know ahead of time
which background will be used on reshow (if transient bars are
revealed, the background is semi-transparent, if transient bars
are cleared, the background is opaque). Window manager is responsible
for showing windows, but sysui is responsible for setting the view
background. Therefore, we need some level of coordination between
the two in this case. Introduce two new non-public sysui flags
that represent the window manager's request to reshow the hidden
bars, but do not reshow until sysui acknowledges (by clearing the flag).
This gives sysui whatever time is necessary to prepare itself for
reshow, avoiding unsightly blip from opaque -> transparent during
the enter animation.

3. When both system bars are hidden, any low-profile changes are
moot. Avoid unsightly low-profile animations during bar reshow
by suppressing the flag in this case.

4. Improve transient bar home -> launcher transition by cancelling
the -> opaque animation. This also fixes a bug where hitting
home from the transient bar would leave you with a semi-transparent
bar in a non-transient state.

Bug:10284800
Change-Id: I238210561d8d5f70c1a517283b986c9105a1ec75
iew.java
ed55c8db1c0d47492423fc54f4b0dd5cd585e593 20-Aug-2013 Andy McFadden <fadden@android.com> Avoid crashing in unlockCanvasAndPost

It's possible to update the native surface pointer while the
surface is locked (via lockCanvas). This leads to a surprise when
the surface is unlocked. Avoid the surprise by tracking the
locked surface separately.

Bug 10289713

Change-Id: I84346c952be859bbd91ceae7df07b91dabe0948e
urface.java
b7b2d4b490f5dd672e0b00ced579dc052e3637e9 20-Aug-2013 Michael Wright <michaelwr@google.com> Expose API to query devices for supported keys

Change-Id: I29f230e19c6f851b4b72b2fc8dd41f5abcba4631
nputDevice.java
007751276c210c39bd405ae9fa69854e67e80951 20-Aug-2013 Craig Mautner <cmautner@google.com> Merge "Notify ViewRootImpl when it's safe to modify Canvas." into klp-dev
bc57cd1b248bf23e443581f9fe44167c94699ce8 20-Aug-2013 Craig Mautner <cmautner@google.com> Notify ViewRootImpl when it's safe to modify Canvas.

When Activity.convert{To|From}Translucent() is called the
ViewRootImpl is now notified when it is safe to convert the Canvas
from translucent to opaque and back to translucent. This will make
it possible to save resources when compositing opaque layers.

Fixes bug 10349536.

Change-Id: I7282aee1d54601fb00611d20be204bf164d873f6
iewRootImpl.java
indowManagerGlobal.java
92d2a318074d8c5400d93bccfa6c5282125401ee 19-Aug-2013 Alan Viverette <alanv@google.com> Merge "Remove duplicate sealed node checks, add missing checks" into klp-dev
df39cb9b05a223f24b43c783574abbe67d643fdb 19-Aug-2013 Alan Viverette <alanv@google.com> Remove duplicate sealed node checks, add missing checks

Change-Id: Icbe79ba4b74776f845b43f261624d0dbeda4250b
ccessibility/AccessibilityNodeInfo.java
77b2a86144365ce3dee557b5c444075c0e0a4033 17-Aug-2013 Alan Viverette <alanv@google.com> Merge "Fix padding resolution" into klp-dev
83aec80fb49000b2f32268590de5971c055febe9 17-Aug-2013 Romain Guy <romainguy@google.com> Merge "Fix hardware layers lifecycle Bug #10075732" into klp-dev
46bfc4811094e5b1e3196246e457d4c6b58332ec 17-Aug-2013 Romain Guy <romainguy@google.com> Fix hardware layers lifecycle
Bug #10075732

Hardware layers could survive across EGL terminate events.

Change-Id: Ie8565d55cb29fe6625fa1584d695edfecd37ab5e
isplayList.java
LES20DisplayList.java
LES20Layer.java
iew.java
iewRootImpl.java
indowManagerGlobal.java
7b1a6f76de4470f6ad7ca7ec49cde50b1cf962ad 17-Aug-2013 Alan Viverette <alanv@google.com> Fix padding resolution

BUG: 10361243
Change-Id: I61b03c08b45ca9c921bf787274bdbb3f174bbc7e
iew.java
199acdfcc98e852975dd7edfbcb822ba5e73146f 25-Jul-2013 Chet Haase <chet@google.com> Better Transition interruption

Previously, a running transition on a scene root would simply
be canceled when a new transition was started. This would result in
abrupt scene changes, especially in generic use cases where apps/widgets
would spawn multiple transitions in successive rendering frames due to
small changes in view properties.

The new approach is to check all running animations against new transitions.
If there are overlapping properties that are being set to different values,
the new animations win and the old ones are canceled. If the end values are the
same, the new animations are noop'd and the old ones are allowed to continue
as-is.

There was also improvement to capturing state while other transitions are
running, necessary in this new world where old transitions are allowed to
continue running. Now, transitions are pause()'d while values are captured,
then resume()'d after capturing is done. This allows the system to see what the
real view properties are, instead of the mid-animation values.

Change-Id: I8e77fb9c1967087a682bb26a45763005f5ca9179
iewGroup.java
ransition/Fade.java
ransition/Move.java
ransition/Transition.java
ransition/TransitionGroup.java
ransition/TransitionManager.java
ransition/Visibility.java
69da2690e5a990987adba8f68dcf3d8a17d1a0fc 15-Aug-2013 Satoshi Kataoka <satok@google.com> Add an API supportsSwitchingToNextInput

To let the system know an IME supports switching to a next input method

Bug: 8364845
Change-Id: Iabf4f106893ee6a262ad0cd44dbec0c661bf0ff2
nputmethod/InputMethodInfo.java
70e907f51f75bf8d481e11e0d6411e2974b83b06 15-Aug-2013 Alan Viverette <alanv@google.com> Merge "Prevent refocus after entering touch mode" into klp-dev
76e696f6d288babc20fcb1eb7e1d6e720e651924 15-Aug-2013 Alan Viverette <alanv@google.com> Merge "Add motion event forwarding hidden APIs to View" into klp-dev
6fb3b9eb28fad2447d8231356ee557b428ac55e5 14-Aug-2013 Alan Viverette <alanv@google.com> Add motion event forwarding hidden APIs to View

Change-Id: Ia7ab5496f8064c96b34912b5f5e9af6fd0978b34
iew.java
973f3b4ebf79c8ce9233e2320d13c2b92d420f93 14-Aug-2013 Alan Viverette <alanv@google.com> Prevent refocus after entering touch mode

BUG: 10210009
Change-Id: I9a5d7016728cc7d1fb1c759708b6df41c81865bb
iew.java
iewRootImpl.java
7facd7f6f1e81bbf1847296163cdbd1e8ec08080 13-Aug-2013 John Spurlock <jspurlock@google.com> Sysui flag-related doc fixes.

Add new flags to existing flag listings, fix a broken @link, and
tweak wording.

Change-Id: Iebc4f5fc1c6fc3f8685c6252f88d8044fe08b79d
iew.java
51b4a40ef505962becb450f9f1b3170b11082dcb 13-Aug-2013 Michael Wright <michaelwr@google.com> Merge "Expose vendor and product IDs for InputDevices" into klp-dev
54e56946d1aa3586e7b27fb63dfb7d3c1238c61d 13-Aug-2013 Michael Wright <michaelwr@google.com> Expose vendor and product IDs for InputDevices

Change-Id: I08665a41e474cbedd10b342eeae20d2ca7c03ac0
nputDevice.java
2b2d313e865e8aae3296257ed852374b15fa05ad 10-Aug-2013 Chet Haase <chet@google.com> Merge "Reduce amount of invalidation when old-style animations are running" into klp-dev
2632b5d0d2c307f28bd3416ca6414d6cc1e2ffdc 08-Aug-2013 Chet Haase <chet@google.com> Reduce amount of invalidation when old-style animations are running

Previously, old animations (view.animation.*) would cause invalidations on
both the area of the child view and then the entire parent area. There's no
reason for the second invalidation; only the child area need be redrawn.

Issue #10229470 Old animation code in View.draw() may be invalidating too much

Change-Id: I4d0d16321e20b2f34dc579eacf5d3841aed33d6d
iew.java
f6c7a5fd6680d74972738e60ad5c9cf34bfc43ef 09-Aug-2013 keunyoung <keunyoung@google.com> Merge "add local focus mode and input event injection API to Window" into klp-dev
be11c364e77a9d805cde9bfe5530cbc7b2afd3aa 09-Aug-2013 Alan Viverette <alanv@google.com> Merge "Fix padding adjustment for scrollbars in View, FastScroller" into klp-dev
26bb253b4001b7d4d876656b0c6bd11b6aab4131 09-Aug-2013 Alan Viverette <alanv@google.com> Fix padding adjustment for scrollbars in View, FastScroller

BUG: 10224791,10248282
Change-Id: Ia89d2cbea163b7cad567ea37161552c1cfd66045
iew.java
30f420fd6a74ffa28b351b4aba74d44f5ea48dda 02-Aug-2013 keunyoung <keunyoung@google.com> add local focus mode and input event injection API to Window

- This enables keyboard navigation for window without focus.
- FLAG_LOCAL_FOCUS_MODE puts window into local focus mode.
- Application needs to put window in local focus mode, control focus, and
inject events to make dpad navigation work.
- Window in local focus mode does not interact with window manager or ime
regarding focus related events.
- Also renamed ViewRootImpl.dispatchKey to dispatchInputEvent to allow both key and touch events injection.

Change-Id: I8e8561f29e0dade3797fb7ae3ee7690e6b7f8895
iewRootImpl.java
indow.java
indowManager.java
4155e2e175d73bb98b13ecb2fbbe6a6dffe28fe5 09-Aug-2013 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #10210182 CTS: android.widget.cts.TextViewTest#testDrawableResolution is failing on KLP

This issue has been actually revealed by a fix for bug #7034321 (Need Drawable RTL support)
where I identified an issue with Drawables resolution in TextView (was missing a call to
resetResolvedDrawables() and resolveDrawables()).

- add missing resetResolvedDrawables() and resolveDrawables() in TextView.setRelativeDrawablesIfNeeded()
- fix View.resolveDrawables():

this was a bit trycky as View.resolveDrawables() was wrongly supposing that the layout direction was
resolved and it could access View.getLayoutDirection() and could position the PFLAG2_DRAWABLE_RESOLVED
bit.

Dont forget that resolution of RTL properties (layoutDirection, Drawables ...) is happening in
View.measure() but in our case (TexView constructor) we still need to resolve the Drawables.

So now, be sure that we cannot resolve the Drawable if layout direction has not being resolved and the
raw layout direction is LAYOUT_DIRECTION_INHERIT.

But we can also "cheat" if the raw layout direction is LAYOUT_DIRECTION_LTR or LAYOUT_DIRECTION_RTL
or LAYOUT_DIRECTION_LOCALE as its resolution will give the same value :-)

Change-Id: I7a242d918697e1e1c2febf229e8edf1866b855be
iew.java
6a6bc216d15293886ad088bb0ca99aadb7df85dc 08-Aug-2013 Jesse Hall <jessehall@google.com> Use new ISurfaceComposer::destroyDisplay method

Bug: 10191053
Change-Id: I3ecc6880db4a4c77c6db4e8b50faa9b4021d17c6
urfaceControl.java
b3c21ac7c661022534135bf688a75ec35fe3a8f2 07-Aug-2013 Satoshi Kataoka <satok@google.com> Reduce the transaction fee of getEnabledInputMethodSubtypeList

Bug: 8467480
Change-Id: If18cce8fbe567df51f29adcdcedff3f743460b8b
nputmethod/InputMethodManager.java
cb883303f97a8c08d53d972792630ca9bad94d65 08-Aug-2013 Romain Guy <romainguy@google.com> Only destroy remote graphic buffers
Bug #9795157

Change-Id: Ia7a39d3ef40994fede185482a5b4ca5500249b34
ardwareRenderer.java
c3a1914bd777575cee1917d99d14f05bfd128717 07-Aug-2013 Ken Wakasa <kwakasa@google.com> Revert "Reduce the transaction fee of getEnabledInputMethodSubtypeList"

This reverts commit e9a6f9713ca48aab9a6c87e0645cb0a0af946a11.

Change-Id: I611d31086d4f02aae5c7021ac92975bd92a59f34
nputmethod/InputMethodManager.java
e9a6f9713ca48aab9a6c87e0645cb0a0af946a11 07-Aug-2013 Satoshi Kataoka <satok@google.com> Reduce the transaction fee of getEnabledInputMethodSubtypeList

Bug: 8467480
Change-Id: Ic1fddfe433e097041fcb09d1fd341d77d7d8b13b
nputmethod/InputMethodManager.java
166bc5b664b28f93c8bcf74f4b3abb8a82e44dbc 07-Aug-2013 John Spurlock <jspurlock@google.com> Merge "Introduce new transparent bars sysui flags."
52a9a10b6b8c7b7a9f97777541841b94d4fd9754 02-Aug-2013 Mathias Agopian <mathias@google.com> Clearly separate consumer and producer interfaces

Bug: 9265647
Change-Id: Ic68e91788d0a05251e1d2fb9f9d4de403c7099bf
extureView.java
e1f366faf8691f0dacde1dad35b28fcc37120776 05-Aug-2013 John Spurlock <jspurlock@google.com> Introduce new transparent bars sysui flags.

Two new public sysui flags for views to request transparent
bars:
View.SYSTEM_UI_FLAG_TRANSPARENT_STATUS
View.SYSTEM_UI_FLAG_TRANSPARENT_NAVIGATION

This first change simply introduces the flags at the framework
level, and makes the requisite layout tweaks to WM.

As part of this change, expunge the term "hideybars" from the
codebase. The flag to declare support for transient bars is called:
View.SYSTEM_UI_FLAG_ALLOW_TRANSIENT

Final visuals/transitions between opaque/transparent bars will be
done as a subsequent change. Right now the transparent style is
identical to the transient bars.

Change-Id: I5ead9c5e7b77f212df5b2a5f6e770596cd2226f3
iew.java
2191a0c8570b518c8a62e2a7c5e03a5b32ce0aa0 05-Aug-2013 Alan Viverette <alanv@google.com> Merge "Move caption style to its own class, add presets"
5c7132560aac40f291726095b761a0c46ee32b09 04-Aug-2013 Craig Mautner <cmautner@google.com> Merge "Add force default orientation."
7d00affce6e25b22fd8fc135933b3bf6b547a0dc 03-Aug-2013 Jeff Brown <jeffbrown@google.com> Support public virtual displays.

Refactor the new private virtual display API to also support
creating public virtual displays with various characteristics.
This feature requires special permissions and is only intended
for use by the system.

Change-Id: I44dd19f37cf76ea6d6e313afe42f4a412bd96663
isplay.java
isplayInfo.java
43a1e3d319d77c251445339bcc8f82c82b097fee 03-Aug-2013 Alan Viverette <alanv@google.com> Move caption style to its own class, add presets

BUG: 9926077
Change-Id: I14e809c5a95103e57d30f4273399e9914af52b56
ccessibility/CaptioningManager.java
ccessibility/CaptioningPreferences.java
46ac6fa614131d567bed93d1d2067d765ecef85d 01-Aug-2013 Craig Mautner <cmautner@google.com> Add force default orientation.

Devices can be configured to remain in their default landscape or
portrait orientation by setting config_forceDefaultOrientation true
in overlay/.../values/config.xml.

Activities that desire to run in the non-default orientation are
supported by creating a logical display within the physical display.
Transitions to and from the activity perform a crossfade rather than
the normal rotation animation.

Also, improve SurfaceTrace debug output.

Fixes bug 9695710.

Change-Id: I053e136cd2b9ae200028595f245b6ada5927cfe9
indowManagerPolicy.java
1a4645d03087e743a4704c1b5a51a9ab787bbcab 02-Aug-2013 Satoshi Kataoka <satok@google.com> Merge "Small cleanup on InputMethodInfo"
660e6c96e3133f28b1fe95902674ce34ca1a35eb 01-Aug-2013 Satoshi Kataoka <satok@google.com> Small cleanup on InputMethodInfo

Change-Id: I7879a8d9fe83fcd7362ecc4ab60460a3212ac8c4
nputmethod/InputMethodInfo.java
3f5a90b2fbba2a83a8a2c5babd5d466a5e0ad2aa 25-Jun-2013 Fabrice Di Meglio <fdimeglio@google.com> Add automatic Drawable mirroring capability when in RTL layout direction

- default value is "no mirroring"
- introduce android:autoMirrored as a new attribute for Drawable,
BitmapDrawable, LayerDrawable, StateListDrawable and NinePatchDrawable
- setting android:autoMirrored="true" means that the drawable will
be mirrored when the layout direction is RTL (right-to-left)
- also fix an issue with ImageView drawable layout direction not
updated correctly when RTL properties were changed

See bug #7034321 Need Drawable RTL support

Change-Id: If595ee5106c786f38e786d3a032e182f784a9d97
iew.java
dc8abf6cee0bcf44e2cad8155f0c151105d46471 12-Mar-2013 Satoshi Kataoka <satok@google.com> Cleanup InputMethodSubtype and add "isAsciiCapable".

Bug: 8364845
Change-Id: Ic3ace4b6e0432d56696bcbc0be336aec1dc744a5
nputmethod/InputMethodInfo.java
nputmethod/InputMethodSubtype.java
b63425e4e7269e5b3f40a895542528cc3905d2a1 26-Jul-2013 Chet Haase <chet@google.com> Merge "Fix lazy measure logic to not use obsolete values"
1f99240c64c80496af1817c2d07c85ca2fa21e0e 26-Jul-2013 Chet Haase <chet@android.com> am d766d71a: am d547bcec: Merge "Return the actual interpolator of the ViewPropertyAnimator"

* commit 'd766d71a4ccb2d2a6966b2319f272f64fdcbfa7d':
Return the actual interpolator of the ViewPropertyAnimator
deababcd53056bbe5cd586454e9cf50e03ab1b0f 26-Jul-2013 Chet Haase <chet@google.com> Fix lazy measure logic to not use obsolete values

Issue #10022821 Lazy measure broken

Change-Id: I618ed5e80291304b5430c853d51e70e09f057e4c
iew.java
d40acfb89e3222e8da516254341a9489de7fd07b 25-Jul-2013 Cyril Mottier <cyrilmottier@gmail.com> Return the actual interpolator of the ViewPropertyAnimator

The implementation of getInterpolator() was always returning null
(probably a quick copy-paste from the default Animator implementation).
This patch fixes the problem by returning the interpolator set by
setInterpolator(TimeInterpolator) or the default one if none has been
set yet.

This patch also avoid creating multiple instances of ValueAnimator in
order to retrieve some default values.

Change-Id: I8880f419f021a8b980fb32bebe927915fde19bf7
iewPropertyAnimator.java
ed7821a60ca80197384b2a4678b6c4ea307457e6 25-Jul-2013 Alan Viverette <alanv@google.com> Use clearFocus() when entering touch mode

Calling unFocus() leaves the view hierarchy in an inconsistent
state. This is okay in ViewGroup, where the state is manually
updated, but causes issues in ViewRootImpl.

BUG: 9983358
Change-Id: Id63e62962d895e6bd4f816f202dcf77254ceab4e
iew.java
iewRootImpl.java
87c79a18fe03de3b141b95336199b7504ac95c6c 24-Jul-2013 Alan Viverette <alanv@google.com> Merge "Add secure settings for captions"
ef79380d2f57f87c1f6859a6ec6ceb40bcb794ff 23-Jul-2013 Alan Viverette <alanv@google.com> Add secure settings for captions

BUG: 9926077
Change-Id: I202aef88943e1f884e5bd4c112f081b8b4b76ada
ccessibility/CaptioningPreferences.java
b1f5585f89c49690b1263daba419a394af58cc41 23-Jul-2013 Michael Wright <michaelwr@google.com> Merge "Add controller numbers for gamepads / joysticks"
ac6c78b6eef49f5c1ab2a346d90ccb99ccec18f4 17-Jul-2013 Michael Wright <michaelwr@google.com> Add controller numbers for gamepads / joysticks

Change-Id: I30ac9add6a2473a5ebd83a022c571545e61d1136
nputDevice.java
fa9a69805b001034aa04c3b33989a7ac21522371 28-Jun-2013 Jean-Michel Trivi <jmtrivi@google.com> Refactor for audio focus, remote control, media button handling

Extract audio focus, remote control and media button handling
outside of AudioService without any changes in functionality.
Moving logic to new class, MediaFocusControl.
Introduce interface for managing volum control logic, VolumeController.
The VolumePanel class implements this interface.

Change-Id: I72bda2e0670c26e61ff076fd729c15f9f1156dc5
olumePanel.java
d84feebba428d2f5adc021353ae24d3d2737220a 20-Jul-2013 Mathias Agopian <mathias@google.com> Merge "update to new Consumer APIs"
7a5480d6d74eb64a360ed20062c66926c9eef9bc 20-Jul-2013 Michael Wright <michaelwr@google.com> Merge "Debounce touch navigation taps and button presses"
acb837fe632b79d52af0c683957cee8b567be74a 20-Jul-2013 Craig Mautner <cmautner@google.com> Merge "Fix home activity and user switch interactions."
ac6f843c917b68ea8805711965b149a9338e3a0e 17-Jul-2013 Craig Mautner <cmautner@google.com> Fix home activity and user switch interactions.

- Make sure Home activity goes in the correct task and on the correct
stack.
- Do not allow different users to be in the same task.
- Do not set stacks aside for each user.

Fixes bug 9775492.

Change-Id: I0e7954e917aac8482a1015a36923e02914e2b692
WindowManager.aidl
25b0c3096131e532e57f5aac48769430dca42c75 10-Jul-2013 Michael Wright <michaelwr@google.com> Debounce touch navigation taps and button presses

Bug: 8990644
Change-Id: Ib4ef2e2ab699a109c12614c1d64e4b7e63b514b0
eyEvent.java
iew.java
iewRootImpl.java
7ddd11035b25b0a2dbf09f9d9efd3fca701f0a79 21-May-2013 Michael Wright <michaelwr@google.com> Add input device property for buttons under touchpads

Bug: 8990644
Change-Id: I2cc10457595a861b707c0394bd435d60efa8405b
nputDevice.java
7a46dde1ae56a85fcb5cdac91173424b6355bf3c 17-Jul-2013 Chet Haase <chet@google.com> Changed name of recent hasLayout() method to isLaidOut()

This new method on view reflects whether the view has been laid out
at least once since it was attached. hasLayout() seems too vague for that
meaning; every View that has a parent has a layout (since we use container,
parent, and layout interchangeably). The new version of the method
is closer to the actual meaning.

Change-Id: I519745739b6a6317faeb077aa61f994025cf81f3
iew.java
ransition/TransitionManager.java
e32632682ca9207bd247ca27012cf670b5c23f54 17-Jul-2013 Mathias Agopian <mathias@google.com> update to new Consumer APIs

Change-Id: I8649f3add40e0aeeeb0396b98e2cb93312e8e990
LES20TextureLayer.java
af093fd41438efd14e8aa55af79f853083dc9f07 17-Jul-2013 Romain Guy <romainguy@google.com> Merge "Skip unnecessary measurements when possible"
93c567cddc9354b33f66cb62d514386ac2e052b0 17-Jul-2013 Romain Guy <romainguy@google.com> Skip unnecessary measurements when possible

This change introduces a new measure cache to View, to remember
the measured dimensions for previous pairs of measure specs. The
measure cache is cleared whenever a View requests layout.

Unfortunately some Views rely on measure being always called when
layout is invoked. To work around this problem, we need to remember
when we hit the measure cache to force a call to measure just prior
to calling onLayout(). This does not completely removes all measure
calls but enough to optimize a number of layouts.

Change-Id: Ie085fbcf186e9d7505e1127e0786a12968ebc344
iew.java
775ffa78f3dc49506375de38480cee230542f112 17-Jul-2013 Romain Guy <romainguy@google.com> Merge "Fix crashes in setMatrix() and concat()"
4a83804ddf5bba806a660e94d7d98b3ad08ae79b 17-Jul-2013 Chet Haase <chet@google.com> Merge "Fix issues with delayed transitions"
c43524f3869cc0d36974fce61986017093f2ecd2 16-Jul-2013 Chet Haase <chet@google.com> Fix issues with delayed transitions

Previously, there were two distinct problems with how delayed
transitions were being run:
- there would be a delay between the transition being put into
a preDrawListener (to be kicked off when that listener fired) and
being removed from the pending list. This allowed another delayed
transition to be run in parallel, which would cause conflicting/
clobbering issues with transition values on the same objects.
- there would be an extra frame delay in some cases due to how/when the
delayed transition would be started. Specfically, we would postOnAnimation()
to call a method that would then add the onPreDraw listener. This two-step
forwarding caused issues noted above.

The fix is to simply add the transition to the preDrawListener immediately, removing
the two-step problem, and also ensuring that the transition is only removed
from the pending list when it is actually started, which prevents other transitions
from starting in the meantime.

Also, added more debug logging to help chase future issues with transitions.

Change-Id: Ie2ff8e73d29f342512842e9641bd8d605e74544c
ransition/Fade.java
ransition/Transition.java
ransition/TransitionManager.java
ransition/TransitionValues.java
4e7b772b733593fbe25c733e95b8dcea293234b6 16-Jul-2013 Romain Guy <romainguy@google.com> Fix crashes in setMatrix() and concat()

setMatrix() was crashing in native code, only with hw acceleration on.
concat() would throw a NullPointerException. It now ignores null matrices.

Change-Id: Iebd8b410a957d2ba501570c6fbb3f680ff4a1a23
LES20Canvas.java
fe4fb365baf73da6b34150eec97b5e2ee58905f4 16-Jul-2013 John Spurlock <jspurlock@google.com> Merge "Un@hide View.PRESSED_STATE_SET."
20555cb6455c790cdeff493edb239d2f7320eb98 16-Jul-2013 michaelwr <michaelwr@google.com> Merge "Add a keycode to switch audio tracks (1/2)"
f9d73e60166b7e35946ffb8c2de63142e73b5787 16-Jul-2013 Svetoslav <svetoslavganov@google.com> Merge "Fixing bugs discovered by the CTS tests."
8d820ecffdc853aab88cc85bb45bfe72dd2ad893 16-Jul-2013 Svetoslav <svetoslavganov@google.com> Fixing bugs discovered by the CTS tests.

1. Delayed accessibility events sent when a view subtree changes may be
be delivered after accessibility is disabled leading to a crash. It is
possible that accessibility was disabled while we were waiting for
the timeout before sending the event. Added a check before dispatching.

2. When refreshing a cached node the accessibility node info cache was
not using the correct bypass cache argument value and as result was
not getting the latest node but its cached value. We really want to
get the latest state to update the cache.

3. The debugging cache integrity verification logic was incorrectly
removing nodes from the cache while doing its work.

4. Removed the comments for some debug logging.

bug:9857067

Change-Id: I20ee1a6ffa65ad35457b51d3f2dc0bc5d8d784e6
iewRootImpl.java
ccessibility/AccessibilityNodeInfoCache.java
0a55c94730d1d9ff836330979533c2e6736d6116 15-Jul-2013 John Spurlock <jspurlock@google.com> Un@hide View.PRESSED_STATE_SET.

Looks like an oversight. The other state sets are public, and we
reference this one in the public docs.

Change-Id: I1c2d8bec3cb277ebfb55ccaacefab0cb38703177
iew.java
6098c5d3555860f272d8ddbd353a42f4c8474e1c 17-Jun-2013 John Spurlock <jspurlock@google.com> Docfixes in IBinder, Context, View, and Intent.

Fix links in @throws clauses, typos, redundant "returns"
and use @code for true + false in returns.

Change-Id: Ic3c4c75d6061732d997a386dc3232475c992c188
iew.java
e3d2cc8fcc4ab3df195071acf2f8709c148656f8 13-Jul-2013 keunyoung <keunyoung@google.com> fix build

Change-Id: Ife4a1e33df2e4a71edba7b29844a06138103440d
indowManager.java
27116e35e8f90f6641a027d190d47b183e01e44c 13-Jul-2013 keunyoung <keunyoung@google.com> Merge "add TYPE_PRIVATE_PRESENTATION window type"
da05cc2fac7e50d9e12807b30f8c606a6cd2575d 12-Jul-2013 Adam Powell <adamp@google.com> Merge "Tweak error fallback behavior for view direction resolution"
a446bf0e8c7b5f5441aeb11b359ba6776b9b3061 22-Jun-2013 keunyoung <keunyoung@google.com> add TYPE_PRIVATE_PRESENTATION window type

- This window type can be used for Presentation created on top of virtual
private display.
- There can be PRIVATE_PRESENTATION specific policy / behavior, but for now,
there is nothing special.

Change-Id: I9fde0f0376e57fcc60000d3a3f8657a21ef58993
indowManager.java
c81a8493884c7f432d6bd5b98aca3fbdc93b355b 12-Jul-2013 Chet Haase <chet@google.com> Fix minor transition bugs and add capabilities

Some view changes require more flexible transitions than the
defaults provided by Crossfade and TextChange - this change supplies some
of that flexibility.

Also, starting a new transition on a hierarchy undergoing a transition
caused the first to get canceled, then the start values to be retrieved.
The new transition should actually get the start values from the intermediate
state of the views, so we now cancel the previous transition only after the
start values have been captured.

Issue #9756349 Transitions: Crossfade does not handle interruption/reverse correctly
Issue #9295863 Transitions: Add behavior API/flags to various transitions
Issue #9275859 Transitions: Improve mechanism for transition interruption

Change-Id: I5a8c5a12466ddcab9e84e4880930563fa1216f3b
ransition/Crossfade.java
ransition/TextChange.java
ransition/Transition.java
ransition/TransitionManager.java
258f8de22c59f484ce97ae5e52b90c443c28ac39 12-Jul-2013 Adam Powell <adamp@google.com> Tweak error fallback behavior for view direction resolution

If the required ViewParent methods aren't present for resolving text
direction or alignment, mark them resolved with default results and
skip further resolution steps.

Change-Id: I0ea6b0ce968cc24ffed77a2d1e66dfafbec49f9c
iew.java
bfdad8ecad06f855c8facf72177b0f01919ff629 08-Jul-2013 Jaekyun Seok <jaekyun@google.com> Add a keycode to switch audio tracks (1/2)

A key to switch audio tracks is general on media devices like blu-ray.

Bug: 9728155
Change-Id: Ib61822b8aa9c143a8febc3cff4707fa775119448
eyEvent.java
504a10f2f5c7343c863d31490700620109deb7ae 12-Jul-2013 Adam Powell <adamp@google.com> Un-hide all ViewParent methods

Make it possible for code outside the framework to implement the
ViewParent interface.

Change-Id: Ic1b4eb15a4b3da1d16c92b59e039d89861d893e4
iew.java
iewGroup.java
iewParent.java
dc57d9dda559aaf06237b9124dc9ef27513bab31 10-Jul-2013 Chet Haase <chet@google.com> Fix minor transition bugs

TransitionGroup.setDuration() was not propagating the new duration to
future child transitions correctly.

Also, Fade should restore a fully-opaque value when a transition ends, to prevent
the problem of mid-stream canceled transitions causing vie3ws to get stuck with partially
faded-in alpha values.

Issue #9755995 Transitions: TransitionGroup.setDuration() not handled correctly
Issue #9756655 Transitions: handle fading cancelation better

Change-Id: Id44569c6f4152a26ee382d04c30a2f035a1ebcf3
ransition/Fade.java
ransition/TransitionGroup.java
b2ed04a68913f4d84d7cb7e979b6f0ae96f43058 10-Jul-2013 Romain Guy <romainguy@google.com> Unregister gralloc buffer immediately
Bug #9406765

Waiting for a GC to finalize the GraphicBuffer could cause ordering
issues

Change-Id: I7035a9eef52a6c3b44ab28f40a7b1fbdc83d2e20
raphicBuffer.java
ardwareRenderer.java
5bee57567b31305c8d43ec22b720f971331d734e 08-Jul-2013 Chris Craik <ccraik@google.com> Merge "Use global references for Bitmap AndroidPixelRefs"
0c20c3898a533b7b76f60827cb6ea02e17c5953d 02-Jul-2013 Chris Craik <ccraik@google.com> Use global references for Bitmap AndroidPixelRefs

bug:9621717

Because we're no longer holding onto Bitmaps Java side during
DisplayList lifetime, use global refs to keep the backing byte arrays
around.

Adds back bitmap buffer passing + native ref management removed by
3b748a44c6bd2ea05fe16839caf73dbe50bd7ae9

Adds back globalRef-ing removed by
f890fab5a6715548e520a6f010a3bfe7607ce56e

Change-Id: Ia59ba42f05bea6165aec2b800619221a8083d580
LES20Canvas.java
4f09d517c5e61d4dfd34b89a7949897c86853881 01-Jul-2013 Craig Mautner <cmautner@google.com> Remove debug logging.

Bug has been fixed.

Change-Id: Ifda11ac6e83012498855e0c7254c99491b128f04
iewRootImpl.java
indowManagerGlobal.java
a6471e88349a23ba7ff954536583f395348bdf8b 29-Jun-2013 Romain Guy <romainguy@google.com> Merge "Make sure textviews draw in layers"
21f4230274f858bf156441374f0bae84e7334d7a 29-Jun-2013 Romain Guy <romainguy@google.com> Make sure textviews draw in layers

Change-Id: I993a430880ab66739aed1fa7ae625290b2349835
iew.java
iewTreeObserver.java
d9f254094eee9e2e7aaf6f7cd7926433d36eb32c 28-Jun-2013 Craig Mautner <cmautner@google.com> Merge "Do not reuse DisplayAdjustment in Display."
1abaa53dccccc5c94a395bad5fa54cf6783b6974 28-Jun-2013 Craig Mautner <cmautner@google.com> Do not reuse DisplayAdjustment in Display.

Because the DisplayAdjustment in Display can be modified it should not
use the reference of the DisplayAdjustment that is passed in to
construct the Display. Copy the members of the DisplayAdjustment
instead.

Fixes bug 9622994

Change-Id: I8201b02eba3ef35af3e01f10402cd5dafec1fb23
isplay.java
isplayAdjustments.java
1e09cfaa689cff21d3d00883d38af5c296859fdb 28-Jun-2013 Craig Mautner <cmautner@google.com> Merge "More debug for 9404689."
f1f5054f7aed6c06657955e43a680ed54c463986 28-Jun-2013 Craig Mautner <cmautner@google.com> More debug for 9404689.

Changing focus to PhoneWindow.

Change-Id: I75c2ce6b1a20729daf8d2b7f83b2a871e1a7e642
iewRootImpl.java
db4ae2b10e2f37ad45277e9e6b3616451fbc9855 27-Jun-2013 Romain Guy <romainguy@google.com> am dbfb2ab4: am 93d46952: am 67603c6e: Recreate TextureView\'s display list on attach Bug #9425270

* commit 'dbfb2ab4a760f0da910758467a7b9fccf09e97f5':
Recreate TextureView's display list on attach Bug #9425270
dbfb2ab4a760f0da910758467a7b9fccf09e97f5 27-Jun-2013 Romain Guy <romainguy@google.com> am 93d46952: am 67603c6e: Recreate TextureView\'s display list on attach Bug #9425270

* commit '93d46952db60090ae22bc8197659a06ae23cb58b':
Recreate TextureView's display list on attach Bug #9425270
8cbafbe6d2b6ea63bc5a4b70c296609ad7e1311c 27-Jun-2013 Craig Mautner <cmautner@google.com> Merge "Add debug for specific bug."
e7c58b6d7d761b93e785b0a399e5b00fdb82f4ce 13-Jun-2013 Craig Mautner <cmautner@google.com> Add debug for specific bug.

To be removed once the bug is fixed.

Change-Id: Ie273d4503bb0b534af0e9efe8f45c573766e9a74
iewRootImpl.java
indowManagerGlobal.java
67603c6e1b88fa20db58f69354e3925ffba037d1 27-Jun-2013 Romain Guy <romainguy@google.com> Recreate TextureView's display list on attach
Bug #9425270

When a TextureView is detached from its window and immediately
re-attached, the display list is not destroyed but reused as is.
TextureView will however destroy the layer and surface texture
reference by the display list.

The solution is to force TextureView to invalidate its display
list on re-attach if it previously had a surface/layer pair.

Change-Id: I475096ffa7e5709155c4c943bf1bfaaaedbd4a1d
extureView.java
e3b0a0117a2ab4118f868a731b238fe8f2430276 27-Jun-2013 Romain Guy <romainguy@google.com> Refcount 9-patches and properly handle GC events

This change adds refcounting of Res_png_9patch instances, the native
data structure used to represent 9-patches. The Dalvik NinePatch class
now holds a native pointer instead of a Dalvik byte[]. This pointer
is used whenever we need to draw the 9-patch (software or hardware.)

Since we are now tracking garbage collection of NinePatch objects
libhwui's PatchCache must keep a list of free blocks in the VBO
used to store the meshes.

This change also removes unnecessary instances tracking from
GLES20DisplayList. Bitmaps and 9-patches are refcounted at the
native level and do not need to be tracked by the Dalvik layer.

Change-Id: Ib8682d573a538aaf1945f8ec5a9bd5da5d16f74b
LES20Canvas.java
LES20DisplayList.java
LES20RecordingCanvas.java
57b867f3f568b026833c6208afdeff2168838ffd 27-Jun-2013 Alan Viverette <alanv@google.com> Merge "Minor ListView clean up. Exposes View.pointInView() as hidden API."
3d15a2b8f43f5b184f8fdcd3661711111bcf4674 26-Jun-2013 Alan Viverette <alanv@google.com> Minor ListView clean up. Exposes View.pointInView() as hidden API.

Change-Id: Ia628f8438fac5af2471efd8558c8876fae3dafb0
iew.java
e981c516e7ffec1f77a41705a61961b57eb10cab 25-Jun-2013 Romain Guy <romainguy@google.com> Merge "Make sure we have a valid EGL context before drawing Bug #9404946"
cc6b7caff0b428c1a5fc5bf6d7a94f50ac8cb649 25-Jun-2013 Romain Guy <romainguy@google.com> Make sure we have a valid EGL context before drawing
Bug #9404946

Run another EGL context check after invoking user code to ensure
we have a valid context/surface pair before drawing the display list.

Change-Id: Iefb0ced7900ce0c54eb81b62d24ec00700bdce47
ardwareRenderer.java
8c84109b9fbbf473b225707a38261ff5f99d95fb 24-Jun-2013 Dianne Hackborn <hackbod@google.com> Use FastPrintWriter... everywhere.

One problem this turned up is, because FastPrintWriter does
its own buffering, a lot of code that used to use PrintWriter
would fail -- if it pointed to a StringWriter, there was no
buffering, so it could just immediately get the result. Now
you need to first flush the FastPrintWriter.

Also added some new constructors to specify the size of buffer
that FastPrintWriter should use.

Change-Id: If48cd28d7be0b6b3278bbb69a8357e6ce88cf54a
indowManagerGlobal.java
07f36c738e65b8cc2484107b4f8e3386d45d065d 24-Jun-2013 Craig Mautner <cmautner@google.com> Merge "Add activity token to display system."
edaf0794bbeca1adfb825a90a9f42a01bae3aa37 24-Jun-2013 Chet Haase <chet@google.com> Merge "Fix ViewGroupOverlay's handling of invalidating viewgroups"
48d0d1886731ff19ed3fb47a5997be5df0d1bba8 11-Jun-2013 Craig Mautner <cmautner@google.com> Add activity token to display system.

First step in adding activity specific information to displays.
Replace CompatibilityInfoHolder with DisplayAdjustmentsHolder that
holds an activity token in addition to the CompatibilityInfo.

Change-Id: Ie113cd8dd9c62e0b5311204e039a4829096bea68
ompatibilityInfoHolder.java
isplay.java
isplayAdjustments.java
isplayInfo.java
iewRootImpl.java
e4a2d7c48e17dd1c2f59dd18e91997029a6d0bdb 22-Jun-2013 Chet Haase <chet@google.com> Fix ViewGroupOverlay's handling of invalidating viewgroups

Invalidating a view property (alpha, rotation, etc.) causes an
invalidation process that does not work correctly when the view is
in a ViewOverlay. Specifically, if the view is not directly in the
overlay, but is instead inside a hierarchy which is within the overlay,
then the invalidation process stops at the ViewOverlay itself, because
the ViewOverlay has no "parent" view.

The fix is to override the invalidateChildInParentFast() method, just
like we override invalidateChildInParent(), to forward the invalidation
to the host view.

Issue #9389230 Animations not running for nested views under ViewGroupOverlay

Change-Id: I03fcef10ed1c8a91cb26d5d9d6945634b0b695b5
iewGroup.java
iewOverlay.java
35c70f94ef86e076cd0287954d4f224c0019905e 22-Jun-2013 Romain Guy <romainguy@google.com> Merge "When destroying a surface, only unmake current if necessary Bug #9404946"
c8ba0b46161e55b16e43d8872ab67b47038cafa7 22-Jun-2013 Romain Guy <romainguy@google.com> When destroying a surface, only unmake current if necessary
Bug #9404946

The Calendar app destroys one of its popup windows during a draw
traversal. Without this patch, we end up with no current context
nor surface after we're done gathering display lists. This means
that all of our EGL/GL calls will either fail or have undefined
behaviors. This could explain the PBO crash we are seeing with
the monkeys. Without a proper GL context, the driver returns NULL
when we map the PBO in CPU memory.

Change-Id: I210cf724be73da909a7621f807298a9f4a58e61d
ardwareRenderer.java
2ea7f8b9c5f903050d42c1af57406bf528979f45 22-Jun-2013 Chet Haase <chet@google.com> Refactoring/simplifying Transition code/API

Transitions used to be three phase:
- captureValues(): get all relevant property values in the
affected view targets
- setup(): set appropriate start values for affected views
prior to any transitions being played
- play(): create/play Animators for affected views

Now the second and third phases have been collapsed (and named
"play()"). This single step sets initial values for target views
and creates any Animators that should be played during the transition.
The transition mechanism stores these Animators and then starts
them at the appropriate time in the overall transition.

Issue #9507585 Transitions: Simplify Transition.play() design

Change-Id: I3fc67599b38fe49eee885dc5d32444db90b7703b
ransition/Crossfade.java
ransition/Fade.java
ransition/Move.java
ransition/Recolor.java
ransition/Rotate.java
ransition/Slide.java
ransition/TextChange.java
ransition/Transition.java
ransition/TransitionGroup.java
ransition/TransitionValues.java
ransition/Visibility.java
27e0bf627883e7042384d34cf37fbedf276ff553 21-Jun-2013 Romain Guy <romainguy@google.com> Safely dispose of the resize buffer

We just ensure there is a valid EGL context before
we destroy the associated layer.
iewRootImpl.java
6ebe3de331efd00ba23bc4191d4a82cfa4c39160 18-Jun-2013 Chet Haase <chet@google.com> Fix transitions on disappearing view hiearchies

Previously, Fade transitions did not work correctly on hirearchies; they
only handled individual views. in particular, they would side-effect all
fading views by removing them from their parent to fade them out in the
overlay of the scene root. This worked for the fade-out transition itself,
but caused problems when those same hierarchies were added back in and
another Fade was run on the hierarchy, because now all of the views inside
that parent node had been removed, so they didn't fade in at all.

The fix was to add logic in Visibility to detect when a disappearing
view was inside a hierarchy that was also disappearing, and to skip the
fade on the views inside that hierarchy, leaving only the top-most
disappearing view to be faded out, thus preserving the hierarchy under
that faded-out group.

Along the way, there were various cleanups, fixes, and refactorings in the
transition code, and slight API modifications.

Issue #9406371 Transitions: Removing view hierarchy not working correctly
Issue #9470255 Transitions: Separate different transitions by Scene Root

Change-Id: I42e80dac6097fee740f651dcc0535f2c57c11ebb
ransition/AutoTransition.java
ransition/Crossfade.java
ransition/Fade.java
ransition/Move.java
ransition/Recolor.java
ransition/Rotate.java
ransition/Scene.java
ransition/Slide.java
ransition/TextChange.java
ransition/Transition.java
ransition/TransitionGroup.java
ransition/TransitionInflater.java
ransition/TransitionManager.java
ransition/TransitionValues.java
ransition/TransitionValuesMaps.java
ransition/Visibility.java
9dafebb8172d767d640c526d717eaef6a52167f3 19-Jun-2013 Svetoslav <svetoslavganov@google.com> Correctly update the source of recurring subtree change accessibility events.

Change-Id: I0b0fd9224a5208b274e5c889a27417ef13579849
iewRootImpl.java
a506a6ec94863a35acca9feb165db76ddac3892c 04-Jun-2013 Jeff Brown <jeffbrown@google.com> Add an API to allow for creating private virtual displays.

This change enables applications to create a private virtual
display that renders its content to a surface of its own creation.
The display is private in the sense that only the application
that owns the display is allowed to place windows upon it.
Mirroring and blanking is also disabled for these displays.

Bug: 9192512
Change-Id: I852ea07f0c7df1d244e354e3daca3a6960285ca0
isplay.java
isplayInfo.java
e89f48bfb1ed3a2e9241052b665a41fd2a8898cb 18-Jun-2013 Svetoslav <svetoslavganov@google.com> Crash in ViewRootImpl when accessibility is on.

We fire view subtree mutation events every X amount of time.
It was possible that the runnable that fires an event to be
scheduled more than once while this should not happen. As
a result there was a crash since we did not expect to have
a second run and nullified a reference.

bug:9422804

Change-Id: I914e163b026cd217e1536ab0ed3a6b11113c2c73
iewRootImpl.java
3fcf1eda18f6c6ce2bf8f9ba7c09ca973b917009 18-Jun-2013 Svetoslav <svetoslavganov@google.com> Update Javadoc references

Change-Id: I2e4834070de6ebd55e6350f31f9f8e619cb0ff2d
ccessibility/AccessibilityNodeInfo.java
3577a283e1af3e14fe980c4fec55781a58cd8e3c 06-Jun-2013 Svetoslav <svetoslavganov@google.com> Adding traits APIs to AccessibilityNodeInfo.

This change adds several traits and properties to AccessibilityNodeInfo
aiming to allow better description of native Android components to
accessibility services as well as mapping web content to native Android
node info tree.

Change-Id: I36b893cbaa6213c9d02d805e9dc36b6d792b4961
ccessibility/AccessibilityNodeInfo.java
f78484b0b130472a5a73c2bab91f0475508aa018 18-Jun-2013 Scott Main <smain@google.com> am ea893536: am c4473d10: am 27a8508e: add attributes reference for splimotionevents and layoutmode

* commit 'ea8935362da192508a4ff945b47e0c7ff1239679':
add attributes reference for splimotionevents and layoutmode
ea8935362da192508a4ff945b47e0c7ff1239679 18-Jun-2013 Scott Main <smain@google.com> am c4473d10: am 27a8508e: add attributes reference for splimotionevents and layoutmode

* commit 'c4473d10ed747fb1e84efff7183023e0ecc1a493':
add attributes reference for splimotionevents and layoutmode
27a8508ee1236ded652cd452b93884a9193654fc 10-Jun-2013 Scott Main <smain@google.com> add attributes reference for splimotionevents and layoutmode

Change-Id: Id78f2957c994fc30a0837084f22766c8cfa70fe8
iewGroup.java
fb5c9050978afad2c1df570a13a6747f438c27f7 17-Jun-2013 Romain Guy <romainguy@google.com> Merge "Cancel layer update when a layer is about to be destroyed Bug #9310706"
e93482f5eac3df581d57e64c2a771a96aa868585 17-Jun-2013 Romain Guy <romainguy@google.com> Cancel layer update when a layer is about to be destroyed
Bug #9310706

Change-Id: I73eea6314c326f15a979617e3a05b525935f0d3f
LES20Canvas.java
ardwareCanvas.java
ardwareRenderer.java
iew.java
4ffa23379f95771fcdc63a2e35586b7e2c0b23a5 17-Jun-2013 Romain Guy <romainguy@google.com> Merge "Lazily allocate seldom-used data structures"
6410c0aaf13c9aec606b90ee942f2ac2d98b1609 17-Jun-2013 Romain Guy <romainguy@google.com> Lazily allocate seldom-used data structures

Change-Id: I8d6b9d2d821168329206c01ed6539a1466af272f
LES20Canvas.java
LES20DisplayList.java
LES20RecordingCanvas.java
iew.java
iewGroup.java
65aaec3d3906dcb7b44ba9a0fe830f8af76f203f 17-Jun-2013 Romain Guy <romainguy@google.com> Merge "Lazily allocate seldom-used data structures"
16c0318474c60bdbed04ded25dc4ffea8991857a 17-Jun-2013 Romain Guy <romainguy@google.com> Lazily allocate seldom-used data structures

Change-Id: I8d6b9d2d821168329206c01ed6539a1466af272f
LES20Canvas.java
LES20DisplayList.java
LES20RecordingCanvas.java
iew.java
636f119e2f3df30ccde1d5b2cce5e3cf140a75a7 17-Jun-2013 Craig Mautner <cmautner@google.com> Merge "Complete doDie() before executing addView()."
8f303ad97007a9b38d6d927353c1fba812879ae5 14-Jun-2013 Craig Mautner <cmautner@google.com> Complete doDie() before executing addView().

If WindowManager.addView() is called soon after
WindowManager.removeView() then the MSG_DIE in the ViewRootImpl
mHandler queue may not have had time to execute. This will cause
WindowManagerGlobal to throw an exception since the DecorView
is being added before it has been removed.

This fix detects that situation by saving all Views that are queued
up for ViewRootImpl.doDie(). If addView() is called for one of these
Views then doDie() is called immediately and not called when MSG_DIE
eventually makes its way through the queue.

This change also makes doDie() non-reentrant by only allowing it to
carry out its functions the first time it is called. This keeps
dispatchDetachedWindows() from causing destruction by recursively
calling back into doDie(). This is usually caused by calling
dismissDialog() from within dispatchDetachedWindow().

Fixes bug 9404689.
Fixes bug 9406261.

Change-Id: Id4fc8054e273215d82366428fef51b9ba98385fe
iewRootImpl.java
indowManagerGlobal.java
80f00c1f2375796dab09bc4ed5b7631c62f7e158 13-Jun-2013 John Spurlock <jspurlock@google.com> Remove concept of system bar from window manager.

It was already hardcoded to false, this change removes the dead code.

Change-Id: I5e543344e60f69cb9882a70ba29f7c09404ad9fc
WindowManager.aidl
iewConfiguration.java
indowManagerPolicy.java
4969fecf074c3e38dc560aaa283868ea728be946 14-Jun-2013 Romain Guy <romainguy@google.com> Merge "Fix possible NPE when a ViewRoot doesn't have a view"
70d4c5a0fe7f3411254df99b8e84b8e633d1fd05 14-Jun-2013 Romain Guy <romainguy@google.com> Fix possible NPE when a ViewRoot doesn't have a view

Change-Id: I8f76a657fa44fc5c7e0bec3e609eaf49e269910f
iewRootImpl.java
f76c17f0cb97bfe0b8751012ba70027b6edc07fd 13-Jun-2013 Craig Mautner <cmautner@google.com> Merge "Add debug for specific bug."
9e105e0a9a2fa5ca38073ed4fba0ec7fae2d5c39 13-Jun-2013 Craig Mautner <cmautner@google.com> Add debug for specific bug.

To be removed once the bug is fixed.

Change-Id: I83bd5b9fd722826c59b1178303fc4e7feb8eefd2
iewRootImpl.java
7112fddbe26acb12f478f4e77ff9607b523180b4 13-Jun-2013 Romain Guy <romainguy@google.com> Merge "Restore buildLayer()'s old behavior; it's synchronous again Bug #9193833"
405436021da156fbe3c5d4de48bdefa564cf7fc0 13-Jun-2013 Romain Guy <romainguy@google.com> Restore buildLayer()'s old behavior; it's synchronous again
Bug #9193833

Change-Id: I4ee07e65c0a8967f0b55da030ecaad6dfc46136f
LES20Canvas.java
ardwareCanvas.java
ardwareRenderer.java
iew.java
iewRootImpl.java
037aa8d434984840691378f3cc7d99d63dcc4076 07-Jun-2013 Craig Mautner <cmautner@google.com> Centralize all system InputEventReceiver monitors.

Implement all system level InputEvent monitors as new
InputEventListeners. Only one InputChannel required and monitoring
can be enabled or disabled by registering with WindowManagerService.

Change-Id: I64714ab858342ed183c62b421098478ffb6637bc
indowManagerPolicy.java
a4cda4d643b0489239f1e0f1e6044e8416ecfe92 11-Jun-2013 Romain Guy <romainguy@google.com> Merge "Make constants final"
fadd2081443dd2f59f8e8143256a34b7485fe72e 11-Jun-2013 Romain Guy <romainguy@google.com> Make constants final

Change-Id: Ifd54e55011ab63a10ddf851529ce4779447133e0
nimation/Transformation.java
2be7ec671b2aa60d4596cea559fe82616f2b3ada 11-Jun-2013 Adam Powell <adamp@google.com> Add View methods isAttachedToWindow and hasLayout

isAttachedToWindow does what it says on the label and provides a
standard, public API for checking a view's attachment state. This
removes the need for tracking this out of band in response to
onAttachedToWindow/onDetachedFromWindow in custom view
implementations.

hasLayout returns true whenever the view has been through at least one
call to layout() since the last time it was attached to or detached
from a window. This allows for standard checks in code that needs to
behave differently if first layout has not completed yet, such as
whether or not to no-op an animation in order to set up initial state.

Change-Id: I8dab70dcd5a22a32e260ed50987ccdaa4100072b
iew.java
4f5072327d00822a2bfaff56df46cea2981ac90d 10-Jun-2013 Chet Haase <chet@google.com> Add dynamic scene creation/transition capability

Add TransitionManager.beginDelayedTransition() to handle starting a transition
on the next frame for a given scene root based on all changes that
take place between the first call to that method and the next animation frame.

Issue #9321937 Transitions: consider batching up multiple scene actions

Change-Id: I3fc92b6b4ec5ff42b1e678bcfd385703e32eba2a
ransition/TransitionManager.java
6b1d5a4ff220378407e19b7733e727be88b41376 10-Jun-2013 Svetoslav <svetoslavganov@google.com> Merge "Notification for changed subtree in accessibility mode not fired properly."
00dbe81fea7be57ee2ff8a97844faf1bc15a427f 10-Jun-2013 Svetoslav <svetoslavganov@google.com> Notification for changed subtree in accessibility mode not fired properly.

We fire notifications that the a view subtree changed for accessibility.
In some cases the notifications were fired if accessibility is not
enabled. This is now fixed. Also the runnable for making the recurring
subtree change was not dequeued if it was pending but we received a
request which we decided to run immediately.

bug:9337912

Change-Id: I27401b3d11f81c653e8761a704ee530263b08c3a
iew.java
iewGroup.java
iewRootImpl.java
6a7e5c28a400bb91b7ed81175ddcc227af404ccd 10-Jun-2013 Craig Mautner <cmautner@google.com> Merge "Dismiss immediately to maintain consistent state."
92098c7c30bc76310a066b220e625fa9aa4b925d 10-Jun-2013 Craig Mautner <cmautner@google.com> Dismiss immediately to maintain consistent state.

Fix bug introduced by deferring nulling of mParent.

In dismissDialog the removal was being put on a queue while the
state of the Dialog was being updated immediately. This meant that
if a show() was called before the remove was executed it would try
and add the DecorView a second time. Boom!

Fixes bug 9370301.

Change-Id: I576d1e207c786bc2e21dfd40cb94f2b63a020fe2
indowManagerGlobal.java
f38fd8784487c72983b061fb41b2aef656ccf265 10-Jun-2013 Romain Guy <romainguy@google.com> am 7a6e1297: am 8d8fc469: Merge "Don\'t orphan footers with transient state Bug #8725945" into jb-mr2-dev

* commit '7a6e129759672f0c1b0ce462d389c0f469e7348f':
Don't orphan footers with transient state Bug #8725945
7a6e129759672f0c1b0ce462d389c0f469e7348f 10-Jun-2013 Romain Guy <romainguy@google.com> am 8d8fc469: Merge "Don\'t orphan footers with transient state Bug #8725945" into jb-mr2-dev

* commit '8d8fc469952ffe3feb45e52388f2129f8dd5e40c':
Don't orphan footers with transient state Bug #8725945
b7e0f7942b97c1f88f4aa2338cbf3623fdfdad97 08-Jun-2013 Romain Guy <romainguy@google.com> Don't orphan footers with transient state
Bug #8725945

Selecting text in an EditText causes the View to have transient
state. This would in turn cause the View to be removed from its
ListView parent. When removed, the EditText would lose its
AttachInfo, causing all sorts of problems. Headers and footers
must not be removed, only detached. This is the part of the fix
in AbsListView.

Fixing AbsListView triggered a second bug: when a View is removed
from the Window manager, it would keep its parent assigned, thus
making it impossible to add it again to the window manager. When
a ViewRootImpl goes through doDie(), it must set its content view's
parent to null to properly cleanup.

Change-Id: I0489daa74f8f7fcf85526f0928f8925ec30d4f42
iewRootImpl.java
b2675542c2f414154125b534767ae0903fba581e 12-Dec-2012 Eino-Ville Talvala <etalvala@google.com> Initial commit of new camera API, mostly just the interface.

- New core API classes in android.hardware.photography
- android.media.Image and android.media.ImageReader classes for
application access to direct hardware image buffers.
- Additions to android.graphics.ImageFormat to describe new image
types needed by new camera API.
- Some documentation included; very little implementation.

Bug: 9111736
Change-Id: I0680f35944d1cb8845b7dc0c67edc8c0f0864573
urfaceHolder.java
81056427e8d710acdf471a2d6a91bc0298357cce 07-Jun-2013 Romain Guy <romainguy@google.com> Merge "Remove unnecessary Rect, better reuse of NinePatch objects"
f3187b7df158d2de36955ddcc666ba4b8544a2ce 07-Jun-2013 Romain Guy <romainguy@google.com> Remove unnecessary Rect, better reuse of NinePatch objects

Cloning drawables (which happens a lot) was creating copies of NinePatch
objects, which would cause the hardware renderer to generate more meshes
than necessary. Also avoid keeping a String we don't need (it was interned
but still.) Last but not least, remove 1 RectF per NinePatch in the system.

Change-Id: If4dbfa0c30892c9b00d68875e334fd5c2bde8b94
LES20Canvas.java
494cb689d09a82025b9d892241e62aa149ce3239 07-Jun-2013 Svetoslav <svetoslavganov@google.com> Merge "Optimizing AccessibilityNodeInfo caching."
f69913056b8c6000ff0306573a97971702e8d35a 06-Jun-2013 Romain Guy <romainguy@google.com> Remove unnecessary allocations

Change-Id: Ia561a0a312ca2737d5afa742184f5392bb2f29a3
iew.java
iewGroup.java
e2b66ff085a03ab5cc02d4282c4e9e300003754d 06-Jun-2013 Chet Haase <chet@google.com> Merge "Fix CrossFade transition"
71ce4876e5051cc2cff1dd4fd55a4899523af8a2 06-Jun-2013 Chet Haase <chet@google.com> Merge "Fix crash with LayoutTransition and ViewOverlay collision"
d0d3ca95489d93666045ac1c2489ad41be7548f6 06-Jun-2013 Craig Mautner <cmautner@google.com> Merge "Replace arrays with ArrayList"
8306f87132de088b82a3a5fbabdb13228c8ad0c7 06-Jun-2013 Craig Mautner <cmautner@google.com> Merge "Delay removal of windows from WindowManager"
652fdfaf6f8131886dbc925d670e00e9d85e56da 06-Jun-2013 Craig Mautner <cmautner@google.com> Replace arrays with ArrayList

The three arrays were being reconstructed and copied for each add
and each remove. By replacing them with ArrayList only three
constructions total are required. Also, the number of
System.arraycopy() calls is halved.

Change-Id: I0f8def1b517eb1bc5f930fcd5d3d1e0394071f0e

Conflicts:
core/java/android/view/WindowManagerGlobal.java
indowManagerGlobal.java
4f0c4672ac7fd6b8135e27d8f816da2ebaf7d63a 06-Jun-2013 Chet Haase <chet@google.com> Fix CrossFade transition

Small fixes in CrossFade to handle more general situations.
Also, added API to CrossFade to enable different behaviors during
the transition.

Change-Id: I12d17ab8f8f96be370c070373112ad8a62df9115
ransition/Crossfade.java
05eb730ca42eec3a40f916062af7442218135303 04-Jun-2013 Craig Mautner <cmautner@google.com> Delay removal of windows from WindowManager

When relaunching activities the window manager clears out all windows
by calling a ViewRootImpl.die() in a deferred fashion. Then it
immediately deletes the ViewRootImpl and its view from its list
of windows. When the die() is eventually executed it calls
dispatchDetachedFromWindow() which tries to remove the previously
removed windows causing an Exception to be thrown.

This change waits to remove the windows until after die() has been
completed. Fixes bug 8253030.

Change-Id: I5b41be1c6b776e32128c064267653db98bd95292
iewRootImpl.java
indowManagerGlobal.java
ce08ce539a083b31cfffd3aa98173885f0e4a3d9 06-Jun-2013 Chet Haase <chet@google.com> Fix crash with LayoutTransition and ViewOverlay collision

When a View is added to a ViewGroupOverlay, it must not be parented
in another container. If it is, it will automatically be removed.
This works in general, but if there is a LayoutTransition on the
view's parent, then the actual removal will be delayed until the
transition completes. This means that the call to add(view) in
the ViewGroupOverlay's container will fail and throw an exception because
the view is still parented for the duration of the LayoutTransition.

This fix cancels the running transition to ensure that the view is not
parented prior to adding it to the overlay's container.

Issue #9303245 Crash combo: add(View) and animateLayoutChanges

Change-Id: Id4eaddccf64c353fc77e020882b978cdeb14c0ef
iewOverlay.java
6254f4806dd3db53b7380e77fbb183065685573e 05-Jun-2013 Svetoslav <svetoslavganov@google.com> Optimizing AccessibilityNodeInfo caching.

1. Before we were firing an accessibility event from the common
predecessor of views with accessibility related state changes
every X amount of time. These events designate that the tree
rooted at the source is invalid and should not be cached.
However, some of the state changes do not affect the view tree
structure and we can just refresh the node instead of evicting
and recaching nodes infos for views that did not change. Hence,
we need a way to distinguish between a subtree changed over a
node changed.

Adding a new event type will not work since if say two siblings
have local changes and their predecessor fires a window state
change event, the client will drop the subtree rooted at the
parent including the two views with changes. Subsequent, more
specialized events emitted from the two changed siblings will
be useless since the parent which did not changed is already
evicted from the cache. Conversely, if the specialized events
are fired from the two siblings with local changes and they
are refreshed in the cache the subsequent window state change
event from the common predecessor will force the refreshed
nodes to be evicted.

Hence, to enable distinction between node being changed and
a subtree baing changed while not changing existing behavior,
we will fire only window content change event with an additional
argument specifying what changed - node or a subtree for now.
Also if the changes are local to a view we fire the window
content changed event from the view. So, the two siblings will
fire such an event independently and the client will know that
these are local changes and can just refresh the node. If the
changes are structural, then we fire the window state change
event from the common predecessor.

2. Added the input type of a text view as one of the properties
reported by an AccessibilityNodeInfo. It is nice to prompt the
user what input is expected.

3. Added a bundle for optional information to AccessiiblityNodeInfo.
For example, it will be used for putting web specific properties
that do not map cleanly to Android specific ones in WebView.

4. AccessibilityInteractionController was not taking into account
whether the current accessibility focused node is shown before
returing it. Hence, a disconnected node would be returned and
caching it puts our cahche in an inconsistent state.

Change-Id: I8ed19cfb4a70bdd7597c3f105487f1651cffd9e0
ccessibilityInteractionController.java
iew.java
iewGroup.java
iewParent.java
iewRootImpl.java
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityNodeInfoCache.java
ccessibility/AccessibilityRecord.java
ba23e80b8008c21e4a67d16118168f121950cca5 05-Jun-2013 Romain Guy <romainguy@google.com> Merge "Remove string allocations when creating display lists"
450dc7554de90026a6dd2a1ec7108c1423fce18e 05-Jun-2013 Romain Guy <romainguy@google.com> Remove string allocations when creating display lists

Change-Id: Id520db981a3988cb980c8da5dbea8f26ef94989f
iew.java
4dad6cab641f95524d86d0fe9f9d46e323aeb41b 05-Jun-2013 John Spurlock <jspurlock@google.com> Unhide MotionEvent#actionToString.

Also clarify the input as unmasked, and fix a few other found doc
issues in related methods.

Change-Id: I1338a17dea0282b99229925dea8e48693e177eaa
otionEvent.java
25a738fb257aacfc87d3363a834ed6e0b050c3b1 05-Jun-2013 Chet Haase <chet@google.com> Fix in transition canceling logic

The logic that canceled underlying animations caused a problem
when there were more than one animation in the list (due to removing
items from a list that was currently being processed elsewhere).

Change-Id: Ie207f340b5d7de4ffcf56a26c05ec394abb80224
ransition/Transition.java
08735185f8105710e18ad02297461bec9268e514 04-Jun-2013 Chet Haase <chet@google.com> Use ArrayMap instead of HashMap in transitions

The new ArrayMap class is more efficient for small collections.
Transitions use maps all over the place to collect/use property
values in setting up the transition animations. Changing to ArrayMap
should be more efficient, especially in terms of memory allocations
and GCs.

Issue #9276256 Transitions: Reduce memory allocations

Change-Id: I07b7d4ba68d5a207808eca11943aa3578fa90e3e
ransition/Crossfade.java
ransition/Move.java
ransition/Recolor.java
ransition/TextChange.java
ransition/Transition.java
ransition/TransitionGroup.java
ransition/TransitionInflater.java
ransition/TransitionManager.java
ransition/TransitionValues.java
e9d32ea13ee14fc0eb4e45ca627ca77729d38bfe 04-Jun-2013 Chet Haase <chet@google.com> Starting new transition cancels running transition

The behavior of running a transition is janky and unpredictable,
when there is already a transition running on the same scene root.
Usually, the new transition simply jumps to the end values, or
jumps to the start values for that transition and animates from
there.

A better approach is to cancel any running transition first, the
start the new transition from that point.

Even better would be to blend old/new transitions, or at least adjust
the animation timing according to where/when the previous transition
stopped. In the meantime, this fix is at least better than the
previous approach of ignoring running transitions.

Change-Id: I4f5fabb55f6454f1e9d66589a9a7c36f9fc013fb
ransition/Transition.java
ransition/TransitionGroup.java
ransition/TransitionManager.java
867a86613d4152a93423300f83597300e6ebeebe 03-Jun-2013 Chet Haase <chet@google.com> Various fixes/cleanup in Scenes and Transitions

setDuration() wasn't handled correctly for TransitionGroup; it should
propagate the value to its children.

Also, videos with no ids were not being handled correctly. The transition code was
using the default id on those views (-1) to store start/end data about the view,
causing multiple non-id views to clobber values in the hashmaps. The correct approach
should be to ignore default id values - only store information about the view
instances, not about the unset ids.

Also, added a new test InterruptTest to be used to fix the current behavior of
not handling situations where new transitions start while old ones are still taking place.

Change-Id: I4e880bdbb33cc26d487bceb0d56e463e72f7621f
ransition/Move.java
ransition/Transition.java
ransition/TransitionGroup.java
3f7a6935d37e36190a7d131a0193739c272fbe05 01-Jun-2013 Adam Powell <adamp@google.com> Merge "Fix a bug resolving the correct icon/logo in action bars"
04fe6ebb9f919f196ec06a19bebc09b8e943f95b 31-May-2013 Adam Powell <adamp@google.com> Fix a bug resolving the correct icon/logo in action bars

Remove some abstraction-breaking magic in ActionBarView and replace it
with proper resolution of the icon/logo when creating a window. The
old implementation relied on the ActionBarView's context being an
Activity.

Bug 9171554

Change-Id: Idbbb1942622195dcb55e8119f2d64287b07bb509
WindowManager.aidl
indow.java
indowManagerPolicy.java
e507c840c83f83baf724780e79215a40fbbf02c9 31-May-2013 Jean Chalard <jchalard@google.com> am 44baed2d: am af9e5e5f: Merge "Improve the documentation for InputConnection." into jb-mr2-dev

* commit '44baed2dc31d29c48f5d49577c109ca3903ad915':
Improve the documentation for InputConnection.
44baed2dc31d29c48f5d49577c109ca3903ad915 31-May-2013 Jean Chalard <jchalard@google.com> am af9e5e5f: Merge "Improve the documentation for InputConnection." into jb-mr2-dev

* commit 'af9e5e5f618448f77f74bb36e0adbe88cb2ae156':
Improve the documentation for InputConnection.
e811de2d6cd736b36a2a2ff552e6893a4a021045 24-May-2013 Jean Chalard <jchalard@google.com> Improve the documentation for InputConnection.

- Add many details to most methods.
- Add comments specific to IME authors and to editor authors.
- Add missing return value docs.
- Straighten out single-spacing vs double spacing.

Bug: 8843866
Change-Id: If1f6dcf0457d5332a7ebb1ebfb1967c6ff0df722
nputmethod/BaseInputConnection.java
nputmethod/CompletionInfo.java
nputmethod/ExtractedText.java
nputmethod/InputConnection.java
c4ea109ba25e9abc054ee61fdea576f8618f8560 30-May-2013 Romain Guy <romainguy@google.com> Merge "Disable the AssetAtlas when running under valgrind Bug #9191438"
80b12fcaaec458377d966803c3a61504f0897ea1 30-May-2013 Romain Guy <romainguy@google.com> Disable the AssetAtlas when running under valgrind
Bug #9191438

When running under valgrind, the ppid will be different from the ppid
of the system server (which always gets forked from zygote.)

Change-Id: I42cbf99fd0084aeab76c30de9beb7c49ed1fc7d8
ardwareRenderer.java
AssetAtlas.aidl
c00930f4fec3590cb604f32b6c62eeb6ab429e24 30-May-2013 John Spurlock <jspurlock@google.com> am 50ef7ab7: Docfix: remove confusing "disabled" link label.

* commit '50ef7ab70ad02deb9ad3694fb894741d6007564a':
Docfix: remove confusing "disabled" link label.
50ef7ab70ad02deb9ad3694fb894741d6007564a 29-May-2013 John Spurlock <jspurlock@google.com> Docfix: remove confusing "disabled" link label.

Change-Id: I1acb9c8c20b6cda0e6cfb2fc1e450f37e7cd4eeb
iew.java
0ffefdf9fc87670fb31f4ae8c87dd3310399e017 29-May-2013 John Spurlock <jspurlock@google.com> Docfix: remove confusing "disabled" link label.

Change-Id: I96ebc44fe69de60e187f200b5e9d0b5adc478c17
iew.java
19c618dbce1383541c292251b8b56afc99f1d6b5 29-May-2013 Jeff Brown <jeffbrown@android.com> am c8a77735: am dea6e86d: am 3422ceb6: Merge "Bug fix for building the hover target list"

* commit 'c8a777356267803be3e235b2fdaf807166fb46eb':
Bug fix for building the hover target list
c8a777356267803be3e235b2fdaf807166fb46eb 29-May-2013 Jeff Brown <jeffbrown@android.com> am dea6e86d: am 3422ceb6: Merge "Bug fix for building the hover target list"

* commit 'dea6e86dce716b67fe92c9b281fe9e79256f3b78':
Bug fix for building the hover target list
dea6e86dce716b67fe92c9b281fe9e79256f3b78 29-May-2013 Jeff Brown <jeffbrown@android.com> am 3422ceb6: Merge "Bug fix for building the hover target list"

* commit '3422ceb6ba453c28ac39dfce34534e0346394a3a':
Bug fix for building the hover target list
3422ceb6ba453c28ac39dfce34534e0346394a3a 28-May-2013 Jeff Brown <jeffbrown@android.com> Merge "Bug fix for building the hover target list"
be7a7e546f409442c2f6505dd7a0526553fa395c 28-May-2013 John Spurlock <jspurlock@google.com> am ee352cca: Merge "Fix typo in View.java javadocs" into jb-mr2-dev

* commit 'ee352cca1f3beb577dfdf1c18a08242e4f94d01b':
Fix typo in View.java javadocs
0efd4f0215f1df1207b67240d7a52b1da6af43c8 28-May-2013 John Spurlock <jspurlock@google.com> Merge "Fix typo in View.java javadocs"
44b1edd94886d00118d573473cbba5e0b5b651de 28-May-2013 John Spurlock <jspurlock@google.com> Fix typo in View.java javadocs

Change-Id: I85b9b2bd30d1f9d38954c31f24a352930a230ced
iew.java
9643d40395b3ecfbed8b22d8e711c28efcfeeacc 28-May-2013 John Spurlock <jspurlock@google.com> Fix typo in View.java javadocs

Change-Id: I6da88e18fe32c4763c916990f6aa17dda21f5c8f
iew.java
2e39f5c5cb2eac59b067b68a93b5c454b97a5127 25-May-2013 Dianne Hackborn <hackbod@google.com> Merge "New ArrayMap class."
f4bf0ae2a7c2d9d92c5c8abdb82baa53b4c9ccda 21-May-2013 Dianne Hackborn <hackbod@google.com> New ArrayMap class.

This is a new kind of key/value mapping that stores its data
as an array, so it doesn't need to create an extra Entry object
for every mapping placed in to it. It is also optimized to reduce
memory overhead in other ways, by keeping the base object small,
being fairly aggressive about keeping the array data structures
small, etc.

There are some unit and performance tests dropped in to some
random places; they will need to be put somewhere else once I
decided what we are going to do with this for the next release
(for example if we make it public the unit tests should go in
to CTS).

Switch IntentResolver to using ArrayMap instead of HashMap.

Also get rid of a bunch of duplicate implementations of binarySearch,
and add an optimization to the various sparse arrays where you can
supply an explicit 0 capacity to prevent it from doing an initial
array allocation; use this new optimization in a few places where it
makes sense.

Change-Id: I01ef2764680f8ae49938e2a2ed40dc01606a056b
iew.java
608094041177193dcce7a91e8dc96a2556d29bfd 23-May-2013 Romain Guy <romainguy@google.com> Merge "Add PerfHUD ES profiling capabilities"
e9bc11f7121dbe373b0cbe5779ee6a12d824492c 23-May-2013 Romain Guy <romainguy@google.com> Add PerfHUD ES profiling capabilities

The eglGetSystemTimeNV extension can be used to enable profiling
in PerfHUD ES. When the delta of two calls to eglGetSystemTimeNV
equals 0, we now cancels display lists updates. This allows the
tool to redraw the same frame several times in a row to run its
analysis.

For better results profiling should only be attempted after
setting viewroot.profile_rendering to true using adb shell
setprop.

Change-Id: I02e3c237418004cff8d6cb0b9a37126efae44c90
ardwareRenderer.java
iewRootImpl.java
0c63d7c239b9288065a11543a0f2cdeb8a0c293f 22-May-2013 Romain Guy <romainguy@google.com> am 469cc57c: am 2f35d244: Merge "Avoid extraneous EGL surface allocations Bug #8667873" into jb-mr2-dev

* commit '469cc57ca77687420246dd679e94eb242fcec41d':
Avoid extraneous EGL surface allocations Bug #8667873
469cc57ca77687420246dd679e94eb242fcec41d 22-May-2013 Romain Guy <romainguy@google.com> am 2f35d244: Merge "Avoid extraneous EGL surface allocations Bug #8667873" into jb-mr2-dev

* commit '2f35d2441e59b996a56653881fdc2f52d4eeb644':
Avoid extraneous EGL surface allocations Bug #8667873
2f35d2441e59b996a56653881fdc2f52d4eeb644 22-May-2013 Romain Guy <romainguy@google.com> Merge "Avoid extraneous EGL surface allocations Bug #8667873" into jb-mr2-dev
370ab062a0a18723531258896b352d5f5dd55ae7 21-May-2013 Romain Guy <romainguy@google.com> Avoid extraneous EGL surface allocations
Bug #8667873

windowShouldResize means we need to layout the window, it doesn't mean
the dimensions of the surface have changed. We should only check the
width and the height. With this fix we can avoid a surface allocation
every time the window shade is opened or closed.

Change-Id: I8afe97b820a865723f2aab7a5aa4ddc8eaaec6e1
iewRootImpl.java
49f2e4098d4823a995d7346be77c130037e8029e 21-May-2013 Romain Guy <romainguy@google.com> Merge "Destroy display lists when running complete memory trims Bug #8833153"
779321fde1c6461884b521c2ce7134468e085ba5 21-May-2013 Romain Guy <romainguy@google.com> Destroy display lists when running complete memory trims
Bug #8833153

Display lists ops might now keep references to GL resources so they
must be destroyed when the EGL context goes away.

Change-Id: I0feb18f5539b345234a58dafa6f0775d7d7460dc
iew.java
f1cfdcee273a2313f7483582332e2afc2cc62c70 21-May-2013 Svetoslav Ganov <svetoslavganov@google.com> am 5315953b: am 78a4630e: Merge "Taking into account data change for AbsListView when prefetching node infos." into jb-mr2-dev

* commit '5315953b86ee7ca29756504535e124b053286623':
Taking into account data change for AbsListView when prefetching node infos.
5315953b86ee7ca29756504535e124b053286623 21-May-2013 Svetoslav Ganov <svetoslavganov@google.com> am 78a4630e: Merge "Taking into account data change for AbsListView when prefetching node infos." into jb-mr2-dev

* commit '78a4630edaa11846b09bdad84bac18a0441c500a':
Taking into account data change for AbsListView when prefetching node infos.
78a4630edaa11846b09bdad84bac18a0441c500a 21-May-2013 Svetoslav Ganov <svetoslavganov@google.com> Merge "Taking into account data change for AbsListView when prefetching node infos." into jb-mr2-dev
4e239aeed3b34783751080b6a0c8a6972422ba3e 20-May-2013 Chet Haase <chet@google.com> am e8d6dc4c: am 865cffc7: Merge "Add null check in ViewOverlay" into jb-mr2-dev

* commit 'e8d6dc4cad65c8c29c365d71d2255eb637581fdb':
Add null check in ViewOverlay
e8d6dc4cad65c8c29c365d71d2255eb637581fdb 20-May-2013 Chet Haase <chet@google.com> am 865cffc7: Merge "Add null check in ViewOverlay" into jb-mr2-dev

* commit '865cffc7cece8f10a9e6aab1e89a92c8794cb279':
Add null check in ViewOverlay
d8b0b233249c176b7adc1a7ee1e97f89e6a0698c 20-May-2013 Chet Haase <chet@google.com> Add null check in ViewOverlay

View.getOverlay().clear() can failed with an NPE if there are
no drawables in the overlay. Fix: add a null check before dereferencing
the mDrawables field.

Issue #8895794 getOverlay.clear() crashes if drawables were not added previously

Change-Id: I9b2a63036450915681ba3a89a0911e2490063702
iewOverlay.java
50776863a2a2ed6e4015edc60bacd4f562a907ee 18-May-2013 Svetoslav Ganov <svetoslavganov@google.com> Taking into account data change for AbsListView when prefetching node infos.

We are prefetching accessibility node infos to minimize the number of IPC
calls when an accessibility service introspects the screen. It is however,
possible that the view we are prefetching is a child of an AbsListView whose
adapter changed its data but the AbsListView still did not perform a layout
pass to sync its children with the new adapter state. This may lead to an
exeption when trying to query for the state of a child's position. If the
data of the adapter is changed and the layout pass still not performed,
we return null for the AbsLIstView's children. When the layout pass
completes we already notify the accessibliity layer so it will be able to
refetch the children of the AbsListView.

bug:8433433

Change-Id: I56313c721aef3848b15fad50027d068ba1d291f7
iew.java
aa29a97f6db94f97555d00486dd453e912d970c6 18-May-2013 Romain Guy <romainguy@google.com> Clear display lists when a View becomes GONE/INVISIBLE

We force an invalidate whenever a View becomes VISIBLE so there is
no need to keep the display list object while the view is either
GONE or INVISIBLE. In particular this clears the lists of references
kept by GLES20DisplayList, which helps the GC free large objects
such as Bitmaps.

Change-Id: Ifde0cb40baa1f35e5e6439d3bf8eab3c4c1270f0
iew.java
f27796cbbea78b01467a5a35f20be573815c1b5b 15-May-2013 Chet Haase <chet@google.com> am 944a8725: am bee0495f: Merge "Dirty rect must expand, not contract." into jb-mr2-dev

* commit '944a8725e6e2ccb310c9515c9067f995c034b724':
Dirty rect must expand, not contract.
944a8725e6e2ccb310c9515c9067f995c034b724 15-May-2013 Chet Haase <chet@google.com> am bee0495f: Merge "Dirty rect must expand, not contract." into jb-mr2-dev

* commit 'bee0495fa17b7e385d880f18e510e295c000cfa9':
Dirty rect must expand, not contract.
5495c726121737b5565ea58a28efdd6dbc471891 15-May-2013 Chet Haase <chet@google.com> Dirty rect must expand, not contract.

Different devices have different precision, leading to different pixels
being touched during rendering operations. We need to ensure that the
dirty rect we draw with (and which gets erased on the following frame)
encompasses all possible pixels instead of some ideal rounded rectangle.

The bug from this code led to dropped-pixels artifacts on some devices,
where we'd scale a view, drawing it into some pixels, then invalidate
that same area on the next frame, but the invalidation rectangle didn't
cover the same pixels as the device drew into.

The fix is to floor() the left/top pixels and ceil() the right/bottom
pixels of the transformed invalidation rectangle.

Issue #8971348 dropped pixel artifacts during some scaling operations

Change-Id: Iedb1afd5621dff43bf7a3919bdbd8d2251647fd2
iew.java
06ccc77f4849f9f9fc6ef33cd5ef6cfd00898d00 14-May-2013 Svetoslav <svetoslavganov@google.com> am 80127981: am c0a979ce: Merge "Fixing the accessibility text traversal in extend mode." into jb-mr2-dev

* commit '80127981f85a0be842007596830c1675a9a3665e':
Fixing the accessibility text traversal in extend mode.
80127981f85a0be842007596830c1675a9a3665e 14-May-2013 Svetoslav <svetoslavganov@google.com> am c0a979ce: Merge "Fixing the accessibility text traversal in extend mode." into jb-mr2-dev

* commit 'c0a979ce30cf9b96c0a84d0679aeeef7153a22fa':
Fixing the accessibility text traversal in extend mode.
c0a979ce30cf9b96c0a84d0679aeeef7153a22fa 14-May-2013 Svetoslav <svetoslavganov@google.com> Merge "Fixing the accessibility text traversal in extend mode." into jb-mr2-dev
04db1762fb75a3938dda34537626c41c8e97d9c5 13-May-2013 John Spurlock <jspurlock@google.com> Window manager cleanup.

Specifically:
- Fix policy vs wm lock management issues.
- Share runnable to avoid allocation.
- Remove unused noop runnable.
- Make sure to handle status bar = null case.
- Fix javadoc typo.

Bug: 8890313
Change-Id: I242eaef8e946025f6885d6dba3225722fb0ca7ce
indowManagerPolicy.java
155d965ab099601bb6646f3b7006f411b64ea601 13-May-2013 Kristian Monsen <kristianm@google.com> am 3d1edc03: am 6e7ed13b: Merge "Fix for bug 8623163: Call view methods on the UI thread" into jb-mr2-dev

* commit '3d1edc033ff00430e1f8118cd871d9996b7172a1':
Fix for bug 8623163: Call view methods on the UI thread
3d1edc033ff00430e1f8118cd871d9996b7172a1 13-May-2013 Kristian Monsen <kristianm@google.com> am 6e7ed13b: Merge "Fix for bug 8623163: Call view methods on the UI thread" into jb-mr2-dev

* commit '6e7ed13b12edc9e02580a273c3aa546e62231b5a':
Fix for bug 8623163: Call view methods on the UI thread
6e7ed13b12edc9e02580a273c3aa546e62231b5a 13-May-2013 Kristian Monsen <kristianm@google.com> Merge "Fix for bug 8623163: Call view methods on the UI thread" into jb-mr2-dev
abad55d860be793b8b9b3e288a74214da89fb368 08-May-2013 Svetoslav <svetoslavganov@google.com> Fixing the accessibility text traversal in extend mode.

We added APIs to allow an accessibility service to extend the
selection while moving the cursor at a given granularity such
as word, character, etc. The problem is that the traversal was
extending only the end of the selection while moving forward
and the start of the selection while moving backward. This leads
to a case in which the user cannot shrink/extend the selection
because for example instead of shrinking the end of the selection
the implementation was extending the start.

Now extending the selection moves only the selection end. This is
the same behavior as text view using a keyboard.

Tests: https://googleplex-android-review.googlesource.com/#/c/307062

bug:8839844

Change-Id: Id6965b102647df909f61301fcc8ec05458dd5881
iew.java
ccessibility/AccessibilityEvent.java
e555d1642120da10d73db0e0807cf1c0f2d02470 11-May-2013 Craig Mautner <cmautner@google.com> am c3797f40: am 4754f401: Merge "Avoid NullPointerException in getHandler()"

* commit 'c3797f40c1a8a8f7ca72816642110221933ff8fd':
Avoid NullPointerException in getHandler()
6f3a6a453ac55ac2974d32ead4615746594382c8 11-May-2013 Svetoslav <svetoslavganov@google.com> am 1e4c6589: am b3c2b21b: Merge "Accessibility should not query for list items when data set changed." into jb-mr2-dev

* commit '1e4c6589941e459871eed6e9d4675b05d977325c':
Accessibility should not query for list items when data set changed.
c3797f40c1a8a8f7ca72816642110221933ff8fd 10-May-2013 Craig Mautner <cmautner@google.com> am 4754f401: Merge "Avoid NullPointerException in getHandler()"

* commit '4754f401a912305e1ceec04b62ad9b9f7d3c2ff6':
Avoid NullPointerException in getHandler()
1e4c6589941e459871eed6e9d4675b05d977325c 10-May-2013 Svetoslav <svetoslavganov@google.com> am b3c2b21b: Merge "Accessibility should not query for list items when data set changed." into jb-mr2-dev

* commit 'b3c2b21b5ba30d82938ae2ef93d8120f5fd0cc80':
Accessibility should not query for list items when data set changed.
b3c2b21b5ba30d82938ae2ef93d8120f5fd0cc80 10-May-2013 Svetoslav <svetoslavganov@google.com> Merge "Accessibility should not query for list items when data set changed." into jb-mr2-dev
2d4edcf2e1ef94ef83e02ec2ad075b3603282812 10-May-2013 Chet Haase <chet@google.com> am a9d5adea: am fb32c824: Merge "Fix start delay jank in ViewPropertyAnimator" into jb-mr2-dev

* commit 'a9d5adea9e9676d19b7a50ce3d6c673c16ee7a6d':
Fix start delay jank in ViewPropertyAnimator
a9d5adea9e9676d19b7a50ce3d6c673c16ee7a6d 10-May-2013 Chet Haase <chet@google.com> am fb32c824: Merge "Fix start delay jank in ViewPropertyAnimator" into jb-mr2-dev

* commit 'fb32c82412111983236f44cbc8fd90f113d7ea34':
Fix start delay jank in ViewPropertyAnimator
fb32c82412111983236f44cbc8fd90f113d7ea34 10-May-2013 Chet Haase <chet@google.com> Merge "Fix start delay jank in ViewPropertyAnimator" into jb-mr2-dev
dcfbd6a2c99fa9f77c8ffec81c36d28e21ac18a7 09-May-2013 Chet Haase <chet@google.com> Fix start delay jank in ViewPropertyAnimator

Issue #8892620 start delay jank in ViewPropertyAnimator

Change-Id: I17a57ac3351fb2c1516b594d135aa9ce9f78c88e
iewPropertyAnimator.java
68fcaa2c0be1e84f8de95f66d9962ea45c090709 09-May-2013 John Spurlock <jspurlock@google.com> Merge "Navigation hideybar via new system ui opt-in flag."
82f92ee5bddbb03f4efe348288150d133ab52e87 09-May-2013 Michael Jurka <mikejurka@google.com> am 7741b63c: am 6dee0a0f: Merge "Fix bug where thumbnails flashed more often in Recents" into jb-mr2-dev

* commit '7741b63c5a8e14b5123c4b735dc768cf55fa2ed5':
Fix bug where thumbnails flashed more often in Recents
8be78240f32c61a0873e7c055f1408bf7abf573f 09-May-2013 Fabrice Di Meglio <fdimeglio@google.com> am 6eb036e7: am 366b97ba: Merge "Fix bug #8839681 Reversed Textbox focus order on RTL and android:imeOptions="flagNoExtractUi"" into jb-mr2-dev

* commit '6eb036e7894758bcc357fc282070aa8677227ce1':
Fix bug #8839681 Reversed Textbox focus order on RTL and android:imeOptions="flagNoExtractUi"
5e6fbf269425ea182b8a46e6a33848e1645197f6 09-May-2013 Alan Viverette <alanv@google.com> am fa4c935e: am 239a0c0e: Ensure ViewRootImpl.setAccessibilityFocus() doesn\'t crash when reentrant.

* commit 'fa4c935edcfa09bb53a3aac411a285842a00ddee':
Ensure ViewRootImpl.setAccessibilityFocus() doesn't crash when reentrant.
5b578daac9cea174b15fcd13528270270aadd8a2 08-May-2013 Svetoslav <svetoslavganov@google.com> Accessibility should not query for list items when data set changed.

AbsListView is backed by an adapter. After the adapter data changes
the view sets a flag that its state is dirty and requests a layout.
If an accessibility service asks for the state of a list item at
this point, it may incur an error since the views and the adapter
are not in sync.

Now if an accessibility service queries for a list item when the
data set is changed and the item views are dirty, we pretend the
children do not exist. After the layout happens, we notify the
accessibility layer that the screen content changed so it can
refetch the views if desired (this notification mechanism is
already in place in AbsListView#handleDataChanged()).

bug:8433433

Change-Id: I4287a0ac2ef6bb33f1f988d5ddad973556c305ca
iew.java
iewGroup.java
7741b63c5a8e14b5123c4b735dc768cf55fa2ed5 08-May-2013 Michael Jurka <mikejurka@google.com> am 6dee0a0f: Merge "Fix bug where thumbnails flashed more often in Recents" into jb-mr2-dev

* commit '6dee0a0fe68096a6714b7d570241f61e4d6ea20a':
Fix bug where thumbnails flashed more often in Recents
f42d9010f1c7b47ca9d5e395c767eecf4d284daa 08-May-2013 Michael Jurka <mikejurka@google.com> Fix bug where thumbnails flashed more often in Recents

Bug: 8867698

Change-Id: I2773601d83507dbb55c3a1d0b723e3853e22d352
iewRootImpl.java
6eb036e7894758bcc357fc282070aa8677227ce1 08-May-2013 Fabrice Di Meglio <fdimeglio@google.com> am 366b97ba: Merge "Fix bug #8839681 Reversed Textbox focus order on RTL and android:imeOptions="flagNoExtractUi"" into jb-mr2-dev

* commit '366b97ba25de237c42c815c5e8ca36303ce104df':
Fix bug #8839681 Reversed Textbox focus order on RTL and android:imeOptions="flagNoExtractUi"
366b97ba25de237c42c815c5e8ca36303ce104df 08-May-2013 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #8839681 Reversed Textbox focus order on RTL and android:imeOptions="flagNoExtractUi"" into jb-mr2-dev
ad3e6cb4db99ad33fcfc61f236d37cd83446866d 30-Apr-2013 John Spurlock <jspurlock@google.com> Navigation hideybar via new system ui opt-in flag.

Apps using SYSTEM_UI_FLAG_HIDE_NAVIGATION to hide the nav bar
or SYSTEM_UI_FLAG_FULLSCREEN to hide the status bar can now
opt into hideybars by also using a new public sysui flag:
View.SYSTEM_UI_FLAG_ALLOW_OVERLAY

When opting in, apps accept the fact that bars can be overlayed
over their content, but gain the ability to use the entire gesture
space - something that was not possible before, particularly when
hiding the nav bar.

Swiping from the nav bar edge of the screen will reveal the new hidey
version of the nav bar, if applicable.

Bug: 8682181
Change-Id: I6405bee50e6516667ba6b9a62d4f1e43490b5562
iew.java
fa4c935edcfa09bb53a3aac411a285842a00ddee 08-May-2013 Alan Viverette <alanv@google.com> am 239a0c0e: Ensure ViewRootImpl.setAccessibilityFocus() doesn\'t crash when reentrant.

* commit '239a0c0e6a6fc36025fdb1c662e1c7acaec144bb':
Ensure ViewRootImpl.setAccessibilityFocus() doesn't crash when reentrant.
239a0c0e6a6fc36025fdb1c662e1c7acaec144bb 08-May-2013 Alan Viverette <alanv@google.com> Ensure ViewRootImpl.setAccessibilityFocus() doesn't crash when reentrant.

Internal state must be cleared before calling any methods on the focus
host, since the method may be called again from the host and attempt to
recycle the same AccessibilityNodeInfo twice.

BUG: 8856860
Change-Id: I0410989fd6f3ce3ce29de8edebdfbf3847188843
iewRootImpl.java
3167c88c2c18eaadb046d41e2108bf45eae0d289 08-May-2013 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #8839681 Reversed Textbox focus order on RTL and android:imeOptions="flagNoExtractUi"

- make SequentialFocusComparator RTL-aware

Change-Id: I3d9cc81f777d16933a8e1b69f8ed63efa5be0925
ocusFinder.java
fd06074c684968d372a3ad24d57c5a730532f766 07-May-2013 Romain Guy <romainguy@google.com> am c4818d86: am 4c95c537: Merge "Optimize list view scrolls Bug #8108706" into jb-mr2-dev

* commit 'c4818d860b90813bde082c381de933933abc574c':
Optimize list view scrolls Bug #8108706
c4818d860b90813bde082c381de933933abc574c 07-May-2013 Romain Guy <romainguy@google.com> am 4c95c537: Merge "Optimize list view scrolls Bug #8108706" into jb-mr2-dev

* commit '4c95c5377a75a3d6c5f3ed8b09a56071d51fadb1':
Optimize list view scrolls Bug #8108706
5549cb590d0c63e4b7717664978e8512e67a9bfa 07-May-2013 Romain Guy <romainguy@google.com> Optimize list view scrolls
Bug #8108706

Change-Id: I8679b584132e82b7bb3301a38800de4ddfc57be6
iewGroup.java
7caa1a87fe5d8dd229b296323191eaf9326a6786 06-May-2013 Fabrice Di Meglio <fdimeglio@google.com> am a8549041: am 8c2e3a41: Merge "Optimize RTL properties resolution" into jb-mr2-dev

* commit 'a8549041ccdf38f8ddbdc5fc2bce84d737a89a7e':
Optimize RTL properties resolution
38996cdcf11e46ea510795e99b0a21303d579218 06-May-2013 Dave Burke <daveburke@google.com> am 236cc476: Temporarily revert field name change (DO NOT MERGE)

* commit '236cc476e6792a11502ba4f40c7ab4586f40d282':
Temporarily revert field name change (DO NOT MERGE)
a8549041ccdf38f8ddbdc5fc2bce84d737a89a7e 06-May-2013 Fabrice Di Meglio <fdimeglio@google.com> am 8c2e3a41: Merge "Optimize RTL properties resolution" into jb-mr2-dev

* commit '8c2e3a412aaee8359a48265a101ca27e7b67301c':
Optimize RTL properties resolution
236cc476e6792a11502ba4f40c7ab4586f40d282 06-May-2013 Dave Burke <daveburke@google.com> Temporarily revert field name change (DO NOT MERGE)

VisualOn is using hidden fields, causing HBO and Xfinity to crash.
Bug: 8549617
Bug: 8331866

Change-Id: I35a9fe66dea8d56f4fcff9b492679226a17f4acc
urface.java
urfaceControl.java
09ecb255a6d37567c8ce43dcd01bfb7ed7488a5d 04-May-2013 Fabrice Di Meglio <fdimeglio@google.com> Optimize RTL properties resolution

- dont bother children about resolving RTL properties if the ViewGroup parent
has not done anything

Change-Id: Iedf8a337097e04e1ab0054d59fc347e06b347ea7
iew.java
iewGroup.java
8add80211e827abe3efe08b43f6ae1bdde014f82 04-May-2013 Romain Guy <romainguy@google.com> Merge "Add an on-screen overdraw counter"
78dd96d5af20f489f0e8b288617d57774ec284f7 03-May-2013 Romain Guy <romainguy@google.com> Add an on-screen overdraw counter

The counter can be enabled by setting the system property called
debug.hwui.overdraw to the string "count". If the string is set
to "show", overdraw will be highlighted on screen instead of
printing out a simple counter.

Change-Id: I9a9c970d54bffab43138bbb7682f6c04bc2c40bd
LES20Canvas.java
LES20RenderLayer.java
LES20TextureLayer.java
ardwareLayer.java
ardwareRenderer.java
89852c1401f318534011e9f765d73ab3e077af48 03-May-2013 Romain Guy <romainguy@google.com> Merge "Prevent a crash on devices that remove non-core services"
927bc7d72048ac90e3b95845699efb479b5589b4 03-May-2013 Romain Guy <romainguy@google.com> Prevent a crash on devices that remove non-core services

Change-Id: Id7fcf0f1f7b6ddec8e860b3c4cde98aec63d04b6
ardwareRenderer.java
b468877f7f4919acc5aeff0f8d168e94bb5fed4a 03-May-2013 Jeff Brown <jeffbrown@google.com> am f87d4ea7: am 17cf4e4d: Merge "Really make Surface thread-safe." into jb-mr2-dev

* commit 'f87d4ea77a6950c3d6d381347f2346c12bee25f4':
Really make Surface thread-safe.
f87d4ea77a6950c3d6d381347f2346c12bee25f4 03-May-2013 Jeff Brown <jeffbrown@google.com> am 17cf4e4d: Merge "Really make Surface thread-safe." into jb-mr2-dev

* commit '17cf4e4d4a576009efbfce93bd64b687601b71c7':
Really make Surface thread-safe.
17cf4e4d4a576009efbfce93bd64b687601b71c7 03-May-2013 Jeff Brown <jeffbrown@google.com> Merge "Really make Surface thread-safe." into jb-mr2-dev
97e8f6280484e3cde946b242982a0ddf95dae70e 26-Apr-2013 Kristian Monsen <kristianm@google.com> Fix for bug 8623163: Call view methods on the UI thread

Routing all methods invoked via reflection to the UI
thread and waiting for the the return value.

Change-Id: I8c38309253187f752b715453acb7f4f7bf54f9f8
iewDebug.java
b7446f9ddb905adb40f2befe6235a011a138ebd9 03-May-2013 Mathias Agopian <mathias@google.com> Merge "simplify Surface{View} dirty rect handling"
3b748a44c6bd2ea05fe16839caf73dbe50bd7ae9 18-Apr-2013 Romain Guy <romainguy@google.com> Pack preloaded framework assets in a texture atlas

When the Android runtime starts, the system preloads a series of assets
in the Zygote process. These assets are shared across all processes.
Unfortunately, each one of these assets is later uploaded in its own
OpenGL texture, once per process. This wastes memory and generates
unnecessary OpenGL state changes.

This CL introduces an asset server that provides an atlas to all processes.

Note: bitmaps used by skia shaders are *not* sampled from the atlas.
It's an uncommon use case and would require extra texture transforms
in the GL shaders.

WHAT IS THE ASSETS ATLAS

The "assets atlas" is a single, shareable graphic buffer that contains
all the system's preloaded bitmap drawables (this includes 9-patches.)
The atlas is made of two distinct objects: the graphic buffer that
contains the actual pixels and the map which indicates where each
preloaded bitmap can be found in the atlas (essentially a pair of
x and y coordinates.)

HOW IS THE ASSETS ATLAS GENERATED

Because we need to support a wide variety of devices and because it
is easy to change the list of preloaded drawables, the atlas is
generated at runtime, during the startup phase of the system process.

There are several steps that lead to the atlas generation:

1. If the device is booting for the first time, or if the device was
updated, we need to find the best atlas configuration. To do so,
the atlas service tries a number of width, height and algorithm
variations that allows us to pack as many assets as possible while
using as little memory as possible. Once a best configuration is found,
it gets written to disk in /data/system/framework_atlas

2. Given a best configuration (algorithm variant, dimensions and
number of bitmaps that can be packed in the atlas), the atlas service
packs all the preloaded bitmaps into a single graphic buffer object.

3. The packing is done using Skia in a temporary native bitmap. The
Skia bitmap is then copied into the graphic buffer using OpenGL ES
to benefit from texture swizzling.

HOW PROCESSES USE THE ATLAS

Whenever a process' hardware renderer initializes its EGL context,
it queries the atlas service for the graphic buffer and the map.

It is important to remember that both the context and the map will
be valid for the lifetime of the hardware renderer (if the system
process goes down, all apps get killed as well.)

Every time the hardware renderer needs to render a bitmap, it first
checks whether the bitmap can be found in the assets atlas. When
the bitmap is part of the atlas, texture coordinates are remapped
appropriately before rendering.

Change-Id: I8eaecf53e7f6a33d90da3d0047c5ceec89ea3af0
LES20Canvas.java
LES20DisplayList.java
LES20RecordingCanvas.java
raphicBuffer.aidl
raphicBuffer.java
ardwareRenderer.java
AssetAtlas.aidl
iewRootImpl.java
fc0ebd7d379ff63c00ebf78ca252fab5070213da 01-May-2013 Jeff Brown <jeffbrown@google.com> Really make Surface thread-safe.

There were many places where the native object was being
accessed improperly. Also some places where CloseGuard might
not be acquired or released correctly or where the generation
count might not be updated.

Fixed them all.

That said, Surface isn't intended to be used concurrently
so please don't do it. This is only intended to make
hard to find crashes less likely.

Bug: 8328715
Change-Id: I981ef33425823e0fd7ad6b64443f2ec9b0c8335e
urface.java
urfaceControl.java
c6031ab7c80b9bf8c19f3bced4797bb0bacae3f2 01-Apr-2013 Koji Fukui <koji.fukui@sonymobile.com> Avoid NullPointerException in getHandler()

mAttachInfo may be set to null by other threads while running
getHandler().

This fix assigns mAttachInfo to a local variable. Checking null pointer
and getting a member variable are executed through the local variable.
This local variable is constant. So NullPointerException doesn't occur
even if mAttachInfo is set to null while running getHandler().

Change-Id: I4013dfb7951bd864628868ed58f8c4f5b7cbd1d3
iew.java
fa4eb085c3f01c0b659c37be585c13f0a9a3b360 01-May-2013 Romain Guy <romainguy@google.com> am b107b7e9: Merge "Prevent TextureView from ever setting a null layer paint Bug #8760436" into jb-mr2-dev

* commit 'b107b7e9ecaee799a7a18b8ab897969ef554fd9b':
Prevent TextureView from ever setting a null layer paint Bug #8760436
b107b7e9ecaee799a7a18b8ab897969ef554fd9b 01-May-2013 Romain Guy <romainguy@google.com> Merge "Prevent TextureView from ever setting a null layer paint Bug #8760436" into jb-mr2-dev
b713a15f099bec6ce70c4e09d853ec2d8b085c0a 01-May-2013 Chet Haase <chet@google.com> am 8afd195d: am 6b313da0: Merge "Clarify behavior of fullscreen mode and softInputMode\'s adjustResize" into jb-mr2-dev

* commit '8afd195d47d2813822a388fbd0ea69228deafcf0':
Clarify behavior of fullscreen mode and softInputMode's adjustResize
8afd195d47d2813822a388fbd0ea69228deafcf0 01-May-2013 Chet Haase <chet@google.com> am 6b313da0: Merge "Clarify behavior of fullscreen mode and softInputMode\'s adjustResize" into jb-mr2-dev

* commit '6b313da0d89564711acfc8c66b7790da0f52d187':
Clarify behavior of fullscreen mode and softInputMode's adjustResize
4225d7965657b57d34b00d47785cef3c693784f7 30-Apr-2013 Romain Guy <romainguy@google.com> Merge "Handle Surface::lock errors in TextureView Bug #8689535"
53bacf5a91a760f6c0a966ed2f50a25e7fe12aeb 30-Apr-2013 Romain Guy <romainguy@google.com> Handle Surface::lock errors in TextureView
Bug #8689535

Change-Id: I6d16e13903a58e93940160e7656147656ab79982
extureView.java
efb709adfe61ec71dec26127b8a2a7d8ceacc767 30-Apr-2013 Romain Guy <romainguy@google.com> Prevent TextureView from ever setting a null layer paint
Bug #8760436

DO NOT MERGE

Change-Id: I7e4d09fa534f539cb99ebeaa8159fb11920460cf
extureView.java
f9aca9935341296ef93e12de2cbcf90eb67c5702 30-Apr-2013 Romain Guy <romainguy@google.com> Merge "Prevent TextureView from ever setting a null layer paint"
c2079c968dc0a1da455be5be1c44a35028b00c70 30-Apr-2013 Romain Guy <romainguy@google.com> Prevent TextureView from ever setting a null layer paint

Change-Id: If9a418b7eb9969410286df43ee805cd7d8ec17b2
extureView.java
45c89c2fadeb0324a6ad34c955f9ae998182134b 30-Apr-2013 Chet Haase <chet@google.com> Clarify behavior of fullscreen mode and softInputMode's adjustResize

Fullscreen window's will not resize when the keyboard comes on screen,
regardless of the setting of the window's softInputMode field. This fix
clarifies the docs to make this behavior more obvious.

Issue #8754615 Clarify behavior of adjustResize and fullscreen interaction

Change-Id: Ie056db4e328cefaf0edb54fe8cfa7a08f320c8d0
indowManager.java
0bd6a395d82d9b9cfa847678c65e243ba491df6e 26-Apr-2013 Svetoslav Ganov <svetoslavganov@google.com> am d3859994: am 951ce6c9: Merge "Revert change f449c0c381239dc0f78b0f01ecfb3889e056a597." into jb-mr2-dev

* commit 'd3859994624af39e0f75fd70fe623403f38c408d':
Revert change f449c0c381239dc0f78b0f01ecfb3889e056a597.
d3859994624af39e0f75fd70fe623403f38c408d 26-Apr-2013 Svetoslav Ganov <svetoslavganov@google.com> am 951ce6c9: Merge "Revert change f449c0c381239dc0f78b0f01ecfb3889e056a597." into jb-mr2-dev

* commit '951ce6c966311d36328a89784d4c2e6836e9ae87':
Revert change f449c0c381239dc0f78b0f01ecfb3889e056a597.
951ce6c966311d36328a89784d4c2e6836e9ae87 26-Apr-2013 Svetoslav Ganov <svetoslavganov@google.com> Merge "Revert change f449c0c381239dc0f78b0f01ecfb3889e056a597." into jb-mr2-dev
80246dbdb5d00b4509152d2d0837839f473a44f0 26-Apr-2013 Chris Craik <ccraik@google.com> am 57fc8122: am addc906f: Merge "Force clipping on layers that fail to be allocated" into jb-mr2-dev

* commit '57fc8122eabc08b19a41f308d409795d094856d8':
Force clipping on layers that fail to be allocated
57fc8122eabc08b19a41f308d409795d094856d8 26-Apr-2013 Chris Craik <ccraik@google.com> am addc906f: Merge "Force clipping on layers that fail to be allocated" into jb-mr2-dev

* commit 'addc906f70ba24aa4b649fff7f98d88b96c8d808':
Force clipping on layers that fail to be allocated
addc906f70ba24aa4b649fff7f98d88b96c8d808 26-Apr-2013 Chris Craik <ccraik@google.com> Merge "Force clipping on layers that fail to be allocated" into jb-mr2-dev
e7a4e636ac0923d72505efd6df8cd130c83fe97c 26-Apr-2013 Alan Viverette <alanv@google.com> Revert change f449c0c381239dc0f78b0f01ecfb3889e056a597.

Previously, onHoverEvent() would return true if a view was hoverable
and consume the event. After the change, it would return the result of
dispatchGenericMotionEventInternal(). As a result, touch exploration
caused multiple hover events to be sent from every view under a given
touch point. This change reverts to the original behavior and fixes
touch exploration.

BUG: 8723842
Change-Id: I0c7362f19c51bf21ed842711a03b7f02613958d2
iew.java
afab4fd00b0e045027442bfc43e9fb1afb56aa04 26-Apr-2013 Svetoslav <svetoslavganov@google.com> am c6eeacd9: am c38bc5ab: Merge "Lockscreen widgets not always announced." into jb-mr2-dev

* commit 'c6eeacd9341c0348c2eb29d1808eb17ea08464f4':
Lockscreen widgets not always announced.
b31c361077aae2145360288b258d71bfd40655ee 26-Apr-2013 Michael Wright <michaelwr@google.com> resolved conflicts for merge of f652551b to master

Change-Id: I210f0e45d9163a8f5b70f99eba38f343c621a8e7
c6eeacd9341c0348c2eb29d1808eb17ea08464f4 26-Apr-2013 Svetoslav <svetoslavganov@google.com> am c38bc5ab: Merge "Lockscreen widgets not always announced." into jb-mr2-dev

* commit 'c38bc5ab6b55804c7a8d440cf2bf249baa2efc98':
Lockscreen widgets not always announced.
f652551b3b6ad862b44c338835a83a562e62d98a 26-Apr-2013 Michael Wright <michaelwr@google.com> am b044c40c: Merge "Fixed javadoc in input related classes" into jb-mr2-dev

* commit 'b044c40c154ba8abe62154608812ad87993ca0d8':
Fixed javadoc in input related classes
eaddac6d2662f4443561a75b355c472c751ef6fc 26-Apr-2013 Chris Craik <ccraik@google.com> Force clipping on layers that fail to be allocated

bug:8666842

In SW rendering, a previous optimization avoided clipping to the
bounds of views that are layers. This breaks if the view fails to
create a layer (such as if it's too big), so instead look at whether
the view has a layer.

Change-Id: I653882035512012aefd91f06ff0bdc73aa5e4430
iew.java
c38bc5ab6b55804c7a8d440cf2bf249baa2efc98 25-Apr-2013 Svetoslav <svetoslavganov@google.com> Merge "Lockscreen widgets not always announced." into jb-mr2-dev
b044c40c154ba8abe62154608812ad87993ca0d8 25-Apr-2013 Michael Wright <michaelwr@google.com> Merge "Fixed javadoc in input related classes" into jb-mr2-dev
4293e233dce185e2b8163b23efa8c17ec3266a87 25-Apr-2013 Svetoslav <svetoslavganov@google.com> Lockscreen widgets not always announced.

1. The accessibility events for switching a widget were dispatched
before we update the important for accessibility property. We
were lucky to get events in some cases since the pages in the
pager had alpha grater than zero, i.e. the page was already
set as important for accessibility, due to a running animation.

2. Accessibility focus clear event not fired if we give focus to
another view. The old focus was correctly cleared just the
events were not dispatched.

bug:8599670

Change-Id: Ia2647d77eaa4e10fbaf3a047dc9ea5b728f9c3c3
iew.java
072137c80a9ce30a1c79cc416932a24bd2e4dccb 25-Apr-2013 Michael Wright <michaelwr@google.com> Fixed javadoc in input related classes

Change-Id: Ie415f812a0f473488d74119dab18296a488db6b9
nputDevice.java
nputEvent.java
eyEvent.java
otionEvent.java
490d0c446841e28df9944ddebab5e79d2b14da56 25-Apr-2013 Chet Haase <chet@google.com> am 6b4d0f21: am 42689769: Merge "Document behavior and usage of ViewGroup.bringChildToFront()" into jb-mr2-dev

* commit '6b4d0f21109209f1390125f301f20aa32e83b91a':
Document behavior and usage of ViewGroup.bringChildToFront()
6b4d0f21109209f1390125f301f20aa32e83b91a 24-Apr-2013 Chet Haase <chet@google.com> am 42689769: Merge "Document behavior and usage of ViewGroup.bringChildToFront()" into jb-mr2-dev

* commit '4268976929979ffcc54122f8090c39a8c6799273':
Document behavior and usage of ViewGroup.bringChildToFront()
0187a5d424c8618709b8f11dd7200caa0178c40e 23-Apr-2013 Chet Haase <chet@google.com> Document behavior and usage of ViewGroup.bringChildToFront()

A call to ViewGroup.bringChildToFront() or View.bringToFront()
(which delegates to the parent's bringChildToFront() method) needs
to be followed by a call to requestLayout() and invalidate() on the
parent container in order for the changes to
actually happen. That is, the order of the child views would change, but
the parent container would not run layout or even invalidation without
being told to, so there would be no visible change until something else
caused a layout and invalidation to occur.

This change clarifies this requirement in the javadocs.

Issue #8667065 bringtoTop does not work

Change-Id: Ibe41a6318dddf9fb79382e1c9fd1d21ab4510976
iew.java
iewParent.java
fb2563103b4f377867c5fa556217987903f73052 24-Apr-2013 Svetoslav <svetoslavganov@google.com> am 939ff0ac: am 4c783066: Merge "Fixing bugs exposed when moving accessibility CTS tests to UiAutomation." into jb-mr2-dev

* commit '939ff0acff8a21a023d79214130680a66214840f':
Fixing bugs exposed when moving accessibility CTS tests to UiAutomation.
939ff0acff8a21a023d79214130680a66214840f 24-Apr-2013 Svetoslav <svetoslavganov@google.com> am 4c783066: Merge "Fixing bugs exposed when moving accessibility CTS tests to UiAutomation." into jb-mr2-dev

* commit '4c78306617dd67b92fdf19101c5dfde4e21172d9':
Fixing bugs exposed when moving accessibility CTS tests to UiAutomation.
4c78306617dd67b92fdf19101c5dfde4e21172d9 24-Apr-2013 Svetoslav <svetoslavganov@google.com> Merge "Fixing bugs exposed when moving accessibility CTS tests to UiAutomation." into jb-mr2-dev
db7da0eb8b7d515c168d5b410764e24c9a0f9431 23-Apr-2013 Svetoslav <svetoslavganov@google.com> Fixing bugs exposed when moving accessibility CTS tests to UiAutomation.

1. UiAutomation#executeAndWaitForEvent method was invoking the passed
runnable while holding the lock which may lead to a deadlock. For
example: a runnable that calls getActivity() gets us into a state
like this.

2. UI automation services did not get all capabilities such a
service can have. Now a UI test service gets all of them.

3. When UiAutomation was exiting for event fired as a result of a
performed action, it was checking whether the received evnet time
is strictly before the time of executing the command that should
fire the event. However, if the execution is fast enough, i.e.
less than one millisecond, then the event time and the execution
time are the same. This was leading to a missed signal in rare
cases.

4. AccessibilityNodeInfoCache was not clearing the relevant state
for accessibility focus clearing event.

5. Accessibility text traversal in TextView was partially using text
and partially content description - broken. Now we are using the
text since for text view and content desc for other views. In other
words, we are using the most precise text we have.

6. AccessibilityManagerService was not granting capabilities of a
UiAutomation service - plainly wrong.

CTS change:https://googleplex-android-review.googlesource.com/#/c/300693/

bug:8695422
bug:8657560

Change-Id: I9afc5c3c69eb51f1c01930959232f44681b15e86
ccessibility/AccessibilityNodeInfoCache.java
7aea41b3d63f5ef5a258323e9fc1e8b0e8fbaf59 23-Apr-2013 Chet Haase <chet@google.com> am 393abb1c: am 5e650cef: Merge "Expand invalidation rectangle when clipChildren == false" into jb-mr2-dev

* commit '393abb1c54c6b847b81e2390efcd6ec95e8237f8':
Expand invalidation rectangle when clipChildren == false
058feb4e1d18bc1fcedac019d2364ebfd9a4c383 23-Apr-2013 Michael Wright <michaelwr@google.com> am 58500051: am 5fe6e4c4: Merge "Rewrite input handling for native applications" into jb-mr2-dev

* commit '585000515faacc02736f920425ae6c323223ee58':
Rewrite input handling for native applications
7ac47e8acba4d352ac2971d46589c03dad45436a 23-Apr-2013 Svetoslav <svetoslavganov@google.com> am 7bf02d12: am a61464d7: Merge "Making new node id APIs return strings." into jb-mr2-dev

* commit '7bf02d1255e86becb225ba70ca3ea8b2af90c166':
Making new node id APIs return strings.
393abb1c54c6b847b81e2390efcd6ec95e8237f8 23-Apr-2013 Chet Haase <chet@google.com> am 5e650cef: Merge "Expand invalidation rectangle when clipChildren == false" into jb-mr2-dev

* commit '5e650cef53cf1eb33f9c8b2f8e5c8b1bb24b32d9':
Expand invalidation rectangle when clipChildren == false
585000515faacc02736f920425ae6c323223ee58 23-Apr-2013 Michael Wright <michaelwr@google.com> am 5fe6e4c4: Merge "Rewrite input handling for native applications" into jb-mr2-dev

* commit '5fe6e4c4c9de523fa9e74902473996ce5ee8b298':
Rewrite input handling for native applications
7bf02d1255e86becb225ba70ca3ea8b2af90c166 23-Apr-2013 Svetoslav <svetoslavganov@google.com> am a61464d7: Merge "Making new node id APIs return strings." into jb-mr2-dev

* commit 'a61464d7adc26c291a5f9de48c9aff8b76a56b1f':
Making new node id APIs return strings.
5e650cef53cf1eb33f9c8b2f8e5c8b1bb24b32d9 23-Apr-2013 Chet Haase <chet@google.com> Merge "Expand invalidation rectangle when clipChildren == false" into jb-mr2-dev
5fe6e4c4c9de523fa9e74902473996ce5ee8b298 23-Apr-2013 Michael Wright <michaelwr@google.com> Merge "Rewrite input handling for native applications" into jb-mr2-dev
a44dd26a75e24cc021802288fb81f4761e47be6b 11-Apr-2013 Michael Wright <michaelwr@google.com> Rewrite input handling for native applications

Bug: 8473020
Change-Id: Ic4353d8924ab877bec21aff8c2dba9fe725bf906
nputQueue.java
eyEvent.java
iewRootImpl.java
9fa1ee563b5a9ca25554f1fa59d1222dcfdfc623 22-Apr-2013 Svetoslav <svetoslavganov@google.com> Making new node id APIs return strings.

The node id does not have to be decorated with spans like spannable
so it makes no sense to have these APIs use anything else but string.

bug:8657338

Change-Id: I2e7c31128ee9f2933bd0d58beac4ba31a498bb09
ccessibility/AccessibilityNodeInfo.java
a4f14ebe29b9c1286badeb47da19af4df88250dd 22-Apr-2013 Chet Haase <chet@google.com> Expand invalidation rectangle when clipChildren == false

The current invalidation logic does not take into account the clipChildren
flag. When this flag is set to false on a container (an uncommon but
possible case), it is possible for views in the child hierarchy of
the container to be draw outside of the container's bounds. But invalidations
on that view hiearrchy can be clipped to the container's bounds, causing us to
not redraw views outside of those bounds.

Fix is to expand the dirty rect of an invalidation to encompass the complete
bounds of any container with clipChildren==false.

Issue #680037 Some transform combinations can leave old pixel values on the screen

Change-Id: I426beee15d04145fac2f6b4203748ae309e392b4
iewGroup.java
323efd55d3e5cd14441e393f6c4b00280e60127b 21-Apr-2013 Michael Wright <michaelwr@android.com> am 076e1f4c: am abc2763e: Merge "KeyEvent: update comment"

* commit '076e1f4c560df7db54755b006acbea9b6eba0b76':
KeyEvent: update comment
076e1f4c560df7db54755b006acbea9b6eba0b76 21-Apr-2013 Michael Wright <michaelwr@android.com> am abc2763e: Merge "KeyEvent: update comment"

* commit 'abc2763e4587c3326d160f25666e933cc6888884':
KeyEvent: update comment
684634144b15e4da0ed04baa2c4531ef538652a6 21-Apr-2013 Chet Haase <chet@google.com> am 371d4ccc: am 339ac854: Merge "Fix quickReject logic to account for setClipChildren() setting" into jb-mr2-dev

* commit '371d4cccde56ec4d26e51f8e82ef68f196169a3d':
Fix quickReject logic to account for setClipChildren() setting
339ac85483145972da010ad34cbcb29ed70cb822 20-Apr-2013 Chet Haase <chet@google.com> Merge "Fix quickReject logic to account for setClipChildren() setting" into jb-mr2-dev
dd671599bed9d3ca28e2c744e8c224e1e15bc914 19-Apr-2013 Chet Haase <chet@google.com> Fix quickReject logic to account for setClipChildren() setting

The rendering code optimizes by rejecting drawing operations that
lie outside of the bounds of their views. This works in most
situations, but breaks down when containers have called
setClipChildren(false), because we reject drawing that is outside
of that container, but which should be drawn anyway.

Fix is to pass in the value of that flag to the DisplayList drawing
routines which take that flag into account when deciding whether
to quickReject any particular operation.

Issue #8659277 animation clipping

Change-Id: Ief568e4db01b533a97b3c5ea5ad777c03c0eea71
isplayList.java
LES20DisplayList.java
iew.java
iewGroup.java
570e07c7906943d7afa34af2aed1b37cf4bdbf78 19-Apr-2013 Craig Mautner <cmautner@google.com> am 0cf469f2: am c1876b25: Merge "Improve javadoc for rotationAnimation." into jb-mr2-dev

* commit '0cf469f21a3df42c204d9569f3d5fe465331b59d':
Improve javadoc for rotationAnimation.
c1876b256cff17ebf33e32c5a0cdaaeb7d8be2ec 19-Apr-2013 Craig Mautner <cmautner@google.com> Merge "Improve javadoc for rotationAnimation." into jb-mr2-dev
bdcc9a5811f9a037a3c4145b7469380d2dfe214b 19-Apr-2013 Craig Mautner <cmautner@google.com> Improve javadoc for rotationAnimation.

Clarified use of rotationAnimation. Did not add a comment
for ROTATION_ANIMATION_CHANGED as that would be inconsistent
with the other twelve <parameter>_CHANGED flags that it
follows in the source code.

Fixes bug 8657715.

Change-Id: I03b5caf3d6a93ca0044f58485c94c7a600e835a8
indowManager.java
7ed5180df7bd0f566d27d34d9d016dc0a7fbce7a 19-Apr-2013 Fabrice Di Meglio <fdimeglio@google.com> am 1c6e609b: am 2623a24f: Merge "Fix bug #8654490 android:paddingStart doesn\'t override android:paddingLeft" into jb-mr2-dev

* commit '1c6e609b2b5409b34d5928f506306ed9ad21adb7':
Fix bug #8654490 android:paddingStart doesn't override android:paddingLeft
2623a24ffa4d75206757684b12b06318167f8788 19-Apr-2013 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #8654490 android:paddingStart doesn't override android:paddingLeft" into jb-mr2-dev
11915d14d7a8469e40c4264449321cb3ee6c79f6 19-Apr-2013 Ying Wang <wangying@google.com> am 9454a9b3: am 4e0eb22f: Fix doc build.

* commit '9454a9b3037dfdd172e08d621a23df182bf942b4':
Fix doc build.
4e0eb22fdf56b8f3fd1bff09c4064b35b80751c1 19-Apr-2013 Ying Wang <wangying@google.com> Fix doc build.

Change-Id: Ibf0d998721a2851c31529d5b44bf86b1b3df5791
indowManager.java
1ae3b6aedde52a4b13003ee078aa193ffc611793 19-Apr-2013 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #8654490 android:paddingStart doesn't override android:paddingLeft

- in RTL mode only and if you have left/start or right/end at the same time,
the initial left/right padding (coming from the background drawable or from
some explicit definition) was still used.

- now, override the background left/right initial pading by the left/right one
only and only if there is no start/end padding defined at the same time
(because when start/end are defined, we do not care about left/right padding
except the background ones)

Change-Id: Icc6e69c95ace1307b0c5e9673cbdf3b611b62733
iew.java
667809ef5d2d1fe3796cdc9bdd09503a70d2ba6c 17-Apr-2013 Mathias Agopian <mathias@google.com> simplify Surface{View} dirty rect handling

Change-Id: Ia4595fc1a8a62ca3f3db0f1e47e7e877d73fbfa0
urfaceView.java
341a31b1072cda8b013cbadef6e75f9a771da326 18-Apr-2013 Chet Haase <chet@google.com> Merge "First draft of Scenes & Transitions feature"
faebd8f0795b7d275fb4e503533c8c0c4a9acc21 18-May-2012 Chet Haase <chet@google.com> First draft of Scenes & Transitions feature

This checkin has preliminary API (in flux, definitely changes still
to be made) and implementation for a new "Scenes & Transitions" feature.
The current implementation allows you to define different Scenes
(via layout resource IDs or callbacks) and Transitions to be used when
changing to those scenes. By default, scene changes will use AutoTransition,
which generally does the right thing.

There are no overview docs or tutorials yet. The best way to learn how things
work is to see the code for the various tests in
frameworks/base/tests/TransitionTests.

Expect the API to change. Expect the implementation to change (mostly to add
more functionality). Expect bugs, but tell me if things do not work
as expected.

Change-Id: Ib025a9f565678b225afa4759325cf6d496cc7215
iew.java
ransition/AutoTransition.java
ransition/Crossfade.java
ransition/Fade.java
ransition/Move.java
ransition/Recolor.java
ransition/Rotate.java
ransition/Scene.java
ransition/Slide.java
ransition/TextChange.java
ransition/Transition.java
ransition/TransitionGroup.java
ransition/TransitionInflater.java
ransition/TransitionManager.java
ransition/TransitionValues.java
ransition/Visibility.java
ransition/package.html
600cba973fa6889728cd7ee9938ede12c80c005a 18-Apr-2013 John Spurlock <jspurlock@google.com> Input-related documentation fixes.

Fix a few typos in InputFilter. Fix reference in InputEvent currently
causing public documentation breakage.

Change-Id: I6268ad165f11d4d9d5a4a66ed97f1538e174cf84
nputEvent.java
nputFilter.java
b35fbd5720386fd4ddce7ac43196119d725c9940 18-Apr-2013 Mathias Agopian <mathias@google.com> am 740cf4ec: am bb7b315c: Merge "add javadoc for SurfaceView {unL|l}ockCanvas{AndPost}()" into jb-mr2-dev

* commit '740cf4ec31b8d7363c9a0f839afda3d8cb0ab9a3':
add javadoc for SurfaceView {unL|l}ockCanvas{AndPost}()
bb7b315cdd48fdcffc07d0e98557cb88b9f58006 18-Apr-2013 Mathias Agopian <mathias@google.com> Merge "add javadoc for SurfaceView {unL|l}ockCanvas{AndPost}()" into jb-mr2-dev
68293ecb916677c51fa5ef826dc28f90b2dd6a96 18-Apr-2013 Chet Haase <chet@google.com> am 78296cb7: am bc09a364: Merge "Fixes for setClipBounds()" into jb-mr2-dev

* commit '78296cb760bff8bf951e88d6f4ec9a6ff3059406':
Fixes for setClipBounds()
bc09a364c3fd49470b936e7bc2521f6de9ba07b4 18-Apr-2013 Chet Haase <chet@google.com> Merge "Fixes for setClipBounds()" into jb-mr2-dev
9ddf32aa8ac5aa8c29a8063f0528838f1436e5dd 18-Apr-2013 Mathias Agopian <mathias@google.com> add javadoc for SurfaceView {unL|l}ockCanvas{AndPost}()

Bug: 8593591
Change-Id: I152281ddca8716aee97147cb1b3fb483ed46b053
urface.java
urfaceView.java
8c00be17e370fb300a22da424bd6fca1f0c90c28 17-Apr-2013 Chet Haase <chet@google.com> am 5bded3bf: am 8bba7510: Fix build - remove obsolete import of Animatable

* commit '5bded3bfe19cdf57620c7b6fa5ae7608333f3e7e':
Fix build - remove obsolete import of Animatable
8bba7510bc96d5404c070a4846318ee6a9eb1365 17-Apr-2013 Chet Haase <chet@google.com> Fix build - remove obsolete import of Animatable

Change-Id: I3133669386f50177c863f8a58733be771f819a17
iewPropertyAnimator.java
53078b25c91660e30849861e88da1a33998c554f 17-Apr-2013 Craig Mautner <cmautner@google.com> Merge "Implement stack splitting and task movement."
21f9a3608d618e3dcd30bc73dc60ebfb18690041 17-Apr-2013 Chet Haase <chet@google.com> Fixes for setClipBounds()

The invalidate region when the clip bounds are set needs to encompass both
the old clip bounds and the new bounds, to make sure that the right area
of the view gets erased as well as drawn.

Also, we need to keep our own internal copy of the bounds, not just use the
instance passed into the setter.

Issue #8634060 setClipBounds() problems

Change-Id: I123c49cff16e3debe8866974a5612a4efd010de4
iew.java
b0354021a5d11f5ebd8614f4f9b8da54de076c7c 16-Apr-2013 Chet Haase <chet@google.com> am b718735a: am b2488931: Merge "Avoid repositioning unattached overlay views" into jb-mr2-dev

* commit 'b718735aae23455126719ba0b23edf2a64875f4e':
Avoid repositioning unattached overlay views
b2488931cbd25c0e9dbc648882e272048c075741 16-Apr-2013 Chet Haase <chet@google.com> Merge "Avoid repositioning unattached overlay views" into jb-mr2-dev
32beb2c6b1ed87e122973d2c30d990cfe90514b5 11-Mar-2013 John Spurlock <jspurlock@google.com> Hideybars part I - Overlay status bar via an intent.

Implement new mode for status bar, allowing it to overlay
windows that use WM.LP.FLAG_FULLSCREEN, and introduce
transparency.

No gesture is implemented yet, for now the auto-hiding
status bar can be shown using a debugging intent.
android.intent.action.HIDEYBARS

The auto-hiding status bar hides 3 seconds after shown,
or 3 seconds after last user-interaction with the shade.

Change-Id: Ie4bd625b9cbcddea8f818154719c7a6075972f2a
iew.java
11dfb30c2f1a5d1718310d714c1f2dc3ba81ca20 16-Apr-2013 Dianne Hackborn <hackbod@google.com> am f5cfab41: am a59a19ab: Merge "Fix issue #8512015: VideoView\'s window animates when its position changes" into jb-mr2-dev

* commit 'f5cfab41c3ea1eb0cd99f7a9387af7df2b2e5991':
Fix issue #8512015: VideoView's window animates when its position changes
face742d31a7a72a4bdced5594e00e51ecee6c84 16-Apr-2013 Chet Haase <chet@google.com> Avoid repositioning unattached overlay views

Adding a view to an overlay usually entails removing the
view from its current parent, if it has one. ViewOverlay.add() will
do this automatically. At the same time, it will check to see whether
the parent view is in a different global location than the overlay's
host view, and will adjust the added view accordingly. This enables
the caller to simply toss a view into an overlay and have it end up
at the same global position on the screen.

the problem is that the current code doesn't bother to check whether
the old parent is attached. If that parent has been removed from the
view hierarchy before this overlay operation, then it will show up as
being at (0,0) in the window, not its old location. This results in the
view being mis-positioned in the overaly.

Fix is simple: if the view's old parent is not attached, simply remove
it from that parent before adding it to the overlay; don't try to compensate
for its position which is based on wrong information.

Issue #8620319 Overlay should only use relative window locations for onscreen parents

Change-Id: I414038a6c355dfd58f9766b007ac44d535ef1889
iewGroupOverlay.java
iewOverlay.java
1c5383ce0b4e162ebc9ac7e29c8c39377724d45b 16-Apr-2013 Dianne Hackborn <hackbod@google.com> Fix issue #8512015: VideoView's window animates when its position changes

Change-Id: I79eee6b9672b7d72eabe5d20be639c05a6f3d72b
urfaceView.java
indowManager.java
967212cb542e6eeb308678367b53381bff984c31 14-Apr-2013 Craig Mautner <cmautner@google.com> Implement stack splitting and task movement.

Split stacks and move tasks between them. Layout the windows
according to the new stack split.

After layout content rectangles are known split the available area
between all stack boxes. Then use those values for future layout.

Provide stack contents to ActivityManager.

Change-Id: I9746e6185445633810d506be514d0b7b540a7f99
indowManagerPolicy.java
61c37ae7cad456a6cc337b0a05aeb6b3091cf10e 15-Apr-2013 Chirayu Desai <cdesai@cyanogenmod.org> KeyEvent: update comment

Change-Id: I1ea491e7e23670bf0ea83392710010b557803178
eyEvent.java
cc6dda77501d0e8dd5ea267f51c02fd120476d28 13-Apr-2013 Mathias Agopian <mathias@google.com> am 4c87edfe: am 1763d6f9: Merge "always trigger a re-draw when updating the transparent region hint" into jb-mr2-dev

* commit '4c87edfe4d2dce71b7b723f25078cd4bd5d48456':
always trigger a re-draw when updating the transparent region hint
1763d6f957163faf6d3b629c36f4e8e90e0e31bd 13-Apr-2013 Mathias Agopian <mathias@google.com> Merge "always trigger a re-draw when updating the transparent region hint" into jb-mr2-dev
cbd5fe843d76c9d09d89d47f665026a01ac212fb 13-Apr-2013 Svetoslav <svetoslavganov@google.com> am 64076958: am 72ab9b80: Merge "Respect custom view drawing order when dispatching hover events." into jb-mr2-dev

* commit '640769589b5eb6a4c9a09f8710c3a585320fa075':
Respect custom view drawing order when dispatching hover events.
72ab9b801794d42de83d3e7afb70ccc96ade7dfb 13-Apr-2013 Svetoslav <svetoslavganov@google.com> Merge "Respect custom view drawing order when dispatching hover events." into jb-mr2-dev
54e3d38490b60cd776ad3b988d923241498816e2 13-Apr-2013 Mathias Agopian <mathias@google.com> always trigger a re-draw when updating the transparent region hint

since SF now relies on receiving a frame for latching the
transparent region hint, we make sure we will indeed redraw
something.

Bug: 8581533

Change-Id: Ia12ddf5654a7deeac7628b799bfde4b8c16c992b
iewRootImpl.java
0e5e9aa8e5528d4a09b861f10b599ee7a1cf7a32 12-Apr-2013 Svetoslav <svetoslavganov@google.com> Respect custom view drawing order when dispatching hover events.

1. The event dispatch methods should respect the child drawing order.
Hover event dispatch in ViewGroup was not repsecting this order.

bug:8606799

Change-Id: Ie2fd3aff1292c21df23a04ca0aa03a97813c44ef
iewGroup.java
1d9648df5198cbc47ecb836ce084e9258624e0d2 13-Apr-2013 Chet Haase <chet@google.com> am d04215c4: am 0a41431d: Merge "API and doc cleanup, plus small animation/UI features" into jb-mr2-dev

* commit 'd04215c440e7b7f4bbfe8aaa9a47ccdf3a8dacf5':
API and doc cleanup, plus small animation/UI features
0a41431d697a34e7fe4ed2c481484d7a63949037 13-Apr-2013 Chet Haase <chet@google.com> Merge "API and doc cleanup, plus small animation/UI features" into jb-mr2-dev
430742f09063574271e6c4091de13b9b9e762514 12-Apr-2013 Chet Haase <chet@google.com> API and doc cleanup, plus small animation/UI features

Adding features which round out the animation APIs (missing
getters, etc.). Also fix doc typos.

Issue #8350510 Add APIs needed for future animation capabilities

Change-Id: I063736848ba26e6d6c809b15fc3a103c74222f46
ayoutInflater.java
iew.java
iewGroup.java
iewPropertyAnimator.java
ffe0c56c29fb3e981f954cc822dddd84d9e3bbb8 12-Apr-2013 Craig Mautner <cmautner@google.com> am 429664a5: am d5e7b8bf: Merge "Clear test rectangle if previous focus is null." into jb-mr2-dev

* commit '429664a52ab0d024757650a246297ae8224e60dc':
Clear test rectangle if previous focus is null.
d5e7b8bfb4381baa36feb241bc65d4681f664592 12-Apr-2013 Craig Mautner <cmautner@google.com> Merge "Clear test rectangle if previous focus is null." into jb-mr2-dev
26a84dfdd09011d6a93a3758f794e4585bf10c3d 12-Apr-2013 Craig Mautner <cmautner@google.com> Clear test rectangle if previous focus is null.

A bug in FolderEditText or DynamicLayout (b/8600683) was causing
the 'rectangle' parameter passed to scrollToRectOrFocus() to be
roughly 1000 feet to the right of the screen.

This bug is normally masked because the focus found in
mLastScrolledFocus never matches the new focus and consequently
the misleading 'rectangle' is nulled. However, on the first
time in to scrollToRectOrFocus when returning to Launcher
from another app, mLastScrolledFocus is null and the code
skips over the place where 'rectangle' is nulled. Without this
clearing it was determined that 'rectangle' was outside the viewable
area and scrolling not required. This is bug 8547155.

This change causes even null values of mLastScrollFocus to be
compared to the new focus thus masking the bug in all situations.
Bug 8600683 will be fixed in a separate CL.

Fixes bug 8547155.

Change-Id: Ic6cb22c42b0e93a9793dd2babc25727c2ba29155
iewRootImpl.java
0f3e023b637fb6cd60ff6b3add527cee29463a27 11-Apr-2013 Michael Wright <michaelwr@google.com> am af543eb0: am 8881455a: Merge "Send joystick key repeat messages to correct handler" into jb-mr2-dev

* commit 'af543eb050546e2197bd54db7cf257e053add4c2':
Send joystick key repeat messages to correct handler
b9618523add13ca3835bbdaf83b8c2313ae277a2 11-Apr-2013 Michael Wright <michaelwr@google.com> Send joystick key repeat messages to correct handler

Change-Id: I7f8dbe21c9088553ad2c5efe70585f516ab78141
iewRootImpl.java
02b5d6ff13bdc9985978232dad9e78c840dacddd 10-Apr-2013 Romain Guy <romainguy@google.com> am 23886803: am 5180ed14: Merge "Instrument views inflation in systrace" into jb-mr2-dev

* commit '23886803a13f5f8f9c69fd6374ca1f732d1e513b':
Instrument views inflation in systrace
5180ed141db0f1acced4f19f37391572bc18280b 10-Apr-2013 Romain Guy <romainguy@google.com> Merge "Instrument views inflation in systrace" into jb-mr2-dev
09f7b93a184d12e5ed584206d903982b3e0915e5 10-Apr-2013 Romain Guy <romainguy@google.com> Instrument views inflation in systrace

Change-Id: If3cd80bc430893c701432f165b4c1f5943a4143c
ayoutInflater.java
c4c8f2d82e4d047c479fbdad5e1e296d745bfe3b 10-Apr-2013 Chet Haase <chet@google.com> am 78b24b6f: am dacd4751: Merge "Fix Contacts animation jank" into jb-mr2-dev

* commit '78b24b6f03f467a59afd6797b4c03224fe3af767':
Fix Contacts animation jank
dacd47516321d263efa7489b5b9bd7d8e1714332 10-Apr-2013 Chet Haase <chet@google.com> Merge "Fix Contacts animation jank" into jb-mr2-dev
58d110afa0e0f3843d72617046185a3c2d48dca9 10-Apr-2013 Chet Haase <chet@google.com> Fix Contacts animation jank

The last frame of an animation stays stuck on the screen for a couple of frames.
Specifically, the "Quick Contact" animation that animates the picture
closed (fades/scales it away) animates all the way to the end... then hangs there
briefly before being taken down.

The problem is a rendering bug where we correctly detect that a DisplayList
has nothing to draw (since the last frame is completely transparent, alpha==0),
but incorrectly ignore the fact that we cleared the transparent-background
window prior to not-drawing that DisplayList. When we detect that there's
nothing to draw, we don't bother swapping buffers. So even though we drew
the right thing (clearing the buffer), we didn't actually post the buffer to the
screen.

This change factors in both the clear and the draw to decide when to swap buffers.

Issue #8564865 Quick contact close animation jank redux

Change-Id: Ib922cff88a94f025b62f7461c1a29e96fe454838
ardwareRenderer.java
54977db25a46edb0fb0467a41498e6aad8380acc 10-Apr-2013 Jeff Brown <jeffbrown@google.com> am 55198db2: am 4dac901f: Rewrite touch navigation dpad synthesis.

* commit '55198db2dbb55d4f9ac18db81cc05c553b6c6d23':
Rewrite touch navigation dpad synthesis.
4dac901f011e7c15882e260441225633a6435e49 10-Apr-2013 Jeff Brown <jeffbrown@google.com> Rewrite touch navigation dpad synthesis.

The new implementation more accurately tracks the velocity
of flings and takes care to avoid obvious discontinuities.
The main goal is for a fling to appear to be a linear
extension of the movement already in progress. The minimum
fling velocity is set to ensure that flings appear to be
fairly smooth despite being discretized.

Use sequences of repeated key events instead of individual
down/up events to represent continuous motions in one
direction which can be helpful for stopping flings at boundaries
such as when flinging the cursor position within a text view.

Compute the movement thresholds based on the physical
size of the touch pad, if known. If not known, we assume a
nominal size.

Support stopping flings with a tap just like we do for
normal touch events elsewhere in the framework.

Moved the detection of ASSIST swipes into the InputReader
where it belongs. These swipes must be detected globally
to ensure consistent behavior across the all applications.

Added a custom protocol in EventHub to enable input device
drivers to override the timestamp of the following events
in a packet. This change enables input device drivers
that have a better idea of when an input event was actually
generated to pass this information to the input system.
Particularly useful with uinput.

Bug: 8583760
Change-Id: I8ef4e827804786d549cfaa00793a2b9dd0fda465
iewRootImpl.java
82c0edaad3ff9da2e28cd17520168e603fe394d5 10-Apr-2013 Jeff Brown <jeffbrown@google.com> am f1cee03b: am 678a1252: Split up the event synthesis code by source.

* commit 'f1cee03bf0e5d3144947609a23665d950e385635':
Split up the event synthesis code by source.
678a1252b4f3cdc18d20b411c05a4320d1d9b719 10-Apr-2013 Jeff Brown <jeffbrown@google.com> Split up the event synthesis code by source.

The goal is to better encapsulate this code to make it easier
to maintain and to facilitate some upcoming changes.

Some of the variables have been renamed but the logic is unchanged.

Bug: 8583760
Change-Id: I45501f7dabebcb938e42c386291d615d088a4c8c
imulatedDpad.java
iewRootImpl.java
8140b05f1e4dfce773ce340b157fccda769b41d2 09-Apr-2013 Jeff Brown <jeffbrown@google.com> am 9acc8c9c: am 97b968b6: Merge "Fix trackball interpretation of precision." into jb-mr2-dev

* commit '9acc8c9c53a4d3adcf3e3f220ea5e4529c3e60a4':
Fix trackball interpretation of precision.
b437a79b050e8928ce7187899b7754f049008085 09-Apr-2013 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 21dffd5d to master

Change-Id: I37c48dee471c9d43f19c1fe4a01f70db53e2441f
c6b0589b085931f10836e47ef6871962359271e0 09-Apr-2013 Chet Haase <chet@google.com> am 15c9e15e: am b9604a34: Merge "Amend getOverlay() docs for SurfaceView/TextureView" into jb-mr2-dev

* commit '15c9e15e71dba40370946ca3837b80327d2925c2':
Amend getOverlay() docs for SurfaceView/TextureView
97b968b6b3baf40e8cfd5ff147f81cd81398638a 09-Apr-2013 Jeff Brown <jeffbrown@google.com> Merge "Fix trackball interpretation of precision." into jb-mr2-dev
3a2854bcee08e3af3ca1b042c1fef6ca68f8c70a 09-Apr-2013 Jeff Brown <jeffbrown@google.com> Merge "Queues, queues, queues and input." into jb-mr2-dev
c574b68cbb3d6cf20ef7e73fef9c145de93df3de 09-Apr-2013 Jeff Brown <jeffbrown@google.com> Fix trackball interpretation of precision.

The trackball to dpad synthesis was using the MotionEvent's precision
field to determine a threshold for movement but the calculations
involved did not actually make sense for any value of precision
less than 2.0. This worked fine before since the InputReader
hardcodes the trackball's precision to 6.

Injected trackball events may have a different precision which can
result in the thresholds being set inappropriately. For example,
it was not possible to move focus by one unit at a time when
the precision was set to 1.0.

The old code was probably using precision as a way to set a
threshold based on the trackball moving by some minimum number
of physical ticks, in this case 2. But the code will work just
as well if we set an absolute threshold based on distance
traveled given that the input system is already expected to
normalize the trackball movements before delivering them to the
application.

So stop using precision.

Bug: 8473020
Change-Id: I3c6f7fb1b507f8cf5608b47550e7345fea3352fa
iewRootImpl.java
f9e989d5f09e72f5c9a59d713521f37d3fdd93dd 05-Apr-2013 Jeff Brown <jeffbrown@google.com> Queues, queues, queues and input.

Redesigned how ViewRootImpl delivers input events to views,
the IME and to native activities to fix several issues.

The prior change to make IME input event delegation use
InputChannels failed to take into account that InputMethodManager
is a singleton attached to the main looper whereas UI may be
attached to any looper. Consequently interactions with the
InputChannel might occur on the wrong thread. Fixed this
problem by checking the current thread and posting input
events or callbacks to the correct looper when necessary.

NativeActivity has also been broken for a while because the
default event handling logic for joysticks and touch navigation
was unable to dispatch events back into the native activity.
In particular, this meant that DPad synthesis from touch navigation
would not work in any native activity. The plan is to fix
this problem by passing all events through ViewRootImpl as usual
then forwarding them to native activity as needed. This should
greatly simplify IME pre-dispatch and system key handling
and make everything more robust overall.

Fixed issues related to when input events are synthesized.
In particular, added a more robust mechanism to ensure that
synthetic events are canceled appropriately when we discover
that events are no longer being resynthesized (because the
application or IME is handling or dropping them).

The new design is structured as a pipeline with a chain of
responsibility consisting of InputStage objects. Each InputStage
is responsible for some part of handling each input event
such as dispatching to the view hierarchy or to the IME.
As a stage processes an input event, it has the option of
finishing the event, forwarding the event to the next stage
or handling the event asynchronously. Some queueing logic
takes care to ensure that events are forwarded downstream in
the correct order even if they are handled out of order
by a given stage.

Cleaned up the InputMethodManager singleton initialization logic
to make it clearer that it must be attached to the main looper.
We don't actually need to pass this looper around.

Deleted the LatencyTimer class since no one uses it and we have
better ways of measuring latency these days using systrace.

Added a hidden helper to Looper to determine whether the current
thread is the indicated Looper thread.

Note: NativeActivity's IME dispatch is broken by this patch.
This will be fixed later in another patch.

Bug: 8473020
Change-Id: Iac2a1277545195a7a0137bbbdf04514c29165c60
iewRootImpl.java
indowManagerGlobal.java
nputmethod/InputMethodManager.java
95399493c6070638946e5e6acd3b3872d3a90451 08-Apr-2013 Chet Haase <chet@google.com> Amend getOverlay() docs for SurfaceView/TextureView

SurfaceView and TextureView do not currently support overlays
correctly; the docs now reflect this constraint.

Change-Id: I79183c02b51ae4cd14638198d0668b2c2e3e22e1
iew.java
iewGroup.java
b7045d2fb9d4b37333dbccb25a2ae9eee3b54577 08-Apr-2013 Chet Haase <chet@google.com> am cbfce445: am edf6f4b4: Make adding views specific to a ViewGroup\'s overlay

* commit 'cbfce445c500a12fee63e526251471839f44e26b':
Make adding views specific to a ViewGroup's overlay
edf6f4b49f6e77c349f5055372ce381b74f12efb 26-Mar-2013 Chet Haase <chet@google.com> Make adding views specific to a ViewGroup's overlay

Adding views to views (possible with the new Overlay API) is weird.
This change moves the view-management facilities of Overlay to a subclass
that is specific to the overlay returned from ViewGroup.getOverlay().
So now you can add drawables to all view overlays, but only add/remove
views to/from the overlay returned from ViewGroup.getOverlay().

Also, the previous approach of using an interface for Overlay was
changed to classes for both ViewOverlay and ViewGroupOverlay.

Finally, this change makes not handling touch correctly the proper,
and documented, behavior of overlay views. There are various tricky issues
to sort out with input in overlays (including click handling as well as focus)
and we don't want developers starting to use overlays as some kind of general
container hierarchy, so we're purposely constraining overlays to have visual-only
behavior.

Issue #8459085 Overlay needs to handle touch correctly

Change-Id: I207b8dbf528f87c92369d270d8b0a6556826d207
verlay.java
iew.java
iewGroup.java
iewGroupOverlay.java
iewOverlay.java
8775af6319105c45b7440a5baf71d36c81815f11 06-Apr-2013 Michael Wright <michaelwr@google.com> am aaddfacf: am bdb706e4: Merge "Pipe through device resolution information" into jb-mr2-dev

* commit 'aaddfacf962655d82f3ad64723ea408f949a2b79':
Pipe through device resolution information
bdb706e48d71af498156efbb10d0f0c1fcef8878 05-Apr-2013 Michael Wright <michaelwr@google.com> Merge "Pipe through device resolution information" into jb-mr2-dev
ae9d6aa6d96ad382bba27e8104ea99ad06d81008 05-Apr-2013 Jeff Brown <jeffbrown@google.com> am 4c2a7b23: am 4a706bc6: Merge "Correctly manage the lifecycle of IME InputChannels." into jb-mr2-dev

* commit '4c2a7b23f5f012cf00357035f840a32d4da20eb5':
Correctly manage the lifecycle of IME InputChannels.
4a706bc6f1dcf4483b282d5758e22482cf02506f 05-Apr-2013 Jeff Brown <jeffbrown@google.com> Merge "Correctly manage the lifecycle of IME InputChannels." into jb-mr2-dev
1951ce86c21445ac191e4d2d95233f4f5c096b56 05-Apr-2013 Jeff Brown <jeffbrown@google.com> Correctly manage the lifecycle of IME InputChannels.

InputChannels are normally duplicated when sent to a remote process
over Binder but this does not happen if the recipient is running within
the system server process. This causes problems for KeyGuard because the
InputMethodManagerService may accidentally dispose the channel
that KeyGuard is using.

Fixed the lifecycle of InputChannels that are managed by the IME
framework. We now return a duplicate of the channel to the application
and then take care to dispose of the duplicate when necessary.
In particular, InputBindResult disposes its InputChannel automatically
when returned through Binder (using PARCELABLE_WRITE_RETURN_VALUE).

Bug: 8493879
Change-Id: I08ec3d13268c76f3b56706b4523508bcefa3be79
nputChannel.java
c6091c64c90e9557ea58e0d7cf75915aea7c6c3e 02-Apr-2013 Michael Wright <michaelwr@google.com> Pipe through device resolution information

Bug: 8424494
Change-Id: Iafeeee0d5cd29342c1cdc86b9616222aaa5d1b94
nputDevice.java
49084108f20e3f3737cb6fa1c1635a6ba348f159 05-Apr-2013 Romain Guy <romainguy@google.com> am 9ff408c1: am faec826b: Merge "Reduce the size of dirty invalidates" into jb-mr2-dev

* commit '9ff408c17be8cccc9820d46b207673be22bfbe84':
Reduce the size of dirty invalidates
faec826bd6051e41e1299cd14d580a4f50f6fe97 05-Apr-2013 Romain Guy <romainguy@google.com> Merge "Reduce the size of dirty invalidates" into jb-mr2-dev
e55945e219dbf4664683a757c5a9d462c98f2e19 05-Apr-2013 Romain Guy <romainguy@google.com> Reduce the size of dirty invalidates

Remove remnants from times long gone. We don't need to redraw the
union of the previous frame's dirty region and the new dirty
region.

Change-Id: I9fb96f99a6a72c2233f9ca563cf6432a42b2b65b
ardwareRenderer.java
iewRootImpl.java
b38af997f683634de436922d45854c1e2d76415a 04-Apr-2013 Chet Haase <chet@google.com> am 98f69881: am 77d94957: Merge "Adding small animation features" into jb-mr2-dev

* commit '98f69881ce28fef261da45c7fbd7ee79e9b8d637':
Adding small animation features
b989502e5cf44d65c6dddc0179b6d9b6e61ef7fd 03-Apr-2013 Chet Haase <chet@google.com> Adding small animation features

RectEvaluator is useful when animating object bounds.
The other change is a hidden API that allows temporary suspension
of layout, useful for animations which need to animate view bounds
without conflicting with layout passes that might happen in the middle
of the animation.

Change-Id: I3dc08cb6ec455dfa3409e825506b218d3ea63d7a
iewGroup.java
e4d9a01bfc7451afff1ed399a5801c7aa2af2831 29-Mar-2013 Dan Morrill <morrildl@google.com> Phase 1 of refactoring SystemServer.

SystemServer is currently a monolithic class that brings up key system
services. This change is the first phase of refactoring it to be more
configurable. Specifically, it adds a set of on/off switches used to control
startup of individual services. Future plans include finer grained controls
and a more explicit and consistent startup sequence for these services.

Change-Id: I7299f5ce7d7b74a34eb56dffb788366fbc058532
iewRootImpl.java
739d5507e04abb16b1b5c7e647b8a461b7e0d955 04-Apr-2013 Jeff Brown <jeffbrown@google.com> am 6d21e404: am 41c07671: Merge "Clear mCurSender when mCurChannel is modified." into jb-mr2-dev

* commit '6d21e404ce834779b061fb519d85c9f95dccfd3d':
Clear mCurSender when mCurChannel is modified.
4d656885ed9afec7d758c1862df6f040f5fe16a9 03-Apr-2013 Jeff Brown <jeffbrown@google.com> Clear mCurSender when mCurChannel is modified.

This fixed an issue where an InputEventSender might outlive
its usefulness and continue to be used well after it should
have been disposed or recreated.

Also improves the queue management somewhat.

Bug: 8493879
Change-Id: I7e0b6a3c43cbe72f8762991f5d36560feebd214b
nputmethod/InputMethodManager.java
7ee8002aabdf96ef8a2e018692489cd43902b169 03-Apr-2013 Scott Kennedy <skennedy@google.com> resolved conflicts for merge of b5d6b3fe to master

Change-Id: Ib7beb5c22fadd7aae5039d49a819fbc91d355b6b
688c33448572fa3879b1486d8fa1bf16cd946211 03-Apr-2013 Scott Kennedy <skennedy@google.com> am 23eda7cd: am 76f9a0a6: am c318dbcf: am 2dd01a0b: am 555c82cd: am f7c06ddb: Merge "docs: Typos and other fixes" into jb-mr1-dev

* commit '23eda7cd0a2b80bafcba7c24f49a73a2f11f782f':
docs: Typos and other fixes
23eda7cd0a2b80bafcba7c24f49a73a2f11f782f 03-Apr-2013 Scott Kennedy <skennedy@google.com> am 76f9a0a6: am c318dbcf: am 2dd01a0b: am 555c82cd: am f7c06ddb: Merge "docs: Typos and other fixes" into jb-mr1-dev

* commit '76f9a0a6800d8a8945156a95dea79f16ec704b3d':
docs: Typos and other fixes
76f9a0a6800d8a8945156a95dea79f16ec704b3d 03-Apr-2013 Scott Kennedy <skennedy@google.com> am c318dbcf: am 2dd01a0b: am 555c82cd: am f7c06ddb: Merge "docs: Typos and other fixes" into jb-mr1-dev

* commit 'c318dbcf358772ab53b0380edb3e487a773ad2d8':
docs: Typos and other fixes
555c82cd43ef8d11bcf54f023864619869c06411 03-Apr-2013 Scott Kennedy <skennedy@google.com> am f7c06ddb: Merge "docs: Typos and other fixes" into jb-mr1-dev

* commit 'f7c06ddbfc79921d389ed6699df17e54c428571e':
docs: Typos and other fixes
f7c06ddbfc79921d389ed6699df17e54c428571e 03-Apr-2013 Scott Kennedy <skennedy@google.com> Merge "docs: Typos and other fixes" into jb-mr1-dev
fc00755627348659df2ca3e1b00942baa8239ceb 03-Apr-2013 Jeff Brown <jeffbrown@google.com> am 4c20e618: am a4ca8ea0: Fix reference cycle in InputEventReceiver and Sender.

* commit '4c20e61808a75f217e99b589261821ca453cea1b':
Fix reference cycle in InputEventReceiver and Sender.
a4ca8ea0ad14c509d1ced46482e83c1b8a518982 03-Apr-2013 Jeff Brown <jeffbrown@google.com> Fix reference cycle in InputEventReceiver and Sender.

If the receiver or sender was not properly disposed, then
the underlying input channel might be leaked because the
native peer was holding a strong reference to the object.

Switched to using a weak reference.

Also updated Binder to use a new helper created for this purpose.

Change-Id: I19680bf96d0548777bff02aa1d91874d1e8e41da
nputEventReceiver.java
nputEventSender.java
c849fbcf3ddd3cbb08840c72f7f325294c5d2802 02-Apr-2013 Brian Colonna <bcolonna@google.com> resolved conflicts for merge of 5856ee4b to master

Change-Id: I60ba85bc246b9cf25d467b2099535aad47f82ca7
1eccc0cf5f7f33203091c0b475a4ad91570c85cd 02-Apr-2013 Brian Colonna <bcolonna@google.com> Merge "FUL now restarts when flipping tablet 180 (bug 7484464)" into jb-mr2-dev
d4c5453464e8403a57caeebab5e51905f9125aa0 02-Apr-2013 Chet Haase <chet@google.com> am 7aab1134: am c99d3c1f: Stop jank from window animations overlapping activity animations

* commit '7aab1134236a30aa2e595be55fcc7b5c90982413':
Stop jank from window animations overlapping activity animations
92ce5e95b8b87eba0a0b41f7b89312dae37680d8 02-Apr-2013 Chris Craik <ccraik@google.com> am bb3c5e18: am 94d6170b: Merge "Update view\'s alpha and layer docs" into jb-mr2-dev

* commit 'bb3c5e184a41ec3ad7d11c3a0a66439edda4f74d':
Update view's alpha and layer docs
bc15cf55f5ba1cd1b1392ed7194530e4550875d0 02-Apr-2013 Michael Wright <michaelwr@google.com> am ef588f73: am 54531f81: Merge "Flush pending input events immediately upon channel dispose" into jb-mr2-dev

* commit 'ef588f73cf9bf01a693f468f597239e27834c730':
Flush pending input events immediately upon channel dispose
c99d3c1fd618c1f64103b4f39dd95330309be5a3 30-Mar-2013 Chet Haase <chet@google.com> Stop jank from window animations overlapping activity animations

Relaunching a running activity will sometimes cause animations in that
activity to run, causing jank due to too much happening (window animations
on that same window running at the same time).

An earlier fix pauses application rendering while window animations are running,
but only the first time the activity comes up. If the window is animated
after that (such as is the case with re-launching it while it is running
in the background), rendering, and therefore animations, happen as usual,
causing the jank.

The fix is to simply broaden the scope of when application rendering is
paused to include anytime the window is animating.

Issue #8472972 Make app animations play nice with window animations

Change-Id: I1dd8da039fcb4d1faf6c0811bae97ef2847deb84
iewRootImpl.java
94d6170b67bcfb5dc5a0c988752d34e64a5f5272 02-Apr-2013 Chris Craik <ccraik@google.com> Merge "Update view's alpha and layer docs" into jb-mr2-dev
16ecda5317c40fc3da284952d9b3add34d6763ae 29-Mar-2013 Chris Craik <ccraik@google.com> Update view's alpha and layer docs

bug:8501661

Makes the performance issues and interaction with layer type/paint
more clear.

Additionally, corrects change from 47ab7d6612e2b5b8b66fb261dafef7c91264e173
to still allow displayList alpha to override layer paint

Change-Id: Ic94d75865700820489370461cd8ac9f9077a8d90
iew.java
ef17e8710e1d55d1c34dd46a48c4d0eb36b15117 01-Apr-2013 Michael Wright <michaelwr@google.com> Flush pending input events immediately upon channel dispose

Change-Id: I949326423f733376aa8d3121bfed24fd76ca0784
nputmethod/InputMethodManager.java
cfa775447e2a2b76c38b5ae5954fb64c8c2b48e3 30-Mar-2013 Fabrice Di Meglio <fdimeglio@google.com> am 68951ee9: am 83390182: Merge "Optimize ViewGroup.MarginLayoutParams memory and fix ViewDebug" into jb-mr2-dev

* commit '68951ee958e72319facc267289ca363622758e0a':
Optimize ViewGroup.MarginLayoutParams memory and fix ViewDebug
83390182bfe50a3611d78b57ab2f3a8558ede2aa 30-Mar-2013 Fabrice Di Meglio <fdimeglio@google.com> Merge "Optimize ViewGroup.MarginLayoutParams memory and fix ViewDebug" into jb-mr2-dev
6f7941484b8b8128d054e989c7263714b9ac75eb 30-Mar-2013 Michael Wright <michaelwr@google.com> am b09b5d42: am ee5880c9: Merge "Finish any event in the current input queue" into jb-mr2-dev

* commit 'b09b5d42ec07a050f1b27d59684393af96cd8704':
Finish any event in the current input queue
ee5880c95a6f6528a2497e1cc9580880aa1c95ef 29-Mar-2013 Michael Wright <michaelwr@google.com> Merge "Finish any event in the current input queue" into jb-mr2-dev
b1b9a8ac07ea7d438eda613f4c798dd8b10a66ce 29-Mar-2013 Brian Colonna <bcolonna@google.com> FUL now restarts when flipping tablet 180 (bug 7484464)

When a tablet rotates, FUL must be stopped and restarted in a new
position. 90 degree rotations cause a configuration change, causing
FUL to be automatically reconstructed in the new location. However,
a 180 degree rotation is not a configuration change, so FUL was not
restarting. A 180 degree rotation happens more often than one might
think. If you set the tablet down and later picked it up in the
opposite orientation, FUL would not work prior to this fix.

This change adds a rotation watcher to KeyguardFaceUnlockView. It
watches for 180 degree rotations and stops and restarts FUL
accordingly.

The rotation watcher callback must be unregistered when
KeyguardFaceUnlockView is recreated (as during 90 degree rotation
changes), otherwise the number of rotation watcher callbacks will keep
growing and they will never go away. This is a problem not just
because there are many callbacks hanging around, but also because the
old callbacks end up trying to access biometric unlock views that no
longer exist, resulting in crashes. So, a simple function was added
to the window manager to unregister a rotation watcher.

Change-Id: Ie1ef20a9a22b8f4e39918987dff2b8ad444fcfd1
WindowManager.aidl
bf02096088ffff97738e9f9f01054a730d2f219f 29-Mar-2013 Michael Wright <michaelwr@google.com> Finish any event in the current input queue

When the pipelining optimization was added we never updated
handleImeFinishedEvent to look through the whole queue of items, so it was only
looking at the head.

Bug: 8498214
Change-Id: I79c62392a93b47e3e1eab3f4fe54a5c999dfb566
iewRootImpl.java
b365f91688dc081b3bcea82377ce0e94c09124ff 28-Mar-2013 Fabrice Di Meglio <fdimeglio@google.com> Optimize ViewGroup.MarginLayoutParams memory and fix ViewDebug

- use private flag bit field for ViewGroup.MarginLayoutParams
- make ViewDebug support "byte" type for FlagMapping

Change-Id: Iff7c31544e3ce2d29919c9424425f2bf87042b8b
iewDebug.java
iewGroup.java
e2869125f105e71ca57a36b54004f2880ceaac0d 28-Mar-2013 Eric Laurent <elaurent@google.com> am b02e254d: am 7692d1f1: Merge "Display vibrate icon in volume panel" into jb-mr2-dev

* commit 'b02e254d45af260b9e9c11bff7cb1db427e77ace':
Display vibrate icon in volume panel
7692d1f1654975ef0ef59e6b8dc881299194babf 28-Mar-2013 Eric Laurent <elaurent@google.com> Merge "Display vibrate icon in volume panel" into jb-mr2-dev
97207ab9669ebb9c166c5d8aa2cd354f2081dbe3 27-Mar-2013 Fabrice Di Meglio <fdimeglio@google.com> am 9fb9a0f3: am f7fa08b7: Merge "Fix bug #8487785 Notification shade has text overlapping the icon" into jb-mr2-dev

* commit '9fb9a0f3b8c22ca538a36b81769c7e1080fcf9f9':
Fix bug #8487785 Notification shade has text overlapping the icon
f7fa08b7024fa91001080a766cd9ac8eab82d634 27-Mar-2013 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #8487785 Notification shade has text overlapping the icon" into jb-mr2-dev
02a7d5637c961632dc67cd0012addfdd6060885b 27-Mar-2013 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #8487785 Notification shade has text overlapping the icon

- follow up to the fix for bug #8480245 ViewGroup layout margins can be wrong in RTL mode
- deal with "RTL compatibility mode": if left/right margins are not defined and if we
haev some start/end ones then use the start/end ones.

Change-Id: I98fe3276de2bd14f60a1c423a47569a68046f7be
iewGroup.java
c5ebd80c43e388977e4ef978f18fa5fc36bd8650 27-Mar-2013 Jeff Brown <jeffbrown@google.com> am 901b77c6: am ca3d655d: Merge "Use input transport for communications between app and IME." into jb-mr2-dev

* commit '901b77c63bc707c5785a149975e2113a43e38ad6':
Use input transport for communications between app and IME.
ca3d655d20c13c71972a4475cec3b98efa7dbdd0 27-Mar-2013 Jeff Brown <jeffbrown@google.com> Merge "Use input transport for communications between app and IME." into jb-mr2-dev
9a8c46f64e9fb1bff30d16a3f6a16e8f261f1225 27-Mar-2013 Fabrice Di Meglio <fdimeglio@google.com> am fc7a1020: am a803b094: Merge "Fix bug #8480245 ViewGroup layout margins can be wrong in RTL mode" into jb-mr2-dev

* commit 'fc7a1020716d86204e7190b899a2e30fba4e9055':
Fix bug #8480245 ViewGroup layout margins can be wrong in RTL mode
a803b094c6c60539426396ad57f0733cbe212664 27-Mar-2013 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #8480245 ViewGroup layout margins can be wrong in RTL mode" into jb-mr2-dev
5ab6d905782562995f1755f03c3716887fba53b8 27-Mar-2013 Dianne Hackborn <hackbod@google.com> am a4820789: am 5871b258: Merge "Change wm commands to return size and density info." into jb-mr2-dev

* commit 'a4820789136c814e1e9ae26d5a0712e1c7fd4dd5':
Change wm commands to return size and density info.
0072f64939b37a4d84940656c2180ad2e0594ff4 26-Mar-2013 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #8480245 ViewGroup layout margins can be wrong in RTL mode

- fix resolution of MarginLayoutParams
- update related RelativeLayout code

Change-Id: I261f127a8897f60d316fed2a73e6e76020e542cc
iewGroup.java
55a67694e19217f3cc0e45b79eb31d48ce3135dd 27-Mar-2013 Romain Guy <romainguy@google.com> am 5e83199d: am 2509437e: Merge "Avoid multiple font cache texture uploads Bug #8378964" into jb-mr2-dev

* commit '5e83199dc92d496d7dd6b1316169669e27fe2e99':
Avoid multiple font cache texture uploads Bug #8378964
5871b258afd0bf3a2d58dea437b340a4f5b382cf 27-Mar-2013 Dianne Hackborn <hackbod@google.com> Merge "Change wm commands to return size and density info." into jb-mr2-dev
2509437e309827dbfe8bf3797d59c0d01af13972 27-Mar-2013 Romain Guy <romainguy@google.com> Merge "Avoid multiple font cache texture uploads Bug #8378964" into jb-mr2-dev
99656fdce94a2faa9821bbfc8e90b34e69a53a00 27-Mar-2013 Michael Wright <michaelwr@google.com> am 09f4d819: am cf797a5e: Merge "Deliver key repeats for artificial dpad events" into jb-mr2-dev

* commit '09f4d8198a9bf052904d8a38f85e4cc461fb66ba':
Deliver key repeats for artificial dpad events
cf797a5e43873ef819974f67dea29e424b244079 27-Mar-2013 Michael Wright <michaelwr@google.com> Merge "Deliver key repeats for artificial dpad events" into jb-mr2-dev
c28867a1d67121ce5963de135e3ae2b1dbd9a33d 26-Mar-2013 Jeff Brown <jeffbrown@google.com> Use input transport for communications between app and IME.

The input method manager service now supplies an input channel for
communication while creating an IME session on behalf of the
application.

This change significanly reduces the overhead of IME event dispatch
by using a standard input channel to send input events rather than
using binder. This results in fewer thread context switches
and fewer object allocations.

What's more, the IME may perform additional batching of the motion
events that it receives which may help it catch up if it is
getting behind while processing them.

Bug: 7984576
Bug: 8473020
Change-Id: Ibe26311edd0060cdcae80194f1753482e635786f
nputChannel.java
nputEventSender.java
iewRootImpl.java
nputmethod/InputMethodManager.java
96885eb480c5e0526fe2f77d30f6e551f3f3ceab 26-Mar-2013 Romain Guy <romainguy@google.com> Avoid multiple font cache texture uploads
Bug #8378964

This change defers drawing into layers until after the renderer for FBO0
is ready to draw. At that point, all the precaching is done which means
all glyphs can be uploaded at once in the font caches.

Change-Id: Ie1f7a7ff30f76f06fb3dbc72c7d05e66207d1ecb
ardwareRenderer.java
672cf45de7aa5ad6fd1f75512ee5a451a16c0b39 26-Mar-2013 Dianne Hackborn <hackbod@google.com> Change wm commands to return size and density info.

Change-Id: Id25722fe5f0cd9470d04d657f067e5ad29927c98
WindowManager.aidl
40f8f0d1366e8ba47a17376e51c9fc7291ffdc16 26-Mar-2013 Michael Wright <michaelwr@google.com> Deliver key repeats for artificial dpad events

Bug: 8425219
Change-Id: Ib41b06ed40d43f2e30ce2a647871a76cea80177b
iewRootImpl.java
89d4c0f3cb88b6366f26b1745db78bcef3680831 26-Mar-2013 Chet Haase <chet@google.com> am 656ed307: am bc6c050f: Merge "Fix touch processing for Overlay views" into jb-mr2-dev

* commit '656ed307168ec2006108877a03788a31b15ebb78':
Fix touch processing for Overlay views
8a51acae5d8ec50786cbe3b9079092811da8fadc 26-Mar-2013 Eric Laurent <elaurent@google.com> Display vibrate icon in volume panel

When a tablet is in vibrate mode, the notification
volume icon in the expanded volume panel should
be vibrate and not silent.

Bug 7235006

Change-Id: I150c1f0f571e3910ebae57442a75740cef00341e
olumePanel.java
9c17fe693deb0cc84099b619185472f192c2b52d 23-Mar-2013 Chet Haase <chet@google.com> Fix touch processing for Overlay views

Previous implementation processed Overlay touch after other children in
a ViewGroup; it should be the other way around.

Also, fixed some invalidation issues.

Finally, added new behavior to automatically place View which is already
parented into the same global position, by calculating where the overlay is
on the screen relative to the previous parent of the View.

Issue #8459085 Overlay needs to handle touch correctly

Change-Id: Ic2cee12d2bc345f64ed3f4d855a5c3496967a201
verlay.java
iew.java
iewGroup.java
iewOverlay.java
49065c5e77c26badcd864b37c1c985eea3848762 23-Mar-2013 Michael Wright <michaelwr@google.com> am 4e58e9c5: am 53d13667: Fix log tags in trackball debugging

* commit '4e58e9c579b5ca3496118177728119531c066666':
Fix log tags in trackball debugging
53d13667e39f12644d03278c33298351ac68ec26 21-Mar-2013 Michael Wright <michaelwr@google.com> Fix log tags in trackball debugging

Change-Id: I02a623c96aff8b6ffbe11161feea39ad26ba0e83
iewRootImpl.java
e9e9aa650c8f5325fc404fadc1a8a031f9499ad5 23-Mar-2013 Dianne Hackborn <hackbod@google.com> am c31dc858: am 1a89c532: Merge "New media button API." into jb-mr2-dev

* commit 'c31dc858488ce291f434ab8bb7b90629f7a0ce27':
New media button API.
1a89c5324badd10dac142a5a0c40a203503db65f 23-Mar-2013 Dianne Hackborn <hackbod@google.com> Merge "New media button API." into jb-mr2-dev
d2500739f8d0af84c24533d5a46498af39a8a16f 22-Mar-2013 Michael Wright <michaelwr@google.com> am a329c83d: am 88a0765d: Merge "Add pipelining optimization to IME dispatching" into jb-mr2-dev

* commit 'a329c83d6673f51c539a6f99d9b16e03c55eeac4':
Add pipelining optimization to IME dispatching
88a0765dd4f18ce367f2874f5972816644090b0d 22-Mar-2013 Michael Wright <michaelwr@google.com> Merge "Add pipelining optimization to IME dispatching" into jb-mr2-dev
acdb67d280403425160f24b89f4734c25f6edf8c 22-Mar-2013 Chris Craik <ccraik@google.com> am 27c809db: am 81cce37d: Merge "Restore final canvas state after deferred flush" into jb-mr2-dev

* commit '27c809dba4b470bfcc00d7dc89ccf81ac36e1c3c':
Restore final canvas state after deferred flush
81cce37deda2bd097d245c4d54806a354971a97c 22-Mar-2013 Chris Craik <ccraik@google.com> Merge "Restore final canvas state after deferred flush" into jb-mr2-dev
961cae92540763226648813d111c5b5c3b0f1597 20-Mar-2013 Dianne Hackborn <hackbod@google.com> New media button API.

This allows sending media buttons to any PendingIntent,
so they can be captured with a registered receiver.

Also add some new ViewTreeObserver APIs; this is all for
a new support library API to watch media buttons while an
app has input focus.

Change-Id: I3c51cef59460662b008c9a2cc87d6a6383c21855
iewRootImpl.java
iewTreeObserver.java
c8a7e54fefbb70341427fe5b384447f30e1816f2 21-Mar-2013 Michael Wright <michaelwr@google.com> Add pipelining optimization to IME dispatching

Rather than wait for the IME to return before sending it the next input event,
send all available input events as soon as we receive them.

Bug: 7984576
Change-Id: Ie0b1086efc4f9e1ececac22afd997829304bf180
iewRootImpl.java
nputmethod/InputMethodManager.java
a4e16c58c9e3c983251e0475125a2a6f5bec2dbf 22-Mar-2013 Chris Craik <ccraik@google.com> Restore final canvas state after deferred flush

bug:8450062

- Fixes overdraw indication with DeferredDisplayList
- Fixes drawHardwareLayer called after flush

Additionally changes drawLayer to pass its paint to native via setLayerPaint

Wrap flush in save/restore so that reordering doesn't affect final
transform

Change-Id: I08befa42c28500da6387699eefd4be28aedf9f4c
LES20Canvas.java
0878312fd96be3499d982dd4029ffc8cdd487bab 22-Mar-2013 Michael Wright <michaelwr@google.com> am 621c35e4: am 765ddb4b: Merge "Separate sessionCreated and finishedEvents callbacks" into jb-mr2-dev

* commit '621c35e4fc83c2864a82da31aac767832ce86df6':
Separate sessionCreated and finishedEvents callbacks
dd1e7728c0429357efc586cef81399b50ca58e31 22-Mar-2013 Michael Wright <michaelwr@google.com> am f2cf401c: am d46ded88: Merge "Add tracing for pending queue size" into jb-mr2-dev

* commit 'f2cf401c03c494e62d9f92109240090d2e1c4062':
Add tracing for pending queue size
52a53526265c801b70eaf6dab1acf5c3f628f8a6 14-Mar-2013 Michael Wright <michaelwr@google.com> Separate sessionCreated and finishedEvents callbacks

Bug: 8276952
Change-Id: If7051086c060fcce5d1e958ebbddec0784c851da
nputmethod/InputMethodManager.java
95ae9429ee3555f4a1f396da423413ba496bdf33 14-Mar-2013 Michael Wright <michaelwr@google.com> Add tracing for pending queue size

Change-Id: Ib31c2245feca31d0276ef1ebf6e6d237d0297671
iewRootImpl.java
22fc72c8a8a2ddd3665fe509bf0990c3a01bae77 21-Mar-2013 Chet Haase <chet@google.com> am bcba9442: am 10c4d99f: Merge "Manage drawable invalidation automatically for Overlays" into jb-mr2-dev

* commit 'bcba9442d4066c9e34ee7a9f050b2858465e052a':
Manage drawable invalidation automatically for Overlays
633326e29f008d2b86e523cfeedcbb2a0883181f 21-Mar-2013 Chet Haase <chet@google.com> Manage drawable invalidation automatically for Overlays

Drawables added to a view's Overlay will now cause the Overlay to
be invalidated via the normal drawable-invalidation mechanism. That is,
changes to any of the drawables in the overlay should cause invalidation of
the proper area of the overlay and thus the hostView, causing the appropriate
area to be redrawn.

Also, fixed a bug in drawable invalidation so that bounds changes will now
correctly invalidate both the old and new bounds areas.

Issue #8350510 Add APIs needed for future animation capabilities

Change-Id: Icae5fa0e420232ee17dc39be10084345bae8dbd8
verlay.java
iewOverlay.java
3351b988a3d99d47ed891ea69b8d575537b8c638 20-Mar-2013 Mathias Agopian <mathias@google.com> am c7edf2b0: am 0a4962ad: Merge "make Surface.java internal state thread-safe" into jb-mr2-dev

* commit 'c7edf2b033b5119f9a78e48fe07e88e02de84bdc':
make Surface.java internal state thread-safe
0a4962ad11fadf7798c360efaee31b8d9d75bc9e 20-Mar-2013 Mathias Agopian <mathias@google.com> Merge "make Surface.java internal state thread-safe" into jb-mr2-dev
a7724c4588e1c86c3cd142d01adb9a56b4067530 19-Mar-2013 Fabrice Di Meglio <fdimeglio@google.com> am cfd610ff: am 5054803a: Merge "Add missing ViewDebug infos for View.getTextDirection()" into jb-mr2-dev

* commit 'cfd610ffd9c301740aabd73a980136a8f2f7f481':
Add missing ViewDebug infos for View.getTextDirection()
5054803a022b0df4cc616e19085ed6fb70ed33e8 19-Mar-2013 Fabrice Di Meglio <fdimeglio@google.com> Merge "Add missing ViewDebug infos for View.getTextDirection()" into jb-mr2-dev
83f15e657cc131ba1095d63fe22256d62800210e 19-Mar-2013 Fabrice Di Meglio <fdimeglio@google.com> Add missing ViewDebug infos for View.getTextDirection()

- as getTextDirection() values were not showing in hierarchyviewer

Change-Id: I4ae74963a3c3b350ba996d098e5714b6538d9553
iew.java
7c116b54b743cc3e92ac42abdbbe324d63b50a81 19-Mar-2013 Mathias Agopian <mathias@google.com> make Surface.java internal state thread-safe

it's still incorrect to use Surface from different
threads, however this shouldn't result to native crashes
anymore.

Bug: 8328715
Change-Id: I89ac5cc1218dc5aa0e35f8e6d4737879a442f0c6
urface.java
e5fd925e8ea0f3e1a0373fa74227cf04a036e17d 19-Mar-2013 Mathias Agopian <mathias@google.com> am ea9758fb: am ab7409e6: Merge "improve SurfaceControl.screenshot documentation" into jb-mr2-dev

* commit 'ea9758fb9d4daf4e2efbb215472e4fa58303b2df':
improve SurfaceControl.screenshot documentation
49ff2c615e53cd9c3e8b5e4792a68026fb079671 17-Mar-2013 Mathias Agopian <mathias@google.com> improve SurfaceControl.screenshot documentation

Change-Id: I7e17f69f74df8610b5b85fac0127727df973be42
urfaceControl.java
e3a30a0305909c14c879db8df9cbbba8a1fa828d 18-Mar-2013 Craig Mautner <cmautner@google.com> Merge "Start moving Tasks from DisplayContent to TaskStack"
728713258ffef4df053b85e0a3488334cbcba24c 27-Feb-2013 Chet Haase <chet@google.com> DO NOT MERGE: ListView transient state fix

ListView child views with transientState (setHasTransientState(true)) are not
handled correctly when the data set changes, such as when an item is added
or removed. The problem is that the transient views are cached by their
position, but this position is out of sync between the ListView and the adapter
until the ListView layout process is complete.

A better way, which unfortunately only works on ListViews with stable IDs, is
to cache the views by their itemID instead, and to use that ID to determine when
and where to reuse/retrieve a transient view during the ListView layout.

Issue #8254775 View.setHasTransient state has side-effects when deleting content in ListView

Change-Id: I2fc25e71ed6655af30b9c3f47fdf014e9b667616
iew.java
36350a9592425c2bb4984eb2374356d2459238c4 18-Mar-2013 Chet Haase <chet@google.com> am fb38986e: am 138c58a9: Merge "Add overlays to views" into jb-mr2-dev

* commit 'fb38986e452a51b6ce37131f293316adedc75ff0':
Add overlays to views
138c58a941e624c6a969f874ef2f1da1d04b0132 18-Mar-2013 Chet Haase <chet@google.com> Merge "Add overlays to views" into jb-mr2-dev
c00204b4d14d49a0417b44ca21aee4f0d4c466e0 06-Mar-2013 Craig Mautner <cmautner@google.com> Start moving Tasks from DisplayContent to TaskStack

- Create new classes for Stacks on WindowManager.
- Stop using DisplayContent methods and members:
addAppToken(),
removeAppToken(),
setAppTaskId(),
removeTask(),
mTaskIdToDisplayContents,
mTaskIdToTask.
- Start using WindowManagerService.createTask().
- Establish hierarchy of references: AppWindowToken=>Task=>
TaskStack=>StackBox=>DisplayContent.
- Clean up StackBox, TaskStack, and Task.

Change-Id: I798990aa7966784d22f4a43822087d8bb0404dd6
WindowManager.aidl
91cedf1c3dbf7a52c2892294b2e5ba3e40ef3583 11-Mar-2013 Chet Haase <chet@google.com> Add overlays to views

It is useful, particularly in animations, to be able to add a view, or at
least some graphics, on top of a view. For example, to have a child of a layout
fade away, we might want to remove the child from that layout and then fade it out
gradually. Meanwhile, we have to have a place to put that view where it will be
drawn. We could do this in the content container sometimes, but this is not a
reliable workaround in the general case, and may obscure other siblings/parents of
the layout/view in the hierarchy. A better approach would be to place a view/graphic
temporarily in the layout itself.

This feature adds the ability to add one or more Views and Drawables to an "overlay"
layer, after which the view will handle drawing that extra content when it redraws itself.

Issue #8350510 Add APIs needed for future animation capabilities

Change-Id: I70bf78c46ee3db8bd87ea1cdc2ecb5c0747ccbf9
verlay.java
iew.java
iewGroup.java
iewOverlay.java
47d07fde90fa4e9c5eb68f91e858b0a8c208e247 15-Mar-2013 Jeff Sharkey <jsharkey@android.com> am 20a1cf34: am 93b04b91: Merge "Avoid warnings about synthesized IDs." into jb-mr2-dev

* commit '20a1cf345f5f7952677d5f9cd97efe1a9a197930':
Avoid warnings about synthesized IDs.
93b04b91bc58f31e5900999849b3555065e4faa0 15-Mar-2013 Jeff Sharkey <jsharkey@android.com> Merge "Avoid warnings about synthesized IDs." into jb-mr2-dev
47b50333c110194565498011379988e5c05f7890 15-Mar-2013 Jeff Sharkey <jsharkey@android.com> Avoid warnings about synthesized IDs.

Bug: 8153518
Change-Id: I5d638e17581f63c6d4a10ff6bc2c1bf9997a78b3
iew.java
f72b5c920aa47d94310a8cdd658e5255712b7293 15-Mar-2013 Fabrice Di Meglio <fdimeglio@google.com> am cf60cc9a: am 261f82ca: Merge "Revert "Clean Paint.mBidiFlags as it is no longer used"" into jb-mr2-dev

* commit 'cf60cc9adedf032c6c97cd2cbb9ff211deaaf3ae':
Revert "Clean Paint.mBidiFlags as it is no longer used"
261f82ca996a4b192b56350dd2eda6016f9d5203 15-Mar-2013 Fabrice Di Meglio <fdimeglio@google.com> Merge "Revert "Clean Paint.mBidiFlags as it is no longer used"" into jb-mr2-dev
da12f389eb4be0c08ca3fa9ca7663f4977858df5 15-Mar-2013 Fabrice Di Meglio <fdimeglio@google.com> Revert "Clean Paint.mBidiFlags as it is no longer used"

This reverts commit 6d9fe5bd22b531bfce69b146254a4791c76acddc.
LES20Canvas.java
LES20RecordingCanvas.java
d370c54801b6a7488408fef7ea9726f3cf89e8df 15-Mar-2013 Chet Haase <chet@google.com> am c584f7f4: am b38258f3: Merge "Fix erroneous requestLayout-during-layout issues" into jb-mr2-dev

* commit 'c584f7f44e4629e97e662e66f2a135ddb426fc7a':
Fix erroneous requestLayout-during-layout issues
b38258f357a7857ce5d53caad0af9c38053ab071 15-Mar-2013 Chet Haase <chet@google.com> Merge "Fix erroneous requestLayout-during-layout issues" into jb-mr2-dev
ca497d39220f50dd2303f79045ce9c094151fe5d 14-Mar-2013 John Spurlock <jspurlock@google.com> am 356bbd1c: am ac3dfb38: Merge "WindowManager.LayoutParams docs cleanup." into jb-mr2-dev

* commit '356bbd1c6046845ebb5f7c8377f5726eb4a1ff0f':
WindowManager.LayoutParams docs cleanup.
ac3dfb38802dc42053a9ac0cbcafd0304b7b01d8 14-Mar-2013 John Spurlock <jspurlock@google.com> Merge "WindowManager.LayoutParams docs cleanup." into jb-mr2-dev
9904be35700d6598a1f0519d94f56c6d5011f79a 14-Mar-2013 Mathias Agopian <mathias@google.com> am f2362ceb: am b1fa4f92: Merge "fix CloseGuard usage in Surface" into jb-mr2-dev

* commit 'f2362ceb50209dfb72899f9ab1b839e9238ef9a6':
fix CloseGuard usage in Surface
107a48236ad73cf4627069edbeaa45a189e0d8ac 13-Mar-2013 Chet Haase <chet@google.com> Fix erroneous requestLayout-during-layout issues

In general, calling requestLayout() during layout is a Bad Idea.
However, ListView does this during the normal course of its layout, as it
removes and adds views during layout. However, it handles this properly,
ensuring that the views in its hierarchy are all measured and laid out
properly by the time its layout process is done.

A previous fix to the request-during-layout issue attempted to distinguish
the correct from incorrect behavior by checking whether views had been properly
laid out since the requestLayout() call, and making sure the views were
visible in the hierarchy (parented, attached, and !GONE), since otherwise
the views would not be laid out, the flags wouldn't be cleared, and requests
are superfluous anyway. However, this logic only checked whether the
requesting views were GONE, whereas the check should include the entire
parent hierarchy of the views (since a view with a GONE parent is still not
visible to the user).

This fix adds that additional check and cleans up other parts of the previous
code, such as not bothering to post() requests that occur during the second
layout pass unless those requests are also valid (coming from visible views).

Issue #8370042 Path seems to be in an infinite layout loop

Change-Id: I7aaf701229adfeee349a9a7c9ec14585735ba9f6
iewRootImpl.java
86e1bc730570765355dc8789b5c6de6962a053cc 14-Mar-2013 Mathias Agopian <mathias@google.com> fix CloseGuard usage in Surface

Bug: 8375415
Change-Id: I03e9f318c2ad586f4bd93b280557ada66121d275
urface.java
33291d8d71278a2f0770018c977ff2626f71e2dc 13-Mar-2013 John Spurlock <jspurlock@google.com> WindowManager.LayoutParams docs cleanup.

Fix a few things found in our "Constants" section.
- Close unclosed links.
- Avoid periods inside parens for summary sentences.
- Lowercasing in a few places for consistency.

Change-Id: I9aa689fd980b373614dae7c4f8257e0786d2340a
indowManager.java
8725f36a76bdf85d7197e64fb725b67e993c6ce7 13-Mar-2013 Sangkyu Lee <sk82.lee@lge.com> Bug fix for building the hover target list

lastHoverTarget should be updated even though lastHoverTarget is not null.
If not, the hover target list cannot have more than one hover target.

Change-Id: I21b49e8cbf3657321b2f1f2c20a3bdeb7f07bd48
Signed-off-by: Sangkyu Lee <sk82.lee@lge.com>
iewGroup.java
92291eea076f0222d4f189cd62a0576434058ead 12-Mar-2013 Jean Chalard <jchalard@google.com> Merge changes I3109a482,Ia5e25738

* changes:
Final small cleanup.
Actually change the place where updateSelection is called
607dcedaa6a8ea87347f777d0ccec6e36090a92b 12-Mar-2013 Michael Wright <michaelwr@google.com> am 63530ed8: am b13eb3e7: Merge changes I674b9804,If2d2e37b into jb-mr2-dev

* commit '63530ed8dad1ca77d5f9d20f2af7317611cdd175':
Add touch navigation input source
Add InputDevice#isFromSource convenience method
e7a9ae8ba0fb7fc61960e3facd0c5534e9ffce1e 09-Mar-2013 Michael Wright <michaelwr@google.com> Add touch navigation input source

Bug: 8276741
Change-Id: I674b9804bf9ae76d694ae7073b54a7d43474a43c
nputDevice.java
imulatedDpad.java
iewRootImpl.java
74e4156e5c62392c37f4a70358de30dcfff4956f 08-Mar-2013 Michael Wright <michaelwr@google.com> Add InputDevice#isFromSource convenience method

Change-Id: If2d2e37bc3fff5a862ea3652c7ef9778018e7ecc
nputDevice.java
nputEvent.java
iew.java
c6cf2abfdb1c3836599a11706bc141d05a3b5588 08-Mar-2013 Adam Powell <adamp@google.com> am 41ac9727: am 15061d74: Merge "Make View#computeOpaqueFlags recognize OUTSIDE_OVERLAY scrollbars" into jb-mr2-dev

* commit '41ac97278f4506e9d06e447b99a94125dc6358db':
Make View#computeOpaqueFlags recognize OUTSIDE_OVERLAY scrollbars
f158b52e20004850641e3d7b8e7698dd87651359 07-Mar-2013 Adam Powell <adamp@google.com> Make View#computeOpaqueFlags recognize OUTSIDE_OVERLAY scrollbars

While the inset scrollbars may change padding and how backgrounds are
drawn such that an otherwise opaque view is no longer opaque. However,
OUTSIDE_OVERLAY scrollbars don't change the padding and should not
affect the determination of opacity.

Change-Id: I8c0c1408aeb540813de3351f0c0d1ad12ba5919c
iew.java
32884c376fd06799f46ea3b1ded89ba9d21f8f14 07-Mar-2013 Dianne Hackborn <hackbod@google.com> am 6fea1665: am 1ab64b81: Merge "Add new sample code for writing a ViewGroup." into jb-mr2-dev

* commit '6fea1665a91dafa49b78d1c92c53bb0fa1736020':
Add new sample code for writing a ViewGroup.
1ab64b819ba3d4b974e63fcae5d21bb73ba5a6a6 07-Mar-2013 Dianne Hackborn <hackbod@google.com> Merge "Add new sample code for writing a ViewGroup." into jb-mr2-dev
7caab0ff2d4a09a1aa5f5c1d8479c386584cc26e 06-Mar-2013 Dianne Hackborn <hackbod@google.com> Add new sample code for writing a ViewGroup.

Change-Id: Id6714b062884c9ed60703e5c199f16683c00a800
iewGroup.java
4a682c2c8fb3d6e00a873d4c99c137c01a803f45 06-Mar-2013 John Spurlock <jspurlock@google.com> Merge "Quick typo fix to View.java docs."
7eae2d5d97528323ea560eda9b456423187759dc 06-Mar-2013 John Spurlock <jspurlock@google.com> Quick typo fix to View.java docs.

navagation -> navigation

Change-Id: I0afd46824afc9a9aedcfc383e633b4bed6b28918
iew.java
3205ebf67b0d31ec392daa4a4b85700a84ddaa4a 06-Mar-2013 Mathias Agopian <mathias@google.com> am 563c374f: am f4d6f153: Merge "remove suppor for SurfaceControl.FX_SURFACE_SCREENSHOT" into jb-mr2-dev

* commit '563c374faf2c9e2741e0c73edff22237aa0562e5':
remove suppor for SurfaceControl.FX_SURFACE_SCREENSHOT
aaf8671c439670f0a72401379431ddd72ff368c4 02-Mar-2013 Jean Chalard <jchalard@google.com> Final small cleanup.

This does not change anything in the practice since the only
time where timing of the endBatchEdit() call matters is when
sendCurrentText is a no-op. Still, it's theoretically correct
to do it in this order.
This concludes a four-step refactoring moving where the
editor calls updateSelection to warn the IME of a cursor move.

Change-Id: I3109a482ec1d4cd9b4ffb33cc363a4ce5128861a
nputmethod/BaseInputConnection.java
f4d6f153e66eb54f7da5f9bd8f5b6fcc25dfd919 06-Mar-2013 Mathias Agopian <mathias@google.com> Merge "remove suppor for SurfaceControl.FX_SURFACE_SCREENSHOT" into jb-mr2-dev
11e7d88d1441c20605d7f06ab31ef2c81590d5c4 05-Mar-2013 Mathias Agopian <mathias@google.com> remove suppor for SurfaceControl.FX_SURFACE_SCREENSHOT

the window manager can now use the SurfaceControl.screenshot
API with a "regular" surface.

Change-Id: I76bed81d5e7b078ea1b3e8f96814aba32e9d5405
urfaceControl.java
ee61a7fb95b96880042a963c78774a148eed8c15 05-Mar-2013 Dianne Hackborn <hackbod@google.com> am 530b2b1c: am a5513616: Merge "Add new WindowId for cross-process monitoring of focus." into jb-mr2-dev

* commit '530b2b1c98e3a3d86fd90cd91a08005370b8aa49':
Add new WindowId for cross-process monitoring of focus.
a55136169eb3367c70f7b8686d51289483310586 05-Mar-2013 Dianne Hackborn <hackbod@google.com> Merge "Add new WindowId for cross-process monitoring of focus." into jb-mr2-dev
e3f23a36d86fedf6c8c6503378cd6d2190c5ab23 01-Mar-2013 Dianne Hackborn <hackbod@google.com> Add new WindowId for cross-process monitoring of focus.

This is a class representing a window and providing limited
interaction with it, which can be handed across processes.

Change-Id: I22885f2064a9cc8c68d690a5858c2e28bbb6a0f3
WindowFocusObserver.aidl
WindowId.aidl
WindowSession.aidl
iew.java
indowId.java
573596de3bf4565213f88aa718c55bf01a3489c1 05-Mar-2013 Chet Haase <chet@google.com> Merge "ListView transient state fix"
4001b31cba0ed73a2f6bddfce0f826d2e2083dd3 05-Mar-2013 Romain Guy <romainguy@google.com> am 370929f4: am d23b2747: Merge "Finish current Canvas operations then resume previous Canvas Bug #8297260" into jb-mr2-dev

* commit '370929f4bf6b9d7a196eae531f38cdec19140dfd':
Finish current Canvas operations then resume previous Canvas Bug #8297260
d23b2747eff9ae3203f96039794068e9f1b0c71b 05-Mar-2013 Romain Guy <romainguy@google.com> Merge "Finish current Canvas operations then resume previous Canvas Bug #8297260" into jb-mr2-dev
e78b8003a5870c0e80ed92c4df442871fb9d0b61 05-Mar-2013 Romain Guy <romainguy@google.com> Finish current Canvas operations then resume previous Canvas
Bug #8297260

Change-Id: Ia30bb61ff5db805ec5d57f5e4c22c275f649ecdb
LES20RenderLayer.java
c18fb6408406d8c017aea08e18d6ae5b6e978cfa 05-Mar-2013 Mathias Agopian <mathias@google.com> am e94fcd6c: am 188f8c5e: Merge "screenshots can now go into a Surface from java" into jb-mr2-dev

* commit 'e94fcd6c494931afc1d7f70138db01de37cdb9fc':
screenshots can now go into a Surface from java
0449a40586b45ee05f760802020dc2f8a6e0506b 02-Mar-2013 Mathias Agopian <mathias@google.com> screenshots can now go into a Surface from java

A Surface can trivially be created from a SurfaceTexture.
Update ElectronBeam to use this new API.

Bug: 6940974
Change-Id: I20459443d0d853e3f8ae23104c08d185c336abea
urfaceControl.java
c2a6e194a682d5b4c327c4c02289b4d96cf564e1 05-Mar-2013 Philip Milne <pmilne@google.com> Merge "Optical Bounds: clear inherited layoutModes when layoutMode of root layout is set to a new value."
f091b662467eeca05ac0de9c8f3f120f4dde5bdc 27-Feb-2013 Philip Milne <pmilne@google.com> Optical Bounds: clear inherited layoutModes when layoutMode of root layout is set to a new value.

This is an addendum to:

https://googleplex-android-review.googlesource.com/#/c/246507

Change-Id: Ia9d6fdfe7fdb76c1152466315ff3b1c42c077ee2
iew.java
iewGroup.java
267097b00b073716ab2d02c3c068889d92ddb1a9 04-Mar-2013 Christopher Tate <ctate@google.com> DO NOT MERGE: Don't crash when we get a drag-ended after being detached

Removing view groups during a drag would cause an NPE here. The
child views will still get the drag-ended event as expected.

(Cherrypicked from downstream)

Bug 8298439

Change-Id: Ic14cbf9fdc305b91c1627f6882a45d34ee1c34ae
iewGroup.java
e9accff210c25b0a4946925db699874331c8cb61 04-Mar-2013 Christopher Tate <ctate@google.com> Don't crash when we get a drag-ended after being detached

Removing view groups during a drag would cause an NPE here. The
child views will still get the drag-ended event as expected.

Bug 8298439

Change-Id: I665ba1d139e8aaa820f5f515186bc4ce8bcdb1ea
iewGroup.java
9e7c7d7b854b950ebed473c9b7c4cf72af75e610 27-Feb-2013 Chet Haase <chet@google.com> ListView transient state fix

ListView child views with transientState (setHasTransientState(true)) are not
handled correctly when the data set changes, such as when an item is added
or removed. The problem is that the transient views are cached by their
position, but this position is out of sync between the ListView and the adapter
until the ListView layout process is complete.

A better way, which unfortunately only works on ListViews with stable IDs, is
to cache the views by their itemID instead, and to use that ID to determine when
and where to reuse/retrieve a transient view during the ListView layout.

Issue #8254775 View.setHasTransient state has side-effects when deleting content in ListView

Change-Id: Ic3b1669ed79dd6cf9e4c1c6c26f9d75ccf074b3e
iew.java
57b7725e9b54fe3cab06d5eb57d9f6682c933c73 01-Mar-2013 Romain Guy <romainguy@google.com> am 84ea20d0: Merge "Restore the ability to track native Surface changes Bug #8230990" into jb-mr2-dev

* commit '84ea20d0ba7611782c7aa364cd41744fca359e35':
Restore the ability to track native Surface changes Bug #8230990
8b5aa4846939975adacd6ea1d2a57a2493ac0216 01-Mar-2013 Romain Guy <romainguy@google.com> Restore the ability to track native Surface changes
Bug #8230990

ViewRootImpl needs to know when the native Surface objects changes
to recreate the EGL surface. A recent refactoring in Surface broke
the behavior of getGenerationId(). This simply restores the old
behavior (every change increments the generation ID by 1.)

Change-Id: Ife1df1ffb2ee7a373b8ebf2431192702ba10f344
urface.java
6b25e726cbe704a25a179ba62c6430dc6f974c67 01-Mar-2013 Svetoslav <svetoslavganov@google.com> Remove a workaround for accessibility managers that works across users.

The system and some processes such as the keyguard and system UI
run across users. Hence, the local accessibility manager should call
into the backing system service with the id of the current user.
For all other processes the local manager uses the current user id.
There was a method that is to be called before the local accessibility
manager has been accessed to initialize it to work across users.
This had to be done for keyguard and system UI.

This change removed the workaround and now the local accessibility
manager determines under the hood which user id to use while calling
into the system. If the local manager is in the system process or
its process has permissions to work across uses, the manager uses
UserHandle.USER_CURRENT, otherwise it uses the user if its process.

Change-Id: I3e97fe98805adca01c1a0127a276828e90926f95
ccessibility/AccessibilityManager.java
e71384bcce1f0af44dc359be7353c046682c7c0b 28-Feb-2013 Svetoslav <svetoslavganov@google.com> am 2a45b9fe: Merge "Fake accessibility service used by UiAutomation not destroyed." into jb-mr2-dev

* commit '2a45b9fe99b10baeedb9c4529dcc5177ad7e3584':
Fake accessibility service used by UiAutomation not destroyed.
3c55e5c6595d28c64f5a760947c66fdefa2481e2 28-Feb-2013 Svetoslav <svetoslavganov@google.com> Fake accessibility service used by UiAutomation not destroyed.

UiAutomation registers a fake accessibility service to introspect
the screen. Upon the death of the shell process that started an
instrumentation in which a UiAutomation resides the connection
between the UiAutomation and the system is kept alive allowing
the instrumentation to introspect the screen even after the death
of the shell process.

bug:8285905

Change-Id: I1a16d78abbea032116c4baed175cfc0d5dedbf0c
ccessibility/IAccessibilityManager.aidl
5ecd81154fa039961f65bb4e36d18ac555b0d1d6 10-Jan-2013 Jim Miller <jaggies@google.com> Move keyguard to its own process.

This is in preparation to moving keyguard into its own process.

Moved keyguard source and resources into new .apk.

Got basic test app working. Still need to implement MockPatternUtils
and means to pass it into KeyguardService with local binder interface.

Added new ACCESS_KEYGUARD_SECURE_STORAGE permission.

Temporarily disabled USER_PRESENT broadcast.

Remove unintentional whitespace changes in PhoneWindowManager, etc.

Checkpoint basic working version.

Move to systemui process.

Synchronize with TOT.

Sync with recent user API changes.

Fix bug with returing interface instead of stub for IKeyguardResult. Create KeyguardServiceDelegate to allow
for runtime-selectable local or remote interface.

More keyguard crash robustness.

Keyguard crash recovery working. Currently fails safe (locked).

Fix selector view which was still using frameworks resources.

Remove more references to internal framework variables. Use aliases for those we should move but
currently have dependencies.

Allow runtime switching between service and local mode.

Fix layout issue on tablets where orientation was reading the incorrect constant
from the framework. Remove more framework dependencies.

Fix PIN keyboard input.

Remove unnecessary copy of orientation attrs.

Remove unused user selector widget and attempt to get multi user working again.

Fix multi-user avatar icon by grabbing it from UserManager rather than directly since
keyguard can no longer read it.

Merge with AppWidget userId changes in master.

Change-Id: I254d6fc6423ae40f6d7fef50aead4caa701e5ad2
indowManager.java
cfb631b0e56b7c6b9ca11e1a0553b7896b64b1c1 26-Oct-2012 Philip Milne <pmilne@google.com> When layoutMode is undefined, inherit the value defined by the parent (recursively).

Change-Id: Ib5f1150d2ac132d9ec79204a974cea8945d742b4
iewGroup.java
0ba20e9d0c1f258b55e77fe615cba080f131e801 26-Feb-2013 Jean Chalard <jchalard@google.com> am 17100f39: Merge "Fix dead key -> space combination." into jb-mr2-dev

* commit '17100f3976a537a4d037b1f27fd643fafd2abc79':
Fix dead key -> space combination.
17100f3976a537a4d037b1f27fd643fafd2abc79 26-Feb-2013 Jean Chalard <jchalard@google.com> Merge "Fix dead key -> space combination." into jb-mr2-dev
442ebdf535bb3eb99ab78f3983084e26258146fc 26-Feb-2013 Dianne Hackborn <hackbod@google.com> am 1bf1af60: Add documentation for overscan flag.

* commit '1bf1af60a3ec3da69aafbe1fe93c17312cb3e00e':
Add documentation for overscan flag.
1bf1af60a3ec3da69aafbe1fe93c17312cb3e00e 26-Feb-2013 Dianne Hackborn <hackbod@google.com> Add documentation for overscan flag.

Change-Id: Ibed06f23b2011a66021344384150e9d4ba6e61ed
indowManager.java
548655045a9c9791bd33e77a823afea5846228ab 26-Feb-2013 Jean Chalard <jchalard@google.com> Fix dead key -> space combination.

This also fixes "dead key -> same dead key" combination.
Both these key sequences should only give the non-combining
version of the combining character.

Bug: 8158374
Change-Id: I51f01685dd2997c2c5316ce6aa4f10ac9354c877
eyCharacterMap.java
2e5528c5e0f354c7b780ca5ab436809efd611dcc 26-Feb-2013 Craig Mautner <cmautner@google.com> Merge "Revert ActivityManager changes for tasks. DO NOT MERGE" into jb-mr2-dev
2ad920759b1981eaf526fd37a314fbc5a3ed90ae 26-Feb-2013 Craig Mautner <cmautner@google.com> Revert ActivityManager changes for tasks. DO NOT MERGE

Keeping all activity=>task changes in master and removing them
from jb-mr2.

Revert "Update histories simultaneously."
Revert "Add null check to setAppGroupId."
Revert "Fix crashing bug in validator."
Revert "Switch topRunning* and moveTaskTo*"
Revert "Begin switch over to task based history."
Revert "Reset and reuse Iterators and don't new() one."
Revert "Remove AppWindowToken lists."
Revert "Fix build."
Revert "Remove unused App methods."
Revert "Stop using AppToken movement and start using Task."
Revert "Replace access to mAppTokens with AppTokenIterator"
Revert "Refactor setAppOpVisibility implementation."
Revert "Add AppWindowTokens to TaskList."
Revert "Make ActivityStack.mHistory private."
Revert "Migrate AppWindowToken lists into DisplayContent."

Change-Id: I5722c9a4956dccb52864207e2967690bc58e4ebb
WindowManager.aidl
19a38f6f408d8672ca8d253fb7a6039a7f25c96f 26-Feb-2013 Mathias Agopian <mathias@google.com> Merge "Fix SurfaceControl.setDisplaySurface() such that it accepts a null Surface" into jb-mr2-dev
ffddc9b8045235a493ec506965ae4892601eb23d 26-Feb-2013 Mathias Agopian <mathias@google.com> Fix SurfaceControl.setDisplaySurface() such that it accepts a null Surface

also fix a typo that made us call the wrong Surface ctor

Bug: 8225509
Change-Id: I23f92179b6003d4c3e0febb35166c1caeafa27f5
urfaceControl.java
ee5cedeca42d2de546e77f3a428df3dc694a42ca 26-Feb-2013 Mathias Agopian <mathias@google.com> Merge "Fix SurfaceControl.setDisplaySurface() such that it accepts a null Surface"
a35b3a06964d52f690dd53a8ce80f6adcddae796 26-Feb-2013 Mathias Agopian <mathias@google.com> Fix SurfaceControl.setDisplaySurface() such that it accepts a null Surface

also fix a typo that made us call the wrong Surface ctor

Bug: 8225509
Change-Id: I4d6ec342469c1c55f1a2c753a046981f601dc4ca
urfaceControl.java
08bca88b272f0006e1581e9c28bc6312490f634e 26-Feb-2013 Romain Guy <romainguy@google.com> Rename debug property and expose it in HardwareRenderer

Change-Id: If46a9bc14a50f6c9a202d901881b36bbac32cba3
ardwareRenderer.java
c4aad01cbbb69c916ef323693e1fd0560b0eccba 23-Feb-2013 Dianne Hackborn <hackbod@google.com> Formalize overscan metrics.

The window manager now maintains and reports a new formal
"overscan insets" for each window, much like the existing
content and visible insets. This is used to correctly
position the various UI elements in the various combination
of layout options. In particular, this allows us to have
an activity that is using fitSystemWindows to have the content
of its UI extend out to the visible content part of the screen
while still positioning its fixed UI elements inside the
standard content rect (and the entire window extending all
the way into the overscan area to fill the screen as desired).

Okay, maybe that is not written so clearly. Well, it made
my head hurt too, so suffer!

The key thing is that windows now need to know about three
rectangles: the overall rectangle of the window, the rectangle
inside of the overscan area, and the rectangle inside of the
content area. The FLAG_LAYOUT_IN_OVERSCAN option controls
whether the second rectangle is pushed out to fill the entire
overscan area.

Also did some improvements to debug dumping in the window
manager.

Change-Id: Ib2368c4aff5709d00662c799507c37b6826929fd
Window.aidl
WindowSession.aidl
urfaceView.java
iew.java
iewRootImpl.java
indowManagerPolicy.java
12e563fff95ebb186126d531b6f65af18eb1a069 22-Feb-2013 Craig Mautner <cmautner@google.com> Merge "Create rotation animation modes."
3c1743705c4df816089e07a17753c6043b4d8e66 22-Feb-2013 Craig Mautner <cmautner@google.com> Create rotation animation modes.

Allow fullscreen windows to specify crossfade or jumpcut animations
that override the default rotation animation. Only if the incoming
and outgoing topmost windows are fullscreen and both specify the
same animation to use.

Fixes bug 8182773.

Change-Id: I6b3c0020d7bd2cdfba5c66189e114ec62cd54fcf
indowManager.java
indowManagerPolicy.java
fe98be7533767b1941dc6bae4d9a9640089978fd 22-Feb-2013 Michael Wright <michaelwr@google.com> am 65b0052a: Merge "Remove SurfaceControl.setPosition(int, int)"

* commit '65b0052a7473b73a18aef73460c9ebec77a2c2a0':
Remove SurfaceControl.setPosition(int, int)
b7b696ee717056b70f3cc7b801cf2ca573fa9a25 22-Feb-2013 Michael Wright <michaelwr@google.com> Remove SurfaceControl.setPosition(int, int)

This was just casting and calling the float version anyways, which Java does
automatically.

Bug: 8153162
Change-Id: If2f99995ff38b92e40777896baf6694786031898
urfaceControl.java
c4ca87f0f4034d4b987084d2b62ed7e5e0430557 20-Feb-2013 Chris Craik <ccraik@google.com> am 8a47d8ea: Merge "Clean up clipping and deferral logic"

* commit '8a47d8eaec26d0937aee94a057f561f246748339':
Clean up clipping and deferral logic
8a47d8eaec26d0937aee94a057f561f246748339 20-Feb-2013 Chris Craik <ccraik@google.com> Merge "Clean up clipping and deferral logic"
5d11676414b3606792e23c269cf75b44faa1a2af 20-Feb-2013 Chris Craik <ccraik@google.com> Clean up clipping and deferral logic

bug:8037003

-Merges replay methods
-Bounds checking for DrawBitmapMesh, DrawRects and DrawDisplayList
-Use clip as bounds for otherwise unbounded draw operations

Clip-as-bounds is correct for drawColor and functor, but other draw
operations (pos text, text on path, and layers) still need true bounds
calculation

Change-Id: I5d5149d2c624f01e3fe46628bf156e835e69b9d5
LES20Canvas.java
04bef5a6bb4b595f4a42aa91dc2484fbfc083ea6 20-Feb-2013 Romain Guy <romainguy@google.com> am 9943155b: Merge "Show Dalvik stack trace if an exception happens at draw time External bug: http://code.google.com/p/android/issues/detail?id=49379"

* commit '9943155b4db517deb72bd433d1cc9916bd84ae70':
Show Dalvik stack trace if an exception happens at draw time External bug: http://code.google.com/p/android/issues/detail?id=49379
9943155b4db517deb72bd433d1cc9916bd84ae70 20-Feb-2013 Romain Guy <romainguy@google.com> Merge "Show Dalvik stack trace if an exception happens at draw time External bug: http://code.google.com/p/android/issues/detail?id=49379"
d17043dcb49d4f060349a8bd58abcddcf3bac9a2 19-Feb-2013 Romain Guy <romainguy@google.com> Show Dalvik stack trace if an exception happens at draw time
External bug: http://code.google.com/p/android/issues/detail?id=49379

Drawing was previously wrapped in a try/finally block which was silently
swallowing user code exceptions. For instance, if a View throws a
NullPointerException in its onDraw() method, the previous implementation
would silently crash in native code.

This change extracts the section that builds display lists into a new
method that does not contain any try/finally block.

In addition, this change logs any exception thrown while drawing
display lists.

Change-Id: I0abffa4c9183d41aac8b0f8442813e56b957f08f
ardwareRenderer.java
61302eec45ed8ecea7e13946e4d820539a5582b5 19-Feb-2013 Romain Guy <romainguy@google.com> am 88b556f8: Merge "Fix the build"

* commit '88b556f8d4780b053851b10400b9cd0442ad7991':
Fix the build
88b556f8d4780b053851b10400b9cd0442ad7991 19-Feb-2013 Romain Guy <romainguy@google.com> Merge "Fix the build"
4bac6c1a54116ef212fa6cbe381e0a30c4e242e5 19-Feb-2013 Romain Guy <romainguy@google.com> Fix the build

Change-Id: I2a0e0d5a25e0c26872dfffeecfb42bace25c0f3c
isplayList.java
7ccb4e79efc5c31c80ad28943c1627bcf7d74dae 19-Feb-2013 Dianne Hackborn <hackbod@google.com> am 79ad13f1: Merge "Implement display overscan support."

* commit '79ad13f172094117fab7e816f36a4b84ed241df0':
Implement display overscan support.
79ad13f172094117fab7e816f36a4b84ed241df0 19-Feb-2013 Dianne Hackborn <hackbod@google.com> Merge "Implement display overscan support."
846f5f238fd96a14197022baad86eab8882fe3bc 19-Feb-2013 Romain Guy <romainguy@google.com> am e91efaba: Merge "Expose display list APIs"

* commit 'e91efabaf2c51d017bf4c5bc4e06491c3511f4e5':
Expose display list APIs
52036b19a5f82bc4d75cfcbff99c65df8d25a99b 15-Feb-2013 Romain Guy <romainguy@google.com> Expose display list APIs

The exposed APIs are slightly simpler than the full APIs used internally.
Only APIs useful to applications are exposed.

Change-Id: Ie03014628d40ad5ef63dedbc52ce3def84429d54
isplayList.java
LES20Canvas.java
LES20DisplayList.java
LES20Layer.java
LES20RenderLayer.java
ardwareCanvas.java
ardwareLayer.java
ardwareRenderer.java
iew.java
iewGroup.java
iewRootImpl.java
c652de8141f5b8e3c6bcf8916842b6e106413b1a 16-Feb-2013 Dianne Hackborn <hackbod@google.com> Implement display overscan support.

The window manager now keeps track of the overscan of
each display, with an API to set it. The overscan impacts
how it positions windows in the display. There is a new set
of APIs for windows to say they would like to go into the
overscan region. There is a call into the window manager to
set the overscan region for a display, and it now has a
concept of display settings that it stores presistently.

Also added a new "wm" command, moving the window manager
specific commands from the "am" command to there and adding
a new now to set the overscan region.

Change-Id: Id2c8092db64fd0a982274fedac7658d82f30f9ff
isplay.java
isplayInfo.java
WindowManager.aidl
indowManager.java
indowManagerPolicy.java
76f56dd598045dadae6dee5e8547bd077b980d5c 15-Feb-2013 Mathias Agopian <mathias@google.com> am ceec31b7: Merge changes I5a218ca1,I853a76d9

* commit 'ceec31b7dab6a23e443d5dcbcfac4a23b720cfde':
Refactoring: Rename SurfaceTextureClient to Surface
clean-up following Surface split
ceec31b7dab6a23e443d5dcbcfac4a23b720cfde 15-Feb-2013 Mathias Agopian <mathias@google.com> Merge changes I5a218ca1,I853a76d9

* changes:
Refactoring: Rename SurfaceTextureClient to Surface
clean-up following Surface split
2bec1e3d8c358d96278eda2c23282d87e525ef45 15-Feb-2013 Adam Powell <adamp@google.com> am fdc61af1: Merge "Fix missing onSingleTapConfirmed calls in GestureDetector"

* commit 'fdc61af16ffdbaa699431db2f008a424bd79f655':
Fix missing onSingleTapConfirmed calls in GestureDetector
52800617946c456e78ed010c82d0ec4358368164 15-Feb-2013 Mathias Agopian <mathias@google.com> Refactoring: Rename SurfaceTextureClient to Surface

Change-Id: I5a218ca11abeeec05e3a4c3cfc581bcc788814ea
urface.java
29479ebe1007361222bf6ab4d5e2a27927d4b8e8 14-Feb-2013 Mathias Agopian <mathias@google.com> clean-up following Surface split

Change-Id: I853a76d92d957ee38a36fcdd280d6407ec316987
urface.java
urfaceControl.java
eca3e6065ee6ce26027ef792d106f2f754a3169d 15-Feb-2013 Adam Powell <adamp@google.com> Fix missing onSingleTapConfirmed calls in GestureDetector

Eliminate the short period of time between the tap timeout and long
press causing onSingleTapConfirmed not to be dispatched when apps
expect.

Bug 8124095

Change-Id: I9841ab2a8eb3fee7d57e744e1c8e0e42e108d5f6
estureDetector.java
0233b6ee33e743602198cef7fb80f1e4619bb035 15-Feb-2013 Mathias Agopian <mathias@google.com> am 30d7ab9a: fix docs build

# Via Mathias Agopian
* commit '30d7ab9a10fcde397bae7bed5f16d1094fded8b2':
fix docs build
14567588028d0d70f7313251bda86ace2090f2ba 15-Feb-2013 Kristian Monsen <kristianm@google.com> resolved conflicts for merge of 58a1ca66 to master-chromium

Change-Id: I06b61e6d7d52b584eae03a95220381475b8bff0e
30d7ab9a10fcde397bae7bed5f16d1094fded8b2 15-Feb-2013 Mathias Agopian <mathias@google.com> fix docs build

Change-Id: I9819693cfa9ad5b8b15b62eab60ddd35a53c5531
urface.java
58a1ca6642d404b67e5c9e75076b9bbe08e4076b 14-Feb-2013 Mathias Agopian <mathias@google.com> Merge "split Surface in two classes: SurfaceControl and Surface"
ab31d3574997eb3a628e80929e13c4d8d7d9c2cc 14-Feb-2013 Mathias Agopian <mathias@google.com> am a41b23d5: Merge "get rid of Surface.getIdentity()"

# Via Android (Google) Code Review (1) and Mathias Agopian (1)
* commit 'a41b23d55da1bd8e68eb784f28e2c3fe9ded080e':
get rid of Surface.getIdentity()
a41b23d55da1bd8e68eb784f28e2c3fe9ded080e 14-Feb-2013 Mathias Agopian <mathias@google.com> Merge "get rid of Surface.getIdentity()"
3866f0d581ceaa165710feeee9f37fe1b0d7067d 12-Feb-2013 Mathias Agopian <mathias@google.com> split Surface in two classes: SurfaceControl and Surface

SurfaceControl is the window manager side; it can
control the attributes of a surface but cannot push buffers
to it. Surface on the other hand is the application (producer)
side and is used to push buffers to the surface.

Change-Id: Ib6754c968924e87e8dd02a2073c7a447f729f4dd
horeographer.java
isplayEventReceiver.java
urface.java
urfaceControl.java
feb6954da185901dfb558a8ec85f4908ca86a4eb 14-Feb-2013 Romain Guy <romainguy@google.com> am 10c0aa24: Merge "Implement support for drawBitmapMesh\'s colors array"

# Via Android (Google) Code Review (1) and Romain Guy (1)
* commit '10c0aa246d9b2633c6cb4e5b714abb0031a4f4cd':
Implement support for drawBitmapMesh's colors array
10c0aa246d9b2633c6cb4e5b714abb0031a4f4cd 14-Feb-2013 Romain Guy <romainguy@google.com> Merge "Implement support for drawBitmapMesh's colors array"
102f7110435415cf22187dcf6c01e599e544d5ce 14-Feb-2013 Craig Mautner <cmautner@google.com> am 534d136a: Merge "Remove unused App methods."

# Via Android (Google) Code Review (1) and Craig Mautner (1)
* commit '534d136aa66fb13f7c1b482513627de45c218c29':
Remove unused App methods.
ff316ec7a76e52572a2e89b691e6b3bba0cafba3 14-Feb-2013 Romain Guy <romainguy@google.com> Implement support for drawBitmapMesh's colors array

Change-Id: I3d901f6267c2918771ac30ff55c8d80c3ab5b725
LES20Canvas.java
f9136fd9692158574d187af8d4031fa4b1e2b6e6 12-Feb-2013 Mathias Agopian <mathias@google.com> get rid of Surface.getIdentity()

Change-Id: I8b70d77cc1b38009ad71d92025c3beb481a18866
urface.java
b0c0b1fd70e3edeb724e2b2fb2c7063eb943f05e 14-Feb-2013 Craig Mautner <cmautner@google.com> Remove unused App methods.

Now that the Task methods have replaced the App methods remove
the App methods.

Change-Id: I0e7432f2c6f99708759ed8c871d20eb5bd38c3c2
WindowManager.aidl
c932760f667cf56ca7a1aeffde505745dc3632e1 14-Feb-2013 Chris Craik <ccraik@google.com> Merge "Revert "Merge remote-tracking branch 'goog/master-chromium' into 'goog/master'" DO NOT MERGE"
93799ba01b5f2902d7120db8416a1e15103286e8 13-Feb-2013 Romain Guy <romainguy@google.com> Merge "Add a render buffer cache to reuse stencil buffers Bug #7146141"
8d4aeb7111afac0c3c7e56d4ad5d92f9cfce2ffd 13-Feb-2013 Romain Guy <romainguy@google.com> Add a render buffer cache to reuse stencil buffers
Bug #7146141

This new cache is used in a similar way to LayerCache. It helps
reuse already allocated stencil buffers and thus avoid churning
memory on every frame.

Change-Id: I19551d72da52c40039e65904563600e492c8b193
ardwareRenderer.java
0c33ecd209d884a9a2b9ad807cb798583b890a08 13-Feb-2013 Fabrice Di Meglio <fdimeglio@google.com> Merge "Clean Paint.mBidiFlags as it is no longer used"
7c1a49f5f5ed6613d736464bf5001b777e89ced2 13-Feb-2013 Chris Craik <ccraik@google.com> Revert "Merge remote-tracking branch 'goog/master-chromium' into 'goog/master'" DO NOT MERGE

This reverts commit 6c0307dd0aefe9a08794b155fc03ee60ebd14f25, reversing
changes made to a2cd828b749c444d55c2c41c7dbb85088ff94b9f.

Conflicts:
packages/SystemUI/res/values-sv/strings.xml

Change-Id: Ia178efe8b14751583d47b2826bfe3d3d5463dd2e
LES20Canvas.java
urface.java
6d9fe5bd22b531bfce69b146254a4791c76acddc 12-Feb-2013 Fabrice Di Meglio <fdimeglio@google.com> Clean Paint.mBidiFlags as it is no longer used

See bug #7623824

Change-Id: Ie2f9422821f6dcc73c99e8695f448e966b587b1d
LES20Canvas.java
LES20RecordingCanvas.java
71c240597786e84135d672a28d53111620da3c86 12-Feb-2013 Chet Haase <chet@google.com> Fix getHitRect() to return correct rect for transformed child

Previous code incorrectly included pivot point in calculation, which
resulted in offset rectangle

Issue #8178031 getHitRect() incorrect when view is transformed

Change-Id: Ie6c4c51614577d208016584cf1bf4eed570f730d
iew.java
35ae8748fec1179be65c6b8c2e50140fe74c4c64 12-Feb-2013 Svetoslav <svetoslavganov@google.com> Merge "Optimize loading of resource name when reported to accessibility."
a33243eb6491bc5a20ede53db3313f6078e8b694 12-Feb-2013 Svetoslav <svetoslavganov@google.com> Optimize loading of resource name when reported to accessibility.

Loading of the resource id name was unnecessarily complex and
was generating spam in the log as a result.

bug:8153518

Change-Id: Ib2c1118fd36b86ba8ce803ba3190fa01ab06e8c3
ccessibilityInteractionController.java
iew.java
9dd4c5c6867f8b6de19096d2d68365dccb744c19 09-Feb-2013 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7381967 Add RTL APIs to ViewParent

- add RTL apis to ViewParent
- remove awful and performance bottleneck casts in View during LayoutDirection,
TextDirection and TextAlignment resolutions.

Change-Id: I92a56b16382e13c28c1dad35f6f205620eb01bfe
iew.java
iewParent.java
iewRootImpl.java
d9f98c81068594c33c81b5b817391c6b4b895492 09-Feb-2013 Jeff Brown <jeffbrown@google.com> Fix build break due to merge.

Change-Id: I08c39690ee9de825ff51afc7d102ee622af6ba13
iewRootImpl.java
005f6f6077f34e0157598882fdc7ddb794cad84e 11-Feb-2013 Craig Mautner <cmautner@google.com> Merge "Reset SensorEventListener when listener reenabled."
eee29c445c38217e83bf421faf0f4075322079a6 17-Jan-2013 Craig Mautner <cmautner@google.com> Reset SensorEventListener when listener reenabled.

- Following disable and reenable of the WindowOrientationListener
the state was the same as before. State should be reset to default.

- Provide a Handler to the sensor task to deliver events on the
same Thread that WindowManagerPolicy operates on.

- Expand lock protection to all of WindowOrientationListener.

- Move WindowOrientationListener to policy package.

- Make SensorEventListenerImpl non-static.

Fixes bug 7964531.

Change-Id: I17cecf3d0b6d125cb3e4d7350c3adb3f62b684bd
indowOrientationListener.java
39938752b368ae282b821a43efbc568c925ecc34 09-Feb-2013 Jeff Brown <jeffbrown@google.com> Fix build break due to merge.

Change-Id: I08c39690ee9de825ff51afc7d102ee622af6ba13
iewRootImpl.java
e624e0c70409773df6c3eb274852f9dd7961f025 09-Feb-2013 Jeff Brown <jeffbrown@android.com> am 110fe9b3: am fe1f3a1b: Merge "Fix ViewRootImpl to find missing focus using D-pad."

# By Ki-Hwan Lee
# Via Android Git Automerger (1) and others
* commit '110fe9b303be527c30a8af95b6fb7afac12968b5':
Fix ViewRootImpl to find missing focus using D-pad.
110fe9b303be527c30a8af95b6fb7afac12968b5 09-Feb-2013 Jeff Brown <jeffbrown@android.com> am fe1f3a1b: Merge "Fix ViewRootImpl to find missing focus using D-pad."

# By Ki-Hwan Lee
# Via Gerrit Code Review (1) and Ki-Hwan Lee (1)
* commit 'fe1f3a1beff9f73f6a04bcc35239038a21bc38ff':
Fix ViewRootImpl to find missing focus using D-pad.
fe1f3a1beff9f73f6a04bcc35239038a21bc38ff 09-Feb-2013 Jeff Brown <jeffbrown@android.com> Merge "Fix ViewRootImpl to find missing focus using D-pad."
b4c1dc1c1580d0970631cc291b4b4c6e9dc96af3 08-Feb-2013 Romain Guy <romainguy@google.com> Merge "Don't clip when drawing a layer"
63696bfc0592a0b8808aa2b1c40bcf33c656c659 08-Feb-2013 Romain Guy <romainguy@google.com> Don't clip when drawing a layer

A layer will, by definition, clip its content already. The extra
clip added by the UI toolkit/renderer is wasteful and in some
situations very expensive. If a layered view is rotated, the clip
will be transformed into a non-rectangular region, thus forcing
the renderer to rely on the stencil buffer. The whole point of
using layers is to draw efficiently so let's avoid this case.

Change-Id: I813465f6468cc386b84a4d058c11a258fef8507a
iew.java
ccac8c95577aeb2c327c090678011733fa24fba4 07-Feb-2013 Chris Craik <ccraik@google.com> Merge "Correctly resume profileRendering"
ae4f3204ec2c9251e0e408816e74502079cd1a6c 07-Feb-2013 Chris Craik <ccraik@google.com> Correctly resume profileRendering

Ensure profileRendering reschedules a previously created profiler callback if
disabled and reenabled

Change-Id: I181ac5043966b99bb8d21e69ce4fdd7494102acb
iewRootImpl.java
34e0b05e28b25dbe20c819ad4fa923c716c37e5f 07-Feb-2013 Dianne Hackborn <hackbod@google.com> Merge "App ops: track system windows, monitoring changes."
c2293025a25e04b26bf53713d71f85fd9ca5e8e9 07-Feb-2013 Dianne Hackborn <hackbod@google.com> App ops: track system windows, monitoring changes.

Change-Id: I273e82bdad66ada3bf0f7ec9176bc304b9ee1ee8
iewRootImpl.java
indowManagerPolicy.java
8ca4642b7460057be0ee8ba97633d6fb1dfcd532 07-Feb-2013 Jeffrey Brown <jeffbrown@android.com> am edc93331: am a0d547b4: am dac4a90d: Merge "fix hover events consume issue"

# By Masanori Ogino
# Via Android Git Automerger (2) and others
* commit 'edc933318c9690761866a4da63b551ae09054104':
fix hover events consume issue
edc933318c9690761866a4da63b551ae09054104 07-Feb-2013 Jeffrey Brown <jeffbrown@android.com> am a0d547b4: am dac4a90d: Merge "fix hover events consume issue"

# By Masanori Ogino
# Via Android Git Automerger (1) and others
* commit 'a0d547b43b3508c7253da234f529acf60d00fd13':
fix hover events consume issue
a0d547b43b3508c7253da234f529acf60d00fd13 07-Feb-2013 Jeffrey Brown <jeffbrown@android.com> am dac4a90d: Merge "fix hover events consume issue"

# By Masanori Ogino
# Via Gerrit Code Review (1) and Masanori Ogino (1)
* commit 'dac4a90d656dca86bd14cd91d685c07d8a6b29a4':
fix hover events consume issue
dac4a90d656dca86bd14cd91d685c07d8a6b29a4 07-Feb-2013 Jeffrey Brown <jeffbrown@android.com> Merge "fix hover events consume issue"
4ef158baa3382909c436cbc31e123ef981387e4e 08-Jan-2013 Ki-Hwan Lee <kihwanl@google.com> Fix ViewRootImpl to find missing focus using D-pad.

By using D-pad, no-focus in non touch mode is rare but legal in a case like below.

1. The first request to get focus for a new activity is handled in the first
performTraversals() call when activity is not ready for a complete view hierarchy.
So there might be no focusable yet.
2. If the activity has some menus, ActionMenuView can be attached to the view hierarchy
in the PhoneWindow.preparePanel() soon.
So there can be focusables but still not focused.

Fixed ViewRootImpl.deliverKeyEventPostIme() to handle this case to resurrect a focus
if there are focusables.

How to reproduce:
(1) Open "API Demos" application -> Views -> Search View
(2) Select "Action Bar" item using the D-pad
(3) Try to focus the Search View, using the D-pad.

Change-Id: Ic379774f0307f168f0ed775d0f6a9078ac5c9713
iewRootImpl.java
d3a72135c82ae221881853912a6866467e86d9f2 07-Feb-2013 Dake Gu <dake@google.com> am bfb64e85: am 96111ddf: Merge "SimulatdDpad: fix NPE for event without device" into jb-mr1-aah-dev

# Via Android (Google) Code Review (1) and others
* commit 'bfb64e85e608889f18f4273b0f07a3d91d4082bd':
SimulatdDpad: fix NPE for event without device
bfb64e85e608889f18f4273b0f07a3d91d4082bd 07-Feb-2013 Dake Gu <dake@google.com> am 96111ddf: Merge "SimulatdDpad: fix NPE for event without device" into jb-mr1-aah-dev

# Via Android (Google) Code Review (1) and Dake Gu (1)
* commit '96111ddff7af61ce37fa8d9020d8e1eeba9095e8':
SimulatdDpad: fix NPE for event without device
ab080da60f344e9138b656335010c6da27be4888 06-Feb-2013 Svetoslav <svetoslavganov@google.com> Merge "Set accessibility cursor in non-text views with content description."
bcc46a0d037e62fcb5e5f0f5e1acef5a8c1314b0 06-Feb-2013 Svetoslav <svetoslavganov@google.com> Set accessibility cursor in non-text views with content description.

We support text traversal at a granularity over non-next views with
content description, hence we should support setting the cursor position
in such views.

bug:8134469

Change-Id: I4dba225b0ade795b7a20c201fb906ae7146c065d
iew.java
ccessibility/AccessibilityNodeInfo.java
23e500d168e8d649305445f6c1d2b49d8d2c00fd 06-Feb-2013 Derek Sollenberger <djsollen@google.com> Merge "Merge remote-tracking branch 'goog/master-chromium' into 'goog/master'"
92826459d101d2d76b2d75347232b1fee08962cf 05-Feb-2013 Svetoslav <svetoslavganov@google.com> Fix a javaDoc error

Change-Id: Ia23660f102455aefad80cb75a8bbd8fc0d4455c3
ccessibility/AccessibilityNodeInfo.java
dc3edbb0e5573231fedead8de8898d4111790ea7 05-Feb-2013 Svetoslav <svetoslavganov@google.com> Merge "Rename a member variable"
22431a3b6fb5ae3498c6ae780648ca0228635eba 05-Feb-2013 Svetoslav <svetoslavganov@google.com> Rename a member variable

Change-Id: I1f7a3b8119d84a1119637f79fcd3c29f8b79ef27
ccessibility/AccessibilityNodeInfo.java
3fed9f185e5e9e35cb680e3f4217dcce96c3175d 05-Feb-2013 Craig Mautner <cmautner@google.com> am e57ed27a: am 246a283c: am fd5a0b36: Merge "Fix unexpected rotation change when re-enabling auto-rotate"

# By Sangkyu Lee
# Via Android Git Automerger (2) and others
* commit 'e57ed27a142bdc3b626d10b3806eb24df064e8d3':
Fix unexpected rotation change when re-enabling auto-rotate
246a283c007e007181f8892df514dfe04121b7a5 05-Feb-2013 Craig Mautner <cmautner@google.com> am fd5a0b36: Merge "Fix unexpected rotation change when re-enabling auto-rotate"

# By Sangkyu Lee
# Via Gerrit Code Review (1) and Sungmin Choi (1)
* commit 'fd5a0b3681499cbee0d1156b3b6f93fc91320848':
Fix unexpected rotation change when re-enabling auto-rotate
eecedffe4286321c3a4e58ef66a536420cd1f239 05-Feb-2013 Svetoslav <svetoslavganov@google.com> Renaming some APIs

Change-Id: I9e226d39648796f95dd0e86ffecbb3f93544243b
iew.java
ccessibility/AccessibilityNodeInfo.java
d0c83cccca9955da92d076dfdfbc3e349fbbc415 05-Feb-2013 Svetoslav <svetoslavganov@google.com> Set accessibility cursor position in non-editable views with content description.

While an accessibility service can set the cursor position in an editable
text field, it was not possible to set it for non-editable views with
content description. This patch enables that.

bug:8134469

Change-Id: I28b0ef1666b9e3ed5c0642718fbe63d4c9616569
iew.java
974fb7a5e90e70571e235750101a568c9457a3f2 02-Feb-2013 Michael Wright <michaelwr@google.com> am 3e295c3f: Merge "Add initial plumbing for brightness keys"

# Via Android (Google) Code Review (1) and Michael Wright (1)
* commit '3e295c3f2ec931ad9f7e38c6a083d711ab710717':
Add initial plumbing for brightness keys
3e295c3f2ec931ad9f7e38c6a083d711ab710717 02-Feb-2013 Michael Wright <michaelwr@google.com> Merge "Add initial plumbing for brightness keys"
9f811fd447206ed964fb576f55c1b38b76b45a4c 02-Feb-2013 Dake Gu <dake@google.com> SimulatdDpad: fix NPE for event without device

Fix a rare case that We lost device(due to network issue)
and SimulatedDpad received the MotionEvent without device.

b/8121964

Change-Id: Ie2948e6ff14a84422b05dda8ea87a3571f26f252
imulatedDpad.java
1df477acf60538f9de18bd597e090d075fa83509 01-Feb-2013 Michael Wright <michaelwr@google.com> Add initial plumbing for brightness keys

Change-Id: I595e8a25e6c245e4b22f06df9a8acdbb75e4b041
eyEvent.java
b606eae34dcb6b5533222a168b87da4c30c09d1d 02-Feb-2013 Dianne Hackborn <hackbod@google.com> am f265ea9d: App ops: vibration, neighboring cells, dialing, etc.

# Via Dianne Hackborn
* commit 'f265ea9d8307282ff1da3915978625a94fc2859e':
App ops: vibration, neighboring cells, dialing, etc.
f265ea9d8307282ff1da3915978625a94fc2859e 01-Feb-2013 Dianne Hackborn <hackbod@google.com> App ops: vibration, neighboring cells, dialing, etc.

Improve handling of vibration op, so that apps are
better blamed (there is now a hidden vibrator API that
supplies the app to blame, and the system now uses this
when vibrating on behalf of an app).

Add operation for retrieving neighboring cell information.

Add a new op for calling a phone number. This required
plumbing information about the launching package name through
the activity manager, which required changing the internal
startActivity class, which required hitting a ton of code that
uses those internal APIs.

Change-Id: I3f8015634fdb296558f07fe654fb8d53e5c94d07
indowManagerPolicy.java
40fce329c1f51084a32e2daabdf06d231657304e 01-Feb-2013 Svetoslav Ganov <svetoslavganov@google.com> am d838ca6b: Merge "Add to string implementation for the new accessibility actions."

# Via Android (Google) Code Review (1) and Svetoslav Ganov (1)
* commit 'd838ca6bc2c886375773c52f7851898f810cdc4b':
Add to string implementation for the new accessibility actions.
242724ee524573b42cad3812c633295607f9c6e1 01-Feb-2013 Svetoslav Ganov <svetoslavganov@google.com> Add to string implementation for the new accessibility actions.

bug:8122974

Change-Id: I3d0907af37a6622ab867317e67c773a8aeb16abf
ccessibility/AccessibilityNodeInfo.java
da805b149fde3f7f8ef404c39ef74b2fbbf7af7f 01-Feb-2013 Romain Guy <romainguy@google.com> am c5801680: Merge "Tag HardwareRenderers with a name to help debugging"

# Via Android (Google) Code Review (1) and Romain Guy (1)
* commit 'c580168011334db756f5e68aa005d20bace69171':
Tag HardwareRenderers with a name to help debugging
ef35927abcd089652f87a985dd6dde7afde58b92 01-Feb-2013 Romain Guy <romainguy@google.com> Tag HardwareRenderers with a name to help debugging

The name of the renderer is the same as the window it belongs to.

Change-Id: Ie9adc0a1978afa026923ea41f5540eda6ba65a92
LES20Canvas.java
LES20RecordingCanvas.java
ardwareCanvas.java
ardwareRenderer.java
iewRootImpl.java
5a2f6bee86bbfed9e785aeeff0312d6c60bc34bb 31-Jan-2013 Svetoslav <svetoslavganov@google.com> am f48a2d30: Merge "Add accessibility actions for text editing."

# Via Android (Google) Code Review (1) and Svetoslav (1)
* commit 'f48a2d30c5d5f7c167310ff9ca1cd2310121be7c':
Add accessibility actions for text editing.
f48a2d30c5d5f7c167310ff9ca1cd2310121be7c 31-Jan-2013 Svetoslav <svetoslavganov@google.com> Merge "Add accessibility actions for text editing."
7c51284d8019ed04ab296be84839d8a90ac042fa 31-Jan-2013 Svetoslav <svetoslavganov@google.com> Add accessibility actions for text editing.

Currently text editing is pretty hard (certain operations even
impossible) for a blind person. To address the issue this change
adds APIs that enable an accessibility service to perform basic
text editing operations such as copy, paste, cut, set selection,
extend selection while moving at a given granularity.

The new APIs enable an accessibility service to expose a gesture
driven efficient text editing facility.

bug:8098384

Change-Id: I82b200138a3fdf4c0c316b774fc08a096ced29d0
iew.java
ccessibility/AccessibilityNodeInfo.java
a62dbfd953ba8dec1f69d6eb92481d069b74f745 15-Nov-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix Javadoc for View layoutDirection / textDirection / textAlignment - DO NOT MERGE

Change-Id: I19b7a53c1c7d805fb9b1611e8944db27c82fc986
iew.java
2dbd185fd0e5dfe9addb677f42716c442b7e62bd 30-Jan-2013 Derek Sollenberger <djsollen@google.com> resolved conflicts for merge of c93c6aa5 to master-chromium

Change-Id: I51429ed5359355025f873ccab11bfabbbe772a46
c93c6aa5553203f05df871804517885fcc071cfd 30-Jan-2013 Chris Craik <ccraik@google.com> Merge "Object-based DisplayList recording"
fc14e1c7a2a831876307b74633176bb10f51460a 30-Jan-2013 Satoshi Kataoka <satok@google.com> am da01da17: Merge "Do not turn on imes unexpectedly with unit tests"

# Via Android (Google) Code Review (1) and Satoshi Kataoka (1)
* commit 'da01da176d4798d293c90d6280ddc59c780baaa3':
Do not turn on imes unexpectedly with unit tests
da01da176d4798d293c90d6280ddc59c780baaa3 30-Jan-2013 Satoshi Kataoka <satok@google.com> Merge "Do not turn on imes unexpectedly with unit tests"
414297828c24af67dad32870f05d383c5d024a28 29-Jan-2013 Michael Wright <michaelwr@google.com> am 8c47e856: Merge "Changes documention for how input buttons should be labelled"

# Via Android (Google) Code Review (1) and Michael Wright (1)
* commit '8c47e856b067057b5fcbb6eccfc79d1da4cff8f1':
Changes documention for how input buttons should be labelled
8c47e856b067057b5fcbb6eccfc79d1da4cff8f1 29-Jan-2013 Michael Wright <michaelwr@google.com> Merge "Changes documention for how input buttons should be labelled"
e1c4b5c64d2e347a30d0d35958165e293cd9efc2 29-Jan-2013 Svetoslav <svetoslavganov@google.com> am e340e68f: Merge "Update JavaDoc"

# Via Android (Google) Code Review (1) and Svetoslav (1)
* commit 'e340e68f1fe9c539606ad1ec2b76a3edb8f835bd':
Update JavaDoc
14ff996ce82734100ba3faedbc80c4783eebea9d 29-Jan-2013 Svetoslav <svetoslavganov@google.com> Update JavaDoc

Change-Id: I9644677eb715de1c4ba2f1608b38980f02bdf75d
ccessibility/AccessibilityNodeInfo.java
cf55195281cedf78483da2094fb36a4fce1b7b68 29-Jan-2013 Guang Zhu <guangzhu@google.com> am 6b30ba86: fix the build

# Via Guang Zhu
* commit '6b30ba86a4bfdbe5d87fed29720c4b4431d3685b':
fix the build
6b30ba86a4bfdbe5d87fed29720c4b4431d3685b 29-Jan-2013 Guang Zhu <guangzhu@google.com> fix the build

broken docs

Change-Id: I802d33c8ef2147adf36a495145a615cb206b9936
ccessibility/AccessibilityNodeInfo.java
6b57bde221c593b46daf020d03f938924ea1ef28 29-Jan-2013 Michael Wright <michaelwr@google.com> Changes documention for how input buttons should be labelled

Change-Id: I7920d1359950f04a3eb63c36abbcc3d54faac068
eyEvent.java
984019868a04abf4a372869c8a00002912827e78 29-Jan-2013 Svetoslav Ganov <svetoslavganov@google.com> am d0fd5464: Merge "Adding UI test automation APIs."

# Via Android (Google) Code Review (1) and Svetoslav (1)
* commit 'd0fd54648ca6249f56cf469c57181b5a7bbb71d0':
Adding UI test automation APIs.
d0fd54648ca6249f56cf469c57181b5a7bbb71d0 29-Jan-2013 Svetoslav Ganov <svetoslavganov@google.com> Merge "Adding UI test automation APIs."
55dccf3e981a5ed33b463893ec671831dd26bad7 28-Jan-2013 Romain Guy <romainguy@google.com> am 29e4aa7a: Merge "Reinitialize hardware renderer after eglTerminate() Bug #8066455"

# Via Android (Google) Code Review (1) and Romain Guy (1)
* commit '29e4aa7abe6b0c62f31fb23b8572cd5b91f08f5c':
Reinitialize hardware renderer after eglTerminate() Bug #8066455
3696779bca4e5bc1b60c056db6f892e72e51a20f 28-Jan-2013 Romain Guy <romainguy@google.com> Reinitialize hardware renderer after eglTerminate()
Bug #8066455

ViewRootImpl was properly detecting that the renderer was not
ready to draw but would simply schedule another frame, thus sending
the systemui into an inifite redraw loop. This change reinitializes
the renderer if needed (if the renderer is requested but not enabled.)

This CL also fixes an issue caused by the default wallpaper. Since it
never calls eglTerminate(), managed contexts are never reclaimed.

Change-Id: Idb8caa672be8ee35f6e6a7e942d9abd8aa100967
iewRootImpl.java
bc0ed2ce8ba89ce3d8d948ce94bd8dda9c42658b 28-Jan-2013 Siva Velusamy <vsiva@google.com> am a6a5c8f6: Merge "Support invoking view methods from hierarchy viewer"

# Via Android (Google) Code Review (1) and Siva Velusamy (1)
* commit 'a6a5c8f6b66c0750a28d2ad9cba18d0c730c4393':
Support invoking view methods from hierarchy viewer
a6a5c8f6b66c0750a28d2ad9cba18d0c730c4393 28-Jan-2013 Siva Velusamy <vsiva@google.com> Merge "Support invoking view methods from hierarchy viewer"
f1367b7e903a2a69a8f833bb272e91d77abd57c6 25-Jan-2013 Satoshi Kataoka <satok@google.com> Do not turn on imes unexpectedly with unit tests

Bug: 7872918

Change-Id: Ie1d74c9fac27de140e7aa85f2eaefcb89aa06ea7
nputmethod/InputMethodInfo.java
7af76f20cd6475e054f9f081c59c95d41a3d3b7d 23-Jan-2013 Dianne Hackborn <hackbod@google.com> am d8ba6cc9: Merge "Add new API to propagate contextual data to the assist action"

# Via Android (Google) Code Review (1) and Dianne Hackborn (1)
* commit 'd8ba6cc9217e2e042106870e9d2e70cfd80426d6':
Add new API to propagate contextual data to the assist action
f9c5e0fe837a3090820da502ecaabc5accc00ace 23-Jan-2013 Dianne Hackborn <hackbod@google.com> Add new API to propagate contextual data to the assist action

When launching an assist, we have a new API allowing the
current foreground activity/application to provide additional
arbitrary contextual information that is stuffed in the
assist intent before it is launched.

Change-Id: I0b2a6f5a266dc42cc0175327fa76774f814af3b4
imulatedDpad.java
80943d8daa6ab31ab5c486d57aea406aa0730d58 02-Jan-2013 Svetoslav Ganov <svetoslavganov@google.com> Adding UI test automation APIs.

This change adds APIs support for implementing UI tests. Such tests do
not rely on internal application structure and can span across application
boundaries. UI automation APIs are encapsulated in the UiAutomation object
that is provided by an Instrumentation object. It is initialized by the
system and can be used for both introspecting the screen and performing
interactions simulating a user. UI test are normal instrumentation tests
and are executed on the device.

UiAutomation uses the accessibility APIs to introspect the screen and
a special delegate object to perform privileged operations such as
injecting input events. Since instrumentation tests are invoked by a shell
command, the shell program launching the tests creates a delegate object and
passes it as an argument to started instrumentation. This delegate
allows the APK that runs the tests to access some privileged operations
protected by a signature level permissions which are explicitly granted
to the shell user.

The UiAutomation object also supports running tests in the legacy way
where the tests are run as a Java shell program. This enables existing
UiAutomator tests to keep working while the new ones should be implemented
using the new APIs. The UiAutomation object exposes lower level APIs which
allow simulation of arbitrary user interactions and writing complete UI test
cases. Clients, such as UiAutomator, are encouraged to implement higher-
level APIs which minimize development effort and can be used as a helper
library by the test developer.

The benefit of this change is decoupling UiAutomator from the system
since the former was calling hidden APIs which required that it is
bundled in the system image. This prevented UiAutomator from being
evolved separately from the system. Also UiAutomator was creating
additional API surface in the system image. Another benefit of the new
design is that now test cases have access to a context and can use
public platform APIs in addition to the UiAutomator ones. Further,
third-parties can develop their own higher level test APIs on top
of the lower level ones exposes by UiAutomation.

bug:8028258

Also this change adds the fully qualified resource name of the view's
id in the emitted AccessibilityNodeInfo if a special flag is set while
configuring the accessibility service. Also added is API for looking
up node infos by this id. The id resource name is relatively more stable
compared to the generaed id number which may change from one build to
another. This API facilitate reuing the already defined ids for UI
automation.

bug:7678973

Change-Id: I589ad14790320dec8a33095953926c2a2dd0228b
ccessibilityInteractionController.java
WindowManager.aidl
iew.java
iewRootImpl.java
indowManagerPolicy.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/IAccessibilityInteractionConnection.aidl
f9455fafb690f23cee9cc9a59bfb68f31e695990 18-Jan-2013 Siva Velusamy <vsiva@google.com> Support invoking view methods from hierarchy viewer

This CL adds support for invoking any view method with
primtive arguments, and setting layout parameters from
the debugger (hierarchy viewer).

requestLayout() and invalidate() are now just implemented
using the more generic invokeMethod() command.

Change-Id: Icffda251728a4963b35266786b0b6143bae7fe8e
iewDebug.java
2af4635e4a9e448a65ff541252f8f94bc6ac48e0 27-Nov-2012 Chris Craik <ccraik@google.com> Object-based DisplayList recording

bug:8037003

Changes the DisplayList from using stream read/write commands to use an array of
objects manually allocated on a linear buffer.

Depends on frameworks/native change https://googleplex-android-review.googlesource.com/#/c/257695/ which adds LinearAllocator

Also changes drawRects to use float count instead of rect count, to be more like drawLines/drawPoints

Change-Id: Ia2e4a11acd8f0a757042a05cbc9e7563cb73ee47
ardwareRenderer.java
f449c0c381239dc0f78b0f01ecfb3889e056a597 22-Jan-2013 Masanori Ogino <ogino.masanori@sharp.co.jp> fix hover events consume issue

View#onHoverEvent() would always consume hover events over the view
if an application window has the clickable view/widget on it.
That's happened even if accessibility/talkback is disabled.
So those events will not dispatch to activity#onGenericMotionEvent().

The onHoverEvent method should return a real consumed state.

Change-Id: I9cac13b82866e5cdda0b03befb0de752a0a2e741
iew.java
ef1215d98b2f1ac52ca091c6e2d51f7d51b9c6e4 18-Jan-2013 Dake Gu <dake@google.com> am ebf7c743: am 85a06152: am fe88f1be: Merge "Fix bug of SimulatedTrackball" into jb-mr1-aah-dev

* commit 'ebf7c74361baefb826591bd90cdacd9244a2eb59':
Fix bug of SimulatedTrackball
ebf7c74361baefb826591bd90cdacd9244a2eb59 18-Jan-2013 Dake Gu <dake@google.com> am 85a06152: am fe88f1be: Merge "Fix bug of SimulatedTrackball" into jb-mr1-aah-dev

* commit '85a06152ce9b7d3a198639eb1918a9c2a3fd34d4':
Fix bug of SimulatedTrackball
85a06152ce9b7d3a198639eb1918a9c2a3fd34d4 18-Jan-2013 Dake Gu <dake@google.com> am fe88f1be: Merge "Fix bug of SimulatedTrackball" into jb-mr1-aah-dev

* commit 'fe88f1be3d197987a874f6c29fefdeb11db183f6':
Fix bug of SimulatedTrackball
f8739b992f53fdd2e4be73ee10716df32434100a 17-Jan-2013 Dake Gu <dake@google.com> Fix bug of SimulatedTrackball

Simulated trackball should not generate KeyEvent if dispatchGenericMotionEvent
returns true

b/8022205

Change-Id: I1857e25407c508c98ef4db85fe146b1e25a0803e
imulatedDpad.java
imulatedTrackball.java
iewRootImpl.java
e9a983b44407413f18aeb16c892e97ea938a7fab 18-Jan-2013 Romain Guy <romainguy@google.com> am b12db26f: Merge "Implement clipRect with a transform, clipRegion & clipPath Bug #7146141"

* commit 'b12db26fec178794915d819c3dd64f13d788c461':
Implement clipRect with a transform, clipRegion & clipPath Bug #7146141
8ce00301a023eecaeb8891ce906f67b513ebb42a 16-Jan-2013 Romain Guy <romainguy@google.com> Implement clipRect with a transform, clipRegion & clipPath
Bug #7146141

When non-rectangular clipping occurs in a layer the render buffer
used as the stencil buffer is not cached. If this happens on a
View's hardware layer the render buffer will live for as long
as the layer is bound to the view. When a stencil buffer is
required because of a call to Canvas.saveLayer() it will be allocated
on every frame. A future change will address this problem.

If "show GPU overdraw" is enabled, non-rectangular clips are not
supported anymore and we fall back to rectangular clips instead.
This is a limitation imposed by OpenGL ES that cannot be worked
around at this time.

This change also improves the Matrix4 implementation to easily
detect when a rect remains a rect after transform.

Change-Id: I0e69fb901792d38bc0c4ca1bf9fdb02d7db415b9
ardwareRenderer.java
0e4a84273246e43b66b1671883cdc041f735bcfb 16-Jan-2013 Siva Velusamy <vsiva@google.com> am 281184fb: Merge "Support hierarchy viewer commands via DDM"

* commit '281184fb86a1866b3e8f8a0d8b38a1aa934849dc':
Support hierarchy viewer commands via DDM
281184fb86a1866b3e8f8a0d8b38a1aa934849dc 16-Jan-2013 Siva Velusamy <vsiva@google.com> Merge "Support hierarchy viewer commands via DDM"
a8396686a20ec7219efb3d1e7050c1cd999ec83e 16-Jan-2013 Scott Kennedy <skennedy@google.com> docs: Typos and other fixes

External 42844
External 42778
External 42768
External 42730
External 42720
External 42678
External 39381

Change-Id: Ia9d54ce87dc266650d0620fd3adc63137322e20b
iew.java
945bfb6068d4ac1414a37a3ebe4dc4d02383e38e 07-Jan-2013 Siva Velusamy <vsiva@google.com> Support hierarchy viewer commands via DDM

Hierarchy Viewer currently interfaces to the host via a socket
opened by ViewServer which resides in the WindowManagerService.
Since this has access to all windows, it is enabled only on
debug builds.

This CL adds necessary support to DDM to handle all the commands
required for Hierarchy Viewer. It only misses two commands that
are sent to the Window Manager (which we don't have access to
from the applications).

A future CL will remove the ViewServer functionality.

Change-Id: I1dae316a00737b0cae4e640ccc97bf9bb1d05973
iewDebug.java
indowManagerGlobal.java
616a87736d819a7fe4e1d60d4703aabc7b888cd7 15-Jan-2013 Romain Guy <romainguy@google.com> am 61840eb0: Merge "Preliminary Support for region clipping"

* commit '61840eb03882e1a964ae971725bd21229c3db42c':
Preliminary Support for region clipping
61840eb03882e1a964ae971725bd21229c3db42c 15-Jan-2013 Romain Guy <romainguy@google.com> Merge "Preliminary Support for region clipping"
31ea5707fa4f258533a869d58ef6f9f50cd99c65 15-Jan-2013 Jeff Brown <jeffbrown@google.com> am 9afb2e1a: Optimize focused input event dispatch in view root. DO NOT MERGE

* commit '9afb2e1a95b92d5dfb0612bbb606a09aa528ee5d':
Optimize focused input event dispatch in view root. DO NOT MERGE
9afb2e1a95b92d5dfb0612bbb606a09aa528ee5d 14-Jan-2013 Jeff Brown <jeffbrown@google.com> Optimize focused input event dispatch in view root. DO NOT MERGE

The efficiency of key, trackball and generic motion event
dispatch is greatly influenced by the IME dispatch cycle.
This change simplifies the dispatch of focused input events
and avoids causing event processing to be requeued on the
handler and delayed unnecessarily.

Bug: 7984576
Change-Id: Id82624a3f32c05efe6ee5c322bd55bf2ab21525d
iewRootImpl.java
nputmethod/InputMethodManager.java
b2e6538c599bf7e454aafa7dfb2504bd43c92f3d 15-Jan-2013 Jeff Brown <jeffbrown@google.com> am 22a94cb0: Merge "Optimize focused input event dispatch in view root."

* commit '22a94cb03ad39c5256608e4954fe4e85179d9ed6':
Optimize focused input event dispatch in view root.
22a94cb03ad39c5256608e4954fe4e85179d9ed6 15-Jan-2013 Jeff Brown <jeffbrown@google.com> Merge "Optimize focused input event dispatch in view root."
29c0ed2c130521ce1b648dd517a0d25457004de3 14-Jan-2013 Jeff Brown <jeffbrown@google.com> Optimize focused input event dispatch in view root.

The efficiency of key, trackball and generic motion event
dispatch is greatly influenced by the IME dispatch cycle.
This change simplifies the dispatch of focused input events
and avoids causing event processing to be requeued on the
handler and delayed unnecessarily.

Bug: 7984576
Change-Id: Id82624a3f32c05efe6ee5c322bd55bf2ab21525d
iewRootImpl.java
nputmethod/InputMethodManager.java
735738c4ddf3229caa5f6e634bf591953ac29944 03-Dec-2012 Romain Guy <romainguy@google.com> Preliminary Support for region clipping

Region clipping, using Canvas.clipPath or Canvas.clipRegion, requires
a stencil buffer to be always present. In addition, extra wiring is
required in JNI and display lists.

This change only adds the necessary JNI/C++ APIs and some extra
plumbing to start the real work on properly supporting region
clipping.

A new debug define called DEBUG_CLIP_REGIONS can be used to draw
the current clip region. It is off by default, as is region
clipping.

The default implementation of clipPath() and clipRegion(), now
in native, mimics the previous Dalvik implementation to prevent
regressions.

Change-Id: I7903e7cfd7412b9b9b622566d4dbfce7bdcec00c
LES20Canvas.java
ardwareRenderer.java
c6a207c67b57aa210bf8df8054867027f23ffa36 11-Jan-2013 Fabrice Di Meglio <fdimeglio@google.com> am 9003007d: Merge "Fix Volume icons for RTL languages"

* commit '9003007d35c6ae1cdeac4ca831a036292b7089e9':
Fix Volume icons for RTL languages
9003007d35c6ae1cdeac4ca831a036292b7089e9 11-Jan-2013 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix Volume icons for RTL languages"
7962964a684b1e7e75086a119c8119e95ca3f62d 11-Jan-2013 Romain Guy <romainguy@google.com> am fff06e97: Merge "Add a new type of profiling graph: lines"

* commit 'fff06e97e3e4e22271ec41ac0c44036aad3141fe':
Add a new type of profiling graph: lines
fff06e97e3e4e22271ec41ac0c44036aad3141fe 11-Jan-2013 Romain Guy <romainguy@google.com> Merge "Add a new type of profiling graph: lines"
48ef4a92a404bf2b87fd0cd0edfe082901736ac3 11-Jan-2013 Romain Guy <romainguy@google.com> Add a new type of profiling graph: lines

Change-Id: I0e67d7227016fe37011e17d04220a200a6a5fba0
ardwareRenderer.java
2adc9bb1b4e71114a1cb2c04398d122d9ce8ce46 11-Jan-2013 Svetoslav Ganov <svetoslavganov@google.com> am ea307734: Merge "Fixing a memory leak in ViewRootImpl and a focus change callback issue."

* commit 'ea307734e79e36a961d5184f89f7baa171f9915d':
Fixing a memory leak in ViewRootImpl and a focus change callback issue.
ea307734e79e36a961d5184f89f7baa171f9915d 11-Jan-2013 Svetoslav Ganov <svetoslavganov@google.com> Merge "Fixing a memory leak in ViewRootImpl and a focus change callback issue."
9e6575bc52f421484fe262aff224db247e70d830 10-Jan-2013 Dianne Hackborn <hackbod@google.com> am 854458f4: am 0287ca3c: am e62fa825: Merge from master: fix issue #7966357: Super lights out mode vs. volume dialog

* commit '854458f4d52937f9a1385559d759bd8019eb3294':
Merge from master: fix issue #7966357: Super lights out mode vs. volume dialog
854458f4d52937f9a1385559d759bd8019eb3294 10-Jan-2013 Dianne Hackborn <hackbod@google.com> am 0287ca3c: am e62fa825: Merge from master: fix issue #7966357: Super lights out mode vs. volume dialog

* commit '0287ca3ca36ad98004ddabfa189105e6324a820e':
Merge from master: fix issue #7966357: Super lights out mode vs. volume dialog
e62fa825794967c2067be86e8b57b83f4b82ee1c 10-Jan-2013 Dianne Hackborn <hackbod@google.com> Merge from master: fix issue #7966357: Super lights out mode vs. volume dialog

The volume panel now forces us out of the UI modes while it
is up.

Change-Id: If39fa33b1c52579bf5d376ce4722408cee3ca951
olumePanel.java
indowManager.java
04ce44778486eeb963d30ee984258b78276c029f 10-Jan-2013 Dianne Hackborn <hackbod@google.com> am 91893471: Merge "Fix issue #7966357: Super lights out mode vs. volume dialog"

* commit '91893471ba844287432db4473a15faf902889607':
Fix issue #7966357: Super lights out mode vs. volume dialog
891d3fbb15683e72432af16e571f41f566d5fdf0 10-Jan-2013 Dianne Hackborn <hackbod@google.com> Fix issue #7966357: Super lights out mode vs. volume dialog

The volume panel now forces us out of the UI modes while it
is up.

Change-Id: I25f29af5b6518aba695b64a75977ae240b742118
olumePanel.java
indowManager.java
8c02884c8c3c97cdc2366ac187c8a326308b895b 10-Jan-2013 Fabrice Di Meglio <fdimeglio@google.com> Fix Volume icons for RTL languages

- add mirrored version of the icons
- make VolumePanel respond to layout direction changes
- make AudioService propagate layout direction changes to the VolumePanel

Change-Id: Ibb884ab81641c319a9b7bea1381066f3f19581f0
olumePanel.java
149567f9d59a07a9d7793ea455ff4c2586c3ae53 09-Jan-2013 Svetoslav Ganov <svetoslavganov@google.com> Fixing a memory leak in ViewRootImpl and a focus change callback issue.

1. ViewRootImpl was keeping reference to the old focused view so it can
call back the global on focus change listener when another view gets
focus. The stashed reference, however was not cleared which caused a
memory leak if the last focused view was removed from the view tree.
In general keeping additional state for the last focus in ViewRootImpl
is not a good idea since this add complexity due to additional book
keeping work that is required. The view tree already keeps track of
where the focus is and it should be the only place that holds this
data. Since focus does not change that frequently it is fine to look
up the focus since this operation is O(m) where m is the depth of the
view tree. This change removes the duplicate book keeping from
ViewRootImpl and the focus is looked up as needed.

2. ViewRootImpl was calling the global focus change callbacks when focus
is gained, lost, or transferred to another view. This was done in
*ChildFocus methods. In the case of a child losing focus, i.e. in
clearChildFocus, there was a check whether focus searh yields a view
to take focus and if so it did not call back the global focus listener
assuming the the found view will take focus (the view tree gives focus
to the first focusable when a view looses focus). This is not a correct
assumption since some views override methods called as a result of
View.requestFocus that determine what the next focused view should
be. For example, HorizontalScrollView overrides onRequestFocusInDescendants
and changes the direction of the search. In fact focus search does not
take into accound ViewGroup descendant focusability. Hence, the view found
by calling the focus search from the root is not necessarily the one
that will get focus after calling requestFocus. Actually, it is
possible that the focus search will find a view but no view will
take focus. Now the View class is responsible for calling the
global focus listeners which avoids the above problem. Also this
saves book keeping in ViewRootImpl.

bug:7962363

Change-Id: Ic95a18b364e997021f3f6bb46943559aac07d95a
iew.java
iewGroup.java
iewRootImpl.java
15a3380dba38351d1c3d480ae2321134481bb5fd 07-Jan-2013 Sangkyu Lee <sk82.lee@lge.com> Fix unexpected rotation change when re-enabling auto-rotate

getProposedRotation() method returns old value when re-enabling
auto-rotate option. So you can see unexpected rotation change
with the following steps.

settings -> display -> enable auto-rotate
-> rotate device to landscape -> disable auto-rotate
-> rotate device to portrait -> enable auto-rotate

This patch makes mSensorEventListener reset before it is registered again.

Bug: 7964531

Change-Id: I6a8d287bbd9809ef31de67c54efb885e9a4fd76f
Signed-off-by: Sangkyu Lee <sk82.lee@lge.com>
indowOrientationListener.java
fc615a0f643408956fc0dc1b997871e2b27cee7e 20-Dec-2012 Derek Sollenberger <djsollen@google.com> Remove calls to SkCanvas::setBitmapDevice()

Change-Id: Ib0aa2f65b77802b105c0e8a9d7cdde2e863d3673
urface.java
e62050776697ee2fd407d6cb1da8f4aeccb663a1 08-Jan-2013 Craig Mautner <cmautner@google.com> am 4b71aa1f: Move app transition constants

* commit '4b71aa1f8a1a3b7189fd29241ea7c594ce01623c':
Move app transition constants
4b71aa1f8a1a3b7189fd29241ea7c594ce01623c 28-Dec-2012 Craig Mautner <cmautner@google.com> Move app transition constants

Move app transition constants from WindowManagerPolicy to
AppTransition.

Change-Id: I8ae6c4d0da1db826c44eb4ea0c6b85016b50b1a3
indowManagerPolicy.java
e64fb50701f8e4b58c1ed26ad6ab2c518709834b 07-Jan-2013 Romain Guy <romainguy@google.com> am 7d1c4fa3: Remove out-of-date comment and rename constant

* commit '7d1c4fa322dec1247f7d509a066e436f1d2706fa':
Remove out-of-date comment and rename constant
7d1c4fa322dec1247f7d509a066e436f1d2706fa 07-Jan-2013 Romain Guy <romainguy@google.com> Remove out-of-date comment and rename constant

Change-Id: I0c60d349505776cff0d7e5360e87ac5584dc5876
ardwareRenderer.java
023b3ebc46ff5acb634eaeaaed0d6600df852050 07-Jan-2013 Romain Guy <romainguy@google.com> am 4a623745: Merge "Fix issue when toggling profiling from visual to off to visual"

* commit '4a62374544152d9cc6dafd3e8dd9b0ba475a974c':
Fix issue when toggling profiling from visual to off to visual
666d5daab2a679ac0575c3a24ef18a737592f1d8 07-Jan-2013 Romain Guy <romainguy@google.com> Fix issue when toggling profiling from visual to off to visual

Change-Id: I4a623020a9bf0079029d184c13e58d92e692faf8
ardwareRenderer.java
e5080343aeb80f28bf8318b234e9ae13ddb6d46d 07-Jan-2013 Romain Guy <romainguy@google.com> am 31ffc571: Merge "Update profiling properties"

* commit '31ffc5713913062c58854b1cc3556547f6681f65':
Update profiling properties
a4fef0260ba5f69f1484dac4d7e39b9dc5ac7218 07-Jan-2013 Romain Guy <romainguy@google.com> Update profiling properties

This change merges debug.hwui.profiling and profiling_visualize.
Now only the first property exists and accepts the values true, false
and visual. This enables setting the property from Settings.

Change-Id: I16a11fe23ac1a6bb907a1a826e418d6b3994b56c
ardwareRenderer.java
4b9c6b31110c85187786ff58322603aac0e12c9d 07-Jan-2013 Romain Guy <romainguy@google.com> am e1730e77: Merge "Use dp units instead of px to draw profiling graph"

* commit 'e1730e77a3d02d54f8118e9256ea57d0f489d43e':
Use dp units instead of px to draw profiling graph
98e4a52cc0994c67343e33ec251d6d8b83c528bc 07-Jan-2013 Romain Guy <romainguy@google.com> Use dp units instead of px to draw profiling graph

Change-Id: Iba24b21ebe46738c6b1d6d320ce34af71f7c769d
ardwareRenderer.java
044eca432152b7c8474301244f4efacf5a60da30 05-Jan-2013 Romain Guy <romainguy@google.com> am 63e2098b: Merge "Make profiling graph more readable in all apps"

* commit '63e2098b7480ce4ca338a220b2de30b182e93b31':
Make profiling graph more readable in all apps
63f4d84ec2e9258726093bb435d6549fe63a053e 05-Jan-2013 Romain Guy <romainguy@google.com> Make profiling graph more readable in all apps

Change-Id: Ic9467d4420c2aa8d295d0045c714c9f8e6269220
ardwareRenderer.java
7bac55434caa9de7fc31f6fd8b0384042c700b4c 05-Jan-2013 Romain Guy <romainguy@google.com> am 9acd1b4f: Merge "Add visual profiling feature"

* commit '9acd1b4fa897f3a007dd23dc1f0471b151fa03ad':
Add visual profiling feature
672433d90fab7383cd28beac9d4485b566a90940 05-Jan-2013 Romain Guy <romainguy@google.com> Add visual profiling feature

When profiling is enabled with debug.hwui.profile set to true,
setting debug.hwui.profile_visualizer to true will display the
profiling data directly on screen.

Change-Id: I3d5fe3f0347090815087b1cbfce66b8e76d9347b
LES20Canvas.java
ardwareRenderer.java
165abde0da9ddfac1b88e52f942f0f28c533d646 19-Dec-2012 Justin Koh <justinkoh@google.com> am e422737f: am a90c92a1: am 86903699: Merge "Start RecognitionActivity with an upswipe gesture." into jb-mr1-aah-dev

* commit 'e422737fda48f73cdd74800c9a9b9d15d0186b6d':
Start RecognitionActivity with an upswipe gesture.
e422737fda48f73cdd74800c9a9b9d15d0186b6d 19-Dec-2012 Justin Koh <justinkoh@google.com> am a90c92a1: am 86903699: Merge "Start RecognitionActivity with an upswipe gesture." into jb-mr1-aah-dev

* commit 'a90c92a1c97830de5e1766bb64ff421a2a50ed56':
Start RecognitionActivity with an upswipe gesture.
a90c92a1c97830de5e1766bb64ff421a2a50ed56 19-Dec-2012 Justin Koh <justinkoh@google.com> am 86903699: Merge "Start RecognitionActivity with an upswipe gesture." into jb-mr1-aah-dev

* commit '86903699692a0b3229062da2995d829629e64e7b':
Start RecognitionActivity with an upswipe gesture.
86903699692a0b3229062da2995d829629e64e7b 19-Dec-2012 Justin Koh <justinkoh@google.com> Merge "Start RecognitionActivity with an upswipe gesture." into jb-mr1-aah-dev
adcdf8931d6bb51b8a68ce4ba7c50e0dfda14c73 19-Dec-2012 Chet Haase <chet@google.com> am 11825751: Merge "Fix for requestLayout-during-layout inefficiencies"

* commit '118257517a4b715f4f0318c03f14b3236721dd01':
Fix for requestLayout-during-layout inefficiencies
2fa54cef47887808d006f473a7d4f8dd5fb76704 19-Dec-2012 Derek Sollenberger <djsollen@google.com> Merge "Update framework to support r5967 of Skia." into master-chromium
cc699b4fe396b3f93d45211d0df6f02baa325b2f 13-Dec-2012 Chet Haase <chet@google.com> Fix for requestLayout-during-layout inefficiencies

An earlier fix made it possible to call requestLayout() during layout
(which is not recommended in most cases outside of a ListView) without
ending up with blank content and internal layout flags in a confused state.
However, that fix incorrectly detected a problem in some cases (such as
ListView practices of adding views during layout) which were actually okay;
as long as you make sure to measure and layout your children properly
before returning from layout(), then it's not a problem. We were improperly
spamming the log with supposed problems, and causing more overhead in correct
cases by running a full request/measure/layout pass after the first layout
pass, all of which is unnecessary in cases where the containers know what
they're doing.

This new fix changes the logic to only cause the second layout pass (and third,
posted to the next frame, if things are really done incorrectly) if the layout-request
flags are still set on the requesting views after the full layout pass is complete.
This situation causes the blank screens we've seen in buggy apps, and is exactly
what we should avoid. However, correct cases (e.g., ListView) will not have these
problems because they run measure/layout correctly after the request calls, which
clears these flags. The upshot is that buggy cases will be detected and compensated for
(by clearing the flags and then running a second request/measure/layout pass, as in the
original fix) and non-buggy cases will be noop'd, going back to their previous, working
logic flow.

The bug below is one of the buggy apps to demonstrate this problem. I noticed that the
original problem (blank screen) is no longer reproducible. I suspect that logic was
added to the app to force a refresh after it is attached. You can still detect the problem
(and the fix) by seeing that prior to the fix (say, on mr1.1) there is a delay of about
a second between the end of the progress bar updates and the showing of content on a
screen that used to just remain blank. With the fix (both the previous version and this
one), the content is updated immediately, because we now handle the buggy request-
during-layout situation in the same frame as it occurs.

Issue #6914123 News and Weather app sometimes loads to a blank screen

Change-Id: I4c34817cc3dd44ba422ff50de4321624c0824d83
iew.java
iewRootImpl.java
05cb363bf3e714d0a5fb1bc97dfed639c9c9f950 12-Dec-2012 Ben Pietrzak <bpietrzak@google.com> Start RecognitionActivity with an upswipe gesture.

Change-Id: I7dd91bef3eb551bb7617307cc9a4777226b5ded7
imulatedTrackball.java
iewRootImpl.java
d0f35aa9c9e5652d0e6b54f059ba039a76a9aed2 18-Dec-2012 Robert Ly <robertly@google.com> am bfb69176: am d4f4d14a: am 5042b051: am e7c3fba7: Merge "change onEnd() to withEndAction() in javadocs" into jb-mr1-dev

* commit 'bfb69176db2017a10072e4ba4e96d4a33f18e4a8':
change onEnd() to withEndAction() in javadocs
bfb69176db2017a10072e4ba4e96d4a33f18e4a8 18-Dec-2012 Robert Ly <robertly@google.com> am d4f4d14a: am 5042b051: am e7c3fba7: Merge "change onEnd() to withEndAction() in javadocs" into jb-mr1-dev

* commit 'd4f4d14a91492384c4553b82be27b5f135a41227':
change onEnd() to withEndAction() in javadocs
d4f4d14a91492384c4553b82be27b5f135a41227 18-Dec-2012 Robert Ly <robertly@google.com> am 5042b051: am e7c3fba7: Merge "change onEnd() to withEndAction() in javadocs" into jb-mr1-dev

* commit '5042b051b395f36d3c582202e9e78758934b79a6':
change onEnd() to withEndAction() in javadocs
5042b051b395f36d3c582202e9e78758934b79a6 18-Dec-2012 Robert Ly <robertly@google.com> am e7c3fba7: Merge "change onEnd() to withEndAction() in javadocs" into jb-mr1-dev

* commit 'e7c3fba7929a1cb73bbe6ca84a5140febc09a62a':
change onEnd() to withEndAction() in javadocs
8ee2a70f08f54314d3ff0cd571a7ea9337065389 18-Dec-2012 Robert Ly <robertly@google.com> change onEnd() to withEndAction() in javadocs

Change-Id: Ic9a04bf86d62249b47dc654052d58797dfc3990c
iewPropertyAnimator.java
545252f4fde6fbb70b07e97a120c7d1405758017 11-Dec-2012 Svetoslav Ganov <svetoslavganov@google.com> Refactoring of the screen magnification feature.

1. This patch takes care of the case where a magnified window is covering an unmagnigied
one. One example is a dialog that covers the IME window.

bug:7634430

2. Ensuring that the UI automator tool can connect and correctly dump the screen.

bug:7694696

3. Removed the partial implementation for multi display magnification. It adds
unnecessary complexity since it cannot be implemented without support for
input from multiple screens. We will revisit when necessary.

4. Moved the magnified border window as a surface in the window manager.

5. Moved the mediator APIs on the window manager and the policy methods on the
WindowManagerPolicy.

6. Implemented batch event processing for the accessibility input filter.

Change-Id: I4ebf68b94fb07201e124794f69611ece388ec116
DisplayMagnificationController.aidl
DisplayMagnificationMediator.aidl
MagnificationCallbacks.aidl
WindowManager.aidl
agnificationSpec.java
urface.java
indowManagerPolicy.java
ca79cf69d09efa0c327e9b1237d86a119aea5da7 14-Aug-2012 Derek Sollenberger <djsollen@google.com> Update framework to support r5967 of Skia.

bug: 6906025
Change-Id: Iefdb830ec3aa2ab3472c1c142484a7aa21788a15
LES20Canvas.java
d44280e28884085f014806d53413ec5a68d0ac25 11-Dec-2012 Mita Yun <mitayun@google.com> resolved conflicts for merge of ebcbfb3f to master

Change-Id: I0658dd4a1418fbad91d9663e5b52418a979dc683
ebcbfb3fc7750e2873a3e7c6c707fa4e203089b6 11-Dec-2012 Mita Yun <mitayun@google.com> am a98cd512: Merge "Use asynchronous messages for input method events." into jb-mr1-aah-dev

* commit 'a98cd5122be643a51f563d02069e8f9409d44394':
Use asynchronous messages for input method events.
a98cd5122be643a51f563d02069e8f9409d44394 10-Dec-2012 Mita Yun <mitayun@google.com> Merge "Use asynchronous messages for input method events." into jb-mr1-aah-dev
ba534dece2c1917a7473a5fe78976c66f0189ad5 10-Dec-2012 Adam Powell <adamp@google.com> Merge "Update documentation to mention compatibility versioning"
2c8cc972c3b03b76a80db517dde1e68895bbdd66 08-Dec-2012 Adam Powell <adamp@google.com> Update documentation to mention compatibility versioning

Mention changes involving MeasureSpec/RelativeLayout/ImageView
behavior changes when apps target SDK > 17.

Change-Id: I232492a76ac048f7b460d28a87bd84cbbec4e4d7
iew.java
e3833c2ba4971f287cb57641a01b5d098fdfc05e 08-Dec-2012 Adam Powell <adamp@google.com> Merge "Compatibility measurement hacks when targetSdkVersion <= JB-MR1"
7da4b73a236b7c72d1337696949df7a00776dd06 08-Dec-2012 Adam Powell <adamp@google.com> Compatibility measurement hacks when targetSdkVersion <= JB-MR1

All three of these are interrelated!

* Allow broken MeasureSpec values. The long-standing implementation
of MeasureSpec.makeMeasureSpec has been to add both values rather
than masking/or-ing the values together. Some old code relied on
this, such as if it mixed up size/mode params.

* Disable ImageView adjustViewBounds allowing the view to grow beyond
its initial size. A bug in RelativeLayout in the presence of the
above MeasureSpec fix causes this not to work properly in apps.

* Allow RelativeLayout to send overflowed/bogus MeasureSpec values
when measured with MeasureSpec.UNSPECIFIED mode. Some apps have
custom child views that do not properly handle UNSPECIFIED
measurements, but the exact overflow semantics caused this to
generate AT_MOST $REALLYBIG MeasureSpecs for those views instead if
they were placed inside a RelativeLayout in a scrolling container.

Change-Id: I977a5f1ba5637f0cba3d26a70139e2bcd021fc9c
iew.java
961ce2afbf82d4b2a9691f1c1cc75a97ce43fe2b 07-Dec-2012 Sascha Prueter <saschap@google.com> am 2588648b: am 203f69f0: Merge "Call setSize to sync Surface to SurfaceFlinger. DO NOT MERGE" into jb-mr1.1-dev

* commit '2588648b5268526bdc9ed7fb4e9eac36c8c693dc':
Call setSize to sync Surface to SurfaceFlinger. DO NOT MERGE
2588648b5268526bdc9ed7fb4e9eac36c8c693dc 07-Dec-2012 Sascha Prueter <saschap@google.com> am 203f69f0: Merge "Call setSize to sync Surface to SurfaceFlinger. DO NOT MERGE" into jb-mr1.1-dev

* commit '203f69f0998d982205b1c9f550576024654e6bc3':
Call setSize to sync Surface to SurfaceFlinger. DO NOT MERGE
4abf3f987f1d7c1ca909c4b4008796e1a5851951 07-Dec-2012 Craig Mautner <cmautner@google.com> Call setSize to sync Surface to SurfaceFlinger. DO NOT MERGE

RecentsActivity screenshots are called for very quickly after
WindowStateAnimator prepareSurface(). Without enough delay the
Surface.setLayer call does not propagate to the SurfaceFlinger
and the screenshot is incorrect (black) because it stops sampling
the layers too early.

This fix calls Surface.setSize() for each sampled Surface in
screenshots. setSize forces the SurfaceFlinger to process all
transactions queued before returning from closeTransaction.

Bug 7552304 fixed.

Change-Id: I1911dfa0b09cab713c55f5ba0c612496337a77df

Conflicts:

services/java/com/android/server/wm/WindowManagerService.java
urface.java
95a38b92a0f0f8268636f6544467d59e67924715 07-Dec-2012 Chris Craik <ccraik@google.com> am a9877672: am 780a53df: am 07efb030: Merge "Defer process mode upon draw" into jb-mr1.1-dev

* commit 'a98776723f12ca1cbe6a8d181a49f179dfd23abd':
Defer process mode upon draw
a98776723f12ca1cbe6a8d181a49f179dfd23abd 07-Dec-2012 Chris Craik <ccraik@google.com> am 780a53df: am 07efb030: Merge "Defer process mode upon draw" into jb-mr1.1-dev

* commit '780a53dfb5176165286ff4f1483b408e28ad6eb7':
Defer process mode upon draw
ed218c706d9e91e75b94c448cee2e6150aaee57f 07-Dec-2012 Mita Yun <mitayun@google.com> Use asynchronous messages for input method events.

Improves the throughput of IME event handling by ensuring that
input events do not get serialized behind UI traversal and
drawing messages such as when the UI is animating.

Added support for creating an asynchronous Handler as part of a
HandlerCaller. It turns out we should be using an asynchronous
Handler not only in IME dispatch but also in accessibility and
wallpaper events where HandlerCaller is used. So fixed those
services to also use an asynchronous Handler.

Change-Id: I0b19140c9d5ca6ee300c1a150c48312fd55ed8eb
imulatedTrackball.java
942de41bb1b2e14388055cfd0a3645394277b5da 06-Dec-2012 Eric Laurent <elaurent@google.com> Merge "more fixes on safe volume warning message"
fde16d5879ea88a971004c984093409468b6139c 03-Dec-2012 Eric Laurent <elaurent@google.com> more fixes on safe volume warning message

Fixes the following problems with safe headphone volume warning message:
- Do not display the warning dialog when screen is off.
- Use the same 3 second timeout as for the volume slider to dismiss the dialog.
- Do not dismiss the warning dialog when touching outside of the slider window
but inside the warning window.
- Disable the volume slider when the warning message is displayed.
- When setting volume directly (touching the volume slider), and the warning
is displayed, save the requested volume and apply it if acknowledged by the user.
- Do not display the warning message when restoring safe volume after 20h of
cumulative listenening

Bug 7658641.

Change-Id: Ib3d1315193a433dad918aa5df78fa071062b2394
olumePanel.java
384e6fe84d446067dccec69404e4a3ca507ebe07 05-Dec-2012 Jeff Brown <jeffbrown@google.com> am 1edc6111: am 61e21940: am 7fcb5dc5: Merge "Pin electron beam surface to natural orientation." into jb-mr1.1-dev

* commit '1edc61119d145b05f0b5e1323a2fc0fa6a29d4bc':
Pin electron beam surface to natural orientation.
780a53dfb5176165286ff4f1483b408e28ad6eb7 05-Dec-2012 Chris Craik <ccraik@google.com> am 07efb030: Merge "Defer process mode upon draw" into jb-mr1.1-dev

* commit '07efb0303ff031512b7c38c6e7e9c2fcdb5849c0':
Defer process mode upon draw
07efb0303ff031512b7c38c6e7e9c2fcdb5849c0 05-Dec-2012 Chris Craik <ccraik@google.com> Merge "Defer process mode upon draw" into jb-mr1.1-dev
1edc61119d145b05f0b5e1323a2fc0fa6a29d4bc 05-Dec-2012 Jeff Brown <jeffbrown@google.com> am 61e21940: am 7fcb5dc5: Merge "Pin electron beam surface to natural orientation." into jb-mr1.1-dev

* commit '61e21940ffd643dad1aa6c7c3dc9933815aecd74':
Pin electron beam surface to natural orientation.
61e21940ffd643dad1aa6c7c3dc9933815aecd74 05-Dec-2012 Jeff Brown <jeffbrown@google.com> am 7fcb5dc5: Merge "Pin electron beam surface to natural orientation." into jb-mr1.1-dev

* commit '7fcb5dc5e9fbad0f183f425e88e576aaca98b0d7':
Pin electron beam surface to natural orientation.
9efa222b34139b3b3c239a3d2c25915fc9e44660 05-Dec-2012 Chris Craik <ccraik@google.com> Defer process mode upon draw

Process mode functor execution can be expensive, and cause dropped frames if it
runs between two expensive frames (when there isn't cpu time to spare). Avoid
this by delaying the process mode by an additional 4 ms every time we hit a draw

bug:7670326
Change-Id: I27f42458d4a815183a4b24c7748e05bc361fb943
ardwareRenderer.java
7f3994ec2a5dce1a037f04714b1f25cab85affb6 04-Dec-2012 Jeff Brown <jeffbrown@google.com> Pin electron beam surface to natural orientation.

If a rotation occurred while the electron beam surface was showing,
the surface may have appeared in the wrong orientation. We fix this
problem by adjusting the transformation matrix of the electron beam
surface according to the display orientation whenever a display
transaction occurs.

The rotation itself is allowed to proceed but it is not visible
to the user. We must let this happen so that the lock screen
is correctly oriented when the screen is turned back on.

Note that the electron beam surface serves two purposes.

First, it is used to play the screen off animation.
When the animation is finished, the surface remains visible but is
solid black. Then we turn the screen off.

Second, when we turn the screen back on we leave the electron beam
surface showing until the window manager is ready to show the
new content. This prevents the user from seeing a flash of the
old content while the screen is being turned on. When everything is
ready, we dismiss the electron beam.

It's important for the electron beam to remain visible for
the entire duration from just before the screen is turned off until
after the screen is turned on and is ready to be seen. This is
why we cannot fix the bug by deferring rotation or otherwise
getting in the way of the window manager doing what it needs
to do to get the screen ready when the screen is turned on again.

Bug: 7479740
Change-Id: I2fcf35114ad9b2e00fdfc67793be6df62c8dc4c3
isplayInfo.java
ee0ff18c36ff27977a868c4a6ea695a21723f52b 04-Dec-2012 Romain Guy <romainguy@google.com> Merge "Optimize onAttachedTo/onDetachedFromWindow"
fbb93fa2f3abf8b50ea945a319c0a190f2aae213 04-Dec-2012 Romain Guy <romainguy@google.com> Optimize onAttachedTo/onDetachedFromWindow

Apps detaching/attaching large subtrees would waste a few milliseconds
dealing with dirty display lists. This change removes the need to do
ArrayList.remove() on every detachedFromWindow().

Change-Id: Icee72516c40d48ff0fd9d6f3128589f99bf61428
isplayList.java
iew.java
iewRootImpl.java
0b0afb49a85c54b6e876055e76dc41d4345948a4 04-Dec-2012 Svetoslav Ganov <svetoslavganov@google.com> Adding API for refreshing the state of an AccessibilityNodeInfo.

Sometimes a client needs to hold onto an accessibility node info and
this info may get into a stale state. The clent has to be able to
request a refresh of the info. This change adds a refresh call to
AccessibilityNodeInfo.

bug:6711796

Change-Id: I580a9a5d9fd1f705ea0a2cf4d3ff65543714c9c3
ccessibility/AccessibilityNodeInfo.java
f9ae5f75af259437391e41dac7f3c4461c495dd9 04-Dec-2012 Dianne Hackborn <hackbod@google.com> am 23307cbb: am e0a676a3: Merge "Fix issue #7649590: Background windows sometimes not being hidden for secondary users" into jb-mr1.1-dev

* commit '23307cbb6b432b658b0fd7437dacfedd6298af94':
Fix issue #7649590: Background windows sometimes not being hidden for secondary users
2c5f782094c5668a9615e2f9f41063386ae52b28 04-Dec-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Refactoring of the screen magnification feature."
23307cbb6b432b658b0fd7437dacfedd6298af94 04-Dec-2012 Dianne Hackborn <hackbod@google.com> am e0a676a3: Merge "Fix issue #7649590: Background windows sometimes not being hidden for secondary users" into jb-mr1.1-dev

* commit 'e0a676a3bb0e7b9aced9359a021e4c5d2ffef752':
Fix issue #7649590: Background windows sometimes not being hidden for secondary users
bb4ca5271a806c94a59d98c5c718db7b89728246 03-Dec-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7649590: Background windows sometimes not being hidden for secondary users

There are two things going on here:

(1) In secondary users, some times theme information such as whether
the window is full screen opaque was not being retrieved, so the window
manager didn't know that it could hide the windows behind the app.
This would just be a performance problem, except that:

(2) There appear to be a number of applications that declare that they
are full screen opaque, when in fact they are not. Instead they are
using window surfaces with an alpha channel, and setting some pixels
in their window to a non-opaque alpha level. This will allow you to
see whatever is behind the app. If the system happens to completely
remove the windows behind the app, and somebody is filling the frame
buffer with black, then you will see what the app intends -- those
parts of its UI blended with black. If one of those cases doesn't
hold (and though we have never guaranteed they would, in practice this
is generally what happens), then you will see something else.

At any rate, if nothing else than for performance reasons, we need to
fix issue #1.

It turns out what is happening here is that the AttributeCache used
by the activity manager and window manager to retreive theme and other
information about applications has not yet been updated for multi-user.

One of the things we retrieve from this is the theme information telling
the window manager whether an application's window should be treated
as full screen opaque, allowing it to hide any windows behind it. In
the current implementation, the AttributeCache always retrieves this
information about the application as the primary user (user 0).

So, if you have an application that is installed on a secondary user but
not installed on the primary user, when the AttributeCache tries to retrieve
the requested information for it, then from the perspective of the primary user
it considers the application not installed, and is not able to retrieve that
info.

The change here makes AttributeCache multi-user aware, keeping all of its
data separately per-user, and requiring that callers now provide the user
they want to retrieve information for. Activity manager and window manager
are updated to be able to pass in the user when needed. This required some
fiddling of the window manager to have that information available -- in
particular it needs to be associated with the AppWindowToken.

Change-Id: I4b50b4b3a41bab9d4689e61f3584778e451343c8
WindowManager.aidl
152e9bb81aa5b2ab4637f4b2dae04b3ce89fa891 13-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Refactoring of the screen magnification feature.

1. The screen magnification feature was implemented entirely as a part of the accessibility
manager. To achieve that the window manager had to implement a bunch of hooks for an
external client to observe its internal state. This was problematic since it dilutes
the window manager interface and allows code that is deeply coupled with the window
manager to reside outside of it. Also the observer callbacks were IPCs which cannot
be called with the window manager's lock held. To avoid that the window manager had
to post messages requesting notification of interested parties which makes the code
consuming the callbacks to run asynchronously of the window manager. This causes timing
issues and adds unnecessary complexity.

Now the magnification logic is split in two halves. The first half that is responsible
to track the magnified portion of the screen and serve as a policy which windows can be
magnified and it is a part of the window manager. This part exposes higher level APIs
allowing interested parties with the right permissions to control the magnification
of a given display. The APIs also allow a client to be registered for callbacks on
interesting changes such as resize of the magnified region, etc. This part servers
as a mediator between magnification controllers and the window manager.

The second half is a controller that is responsible to drive the magnification
state based on touch interactions. It also presents a highlight when magnified to
suggest the magnified potion of the screen. The controller is responsible for auto
zooming out in case the user context changes - rotation, new actitivity. The controller
also auto pans if a dialog appears and it does not interesect the magnified frame.

bug:7410464

2. By design screen magnification and touch exploration work separately and together. If
magnification is enabled the user sees a larger version of the widgets and a sub section
of the screen content. Accessibility services use the introspection APIs to "see" what
is on the screen so they can speak it, navigate to the next item in response to a
gesture, etc. Hence, the information returned to accessibility services has to reflect
what a sighted user would see on the screen. Therefore, if the screen is magnified
we need to adjust the bounds and position of the infos describing views in a magnified
window such that the info bounds are equivalent to what the user sees.

To improve performance we keep accessibility node info caches in the client process.
However, when magnification state changes we have to clear these caches since the
bounds of the cached infos no longer reflect the screen content which just got smaller
or larger.

This patch propagates not only the window scale as before but also the X/Y pan and the
bounds of the magnified portion of the screen to the introspected app. This information
is used to adjust the bounds of the node infos coming from this window such that the
reported bounds are the same as the user sees not as the app thinks they are. Note that
if magnification is enabled we zoom the content and pan it along the X and Y axis. Also
recomputed is the isVisibleToUser property of the reported info since in a magnified
state the user sees a subset of the window content and the views not in the magnified
viewport should be reported as not visible to the user.

bug:7344059

Change-Id: I6f7832c7a6a65c5368b390eb1f1518d0c7afd7d2
ccessibilityInteractionController.java
DisplayContentChangeListener.aidl
DisplayMagnificationController.aidl
DisplayMagnificationMediator.aidl
WindowManager.aidl
agnificationSpec.aidl
agnificationSpec.java
urface.java
iewRootImpl.java
indowInfo.aidl
indowInfo.java
indowManagerPolicy.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/IAccessibilityInteractionConnection.aidl
3efa7b597c9d95d47c6d31b73da05117d6d5d244 03-Dec-2012 Chet Haase <chet@google.com> Fix requestLayout-during-layout problems

An earlier fix to allow requestLayout() to be called during layout
didn't handle some of the requests properly, leaving some nodes
stranded with layout requests that didn't propagate all the way
up the hierarchy. The fix is to do, on the second layout pass, exactly
what we do in a normal layout pass: run measure, then layout.

Issue #7657033 Checkboxes not being updated immediately in Settings

Change-Id: I90be3992d3441e8f43629d26c8386c81a7c31482
iewRootImpl.java
77c67665c83f824ca59c2dcf40d7fe4e3cd7b865 01-Dec-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "resolved conflicts for merge of 8794c80d to master"
01a9adde7a7218906cac856207ab2b6a4d49a3f5 01-Dec-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Adding pool management via the poolable APIs to some classes."
be922dc976b1ce1735dcc0cf49509a2149766c96 01-Dec-2012 Svetoslav Ganov <svetoslavganov@google.com> Adding pool management via the poolable APIs to some classes.

1. Removed the support for infinite pool size which nobody was using and
does not make sense.

2. Update some classes in ViewGroup to use the poolable APIs.

Change-Id: Ifdb8c10968cd06fe53085ec9d3d649f7c9a944b7
iewGroup.java
5412ba1cb91527070dda81c3b0e602631765164e 01-Dec-2012 Fabrice Di Meglio <fdimeglio@google.com> resolved conflicts for merge of 8794c80d to master

Change-Id: I61313a3dd4cd0bcbf04c16dc17996a997b43fe0c
53018e520de44795e250e6165f9a2195adc73a98 01-Dec-2012 Romain Guy <romainguy@google.com> Merge "Apply dev. settings at runtime Bug #7434649"
8794c80dd79b21d4b31b37bed96ef8b7dcf7f04d 01-Dec-2012 Fabrice Di Meglio <fdimeglio@google.com> am a9854ce9: am ce463847: Merge "Fix bug #7651552 resetRtlProperties() is called way too often" into jb-mr1.1-dev

* commit 'a9854ce9dfac086533e9d49ac75076bcc579303b':
Fix bug #7651552 resetRtlProperties() is called way too often
a9854ce9dfac086533e9d49ac75076bcc579303b 01-Dec-2012 Fabrice Di Meglio <fdimeglio@google.com> am ce463847: Merge "Fix bug #7651552 resetRtlProperties() is called way too often" into jb-mr1.1-dev

* commit 'ce463847db68afbb796377c6a55209e102774f8c':
Fix bug #7651552 resetRtlProperties() is called way too often
ce463847db68afbb796377c6a55209e102774f8c 01-Dec-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7651552 resetRtlProperties() is called way too often" into jb-mr1.1-dev
5bb3c730f5ebd2a0db1b02a8981c6fdbea6c1a2e 30-Nov-2012 Romain Guy <romainguy@google.com> Apply dev. settings at runtime
Bug #7434649

Change-Id: I16f00eaa8a5eefd9f9849e196cf2cb1659215390
ardwareRenderer.java
iewRootImpl.java
cb5f9db47a471620061ccb6a574afc209c610dd2 01-Dec-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7651552 resetRtlProperties() is called way too often

- remove unnecessary calls to resetRtlProperties().
- now reset of RTL properties will only be done when adding a View
(and no more when removing it)

Change-Id: I0d42128c9f7df6085fb92bb5af5c9bd4d1ba88a3
iew.java
iewGroup.java
488c2d274b739784e26a75eaa4a1e12701279427 30-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> am d902dbb2: am ed734d98: am 0e7adaff: am 438a3b35: Merge "Cannot move edit text cursor to first position using character granularity." into jb-mr1-dev

* commit 'd902dbb2ea7fa3cf50e89d84d1758bac4738e0e1':
Cannot move edit text cursor to first position using character granularity.
d902dbb2ea7fa3cf50e89d84d1758bac4738e0e1 30-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> am ed734d98: am 0e7adaff: am 438a3b35: Merge "Cannot move edit text cursor to first position using character granularity." into jb-mr1-dev

* commit 'ed734d98d014945cf28aa5e49ba1fd2ff5c82c01':
Cannot move edit text cursor to first position using character granularity.
ed734d98d014945cf28aa5e49ba1fd2ff5c82c01 30-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> am 0e7adaff: am 438a3b35: Merge "Cannot move edit text cursor to first position using character granularity." into jb-mr1-dev

* commit '0e7adaff99778c596bfd3f4c1e42710592c472a2':
Cannot move edit text cursor to first position using character granularity.
0e7adaff99778c596bfd3f4c1e42710592c472a2 30-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> am 438a3b35: Merge "Cannot move edit text cursor to first position using character granularity." into jb-mr1-dev

* commit '438a3b35f7a6184a19919de90f733be82e21a84c':
Cannot move edit text cursor to first position using character granularity.
b34aedcf6899ba509fb3a5ad0bcfb8bdf9af7b6d 29-Nov-2012 Adam Powell <adamp@google.com> am 8912a72c: am 46263369: am 66cedab6: Merge "Fix time-related ScaleGestureDetector methods" into jb-mr1.1-dev

* commit '8912a72cb2e97f595d3026da973ae99db1bb64b9':
Fix time-related ScaleGestureDetector methods
8912a72cb2e97f595d3026da973ae99db1bb64b9 29-Nov-2012 Adam Powell <adamp@google.com> am 46263369: am 66cedab6: Merge "Fix time-related ScaleGestureDetector methods" into jb-mr1.1-dev

* commit '462633695774a3cfd84b5c729266d039ec686a64':
Fix time-related ScaleGestureDetector methods
a4caee0115b94c2803f155d850fc507db124891a 29-Nov-2012 Romain Guy <romainguy@google.com> Merge "Cleanup: remove unused property"
215dcb1caa19de126f6c4c71bf3db92d48b3f7ee 29-Nov-2012 Romain Guy <romainguy@google.com> Merge "Fire view removed event *after* a View is removed"
1741d73441d554812654ae0893a0140c2678c7d7 29-Nov-2012 Romain Guy <romainguy@google.com> Cleanup: remove unused property

Change-Id: I09b418ef8888c42a876cb9014b22231ec31ca7eb
ardwareRenderer.java
d075031944171139c1235bbc96c9533eaeeceb08 29-Nov-2012 Romain Guy <romainguy@google.com> Improve profiling by using Choreographer

This will avoid jank and lead to better measurements.

Change-Id: Id18587a0a0b7d45adb3a65dfc427800565cc5d0b
iewRootImpl.java
6fb05630cf406f3844878d44c585754cd160567e 29-Nov-2012 Romain Guy <romainguy@google.com> Fire view removed event *after* a View is removed

Change-Id: Ia4066002b19c438c90a57ef9c513d82564425640
iewGroup.java
462633695774a3cfd84b5c729266d039ec686a64 29-Nov-2012 Adam Powell <adamp@google.com> am 66cedab6: Merge "Fix time-related ScaleGestureDetector methods" into jb-mr1.1-dev

* commit '66cedab63bf0c17e59a5815200bd9200164d89ec':
Fix time-related ScaleGestureDetector methods
7232b0ad675402222bce3b478dbb682848d5e9e6 29-Nov-2012 Adam Powell <adamp@google.com> Fix time-related ScaleGestureDetector methods

Bug 7626515

Change-Id: Ie7abf9c166284a74b4e7bcf9de25520cf08e3b2d
caleGestureDetector.java
f4782ec9c57a40224ac0974fce6b6fe280c829ce 28-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> Switching the accessibility poolable classes to the new pool management APIs.

The pool management APIs were simplified and using them requires much less
code than implementing your own pooling. Using common pooling logic is
also less error prone. This change swithces AccessibilityEvent and
AccessibilityNodeInfo to the new APIs.

Change-Id: I2dcfe2e1b0b0be5f89bd92359766ae3d6f8a143b
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityNodeInfo.java
abae2a1b891772d36d8f781adfcc8969e551691f 28-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> Simplification of the poolable management utils.

Before to implement a pool of objects, the pooled class had to implement an
interface which was leaking the pool management APIs. This requires
hiding APIs - inconvenient at best. Further, each client had to
implement the chaining of pooled instances which means adding a couple
of member variables which are manipulated by the implemented interface
methods. As a consequence the client is aware of how pooling is
implemented which is error prone and breaks encapsulation. Now the
pool objects are responsible for managing pooling state via reusable
wrapper objects and the clients are oblivious of how pooling is done.
Creating a thin cached wrapper for each pooled object has minimal
performance impact while making the code more maintainable. Actually
implementing of the old version of the APIs was taking as much code
as implementing the pooling yourself.

Also clients had to implement a poolable manager whose responsibility
was to create new instances and provide callbacks when an instance
is added to or removed from the pool. Now, the clinet class should
create a static member for the pool and expose obtain/aquire and
release/recycle methods in which it should create a new instance if
the pool did not return one and clear the state of the host when
it is returned to the pool. Updated the JavaDoc with a best practice.

The pooling was composed of several interfaces and classes scattered
over a few files, now all this is in a single small file.

Update all usages of the pooling APIs in the framework.

Also one had to write a poolable
manager which

Change-Id: Ib8dc286040eb3d7cb7d9668ba76fead05cb97647
LES20RecordingCanvas.java
elocityTracker.java
iew.java
iewRootImpl.java
f6ae4b897b78fa855eb3c75654c05367afecaa95 27-Nov-2012 Romain Guy <romainguy@google.com> Reset stored background resource when setting a bg color

This sequence of operations would prevent the background from
changing:

setBackgroundResource(R.something)
setBackgroundColor(aColor)
setBackgroundResource(R.something)

The last call would be no-oped.

Change-Id: I436a33599c88e35f6f36bdd63e9c256c9219e052
iew.java
02c6fca90ad28c391ad6f0f70b24996acb206d74 27-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> Cannot move edit text cursor to first position using character granularity.

Navigating over text backwards by character does not allow the cursor to get
at the beginning of the text and it stops one position before the start. Now
the cursor can get to index zero which is before the first character.

bug:7307336

Change-Id: I109b579835cc080907b20b01e0cf07811e962c6c
iew.java
60b5509ff1883d0c8c19765dcb84d9980481b67a 26-Nov-2012 Chet Haase <chet@google.com> Merge "Fix layout-in-layout logic"
6ce77cdd6aff7193c746cd1eb87d5babf9158bac 22-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> Adding dump support for the accessibility manager service.

Change-Id: Ibc8d9eac3be065f1a753e1401568b8f93263b051
ccessibility/AccessibilityEvent.java
d5a835259d1dd79893f043ce4813e3d24b6e54d5 22-Nov-2012 Chet Haase <chet@google.com> Fix layout-in-layout logic

Fix to allow requestLayout() during layout needs to disable
the "currently doing layout" flag while it processes the requests
that came in during layout to allow these initial requests to go
through unhindered.

Change-Id: Ied5ff1589224792f153cc10f65e004f14724523d
iewRootImpl.java
b920b40510cd237b9dd60a00717527cd4ece2247 20-Nov-2012 Fabrice Di Meglio <fdimeglio@google.com> am e784ae8e: am d689e8c3: am b0f895b3: Merge "Fix Javadoc for View layoutDirection / textDirection / textAlignment" into jb-mr1.1-dev

* commit 'e784ae8e6a0eab3d29afc9b19f65714e7b268b97':
Fix Javadoc for View layoutDirection / textDirection / textAlignment
e784ae8e6a0eab3d29afc9b19f65714e7b268b97 20-Nov-2012 Fabrice Di Meglio <fdimeglio@google.com> am d689e8c3: am b0f895b3: Merge "Fix Javadoc for View layoutDirection / textDirection / textAlignment" into jb-mr1.1-dev

* commit 'd689e8c3a05f3b200d19879bdc169e6ad6e0436b':
Fix Javadoc for View layoutDirection / textDirection / textAlignment
d689e8c3a05f3b200d19879bdc169e6ad6e0436b 19-Nov-2012 Fabrice Di Meglio <fdimeglio@google.com> am b0f895b3: Merge "Fix Javadoc for View layoutDirection / textDirection / textAlignment" into jb-mr1.1-dev

* commit 'b0f895b330d0d2b6725e7deee158ff20ed9155f8':
Fix Javadoc for View layoutDirection / textDirection / textAlignment
7d529cd6ebd15b88df07278a3cbee55090ffa2d6 15-Nov-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix Javadoc for View layoutDirection / textDirection / textAlignment

Change-Id: I2fa2f02bd2f59ee93ccd56fc6bd28b93e4713cc4
iew.java
14b46b1583107ef202573fce3a1bd46ee6ea1cdb 12-Nov-2012 Justin Koh <justinkoh@google.com> am 674db142: am 44643269: Merge "Make tap events less sensitive." into jb-mr1-aah-dev

* commit '674db142c56f01e581f7df4f3013e22f0922b21f':
Make tap events less sensitive.
674db142c56f01e581f7df4f3013e22f0922b21f 12-Nov-2012 Justin Koh <justinkoh@google.com> am 44643269: Merge "Make tap events less sensitive." into jb-mr1-aah-dev

* commit '446432692a2a7e60c7f547d6c7436922eb571d8e':
Make tap events less sensitive.
ffb5bdef63b16fecb27b3c6ea392537de0349413 12-Nov-2012 Ben Pietrzak <bpietrzak@google.com> Make tap events less sensitive.

Change-Id: I4d6f70b56373fbc51a414510897854078eeb0c40
imulatedTrackball.java
08bb2316f12743fb43d18af94248c5e8caecfa85 09-Nov-2012 Jim Miller <jaggies@google.com> am 061b4fae: am a2bf6181: am 2c29deaa: am 6be441c5: Merge "Add mechanism to kick keyguard to show the assistant" into jb-mr1-lockscreen-dev

* commit '061b4fae3daf40c90b46e16b12e7f22142eb498c':
Add mechanism to kick keyguard to show the assistant
9d0640cfb6c9a13ffcbf5a756718e821be4fd291 09-Nov-2012 Justin Koh <justinkoh@google.com> am 3e94c562: am cd38c32d: Merge "Catch exception of nonfound activities" into jb-mr1-aah-dev

* commit '3e94c56215fa540ca722ab7b23710b82c08d20a4':
Catch exception of nonfound activities
061b4fae3daf40c90b46e16b12e7f22142eb498c 09-Nov-2012 Jim Miller <jaggies@google.com> am a2bf6181: am 2c29deaa: am 6be441c5: Merge "Add mechanism to kick keyguard to show the assistant" into jb-mr1-lockscreen-dev

* commit 'a2bf6181dfca0f93461fc041f2bd2444551a4515':
Add mechanism to kick keyguard to show the assistant
3e94c56215fa540ca722ab7b23710b82c08d20a4 09-Nov-2012 Justin Koh <justinkoh@google.com> am cd38c32d: Merge "Catch exception of nonfound activities" into jb-mr1-aah-dev

* commit 'cd38c32d85c13fde87ca7bee501cbe35230078b6':
Catch exception of nonfound activities
d97b09b0f31152bd05ba69ca9249bcaf33d05e14 09-Nov-2012 Jim Miller <jaggies@google.com> am bef82757: am c7dc250d: am fe7e94a0: am 088fb915: Merge "Add isSafeModeEnabled() API to WindowManagerService" into jb-mr1-lockscreen-dev

* commit 'bef827572ce9644253ea42ab91b11b8107d2300f':
Add isSafeModeEnabled() API to WindowManagerService
bef827572ce9644253ea42ab91b11b8107d2300f 09-Nov-2012 Jim Miller <jaggies@google.com> am c7dc250d: am fe7e94a0: am 088fb915: Merge "Add isSafeModeEnabled() API to WindowManagerService" into jb-mr1-lockscreen-dev

* commit 'c7dc250d5a3dab93ff87e9986a71ae58ff124399':
Add isSafeModeEnabled() API to WindowManagerService
7c8d2b63c01317c87aa8230497c3fc0df7ae1c28 09-Nov-2012 Jean-Baptiste Queru <jbq@google.com> Merge from jb-mr1-dev-plus-aosp

Change-Id: I28afbc0b04c22b9416973dc4d37783404997a4a3
c23cfe57a9cb424bf589e381c931e04281639d3a 08-Nov-2012 Jean-Baptiste Queru <jbq@google.com> Merge remote-tracking branch 'goog/jb-mr1-dev-plus-aosp' into HEAD
40a419c2a5f83a00a2e6978ded4e8fcf634b7b46 08-Nov-2012 Jean-Baptiste Queru <jbq@google.com> Merge commit '58ed5d748c0b9b64845975ef5844ad313de7c3f6' into HEAD
8d3d0250c46ee0f011f4300d4b483a0919c5c1ff 08-Nov-2012 Jean-Baptiste Queru <jbq@google.com> Merge commit '432c71d77e376c948b6e287b2b6b2d134e1f2a11'

Change-Id: Iafcba7225e662bc2c3a3c113a1b36656889e2f18
a2bf6181dfca0f93461fc041f2bd2444551a4515 08-Nov-2012 Jim Miller <jaggies@google.com> am 2c29deaa: am 6be441c5: Merge "Add mechanism to kick keyguard to show the assistant" into jb-mr1-lockscreen-dev

* commit '2c29deaa2650091d9206b8fa93f8a447ee247d52':
Add mechanism to kick keyguard to show the assistant
5d1a9a902ea7c23d7f825c8bbbf1bf861d988a8b 08-Nov-2012 Justin Koh <justinkoh@google.com> am 4608a0ae: am 41048d67: Merge "Support new touchpad event protocol." into jb-mr1-aah-dev

* commit '4608a0aec230a1a4857b54354afc3f233af7c1f2':
Support new touchpad event protocol.
b892e8c642557b73ee6aa9bd8fc07b03eae85e9a 08-Nov-2012 Justin Koh <justinkoh@google.com> am a1459793: am 58e0fb9a: Merge "Trigger Google Now intent with swipe from bottom" into jb-mr1-aah-dev

* commit 'a1459793d4e2ea483deb8baa733abbac56c2c199':
Trigger Google Now intent with swipe from bottom
4608a0aec230a1a4857b54354afc3f233af7c1f2 08-Nov-2012 Justin Koh <justinkoh@google.com> am 41048d67: Merge "Support new touchpad event protocol." into jb-mr1-aah-dev

* commit '41048d670d42075732723e72d7f303498690ea99':
Support new touchpad event protocol.
a1459793d4e2ea483deb8baa733abbac56c2c199 08-Nov-2012 Justin Koh <justinkoh@google.com> am 58e0fb9a: Merge "Trigger Google Now intent with swipe from bottom" into jb-mr1-aah-dev

* commit '58e0fb9adbe579a068849a7865a7f1bce7531d1c':
Trigger Google Now intent with swipe from bottom
4eeb4f664ac6b5901a8e874dcf70c0382295f792 08-Nov-2012 Jim Miller <jaggies@google.com> Add mechanism to kick keyguard to show the assistant

Fixes bug 7499778

Change-Id: Ic9ea514feb489feeee6716f40bdb9792842f9515
WindowManager.aidl
indowManagerPolicy.java
cd38c32d85c13fde87ca7bee501cbe35230078b6 08-Nov-2012 Justin Koh <justinkoh@google.com> Merge "Catch exception of nonfound activities" into jb-mr1-aah-dev
6b1d912b252e144a8bfe25eeee7a389455d5ac66 08-Nov-2012 Ben Pietrzak <bpietrzak@google.com> Catch exception of nonfound activities

Change-Id: Id019c71937e73c38eb7a7c0a0cccfc2b9e87d069
imulatedTrackball.java
7b172a49a90ea6784dbfe0002474f9d4fd4ace1a 07-Nov-2012 Kenny Root <kroot@google.com> am 58ed5d74: am 768d9e1a: Merge "Correct executable bit for source files"

* commit '58ed5d748c0b9b64845975ef5844ad313de7c3f6':
Correct executable bit for source files
58ed5d748c0b9b64845975ef5844ad313de7c3f6 07-Nov-2012 Kenny Root <kroot@google.com> am 768d9e1a: Merge "Correct executable bit for source files"

* commit '768d9e1a72ceee7d4a5f608776b87b62d6ce4a04':
Correct executable bit for source files
c7dc250d5a3dab93ff87e9986a71ae58ff124399 07-Nov-2012 Jim Miller <jaggies@google.com> am fe7e94a0: am 088fb915: Merge "Add isSafeModeEnabled() API to WindowManagerService" into jb-mr1-lockscreen-dev

* commit 'fe7e94a094746b608eb926fadc3ee1446bbb0d58':
Add isSafeModeEnabled() API to WindowManagerService
3a084af2e90849aaa8beb3a610189e3399c63ea0 07-Nov-2012 Kenny Root <kroot@google.com> Correct executable bit for source files

Many media files and source code files were marked as executable in Git.
Remove those.

Also a shell script and python script were not marked as executable.

Change-Id: Ieb51bafb46c895a21d2e83696f5a901ba752b2c5
nputDevice.java
nputEvent.java
eyEvent.java
rientationEventListener.java
indowManager.aidl
indowOrientationListener.java
nimation/package.html
474a93003018ebd4fe99249f51b1e35e23a27f5a 07-Nov-2012 Romain Guy <romainguy@android.com> am a1ca6d39: am a75a41e9: am 9d547d69: Merge "Clarify ViewStub.setVisibility() documentation to state that it works after inflation."

* commit 'a1ca6d39f9c0089aaab05249269ee8fbfe66f035':
Clarify ViewStub.setVisibility() documentation to state that it works after inflation.
a1ca6d39f9c0089aaab05249269ee8fbfe66f035 07-Nov-2012 Romain Guy <romainguy@android.com> am a75a41e9: am 9d547d69: Merge "Clarify ViewStub.setVisibility() documentation to state that it works after inflation."

* commit 'a75a41e9b12c90638fbff9ce69b2820f334bdda3':
Clarify ViewStub.setVisibility() documentation to state that it works after inflation.
a75a41e9b12c90638fbff9ce69b2820f334bdda3 07-Nov-2012 Romain Guy <romainguy@android.com> am 9d547d69: Merge "Clarify ViewStub.setVisibility() documentation to state that it works after inflation."

* commit '9d547d6934f64189e368c0b190fb4cf49c95a557':
Clarify ViewStub.setVisibility() documentation to state that it works after inflation.
41048d670d42075732723e72d7f303498690ea99 06-Nov-2012 Justin Koh <justinkoh@google.com> Merge "Support new touchpad event protocol." into jb-mr1-aah-dev
58e0fb9adbe579a068849a7865a7f1bce7531d1c 06-Nov-2012 Justin Koh <justinkoh@google.com> Merge "Trigger Google Now intent with swipe from bottom" into jb-mr1-aah-dev
bfec0a8616bc197ee3b7b71be6fed1939d0c3c4d 06-Nov-2012 Jim Miller <jaggies@google.com> Add isSafeModeEnabled() API to WindowManagerService

This adds a means of determining when the device is in safe mode,
as required by keyguard to disabled some features.

Change-Id: I31d357e6738c92e1837f9e0263e5f3f4de66315a
WindowManager.aidl
d307640724a34ffd696e84897dc8b63c734730fe 06-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> am 9d456661: am c9300f19: am 0f4d5df5: Merge "View\'s visibility to the user not checking predecessor alpha." into jb-mr1-dev

* commit '9d4566611928ed71e58c8a7aaf231c6e306b204f':
View's visibility to the user not checking predecessor alpha.
9d4566611928ed71e58c8a7aaf231c6e306b204f 06-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> am c9300f19: am 0f4d5df5: Merge "View\'s visibility to the user not checking predecessor alpha." into jb-mr1-dev

* commit 'c9300f196335410483c5c07eccac620332b75def':
View's visibility to the user not checking predecessor alpha.
c9300f196335410483c5c07eccac620332b75def 06-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> am 0f4d5df5: Merge "View\'s visibility to the user not checking predecessor alpha." into jb-mr1-dev

* commit '0f4d5df5d815466398dba5f2d07aa98f18c35aaa':
View's visibility to the user not checking predecessor alpha.
0f4d5df5d815466398dba5f2d07aa98f18c35aaa 06-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "View's visibility to the user not checking predecessor alpha." into jb-mr1-dev
19f8aa180a7ccb29b11a322378002e37517abfc9 06-Nov-2012 Baligh Uddin <baligh@google.com> am 00b5ed8f: Merge commit \'b3f87c24ee86227e22b2db9b04f3d94519f230f9\' into jb-mr1-dev

* commit '00b5ed8fa9f2f38e15894519f3afeaae56e97e94': (21 commits)
Clearing connected message in stop fixes 7401152
bouncer: hide more text and frame less.
Recover from badly behaving 3rd party secure cameras.
Show bouncer mode for Slide mode in keyguard if widget isn't expanded
Making challenge come back if within the same gesture you return to the original page (issue 7422999)
Ensure edge swiping is enforced immediately upon showing keyguard (issue 7453156)
Fix issue 7468224, make sure to size pages if page changes
If a default keyguard layout isn't specified, fallback to the default layout
Use better signal for camera launch.
Render camera widget on a background thread.
Fully block user interactions when transitioning to camera.
Fixing up overscroll / hints on tablet
Cleaning up the overscroll effect
Updating UI to new design, widget shouldn't expand until page settles (issue 7467435)
Making screen hints just side page outlines, as per new design (issue 7467968)
Clean up separator string in keyguard view
Attempt to fix MENU key issue.
Update DevicePolicyManager documentation with new keyguard flags
Polish user selector accessibility.
Fix pages disappearing (issue 7456885)
...
ad6a9c992b0088be635fbf369489f890caeff3e1 05-Nov-2012 Ben Pietrzak <bpietrzak@google.com> Support new touchpad event protocol.

Change-Id: Ib690f7a1abd367870c8b633d77d2c18d6ada9b05
imulatedTrackball.java
11f19f15ea474edde07bf34877d2531fff6c26f0 03-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> View's visibility to the user not checking predecessor alpha.

1. A view is visible to the user if is attached to a visible window,
its visibility is VISIBLE, its alpha is not zero, all its
predecessors have visibility VISIBLE and non zero alpha, the
view is not fully covered by predecessors and is within the
screen.

The function that computes whether a view is visible for
accessibility purposes was not taking into account the
predecessors' alpha.

bug:7454355

Change-Id: I7609f4366da260091d68e5b25832498843fd3d0a
iew.java
f74d0c39b62ff542542df69e641477eb1e09b157 02-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Polish user selector accessibility." into jb-mr1-lockscreen-dev
fc9c4cd51b3bdca27726dd6d8a00d47e388ca2aa 02-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> Polish user selector accessibility.

1. The current user was not announced as such.

2. The event for a user switch was not sent.

Change-Id: Ib3caf1f9e93ea1f0b5450246601bc37f416be6da
ccessibility/AccessibilityRecord.java
b104b202bdf7998018b21dcad96059eded9f7ef9 02-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> am cb5c66b9: am 5e27e55a: am 28e8f76c: Merge "Cannot click on partially visible views in touch exploration." into jb-mr1-dev

* commit 'cb5c66b9c1602b750bb481641253604ba3d59ac6':
Cannot click on partially visible views in touch exploration.
5e27e55aecea63c6cf0477ab75f4c39b7b68c9cd 02-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> am 28e8f76c: Merge "Cannot click on partially visible views in touch exploration." into jb-mr1-dev

* commit '28e8f76c50b26efd657bc0740fee25ac18520f9e':
Cannot click on partially visible views in touch exploration.
298802230687114a545c2c059139f544d194cb2f 01-Nov-2012 Ben Pietrzak <bpietrzak@google.com> Trigger Google Now intent with swipe from bottom

Change-Id: I546f108a8bd9a136e57311233d482f89066c306d
imulatedTrackball.java
f54df840fb31772bfabb5d4ac604897da19cf619 02-Nov-2012 Tim Hutt <tdhutt@gmail.com> Clarify ViewStub.setVisibility() documentation to state that it works after inflation.

Change-Id: I8414b7002af1a51a10db95758e36c471b51e6355
Signed-off-by: Tim Hutt <tdhutt@gmail.com>
iewStub.java
a94c3194ffa896632f025b983ca57095cd4ba277 01-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> Cannot click on partially visible views in touch exploration.

1. In touch exploration mode the system clicks in the center of the
accessibility focus rectangle. However, if this rectangle is only
partially shown on the window or on the screen the system may not
be able to perform the click, if the accessibility focus center
is not on the screen, or click on the wrong window, if the access
focus center is outside of the window.

This change clips the rectangle to the window bounds which and the
display bounds. This will ensure no clicks are sent to the wrong
window and no clicks are sent outside of the screen.

bug:7453839

Change-Id: I79f98971e7ebcbb391c37284467dc76076172c5f
iewRootImpl.java
331b552734ab47bc5256a0e2e4e9d152c67fc069 01-Nov-2012 Romain Guy <romainguy@google.com> am aabe4bb4: am 9c0010f8: am 998d03bd: Merge "A new clock widget to create lock screen appwidgets" into jb-mr1-dev

* commit 'aabe4bb4776c21592db7e0714b3fec960b6778c7':
A new clock widget to create lock screen appwidgets
9c0010f856d623845b20a7dd13c024023626623c 01-Nov-2012 Romain Guy <romainguy@google.com> am 998d03bd: Merge "A new clock widget to create lock screen appwidgets" into jb-mr1-dev

* commit '998d03bd943053741bab17a8ef0abb355f6bc3ae':
A new clock widget to create lock screen appwidgets
3d1728c03a0cd1aaed6bc81c97de27d62c771a6e 01-Nov-2012 Romain Guy <romainguy@google.com> A new clock widget to create lock screen appwidgets

This new widget replaces DigitalClock. It listens to all the correct
system events and offer the ability to customize the formatting
patterns in 12-hour and 24-hour modes. It also supports fixed
time zones to create world clocks.

One more step towards becoming ClockOS!

Change-Id: I677e5dfca8cd8c8d1f8c49e54d7507f4d1885bf4
iew.java
ea5e56ad9c2324dd6fbeab64e031878e03122c40 30-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am d31f0ab9: am 9d662c77: am 68b14054: Merge "Revert "Fix bug #7325234 LayoutParams are not resolved correctly (Settings apps looks broken on Manta in Arabic)"" into jb-mr1-dev

* commit 'd31f0ab93f4f35a7ca6df6d428db2a5fd3d6750a':
Revert "Fix bug #7325234 LayoutParams are not resolved correctly (Settings apps looks broken on Manta in Arabic)"
46e62fe39874abf2a9bdfab7635df98011c03cd1 30-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 024e70c8: am dd80335e: am 07ce0ca2: Merge "Fix bug #7419054 TextView Drawables resolution is broken in RTL mode" into jb-mr1-dev

* commit '024e70c8156a0fa2d702ff2fba4a38c1f6b68f98':
Fix bug #7419054 TextView Drawables resolution is broken in RTL mode
9d662c77650a1cee9d05ad93743684482eeba935 29-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 68b14054: Merge "Revert "Fix bug #7325234 LayoutParams are not resolved correctly (Settings apps looks broken on Manta in Arabic)"" into jb-mr1-dev

* commit '68b14054b96571d4009c6c5a9b4c3413d908a523':
Revert "Fix bug #7325234 LayoutParams are not resolved correctly (Settings apps looks broken on Manta in Arabic)"
dd80335edde688794db3260bcea7f732430abaf1 29-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 07ce0ca2: Merge "Fix bug #7419054 TextView Drawables resolution is broken in RTL mode" into jb-mr1-dev

* commit '07ce0ca265274c5ba95e6ec3e0950e38b8ce97ea':
Fix bug #7419054 TextView Drawables resolution is broken in RTL mode
266ca72300f15f53e134e8c2f33ff7c24adabe86 29-Oct-2012 Jeff Brown <jeffbrown@google.com> am 46a0ec73: am 14012e1d: am 4e0bf7c4: Merge "Add MediaRouter API to get presentation display." into jb-mr1-dev

* commit '46a0ec73b6d4a81dd037d7beef7321f25349bf9c':
Add MediaRouter API to get presentation display.
14012e1d1b3c96048955e22d2bb73b9c63189a54 29-Oct-2012 Jeff Brown <jeffbrown@google.com> am 4e0bf7c4: Merge "Add MediaRouter API to get presentation display." into jb-mr1-dev

* commit '4e0bf7c48638f5c9b222c8781809019df0b39048':
Add MediaRouter API to get presentation display.
68b14054b96571d4009c6c5a9b4c3413d908a523 27-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Revert "Fix bug #7325234 LayoutParams are not resolved correctly (Settings apps looks broken on Manta in Arabic)"" into jb-mr1-dev
bb4b601673a4f910d3e467bc5ce39538438859ce 27-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Revert "Fix bug #7325234 LayoutParams are not resolved correctly (Settings apps looks broken on Manta in Arabic)"

This reverts commit 6bf6eb7d5f9207d6a3e1d6b61f17a8654d06fbdb.
and also fbc21e126f329b7b7c161858c1390ccb023be07e

I have also removed all unnecessary calls to resolveLayoutDirection(int). This is possible as
we are resolving layout params on every child of a ViewGroup as of commit
fcc3348f61b2992f0b84e8e8dcb3535fc715298f

Change-Id: I262a375b03fcc3c9261cbe2edebb6ec42ec2e186
iewGroup.java
07ce0ca265274c5ba95e6ec3e0950e38b8ce97ea 27-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7419054 TextView Drawables resolution is broken in RTL mode" into jb-mr1-dev
1957d281ea123e4925e51fa5ad22ce239ef2a07d 26-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7419054 TextView Drawables resolution is broken in RTL mode

- check layout direction previous value in the onResolveDrawables(int) callback
- dont do any Drawables resolution if we cannot resolve the layout direction
- also remove unnecessary call to resolveRtlPropertiesIfNeeded() in ViewGroup when
adding a child as the call to resolveRtlPropertiesIfNeeded() will be done into
the measure() call itself later

Change-Id: I62237af3d307dfea203f7f2865551d1c61a0e0b8
iew.java
iewGroup.java
92130f6407dc51c58b3b941d28a6daf4e04b8d62 25-Oct-2012 Jeff Brown <jeffbrown@google.com> Add MediaRouter API to get presentation display.

This new API makes it possible for an application to ask on
which Display it should show a Presentation based on the currently
selected media route.

Also added a new API on DisplayManager to query displays that
support a certain category of uses.

Improved the documentation of the Presentation class to explain
how to choose an appropriate Display for presentation.

Bug: 7409073
Change-Id: Iab451215e570ae55f3718fc228303143c800fe51
isplay.java
isplayInfo.java
809312791c02464b10d781f8760f6feb288b6da3 25-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 0182dc39: am 3b53061e: am 3e297339: Merge "FIx bug #7414801 Should make private and final View.TEXT_DIRECTION_DEFAULT and View.TEXT_ALIGNMENT_DEFAULT constants" into jb-mr1-dev

* commit '0182dc39bd969b797614c90e44978b83ac57fd1c':
FIx bug #7414801 Should make private and final View.TEXT_DIRECTION_DEFAULT and View.TEXT_ALIGNMENT_DEFAULT constants
3b53061e6d2753440da04c042d26b8c4e94a5b95 25-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 3e297339: Merge "FIx bug #7414801 Should make private and final View.TEXT_DIRECTION_DEFAULT and View.TEXT_ALIGNMENT_DEFAULT constants" into jb-mr1-dev

* commit '3e297339f8b77d54f520d5471c90c9d04e78400e':
FIx bug #7414801 Should make private and final View.TEXT_DIRECTION_DEFAULT and View.TEXT_ALIGNMENT_DEFAULT constants
3e297339f8b77d54f520d5471c90c9d04e78400e 25-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "FIx bug #7414801 Should make private and final View.TEXT_DIRECTION_DEFAULT and View.TEXT_ALIGNMENT_DEFAULT constants" into jb-mr1-dev
72898e982867ff11ff6494ad71898176e30127a9 25-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> FIx bug #7414801 Should make private and final View.TEXT_DIRECTION_DEFAULT and View.TEXT_ALIGNMENT_DEFAULT constants

- made them private and final
- fixed comment

Change-Id: Ia1d22329edb7ac26e7bcd0489770a99ad41c4f0e
iew.java
144b59adb1436cf0322be455ed056e1df627a9f0 24-Oct-2012 Romain Guy <romainguy@google.com> am f323fd07: am 4344f209: am 99333315: Merge "Ensure we have a GL context before deleting View layers Bug #7391098" into jb-mr1-dev

* commit 'f323fd07ba75b8bc13470a22f698937345bc9f0d':
Ensure we have a GL context before deleting View layers Bug #7391098
4344f20959b6591f484d20012a398d7fefe8a8fb 24-Oct-2012 Romain Guy <romainguy@google.com> am 99333315: Merge "Ensure we have a GL context before deleting View layers Bug #7391098" into jb-mr1-dev

* commit '9933331506c91e535ba277bef9c44e1852ccf16c':
Ensure we have a GL context before deleting View layers Bug #7391098
9933331506c91e535ba277bef9c44e1852ccf16c 24-Oct-2012 Romain Guy <romainguy@google.com> Merge "Ensure we have a GL context before deleting View layers Bug #7391098" into jb-mr1-dev
2af7e722296090e4b8a1694312e9b10202c90fef 24-Oct-2012 Jeff Brown <jeffbrown@google.com> am 5bac2df4: am b43269ac: am 1202c436: Merge "Secure windows, secure surface views and secure displays." into jb-mr1-dev

* commit '5bac2df4d69f096fa8c858bcb3713b7af9e977f8':
Secure windows, secure surface views and secure displays.
b43269acddb7061c43fa6ace6a896c51a9bf4dce 24-Oct-2012 Jeff Brown <jeffbrown@google.com> am 1202c436: Merge "Secure windows, secure surface views and secure displays." into jb-mr1-dev

* commit '1202c43685c475158a773d03d70effa01b6bb4ff':
Secure windows, secure surface views and secure displays.
f0681b34dffc1510cbd9c3da5c3a7e695553fa8d 24-Oct-2012 Jeff Brown <jeffbrown@google.com> Secure windows, secure surface views and secure displays.

Add new API to determine whether a display is secure.
Add new API to make a SurfaceView secure.
Clarify documentation.

Bug: 7368436
Change-Id: I7068c34c910e43b4bc72e43fa0dded59a25f0fe2
isplay.java
isplayInfo.java
urfaceView.java
indowManager.java
bd17bd34311ba5af4b6ac9ddc4b8c71888f2e6f1 24-Oct-2012 Romain Guy <romainguy@google.com> Ensure we have a GL context before deleting View layers
Bug #7391098

The existing code was doing a make current to guarantee we have a
current context. This can however fail when the surface is destroyed
which could lead to GL calls without an EGL context, and therefore
potential leaks. This change fixes the issue by using a technique
found in HardwareRenderer.destroyHardwareResources(). If the surface
is not available then we use a special 1x1 pbuffer as a way to get
a valid context.

Change-Id: I716d3799bf90120d793d76e90a83956837ecd491
ardwareRenderer.java
990c1b7f3e8f3f63f3362c8eae263ddbb7050f95 24-Oct-2012 Craig Mautner <cmautner@google.com> am a170dcb7: am 9e96c69e: am 6757572b: Merge "Add throwing InvalidDisplayException from addView." into jb-mr1-dev

* commit 'a170dcb7b6908d0ea4dd7c2717d2d2b1da59262c':
Add throwing InvalidDisplayException from addView.
9e96c69e3e9ebdb820acd347b4691c32a5d76be4 24-Oct-2012 Craig Mautner <cmautner@google.com> am 6757572b: Merge "Add throwing InvalidDisplayException from addView." into jb-mr1-dev

* commit '6757572b39d3802c4d7b69467b5ebf69a96c208b':
Add throwing InvalidDisplayException from addView.
6757572b39d3802c4d7b69467b5ebf69a96c208b 24-Oct-2012 Craig Mautner <cmautner@google.com> Merge "Add throwing InvalidDisplayException from addView." into jb-mr1-dev
16a5ad8345f2518947bbd47f072a02fd97dd1c67 24-Oct-2012 Chet Haase <chet@google.com> am 4a82a0fc: am f5fa64f2: am fbba753f: Merge "Handle offscreen animations correctly" into jb-mr1-dev

* commit '4a82a0fc09f4743b59b5de483329fb76e60aab07':
Handle offscreen animations correctly
5d7cc93625b0cbad545082dab39a391e96047832 24-Oct-2012 Romain Guy <romainguy@google.com> am be815669: am 9389d447: am b75ade9c: Merge "Use existing display list to render the resize buffer Bug #7400903" into jb-mr1-dev

* commit 'be815669d1c41a95f79222aaa7caa4462bddfb2d':
Use existing display list to render the resize buffer Bug #7400903
f5fa64f24b0ee6aa53ac2803590e8729122c445b 24-Oct-2012 Chet Haase <chet@google.com> am fbba753f: Merge "Handle offscreen animations correctly" into jb-mr1-dev

* commit 'fbba753f62f13a12d9287c67921d1ea60e92768d':
Handle offscreen animations correctly
fbba753f62f13a12d9287c67921d1ea60e92768d 24-Oct-2012 Chet Haase <chet@google.com> Merge "Handle offscreen animations correctly" into jb-mr1-dev
9389d447c175b4ef9fb85cd296f53cf24be4fd7d 24-Oct-2012 Romain Guy <romainguy@google.com> am b75ade9c: Merge "Use existing display list to render the resize buffer Bug #7400903" into jb-mr1-dev

* commit 'b75ade9cce02dffb967ff4719381254585074c58':
Use existing display list to render the resize buffer Bug #7400903
b75ade9cce02dffb967ff4719381254585074c58 24-Oct-2012 Romain Guy <romainguy@google.com> Merge "Use existing display list to render the resize buffer Bug #7400903" into jb-mr1-dev
6018aeec27914f138f36b00d8f00136a87562fd3 23-Oct-2012 Craig Mautner <cmautner@google.com> Add throwing InvalidDisplayException from addView.

Throw an InvalidDisplayException to addView if the display being
added to has been removed. Handle this exception in Dialog.show()
by removing the view after it has been added and rethrow the
exception from there.

Add javadoc to ViewManager.addView and Presentation.show explaining
the new exception and how best to handle it.

Bug: 7368565 partially fixed. It remains for the Videos app to
handle Presentation.show throwing the InvalidDisplayException.

Change-Id: Ib4303c9b3f7bf7a0cfa95d19bd60a0c128658c48
iewManager.java
iewRootImpl.java
indowManager.java
indowManagerGlobal.java
3561d062ff01f3455c984e4cfcd101a64a2e902f 23-Oct-2012 Chet Haase <chet@google.com> Handle offscreen animations correctly

A bug in software rendering caused animations on views that are offscreen
to not get drawn, therefore the animation doesn't continue (since old-style
animations depend on the logic in the drawing code to keep running). Fix is
to special case the isAnimating case in ViewRoot to go ahead and schedule
a traversal even if the dirty rect does not intersect with the visible region.

Issue #7396035 Animations starting offscreen don't draw run/end/draw properly (sw rendering only)

Change-Id: Iae25b3a424ddc5a16ba431ecd68cf42d5500db3f
iewRootImpl.java
8b9750c1bba490fad6e3d296ffdc006a4a0f8b70 24-Oct-2012 Jamie Gennis <jgennis@google.com> am fec93f67: am 39c68da5: am cd79b35c: Merge "Surface: add the PhysicalDisplayInfo#secure field" into jb-mr1-dev

* commit 'fec93f67190f7ced8578130e2340dee0e4010a33':
Surface: add the PhysicalDisplayInfo#secure field
39c68da57b443c869378263b8063da6e821a1b6d 24-Oct-2012 Jamie Gennis <jgennis@google.com> am cd79b35c: Merge "Surface: add the PhysicalDisplayInfo#secure field" into jb-mr1-dev

* commit 'cd79b35c3828e0ebf4c9e68da75f9d857ccf01db':
Surface: add the PhysicalDisplayInfo#secure field
cd79b35c3828e0ebf4c9e68da75f9d857ccf01db 24-Oct-2012 Jamie Gennis <jgennis@google.com> Merge "Surface: add the PhysicalDisplayInfo#secure field" into jb-mr1-dev
95429c3d1b8113c23b0aad3b74d724dccfad7fa9 23-Oct-2012 Jamie Gennis <jgennis@google.com> Surface: add the PhysicalDisplayInfo#secure field

Bug: 7368436
Change-Id: I38bf7bbfca354380c30da7516f628cf40416d350
urface.java
3a2d6aaf8e71a89f82517369acc03d46ffe9bb22 23-Oct-2012 Romain Guy <romainguy@google.com> Use existing display list to render the resize buffer
Bug #7400903

Change-Id: Ia2e534e47b4f67c280e2de7ce99cae0202751c42
iewRootImpl.java
573f1429a028e8fea8b7339b28e139b501a79d4d 23-Oct-2012 Romain Guy <romainguy@google.com> am 2635e743: am d04fe3c1: am 04c8d402: Merge "Properly draw the window background on window resize Bug #7385090" into jb-mr1-dev

* commit '2635e7431a74b89c338ea9d56715f94b9c328cc1':
Properly draw the window background on window resize Bug #7385090
d04fe3c1aeaf4ce63f6a6f3def61a8cc5faff705 23-Oct-2012 Romain Guy <romainguy@google.com> am 04c8d402: Merge "Properly draw the window background on window resize Bug #7385090" into jb-mr1-dev

* commit '04c8d402fa824c548dc5de82c56e63eb5df02371':
Properly draw the window background on window resize Bug #7385090
41308e2936c768103d0e9c82500e97938d6797f1 23-Oct-2012 Romain Guy <romainguy@google.com> Properly draw the window background on window resize
Bug #7385090

This change gets rid of two silly asumptions:
- That a layer needs to be cleared with opaque black (it shouldn't,
it's already cleared to transparent and the view will cover it up
with its own background)
- The the clip should be dirty at the beginning of a frame only
when the render target is opaque

Change-Id: I415b6d3cab196057fb0281419a53fef601a44e28
iewRootImpl.java
e8c18cb36b6e7ddd7db7a13553fa69ef6167ae54 22-Oct-2012 Jamie Gennis <jgennis@google.com> am 5bbfcd3e: am 9fee7bd7: am 23d62241: Merge "Set the secureness when creating displays" into jb-mr1-dev

* commit '5bbfcd3e15048f94310da6cba85be8ab047c0e8b':
Set the secureness when creating displays
9fee7bd73d1231172267cde99d2374cf072c2dca 22-Oct-2012 Jamie Gennis <jgennis@google.com> am 23d62241: Merge "Set the secureness when creating displays" into jb-mr1-dev

* commit '23d622418b5c67dc43faabd930d1c59c5ce34f6a':
Set the secureness when creating displays
23d622418b5c67dc43faabd930d1c59c5ce34f6a 22-Oct-2012 Jamie Gennis <jgennis@google.com> Merge "Set the secureness when creating displays" into jb-mr1-dev
c5b9ea70b908bf0126771de14298361daa38d18a 22-Oct-2012 Adam Powell <adamp@google.com> am f4c6a4e4: am cad6dce5: am cd92db84: Merge "Remove View\'s long press callbacks when ACTION_CANCEL is received" into jb-mr1-dev

* commit 'f4c6a4e42e11a8bf829335426d67be92b0e7ab5c':
Remove View's long press callbacks when ACTION_CANCEL is received
cad6dce59653bf0a5ad015ab936948497f58b3b4 22-Oct-2012 Adam Powell <adamp@google.com> am cd92db84: Merge "Remove View\'s long press callbacks when ACTION_CANCEL is received" into jb-mr1-dev

* commit 'cd92db84c6d9e0c9992abfbbda45d504c7f5e062':
Remove View's long press callbacks when ACTION_CANCEL is received
5311c4476ec59f0cd1502b81b03141bac48ee385 22-Oct-2012 Adam Powell <adamp@google.com> Remove View's long press callbacks when ACTION_CANCEL is received

Bug 7391646

Change-Id: Icd100d3eff63a54c892367fb70dec517257a01f8
iew.java
c2c4f8d895898ab401f2ae1c354998ae13a3fbe9 22-Oct-2012 Daniel Sandler <dsandler@android.com> am 50ad6326: am 466b77e9: am 2dd0c3a5: Merge "New lockscreen: allow search gesture from nav bar." into jb-mr1-dev

* commit '50ad6326c5814d092cf1510847bcdfb940a46738':
New lockscreen: allow search gesture from nav bar.
466b77e9951aa6dab0d721e1d9bfb805bb37ffc5 22-Oct-2012 Daniel Sandler <dsandler@android.com> am 2dd0c3a5: Merge "New lockscreen: allow search gesture from nav bar." into jb-mr1-dev

* commit '2dd0c3a576925be4b5f0438a57af626e6e162e0e':
New lockscreen: allow search gesture from nav bar.
2dd0c3a576925be4b5f0438a57af626e6e162e0e 22-Oct-2012 Daniel Sandler <dsandler@android.com> Merge "New lockscreen: allow search gesture from nav bar." into jb-mr1-dev
3c371b28ef0e55ccd03ddc772fb5df62486cd09f 20-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 0be6a28e: am 08f27b1b: am 59420ecd: Merge "Fix bug #7164967 android.view.cts.ViewGroup_MarginLayoutParamsTest#testResolveMarginsRelative failures on JO" into jb-mr1-dev

* commit '0be6a28ed5f27217d66c69195524d8747a6975bc':
Fix bug #7164967 android.view.cts.ViewGroup_MarginLayoutParamsTest#testResolveMarginsRelative failures on JO
08f27b1bffbf01d9e5a102b8c90a3c2095fc82b3 20-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 59420ecd: Merge "Fix bug #7164967 android.view.cts.ViewGroup_MarginLayoutParamsTest#testResolveMarginsRelative failures on JO" into jb-mr1-dev

* commit '59420ecd1518289cc47c32181250539c981f85f0':
Fix bug #7164967 android.view.cts.ViewGroup_MarginLayoutParamsTest#testResolveMarginsRelative failures on JO
d3156a2a5656e154b517b5fd3498fc46c045fcd3 20-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7164967 android.view.cts.ViewGroup_MarginLayoutParamsTest#testResolveMarginsRelative failures on JO

This was a regression introduced by a previous CL.

- we actually need to let the layout params resolution goes all the time
as we dont have any "isResolved" state and a public API for doing its reset thru ViewGroup.

The current implementation is simple and works even if it is doing sometimes a bit more
than it should really do. This is a well conscious tradeoff.

Change-Id: I5c4d532331b3970dfe88f016bc305cbc4a0d83f1
iewGroup.java
7bbf8163fb83afc54b353a8def52bfb87ecce047 20-Oct-2012 Jamie Gennis <jgennis@google.com> Set the secureness when creating displays

This change makes use of the new 'secure' argument to the
ISurfaceComposer::createDisplay method. In this change both the overlay and
wifi displays are hard-coded to be non-secure displays.

Bug: 7368436
Change-Id: Ib65312f2adab5104d8deefbfc32af9dc106a9129
urface.java
d5483c3157a28e2ebc05a0c918df8a2be0a7fc89 19-Oct-2012 Daniel Sandler <dsandler@android.com> New lockscreen: allow search gesture from nav bar.

Show a lights-out pip if home is invisible but search is
still OK.

Change-Id: Ifc69c12296cc8e8cf7c89dd06173d7abf499a878
iew.java
da391700c964077306ff43fd4296f31536942e9d 19-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> resolved conflicts for merge of e549a602 to master

Change-Id: I37dc0e48321d4baea49d77b6ef22bca19dcb0d9b
af26ac3130c0e956e28443d6e42212b02d4da611 19-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 398a6713: Merge "Fix bug #7367429 Popup window should get its direction from it Anchor View if it can" into jb-mr1-dev

* commit '398a6713c355cf59af071e944268aec7c0096b5a':
Fix bug #7367429 Popup window should get its direction from it Anchor View if it can
398a6713c355cf59af071e944268aec7c0096b5a 19-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7367429 Popup window should get its direction from it Anchor View if it can" into jb-mr1-dev
41974cdf7b04fb0ea91f5546a80eee4c5fc25389 19-Oct-2012 Romain Guy <romainguy@google.com> am be432fa0: am eb78cf53: am 8b946c05: Merge "Defer layer rendering to avoid stalls Bug #7326824" into jb-mr1-dev

* commit 'be432fa01cc5995bcab162369c47454903a5ae55':
Defer layer rendering to avoid stalls Bug #7326824
eb78cf538f87301c1612bf081ae2d5f93cae50f0 19-Oct-2012 Romain Guy <romainguy@google.com> am 8b946c05: Merge "Defer layer rendering to avoid stalls Bug #7326824" into jb-mr1-dev

* commit '8b946c055ddd90cf79cd407c9f68a013d5d24c2a':
Defer layer rendering to avoid stalls Bug #7326824
8b946c055ddd90cf79cd407c9f68a013d5d24c2a 19-Oct-2012 Romain Guy <romainguy@google.com> Merge "Defer layer rendering to avoid stalls Bug #7326824" into jb-mr1-dev
d8a9073a313dabd36a62cdaef7a8e8a2c4733040 19-Oct-2012 Craig Mautner <cmautner@google.com> am 59a9cc18: am 444354d2: am 0ed07a0a: Merge "Allow getDisplayContentLocked to return null..." into jb-mr1-dev

* commit '59a9cc18f30d2ba2aec952bcf3a65b1774986a40':
Allow getDisplayContentLocked to return null...
444354d2c62de37b65782f15c864af21086b4b04 19-Oct-2012 Craig Mautner <cmautner@google.com> am 0ed07a0a: Merge "Allow getDisplayContentLocked to return null..." into jb-mr1-dev

* commit '0ed07a0a30ef71053d0426956d3c198bb7540d4e':
Allow getDisplayContentLocked to return null...
0ed07a0a30ef71053d0426956d3c198bb7540d4e 19-Oct-2012 Craig Mautner <cmautner@google.com> Merge "Allow getDisplayContentLocked to return null..." into jb-mr1-dev
0b9b415632f559d893ac9ee5e43385d6ffb65b99 19-Oct-2012 Dave Burke <daveburke@google.com> am b1f434c1: am 744b4dca: am 09a5321c: Merge "Revert "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.""" into jb-mr1-dev

* commit 'b1f434c16eefb028ef441ba40df8abe1e087a4eb':
Revert "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.""
744b4dca34e605b80e553a34327067abc862a320 19-Oct-2012 Dave Burke <daveburke@google.com> am 09a5321c: Merge "Revert "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.""" into jb-mr1-dev

* commit '09a5321c60c02d944684abb98e0daec9dd810fab':
Revert "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.""
09a5321c60c02d944684abb98e0daec9dd810fab 19-Oct-2012 Dave Burke <daveburke@google.com> Merge "Revert "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.""" into jb-mr1-dev
579e14016c4a972e70cd2bd0c6d89bbd7e9e941c 19-Oct-2012 Dave Burke <daveburke@google.com> Revert "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.""

This reverts commit 57fca90ac65ecfe97acd4c93d442c3db8f815e11

Change-Id: I21b007a7d150a4c23f25a706cdba5cb86198198f
ayoutInflater.java
iewGroup.java
b003e28c1d65d06fcb5690ff2955d007d8f7a626 18-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7367429 Popup window should get its direction from it Anchor View if it can

- set the popup layout direction depending on the anchor view's layout direction
(if not defined before)
- make first pass of ViewRootImpl.performTraversals() and configuration update
not override any layout direction that could have been set before

Change-Id: I8e86ca805f0caf52c058d06aa7861df56fb862e6
iewRootImpl.java
c38684af87787b6625dc72a0dc0ce5b8d4abb3b9 19-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 4c2db5f2: am 8de328c9: am 45c77ca0: Merge "Fix missing @hide on ViewGroup.resolveLayoutParams()" into jb-mr1-dev

* commit '4c2db5f2a579132f6b6861c50d7ff99bb6c8035c':
Fix missing @hide on ViewGroup.resolveLayoutParams()
8de328c996a9f3a8f5ca3ea8e7c47421dd09b9aa 19-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 45c77ca0: Merge "Fix missing @hide on ViewGroup.resolveLayoutParams()" into jb-mr1-dev

* commit '45c77ca0f6afd568ff6d149e17fb43c684e51722':
Fix missing @hide on ViewGroup.resolveLayoutParams()
45c77ca0f6afd568ff6d149e17fb43c684e51722 19-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix missing @hide on ViewGroup.resolveLayoutParams()" into jb-mr1-dev
1e0ed6b2320893efdecdf300a9adf1dce3700710 19-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix missing @hide on ViewGroup.resolveLayoutParams()

- as we dont need this to be public

Change-Id: Ib8de262eec26d4785b13875d59599369b06a067d
iewGroup.java
f9d08423e3d922d22f628e2628885b3d966e40be 19-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 6cb9d909: am 8c2bc7cc: am 07f85fec: Merge "Fix bug #7374285 GridLayout layout param margins are broken in RTL mode" into jb-mr1-dev

* commit '6cb9d909f06433c5b9130c55dc08ce8d55e7dac8':
Fix bug #7374285 GridLayout layout param margins are broken in RTL mode
8c2bc7ccf16f201c10e1a4ffb66f66af63f85a91 19-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 07f85fec: Merge "Fix bug #7374285 GridLayout layout param margins are broken in RTL mode" into jb-mr1-dev

* commit '07f85fecdd9f13a617953c7377ff62b4133b4e30':
Fix bug #7374285 GridLayout layout param margins are broken in RTL mode
07f85fecdd9f13a617953c7377ff62b4133b4e30 19-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7374285 GridLayout layout param margins are broken in RTL mode" into jb-mr1-dev
7c25aab491707f7324f9941b8cfa9bd2b4b97e76 19-Oct-2012 Romain Guy <romainguy@google.com> Defer layer rendering to avoid stalls
Bug #7326824

When a layer is taken out of the cache and initialized it gets cleared
to prepare it for future rendering. This triggers the following sequence
of operations:

glBindFramebuffer(layer.fbo)
attach texture storage to FBO
glClear()
glBindFramebuffer(defaultFbo)

The clear forces a resolve on tilers which stalls the CPU for a little
while, thus producing jank during animations. This change moves the
clear to the next frame when we know we will have to execute a resolve
anyway.

Change-Id: Ic1939c25df20ed65a4c48dc81ee549b2cd8b6ec3
ardwareRenderer.java
2d5618c22101cfc4d6478cfe1d846798389540c1 18-Oct-2012 Craig Mautner <cmautner@google.com> Allow getDisplayContentLocked to return null...

... and check for null returns. This prevents DisplayContent objects
from containing null Display references.

Bug: 7368565 fixed.
Change-Id: I830fb4c1349204c366193657a95a92c48ccee66c
indowManagerGlobal.java
fcc3348f61b2992f0b84e8e8dcb3535fc715298f 18-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7374285 GridLayout layout param margins are broken in RTL mode

- resolve layout params in ViewGroup when layout direction is changed
- layout param resolution is checking the previous layout direction to
check if we need to resolve

Change-Id: I70af2ad2b4ec83c2ec6c93b3ff445852500d1687
iew.java
iewGroup.java
f1149452694713670a5e3849693841c0fbab0f25 18-Oct-2012 Justin Ho <justinho@google.com> am 22bd3726: am 76a01424: am 871a6d7d: Merge "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."" into jb-mr1-dev

* commit '22bd3726be37a24e956d962d61657d8a3d54c985':
Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."
5c555f39fb9bb1a47c081ae62658454e92792f44 18-Oct-2012 Justin Ho <justinho@google.com> am 0efebf0a: am c35f7650: am 4db31657: Merge "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height." into jb-mr1-dev

* commit '0efebf0af4c21b9d02c9c06b67867a554e0b35ea':
This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.
76a0142477e3ebda381d717572b21b355c172c26 18-Oct-2012 Justin Ho <justinho@google.com> am 871a6d7d: Merge "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."" into jb-mr1-dev

* commit '871a6d7d4fb3bffaff37e45f0b4f5e3c862239d2':
Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."
c35f76508eed905e06954cf8955065909b2039a7 18-Oct-2012 Justin Ho <justinho@google.com> am 4db31657: Merge "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height." into jb-mr1-dev

* commit '4db3165793a837ffc8197184fbc13ef2217e3dfc':
This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.
871a6d7d4fb3bffaff37e45f0b4f5e3c862239d2 18-Oct-2012 Justin Ho <justinho@google.com> Merge "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."" into jb-mr1-dev
4e360f06003dd31da25dc8529fa1876ab573d0aa 18-Oct-2012 Justin Ho <justinho@google.com> Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."

This reverts commit f49d835dfe1bd21920ff8a48cbdfb9c1fd632fd9

Change-Id: If0093f23d6458e53619220fbf0aa5f844ad2c790
ayoutInflater.java
iewGroup.java
4db3165793a837ffc8197184fbc13ef2217e3dfc 18-Oct-2012 Justin Ho <justinho@google.com> Merge "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height." into jb-mr1-dev
f49d835dfe1bd21920ff8a48cbdfb9c1fd632fd9 18-Oct-2012 Justin Ho <justinho@google.com> This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.

This reverts commit 57fca90ac65ecfe97acd4c93d442c3db8f815e11

Change-Id: I0fe25056cd54b8852b32ae4621e048d3f5c7d555
ayoutInflater.java
iewGroup.java
8ebb55429496887590aad0bf99d35f745ed5577d 18-Oct-2012 Chet Haase <chet@google.com> am b7379d3e: am 68716710: am 6f3e7bbf: Merge "Fix for previous commit on non-interesecting invalidations" into jb-mr1-dev

* commit 'b7379d3e4808fc1b4af4f4a6286e4432aa2b7036':
Fix for previous commit on non-interesecting invalidations
6871671063262759c906e6a24829d37a91d3b278 17-Oct-2012 Chet Haase <chet@google.com> am 6f3e7bbf: Merge "Fix for previous commit on non-interesecting invalidations" into jb-mr1-dev

* commit '6f3e7bbf14d43553dfca6a59bbbb1c6ee19a70fc':
Fix for previous commit on non-interesecting invalidations
9911d18f0ebc9a68e41838471de507a04ea8fd9d 17-Oct-2012 Chet Haase <chet@google.com> Fix for previous commit on non-interesecting invalidations

An error in the logic meant that some valid invalidations weren't getting through,
causing Launcher (for one) to get stuck sometimes.

Change-Id: I180622623b19770cd61034a5bd7991a5e2fd0a64
iewRootImpl.java
6d166b7c5f86581cbccd52bc55bd45d724968a1e 17-Oct-2012 Chet Haase <chet@google.com> am a1954051: am e31cc171: am d95316e2: Merge "Skip drawing offscreen objects" into jb-mr1-dev

* commit 'a195405199f8d70ffce3de015bfe49316992faa4':
Skip drawing offscreen objects
e31cc17159f5a6eada40ffda20cb0b0560a0bc5c 17-Oct-2012 Chet Haase <chet@google.com> am d95316e2: Merge "Skip drawing offscreen objects" into jb-mr1-dev

* commit 'd95316e2c78c7e6cfacac9cced66f7ace36d6497':
Skip drawing offscreen objects
d95316e2c78c7e6cfacac9cced66f7ace36d6497 17-Oct-2012 Chet Haase <chet@google.com> Merge "Skip drawing offscreen objects" into jb-mr1-dev
b78ee0ef60e5323b15b4ffdc97be4d889e272b79 17-Oct-2012 Chet Haase <chet@google.com> Skip drawing offscreen objects

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
iewRootImpl.java
7cfd0a2809ee39d4a6c484384615f873a133979d 17-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 86a8b251: am d8989364: am e9a33c60: Merge "Fix bug #7363252 Popup and Dialog UI widgets should be RTL aware" into jb-mr1-dev

* commit '86a8b25114fbc033c474a214699ad77a9140af5e':
Fix bug #7363252 Popup and Dialog UI widgets should be RTL aware
7daab459678efb2b7e4cf5e80d3b774b9defffcb 17-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 7e8d16fb: am 84cb0b17: am 161cfef3: Merge "Fix bug #7363015 Padding is wrong for first item in a ListPopupWindow" into jb-mr1-dev

* commit '7e8d16fbfd8b83a743527412edf6bb4e767f37aa':
Fix bug #7363015 Padding is wrong for first item in a ListPopupWindow
d89893642f81f854455da601e4735d226cf95214 17-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am e9a33c60: Merge "Fix bug #7363252 Popup and Dialog UI widgets should be RTL aware" into jb-mr1-dev

* commit 'e9a33c6098f51c687665adbed799860df2569ad0':
Fix bug #7363252 Popup and Dialog UI widgets should be RTL aware
84cb0b17e64530a3f8fa7c70d1813b59006b675f 17-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 161cfef3: Merge "Fix bug #7363015 Padding is wrong for first item in a ListPopupWindow" into jb-mr1-dev

* commit '161cfef36d8fac79f8665ecdb78d3f8f8f5ba5af':
Fix bug #7363015 Padding is wrong for first item in a ListPopupWindow
e9a33c6098f51c687665adbed799860df2569ad0 17-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7363252 Popup and Dialog UI widgets should be RTL aware" into jb-mr1-dev
161cfef36d8fac79f8665ecdb78d3f8f8f5ba5af 17-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7363015 Padding is wrong for first item in a ListPopupWindow" into jb-mr1-dev
8814ec37969656c01218cf80cef0504e7961ba47 17-Oct-2012 Justin Ho <justinho@google.com> am 47270268: am 8598646e: am 144d4055: Merge "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."" into jb-mr1-dev

* commit '472702687d174c126752259485b83c39f3eb2801':
Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."
8598646e5b93e8adf4bcd2489365900d2a4776c6 17-Oct-2012 Justin Ho <justinho@google.com> am 144d4055: Merge "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."" into jb-mr1-dev

* 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."
144d405511e9ed685568e50db87b22cc42b6a252 17-Oct-2012 Justin Ho <justinho@google.com> Merge "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."" into jb-mr1-dev
57fca90ac65ecfe97acd4c93d442c3db8f815e11 17-Oct-2012 Justin Ho <justinho@google.com> Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."

This reverts commit dcf59629beed8182759a1068ab8ee997935bef82

Change-Id: I27426a0ffe993973ffb0b05ce1ed3afe73fcd87d
ayoutInflater.java
iewGroup.java
cf12897cf553bfd07734dad3de071915fd21d4eb 17-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7363252 Popup and Dialog UI widgets should be RTL aware

- 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
iewRootImpl.java
a7e0bcd87287ff2f11cdd872026f2eb9ee22bcd0 17-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7363015 Padding is wrong for first item in a ListPopupWindow

- 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
iewGroup.java
f7b77f1285ea9635085d2621a1db8d67316fcbd5 17-Oct-2012 Jim Miller <jaggies@google.com> am ef512f03: am cccf85c2: am 8e614501: Merge "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height." into jb-mr1-dev

* commit 'ef512f03e3a10b39e82c9029d9d7623915ac8850':
This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.
cccf85c287aea85121b15280bf3a89a2b7d3926b 17-Oct-2012 Jim Miller <jaggies@google.com> am 8e614501: Merge "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height." into jb-mr1-dev

* 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.
8e6145013a6533ca6a33e03c8a5e45ad2de431e4 17-Oct-2012 Jim Miller <jaggies@google.com> Merge "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height." into jb-mr1-dev
dcf59629beed8182759a1068ab8ee997935bef82 17-Oct-2012 Jim Miller <jaggies@google.com> This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.

Revert "Revert "Revert "Fix for bug 6050753."""

This reverts commit 6868d6f349610c15256471cc3d5fa708cbfd5f1d

Change-Id: I8843d92dba14c82f06d9ee59517cf11b2abbbf04
ayoutInflater.java
iewGroup.java
88939e5c84246241b970e3548e769c8a3d4c9a3f 16-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> am c53fee3b: am 5ac909f9: am 964629ac: Merge "Occasionally triple tap on the keyboard toggles screen magnification." into jb-mr1-dev

* commit 'c53fee3b435f8e84b4608ee4eac5c536210c5c20':
Occasionally triple tap on the keyboard toggles screen magnification.
5ac909f9e2ab42842c0697c9af31bd95bfc3cb68 16-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> am 964629ac: Merge "Occasionally triple tap on the keyboard toggles screen magnification." into jb-mr1-dev

* commit '964629aca8d076826198a21b654ed858618b5619':
Occasionally triple tap on the keyboard toggles screen magnification.
964629aca8d076826198a21b654ed858618b5619 16-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Occasionally triple tap on the keyboard toggles screen magnification." into jb-mr1-dev
55468c64bc4f3c4b16bf144f66907d75bb656b0a 16-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Occasionally triple tap on the keyboard toggles screen magnification.

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
DisplayContentChangeListener.aidl
1c80844464fbe977c5303cd56af9abb81a2bc218 16-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> am 7d5de594: am d46503d5: am 40b7ea44: Merge "Accessibility focus drawing does not take into account view\'s transformation matrix." into jb-mr1-dev

* commit '7d5de5941d24aadf57d883198f79cf39da324635':
Accessibility focus drawing does not take into account view's transformation matrix.
d46503d5088b46f3e45a94b81efa406856559ca8 16-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> am 40b7ea44: Merge "Accessibility focus drawing does not take into account view\'s transformation matrix." into jb-mr1-dev

* commit '40b7ea443612213e9c973393658f07c176c3269e':
Accessibility focus drawing does not take into account view's transformation matrix.
40b7ea443612213e9c973393658f07c176c3269e 16-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessibility focus drawing does not take into account view's transformation matrix." into jb-mr1-dev
d8c4f50981a887b8332ad3abdb51c4cb4151dcb8 16-Oct-2012 Mathias Agopian <mathias@google.com> am 1167b7b9: am dcfe6cee: am 6868d6f3: Revert "Revert "Fix for bug 6050753.""

* commit '1167b7b9e43878f077478f58e31e268c2e191110':
Revert "Revert "Fix for bug 6050753.""
dcfe6ceef05c1566a8fc80b758b830c39df01bbd 16-Oct-2012 Mathias Agopian <mathias@google.com> am 6868d6f3: Revert "Revert "Fix for bug 6050753.""

* commit '6868d6f349610c15256471cc3d5fa708cbfd5f1d':
Revert "Revert "Fix for bug 6050753.""
6868d6f349610c15256471cc3d5fa708cbfd5f1d 16-Oct-2012 Mathias Agopian <mathias@google.com> Revert "Revert "Fix for bug 6050753.""

Emergency revert -- fix reboot loop.

This reverts commit 8e63bcc63fd002231f8391af8982eeb235d096c8.

Change-Id: I4373b867d756de09cdf6aa0aba9e6ff8f47bcdbc
ayoutInflater.java
iewGroup.java
0d4f45d9421ac5c80edeef8e838c2b874e548157 16-Oct-2012 Jamie Gennis <jgennis@google.com> am b312f115: am 38041d6b: am 809bb404: Merge "Flag window animation transactions as animations." into jb-mr1-dev

* commit 'b312f1155caa1b323f482b92564cd07f3151c66b':
Flag window animation transactions as animations.
dabcbfe46dd202aa03d0b1580f568c4ba4fba915 16-Oct-2012 Romain Guy <romainguy@google.com> am 3e6c9ba6: am cb09dba0: am 69fbc3c0: Merge "Revert "Fix for bug 6050753."" into jb-mr1-dev

* commit '3e6c9ba6777cec3b3928ddb2b399c957735f7b06':
Revert "Fix for bug 6050753."
1da111fca47ab38db33d5987a375604e572cbb9c 16-Oct-2012 Romain Guy <romainguy@google.com> am e9d0c992: am 8ab33df5: am edefaa25: Merge "Ensure we always request conformant OpenGL ES 2.0 contexts" into jb-mr1-dev

* commit 'e9d0c9920b98a7e3aca0a7583a55b8278166802a':
Ensure we always request conformant OpenGL ES 2.0 contexts
38041d6b3c3d838d99f70f9b1195d69487edf689 16-Oct-2012 Jamie Gennis <jgennis@google.com> am 809bb404: Merge "Flag window animation transactions as animations." into jb-mr1-dev

* commit '809bb404da66498f1723279542d2a7d1f4512052':
Flag window animation transactions as animations.
809bb404da66498f1723279542d2a7d1f4512052 16-Oct-2012 Jamie Gennis <jgennis@google.com> Merge "Flag window animation transactions as animations." into jb-mr1-dev
b6ce6e42cc89864354c7ecb9ae80504a6c9dddcf 16-Oct-2012 Jamie Gennis <jgennis@google.com> Flag window animation transactions as animations.

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
urface.java
78bd9835eb99fd829026a05dc543c6708367ca5b 16-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Accessibility focus drawing does not take into account view's transformation matrix.

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
iew.java
iewRootImpl.java
cb09dba0b80ff51e0a481959c5f0056f7a292ea7 16-Oct-2012 Romain Guy <romainguy@google.com> am 69fbc3c0: Merge "Revert "Fix for bug 6050753."" into jb-mr1-dev

* commit '69fbc3c089e3399ebd94cc3a7ba846f426a7b32d':
Revert "Fix for bug 6050753."
8ab33df56b1c22b7557f7dbe2d0b1f07d8ee1e47 16-Oct-2012 Romain Guy <romainguy@google.com> am edefaa25: Merge "Ensure we always request conformant OpenGL ES 2.0 contexts" into jb-mr1-dev

* commit 'edefaa25db7c9cd4facab258a0fd5913c6493bd0':
Ensure we always request conformant OpenGL ES 2.0 contexts
69fbc3c089e3399ebd94cc3a7ba846f426a7b32d 16-Oct-2012 Romain Guy <romainguy@google.com> Merge "Revert "Fix for bug 6050753."" into jb-mr1-dev
edefaa25db7c9cd4facab258a0fd5913c6493bd0 16-Oct-2012 Romain Guy <romainguy@google.com> Merge "Ensure we always request conformant OpenGL ES 2.0 contexts" into jb-mr1-dev
8efca54693b1fa956eede0367fffe8bb0d3531f0 16-Oct-2012 Romain Guy <romainguy@google.com> Ensure we always request conformant OpenGL ES 2.0 contexts

Change-Id: I6b9d6f2dace02ad28baef6811007302b8e552a54
ardwareRenderer.java
5dc228d2343009dc1d958d307c14166865b50e7d 15-Oct-2012 Romain Guy <romainguy@google.com> am a97a9bef: am 807e4375: am f2e28abb: Merge "Update javadoc" into jb-mr1-dev

* commit 'a97a9beff7e3c66ca41a6e2029433bc9f1f390ba':
Update javadoc
807e4375e970741fdc9f8315e4a7ba29b4d7549b 15-Oct-2012 Romain Guy <romainguy@google.com> am f2e28abb: Merge "Update javadoc" into jb-mr1-dev

* commit 'f2e28abb1375c5ca513eac9dcde5c349f771de0f':
Update javadoc
8e63bcc63fd002231f8391af8982eeb235d096c8 15-Oct-2012 Romain Guy <romainguy@google.com> Revert "Fix for bug 6050753."

This reverts commit c29f031598811486d83f418fd08fbfe1fc41788a.
ayoutInflater.java
iewGroup.java
edc900528937cd03f0d3a94fdf73d019324a2054 15-Oct-2012 Romain Guy <romainguy@google.com> Update javadoc

Some View.post*() methods can be invoked from arbitrary thread
independently of whether the View is attached to a window.

Change-Id: I587b5909ab8b06665978d001548d56c8c22043c1
iew.java
58072b573d4840199e3d19f3d6f6a873281c2e40 13-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am df4bcd6a: am b65b5133: am f9307c5c: Merge "Fix bug #7334966 Padding is still broken in RTL languages" into jb-mr1-dev

* commit 'df4bcd6a36ae2e0248791f35c10f6f100543b2c6':
Fix bug #7334966 Padding is still broken in RTL languages
b65b5133e7590e68053bbf4530b31b7206c7b984 13-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am f9307c5c: Merge "Fix bug #7334966 Padding is still broken in RTL languages" into jb-mr1-dev

* commit 'f9307c5c00bd3e8338bd478fec67a0190d515558':
Fix bug #7334966 Padding is still broken in RTL languages
84ebb35f392478600ddf8f08107fb345f13ef91c 12-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7334966 Padding is still broken in RTL languages

- do correct resolution and reset propagation for all RTL properties (padding and drawables included)
- fix CheckedTextView padding too

Change-Id: Ie603683a2324b2a6ef2c03633d01d5726c883b90
iew.java
iewGroup.java
0c5c23b3a237df63273694c2df594833836be9ed 12-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 4c95bfd5: am 39b0c29e: am ec139240: Merge "Fix bug #7325234 LayoutParams are not resolved correctly (Settings apps looks broken on Manta in Arabic)" into jb-mr1-dev

* commit '4c95bfd5ad4d17b6e0e618cd3244ee2d33bcbda1':
Fix bug #7325234 LayoutParams are not resolved correctly (Settings apps looks broken on Manta in Arabic)
6fdd3176e6532f67b81ea6a6b3a2fc03b2220751 12-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> am 02942145: am a1489d30: am 9aefa145: Merge "Send accessibility event for content change upon setting content description." into jb-mr1-dev

* commit '0294214519df70978b5440b01ec6c2597f4eecec':
Send accessibility event for content change upon setting content description.
bc58774037aa799f8cb9eb6e3b8c8adcd2633bd3 12-Oct-2012 Satoshi Kataoka <satok@google.com> am 95189b92: am 6a1d4b99: am 8e767115: Merge "Don\'t update the text services locale in the main thread" into jb-mr1-dev

* commit '95189b92259529997cfa4d15b5ffd060d9f99a51':
Don't update the text services locale in the main thread
39b0c29e4f6582420518f1124af262865797339d 11-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am ec139240: Merge "Fix bug #7325234 LayoutParams are not resolved correctly (Settings apps looks broken on Manta in Arabic)" into jb-mr1-dev

* commit 'ec139240480702e80cd56c0309394f7549a993f3':
Fix bug #7325234 LayoutParams are not resolved correctly (Settings apps looks broken on Manta in Arabic)
ec139240480702e80cd56c0309394f7549a993f3 11-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7325234 LayoutParams are not resolved correctly (Settings apps looks broken on Manta in Arabic)" into jb-mr1-dev
a1489d302289e92e7135452db3fee446e2452535 11-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> am 9aefa145: Merge "Send accessibility event for content change upon setting content description." into jb-mr1-dev

* commit '9aefa1457967b52f1865173aa70896db84f111f1':
Send accessibility event for content change upon setting content description.
9aefa1457967b52f1865173aa70896db84f111f1 11-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Send accessibility event for content change upon setting content description." into jb-mr1-dev
6a1d4b998cb543093b99dcabffaf849686eea656 11-Oct-2012 Satoshi Kataoka <satok@google.com> am 8e767115: Merge "Don\'t update the text services locale in the main thread" into jb-mr1-dev

* commit '8e767115a888b78c5732fe935bd811a7db6bf2e1':
Don't update the text services locale in the main thread
1eac6b7b0554eb126d113e49009208a1da5f23d9 09-Oct-2012 Satoshi Kataoka <satok@google.com> Don't update the text services locale in the main thread

This is a revised version of I9f8a81d3c9261a6cfc00292b9f5cb06053b9112d

Bug: 6761326
Change-Id: I43a0a65df6e4b6941bd0dca548c4af20b7e5bf58
extservice/TextServicesManager.java
b708f7703b98e14f01311dbc93e2636abe4790c9 11-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Send accessibility event for content change upon setting content description.

1. Since the content description is generated dynamically we need to notify
clients when it changes so they can drop cached state to get the most
recent content. This really is used by the caching we do to optimize
the window query APIs. Otherwise, the user does not see the current
content.

bug:7327556

Change-Id: I9be46508e86864566e027c64565eb1d787ec9363
iew.java
6bf6eb7d5f9207d6a3e1d6b61f17a8654d06fbdb 11-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7325234 LayoutParams are not resolved correctly (Settings apps looks broken on Manta in Arabic)

Part 2

- fix remaining UI widgets by asking layout params resolution when needed

Change-Id: I97c41639da645d77eeda85feec3bbcc7fc1260b9
iewGroup.java
6acf744fab8441f18e8aa1599aa9d6937ac8707a 11-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am f4a1dad6: am 5b04d032: am b8021a88: Merge "Fix bug #7326778 Rename LayoutParams.onResolveLayoutDirection(int)" into jb-mr1-dev

* commit 'f4a1dad63db89b805df0c83b2044dad0d60e3686':
Fix bug #7326778 Rename LayoutParams.onResolveLayoutDirection(int)
5b04d0320b877693fe10f70773657585c1c4aa58 11-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am b8021a88: Merge "Fix bug #7326778 Rename LayoutParams.onResolveLayoutDirection(int)" into jb-mr1-dev

* commit 'b8021a88e5c00ebd985a348b56af29c95a178a90':
Fix bug #7326778 Rename LayoutParams.onResolveLayoutDirection(int)
2918ab6c3258639148b8a5c78a34483af195246e 11-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7326778 Rename LayoutParams.onResolveLayoutDirection(int)

- rename to LayoutParams.resolveLayoutDirection(int)
- upate 17.txt too

Change-Id: I54fe28dc47cfdb65ef0b5b0244dabbe1d675c781
iew.java
iewGroup.java
ca4dabc3609cbe869e7f78312c35b32b8e220a5a 10-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> am 8ca8e02b: am 52c59ddf: am 27258209: Merge "Return true on successful accessiblity action click/long click." into jb-mr1-dev

* commit '8ca8e02bf207e77fcae644d8ecb30143ec098f6d':
Return true on successful accessiblity action click/long click.
52c59ddfee480fe974194af6a6abe7fbd19aba9d 10-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> am 27258209: Merge "Return true on successful accessiblity action click/long click." into jb-mr1-dev

* commit '27258209fee11a45154875c3c5493962f55904d2':
Return true on successful accessiblity action click/long click.
27258209fee11a45154875c3c5493962f55904d2 10-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Return true on successful accessiblity action click/long click." into jb-mr1-dev
96985fccdcff69c8410caee23aa088cbd8af34b6 10-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Return true on successful accessiblity action click/long click.

1. If a view is clickable or long clickable perfroming the corresponding
accessiblity action should return true no matter whether there is a
registered on click/long click listener. Currently true is returned
only if there is a listener but it is also possible that a sub-class
overrides performClick and does work there. For example CompoundButton.
Now if the view is clickable or long clickable we will call the
perfrom* method and return true, which is we clicked.

2. Fixed some JavaDoc indentation.

bug:7318777

Change-Id: Id603fee378b8f7d07f1128b5641ede57640bab53
iew.java
68293b35dc2c435fcd18d6a7883a45056ceebd88 09-Oct-2012 Adam Powell <adamp@google.com> am d338b977: am db380410: am 16062128: Merge "Allow more scaling values to be tuned in resource overlays" into jb-mr1-dev

* commit 'd338b9775bd549bc9d7b2153e60432ac694701fa':
Allow more scaling values to be tuned in resource overlays
db38041002c6c9f297e8c8c1eade6471646045b2 09-Oct-2012 Adam Powell <adamp@google.com> am 16062128: Merge "Allow more scaling values to be tuned in resource overlays" into jb-mr1-dev

* commit '160621280d7eaba7eeddc183c4c11aa49d32e30e':
Allow more scaling values to be tuned in resource overlays
3307958c6b4b3707c8861db829893b1f5820b677 09-Oct-2012 Adam Powell <adamp@google.com> Allow more scaling values to be tuned in resource overlays

Bug 7267507

Change-Id: I3fba6882a0ac4cb7d34430ba36dec83c030a73cd
caleGestureDetector.java
131c791954bc37a519e97db46f5f1d073e5d0e04 09-Oct-2012 Jeff Brown <jeffbrown@google.com> am 33c30e36: am 102e97bb: am 8f4baad3: Merge "Blank or unblank all displays as need." into jb-mr1-dev

* commit '33c30e36a5f2630cf7f3b2bced899009fead3460':
Blank or unblank all displays as need.
102e97bb6dda1b211acbc4e6e3d3ae58039c9a0d 09-Oct-2012 Jeff Brown <jeffbrown@google.com> am 8f4baad3: Merge "Blank or unblank all displays as need." into jb-mr1-dev

* commit '8f4baad387d8ad63efbc05cfa8c4e4c472793deb':
Blank or unblank all displays as need.
9e316a1a2a8d734315bbd56a85308f9657a92913 09-Oct-2012 Jeff Brown <jeffbrown@google.com> Blank or unblank all displays as need.

Ensures that both the internal display and HDMI are blanked
or unblanked in tandem.

Bug: 7309812
Change-Id: Ie8b96d393e8bb20d23c92f3320142d9f7cf42aff
urface.java
39952fa74b61e1dfbc200d7f2cc1810dae62c53e 08-Oct-2012 Justin Koh <justinkoh@google.com> am 4e6e0ace: am 1a7cfd67: Merge "Fix for the clearing of fling events" into jb-mr1-aah-dev

* commit '4e6e0ace3309d74b582e2d18e7df5e788beeb5da':
Fix for the clearing of fling events
1a7cfd67c2b3f789e6be420958dff60034884491 08-Oct-2012 Justin Koh <justinkoh@google.com> Merge "Fix for the clearing of fling events" into jb-mr1-aah-dev
acf74db4ac9425aa6c2266e910eee03d33a07fb9 08-Oct-2012 Romain Guy <romainguy@google.com> am bfb2883b: am b0f85147: am 133fcdf4: Merge "Clear draw flags when updating TextureView\'s layer Bug #7171323" into jb-mr1-dev

* commit 'bfb2883b57a0eabb83d786a1f9d187a26e36d7f5':
Clear draw flags when updating TextureView's layer Bug #7171323
b0f85147539f0ee2b165c07534a540deccfcd348 08-Oct-2012 Romain Guy <romainguy@google.com> am 133fcdf4: Merge "Clear draw flags when updating TextureView\'s layer Bug #7171323" into jb-mr1-dev

* commit '133fcdf44bccbda1fe7931bca7d911806435491b':
Clear draw flags when updating TextureView's layer Bug #7171323
133fcdf44bccbda1fe7931bca7d911806435491b 08-Oct-2012 Romain Guy <romainguy@google.com> Merge "Clear draw flags when updating TextureView's layer Bug #7171323" into jb-mr1-dev
52b307ebc86e12e368694442eb8751e7e0de239e 08-Oct-2012 Romain Guy <romainguy@google.com> Clear draw flags when updating TextureView's layer
Bug #7171323

Finally!

Change-Id: Iefef8fb9a8ef1fe4b374005067145319312c57cf
extureView.java
8565363126ed2c39444eb42f9879d0a88ed7905b 07-Oct-2012 Craig Mautner <cmautner@google.com> am 337aa27a: am 8ee7ac22: am 33877e15: Merge "Adds showWhenLocked attribute to Activities." into jb-mr1-dev

* commit '337aa27a6307e0f40705ee676551dda4bf6cb894':
Adds showWhenLocked attribute to Activities.
8ee7ac22e6aec5df5405a3e2130d593c50bc39b2 07-Oct-2012 Craig Mautner <cmautner@google.com> am 33877e15: Merge "Adds showWhenLocked attribute to Activities." into jb-mr1-dev

* commit '33877e15b8bfc50bd874027689a4794aa93b923d':
Adds showWhenLocked attribute to Activities.
33877e15b8bfc50bd874027689a4794aa93b923d 07-Oct-2012 Craig Mautner <cmautner@google.com> Merge "Adds showWhenLocked attribute to Activities." into jb-mr1-dev
5962b12bedc4a1d0354816c1cd6b06ba04f6d807 05-Oct-2012 Craig Mautner <cmautner@google.com> Adds showWhenLocked attribute to Activities.

The new attribute allows an Activity such as the alarm to appear
on all users screens.

Bug: 7213805 fixed.
Change-Id: If7866b13d88c04af07debc69e0e875d0adc6050a
WindowManager.aidl
indowManager.java
9c377bd2d6c8315c6917ed58b2b7a5f6fb8b8a4c 06-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> am 481a0aac: am 88ae2e2a: am d9c99124: Merge "Incorrect temporary detach of accessibility focused view may lead to a crash." into jb-mr1-dev

* commit '481a0aac1f28233854ead339f0c9697eb1286653':
Incorrect temporary detach of accessibility focused view may lead to a crash.
88ae2e2abeda94f3ec1d87ffad35e7e5d716a94f 06-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> am d9c99124: Merge "Incorrect temporary detach of accessibility focused view may lead to a crash." into jb-mr1-dev

* commit 'd9c99124d4870361c7c1e28fb78adf245eb1305a':
Incorrect temporary detach of accessibility focused view may lead to a crash.
d9c99124d4870361c7c1e28fb78adf245eb1305a 06-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Incorrect temporary detach of accessibility focused view may lead to a crash." into jb-mr1-dev
c8860602726d771c69a3fefedfa03419d1c03b1c 06-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Incorrect temporary detach of accessibility focused view may lead to a crash.

1. If an app naither reattaches nor removes detached view that has
accessibility focus, an exception in the drawing of accessibility
focus occurs since we are trying to compute the focused rect by
offseting the bounds of the focused view in coords of the root
but the focused one is not attached.

bug:7297191

Change-Id: Ib69d52e474b8ea365754f5311f5e809bd757dd1a
iewGroup.java
iewRootImpl.java
a1a2cdf78aebd8d58ea722bc249e2efd69a8541a 06-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> am 5bfa59b3: am 82d5b6e1: am 020daada: Merge "Accessibility focus not cleared on temporary detach." into jb-mr1-dev

* commit '5bfa59b32fcfd09fcd66381cc7d951f156d1363b':
Accessibility focus not cleared on temporary detach.
82d5b6e1dde07fbd0bd6ed1720c92e06b7dadd93 06-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> am 020daada: Merge "Accessibility focus not cleared on temporary detach." into jb-mr1-dev

* commit '020daada9d5311921fe3185c68f083cf4aac18f8':
Accessibility focus not cleared on temporary detach.
020daada9d5311921fe3185c68f083cf4aac18f8 06-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessibility focus not cleared on temporary detach." into jb-mr1-dev
8d0739da7ff6589101f1dc2d5f579f3bfdefd3b4 06-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Accessibility focus not cleared on temporary detach.

1. There was a path for removing a view without clearing its accessibility focus.
Then when we try to draw the focused rectangle we get an exception since the
accessibility focused view is not attached to the view tree when computing
the location of the rectangel to draw.

bug:7297191

Change-Id: I81e3c35e830e27cf95e73accb665629d0c456afb
iewGroup.java
eef14894db70b9686d04653b41b6310ae83e55c1 06-Oct-2012 Craig Mautner <cmautner@google.com> am 51e461a9: am f630bd76: am 2874a540: Merge "Add flag for displaying non-user\'s Windows to user." into jb-mr1-dev

* commit '51e461a9853b534b3e62052923a3ea7e39a2e4c9':
Add flag for displaying non-user's Windows to user.
f630bd762fb4770eaadc02492e32b0aa18d28416 06-Oct-2012 Craig Mautner <cmautner@google.com> am 2874a540: Merge "Add flag for displaying non-user\'s Windows to user." into jb-mr1-dev

* commit '2874a54068af1e7de3c1c046cc0061412daafaf8':
Add flag for displaying non-user's Windows to user.
2874a54068af1e7de3c1c046cc0061412daafaf8 06-Oct-2012 Craig Mautner <cmautner@google.com> Merge "Add flag for displaying non-user's Windows to user." into jb-mr1-dev
88400d3a31139c40c4014faf86c243647087ef6c 30-Sep-2012 Craig Mautner <cmautner@google.com> Add flag for displaying non-user's Windows to user.

Created a new flag that indicates that a window should be shown
to all users. For the flag to be valid the owner of the window
must have system permissions.

Also separated system window types into those that show to all
users (e.g. StatusBar, Keyguard, ....) and those that appear only
to the owning users (e.g. Drag, ANR, TOAST, ...). Those that appear
only to their owner can override their default behavior using
the new flag (e.g. LowBattery).

Fixes bug 7211965.

Change-Id: I1fdca25d57b7b523f0c7f8bceb819af656c388d4
indowManager.java
indowManagerPolicy.java
099a1173b9e09a0c0ec956cdb0e5b4d48f03ec27 06-Oct-2012 Romain Guy <romainguy@google.com> am b0625ac5: am 4a4e2c1a: am 5075f8e3: Merge "Update TextureView\'s layer on size change Bug #7171323" into jb-mr1-dev

* commit 'b0625ac58dbb0cff6cb52e5f999e8b7ae2c1fb0e':
Update TextureView's layer on size change Bug #7171323
4a4e2c1a3e2f529ae9c255ea4ffbfaec08cf5e29 06-Oct-2012 Romain Guy <romainguy@google.com> am 5075f8e3: Merge "Update TextureView\'s layer on size change Bug #7171323" into jb-mr1-dev

* commit '5075f8e3237cb950104049fd8b5677e6aad0306f':
Update TextureView's layer on size change Bug #7171323
5075f8e3237cb950104049fd8b5677e6aad0306f 06-Oct-2012 Romain Guy <romainguy@google.com> Merge "Update TextureView's layer on size change Bug #7171323" into jb-mr1-dev
ed249218b1d15d415374af3196668dd6fc4a7d13 06-Oct-2012 Jeff Brown <jeffbrown@google.com> am 4bb6d07a: am 513b8ea1: am 3f1246a2: Merge "Coordinate screen on with the window manager." into jb-mr1-dev

* commit '4bb6d07a8b93e37b20299374141118c07e7bc80c':
Coordinate screen on with the window manager.
88801b270f693ffd4125534724f204135f592f72 05-Oct-2012 Romain Guy <romainguy@google.com> Update TextureView's layer on size change
Bug #7171323

Change-Id: I24bedd7775ebf585ffcbd43b661e9c961f380c29
extureView.java
513b8ea16fdedd7b6debd718798c0220edd61d7f 05-Oct-2012 Jeff Brown <jeffbrown@google.com> am 3f1246a2: Merge "Coordinate screen on with the window manager." into jb-mr1-dev

* commit '3f1246a29b58cf78ebe674ec0905ad1795027aac':
Coordinate screen on with the window manager.
c38c9be031ddad5cf551b55458889f11e01dc5b2 04-Oct-2012 Jeff Brown <jeffbrown@google.com> Coordinate screen on with the window manager.

Bug: 7267457
Change-Id: Ic2c322253639e1f0b2e4e72a7b145025d0240f93
WindowManager.aidl
indowManagerPolicy.java
128dc2cfdc181fd509d2b19091a5a607d073d6e6 05-Oct-2012 Ben Pietrzak <bpietrzak@google.com> Fix for the clearing of fling events

Change-Id: If42134873157bb8f4f8834e2ca8afe7f78b321c9
imulatedTrackball.java
c5bbd1c6a550f0165a60ea54b354e430337ba23f 05-Oct-2012 Adam Cohen <adamcohen@google.com> am 451d49b3: am a39c5c36: am 327424d6: Merge "Plumbing to allow keyguard to be shown with user switcher (issue 7175023)" into jb-mr1-dev

* commit '451d49b34c8399a3479ca96addcc11857b6afb3e':
Plumbing to allow keyguard to be shown with user switcher (issue 7175023)
a39c5c369af24cc25f77b9ac97dfffae41c73eb6 05-Oct-2012 Adam Cohen <adamcohen@google.com> am 327424d6: Merge "Plumbing to allow keyguard to be shown with user switcher (issue 7175023)" into jb-mr1-dev

* commit '327424d69b99213e872e91f05feba2d0a137d6c7':
Plumbing to allow keyguard to be shown with user switcher (issue 7175023)
f752202bee88e31ce765483ba2efa6999ae9c9ad 04-Oct-2012 Adam Cohen <adamcohen@google.com> Plumbing to allow keyguard to be shown with user switcher (issue 7175023)

-> Also reduced calls to lockNow, and moved this call in ActivityManagerService

Change-Id: I9ba34ca902f7c0f71fa4ec302104688ca8d11f55
WindowManager.aidl
indowManagerPolicy.java
2e65fa2cc38a62de64adc6ce40c2570b6a0d2868 05-Oct-2012 Jeff Brown <jeffbrown@google.com> am 6ac19fe0: am 4fb5b85a: am dce8b948: Merge "Fix parceling of display info flags." into jb-mr1-dev

* commit '6ac19fe0b02c05089e53e380a980b4f646739b30':
Fix parceling of display info flags.
4fb5b85a5be88028398e67f37b2d7f802550d9fd 05-Oct-2012 Jeff Brown <jeffbrown@google.com> am dce8b948: Merge "Fix parceling of display info flags." into jb-mr1-dev

* commit 'dce8b948320e933e46e4a38c496f56555472495f':
Fix parceling of display info flags.
dce8b948320e933e46e4a38c496f56555472495f 05-Oct-2012 Jeff Brown <jeffbrown@google.com> Merge "Fix parceling of display info flags." into jb-mr1-dev
3f2ba6220bf74cb5157d6fafee9c76f526acea68 04-Oct-2012 Jeff Brown <jeffbrown@google.com> Fix parceling of display info flags.

Bug: 7283429
Change-Id: I5365a3b06d9b9f2414f9a9d2c94b0906c41b4ece
isplayInfo.java
feb750e729695cfe2615be0d97c6d02d8dc77714 04-Oct-2012 Satoshi Kataoka <satok@google.com> am 580bb919: am faf45d25: am ebf7e285: Merge "Close the current input method when attached view doesn\'t have a handler" into jb-mr1-dev

* commit '580bb919ed61d22de018f5cb0df68ae566c01843':
Close the current input method when attached view doesn't have a handler
faf45d2525bf64fa7f484cde9180c448fd0e0345 04-Oct-2012 Satoshi Kataoka <satok@google.com> am ebf7e285: Merge "Close the current input method when attached view doesn\'t have a handler" into jb-mr1-dev

* commit 'ebf7e2851cab55348153fca299c52042b125924d':
Close the current input method when attached view doesn't have a handler
ebf7e2851cab55348153fca299c52042b125924d 04-Oct-2012 Satoshi Kataoka <satok@google.com> Merge "Close the current input method when attached view doesn't have a handler" into jb-mr1-dev
82fa5ffbbc4a0b9842c809d0d4fdbec622819f38 04-Oct-2012 Romain Guy <romainguy@google.com> am bf8d8e73: am 5971d03f: am f7ee2a03: Merge "Fix rendering artifacts on tiled renderers Bug #7275145" into jb-mr1-dev

* commit 'bf8d8e73e4123f529845e88de6d74b62853b9786':
Fix rendering artifacts on tiled renderers Bug #7275145
5971d03f233c52d697e55ee83d8e514adac21527 04-Oct-2012 Romain Guy <romainguy@google.com> am f7ee2a03: Merge "Fix rendering artifacts on tiled renderers Bug #7275145" into jb-mr1-dev

* commit 'f7ee2a03c1f930db4b20c04225f496ada97e646b':
Fix rendering artifacts on tiled renderers Bug #7275145
6f409f9f3b85068e228c64dbd13da43306dd2577 04-Oct-2012 Justin Koh <justinkoh@google.com> am 11adf0ad: am a521abef: Merge "Synthesizing D-pad event directly from motion events. Includes fling." into jb-mr1-aah-dev

* commit '11adf0ad313a53d017bcbab81969b3c2d9547a17':
Synthesizing D-pad event directly from motion events. Includes fling.
dfab363807b3b44be4032e410f016e0a0d018426 03-Oct-2012 Romain Guy <romainguy@google.com> Fix rendering artifacts on tiled renderers
Bug #7275145

This change fixes ViewRoot and adds extra debug information. It does
not solve the problem entirely. Another CL will.

Change-Id: I7e604ba38aad7f421769783dcbd998d6905ab2d9
LES20RecordingCanvas.java
ardwareRenderer.java
iew.java
iewDebug.java
iewRootImpl.java
6f403a8290ffdc1417c435e14219c4bd3b36138f 03-Oct-2012 Ben Pietrzak <bpietrzak@google.com> Synthesizing D-pad event directly from motion events. Includes fling.

Change-Id: I0b1d4fafee6f21b64ca8b4480e4fde73085efbbe
imulatedTrackball.java
3573950e0b30178dc963de3fa00aba2ebcfd552d 02-Oct-2012 Satoshi Kataoka <satok@google.com> Close the current input method when attached view doesn't have a handler

Bug: 7187452
Change-Id: Iba4f7ac89f5806e871aaeb97f366935b83b95a5a
nputmethod/InputMethodManager.java
fbe981b9ca44dda69d24d025da37b4d791a19559 03-Oct-2012 Adam Powell <adamp@google.com> am 3183a2cf: am 653d4b47: am d27f1cd3: Merge "Further refine touchMajor processing in ScaleGestureDetector" into jb-mr1-dev

* commit '3183a2cf28f7490e878a3186c4fb7fa3987a52c7':
Further refine touchMajor processing in ScaleGestureDetector
653d4b47f4112f8fac1e2e7985ae246f312cdab4 03-Oct-2012 Adam Powell <adamp@google.com> am d27f1cd3: Merge "Further refine touchMajor processing in ScaleGestureDetector" into jb-mr1-dev

* commit 'd27f1cd30b140f042e11032e4aa4381756e2998f':
Further refine touchMajor processing in ScaleGestureDetector
d27f1cd30b140f042e11032e4aa4381756e2998f 03-Oct-2012 Adam Powell <adamp@google.com> Merge "Further refine touchMajor processing in ScaleGestureDetector" into jb-mr1-dev
5b5c414e31c4a8433a3290b931687a05dadc97b6 03-Oct-2012 Adam Powell <adamp@google.com> Further refine touchMajor processing in ScaleGestureDetector

On some devices the information coming from the touchscreen is very
noisy or otherwise unreliable. Perform some processing on the data
we have to try to provide a smoother experience.

Bug 7267507

Change-Id: I863125f58577f522de05a1361b81c2e42975fd89
caleGestureDetector.java
a3164eaad44e9e0eacd1150640b52d56448babbe 03-Oct-2012 Jeff Brown <jeffbrown@google.com> am eaf36658: am 709b9434: am bcbe9cf4: Merge "Add new Display API for secure video capabilities." into jb-mr1-dev

* commit 'eaf366586179554b624aff6e586f1a7b17b8dd4d':
Add new Display API for secure video capabilities.
c6af4fe1f74e1dbd291bbc9c9da4af3050cc8795 03-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 12ff4138: am 2e4f54de: am 046184f9: Merge "Fix bug #7266459 android.widget.cts.TableLayoutTest#testColumnStretchableEffect failures on JO" into jb-mr1-dev

* commit '12ff4138d53297a0b8ed31bd72035ee5a69df667':
Fix bug #7266459 android.widget.cts.TableLayoutTest#testColumnStretchableEffect failures on JO
709b943475e3395b580451911557f894480e3133 03-Oct-2012 Jeff Brown <jeffbrown@google.com> am bcbe9cf4: Merge "Add new Display API for secure video capabilities." into jb-mr1-dev

* commit 'bcbe9cf475835102ae2490dc9f067a3ac78a9551':
Add new Display API for secure video capabilities.
bcbe9cf475835102ae2490dc9f067a3ac78a9551 03-Oct-2012 Jeff Brown <jeffbrown@google.com> Merge "Add new Display API for secure video capabilities." into jb-mr1-dev
2e4f54de5e9c9cdaf90f3c6c93905dc3bf4dec10 03-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 046184f9: Merge "Fix bug #7266459 android.widget.cts.TableLayoutTest#testColumnStretchableEffect failures on JO" into jb-mr1-dev

* commit '046184f97aa71bd36a11b9d2cd27dafe2d29d246':
Fix bug #7266459 android.widget.cts.TableLayoutTest#testColumnStretchableEffect failures on JO
77aebfdbae489c3712ae3f9bca29d01fb1f09dc2 02-Oct-2012 Jeff Brown <jeffbrown@google.com> Add new Display API for secure video capabilities.

Added a new API to determine whether the display supports
protected buffers so that an application can choose a different
content stream or change how it decodes the content so
that it will be viewable on the display.

At present, wifi display does not fully support protected
buffers although this may be enhanced in the future.

Bug: 6986623
Change-Id: If53a53d72b0ec92753cc4b29f99fcb131e00449b
isplay.java
isplayInfo.java
acb1c124aca178b6231bf3029745e20fffdf2020 02-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7266459 android.widget.cts.TableLayoutTest#testColumnStretchableEffect failures on JO

- do not ask for requestLayout() nor invalidate() in View.onMeasure() when
resolving RTL properties

Change-Id: I7961fcb4c046d96391a4e748350573534481ae2b
iew.java
91aef0cfc4cea680ad4ab96c1ba3b993dce879c0 02-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> am 913883d3: am 87779f63: am 87d7d946: Merge "Accessibility focus should not scroll automatically." into jb-mr1-dev

* commit '913883d30200d33ffaf712953f05ce3990202440':
Accessibility focus should not scroll automatically.
87779f63c718a494f97cbf22b6b1dedad7e4ce8b 02-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> am 87d7d946: Merge "Accessibility focus should not scroll automatically." into jb-mr1-dev

* commit '87d7d94673512c9572fa62c2842ce20bc87bf8b9':
Accessibility focus should not scroll automatically.
a85236e510b26002761bd5856fb371f7aed37527 02-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Accessibility focus should not scroll automatically.

1. We use auto scroll when a view gets accessibility focus.
Pros: Having magnification and TalkBack enabled together (not a common use case)
will have the accessibility focused view on the screen (it is auto panned).
Cons: A blind user can get stuck in a very lock scroll view - not good.

2. We do not auto scroll when a view gets accessibility focus.
Pros: A blind user cannot get stuck in a long scroll view as he has to explicitly
scroll.
Cons: The magnified area will not pan to ensure the accessibility focused view
is visible.

Option one is the better trade off and this change removes the auto scrolling.

bug:7265773

Change-Id: I209b54ed18acad36c1f35b4c09b980e45ec9bbff
iew.java
3dadb63c7f8a2c311c4318e76aa540e3c0117036 02-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 44bfaedd: am 338a3853: am efe9b483: Merge "Fix bug #7259242 text is left justified with no padding" into jb-mr1-dev

* commit '44bfaedd1e0b4abad9748b2c6f70d805af22bb27':
Fix bug #7259242 text is left justified with no padding
338a3853e8cdd05fb87d623d8a1b476a329646e3 02-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am efe9b483: Merge "Fix bug #7259242 text is left justified with no padding" into jb-mr1-dev

* commit 'efe9b483547ac44dbc88bdfd6a54be5c95c2d889':
Fix bug #7259242 text is left justified with no padding
efe9b483547ac44dbc88bdfd6a54be5c95c2d889 02-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7259242 text is left justified with no padding" into jb-mr1-dev
e9234dd1edc8988f41f1cb947e4df6e245d37cd1 02-Oct-2012 Adam Powell <adamp@google.com> am 075bb6b3: Merge "DO NOT MERGE - Revert fixes for ImageView/MeasureSpec/RelativeLayout" into jb-mr1-dev

* commit '075bb6b3dfb9e58aa44c3b8588ab233a832956a3':
DO NOT MERGE - Revert fixes for ImageView/MeasureSpec/RelativeLayout
075bb6b3dfb9e58aa44c3b8588ab233a832956a3 02-Oct-2012 Adam Powell <adamp@google.com> Merge "DO NOT MERGE - Revert fixes for ImageView/MeasureSpec/RelativeLayout" into jb-mr1-dev
6e6d78116b584272aeda6924d1802ba18d4b8758 02-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7259242 text is left justified with no padding

(padding is still hard)

- fix Toasts: basically the background drawable padding was not
taken into account

Change-Id: Iefd29782f50b6f6a56578cfeb2af119d381207f0
iew.java
ecdae4b1d3d78255683ac9c6d3a051eca4c2eb6b 02-Oct-2012 Jeff Brown <jeffbrown@google.com> am 13176e63: am cd781ce2: am cb6f950f: Merge "New internal API to eliminate poke locks." into jb-mr1-dev

* commit '13176e639cca469268dfb99128b7cdff2d75d098':
New internal API to eliminate poke locks.
cd781ce2ebc104cf83d630889ae330a980635c9e 02-Oct-2012 Jeff Brown <jeffbrown@google.com> am cb6f950f: Merge "New internal API to eliminate poke locks." into jb-mr1-dev

* commit 'cb6f950f15919794d26a55c20090fe5dacd11e4a':
New internal API to eliminate poke locks.
cb6f950f15919794d26a55c20090fe5dacd11e4a 02-Oct-2012 Jeff Brown <jeffbrown@google.com> Merge "New internal API to eliminate poke locks." into jb-mr1-dev
aae1299e2989db09681c230647299f92fe9bcccb 02-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 8135814a: am 9b6f05f8: am 749a9970: Merge "Fix bug #7259242 text is left justified with no padding" into jb-mr1-dev

* commit '8135814af23f85e129e8e3b7ed3ddaa41eca46fe':
Fix bug #7259242 text is left justified with no padding
946d05b95f849684b709a3750ef189388d6dc5a9 02-Oct-2012 Adam Powell <adamp@google.com> DO NOT MERGE - Revert fixes for ImageView/MeasureSpec/RelativeLayout

MeasureSpec.makeMeasureSpec has a bug where a negative or very large
size parameter will cause the resulting MeasureSpec value to
overflow. RelativeLayout partially relies on this when measuring
children with mode UNSPECIFIED; a default value of -1 in a local
variable ends up being passed to makeMeasureSpec, overflowing a mode
value to create a measurespec that is very large in size, with AT_MOST
as the mode. The correct behavior is for RelativeLayout to propagate
the UNSPECIFIED mode.

Unfortunately a number of custom view implementations in apps rely on
the buggy behavior as they do not implement their own onMeasure
method. This makes them fall back to View's default onMeasure
implementation, which accepts the spec's size unconditionally for
AT_MOST or EXACTLY modes, but falls back on
getSuggestedMinimum[Width|Height] for UNSPECIFIED. If the view had no
background drawable with dimensions and no minWidth field set, this
fix for RelativeLayout causes some views to measure with a size of 0
rather than a size of the 30-bit version of 0xFF...

Revert these fixes in the interests of compatibility. The next version
will conditionally use the new behavior if targetSdk > JB-MR1.

This also required reverting a fix for ImageView's adjustViewBounds
functionality, as it cannot be implemented reliably if this
RelativeLayout fix is not also in place.

Revert "Fix UNSPECIFIED measurement in RelativeLayout"

This reverts commit 132a742b94b9716451ddef30cec20548b346f1b9.

Revert "Fix adjustViewBounds handling for ImageView"

This reverts commit d5edc7721791ad807b9a8fbd923b8d6e73c399cc.
iew.java
9b6f05f8df9a754f5240b610c556d7946aa7aad8 02-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 749a9970: Merge "Fix bug #7259242 text is left justified with no padding" into jb-mr1-dev

* commit '749a997093751a5d2e5b71f0ae3ab5b7527b68bd':
Fix bug #7259242 text is left justified with no padding
1e3b98d47df596d0c4eadbdf60143709f8465b28 01-Oct-2012 Jeff Brown <jeffbrown@google.com> New internal API to eliminate poke locks.

Added a new WindowManager.LayoutParams inputFeatures flag
to disable automatic user activity behavior when an input
event is sent to a window.

Added a new WindowManager.LayoutParams field userActivityTimeout.

Bug: 7165399
Change-Id: I204eafa37ef26aacc2c52a1ba1ecce1eebb0e0d9
indowManager.java
80766f1bdf19493bcbd4eae95fcea393c0b7f7ac 01-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7259242 text is left justified with no padding

(padding is hard)

- set correct values to mUserPaddingLeftInitial / mUserPaddingRightInitial
- reset padding to initial values depending on layout direction

Change-Id: I5cfb941b4874eafbfcfb5e2926f5a3c80b4931d3
iew.java
d2e74f34003c38111c974dfa187cae6c331f2841 01-Oct-2012 Chet Haase <chet@google.com> am 1dd00221: am bcdaf8cb: am 62ea4363: Merge "Fix texture corruption" into jb-mr1-dev

* commit '1dd002214e9734aa862db9b7e7092aacd737e46d':
Fix texture corruption
51e1f8c2a0e49d2f72caa47b3147446f396ed166 01-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am e05c1726: am 3332a701: am 10c84edc: Merge "Fix bug #7199562 UI mirroring for RTL locales (Arabic, Hebrew, Farsi): Play settings" into jb-mr1-dev

* commit 'e05c17263827fa26e63f83a82cb024af6b62900c':
Fix bug #7199562 UI mirroring for RTL locales (Arabic, Hebrew, Farsi): Play settings
725fc438a1399db0155af9ea819abdd66861dc51 01-Oct-2012 Romain Guy <romainguy@google.com> am d49faf39: am 25c8c198: am 8ed6b6a9: Merge "Perform a long computation to catch bitmap sizes > 32 bits Bug #7257930" into jb-mr1-dev

* commit 'd49faf39ec1eaff58d51e7f6458347ffd51e137c':
Perform a long computation to catch bitmap sizes > 32 bits Bug #7257930
639d09b4663b5bf44d2fd8dc00d6ef81dbc603cf 01-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> am 840ea01f: am 93cea34a: am f2e5cf48: Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev

* commit '840ea01fcbafe5d6b3fc8d90dcb5d99a65fa0113':
Fix bug #6427629 Clean up layout direction APIs
bcdaf8cb6d75d721507739504732e0e3dc7f437c 01-Oct-2012 Chet Haase <chet@google.com> am 62ea4363: Merge "Fix texture corruption" into jb-mr1-dev

* commit '62ea4363362526d32b48f920601d3b4e27a117bb':
Fix texture corruption
6a2d17f71342f981c9df1dc5beff33e30eb3ae2b 30-Sep-2012 Chet Haase <chet@google.com> Fix texture corruption

When memory gets low on a device, activities flush everything they can.
Hardware-accelerated activites, such as Launcher, flush GL resources and destroy
the GL context. However, some resources were still hanging around, due to deferred
destruction policies (we don't delete layers until the DisplayLists they are in
are finalized, to ensure we don't deref deleted objects). This meant that we were
referring to obsolete GL data in these objects. in particular, it meant that we might
come around later, after a new GL context was created, and delete a texture object
that was incorrect. We use the layer's "texture id" to refer to the texture underlying the
layer. But if there's a new GL context, then this texture ID is no longer valid, and
we may be deleting the texture that a different object (layer, icon, whatever) is referring
to, because the driver may return that same ID under the new GL context.

The fix is to more aggressively delete things that we know will not be used again
when the GL context is destroyed. In particular, we delete all resources being used
by all DisplayLists at GL context destruction time.

Issue #7195815 Textures corruption on all devices, in many apps

Change-Id: I52d2d208173690dbb794a83402d38f14ea4c6c22
isplayList.java
LES20DisplayList.java
ardwareRenderer.java
iew.java
3332a701e1cd6453089d7b0c6501c7f37cb69327 30-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am 10c84edc: Merge "Fix bug #7199562 UI mirroring for RTL locales (Arabic, Hebrew, Farsi): Play settings" into jb-mr1-dev

* commit '10c84edcfa674f13d798f4de65f95c76269c6191':
Fix bug #7199562 UI mirroring for RTL locales (Arabic, Hebrew, Farsi): Play settings
25c8c198e6abc053fbba19145ed485e31dc5927e 30-Sep-2012 Romain Guy <romainguy@google.com> am 8ed6b6a9: Merge "Perform a long computation to catch bitmap sizes > 32 bits Bug #7257930" into jb-mr1-dev

* commit '8ed6b6a96bf887e0b49c48838a9f22bb0f256296':
Perform a long computation to catch bitmap sizes > 32 bits Bug #7257930
10c84edcfa674f13d798f4de65f95c76269c6191 30-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7199562 UI mirroring for RTL locales (Arabic, Hebrew, Farsi): Play settings" into jb-mr1-dev
8ed6b6a96bf887e0b49c48838a9f22bb0f256296 30-Sep-2012 Romain Guy <romainguy@google.com> Merge "Perform a long computation to catch bitmap sizes > 32 bits Bug #7257930" into jb-mr1-dev
af61cc4cbb307dc3b9cb6f4aa232a0257157c9d2 30-Sep-2012 Romain Guy <romainguy@google.com> Perform a long computation to catch bitmap sizes > 32 bits
Bug #7257930

Change-Id: I28d08024fabe8103251d480524b0b0f2fd2d2aba
iew.java
47fb191841c50f45f39c5fcce3554e4990188583 29-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7199562 UI mirroring for RTL locales (Arabic, Hebrew, Farsi): Play settings

- do not need those variables. Use what we already have in View.
- reset padding to initial values before changing it.

Change-Id: Ib396b3dca6e98a94d83a538a9b594b5eb426c453
iew.java
93cea34a7f7834f42f921402415f7797b677e442 30-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am f2e5cf48: Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev

* commit 'f2e5cf487e9bda4da1b902cb5c816ba48c9b7004':
Fix bug #6427629 Clean up layout direction APIs
f2e5cf487e9bda4da1b902cb5c816ba48c9b7004 30-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev
343e11345ed496003f605e1b3bba5850d3e6cf0e 29-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6427629 Clean up layout direction APIs

- remove onPaddingChanged(int) and fold it into onRtlPropertiesChanged(int)

Change-Id: I1d7f02d2b4538c6c991bd4285501bbc73e6aa5c3
iew.java
7fb07337f8d8458f8611aff286f81d5d30aa2e59 29-Sep-2012 Adam Powell <adamp@google.com> am 4984ec72: Merge "Fix adjustViewBounds handling for ImageView" into jb-mr1-dev

* commit '4984ec7222d86a9b507a9961363bf50d2b72df1b':
Fix adjustViewBounds handling for ImageView
e3eb2c7754b2eea24e9c1f6551cf15fc533b3262 29-Sep-2012 Jean-Baptiste Queru <jbq@google.com> am 3c45765a: Merge from jb-mr1-aah-dev

* commit '3c45765a2a15c685aa28b74f626c6c10c909c133': (21 commits)
Import translations. DO NOT MERGE
Import translations. DO NOT MERGE
Import translations. DO NOT MERGE
Send Trackball clicks instead of Enter Key for taps
Import translations. DO NOT MERGE
Import translations. DO NOT MERGE
Import translations. DO NOT MERGE
Import translations. DO NOT MERGE
Import translations. DO NOT MERGE
Import translations. DO NOT MERGE
Import translations. DO NOT MERGE
Import translations. DO NOT MERGE
Fix auto-merger error in I74c0644c6938d28c20c42d88d995ffb56a71d703
Import translations. DO NOT MERGE
Import translations. DO NOT MERGE
Import translations. DO NOT MERGE
Import translations. DO NOT MERGE
Converts hover touch events to trackball events
Import translations. DO NOT MERGE
Import translations. DO NOT MERGE
...
3c45765a2a15c685aa28b74f626c6c10c909c133 29-Sep-2012 Jean-Baptiste Queru <jbq@google.com> Merge from jb-mr1-aah-dev

Change-Id: I4deb6ff1d3c9e00aefacbe772227bf43c139ecca
686d8e73ac5c95ce65fb2ac377d8de534fb77f94 29-Sep-2012 Adam Powell <adamp@google.com> am 2e35df06: am 4984ec72: Merge "Fix adjustViewBounds handling for ImageView" into jb-mr1-dev

* commit '2e35df06e795e89af66850a9e12d9b1c53f9a53d':
Fix adjustViewBounds handling for ImageView
d5edc7721791ad807b9a8fbd923b8d6e73c399cc 27-Sep-2012 Adam Powell <adamp@google.com> Fix adjustViewBounds handling for ImageView

When computing the adjusted view bounds, don't constrain the
dimensions by the original estimate if the opposite dimension has a
fixed size. This can result in the view never getting properly
enlarged.

Also fix a long-standing bug in MeasureSpec.makeMeasureSpec where
oversized or negative values could result in broken packed values.

Bug 7240251

Change-Id: I359d108ff52b6f3b5c4bf393d2271d28999c0127
iew.java
3c269280620bf76b96752e9cae27687a13c72e1b 28-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am 2f37d37c: am 8af2a13d: Merge "Fix bug # 7172247 API REVIEW: android.view.ViewGroup.MarginLayoutParams" into jb-mr1-dev

* commit '2f37d37c60ab3572b09fc06d2380624456a83666':
Fix bug # 7172247 API REVIEW: android.view.ViewGroup.MarginLayoutParams
658d260b1af30998af2b5857c8c621284f2cd06e 28-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am b1b6be8b: am 669aa7cb: Merge "Other improvements for bug #6427629 Clean up layout direction APIs" into jb-mr1-dev

* commit 'b1b6be8bc36a95eab263c04cc77d3b7d29ca06f4':
Other improvements for bug #6427629 Clean up layout direction APIs
4287bb604075f15da329e0d122d23d0919af3ef0 28-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am 8af2a13d: Merge "Fix bug # 7172247 API REVIEW: android.view.ViewGroup.MarginLayoutParams" into jb-mr1-dev

* commit '8af2a13d038002522c2f4e5d65bd703db9f86a08':
Fix bug # 7172247 API REVIEW: android.view.ViewGroup.MarginLayoutParams
778aea3926b079fc055342c7b5de8f8f65d48206 28-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am 669aa7cb: Merge "Other improvements for bug #6427629 Clean up layout direction APIs" into jb-mr1-dev

* commit '669aa7cb35e0d32fbf6f26a44e5ab8f6fae37de9':
Other improvements for bug #6427629 Clean up layout direction APIs
8af2a13d038002522c2f4e5d65bd703db9f86a08 28-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug # 7172247 API REVIEW: android.view.ViewGroup.MarginLayoutParams" into jb-mr1-dev
669aa7cb35e0d32fbf6f26a44e5ab8f6fae37de9 28-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Other improvements for bug #6427629 Clean up layout direction APIs" into jb-mr1-dev
8a9d3bf4dc301e2841eddc7a6495a9188087adc1 28-Sep-2012 Adam Powell <adamp@google.com> am ce7426db: am 808ce66a: Merge "ScaleGestureDetector does the safety dance." into jb-mr1-dev

* commit 'ce7426dbbe0a9cd1a147169d8d7fdcc2b03c719f':
ScaleGestureDetector does the safety dance.
493e037ce3d6b708f985fc97d34f52f2175928bc 28-Sep-2012 Adam Powell <adamp@google.com> am 808ce66a: Merge "ScaleGestureDetector does the safety dance." into jb-mr1-dev

* commit '808ce66a08bbd2604d71f3368788ba7496f71482':
ScaleGestureDetector does the safety dance.
f3a2bf8edd2e070a24f0d7c105d78b38576e14ac 28-Sep-2012 Adam Powell <adamp@google.com> ScaleGestureDetector does the safety dance.

Warn in the event of possibly bogus event streams and don't try to
clear empty history.

Bug 7241640
Bug 7243006

Change-Id: I037cf1334cab790ef5998ca5f8f6b323ed5f4459
caleGestureDetector.java
3ecac08af50d066c5f4596eabbdbcd1568e9b805 28-Sep-2012 Romain Guy <romainguy@google.com> am 8399392d: am 08874db8: Merge "Fix HierarchyViewer so it can load Contacts" into jb-mr1-dev

* commit '8399392d70a3cb515d68c600265638d42baf0161':
Fix HierarchyViewer so it can load Contacts
3fd13cb4be84d8a1bc2d9688b76ab3642aca1027 28-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am ac7348a3: am 10a2979e: Merge "Fix bug #7249363 Icons in the Camera UI (to switch camera types and on the focus ring) are missing" into jb-mr1-dev

* commit 'ac7348a3228177a0e08b8be2fec88e23b82c6043':
Fix bug #7249363 Icons in the Camera UI (to switch camera types and on the focus ring) are missing
55a014a35e45bda251de155b7665254a22a20117 28-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> am 0bbcfe2d: am 7befb7de: Global gesture to toggle Accessibility system-wide.

* commit '0bbcfe2d5d359f8c16423166763ec14b22f53d88':
Global gesture to toggle Accessibility system-wide.
06e7a030c029294a4c03c87652cfc161f8f29b3a 28-Sep-2012 Chet Haase <chet@google.com> am d3451ae8: am 4af11461: Merge "Force redraw of new/resized windows" into jb-mr1-dev

* commit 'd3451ae8e07fefad529d6abf4f48ca83e177b4fb':
Force redraw of new/resized windows
c1432543f637cb9e2f39c66dd891e791c842a953 28-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am f119af67: am 41148af5: Merge "Fix bug #7241988 Padding is mostly set to "0"" into jb-mr1-dev

* commit 'f119af675b77e34e791d3b02cae9401d0fdcfc06':
Fix bug #7241988 Padding is mostly set to "0"
864e87576b7379b185dd4486963ac7d5886cc7ab 28-Sep-2012 Romain Guy <romainguy@google.com> am 08874db8: Merge "Fix HierarchyViewer so it can load Contacts" into jb-mr1-dev

* commit '08874db8ed9f81f1d0f205bbffe87f913e50bc57':
Fix HierarchyViewer so it can load Contacts
08874db8ed9f81f1d0f205bbffe87f913e50bc57 28-Sep-2012 Romain Guy <romainguy@google.com> Merge "Fix HierarchyViewer so it can load Contacts" into jb-mr1-dev
97723b2eb415d044d8dcee6a5ee3a2a3fb607b15 28-Sep-2012 Romain Guy <romainguy@google.com> Fix HierarchyViewer so it can load Contacts

Change-Id: I5d5f400a9283f9c2431d91a10f85be42b02fe6a0
iewDebug.java
404a4fcd96358fd4263d8658ea5f79b704e7d499 28-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am 10a2979e: Merge "Fix bug #7249363 Icons in the Camera UI (to switch camera types and on the focus ring) are missing" into jb-mr1-dev

* commit '10a2979e551243f337e4ae1a2951c282546c7433':
Fix bug #7249363 Icons in the Camera UI (to switch camera types and on the focus ring) are missing
10a2979e551243f337e4ae1a2951c282546c7433 28-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7249363 Icons in the Camera UI (to switch camera types and on the focus ring) are missing" into jb-mr1-dev
8f346d857802810c2820994c22be50682206994a 28-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> am 7befb7de: Global gesture to toggle Accessibility system-wide.

* commit '7befb7deb2ac15134b3bb190520cba19165d16dd':
Global gesture to toggle Accessibility system-wide.
7befb7deb2ac15134b3bb190520cba19165d16dd 28-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> Global gesture to toggle Accessibility system-wide.

1. This change adds a global gesture for enabling accessibility.
To enable this gesture the user has to allow it from the
accessibility settings or use the setup wizard to enable
accessibility. When the global gesture is enabled the user
can long press on power to bring the global actions dialog
and then hold with two fingers for a few seconds to enable
accessibility. The appropriate feedback is also provided.

2. The global gesture is writing directly into the settings for
the current user if performed when the keyguard is not on. If
the keygaurd is on and the current user has no accessibility
enabled, the gesture will temporary enable accessibility
for the current user, i.e. no settings are changed, to allow
the blind user to log into his account. As soon as a user
switch happens the new user settings are inherited. If no
user change happens after temporary enabling accessibility
the temporary changes will be undone when the keyguard goes
away and the device will works as expected by the current user.

bug:6171929

3. The initialization code for the owner was not executed due
to a redundant check, thus putting the accessibility layer in
an inconsistent state which breaks pretty much everything.

bug:7240414

Change-Id: Ie7d7aba80f5867b7f88d5893b848b53fb02a7537
ccessibility/IAccessibilityManager.aidl
75aefb8fe8d3b1fd6664f73273ad18d0236d4e82 28-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7249363 Icons in the Camera UI (to switch camera types and on the focus ring) are missing

- no need to initialize mPaddingLeft/Right to UNDEFINED_PADDING

Change-Id: Icfdcc9bcb904228443e9adfde8038b5d8764365b
iew.java
03b8d3a9a4d5c04953e2370fc44fe5e40a381910 28-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug # 7172247 API REVIEW: android.view.ViewGroup.MarginLayoutParams

- remove isLayoutRtl() from public API

Change-Id: If700e3f5f30e3c98403b48dbcdd892535d929e2d
iewGroup.java
9a04856d5ecb07dea564feae2942fd485b53f3dd 26-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Other improvements for bug #6427629 Clean up layout direction APIs

- hide isLayoutRtl() from public API

- canResolveXXX() is now smarter: use recursion to get its returned value

- in ViewGroup, if resolution cannot be done then dont ask resolution for
its children

- in ViewGroup, addViewInner() needs to ask to resolve the child. This is
needed for example by ListView which is using the same measurespec before
and after its childs being attached.

It also take care of the general case where a measure pass is done when not
attached to a parent (and thus asking for resolution that will "fail" if we
are using IHNERIT) and never done again. That would lead to never do a
resolution.

- some code refactoring

Change-Id: I120dd2fef7397944f5ba8deff0686b108dc827d2
iew.java
iewGroup.java
22904334a0866c15dde8287d3f103e39cb76df5a 28-Sep-2012 Chet Haase <chet@google.com> am 4af11461: Merge "Force redraw of new/resized windows" into jb-mr1-dev

* commit '4af1146145550dee904bcaa744abfa582c8756b7':
Force redraw of new/resized windows
4af1146145550dee904bcaa744abfa582c8756b7 28-Sep-2012 Chet Haase <chet@google.com> Merge "Force redraw of new/resized windows" into jb-mr1-dev
391fef0f5d99c13df3d86a5798614c0695046732 28-Sep-2012 Chet Haase <chet@google.com> Force redraw of new/resized windows

Our use of the GL flag EGL_SWAP_BEHAVIOR_PRESERVED_BIT caused a problem
with windows that are resized, where some of the contents were not being
updated when the window was first placed/resized. The fix is to force the
window to redraw completely when it is first resized.

Issue #7246918 Label selection view disappears

Change-Id: I3562141569502af581a3d63b1290c598abb57ade
iewRootImpl.java
f7da56977453a1490003cd49e71501e2fc2c6fd1 28-Sep-2012 Philip Milne <pmilne@google.com> Merge "Optical bounds support for LinearLayout, TableLayout and TableRow."
a89953deca2273ff590bb19a72be37633a07b0e9 27-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am 41148af5: Merge "Fix bug #7241988 Padding is mostly set to "0"" into jb-mr1-dev

* commit '41148af5e6f1699c4e87ff6aa0ac1be974587aff':
Fix bug #7241988 Padding is mostly set to "0"
ad365cc217c989c3b688ae839d6f94ee8889a84e 27-Sep-2012 Philip Milne <pmilne@google.com> Optical bounds support for LinearLayout, TableLayout and TableRow.

The generic support for optical bounds provided in:

https://googleplex-android-review.googlesource.com/#/c/228269/

did not work correctly for nested LinearLayouts. With this fix
all the layouts in the APIdemos now seem to layout correctly
when the optical bounds mode is enabled.

(There's currently no, user level, way to do this. Instead, the
optical bounds layout mode has to be enabled on a per view basis.)

Change-Id: Id3d1d84445a8a2df277ddfe679c42f2d6cf775f4
iewGroup.java
bbd1029b702ea56804101ece9acd455282174293 27-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7241988 Padding is mostly set to "0"

- make RTL compatibility mode more straighforward. Done only in constructor
and resolved() is only done for real RTL case.

- fix also issue concerning needRtlPropertiesResolution(): we were missing
padding and drawables bits.

Change-Id: Ic0569f7542a0d66244e8c4bd35ae85949e39c559
iew.java
b88948f760624d63d2d89c6dcb1660ae5f2c8ce4 27-Sep-2012 Justin Koh <justinkoh@google.com> Merge "Send Trackball clicks instead of Enter Key for taps" into jb-mr1-aah-dev
2c9141206ceaee137ef02dd1a145ae7ca1a48283 26-Sep-2012 Ben Pietrzak <bpietrzak@google.com> Send Trackball clicks instead of Enter Key for taps

Change-Id: Ib1e77a1bdad81db18f84bb33402e9144517a0f4c
imulatedTrackball.java
iewRootImpl.java
6649ae314b939702c7349a0b2fa5bb3bb3cad6a0 27-Sep-2012 Adam Powell <adamp@google.com> am 221abd23: am 5a864aa0: Merge "ScaleGestureDetector bugfixes" into jb-mr1-dev

* commit '221abd23b1b4e8f3139ca675634696ba5360c8b8':
ScaleGestureDetector bugfixes
d03592587c6ccc657ee003fcb458b6bddc78057c 27-Sep-2012 Adam Powell <adamp@google.com> am 5a864aa0: Merge "ScaleGestureDetector bugfixes" into jb-mr1-dev

* commit '5a864aa0d8919d38b23c9e7e90455181d3a979e3':
ScaleGestureDetector bugfixes
5a864aa0d8919d38b23c9e7e90455181d3a979e3 27-Sep-2012 Adam Powell <adamp@google.com> Merge "ScaleGestureDetector bugfixes" into jb-mr1-dev
abde042a824c3fc2f3537ef136017dfa006258b9 27-Sep-2012 Adam Powell <adamp@google.com> ScaleGestureDetector bugfixes

* Use radius, not diameter.

* Properly determine initial span on ACTION_DOWN.

Change-Id: Ia1dcff6589f8226181a9beaecef34440e9e16330
caleGestureDetector.java
5d7b4368d9eece9f78c808fbda5b59700bfe6671 26-Sep-2012 Jesse Hall <jessehall@google.com> am bbe1860a: am 62fbb831: Merge "Document interaction of SurfaceView and post-layout transforms" into jb-mr1-dev

* commit 'bbe1860ae38b96d4d347990d1fb857e978828224':
Document interaction of SurfaceView and post-layout transforms
0e3fdd17a7afa1f1cdda8e6e585baad2ae847460 26-Sep-2012 Jesse Hall <jessehall@google.com> am 62fbb831: Merge "Document interaction of SurfaceView and post-layout transforms" into jb-mr1-dev

* commit '62fbb8311a1fe84fd1b09e27169757c85d7933cb':
Document interaction of SurfaceView and post-layout transforms
62fbb8311a1fe84fd1b09e27169757c85d7933cb 26-Sep-2012 Jesse Hall <jessehall@google.com> Merge "Document interaction of SurfaceView and post-layout transforms" into jb-mr1-dev
d28c3643a60853dfd4cdf71496a5ab4aabd6fb43 26-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am 21289957: am fea9df63: Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev

* commit '21289957a91213c922236deb6010dbde1d652c5e':
Fix bug #6427629 Clean up layout direction APIs
93ba6c22fb63387535a0f361a4b16f4389f4394e 26-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am fea9df63: Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev

* commit 'fea9df6386d66089b004719f194625e159bb344a':
Fix bug #6427629 Clean up layout direction APIs
fea9df6386d66089b004719f194625e159bb344a 26-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev
1c8cd46a0979cb8ad4e4bf66758279446127d25e 26-Sep-2012 Romain Guy <romainguy@google.com> am 83b6c24e: am 54ea6bf2: Merge "Always set the EGL_BUFFER_PRESERVED EGL_SWAP_BEHAVIOR Bug #7221173" into jb-mr1-dev

* commit '83b6c24e612a0bf625c24502a3c0b7617a85af50':
Always set the EGL_BUFFER_PRESERVED EGL_SWAP_BEHAVIOR Bug #7221173
39bd0ce63adc7c3ed5e7ad25f99247107acbc96c 26-Sep-2012 Romain Guy <romainguy@google.com> am 54ea6bf2: Merge "Always set the EGL_BUFFER_PRESERVED EGL_SWAP_BEHAVIOR Bug #7221173" into jb-mr1-dev

* commit '54ea6bf2aa5e8d72c96f410d87ec96431abe641c':
Always set the EGL_BUFFER_PRESERVED EGL_SWAP_BEHAVIOR Bug #7221173
bd43152bda835c5a9a619a5869344a6a3af11917 26-Sep-2012 Romain Guy <romainguy@google.com> Always set the EGL_BUFFER_PRESERVED EGL_SWAP_BEHAVIOR
Bug #7221173

Change-Id: I231a47187792c93af9e3b9321fd1e25bc2f20117
ardwareRenderer.java
c9f345ff7bc59916d5168d49d9312b2ff7a07daa 26-Sep-2012 Jesse Hall <jessehall@google.com> Document interaction of SurfaceView and post-layout transforms

Bug: 7179570
Change-Id: I9c4d71242bcb832c0cb3b62ec26aba54f146d70a
urfaceView.java
4a22625b7d17a7a4b319dda22f6416076cf7d3b7 26-Sep-2012 Adam Powell <adamp@google.com> am 82c6fa58: am e8e2b672: Merge "Further tweak touchMajor/Minor stabilization in ScaleGestureDetector" into jb-mr1-dev

* commit '82c6fa5898be4730bdb26f2d4e79df1314840ca2':
Further tweak touchMajor/Minor stabilization in ScaleGestureDetector
3caf305efd341f97989fc93c37d034a8d917dafd 26-Sep-2012 Adam Powell <adamp@google.com> am e8e2b672: Merge "Further tweak touchMajor/Minor stabilization in ScaleGestureDetector" into jb-mr1-dev

* commit 'e8e2b672563fed2820e392de48226acf894cf06b':
Further tweak touchMajor/Minor stabilization in ScaleGestureDetector
d736d2069b94348b519089348f4a85eb482db668 26-Sep-2012 Adam Powell <adamp@google.com> Further tweak touchMajor/Minor stabilization in ScaleGestureDetector

Change-Id: Ifa717c7dee96c5a2eb18a414a257f01762365b00
caleGestureDetector.java
823de2070fc8bf3c20ffcb03c49dcb2e5e94498d 26-Sep-2012 Adam Powell <adamp@google.com> am b7066338: am b4693e25: Merge "Smooth out handling of touchMajor/touchMinor in ScaleGestureDetector." into jb-mr1-dev

* commit 'b706633863ba616133c0976078885b7c81d4591e':
Smooth out handling of touchMajor/touchMinor in ScaleGestureDetector.
1f16daf7e2bf86901e0ac9cee51ad8399597f231 26-Sep-2012 Adam Powell <adamp@google.com> am b4693e25: Merge "Smooth out handling of touchMajor/touchMinor in ScaleGestureDetector." into jb-mr1-dev

* commit 'b4693e25b1a576718eb669a74a056b3f1e451117':
Smooth out handling of touchMajor/touchMinor in ScaleGestureDetector.
a4ce6ae0d379c8866697d064cfd1661ea156405e 25-Sep-2012 Adam Powell <adamp@google.com> Smooth out handling of touchMajor/touchMinor in ScaleGestureDetector.

Bug 7199099

Change-Id: I7268268237cc690c2ff952d4b2cd2ddc6dce2ca5
caleGestureDetector.java
b2caa627bef2126799aae4d67b0f6a38e3eb48ac 26-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> am a5d09204: am 1908cf9e: Merge "Fixing argument expectations of View.requestRectangleOnScreen" into jb-mr1-dev

* commit 'a5d09204ff87539147163807428265ce857ee618':
Fixing argument expectations of View.requestRectangleOnScreen
8f85d62b95575f595095ecd117803219b36d1ae4 26-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> am 1908cf9e: Merge "Fixing argument expectations of View.requestRectangleOnScreen" into jb-mr1-dev

* commit '1908cf9ec4cd9691f2e3228c4de74d11dab9073d':
Fixing argument expectations of View.requestRectangleOnScreen
989ae759f8037fc5427ce8c289a3f49151080df4 26-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> Fixing argument expectations of View.requestRectangleOnScreen

1. In a previous patch the implementation of the method was fixed
in terms of end result but this broke some assumptions about the
method arguments. This change updates the argument expectations.

bug:7172035

Change-Id: I76d738b1c74dfb1dd45fc667f3217911f1c10a5f
iew.java
f5481b7332375b32438e9638e436c8ed8f3393bb 25-Sep-2012 Romain Guy <romainguy@google.com> am 9e309c2f: am 64339168: Merge "Don\'t destroy the same texture twice Bug #7221449" into jb-mr1-dev

* commit '9e309c2f5b747dbbac4ac2c1fe8452c8e22f3132':
Don't destroy the same texture twice Bug #7221449
2d138307180fe7e7b65d075a3ef9b65a2aa5ee72 25-Sep-2012 Eric Laurent <elaurent@google.com> am 6d09e321: am 4bbcc654: Display a fixed volume silder when docked.

* commit '6d09e32144926222c065a4bfd631f5962eaa3256':
Display a fixed volume silder when docked.
5efef2a2823d43b7a0950a40e7f9005ae2fcc595 25-Sep-2012 Romain Guy <romainguy@google.com> am 64339168: Merge "Don\'t destroy the same texture twice Bug #7221449" into jb-mr1-dev

* commit '64339168c4ff0b3ac249398811db7c88eca8f95c':
Don't destroy the same texture twice Bug #7221449
1f88ba8bf67bb9264e39547ab1201aa3c5395d0e 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6427629 Clean up layout direction APIs

- getLayoutDirection() / getTextDirection() / getTextAligment() dont do resolution
- resolution done into onMeasure()
- use XX_RESOLVED bits to check if resolution needs to be done
- code formatting

Change-Id: Ie46a5535860e90f3449b96cfe0aa04dd7e3006d7
iew.java
iewGroup.java
5fc4e443510fb5f612ebd022810efb85fa114838 25-Sep-2012 Eric Laurent <elaurent@google.com> am 4bbcc654: Display a fixed volume silder when docked.

* commit '4bbcc6549738f3d69831b2bd9eb4accec3e9920e':
Display a fixed volume silder when docked.
0708f5274047226a780582d1040fec2990cf6968 25-Sep-2012 Romain Guy <romainguy@google.com> am ed1b6f4f: Really Trigger the log when EGL_NO_CONTEXT is returned by eglCreateContext Bug #7216919

* commit 'ed1b6f4fc0af836624b2edc2830eb918bf04cf3c':
Really Trigger the log when EGL_NO_CONTEXT is returned by eglCreateContext Bug #7216919
6f62e86dd8d3385526ae6b8bc221fe7b61ad3eed 25-Sep-2012 Romain Guy <romainguy@google.com> am c002936e: Trigger the log when EGL_NO_CONTEXT is returned by eglCreateContext Bug #7216919

* commit 'c002936e4bd042db3024202b3e9696835a730cfa':
Trigger the log when EGL_NO_CONTEXT is returned by eglCreateContext Bug #7216919
507cb6e2313690b492e69dfbf1eab0703603c910 25-Sep-2012 Jean-Baptiste Queru <jbq@google.com> am ec199613: Merge into jb-mr1-dev

* commit 'ec1996131d2e17408a22fd55fbc3edba5ea80d02':
Fix surface view on secondary display.
Fix drag and drop surfaces on secondary displays.
Allow a window on a secondary display to have focus.
908fae38fe9db5501d5552530d990a38b9758057 25-Sep-2012 Jean-Baptiste Queru <jbq@google.com> am c68accd3: Merge into jb-mr1-dev

* commit 'c68accd35e9ee0a49172ef144664f0fe9187ccd7':
Add extra error check when eglCreateContext fails Bug #7216919
ef09a210dd6ea481158b7028ec2424a7f5769ed2 25-Sep-2012 Romain Guy <romainguy@google.com> Don't destroy the same texture twice
Bug #7221449

SurfaceTexture already deletes the GL texture when detachFromContext
is invoked. The newly introduced refcount would casue the Layer
object to be destroyed later and attempt to delete the GL texture
again. By the time the second cleanup occurs, the texture name
might have been reused by somebody else, resulting in erroneous
behaviors.

Change-Id: I257c589fea64b34c00f46fbfaa7732e6854a5e41
LES20Canvas.java
LES20Layer.java
LES20TextureLayer.java
ardwareLayer.java
extureView.java
4bbcc6549738f3d69831b2bd9eb4accec3e9920e 24-Sep-2012 Eric Laurent <elaurent@google.com> Display a fixed volume silder when docked.

Align UI indication to volume policy when docked: the music volume
cannot be adjusted when docked or connected to HDMI. Display
a disabled slider at max volume in this case to be consistent.

Bug 4335692.

Change-Id: I6f8db143b0e2ecf54e4bdacd88afdeb661a98a18
olumePanel.java
ed1b6f4fc0af836624b2edc2830eb918bf04cf3c 25-Sep-2012 Romain Guy <romainguy@google.com> Really Trigger the log when EGL_NO_CONTEXT is returned by eglCreateContext
Bug #7216919

Change-Id: Ie4a855ee51a0a4fad69bae8f377189d0c653f543
ardwareRenderer.java
c002936e4bd042db3024202b3e9696835a730cfa 25-Sep-2012 Romain Guy <romainguy@google.com> Trigger the log when EGL_NO_CONTEXT is returned by eglCreateContext
Bug #7216919

Change-Id: If2059227d55e8ddb2d2673ee36029c3c92dd9a3d
ardwareRenderer.java
ec1996131d2e17408a22fd55fbc3edba5ea80d02 25-Sep-2012 Jean-Baptiste Queru <jbq@google.com> Merge into jb-mr1-dev

Change-Id: I97ff2551b36a1b590f2d314cabfcf198dd10f404
c68accd35e9ee0a49172ef144664f0fe9187ccd7 25-Sep-2012 Jean-Baptiste Queru <jbq@google.com> Merge into jb-mr1-dev

Change-Id: Icd17d762c9d8e96ea6b78b18fa8f66471bc694ae
0c3df4308d13fd4d5951cdb63eff0700df19ed51 25-Sep-2012 Romain Guy <romainguy@google.com> am d38bc618: am eea774a1: Merge "Really Trigger the log when EGL_NO_CONTEXT is returned by eglCreateContext Bug #7216919" into jb-mr1-dev

* commit 'd38bc618bc0e55e52f0575f51f145dcfec1c983b':
Really Trigger the log when EGL_NO_CONTEXT is returned by eglCreateContext Bug #7216919
eea774a1f65c91db1caa12a32e554813f4aef434 25-Sep-2012 Romain Guy <romainguy@google.com> Merge "Really Trigger the log when EGL_NO_CONTEXT is returned by eglCreateContext Bug #7216919" into jb-mr1-dev
bf3e77d46d700604eca779865dca9166a6cdc316 25-Sep-2012 Romain Guy <romainguy@google.com> Really Trigger the log when EGL_NO_CONTEXT is returned by eglCreateContext
Bug #7216919

Change-Id: Ie4a855ee51a0a4fad69bae8f377189d0c653f543
ardwareRenderer.java
8c549d6ffec427ed3f8f99eb25ffefaf55003893 25-Sep-2012 Philip Milne <pmilne@google.com> Merge "Bug #6110465. Optical bounds support for all ViewGroup subclasses."
eebe0267f4116e6f573455311c5776e3631c7cbc 25-Sep-2012 Romain Guy <romainguy@google.com> Merge "Trigger the log when EGL_NO_CONTEXT is returned by eglCreateContext Bug #7216919" into jb-mr1-dev
fb9e6cc27522df424447e3c65c53e2adc0a808e3 25-Sep-2012 Romain Guy <romainguy@google.com> Trigger the log when EGL_NO_CONTEXT is returned by eglCreateContext
Bug #7216919

Change-Id: If2059227d55e8ddb2d2673ee36029c3c92dd9a3d
ardwareRenderer.java
c5a2b1a6f30e136dedea1224dee442635c767dde 25-Sep-2012 Jeff Brown <jeffbrown@google.com> Merge changes I8d743b5d,I4ef74691,I21ddb990 into jb-mr1-dev

* changes:
Fix surface view on secondary display.
Fix drag and drop surfaces on secondary displays.
Allow a window on a secondary display to have focus.
dd6d7841fd8e4a8211ca44641d3e4677136f685e 25-Sep-2012 Romain Guy <romainguy@google.com> Merge "Add extra error check when eglCreateContext fails Bug #7216919" into jb-mr1-dev
4c7dc4aa5c6c155d7756ad40befc931fc0719976 25-Sep-2012 Romain Guy <romainguy@google.com> Add extra error check when eglCreateContext fails
Bug #7216919

Change-Id: I322cbe4579d7a4eb2a64d288175e145d0badc857
ardwareRenderer.java
8d0243a3d0269d3a57d90eb2e7b12b41f53b27d9 25-Sep-2012 Jeff Brown <jeffbrown@google.com> Fix surface view on secondary display.

Bug: 7183618
Change-Id: I8d743b5db8f362afb97f720846d990f9a722b3bd
urfaceView.java
793d9abb892ea8e2c6714f08fda1520450c9b581 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am c86c9fc0: am f7a3e979: Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev

* commit 'c86c9fc092280cb961bf46e87050da9c46836278':
Fix bug #6427629 Clean up layout direction APIs
c60a19e36880ad2f01b515e20ce050742d29f2b7 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am 402bab75: am be4c5dd9: Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev

* commit '402bab75c360fd038910b3baedff54a1f4762c3d':
Fix bug #6427629 Clean up layout direction APIs
525926078b5f4b9eeceb21662cdebe763f4c5b45 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am 72d65718: am 239e4305: Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev

* commit '72d657182312c7bac049b3ed94a4658c3935ae28':
Fix bug #6427629 Clean up layout direction APIs
42f11c981c0666a988fc9a5e1a0d78a0a8d5a5b1 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am c81a319f: am e3f2ac9e: Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev

* commit 'c81a319f1a2834590f1b7e5cfed0bbdba49d0838':
Fix bug #6427629 Clean up layout direction APIs
749bbe97ee775fb997df0270f0f9fc7470efb4f6 24-Sep-2012 Dianne Hackborn <hackbod@google.com> am 55fd212f: am c0e1f268: Merge "Fix issue #7184877: Calendar Locksceen Widget crashes and forces phone to reboot" into jb-mr1-dev

* commit '55fd212f914a28d0a64202a09f0127fa0a1b4175':
Fix issue #7184877: Calendar Locksceen Widget crashes and forces phone to reboot
d2926e4a251ba136977bf546dac40d2467023a46 24-Sep-2012 Romain Guy <romainguy@google.com> am 454f2be1: am 8e586f61: Merge "Add support for a new developer setting: overdraw debugging" into jb-mr1-dev

* commit '454f2be11f028b49d28154103996a3e71e935272':
Add support for a new developer setting: overdraw debugging
d865a54841b97a4bcc6404b1b35c5efc48f995f3 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am f7a3e979: Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev

* commit 'f7a3e979a7ab3be4715408b6328f27e56a7c9326':
Fix bug #6427629 Clean up layout direction APIs
3e276b99665e73595486bdd77e199172b02ff84a 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am be4c5dd9: Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev

* commit 'be4c5dd9d0b3ec1e020431f0e618a4cf38f9c57d':
Fix bug #6427629 Clean up layout direction APIs
8f3ba9fa1b83ca007f6546bbc51d932707b339c9 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am 239e4305: Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev

* commit '239e430578fd2d3bd38a646595a82bca95359bd7':
Fix bug #6427629 Clean up layout direction APIs
16c84db7065d6eb56fbbec987881092c32d2e460 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am e3f2ac9e: Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev

* commit 'e3f2ac9e526e5b4de4d2ae113e644c1cb14b1ce6':
Fix bug #6427629 Clean up layout direction APIs
a611a53292049e070f39f5d98092a06415f4e6ec 24-Sep-2012 Dianne Hackborn <hackbod@google.com> am c0e1f268: Merge "Fix issue #7184877: Calendar Locksceen Widget crashes and forces phone to reboot" into jb-mr1-dev

* commit 'c0e1f268451550368d1d3d3558f8ce2459ed5713':
Fix issue #7184877: Calendar Locksceen Widget crashes and forces phone to reboot
b29e4a20a5bb623a95bf8715897cc45845ac5268 24-Sep-2012 Romain Guy <romainguy@google.com> am 8e586f61: Merge "Add support for a new developer setting: overdraw debugging" into jb-mr1-dev

* commit '8e586f61dd4f7fa53b01e63ac779ffc7cde05bdd':
Add support for a new developer setting: overdraw debugging
412201a94449dde22b6f21ffe0684bdbd33e62c9 24-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> am 631b6380: am 0a5c5567: Merge "Multi-user support for the accessibility layer." into jb-mr1-dev

* commit '631b63804e448d5a29e4089a1ad1804cf0279480':
Multi-user support for the accessibility layer.
d571122db5b3dabf135a7cfb78f1a8e385e4e5c4 24-Sep-2012 Jeff Brown <jeffbrown@google.com> am 1022a785: am 3ca59713: Merge "Support HDMI hotplug." into jb-mr1-dev

* commit '1022a785e52384dc8503127df1ceaababcd88a1a':
Support HDMI hotplug.
f7a3e979a7ab3be4715408b6328f27e56a7c9326 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev
1a7d487380460b4aea37140baf6bf4bf7f92f8a5 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6427629 Clean up layout direction APIs

- rename getResolvedTextAlignment() to getTextAlignment()

Change-Id: I6a2b6c9ec4f5cea1adde46e35d5f3c49880791ee
iew.java
iewGroup.java
be4c5dd9d0b3ec1e020431f0e618a4cf38f9c57d 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev
97e146cf02f87b91f81c37d53644e5415efddb72 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6427629 Clean up layout direction APIs

- rename getResolvedTextDirection() to getTextDirection()

Change-Id: Id2a6025daf5521dcd676e454fc6bb9955fdccf2d
iew.java
iewGroup.java
239e430578fd2d3bd38a646595a82bca95359bd7 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev
e3f2ac9e526e5b4de4d2ae113e644c1cb14b1ce6 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #6427629 Clean up layout direction APIs" into jb-mr1-dev
e56ffdc7b31b0937628609cc3bbaa15879023569 23-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6427629 Clean up layout direction APIs

- rename getResolvedLayoutDirection() to getLayoutDirection()

Change-Id: I3afe56c0db0751952f5056c23893cb7455531d29
iew.java
iewGroup.java
4457e85a7090ad51726d50a4daf981d917cceedd 19-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6427629 Clean up layout direction APIs

- canResolveXxx() should be hidden
- resetResolvedXxx() should be hidden
- resolveDrawables(), resolveLayoutDirection(), resolvePadding(), resolveTextAlignment(), resolveTextDirection() should be hidden
- onResolvedXxx() should be merged into one callback
- fix also an issue with setting the layout direction of the drawable in ImageView
- fix also an issue with checking if TextAlignment can be resolved

Change-Id: I1402269ddf8632525f5550f80e5610e1a7b4034d
iew.java
iewGroup.java
c0e1f268451550368d1d3d3558f8ce2459ed5713 23-Sep-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #7184877: Calendar Locksceen Widget crashes and forces phone to reboot" into jb-mr1-dev
3b84206bba19ae2bc9decef6a88f97951c2a205c 23-Sep-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7184877: Calendar Locksceen Widget crashes and forces phone to reboot

Don't kill the system uid if we are running out of RAM.

Change-Id: Ie1818a3241fc80d4dfa19f8e8bdad22d164d7baa
iewRootImpl.java
8e586f61dd4f7fa53b01e63ac779ffc7cde05bdd 22-Sep-2012 Romain Guy <romainguy@google.com> Merge "Add support for a new developer setting: overdraw debugging" into jb-mr1-dev
7c450aaa3caac2a05fcb20a177483d0e92378426 22-Sep-2012 Romain Guy <romainguy@google.com> Add support for a new developer setting: overdraw debugging

Change-Id: I350ba4486577c3289f82c20938f7a35138778727
ardwareRenderer.java
31a2b8c7bfe0401a3b8c6250cf3ea43693362f92 22-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> am 0a5c5567: Merge "Multi-user support for the accessibility layer." into jb-mr1-dev

* commit '0a5c5567f2d7e203d95c80a8d3353d0acd98b5f9':
Multi-user support for the accessibility layer.
919a4cdfe24ef4c1bdc9e6b87b0ee7604f2893f6 22-Sep-2012 Jeff Brown <jeffbrown@google.com> am 3ca59713: Merge "Support HDMI hotplug." into jb-mr1-dev

* commit '3ca5971339c7eba61388aa3e26a1b3d02c5ccdf6':
Support HDMI hotplug.
18c166bcd68a141d932717b8d3abd863093d7c50 22-Sep-2012 Romain Guy <romainguy@google.com> am 3f7c246f: Merge "Update layers in a single batch at the beginning of a frame Bug #7186819" into jb-mr1-dev

* commit '3f7c246f3ea85af9fb98cba37387bb55658d4614':
Update layers in a single batch at the beginning of a frame Bug #7186819
0a5c5567f2d7e203d95c80a8d3353d0acd98b5f9 22-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Multi-user support for the accessibility layer." into jb-mr1-dev
58d37b55bd228032355360ea3303e46a804e0516 18-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> Multi-user support for the accessibility layer.

1. This change converts the accessibility manager service to
maintain a state per user. When the user changes the services
for the user that is going away are disconnected, the local
accessibility managers in the processes for this user are
disabled, the state is swapped with the new user's one, and
the new user state is refreshed.

This change updates all calls into the system to use their
user specific versions when applicable. For example, regisetring
content observers, package monitors, calls into other system
services, etc.

There are some components that are shared across users such
as UI created by the system process and the SystemUI package.
Such components are managed as a global state shared across
all users and are updated accordingly on a user switch. Since
the SystemUI is running in a normal app process this change
adds hidden APIs on the local window manager to allow the
SystemUI to notify the accessibility layer that it will run
accross users.

Calls to AccessibiltyManager's isEnabled(), isTouchExplorationEnabled()
and sendAccessibilityEvent return false or a are a nop for a
background user sice he should not send accessibility events,
and should not perform touch exploration.

Update the internal accessibility tests due to changes in the
AccessibilityManager.

This change also fixes several issues that were encountered
such as calling out the accessibility manager service with a
lock held.

Removed some incorrect debugging code from the TouchExplorer
that was leading to a system crash.

bug:6967373

Change-Id: I2cf32ffdee1d827a8197ae4ce717dc0ff798b259
ccessibility/AccessibilityManager.java
ccessibility/IAccessibilityManager.aidl
e87bf030766198bf5e1fe846167dba766e27fb3f 21-Sep-2012 Jeff Brown <jeffbrown@google.com> Support HDMI hotplug.

Bug: 7206678
Change-Id: Ia5212b16658a5f5a2ccf8528eca7bebd45ca857a
horeographer.java
isplayEventReceiver.java
7b7578184567f4e4f0740ce935cc192765410cca 20-Sep-2012 Philip Milne <pmilne@google.com> Bug #6110465. Optical bounds support for all ViewGroup subclasses.

This CL generalizes the optical bounds support previously contained in the
GridLayout implementation and then incorporates the new form directly into
the base View and ViewGroup implementations. After this change, GridLayout is
returned to an 'optical bounds' unaware state, and all layouts (including non-platform
ones) inherit the ability to perform their layout operation by optical (rather than clip)
bounds using their existing implementations.

The "layoutMode" property of ViewGroup and its associated constants are
made public in this CL.

Change-Id: Ic1bba0e1c6fc14da4aeab0b28c975d562b5f82dd
iew.java
iewGroup.java
01143c16bbb6b742ce3159f7f15bf645eee76d28 21-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am 8da91a69: Merge "Fix bug #7205072 Text inside popup window is too close to the edge" into jb-mr1-dev

* commit '8da91a699cefccb8d9abf2b72221bc8c1f1874fc':
Fix bug #7205072 Text inside popup window is too close to the edge
41da58338f91ea821969c45e4ffedbdf389d1368 21-Sep-2012 Eric Laurent <elaurent@google.com> am 6730c3c6: Merge "Fix safe volume warning message flickering" into jb-mr1-dev

* commit '6730c3c69f84d799198365e0692b79be72b0eeb7':
Fix safe volume warning message flickering
7fdf367d7ad63c90c13ddf553d05f58030454191 21-Sep-2012 Romain Guy <romainguy@google.com> am 0b697061: am 3f7c246f: Merge "Update layers in a single batch at the beginning of a frame Bug #7186819" into jb-mr1-dev

* commit '0b69706103dc6ddf765fa2e86265a6428f6728bb':
Update layers in a single batch at the beginning of a frame Bug #7186819
11cb642756093a4af901b1525375b1eb2b5c3e2b 21-Sep-2012 Romain Guy <romainguy@google.com> Update layers in a single batch at the beginning of a frame
Bug #7186819

Change-Id: Ice5926dfedfb3be3a3064e65008dafa2852407da
LES20Canvas.java
LES20RenderLayer.java
LES20TextureLayer.java
ardwareCanvas.java
ardwareLayer.java
ardwareRenderer.java
iew.java
iewRootImpl.java
69235be49312dcf2b6c3181a27509259a18d553a 21-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> am eedda1d1: am 8da91a69: Merge "Fix bug #7205072 Text inside popup window is too close to the edge" into jb-mr1-dev

* commit 'eedda1d1c66c736b68027c452402292edef4d4ae':
Fix bug #7205072 Text inside popup window is too close to the edge
116ad7480882ba95cbc49ea5258cb878a56aaac2 21-Sep-2012 Eric Laurent <elaurent@google.com> am 2af42833: am 6730c3c6: Merge "Fix safe volume warning message flickering" into jb-mr1-dev

* commit '2af4283374015d2d44433e628259f94a53e111e9':
Fix safe volume warning message flickering
8da91a699cefccb8d9abf2b72221bc8c1f1874fc 21-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7205072 Text inside popup window is too close to the edge" into jb-mr1-dev
3e27c34e0ef0563be9ee14ca9fc80cf6adabdd70 21-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7205072 Text inside popup window is too close to the edge

- if targetSDK is pre JB-MR1 then we really need to use the User padding
when it is defined and valid

Change-Id: If416fbc181b8784de446e9171529147ab03c9373
iew.java
b4641b5cd45331102c831635dd1856c35e1ba6e0 21-Sep-2012 Justin Koh <justinkoh@google.com> Merge "Converts hover touch events to trackball events" into jb-mr1-aah-dev
0516a9ecb0d4d76acd2f1c4c2521f44c696789a8 19-Sep-2012 Eric Laurent <elaurent@google.com> Fix safe volume warning message flickering

Do not display a new warning message when one is already showing.

Bug 7064975.

Change-Id: I920656c6d742a969c29e8f42a438ecbc794d1114
olumePanel.java
f53b3cfa0cdbed74f1a62db4d7774cb2a32abb95 20-Sep-2012 Romain Guy <romainguy@google.com> am 3c117db2: am 4c97ef90: Merge "Add support for QCOM_tiled_rendering Bug #7186819" into jb-mr1-dev

* commit '3c117db2aaac083a2802b62bb8ce15f87cd788c2':
Add support for QCOM_tiled_rendering Bug #7186819
7e5b586a26603e3f59881789bf7dfd8e8a76b92c 20-Sep-2012 Jeff Sharkey <jsharkey@android.com> am 4747d052: am 4e7b551f: Merge "Move HAS_TRANSIENT_STATE flag into a safe area." into jb-mr1-dev

* commit '4747d0520035dab151e71d839fee898c3f8dd8ae':
Move HAS_TRANSIENT_STATE flag into a safe area.
971405797f1131d69cb77ac449e66ac4a6276100 13-Sep-2012 Chet Haase <chet@google.com> Handle requestLayout() calls during layout

Calling requestLayout() during a layout pass is inadvisable, but
happens often enough in applications (especially when it occurs in
very indirect means that the application may not easily be able to
control) that we need to handle the situation without breaking. In particular,
applications that have run across this problem have had artifacts which are
difficult to debug (like things just not showing up on the screen) and
also difficult to fix. One of the side-effects of the problem is that it
leaves the view hiearchy in an unpredictable state where some views have
requested layout and are waiting to be layed out while the root view has
not received those requests, so it is never calling layout on those views.

The fix is to try to do the 'right' thing, while avoiding getting into
an inifinite loop (which could result from calling layout, which calls requestLayout(),
which causes another layout, which ...). The solution is two-tier: we handle
all requests that happen during layout by delaying them until after the current
layout is done. We then process those requests and call layout again.
If we receive more requests during that second layout, we post them to the
next frame, to allow us to finish the current one.

Issue #7155974 handle requestLayout() during layout more robustly

Change-Id: I9d13c405be28a19c86add22210e69817ddddaf8b
iew.java
iewRootImpl.java
4c97ef9094f7a52dbc983ed12ce5f3b586f2d769 20-Sep-2012 Romain Guy <romainguy@google.com> Merge "Add support for QCOM_tiled_rendering Bug #7186819" into jb-mr1-dev
2b7028eabac80cec170572bc0e945a1d4224e595 20-Sep-2012 Romain Guy <romainguy@google.com> Add support for QCOM_tiled_rendering
Bug #7186819

This optional OpenGL extension can be used by tiled renderers to optimize
copies from main memory to tiles memory.

Change-Id: Id4a5d64e61ad17f50e773e8104b9bf584bb65077
ardwareRenderer.java
36901b6c6029b561b4600916cbacc57d4e933703 20-Sep-2012 Jeff Sharkey <jsharkey@android.com> Move HAS_TRANSIENT_STATE flag into a safe area.

Previously, this flag conflicted with other text direction flags,
which can cause weird interactions across the View hierarchy,
specifically with ListView.

Also adds dumpFlags() utility to dump values of all know flags for
documentation and sanity checking.

Bug: 7189738
Change-Id: Iceb2f93f68a800e19a5889ced93abcce4932b067
iew.java
52716deb4008da1d566dfd711edc0a9c6de5f79f 19-Sep-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix deadlock in LockPatternUtils by using local id." into jb-mr1-dev
f1b674197577e815040cd75ef86d611965d603ad 19-Sep-2012 Craig Mautner <cmautner@google.com> Fix deadlock in LockPatternUtils by using local id.

Activity manager now updates window manager's current user id
directly and immediately rather than waiting for a broadcast
update. Window manager passes this through policy to the
KeyguardViewMediator and into LockPatternUtils. LockPatternUtils
no longer goes to Activity to get the current user id if it finds
that its local id is non-default.

Fixes bug 7193726.

Change-Id: Id5613e7a9fe9e5b49e83c26b74504f587c3998c2
indowManagerPolicy.java
072533e934e759b95228ba61152e7d958b641b96 19-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7146516 Padding can be "over" resolved" into jb-mr1-dev
efa568525fc7755ac49e44e75246b2be1ef5269f 19-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix some typos in Javadoc for Accessibility APIs" into jb-mr1-dev
69542e48c3ee35f116431c2eb64a8db3073c9f8e 19-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix some typos in Javadoc for Accessibility APIs

Change-Id: Ie3ca20e1c3bb11fb59bd7dcaed9ea92be320b3eb
iew.java
98c370e71d93ed2704018e2bc3455f00c08821a9 19-Sep-2012 Adam Powell <adamp@google.com> Merge "Make invalidateOptionsMenu asynchronous" into jb-mr1-dev
4b6d93fd0485b46a3a15a71516d39b4f72d9b3db 19-Sep-2012 Adam Powell <adamp@google.com> Make invalidateOptionsMenu asynchronous

Process any pending menu invalidations on the animation tick, before
traversals are performed. Collapse multiple menu invalidations
together.

Bug 7189372

Change-Id: I7a33ae9813980eb8fbcc958804de2c03328ecca8
indow.java
9ffc6047f14883f853b643a2913bd590995b9031 19-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7173155 API REVIEW: android.view.View" into jb-mr1-dev
c11f77fbae8391ca3c2d3ec93d024cba0be5cf55 19-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7173155 API REVIEW: android.view.View

- remove getFocusRect(Rect) as it was redundant
- fix Javadoc

Change-Id: I3784c4b0a38770cba5d3ba09196f9271050a3c20
ocusFinder.java
iew.java
dc4b5037a33956b3b04a45a24ef272e81eeb5438 10-Sep-2012 Ben Pietrzak <bpietrzak@google.com> Converts hover touch events to trackball events

Change-Id: Ibb843fcc0c525250a775d3b3567f8ca964f525c0
imulatedTrackball.java
iewRootImpl.java
20586fa0353f63453766140b32a4778793ce2b43 18-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7173351 API REVIEW: android.util.LocaleUtil" into jb-mr1-dev
dbed514e137de66d19050b72ad941a687e13c9d4 18-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7172699" into jb-mr1-dev
d3d9f3f1004dfee2649a26cfe8dba948cd364904 18-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7173351 API REVIEW: android.util.LocaleUtil

Change-Id: I08fd491eff714059e9ec874fadebe7eb556c34d5
iew.java
49b0a9b4705d869f05a57ed3acf42ba5652294b2 18-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7172699

- remove @link as we are already using a @see which is doing a link by itself

Change-Id: I6ff6979bb2d960c3c980cdf0a88885b92e80fd7f
ravity.java
iew.java
21dfd7c5fe9e42d2ef3ac7423065c86dfe8f29da 18-Sep-2012 Eric Laurent <elaurent@google.com> Merge "Update headphone volume safety warning message." into jb-mr1-dev
740ee65d460401c266a7108c9aa4c6e7fbe58489 18-Sep-2012 Romain Guy <romainguy@google.com> Add extra EGL error checking

Change-Id: I7cacef41ed08118c5eecf674e3d8461473692968
ardwareRenderer.java
b6397c71709d9129c889028e89899789c667c339 18-Sep-2012 Eric Laurent <elaurent@google.com> Update headphone volume safety warning message.

Change-Id: Ic2d5d9d247b76b6ede0f90b861c235c1c0f5dc08
olumePanel.java
603f6de35f21d74ae242d52d501f4f5c25ff4f4c 15-Sep-2012 Chet Haase <chet@google.com> Fix occasional crash bug with layers

Launcher occasionally crashes with a stack trace indicating that the memory
of a Layer object is corrupt. It is possible for us to delete a Layer
structure and then, briefly, use it to draw a DisplayList again before
that DisplayList gets recreated (without the layer that got deleted).

When this happens, if the memory got corrupted, it's possible to crash.

The fix is to add Layer to the other objects which we currently refcount
(bitmaps, shaders, etc.). Then instead of deleting a Layer, we decrement the
refcount. We increment when creating it, then increment it again when it's
referenced from a DisplayList. Then we decrement the refcount instead of
deleting it, and decrement when we clear a DisplayList that refers to it.
Then when the refcount reaches 0, we delete it.

Issue #6994632 Native crash in launcher when trying to launch all apps screen

Change-Id: I0627be8d49bb2f9ba8d158a84b764bb4e7df934c
LES20Canvas.java
LES20RenderLayer.java
LES20TextureLayer.java
ardwareLayer.java
iew.java
iewRootImpl.java
39a37c3bb3d21c119cca536f85c298db805f86cd 17-Sep-2012 Eric Laurent <elaurent@google.com> Merge "headphone volume limitation" into jb-mr1-dev
c34dcc1e1ebf152bb400abbb8bc25f7dc0c3ba97 10-Sep-2012 Eric Laurent <elaurent@google.com> headphone volume limitation

Limit music volume when headphones or headset are inserted.
Display warning message when user wants to increase the volume
above a platform specific volume and request user acknowledgement
before proceeding.

TODO: exact wording of the warning message must be defined by UX.

Change-Id: I00f429f602534c6d8783126b929371c4d432e6e2
olumePanel.java
b1861c3e89c3e869c95c5c01b78320a1dcef26ad 16-Sep-2012 Adam Powell <adamp@google.com> Minor fixes/clarifications for previous patch.

Change-Id: Ib44f6de570064b3f3ddf70b6727b479a09ae5d7a
caleGestureDetector.java
828e56ea6e8f4d5aa650052580f1f7873ad8296d 15-Sep-2012 Adam Powell <adamp@google.com> Squish!

Take touch point size into account during the detection of scaling
gestures. Average together the major/minor axes of the size.

Add a config resource for tuning the minimum span requred to begin
(or end) a scale. This may be altered in a device-specific overlay
for devices that deviate too far from their assigned density bucket.

Change-Id: I2986888e9427a7e4cb56717d59c4fa7858ba9ca7
caleGestureDetector.java
77276b60851a158ad3e142cb3b091d57ae5ceffb 14-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> Adding accessibility events for touch and gesture detection states.

1. Currently the system fires accessibility events to announce the
start and end of a touch exploration gesture. However, such a
gesture starts after we have decided that the user is not
performing a gesture which is achieved by measuring speed of
movement during a threshold distance. This allows an accessibility
service to provide some feedback to the user so he knows that
he is touch exploring.

This change adds event types for the first and last touches
of the user. Note that the first touch does not conincide with
the start of a touch exploration gesture since we need a time
or distance to pass before we know whether the user explores
or gestures. However, it is very useful for an accessibility
service to know when the user starts to interact with the
touch screen so it can turn the speech off, to name one
compelling use case.

This change also provides event types for the start and end
of gesture detection. If the user has moved over the threshold
with a speed greater than X, then the system detects gestures.
It is useful for an accessibility service to know the begin
and end of gesture detection so it can provide given feedback
type for such a gesture, say it may produce haptic feedback
or sound that differs for the one for touch exploration.

The main benefit of announcing these new events is that an
accessibility service can provide feedback for each touch
state allowing the user to always know what he is doing.

bug:7166935

Change-Id: I26270d774cc059cb921d6a4254bc0aab0530c1dd
ccessibility/AccessibilityEvent.java
2dc6af2082b93849b2e5519a8ae7504757286aa9 14-Sep-2012 Jeff Brown <jeffbrown@google.com> Merge "Fixup a comment." into jb-mr1-dev
565f0425ba60ced217ebe44422a1f2b2c62e2850 14-Sep-2012 Jeff Brown <jeffbrown@google.com> Fixup a comment.

Change-Id: I7b73f7e0f0aa903e5cd02d1cdb678e65a6d40e0c
isplay.java
f84208faf8e9ab7bbf81224006662fc3219c6ad4 14-Sep-2012 Romain Guy <romainguy@google.com> Prevent crash when invalidating all Views
Bug #7165793

A ViewRootImpl's root view can be null. Check for this condition to
prevent an NPE invalidateWorld(). Other messages perform a similar
check to properly handle the case where mView == null.

Change-Id: I5bcfc41c48a469d38b21be74df2f6c715b0f9352
iewRootImpl.java
33aef98fd28dcac0a2ad37e7329afd3e666f5e0a 13-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> Allowing association between a view and its label for accessibility.

1. For accessibility purposes it is important to be able to associate
a view with content with a view that labels it. For example, if
an accessibility service knows that a TextView is associated with
an EditText, it can provide much richer feedback.

This change adds APIs for setting a view to be the label for another
one and setting the label for a view, i.e. the reverse association.

bug:5016937

Change-Id: I7b837265c5ed9302e3ce352396dc6e88413038b5
iew.java
ccessibility/AccessibilityNodeInfo.java
83835b17f259fc38478c72b7f59b14796bbc622a 14-Sep-2012 Adam Powell <adamp@google.com> Merge "Break flings with opposing velocities" into jb-mr1-dev
cd66359ab9d072b18631276ee4431b2e689a870b 11-Sep-2012 Adam Powell <adamp@google.com> Break flings with opposing velocities

Change-Id: Iafab692997ad7c2cbbf02d786a716e6edb6475a7
estureDetector.java
cdfc56a3872f6bae7c43aedd5c718c5fa3fbdf9d 14-Sep-2012 Jeff Brown <jeffbrown@google.com> Merge "Add preliminary API for reporting display capabilities." into jb-mr1-dev
dcd8c81bf4beb719888b6be1b9418303c9075938 13-Sep-2012 Craig Mautner <cmautner@google.com> Merge "Propagate systemUiVisibility changes to window manager" into jb-mr1-dev
7eac0f557cd87486d0f10b7c72e25aeb195a4351 13-Sep-2012 Craig Mautner <cmautner@google.com> Propagate systemUiVisibility changes to window manager

The mAttachInfo.mSystemUiVisibility value was changing in
View.dispatchAttachedToWindow but
mAttachInfo.mRecomputeGlobalAttributes was not being set.
Consequently ViewRootImpl.collectViewAttributes was returning
without updating the subtreeSystemUiVisibility. This is fixed
by calling needGlobalAttributesUpdate in dispatchAttachedToWindow.

WIthin ViewRootImpl.collectViewAttributes the assignment to
subtreeSystemUiVisibility was only being made if
mAttachInfo.mSystemUiVisibility was changed within
collectViewAttributes. But mAttachInfo.mSystemUiVisibility
was changing outside of collectViewAttributes in
dispatchAttachedToWindow. Consequently subtreeSystemUiVisibility
was never updated. By looking for a mismatch between
subtreeSystemUiVisibility and mSystemUiVisibility
subtreeSystemUiVisibility gets assigned whenever it is out of
sync.

Fixes bug 7091817.

Change-Id: I1e97a7dec14dc9594876175ae26370fb9030a8a6
iew.java
iewRootImpl.java
c5df37c285221d0fb113f55b9e78b35632241d3f 13-Sep-2012 Jeff Brown <jeffbrown@google.com> Add preliminary API for reporting display capabilities.

Change-Id: Ie18dce5b5d130f9a7cdfca08cddbf9b099312277
isplay.java
isplayInfo.java
bbbb154c8986f5c731f159ec6d043945b896183b 13-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix Javadoc spelling" into jb-mr1-dev
3c78702db58af95b71b87c356f8fb0f95f3b70a7 13-Sep-2012 Dianne Hackborn <hackbod@google.com> Merge "Maybe fix issue #7146119: exception in FragmentManager" into jb-mr1-dev
61a21770b789ad87b5ed5da3565d0d39939fdd5c 13-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix Javadoc spelling

Change-Id: I93685d3d092ce5e16bfa0e65e11d85ae030f3f29
iewGroup.java
b967464049d7a75face9237a89903342c4724f8a 12-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Enforce encapsulation for MarginLayoutParams startMargin and endMargin" into jb-mr1-dev
a40627daee4891ab842fa509af254b349bff3a47 12-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Enforce encapsulation for MarginLayoutParams startMargin and endMargin

Change-Id: Ibaf5ade22612dfa52173978e4b520a6407162d13
iewGroup.java
7e7786a4d11351519d8047cd60f59a43d460ee9e 11-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7146516 Padding can be "over" resolved

- need to cache the initial User padding and use it for restoring
to the initial state of padding before doing padding resolution

Change-Id: I4efdaea7ba21930537bf5032e80e70d70bf38b5b
iew.java
8d5e6f8d4a2bd39c6656cbac4f963d2527d707bf 11-Sep-2012 Dianne Hackborn <hackbod@google.com> Maybe fix issue #7146119: exception in FragmentManager

Seems like we should never be dispatching input events to windows
that currently don't have focus.

Change-Id: I524796df69f3fdda4147cb37e7b85b79bad88762
iewRootImpl.java
0bb4d078afeadf4996240d0ac41514c28e5f795a 12-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Screen magnifier should handle window rebuilds correctly." into jb-mr1-dev
9b4125e435b6bc8f8bd2f6e569d9b0b296ab16ef 12-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> Screen magnifier should handle window rebuilds correctly.

1. The way for computing the magnified region was simplistic and
incorrect. It was ignoring window layering resulting in broken
behavior. For example, if the IME is up, then the everything else
is magnifed and the IME not. Now the keyguard appears and covers
the IME but the magnified region does not expand while it would
since the keyguard completely covers the not magnified IME window.

bug:7138937

Change-Id: I21414635aefab700ce75d40f3e913c1472cba202
indowInfo.java
9ba2a188919e6e5bf8c042b26527fc090de677ef 11-Sep-2012 Jeff Brown <jeffbrown@google.com> Merge changes I4ad08873,If0562677,I5fe6ba32 into jb-mr1-dev

* changes:
Don't auto-discover peers until scan requested.
Use wfdInfo to filter available sinks.
Allow adb shell am display-size to use bigger sizes.
c574fd04cc192fa30af5dd065c5d0cd4c50f8db4 11-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Fixing implementation of View.requestRectangleOnScreen(Rect, boolean)." into jb-mr1-dev
ee6c6ae5b2111bbb602dbc8030ba3c8eb014cc6e 11-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> Fixing implementation of View.requestRectangleOnScreen(Rect, boolean).

1. The implementation was not taking into account the transformation
matrices if the views.

2. The rectangle that was passed as an argument to
ViewParent.requestChildRectangleOnScreen was modified by
some implementations - now care is taken to prevent it.

3. The scroll of child was used when a rectangle of its coordinate
system was mapped to one in the parent system. However, the
scroll shows how much a parent has scrolled its descendants, so
the scroll of the parent has to be used not the child.

bug:7139556

Change-Id: I5b09eb7f105047e95282f74308968d5465831c84
iew.java
9d9ece3c1e16001b63244459cdf4b428f4272d2e 11-Sep-2012 Dianne Hackborn <hackbod@google.com> Animations for user switching.

The window manager now has a facility to provide a full-screen
animation, which the activity manager uses every time a user
switch happens.

The current animation is just a simple dumb slide until we get
a design from UX.

Also some cleanup: moved the portrait task animations to the
default config so we always have an animation for them, and finally
got the java symbol stuff out of public.xml.

Change-Id: I726f77422b2ef5f2d98f961f8da003e045f0ebe8
WindowManager.aidl
nimation/RotateAnimation.java
43aa15912891930833edfc101615a9c881de54a1 11-Sep-2012 Jeff Brown <jeffbrown@google.com> Allow adb shell am display-size to use bigger sizes.

We now support scaling the logical display to fit the
physical display, whatever size it is. So we can allow
adb shell am display-size to use more or less arbitrary sizes
although we do enforce an upper and lower bound to
protect the user.

Change-Id: I5fe6ba32ad1f9e4fbcd6915f7d36850b987bbcc0
WindowManager.aidl
d7f5a51baf2c46436dc5bac3807fb0d46cbff304 10-Sep-2012 Victoria Lease <violets@google.com> Merge "IME support for trackball and generic motion events" into jb-mr1-dev
b38070caa5143ab9fd1883e0c7c879533a480bc7 24-Aug-2012 Victoria Lease <violets@google.com> IME support for trackball and generic motion events

Trackball and generic motion events now pass through the IME in case
it would like to handle them before passing them on to the view
hierarchy.

While I was at it, I also...
...fixed the documentation on InputMethodService.onKeyUp()
...added documentation to InputMethodService.onTrackballEvent()
...added trackball and generic motion events to the "input" command
...fixed input consistency verification involving ACTION_OUTSIDE

Bug: 7050005
Change-Id: I40ab68df4a9542af6df25de6ec2ec500e4c02902
nputEventConsistencyVerifier.java
iewRootImpl.java
nputmethod/InputMethodManager.java
nputmethod/InputMethodSession.java
7017e48380ab0c1be033594bb2a9331898ad5be8 08-Sep-2012 Jeff Brown <jeffbrown@google.com> Merge "Add support for Wifi display." into jb-mr1-dev
d15ebf25c595b855f6978d0600218e3ea5f31e92 05-Sep-2012 Chet Haase <chet@google.com> Enable changing properties of layer paint

Previously, to draw a layered view with a changed Paint object for the
drawLayer operation, you'd have to invalidate the parent view, to get the
native DisplayList to pick up the new Paint properties. This change adds
API and functionality so that the developer can call setLayerPaint(), which
does the proper invalidation (lightweight, doesn't cause redrawing the view).

Issue #6923810 Make it easy to efficiently animate a layer's Paint

Change-Id: I7fea79788d50f6d9c86dd5e5b2a4490cb95142bb
LES20Canvas.java
LES20Layer.java
ardwareLayer.java
extureView.java
iew.java
cbad976b2a36a0895ca94510d5208a86f66cf596 05-Sep-2012 Jeff Brown <jeffbrown@google.com> Add support for Wifi display.

Change-Id: I99693786cf9d07d07d3400046c55eb4933730b80
urface.java
6543c292b2d1cb3547f4565f89b7cb649ad955d6 07-Sep-2012 Romain Guy <romainguy@google.com> Merge "The drawables cache strikes again Bug #7117785" into jb-mr1-dev
f6aa537c2dddfa9c68af161c082b5d4f316bd068 07-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Make ProgressBar / SeekBar / RatingBar widgets aware of layout direction" into jb-mr1-dev
3540f1f28be473d066bf79956e6b3184c85b32b5 07-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Granular navigation uses mContentDescription instead of getCpontentDescription()s" into jb-mr1-dev
05282aa43eec80485fea126afd901f7009433adb 07-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> Granular navigation uses mContentDescription instead of getCpontentDescription()s

1. Getting the value of the content description via the method since
there is nothing preventing developers to override the method to
return a desired value (they should not do that but it is feasible).

bug:7079008

Change-Id: Iaf5848e9b065454ebfefccf685415fbf034ae475
iew.java
1cf70bbf96930662cab0e699d70b62865766ff52 06-Aug-2012 Svetoslav Ganov <svetoslavganov@google.com> Screen magnification - feature - framework.

This change is the initial check in of the screen magnification
feature. This feature enables magnification of the screen via
global gestures (assuming it has been enabled from settings)
to allow a low vision user to efficiently use an Android device.

Interaction model:

1. Triple tap toggles permanent screen magnification which is magnifying
the area around the location of the triple tap. One can think of the
location of the triple tap as the center of the magnified viewport.
For example, a triple tap when not magnified would magnify the screen
and leave it in a magnified state. A triple tapping when magnified would
clear magnification and leave the screen in a not magnified state.

2. Triple tap and hold would magnify the screen if not magnified and enable
viewport dragging mode until the finger goes up. One can think of this
mode as a way to move the magnified viewport since the area around the
moving finger will be magnified to fit the screen. For example, if the
screen was not magnified and the user triple taps and holds the screen
would magnify and the viewport will follow the user's finger. When the
finger goes up the screen will clear zoom out. If the same user interaction
is performed when the screen is magnified, the viewport movement will
be the same but when the finger goes up the screen will stay magnified.
In other words, the initial magnified state is sticky.

3. Pinching with any number of additional fingers when viewport dragging
is enabled, i.e. the user triple tapped and holds, would adjust the
magnification scale which will become the current default magnification
scale. The next time the user magnifies the same magnification scale
would be used.

4. When in a permanent magnified state the user can use two or more fingers
to pan the viewport. Note that in this mode the content is panned as
opposed to the viewport dragging mode in which the viewport is moved.

5. When in a permanent magnified state the user can use three or more
fingers to change the magnification scale which will become the current
default magnification scale. The next time the user magnifies the same
magnification scale would be used.

6. The magnification scale will be persisted in settings and in the cloud.

Note: Since two fingers are used to pan the content in a permanently magnified
state no other two finger gestures in touch exploration or applications
will work unless the uses zooms out to normal state where all gestures
works as expected. This is an intentional tradeoff to allow efficient
panning since in a permanently magnified state this would be the dominant
action to be performed.

Design:

1. The window manager exposes APIs for setting accessibility transformation
which is a scale and offsets for X and Y axis. The window manager queries
the window policy for which windows will not be magnified. For example,
the IME windows and the navigation bar are not magnified including windows
that are attached to them.

2. The accessibility features such a screen magnification and touch
exploration are now impemented as a sequence of transformations on the
event stream. The accessibility manager service may request each
of these features or both. The behavior of the features is not changed
based on the fact that another one is enabled.

3. The screen magnifier keeps a viewport of the content that is magnified
which is surrounded by a glow in a magnified state. Interactions outside
of the viewport are delegated directly to the application without
interpretation. For example, a triple tap on the letter 'a' of the IME
would type three letters instead of toggling magnified state. The viewport
is updated on screen rotation and on window transitions. For example,
when the IME pops up the viewport shrinks.

4. The glow around the viewport is implemented as a special type of window
that does not take input focus, cannot be touched, is laid out in the
screen coordiates with width and height matching these of the screen.
When the magnified region changes the root view of the window draws the
hightlight but the size of the window does not change - unless a rotation
happens. All changes in the viewport size or showing or hiding it are
animated.

5. The viewport is encapsulated in a class that knows how to show,
hide, and resize the viewport - potentially animating that.
This class uses the new animation framework for animations.

6. The magnification is handled by a magnification controller that
keeps track of the current trnasformation to be applied to the screen
content and the desired such. If these two are not the same it is
responsibility of the magnification controller to reconcile them by
potentially animating the transition from one to the other.

7. A dipslay content observer wathces for winodw transitions, screen
rotations, and when a rectange on the screen has been reqeusted. This
class is responsible for handling interesting state changes such
as changing the viewport bounds on IME pop up or screen rotation,
panning the content to make a requested rectangle visible on the
screen, etc.

8. To implement viewport updates the window manger was updated with APIs
to watch for window transitions and when a rectangle has been requested
on the screen. These APIs are protected by a signature level permission.
Also a parcelable and poolable window info class has been added with
APIs for getting the window info given the window token. This enables
getting some useful information about a window. There APIs are also
signature protected.

bug:6795382

Change-Id: Iec93da8bf6376beebbd4f5167ab7723dc7d9bd00
DisplayContentChangeListener.aidl
WindowManager.aidl
WindowSession.aidl
iew.java
iewRootImpl.java
indowInfo.aidl
indowInfo.java
indowManager.java
indowManagerPolicy.java
0af4b8b0c8b038bca9b4f60eb81f71e186f471ce 12-Jun-2012 Fabrice Di Meglio <fdimeglio@google.com> Make ProgressBar / SeekBar / RatingBar widgets aware of layout direction

- see bug #5429822 UI should be mirrored for RTL locales (Arabic, Hebrew, farsi)

Change-Id: I8d76299090abf6b2b187696b1a83e71d7a44b1ce
iew.java
5f49c3023a512efbef8bc9515d310c7a72be4af2 07-Sep-2012 Romain Guy <romainguy@google.com> The drawables cache strikes again
Bug #7117785

Draawables created from the ConstantState cache found in Resources must be
mutated before they can be safely modified by apps. Failure to do so results
in all drawables sharing the same constant state to be affected by the
modification.

In the case of the bugreport above, the status bar code plays tricks with
a background drawable and modifies its color to implement a fade in/out
effect. This drawable comes from a cached resource (color 0x0) and the
modifications made by the status bar apply to other clients of this drawable,
most notably the recents panel.

This change fixes several things:
- Simplifies colors caching by removing the assetCookie from the key. This
should result in better reuse of cached drawables
- Makes View.setBackgroundColor() honor the mutate() contract
- Ensure StateListDrawable properly mutates its children before modifying
them
- Optimize Bitmap/ColorDrawable to mark them mutated when they are not
created from an existing ConstantSate. The same optimization should be
applied to other drawables in the future

Change-Id: I54adb5d5b914c7d8930bf9b46f7e3f9dcbf4bcab
iew.java
9e130e70eff57d15c0888f51c4f1a7cc4cd62573 07-Sep-2012 Craig Mautner <cmautner@google.com> Merge "Limit certain actions to default Display." into jb-mr1-dev
5851c6e63879ce7c08d345e80db9a2872657a59f 07-Sep-2012 Craig Mautner <cmautner@google.com> Merge "Convert resized() method to new parameters." into jb-mr1-dev
656e3af44432be6a2ba60289b8e787fad2506ceb 07-Sep-2012 Craig Mautner <cmautner@google.com> Convert resized() method to new parameters.

When the BaseIWindow.resized method got switched from taking (int x,
int y, ...) to taking (Rect, ...) the SurfaceView.MyWindow override
never got updated.

Fixes bug 6992324.

Change-Id: Id0b9625559ae0100336f4573f09d313138c8a6e7
urfaceView.java
3667aa364f6882cc37b46f87c55b7e1230158d1c 06-Sep-2012 Chris Craik <ccraik@google.com> Don't trigger log for empty views

Change-Id: Idb2193d6dd064e5c4af1f02d0df2a83a7db0e0f8
iew.java
10e9d1d7ad6296fca388451c71238cc43fe54756 06-Sep-2012 Chris Craik <ccraik@google.com> Log if a view fails to fit in the drawing cache

Large software layers won't draw if they're larger than the size of the drawing
cache, in which case this log will be triggered.

bug:7078391
Change-Id: Ib42a060b8e3b3642417df9243a086aa15b2989b1
iew.java
69b0818179201fadc9d2a384d692d8ae4aecd85c 05-Sep-2012 Craig Mautner <cmautner@google.com> Limit certain actions to default Display.

Stop messing up PhoneWindowManager state when passing in windows
from non-default Display.

Change-Id: I472f7a13c5e2241fbf1f79ae1c8045fd92af016c
indowManagerPolicy.java
f87633f38c399edf5b2c358992ecbbbbbad5a648 05-Sep-2012 Mathias Agopian <mathias@google.com> Merge "update to new SurfaceComposerClient API" into jb-mr1-dev
0d727c714b75b9d9c927eca83aacba8938b08537 05-Sep-2012 Satoshi Kataoka <satok@google.com> Merge "Add subtypeId for keeping enabled "InputMethodSubtype"s even if subtype parameters are changed" into jb-mr1-dev
63f1c43fbef157397869475ef30d23e631b88bbe 05-Sep-2012 Mathias Agopian <mathias@google.com> update to new SurfaceComposerClient API

Change-Id: I8f2c96df56fe3a851b8ec03bb8734db0b6bea3d5
urface.java
47ec2fb37046797bebc82b505a13c552021b9ff3 01-Sep-2012 Adam Powell <adamp@google.com> Delay starting scale gesture events until a touch slop threshold

Change-Id: I13132ce1d912b54e251f7afed5143c72a2ec2e78
caleGestureDetector.java
e62e6d8731ab1e02c1632ebc011792d07b902af8 02-Jul-2012 Satoshi Kataoka <satok@google.com> Add subtypeId for keeping enabled "InputMethodSubtype"s even if subtype parameters are changed

Bug: 6752230
Change-Id: I3a2d512e395fe8645edf6ab82108948b927c629a
nputmethod/InputMethodInfo.java
nputmethod/InputMethodSubtype.java
398341927f3dca68d71024483aa276d10af4c080 02-Sep-2012 Craig Mautner <cmautner@google.com> Minor refactors.

- Refactor DragState to take Display instead of DisplayContent.
- Rename xxxAnimationLw methods in WindowManagerPolicy to xxxPostLayout
to reflect animation refactoring.

Change-Id: I502f2aa45a699ad395a249a12abf9843294623f0
indowManagerPolicy.java
f83ec838915c13158ddfda0cf4da5865b260b9c6 01-Sep-2012 Jeff Brown <jeffbrown@google.com> Merge "More improvements to the display manager." into jb-mr1-dev
3b9a4160c99b2375b4874ccabf92eac68be06af6 01-Sep-2012 Jeff Brown <jeffbrown@google.com> Merge "Initial draft of high-level multi-display APIs." into jb-mr1-dev
4ed8fe75e1dde1a2b9576f3862aecc5a572c56b5 31-Aug-2012 Jeff Brown <jeffbrown@google.com> More improvements to the display manager.

Added more complete support for logical displays with
support for mirroring, rotation and scaling.

Improved the overlay display adapter's touch interactions.

A big change here is that the display manager no longer relies
on a single-threaded model to maintain its synchronization
invariants. Unfortunately we had to change this so as to play
nice with the fact that the window manager wants to own
the surface flinger transaction around display and surface
manipulations. As a result, the display manager has to be able
to update displays from the context of any thread.

It would be nice to make this process more cooperative.
There are already several components competing to perform
surface flinger transactions including the window manager,
display manager, electron beam, overlay display window,
and mouse pointer. They are not manipulating the same surfaces
but they can collide with one another when they make global
changes to the displays.

Change-Id: I04f448594241f2004f6f3d1a81ccd12c566bf296
isplay.java
isplayInfo.java
urface.java
a492c3a7b2c18426fd0cb4d017eacbc368195dc5 24-Aug-2012 Jeff Brown <jeffbrown@google.com> Initial draft of high-level multi-display APIs.

This patch introduces the ability to create a Context that
is bound to a Display. The context gets its configuration and
metrics from that display and is able to provide a WindowManager
that is bound to the display.

To make it easier to use, we also add a new kind of Dialog
called a Presentation. Presentation takes care of setting
up the context as needed and watches for significant changes
in the display configuration. If the display is removed,
then the presentation simply dismisses itself.

Change-Id: Idc54b4ec84b1ff91505cfb78910cf8cd09696d7d
indowManager.java
indowManagerImpl.java
f4247c250dd0ce50c8fa4e59bad33d0ba9b68692 31-Aug-2012 Adam Powell <adamp@google.com> Merge "GestureDetector - Mask action when checking POINTER_UP" into jb-mr1-dev
f90165aeda1a8353c1b5e837b1ef4a818ecbefc5 31-Aug-2012 Adam Powell <adamp@google.com> GestureDetector - Mask action when checking POINTER_UP

Bug 7088494

Change-Id: I723e9b77f0d0473f9d769e53aaa568c4aaac90aa
estureDetector.java
6cab6005a8746bdf86fd98a2a004f08d9473a445 31-Aug-2012 Chet Haase <chet@google.com> Merge "Make detachViewFromParent more robust" into jb-mr1-dev
ca479d468be963661fd82634f4b57f21c13f1fe6 31-Aug-2012 Chet Haase <chet@google.com> Make detachViewFromParent more robust

Calling detachViewFromParent() without calling remove or attach in the
same drawing frame could, in some situations, cause a crash in the native
DisplayList code. detach/attach are intended to be very lightweight and do
not manage the native DisplayList content the same way that add/remove do.
Nor do they cause an invalidate() or requestLayout(), which would cause the
native structures to get recreated appropriately.

This fix makes this process more robust in two ways:
- DisplayLists should not get finalized (therefore destroying their native
structures) when there are still parent DisplayLists referring to them
(each DisplayList keeps references to its child DisplayLists). This will
prevent the native crash associated with unmatched detach*() calls.
- The docs for detach/attach have been enhanced to make it easier for
developers to understand how to use these methods more correctly and
successfully.

Issue #7064818 detachViewFromParent() should be more robust

Change-Id: I53befc04d5d58c225060f397725566d470488c9b
LES20DisplayList.java
LES20RecordingCanvas.java
iewGroup.java
0fa814d7e6d16e68fa715175cf3122b19fd9e59c 31-Aug-2012 Romain Guy <romainguy@google.com> Merge "Don't quickReject() children if FLAG_CLIP_CHILDREN isn't set" into jb-mr1-dev
fbb4321b94927fd6bd39d327fe56787989b11c71 31-Aug-2012 Romain Guy <romainguy@google.com> Don't quickReject() children if FLAG_CLIP_CHILDREN isn't set

External report: http://code.google.com/p/android/issues/detail?id=36788

Change-Id: Ibdaecf37ab013e30b16e9dc7a6e50156d72c3e4f
iew.java
8b300ed14f74a28ac7752d33b39bc7ac91bd9b26 30-Aug-2012 Craig Mautner <cmautner@google.com> Merge "Don't die(immediate) if from performTraversals." into jb-mr1-dev
7a8b68c432a5bb0cd0992e885d58db5ffd2cdd8a 30-Aug-2012 Adam Powell <adamp@google.com> Merge "Use focal point for scrolling in GestureDetector" into jb-mr1-dev
df2390adc3879b7040425e75e4acc64729612b9c 30-Aug-2012 Craig Mautner <cmautner@google.com> Don't die(immediate) if from performTraversals.

The Drive application was calling PopupWindow.dismiss from within
onMeasure. This caused dispatchDetachedFromWindow to be called
from within performTraversals. Since dispatchDetachedFromWindow
destroys much of what performTraversals uses this was a disaster
waiting to happen.

This fix adds a check for seeing if die(immediate=true) is being
called from within performTraversals. If it is then die doesn't
execute doDie immediately, but instead treats it as a call to
die(immediate=false).

Fixes bug 6836841.

Change-Id: I833289e12c19fd33c17a715b2ed2adcf8388573a
iewRootImpl.java
7808581ca3b462fb187aed6b0d1b86fb83a8a215 30-Aug-2012 Romain Guy <romainguy@google.com> Merge "Pre-multiply color components for 2-stop gradients Bug #7033344" into jb-mr1-dev
d679b57ef279239cf11bb6c9bd14fb99b07971c9 30-Aug-2012 Romain Guy <romainguy@google.com> Pre-multiply color components for 2-stop gradients
Bug #7033344

Change-Id: Ia168501f1dc56ba7a1bb0c55078320432309a66a
iew.java
05a1e1f64e06b113a64591be2c28c9f6814490a5 29-Aug-2012 Adam Powell <adamp@google.com> Use focal point for scrolling in GestureDetector

Remove workaround for obsolete touchscreen hardware. Provide a better
focal point for scroll events.

Change-Id: I879acb4cfd23bd3762d0332e4df2203d913ae869
estureDetector.java
29d8d267dd97f66d829478778de5e0c56b965a47 30-Aug-2012 Jeff Brown <jeffbrown@google.com> Fix build for some javac compilers.

It seems some compiler versions don't like trailing
commas in attribute lists. Weird.

Change-Id: I3a05f49a2e94f63fe1662d14c1d8a7ee249d8a16
indowManager.java
d5ea3b464795d4e6adbdd174d1bd2f78b628e280 30-Aug-2012 Jeff Brown <jeffbrown@google.com> Merge "Add initial multi-display support." into jb-mr1-dev
bd6e1500aedc5461e832f69e76341bff0e55fa2b 28-Aug-2012 Jeff Brown <jeffbrown@google.com> Add initial multi-display support.

Split the DisplayManager into two parts. One part is bound
to a Context and takes care of Display compatibility and
caching Display objects on behalf of the Context. The other
part is global and takes care of communicating with the
DisplayManagerService, handling callbacks, and caching
DisplayInfo objects on behalf of the process.

Implemented support for enumerating Displays and getting
callbacks when displays are added, removed or changed.

Elaborated the roles of DisplayManagerService, DisplayAdapter,
and DisplayDevice. We now support having multiple display
adapters registered, each of which can register multiple display
devices and configure them dynamically.

Added an OverlayDisplayAdapter which is used to simulate
secondary displays by means of overlay windows. Different
configurations of overlays can be selected using a new
setting in the Developer Settings panel. The overlays can
be repositioned and resized by the user for convenience.

At the moment, all displays are mirrors of display 0 and
no display transformations are applied. This will be improved
in future patches.

Refactored the way that the window manager creates its threads.
The OverlayDisplayAdapter needs to be able to use hardware
acceleration so it must share the same UI thread as the Keyguard
and window manager policy. We now handle this explicitly as
part of starting up the system server. This puts us in a
better position to consider how we might want to share (or not
share) Loopers among components.

Overlay displays are disabled when in safe mode or in only-core
mode to reduce the number of dependencies started in these modes.

Change-Id: Ic2a661d5448dde01b095ab150697cb6791d69bb5
horeographer.java
isplay.java
isplayInfo.java
iew.java
indowManager.java
indowManagerImpl.java
f0340d156c9adf974cba36e806049f66e111fab7 29-Aug-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Don't overwrite accessibility delegates in AbsListView items." into jb-mr1-dev
618cbea4e746196cbde43746706bec02e14b487b 28-Aug-2012 Adam Powell <adamp@google.com> New implementation for ScaleGestureDetector

This solves the problems around active pointer tracking when the
caller may skip events in the MotionEvent stream and replaces the
old implementation with a much simpler algorithm.

Change-Id: I6b15a2e215cab7b9559db800fcc57374702357fc
caleGestureDetector.java
b72fe7a2635906d6244efedfe302c2c46e564803 28-Aug-2012 alanv <alanv@google.com> Don't overwrite accessibility delegates in AbsListView items.

Bug: 6856579
Change-Id: I2963edcefdc0dd5e1413b57858e6f319904a269d
iew.java
3e7e7f025e8d7dc6ab8c361118c8e949bdf3e451 27-Aug-2012 Jeff Brown <jeffbrown@google.com> Fix improper use of CloseGuard.

Change-Id: I37131a86e27a4be55956384a3566de9dcfd90fe5
isplayEventReceiver.java
nputEventReceiver.java
64a55af0ac700baecb0877235eb42caac59a3560 26-Aug-2012 Jeff Brown <jeffbrown@google.com> Add plumbing for new surface flinger display API.

Cleaned up the implementation of Surface and SurfaceSession
to use more consistent naming and structure.

Added JNI for all of the new surface flinger display API calls.

Enforced the requirement that all Surfaces created by
the window manager be named.

Updated the display manager service to use the new methods.

Change-Id: I2a658f1bfd0437e1c6f9d22df8d4ffcce7284ca2
urface.java
urfaceSession.java
0b722fe9ce98d97dbcb6fefd170b85ab7037e528 25-Aug-2012 Jeff Brown <jeffbrown@google.com> Use new surface flinger API.

Change-Id: Ic888577408a59a36481a48010e19c5e77c24e211
urface.java
urfaceSession.java
b570c64ad18735b47df053dd79bfb79a74106236 24-Aug-2012 Victoria Lease <violets@google.com> avert 2500ms wait in InputMethodManager

When dispatching input events to the main thread, the event is
handled directly rather than queued. If we have a timeout waiting for
the event to happen, it has to be registered before we call the
dispatcher, otherwise we'll wait for the timeout even though the event
has already been handled.

Bug: 6734044
Change-Id: I6826163dbc6133b385cf1076bb077fb4e82870a1
nputmethod/InputMethodManager.java
b47bbc3d80badb94229bc4ce7a2d5006faa9ef15 23-Aug-2012 Craig Mautner <cmautner@google.com> Clean up displayId and layerStack usage.

Make better use of Display object by saving it in DisplayContent.
Only use layerStack when referring to Surfaces. Get displayId from
default Display or default DisplayContent. Remove warnings.

Fixes bug 7038151.

Change-Id: Ie493f0f5e755dc9b91ee969ff561c2a098283ead
urface.java
4b72463d7cb807912ca359f3b5a160f59d985c1d 21-Aug-2012 Jeff Brown <jeffbrown@google.com> Merge "Add factory test feature to shut off on long press power." into jb-mr1-dev
9a538ee7bde42ad36f43edc48594282d98e191a4 20-Aug-2012 Jeff Brown <jeffbrown@google.com> Add factory test feature to shut off on long press power.

Bug: 6847329
Change-Id: I2f4f975c3af2d13ccc06812a5a42e79032700862
indowManagerPolicy.java
99de2459e200e0c86d55d5eee7ea000fd030990f 20-Aug-2012 Adam Powell <adamp@google.com> Merge "Respect child drawing order when dispatching touch events" into jb-mr1-dev
bf5740e75efd87ae0213486e78e029403804c6f0 20-Aug-2012 Jeff Brown <jeffbrown@google.com> Improve display manager debugging.

Change-Id: Iae794fe99a7cf9809f64eafb216091126a2f7e39
isplay.java
isplayInfo.java
98365d7663cbd82979a5700faf0050220b01084d 20-Aug-2012 Jeff Brown <jeffbrown@google.com> Refactor for multi-display support.

Split WindowManagerImpl into two parts, the WindowManager
interface implementation remains where it is but the global
communications with the window manager are now handled by
the WindowManagerGlobal class. This change greatly simplifies
the challenge of having separate WindowManager instances
for each Context.

Removed WindowManagerImpl.getDefault(). This represents the
bulk of this change. Most of the usages of this method were
either to perform global functions (now handled by WindowManagerGlobal)
or to obtain the default display (now handled by DisplayManager).

Explicitly associate each new window with a display and make
the Display object available to the View hierarchy.

Add stubs for some new display manager API features.

Start to split apart the concepts of display id and layer stack.
since they operate at different layers of abstraction.
While it's true that each logical display uniquely corresponds to a
surface flinger layer stack, it is not necessarily the case that
they must use the same ids. Added Display.getLayerStack()
and started using it in places where it was relatively easy to do.

Change-Id: I29ed909114dec86807c4d3a5059c3fa0358bea61
horeographer.java
isplay.java
WindowSession.aidl
urface.java
urfaceView.java
iew.java
iewConfiguration.java
iewRootImpl.java
indow.java
indowManagerGlobal.java
indowManagerImpl.java
indowManagerPolicy.java
f337a89b4d6f6fd0a49b6edd7f895f06cb96d28b 18-Aug-2012 Dianne Hackborn <hackbod@google.com> Merge "More view hierarchy, fragment debugging." into jb-mr1-dev
4702a856973a553deb82f71b1d3b6c3db5dbf4ba 18-Aug-2012 Dianne Hackborn <hackbod@google.com> More view hierarchy, fragment debugging.

Add a View.toString() method.

Rename all of the View private flags to have a PFLAG prefix to
avoid going insane trying to figure out which constant goes with
which flag.

Activity.dump() now includes a summary of the activity's view
hierarchy, using the View.toString() method.

All exceptions thrown by FragmentManager now perform a dump of
the owning activity state, where appropriate.

Change-Id: I6482e397e10cb5a0612ab02ce6ed5131823437a6
ardwareRenderer.java
urfaceView.java
iew.java
iewDebug.java
iewGroup.java
iewPropertyAnimator.java
iewRootImpl.java
a6478a3a130c3680bc6d8fa6490ac805fa15bdd2 18-Aug-2012 Adam Powell <adamp@google.com> Respect child drawing order when dispatching touch events

Make sure that touch events are always dispatched to the "topmost"
view when views overlap.

Bug 6996501

Change-Id: I4df25dd7531c4b268c8377c0bf0945ab862733b9
iewGroup.java
d2ae85d41ec1651dd1bf4c33fe31833ba5c5cff5 17-Aug-2012 Michael Jurka <mikejurka@google.com> Merge "Adding a thumbnail scale down animation" into jb-mr1-dev
54e5a825f2f82839e63e37ec32dc1b0757e95dfe 17-Aug-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Improve resolution of RTL related properties" into jb-mr1-dev
23c89fd1685a006957dc0f2aacf167b4449f3d80 13-Aug-2012 Fabrice Di Meglio <fdimeglio@google.com> Improve resolution of RTL related properties

- fix bug #6887370 ListPreference shows misaligned radio drawables (in CheckedTextView?)
- fix bug #6938146 "Show more cards..." text on bottom button is not centered

- also defer scrollbar initialization as we need resolved padding values for them

Change-Id: Ife651ffe6bbcc228ff6724f3d9b91079fac3a740
iew.java
iewGroup.java
832cb229cd748505c90f74ae8154fc3557d61a73 13-Apr-2012 Michael Jurka <mikejurka@google.com> Adding a thumbnail scale down animation

Recents animation will temporarily look a bit
wrong, but a subsequent change will fix this.
WindowManager.aidl
9630704ed3b265f008a8f64ec60a33cf9dcd3345 28-Jul-2012 Jeff Brown <jeffbrown@google.com> Power manager rewrite.

The major goal of this rewrite is to make it easier to implement
power management policies correctly. According, the new
implementation primarily uses state-based rather than event-based
triggers for applying changes to the current power state.

For example, when an application requests that the proximity
sensor be used to manage the screen state (by way of a wake lock),
the power manager makes note of the fact that the set of
wake locks changed. Then it executes a common update function
that recalculates the entire state, first looking at wake locks,
then considering user activity, and eventually determining whether
the screen should be turned on or off. At this point it may
make a request to a component called the DisplayPowerController
to asynchronously update the display's powe state. Likewise,
DisplayPowerController makes note of the updated power request
and schedules its own update function to figure out what needs
to be changed.

The big benefit of this approach is that it's easy to mutate
multiple properties of the power state simultaneously then
apply their joint effects together all at once. Transitions
between states are detected and resolved by the update in
a consistent manner.

The new power manager service has is implemented as a set of
loosely coupled components. For the most part, information
only flows one way through these components (by issuing a
request to that component) although some components support
sending a message back to indicate when the work has been
completed. For example, the DisplayPowerController posts
a callback runnable asynchronously to tell the PowerManagerService
when the display is ready. An important feature of this
approach is that each component neatly encapsulates its
state and maintains its own invariants. Moreover, we do
not need to worry about deadlocks or awkward mutual exclusion
semantics because most of the requests are asynchronous.

The benefits of this design are especially apparent in
the implementation of the screen on / off and brightness
control animations which are able to take advantage of
framework features like properties, ObjectAnimator
and Choreographer.

The screen on / off animation is now the responsibility
of the power manager (instead of surface flinger). This change
makes it much easier to ensure that the animation is properly
coordinated with other power state changes and eliminates
the cause of race conditions in the older implementation.

The because of the userActivity() function has been changed
so that it never wakes the device from sleep. This change
removes ambiguity around forcing or disabling user activity
for various purposes. To wake the device, use wakeUp().
To put it to sleep, use goToSleep(). Simple.

The power manager service interface and API has been significantly
simplified and consolidated. Also fixed some inconsistencies
related to how the minimum and maximum screen brightness setting
was presented in brightness control widgets and enforced behind
the scenes.

At present the following features are implemented:

- Wake locks.
- User activity.
- Wake up / go to sleep.
- Power state broadcasts.
- Battery stats and event log notifications.
- Dreams.
- Proximity screen off.
- Animated screen on / off transitions.
- Auto-dimming.
- Auto-brightness control for the screen backlight with
different timeouts for ramping up versus ramping down.
- Auto-on when plugged or unplugged.
- Stay on when plugged.
- Device administration maximum user activity timeout.
- Application controlled brightness via window manager.

The following features are not yet implemented:

- Reduced user activity timeout for the key guard.
- Reduced user activity timeout for the phone application.
- Coordinating screen on barriers with the window manager.
- Preventing auto-rotation during power state changes.
- Auto-brightness adjustment setting (feature was disabled
in previous version of the power manager service pending
an improved UI design so leaving it out for now).
- Interpolated brightness control (a proposed new scheme
for more compactly specifying auto-brightness levels
in config.xml).
- Button / keyboard backlight control.
- Change window manager to associated WorkSource with
KEEP_SCREEN_ON_FLAG wake lock instead of talking
directly to the battery stats service.
- Optionally support animating screen brightness when
turning on/off instead of playing electron beam animation
(config_animateScreenLights).

Change-Id: I1d7a52e98f0449f76d70bf421f6a7f245957d1d7
indowManagerPolicy.java
756220bd1912535840388a6743830d2e59ad4964 15-Aug-2012 Dianne Hackborn <hackbod@google.com> Add API to create new contexts with custom configurations.

This allows you to, say, make a Context whose configuration
is set to a different density than the actual density of the device.

The main API is Context.createConfigurationContext(). There is
also a new API on ContextThemeWrapper that allows you to apply
an override context before its resources are retrieved, which
addresses some feature requests from developers to be able to
customize the context their app is running in.

Change-Id: I88364986660088521e24b567e2fda22fb7042819
ontextThemeWrapper.java
b7df3a714f43ee6fe0861e8bc81c4b15082b751e 09-Aug-2012 Jeff Brown <jeffbrown@google.com> Merge "Make display info accessible from hidden api." into jb-mr1-dev
c89b14bba0f6cc2c91629080617f7ed215f697f3 08-Aug-2012 Romain Guy <romainguy@google.com> It seems that apparently useless public APIs are actually useful
Bug #6953651

Change-Id: Ic47ce504e63262711f5d3edc76f7d2b9c12471ad
LES20RenderLayer.java
LES20TextureLayer.java
ardwareLayer.java
iewRootImpl.java
88a4292186fef902db476d63529d0b15a17d9d4d 08-Aug-2012 Jean-Baptiste Queru <jbq@google.com> am 807c7ae0: am 7835d4fb: Merge "Fix SurfaceView notifies on invalid surfaces."

* commit '807c7ae00bc5b8a7fe68ba4acbfa3909a955ae70':
Fix SurfaceView notifies on invalid surfaces.
807c7ae00bc5b8a7fe68ba4acbfa3909a955ae70 08-Aug-2012 Jean-Baptiste Queru <jbq@google.com> am 7835d4fb: Merge "Fix SurfaceView notifies on invalid surfaces."

* commit '7835d4fb4e99bac698599a269ce7f84f2de1fb46':
Fix SurfaceView notifies on invalid surfaces.
2ab1b7d9abc1b720b63ae01abcf1df0dc780eed4 08-Aug-2012 Jeff Brown <jeffbrown@google.com> Make display info accessible from hidden api.

Change-Id: I83f3899b9ef10da4fe9a71f40dee8e940b32ec46
isplay.java
96f1ee9867f966857c2dbd8cdd168d8fcdf72224 08-Aug-2012 Adam Powell <adamp@google.com> Merge "Fix a padding resolution bug for adapter-based views" into jb-mr1-dev
0090f20001470ed078177ccfc1f5e03842258fe1 08-Aug-2012 Adam Powell <adamp@google.com> Fix a padding resolution bug for adapter-based views

If padding has not been resolved by the time measure() is called,
resolve it.

Bug 6938579

Change-Id: Idd3ffa3e4e441cd462d6594b1e20d153d7632994
iew.java
2440e670de0294bdf64592849613db9b8f00ee11 07-Aug-2012 Romain Guy <romainguy@google.com> Catch padding changes in ViewGroup to properly clip children
Bug #6886339

RTL support introduced a new way to handle padding which broke
existing behavior in ViewGroup.setPadding(). The new code path
was not notifying ViewGroup which would prevent it from setting
a flag used to clip children.

Change-Id: I584143714cb81fd664b4ecd9fb51d56bae04ba05
iew.java
iewGroup.java
17112ad8a21a77620eb1ff14dcf8bdd6b7859712 07-Aug-2012 Romain Guy <romainguy@google.com> Cleanup of libhwui

Change-Id: Ib7f5771548462c00027a8ad57badfb68c50644f9
LES20RenderLayer.java
LES20TextureLayer.java
ardwareLayer.java
iewRootImpl.java
85b1041f891b4bbfe81e4f6423397fca50c14e5b 07-Aug-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Window position not reported if the window is not moved." into jb-mr1-dev
758143ecfedbe08cc6c4fed0ad8ad7a854194ca4 07-Aug-2012 Svetoslav Ganov <svetoslavganov@google.com> Window position not reported if the window is not moved.

1.If a window is shown but never moved the window window
is never notified for its current location. Therefore,
accessibility nodes do not contain correct bounds in
screen coordinates.

bug:6926295

Change-Id: I7df18b095d33ecafffced75aba9e4f4693b0c393
ccessibilityInteractionController.java
Window.aidl
iewRootImpl.java
nputmethod/InputMethodManager.java
4ff0cf4b83605bff630c4e6f1fabe4f72a3f93a1 06-Aug-2012 Romain Guy <romainguy@google.com> Add new debug tool to track hardware layers updates

You can setprop debug.hwui.show_layers_updates true to flash
hw layers in green when they update. This is also a setting
in the Dev. section of the settings app.

Change-Id: Ibe1d63a4f81567dc1d590c9b088d2e7505df8abf
ardwareRenderer.java
dde331cebd87982faded6818ad5f9927ff994c96 03-Aug-2012 Dianne Hackborn <hackbod@google.com> We can now (kind-of) change screen density on the fly.

Preloaded drawables now have a density associated with them, so we
can load the correct drawable if we are using a different density.

Window manager now formally keeps track of the density for each
screen, allowing it to be overridden like you can already do with
size, and relies on this density to drive itself internally and
the configurations it reports.

There are a new set of Bitmap constructors where you provide a
DisplayMetrics so they can be constructed with the correct density.
(This will be for when you can have different windows in the same
app running at different densities.)

ActivityThread now watches for density changes, and pushes them
to the DENSITY_DEVICE and Bitmap global density values for that
process.

A new am command allows you to change the density.
isplay.java
WindowManager.aidl
extureView.java
iew.java
iewDebug.java
indowManagerPolicy.java
7de53949bc89e1e79ed63d730beaa49f838038b6 03-Aug-2012 Craig Mautner <cmautner@google.com> Merge "Add features to DisplayManager." into jb-mr1-dev
fbe963f4ad8056c8615ce4bdfce5d1387fbf77ae 03-Aug-2012 Jeff Brown <jeffbrown@google.com> Merge "Remove unnecessary code." into jb-mr1-dev
5098fd8a0e3d2da32d5c4ffa729959caf779fc75 03-Aug-2012 Jeff Brown <jeffbrown@google.com> Remove unnecessary code.

Bug: 6926595
Change-Id: Ice3138675c024e9efe9c7922e1e0a05f19cdde54
isplay.java
9de4936c99b979f6010440b043edc6d6142d1980 02-Aug-2012 Craig Mautner <cmautner@google.com> Add features to DisplayManager.

Added Surface.setDisplayId().
Added callbacks to DisplayManagerService.

Change-Id: Idd3f85f8ca1f1208962f1196efd6a3ab51c8c259
urface.java
4f67ba6ba4e861b287a3ff0323c107aa77f66264 02-Aug-2012 Craig Mautner <cmautner@google.com> Refactor DisplayManagerService to be functional.

Change-Id: Ieac1eca172be5dc5db45302d3afa26188acd4d6d
isplay.java
437a0fbd57662e1d9d260da6f62ff83da2769a7e 02-Aug-2012 Craig Mautner <cmautner@google.com> Merge "Introduce multiple displays with DisplayContent." into jb-mr1-dev
59c009776dae5ccbdfb93d7151ff2065ca049dc3 30-Jul-2012 Craig Mautner <cmautner@google.com> Introduce multiple displays with DisplayContent.

Fix a couple of bugs that turned up.
Remove touch/focus from display. Add iterators for access.
Respond to comments. Remove TODOs, and some deviceId parameters.

Change-Id: Idcdb4f1979aa7b14634d450fd0333d6eff26994d
WindowManager.aidl
908aecc3a63c5520d5b11da14a9383f885b7d126 01-Aug-2012 Dianne Hackborn <hackbod@google.com> Start moving away from DisplayMetrics.DENSITY_DEVICE.

This puts in most of the infrastructure needed to allow us to
switch between different densities at run time. The main remaining
uses of the global are to initialize the Bitmap object (not sure
what to do about that since it doesn't have anything passed in
the constructor to get this information from), and being able to
load drawables if we need a different density than what was preloaded
by zygote.

Change-Id: Ifdbfd6b7a5c59e6aa22e63b95b78d96af3d96848
isplay.java
isplayInfo.java
iewRootImpl.java
f750b8ce3c8cb30bcbc5fe53087c7e9035078eba 02-Jul-2012 Andreas Röhl <andreas.rohl@sonyericsson.com> Fix SurfaceView notifies on invalid surfaces.

SurfaceView notifies registered callbacks on invalid
Surfaces.

Change-Id: Iddc9a5cd073fb73a0e7e9b9ca64ff4fac0777ca7
urfaceView.java
6881a10557acf3b0270de54799d6f19437acf584 27-Jul-2012 Craig Mautner <cmautner@google.com> Small step towards supporting multiple displays

Change-Id: I353449c2b464394988c7e0203656b5851a0c9127
WindowManager.aidl
WindowSession.aidl
urface.java
urfaceView.java
iewRootImpl.java
440f32bbd48272095a5482abc87b8769ebd515b6 26-Jul-2012 Jeff Smith <whydoubt@yahoo.com> am ddd88726: am 71930dd7: am a45746ef: Fix several cases of broken droiddoc syntax external issue 35214

* commit 'ddd88726a247e4100cb62b3dc9d0887ca2ae2ec4':
Fix several cases of broken droiddoc syntax external issue 35214
fa25bf5382467b1018bd9af7f1cb30a23d7d59f7 24-Jul-2012 Jeff Brown <jeffbrown@google.com> Add display manager skeleton.

The purpose of this change is to remove direct reliance on
SurfaceFlinger for describing the size and characteristics of
displays.

This patch also starts to make a distinction between logical displays
and physical display devices. Currently, the window manager owns
the concept of a logical display whereas the new display
manager owns the concept of a physical display device.

Change-Id: I7e0761f83f033be6c06fd1041280c21500bcabc0
isplay.java
isplayInfo.aidl
isplayInfo.java
WindowManager.aidl
urface.java
ddd88726a247e4100cb62b3dc9d0887ca2ae2ec4 26-Jul-2012 Jeff Smith <whydoubt@yahoo.com> am 71930dd7: am a45746ef: Fix several cases of broken droiddoc syntax external issue 35214

* commit '71930dd77e4dc6f6be5c648019d2ab0da5f0584c':
Fix several cases of broken droiddoc syntax external issue 35214
a8b9defade5b937d4ad64f9aff4bca792298f43c 23-Jul-2012 Jeff Brown <jeffbrown@google.com> Stop using raw display size except in window manager.

We don't actually need the raw size in these places.
The logical size is good enough.

Starting to move dependencies on surface flinger
and window manager out of the Display class.

Change-Id: I2065bee8e5bf7f42c5a452dd1e8479e40ebb0d37
isplay.java
iewConfiguration.java
iewRootImpl.java
indowManagerImpl.java
71930dd77e4dc6f6be5c648019d2ab0da5f0584c 25-Jul-2012 Jeff Smith <whydoubt@yahoo.com> am a45746ef: Fix several cases of broken droiddoc syntax external issue 35214

* commit 'a45746efadd11bb7dfab026fb3c81a25fae74ca4':
Fix several cases of broken droiddoc syntax external issue 35214
a45746efadd11bb7dfab026fb3c81a25fae74ca4 19-Jul-2012 Jeff Smith <whydoubt@yahoo.com> Fix several cases of broken droiddoc syntax
external issue 35214

patch contributed by Jeff Smith <whydoubt@yahoo.com>

Change-Id: I70dcee88a140699bf3e1ab369bed6dcd2fdd3d83
urfaceHolder.java
iew.java
iewGroup.java
extservice/TextServicesManager.java
2624c3adbecaf9ca2f97b7912899ecd1bc0a05da 25-Jul-2012 Ed Heyl <edheyl@google.com> Merge "Account for static child transformations correctly"
63cf0752226383cfc8fa35a3233413301b49fab7 25-Jul-2012 Romain Guy <romainguy@google.com> Merge "Make HardwareRenderer able to target generic Surface objects"
786fc93d71b833ab6b02b0c7ea5e30f25cceeedf 25-Jul-2012 Romain Guy <romainguy@google.com> Make HardwareRenderer able to target generic Surface objects

Change-Id: I4b7199a1eb30e0df354ae12c4819adc69db5df40
ardwareRenderer.java
iewRootImpl.java
599913d6e8e610665fad7edd7dfbd3cd48758b3a 24-Jul-2012 Chet Haase <chet@google.com> Account for static child transformations correctly

Optimizations in drawing and invalidation in JB did not correctly
account for static child transforms
(View.getChildStaticTransformation()).
For the invalidation part, this meant that views were not properly
setting the invalidation bounds (which should be transformed by
the static transform), so the affected area of the invalidation
was potentially incorrect. For the drawing part, this meant that
views outside of their parent's bounds were being incorrectly
rejected when the static transform would, in fact, place the views
inside of those bounds.

The fix is in two parts:
- drawing: avoid the early quickReject() logic for containers that
have static transformations set on them
(ViewGroup.setStaticTransformationsEnabled()).
- invalidation: Include the static transform in the invalidation
area propagated up the view hierarchy.

Issue #6864203 The child position outside of parent is not drawn
even it will be drawn inside of the parent after applying static
transformation

Change-Id: I73bea01feab250bdcae2d575313be355a4a3c8f5
iew.java
iewGroup.java
85d28a00043e5985b11f517031d7b2317ac19e10 24-Jul-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Replace left/right with start/end for Gravity / LayoutParams / Padding"
b6a45cb92892f9080b7a2f131b4386fd1167efbb 24-Jul-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Make RelativeLayout aware of layout direction"
f443f98e7f41badd8f5d6f7bf7d26432e79a88ed 14-Jul-2012 Fabrice Di Meglio <fdimeglio@google.com> Make RelativeLayout aware of layout direction

- see bug #5429822 UI should be mirrored for RTL locales (Arabic, Hebrew, farsi)

Change-Id: Ica92841fa0c13c25fcf89c4700b0771eec4fd6d7
iewGroup.java
d32460c5b7bea7b06e345397fdbaca58d9732dcf 21-Jul-2012 Jeff Brown <jeffbrown@google.com> Refactor local window manager implementation.

The objective of this refactoring is to remove the reliance on
WindowManager wrapper objects for compatibility mode and for
managing sub-windows.

Removed the WindowManager.isHardwareAccelerated() method since
it is never used.

Change-Id: I4840a6353121859a5e0c07d5cc307a437c595d63
horeographer.java
isplay.java
indow.java
indowManager.java
indowManagerImpl.java
23e7c35ab5d43242d35b1019ce1a50bfb495cd27 20-Jul-2012 Jeff Brown <jeffbrown@google.com> Remove dead code in window manager.

The 'nest' parameter is always false so we can get rid of support
for redundantly added views.

Change-Id: I30c6a856797bdc72c4e1aa4cb26b930a33ce9a16
iewRootImpl.java
indowManagerImpl.java
bc700adbe0729b2d031e14aa25590ecf67c66a4f 20-Jul-2012 Satoshi Kataoka <satok@google.com> Merge "Fix a crash in InputMethodManager when switching the IME in the system process"
aac0d4ed026d1cfbcf3fa81c6e4eb96f4347ca17 20-Jul-2012 Fabrice Di Meglio <fdimeglio@google.com> Replace left/right with start/end for Gravity / LayoutParams / Padding

- see bug #5429822 UI should be mirrored for RTL locales (Arabic, Hebrew, farsi)

Change-Id: Id9af5375fb9b0edeae5232c77e52ecd497bd2e67
urfaceView.java
34caec99407570766d27106f73668802150e7357 20-Jul-2012 Svetoslav Ganov <svetoslavganov@google.com> Views with node providers are important for accessibility in auto mode.

1. If a view's important for accessibility attribute is set to auto the
framework is responsible to determine if it really is. Views with
accessibility node providers should be important for accessibilty
since they are roots of virtual view trees and such trees are
always important.

bug:6843043

Change-Id: I4b352c59fdefdf9ad220714a43ecb9e01d1c1c1f
iew.java
4e5184f929d2498714bc7734fe10b9b8810cb071 13-Jul-2012 Satoshi Kataoka <satok@google.com> Fix a crash in InputMethodManager when switching the IME in the system process

Bug: 6789252
Change-Id: I66f51da1299532793ef8fa700f35b0811670f235
nputmethod/InputMethodManager.java
016456e4327fdd501afafc1958653bdbc4fe7af5 18-Jul-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix padding resolution

Change-Id: I2181a0a4057be0d20744b1512dbc1fbc53490d81
iew.java
a9108a217e039492855fbeacda2ab6c4f4a3f70a 18-Jul-2012 Adam Powell <adamp@google.com> Add View#generateViewId; make RadioGroup use it

Bug 6448164

generateViewId provides a way for applications to generate opaque ID
values suitable for use with View#setId that will not collide with
values generated by aapt for R.id.

Fix a bug where RadioGroup assumes object hash codes will always be
positive.

Change-Id: I3e2870cd672d6061bb465128f428c81aeef0c44b
iew.java
c69238ebc8d011ce225c9540bcf4e79bd3fa8eb0 17-Jul-2012 Jeff Brown <jeffbrown@google.com> Merge "Remove dithering support."
3cc321ecf505d87850740ad3c63849e6793a8ef6 17-Jul-2012 Jeff Brown <jeffbrown@google.com> Remove dithering support.

The dithering flag is no longer implemented in Surface Flinger
so this is all dead code.

Change-Id: I74c0e452923207e5b7cfe0eeca9457e5cb990947
urface.java
indowManager.java
abae83d155aac24ff52c850eda0f0d36c71cd3d1 17-Jul-2012 Jeff Brown <jeffbrown@google.com> Merge "Remove freeze(), unfreeze() and setFreezeTint()."
f422a5669457c152e36e889c820d64b37e005167 17-Jul-2012 Jeff Brown <jeffbrown@google.com> Merge "Remove freezeDisplay(), which is no-op."
ef4e817ad642303509da1cb28ce5a265e1ac3e17 17-Jul-2012 Jeff Brown <jeffbrown@google.com> Remove freeze(), unfreeze() and setFreezeTint().

This is all dead code.

Change-Id: Ia8a3068606bfe277a16cde5690f47996657863e8
urface.java
55e395ab33f24b009d87a4d45a5566394260fff7 16-Jul-2012 Jeff Brown <jeffbrown@google.com> Remove freezeDisplay(), which is no-op.

Change-Id: I981ee49e6e2d41a09feaee4b384392e83f7faf3d
urface.java
c9c9a48e7bafae63cb35a9aa69255e80aba83988 16-Jul-2012 Svetoslav Ganov <svetoslavganov@google.com> Removing a workaround for incorrect window position on window move.

1. The window manager was not notifying a window when the latter
has been moved. This was causing incorrect coordinates of the
nodes reported to accessibility services. To workaround that
we have carried the correct window location when making a
call from the accessibility layer into a window. Now the
window manager notifies the window when it is moved and the
workaround is no longer needed. This change takes it out.

2. The left and right in the attach info were not updated properly
after a report that the window has moved.

3. The accessibility manager service was calling directly methods
on the window manager service without going through the interface
of the latter. This leads to unnecessary coupling and in the
long rung increases system complexity and reduces maintability.

bug:6623031

Change-Id: Iacb734b1bf337a47fad02c827ece45bb2f53a79d
ccessibilityInteractionController.java
InputFilter.aidl
InputFilterHost.aidl
WindowManager.aidl
nputFilter.java
iew.java
iewRootImpl.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/IAccessibilityInteractionConnection.aidl
6bcfe893d46b1adb5a89920b82707c3d55a53e27 13-Jul-2012 Chet Haase <chet@google.com> am 0f8e402e: Force invalidates on non-visible views. DO NOT MERGE

* commit '0f8e402e954c6e37102fa70f81a1d8ec47156338':
Force invalidates on non-visible views. DO NOT MERGE
87e8b25ea3c95be5921a79c65fbf4060de2e2e84 13-Jul-2012 Chet Haase <chet@google.com> Merge "Remove redundant computeScroll() call for hw-accelerated views"
401b1f85746ab7005907747a59534def967d825b 13-Jul-2012 Romain Guy <romainguy@google.com> Merge "Remove obsolete optimization"
f877308f77f7c6f3edd91618a092207dd3be9077 13-Jul-2012 Romain Guy <romainguy@google.com> Remove obsolete optimization

Change-Id: I2d43c009c62a7f4a4a2e0a6303bdfa692c4b8c8c
iew.java
iewConfiguration.java
526057bc77150e608666bbc80a0c9626254650a0 13-Jul-2012 Chet Haase <chet@google.com> Remove redundant computeScroll() call for hw-accelerated views

View.draw() calls computeScroll() to initialize scrolling values correctly.
But getDisplayList() also calls computeScroll() for the same reason, resulting
in 2 calls to that method for hw-accelerated views.
Fix: avoid calling computeScroll() in View.draw() for views with display lists.

Change-Id: I57a3862e2d554752cd0fdb862513cbb3dfb3105c
iew.java
c643ca97a800486359a5fd756936c716dbfffb0d 13-Jul-2012 Jeff Brown <jeffbrown@google.com> Merge "Fix bug in IME handling of pending key events."
2499bbecc26ef14a57339b7b8540fce6df280cb1 13-Jul-2012 Jeff Brown <jeffbrown@google.com> Fix bug in IME handling of pending key events.

Bug: 6812529
Change-Id: I7195a4346d44d65a79969a1bb5daa3bb8a018600
nputmethod/InputMethodManager.java
0f8e402e954c6e37102fa70f81a1d8ec47156338 03-Jul-2012 Chet Haase <chet@google.com> Force invalidates on non-visible views. DO NOT MERGE

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 #6813661 offscreen views don't get invalidated properly (may remain invisible when returning onscreen)

Change-Id: Ic4b439540084a7163be9afc585bea6560d073280
iewGroup.java
iewRootImpl.java
f0af1d5cb255f136d2fff773be7518ffd7ae3b93 12-Jul-2012 Romain Guy <romainguy@google.com> Remove unused View.flushLayer() API

Change-Id: I5d4c7388afb5265964ab6b769cc0abfee9745c84
LES20Canvas.java
LES20Layer.java
ardwareLayer.java
iew.java
7d3082a3f09e32e7c42b2896e90902157039b10e 12-Jul-2012 Romain Guy <romainguy@google.com> Update View's opacity when changing the background color

Change-Id: Ib5851d47918c99d4906055a9d0245ea100aee231
iew.java
4c9dfc4da992f67a86209d8b2b8539d697373ad6 12-Jul-2012 Romain Guy <romainguy@google.com> Merge "Update layers' opaque property when needed"
846a533945576e5cb1a66529ca3a52d71749f04f 12-Jul-2012 Romain Guy <romainguy@google.com> Update layers' opaque property when needed

Before this change, changing a View's opacity would not be reflected
by hardware layers. This could cause layers to retain their previous
opacity.

Change-Id: Iba2c8b4242deca021651df9324cc7c585a64653d
LES20Canvas.java
LES20Layer.java
LES20RenderLayer.java
LES20TextureLayer.java
ardwareLayer.java
iew.java
fbf885b652272013f44da71e9f77923333bf62eb 10-Jul-2012 Craig Mautner <cmautner@google.com> Merge "Notify client side of window movement."
905bd369510838b35db61c30d6b8e2c5f564be6a 10-Jul-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Make ScrollBar widget aware of layout direction"
55aeca913f17e5cb9ab07ef79b0b01377ae88cbd 10-Jul-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Improve resolution of inherited layout direction"
15d03bf2a6102c1be9a90da4296155a93da97244 10-Jul-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix MarginLayoutParams resolution"
fd8d9c4c0a3930c9b2585cd54ea4288fbb15cceb 10-Jul-2012 Svetoslav Ganov <svetoslavganov@google.com> AccessibilityNodeInfo bounds in screen incorrect if application scale not one V2.0.

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: Id9de3de885210d0725d1f3fde38e769b0cfd12a7
ccessibilityInteractionController.java
iew.java
69bd55844b2b2b78a0ff43e5123954cab3693ea6 02-Jul-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix MarginLayoutParams resolution

- need to keep initial left/right values for correct resolution

Change-Id: Ia8d0fec7d3c427086b7b5898e544e369b2de4229
iewGroup.java
05e91ed5a7ea17f021e1811166942a7d758e1cce 03-Jul-2012 Chet Haase <chet@google.com> Force invalidates on non-visible views to traverse the hierarchy

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
iewGroup.java
iewRootImpl.java
9dc2cc53ac332d73376f64cc8e7c713762d74bdd 04-Jul-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "AccessibilityNodeInfo bounds in screen incorrect if application scale not one."
983119ab22a18c743e4084dff27f35e3f490dd34 04-Jul-2012 Svetoslav Ganov <svetoslavganov@google.com> AccessibilityNodeInfo bounds in screen incorrect if application scale not one.

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
iew.java
a0fd78897c532246e0da3819bcfcb66299076084 03-Jul-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Remove the accessibility focus search code."
7a82b2be0674cc9c925c6892aa8a534896e277f9 03-Jul-2012 Svetoslav Ganov <svetoslavganov@google.com> AnnounceForAccessibility is broken for any view that has a ContentDescription.

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
iew.java
27e2da7c171afa39358bbead18fbe3e6b8ea6637 03-Jul-2012 Svetoslav Ganov <svetoslavganov@google.com> Remove the accessibility focus search code.

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
ccessibilityInteractionController.java
ocusFinder.java
iew.java
iewGroup.java
iewParent.java
iewRootImpl.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityNodeProvider.java
5702d4dfb5b81491f873a3617f8d8fc8dc5279e6 30-Jun-2012 Craig Mautner <cmautner@google.com> Notify client side of window movement.

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
Window.aidl
iew.java
iewRootImpl.java
4efade8a85d1352d91dcb4f4be2c337223688840 29-Jun-2012 Michael Jurka <mikejurka@google.com> Merge "Removing setChildrenLayersEnabled"
ba64974141bb04d35759c7a8f1741d23c172f9a5 29-Jun-2012 Michael Jurka <mikejurka@google.com> Removing setChildrenLayersEnabled

Change-Id: I88d8228eadb59160648f2c4e131fcd85945f2109
iew.java
iewGroup.java
b93911f2e05450de86aa0075144750bc31f499c2 27-Jun-2012 Fabrice Di Meglio <fdimeglio@google.com> Improve resolution of inherited layout direction

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
iew.java
a4b7f2f75e7803193429ec1179fb5e2eb1c6fbda 21-May-2012 Dianne Hackborn <hackbod@google.com> Use two fingers to work some magic...

Change-Id: Ibcb3dbd3d158c22da8277e544d81fb47eadccd49
WindowSession.aidl
indowManager.java
indowManagerPolicy.java
41e6e0c49f51e5bafca4912d407202f572d4e208 23-Jun-2012 Jean-Baptiste Queru <jbq@google.com> am c34188a9: resolved conflicts for merge of f8f76d52 to jb-dev-plus-aosp

* commit 'c34188a95405526416325604386af4f48ba20918':
Add the possibility to modify the View focus rect
c34188a95405526416325604386af4f48ba20918 23-Jun-2012 Jean-Baptiste Queru <jbq@google.com> resolved conflicts for merge of f8f76d52 to jb-dev-plus-aosp

Change-Id: I83beeb45320de2c3fc3a00c2f5cd86a17ac1dc9f
c91b6ca442cc4573a314c78864d1e5a3e1f27ac6 22-Jun-2012 Fabrice Di Meglio <fdimeglio@google.com> Make ScrollBar widget aware of layout direction

- see bug #5429822 UI should be mirrored for RTL locales (Arabic, Hebrew, farsi)
- also use isLayoutRtl() for being more concise

Change-Id: Ibf861333effdc646398fcd9354d96f2156550607
iew.java
eb129a266c9401fcb62330805cf82a98e896c134 21-Jun-2012 Romain Guy <romainguy@google.com> am 16613476: am 0d6f4c06: Dejank: don\'t allocate when scrolling lists

* commit '16613476c80f20736ef6bd3d217ab56aa57b03c9':
Dejank: don't allocate when scrolling lists
0d6f4c06df0b0e35125f088ca028c7226b274dc4 21-Jun-2012 Romain Guy <romainguy@google.com> Dejank: don't allocate when scrolling lists

The new display list properties introduces in JB were causing numerous
and expensive memory allocations while scrolling lists. During a scroll
ListView sometimes attempts to apply an offset to views before they are
drawn for the first time. This had the side effect of generating a new
IllegalStateException and its entire stack trace. The exception was
caught inside the display list and never seen by users.

Generating an exception is very expensive both in terms of allocated
memory and CPU time spent crawling the stack.

List scrolls/flings are a common case of this issue but it also happens
during various types of animations. A simple alpha animation, for instance,
can cause the problem to occur.

Another side effect of this issue is more frequent and longer GC pauses.

Change-Id: Ic1b37cc84f7c8f290209cfb990d030e96d6e0dc7
LES20DisplayList.java
c63c7bf94413ef36b282830e3c250a3b9013dbcd 20-Jun-2012 Romain Guy <romainguy@google.com> am b56fe8ab: am f96d117e: Merge "Add extra systrace tracing" into jb-dev

* commit 'b56fe8abf6735337b65e050f44e1baf2f3f813ed':
Add extra systrace tracing
f96d117e9bf2d5998677521330697628c95ec3f1 20-Jun-2012 Romain Guy <romainguy@google.com> Merge "Add extra systrace tracing" into jb-dev
77e67cf9055378d00bb57f458129462f33047039 20-Jun-2012 Romain Guy <romainguy@google.com> Add extra systrace tracing

This change shows how much time is spent updating and executing
framework display lists within a frame.
This change also fixes a crash that happnes if you attempt to
perform a dumpsys gfxinfo while the app is drawing (we are telling
developers to use this new tool.)

Change-Id: Ia4047a78a42b545ab77176ef4f371c300686548c
ardwareRenderer.java
73b21cfa50fbad38a8802289dd9618f7fd383e34 20-Jun-2012 Chet Haase <chet@google.com> am 3662fe5e: am ebc9d317: Merge "Handle non-started LayoutTransition animations correctly" into jb-dev

* commit '3662fe5e3507ada2a592b8df6120b8cebfb5d8d9':
Handle non-started LayoutTransition animations correctly
ddbb346e5a08c94dca44d681af53f0d9dc75cadf 19-Jun-2012 Chet Haase <chet@google.com> Handle non-started LayoutTransition animations correctly

A recent change to LayoutTransition noop'd animations in non-visible
parents, to avoid artifacts like scaling/moving from (0,0,0,0). But there
was logic in ViewGroup that didn't account for transitions that didn't actually
run an animation, causing a disconnect between the state of a parent (getting ready
to remove an item later) and the state of the transition (not running, therefore
not needing the child to be removed later).

The fix was to detect when the transition did not start and avoid adding the
view to the list of children to be removed later.

Issue #6602502 Playing video through crackle application only audio is heard no video is displayed

Change-Id: Id5260580ab0d6dd165c62006c7bd579fd821a5f5
iewGroup.java
629f051f7d061f4db4a174dbd267a96f0c8113df 19-Jun-2012 Jean-Michel Trivi <jmtrivi@google.com> am 586b8ee6: am 2f442304: Merge "Remote volume handling" into jb-dev

* commit '586b8ee62e0245e3c88ce9db51e1c1c3b4f1fb2c':
Remote volume handling
2f4423043ffeaf232ec984be03743326f08cdc8a 19-Jun-2012 Jean-Michel Trivi <jmtrivi@google.com> Merge "Remote volume handling" into jb-dev
3114ce3861f20f9a5c2c59dd2629197a1f4874a8 12-Jun-2012 Jean-Michel Trivi <jmtrivi@google.com> Remote volume handling

Extend RemoteControlClient class to enable an applicaton to
specify more information about how it's playing media, now covering
usecases where media playback happens "remotely". This playback
information can be used to set the volume and maximum volume
used remotely.
Declare a new intent and associated extras in Intent,
ACTION_VOLUME_UPDATE, so an application can be notified that
the volume it handles should be updated. It can then use
the new RemoteControlClient.setPlaybackInformation() method
to notify AudioService what the volume is.
Extend AudioService to maintain playback information associated
with the RemoteControlClient information in the stack of
media button event receivers (mRCStack). The information
about the active remote is cached so the stack doesn't have
to be iterated over in order to retrieve remote playback info.
Events to "adjust" the remote volume based on hardware key
presses cause the client application to be notified of
volume updates, and the volume panel to display the volume
set by the app.
Revise which stream type is controlled when none is specified
according to latest guidelines for remote playback.
Update VolumePanel class to support a new pseudo stream type,
AudioService.STREAM_REMOTE_MUSIC, that corresponds to the
remote playback volume, and uses the new "media route" icon.
Enable it to receive asynchronously new volume values for
the remote that will be displayed if the UI is still up,
and ignored otherwise.
Now supports hiding/showing sliders dynamically so remote
volume only appears when AudioService has a remote control
client handling remote volume.
Define new java symbols for the two media route icons.
Modify lockscreen behavior: don't automatically control music
volume when music is active, consider also remote playback.

Still to do:
- playback information set by RemoteControlClient should post
a message for AudioService to update playback information
instead of updating it synchronously

Change-Id: I557aa687239f9acfe33a609f05876c67fa7eb967
olumePanel.java
fce27d8edd1ef0bc283ac0053cab0261f2cd9929 18-Jun-2012 Scott Anderson <saa@android.com> Merge "Clean up IntToStrings for window TYPE_*"
c32b2091d6441e7709342ca62f0976fc4a0367e4 18-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am 45c4a8df: am ec7c7ebf: Merge "API for finding accessibility focus in virtual tree not needed." into jb-dev

* commit '45c4a8df9487f53af37ded1f5a1ebe500e89b493':
API for finding accessibility focus in virtual tree not needed.
ec7c7ebf01121d17f7a12e827bd77c024eab54e8 18-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "API for finding accessibility focus in virtual tree not needed." into jb-dev
9471faf5dcc3ebf88bbc1a01809eb7312e65f829 18-Jun-2012 Adam Powell <adamp@google.com> am 8f695c52: am 706a8699: Merge "Make MediaRouter UI more robust around route count changes" into jb-dev

* commit '8f695c525f5baa623a8b951bd3a1fd2b5efd1ceb':
Make MediaRouter UI more robust around route count changes
91a5f4bef5720cf38e61634fd1337901bf17c694 18-Jun-2012 Jeff Brown <jeffbrown@google.com> am 79476980: am d7a04de1: Capture window manager\'s last ANR state in bug report.

* commit '7947698096d4b09bb0f662fdca89cfa5d475743e':
Capture window manager's last ANR state in bug report.
7e8aac14c3a930dea0ca7a1d1e0e8a384fbf8916 18-Jun-2012 Adam Powell <adamp@google.com> am bb20575f: am 130b4572: ActionProvider API update

* commit 'bb20575f85ada8ccdacefc53f0da7e00fdf12a16':
ActionProvider API update
a2f0fc1e6892a10e5786ec34849066af9d1ed004 18-Jun-2012 Jeff Brown <jeffbrown@google.com> am 4440d158: am 5aa02e20: Merge "Revert "Synthesize fake vsyncs when the screen is off."" into jb-dev

* commit '4440d158b88f948ced442797baffad35743406af':
Revert "Synthesize fake vsyncs when the screen is off."
041982bf50b3ce4a26170c52c732f328f519f650 18-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am 11832db4: am 531d5866: Merge "Accessibility focus search and setting it from hover are performed by the client." into jb-dev

* commit '11832db437d04d71dec9a78382138b2dd6518e37':
Accessibility focus search and setting it from hover are performed by the client.
706a8699008ce416a7fbd9a4215726fdb00ee803 18-Jun-2012 Adam Powell <adamp@google.com> Merge "Make MediaRouter UI more robust around route count changes" into jb-dev
d7a04de16798acc04ec0a89a0c7d9f1cf60d1521 17-Jun-2012 Jeff Brown <jeffbrown@google.com> Capture window manager's last ANR state in bug report.

Currently just grabbing the window state but we could grab
other things as part of the last ANR report.

Bug: 6680398
Change-Id: I23aa70907b1bdcb21c8acc556fde196ca790ef6a
indowManagerPolicy.java
45a02e0809c14a52aa24658666df0d41ce661857 18-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> API for finding accessibility focus in virtual tree not needed.

1. The function for finding where the accessibility focus in a virtual
node tree presented by an AccessibilityNodeProvider is not needed
API since the framework already keeps track of the accessibility
focused virtual node in order to draw the focus rectangle. This API
adds unnecessary complexity to developers of AccessibilityNodeProviders.

bug:6675330

Change-Id: I84774686b06a995073a39e45b8ef22f2cd04b773
ccessibilityInteractionController.java
iew.java
iewRootImpl.java
ccessibility/AccessibilityNodeProvider.java
39d5c6172503620ac3761148adac5fd7fa20d02d 16-Jun-2012 Adam Powell <adamp@google.com> Make MediaRouter UI more robust around route count changes

Improve the API around ActionProvider visibility overriding. Allow the
application to notify whatever is hosting the ActionProvider that
visibility has changed in a way that is friendly to alternate support
library-style reimplementations of MenuItem.

Allow MediaRouter.Callback implementations to add or remove themselves
or other Callbacks during dispatch of callback events.

Make MediaRouteActionProvider track the visibility of corresponding
menu items more accurately.

Change-Id: Ic7ddb6a87c3637904750d2661e4a9fa323b09ea0
ctionProvider.java
130b4572d1f3df702e5b296a655d15a41f6d4c66 16-Jun-2012 Adam Powell <adamp@google.com> ActionProvider API update

* Add ActionProvider#overridesItemVisibility and isVisible.
These methods allow an ActionProvider to override the
visibility of a MenuItem that it is bound to. If a MenuItem
has been explicitly hidden by the application, it will not
be visible.

* Change MediaRouteActionProvider to not require a MediaRouter
callback, to avoid extra lifecycle management headaches.

Change-Id: I606fa98b3a6a3e60a953dd024274f9bf9c67acdd
ctionProvider.java
5aa02e20186a9e30553a8ef0d53d5fad4c0b7597 16-Jun-2012 Jeff Brown <jeffbrown@google.com> Merge "Revert "Synthesize fake vsyncs when the screen is off."" into jb-dev
531d5866d8e2529e2ae1c6ef12202119753bec03 16-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessibility focus search and setting it from hover are performed by the client." into jb-dev
8ffe8b304e4778b3c95e57ad5a77cd41c9cf9f7b 15-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Accessibility focus search and setting it from hover are performed by the client.

1. Currently we are providing accessibility focus search algorithm in the
framework and we are also setting accessibility focus from hover. It
appears that implementing a focus search strategy that works for all
accessibility services is non trivial task if feasible. Based on
feedback from the developers of two such services at Google - TalkBack
and BarilleBack - the built in focus search does not quite match what
they need and they would like to implement a custom strategy.

Hence, having APIs for accessibility focus search in the framework does
not make. Therefore, we are hiding this APIs and later will take out the focus
search logic and allow the accessibility service to implement search.

Also putting accessibility focus from hover is tightly integrated with
the focus search since the set of views that get accessibility focus
from hover should be the same as the set of views returned by the
focus search routine. Therefore, we are letting the accessibility service
decide where to put accessibility focus when it gets an accessibility
hover event.

bug:6675330

Change-Id: Ie152230990a6602f3fd1d82de2177d0b1444d654
iew.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityNodeProvider.java
ba726113e525823f2594507d098f2d99426655f6 15-Jun-2012 Jeff Brown <jeffbrown@google.com> Revert "Synthesize fake vsyncs when the screen is off."

This reverts commit 858491ba13ab5d45a5ec462d002b5856703b1b2b

It turns out that Surface Flinger is supposed to generate fake vsyncs while the screen is off, but sometimes it wasn't working due to a bug. That bug has now been fixed by the following change: I7c6abc23bb021d1dfc94f101bd3ce18e3a81a73e
horeographer.java
84ce6565b0ba22d2c97b79322577f691dda1a95f 15-Jun-2012 Jeff Brown <jeffbrown@google.com> am 655410e7: am 5c74bca4: Merge "Synthesize fake vsyncs when the screen is off." into jb-dev

* commit '655410e7b3c79bb705aaba0bdfc77ecdaa25d4ca':
Synthesize fake vsyncs when the screen is off.
5c74bca49a48c3316aca9fed00d287cb8cbc2be4 15-Jun-2012 Jeff Brown <jeffbrown@google.com> Merge "Synthesize fake vsyncs when the screen is off." into jb-dev
858491ba13ab5d45a5ec462d002b5856703b1b2b 15-Jun-2012 Jeff Brown <jeffbrown@google.com> Synthesize fake vsyncs when the screen is off.

When the screen is off, we might not receive real vsync pulses from
the hardware which would cause posted Choreographer callbacks to not run.
This is bad because messages in the Looper might be blocked behind a barrier
that is scheduled to be removed by one of those Choreographer callback
(see ViewRootImpl.doTraversals). Until the barrier is removed, those messages
will not run. To prevent starvation of the Looper, we synthesize fake vsync
pulses at a reduced rate whenever the display hardware stops generating them.

This change should fix a variety of rare non-deterministic bugs where
the system might appear to be unresponsive while the screen is off,
and spurious ANRs reported shortly after the screen is turned back on.

Bug: 6574842
Bug: 6636995
Bug: 6643559
Change-Id: I263f2fdf979afd79e5ac47a0cc5d34a93b860c21
horeographer.java
04ddf3c0508f3d50e6ab82cecc0adc92f52b7803 14-Jun-2012 Jeff Brown <jeffbrown@google.com> Allow applications to recover from IME related ANRs.

Timeout after 2.5 seconds.

Because communication with an IME occurs asynchronously
using oneway binder calls, it's possible for an input event
that was delegated to the IME to be dropped on the floor.
When this happens, the app (not the IME!) will get blamed
for the problem and will ANR forever.

Even if an event is not dropped on the floor, we should
eventually time out event dispatch to the IME if it's
being too slow.

This patch implements a timeout on all events delegated
to the IME. When the timeout expires, the event is marked
as having not been handled by the IME and the application
gets a crack at it. We also write a message to the log when
this occurs.

Ensure that we do not invoke the event finished callback
while holding the InputMethodManager's lock to avoid
potential deadlocks.

Fixed a minor bug where the InputMethodManager would not
remember the id of the current input method. This caused
the log messages and dumpsys state to print "null" as the
current input method id.

Bug: 6662465
Change-Id: Ibb3ddeb087ee6998996b0b845134e16a18aa3057
iewRootImpl.java
nputmethod/InputMethodManager.java
f2361156c4aee3dad26f25c410fcf255656922d1 15-Jun-2012 John Reck <jreck@google.com> Fix doc link

Change-Id: I5d2e6f04ed0ece6bf66b0b969c345108a1d372c5
iewDebug.java
01b76dcbddb05d1267409088284fc13b1e55accf 14-Jun-2012 Romain Guy <romainguy@google.com> am 06116b08: am a989b334: Merge "Don\'t create a giant layer for all notifications Bug #6642475" into jb-dev

* commit '06116b08dad51923672dde2d884baf0e0dc70d2e':
Don't create a giant layer for all notifications Bug #6642475
e526f14e3bc6b82e7977708c13683b21a0df7935 14-Jun-2012 John Reck <jreck@google.com> Merge "Show WebView layers in hierarchyviewer"
a989b334fd097114ce1016ce1668597a213a441c 14-Jun-2012 Romain Guy <romainguy@google.com> Merge "Don't create a giant layer for all notifications Bug #6642475" into jb-dev
54ab347fdde0e4d14d923cca80e5bcc7b879fc52 14-Jun-2012 Romain Guy <romainguy@google.com> Don't create a giant layer for all notifications
Bug #6642475

When expanding the status bar, create one layer per notification instead of
a single giant layer for the pile of notifications. This prevents layer
creation failure when the total height of the notifications is larger
than the maximum allowed texture size in OpenGL ES 2.0.

This change only enables layers on notifications that will be visible
once the notification area is fully expanded.

Change-Id: I3c791a66cf5ac0973f3a65cfcd84b95209d580f3
iewRootImpl.java
indowManagerImpl.java
926cf56676d760579573470c7848dbf119a86779 14-Jun-2012 John Reck <jreck@google.com> Show WebView layers in hierarchyviewer

Change-Id: I373e084d236baafe17982cfc367d167b81ca3e20
iewDebug.java
2c89d171fa055255c629b4823739d6f44a3a9bea 14-Jun-2012 Jeff Brown <jeffbrown@google.com> am fc959a38: am 9e197141: Merge "Add new ASSIST key and map it to the global assist intent." into jb-dev

* commit 'fc959a389564f2ffef9c4ceba0b1ff119dd53933':
Add new ASSIST key and map it to the global assist intent.
de7a8ead2467a4a152a5a9b2416c8048f1b48bbb 14-Jun-2012 Jeff Brown <jeffbrown@google.com> Add new ASSIST key and map it to the global assist intent.

Moved some duplicate code from SearchPanelView and LockScreen
over to SearchManager to avoid creating yet another copy of it
in PhoneWindowManager.

Bug: 6594275
Change-Id: Ib4ebcd6817639d17548952ab2ce7cb876c05777c
eyEvent.java
14584f1b6dbd6c3baf6da13b089427d177b50378 13-Jun-2012 Chris Craik <ccraik@google.com> am 06d6204a: am d772c487: Merge "Fix attachFunctor path to ignore delay" into jb-dev

* commit '06d6204a2ea7dd263b718018dbb81a88b9a516d5':
Fix attachFunctor path to ignore delay
d772c4878e2207795e92b26a462fd02bca7e3c2e 13-Jun-2012 Chris Craik <ccraik@google.com> Merge "Fix attachFunctor path to ignore delay" into jb-dev
cb82b942c89bf69b6c03e2f4951f519c1be115dc 13-Jun-2012 Chris Craik <ccraik@google.com> Fix attachFunctor path to ignore delay

Don't defer functor invocation when calling attach functor directly.

bug:6653638

Change-Id: Ifffc027df16612f380f39b82b7d0a4411d53b4ea
ardwareRenderer.java
95fc7a246f48773eec28b5a7de1fab4632df6d7f 13-Jun-2012 Romain Guy <romainguy@google.com> Merge "Remove ViewTreeObserver allocations"
c39ed4a6e54f5b11a2eb07e9aeb58597bd8c78ed 12-Jun-2012 Romain Guy <romainguy@google.com> Remove ViewTreeObserver allocations

A couple of allocations remain to handle possibly recursive listeners.

Change-Id: I72fd271c2fc4f4ad427a27e0665f780cae117aea
iewTreeObserver.java
5ef59976b1a0c8d03e0f3c5b41a3493b55fe9ee3 12-Jun-2012 Dianne Hackborn <hackbod@google.com> am f59467b3: am aabd9c23: Merge "Fix issue #6634325: View.setKeepScreenOn and..." into jb-dev

* commit 'f59467b3d6c5df8bf90de799e212275e5c26de86':
Fix issue #6634325: View.setKeepScreenOn and...
d3f97dc0fb08f4738f2e4c78df001b59f311951e 12-Jun-2012 Jeff Brown <jeffbrown@google.com> am 14afbba6: am ea6b8188: Merge "Improve ANR diagnostics." into jb-dev

* commit '14afbba66355fab168bed25c9bab33058372584a':
Improve ANR diagnostics.
2dc7232140ab6a107056540d5ed90fce9f104d99 12-Jun-2012 Jeff Brown <jeffbrown@google.com> am 62007aba: am 519e91ef: Merge "Detect bad behavior earlier in Choreographer." into jb-dev

* commit '62007aba1998055cf6ab3e610ed97dbe06341056':
Detect bad behavior earlier in Choreographer.
bc62684f02d93bcbdaa555bc230af4b5605aa912 12-Jun-2012 Romain Guy <romainguy@google.com> am 265888fe: am 6b5caee4: Merge "Prevent crash in WebView when disabling the hw renderer Bug #6596807" into jb-dev

* commit '265888fe6a57d5b77279c97b68cfa25865267e6b':
Prevent crash in WebView when disabling the hw renderer Bug #6596807
23ef5fcff4d99ce05ace9fd43dd0c1ace9489579 12-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am 5d15f40a: am f372e331: Merge "NPE when iterating by character and word in Launcher widgets." into jb-dev

* commit '5d15f40a19be01fa9c5a9674b31b6b18774cbeac':
NPE when iterating by character and word in Launcher widgets.
681f745916e4809f46e0d742437f7d724fc5be35 12-Jun-2012 Jeff Brown <jeffbrown@google.com> am 7d9a18ee: Merge "resolved conflicts for merge of 926a5c50 to jb-dev-plus-aosp" into jb-dev-plus-aosp

* commit '7d9a18eeb684e87da5a907c96d25da21918119b5':
Remove edge slop handling from ScaleGestureDetector.
aabd9c230f9849e8d52d2cb2e33bac7f163590d5 12-Jun-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #6634325: View.setKeepScreenOn and..." into jb-dev
9d0908919a65a4f3158a8fc50aaf320dfed36278 12-Jun-2012 Dianne Hackborn <hackbod@google.com> Fix issue #6634325: View.setKeepScreenOn and...

...MediaPlayer.setScreenOnWhilePlaying seem broken

We need to correctly clear the keep screen on flag when the view
hierarchy request is gone... and to do that, we need to keep the
actual state of the flag requested by the app. Also when the app
changes its state, we need to compute the proper value based on
both the app request and any requests in the view hierarchy.

Bug: 6634325
Change-Id: I060e9a34a10faffbaa77c06098cf21298bb4969f
iewRootImpl.java
265f1ccc5128319d81eee70ee2d2ae81573efb11 12-Jun-2012 Jeff Brown <jeffbrown@google.com> Improve ANR diagnostics.

When an ANR occurs, log the associated reason.

When an event takes too long to process (currently more than 2 seconds)
log basic information about the event including how long it actually
took.

Dump the contents of the inbound, outbound and wait queues as part
of dumpsys input.

Bug: 6574842
Change-Id: I9ab754c320f609cb86fe266c469a61e7032dfed6
horeographer.java
519e91ef84aab79d0e18ba72e8a133d2306b821c 12-Jun-2012 Jeff Brown <jeffbrown@google.com> Merge "Detect bad behavior earlier in Choreographer." into jb-dev
4fdf9c6e2a177845bb4cc20f69b83555de209144 12-Jun-2012 Jeff Brown <jeffbrown@google.com> Detect bad behavior earlier in Choreographer.

Detect wonky vsync timestamps (should they occur) and
warn loudly about them.

Warn when too many frames are skipped. The threshold is pretty
conservative right now (only warn if at least 30 frames are skipped)
but it can be adjusted using system property. Even skipping just a
couple of frames is enough to generate noticeable jank.
The threshold is currently intended to help track down bigger problems
such when an app does too much work on the UI thread.

Bug: 6574842
Change-Id: I4aac7e5e17d1fb51adb0510e318a72a28b3775ed
horeographer.java
6b5caee49085c63b0197fd1e5e952f3b76abe33d 11-Jun-2012 Romain Guy <romainguy@google.com> Merge "Prevent crash in WebView when disabling the hw renderer Bug #6596807" into jb-dev
f372e331e46bb9852520fa76c76f99ad99441893 11-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "NPE when iterating by character and word in Launcher widgets." into jb-dev
527ee91b60426b5a344e9905c7f9a14d6d26219e 11-Jun-2012 Romain Guy <romainguy@google.com> Prevent crash in WebView when disabling the hw renderer
Bug #6596807

A crash would occur in the following situation:
- WebView registers a functor with the hardware renderer
- The hardware renderer gets disabled
- WebView attemps to unregister its functor

Unregistering the functor fails because the hardware renderer is now disabled.
When the renderer becomes enabled again, the functor is invoked, which leads
to a native crash.

This change simply allows functors to always be unregistered, even when the
renderer is disabled. A disabled renderer only means that it will not be used
for rendering; as such, unregistering a functor is a valid operation and
should be allowed.

Change-Id: I0ff897a0cca7e048c609033215cd0f7f5c940bcc
iewRootImpl.java
bbd31559f32f86a100904fe8a5bc37677b5ba441 11-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> NPE when iterating by character and word in Launcher widgets.

1. The character and word iterators were use the application
context to keep track of locale changes. However, for widgets
the context from which the app context is obtained is custom
created therefore the app context is null and the iterators
code does not expect that. Now we are caching the locale
and update it when the configuration changes.

bug:6642281

Change-Id: I3fd201ab9e4efd79e3bdc8afd8ee644e4354a7fb
ccessibilityIterators.java
iew.java
926a5c507b2e532d1f1348dc8a5672b76ae1f4dc 11-Jun-2012 Jeff Brown <jeffbrown@google.com> Merge "Remove edge slop handling from ScaleGestureDetector." into jb-dev
a656414e948231177e41a74c2ab5e4015d09ba9d 10-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am 3dbb70ec: am 86bbf705: Merge "Settings crash after enabling TalkBack accessibility." into jb-dev

* commit '3dbb70ec9c593e11dd19efa528a99e9ec21d63e0':
Settings crash after enabling TalkBack accessibility.
3dbb70ec9c593e11dd19efa528a99e9ec21d63e0 10-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am 86bbf705: Merge "Settings crash after enabling TalkBack accessibility." into jb-dev

* commit '86bbf70587602c1fd86fce1a2a4be78da45aaedc':
Settings crash after enabling TalkBack accessibility.
076f17375b9530d40767b990016a83a9fcd18bf2 09-Jun-2012 Jeff Brown <jeffbrown@google.com> Remove edge slop handling from ScaleGestureDetector.

The edge slop code could violate invariants of ScaleGestureDetector,
such as the assumption that if an ACTION_POINTER_DOWN is observed
or if getPointerCount() >= 2, then there must be at least two
active pointers to choose from. But due to the edge slop handling,
it was possible for findNewActiveIndex to return -1 in this
case, resulting in a crash.

Bug: 6613154
Change-Id: I4e08e38a49ab27dac1be9484e19de086bc43624a
caleGestureDetector.java
ee33ad24cdc31ed0d7f99e110e041b0a63c9b0f1 09-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Settings crash after enabling TalkBack accessibility.

1. AccessibilityInput filter was not checking whether the touch
explorer instance is not null before passing it an accessibility
event. If the accessibility event is dispatched before the input
filter is installed but after it is created we runt into this
case.

2. Added a missing null check in accessibility node info.

bug:6635089

Change-Id: Ia389dc1f427427eb73794f6331ccb870e0b44c55
ccessibility/AccessibilityNodeInfo.java
4210a6f08b18604b94df5a8983628650645112b5 07-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am 8114f439: am ddbcce81: Merge "Cannot interact with dialogs when IME is up and on not touch explored popups." into jb-dev

* commit '8114f439fe8b409a00ac704b37128922690e2186':
Cannot interact with dialogs when IME is up and on not touch explored popups.
8114f439fe8b409a00ac704b37128922690e2186 07-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am ddbcce81: Merge "Cannot interact with dialogs when IME is up and on not touch explored popups." into jb-dev

* commit 'ddbcce81acaa744d35c727d9a530b04255fab5af':
Cannot interact with dialogs when IME is up and on not touch explored popups.
ddbcce81acaa744d35c727d9a530b04255fab5af 07-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Cannot interact with dialogs when IME is up and on not touch explored popups." into jb-dev
86783474fdec98a22bc22e224462767eab13e273 07-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Cannot interact with dialogs when IME is up and on not touch explored popups.

1. If the last touch explored location is within the active window we
used to click on exact location if it is within the accessibility
focus otherwise in the accessibility focus center. If the last touch
explored location is not within the active window we used to just
click there. This breaks in the case were one has touch explored
at a given place in the current window and now a dialog opens *not*
covering the touch explored location. If one uses swipes to move
accessibility focus i.e. to traverse the dialog without touching
it one cannot activate anything because the touch explorer is using
the last touch explored location that is outside of the active
window e.g the dialog.

The solution is to clear the last touch explored location when a
window opens or accessibility focus moves. If the last touch
explored location is null we are clicking in the accessibility
focus location.

bug:6620911

2. There is a bug in the window manager that does not notify a
window that its location has changed (bug:6623031). This breaks
accessibility interaction with dialogs that have input because
when the IME is up the dialog is moved but not notified. Now
the accessibility layer gets incorrect location for the
accessibility focus and the window bounds.

The soluion is when the accessibility manager service calls
into the remove thress to obtain some accessibility node infos
it passes the window left and top which it gets from the
window manager. These values are used to update the attach info
window left and top so all accessibility node infos emitted
from that window had correct bounds in screen coordinates.

bug:6620796

Change-Id: I18914f2095c55cfc826acf5277bd94b776bda0c8
ccessibilityInteractionController.java
iew.java
iewRootImpl.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/IAccessibilityInteractionConnection.aidl
9dc7d19309f9906fe34b19622dc7731934031d25 07-Jun-2012 Chet Haase <chet@google.com> am b4b0a7fe: am a1723d18: Merge "Revert "Remove ViewTreeObserver allocations"" into jb-dev

* commit 'b4b0a7fea8735dc7de4bdcfe5e7f065a39ee8e2d':
Revert "Remove ViewTreeObserver allocations"
b4b0a7fea8735dc7de4bdcfe5e7f065a39ee8e2d 07-Jun-2012 Chet Haase <chet@google.com> am a1723d18: Merge "Revert "Remove ViewTreeObserver allocations"" into jb-dev

* commit 'a1723d18662d1316f931a6b4b3ee6ddc42743ee4':
Revert "Remove ViewTreeObserver allocations"
a1723d18662d1316f931a6b4b3ee6ddc42743ee4 07-Jun-2012 Chet Haase <chet@google.com> Merge "Revert "Remove ViewTreeObserver allocations"" into jb-dev
89b8838496dca5920c6cd86aef555a5e180556d2 07-Jun-2012 Chet Haase <chet@google.com> am ca43c961: am 44b2fe3f: Track canvas clearing for swap buffers logic.

* commit 'ca43c96127e9f7cdab8ee70638a2445347eebd08':
Track canvas clearing for swap buffers logic.
ca43c96127e9f7cdab8ee70638a2445347eebd08 07-Jun-2012 Chet Haase <chet@google.com> am 44b2fe3f: Track canvas clearing for swap buffers logic.

* commit '44b2fe3fc114ee5f7273c6b0fee2cc999bf244a2':
Track canvas clearing for swap buffers logic.
0f8ffd83745f718a476564f35a2f7fd4637275bc 07-Jun-2012 Chet Haase <chet@google.com> Revert "Remove ViewTreeObserver allocations"

This reverts commit b999cc118fe430699e9a67d5dab355125b873abb.

There was an assumption in this earlier change that observer dispatching could not be
recursive - we could only ever have one iteration on the observer listener list. This
assumption broke down in a specific app, and maybe in more, so reverting the change for now.
We should probably find a way to accomplish the same allocation-minimizing goal without
causing exceptions when violating our assumptions.

Issue #6620795 [Application compatibility] Lufthansa app crashes

Change-Id: I1c1f9ad329c14398feb0e74ce77e1a07111f7d1f
iewTreeObserver.java
44b2fe3fc114ee5f7273c6b0fee2cc999bf244a2 07-Jun-2012 Chet Haase <chet@google.com> Track canvas clearing for swap buffers logic.

A previous fix made it necessary for a frame to render something to GL
in order to cause a call to eglSwapBuffers(). Besides the calls being
tracked as part of issuing a DisplayList, there is also a potential call
to clear the canvas (via glClear()) on non-opaque surfaces. This call is also
good to track, since a surface that gets cleared without any other drawing operations
is worth flipping to the screen (to erase old contents on that surface).

This fix tracks the status of the pre-draw operations to find out whether
glClear() was called and then sets the drawing status appropriately.

Issue #6606422 QuickContact dismissal is janky again (Tracking)

Change-Id: I5fcaccfdc9293dd46b83f2fc279730a5d2740ebf
LES20Canvas.java
ardwareCanvas.java
ardwareRenderer.java
4e772cb9387b9631f8830e3ac73474fa627ddf62 07-Jun-2012 Chris Craik <ccraik@google.com> am 6d99a024: am 8f1f714f: Merge "Revert "Add more temporary logging for investigating detachFunctor"" into jb-dev

* commit '6d99a024647ff845179311d611dcf031965ba96d':
Revert "Add more temporary logging for investigating detachFunctor"
6d99a024647ff845179311d611dcf031965ba96d 07-Jun-2012 Chris Craik <ccraik@google.com> am 8f1f714f: Merge "Revert "Add more temporary logging for investigating detachFunctor"" into jb-dev

* commit '8f1f714f831bf8bf10f94211c42e36ef2851810d':
Revert "Add more temporary logging for investigating detachFunctor"
8f1f714f831bf8bf10f94211c42e36ef2851810d 07-Jun-2012 Chris Craik <ccraik@google.com> Merge "Revert "Add more temporary logging for investigating detachFunctor"" into jb-dev
932b7f6765968bd526c03512f3805fbc3924dc29 06-Jun-2012 Chris Craik <ccraik@google.com> Revert "Add more temporary logging for investigating detachFunctor"

bug:6608646

This reverts commit 8857b2f76abad1e4ec742dfd85d0c997880be376

Change-Id: I1563b5974c52b84201ae448298f804eb0dcc235d
ardwareRenderer.java
iewRootImpl.java
5fccbbebdf010ed9457cab8a720f68a0b4e9d4c7 06-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am cf27a374: am 538252cd: Merge "Removing leftover code to sync accessibility and input focus." into jb-dev

* commit 'cf27a3743941d9ccb1d20a294085819049fac028':
Removing leftover code to sync accessibility and input focus.
cf27a3743941d9ccb1d20a294085819049fac028 06-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am 538252cd: Merge "Removing leftover code to sync accessibility and input focus." into jb-dev

* commit '538252cd37945612a4761ff03d87022d56e33b96':
Removing leftover code to sync accessibility and input focus.
538252cd37945612a4761ff03d87022d56e33b96 06-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Removing leftover code to sync accessibility and input focus." into jb-dev
462a7284b52503f1d7f2b3b9c9e9397d0c40d0ed 06-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Removing leftover code to sync accessibility and input focus.

1. We have decided to let the accessibility services take care
for syncing accessibility and input focus. Some apps may
move input focus when a given view takes input focus which
dragging accessibility focus can lead to a loop in the
focus traversal. This change removes some leftover sync
code.

bug:6616861

Change-Id: I57cb44e315a386d13596794d3767b559e9ee3d99
iew.java
b85afc25d5d4ef3aab378691d8df306c99f7ab96 06-Jun-2012 Adam Powell <adamp@google.com> resolved conflicts for merge of 1178569b to master

Change-Id: If2bb6ccaee99bcf199cd93f24eba217fe6ff485e
1178569b261a094fe6fb830e91f002e4fcd9fc1a 06-Jun-2012 Adam Powell <adamp@google.com> am f6452d0c: Merge "More fun with MediaRouter" into jb-dev

* commit 'f6452d0cac64b72005af330411b5a895f0038312':
More fun with MediaRouter
f6452d0cac64b72005af330411b5a895f0038312 06-Jun-2012 Adam Powell <adamp@google.com> Merge "More fun with MediaRouter" into jb-dev
690ffb4e1f735148a15f2036d9a3c1962fba188c 05-Jun-2012 Adam Powell <adamp@google.com> More fun with MediaRouter

Add action provider, button, and styles. Extend ActionProvider to
allow for getting references to MenuItem instances.

Implement toggle mode for the MediaRouteButton/ActionProvider. Dialog
selection yet to come.

Change-Id: Ibe3188570f503bbf8dd00cf154663435656a7171
ctionProvider.java
7510230583e5ef5a94392e8ccdb1416b8d9f37cc 06-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am f1abc425: am cab5b8a9: Merge "Nodes with contentDescription should always be important for accessibility." into jb-dev

* commit 'f1abc4253111907ffb8e5ba19dffa8d00d92fc45':
Nodes with contentDescription should always be important for accessibility.
f1abc4253111907ffb8e5ba19dffa8d00d92fc45 06-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am cab5b8a9: Merge "Nodes with contentDescription should always be important for accessibility." into jb-dev

* commit 'cab5b8a91d6fbcbb694284038f5529ff02f10f78':
Nodes with contentDescription should always be important for accessibility.
cab5b8a91d6fbcbb694284038f5529ff02f10f78 06-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Nodes with contentDescription should always be important for accessibility." into jb-dev
e47957a0bbe2164467ff6e7a566b0c9e4689cdc9 05-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Nodes with contentDescription should always be important for accessibility.

1. Now after setting the content description on a view we mark is as
important for accessibility of the current important for accessibility
mode of that view is auto.

2. Minor tweak to a touch explorer coefficient to make performing double
tapping easier.

bug:6615353

Change-Id: I3b477f533a3ebde85d425caf32ace5e851240f88
iew.java
3683fe8328abc3fa2e4caf8ca443cf41de6f018b 05-Jun-2012 Chris Craik <ccraik@google.com> am 34e5f5a5: am 3676b137: Merge "Add more temporary logging for investigating detachFunctor" into jb-dev

* commit '34e5f5a534d915f253ae51cbcfe15c12e25a78a4':
Add more temporary logging for investigating detachFunctor
34e5f5a534d915f253ae51cbcfe15c12e25a78a4 05-Jun-2012 Chris Craik <ccraik@google.com> am 3676b137: Merge "Add more temporary logging for investigating detachFunctor" into jb-dev

* commit '3676b137ecf2f24e88e8a3567c11234e7d4416d2':
Add more temporary logging for investigating detachFunctor
3676b137ecf2f24e88e8a3567c11234e7d4416d2 05-Jun-2012 Chris Craik <ccraik@google.com> Merge "Add more temporary logging for investigating detachFunctor" into jb-dev
0fc37e46b44774f7706dea08b7b1ea7030d0fbe8 05-Jun-2012 Chet Haase <chet@google.com> am 7c54ef9a: am 14f73a02: Merge "Restore opaque alpha value when AlphaAnimation finishes" into jb-dev

* commit '7c54ef9a0e27b5146a51ebeb267a0a6a1fd9174f':
Restore opaque alpha value when AlphaAnimation finishes
8857b2f76abad1e4ec742dfd85d0c997880be376 05-Jun-2012 Chris Craik <ccraik@google.com> Add more temporary logging for investigating detachFunctor

bug:6596807
Change-Id: Ic9e34e323b12a887f2e8df0773a6155627b6a64f
ardwareRenderer.java
iewRootImpl.java
7c54ef9a0e27b5146a51ebeb267a0a6a1fd9174f 05-Jun-2012 Chet Haase <chet@google.com> am 14f73a02: Merge "Restore opaque alpha value when AlphaAnimation finishes" into jb-dev

* commit '14f73a02a42b5e4c700fe70e8c2d38dc518480b4':
Restore opaque alpha value when AlphaAnimation finishes
bce6f97202dba948808e702a7a75d9ed8f46f537 05-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am b25605cd: am 72d6835c: Merge "Accessibility focus should not clear selection when taken away." into jb-dev

* commit 'b25605cd7111bcab41ec10547f015bd2d6215c91':
Accessibility focus should not clear selection when taken away.
2143337d50a983e9d9579f8ffb9fad8282f618e0 05-Jun-2012 Chet Haase <chet@google.com> Restore opaque alpha value when AlphaAnimation finishes

Alpha values were being set correctly on native Display Lists during an
AlphaAnimation, but not when the animation finished. Only non-1 values
were being propagated to the Display List properties.

The fix is to track when we've set a non-1 alpha value from an AlphaAnimation
and to notice that flag when the value is 1 (because the animation ended), so that
we propagate that value correctly. Using the flag avoids sending a value of 1
(by far the most common case) unless we really need to restore it after animating
it with non-1 values.

Issue #6600592 Sometimes album art blends with list asset on queue

Change-Id: I51047d756a4ac42a2d907a4d77963cc23dfb1db3
iew.java
defdb1e49172fe7c9737347489dbb77361af955a 15-Dec-2010 Tobias Dubois <tobias.dubois@sonyericsson.com> Add the possibility to modify the View focus rect

This change makes it possible for a view to supply a different rectangle than
the drawing rect to be used by the FocusFinder when finding a new view to give
focus to. This is useful if e.g. the total view area is larger than the
interactive area of the view.

The default implementation of getFocusRect() will return getDrawingRect().
The existing behaviour is only changed if getFocusRect() is overridden by a
subclass of android.view.View

Change-Id: I52dd95c6fa296b744e354217051dcec1bb3c8e92
ocusFinder.java
iew.java
b25605cd7111bcab41ec10547f015bd2d6215c91 05-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am 72d6835c: Merge "Accessibility focus should not clear selection when taken away." into jb-dev

* commit '72d6835c7cea35d0faf5f1584bf2c475fcbf93c8':
Accessibility focus should not clear selection when taken away.
0a047bdcdd0ea8c58fa80bd4631fe8a8d02df050 05-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Accessibility focus should not clear selection when taken away.

1. Currently accessibility focus removal was clearing the selection
in the view - in particular the accessibility cursor position
which in the TextView case is the selection. This leads to a
scenario where the selection may be cleared when the app does
not explect. Further, the selection should not be cleared
since the user can be say several pages in the content and
removing and putting back accessibility focus would cause a
tedious traversal to get to the previous position.

bug:6469840

Change-Id: Iba3c01600fa2c9c39f99085a5fbc4328aa539ea8
iew.java
0cd655ad2dcc16035f26300001ac2b3bd62d1c46 05-Jun-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Revert "Revert "Clean up layout direction APIs for Drawable"""
b03b434089cf2106c467b2827a65e5c589c91d01 04-Jun-2012 Fabrice Di Meglio <fdimeglio@google.com> Revert "Revert "Clean up layout direction APIs for Drawable""

This reverts commit c96132ff53e5c26f5b0170edd85072006fb2bc70
iew.java
193fc075a2a19517c175a5760fc5e9f10d0f2e31 04-Jun-2012 Christopher Tate <ctate@google.com> Docs tweak

Cross-reference the flag manipulation methods in Window to make
it easier to discover them.

Change-Id: I81ef38fd69b43683e4ec8d48c058496470533b53
indow.java
92bc9393e6aaa46ffc1d9aa1fde05bf4f25d6dff 04-Jun-2012 Dianne Hackborn <hackbod@google.com> am 5a70063f: am 6593be0c: Merge "Work on issue #6579997: Mariner entrance animation" into jb-dev

* commit '5a70063f7ea8c910eefb025018ef02e84ff319f0':
Work on issue #6579997: Mariner entrance animation
5a70063f7ea8c910eefb025018ef02e84ff319f0 04-Jun-2012 Dianne Hackborn <hackbod@google.com> am 6593be0c: Merge "Work on issue #6579997: Mariner entrance animation" into jb-dev

* commit '6593be0c200f69d932e40e05e9df54b89c157c48':
Work on issue #6579997: Mariner entrance animation
6593be0c200f69d932e40e05e9df54b89c157c48 04-Jun-2012 Dianne Hackborn <hackbod@google.com> Merge "Work on issue #6579997: Mariner entrance animation" into jb-dev
5a7161701441764d3cddc5397cfebcb8ec62a783 04-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am cdb2a216: am 7b4799ca: Merge "Client app crashes if accessibility service uses invalid focus type." into jb-dev

* commit 'cdb2a2167d0f0676cc613a358073267d86d2851c':
Client app crashes if accessibility service uses invalid focus type.
cdb2a2167d0f0676cc613a358073267d86d2851c 04-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am 7b4799ca: Merge "Client app crashes if accessibility service uses invalid focus type." into jb-dev

* commit '7b4799cafa6624862a172aaf2ececf661850b03c':
Client app crashes if accessibility service uses invalid focus type.
7b4799cafa6624862a172aaf2ececf661850b03c 04-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Client app crashes if accessibility service uses invalid focus type." into jb-dev
2ef6905003c20010032ee993dfcc5899ad9be6f8 04-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Client app crashes if accessibility service uses invalid focus type.

1. If an accessibility service uses an invalid focus type argument
when trying to find where focus is the queried application crashes.
The same happens if the serivce calls focus search with an invalid
derection. While we need the argument check in the controller that
runs in the app process the accessibility service has to be the
palace where an exception is thown for the invalid argument so
the developer can fix his code.:

bug:6508797

Change-Id: Ib0d74f374fa60ee8fd6117f11c23af34f6c26ad3
ccessibility/AccessibilityNodeInfo.java
94456bb32c282a2b07468bd0ffbacf2283023a00 04-Jun-2012 Jeff Brown <jeffbrown@google.com> am 7d3fa093: am f47e76e2: Merge "Make velocity tracker strategy configurable." into jb-dev

* commit '7d3fa093bbd34e19f6b580b6258c8ea4e138c777':
Make velocity tracker strategy configurable.
7d3fa093bbd34e19f6b580b6258c8ea4e138c777 04-Jun-2012 Jeff Brown <jeffbrown@google.com> am f47e76e2: Merge "Make velocity tracker strategy configurable." into jb-dev

* commit 'f47e76e2c78e78e26110786e99548d718d177c32':
Make velocity tracker strategy configurable.
f47e76e2c78e78e26110786e99548d718d177c32 04-Jun-2012 Jeff Brown <jeffbrown@google.com> Merge "Make velocity tracker strategy configurable." into jb-dev
9eb7d86181729c3eb769d71123c4ce9ffc868f08 01-Jun-2012 Jeff Brown <jeffbrown@google.com> Make velocity tracker strategy configurable.

This change is very useful for testing purposes because it makes it
easy to compare different implementations to see how they behave.

There is no change to the current default strategy.

Bug: 6413587
Change-Id: I4d8567aa4160571ba9fa397ce419882cd9366749
elocityTracker.java
bc595b798ea55fefddedb253afb6ac8c7849eff6 04-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am b59d0618: am b6585d19: Merge "Double input focus and focus movement in list not working." into jb-dev

* commit 'b59d06186130921c02b6a4b0c98d0c43379df6d4':
Double input focus and focus movement in list not working.
b59d06186130921c02b6a4b0c98d0c43379df6d4 04-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am b6585d19: Merge "Double input focus and focus movement in list not working." into jb-dev

* commit 'b6585d19311f13ec28fa38a3c849589dba8c293a':
Double input focus and focus movement in list not working.
b6585d19311f13ec28fa38a3c849589dba8c293a 04-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Double input focus and focus movement in list not working." into jb-dev
a55a94bfb3a6de5f203224d75fcbfa40694c8d01 03-Jun-2012 Adam Powell <adamp@google.com> am 58e29c06: am 7c86958d: Merge "Add MediaRouter API." into jb-dev

* commit '58e29c06610054419339bb0a75c44ab30d6fe89a':
Add MediaRouter API.
58e29c06610054419339bb0a75c44ab30d6fe89a 03-Jun-2012 Adam Powell <adamp@google.com> am 7c86958d: Merge "Add MediaRouter API." into jb-dev

* commit '7c86958d73e7216a92bdfd84fce4440e1def7eaa':
Add MediaRouter API.
7c86958d73e7216a92bdfd84fce4440e1def7eaa 03-Jun-2012 Adam Powell <adamp@google.com> Merge "Add MediaRouter API." into jb-dev
b552d89e901225e2b6aa2602e874ab984c638415 02-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Double input focus and focus movement in list not working.

1. The clearFocus routine in ViewGroup was clearing the pointer
to the descendant which has focus after calling clear focus
on that child. However, currently clearing the focus of a view
causes the view that loses focus to try to give the focus to
the first focusable which potentially sets the pointer to the
child that has input focus in the ViewGroup but the ViewGruop
essentially clears that pointer. This resulted in having two
focused views at the same time in some cases.

2. AbsListView was not calling the super implementation of add
focusables if the focus type was not accessibility.

bug:6559819

Change-Id: I478dfed000b5de3f9b15e12eb82aa3d34c2301e4
iewGroup.java
665ef836b5aacee69bf517c8c2718bd01303f2d1 02-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am 40404f43: am cba5e879: Merge "Calling the correct method when adding accessibility focusables." into jb-dev

* commit '40404f435c17dfbbedfdf358c48f0f91df91b84f':
Calling the correct method when adding accessibility focusables.
40404f435c17dfbbedfdf358c48f0f91df91b84f 02-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am cba5e879: Merge "Calling the correct method when adding accessibility focusables." into jb-dev

* commit 'cba5e879e825fe37bc1eb092c14f3a5c4d7a29d1':
Calling the correct method when adding accessibility focusables.
c96132ff53e5c26f5b0170edd85072006fb2bc70 02-Jun-2012 Jean-Baptiste Queru <jbq@google.com> Revert "Clean up layout direction APIs for Drawable"

This reverts commit c1da65187a4b9de8f72bd617ef937030187c0a92.
iew.java
84375876fcef73c5fa9c3de205c7db908ee14e15 02-Jun-2012 Dianne Hackborn <hackbod@google.com> Work on issue #6579997: Mariner entrance animation

Add a new variation of ActivityOptions that allows you to
supply custom animation resources and get a callback when the
animation starts.

Use this in SearchPanelView to determine when to start hiding
the search panel instead of having a fixed delay.

Fix some issues in the activity manager where we would cancel
the options in cases where we should actually keep them to give
to the window manager for a transition. (Basically when the
activity being started is not actually ending up launched, but
just results in a shift in the activity stack.)

Note that this is not quite what the design calls for -- the
entire search UI is waiting and then disappearing when the
animation starts, instead of the ring first disappearing while
waiting for the time to fade out the circle.

Change-Id: Iee9a404ba530908d73cdbd4a9d0d2907ac03428f
WindowManager.aidl
a90e4512ab81dcd8cdbefdd2ffa0de55fca1caa3 02-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Calling the correct method when adding accessibility focusables.

1. Since we added explicit accessibility focusable attribute when
adding focusables views that do so should call this method. Some
views were not updated to do so.

bug:6581924

Change-Id: Id64c0b2d76e5269ebf3fbe17203e73b174bdb843
iew.java
9a1de308cea2d160778fd977825f10a07b49d738 22-May-2012 Adam Powell <adamp@google.com> Add MediaRouter API.

This is just the initial state tracking. Still to go is
actually triggering Bluetooth A2DP correctly and tracking
process state in the system server.

Change-Id: I33031d52799d6e2d7208910da833831085cc3677
ctionProvider.java
78068825416a4a0f3b2fdf57491ba4932c2bb6c4 01-Jun-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Clean up layout direction APIs for Drawable"
c1da65187a4b9de8f72bd617ef937030187c0a92 01-Jun-2012 Fabrice Di Meglio <fdimeglio@google.com> Clean up layout direction APIs for Drawable

- see bug #6427629

Change-Id: I3119db3022bba0ee325b6d0d4471bfebd850ec10
iew.java
6604496b5334924ddf59d9175c5c0e58e695c06e 01-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am dd5543a6: am ac483ac4: Merge "AccessibilityInteractionController crash with IndexOutOfBoundException." into jb-dev

* commit 'dd5543a6ffb2f543d9a45b541808561370c34f86':
AccessibilityInteractionController crash with IndexOutOfBoundException.
dd5543a6ffb2f543d9a45b541808561370c34f86 01-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> am ac483ac4: Merge "AccessibilityInteractionController crash with IndexOutOfBoundException." into jb-dev

* commit 'ac483ac41f19b9956069eebdc0275ccf90d4e01d':
AccessibilityInteractionController crash with IndexOutOfBoundException.
ac483ac41f19b9956069eebdc0275ccf90d4e01d 01-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "AccessibilityInteractionController crash with IndexOutOfBoundException." into jb-dev
30ac645210ecf96ae28fc5cb3b663aeb83dbdec1 01-Jun-2012 Svetoslav Ganov <svetoslavganov@google.com> AccessibilityInteractionController crash with IndexOutOfBoundException.

1. The findAccessibilityNodeInfosByTextUiThread was reusing an ArrayList
instance also used by the logic to initialize an AccessibilityNodeInfo.
Hence, if the find method got some view and creates the infos for them
the method creating the info was reusing the same array list and was
nuking its contents.

bug:6556585

Change-Id: I1d013bf7b1f715f8b4c4ba60c677233bec40647c
ccessibilityInteractionController.java
fbe8857237e6a725fc20e2bcf2642c459bd610a9 01-Jun-2012 Chet Haase <chet@google.com> am d0140062: am 561ff8a7: Merge "Skip eglSwapBuffers() call when we do not draw to GL" into jb-dev

* commit 'd0140062db85ae17e807e514fe14d2d0581645fb':
Skip eglSwapBuffers() call when we do not draw to GL
d0140062db85ae17e807e514fe14d2d0581645fb 01-Jun-2012 Chet Haase <chet@google.com> am 561ff8a7: Merge "Skip eglSwapBuffers() call when we do not draw to GL" into jb-dev

* commit '561ff8a74e3d9ea15f58d9b6534da9ea5a63d84b':
Skip eglSwapBuffers() call when we do not draw to GL
561ff8a74e3d9ea15f58d9b6534da9ea5a63d84b 01-Jun-2012 Chet Haase <chet@google.com> Merge "Skip eglSwapBuffers() call when we do not draw to GL" into jb-dev
aeb7723a123dc09dc4ada55393a6c68858f45b3b 01-Jun-2012 Scott Anderson <saa@android.com> Clean up IntToStrings for window TYPE_*

Remove duplicates and add missing entries for the conversions
from window types to strings.

Change-Id: I4378e1191b156bd0b73ac23bc43bc3bfd1c3f198
Signed-off-by: Scott Anderson <saa@android.com>
indowManager.java
35ec6b7b30298c16c350cd45e4369f1266778c40 01-Jun-2012 Chris Craik <ccraik@google.com> am 7d4c2ec0: am 53913ed5: Merge "Force webview invalidates on unsuccessful functor attach" into jb-dev

* commit '7d4c2ec0f4dc1843ed5e3f6768d55cc9506052c6':
Force webview invalidates on unsuccessful functor attach
7d4c2ec0f4dc1843ed5e3f6768d55cc9506052c6 01-Jun-2012 Chris Craik <ccraik@google.com> am 53913ed5: Merge "Force webview invalidates on unsuccessful functor attach" into jb-dev

* commit '53913ed55ce2b5f0d2137b2a7b67eaf7556c0c28':
Force webview invalidates on unsuccessful functor attach
53913ed55ce2b5f0d2137b2a7b67eaf7556c0c28 01-Jun-2012 Chris Craik <ccraik@google.com> Merge "Force webview invalidates on unsuccessful functor attach" into jb-dev
486590963e2207d68eebd6944fec70d50d41116a 01-Jun-2012 Chet Haase <chet@google.com> Skip eglSwapBuffers() call when we do not draw to GL

The fix is to track when we issue GL drawing commands, and to skip the
call to eglSwapBuffers() when a DisplayList does not result in
any actual rendering calls to GL.

Issue #6364143 QuickMuni list items and buttons flicker instead of fade

Change-Id: I60a02c61a58c32d92481a1e814b4c8a49c6a37a3
isplayList.java
ardwareRenderer.java
41ee465734d0006797a8fd36e88976c1e85d161c 01-Jun-2012 Chris Craik <ccraik@google.com> Force webview invalidates on unsuccessful functor attach

Functor attach should always be successful, but adding a fallback just in
case. Also invalidates the WebView on initial content arriving.

bug:6511995
Change-Id: Ibca16505afec9f693ea4a7cc4966cd6d7353725c
ardwareRenderer.java
iewRootImpl.java
30e4e88c91828d18f6e0cc9fd8011c2bd8877953 31-May-2012 Amith Yamasani <yamasani@google.com> am 2afe8252: am 4a3a9685: Merge "Protect volumepanel slider creation from race condition." into jb-dev

* commit '2afe8252addcf080d4752e85f6d0f21c930fde7f':
Protect volumepanel slider creation from race condition.
2afe8252addcf080d4752e85f6d0f21c930fde7f 31-May-2012 Amith Yamasani <yamasani@google.com> am 4a3a9685: Merge "Protect volumepanel slider creation from race condition." into jb-dev

* commit '4a3a9685d17cb29f70a7c56a3d33f2c8d5288e72':
Protect volumepanel slider creation from race condition.
4a3a9685d17cb29f70a7c56a3d33f2c8d5288e72 31-May-2012 Amith Yamasani <yamasani@google.com> Merge "Protect volumepanel slider creation from race condition." into jb-dev
0597161ee43cfaa7dbe14691a134fb358a00317a 31-May-2012 Philip Milne <pmilne@google.com> Merge "Fix for bug 6050753."
a654986978c870ed33af2ad696cd6e61d9fed489 31-May-2012 Amith Yamasani <yamasani@google.com> Protect volumepanel slider creation from race condition.

It is possible for 2 different threads to poke the mStreamControls at the same time,
causing the monkey bug mentioned in the bug report below.

Bug: 6411852

Couldn't think of any other reason Stream type 3 (MUSIC) wouldn't exist in the list.
It's possible that a programmatic call came in at the same time as the volume key press.

Synchronizing blocks where the mStreamControls are populated and accessed.

Change-Id: Ifedec6b0f8bad9634cb9e079fda785c433bdb7a7
olumePanel.java
8f2a0da78f641d6aac9dfc7dfec56088f6f89fcb 31-May-2012 Jeff Brown <jeffbrown@google.com> am bbffc261: am 9154b877: Merge "Fix comparison of device source bits." into jb-dev

* commit 'bbffc261cc3607d03c12227cdd3f78a4f4e28e1a':
Fix comparison of device source bits.
bbffc261cc3607d03c12227cdd3f78a4f4e28e1a 31-May-2012 Jeff Brown <jeffbrown@google.com> am 9154b877: Merge "Fix comparison of device source bits." into jb-dev

* commit '9154b877807a1222abf46608cdff66428e906328':
Fix comparison of device source bits.
9154b877807a1222abf46608cdff66428e906328 31-May-2012 Jeff Brown <jeffbrown@google.com> Merge "Fix comparison of device source bits." into jb-dev
7e4ff4b986d626493afb676dd4824d2b3663260a 30-May-2012 Jeff Brown <jeffbrown@google.com> Fix comparison of device source bits.

Bug: 6576743
Change-Id: I6952b052e2ab9e62ddd46ab76f4df37ecc656757
nputDevice.java
028d0aacdd22df8fe51fb05544d11fff321f49fb 30-May-2012 Satoshi Kataoka <satok@google.com> am 3022b6b9: am 17150cf9: Fix locale in TextServicesManagerService

* commit '3022b6b9cdc581647747cfefa2ff365af05b02e8':
Fix locale in TextServicesManagerService
3022b6b9cdc581647747cfefa2ff365af05b02e8 30-May-2012 Satoshi Kataoka <satok@google.com> am 17150cf9: Fix locale in TextServicesManagerService

* commit '17150cf91be1478e367c2ef5e4f5baaa66b487d0':
Fix locale in TextServicesManagerService
17150cf91be1478e367c2ef5e4f5baaa66b487d0 30-May-2012 Satoshi Kataoka <satok@google.com> Fix locale in TextServicesManagerService

Bug: 6542210
Change-Id: I1670fac014beb834ec7c065ebf040d0ff3cf4161
extservice/TextServicesManager.java
76abb24afa366b6de0176cc14bc50ea7533418a6 30-May-2012 Jean Chalard <jchalard@google.com> am 887568c4: am 01bf82f2: Merge "Add/refine comments to reflect key event policies" into jb-dev

* commit '887568c4f4e49b78b1549459b265377c7ee4e8c0':
Add/refine comments to reflect key event policies
887568c4f4e49b78b1549459b265377c7ee4e8c0 30-May-2012 Jean Chalard <jchalard@google.com> am 01bf82f2: Merge "Add/refine comments to reflect key event policies" into jb-dev

* commit '01bf82f27297536399f7dcde214d1a082e3613ef':
Add/refine comments to reflect key event policies
01bf82f27297536399f7dcde214d1a082e3613ef 30-May-2012 Jean Chalard <jchalard@google.com> Merge "Add/refine comments to reflect key event policies" into jb-dev
b616547cd5915793ebb5f7b85e815895c54b1d93 30-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 378aa011: am a5c896af: Merge "Updating the behaviour of accessibility text iterators." into jb-dev

* commit '378aa011d5f989166b62e9db6328a5881a1a73a0':
Updating the behaviour of accessibility text iterators.
378aa011d5f989166b62e9db6328a5881a1a73a0 30-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am a5c896af: Merge "Updating the behaviour of accessibility text iterators." into jb-dev

* commit 'a5c896afe89aaf40166343232d85980b94974032':
Updating the behaviour of accessibility text iterators.
a5c896afe89aaf40166343232d85980b94974032 30-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Updating the behaviour of accessibility text iterators." into jb-dev
35742844bca9c51ae4264d0dc10f19cfdcb4ab0b 30-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am b554ee35: am 48d1daca: Merge "Accessiblity scroll event firing callback not properly reset." into jb-dev

* commit 'b554ee35853369e898d5feea9ea4b6667a682dac':
Accessiblity scroll event firing callback not properly reset.
b554ee35853369e898d5feea9ea4b6667a682dac 30-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 48d1daca: Merge "Accessiblity scroll event firing callback not properly reset." into jb-dev

* commit '48d1daca98703a470f04b4e217d9e6dae6d61dd2':
Accessiblity scroll event firing callback not properly reset.
48d1daca98703a470f04b4e217d9e6dae6d61dd2 30-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessiblity scroll event firing callback not properly reset." into jb-dev
4a812aeb8b90925b6a53365972047f95d9b58b17 30-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Accessiblity scroll event firing callback not properly reset.

1. We use a delayed callback to throttle the amount of accessibility
scroll events fired by the view tree. The callback to do so was
not properly reset when removed putting the view tree in a bad
state resulting in no scroll events being fired at all.

bug:6549005

Change-Id: Ibf72d7e009e4545a336c9471f46015910290703e
iew.java
b042f2d9908e20852e4077878e50a0c07b8eee79 30-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 09dfd60b: am bb1b7cf6: Merge "Adding accessibility focusable attribute (hidden for now)." into jb-dev

* commit '09dfd60bc37585e2670e4ca997940256e5b21ac8':
Adding accessibility focusable attribute (hidden for now).
09dfd60bc37585e2670e4ca997940256e5b21ac8 30-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am bb1b7cf6: Merge "Adding accessibility focusable attribute (hidden for now)." into jb-dev

* commit 'bb1b7cf66bc17165b656c2aaed8027f9e5992306':
Adding accessibility focusable attribute (hidden for now).
bb1b7cf66bc17165b656c2aaed8027f9e5992306 30-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Adding accessibility focusable attribute (hidden for now)." into jb-dev
f9817f7a3b4463f75a4cd9c4050bb89525476a9f 23-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Adding accessibility focusable attribute (hidden for now).

1. This attribute specifies whether a view can take accessibility
focus. It has three values: 1) auto - the system determines
based on whether the view is actionable and has actionable
predecessor. Accessibility services can put accessibility focus
on such a node at will; 2) yes ; this view always takes access
focus; 3) no - the view cannot takes accessibility focus and
accessibility services cannot put accessibility focus on it.

Change-Id: I2ebf4e7c75bf6b39e1742b6868b37ccdd4cc7d28
iew.java
39f2aee640eea62b43fa79f28dec3a962e5cb065 29-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Updating the behaviour of accessibility text iterators.

1. Iterators were skipping content on reversing direction.

2. The cursor was positioned at the beginning of the next text segment
when moving forward and at end of the previous text segment when moving
backwards. This is incorrect and now the cursor is positioned at the
end of the segment when moving forward and at the beginning when moving
backward.

3. The cursor position was not properly set when reaching the end/start
of the text.

4. The iterators were reporting strictly the next/previous segment even
if the cursor is within such a segment. Thus, when traversing some
content may be skipped. Now moving forward moves the selection to
the next segment end and the start position is either the old index
if it was within a segment or the start of the segment. Same in
reverse.

bug:6575099

Change-Id: Ib48a649cec53910339baf831a75e26440be6e576
ccessibilityIterators.java
iew.java
405bc51c5dc73846a4abdc325cd234eb2d37469f 29-May-2012 Jean Chalard <jchalard@google.com> Add/refine comments to reflect key event policies

Make clearer how the platform is handling key events following some
unfortunate uses by third party applications. Also highlight the
changes in Jelly Bean default keyboard.

Bug: 6566711
Change-Id: Ibcdaf54c6d629fd0733529bfe2fffc82f555f084
eyEvent.java
iew.java
nputmethod/InputConnection.java
c0ed6efe5f9b3c06a1297592647bd52a0f84215a 25-May-2012 Christopher Tate <ctate@google.com> am 115284bc: Merge "Support volume-changed sounds on master-volume-only configs" into ics-aah

* commit '115284bc124ce2874f32ad36956f475959513388':
Support volume-changed sounds on master-volume-only configs
c4b78d206ffcdccac01e3436a4a3462bef9672ed 22-May-2012 Christopher Tate <ctate@google.com> Support volume-changed sounds on master-volume-only configs

Some products manipulate only the master volume, and the existing
code does not play volume-change tones when the master volume
is adjusted. This CL includes some config-driven behavior that
will play those tones (via the system stream) if desired.

Bug 6498986

Change-Id: I2415773325d0a0039efc67897bc371b1f2e18063
olumePanel.java
98fd5a5fbc24c93593e79fa56669f36dbb452f09 24-May-2012 Romain Guy <romainguy@google.com> am ed130313: am 94328c30: Merge "Clear bitmap references from display lists as early as possible Bug #6555840" into jb-dev

* commit 'ed1303132912f0d39bcd008c3efbc0422d7433fc':
Clear bitmap references from display lists as early as possible Bug #6555840
ed1303132912f0d39bcd008c3efbc0422d7433fc 24-May-2012 Romain Guy <romainguy@google.com> am 94328c30: Merge "Clear bitmap references from display lists as early as possible Bug #6555840" into jb-dev

* commit '94328c308bc8d283841ac6434d47b4c56389a388':
Clear bitmap references from display lists as early as possible Bug #6555840
94328c308bc8d283841ac6434d47b4c56389a388 24-May-2012 Romain Guy <romainguy@google.com> Merge "Clear bitmap references from display lists as early as possible Bug #6555840" into jb-dev
38c2ece5ce4c59f30e5832779bf1d86d68b1c442 24-May-2012 Romain Guy <romainguy@google.com> Clear bitmap references from display lists as early as possible
Bug #6555840

Apps like Google+ with large bitmaps displayed in listivews could
run into memory issues because of these references.

Change-Id: I39486bda13ce00c5a3b6481139ad54547506a8b4
isplayList.java
LES20DisplayList.java
iew.java
iewRootImpl.java
5284148f28d25f69bae3f34037f65275edaa0186 24-May-2012 satok <satok@google.com> am 77f79a39: am f927e17a: Use correct spell check locale

* commit '77f79a39c0e6aa540f8204adb39ec6671ee053e7':
Use correct spell check locale
77f79a39c0e6aa540f8204adb39ec6671ee053e7 24-May-2012 satok <satok@google.com> am f927e17a: Use correct spell check locale

* commit 'f927e17ae543b6edeae8200cc86c59c3ee740670':
Use correct spell check locale
f927e17ae543b6edeae8200cc86c59c3ee740670 24-May-2012 satok <satok@google.com> Use correct spell check locale

Bug: 6542210
Change-Id: I414aa2321f30e396996d90fb8e90c1dbb3bb7b9e
extservice/SpellCheckerSubtype.java
425f126a0f2284423f4ccea0b00fbd5ea670a6c9 24-May-2012 Romain Guy <romainguy@google.com> am a865d7d7: am df3633b3: Merge "Make it harder for apps to mess up ViewGroup\'s internal state Bug #6421288" into jb-dev

* commit 'a865d7d7d3612d99e3b1407793610056c7df163c':
Make it harder for apps to mess up ViewGroup's internal state Bug #6421288
a865d7d7d3612d99e3b1407793610056c7df163c 24-May-2012 Romain Guy <romainguy@google.com> am df3633b3: Merge "Make it harder for apps to mess up ViewGroup\'s internal state Bug #6421288" into jb-dev

* commit 'df3633b38969e134c5370449b8247827c705ac1e':
Make it harder for apps to mess up ViewGroup's internal state Bug #6421288
df3633b38969e134c5370449b8247827c705ac1e 24-May-2012 Romain Guy <romainguy@google.com> Merge "Make it harder for apps to mess up ViewGroup's internal state Bug #6421288" into jb-dev
393a52c9f628bbf2ab68508913177650f9183ee4 23-May-2012 Romain Guy <romainguy@google.com> Make it harder for apps to mess up ViewGroup's internal state
Bug #6421288

Change-Id: I8c2c597f45391d3c1ae40c8341a68bb25d8ad4d9
iew.java
iewGroup.java
nimation/Animation.java
eed38b6d7fe403c40bf89b23949e7e090a1eaa2d 23-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 1eab75b9: am 321a56c8: Merge "Clearing accessibility focus of a view did not update the global state." into jb-dev

* commit '1eab75b9ba87fe73e5709ef4e77adc78e55b96c9':
Clearing accessibility focus of a view did not update the global state.
1eab75b9ba87fe73e5709ef4e77adc78e55b96c9 23-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 321a56c8: Merge "Clearing accessibility focus of a view did not update the global state." into jb-dev

* commit '321a56c8481577f812c2ba0a10df7d43503a9314':
Clearing accessibility focus of a view did not update the global state.
321a56c8481577f812c2ba0a10df7d43503a9314 23-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Clearing accessibility focus of a view did not update the global state." into jb-dev
c00d00865d51e8c08d1f90b2b34c699b63a7105e 23-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Clearing accessibility focus of a view did not update the global state.

1. The code in clear accessibility focus was not updaing the global
accessibility focus reference in view root if the view not a
descendant has accessibility focus.

bug:6382856

Change-Id: I0c99578b5afd1f1f5d0df5bba05b0a03b5951a43
iew.java
26743444c6ade01f97c4b9ac5c7f248ca27c6d5c 22-May-2012 Dianne Hackborn <hackbod@google.com> am d7b376f2: am 2bccea24: Merge "Fix issue #6499411: Characters not displayed (but suggestion bar is working)" into jb-dev

* commit 'd7b376f22346da4704ea4ca667331fc94eec9195':
Fix issue #6499411: Characters not displayed (but suggestion bar is working)
d7b376f22346da4704ea4ca667331fc94eec9195 22-May-2012 Dianne Hackborn <hackbod@google.com> am 2bccea24: Merge "Fix issue #6499411: Characters not displayed (but suggestion bar is working)" into jb-dev

* commit '2bccea2461556a525c5c65be0364b5b9404c8651':
Fix issue #6499411: Characters not displayed (but suggestion bar is working)
ac92087a9a1c464d4b0a58c82dae01cbaa088e89 22-May-2012 Dianne Hackborn <hackbod@google.com> Fix issue #6499411: Characters not displayed (but suggestion bar is working)

The problem was that when dismissing the lock screen, the window manager
would briefly turn off force hiding when it started animating the transition
and then turn it back on until the transition was done.

This would cause it to briefly switch focus to the app behind and then
take focus off it. The app would find out it got focus, and re-start
input on itself, asking the input method service to do so. At this
point the input method service would ask the window manager if the
caller really had focus, and it may or may not be told no depending
on the timing. If it is told no, then it doesn't allow the focus
switch to happen at that point, ignoring the new input connection,
and ultimately when focus does really switch the IME is left talking
with an old dead input connection.

I added some code to the input connection to make sure when we are
no longer using one that we mark it inactive and can't use it. This
bug was especially difficult to track down because it would only
visibly break when a GC happened during this time, causing the weak
reference on the input connection to become null. With this change
it will now always break (though in the scenario here only if you
hit the race condition correctly).

Change-Id: I81a6164dc140c548da1a9736e42cd253e8238a80
nputmethod/InputMethodManager.java
0c1e7d339c1ae707cae2acf42f2b5e83dfa9cf43 22-May-2012 Jeff Brown <jeffbrown@google.com> am 4535899b: am 1957fd27: Merge "Add public API to Choreographer." into jb-dev

* commit '4535899b9cf07fdf1063848bdd8caaabe36b3cd5':
Add public API to Choreographer.
4535899b9cf07fdf1063848bdd8caaabe36b3cd5 22-May-2012 Jeff Brown <jeffbrown@google.com> am 1957fd27: Merge "Add public API to Choreographer." into jb-dev

* commit '1957fd271f4e76c471d483df98cf23abf3e92360':
Add public API to Choreographer.
1957fd271f4e76c471d483df98cf23abf3e92360 22-May-2012 Jeff Brown <jeffbrown@google.com> Merge "Add public API to Choreographer." into jb-dev
cae804901eb5761e42d5bac7cdd6f15d37e3ceb3 22-May-2012 Jeff Brown <jeffbrown@google.com> Add public API to Choreographer.

The API allows applications to post FrameCallbacks that will
run on vsync and that are provided with the frame time.

Change-Id: Ieb39fcdd085ef8a57805b8f78e7a307f416ff21d
horeographer.java
8e61c58cf75f78e37b110cb4f38567c1b2133723 22-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 6ea0fd0f: am 9faa9374: Merge "Changing the interaction model of the touch explorer." into jb-dev

* commit '6ea0fd0f3f54a36a92b4decd746f06497cf825e8':
Changing the interaction model of the touch explorer.
6ea0fd0f3f54a36a92b4decd746f06497cf825e8 22-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 9faa9374: Merge "Changing the interaction model of the touch explorer." into jb-dev

* commit '9faa9374c1398ca4a0f3fbfc4feaa5cddeb073b0':
Changing the interaction model of the touch explorer.
207efc59be1cd045dffc1cbb86e98576e52bcd1b 22-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 34757fdd: am f4062864: Merge "Accessibility focus and input focus do not sync - part 2" into jb-dev

* commit '34757fdd37c3fba882de7ade1706e4c577b01830':
Accessibility focus and input focus do not sync - part 2
9faa9374c1398ca4a0f3fbfc4feaa5cddeb073b0 22-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Changing the interaction model of the touch explorer." into jb-dev
34757fdd37c3fba882de7ade1706e4c577b01830 22-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am f4062864: Merge "Accessibility focus and input focus do not sync - part 2" into jb-dev

* commit 'f40628645df750991ced8dde803dd57225fca04f':
Accessibility focus and input focus do not sync - part 2
f40628645df750991ced8dde803dd57225fca04f 22-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessibility focus and input focus do not sync - part 2" into jb-dev
525ae2075cf96d3a2ac67cd3a662069fd579f42d 22-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Accessibility focus and input focus do not sync - part 2

1. This patch has somecode that syncs input and accessibility
focus or tries to put accessibility focus on the top most
container that was missed by the previous patch.

Change-Id: I08f21670b1c6e9f363d5714b1976fb52d84baae4
iew.java
iewRootImpl.java
9152de9a033476cb19a725845508a76ec11af21f 22-May-2012 Romain Guy <romainguy@google.com> am 09fca0b4: am 493743e0: Merge "Flip TextureView\'s layer after calling setSurfaceTexture() Bug #6531172" into jb-dev

* commit '09fca0b44f13dee64e8cee090576439a2116eff3':
Flip TextureView's layer after calling setSurfaceTexture() Bug #6531172
09fca0b44f13dee64e8cee090576439a2116eff3 22-May-2012 Romain Guy <romainguy@google.com> am 493743e0: Merge "Flip TextureView\'s layer after calling setSurfaceTexture() Bug #6531172" into jb-dev

* commit '493743e0137f34939dd7f3674e9102942ef7e4e8':
Flip TextureView's layer after calling setSurfaceTexture() Bug #6531172
493743e0137f34939dd7f3674e9102942ef7e4e8 22-May-2012 Romain Guy <romainguy@google.com> Merge "Flip TextureView's layer after calling setSurfaceTexture() Bug #6531172" into jb-dev
51f7c6b3620549429cd6c62e38bace43085e04fb 22-May-2012 Romain Guy <romainguy@google.com> Flip TextureView's layer after calling setSurfaceTexture()
Bug #6531172

Changing the surface texture would not update the layer properties
nor its transform matrix.

Change-Id: I54e155a410d7e72f1a8edf3a4ab0034bf764ae28
extureView.java
c18cced700e79bdb183b47af884ffdfcb5727f28 22-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 5182a5bc: am 4ce106f5: Merge "Fixing some minor issues in accessibility focus." into jb-dev

* commit '5182a5bcf7a975c6183e0925dec0d3ac35071de9':
Fixing some minor issues in accessibility focus.
5182a5bcf7a975c6183e0925dec0d3ac35071de9 22-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 4ce106f5: Merge "Fixing some minor issues in accessibility focus." into jb-dev

* commit '4ce106f5cff5670bf1aae4190612dc8e972f5c28':
Fixing some minor issues in accessibility focus.
4ce106f5cff5670bf1aae4190612dc8e972f5c28 22-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Fixing some minor issues in accessibility focus." into jb-dev
f76a83cfcf32402edb78666733b5ebf9ec6ac2e2 22-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Fixing some minor issues in accessibility focus.

1. Now accessibility focus does not drag input focus and
vice versa. Having the two focuses chase each other
can lead to some pathological cases. For example, a
container is input focusable and manages input focus
for its children i.e. as soon as it gets input focus
it sets input focus to a child. Now assume input and
accessibility focus are on a child and focus search
finds the parent to take accessibility focus, now
putting accessibility focus to the parent will put
input focus there and the parent will put input focus
to the child which as a result will put accessibility
focus there, thus resulting in traversal loop.

bug:6522900

2. Fixed asymmetrical behavior of accessibility focus search
for AbsListView.

bug:6520016

3. Fixed accessibility focus search getting stuck in an
empty AbsListView.

bug:6520049

Change-Id: Ia26e5be7b5a9f340f873861ff466c787467b98dc
iew.java
8242b07378af28502585aae14fd20f36862e6f8c 22-May-2012 Dianne Hackborn <hackbod@google.com> am 7ad04d3f: am af5c0118: Merge "Fix issue #6447773: Pulse does not run in JB (NPE in GestureDetector.onTouchEvent)" into jb-dev

* commit '7ad04d3ff4c1d9d2a26387c4247d8fc75551ea77':
Fix issue #6447773: Pulse does not run in JB (NPE in GestureDetector.onTouchEvent)
7ad04d3ff4c1d9d2a26387c4247d8fc75551ea77 22-May-2012 Dianne Hackborn <hackbod@google.com> am af5c0118: Merge "Fix issue #6447773: Pulse does not run in JB (NPE in GestureDetector.onTouchEvent)" into jb-dev

* commit 'af5c01185bb9f76fd6cbdc87344f1d9b60ebdd8c':
Fix issue #6447773: Pulse does not run in JB (NPE in GestureDetector.onTouchEvent)
af5c01185bb9f76fd6cbdc87344f1d9b60ebdd8c 22-May-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #6447773: Pulse does not run in JB (NPE in GestureDetector.onTouchEvent)" into jb-dev
7a83b93e12e4a215b90bfa32a753a5a53525d011 21-May-2012 Dianne Hackborn <hackbod@google.com> Fix issue #6447773: Pulse does not run in JB (NPE in GestureDetector.onTouchEvent)

Change-Id: I20b6d58fa47851cf401bbeb16960d118bbd1d965
estureDetector.java
fc6fe5206cbfba35f3668a162dea842f41f2e3bc 22-May-2012 Romain Guy <romainguy@google.com> am 7eac5eca: am d4cc9253: Merge "Remove DEBUG_LATENCY flag" into jb-dev

* commit '7eac5eca431a824777530fb322b8c25015813954':
Remove DEBUG_LATENCY flag
7eac5eca431a824777530fb322b8c25015813954 22-May-2012 Romain Guy <romainguy@google.com> am d4cc9253: Merge "Remove DEBUG_LATENCY flag" into jb-dev

* commit 'd4cc925358305dff4ea3d0ff94b882c51f06db26':
Remove DEBUG_LATENCY flag
abafe372ee70496ac6b323e1d05d397785651779 21-May-2012 Romain Guy <romainguy@google.com> am 6fa51de8: am 46a8b1ac: Merge "Remove unused, obsolete debug code" into jb-dev

* commit '6fa51de80bae65a93346ed18628010a0867607cc':
Remove unused, obsolete debug code
534e6488bc8bf27bcf1c1a74b6a6472bc73ba4db 21-May-2012 Jeff Brown <jeffbrown@google.com> am dd8e50f4: am cf39bdf3: Add support for switching between multiple keyboard layouts.

* commit 'dd8e50f4b96578acd402ff4b199ca1649adf25fd':
Add support for switching between multiple keyboard layouts.
b1b0058346190d6194afc7a87dd7d19cc6fd02c5 21-May-2012 Dianne Hackborn <hackbod@google.com> am 72669b5f: am 13a0271c: Merge "Add aapt support for generating proguard rules for onClick methods." into jb-dev

* commit '72669b5f4663937b09d33f9d951f0b86a03fa98b':
Add aapt support for generating proguard rules for onClick methods.
68373bf4841c93ca322806654c66f5939d4301d6 21-May-2012 Romain Guy <romainguy@google.com> am 1b61dc2e: am 43a760ba: Merge "Don\'t crash on Surface.unlockAndPost() but log & try again Bug #6482593" into jb-dev

* commit '1b61dc2eb7f738bb49142db14a7d339e2fd90545':
Don't crash on Surface.unlockAndPost() but log & try again Bug #6482593
891a844646ce7f7b62cbe963a7e08bdea5bef4e4 21-May-2012 Dianne Hackborn <hackbod@google.com> am bcb7f04a: am e312c61f: Merge "Improve fitSystemWindows() documentation." into jb-dev

* commit 'bcb7f04a7ca05a606d1b293dbe975f1710135be7':
Improve fitSystemWindows() documentation.
e15ccb93add99ebb9cd7aec03a04faa37f45b39d 17-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Changing the interaction model of the touch explorer.

1. Now the user have to double tap to activate the last
item. If the last touched window is not active because
it does not take input focus the click on the last
touch explored location. Othewise the click is on the
accessibility focus location.

bug:5932640

Change-Id: Ibb7b97262a7c5f2f94abef429e02790fdc91a8dd
iewConfiguration.java
e2d7f182ff2db26723089206c7d01f6695bd3dfc 21-May-2012 Romain Guy <romainguy@google.com> Remove DEBUG_LATENCY flag

This flag was replaced with the more versatile and powerful systrace.

Change-Id: I2267698f86fe9ba9e1102856795ca641001fecd5
iewDebug.java
iewRootImpl.java
6fa51de80bae65a93346ed18628010a0867607cc 21-May-2012 Romain Guy <romainguy@google.com> am 46a8b1ac: Merge "Remove unused, obsolete debug code" into jb-dev

* commit '46a8b1acdbbaa9bcbd0127b4f4580b5a8ec38119':
Remove unused, obsolete debug code
13b907353f18215b52b5ceda24bbf520d91d72a1 21-May-2012 Romain Guy <romainguy@google.com> Remove unused, obsolete debug code

All these features have either been abandonned and left un-maintained
for years or can be replaced by systrace.

Change-Id: I42e4579a8078744047e5fe08a7a15254970b09bc
ardwareRenderer.java
iew.java
iewDebug.java
iewGroup.java
iewRootImpl.java
cc1508d0dc956e2b378918e8bf5159a7d8f54946 21-May-2012 Romain Guy <romainguy@google.com> am 09528f96: am c8c4ced8: Merge "Call invalidate() immediately when a frame is available" into jb-dev

* commit '09528f96f4bc5e1d7acb9c00011d232182fb93b2':
Call invalidate() immediately when a frame is available
128f15e2ca7eb22d2e20d7ff788216f132a4a13f 21-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 65e8ecf3: am a1daf827: Merge "Fix paragraph iterator." into jb-dev

* commit '65e8ecf37b5aadf267eb5ff40b53b871f7be32d8':
Fix paragraph iterator.
92302af1ee436076dc35d5a97835169ad440147c 21-May-2012 Craig Mautner <cmautner@google.com> am a978d9bf: am d51a68b3: Merge "Eliminate deferred surface destruction." into jb-dev

* commit 'a978d9bfefa8f7cb1591a1789effa955d902a9cf':
Eliminate deferred surface destruction.
dd8e50f4b96578acd402ff4b199ca1649adf25fd 21-May-2012 Jeff Brown <jeffbrown@google.com> am cf39bdf3: Add support for switching between multiple keyboard layouts.

* commit 'cf39bdf3dff5e29447f6ce734b76dc3490385e58':
Add support for switching between multiple keyboard layouts.
cf39bdf3dff5e29447f6ce734b76dc3490385e58 18-May-2012 Jeff Brown <jeffbrown@google.com> Add support for switching between multiple keyboard layouts.

Also show a notification when an external keyboard is connected
and does not have a keyboard layout selected yet.

Bug: 6405203
Change-Id: Id0ac6d83b3b381f8a236b2244a04c9acb203db3c
indowManagerPolicy.java
72669b5f4663937b09d33f9d951f0b86a03fa98b 19-May-2012 Dianne Hackborn <hackbod@google.com> am 13a0271c: Merge "Add aapt support for generating proguard rules for onClick methods." into jb-dev

* commit '13a0271cb81d497edbf93f3d6ecf4b9b8da4ee69':
Add aapt support for generating proguard rules for onClick methods.
13a0271cb81d497edbf93f3d6ecf4b9b8da4ee69 19-May-2012 Dianne Hackborn <hackbod@google.com> Merge "Add aapt support for generating proguard rules for onClick methods." into jb-dev
9275197d35a99c3f187d18d0eda6ead3b8a32603 19-May-2012 Dianne Hackborn <hackbod@google.com> Add aapt support for generating proguard rules for onClick methods.

Also fix Activity menu inflater when using the dark on light
theme wrapper to still be able to find onClick listeners.

Change-Id: Ie206db26d1df96041bc477804e476b02ad99dc9d
enuInflater.java
1b61dc2eb7f738bb49142db14a7d339e2fd90545 19-May-2012 Romain Guy <romainguy@google.com> am 43a760ba: Merge "Don\'t crash on Surface.unlockAndPost() but log & try again Bug #6482593" into jb-dev

* commit '43a760ba84a5357bae792a33ad4a0e946f02679c':
Don't crash on Surface.unlockAndPost() but log & try again Bug #6482593
43a760ba84a5357bae792a33ad4a0e946f02679c 19-May-2012 Romain Guy <romainguy@google.com> Merge "Don't crash on Surface.unlockAndPost() but log & try again Bug #6482593" into jb-dev
bcb7f04a7ca05a606d1b293dbe975f1710135be7 19-May-2012 Dianne Hackborn <hackbod@google.com> am e312c61f: Merge "Improve fitSystemWindows() documentation." into jb-dev

* commit 'e312c61f9320c3feb4cfbfcab781a65ee5a417af':
Improve fitSystemWindows() documentation.
dddcd22b7ea56b1d3e31f2bbc35c80cb047de879 19-May-2012 Romain Guy <romainguy@google.com> Don't crash on Surface.unlockAndPost() but log & try again
Bug #6482593

Change-Id: Ib477b58e2b7a6cb19a87d05f2aa0448e04d82f7c
iewRootImpl.java
e312c61f9320c3feb4cfbfcab781a65ee5a417af 18-May-2012 Dianne Hackborn <hackbod@google.com> Merge "Improve fitSystemWindows() documentation." into jb-dev
d5333f92894ae54943199d02015f0c9ef4548fd6 18-May-2012 Dianne Hackborn <hackbod@google.com> Improve fitSystemWindows() documentation.

Change-Id: I6528f2530e6514344e454510f2fa037b55daebb7
iew.java
ba910bc004bbf6f0e9aa1daab0bcd6a898b60ecd 18-May-2012 Dianne Hackborn <hackbod@google.com> am cefbeb68: am 20c0cdbb: Merge "Have the stable layout take into account the window\'s fullscreen flag." into jb-dev

* commit 'cefbeb683416a2bbc20905f280eaeadb349cb9d9':
Have the stable layout take into account the window's fullscreen flag.
72e15ceb85ecbe066c2ba33ca7e086dc511a8d23 18-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am cefd97c8: am e54c5f13: Merge "Exposing some accessiblity actions only for enabled views." into jb-dev

* commit 'cefd97c8546d6dca184e8ac9589ab2ff1b795c06':
Exposing some accessiblity actions only for enabled views.
09528f96f4bc5e1d7acb9c00011d232182fb93b2 18-May-2012 Romain Guy <romainguy@google.com> am c8c4ced8: Merge "Call invalidate() immediately when a frame is available" into jb-dev

* commit 'c8c4ced83872f3eeabd93da34d8376903c42a00b':
Call invalidate() immediately when a frame is available
c8c4ced83872f3eeabd93da34d8376903c42a00b 18-May-2012 Romain Guy <romainguy@google.com> Merge "Call invalidate() immediately when a frame is available" into jb-dev
52c145ff5ce34980d866155bb154913a847d955b 18-May-2012 Romain Guy <romainguy@google.com> Call invalidate() immediately when a frame is available

This change ensures that applications producing surface texture updates
at a steady rate will display the updates on screen at the same rate,
v-synced.

Change-Id: I663685b34d12809fbf8945c44851e30a2052ce74
extureView.java
65e8ecf37b5aadf267eb5ff40b53b871f7be32d8 18-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am a1daf827: Merge "Fix paragraph iterator." into jb-dev

* commit 'a1daf82732c8529bcf9258f42e2cc22be9fa684b':
Fix paragraph iterator.
3cd72d442b6b5b82976e7afec218b2479474cde8 18-May-2012 Adam Powell <adamp@google.com> am f53952a9: am 648337b3: Merge "Fix a bug where late-invalidating views with animations would be held for too long by ViewRootImpl" into jb-dev

* commit 'f53952a9a7aa5ed8af4867b9efcc765c7910b038':
Fix a bug where late-invalidating views with animations would be held for too long by ViewRootImpl
148e0b7a1d537f97a5a97317759b22efd165f99b 18-May-2012 Jeff Brown <jeffbrown@google.com> am 7ce7fe3b: am 33ebe8c8: Merge "Add systrace method tags for measure and layout." into jb-dev

* commit '7ce7fe3b6170c5765a8045a78a272e13f1064d6a':
Add systrace method tags for measure and layout.
9b48e8063d363ab1bc7011d20de790d9083e873b 18-May-2012 Jeff Brown <jeffbrown@google.com> am 046c8619: am 0d28cdf1: Merge "Fix a possible starvation issue related to vsync." into jb-dev

* commit '046c86191653ef3ba49c1397cb2242562a410ae4':
Fix a possible starvation issue related to vsync.
88b2b90e7d79292229ca92b6bf416bfe61092fb1 18-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am c2f64117: am c5fb5805: Merge "Accessiblity focus not following input focus and text nav broken." into jb-dev

* commit 'c2f6411741949924d42e2c4aaefc33e6312cdd68':
Accessiblity focus not following input focus and text nav broken.
9768832da837e7716555d394bd13fb879a223860 17-May-2012 alanv <alanv@google.com> Fix paragraph iterator.

Bug: 6509239
Change-Id: I628d7fd07cda24c66a0fa3f456e0141786e768a5
ccessibilityIterators.java
a978d9bfefa8f7cb1591a1789effa955d902a9cf 17-May-2012 Craig Mautner <cmautner@google.com> am d51a68b3: Merge "Eliminate deferred surface destruction." into jb-dev

* commit 'd51a68b3d2d347be989b53af1777454f97ad9b46':
Eliminate deferred surface destruction.
d51a68b3d2d347be989b53af1777454f97ad9b46 17-May-2012 Craig Mautner <cmautner@google.com> Merge "Eliminate deferred surface destruction." into jb-dev
bf08af3323117e15a65b74e66b7499d31537f9e1 17-May-2012 Craig Mautner <cmautner@google.com> Eliminate deferred surface destruction.

Removing the code that delays a surface destruction when
WindowManager.FLAG_KEEP_SURFACE_WHILE_ANIMATING is set. The lock
screen that continued to animate after destroySurfaceLocked is no
longer used and this code was causing problems.

Also mDrawState was being set to NO_SURFACE in destroySurfaceLocked
even if the surface ended up not being destroyed. Later when it was
reused the false value of mDrawState was messing things up.

The screen lock bug referenced below no longer levaes the user stuck
with a black lockscreen. However it occasionally powers back up in the
launcher screen rather than the lock screen.

Fixes bug 6485955.

Change-Id: I684104c7e7c39c161a5118aa890889fbae92e635
indowManager.java
cefbeb683416a2bbc20905f280eaeadb349cb9d9 17-May-2012 Dianne Hackborn <hackbod@google.com> am 20c0cdbb: Merge "Have the stable layout take into account the window\'s fullscreen flag." into jb-dev

* commit '20c0cdbbf79cef18e59514e0f53dfbcac0bef600':
Have the stable layout take into account the window's fullscreen flag.
20c0cdbbf79cef18e59514e0f53dfbcac0bef600 17-May-2012 Dianne Hackborn <hackbod@google.com> Merge "Have the stable layout take into account the window's fullscreen flag." into jb-dev
cefd97c8546d6dca184e8ac9589ab2ff1b795c06 17-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am e54c5f13: Merge "Exposing some accessiblity actions only for enabled views." into jb-dev

* commit 'e54c5f13652166c5896ccfa55f047301a6c8b876':
Exposing some accessiblity actions only for enabled views.
e54c5f13652166c5896ccfa55f047301a6c8b876 17-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Exposing some accessiblity actions only for enabled views." into jb-dev
fb1e80a247221ee7e8f5c5deba04812021d9d07e 17-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Exposing some accessiblity actions only for enabled views.

1. Some accessibility actions should not be performed on disabled
views. For example, scrolling should not be permitted while
accessibility focus should be. Made a quick pass over the
actions we expose now.

Change-Id: I36626dfbc0d2f480309a910f58f1de64e9e05675
iew.java
f53952a9a7aa5ed8af4867b9efcc765c7910b038 17-May-2012 Adam Powell <adamp@google.com> am 648337b3: Merge "Fix a bug where late-invalidating views with animations would be held for too long by ViewRootImpl" into jb-dev

* commit '648337b3a8024b22a77977024cdf171f83999d56':
Fix a bug where late-invalidating views with animations would be held for too long by ViewRootImpl
648337b3a8024b22a77977024cdf171f83999d56 17-May-2012 Adam Powell <adamp@google.com> Merge "Fix a bug where late-invalidating views with animations would be held for too long by ViewRootImpl" into jb-dev
7ce7fe3b6170c5765a8045a78a272e13f1064d6a 17-May-2012 Jeff Brown <jeffbrown@google.com> am 33ebe8c8: Merge "Add systrace method tags for measure and layout." into jb-dev

* commit '33ebe8c8c2179af371514b9c7a7d88faf531b18b':
Add systrace method tags for measure and layout.
3e3c4ee0475ad7096201a5f00f2e9be22fb891dd 17-May-2012 Adam Powell <adamp@google.com> Fix a bug where late-invalidating views with animations would be held
for too long by ViewRootImpl

Change-Id: I1e32bf2683b50f8834f215a753f881b5d4b8dbc9
iewRootImpl.java
c8d2668bc4506aa9e771931534c6379cf687d41e 17-May-2012 Jeff Brown <jeffbrown@google.com> Add systrace method tags for measure and layout.

Change-Id: I739f6384b390d1b34b09b622ca0f752de1dd7304
iewRootImpl.java
5b5cc4d5361c1817938d2db58ad40aab528b3ac3 16-May-2012 Dianne Hackborn <hackbod@google.com> Have the stable layout take into account the window's fullscreen flag.

When using stable layouts, you are typically expected to hide and
show the status bar through the system UI fullscreen flag. This hides
both the status bar and the action bar. The stable layout assumed
that when not hiding the status bar through the system UI flags, that
the status bar would be visible.

This change makes things a little smarter, also looking at the
window's fullscreen flag (which only hides the status bar). If this
flag is set on the window, then the stable layout now assumes that
the status bar will never be shown. This allows us to position the
action bar correctly in the situation where the application has set
the window to fullscreen and requested a stable layout, instead of
always leaving room for the status bar above it.

Change-Id: I757072ae99cd3741753af7210dbf51afe94d3db5
iew.java
046c86191653ef3ba49c1397cb2242562a410ae4 17-May-2012 Jeff Brown <jeffbrown@google.com> am 0d28cdf1: Merge "Fix a possible starvation issue related to vsync." into jb-dev

* commit '0d28cdf1c870ade242250ec1a82c710885982b4b':
Fix a possible starvation issue related to vsync.
0d28cdf1c870ade242250ec1a82c710885982b4b 17-May-2012 Jeff Brown <jeffbrown@google.com> Merge "Fix a possible starvation issue related to vsync." into jb-dev
c2f6411741949924d42e2c4aaefc33e6312cdd68 16-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am c5fb5805: Merge "Accessiblity focus not following input focus and text nav broken." into jb-dev

* commit 'c5fb5805c92429b08ca715df37e949f31591466a':
Accessiblity focus not following input focus and text nav broken.
c5fb5805c92429b08ca715df37e949f31591466a 16-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessiblity focus not following input focus and text nav broken." into jb-dev
b080660dfd69ea6f0a034946b2ff8d94e97a2537 16-May-2012 Jeff Brown <jeffbrown@google.com> Fix a possible starvation issue related to vsync.

This makes a noticeable improvement in cases where applications
post messages that need to be processed between animation frames.

Bug: 6418353
Change-Id: If225742e37aeaf3f0ca9710f9bf43dbb03bcde12
horeographer.java
64899e5c8ff7309e3209454fd4833d1b7a4b57be 16-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Accessiblity focus not following input focus and text nav broken.

1. View is checking if the accessibility focus is its
descendant it clears the accessibility focus state
in ViewRootImpl. The check in View was missing the
case that the descendant may be the view itself. In
such a case we want the normal clearing code to run.

2. The check whether a view has iterable text for
accessibility was inverted and text nav was not
working.

Change-Id: I1a13b6809fb7f205fff76ca09cd449179d06e530
iew.java
dd36336ce9ef164046d0759a2fc32cb5ff888d50 16-May-2012 Romain Guy <romainguy@google.com> am 9e981d83: am d44a1686: Merge "Don\'t draw onto a hw surface using the software renderer Bug #6485955" into jb-dev

* commit '9e981d83f1b8a1f1f88b67c32b1459a23455d3fe':
Don't draw onto a hw surface using the software renderer Bug #6485955
f22a7c34a4397a9f6add295952b2c7e7defd38b5 16-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am a379e733: am 67d10a58: Merge "Prefetching of accessibility node infos getting incorrect views." into jb-dev

* commit 'a379e733b81e44b7d91d90ea93bc26e43230fdb1':
Prefetching of accessibility node infos getting incorrect views.
9e981d83f1b8a1f1f88b67c32b1459a23455d3fe 16-May-2012 Romain Guy <romainguy@google.com> am d44a1686: Merge "Don\'t draw onto a hw surface using the software renderer Bug #6485955" into jb-dev

* commit 'd44a16864d549e08506d0f80198031f05a03bd15':
Don't draw onto a hw surface using the software renderer Bug #6485955
a379e733b81e44b7d91d90ea93bc26e43230fdb1 16-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 67d10a58: Merge "Prefetching of accessibility node infos getting incorrect views." into jb-dev

* commit '67d10a5867ac26155117f2ffda84f9d2a21dbcf0':
Prefetching of accessibility node infos getting incorrect views.
d44a16864d549e08506d0f80198031f05a03bd15 16-May-2012 Romain Guy <romainguy@google.com> Merge "Don't draw onto a hw surface using the software renderer Bug #6485955" into jb-dev
413baf8a03db180607efaca0bb60c15a153c4322 16-May-2012 Romain Guy <romainguy@google.com> Don't draw onto a hw surface using the software renderer
Bug #6485955

If an invalidate gets scheduled right before the EGL surface is destroyed,
the next draw pass is done in software. This causes the software renderer
to connect to the surface forever which prevents the hardware renderer
from coming back when the screen is turned back on.

The fix here is to ignore the draw request when hw acceleration is requested
but not yet available. Proper software fallback will still happen when an
error is encountered with hardware rendering (in which case hw acceleration
will not be marked as requested anymore.)

Change-Id: I1edc4a51c8dd38240aa2345092a18a081a756fc1
iewRootImpl.java
4528b4e882584745f48263fa6626987e63832a2a 16-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Prefetching of accessibility node infos getting incorrect views.

1. The prefetcher of accessibility nodes infos was not folloing
the childForAccessibility relationship when finding the views
whose node infos to prefetch.

2. NumberPicker was not reporting the correct parent.

bug:6471710

Change-Id: Ia7ad5dd031fb4b3816dfe630d5212201cfafa236
ccessibilityInteractionController.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityNodeInfoCache.java
446d44778e913c749d65ed331c054fcc628e196d 15-May-2012 Chris Wren <cwren@android.com> am 69337714: am 78cb7cf7: Allow animations to run past cancelled draws, if the view is visible.

* commit '69337714812db8735a66785f62db39f46a70fd26':
Allow animations to run past cancelled draws, if the view is visible.
da350b9ef3095ec64a262758e595d5c6e039efd2 15-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am db3cf0dd: am 0e29ac9e: Merge "Accessibility focus traversal in virtual nodes." into jb-dev

* commit 'db3cf0dd580ce976ea9b90aeebc60ff34f62372a':
Accessibility focus traversal in virtual nodes.
ae197fd160e5cb04559a4f3ba82b3e326ff90b2c 15-May-2012 Romain Guy <romainguy@google.com> am d5cfec8d: am 7b8523aa: Merge "Remove all Dalvik allocations from Cavnas.drawBitmap(int[], ...)" into jb-dev

* commit 'd5cfec8d34a59f2a4e98b655b5e49775d69ad64c':
Remove all Dalvik allocations from Cavnas.drawBitmap(int[], ...)
38f4c223c0fde274c2089b1dad026593c06de06f 15-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am d83a0800: am 8ce2d78a: Merge "Improving accessibility focus traversal." into jb-dev

* commit 'd83a0800679583ccc99a90a128f8d6c11afbeca4':
Improving accessibility focus traversal.
57ea2e0eaf78f7b54b68070548beb4099e4e3d9f 15-May-2012 Jeff Brown <jeffbrown@google.com> am e2ec70bf: am 00ff4748: Merge "More VelocityTracker refactoring." into jb-dev

* commit 'e2ec70bf92e80800bd5163f56632b9eb14cce290':
More VelocityTracker refactoring.
50e8a1649aae26db0986e3967fede71ab7383d85 15-May-2012 Eric Laurent <elaurent@google.com> am dd99f70a: am dfae6db0: Merge "Implement new volume display policy." into jb-dev

* commit 'dd99f70a3f8e661799ecda271d31fc385a80ecb5':
Implement new volume display policy.
69337714812db8735a66785f62db39f46a70fd26 15-May-2012 Chris Wren <cwren@android.com> am 78cb7cf7: Allow animations to run past cancelled draws, if the view is visible.

* commit '78cb7cf7d1d82834c4405650a17e387370004570':
Allow animations to run past cancelled draws, if the view is visible.
db3cf0dd580ce976ea9b90aeebc60ff34f62372a 15-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 0e29ac9e: Merge "Accessibility focus traversal in virtual nodes." into jb-dev

* commit '0e29ac9e4ede6e75a5ca91eb744bbff83949c71e':
Accessibility focus traversal in virtual nodes.
d5cfec8d34a59f2a4e98b655b5e49775d69ad64c 15-May-2012 Romain Guy <romainguy@google.com> am 7b8523aa: Merge "Remove all Dalvik allocations from Cavnas.drawBitmap(int[], ...)" into jb-dev

* commit '7b8523aaed11a3b5ee286776023233036ac0759d':
Remove all Dalvik allocations from Cavnas.drawBitmap(int[], ...)
d83a0800679583ccc99a90a128f8d6c11afbeca4 15-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 8ce2d78a: Merge "Improving accessibility focus traversal." into jb-dev

* commit '8ce2d78aa89e89e9a5607d8809bf6d248508a531':
Improving accessibility focus traversal.
e2ec70bf92e80800bd5163f56632b9eb14cce290 15-May-2012 Jeff Brown <jeffbrown@google.com> am 00ff4748: Merge "More VelocityTracker refactoring." into jb-dev

* commit '00ff47484f8137aa3e59f680ff07d2662cfb4088':
More VelocityTracker refactoring.
dd99f70a3f8e661799ecda271d31fc385a80ecb5 15-May-2012 Eric Laurent <elaurent@google.com> am dfae6db0: Merge "Implement new volume display policy." into jb-dev

* commit 'dfae6db0228a2ba4e34deb48d54fb06a2637e6a2':
Implement new volume display policy.
78cb7cf7d1d82834c4405650a17e387370004570 15-May-2012 Chris Wren <cwren@android.com> Allow animations to run past cancelled draws, if the view is visible.

Bug: 6475482
Change-Id: Iecb3a04744282135efa0049f1b70a46dc4a6bb23
iewRootImpl.java
0e29ac9e4ede6e75a5ca91eb744bbff83949c71e 15-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessibility focus traversal in virtual nodes." into jb-dev
791fd31a68c59395952005886ba799169f80a29a 15-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Accessibility focus traversal in virtual nodes.

1. Finished the implementation of support for maintaining
accessibility focus in view with virtual descendants.

2. Finished the NumberPicker implementation of virtual
subtree such that all requred attributes are reported
and ensuring that it support accessibility focus in
its virtual descentants.

3. Fixed a bug where if a predecessor of the view that is
accessiiblity focused is removed the accessibliity focus
host in ViewRootImpl is not cleared leading to a crash
when trying to draw the accessibility focus highlight.:

bug:6472646
bug:6433864

Change-Id: I3645642b87b4a26025c0b2ba9dfaad92d11a48f1
ccessibilityInteractionController.java
iew.java
iewRootImpl.java
7b8523aaed11a3b5ee286776023233036ac0759d 15-May-2012 Romain Guy <romainguy@google.com> Merge "Remove all Dalvik allocations from Cavnas.drawBitmap(int[], ...)" into jb-dev
e651cc6239616a202f6e96ebc2ed93b4b8b3627c 15-May-2012 Romain Guy <romainguy@google.com> Remove all Dalvik allocations from Cavnas.drawBitmap(int[], ...)

Change-Id: Ie28538a2104d21154fdc78a56525e7403f08287d
LES20Canvas.java
24ef21aeebb247f5dd6de13aea878f3d7194143a 15-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am e436812e: am 844047ac: Merge "Fix inconsitency in aAccessibilityNodeInfo cache." into jb-dev

* commit 'e436812e85f4a8da724f4fe36c1547a1b806f1f9':
Fix inconsitency in aAccessibilityNodeInfo cache.
c8f6d8014a1f32885ad6c1285383b23cd5361152 15-May-2012 Michael Jurka <mikejurka@google.com> am 87f6f809: am 143a02aa: Merge "Prevent ViewPropertyAnimators from getting started twice" into jb-dev

* commit '87f6f809935bbb46f85f158d693e46c5802ddd1d':
Prevent ViewPropertyAnimators from getting started twice
76af556c8d70bad552bf5cc1047f0c018fc5f906 15-May-2012 Chet Haase <chet@google.com> am c63aaee9: am 728e4394: Merge "Minor touch-up of Animation docs" into jb-dev

* commit 'c63aaee9ff45cec1c47edff8de21c7732ccc6bcf':
Minor touch-up of Animation docs
e3fa874baeec2c28c4a8047e1aad24f61bb6c45c 15-May-2012 Mathias Agopian <mathias@google.com> am 41f089e0: am 7ed1d661: Merge "fix SurfaceView visibility state changes" into jb-dev

* commit '41f089e0863067fea5ebe27c33d7545aed9736cf':
fix SurfaceView visibility state changes
6917b2a10d9b701282fbfb85be48eeb7e7877882 15-May-2012 Dianne Hackborn <hackbod@google.com> am 2da87ec3: am 2a7a6ca0: Merge "Implement new window cropping." into jb-dev

* commit '2da87ec32e72c2c25998e2444155c00074cfbd40':
Implement new window cropping.
9a19d16a1a44b8f394f93e116adb48024148f8ef 15-May-2012 Guang Zhu <guangzhu@google.com> am 58b0dcde: am 0d607fbe: accessibility bug fix in NumberPicker

* commit '58b0dcde83354bd1ae9091a7cbc7f207fb29960a':
accessibility bug fix in NumberPicker
e436812e85f4a8da724f4fe36c1547a1b806f1f9 15-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 844047ac: Merge "Fix inconsitency in aAccessibilityNodeInfo cache." into jb-dev

* commit '844047acb7133c0b6b7128f19b76f93eaca9371e':
Fix inconsitency in aAccessibilityNodeInfo cache.
87f6f809935bbb46f85f158d693e46c5802ddd1d 15-May-2012 Michael Jurka <mikejurka@google.com> am 143a02aa: Merge "Prevent ViewPropertyAnimators from getting started twice" into jb-dev

* commit '143a02aa79fbc28490bac39fabb6db0608774630':
Prevent ViewPropertyAnimators from getting started twice
c63aaee9ff45cec1c47edff8de21c7732ccc6bcf 15-May-2012 Chet Haase <chet@google.com> am 728e4394: Merge "Minor touch-up of Animation docs" into jb-dev

* commit '728e43948c9b4d18a900fa50acad8d2734947b21':
Minor touch-up of Animation docs
41f089e0863067fea5ebe27c33d7545aed9736cf 15-May-2012 Mathias Agopian <mathias@google.com> am 7ed1d661: Merge "fix SurfaceView visibility state changes" into jb-dev

* commit '7ed1d6613e2f5aa05158a87888f5a6474eca5cc1':
fix SurfaceView visibility state changes
2da87ec32e72c2c25998e2444155c00074cfbd40 15-May-2012 Dianne Hackborn <hackbod@google.com> am 2a7a6ca0: Merge "Implement new window cropping." into jb-dev

* commit '2a7a6ca00ab176105b5bbfa6b17bb0dcd058d517':
Implement new window cropping.
58b0dcde83354bd1ae9091a7cbc7f207fb29960a 15-May-2012 Guang Zhu <guangzhu@google.com> am 0d607fbe: accessibility bug fix in NumberPicker

* commit '0d607fbe546ac943de38dad33ae681b09efec6ea':
accessibility bug fix in NumberPicker
8ce2d78aa89e89e9a5607d8809bf6d248508a531 15-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Improving accessibility focus traversal." into jb-dev
00ff47484f8137aa3e59f680ff07d2662cfb4088 15-May-2012 Jeff Brown <jeffbrown@google.com> Merge "More VelocityTracker refactoring." into jb-dev
dfae6db0228a2ba4e34deb48d54fb06a2637e6a2 15-May-2012 Eric Laurent <elaurent@google.com> Merge "Implement new volume display policy." into jb-dev
e5dfa47d84668376b84074c04570fb961870adeb 09-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Improving accessibility focus traversal.

1. Now the views considered during the accessibility focus search
are the ones that would get accessibility focus when thovered
over. This way the user will get the same items i.e. feedback
if he touch explores the screen and uses focus traversal. This
is imperative for a good user experience.

2. Updated which focusables are considered when searching for access
focus in ViewGroup. Generally accessibility focus ignores focus
before/after descendants.

3. Implemented focus search strategy in AbsListView that will traverse
the items of the current list (and the stuff withing one item
before moving to the next) before continuing the search if
forward and backward accessibility focus direction.

4. View focus search stops at root namespace. This is not the right
way to prevent some stuff that is not supposed to get a focus in
a container for a specific state. Actually the addFocusables
for that container has to be overriden. Further this approach
leads to focus getting stuck. The accessibility focus ignores
root names space since we want to traverse the entire screen.

5. Fixed an bug in AccessibilityInteractionController which was not
starting to search from the root of a virtual node tree.

6. Fixed a couple of bugs in FocusFinder where it was possible to
get index out of bounds exception if the focusables list is empty.

bug:5932640

Change-Id: Ic3bdd11767a7d40fbb21f35dcd79a4746af784d4
ccessibilityInteractionController.java
ocusFinder.java
iew.java
iewGroup.java
iewParent.java
iewRootImpl.java
844047acb7133c0b6b7128f19b76f93eaca9371e 14-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Fix inconsitency in aAccessibilityNodeInfo cache." into jb-dev
8c78752f2bf786ca3e6f45b9dc6955d3b4bba59c 14-May-2012 Eric Laurent <elaurent@google.com> Implement new volume display policy.

Whenever a stream type is muted, the progress bar in volume panel
is at 0.
If a stream is muted by ringer mode and does not control ringer mode,
the progress bar is disabled.
Pressing VOL- when in vibrate or silent mode resets the last audible
volume of ringtone stream (music strem on tablets) to 0.

VolumePanel implementation:
- Always prefer AudioManager APIs over AudioService APIs when available on both.
- Do not use AudioManager.shouldVibrate() (deprecated).

Change-Id: I57fcb19ada4e8d729b6b41d668496562ebe340c3
olumePanel.java
143a02aa79fbc28490bac39fabb6db0608774630 14-May-2012 Michael Jurka <mikejurka@google.com> Merge "Prevent ViewPropertyAnimators from getting started twice" into jb-dev
728e43948c9b4d18a900fa50acad8d2734947b21 14-May-2012 Chet Haase <chet@google.com> Merge "Minor touch-up of Animation docs" into jb-dev
ac592fb3b6daf7d155438c7a1727932d88201dce 14-May-2012 Jeff Brown <jeffbrown@google.com> am a4881637: am 58770232: Merge "Move power HAL interactions to PowerManagerService." into jb-dev

* commit 'a48816375f68a8b4a945efcb68e405308a50adc9':
Move power HAL interactions to PowerManagerService.
671543f762b76659fcedc27c6cbeaeb94502a610 14-May-2012 Jamie Gennis <jgennis@google.com> am 592cbb83: am c9e27d4b: Merge "Surface: replace active rect with window crop" into jb-dev

* commit '592cbb835aa5ed104badf7de6c144a7b90300620':
Surface: replace active rect with window crop
e60a635919ce8f1f5d868d51a87d7fc5da4ddda0 14-May-2012 Adam Powell <adamp@google.com> am e48c70e4: am 7fc4fbcc: Merge "Automatic persistent text selection for ListViews" into jb-dev

* commit 'e48c70e4d9302795d5f02d352c7907302ca5c8b6':
Automatic persistent text selection for ListViews
d4bef4b7866ed42db4495997626bde1dbc3075d1 14-May-2012 Jeff Brown <jeffbrown@google.com> am 47272c93: am b12b6b51: Merge "Minor refactoring before starting on velocity tracker changes." into jb-dev

* commit '47272c932ab6157022aaefd015e5d1df9dc5bd2f':
Minor refactoring before starting on velocity tracker changes.
7008d7b7f3730aef59d510d2a48e166114e090a4 14-May-2012 Chet Haase <chet@google.com> am fd086b95: am 76f08218: Merge "Fix quickReject logic for transformed views" into jb-dev

* commit 'fd086b95103e8c7fbe853f5702aaa7d04f2141f0':
Fix quickReject logic for transformed views
ad4fc6f764bcd2bdbac726efbfbfb6f4ffe113b6 14-May-2012 Chet Haase <chet@google.com> am 4a70bc72: am 26511012: Merge "Clear animations in DisplayLists when done" into jb-dev

* commit '4a70bc72a87427115d9d64516145283dc96745f2':
Clear animations in DisplayLists when done
7ed1d6613e2f5aa05158a87888f5a6474eca5cc1 14-May-2012 Mathias Agopian <mathias@google.com> Merge "fix SurfaceView visibility state changes" into jb-dev
85bd0d62830a098c1bdc720dfdcf4fe1b18b657c 14-May-2012 Jeff Brown <jeffbrown@google.com> More VelocityTracker refactoring.

Bug: 6413587
Change-Id: Ida1152e7a34d5fe5caab5e6b5e1bc79f6c7a25e6
elocityTracker.java
500998d401e1c936bf60facecd5e9699d2eadb66 14-May-2012 Michael Jurka <mikejurka@google.com> Prevent ViewPropertyAnimators from getting started twice
iewPropertyAnimator.java
2a7a6ca00ab176105b5bbfa6b17bb0dcd058d517 14-May-2012 Dianne Hackborn <hackbod@google.com> Merge "Implement new window cropping." into jb-dev
85afd1b6f871d471fdff1980134676a5f1690525 13-May-2012 Dianne Hackborn <hackbod@google.com> Implement new window cropping.

The window manager now performs the crop internally, evaluating
it every animation from, to be able to update it along with
the surface position.

Change-Id: I960a2161b9defb6fba4840fa35aee4e411c39b32
Window.aidl
WindowSession.aidl
urfaceView.java
iew.java
iewRootImpl.java
indowManagerPolicy.java
cbeb33249d5beec7903f18269c991a5515c5d981 13-May-2012 Mathias Agopian <mathias@google.com> fix SurfaceView visibility state changes

SurfaceView didn't recompute the transparent region
when the INVISIBLE state (as opposed to GONE) was involved.

Bug: 6467123
Change-Id: I05930bd568a345331840c1ad8d9123ef4904c04f
urfaceView.java
0d607fbe546ac943de38dad33ae681b09efec6ea 12-May-2012 Guang Zhu <guangzhu@google.com> accessibility bug fix in NumberPicker

* moved View#isVisibleToUser to protected with @hide
* added a new View#isVisibleToUser(Rect), so that a portion of
the view can be tested for visibility
* NumberPicker will report its concrete class name
* code to append virtual children was at wrong place
* boundInScreen for increment and decrement buttons are reported
wrong

Change-Id: Ic5d644b3e1efa15b1f0537907c8cdd4ce43a97c1
iew.java
d6a98aafab10aeb6f059421815600e425a349266 13-May-2012 Romain Guy <romainguy@google.com> am 30b013bf: am d303dd3d: Merge "Prevent NPE in TextureView.getBitmap()" into jb-dev

* commit '30b013bfbad60e20b7f812d0c5e41893fb7503fa':
Prevent NPE in TextureView.getBitmap()
a48816375f68a8b4a945efcb68e405308a50adc9 12-May-2012 Jeff Brown <jeffbrown@google.com> am 58770232: Merge "Move power HAL interactions to PowerManagerService." into jb-dev

* commit '58770232216cd735afdfd3dd53151070e06de5ce':
Move power HAL interactions to PowerManagerService.
58770232216cd735afdfd3dd53151070e06de5ce 12-May-2012 Jeff Brown <jeffbrown@google.com> Merge "Move power HAL interactions to PowerManagerService." into jb-dev
7304c343821309dd15f769b18f1de2fa43751573 12-May-2012 Jeff Brown <jeffbrown@google.com> Move power HAL interactions to PowerManagerService.

This refactoring sets the stage for a follow-on change that
will make use additional functions of the power HAL.

Moved functionality from android.os.Power into PowerManagerService.
None of these functions make sense being called outside of the
system server. Moving them to the PowerManagerService makes it
easier to ensure that the power HAL is initialized exactly once.

Similarly, moved ShutdownThread out of the policy package and into
the services package where it can tie into the PowerManagerService
as needed.

Bug: 6435382
Change-Id: I958241bb124fb4410d96f5d5eb00ed68d60b29e5
indowManagerPolicy.java
c406be9036643ebe41bafcd94fe4aa861b4e4f4f 12-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Fix inconsitency in aAccessibilityNodeInfo cache.

1. Fixed errors in the accessibility node cache.

A. The cache was not catching the case when the current window changes as a
result the user touch exploring it. As a result the cache had nodes from
more that one window but the node ids are not unique thus causing a mess.

B. The node info tree was prefetched regardless if a prefetched node is root
name space (i.e. view ids - not accessibility ids - are namespaced) while
the prefetched nodes were taking this into account. As a result there can
get disconnected subtrees in the cache.

C. When an event for a property change such as focus was received the cache
we were removing the source node. As a result there may be disconnected nodes.

D. When a node was added to the cache and an older version exists there was
no check if it will point to the same children and parent. As a result if
the state of the node has fewer children the subtrees rooted at the no
longer present children will stay disconnected in the cache.

E. When a node got accessibility or input focus the old one in the cache was
not removed. As a result you may have a state with more than one access
or input focus.

2. Added integrity check enabled only on user builds when a specific flag is set
for the cache which checks whether:

A. All nodes are from the same window.

B. All nodes are connected.

C. There are no duplicates.

D. There is only one input focus.

E. There is only one accessibility focus.

3. The reported accessibility node info tree was stopping at the root namespace
boundary which is not correct. The reported tree has to reflect everything
on the screen that the user can see such a workspace with widgets. The root
namespace is added to avoid clash of view id but the accessibility ids are
unique no matter if the view is inflated from a remote view.

4. Added calls to notify the accessibility layer when a preoprty that is interesting
for accessibiliy has changed.

bug:6471710

Change-Id: I069470d91f209ba16313fa6539787a55efa3512e
iew.java
iewGroup.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityNodeInfoCache.java
592cbb835aa5ed104badf7de6c144a7b90300620 12-May-2012 Jamie Gennis <jgennis@google.com> am c9e27d4b: Merge "Surface: replace active rect with window crop" into jb-dev

* commit 'c9e27d4ba1f46eb29aa8a794685ecb7c492d5d83':
Surface: replace active rect with window crop
c9e27d4ba1f46eb29aa8a794685ecb7c492d5d83 12-May-2012 Jamie Gennis <jgennis@google.com> Merge "Surface: replace active rect with window crop" into jb-dev
e48c70e4d9302795d5f02d352c7907302ca5c8b6 12-May-2012 Adam Powell <adamp@google.com> am 7fc4fbcc: Merge "Automatic persistent text selection for ListViews" into jb-dev

* commit '7fc4fbccd6129e286a1f9c640eb3229b91792bce':
Automatic persistent text selection for ListViews
7fc4fbccd6129e286a1f9c640eb3229b91792bce 12-May-2012 Adam Powell <adamp@google.com> Merge "Automatic persistent text selection for ListViews" into jb-dev
4242893e326cf013eba51931f00faf3ed428d670 12-May-2012 Chet Haase <chet@google.com> Minor touch-up of Animation docs

Change-Id: Ifd615d352b9924d562f4238c8ed36a8f4e6a91fa
iew.java
057a585fba01d92c38f27a8c080622dfd0c6f556 11-May-2012 Adam Powell <adamp@google.com> Automatic persistent text selection for ListViews

Use View transient state tracking to allow selection to persist across
ListView-style item view recycling.

Fix some bugs with transient state tracking.

Bug 6110122

Change-Id: Ic084b8fc2289bff718b19478a37ce64459b3ed4c
iew.java
47272c932ab6157022aaefd015e5d1df9dc5bd2f 11-May-2012 Jeff Brown <jeffbrown@google.com> am b12b6b51: Merge "Minor refactoring before starting on velocity tracker changes." into jb-dev

* commit 'b12b6b5116e3d76474296b45f570693bb10d6c99':
Minor refactoring before starting on velocity tracker changes.
b12b6b5116e3d76474296b45f570693bb10d6c99 11-May-2012 Jeff Brown <jeffbrown@google.com> Merge "Minor refactoring before starting on velocity tracker changes." into jb-dev
fd086b95103e8c7fbe853f5702aaa7d04f2141f0 11-May-2012 Chet Haase <chet@google.com> am 76f08218: Merge "Fix quickReject logic for transformed views" into jb-dev

* commit '76f082189ec451433d942fcee5ca2913f4132e6b':
Fix quickReject logic for transformed views
8a90e6e3174083f274538567d851f98478fc83e9 11-May-2012 Jeff Brown <jeffbrown@google.com> Minor refactoring before starting on velocity tracker changes.

Bug: 6413587
Change-Id: I5eba2bb57193bff78cb3740de5f87aca0b31d154
elocityTracker.java
1a3ab175b099edf545474f11fa165473428a98a1 11-May-2012 Chet Haase <chet@google.com> Fix quickReject logic for transformed views

When a parent draws its child views, each child's bounds is checked
against the current dirty region. If the view falls outside of that
region is is rejected and doesn't enter into the parent's DisplayList.

This works in general, for both transformed and untransformed views
(because we skip this check if the view is transformed). But it breaks down
when the transform properties of the view change later, since DisplayList
properties simply push these values down to the view's DisplayList without
invalidating the parent. If a view is rejected when untransformed, then there
is nothing to cause it to be considered again until something causes an
invalidate of the parent.

The fix is to note when a view is rejected and record that information.
Later, when one of the transform-related properties change, we invalidate the parent
to force the check to happen again, which will cause the view to get drawn
if it's visible.

Issue #6477730 quickRejected views must recreate their DisplayLists on transform changes

Change-Id: I70caf198005cd7e424a37bccc6ae050e09880a6c
iew.java
4a70bc72a87427115d9d64516145283dc96745f2 11-May-2012 Chet Haase <chet@google.com> am 26511012: Merge "Clear animations in DisplayLists when done" into jb-dev

* commit '26511012c40dbe704f4791654b28b9e0e05589d8':
Clear animations in DisplayLists when done
26511012c40dbe704f4791654b28b9e0e05589d8 11-May-2012 Chet Haase <chet@google.com> Merge "Clear animations in DisplayLists when done" into jb-dev
78b8ef3f3ad8ab935f677d8d672db0d97bff8119 07-May-2012 Jamie Gennis <jgennis@google.com> Surface: replace active rect with window crop

This change replaces the setActiveRectCrop method on Surface, which was called
from app processes, with the setWindowCrop method that is to be called from the
window manager.

Bug: 6299171
Change-Id: Ica51efcd8c488a526e7013b83d80df4856694519
urface.java
iewRootImpl.java
30b013bfbad60e20b7f812d0c5e41893fb7503fa 11-May-2012 Romain Guy <romainguy@google.com> am d303dd3d: Merge "Prevent NPE in TextureView.getBitmap()" into jb-dev

* commit 'd303dd3da2af272d0beaac956a12e145b8386f45':
Prevent NPE in TextureView.getBitmap()
78245f77d2724ee3a053f13fbcb0359751b9f842 11-May-2012 Romain Guy <romainguy@google.com> Prevent NPE in TextureView.getBitmap()

This crash could occur when invoking setSurfaceTexture() then getBitmap()
before the View has a chance to be drawn.

Change-Id: I25c55df15750e59b9c916e8f750de2c89718d39e
extureView.java
5c2a9ddcf2764f2cb34251d86ccdbf722f7f49cb 11-May-2012 Dianne Hackborn <hackbod@google.com> am 00389a51: am b1b55e6c: Fix build.

* commit '00389a5198d17a650b00b981b5a9174dbb88fc9f':
Fix build.
00389a5198d17a650b00b981b5a9174dbb88fc9f 11-May-2012 Dianne Hackborn <hackbod@google.com> am b1b55e6c: Fix build.

* commit 'b1b55e6c6b079d75c13dcc23ca3ebce847bb42f8':
Fix build.
b1b55e6c6b079d75c13dcc23ca3ebce847bb42f8 11-May-2012 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: Ie255c93442d0b62032ac25e6de97f2c03e5df3ba
iew.java
50d99215023ee346a95eb72c413759d6a58f82a5 11-May-2012 Dianne Hackborn <hackbod@google.com> am de888fec: am 255d1e15: Merge "Fix issue #6475693: OnSystemUiVisibilityChangeListener reporting..." into jb-dev

* commit 'de888fec6b7c2f2c9a32a7e9faf38083f67da4d8':
Fix issue #6475693: OnSystemUiVisibilityChangeListener reporting...
de888fec6b7c2f2c9a32a7e9faf38083f67da4d8 11-May-2012 Dianne Hackborn <hackbod@google.com> am 255d1e15: Merge "Fix issue #6475693: OnSystemUiVisibilityChangeListener reporting..." into jb-dev

* commit '255d1e1540833fb1980791b2e340cad4cb18b3b7':
Fix issue #6475693: OnSystemUiVisibilityChangeListener reporting...
255d1e1540833fb1980791b2e340cad4cb18b3b7 11-May-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #6475693: OnSystemUiVisibilityChangeListener reporting..." into jb-dev
cf67578c7f99492273a8f8446dd18ddc5af2ae76 11-May-2012 Dianne Hackborn <hackbod@google.com> Fix issue #6475693: OnSystemUiVisibilityChangeListener reporting...

...incorrect visibility when the ActionBar overflow menu is opened

Don't report layout flags in system UI visibility callback. Update
docs to reflect this.

Change-Id: Icfa411b5537de037cafbcac04991101e8b9138c4
iew.java
iewGroup.java
iewRootImpl.java
afd5c3ee60c45ebb5d63d2d0d14f08130075883b 10-May-2012 Chet Haase <chet@google.com> Clear animations in DisplayLists when done

The matrix calculated by Animations is pushed down to the native
DisplayList object, and is then used when the DL is issued to the
GL renderer. This works while the animation is running, but the end
of animations is not handled correctly. In particular, we never clear the
animation, so whatever the last frame of the animation calculated will
persist on that DisplayList object until it is recreated.

The fix is to note when we used to be animating and are no longer
doing so, taking that opportunity to push the cleared state down
to the DisplayList.

Issue #6448993 action bar -- including settings menu -- disappears on Nakasi

Change-Id: I73cdadaef40d87ccbc1beb02599c4d70506ea42b
LES20DisplayList.java
iew.java
86ba4aaa712f68282273e632ef72981da165e9a3 10-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 37fd7976: am a1dc761c: Adding scroll actions to accessibility node info.

* commit '37fd797699eb8e481d69f7f5a19cd05b8a5b7170':
Adding scroll actions to accessibility node info.
37fd797699eb8e481d69f7f5a19cd05b8a5b7170 10-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am a1dc761c: Adding scroll actions to accessibility node info.

* commit 'a1dc761c8322355eb1bb71d3d6c9c603c1d1fc0f':
Adding scroll actions to accessibility node info.
a1dc761c8322355eb1bb71d3d6c9c603c1d1fc0f 10-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Adding scroll actions to accessibility node info.

1. Scrolling actions are crucial for enabling a gesture based
traversal of the UI and specifically scrollable containers
especially lists and anything backed by an adapter. Since
accessibility focus can land only attached views, it cannot
visit views for adapter items not shown on the screen.
Auto scrolling the list as a result of putting access focus
ot a list item does not work well since the user may get
trapped in a long list. Adding an accessibility node provider
to emit virtual views for one view before the first and one
after the last is complex and suffers the limitation of trapping
the user. Accessibility service need an explicit scroll actions
which may be performed upon an explicit user action. Hence,
the user is informed for the start/end of the visible part of
the list and he makes a deliberate choice to scroll. This will
benefit also people developing Braille devices since they can
scroll the content without telling the user to stop using the
Braille controller and take the device out of his pocket to scroll
and go back to the Braille controller.

NOTE: Without these action large portions of the screen will be
hard to access since users will have to touch and explore to
find and scroll the list.

Change-Id: Iafcf54d4967893205872b3649025a4e347a299ed
ccessibility/AccessibilityNodeInfo.java
e5c511a1cceffd17b8edb355f2c19a7498a5e229 10-May-2012 Michael Jurka <mikejurka@google.com> am bf1b5fa9: am 421dceb0: Merge "Making transition out of recents look better" into jb-dev

* commit 'bf1b5fa944158044a595706924b935b5577ec0f0':
Making transition out of recents look better
d41bf1a287af3ac453bb776ddfcda47a5d0923f3 10-May-2012 Dianne Hackborn <hackbod@google.com> am 014afea3: am a482d366: Merge "Fixed typo in findAccessibilityFocus API." into jb-dev

* commit '014afea3cec7ff93d195753103478826796c310f':
Fixed typo in findAccessibilityFocus API.
a5526619487bf58014e4d4a7f9810f7cb1c6f53d 10-May-2012 Jeff Brown <jeffbrown@google.com> am 3631131e: am 571d4cbe: Merge "Fix bugs in fallback key handling." into jb-dev

* commit '3631131e5fcb939931f985bffdb14af71dc0f388':
Fix bugs in fallback key handling.
bf1b5fa944158044a595706924b935b5577ec0f0 10-May-2012 Michael Jurka <mikejurka@google.com> am 421dceb0: Merge "Making transition out of recents look better" into jb-dev

* commit '421dceb0a4fd8f20349a0de277f82b56e71cb90b':
Making transition out of recents look better
421dceb0a4fd8f20349a0de277f82b56e71cb90b 10-May-2012 Michael Jurka <mikejurka@google.com> Merge "Making transition out of recents look better" into jb-dev
455af7f7b002c15ec85701a8333ef9862683e7e1 10-May-2012 Dianne Hackborn <hackbod@google.com> am 67cc7f2e: am a53de062: Add callback hack to find out when to load system properties.

* commit '67cc7f2e60bc6532d00bb3c473b9a1d32cdafce2':
Add callback hack to find out when to load system properties.
014afea3cec7ff93d195753103478826796c310f 10-May-2012 Dianne Hackborn <hackbod@google.com> am a482d366: Merge "Fixed typo in findAccessibilityFocus API." into jb-dev

* commit 'a482d36635cbfbbfb4aee9fc79d55514bf6b7464':
Fixed typo in findAccessibilityFocus API.
3631131e5fcb939931f985bffdb14af71dc0f388 10-May-2012 Jeff Brown <jeffbrown@google.com> am 571d4cbe: Merge "Fix bugs in fallback key handling." into jb-dev

* commit '571d4cbeec4adad050b8e188770e7e7dedc558f1':
Fix bugs in fallback key handling.
67cc7f2e60bc6532d00bb3c473b9a1d32cdafce2 10-May-2012 Dianne Hackborn <hackbod@google.com> am a53de062: Add callback hack to find out when to load system properties.

* commit 'a53de0629f3b94472c0f160f5bbe1090b020feab':
Add callback hack to find out when to load system properties.
a482d36635cbfbbfb4aee9fc79d55514bf6b7464 10-May-2012 Dianne Hackborn <hackbod@google.com> Merge "Fixed typo in findAccessibilityFocus API." into jb-dev
21385cd83d7d7938b57a4acbaa236dd4c7804ed4 03-May-2012 Michael Jurka <mikejurka@google.com> Making transition out of recents look better

- Fading out recents first, then scaling up app
thumbnail
- Fade Recents out over 130ms
- Delay the window animation for 200ms first,
then animate for 200ms (previously we didn't delay
and then animated for 300ms)

Bug: 6390075

Change-Id: Ia8c753bf7ee03d2acef6eb2772b28d88fe10a682
WindowManager.aidl
57aab755441a28c2e5c78c35a57b940afc2799e0 10-May-2012 alanv <alanv@google.com> Fixed typo in findAccessibilityFocus API.

Change-Id: I3ca1448792a1b712f781c1bfa73823ca08ea3d39
ccessibilityInteractionController.java
iewRootImpl.java
ccessibility/AccessibilityNodeProvider.java
571d4cbeec4adad050b8e188770e7e7dedc558f1 10-May-2012 Jeff Brown <jeffbrown@google.com> Merge "Fix bugs in fallback key handling." into jb-dev
a53de0629f3b94472c0f160f5bbe1090b020feab 09-May-2012 Dianne Hackborn <hackbod@google.com> Add callback hack to find out when to load system properties.

Use this to reload the trace and layout bounds properties.

This is ONLY for debugging.

Change-Id: I1c4bdb52c823520c352c5bac45fa9ee31160793c
iew.java
iewRootImpl.java
indowManagerImpl.java
fd23e3ed976b22b9a92ddb2cb3a46f9d2a0ce23f 09-May-2012 Jeff Brown <jeffbrown@google.com> Fix bugs in fallback key handling.

If a fallback key is generated using a key plus a modifier,
then it's possible we might get a different fallback key
generated if the modifier has changed. PhoneWindowManager
needs to remember which fallback is last generated for a
given key code so that it can apply the same fallback action.

When generating cancellation events, it's important to have
preserved the policyFlags of the original event. Otherwise
we may not dispatch the cancellation properly. For example,
some actions are not performed if the POLICY_FLAG_TRUSTED
is not specified.

Remember the metaState associated with a key event so we can
include it when canceled.

Tell the policy when a fallback is being cancelled so that it
can clean up its state.

After a SEARCH shortcut is invoked, clear the flag indicating
that a shortcut is pending. This is to prevent SEARCH from
getting stuck down in the case where we might forget to send
the up. (Shouldn't happen anymore after the prior fixes.)

Bug: 5616255
Change-Id: I68f0a9679c7af464eaf31c099f2aa50b53fecf1f
eyCharacterMap.java
iewRootImpl.java
7956d5a01992bd2d56466beb864c4b28ec4f19d9 09-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 72912116: am a3b67289: Merge "Fixing View.getBoundsOnScreen()" into jb-dev

* commit '72912116cf0ff08dc655f065cff173d53b7152bd':
Fixing View.getBoundsOnScreen()
eda88f00891f94d2d419869a091c0604cd078f6b 09-May-2012 Jeff Brown <jeffbrown@google.com> am 3d42f8f8: am 9ac663ef: Merge "Disable input dispatch until boot finished." into jb-dev

* commit '3d42f8f8cab56ab33cb587a7aa857051d92ada90':
Disable input dispatch until boot finished.
1313b08011cfd4c89ab1101c0672f8dc8de2de23 09-May-2012 Romain Guy <romainguy@google.com> am 3607c338: am 27ef44c4: Merge "Invalidate display lists immediately when views are removed/added quickly" into jb-dev

* commit '3607c338c75bbfbc7e3ac61b5ead4eaf1ac61427':
Invalidate display lists immediately when views are removed/added quickly
2da197dff2062e4ba0f37f7fd3ef920ed9e86c74 09-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am aecb9b59: am 59f3f585: Merge "Add performAccessibilityAction to AccessibilityDelegate." into jb-dev

* commit 'aecb9b59e6c9e9a864bf4b302f978fb950df09ff':
Add performAccessibilityAction to AccessibilityDelegate.
eacfff7f47e9398e7201d213623603588cae3212 09-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am c2f5e797: am 6704c233: Merge "AccessibilityNodeInfo for visible views should reported." into jb-dev

* commit 'c2f5e797506fbc4235d4940846f3e2110e67daa6':
AccessibilityNodeInfo for visible views should reported.
529ddb895e74d226ba957da9b389dbce0f1c3071 09-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am ca1e49ca: am cdbbecf3: Merge "Accessibility focus on temporary detached view not cleared." into jb-dev

* commit 'ca1e49cad5b5eebdd47039289b604bea6f00e8f7':
Accessibility focus on temporary detached view not cleared.
f1ce8554ba100bbaa328d8216c82d4fdfd1b4956 09-May-2012 satok <satok@google.com> am c496652b: am 05f5236f: Merge "Make InputMethodSubtype thread safe" into jb-dev

* commit 'c496652b867b046cf825d1e0c000504e65d9be67':
Make InputMethodSubtype thread safe
1c08c1b0f1e3dbaa6c53c78054ae0ce17547f4a6 09-May-2012 Jeff Brown <jeffbrown@google.com> am e8e94a07: am 41a4704b: Merge "Small tweaks to orientation." into jb-dev

* commit 'e8e94a0743eae912658865645db75619533449b3':
Small tweaks to orientation.
807a4331ab02304f5a08f16b6a5eeececc1ee353 09-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am ba23196f: am 911b0c0b: Merge "Accessibility focus actinos incorectly set on accessibility node info." into jb-dev

* commit 'ba23196f1626409334f74e2d7e7cb34bef0b6f7f':
Accessibility focus actinos incorectly set on accessibility node info.
4833ca2903e89eab93b353f00a1e4904a73d79bb 09-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 755b2146: am b2ee0d57: Merge "Text traversal at various granularities." into jb-dev

* commit '755b2146735c15deb0eb611430a7da1e363d82a1':
Text traversal at various granularities.
b166539a473a280fbb395281685d31310f806682 09-May-2012 Romain Guy <romainguy@google.com> am 0064c032: am e79e8758: Merge "Remove ViewTreeObserver allocations" into jb-dev

* commit '0064c032f4a890970c285567520c057976909ea9':
Remove ViewTreeObserver allocations
012c9ed9ce4e60c2b2d6f590b80ec4e74d6767ff 09-May-2012 Jeff Brown <jeffbrown@google.com> am 1f455691: am 2fd54c41: Merge "Improve animation timing." into jb-dev

* commit '1f455691fe344e9dd44b092036f0dc8b8b00cce1':
Improve animation timing.
72912116cf0ff08dc655f065cff173d53b7152bd 09-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am a3b67289: Merge "Fixing View.getBoundsOnScreen()" into jb-dev

* commit 'a3b6728933c13599f3b2f22aad7016cdaa04d706':
Fixing View.getBoundsOnScreen()
3d42f8f8cab56ab33cb587a7aa857051d92ada90 09-May-2012 Jeff Brown <jeffbrown@google.com> am 9ac663ef: Merge "Disable input dispatch until boot finished." into jb-dev

* commit '9ac663ef9ab6ec455403d1e71bf897c34d3b311e':
Disable input dispatch until boot finished.
3607c338c75bbfbc7e3ac61b5ead4eaf1ac61427 09-May-2012 Romain Guy <romainguy@google.com> am 27ef44c4: Merge "Invalidate display lists immediately when views are removed/added quickly" into jb-dev

* commit '27ef44c46d24a5800e227d945ffede813d7f28f7':
Invalidate display lists immediately when views are removed/added quickly
aecb9b59e6c9e9a864bf4b302f978fb950df09ff 09-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 59f3f585: Merge "Add performAccessibilityAction to AccessibilityDelegate." into jb-dev

* commit '59f3f5853cd05103b5a83f5ddbe584a5270a9c6b':
Add performAccessibilityAction to AccessibilityDelegate.
c2f5e797506fbc4235d4940846f3e2110e67daa6 09-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 6704c233: Merge "AccessibilityNodeInfo for visible views should reported." into jb-dev

* commit '6704c233390743890d23338a2329dcda5709b810':
AccessibilityNodeInfo for visible views should reported.
ca1e49cad5b5eebdd47039289b604bea6f00e8f7 09-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am cdbbecf3: Merge "Accessibility focus on temporary detached view not cleared." into jb-dev

* commit 'cdbbecf357bf47e6eee6ba54caee5791834b5deb':
Accessibility focus on temporary detached view not cleared.
c496652b867b046cf825d1e0c000504e65d9be67 09-May-2012 satok <satok@google.com> am 05f5236f: Merge "Make InputMethodSubtype thread safe" into jb-dev

* commit '05f5236f6093b7f518677289f023f033832218f7':
Make InputMethodSubtype thread safe
e8e94a0743eae912658865645db75619533449b3 09-May-2012 Jeff Brown <jeffbrown@google.com> am 41a4704b: Merge "Small tweaks to orientation." into jb-dev

* commit '41a4704b09f98723f4ddec895c9f2e651a5c0c8e':
Small tweaks to orientation.
ba23196f1626409334f74e2d7e7cb34bef0b6f7f 09-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 911b0c0b: Merge "Accessibility focus actinos incorectly set on accessibility node info." into jb-dev

* commit '911b0c0b15ae4f14a6f755278679ef9c6a6e6c05':
Accessibility focus actinos incorectly set on accessibility node info.
755b2146735c15deb0eb611430a7da1e363d82a1 09-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am b2ee0d57: Merge "Text traversal at various granularities." into jb-dev

* commit 'b2ee0d57672faf42ca88fa878dc7e688046c915e':
Text traversal at various granularities.
0064c032f4a890970c285567520c057976909ea9 09-May-2012 Romain Guy <romainguy@google.com> am e79e8758: Merge "Remove ViewTreeObserver allocations" into jb-dev

* commit 'e79e87581280f4f3b26b1d4496b34cbb9aa39ae5':
Remove ViewTreeObserver allocations
1f455691fe344e9dd44b092036f0dc8b8b00cce1 09-May-2012 Jeff Brown <jeffbrown@google.com> am 2fd54c41: Merge "Improve animation timing." into jb-dev

* commit '2fd54c416b6f648e93bfa9dcb34fe8c6e4847a0f':
Improve animation timing.
14b2b74c13d0a22b396d10601bd683d80378810a 09-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Fixing View.getBoundsOnScreen()

1. The function was not setting the initial rect properly.

bug:6462629

Change-Id: I7a832a979576fc5745794c68fb8414257efb21dd
iew.java
9ac663ef9ab6ec455403d1e71bf897c34d3b311e 09-May-2012 Jeff Brown <jeffbrown@google.com> Merge "Disable input dispatch until boot finished." into jb-dev
27ef44c46d24a5800e227d945ffede813d7f28f7 08-May-2012 Romain Guy <romainguy@google.com> Merge "Invalidate display lists immediately when views are removed/added quickly" into jb-dev
2a0f228a30c85a124f92a5a7c1b10a81cf69af6d 08-May-2012 Romain Guy <romainguy@google.com> Invalidate display lists immediately when views are removed/added quickly

The deferred invalidation of display list could cause problems with
view like TextureView who destroy resources when detached from the
window but only recreate them later at draw time. This would cause
temporary flashes or other visual glitches on screen.

Change-Id: I018488ba09743df21c6434ea610813014fb80a85
iew.java
iewRootImpl.java
c042ee2acd8529b95c5dc99240d626e61d2500cd 08-May-2012 Jeff Brown <jeffbrown@google.com> Disable input dispatch until boot finished.

Bug: 6263070
Change-Id: I25e15e3d8af8eb3343c7b684fec345337d9f6aab
indowManagerPolicy.java
59f3f5853cd05103b5a83f5ddbe584a5270a9c6b 08-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Add performAccessibilityAction to AccessibilityDelegate." into jb-dev
6704c233390743890d23338a2329dcda5709b810 08-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "AccessibilityNodeInfo for visible views should reported." into jb-dev
3ed259a43cd6532c9cf835c925fc89c2f4f75bc1 08-May-2012 Philip Milne <pmilne@google.com> am 2a52d26c: am 7bb66c9c: Hide optical bounds feature for JB.

* commit '2a52d26c0b917de8b1e4d20ebad87b9b3825f6ca':
Hide optical bounds feature for JB.
cdbbecf357bf47e6eee6ba54caee5791834b5deb 08-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessibility focus on temporary detached view not cleared." into jb-dev
961bf0e9b4ef94f52ae66856ac573995f1f34578 08-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Accessibility focus on temporary detached view not cleared.

1. When a view that has accessibility focus is temporary detached
we try to draw the focus highlight and crash. Since the detached
view will be modified and then either attached or detached from
the window we should not keep accessibility focus on a temporary
detached view. Otherwise, we may have a scenario where the user
thinks he is in one item scroll acound and being in completely
different item because of the view being recycled but the user
has no clue.

2. Clearing accessibility focus when the view is removed from the
parent as opposed as when it is detached from the window. Since
we may have transitioning views for removal we do not want
accessibility focus on such views during the anumation.

bug:6457339

Change-Id: I62287a089ec6850fb1d691ae26dea54e1da39c94
iew.java
iewGroup.java
05f5236f6093b7f518677289f023f033832218f7 08-May-2012 satok <satok@google.com> Merge "Make InputMethodSubtype thread safe" into jb-dev
e52eb4e289bf8d7b04582803b0d0f9ab7399c1af 08-May-2012 satok <satok@google.com> Make InputMethodSubtype thread safe

Bug: 6327800
Change-Id: I549d1ec377793e918800d919b39fd8f4b6f0db41
nputmethod/InputMethodSubtype.java
41a4704b09f98723f4ddec895c9f2e651a5c0c8e 08-May-2012 Jeff Brown <jeffbrown@google.com> Merge "Small tweaks to orientation." into jb-dev
8eeefefc8451c97745add2b4d508116aaffbcb22 08-May-2012 alanv <alanv@google.com> Add performAccessibilityAction to AccessibilityDelegate.

Change-Id: I43dff2ced959af5d8a9ce9ed18858a6e74cb35c6
iew.java
daf5d894ef71c5674e83b11de8b408e3bdabe4c7 08-May-2012 Jeff Brown <jeffbrown@google.com> Small tweaks to orientation.

Improved threshold for detecting external acceleration.

Bug: 5976859
Change-Id: Iaf2298fba8eda72d1cacbb2f3aea72f460a9262f
indowOrientationListener.java
911b0c0b15ae4f14a6f755278679ef9c6a6e6c05 08-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessibility focus actinos incorectly set on accessibility node info." into jb-dev
0a1bb6dffc358c01e10555c5c833edb7dba69659 07-May-2012 Svetoslav Ganov <svetoslavganov@google.com> AccessibilityNodeInfo for visible views should reported.

1. AccessibilityNodeInfos for visible views should always
be reported and the clients should be able to check
whether that node info is shown to the user. For example,
focus search may return a node that is not on the screen
and the accessibility layer may decide to give it focus
which scroll the source view in the screen.

bug:6421991

Change-Id: Idc1fd8512dda767abe802aacedb0c69582e6fc2a
ccessibilityInteractionController.java
iew.java
ccessibility/AccessibilityNodeInfo.java
b2ee0d57672faf42ca88fa878dc7e688046c915e 08-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Text traversal at various granularities." into jb-dev
02afe2cfd35f684117a9eed3c31edea311ce7d95 08-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Accessibility focus actinos incorectly set on accessibility node info.

bug:6456267

Change-Id: I9fce268623cebef49dd613d193a36a0a1a0654aa
iew.java
e79e87581280f4f3b26b1d4496b34cbb9aa39ae5 08-May-2012 Romain Guy <romainguy@google.com> Merge "Remove ViewTreeObserver allocations" into jb-dev
6d17a936f73976971135aa1e6248662533343292 28-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Text traversal at various granularities.

1. Implementing text content navigation at various granularities.
For views that have content description but no text the
content description is the traversed at character and word
granularities. For views that inherit from TextView the
supported granularities are character, word, line, and page.

bug:5932640

Conflicts:

core/java/android/view/View.java

Conflicts:

core/java/android/view/View.java

Change-Id: I66d1e16ce9ac5d6b49f036b17c087b2a7075e4c0
ccessibilityIterators.java
iew.java
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityNodeInfo.java
59bbef0cd781f4933fd8a0a85b6067f36e529e02 08-May-2012 Jeff Brown <jeffbrown@google.com> Improve animation timing.

Detect when a vsync message was significantly delayed which may
indicate that a frame was skipped. When this happens, update
the frame time to reflect the approximate start time of the
current frame instead of the start time of the frame that was
skipped a long time ago.

Removed an unnecessary call to getCurrentPlayTime() in the
animator framework. The result was always zero and the call
just made the code confusing.

Bug: 6443611
Change-Id: I92b24f7ffd74c59b75a727b6bfc0bb51fc92a73a
horeographer.java
b999cc118fe430699e9a67d5dab355125b873abb 08-May-2012 Romain Guy <romainguy@google.com> Remove ViewTreeObserver allocations

This change replaces CopyOnWriteArrayList with a custom CopyOnWriteArray.
The new CopyOnWriteArray only allocates when a concurrent modification
is detected. Only one loop can iterate over CopyOnWriteArray at any
given time and the class is not thread safe.

Change-Id: Ie67a1ec20ff095350bf3c5d4f87cdb231ad57221
iewTreeObserver.java
2a52d26c0b917de8b1e4d20ebad87b9b3825f6ca 07-May-2012 Philip Milne <pmilne@google.com> am 7bb66c9c: Hide optical bounds feature for JB.

* commit '7bb66c9cae7847e3d58f412a73d54ee5d4bcaba0':
Hide optical bounds feature for JB.
7bb66c9cae7847e3d58f412a73d54ee5d4bcaba0 07-May-2012 Philip Milne <pmilne@google.com> Hide optical bounds feature for JB.

Change-Id: I1fe38e9c64515acd550baa930ebc0af4c139bf40
iewGroup.java
c0496ffd0e2a2d2549bd7911e56cb23c734bea50 07-May-2012 Romain Guy <romainguy@google.com> am 9929b59a: am 9d7bbcb8: Merge "Log more frame data when profiling GL apps" into jb-dev

* commit '9929b59ac5d0c5b0ab400d9d8edf4163ca4c557d':
Log more frame data when profiling GL apps
9929b59ac5d0c5b0ab400d9d8edf4163ca4c557d 07-May-2012 Romain Guy <romainguy@google.com> am 9d7bbcb8: Merge "Log more frame data when profiling GL apps" into jb-dev

* commit '9d7bbcb89a3f14331c55ed2bbdcf768a4aa91cc1':
Log more frame data when profiling GL apps
a21f877434dd25a93869b8641e3c38618bf317a9 07-May-2012 Romain Guy <romainguy@google.com> Log more frame data when profiling GL apps

Change-Id: Ib7377c22a2258aa6510677d80df34bb7e73dc714
ardwareRenderer.java
475fc468423186b8e9d60a557aa4fd2a6fc6bfc2 06-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 9879659a: am 2551e5a1: Merge "API REVIEW: android.view.accessibility" into jb-dev

* commit '9879659a1cbfe404c725df1e57ff92f151bf65bc':
API REVIEW: android.view.accessibility
d88eb08cc2766f5be2e1eff096a0cacee6714c16 06-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am ae825876: am 3f28a1b7: Merge "Performing click and long click for accessiblity not returning result." into jb-dev

* commit 'ae825876fa9303ff4b3ad0964085a2a338089139':
Performing click and long click for accessiblity not returning result.
9879659a1cbfe404c725df1e57ff92f151bf65bc 06-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 2551e5a1: Merge "API REVIEW: android.view.accessibility" into jb-dev

* commit '2551e5a1d9990514d8116e352b8e5c2f10a9d303':
API REVIEW: android.view.accessibility
ae825876fa9303ff4b3ad0964085a2a338089139 06-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 3f28a1b7: Merge "Performing click and long click for accessiblity not returning result." into jb-dev

* commit '3f28a1b7ebb3500d13a1672ab76fe68e9c0a75e8':
Performing click and long click for accessiblity not returning result.
2551e5a1d9990514d8116e352b8e5c2f10a9d303 06-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "API REVIEW: android.view.accessibility" into jb-dev
3f28a1b7ebb3500d13a1672ab76fe68e9c0a75e8 06-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Performing click and long click for accessiblity not returning result." into jb-dev
6455f207ab1f486160b8a14a2986c3da5d2f9540 06-May-2012 Romain Guy <romainguy@google.com> am f4588f83: am ec4d9040: Merge "Attempt to recover from apps destroying their window at draw time Bug #6436642" into jb-dev

* commit 'f4588f837361c1710f1fe69347f7505053bf2cad':
Attempt to recover from apps destroying their window at draw time Bug #6436642
f4588f837361c1710f1fe69347f7505053bf2cad 06-May-2012 Romain Guy <romainguy@google.com> am ec4d9040: Merge "Attempt to recover from apps destroying their window at draw time Bug #6436642" into jb-dev

* commit 'ec4d9040f603b57b1706299f51838b6cc68b8f99':
Attempt to recover from apps destroying their window at draw time Bug #6436642
ec4d9040f603b57b1706299f51838b6cc68b8f99 06-May-2012 Romain Guy <romainguy@google.com> Merge "Attempt to recover from apps destroying their window at draw time Bug #6436642" into jb-dev
1f59e5c19bf72f88eed6f8de08b0a879d999f61c 06-May-2012 Romain Guy <romainguy@google.com> Attempt to recover from apps destroying their window at draw time
Bug #6436642

Change-Id: I906b9c68225683f97b9c97c153a1132cf9ac6509
iewRootImpl.java
4fa22f0b4d271a41e2a459e1d927c4ce54d15847 06-May-2012 Romain Guy <romainguy@google.com> am 95b0c45b: am aaa71475: Merge "Remove unnecessary framework allocations" into jb-dev

* commit '95b0c45b06d9a053f9050e0f0ef1171a18ae0711':
Remove unnecessary framework allocations
95b0c45b06d9a053f9050e0f0ef1171a18ae0711 06-May-2012 Romain Guy <romainguy@google.com> am aaa71475: Merge "Remove unnecessary framework allocations" into jb-dev

* commit 'aaa7147595346fdd398e2932817e075acbb8e497':
Remove unnecessary framework allocations
aaa7147595346fdd398e2932817e075acbb8e497 06-May-2012 Romain Guy <romainguy@google.com> Merge "Remove unnecessary framework allocations" into jb-dev
ab4c4f4ff73e66b7767640dbe6d4115237c48242 06-May-2012 Romain Guy <romainguy@google.com> Remove unnecessary framework allocations

These allocations were frequently triggered by the home screen. This change
removes dozens of allocations during page scrolls on home.

Change-Id: I7289efa28ecf5bd62459042b10062aa9cf0432dd
iew.java
36cade591a1bb40acbf3f271a4b414dfd894cf1d 06-May-2012 Dianne Hackborn <hackbod@google.com> am 7bedac94: am 139e5aa1: Fix issue #6404215: New ActionBar auto-hide can conflict with application

* commit '7bedac9417d60608003d739c8caed7ca81683825':
Fix issue #6404215: New ActionBar auto-hide can conflict with application
7bedac9417d60608003d739c8caed7ca81683825 06-May-2012 Dianne Hackborn <hackbod@google.com> am 139e5aa1: Fix issue #6404215: New ActionBar auto-hide can conflict with application

* commit '139e5aa1da51b27231ab36344cf2d0dafab23f1e':
Fix issue #6404215: New ActionBar auto-hide can conflict with application
139e5aa1da51b27231ab36344cf2d0dafab23f1e 06-May-2012 Dianne Hackborn <hackbod@google.com> Fix issue #6404215: New ActionBar auto-hide can conflict with application

The action bar now maintains separate states for the things that can
impact its visibility (calls from the app, action mode, system UI) so
that the changes in these won't incorrectly mix together.

Also added a hack to force the status bar to be shown when showing
the action bar for an action mode, when the UI is in a state where
the action bar would be shown with a gap above where the status bar
is.

Change-Id: Ib0950a7f585c5d2c9e77d11b237ba6e150f15ebd
iew.java
iewRootImpl.java
773f2624ec01aabf10cfa755cb6f1081ba9b4faf 06-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Performing click and long click for accessiblity not returning result.

1. When performing the click and long click actions the code in View
was not returning the resilt of the called method.

bug:6426849

Change-Id: I0cf396a8373f622948ed436ce09f8d1dcf246acd
iew.java
4256391861f91e1f66f7684c4b2aee9e4b248c3b 05-May-2012 Dianne Hackborn <hackbod@google.com> am ce1d03b3: am 3fd4a382: Merge "Implement cropping of windows based on system UI elements." into jb-dev

* commit 'ce1d03b39935c42cfa0d11ef782c8c6a2fd823d4':
Implement cropping of windows based on system UI elements.
ce1d03b39935c42cfa0d11ef782c8c6a2fd823d4 05-May-2012 Dianne Hackborn <hackbod@google.com> am 3fd4a382: Merge "Implement cropping of windows based on system UI elements." into jb-dev

* commit '3fd4a3822160e8ad84122641a56c9f92540d02b5':
Implement cropping of windows based on system UI elements.
3556c9a8068497d0de8964fd3be719c68eae1f00 05-May-2012 Dianne Hackborn <hackbod@google.com> Implement cropping of windows based on system UI elements.

Start calling Surface.setActiveRect().

Change-Id: I94197059c971c6ab7820e615ea8f285482b86c75
iew.java
iewRootImpl.java
2b435aada3d274a9c08d334946fff1ab9ba15b48 05-May-2012 Svetoslav Ganov <svetoslavganov@google.com> API REVIEW: android.view.accessibility

1. Changed all references to granularity to movement
granularity. BTW, to be more precise it should be
text movement granularity.

bug:6435232

Change-Id: If6366b002ca3390f74918995b342baff2cbcfd01
iew.java
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityNodeInfo.java
1758ce900d1db506ba65b46ac3e40abbdc85723e 05-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 9878a04b: am 5fd72a2c: Merge "Finding focus for from rectangle now working." into jb-dev

* commit '9878a04b3cedf842de29110baa46fb040b5c7887':
Finding focus for from rectangle now working.
9878a04b3cedf842de29110baa46fb040b5c7887 05-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 5fd72a2c: Merge "Finding focus for from rectangle now working." into jb-dev

* commit '5fd72a2cceae9955af316f32e17a84515c317738':
Finding focus for from rectangle now working.
5fd72a2cceae9955af316f32e17a84515c317738 05-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Finding focus for from rectangle now working." into jb-dev
fc6ef88a3d9f0649ed9cd16043433c8f1352c18f 04-May-2012 Fabrice Di Meglio <fdimeglio@google.com> am 8396830d: Merge "Hide RTL related APIs - DO NOT MERGE" into jb-dev

* commit '8396830d8fedc08c0a9de36bcce3c8b65691729f':
Hide RTL related APIs - DO NOT MERGE
66388dcb09018933ccd1d38eae563f0890ba4f06 04-May-2012 Fabrice Di Meglio <fdimeglio@google.com> Hide RTL related APIs - DO NOT MERGE

- fix bug #6441155 API review: @hide RTL layout APIs

Change-Id: I13c5ea5f579cecffed9d517f06180ab0576cd26a
ravity.java
iew.java
iewGroup.java
edc773cab7a3e89752747419cd67a18e12c44901 04-May-2012 Romain Guy <romainguy@google.com> am 531d164d: Merge "Fix javadoc" into jb-dev

* commit '531d164d677b5f924896fd758d8f544ed7a8d07a':
Fix javadoc
531d164d677b5f924896fd758d8f544ed7a8d07a 04-May-2012 Romain Guy <romainguy@google.com> Merge "Fix javadoc" into jb-dev
3dd4b51fc37c1f05b1b583f5706e3a12216b9822 04-May-2012 Romain Guy <romainguy@google.com> Fix javadoc

Change-Id: I1f1262a9a385e981a98876f8396ad375ab74827d
isplayList.java
78c481c18254bb4b45329fd4e4cb4da381593a80 04-May-2012 Chet Haase <chet@google.com> am 4380f954: Merge "Minor doc fixes for animation- and view-related things" into jb-dev

* commit '4380f9542fcb4a452332ecbea6a2036a2b159ab3':
Minor doc fixes for animation- and view-related things
4380f9542fcb4a452332ecbea6a2036a2b159ab3 04-May-2012 Chet Haase <chet@google.com> Merge "Minor doc fixes for animation- and view-related things" into jb-dev
5bdf114327fa219ed5a5243883713c09c020aa3a 04-May-2012 Craig Mautner <cmautner@google.com> am 602290a0: Merge "Retain current visibility when copying layoutparam" into jb-dev

* commit '602290a01124b2eac045b066a87a6fc4911153c6':
Retain current visibility when copying layoutparam
602290a01124b2eac045b066a87a6fc4911153c6 04-May-2012 Craig Mautner <cmautner@google.com> Merge "Retain current visibility when copying layoutparam" into jb-dev
3fe38c0e73e520c6c38454a41a4cffa16faaf67d 04-May-2012 Craig Mautner <cmautner@google.com> Retain current visibility when copying layoutparam

The LayoutParams members, systemUiVisibility and
subtreeSystemUiVisibility are derived values rather than app-generated
values. When copying LayoutParams members make sure these values are
not overwritten.

Overwriting them was causing the STATUS_BAR_DISABLE_XXX flags to be
overwritten exposing elements that should have remained hidden.

Fixes bug b6374541.

Change-Id: Iaae4b4167e1b148bbdba4d05f473844f7fa3bf8d
iewRootImpl.java
cb150fe9e6495256019b02be51e736679b57c1b5 04-May-2012 Chet Haase <chet@google.com> Minor doc fixes for animation- and view-related things

Issue #6016341 Add info about properties and ViewPropertyAnimator to View reference docs
Issue #6441062 Misleading docs in ViewPropertyAnimator

Change-Id: Ica7c026c770fe2e57013fe443ede5428cd6b6604
iew.java
iewPropertyAnimator.java
d4daf5212ebee0886ad02ceb6301a829cb1674a1 03-May-2012 Jeff Brown <jeffbrown@google.com> am e19dbd9f: Merge "Separate the internal and external display rotations." into jb-dev

* commit 'e19dbd9f9d0fea5959d8384d5d9d577d25cc8963':
Separate the internal and external display rotations.
e19dbd9f9d0fea5959d8384d5d9d577d25cc8963 03-May-2012 Jeff Brown <jeffbrown@google.com> Merge "Separate the internal and external display rotations." into jb-dev
e43a4e90173cdb1a8e22a8e8e05356c12df44a0e 03-May-2012 Adam Powell <adamp@google.com> am f27ba974: Merge "JB API cleanup; ActionMode and View docs" into jb-dev

* commit 'f27ba974d5af68baf071282de65a22ca6e59244c':
JB API cleanup; ActionMode and View docs
f27ba974d5af68baf071282de65a22ca6e59244c 03-May-2012 Adam Powell <adamp@google.com> Merge "JB API cleanup; ActionMode and View docs" into jb-dev
785c447b2bc625209706fd128ce61781c3a4183b 03-May-2012 Adam Powell <adamp@google.com> JB API cleanup; ActionMode and View docs

Bugs 6435315, 6434937

Add ActionMode#getTitleOptionalHint() and extend documentation for
View#hasTransientState/setHasTransientState

Change-Id: I2049fb79864c33b34e3bbd13df32861e308c99ad
ctionMode.java
iew.java
63655269b8e6708ad6544d8b12223fea785b40f2 03-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 7a5f3e40: Merge "Virtual nodes are always important for accessibility." into jb-dev

* commit '7a5f3e4048b0af08606b689b4f4a39d6040c3c23':
Virtual nodes are always important for accessibility.
7a5f3e4048b0af08606b689b4f4a39d6040c3c23 03-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Virtual nodes are always important for accessibility." into jb-dev
93de746e5554bc9397ca8109f57875d92e64eabc 03-May-2012 Jeff Brown <jeffbrown@google.com> Separate the internal and external display rotations.

When attached to an HDMI touch screen, the input system needs
to know the size and rotation of the external display independent
of the internal display. The size was already being reported
separately but not the rotation. The inconsistency can cause problems
if the internal display's natural rotation is portrait but
the external display's natural rotation is landscape.

Change-Id: Id344f04c1ba032625f6265766be66f9ddaa2cc0b
isplay.java
52a623700f9bcba7ef8bfe3ba7ff6160a1bd65e8 02-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Virtual nodes are always important for accessibility.

1. Virtual nodes should be made important since the implementer of
the tree represented by the nodes decides which node to report.
In the case with native widgets we decide in the framework but
in the case of the node provider, the implementer of the latter
makes the call. Hence, if a node in not important the provider
should not report it in the first place. The issue this patch
solves is to allow events from virtual nodes to be propagated
to the accessibility services.

bug:6432588

Change-Id: Ie01f84e9e0ef2280da934b98283962a5db38abc2
ccessibility/AccessibilityRecord.java
dcc81035423c1c221409f20b28ba94a8ca74d55d 02-May-2012 Chet Haase <chet@google.com> am fe5984f4: Merge "Corrects invalidation logic for layered views" into jb-dev

* commit 'fe5984f43a5be9f95d1febb806f3aee8601c7ff4':
Corrects invalidation logic for layered views
fe5984f43a5be9f95d1febb806f3aee8601c7ff4 02-May-2012 Chet Haase <chet@google.com> Merge "Corrects invalidation logic for layered views" into jb-dev
810a8676df1d504da17bad80c7bd6638bdd97711 02-May-2012 Chet Haase <chet@google.com> Corrects invalidation logic for layered views

A bug in the invalidation logic meant that changes to a view
would not cause parents in the view hiearchy that were set to have
a layer (e.g., View.LAYER_TYPE_HARDWARE) to get invalidated properly.
So even though the child view was all set to recreate its display list
according to the property change, the layer in the tree above it would stay
as-is, meaning that the change would not show up on the screen.

Issue #5887530 DropTarget text does not change color with the icon

Change-Id: Ie6eac4f406d172cb437822d9fe76340ab2afaf1c
iewGroup.java
c6b939789a8fd3efcac2b71fc2baeb4442fbe1e8 02-May-2012 satok <satok@google.com> am e849230f: Merge "DO NOT MERGE : Backport I5723f627ce323b0d12b Reduce window resizing during IME transition" into jb-dev

* commit 'e849230f444653e692024b4321044cb9f6188919':
DO NOT MERGE : Backport I5723f627ce323b0d12b Reduce window resizing during IME transition
e849230f444653e692024b4321044cb9f6188919 02-May-2012 satok <satok@google.com> Merge "DO NOT MERGE : Backport I5723f627ce323b0d12b Reduce window resizing during IME transition" into jb-dev
1bc0a49e3cade697201e454bb6e46ee789cef6e4 25-Apr-2012 satok <satok@google.com> DO NOT MERGE : Backport I5723f627ce323b0d12b Reduce window resizing during IME transition

Bug: 5137498
Change-Id: Ieb8fd700d193eddaa31b0c5ebd8c7f7885586372
indowManagerPolicy.java
c3cca66404571454ee13b341925fe45efd5036e6 02-May-2012 Jeff Brown <jeffbrown@google.com> am 0632b35b: Merge "Improve handling of built-in keyboard." into jb-dev

* commit '0632b35b6828cd4324b3d218c2e38f895e819aad':
Improve handling of built-in keyboard.
0632b35b6828cd4324b3d218c2e38f895e819aad 02-May-2012 Jeff Brown <jeffbrown@google.com> Merge "Improve handling of built-in keyboard." into jb-dev
daa3753a04699724d2cfe824ac1f5a266d643a05 02-May-2012 Jeff Brown <jeffbrown@google.com> Improve handling of built-in keyboard.

The window manager policy made some incorrect assumptions about the
meaning of the Configuration.keyboard field. We need to be more
careful about distinguishing between built-in and external keyboards.

Most of this change is to move the determination of the parts of
the Configuration related to input devices into the WindowManagerService
leveraging new features of the InputManagerService to good effect.

Then we plumb through the flag that indicates whether a device
is internal or external so that we can be more particular about
how the lid switch effects changes to the Configuration.

Bug: 6424373
Change-Id: I36a1c22ade35e578955465a25940a33f227b9763
nputDevice.java
indowManagerPolicy.java
c6eda48e0ac261f3e8f949d65d785b85b6e6f542 01-May-2012 Jean-Baptiste Queru <jbq@google.com> am e28ccbab: am 7a082985: Merge "Fixes an issue that occured unexpected exception "pointerIndex out of range"."

* commit 'e28ccbab9a5634b6d9557240161310451c660e47':
Fixes an issue that occured unexpected exception "pointerIndex out of range".
e28ccbab9a5634b6d9557240161310451c660e47 01-May-2012 Jean-Baptiste Queru <jbq@google.com> am 7a082985: Merge "Fixes an issue that occured unexpected exception "pointerIndex out of range"."

* commit '7a0829850ee8d1ee2f436c40c8a5af2ff7d96533':
Fixes an issue that occured unexpected exception "pointerIndex out of range".
7a0829850ee8d1ee2f436c40c8a5af2ff7d96533 01-May-2012 Jean-Baptiste Queru <jbq@google.com> Merge "Fixes an issue that occured unexpected exception "pointerIndex out of range"."
af8978226f5e929bd5d4dab04edd11218e8ac6ce 01-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "AccessibilityNodeInfo.getActionSymbolicName() is missing A11y focus actions." into jb-dev
fb68fdb9c6e915e38ec5c7f4b0d526b613e4ea8b 01-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessibility should not change input focus behavior." into jb-dev
e9bda15f87c11a8827ca0ffc865611176805cc0a 01-May-2012 Svetoslav Ganov <svetoslavganov@google.com> AccessibilityNodeInfo.getActionSymbolicName() is missing A11y focus actions.

1. The new actions were not added to this helper method so it was
throwing an InvalidArgumentException.

bug:6421059

Change-Id: I132348a50bb900ee19b95cc92c26ce47609ccb1c
ccessibility/AccessibilityNodeInfo.java
cf8a3b82241a320f568f8448184df6da5bbcf152 01-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Accessibility should not change input focus behavior.

1. Removed a change in the input focus behavior I forgot
to take out when submitted the main accessibility focus
patch. Ugh..

bug:6320098

Change-Id: Id7942e8aac64ba4bf6df7e19f733fa70b368d1bb
iewRootImpl.java
b40696cc216f6a5874189fe83055ddaa7b428ce0 01-May-2012 Jamie Gennis <jgennis@google.com> Surface: add JNI plumbing for setActiveRect.

Bug: 6299171
Change-Id: If26e63ebe7def645626af251bed899ff9389f8e5
urface.java
459e459ef99f494238128aa4142fe2e97adae35b 01-May-2012 Jamie Gennis <jgennis@google.com> Merge "TextureView: don't call onSTAvailable due to setST" into jb-dev
1e945c4fda0242e8ae02ccb7a2262556f41b42cc 30-Apr-2012 Dianne Hackborn <hackbod@google.com> Merge "Add system insets to windows." into jb-dev
8a34d6800e70da45bac662873f6951c8d8295a15 18-Apr-2012 Jamie Gennis <jgennis@google.com> TextureView: don't call onSTAvailable due to setST

This change makes TextureView skip calling the onSurfaceTextureAvailable
callback when setSurfaceTexture is used to change the TextureView's
SurfaceTexture.

Change-Id: Ie08f72f157c3bfce3215076b21994026ef66d88d
extureView.java
951bb421668b82ca014f75d265b161f6ff64d36b 30-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Finding focus for from rectangle now working.

1. The FocusFinder code was ignoring the rectangle.

bug:6400513

Change-Id: I218425182b9cc2cda01fc4b5d75e9ac94a22561c
ocusFinder.java
2f87014ea2f177e715032b07004d05e2549a63a8 30-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Enabling accessibility focus only if explore by touch is on." into jb-dev
0e8fd5eddb8fe09e47732d1659c682b7eeee646b 30-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Populating accessibility node info with supported actions." into jb-dev
10890607f88eb639394cb16ac3006202bf1995ce 30-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Fixing crash in ViewGroup.dispatchPopulateAccessibilityEvent" into jb-dev
18dcf2f1cd3f84cbdffd8394e16475a13d6243df 30-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Fixing crash when drawing accessibility focus indicator." into jb-dev
07b726c86b1d0b22e51b08cb4234f8212864d9f9 30-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Enabling accessibility focus only if explore by touch is on.

1. Now we will enable the accessibility focus only if Explore by
Touch is enabled. Enabling this feature allows a blind user to
touch the screen and set the accessibility focus at this
location as well as get spoken feedback. Also an accessibility
service can move the accessibility as a result of user gestures
detected only if Explore by Touch is enabled. Since we will
handle some gestures by default if not accessibility service
does so to provide reasonable built-in navigation of the UI
by "objects" we need the accessibility focus functionality.

bug:6383361

Change-Id: I13ce6072a90f5838c7656379788144c99a772bf0
iew.java
iewRootImpl.java
5c58de3a523a384c47b0b1e0f5dd9728a74cd9f7 29-Apr-2012 Dianne Hackborn <hackbod@google.com> Add system insets to windows.

This will be used to determine which parts of a window a completely
hidden by system UI elements (status bar, nav bar, system bar) so
that they can be clipped out from rendering.

Change-Id: I2c6c6ac67dbdfeed82d2c089ef806fb483165bd9
Window.aidl
WindowSession.aidl
urfaceView.java
iewRootImpl.java
indowManagerPolicy.java
cfcff98ab33e91747bfb4a52e05230dc45323b5a 29-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Populating accessibility node info with supported actions.

1. The system does not allow performing an accessibility action
on an accessibility node info unless it explicitly states it
supports that action. Adding the new accessibility actions
to the info emitted by a view.

bug:6407647

Change-Id: I8dad1dc60ec68b4da5ed2349a1366a88820175a1
iew.java
d7910dd42a24705172f2794de940f715bbc41410 29-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Fixing crash in ViewGroup.dispatchPopulateAccessibilityEvent

1. There was a double call to recycle of a pooled instance
which was causing an exception. Removed an unnecessary call.

bug:6408689

Change-Id: Ic74b743c6be28ca95ab84b15f28edb5bc95f0a88
iewGroup.java
1d74df226619101d905d872c8e609d315409695e 29-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Fixing crash when drawing accessibility focus indicator.

1. Added a lacking null check for the accessibility node
info returned by an accessibility node provider. If
the provider implementation is not correct this may
happen.

2. Added clearing of the current accessibility focused
node when the window focus changes. Now it is cleared
in every case and if it happens that accessibility is
enabled when the window gets focus, the accessibility
focus will be properly set.

bug:6381296

Change-Id: Ieea1b07762745e6d932fc4ed4febfe77760b25b7
iewRootImpl.java
79c6346100b555a8a3d51b3b1c34dbbe99305b9a 28-Apr-2012 Dianne Hackborn <hackbod@google.com> Merge "When a window is first shown only draw once while animating." into jb-dev
ffd6ea4523d8fa1210d2a7bb757cc65e1d18465f 28-Apr-2012 Jeff Brown <jeffbrown@google.com> Merge "Resample touch events on frame boundaries." into jb-dev
65340c1682dc73671d59cfbe27ee86549d23ed1d 28-Apr-2012 Philip Milne <pmilne@google.com> Merge "Fixes for optical bounds feature." into jb-dev
7a23b49a8ceb07d3fa12c45fd42cd16131fd746a 25-Apr-2012 Philip Milne <pmilne@google.com> Fixes for optical bounds feature.

1. Make the feature opt-in (ViewGroup::layoutMode defaults to CLIP_BOUNDS) without inheritance.
2. Rename COMPONENT_BOUNDS to CLIP_BOUNDS.
3. Rename LAYOUT_BOUNDS to OPTICAL_BOUNDS.
4. Complete GridLayout implementation.
5. Change the default_gap between components to 8dp, to align with the Style Guide.

Change-Id: I8d40dfc5f4ca469f6424eb3ff60d07bec56e3a9f
iew.java
iewGroup.java
f613da0e5f79d261d99008d25665f5992af86c0b 28-Apr-2012 Jeff Brown <jeffbrown@google.com> Merge "Simplify the consume before traversal heuristic." into jb-dev
5c55c40be084044ed7bb7ce46aa2befeedc9db38 28-Apr-2012 Jeff Sharkey <jsharkey@android.com> Merge "Clear IMM references when window dismissed." into jb-dev
e19d5f02728e34704a5e2c0fb9d7e54ef11aaa69 28-Apr-2012 Jeff Brown <jeffbrown@google.com> Merge "Use choreographer frame time to schedule animations." into jb-dev
4478de3c02c1fb2f4f888e696ee1b13721e936d9 28-Apr-2012 Jeff Sharkey <jsharkey@android.com> Clear IMM references when window dismissed.

Match behavior of removeViewLocked(), where InputMethodManager clears
any strong references to Views, and also clear mCurRootView. Without
this, IMM can leak a DecorView instance after the user has left the
application.

Bug: 6413553
Change-Id: Iad09cf5dbb7f6f156fd39ed243431432e00f8945
indowManagerImpl.java
nputmethod/InputMethodManager.java
5084e69b2ce2880f9ac9346618a5ab35c030cf62 28-Apr-2012 Romain Guy <romainguy@google.com> Merge "Make debug.layout usable with hw acceleration on" into jb-dev
cbc6774ef0285956da74193e5d217738e7411830 28-Apr-2012 Romain Guy <romainguy@google.com> Make debug.layout usable with hw acceleration on

Change-Id: I35e41f83fc5049f5ede6b8a6731800bd6da50391
iewGroup.java
771526c88f5cc4b56a41cb12aa06a28d377a07d5 28-Apr-2012 Jeff Brown <jeffbrown@google.com> Resample touch events on frame boundaries.

Bug: 6375101
Change-Id: I8774e366306bb2b6b4e42b913525bf25b0380ec3
nputEventReceiver.java
iewRootImpl.java
c887843b19c5a31bcd14e0b29b035d2a6e1e6149 28-Apr-2012 Romain Guy <romainguy@google.com> Merge "New constant used by dev settings" into jb-dev
4b8c4f886b3d57e6ffe1a4650487c67334674a40 28-Apr-2012 Romain Guy <romainguy@google.com> New constant used by dev settings

Change-Id: I42f103ae8a9b9f051367c72131f0b216e200f6e0
ardwareRenderer.java
iew.java
12d3a94397c33fdb773a1eaaaa13cab80bf0c571 27-Apr-2012 Dianne Hackborn <hackbod@google.com> When a window is first shown only draw once while animating.

On some hardware allocating a new graphics buffer is quite
expensive, which blocks updates to the UI. This can cause
glitches when performing window animations.

To reduce these glitches, the view hierarchy will now only
allow itself to be drawn once if its window is being shown
while the window manager is animating, not resuming draws
until it is told that the animation is done.

Change-Id: Ie15192f6fddbd0931b022a72c76ddd55ca266d84
Window.aidl
iewRootImpl.java
indowManagerImpl.java
330314c6fb7c178c0f0da65d6aa8c9e7d3004568 27-Apr-2012 Jeff Brown <jeffbrown@google.com> Simplify the consume before traversal heuristic.

Calling doConsumeBatchedInput() from doTraversals() can result
in redundant attempts to consume batched input. Instead of making
this call directly, just schedule consume batched input at the
same time as traversals are scheduled. This should have the same
overall effect.

Bug: 6375101
Change-Id: Ie5799e6a68fedbd1978cca6d03852d9a7f1b1f64
iewRootImpl.java
20c4f87b2916d05e860d11568d7db6b2d340e909 27-Apr-2012 Jeff Brown <jeffbrown@google.com> Use choreographer frame time to schedule animations.

Instead of using the current uptime millis, which can exhibit
substantial jitter depending on when the code runs, use the
current frame's vsync time when performing animations. The frame
time provides a more consistent pulse.

Bug: 6375101
Change-Id: Icf307cd8524246607db7496c6fef9a5eeb7c0439
horeographer.java
97d5c418730946a0332f601cd140ed0b12ea19c1 27-Apr-2012 Jeff Brown <jeffbrown@google.com> Remove unused pipelining optimization.

Bug: 6375101
Change-Id: I5fcbbabfafae9e1661adac7b2becc748e42c4b66
horeographer.java
iewRootImpl.java
69b2be163d6ba00fead46c2e01ec775d8487e777 26-Apr-2012 Jeff Brown <jeffbrown@google.com> Add yet more keyboard layouts.

Bug: 6110399
Change-Id: I8e2ce1cd350dddb006df51286e127dce65a8117f
eyCharacterMap.java
8f94ec1565339015f3c62b3936b99a16f094c5aa 25-Apr-2012 Philip Milne <pmilne@google.com> Merge "Fix for layout debug mode."
604f440dfd6e5ee857f1e71d12c635d4ee1afcbc 25-Apr-2012 Philip Milne <pmilne@google.com> Fix for layout debug mode.

Change-Id: I0d02aa4cf7e18c2bbb01a3296e573f2f9de60bf1
iewGroup.java
9ca10c8c3c94151889f6906e2d239a978e8b473b 25-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Adding explicit text traversal granularities and actions for web navigation."
b7ff3255c6d4e12f9d2334e3bbec0a125b7b09dc 25-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Adding explicit text traversal granularities and actions for web navigation.

1. The granularities for traversing the text content of an accessibility
node info are now predefined constants and custom ones will not be
supported. This is the simplest solution - we can always add namespaced
user defined ones (unlikely).

2. Added actions for traversing web content. These actions can be used by
an accessibility service to transparently drive the JavaScript based
screen reader that is used for handling web content.

3. Added a new accessibility event type for traversing the content of a
view. This event is needed to announce to the user what is the next
element, i.e. the one next to the cursor, after the view's text was
traversed.

bug:5932640
bug:6389591

Change-Id: I144647da55bc4005c64f89865ef333af8359e145
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityNodeInfo.java
e4cd3b0d9529a1ef8d388ece83a101227e206cc3 25-Apr-2012 Jim Miller <jaggies@google.com> Merge "Fix 6299832: Add search target swipe action to navigation bar on phones"
e898ac59db04d8ab0762180ca8ec7cea1347aa09 07-Apr-2012 Jim Miller <jaggies@google.com> Fix 6299832: Add search target swipe action to navigation bar on phones

This adds a feature to swipe upward on the navigation bar to invoke
voice search on phones.

Change-Id: I462076fd43b1c66c5bf624f00b297c6d3414a19a
indowManager.java
80193e7748a70a83ac7bd0915476eaf52240433f 25-Apr-2012 Mathias Agopian <mathias@google.com> Merge "add a (hidden) api on Surface to query if the consumer is running behind the producer"
0430ce908510f501276e7f588ba5c34d33a9d27a 25-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Removing hierarchical accessibility focus directions."
c14bacf1fb511472138eeb5dc84a9423fc003214 24-Apr-2012 Mathias Agopian <mathias@google.com> add a (hidden) api on Surface to query if the consumer is running behind the producer

Change-Id: I71ec1602f66a4850b130893fc7017b5b1ac1b647
urface.java
b2b15716d8b5b5814e82575a592e76f522f6a4c6 24-Apr-2012 Philip Milne <pmilne@google.com> Merge "Promote layout debugging code from GridLayout to ViewGroup."
0b7d747e900dd9e6e6f62f10772c2dded9b9d0c6 24-Apr-2012 Gilles Debunne <debunne@google.com> Merge "Editor uses a SpanWatcher to track EasyEditSpans"
76f287e416ded85734b610f316e38d243d2ddb09 23-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Removing hierarchical accessibility focus directions.

1. The accessibility focus directions are not needed since an
accessibility service just get the root, first child, next
sibling, previous sibling and call execute the action to
give it accessibility focus. Now the accessibility node
info tree is properly ordered taking into account layout
manager directions for both layout manager that we report
and ones that we have determined as not important for
accessibility. Also the position of a node info are ordered
properly based on their coordinates after all transformations
as opposed to child index.

bug:5932640

Change-Id: I994a8297cb1e57c829ecbac73a937c2bcbe0bac7
ccessibilityInteractionController.java
ocusFinder.java
iew.java
iewGroup.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityNodeProvider.java
ba6be8a62dcdb3ffd210cd36b9af4e3a658eac47 24-Apr-2012 Romain Guy <romainguy@google.com> Prevent WebView from crashing when detached from the window
Bug #6365056

WebView enqueues a functor in the hardware renderer to handle
animations and this functor is called at a later time by the
hardware renderer. However, the functor was not removed from
the queue when WebView was removed from the window. This could
cause the hardware renderer to attempt to execute an invalid
functor and lead to a crash.

Change-Id: I9d38e80f3fdc5e29d4d0cdfa1e893c251a954508
LES20Canvas.java
ardwareCanvas.java
ardwareRenderer.java
iewRootImpl.java
c62589cbecef6e748bcc6c6f4ea6a8ff7656923f 12-Apr-2012 Gilles Debunne <debunne@google.com> Editor uses a SpanWatcher to track EasyEditSpans

Will also fix Bug 6344997

The previous TextWatcher mechanism was inneficient. It require an
expensive getSpans() call to retrieve all the spans and then search
for the one we're interested in in case it has been changed.

The SpanWatcher is faster, it will broadcast the add/changed/removed
events we're interested in.

Now that we can rely on SpanWatcher, use it to directly track
addition and removals of EasyEditSpans.

No unit test for this feature which require an integration with
the voice IME. Easy to test manually though.

Change-Id: Idabcacc48c479bf9868d5204c0b0ca709207ede2
nputmethod/ExtractedText.java
10ca24a97cefc14fca1b26f59e627f487b3b108b 24-Apr-2012 Philip Milne <pmilne@google.com> Promote layout debugging code from GridLayout to ViewGroup.

Layout debugging code draws rectangles around:

1. Layout insets (red)
2. Bounds (blue)
3. Margins (magenta)

Layout debug mode is enabled with:

adb shell setprop debug.layout true

Change-Id: Ia155a2d0fbf33693a1e3c040f627ea3a534e1aff
iew.java
iewGroup.java
19f86e831ee0629b24385b0bb51d27ff91961dd2 24-Apr-2012 Romain Guy <romainguy@google.com> Invoke onTrimMemory with an EGL context
Bug #6369600

Change-Id: I3ded47c3688ef2f2873495392c35e898357204da
ardwareRenderer.java
indowManagerImpl.java
1271e2cc80b01d577e9db339459ef0222bb9320d 20-Apr-2012 Chet Haase <chet@google.com> Remove USE_DISPLAY_LIST_PROPERTIES flag

This flag was still hanging around pending any need to disable
DisplayList properties. But things seem stable, so it's time to clean up
and simplify the code.

At the same time, I reduced redundance in DisplayList dimensions. We
used to call drawDisplayList() with width/height parameters that were
used to do a clip reject. This is redundant with the DisplayList properties
that set the bounds of the DisplayList; the left/right and top/bottom properties
represent the same width/height properties formerly used in drawDisplayList().
The new approach is to not pass dimensions to drawDisplayList(), but to
instead pull those dimensions directly from the DisplayList when needed.

Change-Id: I8871beff03b1d4be95f7c6e079c31a71d31e0c56
LES20Canvas.java
ardwareCanvas.java
ardwareRenderer.java
iew.java
iewGroup.java
iewPropertyAnimator.java
7838025812f30f466ee502d3cbb92923312524da 21-Apr-2012 Jeff Brown <jeffbrown@google.com> Merge "Make InputEvent.getEventTime() public."
b11499d2db0ba9782363ec6bf714b583e8585212 21-Apr-2012 Jeff Brown <jeffbrown@google.com> Make InputEvent.getEventTime() public.

Also add new methods to access the event timestamp in
nanoseconds. Hidden for now but useful for prototyping.

Bug: 6374616
Change-Id: I7030734a908e8e31a17a356debc269db7c0f0783
nputEvent.java
eyEvent.java
otionEvent.java
d6e716dce95089e3acceef2267175d1dba1b4035 21-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Adding a couple of missing accessibility focus directions.

Change-Id: Id404155591cf3fe5f9bef3ed8fe0d03908944ce1
iew.java
122b2c32dea573a3efbd0d608a70b7cd169d99dd 21-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Fixing a couple of issues I have introduces in the last patch.

1. Fix waiting for the wrong instance.

2. Fix cloning of accessibility node info.

Change-Id: Icabf0d4bc947602a32fddc6642cc787f2bc766e4
ccessibility/AccessibilityNodeInfo.java
72de2062485f711c9a2291c204fd2c0fb6c4e20f 21-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Adding support for traversing the content of a node info at granularity."
aa780c110922148a6a4ba06734bb2b0bb8c98f93 20-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Adding support for traversing the content of a node info at granularity.

1. A view that creates an accessibility node info may add to the info
a list of granularity labels. These are granularities by which the
source view can iterate over its content. For example a text view
may support character, word link while a web view may additionally
support buttons, tables, etc. There are actions on accessibility
node info to go to the next/previous at a given granularity which
is passesed as an argument.

2. Added Bundle argument to the APIs for performing accessibility
actions. This is generic and extensible.

bug:5932640

Change-Id: I328cbbb4cddfdee082ab2a8b7ff1bd7477d8d6f9
ccessibilityInteractionController.java
iew.java
iewRootImpl.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityNodeProvider.java
ccessibility/IAccessibilityInteractionConnection.aidl
d6b1098e1f46530528dfea415655468ec994bbb6 20-Apr-2012 John Reck <jreck@google.com> Support fallback action if unhandled key event

Bug: 6023055

Change-Id: Ib802c4b9d1b606f9ea7a5081e30c50b5bd78e30c
iewRootImpl.java
fefd20e927b7252d63acb7bb1852c5188e3c1b2e 20-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Adding an opt-in mechanism for gesture detection in AccessibilityService.

1. An accessibility service has to explicitly opt in to be notified
for gestures by the system. There is only one accessibility service
that handles gestures and in case it does not handle a gesture
the system performs default handling. This default handling ensures
that we have gesture navigation even if no accessibility service
would like to participate/customize the interaction model.

bug:5932640

Change-Id: Id8194293bd94097b455e9388b68134a45dc3b8fa
ccessibility/AccessibilityInteractionClient.java
749e796eb3a42e21613a3b360000373601a8f50d 20-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> UI test automation cannot get the root node and gets null children.

1. The AccessibilityInteractionController was using an incorrect
looper i.e. not the UI thread looper which was causing getting
the root node to fail.

2. The AccessibilityNodeInfo was populated by a ViewGroup with the
children for accessibility without checking whether these children
are really displayed.

bug:6362875

Change-Id: I7906d89571eb9d57d10f971639f88632926dd077
ccessibilityInteractionController.java
iew.java
59a422e90035ce5df45c526607db2d3303e3112e 20-Apr-2012 Jeff Brown <jeffbrown@google.com> Ensure that touch and hover targets are cleared when needed.

When views are removed from a view or a view is detached from
a window, we need to update the touch and hover targets appropriately.

Failing to do this resulted in a NPE while dispatching an
ACTION_HOVER_EXIT to a view that had previously been removed.
Removed views should not get input events.

Change-Id: I4af4f8e2c4028347d3f570894fd1b3b366d11455
iew.java
iewGroup.java
00710e906bdafd58386ee7f81fa84addd218122f 20-Apr-2012 Jeff Brown <jeffbrown@google.com> Make InputDevice.SOURCE_STYLUS meaningful.

Bug: 5424551
Change-Id: I415cb1842422e050cc41b17f5a1f13b4fab17a44
nputDevice.java
661f362a2c531c46fdce5359b176a30ba7d16e1f 20-Apr-2012 Dianne Hackborn <hackbod@google.com> Merge "Add new API to find smallest/largest screen size."
68c33ca7ce1f142eb5f1e1f90118aeba4c9db1e3 19-Apr-2012 Dianne Hackborn <hackbod@google.com> Add new API to find smallest/largest screen size.

Change-Id: I790801fceaf84ee2e3b1c9d32828285ad3231d0e
isplay.java
WindowManager.aidl
b78c284bd535f48207750e5a406474ea22381edd 19-Apr-2012 Chet Haase <chet@google.com> Always execute actions on the runQueue

A View that is not attached will place posted actions on the
ViewRoot's runQueue. Previously, this runQueue was only ever executed
during a layout (during performTraversals()). This works in most situations
(a View that is added to or removed from the hierarchy will force a layout
in general), but not in all cases. For example, a new View being added to
a ListView will not cause a layout, so any actions posted to that View
prior to its being attached will not be run until some indeterminate time
later when a layout happens to run.

The fix is to execute the (typically empty) runQueue on every traversal.

Issue #6366678 View.post() ignored when called on an unattached ListView item

Change-Id: I94e6fdd9da6bb57fd83b547f8d742cd0ddfecbd6
iewRootImpl.java
563d4f2d461d264457b7e7068e2fc7b9b0bcafb3 19-Apr-2012 Chet Haase <chet@google.com> Make ViewPropertyAnimator ListView-animation-capable

ViewPropertyAnimator now sets the hasTransientState flag in View to tell
it when an animation has started (and unsets it when the animation ends).
This allows ListView to retain views with transient state without recycling them,
which makes ListView item animation possible (because you can't animate a View
if it's being recycled and reused elsewhere as it moves into and out of view).

Change-Id: I75c26a7a56474a76428500afef03a80bb46e04e0
iew.java
iewPropertyAnimator.java
f37d87b35b9bc860487104b1870f74caa3ae2e71 19-Apr-2012 Chet Haase <chet@google.com> Merge "Fix init of Animation in View drawing code"
1fb8a9e44a5d0710d58c883e087469e95be65b5b 19-Apr-2012 Chet Haase <chet@google.com> Fix init of Animation in View drawing code

The refactor of ViewGroup.drawChild() resulted in an error
in a new method (View.drawAnimation) where animations were being
initialized with their view dimensions instead of the parent dimensions.

Issue #6292681 RotateAnimationTest#testRotateAgainstPoint fails on JRN04
Issue #6293275 TranslateAnimationTest#testInitialize fails on JRN04

Change-Id: Ia90711cadd7a6c20fd788e5b8b18a5b28551e68c
iew.java
ec96305ea05355d57fd803edd57d6af1c4a9f83e 19-Apr-2012 Dianne Hackborn <hackbod@android.com> am 559167f3: Merge "Volume Overlay Bug When swapping streams"

* commit '559167f31de1a1a7138dbc2d5a7797e5b7cd59b0':
Volume Overlay Bug When swapping streams
83cb5807b0eaa36b417ce5c978e4e460b1fcc9e2 19-Apr-2012 Jeff Brown <jeffbrown@google.com> Merge "Add more dead keys. Use NFC tables for composition."
c3643b901308289132269aa3af9a738cd2b60f08 19-Apr-2012 Jeff Brown <jeffbrown@google.com> Add more dead keys. Use NFC tables for composition.

Bug: 6110399
Change-Id: I343d24df21dac2c069136b016e70e39f0feb6df9
eyCharacterMap.java
eaa0a04f83113e2cafb8c2044ae2107d15dd8036 19-Apr-2012 Philip Milne <pmilne@google.com> Merge "Share Insets instances between views that have the same background (Drawable)"
bbd51f1e360b22eece1d74bd65c7e6a0b59dee59 19-Apr-2012 Philip Milne <pmilne@google.com> Share Insets instances between views that have the same background (Drawable)

Change-Id: I47d93ccca6f553b678d25966d10d7a0a97cfa5ea
iew.java
0b9de5336d5af2b4027cede344526b847c8dc66e 19-Apr-2012 Jeff Brown <jeffbrown@google.com> Merge "Improve selection of dead key accent chars."
accce945e5f51436f3aa22a0e1a85e6059232ded 19-Apr-2012 Jeff Brown <jeffbrown@google.com> Improve selection of dead key accent chars.

The '^', '`', and '~' characters that we use for circumflex,
grave and tilde accents are ugly. Use the appropriate printing
modifier characters instead.

Bug: 6110399
Change-Id: I53891139ed1cef3010f5319ff49df1eeb1c6feeb
eyCharacterMap.java
f01d3dd710e8b86b3e2846af62835158fd4e0db1 18-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Adding some more gestures and actions for accessibility."
005b83b0c62d3d0538f0d566b08bd457015ec661 17-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Adding some more gestures and actions for accessibility.

1. Added more gesture for accessibility. After a meeting
with the access-eng team we have decided that the current
set of gestures may be smaller than needed considering
that we will use four gestures for home, back, recents,
and notifications.

2. Adding actions for going back, home, opening the recents,
and opening the notifications.

3. Added preliminary mapping from some of the new gestures
to the new actions.

4. Fixed a bug in the accessibility interaction controller
which was trying to create a handled on the main looper
thread which may be null if the queried UI is in the
system process. Now the context looper of the root view
is used.

5. Fixed a bug of using an incorrect constant.

6. Added a missing locking in a couple of places.

7. Fixed view comparison for accessibilityt since it was
not anisymmetric.

bug:5932640
bug:5605641

Change-Id: Icc983bf4eafefa42b65920b3782ed8a25518e94f
ccessibilityInteractionController.java
iew.java
iewGroup.java
iewRootImpl.java
ccessibility/AccessibilityNodeInfo.java
fffaf85e22ff47fb88a35deb27d5eed13789dfc6 18-Apr-2012 Steven Harper <stevenharperuk.aosp@gmail.com> Volume Overlay Bug When swapping streams

Merged in http://review.cyanogenmod.com/#change,14109

Fixing a bug that when an app is dismissed or loaded that changes
the current active audio stream, if the volume overlay is visible during the swap,
if you adjust the volume (with hard keys) after the stream has changed while
the panel is still visible, the wrong panel (view) is still visible on-top of the
one that is being adjusted.

A good way to replicate this is to
Open the Phone APP
Go to the Keypad Screen
Adjust the volume (not the icon on the overlay)
While the volume is visible Hit the HOME hard key
Before the volume dissapears, adjust the volume with hard keys

You will hear and feel the volume adjusting, but the overlay will not update.

Change-Id: Ied50ed83b153234cff82c282e3fd76ed671b420b
olumePanel.java
6da9677f491abe92a7b45f90767189d052e27c21 18-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Views with zero alpha are shown for accessibility."
b3830f6737bb17185e2e1c95f4dcde9ce82ac7e4 18-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Views with zero alpha are shown for accessibility.

1. Views that a user cannot see should not be reported for
accessibility. The check for zero alpha was missing.

bug:6291855

Change-Id: I3cb4c19cccf0dc2427677df630d124c36bd4770b
ccessibilityInteractionController.java
06fd472390126c74977ce9a0b2f912e91ebf2744 18-Apr-2012 John Reck <jreck@google.com> Merge "Fix a bug with enterTouchMode removing focus"
09dd116cd39613a3736dbbf028544e1655002430 17-Apr-2012 John Reck <jreck@google.com> Fix a bug with enterTouchMode removing focus

Bug: 6347083
Fix an issue where enterTouchMode would remove focus from the
view that already has focus and is focusableInTouchMode. This
causes issues with WebView, as it updates internal state when
losing and gaining focus.

Change-Id: I5c1f72cc08baf3445e2be9e0496606a53fb9929e
iewRootImpl.java
7dd4a536a125d5e9573e82c39581bf9ee3922424 16-Apr-2012 Chet Haase <chet@google.com> Adding new CHANGING transition to LayoutTransition.

LayoutTransition used to depend on child views being added/removed or
shown/hidden in the transition container. These evens would trigger animations
to fade the child view as well as those to animate the side-affected changes
to sibling views. This CL enables a new feature in LayoutTransition that
enables animating any changes to the layout of the children in the container
whenever a layout occurs. For example, you can change the LayoutParams of a
child view and call requestLayout() to automatically animate those changes.

This capability is not enabled by default. To enable, call the new
LayoutTransition.enableTransitionType(LayoutTransition.CHANGING) method.

Change-Id: I4d07a3b36245353b2151f0dca4f75080ab6a4592
iewGroup.java
fbf7e1f343b4d61c48187adb123a4308e809a92d 17-Apr-2012 satok <satok@google.com> Merge "Get rid of "isSentenceLevelSpellCheckSupported""
21d1251637e0b0e23583e8c80d4437fe7e5e57d3 17-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Fixing broken add focusables behavior I have introduced."
3cb889caa3726256bd00976c2662f51a14d91d49 17-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Fixing broken add focusables behavior I have introduced.

bug:6344608

Change-Id: I1d241c02bc22c5ef3f4b4b69a756772e8b2ef902
iew.java
ac76e72272c957dc7609aa68224efa2d32c23cd0 17-Apr-2012 Dianne Hackborn <hackbod@google.com> Merge "Add new scale-up window manager animation."
eabfb3a36e9469c5e219f92b39b7200104319185 17-Apr-2012 Dianne Hackborn <hackbod@google.com> Add new scale-up window manager animation.

Like zoom thumbnail, but without the thumbnail.

Change-Id: I9486dd204398b87c9e70ff0d05d03f4a22449cd6
WindowManager.aidl
455cfc8dca10aa3f500ed54e9a4796d91f66fea7 17-Apr-2012 Philip Milne <pmilne@google.com> Merge "Minor doc fix."
fcc6a0f145fa721e3feee70bedf8e120fcc4c494 17-Apr-2012 Philip Milne <pmilne@google.com> Minor doc fix.

Change-Id: I8f20c4751b599e0108c9373caef7e672d1cd4821
iewGroup.java
d1661dcc90cb3efcad75e3fda778f3592bfc5b04 16-Apr-2012 Jamie Gennis <jgennis@google.com> Merge "Unhide new SurfaceTexture & TextureView APIs"
a5d552fc2bad6aea2087f56e88fb1ce836a79571 16-Apr-2012 Philip Milne <pmilne@google.com> Fix for doc error.

Change-Id: I8aa029d96d4cd28354ecc742007e0fc35b05b705
iewGroup.java
4e1cb3b7942d3ca05918604358b4ef83815ce448 16-Apr-2012 Philip Milne <pmilne@google.com> Merge "Fix for bug 6110465."
c7ee1b9369ffd7c21a70738056a82dc4238e7fc1 11-Apr-2012 satok <satok@google.com> Get rid of "isSentenceLevelSpellCheckSupported"

Bug: 6320351
Change-Id: I0e931b7248f8c65268b60af599c07432d58d2f1f
extservice/SpellCheckerInfo.java
extservice/SpellCheckerSession.java
4213804541a8b05cd0587b138a2fd9a3b7fd9350 20-Mar-2012 Svetoslav Ganov <svetoslavganov@google.com> Accessibility focus - framework

Usefulness: Keep track of the current user location in the screen when
traversing the it. Enabling structural and directional
navigation over all elements on the screen. This enables
blind users that know the application layout to efficiently
locate desired elements as opposed to try touch exploring the
region where the the element should be - very tedious.

Rationale: There are two ways to implement accessibility focus One is
to let accessibility services keep track of it since they
have access to the screen content, and another to let the view
hierarchy keep track of it. While the first approach would
require almost no work on our part it poses several challenges
which make it a sub-optimal choice. Having the accessibility focus
in the accessibility service would require that service to scrape
the window content every time it changes to sync the view tree
state and the accessibility focus location. Pretty much the service
will have to keep an off screen model of the screen content. This
could be quite challenging to get right and would incur performance
cost for the multiple IPCs to repeatedly fetch the screen content.
Further, keeping virtual accessibility focus (i.e. in the service)
would require sync of the input and accessibility focus. This could
be challenging to implement right as well. Also, having an unlimited
number of accessibility services we cannot guarantee that they will
have a proper implementation, if any, to allow users to perform structural
navigation of the screen content. Assuming two accessibility
services implement structural navigation via accessibility focus,
there is not guarantee that they will behave similarly by default,
i.e. provide some standard way to navigate the screen content.
Also feedback from experienced accessibility researchers, specifically
T.V Raman, provides evidence that having virtual accessibility focus
creates many issues and it is very hard to get right.
Therefore, keeping accessibility focus in the system will avoid
keeping an off-screen model in accessibility services, it will always
be in sync with the state of the view hierarchy and the input focus.
Also this will allow having a default behavior for traversing the
screen via this accessibility focus that is consistent in all
accessibility services. We provide accessibility services with APIs to
override this behavior but all of them will perform screen traversal
in a consistent way by default.

Behavior: If accessibility is enabled the accessibility focus is the leading one
and the input follows it. Putting accessibility focus on a view moves
the input focus there. Clearing the accessibility focus of a view, clears
the input focus of this view. If accessibility focus is on a view that
cannot take input focus, then no other view should have input focus.
In accessibility mode we initially give accessibility focus to the topmost
view and no view has input focus. This ensures consistent behavior accross
all apps. Note that accessibility focus can move hierarchically in the
view tree and having it at the root is better than putting it where the
input focus would be - at the first input focusable which could be at
an arbitrary depth in the view tree. By default not all views are reported
for accessibility, only the important ones. A view may be explicitly labeled
as important or not for accessibility, or the system determines which one
is such - default. Important views for accessibility are all views that are
not dumb layout managers used only to arrange their chidren. Since the same
content arrangement can be obtained via different combintation of layout
managers, such managers cannot be used to reliably determine the application
structure. For example, a user should see a list as a list view with several
list items and each list item as a text view and a button as opposed to seeing
all the layout managers used to arrange the list item's content.
By default only important for accessibility views are regared for accessibility
purposes. View not regarded for accessibility neither fire accessibility events,
nor are reported being on the screen. An accessibility service may request the
system to regard all views. If the target SDK of an accessibility services is
less than JellyBean, then all views are regarded for accessibility.
Note that an accessibility service that requires all view to be ragarded for
accessibility may put accessibility focus on any view. Hence, it may implement
any navigational paradigm if desired. Especially considering the fact that
the system is detecting some standard gestures and delegates their processing
to an accessibility service. The default implementation of an accessibility
services performs the defualt navigation.

bug:5932640
bug:5605641

Change-Id: Ieac461d480579d706a847b9325720cb254736ebe
ccessibilityInteractionController.java
ocusFinder.java
iew.java
iewConfiguration.java
iewDebug.java
iewGroup.java
iewParent.java
iewRootImpl.java
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityManager.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityNodeInfoCache.java
ccessibility/AccessibilityNodeProvider.java
ccessibility/AccessibilityRecord.java
ccessibility/IAccessibilityInteractionConnection.aidl
ccessibility/IAccessibilityManager.aidl
33efb231cb92065c40c019319adae36abc413863 14-Apr-2012 Jamie Gennis <jgennis@google.com> Unhide new SurfaceTexture & TextureView APIs

This change unhides the new SurfaceTexture and TextureView APIs that were added
to allow transferring ownership of the SurfaceTexture from the UI framework to
the application.

Change-Id: Ic4b781d907a59e99ff1a5974009305c1f9aee36a
extureView.java
90aba7caac78b407347b930cfb6ff7d6658ac90a 14-Apr-2012 Jeff Brown <jeffbrown@google.com> Merge "Add support for input devices that have vibrators."
75e0dcbca1fe6d218685c73829ae8c75a45b4920 14-Apr-2012 Jeff Brown <jeffbrown@google.com> Merge "Extract Vibrator implementation from interface."
a47425a13c19f95057df78b8bb65bb25657e8753 13-Apr-2012 Jeff Brown <jeffbrown@google.com> Add support for input devices that have vibrators.

Added a getVibrator() method to InputDevice which returns a Vibrator
associated with that input device. Its uses the same API as the
system vibrator which makes it easy for applications to be modified
to use one or the other.

Bug: 6334179
Change-Id: Ifc7f13dbcb778670f3f1c07ccc562334e6109d2e
nputDevice.java
1557fd7809078e421f751efc7d2539b3efdc54b2 05-Apr-2012 Philip Milne <pmilne@google.com> Fix for bug 6110465.

Add layout bound metadata to 9-patch files and make layouts take them into account.

This CL contains a proposed API for dealing with layout bounds.

This solution exposes:

1. Class: Insets - for storing layout Insets (and later possibly padding).
2. Methods: View:(get/set)LayoutInsets() - for storing layoutBounds.
3. Methods: ViewGroup:(get/set)LayoutMode() - for controlling layoutMode.

It also iuncudes the changes to GridLayout to support layout bounds.

Change-Id: I60c836b6530b61c5abf37f93ee9c44aad73573f1
iew.java
iewGroup.java
8431f89827e0c90dedad10a6a7dbd040e627f5df 13-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessibility query APIs report invisible views."
067b091d46c3c2d11a33d25e81c8348fb609b7ab 13-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Accessibility query APIs report invisible views.

1. The accessibility querying APIs failed to check whether
all predecessors of a view are visible before reporting it.

bug:6291855

Change-Id: I364a6f08e8d02c7105c00c9fdff0fec033829554
iewRootImpl.java
c2346134bb519a54d50655cbef940fc3fdec60a9 13-Apr-2012 Jeff Brown <jeffbrown@google.com> Extract Vibrator implementation from interface.

Moved the core logic of Vibrator into SystemVibrator, potentially
allowing for the creation of other Vibrator subclasses.

Fixed several places where we were creating new Vibrator
instances unnecessarily instead of getting it from the Context.

It is safe to make Vibrator abstract because its constructor
was hidden from the SDK so it was not possible to subclass it.

Bug: 6334179
Change-Id: I18ece6544c26a7efb2d5099f8346a10aef8a5e18
olumePanel.java
882735972e9e7ee52a3116a3aba0440968b2da1a 13-Apr-2012 Jeff Brown <jeffbrown@google.com> Merge "Notify applications when input devices change."
af9e8d38184c6ba4d2d3eb5bde7014a66dd8a78b 13-Apr-2012 Jeff Brown <jeffbrown@google.com> Notify applications when input devices change.

This change allows the InputManager to keep track of what input
devices are registered with the system and when they change.
It needs to do this so that it can properly clear its cache of
input device properties (especially the key map!) when changes
occur.

Added new API so that applications can register listeners for
input device changes.

Fixed a minor bug in EventHub where it didn't handle EPOLLHUP
properly so it would spam the log about unsupposed epoll events
until inotify noticed that the device was gone and removed it.

Change-Id: I937d8c601f7185d4299038bce6a2934fe4fdd2b3
nputDevice.java
eyCharacterMap.java
41ffd86df1371467c9db717d30aa1eec30add723 13-Apr-2012 Romain Guy <romainguy@google.com> Merge "Don't update TextureView's surface if the Layer doesn't exist"
a8a2f97c100af4ba52c61c3b59c933f44a53dad4 13-Apr-2012 Romain Guy <romainguy@google.com> Don't update TextureView's surface if the Layer doesn't exist

Change-Id: Ifcc1a7a271f6c236a3aebd3726b7025348e64920
extureView.java
0c2acffec8689f8721a454845b24a830bc37ce92 13-Apr-2012 Dianne Hackborn <hackbod@google.com> Clean up lock screen hide animation.

We now have an animation to apply to the thing behind the lock
screen animation when it isn't on the wallpaper, which looks
similar to the animation we use when both are on the wallpaper.

In implementing this, cleaned up the code to figure out up-front
which animation to run, getting rid of that kludgy thing that
cleared the window animation if the wallpaper was not being used
for the lower windows.

Change-Id: Ifc4c8a8894ad384124dcf4bbdaab134f1157b0f3
indowManagerPolicy.java
95487eb90ce8c421ce7baca5b761745bbc1bb14b 12-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Some view not shown on the screen are reported for accessibility."
aa6f3de253db6c0702de0cc40028750c1fcfb22c 10-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Some view not shown on the screen are reported for accessibility.

1. Some applications are keeping around visible views off screen
to improve responsiveness by drawing them in layers, etc. While
such a view is not visible on the screen the accessibility layer
was reporting it since it was visible. Now the check is improved
to verify whether the view is attached, is in visible window,
is visible, and has a rectangle that is not clipped by its
predecessors.

2. AccessibilityNodeInfo bounds in screen were not properly set
since only the top left point was offset appropriately to
take into account any predecessor's transformation matrix
and the not transformed width and height were used. Now
the bounds are properly offset.

bug:6291855

Change-Id: I244d1d9af81391676c1c9e0fe86cf4574ff37225
iew.java
iewRootImpl.java
decd3039ca71e5340ec01027170941637bf9876e 12-Apr-2012 Romain Guy <romainguy@google.com> Merge "Don't wait for screen on to finish animations"
eb3788907132eec5724bbb78f20711c4ffe35b1b 12-Apr-2012 Romain Guy <romainguy@google.com> Don't wait for screen on to finish animations

OldAnimationsâ„¢ would set their start time during the first frame drawn
after calling View.startAnimation(). If this method was invoked while
the screen was off, this would cause the animation to start playing
when the screen turned back on.

Change-Id: Ic45a1af2020a7f5e81c2544bd8f16a6bedbd6849
iew.java
f1352d87ea59efeda96b6462d2ade4c3a979ec95 12-Apr-2012 Romain Guy <romainguy@google.com> Merge "Fix SurfaceTexture leak in TextureView Bug #6318631"
1ac4765e959c79101f64b1279887ed469334c268 12-Apr-2012 Romain Guy <romainguy@google.com> Fix SurfaceTexture leak in TextureView
Bug #6318631

Change-Id: I282a7c9bb648365ba61c52a84ff510c8779130ef
ardwareRenderer.java
extureView.java
c2676102d269038234f7018090d70af0ba754e83 12-Apr-2012 John Reck <jreck@google.com> Merge "New WebView input dispatcher."
db13a6bf788cc48af86c8acf6f74b416dfd84199 12-Apr-2012 Adam Powell <adamp@google.com> Merge "Invalidate for scrolling animations on the animation timer"
9d3bdbd6b8f9eda5f67212b06185cd59adcda6c8 21-Mar-2012 Jeff Brown <jeffbrown@google.com> New WebView input dispatcher.

Bug: 6317798

Stuff that's better:

1. We maintain two queues in a way that ensures that WebView and
WebKit both see consistent streams of events, even in cases
where WebKit times out. We send ACTION_CANCEL if necessary, etc.

2. All pointer events go through the same channel, including
hover and click ("touch up") events, to ensure correct ordering.

3. Given that the input events are in a separate queue, we can
force execution of all of these events whenever we like, making new
latency optimizations possible.

4. The entire history of each touch event is sent to the web
application to enable smoother interaction.

5. The web application may choose to intercept a touch event stream
at any time by issuing "prevent default". Previously, it could only
prevent default on the initial down event. The new behavior is more
standards compliant.

Change-Id: I42d2d045e7d44af7c54b29570f188b7400d91d4e
otionEvent.java
4d6a82d79ede0cc1f26e463209f22c691a04626b 11-Apr-2012 Jeff Brown <jeffbrown@google.com> Unhide new animation runnable API on View.

Change-Id: Id626688d6c7d632c01d9897777c854cb601d3301
iew.java
df3ae4f3aea3bdce6bb54133c8a07a26bf207c3c 11-Apr-2012 Adam Powell <adamp@google.com> Invalidate for scrolling animations on the animation timer

Change View methods awakenScrollBars and scrollTo to post their
invalidation on the animation timer. Since these are often used in
computeScroll or similar to continue scrolling or flinging it should
not prevent other posted events from being processed before the frame
is actually drawn. (All changes in scroll position, etc. are
immediately reflected after the calls and do not need a draw to
present correct data about scroll position to apps.)

Don't accumulate floating point error while dragging
ScrollView/HorizontalScrollView.

Change-Id: I05b57d75f89a806488e46a8fb79b85d80f56d45d
iew.java
9f25b7fdf216c9ef0bd2322cd223eeaf0d60f77f 10-Apr-2012 Jeff Brown <jeffbrown@google.com> Request key maps from input manager service.

Instead of each application loading the KeyCharacterMap from
the file system, get them from the input manager service as
part of the InputDevice object.

Refactored InputManager to be a proper singleton instead of
having a bunch of static methods.

InputManager now maintains a cache of all InputDevice objects
that it has loaded. Currently we never invalidate the cache
which can cause InputDevice to return stale motion ranges if
the device is reconfigured. This will be fixed in a future change.

Added a fake InputDevice with ID -1 to represent the virtual keyboard.

Change-Id: If7a695839ad0972317a5aab89e9d1e42ace28eb7
nputDevice.java
eyCharacterMap.java
162bc0ea0d7862b92f18d0ce47310a85304205f7 09-Apr-2012 Dianne Hackborn <hackbod@google.com> Some small tweaks to improve memory management.

We now allow processes that currently have stopping activities to
be managed as if they were done stopping, so that memory trimming
can be done before the process goes to the background. Hopefully
this will reduce cases where the processes goes to the background
and immediately gets killed, but wouldn't have had to be killed if
it had a chance to trim its memory.

Also change window memory trimming to always do the aggressive
trimming when memory is critical, even if not on a low-end device.

And tweak web view trimming to not trim for foreground UI events.

Change-Id: I241b3152b52d09757bd14a202477cf69c9b78786
indowManagerImpl.java
c38cf4c7dbe7d96255d42dabf8ca801830813f5e 10-Apr-2012 Daniel Sandler <dsandler@android.com> Merge "New Android Dreams architecture, disabled for now."
3da2dc9d4cc4785d2a0eacaf8d00222a46df150b 10-Apr-2012 Jesse Hall <jessehall@google.com> Merge "Release the scratch pbuffer surface after use"
7d276c377ce0c56630c06a6da431a6cb9bd76d1e 30-Jan-2012 Daniel Sandler <dsandler@android.com> New Android Dreams architecture, disabled for now.

Rather than normal Activities (which have a host of problems
when used for this purpose), screen savers are now a
special kind of Service that can add views to its own
special window (TYPE_DREAM, in the SCREENSAVER layer).

Dreams are now launched by the power manager; whenever it is
about to turn the screen off, it asks the window manager if
it wants to run a screen saver instead. (http://b/5677408)

Also, the new config_enableDreams bool allows the entire
feature to be switched on or off in one place. It is
currently switched off (and the APIs are all @hidden).

Change-Id: Idfe9d430568471d15f4b463cb70586a899a331f7
indowManager.java
indowManagerPolicy.java
69bba1dfb75a732e9d1ee92f1088d6fbe1e26f68 07-Apr-2012 Jeff Brown <jeffbrown@google.com> Merge "Add a unique input device descriptor."
e38fdfae9196afd1bdc14c5ec6c12793af1e2550 06-Apr-2012 Jeff Brown <jeffbrown@google.com> Add a unique input device descriptor.

The purpose of the input device descriptor is to make it possible
to associate persistent settings for each input device, such as the
keyboard layout.

The descriptor is a hash of the information we have about the
device, such as its vendor id, product id, unique id, name,
or location.

Bug: 6110399
Change-Id: Idb80f946819b3f0dbf4e661bb0a753dbc2b60981
nputDevice.java
3d4d2159bc84f03ea4be12af8c7de9500985bb82 06-Apr-2012 Chris Craik <ccraik@google.com> Merge "fix functor flag parsing, tweak process delay"
335a6625b6540ad21feaeae3a4f593f86e200019 06-Apr-2012 Jamie Gennis <jgennis@google.com> Merge changes Iac9cc917,I8eed4b0d

* changes:
TextureView: add setSurfaceTexture method
SurfaceTexture: add GL context attach & detach
419ad1e3b1f82c94ade87a70e7a4d033f9cab818 06-Apr-2012 satok <satok@google.com> Merge "Fix a bug with IME blinking just after leaving the lock screen"
f6710615c6cc1746d1ecc7aebc9afed457dcca41 30-Mar-2012 satok <satok@google.com> Supplement for I772164d9c67e95876c228efcce2

This should be merged with I1519258dd3ce95ad01

Change-Id: I48c5f86ff43f51913eb69d697bb1d75714b67aa3
extservice/SpellCheckerInfo.java
extservice/SpellCheckerSession.java
ac14351e16e1258f1cb54e2bf772b8be004eb2b8 06-Apr-2012 Jeff Brown <jeffbrown@google.com> Move some APIs from window manager to input manager.

Simplified input injection API down to just one call.

Removed all input state reading API. It was only used by the
window manager policy and required a permission that applications
could not obtain. READ_INPUT_STATE is now unused and deprecated.

Change-Id: I41278141586ddee9468cae0fb59ff0dced6cbc00
WindowManager.aidl
nputDevice.java
eyCharacterMap.java
indowManagerPolicy.java
e8644b695d6c548d2c93e1da7b4a6aff786f1427 06-Apr-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix so that status bar doesn't resize when hiding nav bar."
0872b370422eb1f9007b4717b8796543873e6390 02-Apr-2012 Jesse Hall <jessehall@google.com> Release the scratch pbuffer surface after use

Change-Id: Icf010969d19b20c3ddf64b44a78a115ac92f7ea5
ardwareRenderer.java
9801435820dc159725c0185f18f7e60e0fb1b833 06-Apr-2012 Dianne Hackborn <hackbod@google.com> Fix so that status bar doesn't resize when hiding nav bar.

The status bar now extends behind the nav bar, and uses
fitsSystemWindows to ensure its content is not covered. We
always report a stable content insets (as if the nav bar is
visible) even if the nav bar is hidden, so the content doesn't
jump when transitioing. This does mean that if you only hide
the nav bar (and not the status bar), when in landscape you
will end up with a status bar whose right side still leaves
room for the nav bar. But why the hell would you want to do
that?

Also improve documentation on setSystemUiVisibility().

Change-Id: I8087d875f1214ef0085a91b5ed5c2f35ff2fc1b3
iew.java
65924a3e56c2e7ac863f8e25e9f9a58b9db7d513 06-Apr-2012 Chris Craik <ccraik@google.com> fix functor flag parsing, tweak process delay

Change-Id: I0a679cc33f92ff6fd2e33db9ad58b52622def012
ardwareRenderer.java
389b65fea2219e389e6212b9a799f8b39dbfc6ca 06-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Minor twaek to the focus behavior."
5012ebbc5c00194236f425403e8771061dc7bf92 06-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Minor twaek to the focus behavior.

bug:6296603

Change-Id: I3bd0b291e6013cae019ca9049d9d3dc506845ab0
iew.java
2af3524beb75150d347accc925022daa53b4a789 05-Apr-2012 Jamie Gennis <jgennis@google.com> TextureView: add setSurfaceTexture method

This change adds support for transferring control of a TextureView's
SurfaceTexture between the UI framework and the application. It makes the
TextureView detach the SurfaceTexture from the UI framework's GLES context
before calling the surfaceTextureDestroyed callback, allowing the app to use
the SurfaceTexture in its own GLES context if it so chooses. This change also
adds the TextureView#setSurfaceTexture method, allowing an app have the
TextureView use a SurfaceTexture that already exists rather than creating a new
one.

Change-Id: Iac9cc917687e4239dd1c24eae553709aa37512da
LES20TextureLayer.java
ardwareRenderer.java
extureView.java
23b871d7147de910b53646cdb987e28dac0df927 06-Apr-2012 Jeff Brown <jeffbrown@google.com> Merge "Initial commit of InputManager and keyboard layout API."
9df6e7a926ce480baf70e97ee1b9ea387193f6ad 05-Apr-2012 Jeff Brown <jeffbrown@google.com> Initial commit of InputManager and keyboard layout API.

Added a new InputManager service for interacting with input
devices and configuring them. This will be the focus of
an upcoming refactoring.

Added an API for registering keyboard layouts with the system
based on the use of a broadcast receiver. Applications can
register their own keyboard layouts simply by declaring a
broadcast receiver in their manifests.

Added the skeleton of a package that will ultimately contain
the keyboard layouts and other input device related resources
that are part of the base system.

Bug: 6110399
Change-Id: Ie01b0ef4adbd5198f6f012e73964bdef3c51805c
nputDevice.java
eyCharacterMap.java
5459c43b83c3a9d0406f01deffaadd2ef458518c 05-Apr-2012 Dianne Hackborn <hackbod@google.com> Merge "Clean up status bar, system bar, navigation bar management."
05a6cbe2863614a1761adc033c905458b27be47e 05-Apr-2012 satok <satok@google.com> Fix a bug with IME blinking just after leaving the lock screen

Bug: 6286786
Change-Id: I9ee42482f7abffaefec31f0c4a661bef7c230137
nputmethod/InputMethodManager.java
5ab92c0316e1002a5a0bbad1841decc2bcd3179c 05-Apr-2012 Romain Guy <romainguy@google.com> Merge "Make sure we clean up after ourselves"
b39e509f43665f20877e590d007ac4dfab4d918c 05-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Fixing broken clear focus behavior."
edbca1285e4757900e43d31087451d1953555d7d 05-Apr-2012 Romain Guy <romainguy@google.com> Make sure we clean up after ourselves

Because of the mAdded=false statement a few lines above, a large section
of doDie() was not executed. Things would eventually get cleaned up
but it seems better to do it at the right time.

Change-Id: I1a2f3a8e05057dd7cd7205b6d3f9c145d6c0241d
iewRootImpl.java
a393bedb6da5ef5aecadc26b8895f669448aa0e0 05-Apr-2012 Romain Guy <romainguy@google.com> Merge "Add a new OnDrawListener to ViewRoot"
25eba5c5029bd91ff7e396b2cca0e4ce024124ed 05-Apr-2012 Romain Guy <romainguy@google.com> Add a new OnDrawListener to ViewRoot

This can be used by app to efficiently listen for draw passes. This listener
is guaranteed to not generate any garbage unlike OnPreDrawListener.

Change-Id: Ida40d11a3f8a5d2617bafe722906ee5c9af48602
iewRootImpl.java
iewTreeObserver.java
57cadf2a97a81e5bea49bac573249076ebd95a93 05-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Fixing broken clear focus behavior.

1. In a prevous patch I fixed the issues when on clearing
focus of the first focusable view the callback for
gaining focus were called before the ones for losing
focus. Since it cause some issues the patch was reverted
and resubmitted. In this chaos some code was missed so
tests are failing. Added the missing logic to give focus
to the first focusable in the current touch mode when
a view loses focus.

2. Removed clear focusForRemoval methid since it is a dup
of unFocus();

Note: All focus tests now pass.

Change-Id: I06881d4b5a66fc5a33efca16a96f20207a7220d3
iew.java
iewGroup.java
f87d19621dc2a30232bba1f51862a0b671eb9729 04-Apr-2012 Dianne Hackborn <hackbod@google.com> Clean up status bar, system bar, navigation bar management.

The status bar and navigation bar are two completely separate
elements, with their own semantics. The system bar now classifies
itself as a navigation bar, since that is really how it behaves.

This required rewriting the HDMI resizing code, so that it is
all done by PhoneWindowManager since that is what is responsible
for the size of the navigation bar (and thus now system bar). This
actually gets rid of a fair amount of code, and means we can also
do the same thing for a pure navigation bar.

Likewise the system bar now has the navigation bar ability to be
hidden when requested by system UI flags. To get the behavior
we want on Xoom, we only allow the nav bar to be hidden when it
will help provide a better aspect ratio for showing widescreen
videos.

Finally the nav/system bar now animates when hidden and shown.

Change-Id: Ie927154b68376a0b61802f99171ff56b8da92e7a
WindowManager.aidl
iewConfiguration.java
indowManagerPolicy.java
24fea55ebb8bcb9e17f3009a80172cb6ee46947d 04-Apr-2012 Philip Milne <pmilne@google.com> Merge "Fix for bug 6104272."
d779412c58d329ada4d1d79bdb85700e90cbc8d6 04-Apr-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Add View textAlignment"
9da0f8a5c4bccf8e722ae2ebf43873457aec3271 14-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Add View textAlignment

- fix bug #6163772
- use bits field and pack them as much as possible
- take care of "supportsRtl" flag from Manifest
- add visual unit tests

CTS unit tests in another CL

Change-Id: Ib77c4eb423854209af130688c5ef9977401a9c1c
iew.java
iewGroup.java
6c8ea06abfdcd81f728172ac3d3730b542945e48 04-Apr-2012 Philip Milne <pmilne@google.com> Fix for bug 6104272.

Add Java properties for those XML attributes that don't have getter/setter
pairs. Also, link existing methods to their XML attributes where the comments
were previously missing.

This CL is worth extra scruitiny: first because it's View, and secondly
because many of the new APIs depend on subtleties in the underlying implementations
that I'm not familiar with.

Also, please consider whether it is too much to deprecate getBackgroundDrawable().

Change-Id: I0f2641926d86e5f44b92a0057736f64b59d2e9b9
iew.java
09280606dc5dc1b8f12f9317cf6922772b7d10a7 04-Apr-2012 Chet Haase <chet@google.com> Enhanced frame profiling from gfxinfo

You can now set the max number of frames being tracked by the gfxinfo
profiling data by doing 'adb shell setprop hwui.profil.maxframes #'.
Also, running gfxinfo automatically resets the data so that any set of
frame data always starts from the beginning.

Change-Id: I87ae3fb4d580741a1b2fba75be4ec540de7c52a4
ardwareRenderer.java
21aec19d3041fe040004dd32eef0cfd1bafd6fb6 04-Apr-2012 Chet Haase <chet@google.com> Merge "Optimization of alpha with DisplayList properties"
fde3f83cd26871d2cc904ef05a4f50f272c610e2 03-Apr-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #6140391 Make RTL awareness as an opt-in into the AndroidManifest"
db8c9a6a4d9bf8c39f834b25611926caf21380f6 22-Mar-2012 Chet Haase <chet@google.com> Optimization of alpha with DisplayList properties

Some views (such as ImageView and TextView) handle non-opaque alpha
values directly. This was originally an optimization, but we can handle it faster
in many cases without this optimization when DisplayList properties are enabled.
Basically, if a view has non-overlapping rendering, we set the alpha value directly
on the renderer (the equivalent of setting it on the Paint object) and draw each
primitive with that alpha value. Doing it this way avoids re-creating DisplayLists
while getting the same speedup that onSetAlpha() used to get pre-DisplayList properties.

Change-Id: I0f7827f075d3b35093a882d4adbb300a1063c288
isplayList.java
LES20DisplayList.java
ardwareRenderer.java
iew.java
iewPropertyAnimator.java
fd007cb576d965e61d57ef7a38b9648a475a2afb 03-Apr-2012 Daisuke Miyakawa <dmiyakawa@google.com> Merge "Shorten PRESSED_STATE_DURATION"
c19895f7ede3129d88728844940c2586c88e74b2 03-Apr-2012 Daisuke Miyakawa <dmiyakawa@google.com> Shorten PRESSED_STATE_DURATION

Bug: 6259150
Change-Id: Ic8b28295a7e97ca2885d074962f73d5f1bf980c6
iewConfiguration.java
59dfce8bdaf011337530a0dbec7f7280871f9bc9 03-Apr-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6140391 Make RTL awareness as an opt-in into the AndroidManifest

- introduce "supportsRtl" as a new application attribute in the AndroidManifest
- "supportsRtl" default value is FALSE (no RTL support)
- adapt the View layoutDirection and textDirection logic to take care of "supportsRtl" value

Change-Id: I5e4f9f576e14f35dedc6b0c29a7142c397f598e0
iew.java
7e848304426b170e9c828fb7e4eb6088638ea63e 03-Apr-2012 Jeff Sharkey <jsharkey@android.com> Merge "Let ViewStub be used in RemoteViews."
110414928ae13674b7ec6b816a45cf70ed521683 03-Apr-2012 Joe Fernandez <joefernandez@google.com> am c1a0e54d: am b459b619: am 945b7cb3: Merge "docs: Accessibility Dev Guide (subsumes Accessibility Best Practices)" into ics-mr1

* commit 'c1a0e54de12aee41163b84a25ea8dfc8b64304dc':
docs: Accessibility Dev Guide (subsumes Accessibility Best Practices)
ade335016e6864ddf203f4d1b31b895985da55e7 03-Apr-2012 Joe Fernandez <joefernandez@google.com> am 945b7cb3: Merge "docs: Accessibility Dev Guide (subsumes Accessibility Best Practices)" into ics-mr1

* commit '945b7cb324f3bdfcf13efbe7bdf6a60f7163ed9a':
docs: Accessibility Dev Guide (subsumes Accessibility Best Practices)
b459b619b389f999564c3c526fe703e0c966ed9b 03-Apr-2012 Joe Fernandez <joefernandez@google.com> am 945b7cb3: Merge "docs: Accessibility Dev Guide (subsumes Accessibility Best Practices)" into ics-mr1

* commit '945b7cb324f3bdfcf13efbe7bdf6a60f7163ed9a':
docs: Accessibility Dev Guide (subsumes Accessibility Best Practices)
b27b7a152437d6ebb4f2a2700858b69634c00acd 03-Apr-2012 Jeff Sharkey <jsharkey@android.com> Let ViewStub be used in RemoteViews.

Specifically, this carefully ensures that ViewStub.inflate() uses
the restricted LayoutInflater from RemoteViews, which has a filter
to enforce the @RemoteView annotation.

Bug: 2541651
Change-Id: I341aacbf6029cdd717a894eb084760c6ec224786
ayoutInflater.java
iewStub.java
56bad16f0200b7afff12fcc45c82723cf467cfee 03-Apr-2012 Jeff Brown <jeffbrown@google.com> Merge "Add Japanese specific key codes."
b6a80077dca5a17f33350075485a534d7ed8fa2b 03-Apr-2012 Chris Craik <ccraik@google.com> Merge "Allow fine-grained control over functors execution"
8d56b0e1d24f7392314df4be6503af395a843696 03-Apr-2012 Chet Haase <chet@google.com> Enabling DisplayList properties

An earlier commit fixed problems with enabling DisplayList properties.
This CL actually enables the properties.

Change-Id: I5c41d0c64e9241822af53eb367de0fed7d9608e0
iew.java
9420abd56a2af7ddbeb70562b79d61b2dca8c5a1 30-Mar-2012 Chet Haase <chet@google.com> Re-enable DisplayList properties.

Re-enabling DisplayList properties last week caused some app
errors due to the way that some transforms were being handled (specifically,
those coming from the old Animations and ViewGroup's childStaticTransformation
field). This change pushes *all* transform/alpha data from View.draw() into
the view's DisplayList, making DisplayLists more encapsulated (and correct).

Change-Id: Ia702c6aae050784bb3ed505aa87553113f8a1938
isplayList.java
LES20DisplayList.java
iew.java
7511f9cd2ff39075ff56c2558c785caffc8b4383 10-Feb-2012 Yang Chuang <Yang_Chuang@asus.com> Add Japanese specific key codes.

These keys are specific to Japanese hardware keyboard which can be
used by input method.

Patch ported from AOSP, with the addition of EISU and KANA mappings.

Change-Id: I647473cdd257458e3b9d134b0fc623eae946c3e0
eyEvent.java
8f3b8e32993d190a26c70c839a63d8ce4c3b16d9 28-Mar-2012 Romain Guy <romainguy@google.com> Allow fine-grained control over functors execution

Adds non-drawing execution mode

Change-Id: I82f92cf1b9a3b9ff2ca6d7427c4e02b73e04e6bf
LES20Canvas.java
ardwareCanvas.java
ardwareRenderer.java
e0435a6c6a4464d96f6264374cf0b007b24031a0 02-Apr-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix layout params resolution"
e6c966caa3aff3099e6fb00caefa10387f57b9c3 02-Apr-2012 Michael Jurka <mikejurka@google.com> Merge "Add frame counter to dumpGfxInfo"
61d6c8ca49d4a3d5bf4c961878a3f71145d75058 31-Mar-2012 Dianne Hackborn <hackbod@google.com> Merge "Add new feature to let apps layout over status bar / system bar."
4a5268857eaa28be82ac6766bdfb8affad5c0bab 31-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix layout params resolution

- dont need to check if any parent as getResolvedLayoutDirection() is handling this case

Change-Id: I915b4a72e38d072005e47d3c5a3f63febbef6e60
iew.java
3a3a6cfd8ec12208ca75c0d0d871d19d76c34194 26-Mar-2012 Dianne Hackborn <hackbod@google.com> Add new feature to let apps layout over status bar / system bar.

The main change is a few new flags you can supply to
View.setSystemUiVisibility(). One is a new visibility mode,
SYSTEM_UI_FLAG_FULLSCREEN, which is basically the same as
the global FLAG_FULLSCREEN option for windows, but driven as
part of the system UI state.

There are also three new flags for telling the framework that you
would like to have your application's UI ignore screen
decorations -- SYSTEM_UI_FLAG_LAYOUT_NO_NAVIGATION for going
behind the navigation bar and SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
for ignoring full screen decorations (that is the status bar).

In combination with this you can use SYSTEM_UI_FLAG_LAYOUT_STABLE
to have the framework report consistent insets to your application.

When using NO_NAVIGATION, when the user taps the screen we now
also automatically clear ONLY_CONTENT, so that we atomically show
both UI elements. This should make it easy for apps like video
players that want to move between fully full-screen and regular
modes.

The ActionBar has also been extended when in overlay mode so
that it will adjust the system window insets to also account
for its space, and allow it to be hidden using the new
SYSTEM_UI_FLAG_FULLSCREEN.

Change-Id: Ic8db1adec49a0f420bfe40c1d92eb21307856d0b
iew.java
iewGroup.java
iewParent.java
iewRootImpl.java
indow.java
7687882800f49e3fc3a14f1d7540412f77d6bd4d 30-Mar-2012 Romain Guy <romainguy@google.com> Detect surface resizes

HardwareRenderer normally relies on the window manager to be notified of
surface dimension changes. It is however possible to execute a drawing pass
before receiving the window manager notification. We must therefore compare
the actual size of the target surface to the window size and perform a full
redraw when they are not the same.

Change-Id: Idccc8592f3f777edee1ef67a98a4c2a825dcfba7
ardwareRenderer.java
a3fabff98590d26f0c362cb09dc378fece66215c 28-Mar-2012 Michael Jurka <mikejurka@google.com> Add frame counter to dumpGfxInfo

Change-Id: I016f706e32cbdbce014795d8fc537b15c389dc7a
ardwareRenderer.java
indowManagerImpl.java
fa8b27c858438554fd94c014de959d8ec6b208bb 30-Mar-2012 Jeff Brown <jeffbrown@google.com> Improve responsiveness by always consuming batched events.

Change-Id: I2eb88f8fde97ce0cd820f39da4ebe8698a7db95c
iewRootImpl.java
a08f3e866a46c990e786defa95013ee0313b0887 30-Mar-2012 Jeff Brown <jeffbrown@google.com> Merge "Enable vsync traversals by default."
e32a4ac8d39b96d965acccd1d3e9ef111c4cfa37 29-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Improve FocusFinder for RTL support"
ebb2d8d708c5c58c79ae88ac2bd10450a856f702 24-Mar-2012 Jeff Brown <jeffbrown@google.com> Enable vsync traversals by default.

Improved how the various callbacks are managed and sequenced
to reduce code duplication.

Added a heuristic to avoid postponing traversals until
the next vsync frame if we did not actually do any drawing during
the previous frame. This helps in the very common case where
drawing occurs in response to input.

Change-Id: I277d9eeaf50408f8745a3cfd181db1d140770658
horeographer.java
iew.java
iewRootImpl.java
f1260aac0ea7d48794177da0078ab6e85df3f1f3 29-Mar-2012 Chet Haase <chet@google.com> Merge "Disable DisplayList properties pending fixes for AlphaAnimation"
76240dafe8654cc3b858241e76618e5b2db5451c 29-Mar-2012 Chet Haase <chet@google.com> Disable DisplayList properties pending fixes for AlphaAnimation

The new DisplayList properties design has ordering conflicts with the
way that alpha works with old animations (AlphaAnimation). This CL
disables DiksplayList properties while I'm working on a fix and some
more thorough tests for old animations-vs-DL properties in general.

Change-Id: I8f6893138f939171491c2ec3c889214ee55d17b7
iew.java
6183cd64a98a69ea247813c9ba0a07326c4bc1ae 26-Mar-2012 satok <satok@google.com> Take sentence-level spell checking APIs public

Bug: 6136149

Change-Id: I772164d9c67e95876c228efcce2356a81a06be4f
extservice/SentenceSuggestionsInfo.java
extservice/SpellCheckerSession.java
244ada1d35419b7be9de0fc833bb03955b725ffa 29-Mar-2012 Romain Guy <romainguy@google.com> Refactor GLES20Canvas/HardwareRenderer JNI layers

GLES20Canvas defined several JNI functions used only by HardwareRenderer.
Now that we have a JNI layer dedicated to HardwareRenderer we should
host the renderer related methods there.

Change-Id: I0bcb4ad0bcc1c4a37290df10c1685f2cfe5504ca
LES20Canvas.java
ardwareRenderer.java
e1302edd40c5cc264f842e17e3796e0a11d6f045 06-Feb-2012 Joe Fernandez <joefernandez@google.com> docs: Accessibility Dev Guide (subsumes Accessibility Best Practices)

Change-Id: Id7e3f647042d2afd390abe851be1c3b561af33ca
iew.java
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityEventSource.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityRecord.java
ccessibility/package.html
7e0a372978eddf21808bf7fdfe36c1baa7f77e7c 28-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Improve FocusFinder for RTL support

- fix some issues introduced in the previous CL

Change-Id: Ib679e9f66b029506c7e07e44b8fef176ad262585
ocusFinder.java
b85967b9af76e1e60f7a96603e2567a6449d2e04 26-Mar-2012 Chet Haase <chet@google.com> Re-enabling DisplayList properties

Several issues came up after DisplayList properties were enabled,
so they were disabled pending fixes. Those issues have been fixed, so
DisplayList properties are once again being enabled by default. This
CL both re-enables these properties (in View.java and DisplayListRenderer.h)
and fixes the various issues that enabling them caused the first time around.

Related issues (all currently marked as Fixed, though that was simply because
DL properties were disabled - this CL provides the real fixes now that
DL properties are enabled by default):
Issue #6198276 Text input broken
Issue #6198472 Native crash at pc 00076428 in many different apps in JRM80
Issue #6204173 Date/time picker isn't rendering all parts of UI
Issue #6203941 All Apps overscroll effect is rendered weirdly/has flickering
Issue #6200058 CAB rendering issue - not drawing items?
Issue #6198578 Front camera shows black screen after taking picture.
Issue #6232010 Layers not recreated when children change (DisplayList properties)

Change-Id: I8b5f9ec342208ecb20d3e6a60d26cf7c6112ec8b
iew.java
iewGroup.java
1fc18056eb87e86773a5863ca60623d4023795a6 27-Mar-2012 Romain Guy <romainguy@google.com> Merge "Fix constants to be unique"
c553fea6b0b8d371c22bb4011cc9555d441aab39 27-Mar-2012 Romain Guy <romainguy@google.com> Fix constants to be unique

Change-Id: Ia3736bc35c9ff7b52f0f20c274cd302bfb180fa7
isplayList.java
81e829e02e0f5fc6ec383ac795bbf693dfa3205e 27-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #6213159 FocusFinder should be able to take care of Views direction"
56485fe62882065688e70fcb1f4b5c3894ed2c87 27-Mar-2012 Romain Guy <romainguy@google.com> Merge "Use a status_t return type for GL functors"
6554943a1dd6854c0f4976900956e556767b49e1 27-Mar-2012 Romain Guy <romainguy@google.com> Use a status_t return type for GL functors

WebView needs more fine-grained control over the behavior of the
framework upon execution of the display lists. The new status_t
allows WebView to requests its functor to be re-executed directly
without causing a redraw of the entire hierarchy.

Change-Id: I97a8141dc5c6eeb6805b6024cc1e76fce07d24cc
isplayList.java
LES20Canvas.java
ardwareCanvas.java
ardwareRenderer.java
0adcd07ccb07ffde93f36c2b42096dacac98ae26 26-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Improve View layoutDirection resolution"
9b0e5991201da7cd74e09c6546d916394ad338ad 26-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix View textDirection refresh"
827d5c09fb4649eca14e87b3d00c53dec44973a6 23-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix View textDirection refresh

- the refresh was no more done correctly after the use of display lists

Change-Id: I5c74bbe565c603fe2e7fd793dd49c3b20036e04b
iew.java
83e675f5ecf9f5615f3179ac102176faa3ae2596 25-Mar-2012 satok <satok@google.com> Support UntranslatableReplacementStringInSubtypeName

Bug: 6210256

Change-Id: I54016f2dcfc6563ed3753e1d4fa1bbd2cfb9d08c
nputmethod/InputMethodSubtype.java
d4577c0c29f8e38a34d1aeac59803b37769af790 24-Mar-2012 Romain Guy <romainguy@google.com> Merge "Destroy the hardware renderer when ViewRootImpl's die is post-poned Bug #6109035"
a998dff5d49a423aaf7097aa8f96bf5bdc681d25 24-Mar-2012 Romain Guy <romainguy@google.com> Destroy the hardware renderer when ViewRootImpl's die is post-poned
Bug #6109035

ViewRootImpl.die() can be invoked in such a way that doDie() will be
executed later. On memory limited device, an eglTerminate() may happen
before doDie() is executed which leads to unstable behaviors. This
change makes sure the renderer is destroyed as soon as possible.

Change-Id: I3322410cdd744b464951e2055aeade6069d1d673
ardwareRenderer.java
extureView.java
iew.java
iewGroup.java
iewRootImpl.java
indowManagerImpl.java
702e8f9b9294d8227deae6e1f125a768ee4a28d4 24-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6213159 FocusFinder should be able to take care of Views direction

- use RTL layout direction as input to decide what to do

Change-Id: Ied825963992e5406f546a937857c5ca4101977bb
ocusFinder.java
22ab7751d47aa9d1e07e8d70706dcf30dac3aae0 24-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Improve View layoutDirection resolution

- make it similar to textDirection
- unhidde also new API: resolveLayoutDirection()

Change-Id: I43c2c2ef32ed6d1f3586781a063271b72e90b9a3
iew.java
8078d8c8a282ca81344febe7256f63b1e805e3aa 20-Mar-2012 Dianne Hackborn <hackbod@google.com> Add new thumbnail animation.

Use it for recent tasks switching.

Not perfect yet by far, but something.

Also fix issue #6186758: Twitter crashes after tapping on a tweet on JRM75D

Change-Id: I49bf6c94aafde875ac652dedaf96d6c08cc9e7d2
WindowManager.aidl
nimation/Animation.java
nimation/Transformation.java
2c4eabced0971d3b6b5e76dd925afcb0a7f59f1c 23-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Reduce memory footprint for View (part 2)"
460f457e4a432585552fa3593865b3274cf00179 23-Mar-2012 satok <satok@google.com> Merge "Re-start input when the IME is deactivated but window is focused"
4d992dbe419831550f8bd41a53a17ce7427565c2 23-Mar-2012 Romain Guy <romainguy@google.com> Merge "Don't make GLRenderer aware of GLES20Renderer"
5d6999e1ca457948e06792ea6259ffa947c9fa81 23-Mar-2012 Romain Guy <romainguy@google.com> Don't make GLRenderer aware of GLES20Renderer

Change-Id: Ic9bab34070a3046b9252f6fd576b4d40553374fc
isplayList.java
ardwareRenderer.java
b85c933d850286874005f97a9764c9b22e49a597 09-Mar-2012 Kevin Hester <khester@google.com> Do not allow Surface creation on machines without SurfaceFlinger
We will fail later anyways, but this change makes it much easier to track
down places where we are inadvertently doing operations that depend on the
flinger.

Change-Id: If38a1a10061a594dba5c220a86b32eec7b5ec901
urface.java
b934db7e3e6d4c3963d2a4a5c00cfb0c3ffbfce4 20-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Reduce memory footprint for View (part 2)

- make textDirection use private bits field
- update layoutDirection usage of private bits

Change-Id: Ib9f4da58dbb74f410fb9d3be3c26ef02579aaf1d
iew.java
ad13c81371cb0b7e49b4c33159a346ce08ac5d69 22-Mar-2012 Chet Haase <chet@google.com> Disable DisplayList properties

DisplayList properties are (again) disabled by default, via flags in
View.java and DisplayListRenderer.h. There are various artifacts to
chase down before enabling by default.

Issue #6198472 Native crash at pc 00076428 in many different apps in JRM80
Issue #6204173 Date/time picker isn't rendering all parts of UI
Issue #6203941 All Apps overscroll effect is rendered weirdly/has flickering
Issue #6200058 CAB rendering issue - not drawing items?
Issue #6198578 Front camera shows black screen after taking picture.

Change-Id: I045dc82ce1d85fedbae3bb88eb2a2dfb6891d41f
iew.java
31e4e149941e34cd135dfa0b6d918cc0b3dabbbc 22-Mar-2012 satok <satok@google.com> Re-start input when the IME is deactivated but window is focused

Bug: 6188159
Change-Id: I9189e6d2ac90aa8c621fdb44989728101e00329d
nputmethod/InputMethodManager.java
9ea77fc821918ea562ff4907945b865e39e0201a 22-Mar-2012 Jeff Brown <jeffbrown@google.com> Avoid calling into JNI if not needed.

Short-circuit a few MotionEvent JNI calls in simple cases.

Change-Id: I6c97c06b5a5fd203a423dc88f428637b9dec71ae
otionEvent.java
b6f90cf846f67fca66197cce7ac214477ebfc727 21-Mar-2012 Chet Haase <chet@google.com> Merge "Fix Animation bugs from DisplayList properties integration"
89b7f2e3be7e08fd751b348096a40ae5eb5f6a8f 21-Mar-2012 Chet Haase <chet@google.com> Fix Animation bugs from DisplayList properties integration

The new DisplayList properties functionality does not currently handle Animation
(android.view.animation) functionality, so we fall back to the previous approach
of redrawing the DisplayList when an Animation changes alpha/transform data for
a View. The DL code was not, however, correctly using that logic, so that
the Animation transform information was being ignored, or at least not set
correctly on the DisplayList during redraws.

This fix accounts for Animation changes and sets up the DisplayList correctly.

Change-Id: I9f6e0382b05d0627f4779f30e74641dedcc77f82
iew.java
006f0e41abca961bade88908d7ef56ae63c429fb 21-Mar-2012 Craig Mautner <cmautner@google.com> Override not drawing to screen when screen is off.

A new test had been added to performDraw to provide an early return if
the screen was off. Drawing should have proceeded however if
mReportNextDraw is set. Otherwise views that turn on the screen (such
as the alarm) are not shown.

Fixes bug 6168158.

Change-Id: If9013d9dbd39d60ee1de8aeb3e0c1facbc5a7db5
iewRootImpl.java
e979e62ac7313b7cffe9b131bb8a99c356068b45 20-Mar-2012 Romain Guy <romainguy@google.com> Code cleanup

Change-Id: I390e92b4a778bd9dcde6535178c1a6b204b29fe4
ardwareRenderer.java
eb0b1da78ff44a9b38f93fad06af2d397e68c756 20-Mar-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Revamp of the NumberPicker widget."
d11e6151fe88314505fa7adca6278de2e772b11c 20-Mar-2012 Svetoslav Ganov <svetoslavganov@google.com> Revamp of the NumberPicker widget.

1. The number picker no longer shows up and down arrows, it
has only three touch targets which are the currently selected number
in the middle with a lesser one above and greater below, now what
you touch is what you get, flingability and long press are still
supported.

2. Removed the restriction for a View with an AccessibilityNodeProvider
to not have any concrete children. If the View has a provider, then
this provider is responsible for creating the AccessibilityNodeInfos
for all its descendants, concrete and virtual. The number picker is
a good example for such a case - it has a concrete input view and
two virtual buttons as its children. This is a safe change since
this behavior has not been released.

3. This patch also fixes bug where the number picker is stretched too
much in the Theme theme.

bug:6177794
bug:5728294

Change-Id: I5fb370fe0b864a156f5f2aaf2de5f55f6b6d4e84
iewGroup.java
6077fc9b7f22e2eb7199167e26bccc8f97957f60 20-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Reduce memory footprint for View"
edc1e59b34c7f813ad197545b1d846e3a99a6831 16-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Reduce memory footprint for View

- make layout direction use private bit fields
- fix also some Javadoc issues

Change-Id: I977a328d671b91aa82cb275767e3575f78695508
iew.java
52c10554628079e38cde2e9b13bde5099deeca35 20-Mar-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Revert "Revamp of the NumberPicker widget.""
efd1c6777929e5a81a030fc51145cd3064d3e979 20-Mar-2012 Svetoslav Ganov <svetoslavganov@google.com> Revert "Revamp of the NumberPicker widget."

This reverts commit 912ab8506ae6409ee7fa0323b217fefaf0bd9771
iewGroup.java
ca07bc1d35aa448819bc99675e57793d37047c55 20-Mar-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Revamp of the NumberPicker widget."
00843227504528584596da305e6587450c0c5223 20-Mar-2012 Romain Guy <romainguy@google.com> Merge "Pre-scale bitmaps on the native heap"
7b2f8b8fb7064a1d3b6d942b978c30c24c9d7299 20-Mar-2012 Romain Guy <romainguy@google.com> Pre-scale bitmaps on the native heap

Change-Id: I9819b532b89a997ab775b31ffee46445f1d16e20
iewRootImpl.java
bdd896c26453ffc56831b0cd167e8780068cee53 19-Mar-2012 Chet Haase <chet@google.com> Enable DisplayList properties

This CL simply enables DisplayList property functionality. The code for
this feature is already there, but it's been disabled by default pending further
testing and analysis. This change sets these build-type flags to true
so that all hw-accelerated apps will now use DisplayList properties by default.

In particular, this feature enables a fast-path for changes that affect the
handful of View properties involved in animations (alpha, translationX, etc.).
Setting these properties now gets propagated to the native DisplayList associated
with the View, avoiding costly recreation of the SDK-level DisplayList and
also enabling faster invalidation of the view hierarchy.

Change-Id: Ic99c8f28fa9183f2e54e9e4860b333eb9c540f7c
iew.java
912ab8506ae6409ee7fa0323b217fefaf0bd9771 09-Nov-2011 Svetoslav Ganov <svetoslavganov@google.com> Revamp of the NumberPicker widget.

1. The number picker no longer shows up and down arrows, it
has only three touch targets which are the currently selected number
in the middle with a lesser one above and greater below, now what
you touch is what you get, flingability and long press are still
supported.

2. Removed the restriction for a View with an AccessibilityNodeProvider
to not have any concrete children. If the View has a provider, then
this provider is responsible for creating the AccessibilityNodeInfos
for all its descendants, concrete and virtual. The number picker is
a good example for such a case - it has a concrete input view and
two virtual buttons as its children. This is a safe change since
this behavior has not been released.

3. This patch also fixes bug where the number picker is stretched too
much in the Theme theme.

bug:6177794
bug:5728294

Change-Id: Id8c0b3549174b9599f971d6e3086ca427cfbaa39
iewGroup.java
4bf8b209955e8a35ec2e4101ed3612e03ecc5dbb 16-Mar-2012 Chet Haase <chet@google.com> Merge "Optimizing DisplayList properties"
9d1992deaeb3d60d5928f05b649a2cc654ba98a3 13-Mar-2012 Chet Haase <chet@google.com> Optimizing DisplayList properties

DisplayList properties are still disabled default (flags in View.java
and DisplayListRenderer.h). When they are enabled, and when a View has
a DisplayList, invalidations due to property changes are now optimized
to avoid causing DisplayList recreation. This eliminates the drawing step
of invalidation (due to changes in these properties), only requiring
issuing the previously-created DisplayList to the GL renderer. Invalidation
is slightly faster (less overhead as we walk up the hierarchy), getDisplayList()
is potentially much faster (going down to ~0ms), depending on the complexity
of the View being redrawn and the size of the invalidated hierarchy.

Change-Id: I57587d5b810c3595bdd72a6c52349c2a3d1bdf25
ardwareRenderer.java
iew.java
iewGroup.java
iewPropertyAnimator.java
d8a3663afc1f4db38a28f9eb93c8596c43ccb699 09-Mar-2012 Keiji Ariyama <keiji_ariyama@c-lis.co.jp> Fixes an issue that occured unexpected exception "pointerIndex out of range".

The findNewActiveIndex method may return -1.
So, the code should check case of -1 before event.getPointerId
and if index0 is -1, gesture should be ended immediately.

Change-Id: I4aae5c84e3db61d10b0bfcfa7bfa6b9115231a52
caleGestureDetector.java
51e4d4db296c252641161b39e98f49acebc46062 16-Mar-2012 Romain Guy <romainguy@google.com> Better implementation to clear display lists

Change-Id: I58f9af4bae70a8117db1455a50c0c5daf19b2f4a
isplayList.java
iew.java
iewRootImpl.java
c6e8811cb48014d541bc6f85b4b7f92643af8591 16-Mar-2012 Romain Guy <romainguy@google.com> Merge "Postpone DisplayList recycling when detached from window"
bc7616eae90002879f1d82d5e99dea7d1152b742 15-Mar-2012 Romain Guy <romainguy@google.com> Postpone DisplayList recycling when detached from window

This was causing a crash in apps that remove views during a draw pass.

Change-Id: I1c4621639fe920291b2c6fb7bfd17a69101a1329
isplayList.java
iew.java
e82a54aedc45ed2c06e62a14947d4f56c823221d 15-Mar-2012 Chet Haase <chet@google.com> Merge "Fix bug with transform Animations"
bcbec0ccd07d04597992d7ab0dede34288ba31f3 15-Mar-2012 Chet Haase <chet@google.com> Fix bug with transform Animations

A recent change to enable View properties at the native DisplayList level
mistakenly cuased Animation transforms get be ignored for any View with
a DisplayList. The correct code should have checked whether DL properties
were enabled for the view (disabled by default for now).

Issue #6173975 Animations are gone

Change-Id: I5d5f53f854fb1b533a3150158e84392d7283d2a8
iew.java
605eabf6a24ab3541de559b242147900b23706ed 14-Mar-2012 Michael Jurka <mikejurka@google.com> Merge "Fix hardware layer redraw bug"
952e02b430bb95534416ec689f08a792aca0b853 14-Mar-2012 Michael Jurka <mikejurka@google.com> Fix hardware layer redraw bug
iew.java
a1cff5043d0fbd78fcf9c48e7658e56a5b0c2de3 21-Feb-2012 Chet Haase <chet@google.com> Handle view properties at the native level

Basic functionality of handling View properties (transforms,
left/right/top/bottom, and alpha) at the native DisplayList level.
This logic is disabled for now (via compile-time flags in View.java and
DisplayListRenderer.h) as we continue work on it (there is no advantage
to the new approach until we optimize invalidation and rendering paths
to use the new code path).

Change-Id: I370c8d21fbd291be415f55515ab8dced6f6d51a3
isplayList.java
LES20DisplayList.java
ardwareLayer.java
iew.java
iewGroup.java
iewPropertyAnimator.java
25182b8af9048f7fa07d10cabe444b9bbc302344 12-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Improve View Javadoc for padding"
30a21e1bfea21ba2170e42eb187a2ec1bbbcf2c7 12-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Improve View Javadoc for padding

Change-Id: Ib7c8ee5bcde57e112ba0bb700fed9f2a135b1cdb
iew.java
a8c67eb904b7b78856ef58ef6a4ec10e6dccccb2 12-Mar-2012 Jeff Brown <jeffbrown@google.com> Merge "Add Java wrappers for new atrace functionality."
05f692e8050c3650ec123b2361143a121e2e7d4b 12-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Make Gravity RTL APIs public"
e8dc07dcdb983d5d3999b16c2a49ddee4bdb942c 10-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Make Gravity RTL APIs public

- also move unit tests to CTS
- also small improvement for View Javadoc

Change-Id: I166d5a10f4a00f1b46c90468c8b11906b438e1ea
ravity.java
iew.java
384f8bad60037855d2a43d7c661ca1b75ccd08ba 10-Mar-2012 Ken Wakasa <kwakasa@google.com> Add missing bullet points in javadoc of InputMethodManager.java

Change-Id: I2e9c04569b52705972d5a67b17d48405315dd3d3
nputmethod/InputMethodManager.java
5a5dc1c63476dc891b73ea10267511c260d8fd78 10-Mar-2012 Romain Guy <romainguy@google.com> Merge "Use the actual screen size for the max bitmap cache size."
887c2eea31a9ef2bc27186773e173e083eee7314 10-Mar-2012 Romain Guy <romainguy@google.com> Use the actual screen size for the max bitmap cache size.

Change-Id: I2177f91aea7c449c377fde6337180d15487cecef
iewConfiguration.java
559c4841a631321efc2284de9187dbaccce50550 10-Mar-2012 Ken Wakasa <kwakasa@google.com> Merge "Fix obvious typos under frameworks/base/core"
481c1570dc5cdf58265b53f657801709dd05d1df 09-Mar-2012 Jeff Brown <jeffbrown@google.com> Add Java wrappers for new atrace functionality.

Instrument a few parts of the input dispatcher and the
view hierarchy.

Change-Id: I49285c9fb3502253baa1ffed60f521b8c24fccaf
iewRootImpl.java
3162225d51c62cd6f0e89edc5fe272adbc8ddc39 10-Mar-2012 Jeff Brown <jeffbrown@google.com> Merge "Don't remove all animation callbacks if action/who was null."
43ea54bdc343a913f62885304796e4ab1bca4ef1 09-Mar-2012 Jeff Brown <jeffbrown@google.com> Don't remove all animation callbacks if action/who was null.

Fixes a bug in View.removeCallbacks and View.unscheduleDrawable
where it was possible for the caller to remove all animation
callbacks if it happened to specify an action or who parameter
of null.

Also refactored the callback queueing code in Choreographer
to make it more intent revealing although the behavior remains
the same.

Bug: 6144688
Change-Id: Iba29dcda6b3aaad73af664bb63feab65ae3483e5
horeographer.java
iew.java
2bff6407793917d69653542a73525a72a53dd6cc 09-Mar-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Adding an announcement type accessibility event and a method on View to announce."
51ab90cab1609cf0ddd2dfe5a660f020d823d4d5 09-Mar-2012 Svetoslav Ganov <svetoslavganov@google.com> Adding an announcement type accessibility event and a method on View to announce.

1. The need for sending an accessibility event to announce a context change
which does not cleanly fit into the existing UI transition UI events has
come quite a few time in application development. To avoid retrofitting
accessibility event types that do not semantically match the intent to
just announce a short message this patch is adding specialized event type.
Also a helper method on View is added to sheild developers from knowing
how to construct and send such an event.

bug:5977979

Change-Id: Iaf5f620426f8616be67fbf243a02ad5b606c949b
iew.java
ccessibility/AccessibilityEvent.java
f76a50ce8fdc6aea22cabc77b2977a1a15a79630 09-Mar-2012 Ken Wakasa <kwakasa@google.com> Fix obvious typos under frameworks/base/core

Change-Id: Ia5fc3db1bb51824e7523885553be926bcc42d736
iew.java
iewDebug.java
indowManager.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityRecord.java
extservice/SpellCheckerInfo.java
df813c03b16ed32c25a8c8fee82a7a98088ac940 09-Mar-2012 Jeff Brown <jeffbrown@google.com> Merge "Use the Choreographer for Drawable animations."
1e3d313c7802673cb5a350fdbbe458398a038fcf 09-Mar-2012 Romain Guy <romainguy@google.com> Fix the docs

Change-Id: I73bcb684eac01db870936aa5e29df930b5432833
iew.java
bb9908b828a8cfd5965553be66faa6af89973697 08-Mar-2012 Romain Guy <romainguy@google.com> Dispatch screen state change events to Views
Bug #6120957

Using this new callback, views can interrupt and resume their
animations or other periodic tasks based on the current state
of the display.

Change-Id: I398f4abd421e9c5f207107bf1009a7b92cf45daa
Window.aidl
iew.java
iewGroup.java
iewRootImpl.java
3bef5e9f3aa90465ee3ab66ef33d7a88d1b0c5c1 08-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix View padding resolution"
250069bf6bf3d7e2ef85c49e0cd100e80c3c8b7d 08-Mar-2012 Romain Guy <romainguy@google.com> Merge "Ignore draw requests when the display is off"
2428ccbbde3ca1f6643a4952a6ca881dab80ce45 08-Mar-2012 satok <satok@google.com> Fix spell checker framework

Change-Id: I281d031259dd220936832668e7a4556473ccb2ce
extservice/SpellCheckerSession.java
7ae9d5faad5816f7e567ec1ec77e78d746cf7e5c 06-Mar-2012 Jeff Brown <jeffbrown@google.com> Use the Choreographer for Drawable animations.

Change-Id: Ifcbf33434bf3c32d1900fd0b3f5bde004604ce8a
horeographer.java
iew.java
iewRootImpl.java
509708deb8d70def41be56145df07f9331f48c84 07-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix View padding resolution

- make setPadding() and setPaddingRelative() share same code

Change-Id: Iaefa82deb29d9efd6b3f88c751daf503c6b8f774
iew.java
1ce1307641c3eba06d945ed3b257ad4ce28ba56e 07-Mar-2012 Michael Jurka <mikejurka@google.com> Merge "Don't draw layers in buildLayer()"
5eb37241fee7e656cf9787bf00a160e94b4894fc 07-Mar-2012 Dianne Hackborn <hackbod@google.com> Merge "Work on more low memory reporting to apps."
27ff913d56de8400083a13fc572e2812b32c890c 06-Mar-2012 Dianne Hackborn <hackbod@google.com> Work on more low memory reporting to apps.

There are now some new trim memory levels that are sent to
non-background applications as RAM becomes low.

There is a new API for an application to retrieve information
about memory trimming and such on demand.

Fixed various checks against the memory trim level to be
robust (not compare against exact values).

Change-Id: Ifd1c6151124350168aef20a94e517166fd2e03eb
ardwareRenderer.java
indowManagerImpl.java
7e52caf6db5feef2b847cfaa3d13690257122c3a 07-Mar-2012 Michael Jurka <mikejurka@google.com> Don't draw layers in buildLayer()

Creating the layer, if necessary, takes the bulk
of the time - just do the creation, and schedule a
deferred update

Change-Id: I21399ebd5d2929a4f242ec1c08e3f97fed1ef58a
ardwareLayer.java
extureView.java
iew.java
1ecebbb27fc45f4ef503d866f2702bca565a089c 07-Mar-2012 John Reck <jreck@google.com> Fix FOCUS_BACKWARD search if view had no id

Bug: 6126875

Change-Id: I113a7125d71dc3e6cc34d31a669e844a4a882266
iew.java
1b0cc3ca65f1855012bc37b1e266d6a04db0951b 06-Mar-2012 Jeff Brown <jeffbrown@google.com> Merge "Rename remove callback methods."
97a355a9a10ce762ec56a1d02e9c04e54c2f0902 06-Mar-2012 Jeff Brown <jeffbrown@google.com> Merge "Support posting delayed animation/draw callbacks."
5bebea436e631aa77aeb0f39a34c9e830c9638f5 06-Mar-2012 Jeff Brown <jeffbrown@google.com> Rename remove callback methods.

Change-Id: Ib9ef32fedbe0db2ea5efd250693915d626d7d8ae
horeographer.java
iewRootImpl.java
2b6cb9a27e6f11fb30c9b9baaa5fc02f29f4072e 06-Mar-2012 Jeff Brown <jeffbrown@google.com> Support posting delayed animation/draw callbacks.

This is especially useful for slow animations such as blinking the
cursor, which only needs to happen after a certain amount of time
has elapsed.

Change-Id: If1163a3480078c75d6461eb8f96d8bf8b625534f
horeographer.java
faeac2737de098269a69011f4980a412559b55a9 06-Mar-2012 Jeff Brown <jeffbrown@google.com> Merge "Change widgets to post invalidate to the animation timer."
6cb7b46c56449e84434b11eb12f9b8977fcd0398 05-Mar-2012 Jeff Brown <jeffbrown@google.com> Change widgets to post invalidate to the animation timer.

Change-Id: I8377e924529fb9d8afd8a834003a17de616e8e87
extureView.java
iew.java
iewRootImpl.java
7e4e561bc717a6eea4e0d06ec4173ad27420425f 05-Mar-2012 Romain Guy <romainguy@google.com> Ignore draw requests when the display is off

When WindowManagerService's events are enabled/disabled, the state of the
display is dispatched to the known windows. This allows ViewRootImpl to
ignore draw requests until the screen is turned back on. This can potentially
lead to significant battery savings. For instance, a launcher widget showing
a repeating animation will cause the CPU and the GPU to wake up regularly
without this change.
(Change submitted by Intel and merged manually)

Change-Id: I7f93b0e60c3e6de1705f619e80860c36b1cdb978
Window.aidl
iew.java
iewRootImpl.java
21452d1adaeb20f453e8e5cac188cec1d89e01f6 05-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #6029615 Update Javadoc for onPaddingChanged()"
085585f4665aa7390a7d56ce479bed43e78bb470 05-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6029615 Update Javadoc for onPaddingChanged()

Change-Id: I5d66bc76d7084777342e66e6370bf3a52e878ba1
iew.java
fb9c41c2060497a459d16c30122e1d082895e5d1 05-Mar-2012 Romain Guy <romainguy@google.com> Merge "Deferred layer updates"
b8b36b8b78e408f8b95cbf1ec7bfd87f30e8da7b 05-Mar-2012 Scott Main <smain@google.com> am dc022a6f: am 08e91352: am 93dc642e: docs: fix misc bugs from external tracker

* commit 'dc022a6f9aa30d9282c4f82c1cc4d1c8bde7e808':
docs: fix misc bugs from external tracker
08e91352169457ac86a2465e4db867971ce14b10 05-Mar-2012 Scott Main <smain@google.com> am 93dc642e: docs: fix misc bugs from external tracker

* commit '93dc642eaf48e3db58c4929df26283fbc5fd663f':
docs: fix misc bugs from external tracker
d593f846918762bb588fdfca1003e8c6e93f577e 05-Mar-2012 Scott Main <smain@google.com> am 93dc642e: docs: fix misc bugs from external tracker

* commit '93dc642eaf48e3db58c4929df26283fbc5fd663f':
docs: fix misc bugs from external tracker
93dc642eaf48e3db58c4929df26283fbc5fd663f 24-Feb-2012 Scott Main <smain@google.com> docs: fix misc bugs from external tracker

Change-Id: I2be617be23d0ac50baabac561d510633fa9f162a
ayoutInflater.java
2bf68f063b0077ddef6ebfe54f2ae5e063c2c229 02-Mar-2012 Romain Guy <romainguy@google.com> Deferred layer updates

Change-Id: I83d9e564fe274db658dcee9e0cc5bbf9223ebb49
LES20Canvas.java
LES20RenderLayer.java
LES20TextureLayer.java
ardwareLayer.java
extureView.java
iew.java
1a7dd039f189036709bc2253ba50955913f59d7a 01-Mar-2012 Adam Powell <adamp@google.com> Unhide transient state APIs on View

Change-Id: I0f14728c94cd3461431352e6f01311934aec9858
iew.java
ec418d3eae3d10cdc1b9d71f63648ce356722a94 02-Mar-2012 Teng-Hui Zhu <ztenghui@google.com> Merge "Make sure egl context is valid for the onTrimMemory call"
dd3ef2c573396271c7c3b71e30fbd10cf66d3bc0 02-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Improve RTL APIs

- follow changed / reset pattern

Change-Id: I1c5e9b39196029bd78add2ab13b984da124822ca
iew.java
iewGroup.java
4a00ab2563d829822cf564c9a91bdc49db405b6e 02-Mar-2012 Teng-Hui Zhu <ztenghui@google.com> Make sure egl context is valid for the onTrimMemory call

It turns out that terminateHardwareResources can call into destroySurface
to make the current context 0, like in Gmail.

bug:6079959
Change-Id: I07b2f3e91d6276b6c8e1b48f72bc87d28337fe2f
indowManagerImpl.java
ac5a3a1c123ba58ed75ed7ddaf3f82eec37606c7 02-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Make layoutDirection API public"
98aec1c7efa639ac902d1200a3ac5a4a7a140129 14-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Make layoutDirection API public

Change-Id: Ie125513e4ea72b33b42355dbc43f9b9b6d46d7eb
iew.java
iewGroup.java
b22d6c11efcb6b51315821c740b47b6deff30a12 02-Mar-2012 Teng-Hui Zhu <ztenghui@google.com> Merge "Allow webview to delete GL resource in a valid EGL context"
d9624138723c55a0ac2af58a2e78e98cd51eba27 02-Mar-2012 Teng-Hui Zhu <ztenghui@google.com> Allow webview to delete GL resource in a valid EGL context

bug:6079959

Change-Id: Idee1031b0bcc4aeb498a18eb01970a8ed7efd285
indowManagerImpl.java
8a7259bdc2bd70b7d26998b1c552ab45e69cebb1 01-Mar-2012 Steve Block <steveblock@google.com> Prevent a 'TODO' from appearing in the JavaDoc

Change-Id: I3fdd46263cea413d519c56f4bd0e9d873f6fbfa6
iewGroup.java
592c85cd6c083997ee7f31ecbd52ab67942467d6 01-Mar-2012 satok <satok@google.com> Merge "Handle sentence level spell checking hidden APIs"
8898358bfdf4693af02ad454e1deb8034379ce02 30-Nov-2011 satok <satok@google.com> Handle sentence level spell checking hidden APIs

Change-Id: Ia91f1771c0b8ef458dd5b023f4c372cc36a15657
extservice/SentenceSuggestionsInfo.java
extservice/SpellCheckerSession.java
c97f9c14a5d35b9a1e89cfff996d4d997f68eb1a 29-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #5217606 LocaleUtils constants TEXT_LAYOUT_DIRECTION_LTR_DO_NOT_USE and TEXT_LAYOUT_DIRECTION_RTL_DO_NOT_USE should be renamed"
3fb824bae3322252a68c1cf8537280a5d2bd356d 29-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5217606 LocaleUtils constants TEXT_LAYOUT_DIRECTION_LTR_DO_NOT_USE and TEXT_LAYOUT_DIRECTION_RTL_DO_NOT_USE should be renamed

- replace them by the View constants

Change-Id: I7c2bf0213319247d3db369b6f7c36771fdf3e509
iew.java
1b3d01de3837b7710dfccc06af37ffaec2cf8ecf 29-Feb-2012 Gilles Debunne <debunne@google.com> Merge "InputConnection is warned when finished"
e6c118b5d049ee163df40e33df98a98aa4acebe6 29-Feb-2012 Robert Ly <robertly@google.com> am 61a9a83a: am 40226da7: am f4994b3e: Merge "fix bug 5911175" into ics-mr1

* commit '61a9a83ac09246f815806fa4f64cc65a7e876f96':
fix bug 5911175
40226da7aeb705fb823517f74739bf2f25fa86f3 29-Feb-2012 Robert Ly <robertly@google.com> am f4994b3e: Merge "fix bug 5911175" into ics-mr1

* commit 'f4994b3eb03e1e772d7d46e8b6dcfc88593db792':
fix bug 5911175
bcee3613205e7a5cee7c78f296ec9cd471b81236 29-Feb-2012 Robert Ly <robertly@google.com> am f4994b3e: Merge "fix bug 5911175" into ics-mr1

* commit 'f4994b3eb03e1e772d7d46e8b6dcfc88593db792':
fix bug 5911175
f4994b3eb03e1e772d7d46e8b6dcfc88593db792 29-Feb-2012 Robert Ly <robertly@google.com> Merge "fix bug 5911175" into ics-mr1
035a1fcd5ea3ac0080bb74101cf2793ccb9aa689 28-Feb-2012 Adam Powell <adamp@google.com> View pressed state dispatching tweaks

Bugs 6075823, 6050563

Revise pressed state dispatch logic:

Only propagate pressed state to non-clickable views. This should
eliminate the "double glow" problem in some list items where a
clickable child button has a secondary glow along with a clickable
parent. This only applies to setPressed(true) calls; setPressed(false)
must propagate. Don't early-out in setPressed to support this use
case.

Change-Id: Ibbe2309f5030282fad8d23e4a9bc4616b3f5dc7c
iew.java
iewGroup.java
765dcf32307dbd93ce43f064c426ce157be2d2ae 27-Feb-2012 Romain Guy <romainguy@google.com> Small optimization for the battery status screen

Change-Id: I2833ba4009f6c284c9ef33c45a4dd7365423fb5f
LES20Canvas.java
778f67f7c0df6db42958ae58ee622070313a5a4d 25-Feb-2012 Romain Guy <romainguy@google.com> Merge "Add hooks to implement Canvas.drawTextOnPath() in GL"
b98a81f86ab87f1d718f329f03256111fdabd8d1 24-Feb-2012 Adam Powell <adamp@google.com> Add support for optional titles in action modes

Optional titles will only be displayed in the CAB if they entirely fit
instead of ellipsizing.

Fixes bug 5821883

Change-Id: I0cfd6d4fd34a4fa9f520499d577706da30606811
ctionMode.java
325740fb444af8fc7fb0119b2e30ce322c2ae134 25-Feb-2012 Romain Guy <romainguy@google.com> Add hooks to implement Canvas.drawTextOnPath() in GL

Change-Id: I165c9e05facf5365aa6850605688e538640c7fcc
LES20Canvas.java
9d69ecbf61a4a142c3f4cbb9d5659faa6f85e832 25-Feb-2012 Gilles Debunne <debunne@google.com> InputConnection is warned when finished

As said in https://android-git.corp.google.com/g/#/c/155992
finishComposingText is indeed too broad of a method.

Introducing a new dedicated method to warn the InputConnection.

Should solve the problems with a negative counter value.

Change-Id: I5525d776916f0c42d5e6d4a4282aed590d7f0e9a
nputmethod/BaseInputConnection.java
nputmethod/InputMethodManager.java
0aec3ea6defdee1ee4a9c0d6c4a3c13df3e7b812 25-Feb-2012 Dianne Hackborn <hackbod@google.com> am 911b505f: am dc5fa185: am 133dc2d7: Merge "Fix issue #6048808: sometimes auto-correct is inactive" into ics-mr1

* commit '911b505f11c719906985f169a4f45930bdec8695':
Fix issue #6048808: sometimes auto-correct is inactive
dc5fa1859d03ecca36fc6be2fed7bbd4ba70b51f 25-Feb-2012 Dianne Hackborn <hackbod@google.com> am 133dc2d7: Merge "Fix issue #6048808: sometimes auto-correct is inactive" into ics-mr1

* commit '133dc2d7aecc68990c363c861716b134910a4ced':
Fix issue #6048808: sometimes auto-correct is inactive
37b5c7cb69d18f23132086411a011fa1703e2b25 25-Feb-2012 Dianne Hackborn <hackbod@google.com> am 133dc2d7: Merge "Fix issue #6048808: sometimes auto-correct is inactive" into ics-mr1

* commit '133dc2d7aecc68990c363c861716b134910a4ced':
Fix issue #6048808: sometimes auto-correct is inactive
7663d80f6b6fd6ca7a736c3802013a09c0abdeb9 24-Feb-2012 Dianne Hackborn <hackbod@google.com> Fix issue #6048808: sometimes auto-correct is inactive

My previous change to speed up the time the IME is dismissed was
fundamentally flawed. That change basically switched the order
the application called the input method manager service from doing
startInput() and then windowGainedFocus(), to first windowGainedFocus()
and then startInput().

The problem is that the service relies on startInput() being done
first, since this is the mechanism to set up the new input focus,
and windowGainedFocus() is just updating the IME visibility state
after that is done. However, by doing the startInput() first, that
means in the case where we are going to hide the IME we must first
wait for the IME to re-initialize editing on whatever input has
focus in the new window.

To address this, the change here tries to find a half-way point
between the two. We now do startInput() after windowGainedFocus()
only when this will result in the window being hidden.

It is not as easy as that, though, because these are calls on to
the system service from the application. So being able to do that
meant a fair amount of re-arranging of this part of the protocol
with the service. Now windowGainedFocus() is called with all of
the information also needed for startInput(), and takes care of
performing both operations. The client-side code is correspondingly
rearranged so that the guts of it where startInput() is called can
instead call the windowGainedFocus() entry if appropriate.

So... in theory this is safer than the previous change, since it
should not be impacting the behavior as much. In practice, however,
we are touching and re-arranging a lot more code, and "should" is
not a promise.

Change-Id: Icb58bef75ef4bf9979f3e2ba88cea20db2e2c3fb
nputmethod/InputMethodManager.java
00d0c14a0fe8e6dff8dd3e230ee4b61dd275f860 24-Feb-2012 Svetoslav Ganov <svetoslavganov@google.com> Regression: Cannot query the content of certain windows.

1. A bad merge on my part caused ViewRootImpl not to register
for accessibility state change.

bug:6064348

Change-Id: Idf7b8b444e9021e9d9ec3749164cfe448c8268ab
iewRootImpl.java
afd5fab3ab001e90269dfef37d87e69e0e261826 24-Feb-2012 Svetoslav Ganov <svetoslavganov@google.com> AccessibilityNodeInfos node properly cached.

1. AccessibilityNodeInfo were not cloned when cached
and obtained from the cache. This was causing a
problem when the client calls #recycle() as he
should since this results in wiping the data of
the cached node info.

bug:6026952

Change-Id: I5807b09d95ef6f310327192ff91f036adf337e33
ccessibility/AccessibilityNodeInfoCache.java
42d840b91d161fe98ebe3305f011b3b0f6d4561c 24-Feb-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Fixing issues with the AccessibilityNodeInfo cache."
57c7fd5a43237afc5e8ef31a076e862c0c16c328 24-Feb-2012 Svetoslav Ganov <svetoslavganov@google.com> Fixing issues with the AccessibilityNodeInfo cache.

1. Before there were two caches one in the app process that
kept track only the ids of infos that were given to a
querying client and one in the querying client that
holds the infos. This design requires precise sync
between the caches. Doing that is somehow complicated
since the app has cache for each window and it has
to intercept all accessibility events from that window
to manage the cache. Each app has to have a cache for
each querying client. This approach would guarantee that
no infos are fetched twice but due to its stateful nature
and the two caches is tricky to implement and adds
unnecessary complexity. Now there is only one cache in
the client and the apps are stateless. The client is
passing flags to the app that are a clue what nodes to
prefetch. This approach may occasionally fetch a node
twice but it is considerably simpler and stateless
from the app perspective - there is only one cache.
Fetching a node more than once does not cause much
overhead compared to the IPC.

Change-Id: Ia02f6fe4f82cff9a9c2e21f4a36747de0f414c6f
ccessibilityNodeInfoCache.java
iewRootImpl.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityNodeInfoCache.java
ccessibility/AccessibilityRecord.java
ccessibility/IAccessibilityInteractionConnection.aidl
cfef12374c15b11b3c2a1041582be9728152e15d 23-Feb-2012 Romain Guy <romainguy@google.com> Perform early intersect to avoid unnecessary draws

Change-Id: I48d61c4488e622f93733d8e53a50c93e6a20166d
ardwareRenderer.java
iewRootImpl.java
b7ee8e2cb427820f7ac0e7e91b40705601516e9b 23-Feb-2012 Michael Jurka <mikejurka@google.com> am 6ad5d69d: am 0a232673: am bf378fd7: Don\'t allow screen invalidations to go outside bounds of screen

* commit '6ad5d69da5cff2e4b5fb7acdb2699e2315b83307':
Don't allow screen invalidations to go outside bounds of screen
3fcf93b0371640efbb1b2d74b6f03207282299b1 23-Feb-2012 Scott Main <smain@google.com> am cb4ebcb2: am ce980d8e: am 68d97aa2: Merge "docs: fix broken link" into ics-mr1

* commit 'cb4ebcb20b8540cc8027ae03dd578ce3846e9af1':
docs: fix broken link
af88907d0e94335826bc88f20ba3dc0c92cdfafe 23-Feb-2012 Michael Jurka <mikejurka@google.com> am bf378fd7: Don\'t allow screen invalidations to go outside bounds of screen

* commit 'bf378fd7d7a91085685fe9e5528b84c485041c77':
Don't allow screen invalidations to go outside bounds of screen
0a232673370989f54e05fd2508ce90267a54abd1 23-Feb-2012 Michael Jurka <mikejurka@google.com> am bf378fd7: Don\'t allow screen invalidations to go outside bounds of screen

* commit 'bf378fd7d7a91085685fe9e5528b84c485041c77':
Don't allow screen invalidations to go outside bounds of screen
bf378fd7d7a91085685fe9e5528b84c485041c77 23-Feb-2012 Michael Jurka <mikejurka@google.com> Don't allow screen invalidations to go outside bounds of screen

Fixes invalidation issue in Launcher

Change-Id: Iab32149489aed6884e917f0ac5a548d4ae26896e
ardwareRenderer.java
c29f031598811486d83f418fd08fbfe1fc41788a 23-Feb-2012 Philip Milne <pmilne@google.com> Fix for bug 6050753.

The method:

TypedArray: getLayoutDimension(int, String)

throws an undocumented exception when either the width and/or height
attributes are undefined.

See the bug report above for reasons why this was deemed unhelpful both
in the tools area and to developers in general.

Fix by:

1. Documenting the conditions under which the method raises an exception.
2. Deprecating the method, advising callers to supply a default instead.

Additionally, redefine the:

ViewGroup: setBaseAttributes(TypedArray, int, int);

methods to provide the appropriate defaults in ViewGroup subclasses as
advised above.

For the platform layouts the default value is WRAP_CONTENT (and is
defined in the ViewGroup.LayoutParams class). The special cases
are accomodated in LayoutParams subclasses in the following cases:

Subclass width height

FrameLayout.LayoutParams: MATCH_PARENT, MATCH_PARENT
TableLayout.LayoutParams: MATCH_PARENT, WRAP_CONTENT
TableRow.LayoutParams: MATCH_PARENT, WRAP_CONTENT

Change-Id: I335a3bd8e2d7f7866692898ed73492635a5b61ea
ayoutInflater.java
iewGroup.java
2822111948d4a8c0632b1a3150051b8d27a63ee6 23-Feb-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Add check for no children in VIew hosting virtual view tree."
311a63af40e76925e21dcf273749dcab9d598ddd 23-Feb-2012 Svetoslav Ganov <svetoslavganov@google.com> Add check for no children in VIew hosting virtual view tree.

1. For accessibility purposes View may report a virtual tree
rooted at them to convey the logical structure they draw.
These are usually custom Views. Such views cannot have
children and this patch adds a check for that.

bug:6022217

Change-Id: I3795a613b4aef1a7ec5810db8584a11b648870f2
iew.java
iewGroup.java
5b10e06a3e84dcfb6e8d38d458facbdc02699040 23-Feb-2012 Scott Main <smain@google.com> am 68d97aa2: Merge "docs: fix broken link" into ics-mr1

* commit '68d97aa2c1ff16f327491fed5afb8b318f034a01':
docs: fix broken link
ce980d8ea0c4747ee23b05dfcc7c02655f595fde 23-Feb-2012 Scott Main <smain@google.com> am 68d97aa2: Merge "docs: fix broken link" into ics-mr1

* commit '68d97aa2c1ff16f327491fed5afb8b318f034a01':
docs: fix broken link
68d97aa2c1ff16f327491fed5afb8b318f034a01 23-Feb-2012 Scott Main <smain@google.com> Merge "docs: fix broken link" into ics-mr1
5c4d41ecb3282fcd5798dd848b3e4d0cb2d2eccc 22-Feb-2012 Robert Ly <robertly@google.com> fix bug 5911175

Change-Id: I528e7c30e81c85ec31a5abbd74e85cc364a8362f
nimation/Animation.java
aff90790dff94eb9a4bed541eff4f106623afd09 22-Feb-2012 Jean-Baptiste Queru <jbq@google.com> am 4280891d: Merge "The bigger touch slop still has a problem"

* commit '4280891dbc2cf60bdf51726e0aa9265ccb64ec88':
The bigger touch slop still has a problem
5160e2a197624cc5d43b1cddec2341e8dc661ef1 22-Feb-2012 John Reck <jreck@google.com> Add null parent check to startActionMode

Bug: 6012515

Change-Id: I9f684bf0fd314285c4d4933ba2a7645f10c9dc7b
iew.java
5c9b4329f335b80ee3282b7ee1f1d27292173f24 22-Feb-2012 satok <satok@google.com> Merge "Refactor sentence level spell checking APIs"
d404fe110558bd2e1960b428db6a2ee8bfd040cd 21-Feb-2012 satok <satok@google.com> Refactor sentence level spell checking APIs

Support sentence level spell checking APIs: Step 1

Change-Id: I31c0b88e7885f33a0694ab60b8f2dbceeffe42f1
extservice/SentenceSuggestionsInfo.aidl
extservice/SentenceSuggestionsInfo.java
extservice/SpellCheckerSession.java
extservice/SuggestionsInfo.java
a6cdf86518ab0351bf64de3534f4d854534baa3b 22-Feb-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Improving accessibility APIs used for UI automation."
0d04e245534cf777dfaf16dce3c51553837c14ff 21-Feb-2012 Svetoslav Ganov <svetoslavganov@google.com> Improving accessibility APIs used for UI automation.

1. UiTestAutomationBridge was accessing the root node in the
active window by tracking the accessibility event stream
and keeping the last active window changing event. Now
the bridge is stateless and the root node is fetched by
passing special window and view id with the request to
the system.

2. AccessibilityNodeInfos that are cached were not finished,
i.e. not sealed, causing exception when trying to access
their children or rpedecessors.

3. AccessibilityManagerService was not properly restoring its
state after the UI automation bridge disconnects from it.
I particular the devices was still in explore by touch mode
event if no services are enabled and the sutomation bridge
is disconnected.

4. ViewRootImpl for the focused window now fires accessibility
events when accessibility is enabled to allow accessibility
services to determine the current user location.

5. Several missing null checks in ViewRootImpl are fixed since
there were scenraios in which a NPE can occur.

6. Update the internal window content querying tests.

7. ViewRootImpl was firing one extra focus event.
bug:6009813
bug:6026952

Change-Id: Ib2e058d64538ecc268f9ef7a8f36ead047868a05
ccessibilityNodeInfoCache.java
iewRootImpl.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityNodeInfo.java
4d6f066b19f654917bbbd4650a68bea79a471270 22-Feb-2012 Adam Powell <adamp@google.com> Have View call setPressed explicitly instead of just twiddling flags.

This allows apps to override setPressed to reliably observe changes in
pressed state for custom views.

Change-Id: I59f472a9d864f4abcc4f692fef0a13f004348432
iew.java
dac640f40350608158896fa2613836600c1e2339 20-Feb-2012 Masanori Ogino <ogino.masanori@sharp.co.jp> The bigger touch slop still has a problem

I had submitted the patch about this issue at
https://android-review.googlesource.com/#/c/20438/ before. But it
has never been included in any version.

In the latest implementation, touchSlop is a configurable value
which is declared in config.xml for each device. First of all,
the problem is that BiggerTouchSlop is not scalable and variable
value according to a configured touchSlop.

I don't think that there should be a new api in ViewConfiguration
for this. Because the bigger touch slop is a local threshold value
in GestureDetector. The only thing to be satisfied is that the
value should be bigger than configured touch slop and should not
be over double touch slop.

Change-Id: I2c6662400fcffb4a7192ede4ac8da08559aa7948
estureDetector.java
e8585b1721b84798c4e7413939fd085f7a39bc0e 18-Feb-2012 Romain Guy <romainguy@google.com> Correctly offset the dirty bounds by 0.5px in every direction

The existing code was behaving differently for the leaf view and its parents.

Change-Id: I14c1ce5cc149ff840ad957408d6a41bbb4137264
iewGroup.java
539ee8716b4f81260bab2e9f3dc5d88d81c99985 04-Feb-2012 Adam Powell <adamp@google.com> Add transient state tracking to Views

Transient state is temporary bookkeeping that Views need to perform
that the app should not need to be aware of. Examples include text
selection regions and animation state.

Transient state is a problem for AdapterViews like ListView that do
view recycling. Unless the app takes responsibility for tracking and
restoring transient state as if it were a part of the adapter's data
set, it cannot correctly recycle views. Selections disappear when an
EditText is scrolled out of sight and animations seem to play on the
wrong views.

Views can now flag themselves as having transient state. (As the name
implies, this should be a temporary condition.) If a ViewGroup
contains a child with transient state, that ViewGroup also has
transient state.

AbsListView's recycler now tracks views with transient state
separately. Views with transient state will be retained, and until a
data set change occurs the same view will be reused for that position
instead of calling the adapter's getView() method.

The API to set and check transient state is currently hidden.

Change-Id: Idfd8eaac2c548337686d8d9f98fda4c64be5b8a0
iew.java
iewGroup.java
iewParent.java
iewRootImpl.java
6917e6550d2dc11ad3b794be08cc9caa53970d32 18-Feb-2012 Romain Guy <romainguy@google.com> Merge "Record possible clip rejects when recording display lists"
ef0314b2c693c6cfa34680a784210dfb540fe36c 17-Feb-2012 Scott Main <smain@google.com> docs: fix broken link

Change-Id: I13e29ec18bb503ea33ee59d187f588c5be8fd109
ctionMode.java
33f6beb10f98e8ba96250e284876d607055d278d 17-Feb-2012 Romain Guy <romainguy@google.com> Record possible clip rejects when recording display lists

This optimization allows us to quickly skip operations that lie
entirely outside of the known bounds of a display list. Because
of ViewGroup.setClipChildren, we must keep the operations recorded
in the display list. setClipChildren(false) is however a very
uncommon operation and we will therefore often benefit from this
new optimization.

Change-Id: I0942c864e55298e6dccd9977d15adefbce3ba3ad
isplayList.java
LES20Canvas.java
LES20RecordingCanvas.java
ardwareCanvas.java
ardwareRenderer.java
iew.java
iewGroup.java
2bf372888c681f172991d0077faa11bb955b97c2 17-Feb-2012 Jeff Brown <jeffbrown@google.com> Merge "Mark input and sensor messages as asynchronous."
50eb3b9bf9bf0b014ad19066951b6c1dffd4e3f3 17-Feb-2012 Jeff Brown <jeffbrown@google.com> Merge "Encapsulate the ViewRootImpl's handler."
101d5aade4a280a4c553e3ef3aa24faf388a207f 17-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix #5050417 Update View class Javadoc for padding start / end

Change-Id: Iec9533616d94e4a738378bafeb1867dd74e53127
iew.java
e0dbd002750856e55d637e883b629e09adfc8a4e 16-Feb-2012 Jeff Brown <jeffbrown@google.com> Mark input and sensor messages as asynchronous.

Set a barrier on traversals.

Vsync is still not enabled by default in this patch so there
should be no observable effect from these changes.

Change-Id: Ie12081b95a8f1e81ed686edf747cc62f2e044b7e
horeographer.java
iewRootImpl.java
nputmethod/BaseInputConnection.java
30e2fbe0d2565952928feaf9d3d9194340113af4 17-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Improve textDirection APIs"
add3239ffbf5c2c6e453e19e7d91ff935cd73f0c 17-Feb-2012 Romain Guy <romainguy@google.com> Merge "Ensure we always reset graphics modifiers Bug #6025838"
445c83c7755fae179cf3328e89307e2775e97a5e 17-Feb-2012 Romain Guy <romainguy@google.com> Ensure we always reset graphics modifiers
Bug #6025838

If a modifier is setup and not reset crashes can occur.

Change-Id: I715524fb46928f1f06499cc1402499ef59f4a050
LES20Canvas.java
6d3d5057b445069e73fd06adbc11fa412e7c48c3 16-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Improve textDirection APIs

Change-Id: I8bff30f5adb0ab4077145d83ac4a716e04f289ac
iew.java
iewGroup.java
069bbe79fbb35b7cc09048118cf42a929be0ed31 17-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix Javadoc for View

Change-Id: Iccae458320273253637017c6f32329150bae479e
iew.java
a3b5f6c29b44d6409e44317c6469a119ba547608 16-Feb-2012 Dianne Hackborn <hackbod@google.com> am 804aa297: am 01810bbb: am 06a591cd: Fix last change -- don\'t call startInputInner() with lock held.

* commit '804aa297950949985882e4841303cd6e12fae06e':
Fix last change -- don't call startInputInner() with lock held.
700327e115fad12cb8ebb1d801e65acfe128edf1 16-Feb-2012 Dianne Hackborn <hackbod@google.com> am 06a591cd: Fix last change -- don\'t call startInputInner() with lock held.

* commit '06a591cdd6d90600db006906d5d1524d156d6529':
Fix last change -- don't call startInputInner() with lock held.
23677064730117feefff3d477ecf5f93baf28704 16-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Add View.onResolvePadding() as a public API"
06a591cdd6d90600db006906d5d1524d156d6529 16-Feb-2012 Dianne Hackborn <hackbod@google.com> Fix last change -- don't call startInputInner() with lock held.

Change-Id: Ie7a145c5a07f08ae8a3f5954a1c389bfbd946b69
nputmethod/InputMethodManager.java
9d7b99976f1571cf398808038abc1d69fb897967 16-Feb-2012 Justin Ho <justinho@google.com> am 09170888: am cc1bd4bb: am c470b2dd: Merge "Part of fixing issue #6006757: Keyboard dismissal lags" into ics-mr1

* commit '09170888cbc501cd9819b1caccc99592bc6dd73f':
Part of fixing issue #6006757: Keyboard dismissal lags
3c522fdcd2d837c8bb3d7e2c20a9468ad1a636c1 16-Feb-2012 Justin Ho <justinho@google.com> am c470b2dd: Merge "Part of fixing issue #6006757: Keyboard dismissal lags" into ics-mr1

* commit 'c470b2dd49ae2c4894de22f7bdd9f91af1a085f8':
Part of fixing issue #6006757: Keyboard dismissal lags
a175a5b7ea3682cb58cca7f9726d0b8171cd549d 16-Feb-2012 Jeff Brown <jeffbrown@google.com> Encapsulate the ViewRootImpl's handler.

This change makes it much easier to make sense of the messages that
get posted to the ViewRootImpl's handler by encapsulating their point
of dispatch within the ViewRootImpl itself.

As part of this change, the View.AttachInfo now carries a reference
to the ViewRootImpl itself, which simplifies some code that used
to try to find the ViewRootImpl by getting the root view's parent.

In principle, it might have been nice to hide the ViewRootImpl from
the View hierarchy but in practice the two were coupled in many ways.

Change-Id: I51ebccdf5f8c8c505cd6f17cdf594174d041dc54
urfaceView.java
iew.java
iewDebug.java
iewRootImpl.java
nputmethod/BaseInputConnection.java
nputmethod/InputMethodManager.java
a82ba54b0bbc3ff41f29db3998806cb45b261d58 16-Feb-2012 Dianne Hackborn <hackbod@google.com> Part of fixing issue #6006757: Keyboard dismissal lags

This adjust various paths through InputMethodManager so that the flow
in switching focus from one application to another is cleaner, resulting
in less work being done, resulting in it being able to happen quicker.

Some of the changes here avoid doing stuff when not needed, such as when
we are told to unbind but are not currently the active input. A big part
is also a change to the flow when a window receives input. Previously
this would first do a checkFocus() which would tell the input method to
switch focus to whatever view has focus in the window, followed by the
windowGainedFocus() call telling it the window had gained focus. This
would result in extra work because the input method service would first
handle the focus switch, seeing the IME is currently displayed, so the IME
would remain up and reset its focus to the new view. The app would
immediately then tell it about the window, causing the service to find out
the IME should be hidden and telling the IME, but the IME couldn't hide
itself until it had first take care of switching its input.

There is the definite potential of this breaking IME showing/hiding in
cases depending on the order things may be relying on them to happen. I
haven't seen any problems with a brief trip through the UI.

Change-Id: I8494cbd6e19e2ab6db03f2463d9906680dda058b
nputmethod/InputMethodManager.java
f7280ccbfe6d71686a4e609ee7628f84e514a32d 16-Feb-2012 Romain Guy <romainguy@google.com> Merge "Add a compile time condition to remove unnecessary code"
fe455af277183f910eb74653a3ad172c717e7abf 16-Feb-2012 Romain Guy <romainguy@google.com> Add a compile time condition to remove unnecessary code

Change-Id: Ia44916af8e22e548fbb62cb2b53da285d5959102
iew.java
iewGroup.java
ccb1562e90d955416b9096d802464e37925486ef 16-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Add View.onResolvePadding() as a public API

- following a comment from Dianne on this CL:

Change-Id: Ifa11d6ac423f205d0684297d25885eac1a89f279
https://android-git.corp.google.com/g/#/c/123009/1
iew.java
57ff581bd9b16a192a567f84d0e0a5c82d866343 16-Feb-2012 Jeff Brown <jeffbrown@google.com> Merge "Keep the display event receiver around forever."
1654d0b8d9ba477a0134338838b6e5921f1aabb8 16-Feb-2012 Jeff Brown <jeffbrown@google.com> Keep the display event receiver around forever.

There is really no point disposing the display event receiver
anymore. Moreover, it's hard to choose a good time to do it
since the Choreographer only supports one-shot callbacks now.

So let's made the code simpler.

Bug: 5721047
Change-Id: I8533a54e93a787e0ca30d99a1f1eea85534b13b9
horeographer.java
c4c0a22ae982af65a16ef93d0cd3bc72149e9bfa 16-Feb-2012 Jeff Brown <jeffbrown@google.com> Merge "Simplify Choreographer API."
4a06c8008b2edd6677f9a411af79b0a4971b87fe 16-Feb-2012 Jeff Brown <jeffbrown@google.com> Simplify Choreographer API.

Removed the listeners and schedule animation / draw methods.
Instead all requests are posted as one-shot callbacks, which is a
better match for how clients actually use the Choreographer.

Bug: 5721047
Change-Id: I113180b2713a300e4444d0d987f52b8157b7ac15
horeographer.java
iewRootImpl.java
54546f22fbec63f8c12e56fa7109706a1bbc4e7b 15-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Make MarginLayoutParams startMargin and endMargin API public

Change-Id: I519f8ede818b068883ee1565d28e188298af9f0e
iewGroup.java
2c884826b23e5c8cd3c9497a781c631927b74819 15-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Make View paddingStart and paddingEnd API public

Change-Id: I39fd987c866e8bfadbaa9a29c0e38b3b7ce03f7e
iew.java
cb1abb15a7f98a90fedb9bcce081d4a617ed82f8 15-Feb-2012 Romain Guy <romainguy@google.com> Merge "Make it easier to enable dirty regions debugging"
b04f7e9438e8f73081f9be3fda166098042263a5 15-Feb-2012 Romain Guy <romainguy@google.com> Make it easier to enable dirty regions debugging

adb shell setprop hwui.debug_dirty_regions true

Change-Id: Ifd269c443f5257b1e9c4ea987b134dcf6231106c
ardwareRenderer.java
fef3d62b16bccd9ef7a32c2e1da94f694b34c405 15-Feb-2012 Jeff Brown <jeffbrown@google.com> Merge "Add support for posting Runnables to the Choreographer."
968588573cf516fd8cf33c133d06f06c67ca1785 14-Feb-2012 Jeff Brown <jeffbrown@google.com> Add support for posting Runnables to the Choreographer.

Also clean up the Choreographer so that it doesn't directly extend
Handler and so that it doesn't schedule animation or drawing unless
there are listeners or callbacks attached.

Bug: 5721047
Change-Id: I35350c8d41d4fa3f8c8c7bc43edd82e581b55a68
horeographer.java
b36a0ac9709e9e1c7098559c0435cfbdc09e6c46 15-Feb-2012 Svetoslav Ganov <svetoslavganov@google.com> Incorrect behavior of View clear focus v2.0.

The framework tries to have a focused view all the time. For
that purpose when a view's focus is cleared the focus is given
to the first focusable found from the top. The implementation
of this behavior was causing the following issues:

1. If the fist focusable View tries to clear its focus it
was getting focus but the onFocusChange callbacks were not
properly invoked. Specifically, the onFocusChange for
gaining focus was called first and then the same
callback for clearing focus. Note that the callback
for clearing focus is called when the View is already
focused.

2. If not the first focusable View tries to clear focus,
the focus is given to another one but the callback
for getting focus was called before the one for clearing,
so client code may be mislead that there is more than
one focused view at a time.

3. (Nit) The implementaion of clearFocus and unFocus in ViewGroup
was calling the super implementaion when there is a
focused child. Since there could be only one focused View,
having a focused child means that the group is not focused
and the call to the super implementation is not needed.

4. Added unit tests that verify the correct behavior, i.e.
the focus of the first focused view cannot be cleared
which means that no focus change callbacks are invoked.
The callbacks should be called in expected order.
Now the view focus clear precedes the view focus gain
callback. However, in between is invoked the global
focus change callback with the correct values. We may
want to call that one after the View callbacks. If
needed we can revisit this.

Change-Id: I8cfb141c948141703093cf6fa2037be60861cee0
iew.java
iewGroup.java
iewRootImpl.java
dd29f8c4e3db3338bc055302145c3bc51a27566f 15-Feb-2012 Amith Yamasani <yamasani@google.com> Merge "Revert "Incorrect behavior of View clear focus.""
73eb97f628b298c7bd032aa9db11dadf05f5b539 15-Feb-2012 Amith Yamasani <yamasani@google.com> Revert "Incorrect behavior of View clear focus."

This reverts commit c6fd88e213703a581fe4680259981f09ae0444f2
iew.java
iewGroup.java
iewRootImpl.java
d7c845c39a5585bd23952639d1a03f2fa603a0f1 14-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Make textDirection API public"
bcca79acb1ed31238a80079930bc69f8b9d8cceb 14-Feb-2012 Chet Haase <chet@google.com> Refactor animation code in new Draw() method into its own method.

Ongoing cleanup of View drawing code, continuation of drawChild() refactoring.

Change-Id: I6d7383bb858d39ced6917d559defe7713e53de38
iew.java
iewGroup.java
4212d3fc736712d6e5fb69d5067ce8d9a83806ef 14-Feb-2012 Chet Haase <chet@google.com> Merge "Refactor ViewGroup.drawChild() into View.draw()"
a9daa164a58fc70d08702787e69a56212f5ad8c9 14-Feb-2012 Jeff Brown <jeffbrown@google.com> Merge "Fix possible races in vsync infrastructure."
58aedbc9bea13415e2d42cf7c9fe8a7efd243e66 14-Feb-2012 Jeff Brown <jeffbrown@google.com> Fix possible races in vsync infrastructure.

Applications sometimes crashed on exit due to the display event
receiver pipe apparently being closed while still a member of the
Looper's epoll fd set.

This patch fixes a few different possible races related to
the display event receiver lifecycle.

1. The receiver used to play a little dance with the Looper,
registering and unregistering its callback after each vsync
request. This code was a holdover from a time before the
surface flinger supported one-shot vsync requests, so we can
get rid of it and make things a lot simpler.

2. When the Choreographer is being accessed from outside the UI
thread, it needs to take great care that it does not touch
the display event receiver. Bad things could happen if the receiver
is handling a vsync event on the Looper and the receiver is
disposed concurrently.

3. It was possible for the Choreographer to attempt to dispose
the receiver while handling a vsync message. Now we defer disposing
the receiver for a little while, which is also nice because we
may be able to avoid disposing the receiver altogether if we find
that we need it again a little while later.

Bug: 5974105
Change-Id: I77a158f51b0b689af34d07aee4245b969e6260d6
horeographer.java
isplayEventReceiver.java
ccdc6a6accdc898ade946b6aada6f15f45192b98 14-Feb-2012 Romain Guy <romainguy@google.com> Merge "New debugging tool in adb shell dumpsys gfxinfo"
a676ad7e34c9afbaafaeca8c3fe96e95c518828e 14-Feb-2012 Romain Guy <romainguy@google.com> New debugging tool in adb shell dumpsys gfxinfo

This tool lets you visualize the time it took, in ms, to:
- Build display lists ("Draw" phase)
- Process display lists ("Process" phase)
- Swap GL buffers ("Execute" phase)

To use this tool:
- adb shell setprop hwui.profile true
- adb shell dumpsys gfxinfo <process name>
- Copy the profile data and paste it in a spreadsheet
- Generate a graph (stacked graph) and enjoy

Change-Id: I7840c0ea0f153550425aa798e3ada2f357688cf5
ardwareRenderer.java
indowManagerImpl.java
e7beae3f4c9c170c7c6c42cf9b572f0ee1ec9c81 14-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Make textDirection API public

Change-Id: I2d5a0e3a990b9a5b78a3bbc8df7f655702743e4b
iew.java
64a48c1d3daca9e0565f2aa4d56f6e94ea073d9b 14-Feb-2012 Chet Haase <chet@google.com> Refactor ViewGroup.drawChild() into View.draw()

Some of the ongoing and upcoming jank work involves having
Views optimize their rendering. For example, it would be more
efficient for native display lists to be able to redraw themselves with
updated transform/alpha properties than it would be to do it the
way we do now, which causes view hierarchy invalidation and display
list recreation.

In order to do this, we need to push more intelligence for view
rendering into the Views themselves, rather than the complicated
mechanism we have now of ViewGroup handling some View properties
(transforms and alpha) and the Views handling the rest of their
rendering.

The first step toward this is to take the current drawChild() method
and push it into a new, package-private method in View that does the
same thing.

Future checkins will refactor the code further, simplifying it and
eventually optimizing around view property changes.

Change-Id: Id44b94536fc3ff80b474db7ef06862f4f51eedce
iew.java
iewGroup.java
d7dd89095ff2041f0793317c4ee8e8be49388148 27-Jan-2012 Philip Milne <pmilne@google.com> New hooks to allow layouts to improve their performance by doing more caching

This change allows layouts to be notified of changes to LayoutParameters that have occurred
between layout operations.

If an assignment is made to the fields of LayoutParams instances that are already in use,
cachced data may become inconsistent with the new values. For complex layouts, like
GridLayout, in which the layout parameters define the structure of the layout, caching
could have caused ArrayOutOfBoundsException to be raised without this change. This case is
rare in normal code as initialisation is typically performed once. Its nevertheless possible
and much more likely in environments like design tools where layout parametrs may be being
edited on the fly.

Prevent errors as follows (belt and braces):

1. Change javadoc to request that changes to the fields of LayoutParams be accompanied with
a call to View.setLayoutParams(). (This calls requestLayout() which was what the previous
javadoc advised.) Provide a (for now, private) hook for layouts with caches to receive notification
of such calls so they can invalidate any relevant internal state.

2. For GridLayout, we cannot clone layout parameters as traditional Java grids do without retaining
two complete copies because of the public getLayoutParameters() method on View. Retaining two
copies is wasteful on constrainted devices. Instead, we keep just one copy and compute a hashCode
for the critical fields of a GridLayout's layoutParams. The hashChode is checked it prior to all
layout operations; clearing the cache and logging a warning when changes are detected, so that
developers can fix their code to provide the call to setLayoutParams() as above.

Change-Id: I819ea65ec0ab82202e2f94fd5cd3ae2723c1a9a0
iew.java
iewGroup.java
072ec96a4900d4616574733646ee46311cb5d2cb 07-Feb-2012 Jeff Brown <jeffbrown@google.com> Implement batching of input events on the consumer side.

To support this feature, the input dispatcher now allows input
events to be acknowledged out-of-order. As a result, the
consumer can choose to defer handling an input event from one
device (because it is building a big batch) while continuing
to handle input events from other devices.

The InputEventReceiver now sends a notification when a batch
is pending. The ViewRoot handles this notification by scheduling
a draw on the next sync. When the draw happens, the InputEventReceiver
is instructed to consume all pending batched input events, the
input event queue is fully processed (as much as possible),
and then the ViewRoot performs traversals as usual.

With these changes in place, the input dispatch latency is
consistently less than one frame as long as the application itself
isn't stalled. Input events are delivered to the application
as soon as possible and are handled as soon as possible. In practice,
it is no longer possible for an application to build up a huge
backlog of touch events.

This is part of a series of changes to improve input system pipelining.

Bug: 5963420

Change-Id: I42c01117eca78f12d66d49a736c1c122346ccd1d
nputEventReceiver.java
iewRootImpl.java
d4762334f103055b3aa59d97d027ace7c5950b6e 13-Feb-2012 Jeff Brown <jeffbrown@google.com> Merge "Process input events immediately when received."
ce952c8e13c535bedde77bcdb94dfcc7508475aa 14-Nov-2011 Mike Lockwood <lockwood@android.com> AudioManager: Add support for master mute

Signed-off-by: Mike Lockwood <lockwood@android.com>
olumePanel.java
4767690f09ea3447b8c5c32fb28d27650aa18e00 08-Nov-2011 Mike Lockwood <lockwood@android.com> AudioManager: transparently convert volume settings for other streams to master volume if config_useMasterVolume is set.

This allows Music2 and other media apps to control master volume without changing their code

Bug: 5567694

Signed-off-by: Mike Lockwood <lockwood@android.com>
olumePanel.java
8dc1dabd254249b7ddb8743e88fdb96580ffc585 27-Oct-2011 Mike Lockwood <lockwood@android.com> VolumePanel: Add support for master volume

Signed-off-by: Mike Lockwood <lockwood@android.com>
olumePanel.java
59d46b06653b5f55c2f26d3ff8d642ffda0cecd8 10-Feb-2012 satok <satok@google.com> Merge "Add an api to switch to the next IME and subtype"
688bd47fccf1a1373e6287bc49b5b33fad12b7f3 09-Feb-2012 satok <satok@google.com> Add an api to switch to the next IME and subtype

Bug: 5975302

Change-Id: I48aa4220159c65f456d61a324efcdf0a1ceec91c
nputmethod/InputMethodManager.java
bc52cce276b6238e8f30f71a0dcf24209481261e 08-Feb-2012 Romain Guy <romainguy@google.com> Better error message when drawing with recycled bitmaps

Change-Id: Ie8332261c4376f270ea630d775210198c0196447
LES20Canvas.java
f9261d20b3773f9785d98f32f62ccfedefba8083 03-Feb-2012 Jeff Brown <jeffbrown@google.com> Process input events immediately when received.

Reduce the latency for handling input events by ensuring that they are
handled as soon as they are received from the dispatcher. This also
makes it easier for the input system to intelligently batch motion events.

This is part of a series of changes to improve input system pipelining.

Bug: 5963420
Change-Id: I0b3f6cbb3de5ac3c4eed35dfc774d6bd4a0b07fc
iewRootImpl.java
68c02e25e84e9814d313b43680631b98e25fa6d5 08-Feb-2012 Romain Guy <romainguy@google.com> Merge "Preliminary support for clipRect(Rect, Op)"
967e2bf3ac8943a8e8a374bf86021915445cda67 08-Feb-2012 Romain Guy <romainguy@google.com> Preliminary support for clipRect(Rect, Op)

This adds basic support for clip regions. It is currently disabled at compile
time. Enabling clip regions will require setting up a stencil buffer.

Change-Id: I638616a972276e38737f8ac0633692c3845eaa74
iew.java
61ac6bb250494db602b485491a493b64776eaf3b 03-Feb-2012 Craig Mautner <cmautner@google.com> Extract code from performLayoutAndPlaceSurfacesInnerLocked() into multiple methods.

Change-Id: I80152c38741ce73b92da9483cfed84efbac34f89
indowManagerPolicy.java
f492b43f45cf9eab2e11067ea5462f171b100504 04-Feb-2012 Chet Haase <chet@google.com> Merge "Make the TimeAnimator class public."
a33de55404eb2133d1bae2add3f6e8708459f56d 04-Feb-2012 Chet Haase <chet@google.com> Make the TimeAnimator class public.

This class has existed since ICS, but was hidden. This change
just makes it public API.
Also, cleaned up some internal javadocs.

Change-Id: Id69408446ced183e01d2b065a67397eb305d9665
iew.java
87d0b03f1f16590ff261ae30441e838ae5446e84 03-Feb-2012 Jeff Brown <jeffbrown@google.com> Make the Choreographer thread-safe.

Change-Id: Ieb52cf3b8086e7cf743b45a8b92d4bd5957f43ee
horeographer.java
a553113a1f88e112b0999c12c7c2e8d724ed7fa8 02-Feb-2012 Chet Haase <chet@google.com> Fix bug in LayoutTransition that caused views to stay invisible

LayoutTransition side-effects the alpha property on View to fade views
in and out. This works fine if the layout transition is always used on
those views' container. But if you fade out a disappearing view and then
set the transition to null on the container and set that view to VISIBLE,
there is no transition logic to restore the alpha value to 1 (opaque).

The fix is to always restore alpha to its pre-animation value when fading
the view out.

Also, added extra info to alpha and the various View transform properties
to help hierarchyviewer debugging.

Issue #5958434: LayoutTransition temporary disablement may leave some views invisible

Change-Id: I3c21b0e7334dc29c10c5e372b589f0e2b59c2883
iew.java
659793bcd0e0d08306d841f3836a891e56e4e756 02-Feb-2012 Chet Haase <chet@google.com> Merge "Add Developer Option setting for Animator scaling."
306eed22e58381bbd694e3a297adc2313cc50c85 02-Feb-2012 Dianne Hackborn <hackbod@google.com> Merge "Use Choreographer for window manager animation timing."
c38fa1f63674971f9ac6ced1a449fb81026b62f7 02-Feb-2012 Chet Haase <chet@google.com> Add Developer Option setting for Animator scaling.

This new setting allows users to set a scale factor for the
duration and startDelay of all Animator-based animations. This
setting is very similar to the Transition animation scale and
Window animation scale settings, except this one applies specifically
to Animator animations. The property is only accessible by users
through the Settings UI, not programmatically. The value applies
system-wide and is picked up per-process at the time of the first
ValueAnimator construction.

This is an update to a previous CL; this approach uses the WindowManager
to store the animator scale settings, instead of SystemProperties.

Change-Id: I8295fab060aa6d597ae507ded8f9c9d6077be966
iewRootImpl.java
4e921197e26b64a6fdc0ab896922b72d8565b427 02-Feb-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Update the comment for View#clearFocus"
13fd561848ec43573d4cfeec899b4d308841c251 02-Feb-2012 Svetoslav Ganov <svetoslavganov@google.com> Update the comment for View#clearFocus

Change-Id: I779f94e88821574c74e5e76d99ae555a47042c12
iew.java
bbf1bc8b6c3348265930ce08506efbbd3c5ab61f 02-Feb-2012 Romain Guy <romainguy@google.com> Merge "Add optional metadata to initiliaze the render threat."
211370fd943cf26905001b38b8b1791851b26adc 02-Feb-2012 Romain Guy <romainguy@google.com> Add optional metadata to initiliaze the render threat.

The render threat is likely to break your application if you initiate it.
As such it must be explicitely requested using the following meta-data
tag in your manifest's application tag:

<meta-data android:name="android.graphics.renderThread" android:value="true" />

Change-Id: Ibf0a48af2a0d091562bf6907eac970e3d1d601c4
iewRootImpl.java
indowManagerImpl.java
8bcd54b98ad5d98d47364ff14e06910deadf9302 01-Feb-2012 Dianne Hackborn <hackbod@google.com> Use Choreographer for window manager animation timing.

Change-Id: Ic34aff698c63d383ecd06af7da9957475683a1db
horeographer.java
2eecea3b48ece6f45b30fef9b41dc20075ccc94f 01-Feb-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Speedup the accessibility window querying APIs and clean up."
0f4dc8f7d762f3ceab91e7b3a24bcb88989c7190 01-Feb-2012 Scott Main <smain@google.com> am 414cc6cf: am 9af875ec: am 5e095939: docs: update menu guide with CAB and popup menu, plus many other revisions

* commit '414cc6cfcdb6d766d095f0af1da76e7da946af84':
docs: update menu guide with CAB and popup menu, plus many other revisions
3cc4ee6c2915aa741353c73190ec98569077acfe 01-Feb-2012 Scott Main <smain@google.com> am 5e095939: docs: update menu guide with CAB and popup menu, plus many other revisions

* commit '5e0959393426371dadef2c7905d5c915a1ac2dd4':
docs: update menu guide with CAB and popup menu, plus many other revisions
5e0959393426371dadef2c7905d5c915a1ac2dd4 16-Dec-2011 Scott Main <smain@google.com> docs: update menu guide with CAB and popup menu, plus many other revisions

Change-Id: I5faedd5f5b812ca58eb2085b0c036570de861f15
ctionMode.java
c1ca665827f0c34419a55c005254c1aaa0d58b40 31-Jan-2012 Chet Haase <chet@google.com> Add new ViewPropertyAnimator utility methods

Users have requested the ability to sequence ViewPropertyAnimator
animations. it is not possible with AnimatorSet, which only takes objects
of type Animator (which VPA does not extend). But the AnimatorSet model
is not appropriate for VPA anyway, since it is not possible to set up
a VPA ahead of time to start later; it's just not the way that VPA is
intended to work.

Instead, there are now two new methods on VPA, onStart() and onEnd(). These
methods take a Runnable which is executed when the animation starts or ends.
These methods should allow other VPAs or other arbitrary code to execute at the
start or finish of any particular VPA animation, allowing simple sequencing
without the overhead of creating listeners and monitoring the cancelation status
of the VPA.

Additionally, this change adds a new method withLayer() which sets a hardware
layer on the VPA's target view for the duration of the animation. This
was already possible, but required writing boilerplate code to create a listener
and override the start/end methods to add and remove the layer. This utility method
makes this common use case much simpler and less error-prone.

Change-Id: I819978517e17c647ffb7028063cd0adde68ff691
iewPropertyAnimator.java
1e56fff3b90946b342ddabf68648dc3551ce47db 31-Jan-2012 Romain Guy <romainguy@google.com> Merge "Add debug markers to OpenGLRenderer"
13631f3da855f200a151e7837ed9f6b079622b58 31-Jan-2012 Romain Guy <romainguy@google.com> Add debug markers to OpenGLRenderer

These markers will be used to group the GL commands by View in the
OpenGL ES debugging tool. This will help correlate individual GL
calls to higher level components like Views.

Change-Id: I73607ba2e7224a80ac32527968261ee008f049c6
LES20Canvas.java
LES20DisplayList.java
ardwareRenderer.java
iew.java
12df3cf156885a421beccfa6b6e20fd1a188847a 31-Jan-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Incorrect behavior of View clear focus."
530041d3191ce817832a0108514617768e43cda6 26-Jan-2012 Romain Guy <romainguy@google.com> Add stencil buffer to the EGL config

Change-Id: If76c0cd6127534d90f9526b75c0f8e56259c6722
LES20Canvas.java
ardwareRenderer.java
0d29936ec3b5545a415e8d032150ea987aab36e3 26-Jan-2012 Chet Haase <chet@google.com> Fix bug in LayoutTransition for INVISIBLE views

When a view is becoming VISIBLE or INVISIBLE in a container with a
LayoutTransition, animations run to fade the view in and out and also
to run 'changing' animations on the view's other siblings. This logic
also cancels any running 'changin' animations to account for new ones
running.

However, in the specific case of INVISIBLE changes, there will be no
layout changes in the container - layout has already accounted for that
view (unlike in the case of GONE views); the visibility is just a matter of
drawing the view (or not). Therefore, we're canceling 'changing' animations
that should continue running and not replacing them with any other animations,
since new animations would only be started on layout chnages which are not
forthcoming.

One artifact seen from this bug is that the navigation bar buttons sometimes
disappear when changing orientation. This is because the menu button may
toggle between VISIBLE and INVISIBLE, causing animations on the other
buttons to get canceled, which leaves those views in a completely wrong
state.

The right thing to do is to avoid canceling in-process 'changing' animations
and to skip the logic of setting up new 'changing' animations which won't fire
anyway.

There is some minor API work in here because we did not previously have the
necessary information in LayoutTransition to know whether a view was being
hidden or shown to/from the INVISIBLE state.

Issue #5911213: LayoutTransitions ending in an odd state

Change-Id: I5c60c8583c8ea08965727b4ef17b550c40a3882c
iew.java
iewGroup.java
53f2d55740c50507797475a2f7186421c0ada2d1 19-Dec-2011 Chet Haase <chet@google.com> Fix old issue with compatibility-scaled apps and Animations

Previously, we'd pass in a scale factor (based on whether the app was
being scaled by the compatibility mode) to Animation.getTransformation().
This scales the pivot point of the animation based on thes cale factor.
However, the pivot points were already using information that took the
compatibility mode scale into account. For example, using ABSOLUTE and basing
pixel values on the width/height of the view would give you values relative to the
width/height of the view (pre-scaled). Using RELATIVE_TO_* would use percentages
for the pivot point, again taking the scaling of the view into account. So scaling
the pivot point added in another scale on top of that already being applied.

The net effect was to scale the pivot point in cases where it should not be scale.
For example, setting a pivot point to half-way (.5 and RELATVE_TO_SELF) would
end up with an animation that would pivot around the bottom/right of the view.

The fix is to simply remove the scale factor being passed in; we've already accounted
for it in the pivot point, so we shouldn't concatenate it into the transform
calculated by the animation.

Change-Id: I9daa7581b1b9d0dfb10515e96947160c28c5130e
iewGroup.java
c6fd88e213703a581fe4680259981f09ae0444f2 26-Jan-2012 Svetoslav Ganov <svetoslavganov@google.com> Incorrect behavior of View clear focus.

The framework tries to have a focused view all the time. For
that purpose when a view's focus is cleared the focus is given
to the first focusable found from the top. The implementation
of this behavior was causing the following issues:

1. If the fist focusable View tries to clear its focus it
was getting focus but the onFocusChange callbacks were not
properly invoked. Specifically, the onFocusChange for
gaining focus was called first and then the same
callback for clearing focus. Note that the callback
for clearing focus is called when the View is already
focused. Also note that at the end the View did not
clear its focus, hence no focus change callbacks
should be invoked.

2. If not the first focusable View tries to clear focus,
the focus is given to another one but the callback
for getting focus was called before the one for clearing,
so client code may be mislead that there is more than
one focused view at a time.

3. (Nit) The implementaion of clearFocus and unFocus in ViewGroup
was calling the super implementaion when there is a
focused child. Since there could be only one focused View,
having a focused child means that the group is not focused
and the call to the super implementation is not needed.

4. Added unit tests that verify the correct behavior, i.e.
the focus of the first focused view cannot be cleared
which means that no focus change callbacks are invoked.
The callbacks should be called in expected order.
Now the view focus clear precedes the view focus gain
callback. However, in between is invoked the global
focus change callback with the correct values. We may
want to call that one after the View callbacks. If
needed we can revisit this.

Change-Id: Iee80baf5c75c82d3cda09679e4949483cad475f1
iew.java
iewGroup.java
iewRootImpl.java
3f696b264e4a3dd28421e9e1a58fe2c6241f48e4 26-Jan-2012 Gilles Debunne <debunne@google.com> Merge "Unbalanced batch edit begin and end leave TextView unresponsive"
842e379074e069d0273711399f45a2d7109f9e64 25-Jan-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Update Javadoc for InputConnection.deleteSurroundingText()"
39d23bddef15cd3f5fd2f336afe193c912d32ac3 25-Jan-2012 Fabrice Di Meglio <fdimeglio@google.com> Update Javadoc for InputConnection.deleteSurroundingText()

- give more precision about how the text is considered

Change-Id: Ie2f09bb3338e7dc0e98da0595d1500a6352d09d3
nputmethod/InputConnection.java
b335fad4705348ff78d764fb4be53dcbe6b67abe 16-Jan-2012 Jamie Gennis <jgennis@google.com> hack up frame latency measurement

Change-Id: I6d9a466a23285304f0e229a5649815636ab5d6af
ardwareRenderer.java
79311c4af8b54d3cd47ab37a120c648bfc990511 18-Jan-2012 Svetoslav Ganov <svetoslavganov@google.com> Speedup the accessibility window querying APIs and clean up.

1. Now when an interrogating client requires an AccessibilibtyNodeInfo
we aggressively prefetch all the predecessors of that node and its
descendants. The number of fetched nodes in one call is limited to
keep the APIs responsive. The prefetched nodes infos are cached in
the client process. The node info cache is invalidated partially or
completely based on the fired accessibility events. For example,
TYPE_WINDOW_STATE_CHANGED event clears the cache while
TYPE_VIEW_FOCUSED removed the focused node from the cache, etc.
Note that the cache is only for the currently active window.
The ViewRootImple also keeps track of only the ids of the node
infos it has sent to each querying process to avoid duplicating
work. Usually only one process will query the screen content
but we support the general case. Also all the caches are
automatically invalidated so not additional bookkeeping is
required. This simple strategy leads to 10X improving the
speed of the querying APIs.

2. The Monkey and UI test automation framework were registering a
raw event listener for accessibility events and hence perform
connection and cache management in similar way to an AccessibilityService.
This is fragile and requires the implementer to know internal framework
stuff. Now the functionality required by the Monkey and the UI automation
is encapsulated in a new UiTestAutomationBridge class. To enable this
was requited some refactoring of AccessibilityService.

3. Removed the *doSomethiong*InActiveWindow methods from the
AccessibilityInteractionClient and the AccessibilityInteractionConnection.
The function of these methods is implemented by the not *InActiveWindow
version while passing appropriate constants.

4. Updated the internal window Querying tests to use the new
UiTestAutomationBridge.

5. If the ViewRootImple was not initialized the querying APIs of
the IAccessibilityInteractionConnection implementation were
returning immediately without calling the callback with null.
This was causing the client side to wait until it times out. Now
the client is notified as soon as the call fails.

6. Added a check to guarantee that Views with AccessibilityNodeProvider
do not have children.

bug:5879530

Change-Id: I3ee43718748fec6e570992c7073c8f6f1fc269b3
ccessibilityNodeInfoCache.java
iew.java
iewGroup.java
iewRootImpl.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityRecord.java
ccessibility/IAccessibilityInteractionConnection.aidl
ccessibility/IAccessibilityManager.aidl
50aca29a0b00c3f8f09b0c246da022df482ca56d 24-Jan-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug # 5863709 API request: Change param names of deleteSurroundingText to "before" and "after""
5ff9df658230d49e42c43586997a02d8e4dd417e 24-Jan-2012 Romain Guy <romainguy@google.com> Add full support for Canvas.setDrawFilter()

Change-Id: I0ad35d0603c4eeda469014803be14c1dcdde918c
LES20Canvas.java
1e878d2ff506e7e96bbdb9d06afea43561445b7a 24-Jan-2012 Romain Guy <romainguy@google.com> Fix API typo

Change-Id: Iac6de947b0d550cc8dd4a3b5d88baa322c21bbb8
iewTreeObserver.java
0c95dd3f4f02564fab9b86a221bbcbb4aafc2981 24-Jan-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug # 5863709 API request: Change param names of deleteSurroundingText to "before" and "after"

Change-Id: I727fad9a59cda915899674569bfabd29b9f5da60
nputmethod/BaseInputConnection.java
nputmethod/InputConnection.java
nputmethod/InputConnectionWrapper.java
5a89672f3ef0781f0c28e63ee774970340dbb4dd 23-Jan-2012 Michael Jurka <mikejurka@google.com> Merge "Remove fastInvalidate and setFast* methods"
d3fe9abfb9a6a21a18abde6a98dceb423c04ebef 21-Jan-2012 Jim Miller <jaggies@google.com> am ab9601cd: am 230a7092: Merge "Fix 5863053: Add method to lock screen immediately." into ics-mr1

* commit 'ab9601cdbb95ae94088750eff9a926a572c1a4d6':
Fix 5863053: Add method to lock screen immediately.
4be9cff46e82bbb608f91fd3c9ed9fca3cf14e8b 20-Jan-2012 Dianne Hackborn <hackbod@google.com> am 1bae8066: Merge "Fix issue #5823276 again: home repaints after full-screen app is exited" into ics-mr1

* commit '1bae80668cc1d12bb4a4b93bce1960b2601de131':
Fix issue #5823276 again: home repaints after full-screen app is exited
1bae80668cc1d12bb4a4b93bce1960b2601de131 20-Jan-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #5823276 again: home repaints after full-screen app is exited" into ics-mr1
6f8b4f5322d6975bccc257b9047f65e413ad56d5 20-Jan-2012 Jeff Brown <jeffbrown@google.com> am ad1f4a2c: Merge "Implement a max time bound for rotation. (DO NOT MERGE)" into ics-mr1

* commit 'ad1f4a2ca825b8524c6bed494a7cf3ca70ee7e28':
Implement a max time bound for rotation. (DO NOT MERGE)
ad1f4a2ca825b8524c6bed494a7cf3ca70ee7e28 20-Jan-2012 Jeff Brown <jeffbrown@google.com> Merge "Implement a max time bound for rotation. (DO NOT MERGE)" into ics-mr1
cfbf7dedaddd825b608e87d3dcf46adf80a46976 12-Jan-2012 Dianne Hackborn <hackbod@google.com> Fix issue #5823276 again: home repaints after full-screen app is exited

Don't consider a window as a candidate for the top fullscreen window
if it is not going to be a candiate for layout.

This fix does not include the change to ignore app tokens that are
hidden. This causes problems in some dialogs that stay hidden until
their app is ready to display, but need to perform a series of relayouts
during that time to get to the right size. Dropping this part of
the change still (mostly?) seems to allow us to avoid the bad states.

Change-Id: Ic052cb1499d3287f47e9ffeac5cd2470ee5a308c
indowManagerPolicy.java
9e34b95a1db9f28b31560405687dd651492048e1 20-Jan-2012 Michael Jurka <mikejurka@google.com> Remove fastInvalidate and setFast* methods

- were only being used by Launcher, and they've been
removed from there too

Change-Id: I230e79c89a6450756220ad5cc07180bb5b725bd6
iew.java
bad12166190a7e8087eb5db0ae8df9a4e5843fde 20-Jan-2012 Romain Guy <romainguy@google.com> Merge "Deprecate unused APIs"
f9d9c065ed75f1196316a9a31f92309f602cef76 20-Jan-2012 Romain Guy <romainguy@google.com> Deprecate unused APIs

Change-Id: I0107e246b632dda96b8b025217936954f1f46283
LES20Canvas.java
b800f277cb02f0639b66ecaf0798b30419486ab7 20-Jan-2012 Justin Ho <justinho@google.com> am 820b45c0: Merge "DO NOT MERGE Revert "Fix issue #5823276: home repaints after full-screen app is exited"" into ics-mr1

* commit '820b45c0a21980a43532b9fb9823f8aa08c64a15':
DO NOT MERGE Revert "Fix issue #5823276: home repaints after full-screen app is exited"
170997a519ce79e93e4f6984e9663232475ce92c 19-Jan-2012 Justin Ho <justinho@google.com> DO NOT MERGE Revert "Fix issue #5823276: home repaints after full-screen app is exited"

This reverts commit 01b02a734d2988c22b00f5df6346ad03d8bf52b6.

Change-Id: I848c01fc44eb9a51ead1116b2647ed838ec1825f
indowManagerPolicy.java
a37a108cfbaa23bcddaaeab4b838bec262bc2441 19-Jan-2012 Romain Guy <romainguy@google.com> Merge "Add basic code required for drawPicture()"
75582e889d4895483309e38364266073be6d46b8 19-Jan-2012 Romain Guy <romainguy@google.com> Add basic code required for drawPicture()

Change-Id: Ib9e73cd4b932836d4debe920200f8d1c1861c2d4
LES20Canvas.java
e7bdf2d9d0107afadddb6498331cd21be260d23c 19-Jan-2012 Romain Guy <romainguy@google.com> Merge "Don't crash on Canvas.drawPicture()"
84fce187b0ae79adc5b4e64c26f72c8ed59e9703 19-Jan-2012 Romain Guy <romainguy@google.com> Don't crash on Canvas.drawPicture()

Implementation yet to come but prevent app crashes.

Change-Id: I81d6851ebf776a98e13c606bab272a03aec406ee
LES20Canvas.java
3bb3d41adbd78ab690378531d37aec369c79ead7 19-Jan-2012 Jim Miller <jaggies@google.com> am 230a7092: Merge "Fix 5863053: Add method to lock screen immediately." into ics-mr1

* commit '230a709285abc5dfd92f05d91a8997d52a59d3c7':
Fix 5863053: Add method to lock screen immediately.
230a709285abc5dfd92f05d91a8997d52a59d3c7 19-Jan-2012 Jim Miller <jaggies@google.com> Merge "Fix 5863053: Add method to lock screen immediately." into ics-mr1
8fd86f38d203a8934bcf1fe580f032082dcef75f 19-Jan-2012 Jeff Brown <jeffbrown@google.com> Implement a max time bound for rotation. (DO NOT MERGE)

Also relaxed the settle time constraints a little bit.
With this change, a rotation proposal will always be
advertised within 500ms even if the device is still shaking
around.

Bug: 5496491
Change-Id: I0bf562f4c19c0be45c016254f2f881d265f8e266
indowOrientationListener.java
2a16b1374413abe513c0b60597262d45360138f7 18-Jan-2012 Jeff Brown <jeffbrown@google.com> Merge "Improve heuristics for orientation detection."
93c518e4f8abd98f87cda1712b30a5a86cfa60dd 18-Jan-2012 Jim Miller <jaggies@google.com> Fix 5863053: Add method to lock screen immediately.

This fixes a bug where the device fails to lock when DevicePolicyManagerService
requests the device to be locked and the screen was off because the user hit
the power button.

The change allows DPMS to directly invoke screen lock, bypasssing the screen state.

Change-Id: Iecdda6fc61e9c519119de495be23c69c3b983921
WindowManager.aidl
indowManagerPolicy.java
fb9ffe02609c9c4ffca64927e72bc935cfe87768 18-Jan-2012 Romain Guy <romainguy@google.com> Merge "First pass at implementing Canvas.drawPosText() in GL"
eb9a5367e8f0e970db8509ffb2584f5376bc62ed 18-Jan-2012 Romain Guy <romainguy@google.com> First pass at implementing Canvas.drawPosText() in GL

Change-Id: Ia3ac347e95d57eb86c63045156c8dbc0572b03cb
LES20Canvas.java
0764dee89cc82dd53196cce2865d3cabafed208f 18-Jan-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "AccessibilityEvent/AccessibilityNodeInfo class name property should be set to only framework classes."
5aa73ae58f049379a97bc86add541f27170c02a4 14-Jan-2012 Jeff Brown <jeffbrown@google.com> Improve heuristics for orientation detection.

1. Except as otherwise indicated, orientation change happens once
the predicted rotation has been stable for 40ms. Noise is
suppressed by a low-pass filter with a 200ms time constant which
seems to be about as small as is practical given the quality
of the sensor data.

2. If the magnitude exceeds a threshold (excessive noise or freefall),
resets the predicted orientation.
Doesn't happen very often even when shaking the device.
This heuristic mainly protects the detector from spurious tilt due
to inaccurate determination of the gravity vector.

3. If the device was previously in a flat posture (on a table for at
least 1000ms), then it must move out of that posture for at least
500ms before the next orientation change will happen.
This heuristic suppresses most spurious rotations that happen while
picking up the device.

4. If the device is tilted away from the user by 20 degrees within
a span of 300ms, the device is said to be swinging and at least
300ms must elapse after the device stops swinging before the
next orientation change will happen.
This heuristic suppresses some but not all spurious rotations that
happen while putting down a device. Unfortunately, this heuristic
sometimes triggers a false positive when turning the device very
rapidly due to accelerometer noise. The 300ms pause is a compromise
so that occasional mispredicted swings don't significantly delay
the rotation.

Bug: 5796249
Change-Id: Id7b36c4c563e35b70d6a7ac36d04f3c3d6ea5811
indowOrientationListener.java
73d27c3d46ce9a19c0cc358d0b2788f1f51706d7 18-Jan-2012 Michael Jurka <mikejurka@google.com> Merge "Check if View's alpha must be updated in setter"
8a78fd4d9572dff95432fcc4ba0e87563415b728 17-Jan-2012 Svetoslav Ganov <svetoslavganov@google.com> AccessibilityEvent/AccessibilityNodeInfo class name property should be set to only framework classes.

AccessibilityEvent and AccessibilityNodeInfo have a property className which is set to the source
Java class. This is problematic since leads to leaking private classes which would allow an
accessibility service to load classes from other packages. This is strongly undesirable since
not trusted code can be loaded, and hence executed, in the accessibility service. To address
that the class name is set to the most concrete framework class extended by the info/event
source.

bug:5878943

Change-Id: I7b3114ece8772ea2773f5151e21b8a6f2006882a
iew.java
iewGroup.java
a7a7eedee58b69ff3d36fa9d413ea902eb0d5d45 17-Jan-2012 Michael Jurka <mikejurka@google.com> Check if View's alpha must be updated in setter

Change-Id: I91094b43dbacbd637e04ce4074d8df6a27ddf6fb
iew.java
f56945e06aed28041f0f370c26b4b8986033c489 17-Jan-2012 Romain Guy <romainguy@google.com> Merge "Improve GLES20Canvas clip support"
7677d8f006b94c76dcad6f551bf14f983f58dc14 17-Jan-2012 Romain Guy <romainguy@google.com> Improve GLES20Canvas clip support

Remove UnsupportedOperationException
Add primitive support for clipPath/clipRegion
Add support for quickReject(Path, EdgeType)

Change-Id: Ie7a80df7f380f488710bac31103772a9eab21612
LES20Canvas.java
185b8256f570dfe620789130bb3861bdeecfffdd 17-Jan-2012 Gilles Debunne <debunne@google.com> Fixed doc typo and removed warning

Change-Id: I9c9e45837037a77df5852ff4ea3ad596952e4507
elocityTracker.java
c478c171e92b2f255e9699d9c9306b001368ac20 20-Dec-2011 Gilles Debunne <debunne@google.com> Unbalanced batch edit begin and end leave TextView unresponsive

This is a fix for http://code.google.com/p/android/issues/detail?id=17508

Adding some logs and a forced GC, I'm now reliably able to reproduce it. Here is the scenario.

1. The IME handles an event. It retrieves the current InputConnection (IC) using
ic = getCurrentInputConnection() and calls ic.beginBatchEdit();
2. The call is propagated to the UI thread and TextView's mBatchEditNesting
is correctly increased through beginBatchEdit()
3. A listener calls setText(), which imm.restartInput(this);
4. As a result, the InputMethodManager creates a new ControlledInputConnectionWrapper
with a new InputConnection from the TextView
5. A GC happens at that point. The previous InputConnection is no longeri
referenced by the InputMethodManager's mServedInputConnection.
The weak reference in the previous ControlledInputConnectionWrapper is nulled.
6. The IME thread finishes its process and calls ic.endBatchEdit(); on its version
of the original InputConnection.
7. The message is passed through the InputConnect, but when the weak reference in the
original IInputConnectionWrapper is dereferenced, we get a null InputConnection in
executeMessage().
8. As a result, the TextView's endBatchEdit() method is not called, leaving this TextView
with a non zero mBatchEditNesting.
9. From now on, all edit actions on this TextView will be considered part of a nested edition
and no invalidation is performed, which is the visible manifestation of this bug.

The core problem is that the begin/end batch edit contract is broken when:
1. These are initiated by the IME thread (as opposed to the UI thread)
2. The input connection is reset between these calls
3. A GC happens in the mean time and the WeakReference is lost (otherwise
calling endBatchEdit on a no longer active InputConnection is fine

Solution to keep TextView's mBatchEditNesting balanced:

- The IMM should notify the IC when it is no longer used. We're using the
existing FINISH_INPUT_CONNECTION to do that.
- The InputConnection should keep track of its nesting contribution to the TextView.
When finished the IC makes sure its contribution is reset to 0.
Moreover, further asynchonous calls to begin/endBatchEdit that may arrive from the IME
should be ignored. This is achieved using a negative value as a flag.

Notes:

- finishComposingText may be too broad of a method to perform such a cleaning step
but is seems to only be called in cases where the IC will not be used anymore.
If that's too broad, we have to introduce a new method in the IC interface.

- This is has been implemented in EditableInputConnection and not in a more general
BaseInputConnection because this is where we have a notion of TextEdit, and the
nesting problem is here specific to TextView.
However, the same unbalanced begin/end problem will happen in these classes. They
should override finishComposingText as has been done here if that matters.

- We cannot re-use the TextView's mBatchEditNesting since it may take into account
batch edit from various sources and resetting it on InputConnection close could
then lead to an inconsistent negative count value.

Patch Set 2: added synchronized blocks around mBatchEditNesting

Change-Id: I1ec5518fdc16fb0551fbce9d13f5d92eb4bc78c0
nputmethod/InputMethodManager.java
893eace60992a640064b454d7ad477c1bbffcb1d 13-Jan-2012 Gilles Debunne <debunne@google.com> Merge "Sub display list in TextView"
f88d1493aa968d3da551116f076edd5e21f7ccfc 13-Jan-2012 Dianne Hackborn <hackbod@google.com> am 10065177: am 2e282f35: Merge "Fix issue #5823276: home repaints after full-screen app is exited" into ics-mr1

* commit '100651779fde99f7ae2a10719d688b51115f08e9':
Fix issue #5823276: home repaints after full-screen app is exited
defda4de3d5965e87bdd8fedb248d6cd948ecb9d 13-Jan-2012 Dianne Hackborn <hackbod@google.com> am 2e282f35: Merge "Fix issue #5823276: home repaints after full-screen app is exited" into ics-mr1

* commit '2e282f35b009fe4c23daca35592dae2032641643':
Fix issue #5823276: home repaints after full-screen app is exited
44d79747b5e434e8f43928b5548442c65e40e5c3 13-Jan-2012 Romain Guy <romainguy@google.com> Remove unused parameter

Change-Id: I0896b2cdb9f1fa9c5e191e4ea425e22ac6f10f29
ardwareRenderer.java
iewRootImpl.java
c8f4183669c7cf166ced70bf60ad056482f3390b 12-Jan-2012 Ken Wakasa <kwakasa@google.com> Bring LatinIME's privateImeOptions "forceAscii" to a formal public API

bug: 5850605
Change-Id: I6ab6076909c735a3e0729b457de68d0b5301184d
nputmethod/EditorInfo.java
b35ab7b72967adcfd01cec483a705dafe8b951d1 06-Dec-2011 Gilles Debunne <debunne@google.com> Sub display list in TextView

TextView uses a sub-display list to 'cache' the rendering of its
text. This saves time when drawing an editable text, where the blinking
cursor forces a re-draw twice per second, which creates pauses during
scrolling.

Added a sub-display list invalidation when an appearance span is
modified/added/removed.

Also added an invalidation of the display list when selection range
is changed.

Change-Id: I41e8068a12902b8a745c5bb77de8c77def76a270
isplayList.java
LES20Canvas.java
LES20DisplayList.java
ardwareCanvas.java
ardwareRenderer.java
iew.java
01b02a734d2988c22b00f5df6346ad03d8bf52b6 12-Jan-2012 Dianne Hackborn <hackbod@google.com> Fix issue #5823276: home repaints after full-screen app is exited

Don't consider a window as a candidate for the top fullscreen window
if it is not going to be a candiate for layout.

Also don't consider windows a candidate for layout if their app token
is hidden. This fixes a transient state where we are preparing to
unhide the window but have not done so yet.

Change-Id: Ife5299ffa003c1df1a4f787b7a2809cbf614ec16
indowManagerPolicy.java
11299b1b8c49e53ed25dce916aa24282b2e15662 11-Jan-2012 satok <satok@google.com> Make public SpellChecker utilities

Bug: 5639238
Change-Id: Id7dd2263a6305cc6ba0cf8f4d8ad8fb0d39a48ff
extservice/SpellCheckerSubtype.java
7d5178e9fbfe6fa8d473ecb7848fba05e90134bd 09-Jan-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Add textDirection="locale""
4c1e00a8c29e532a5b0fce755bead691797eff94 06-Jan-2012 Fabrice Di Meglio <fdimeglio@google.com> Add textDirection="locale"

- also fix and update unit tests
- see bug #5242821

Change-Id: I29e029bab8ade336a430f9a2a5073caaf11b8dda
iew.java
9a74476c0ab1aaa59e9aed6ecdeba43d5b4d3495 06-Jan-2012 Ken Wakasa <kwakasa@google.com> Comment clean up for InputMethodSubtype.

Change-Id: I50bca715f4caa669cb341b36a3d46358e1ad1ded
nputmethod/InputMethodSubtype.java
0041861a0433402b789d6530eb0ed52a1c2b4ff1 21-Dec-2011 Chet Haase <chet@google.com> Fix behavior of AnimationSet and fillBefore

The previous logic in AnimationSet when starting an animation
ignored the fillBefore behavior of its child animations. This caused
a bug where a delayed AlphaAnimation would automatically cause the
target view to become transparent, even though it was supposed to wait
until after some delay to do so.
The fix checks the fillBefore behavior of each child animation before
concatenating its transform with the transform of the AnimationSet.

Change-Id: I76a2dafbe6dd338dc5281b17612eae87af168d86
nimation/AnimationSet.java
7d4045b3f2c520ffb9db2b6562c9e04fa234407f 20-Dec-2011 Chet Haase <chet@google.com> Merge "Make behavior of ABSOLUTE pivot values more intuitive"
84c949f3b130c9f375203cdb4a3cc4af6b38a4f3 20-Dec-2011 Chet Haase <chet@google.com> Make behavior of ABSOLUTE pivot values more intuitive

Currently, you must call initialize() on RotateAnimation or
ScaleAnimation prior to calling start(). The reason is that the
actual pivot point used in calculating the transform is not set
until that method is called. This makes sense in the typical case
where the animation is running on a View and is using values relative
to the size of the View or of its parent. But if the caller sets the
values to be ABSOLUTE types instead, the sizes of the view and the parent
are irrelevant and the call to initialize() should not be needed (and
is not intuitive).

This fix automatically sets the internal pivot values in the case where
the value types are ABSOLUTE.

Change-Id: I74a0e462486efae08aa76e72c0d19d82f2a2677e
nimation/Animation.java
nimation/RotateAnimation.java
nimation/ScaleAnimation.java
2d46fcc669ff5efe365e9be435ab9e5c5a304939 20-Dec-2011 Chet Haase <chet@google.com> Minor small fixes to old Animation code and docs.

Change-Id: Ib8a1ba2d12e26cc42a2cec48312a5229bb6d4e8a
iewGroup.java
nimation/AnimationSet.java
nimation/AnimationUtils.java
d47f1531d0653be33133cf05ec317a236e763646 16-Dec-2011 Chet Haase <chet@google.com> Make Property objects in View final

The various Properties added to View in 4.0 (ALPHA, TRANSLATION_X, etc.)
were not final, making it possible to assign on property to another.
Not something that someone would want to do, but we should try to prevent
that kind of mess. This API change makes those properties final.

Change-Id: I7d0c7f738eb2074d0781b1ba6a7c19339bac4477
iew.java
b5052de75736527549d7e537632777c6fec2e4f0 14-Dec-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of a80bab37 to master

Change-Id: Id71cc68a617e1ea0dd2f3932d454be6dba336eef
d82b5345f97f059edb3cf04a1fda6b13987274f6 14-Dec-2011 Dianne Hackborn <hackbod@google.com> am caa8e69a: Merge "Fix issue #5756204: Crespo IME briefly appears shortened when..." into ics-mr1

* commit 'caa8e69a65e15ce2d9e52b18c7caa547eb9a2f48':
Fix issue #5756204: Crespo IME briefly appears shortened when...
33b8ee509f36a0168c8ce5a9091b57ab936f4c13 14-Dec-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5756204: Crespo IME briefly appears shortened when...

...rotating to landscape

When doing spell checking in the same process as the spell checker, we
need to make sure it is still done asynchronously.

Putting this in I noticed quite a few threading issues in this code, so
I also addressed those (which became very obviously a problem with the
async stuff here now).

Also tweaked the service side to run spell checking at background priority.

Change-Id: I01bafe3bec6bceeca911d6bf2f61a486a2fd4c48
extservice/SpellCheckerSession.java
ee4d45f3052c8d339035c4bb8eca9b7a724e5074 13-Dec-2011 Dianne Hackborn <hackbod@google.com> am 0be53567: am 19a06fe9: Merge "Fix issue #5755172: Soft menu key disappears when menu is open" into ics-mr1

* commit '0be53567c1c2299c548d3204d2b9240108fbd53a':
Fix issue #5755172: Soft menu key disappears when menu is open
4e2e2c2154f067f03e46b8c99eaa5642749cfd17 13-Dec-2011 Dianne Hackborn <hackbod@google.com> am 19a06fe9: Merge "Fix issue #5755172: Soft menu key disappears when menu is open" into ics-mr1

* commit '19a06fe93cccb4b1dd224b8456969821a19b07ef':
Fix issue #5755172: Soft menu key disappears when menu is open
73ab6a49db2b834ce1d56c7a1164938b409ee6fc 13-Dec-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5755172: Soft menu key disappears when menu is open

We need to work more like before in determining whether the menu
key is needed -- in some cases look back in the window list to
determine this if we don't know the value from the current window.

This requires adding a new private flag indicating whether the
compat menu state is known for a window, which is set by
PhoneWindow as part of its existing process of computing the flag
for its own windows.

Now we can have a new API on WindowState to determine the value
of this flag for a window, which if needed walks back in the window list
to find a window the value is known for (or stops at what the policy
has determined is the top full-screen window, so we stop like we used
to at things like the lock screen or the bottom of an application).

Change-Id: I829de6d629b5af8bcb422cb85249ee4041c7205e
indow.java
indowManager.java
indowManagerPolicy.java
203858e5b3c495a8544c0df9d291b68d7a96e860 13-Dec-2011 Adam Powell <adamp@google.com> am 9c92fcd9: Merge "Bug 5727679 - CTS test ViewGroupTest#testGetChildVisibleRect" into ics-mr1

* commit '9c92fcd91c67a98f3a767255e7d3748bca3ef751':
Bug 5727679 - CTS test ViewGroupTest#testGetChildVisibleRect
f8c2abcadd5d7fbac64f84e6b31ec45102bcf3dd 13-Dec-2011 Adam Powell <adamp@google.com> am bffe0be3: am 9c92fcd9: Merge "Bug 5727679 - CTS test ViewGroupTest#testGetChildVisibleRect" into ics-mr1

* commit 'bffe0be3af2bd19a392e7d332cbfda9a60b8e057':
Bug 5727679 - CTS test ViewGroupTest#testGetChildVisibleRect
f93bb6d8fd81d8938b16cf40259f97c336e9ef3a 13-Dec-2011 Adam Powell <adamp@google.com> Bug 5727679 - CTS test ViewGroupTest#testGetChildVisibleRect

Preserve the ability to call getChildVisibleRect without the view
being attached to a window.

Change-Id: I702b19fa1625c346eb22fda4a4ffb6e8f790b689
iewGroup.java
549d5f88bf96f93de5d10f094bda4a62ac5ebe3a 12-Dec-2011 Amith Yamasani <yamasani@google.com> Merge "Show the current stream's volume in the volume panel."
bdc18b28eb04b8c8cc00313096f8bfb142e407e3 09-Dec-2011 Jeff Brown <jeffbrown@google.com> am 03e63427: am 8e0ecbfc: Merge "Shortcut keys should be handled on down, not up." into ics-mr1

* commit '03e634270d880407316b51fac2278e604fc82703':
Shortcut keys should be handled on down, not up.
9477c6e6581ce97976250951f33e1297604ac777 09-Dec-2011 Romain Guy <romainguy@google.com> Enable dirty regions on newly created EGL surfaces

This change fixes an issue on some tiler architectures that do not
enable the swap buffer behavior by default on EGL surfaces.

Change-Id: Ibda1ae582da1a20afad3be9c3361080e72df5206
ardwareRenderer.java
8df96097686ed7d16a128d4eb9e08fb277dd3d11 09-Dec-2011 Amith Yamasani <yamasani@google.com> Show the current stream's volume in the volume panel.

Bug: 5409969

If the current stream being displayed is different from the
stream being adjusted, rearrange the sliders, unless multiple
sliders are being shown.

Change-Id: Ia48986c1046305d7fee7a32177d78d8ffd84a11b
olumePanel.java
77741e8a1e08757e1e55a85e5c6715823df64a96 08-Dec-2011 Jeff Brown <jeffbrown@google.com> am 8e0ecbfc: Merge "Shortcut keys should be handled on down, not up." into ics-mr1

* commit '8e0ecbfc97606ea30d0d8216fea635888f766b9d':
Shortcut keys should be handled on down, not up.
8e0ecbfc97606ea30d0d8216fea635888f766b9d 08-Dec-2011 Jeff Brown <jeffbrown@google.com> Merge "Shortcut keys should be handled on down, not up." into ics-mr1
7bedf2449041a425899448cb672e91b0a5c97c62 08-Dec-2011 Jeff Brown <jeffbrown@google.com> Shortcut keys should be handled on down, not up.

Bug: 5720360
Change-Id: I3afc278e576ea992c76f024c8b6bad14b214239c
iewRootImpl.java
9650b018e3b1ed42de9b48f3c0eaf4e04733f065 08-Dec-2011 Dave Burke <daveburke@google.com> am e118c1de: am ef8913c0: Merge "Remove dangerous and useless optimization Bug #5525888" into ics-mr1

* commit 'e118c1de0037e6732b66b9f52903567caa961c31':
Remove dangerous and useless optimization Bug #5525888
86436a3ed0c27d3321f4b9c9f8063f54c696b5f3 08-Dec-2011 Dave Burke <daveburke@google.com> am ef8913c0: Merge "Remove dangerous and useless optimization Bug #5525888" into ics-mr1

* commit 'ef8913c035e679ea8b8891e26db1fa571e9b9d54':
Remove dangerous and useless optimization Bug #5525888
ef8913c035e679ea8b8891e26db1fa571e9b9d54 08-Dec-2011 Dave Burke <daveburke@google.com> Merge "Remove dangerous and useless optimization Bug #5525888" into ics-mr1
c7ee3cab56b8cc90c4f6659a262a1cba5c71e92a 08-Dec-2011 Romain Guy <romainguy@google.com> Remove dangerous and useless optimization
Bug #5525888

Change-Id: I553828c0da09b15d0dce3727e4c26a9d0bcf72ea
iewGroup.java
243657993c0280771e07a3367d1a7ed45dbfe15f 08-Dec-2011 Adam Powell <adamp@google.com> resolved conflicts for merge of db81dc72 to master

Change-Id: Ie7e1d9a255934e45d8b241b15e9674046cff2444
b723999bebef28f8d308d119c7a391fc1e591538 08-Dec-2011 Adam Powell <adamp@google.com> am cf6a6522: Merge "Raise touch slop value from previous experiment" into ics-mr1

* commit 'cf6a6522fdbce05896d3a551f7cd6243857ceced':
Raise touch slop value from previous experiment
6720a87ad161a12c9dc7e11b2ae0165e65483464 08-Dec-2011 Adam Powell <adamp@google.com> Raise touch slop value from previous experiment

Change-Id: I7681c401803643f309fd988824602169a830de29
iewConfiguration.java
b5014d4754838d4f72a3cbca46636b00ecbb7102 07-Dec-2011 Adam Powell <adamp@google.com> am 720efc43: Merge "Lower touch slop in ViewConfiguration." into ics-mr1

* commit '720efc43d89ce9fd50b66f22cdb1bb4363cfb291':
Lower touch slop in ViewConfiguration.
e6513486ee83e3ce9e99ee3f08f470fc568f120f 07-Dec-2011 Gilles Debunne <debunne@google.com> Merge "Minor tweak in getLocationInWindow"
2b621bc5bb52339cc677beb89d0495b8b5d4f444 07-Dec-2011 Jeff Brown <jeffbrown@google.com> Merge "Disable postponing performTraversals(), for now."
6583ce5b89c41a16aab815a09904b039ef9d8d8a 07-Dec-2011 Gilles Debunne <debunne@google.com> Minor tweak in getLocationInWindow

Change-Id: Ib3f30dbfb3aee7c46c58e1f7832e3394702c0ff6
iew.java
90a3c5f51ddf0f98769a258ed224f2ec5b645d0e 07-Dec-2011 Jeff Brown <jeffbrown@google.com> Disable postponing performTraversals(), for now.

Bug: 5715378
Bug: 5721047
Change-Id: I89c674306665b6caa3a63b8a9d2b4b7c9ed020ae
horeographer.java
e49e8cc4e799a2a6793c148b6a4b74d8f69026dd 07-Dec-2011 Adam Powell <adamp@google.com> Merge "resolved conflicts for merge of 6a828712 to master"
e4b8ff8068a96fe467d2334a75198ab762bb915c 07-Dec-2011 Adam Powell <adamp@google.com> resolved conflicts for merge of 6a828712 to master

Change-Id: I73c804667a890bcc9924951ff655137c1345541a
bdfe770e0874295827534558f2cba040644a3a13 07-Dec-2011 Romain Guy <romainguy@google.com> Merge "Discard framebuffer rendering queues when discarding layers Bug #5581817"
9c4b79af221b53f602f946faa9ff317a596a0c39 11-Nov-2011 Romain Guy <romainguy@google.com> Discard framebuffer rendering queues when discarding layers
Bug #5581817

Change-Id: Ie30700a29059d2ea60eb7bd3f8bd20ac48a149ab
LES20Canvas.java
LES20Layer.java
ardwareLayer.java
iew.java
iewGroup.java
07069a04ef2e52ad6cebd9041b5288bebd811a38 07-Dec-2011 Jeff Brown <jeffbrown@google.com> Fix PIN pad.

Some widgets apparently inject keys into the ViewRoot by sending
a DISPATCH_KEY message to its handler. Ugh.

Bug: 5711577
Change-Id: Ibe9aaf705095d152ec866c536f31f5d85e27b97f
iewRootImpl.java
7d39f85acf68b3469a2087af488569e356845e22 06-Dec-2011 Adam Powell <adamp@google.com> Lower touch slop in ViewConfiguration.

Our typical touchscreens are now good enough that we don't need the
touch slop to be as large as it once was. Lower it to increase
responsiveness while scrolling.

Move the touch slop constant to the config resource
config_viewConfigurationTouchSlop so that it may be more easily
tweaked in device-specific overlays.

Change-Id: I7c11d8affcb98e91654203beb13a26cfeec18f7c
iewConfiguration.java
96e942dabeeaaa9ab6df3a870668c6fe53d930da 01-Dec-2011 Jeff Brown <jeffbrown@google.com> Use a Choreographer to schedule animation and drawing.

Both animations and drawing need to march to the beat of
the same drum, but the animation system doesn't know
abgout the view system and vice-versa so neither one
can drive the other.

We introduce the Choreographer as a drummer to keep
everyone in time and ensure a magnificent performance.

This patch enabled VSync based animations and drawing by
default. Two system properties are provided for testing
purposes to control the behavior.

"debug.choreographer.vsync": Enables vsync based animation
timing. Defaults to true. When false, animations are
timed by posting delayed messages to a message queue in
the same way they used to be before this patch.

"debug.choreographer.animdraw": Enables the use of the animation
timer to drive drawing such that drawing is synchronized with
animations (in other words, with vsync or the timing loop).
Defaults to true. When false, layout traversals and drawing
are posted to the message queue for execution without any delay or
synchronization in the same way they used to be before this patch.

Stubbed out part of the layoutlib animation code because it
depends on the old timing loop (opened bug 5712395)

Change-Id: I186d9518648e89bc3e809e393e9a9148bbbecc4d
horeographer.java
iewRootImpl.java
0a0a1248cfc03940174cbd9af677bafd7280a3bc 02-Dec-2011 Jeff Brown <jeffbrown@google.com> Add a new class to receive vsync events.

Change-Id: I4e384336d2813752a6d65fda6a77e86113a4510c
isplayEventReceiver.java
315e468763c9601e2f06443fda847d2c9eb27a75 05-Dec-2011 Dianne Hackborn <hackbod@google.com> am 803caff1: am 003c15d7: Merge "Fix issue #5614559: Registering surface error in..." into ics-mr1

* commit '803caff1dc307a8895e9f3560112f969fa3f6f39':
Fix issue #5614559: Registering surface error in...
3e9df5baf9714f6a1d0366e1f734921efe49cb1d 05-Dec-2011 Dianne Hackborn <hackbod@google.com> am 003c15d7: Merge "Fix issue #5614559: Registering surface error in..." into ics-mr1

* commit '003c15d72ccd3856d5abfe6d66a2a40d0eca85bc':
Fix issue #5614559: Registering surface error in...
f3a0a60917af4e11122fb8f10ebae08bfb395e81 04-Dec-2011 Jeff Brown <jeffbrown@google.com> Merge "Remove type tests when recycling input events."
92cc2d8dc35f2bdd1bb95ab24787066371064899 02-Dec-2011 Jeff Brown <jeffbrown@google.com> Remove type tests when recycling input events.

Change-Id: I1c2d5980a763c457a0546bbf601e686c601a4c03
nputEvent.java
nputEventReceiver.java
eyEvent.java
otionEvent.java
iewRootImpl.java
61566cc1932468720a831ad5cbc68ee080d613c9 03-Dec-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5614559: Registering surface error in...

...Background Replacement on Stingray

This is how I should have done it in the first place. We get the
new surface from the window manager, and then just copy it in to
the constant Surface object we have for the holder.

Change-Id: I537a9e413829a18f689dfb46687014676b27156e
urface.java
urfaceView.java
f240ac99d6bc3a9c77c00fab0ff102f9da504fd5 03-Dec-2011 Gilles Debunne <debunne@google.com> am 0c7e894e: am 2f1e1e4a: Merge "Handle animations in Views\' rectangle clipping methods." into ics-mr1

* commit '0c7e894e79bea35f979d30e4e3bb6115b102cafd':
Handle animations in Views' rectangle clipping methods.
e64f4abb29a4067492fd700ca38f7a03c51784be 03-Dec-2011 Gilles Debunne <debunne@google.com> am 2f1e1e4a: Merge "Handle animations in Views\' rectangle clipping methods." into ics-mr1

* commit '2f1e1e4ab9ca20920d85574317c9d7c9e9e73161':
Handle animations in Views' rectangle clipping methods.
2f1e1e4ab9ca20920d85574317c9d7c9e9e73161 03-Dec-2011 Gilles Debunne <debunne@google.com> Merge "Handle animations in Views' rectangle clipping methods." into ics-mr1
32cbc3855c2a971aa5a801fd339fb6a37db91a1a 01-Dec-2011 Jeff Brown <jeffbrown@google.com> Refactor InputQueue as InputEventReceiver.

This change simplifies the code associated with receiving input
events from input channels and makes it more robust. It also
does a better job of ensuring that input events are properly
recycled (sometimes we dropped them on the floor).

This change also adds a sequence number to all events, which is
handy for determining whether we are looking at the same event or a
new one, particularly when events are recycled.

Change-Id: I4ebd88f73b5f77f3e150778cd550e7f91956aac2
nputEvent.java
nputEventConsistencyVerifier.java
nputEventReceiver.java
nputHandler.java
nputQueue.java
eyEvent.java
otionEvent.java
iewRootImpl.java
indowManagerPolicy.java
cea45132e3d5d32a6fc737abf10b8893a50f465b 24-Nov-2011 Gilles Debunne <debunne@google.com> Handle animations in Views' rectangle clipping methods.

getChildVisibleRect and getLocationInWindow do not take the new
mTransformationInfo View attribute.

As a result, these methods return invalid value during an animation
Bug 5638710

Changes in Patch Set 2:
- temporary allocations removed using static thread local variables (method
calls are NOT reentrant).

- scroll should be handled *before* applying the transformation matrix.
Fixed the call order in View#getLocationInWindow()

Patch set 4: fix from comments.
Patch set 5: <p>s

Change-Id: I15dc44c0659305d9029c59a47aba3a738bb35ae1
iew.java
iewGroup.java
iewParent.java
4952dfd16a0f839559ffa78f5016394caf85294f 01-Dec-2011 Jeff Brown <jeffbrown@google.com> Ensure input events are processed in-order in the application.

As it turns out, it used to be possible for there to be multiple
input events simultaneously in flight in an application. Although
it worked, it made it hard to reason about what was going on.
The problem was somewhat exacerbated by the introduction of a
queue of "InputEventMessage" objects as part of an earlier latency
optimization.

This change restores order from chaos and greatly simplifies the
invariants related to input event dispatch within the application.

Change-Id: I6de5fe61c1fe2ac3dd33edf770d949044df8a019
nputHandler.java
nputQueue.java
iewRootImpl.java
95db2b20d7bc0aaf00b1d4418124f5cf0a755d74 01-Dec-2011 Jeff Brown <jeffbrown@google.com> Improve latency instrumentation.

Change-Id: I4edfa0a5659d207f7e46722e48ffa1dc43d2aa13
ardwareRenderer.java
iewDebug.java
iewRootImpl.java
55cdacb9ba22ce0e40918fd54acca7df62637ca6 01-Dec-2011 Svetoslav Ganov <svetoslavganov@google.com> am 0bfdd7c2: am e9f24a43: Merge "Fix memory leaks in the accessibility layer." into ics-mr1

* commit '0bfdd7c2927fb683b89fdd52befe643e8e069e77':
Fix memory leaks in the accessibility layer.
e5dcb0c4b23da09fb155437c214108adef0e79fd 01-Dec-2011 Svetoslav Ganov <svetoslavganov@google.com> am e9f24a43: Merge "Fix memory leaks in the accessibility layer." into ics-mr1

* commit 'e9f24a43021734d28a4f65ebc804847b31ce13e8':
Fix memory leaks in the accessibility layer.
e9f24a43021734d28a4f65ebc804847b31ce13e8 01-Dec-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Fix memory leaks in the accessibility layer." into ics-mr1
41995689f26dc44be9628bb81e9448d067d66fff 01-Dec-2011 Amith Yamasani <yamasani@google.com> am 52976f04: am e9b0608c: Merge "No clicking on volume icon in volume dialog." into ics-mr1

* commit '52976f04d8bebf44398a94cf5796f6a998c8935d':
No clicking on volume icon in volume dialog.
36bcdb535e14a8a2e2c8643fb577569f7a2b6aed 01-Dec-2011 Svetoslav Ganov <svetoslavganov@google.com> Fix memory leaks in the accessibility layer.

The AccessibilityServiceConnection chache should be shared
between all interrogating threads.

bug:5664337

Change-Id: I151041d0b358e87ac47ea5c1c258f90a8b252420
ccessibility/AccessibilityInteractionClient.java
35991132d31287b2919c289ef9a7a3021999045e 01-Dec-2011 Amith Yamasani <yamasani@google.com> am e9b0608c: Merge "No clicking on volume icon in volume dialog." into ics-mr1

* commit 'e9b0608c76bd19356f3141358ffdf134b7a9700f':
No clicking on volume icon in volume dialog.
e9b0608c76bd19356f3141358ffdf134b7a9700f 01-Dec-2011 Amith Yamasani <yamasani@google.com> Merge "No clicking on volume icon in volume dialog." into ics-mr1
de5b3a0933e17218f75ec42a244f482f7ead2d37 01-Dec-2011 Chet Haase <chet@google.com> Merge "Protect code in ViewPropertyAnimator from potential null deref"
0c6d83cc5625f967eb2e23cc7c232874cd9e60f9 01-Dec-2011 Chet Haase <chet@google.com> Protect code in ViewPropertyAnimator from potential null deref

The monkeys threw a NullPointerException in ViewPropertyAnimator, from
calling into a data structure that should have been not null. Not sure what
weird onkey-driven timing issue caused the problem, but protecting the null
deref is easy and safe.

Issue 5626496

Change-Id: I902b510db60a8a85f776f48582ae0326522a9400
iewPropertyAnimator.java
786e54dd13111b6a2f75f4f37dd20353cf613e97 01-Dec-2011 Svetoslav Ganov <svetoslavganov@google.com> Fixing the build

Change-Id: I125956773dd364b14f8d328e625df3c852001dbf
ccessibility/AccessibilityInteractionClient.java
66922db828eab153c15bf3ca0b007313d9376e5e 01-Dec-2011 Svetoslav Ganov <svetoslavganov@google.com> Fixing the build - for real

Change-Id: I9628f2da8876b85f9c8ce94cc876b10e083980f6
ccessibility/AccessibilityInteractionClient.java
8b5a814f6a36045b06bee36f44703503c03714d4 01-Dec-2011 Svetoslav Ganov <svetoslavganov@google.com> Fixing the build

Change-Id: I7b2270843123b252098ca798c03284fb089f1b8a
ccessibility/AccessibilityInteractionClient.java
f3b4f3163b5b4c0a54a2643f07c97c47b14a1eb7 01-Dec-2011 Svetoslav Ganov <svetoslavganov@google.com> resolved conflicts for merge of 26f7a81f to master

Change-Id: I6bf5fd7c0de7945cef84602dbe3a7bbed587700f
1c45ac8a1c15a397f5a885944c5be9c2323978d9 01-Dec-2011 Svetoslav Ganov <svetoslavganov@google.com> am d8ec8db5: Merge "Fixing memory leaks in the accessiiblity layer." into ics-mr1

* commit 'd8ec8db5e0f227e4f63e948acb78d829f5ad30c8':
Fixing memory leaks in the accessiiblity layer.
d8ec8db5e0f227e4f63e948acb78d829f5ad30c8 01-Dec-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Fixing memory leaks in the accessiiblity layer." into ics-mr1
2b0acc90ae5a1133356b3af43d99056de1b3f626 30-Nov-2011 Amith Yamasani <yamasani@google.com> No clicking on volume icon in volume dialog.

Don't disable volume slider when it hits zero.
Show correct icon for Silent mode in Power menu.

Bug: 5586083
Change-Id: Iaa957fc08e314e0de1c007dfc967a1d960080aab
olumePanel.java
d116d7c78a9c53f30a73bf273bd7618312cf3847 22-Nov-2011 Svetoslav Ganov <svetoslavganov@google.com> Fixing memory leaks in the accessiiblity layer.

1. AccessibilityInteractionConnections were removed from the
AccessiiblityManagerService but their DeathRecipents were
not unregistered, thus every removed interaction connection
was essentially leaking. Such connection is registered in
the system for every ViewRootImpl when accessiiblity is
enabled and inregistered when disabled.

2. Every AccessibilityEvent and AccessiilbityEventInfo obtained
from a widnow content querying accessibility service had a
handle to a binder proxy over which to make queries. Hoewever,
holding a proxy to a remote binder prevents the latter from
being garbage collected. Therefore, now the events and infos
have a connection id insteand and the hindden singleton
AccessiiblityInteaction client via which queries are made
has a registry with the connections. This class looks up
the connection given its id before making an IPC. Now the
connection is stored in one place and when an accessibility
service is disconnected the system sets the connection to
null so the binder object in the system process can be GCed.
Note that before this change a bad implemented accessibility
service could cache events or infos causing a leak in the
system process. This should never happen.

3. SparseArray was not clearing the reference to the last moved
element while garbage collecting thus causing a leak.

bug:5664337

Change-Id: Id397f614b026d43bd7b57bb7f8186bca5cdfcff9
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityRecord.java
ccessibility/IAccessibilityManager.aidl
d4b1c4424d1d27c0a294e9360a3a489ef5f62dd1 29-Nov-2011 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of be6ab576 to ics-aah

Change-Id: I87c5679c46a58e233da30e73f068bed2af627ab3
b7a4db0a53cff6162d6981f9657a2ac70925ad73 29-Nov-2011 Chet Haase <chet@google.com> Merge "Fix invalidation of transformed, opaque views"
8c39defde61d5c8cd0956a44a193c283af350d88 29-Nov-2011 Chet Haase <chet@google.com> Fix invalidation of transformed, opaque views

There is an optimization in the invalidation logic which notes
when opaque views are invalidated and avoids drawing any of the
content behind those views. This runs afoul of some invalidation
logic that invalidates previous positions of views prior to
transforming them. The opaque-dirty optimization guarantees that
the background behind the old positions of these views will not
be painted, causing the views to leave behind artifacts from
their previous positions.

The fix is to disable the optimization when the view in question is
transformed (has a non-identity matrix).

Issue #5678545: Invalidation logic broken for software-rendered
opaque/transformed views

Change-Id: Ia365ab97725bf36e08797bf319945a52ffca4616
iewGroup.java
0475f82c95e6e9657580820b16b0e48d814119b5 29-Nov-2011 Jeff Brown <jeffbrown@google.com> am c339fe30: am be6ab576: Merge "Fix application launch shortcuts." into ics-mr1

* commit 'c339fe302bc5083f0a110569eec06676be511088':
Fix application launch shortcuts.
be6ab576ff0e3bf2a8dc3feee6f476061afbda30 29-Nov-2011 Jeff Brown <jeffbrown@google.com> Merge "Fix application launch shortcuts." into ics-mr1
6651a638348c15e89e265b0a53c775cac9beafa2 28-Nov-2011 Jeff Brown <jeffbrown@google.com> Fix application launch shortcuts.

Improved quick launch bookmarks to support category-based shortcuts
instead of hardcoding package and class names for all apps.

Added a set of Intent categories for typical applications on the
platform.

Added support for some of the HID application launch usages to
reduce reliance on quick launch for special purpose keys. Some
keyboard vendors have hardcoded launch keys that synthesize
"Search + X" type key combos. The goal is to encourage them
to stop doing this by implementing more of HID.

Bug: 5674723
Change-Id: I79f1147c65a208efc3f67228c9f0fa5cd050c593
eyEvent.java
c0b7f65ae0594e19d1272e5caf2d83638041d19c 29-Nov-2011 Dianne Hackborn <hackbod@google.com> am 496f6e2a: am b54980d1: Merge "Fix issue #5588689: Black camera preview after coming back from gmail" into ics-mr1

* commit '496f6e2ad656c5bb8a277e191554d16abd290b58':
Fix issue #5588689: Black camera preview after coming back from gmail
5e3064c67fc56440a7d199aab00ea5f74dca5039 29-Nov-2011 Dianne Hackborn <hackbod@google.com> am b54980d1: Merge "Fix issue #5588689: Black camera preview after coming back from gmail" into ics-mr1

* commit 'b54980d1d4d903f68cdfa952256afff01902cd94':
Fix issue #5588689: Black camera preview after coming back from gmail
b54980d1d4d903f68cdfa952256afff01902cd94 29-Nov-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #5588689: Black camera preview after coming back from gmail" into ics-mr1
cb52d6760078197cd6d0c16349348dd2ad16a88c 29-Nov-2011 Romain Guy <romainguy@google.com> am 02e88f23: am 46685db9: Merge "Fix crash in existing applications Bug #5659476" into ics-mr1

* commit '02e88f23a65c602e83d7a46c0925e653b948e418':
Fix crash in existing applications Bug #5659476
8b435d966a1243da67518365a105906d5525e597 29-Nov-2011 Romain Guy <romainguy@google.com> am 46685db9: Merge "Fix crash in existing applications Bug #5659476" into ics-mr1

* commit '46685db957cc01cef4ba198aafe44d99fe31f62c':
Fix crash in existing applications Bug #5659476
46685db957cc01cef4ba198aafe44d99fe31f62c 29-Nov-2011 Romain Guy <romainguy@google.com> Merge "Fix crash in existing applications Bug #5659476" into ics-mr1
d3ea6b40bb8f0fbc2a877963db1ab4fa0fc02b2f 29-Nov-2011 Chet Haase <chet@google.com> am 38928899: am 8990cb57: Merge "Fix flashing wifi dialog after rotating back from landscape." into ics-mr1

* commit '3892889952b0ad3fa0b095c96d8ae2ae110585e2':
Fix flashing wifi dialog after rotating back from landscape.
ec5f7df910196ead350af856558eebf8675b7f3d 29-Nov-2011 Chet Haase <chet@google.com> am 8990cb57: Merge "Fix flashing wifi dialog after rotating back from landscape." into ics-mr1

* commit '8990cb5768efba46bb1d7458377dd44498afcfdb':
Fix flashing wifi dialog after rotating back from landscape.
08837c246c9c27902c59b41c8661c2f27a4aa2bc 28-Nov-2011 Chet Haase <chet@google.com> Fix flashing wifi dialog after rotating back from landscape.

There was an error in some of the OpenGL layer logic such that we would
occasionally set up a layer for rendering and then not clean up when it was
done. This caused future OpenGL rendering to go into that layer instead of
to the buffers being displayed on the screen, resulting in artifacts including
flashes and displaying of stale content. This happened specifically when
using the wifi settings dialog with the InputMethod keyboard displayed,
but it was probably visible in other situations as well.

Issue #5628248: Flickering/flashing after entering password for WiFi

Change-Id: I38139f620b310f4309570fa7224552d2ee633999
ardwareRenderer.java
iewRootImpl.java
ff98fa5a847f66e591287154c634ef7895a9549c 28-Nov-2011 Romain Guy <romainguy@google.com> Fix crash in existing applications
Bug #5659476

The FontRenderer was not cleaning up its temporary state, leading
to crashes when invoking renderDropShadow.

Change-Id: I43b24820dd5625af8c080bbe11b64de2f74164b2
LES20Canvas.java
6d05fd3c795088ac60f86382df5a66d631e8a0cb 19-Nov-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5588689: Black camera preview after coming back from gmail

Make surface management between SurfaceView and the window manager
much more controlled, to ensure that SurfaceView always gets to report
the current surface is destroyed before the window manager actually
destroys it.

Also a small tweak to allow windows that have a wallpaper background
to still have a preview window. This makes launching home after it
has been killed feel much more responsive.

Change-Id: I0d22cf178a499601a770cb1dbadef7487e392d85
WindowSession.aidl
urfaceView.java
iewRootImpl.java
indowManagerImpl.java
0ce49783083bf81cc1ea812e029fc94e1625a8fd 22-Nov-2011 Romain Guy <romainguy@google.com> am e25ed181: am 26dd54f8: Merge "Ensure we have an EGL context when building layers Bug #5638421" into ics-mr1

* commit 'e25ed181070579fca2522112b1659af2fbf8ddfc':
Ensure we have an EGL context when building layers Bug #5638421
193187afbc320f8acb243abed58778b0bd326d5c 22-Nov-2011 Romain Guy <romainguy@google.com> am 26dd54f8: Merge "Ensure we have an EGL context when building layers Bug #5638421" into ics-mr1

* commit '26dd54f87c1daaa369576d9abea823c8105bd702':
Ensure we have an EGL context when building layers Bug #5638421
26dd54f87c1daaa369576d9abea823c8105bd702 22-Nov-2011 Romain Guy <romainguy@google.com> Merge "Ensure we have an EGL context when building layers Bug #5638421" into ics-mr1
24692d6c9e35e99ec77f5fb57c53bfeef30315a1 22-Nov-2011 Romain Guy <romainguy@google.com> am ae64dfb5: am 1766b0e2: Fix the build

* commit 'ae64dfb5c34eed73bdc7ada30645ffec003c25fc':
Fix the build
3526b00a53a2582a51ff8b98ac1400a48f351107 22-Nov-2011 Romain Guy <romainguy@google.com> am c26e4d18: am 8cd39e3a: Merge "Notify views when EGL resources are about to be destroyed Bug #5639899" into ics-mr1

* commit 'c26e4d18a20ab0b3e769fb3e547994f1c27d6713':
Notify views when EGL resources are about to be destroyed Bug #5639899
f6286e5e9a22eb985f3fd3db00fa5df8536fce9b 22-Nov-2011 Romain Guy <romainguy@google.com> am 1766b0e2: Fix the build

* commit '1766b0e25de5a66f9d0f6e73a2c342272fcadc71':
Fix the build
1766b0e25de5a66f9d0f6e73a2c342272fcadc71 22-Nov-2011 Romain Guy <romainguy@google.com> Fix the build

Change-Id: I3814c6c39eda2a4b56902e2044fbb121b4885e5d
extureView.java
f0401bc1facf5fbc9a3f34cf9c55e41b70ef4a9d 22-Nov-2011 Romain Guy <romainguy@google.com> am 8cd39e3a: Merge "Notify views when EGL resources are about to be destroyed Bug #5639899" into ics-mr1

* commit '8cd39e3a104d0739fd2f1ae73e5f4081f1528c6c':
Notify views when EGL resources are about to be destroyed Bug #5639899
d0609e41ab0caa40058b711bbd03dd93fe8af607 22-Nov-2011 Romain Guy <romainguy@google.com> Ensure we have an EGL context when building layers
Bug #5638421

This bug was introduced by the recent changes that force more frequent
flushes of the GL renderer.

Change-Id: I55dd4ace6ba1e70ab41927150d6c60c37d7fb196
iew.java
afb1a9e2794d6c0bac667d527b7aa77619bd99fb 22-Nov-2011 satok <satok@google.com> Merge "add sentence level spell checker hidden apis"
0dc1f648a09b46c45190ba1ce7daecf7fada4347 18-Nov-2011 satok <satok@google.com> add sentence level spell checker hidden apis

Change-Id: If65c89044bed064fd01a554e33176f64f7c21c0f
extservice/SpellCheckerSession.java
extservice/SpellCheckerSubtype.java
extservice/SuggestionsInfo.java
extservice/TextServicesManager.java
31f2c2e94656530fbf6282803e62edb47e9a894d 21-Nov-2011 Romain Guy <romainguy@google.com> Notify views when EGL resources are about to be destroyed
Bug #5639899

Change-Id: I7c5d8bebf02294426f5b3ab1358a31c38a4fd064
ardwareRenderer.java
extureView.java
iew.java
iewRootImpl.java
indowManagerImpl.java
e9dc7c9f031b494c6ebe156de957f0a8f2cd58b0 19-Nov-2011 Svetoslav Ganov <svetoslavganov@google.com> am bdc2912d: am d8a3cabc: Merge "Text selection AccessibilityEvents are missing text." into ics-mr1

* commit 'bdc2912da64e5e6402c73997d637224d905ae825':
Text selection AccessibilityEvents are missing text.
44e3a8a4ac7fca26aa40290fda6dc4fb43ef1d82 18-Nov-2011 Svetoslav Ganov <svetoslavganov@google.com> am d8a3cabc: Merge "Text selection AccessibilityEvents are missing text." into ics-mr1

* commit 'd8a3cabcb11c02c54b76590e0f60c32b43b9f2fc':
Text selection AccessibilityEvents are missing text.
84dd52e394d27b5cdf638132808e2585a9049480 18-Nov-2011 Svetoslav Ganov <svetoslavganov@google.com> Text selection AccessibilityEvents are missing text.

The text selection change event was not added to the text
populating accessibility events in View.

bug:5638709

Change-Id: Ie7e319bc07d7e6c48f178a6c1bd22b1fe32ff515
iew.java
ccessibility/AccessibilityEvent.java
8bc972a5a4c3e24d1b9ba9b1dd4b4e2bbb5dadac 17-Nov-2011 satok <satok@google.com> am 9e502e90: am e5febfd5: Merge "Clean up the spell checker framework" into ics-mr1

* commit '9e502e90b58b4d0bbb792ef1c40dcfd9b9322ce8':
Clean up the spell checker framework
77c5f4def49357a89abd9849b0bab950179d71f4 17-Nov-2011 Dianne Hackborn <hackbod@google.com> am 9aa6bd1c: am 717a25dc: Add new ManagedEGLContext class to help apps participate in memory trimming.

* commit '9aa6bd1c34fe3583fe31f283a6415e84fec12567':
Add new ManagedEGLContext class to help apps participate in memory trimming.
0427550509c857105f878f1f79b54dee0f899e90 17-Nov-2011 satok <satok@google.com> am e5febfd5: Merge "Clean up the spell checker framework" into ics-mr1

* commit 'e5febfd5bd9b19a01383760b523476ba7f013a5c':
Clean up the spell checker framework
e5febfd5bd9b19a01383760b523476ba7f013a5c 17-Nov-2011 satok <satok@google.com> Merge "Clean up the spell checker framework" into ics-mr1
060677f4686a93d92117d7d472e754423a368bdb 17-Nov-2011 satok <satok@google.com> Clean up the spell checker framework

Change-Id: I64c0d813e53a4ebf8d7e63463e36f6900f1aa7d3
extservice/SpellCheckerSession.java
56caf7751bbacb97cb8411a7f829cd4c87ec25b0 16-Nov-2011 Dianne Hackborn <hackbod@google.com> am 717a25dc: Add new ManagedEGLContext class to help apps participate in memory trimming.

* commit '717a25dc2a411edb548859cd6870363346c71b01':
Add new ManagedEGLContext class to help apps participate in memory trimming.
717a25dc2a411edb548859cd6870363346c71b01 16-Nov-2011 Dianne Hackborn <hackbod@google.com> Add new ManagedEGLContext class to help apps participate in memory trimming.

This class provides an API for an application to know when it is time to
destroy its EGL context when memory is being trimmed. By having this in
the framework, we can still detect whether it will be useful to destroy
any EGL contexts (because we know if doing so will destroy all of them).

Change-Id: I1eac8d640052778052926b875c7928008f752182
ardwareRenderer.java
indowManagerImpl.java
47a0a8832f819b3b55c503aa787d615f036b7100 16-Nov-2011 Mike Lockwood <lockwood@android.com> Merge "AudioManager: Add support for master mute" into ics-aah
221096fdd6963a0f7090b928cfb92b9267f32d7a 16-Nov-2011 Jeff Brown <jeffbrown@google.com> am 4c0e0dd2: am 3e7497b4: Merge "Eliminate hw.keyboards system properties." into ics-mr1

* commit '4c0e0dd29dcce33e7521b11d01d21d9431f3b264':
Eliminate hw.keyboards system properties.
eba508a5378319401fcee408bf5d9d4efb455874 16-Nov-2011 Jeff Brown <jeffbrown@google.com> am 3e7497b4: Merge "Eliminate hw.keyboards system properties." into ics-mr1

* commit '3e7497b4eccd3db1d6ff0ce1f1f2db11f9a8eeef':
Eliminate hw.keyboards system properties.
1e08fe90df18930691b0c2ec22e5db25d7fcb4cf 16-Nov-2011 Jeff Brown <jeffbrown@google.com> Eliminate hw.keyboards system properties.

Stop using system properties to publish information about
the key character map path. Instead, we can retrieve it
on demand by asking the window manager.

It was possible to exhaust the supply of system properties
when repeatedly adding and removing input devices.

Bug: 5532806
Change-Id: Idd361a24ad7db2edc185c8546db7fb05f9c28669
nputDevice.java
eyCharacterMap.java
cfbcd3bf21c8453e9afd7740fdb7fc272c362389 14-Nov-2011 Mike Lockwood <lockwood@android.com> AudioManager: Add support for master mute

Change-Id: I98e87d1e266e0523c4aacb23cc5c4b3fdc7a1eac
Signed-off-by: Mike Lockwood <lockwood@android.com>
olumePanel.java
28a5ec9613a824d2ec15ce5e5cec77a6fcf444d5 14-Nov-2011 Dave Burke <daveburke@google.com> am 2cfb873c: am 9d66da8a: Merge "Revert "Discard framebuffer rendering queues when discarding layers"" into ics-mr1

* commit '2cfb873c9f0b56f2c7d694a21c968511223933af':
Revert "Discard framebuffer rendering queues when discarding layers"
3d151e19662a5e6698bb157a63a332e38146beb1 14-Nov-2011 Dave Burke <daveburke@google.com> am 9d66da8a: Merge "Revert "Discard framebuffer rendering queues when discarding layers"" into ics-mr1

* commit '9d66da8ae61a8520f46ee7df3cbb374852d9da91':
Revert "Discard framebuffer rendering queues when discarding layers"
7077506f9945b87b02bdd47ffce75a5b813c821c 14-Nov-2011 Dave Burke <daveburke@google.com> Revert "Discard framebuffer rendering queues when discarding layers"

This reverts commit da96f8ac2c1c35a54f3f36e6d776cb386a251d03.
LES20Canvas.java
LES20Layer.java
ardwareLayer.java
iew.java
iewGroup.java
3f511aaf1cb9dfa69e2f4225a5bd41bec0864cc7 14-Nov-2011 Mathias Agopian <mathias@google.com> am a16ee939: am 28587497: Merge "Discard framebuffer rendering queues when discarding layers Bug #5581817" into ics-mr1

* commit 'a16ee9390e1fcea8ff7cbefd253659c37f2999a3':
Discard framebuffer rendering queues when discarding layers Bug #5581817
7c112d1bfb497e00286e090992ad480511855a2e 14-Nov-2011 Mathias Agopian <mathias@google.com> am 28587497: Merge "Discard framebuffer rendering queues when discarding layers Bug #5581817" into ics-mr1

* commit '2858749704ea7b130499cf2ac7b3e1c3331f1582':
Discard framebuffer rendering queues when discarding layers Bug #5581817
85ab135b2bb586c5a111d7a3b5c71cb9fcebb0b6 11-Nov-2011 Romain Guy <romainguy@google.com> am 50a66f0e: Merge "Terminate EGL when an app goes in the background" into ics-mr1

* commit '50a66f0e9c5a85a6af4a99eb66656a69eba24572':
Terminate EGL when an app goes in the background
1333742bedc9b462024302f302e3a7f27053df66 11-Nov-2011 Akwasi Boateng <akwasi.boateng@ti.com> am cb0db030: Merge branch \'ics-mr1-plus-aosp\' of ssh://android-git:29418/platform/frameworks/base into ics-mr1-plus-aosp

* commit 'cb0db0306b5849a35d3d99eea1b34ce019c6f0d8':
Make the overridden ImageView#setVisibility remotable
Clamp non-monotonic stats instead of dropping.
DO NOT MERGE. Fix leak in LayoutTransition
Fix lastVisible/global rects
Fix Wimax-less build.
Fix leak in LayoutTransition
Deferring wallpaper update to improve workspace scrolling (issue 5506959)
Terminate EGL when an app goes in the background
boot animation is dithered and scaled
Fix NdefRecord byte-stream constructor.
PopupWindow dismiss() can get into a recursive loop.
Fold WiMAX state into the mobile RSSI.
Remove dedicated wimax icon to fix RSSI layout.
da96f8ac2c1c35a54f3f36e6d776cb386a251d03 11-Nov-2011 Romain Guy <romainguy@google.com> Discard framebuffer rendering queues when discarding layers
Bug #5581817

Change-Id: If612846ec5f7793710fc4df152791fb32c506551
LES20Canvas.java
LES20Layer.java
ardwareLayer.java
iew.java
iewGroup.java
50a66f0e9c5a85a6af4a99eb66656a69eba24572 11-Nov-2011 Romain Guy <romainguy@google.com> Merge "Terminate EGL when an app goes in the background" into ics-mr1
8ff6b9ebeeb24a6161ec6098e6bfdf8790ee5695 10-Nov-2011 Romain Guy <romainguy@google.com> Terminate EGL when an app goes in the background

This does not happen on high end gfx devices. This happens
only if only one EGL context is initialized in the current
process.

Change-Id: Ibd1737efdf84eef8a84108b05795440d1ae9964e
LES20Canvas.java
ardwareRenderer.java
iewRootImpl.java
indowManagerImpl.java
07c0fe4c4fdb13d8e743c80394eddd292631f735 11-Nov-2011 Romain Guy <romainguy@google.com> am f1062114: am a3cc20ff: Merge "Initialize egl_cache with an app writeable file" into ics-mr1

* commit 'f1062114874f1cf46de479031d9ad3ad3cae1131':
Initialize egl_cache with an app writeable file
ed68299b99a854696f99c0825de5ebe09d70f25a 11-Nov-2011 Romain Guy <romainguy@google.com> am a3cc20ff: Merge "Initialize egl_cache with an app writeable file" into ics-mr1

* commit 'a3cc20fff073bd3ca588f1e61f0f7034aecf3ebb':
Initialize egl_cache with an app writeable file
a3cc20fff073bd3ca588f1e61f0f7034aecf3ebb 11-Nov-2011 Romain Guy <romainguy@google.com> Merge "Initialize egl_cache with an app writeable file" into ics-mr1
558f4f6bd4862745075b5dff4881b74bf232ad3d 10-Nov-2011 Adam Powell <adamp@google.com> am 67121fd7: Merge "Fix bug 5581874 - Animated drawables don\'t start as expected" into ics-mr1

* commit '67121fd7b241ceafe7339f5f154781572819f87b':
Fix bug 5581874 - Animated drawables don't start as expected
a95826582773a194ed7fb66bc29c9b82fe9bb8d1 10-Nov-2011 Romain Guy <romainguy@google.com> Initialize egl_cache with an app writeable file

Change-Id: I5dda234feab0fedd6e4179a80715ae20dee1c833
ardwareRenderer.java
5d35fd79a78f9e17089ab36096f7b4f2ba7d99b3 10-Nov-2011 Adam Powell <adamp@google.com> am ba44080d: am 67121fd7: Merge "Fix bug 5581874 - Animated drawables don\'t start as expected" into ics-mr1

* commit 'ba44080d834d23d0bc7d118a4950f837eeaca96a':
Fix bug 5581874 - Animated drawables don't start as expected
e60e3e2b38227b2d567c264f567f6f49656f7187 10-Nov-2011 satok <satok@google.com> am 3869eac4: am 114c4d38: Merge "Introduce an API to cancel pending/running spell check tasks" into ics-mr1

* commit '3869eac42b3d6fc0ecef8f096fbb4b5ddafca6f7':
Introduce an API to cancel pending/running spell check tasks
37419d7321e71edb179faa0eafd2a2acf12b62c1 10-Nov-2011 Adam Powell <adamp@google.com> Fix bug 5581874 - Animated drawables don't start as expected

Fix a bug that caused animated drawables to not schedule properly when
a view has not yet been attached. Also make ImageViews update their
drawable visibility state properly, which will handle scheduling
concerns as ImageViews are attached and detached from their windows.

This should also fix the bug where animated notification icons in the
status bar do not animate until the posting app posts an update to the
notification.

Change-Id: I24c403182831258d1f251736e920c9efe1d38299
iew.java
b199d4fadae313a4d3c751bcd35efb79504aef04 10-Nov-2011 satok <satok@google.com> am 114c4d38: Merge "Introduce an API to cancel pending/running spell check tasks" into ics-mr1

* commit '114c4d3843758a2a1ffb32eb2719d65cdee637f8':
Introduce an API to cancel pending/running spell check tasks
b4aff97c85e730857893742f73a082f6b8d139ca 02-Nov-2011 satok <satok@google.com> Introduce an API to cancel pending/running spell check tasks

Bug: 5554629

Change-Id: Ifd840ea13976813639a2ee259124a21d9bb56893
extservice/SpellCheckerSession.java
a2aa08e20cb4f1e302bb7ae05882cd1be8cfa0d2 08-Nov-2011 Mike Lockwood <lockwood@android.com> AudioManager: transparently convert volume settings for other streams to master volume if config_useMasterVolume is set.

This allows Music2 and other media apps to control master volume without changing their code

Bug: 5567694

Change-Id: I48b6260b193b22c395be5a31cd1d270b2929a91e
Signed-off-by: Mike Lockwood <lockwood@android.com>
olumePanel.java
2a639347aebb56febdef21a78c70fb0433adc1e5 05-Nov-2011 Chet Haase <chet@google.com> resolved conflicts for merge of aa4d2f69 to master

Change-Id: Iadb63ecf52d8bd2911276fa3db55a43c9c378620
18c3ac45a4f174d480e4cf519863c83c078fb58f 04-Nov-2011 Chet Haase <chet@google.com> am aa4d2f69: Merge "Improve Launcher drag performance." into ics-mr1

* commit 'aa4d2f69bdc2acbed04b7662a55308b72f108dff':
Improve Launcher drag performance.
1f4786bbe1ed7ae54b94cd52c0e1a4a826fecd68 02-Nov-2011 Chet Haase <chet@google.com> Improve Launcher drag performance.

Launcher swiping looks choppy. It's because we deliver the
motion events of the drags asynchronously, and sometimes we
may get an event to redraw before the motion event is posted, so we
end up drawing again without updating to the latest motion
information.

This fix makes input event processing more proactive. Every time
we run ViewRootImpl.performTraversals() (which is what
happens whenever we need to layout, measure, and/or draw), we
first process all pending input events, ensuring that we are
completely up-to-date with posted events prior to drawing, so that the
drawing we do is synchronous with the events we've received.
This eliminates the choppiness and means that we can now get the full
refresh rate on the screen with drag events.

The fix was done for Launcher, but it is pervasive in the system,
so this may fix other laggy drag behavior as well.

Change-Id: I8dbed6acadc2662f317f736e769f536f555701aa
iewRootImpl.java
d548ef3b804f9289aea2383ad1786c0f1b45c8ad 03-Nov-2011 satok <satok@google.com> am cb1001b2: Merge "Fix a memory leak of a Binder in SpellCheckerService" into ics-mr1

* commit 'cb1001b2829f7da86f66f2634bd40cbc51ba4998':
Fix a memory leak of a Binder in SpellCheckerService
ae8f84615135edda65ca987d4bdec5fb4a509648 03-Nov-2011 satok <satok@google.com> am cb1001b2: Merge "Fix a memory leak of a Binder in SpellCheckerService" into ics-mr1

* commit 'cb1001b2829f7da86f66f2634bd40cbc51ba4998':
Fix a memory leak of a Binder in SpellCheckerService
cb1001b2829f7da86f66f2634bd40cbc51ba4998 03-Nov-2011 satok <satok@google.com> Merge "Fix a memory leak of a Binder in SpellCheckerService" into ics-mr1
4b6de4f5a9c2fa08a86b516a49dea97a56e3ce05 02-Nov-2011 Svetoslav Ganov <svetoslavganov@google.com> am 6e42470f: Merge "Accessibility window query APIs should respect root name space." into ics-mr1

* commit '6e42470f928bbf60c9fd3d17a2a69a4b96cec170':
Accessibility window query APIs should respect root name space.
cf3b31704ae7743ca85219bca9698adcf6fbc67a 02-Nov-2011 Dianne Hackborn <hackbod@google.com> am ad41a94b: Merge "Some optimizations." into ics-mr1

* commit 'ad41a94b298f834e13632ee29b27cefd75f10012':
Some optimizations.
9e9a64e87549cd668939c8edfb71b2d7866f5e74 02-Nov-2011 Dianne Hackborn <hackbod@google.com> am f136aa34: Merge "Various performance and other work." into ics-mr1

* commit 'f136aa341abaaf7fd6f7632d41a30b2989d93985':
Various performance and other work.
d5a077b89eaf941ba87362d208cbf028a268307f 02-Nov-2011 Svetoslav Ganov <svetoslavganov@google.com> am 6e42470f: Merge "Accessibility window query APIs should respect root name space." into ics-mr1

* commit '6e42470f928bbf60c9fd3d17a2a69a4b96cec170':
Accessibility window query APIs should respect root name space.
6e42470f928bbf60c9fd3d17a2a69a4b96cec170 02-Nov-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessibility window query APIs should respect root name space." into ics-mr1
74061ff90453c79ddbde468f630a41425da07710 02-Nov-2011 satok <satok@google.com> Fix a memory leak of a Binder in SpellCheckerService

Bug: 5499490

Change-Id: I167a3e9dfdd6edd06c6ad993fbff3a535c81b09c
extservice/SpellCheckerSession.java
a3ccf0319c6b0e6c89564db3889e08ec90d0f6f4 02-Nov-2011 Dianne Hackborn <hackbod@google.com> am ad41a94b: Merge "Some optimizations." into ics-mr1

* commit 'ad41a94b298f834e13632ee29b27cefd75f10012':
Some optimizations.
0500b3cfda5192efc09d6d4344b0c6c785c0a815 01-Nov-2011 Dianne Hackborn <hackbod@google.com> Some optimizations.

- Don't try to create a thumbnail bitmap on the client side. This
wastes 64k, and isn't needed since we are doing screenshots.
- Optimize View to put all of the callback pointers out of line.
Added a couple new APIs so these don't need to be protected/public.
- Lazily create ViewGroup's cache paint.
- Change FrameworkPerf app to not use HW accel drawing, to give better
comparison with GB.

Change-Id: Iec56d02459820d74a4cc9c7ec9c1856563c82c7b
iew.java
iewGroup.java
88175571f23ca7cff6d21cd1d5d6345cfacaa84a 01-Nov-2011 Dianne Hackborn <hackbod@google.com> am f136aa34: Merge "Various performance and other work." into ics-mr1

* commit 'f136aa341abaaf7fd6f7632d41a30b2989d93985':
Various performance and other work.
57f3b566db630233087b121d3d43ecd81a6dfd95 01-Nov-2011 Svetoslav Ganov <svetoslavganov@google.com> Accessibility window query APIs should respect root name space.

1. The window query API used to not-respect the root name space
while traversing the parent relation i.e. a client was able
to fetch the parent of a root name space node.

2. Children that are root name space were reported but their descendants
not. Actually such children should not be reported since they are
the root of a separate logical sub-tree. Such a tree is exposed by
its root allowing its traversal. The accessibility APIs should be
able to explore a virtual tree, i.e. one with a descendant which is
root name space, only if an accessibility event from there was received.

bug:5480096

Change-Id: I4c4d805aa2f6d4edba86eda213b5239bea83eed2
iew.java
iewGroup.java
2c84cfc001fb92a71811bf7384b7f865ff31ff9d 31-Oct-2011 Dianne Hackborn <hackbod@google.com> Various performance and other work.

- IME service now switches between visible and perceptible depending on
whether it is being showm, allowing us to more aggressively free its
memory when not shown.

- The activity display time is no longer delayed by the activity
transition animation.

- New -R (repeat) option for launching activities with the am command.

- Improved some documentation on Loader to be clear about some methods
that apps should not normally call.

- FrameworkPerf test now allows you to select individual tests to run.

Change-Id: Id1f73de66dc93d63212183958a72119ad174318b
ApplicationToken.aidl
468825f60a722dba0961a97b851e4f951e38929e 31-Oct-2011 Amith Yamasani <yamasani@google.com> am 18936d7d: am 69e640ee: Merge "Bring back the old-style Ring/Vibrate/Silent states when using volume keys." into ics-mr0

* commit '18936d7d1d0964ba3f5112c5e3ce60f31e1ba5bb':
Bring back the old-style Ring/Vibrate/Silent states when using volume keys.
92537e6ff21d4b20738fae851c2174ea568eb843 31-Oct-2011 Ed Heyl <ed@google.com> merged by hand (services/java/com/android/server/PowerManagerService.java needs to be reviewed)

Change-Id: I86d1111d86cd1646ebc8a88d58aa393089e9f928
d412f9f15b29865c458ebe2f4fbad95a2625c15c 31-Oct-2011 satok <satok@google.com> am 4a6d0879: Merge "Add a flag for recommended suggestions of the spell checker" into ics-mr1

* commit '4a6d0879465ea6eb52b2b75e9fa2a4a84e1b0d86':
Add a flag for recommended suggestions of the spell checker
18936d7d1d0964ba3f5112c5e3ce60f31e1ba5bb 30-Oct-2011 Amith Yamasani <yamasani@google.com> am 69e640ee: Merge "Bring back the old-style Ring/Vibrate/Silent states when using volume keys." into ics-mr0

* commit '69e640ee84fc218d6318acaf73a1c1841d7fba6b':
Bring back the old-style Ring/Vibrate/Silent states when using volume keys.
c696a53d1fe4d61373c5dc64dd057d322da90c8f 29-Oct-2011 Amith Yamasani <yamasani@google.com> Bring back the old-style Ring/Vibrate/Silent states when using volume keys.

In order to completely mute the ringer (no vibrate), introduce an extra
state beyond mute, which mutes the vibrator as well, if it was enabled.

Bug: 5530217

Change-Id: Ib1f299ee6bbca56c1aa7e1100662591362d08307
olumePanel.java
4a6d0879465ea6eb52b2b75e9fa2a4a84e1b0d86 29-Oct-2011 satok <satok@google.com> Merge "Add a flag for recommended suggestions of the spell checker" into ics-mr1
ff35661b5de50ce40aea0bbbf900fadbf2e4fad9 29-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Fixing the build breakage due to bad merge."
f31aba7346c6991ac8848f3b3992651a68781a10 29-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Fixing the build breakage due to bad merge.

Change-Id: I2804bccc44e061229c3f7b2ad9e00b9e0a0ba916
iewRootImpl.java
59d04a0ce4757aed0b3506f9700df9a83ec970f6 29-Oct-2011 Chet Haase <chet@google.com> am d568bba5: Merge "Optimize handling of scrolled wallpapers" into ics-mr1

* commit 'd568bba507b0f66d4d57c67b08ade894d2c75e53':
Optimize handling of scrolled wallpapers
f79f476fd1e25d3d7bf77e890d064a503537e939 29-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> resolved conflicts for merge of c00d2ddc to master

Change-Id: I075cc5b5df2909152ee463f8a0c7534344b47c62
d568bba507b0f66d4d57c67b08ade894d2c75e53 29-Oct-2011 Chet Haase <chet@google.com> Merge "Optimize handling of scrolled wallpapers" into ics-mr1
a8e5a2bcd6a0d35893187c6df42425c03be005da 28-Oct-2011 Chet Haase <chet@google.com> Optimize handling of scrolled wallpapers

Swiping the home screen causes the WindowManagerService to do
a bunch of work to keep the wallpapers in sync. First, it lays out
and places all windows. Also, it notifies the SystemUI process that
the wallpaper position has changed.

The layout/place operation is too much work - we only need to set
the position values for the wallpaper, not relayout the whole system.

The notification mechanism must exist, but should be optional. Most
wallpapers don't care (especially static ImageWallpapers). So we'll
give them a new API (WallpaperService.Engine.setWantsOffsets()) to
allow wallpapers to opt out of this process and avoid the performance
overhead.

Change-Id: I66c38375438937f14f6f5550565b28eb204b1e06
indowManager.java
e707859415f4c8e1c01228dfaa58fb0a690d442e 28-Oct-2011 Romain Guy <romainguy@android.com> Load identity matrix when calling Canvas.setMatrix(null)
Bug #5446826

Change-Id: I3a7817f266b17e9abe948500816d629edd9a2822
LES20Canvas.java
af5b4f471df108ffbe1c3861d18b2141710d7bf8 28-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Fixing a memory leak in accessibility enteraction APIs.

1. AccessibilityInteractionConnection was non-static inner
class, hence keeping a handle to the enclosing ViewRootImpl
resulting in leaking activities.

bug:5525412

Change-Id: Ie438861663d623d503995844125d9e15d677fc32
iewRootImpl.java
5020e7e2d37865da862846b97d9959e83244a35e 27-Oct-2011 Mike Lockwood <lockwood@android.com> VolumePanel: Add support for master volume

Change-Id: I3119eb2b7d3b5e7ce87f1660b50c10ab79c7bbdf
Signed-off-by: Mike Lockwood <lockwood@android.com>
olumePanel.java
a17b3506234638ef257a6b751a97931dc347a21b 28-Oct-2011 satok <satok@google.com> Add a flag for recommended suggestions of the spell checker

Bug: 5356130
Change-Id: I8361a2750670dadd514d02dd24bf492ce42ff8fc
extservice/SuggestionsInfo.java
006fa48bce7759013d9025376cd5167236c434a7 28-Oct-2011 Gilles Debunne <debunne@google.com> Cleaning and new constant in ViewConfiguration

Fixed the documentation and comments for dips versus pixels.

Added a new DOUBLE_TAP_TOUCH_SLOP to replace the hard-coded and
*unscaled* value used in GestureDetector. Assuming this value was
ok for hdpi devices, set it to 20 / 1.5 ~= 16 in dips.

New method kept hidden to keep API unchanged.

Change-Id: I6d237faa2fdb7714e0e3558978af130df9a061a5
estureDetector.java
iewConfiguration.java
ec6c89b616f5ae50f26185e14ef0f104f7e3f956 27-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Minor documentation fixes for the APIs to expose virtual view tree."
437049b76e6cf93ac71d29836138f764bc8c3a65 27-Oct-2011 Mark Brophy <mbrophy@google.com> Merge "Fix scroll listeners lost in ViewTreeObserver."
af0d984a5850666a374d6f7fc690664d33d57568 27-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> resolved conflicts for merge of b0267e28 to master

Change-Id: Ic65ab83958b2e6bb941fe015b557fd2fd8f80683
c0291bb2eb96e96e0fe06047be929f89aa985ae6 26-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> AccessibilityNodeInfo makes incorrect check before calling into the system.

AccessibilityNodeInfo#getParent is checking whether the source view
accessibility id is specified instead that of the parent.

bug:5505799

Change-Id: I436fd2327def2762b4d307819ba0c23baa9a4e03
ccessibility/AccessibilityNodeInfo.java
71b4e71c67df79f53b582fabb34b96ddbe23fe0f 25-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Minor documentation fixes for the APIs to expose virtual view tree.

Change-Id: I94b74196483fb55ca67e0a50eebab0412c88831c
ccessibility/AccessibilityNodeInfo.java
757c697f73561ef4cfae9e3da64e9b2894d24147 25-Oct-2011 Mark Brophy <mbrophy@google.com> Fix scroll listeners lost in ViewTreeObserver.

Bug: 5512156
Change-Id: I4bb7ccab39053ae75a4bef9309ab334a4ccecf51
iewTreeObserver.java
021078554b902179442a345a9d080a165c3b5139 04-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Adding APIs to enable reporting virtual view hierarchies to accessibility serivces.

Added an interface that is the contract for a client to expose a virtual
view hierarchy to accessibility services. Clients impement this interface
and set it in the View that is the root of the virtual sub-tree. Adding
this finctionality via compostion as opposed to inheritance enables apps
to maintain backwards compatibility by setting the accessibility virtual
hierarchy provider on the View only if the API version is high enough.

bug:5382859

Change-Id: I7e3927b71a5517943c6cb071be2e87fba23132bf
iew.java
iewRootImpl.java
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityNodeProvider.java
ccessibility/AccessibilityRecord.java
ccessibility/IAccessibilityInteractionConnection.aidl
972b7d2c3bbb54a61a505d9d78927a158356ffb6 21-Oct-2011 Gilles Debunne <debunne@google.com> Merge "Typo in ViewRootImpl"
c8c2e17ecd3488b41d651369d942fafc745e6baa 20-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Add content description setter to RemoteViews"
b5470d52a4fe6e11edb55b149b263e3462acf31b 20-Oct-2011 Jean Chalard <jchalard@google.com> Merge "Fix a warning from the binder, step 2."
de9dbb05ce57a1617efc131f6a724c2a2b164bf7 20-Oct-2011 Jean Chalard <jchalard@google.com> Fix a warning from the binder, step 2.

This patch fixes the following warning:
W/Binder: The following Binder class should be static or
leaks might occur: android.view.inputmethod
.InputMethodManager.ControlledInputConnectionWrapper

...in hope of removing a possible memory leaks.

Change-Id: I081d10fd839f2985d7081492f4f5cf0b4da42fd2
Bugs: 5481376, 5461066
nputmethod/InputMethodManager.java
a80838d9d63fcc9a83a9e7c99884e5b50316d4f0 20-Oct-2011 Jean Chalard <jchalard@google.com> Fix a warning from the binder.

This patch fixes the following warning:
W/Binder: The following Binder class should be static or
leaks might occur: android.view.textservice
.SpellCheckerSession.InternalListener

...in hope of removing a possible memory leaks.
However in my tests it does nothing at all for the memory leak
in bug 5461066, so it was probably unrelated.

Change-Id: Id776665e9483121d22cc91e8d2d9f32e3413ec96
Bugs: 5481376,5461066
extservice/SpellCheckerSession.java
22522289fc0fda5c5fdd8c74e72c9f1f84e421f1 20-Oct-2011 Daniel Sandler <dsandler@android.com> am 84e825a8: Merge "Add hasNavigationBar() to the window manager." into ics-mr0

* commit '84e825a84d7dde03042228c79638935c92d13c92':
Add hasNavigationBar() to the window manager.
0c4ccff36930ff4f0292b94ad51e164c9fa060a3 19-Oct-2011 Daniel Sandler <dsandler@android.com> Add hasNavigationBar() to the window manager.

It is no longer sufficient to check the value of
internal.R.bool.config_showNavigationBar to determine if a
navigation bar (separate from the status bar) is shown on a
device, because the emulator needs to be able to override
this value (now possible by setting qemu.hw.mainkeys to "1"
or "0", for navbar or no navbar, respectively).

This logic is now contained in PhoneWindowManager, and any
clients wishing to know whether the system has a software
nav bar should consult the new hasNavigationBar() method.

Bug: 5404945
Change-Id: I119d32a8c84b88b2ef46f63244e7f11dc5de0359
WindowManager.aidl
iewConfiguration.java
indowManagerPolicy.java
5ac84423a28fea4924eb1c389d647defe1c1b93c 19-Oct-2011 Gilles Debunne <debunne@google.com> Typo in ViewRootImpl

Change-Id: I4a5acfb091ce05f56cdbaa0a56809f377cbf9b39
iewRootImpl.java
2696d0520f9b928264caa5f98c2e6b1e749f9a11 19-Oct-2011 Dave Burke <daveburke@google.com> am 70ac412b: Merge "Add a LayerScreenshot" into ics-mr0

* commit '70ac412b2fe7be2507189a9fdfb30c43b36d56ac':
Add a LayerScreenshot
70ac412b2fe7be2507189a9fdfb30c43b36d56ac 19-Oct-2011 Dave Burke <daveburke@google.com> Merge "Add a LayerScreenshot" into ics-mr0
0ab84ef507f23505a72798fbe25cf4bb2c507ea3 14-Oct-2011 Mathias Agopian <mathias@google.com> Add a LayerScreenshot

A LayerScreenshot is a special type of layer that contains a screenshot of
the screen acquired when its created. It works just like LayerDim.

Make sure to call compositionComplete() after rendering into a FBO.

Bug: 5446982, 5467587, 5466259
Change-Id: I5d8a1b4c327f9973d950cd4f4c0bca7f62825cd4
urface.java
e261e283eaedd38235fc93b2a5c35758c613b10c 19-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Add content description setter to RemoteViews

bug:5480389

Change-Id: I66616f379a244ba7f3552d766f3aaa77f207550a
iew.java
841d79497d9eff2d4df6948380b79db316d24dc3 18-Oct-2011 Chet Haase <chet@google.com> am 87bc53de: Merge "Make notification panel delete-all animation smoother" into ics-mr0

* commit '87bc53de2adf479ad5a5e226bf3d8fd31af6dc21':
Make notification panel delete-all animation smoother
2f2022afa1eb85018368398bd150e9575fc099c9 11-Oct-2011 Chet Haase <chet@google.com> Make notification panel delete-all animation smoother

Making the notfication delete-all animation smoother by carefully
choreographing the various parts of it. The problem with the previous
animation was that there was simply too much going on at the
same time, causing things like layout and recreating display-lists
in the middle of animations that became choppy as a result. This
approach swipes all items off quickly, then scrolls the shade up to the
top, making both sets of animations smoother as a result.

Fixes #5431207: Notification delete-all should be smoother

Change-Id: Iefe8ab5d661e05adcd10379dab85227d17904450
iewRootImpl.java
6bfa10814e3a701fcef5e4f487f14815a155c35f 18-Oct-2011 satok <satok@google.com> am b7ad8253: Merge "Add documents for the spell checker framework and the input method subtype" into ics-mr0

* commit 'b7ad82533596b73ecd40f22bfe48b1b785b05068':
Add documents for the spell checker framework and the input method subtype
b7ad82533596b73ecd40f22bfe48b1b785b05068 18-Oct-2011 satok <satok@google.com> Merge "Add documents for the spell checker framework and the input method subtype" into ics-mr0
44b75030931d9c65c9e495a86d11d71da59b4429 14-Oct-2011 satok <satok@google.com> Add documents for the spell checker framework and the input method subtype

Bug: 4973788

Change-Id: I7e650f336ba1bb8949899e8b2355e6d492a2e4b2
nputmethod/InputMethodSubtype.java
extservice/SpellCheckerSession.java
extservice/TextServicesManager.java
b6233ffd602642cd47a08f951770744cbed54f22 18-Oct-2011 Romain Guy <romainguy@google.com> Merge "Return early when we cannot allocate a hardware layer Bug #5462308"
5cd5c3f7e4df99f47e3def6e3707b9eb8205aef3 18-Oct-2011 Romain Guy <romainguy@google.com> Return early when we cannot allocate a hardware layer
Bug #5462308

Change-Id: I52dab809662f6f42a49ca03edc50f6b98fc35a06
iew.java
06a77ad5ba237f641b035b7d00cd377a22da767e 17-Oct-2011 Amith Yamasani <yamasani@google.com> am 541f6cfb: Merge "Add alarm volume to the list of volumes in the volume overlay." into ics-mr0

* commit '541f6cfba8d1beb240e841530a761a084e354f64':
Add alarm volume to the list of volumes in the volume overlay.
a3dca6fdaacf9ffea4a844848a53c1adeb089897 17-Oct-2011 Mathias Agopian <mathias@google.com> am 840b8a67: Revert "Add a LayerScreenshot"

* commit '840b8a678537519c27ddf2f818494eaa20a135d4':
Revert "Add a LayerScreenshot"
82ced8250f78aff7b96f7c6ae75bcfaf1023d336 17-Oct-2011 Scott Main <smain@google.com> am f755a2e8: Merge "docs: a couple notes for a11y methods in View and cleanup to the A11y service HTML to be semantically correct and thus improve its accessibility :)" into ics-mr0

* commit 'f755a2e8aabfd6b26df4f3f56f0e9cdfb06cc173':
docs: a couple notes for a11y methods in View and cleanup to the A11y service HTML to be semantically correct and thus improve its accessibility :)
4b1415ebd9bf39fa3e4ee62eef14cf613ea37dec 17-Oct-2011 Mathias Agopian <mathias@google.com> am 57337eb7: Merge "Add a LayerScreenshot" into ics-mr0

* commit '57337eb78e65c160fb9c46a01e04c476d1bfdca1':
Add a LayerScreenshot
541f6cfba8d1beb240e841530a761a084e354f64 17-Oct-2011 Amith Yamasani <yamasani@google.com> Merge "Add alarm volume to the list of volumes in the volume overlay." into ics-mr0
840b8a678537519c27ddf2f818494eaa20a135d4 17-Oct-2011 Mathias Agopian <mathias@google.com> Revert "Add a LayerScreenshot"

This reverts commit d6809f40cf61203573ec5dbc437f695cd132cc18.
urface.java
92e1b2d37be8d3d76a55d0242b3cfab7fd8e449a 15-Oct-2011 Amith Yamasani <yamasani@google.com> Add alarm volume to the list of volumes in the volume overlay.

This will be used only for adjusting the alarm volume when an
alarm ringtone is being selected.

Bug: 5164828
Change-Id: Ia4a12b1946fb0715e97101bfd389c6bd33c448c7
olumePanel.java
f755a2e8aabfd6b26df4f3f56f0e9cdfb06cc173 15-Oct-2011 Scott Main <smain@google.com> Merge "docs: a couple notes for a11y methods in View and cleanup to the A11y service HTML to be semantically correct and thus improve its accessibility :)" into ics-mr0
b303d8381d734f48c4e1de4f11bf25950b28adf1 13-Oct-2011 Scott Main <smain@google.com> docs: a couple notes for a11y methods in View and cleanup to the
A11y service HTML to be semantically correct and thus improve its accessibility :)

Change-Id: I483a8a441d802b056f68f82e0e782d86a73298ac
iew.java
ccessibility/AccessibilityManager.java
436e270fbb607d62d59e3694ff46c87fa156f78b 15-Oct-2011 Romain Guy <romainguy@google.com> Merge "Disable hardware acceleration for apps in compatibility mode"
856d4e1a872b5aed6792b33e0360554cb3d19eed 15-Oct-2011 Romain Guy <romainguy@google.com> Disable hardware acceleration for apps in compatibility mode

Change-Id: I2d1c01a30c6fe6fff85c2a9bd6ee6de98e1ed422
iewRootImpl.java
57337eb78e65c160fb9c46a01e04c476d1bfdca1 15-Oct-2011 Mathias Agopian <mathias@google.com> Merge "Add a LayerScreenshot" into ics-mr0
d6809f40cf61203573ec5dbc437f695cd132cc18 14-Oct-2011 Mathias Agopian <mathias@google.com> Add a LayerScreenshot

A LayerScreenshot is a special type of layer that contains a screenshot of
the screen acquired when its created. It works just like LayerDim.

Bug: 5446982
Change-Id: I7814aff2380e7e146937f2b641907be2a30c76cc
urface.java
5a401ddbc89c99315b82b27e1554dbf5141137b4 14-Oct-2011 Joe Fernandez <joefernandez@google.com> am 471fa9d1: Merge "docs: add developer guide cross-references, Project ACRE, Round 2" into ics-mr0

* commit '471fa9d10b4fa4da070c0ffb5fa5ea1354c8e6b8':
docs: add developer guide cross-references, Project ACRE, Round 2
471fa9d10b4fa4da070c0ffb5fa5ea1354c8e6b8 14-Oct-2011 Joe Fernandez <joefernandez@google.com> Merge "docs: add developer guide cross-references, Project ACRE, Round 2" into ics-mr0
96307ff948b92904833c4ba641e04913ec10c1c9 14-Oct-2011 Amith Yamasani <yamasani@google.com> am 00005385: Merge "Use ringer assets for notification volume since the two volumes are tied." into ics-mr0

* commit '000053859290d322625dfcbdb0467fc34d5e55f4':
Use ringer assets for notification volume since the two volumes are tied.
000053859290d322625dfcbdb0467fc34d5e55f4 14-Oct-2011 Amith Yamasani <yamasani@google.com> Merge "Use ringer assets for notification volume since the two volumes are tied." into ics-mr0
558459fe85f56f29a6ed6a4d0adb4a0bd6665884 14-Oct-2011 Joe Fernandez <joefernandez@google.com> docs: add developer guide cross-references, Project ACRE, Round 2

Change-Id: I39a534ae3a2a34b4dabc333a09961012ef911d3e
ontextMenu.java
ragEvent.java
enu.java
enuItem.java
ubMenu.java
iew.java
iewGroup.java
8c05abf15743af7cccceae14c33e590a30a7cacc 13-Oct-2011 Daniel Sandler <dsandler@android.com> am dba93565: Break apart DISABLE_HOME and DISABLE_RECENT.

* commit 'dba935659024a9ca83cb6bd3f1a9970e277f7658':
Break apart DISABLE_HOME and DISABLE_RECENT.
dba935659024a9ca83cb6bd3f1a9970e277f7658 06-Oct-2011 Daniel Sandler <dsandler@android.com> Break apart DISABLE_HOME and DISABLE_RECENT.

Additionally, start using setSystemUiVisibility() where
possible in the keyguard to allow activities and dialogs to
re-enable some of the navigation keys (notably: home but not
recents).

Finally, stop disabling MENU for activities atop the keyguard.

Bug: 5380495 // no home in driveabout, clock
Bug: 5396134 // able to show home/recent in keyguard
Change-Id: I04eb224554ee8cff79476b85148c4cda75bb0b62
iew.java
2c4d954ece25324dee2b5f4dc08bd8fb3f5e3dfb 13-Oct-2011 Dianne Hackborn <hackbod@google.com> am f4b40de6: Merge "Fix issue #5445966: WindowManager reporting -long on prime when it shouldn\'t be." into ics-mr0

* commit 'f4b40de684b3574475205542f22b2d49a75f31eb':
Fix issue #5445966: WindowManager reporting -long on prime when it shouldn't be.
f4b40de684b3574475205542f22b2d49a75f31eb 13-Oct-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #5445966: WindowManager reporting -long on prime when it shouldn't be." into ics-mr0
36991744a221c30a47085442e6416bdde40b85e8 12-Oct-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5445966: WindowManager reporting -long on prime when it shouldn't be.

The window manager now uses the app screen dimensions to compute
the various configuration properties, as it should.

This means that prime is official a "not long" device. Poor prime.
It probably feels inadequate now.

Because it is.

Oh and all that other stuff? Debugging logs. Turned off. And
why the heck not, debugging logs are great.

Change-Id: Iaaf8ef270d986d34fd046d699ef4c0ecea1981fc
isplay.java
d5bb82d18cbd95bb9e751d8315b9ed0b69595033 12-Oct-2011 Jeff Brown <jeffbrown@google.com> DO NOT MERGE. Improve screenshot chord debouncing.
Bug: 5011907

Introduce a 150ms delay in handling volume down keys
while waiting to see if a power key will follow.

Don't trigger the screenshot chord if both volume up and
volume down are pressed together.

Don't trigger the long-press power menu if volume keys are
also pressed.

Require the user to press both keys in the chord within
the debounce time and continue long-pressing them in order
to trigger the screenshot action.

Change-Id: I248968d37b73c09d6d08e7f62667c443eba32da0
indowManagerPolicy.java
2b5b83bda80253a6ff0925ae65da636ed2856def 12-Oct-2011 Jeff Brown <jeffbrown@google.com> Merge "Improve screenshot chord debouncing. Bug: 5011907"
905805ad7ce18a386076fff99264f821bbad9f83 12-Oct-2011 Jeff Brown <jeffbrown@google.com> Improve screenshot chord debouncing.
Bug: 5011907

Introduce a 150ms delay in handling volume down keys
while waiting to see if a power key will follow.

Don't trigger the screenshot chord if both volume up and
volume down are pressed together.

Don't trigger the long-press power menu if volume keys are
also pressed.

Require the user to press both keys in the chord within
the debounce time and continue long-pressing them in order
to trigger the screenshot action.

Change-Id: I248968d37b73c09d6d08e7f62667c443eba32da0
indowManagerPolicy.java
71def77a2811ce99ee50f09bc933ff380ce85055 12-Oct-2011 Amith Yamasani <yamasani@google.com> Use ringer assets for notification volume since the two volumes are tied.

This is only for voice capable devices, as tablets will still have notification
volume be a first-class citizen and doesn't make sense to show a phone icon
for notification volume.

Bug: 5431744
Change-Id: I28eed3ebc4cda173986c2f15e137e81641ee0a7c
olumePanel.java
8b6c7dd2fe1016a8f765f98e8114d5f491f02353 11-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Add AccessibilityRecord#getMaxScrollX and #getMaxScrollY to the pubic API

The methods were hidden for the previoud release since they were added
too close to the SDK final date.

bug:5424373

Change-Id: I812b9809223db75636b04549500f023820b6eb5a
ccessibility/AccessibilityRecord.java
a1a274f2794e29afd5ba5e2ca31352cae5c508fd 11-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessibility text changed event text not populated."
589b0bb6ab81657ba201cbc441a49f85305170bc 10-Oct-2011 Romain Guy <romainguy@google.com> Make sure we have the correct GL context when grabbing a bitmap
Bug #5427391

Change-Id: I4687a6a3e8968fc3ca8ef171833b2bb7afc16f89
extureView.java
iew.java
9920f4fdeaa3a4c597f62c3d082becc48ea8a7ab 08-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Accessibility text changed event text not populated.

Added the TYPE_VIEW_TEXT_CHANGED event to the populating events.

bug:5430831

Change-Id: I78e87640ea4279227d89f399ad43e9b88eb4a486
iew.java
ccessibility/AccessibilityEvent.java
df89e65bf0fcc651d20b208c8d8d0b848fb43418 07-Oct-2011 Dianne Hackborn <hackbod@google.com> Fix how we hide and show the nav bar.

The PhoneWindowManager is now responsible for hiding and showing
the nav bar.

For hiding, it just moves it off the screen (easy way to get a
nice slide animation on and off). At the same time, we use a
new WM facility to put up a fake input window to capture all
touch events.

When a touch event is received, we force the system UI to clear
the navigation hiding bit so it will be shown again.

This removes a bunch of code from the system UI for hiding and
showing the nav bar. Also removes the code calling from userActivity()
to the system UI, which was bad. (Also no longer using userActivity()
fixes bugs around re-showing the nav bar due to key presses and
other wrong things.)

Change-Id: I8c3174873b5bcaa36a92322a51e8f7993e88e551
indowManager.java
indowManagerPolicy.java
85b9edf2da0534bc53d139bb88cda8866d265afe 07-Oct-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #5371530: SYSTEMUI_FLAG_HIDE_NAVIGATION reasserts itself immediately"
7853c579fa52e4365c6e44ba38aeb3299d776f44 07-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Fixing errors in position information of scrollable views reported for accessibility."
9a230e01a1237749a8a19a5de8d46531b0c8ca6a 06-Oct-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5371530: SYSTEMUI_FLAG_HIDE_NAVIGATION reasserts itself immediately

This cleans up how ui flags are managed between the client and window manager.
It still reports the global UI mode state to the callback, but we now only clear
certain flags when the system goes out of a state (currently this just means the
hide nav bar mode), and don't corrupt other flags in the application when the
global state changes.

Also introduces a sequence number between the app and window manager, to avoid
using bad old data coming from the app during these transitions.

Change-Id: I40bbd12d9b7b69fc0ff1c7dc0cb58a933d4dfb23
Window.aidl
WindowSession.aidl
urfaceView.java
iew.java
iewGroup.java
iewRootImpl.java
indowManagerPolicy.java
d9ee72fddb8be40e414a831fb80458dc48699613 06-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Fixing errors in position information of scrollable views reported for accessibility.

1. ScrollView/HorizontalScroll view were reporting only the scroll X and Y but
failed to convey the max scroll along X and Y so the position can be determined.

2. WebView was not reporting correctly its scroll position for accessibility.

3. Some descendants of AdapterView were reporting incorrect position information.

4. Updated the accessibility docs with some details about the scroll information.

5. Cleaned up duplicated code.

bug:5412132
bug:5412265

Change-Id: I165e73ecde027dad811425b9f395a3f758c923ba
iew.java
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityRecord.java
e9121bc10ae83f45bf4fa4721e4384e6cf0701a6 06-Oct-2011 Chet Haase <chet@google.com> Merge "Fix issue #5367164: memory leak in LayoutTransition"
1a76dcd6d1e30f92668b5df309398d545cef9ace 06-Oct-2011 Chet Haase <chet@google.com> Fix issue #5367164: memory leak in LayoutTransition

When a transition occurs, layout change listeners are added to the container
being transitioned as well as every container up the view hierarchy. The
parent views were not having those listeners removed, so every time a transition
ran, more listeners would be added. Adding to that, the use of an ArrayList
as the collection to hold the listeners meant that adding duplicate items
would just increase the size of the list. There's now a sanity-check on the add
call to make sure that the listener does not exist already, but more importantly
we remove all listeners added when the transition ends.

Change-Id: I4ea05adf30765db091124065539b0ffd32729b3b
iew.java
40e0383dce630ed9b2b1aa0e497709b89dfab6ef 06-Oct-2011 Chet Haase <chet@google.com> Fix issue #5384631: hw windows not resizing correctly

When the SystemUi becomes visible, the activity window resizes.
The hardware renderer was not begin resized to suit, so it was drawing
to a surface larger than that of the activity window, and some of the
rendering (like the action bar) appeared off the screen.

The fix is to keep track of the surface size in HardwareRenderer and to
recreate the surface when the size changes.

This change also removes the BUFFER_CHANGE flag from WindowManager.LayoutParams.
The only reason the flag existed was to trigger a hardware surface recreation,
but checking the old/new size is a more direct way of handling this.

Change-Id: I9d6bf6385794886d1d93c60609c170864cdcdfab
ardwareRenderer.java
iewRootImpl.java
indowManager.java
4dfce20cac7492882d366d053006795aefad59da 05-Oct-2011 Jeff Brown <jeffbrown@google.com> Make SENSOR orientation modes trump rotation lock.
Bug: 5371750

Change-Id: I4d18b6c8ba1de0afd5929ddb8d7123272e35fbe2
WindowManager.aidl
30c845f9ca9e504d4d76099a8be111c99ac669f4 05-Oct-2011 Dianne Hackborn <hackbod@google.com> Turn off logging.

Change-Id: I5b050e33fe918c08b24091c6ccb9c5fe2b01d496
isplay.java
836e262aa8e2f66548231ab11eb3b3e91d0e7901 05-Oct-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5348948: Third Party app "Byki Turkish" shows...

...a tiny dialog (works fine in GB and HC)

I found two problems:

- When first binding an application, we were not correctly computing
the compat configuration.
- When retrieving the display metrics to hand to Resources, we were
using the one with compat applied. This is not right, because
Resources will apply the compat itself, so in some cases the compat
scaling was applied twice.

Change-Id: I22c9cfed9e271290c1a7544fa3ffa54a2e65daf9
isplay.java
cac15eb21cab68e5b76fe06f9aff273978c92054 04-Oct-2011 Joe Fernandez <joefernandez@google.com> Merge "docs: add developer guide cross-references, Project ACRE"
b54e7a3d9f60ac605f404f9eb3c5e92ca51bbd23 04-Oct-2011 Joe Fernandez <joefernandez@google.com> docs: add developer guide cross-references, Project ACRE

Change-Id: I5df1c4e13af67ff4c4a5b22f3cb1247bf0103b09
iew.java
2588a07730ff511329c87b5f61b20419b2443d48 04-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "The logic for not populating text to some accessibility events is scattered."
0058f724eb5a4e8b8f7409cdcea0ba154b5d2332 04-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessibility services cannot obtain the source of an event coming from a root namespace descendant."
2cdedffcfa5594f9d516fa235d5edf4d4f92c21d 03-Oct-2011 Svetoslav Ganov <svetoslavganov@google.com> Accessibility services cannot obtain the source of an event coming from a root namespace descendant.

1. The user can touch the screen at an arbitrary location potentially crossing the root namespace
bounday which will send an accessibility event to accessibility services and they should be able
to obtain the event source. Also accessibility ids are guaranteed to be unique in the window.
Added a package scoped findViewByAccessibilityId method that dives into nested root namespaces.

2. Added accessibility support to the AnalogClock.

bug:5405934

Change-Id: I84edcb554bae41aafcbbc2723c5e62c1ef8a6ddf
iew.java
iewGroup.java
iewRootImpl.java
f8419a0299680ed580975b0fcb758990b4367db8 03-Oct-2011 Adam Powell <adamp@google.com> Fix bugs around overlay action modes.

Multiple focusable windows cause undesired behavior around selection
modes. TextView isn't sure how to behave when it loses window focus
with regard to selection handles and action modes need to be focusable
for WebView find on page since it uses an EditText as a custom view.

For now:

* Use a layered window decor for overlay action mode when there is no
action bar requested. This eliminates an extra window and avoids the
issue described for full-screen UIs.

* Disable WebView's find-on-page mode when the action mode's UI will
not be focusable. This only affects WebViews in floating windows.

Also remove the "Text Selection" title for WebView's selection mode at
UX's request, as it is inconsistent with TextView's selection mode and
the string does not fit on phones in portrait even on wide
devices. This now uses the same mechanism used in TextView to decide
whether to use title text.

Change-Id: I80caeecea9b47728cf26bb0a388153ca0bdeafe1
ctionMode.java
82e236d72ac197d6673d0b4d484fe5f0b9436731 30-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> The logic for not populating text to some accessibility events is scattered.

1. Some accessibility evenents should not and were not dispatched for
text population but there was no centralized location for enforcing
this - rather the system was firing them in a specific way or there
were conditions in a few places enforcing that. Now this is centralized
and clean.

2. Updated the documentation with some new event types the were lacking.

3. Explicitly stated in the documentaition which events are dispatched to
the sub-tree of the source for text populatation.

bug:5394527

Change-Id: I86e383807d777019ac98b970c7d9d02a2f7afac6
iew.java
iewRootImpl.java
ccessibility/AccessibilityEvent.java
59c7f80dd20258cefa1fc4bdd3c9a709a8dd53b8 30-Sep-2011 Romain Guy <romainguy@google.com> TextureView works best when it draws stuff.
Bug #5391188

Change-Id: I5e754881ccb08ff288ebd60de77282c9cbcf3f86
extureView.java
iew.java
iewGroup.java
9622e20486955e3a3c2f45c61b23650fb35e6559 30-Sep-2011 Romain Guy <romainguy@google.com> Add system property to force hw acceleration.

Change-Id: I538e641435f282b1af20866a8acd1f8d292734c4
indow.java
2fcbbd0363633765e1ab5b9890ccb807002370e8 29-Sep-2011 Adam Powell <adamp@google.com> Fully qualify javadoc links and make the tools happy

Change-Id: I2ad839be71b550a2bcfb90f67627afdd10d3ae14
iewGroup.java
2a9fa89643ce796ee6dc7edae2742b291b6c5f40 29-Sep-2011 Romain Guy <romainguy@google.com> Don't build display lists for views with a layer.

This could cause the draw() code of views to be invoked too often
or worse, called with the wrong canvas. For instance, a view backed
by a software layer could get its draw() method called to record a
display list. Using a software layer is the recommended way to use
drawing operations not supported in hardware. Since we would
sometimes call the draw() method with the hardware backend anyway,
the app could crash by executing an unsupported operation.

Change-Id: Ib5f9a3a4c6f3efff5e0162ecd73d2dffe06e30a6
iew.java
iewGroup.java
462785fa257671fe4905d1d3e6ca27e4a61ee946 28-Sep-2011 Romain Guy <romainguy@google.com> Add a bit more doc to TextureView

Change-Id: Ib76c80d8f70ede1bb63db319bca1e93c489def4d
extureView.java
6e6db61809a9cf31f110fb53be09b43cfb9f14de 26-Sep-2011 Chet Haase <chet@google.com> Fix display list issue that was crashing an external app.

The app was removing a View whilst in its onDraw() method. This meant
that we asked it for its display list and it invalidated that display list
(by removing itself) before it returned from onDraw(). We later attempted to
draw that invalid display list into its parent nad died in native code.

The fix is to check the state of the display list after the call to getDisplayList()
and to avoid doing further work with it if it's invalid.

Change-Id: I14a342b4fe79c8dce2626ff61237b447040e7f42
iewGroup.java
4c253119db0ce753e46ec3809b54b9e357d363db 24-Sep-2011 Jeff Brown <jeffbrown@google.com> Merge "Prevent unintended rotations. Bug: 4981385"
c0347aa19f354a8e1ff4fcd5372b134c0c7c16ad 24-Sep-2011 Jeff Brown <jeffbrown@google.com> Prevent unintended rotations.
Bug: 4981385

Changed the orientation listener to notify the policy whenever
its proposed orientation changes, and changes the window manager
to notify the orientation listener when the actual orientation
changes. This allows us to better handle the case where the
policy has rejected a given proposal at one time (because the
current application forced orientation) but might choose
to accept the same proposal at another time.

It's important that the proposal always be up to date. A proposal
becomes irrelevant as soon as the phone posture changes such
that we can no longer determine the orientation with confidence
(such as when a device is placed flat on a table).

Simplified the orientation filtering. Now we just wait 200ms
for the device to be still before issuing a proposal. The idea
is that if the device is moving around a lot, we assume that
the device is being picked up or put down or otherwise in
the process of being moved. We don't want to change the rotation
until that's all settled down. However, we do want to tolerate
a certain amount of environmental noise.

(The previous confidence algorithm was also designed along
these lines but it was less direct about waiting for things
to settle. Instead it simply made orientation changes take
longer than usual while unsettled, but the extra delay was often
too much or too little. This one should be easier to tune.)

Change-Id: I09e6befea1f0994b6b15d424f3182859c0d9a530
indowManagerPolicy.java
indowOrientationListener.java
a982ad19d2aee54f714fa3ad9ee4ddbac08dc0fe 23-Sep-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #5173952: Opening a Notification From Lock Screen..."
90c52de28691ca0bbbf7c039ef20f85ce46882cc 23-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5173952: Opening a Notification From Lock Screen...

...Should Skip Unsecure Lockscreen (ICS)

Also while I am in there, clean up logging of intent objects to include
even less sensitive information, while showing the true Intent in dump
output (since apps can't get to that).

Change-Id: I35fed714645b21e4304ba38a11ebb9c4c963538e
WindowManager.aidl
indowManagerPolicy.java
83a559e78f57703645066c822a1ec7257c06ba56 23-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Scroll accessibility events should not populate text."
2b2f6d6c544d7a3b5b150ce6f62451ad0a6e390b 23-Sep-2011 Adam Powell <adamp@google.com> Remove unnecessary parameter

Change-Id: I32810a31140263a996d4f600fa53db5f29e60f42
iew.java
b84b94e1a04cd1f396dd6fef98d65ca1a2729c92 23-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> Scroll accessibility events should not populate text.

Scroll events are used to report position change and should not
contain the text content of the view that fires them because it
is usiually a containter for many other views and the text will
be long and not informative for accessibility purposes. Also
such evens are fired relatively frequently. If a client wants
to fetch some textual content for a scroll event he can use
the interrogation APIs.

bug:5352059

Change-Id: I43e02aca895c8ab16ba82ebe1cee3aea8ce7711a
iew.java
iewGroup.java
7db82acd8151684a886d4725ddf2790ef3a2f80e 23-Sep-2011 Adam Powell <adamp@google.com> Fix leaky view tags

The implementation of the method View#setTag(int, Object) stored tag
objects as entries in a static WeakHashMap associated with the View as
a key. This was problematic for any tag object that stored a hard
reference back to the View the tag was placed on, as it would cause
the WeakReference key to never be collected and the entry to persist
forever.

This was particularly nasty if an app used a keyed tag to store a
ViewHolder object referencing child views for use in the Adapter
implementaion for an AdapterView, since child views will always have
hard references leading back to the parent.

Change-Id: Ia17840a301ba0e0c928861405388fb2f625dac2c
iew.java
7933b7056f9886789e46e4151ed6c03f9f3d9398 22-Sep-2011 Daniel Sandler <dsandler@android.com> am cc22b992: Merge "Revert "Allow views to setSystemUiVisibility() with the same value and have it work."" into ics-factoryrom

* commit 'cc22b99249ac80891af99be941862edc9569fc4b':
Revert "Allow views to setSystemUiVisibility() with the same value and have it work."
9f48d6348d0a1c24e51d6526fb6b282997b22ae5 21-Sep-2011 Ken Wakasa <kwakasa@google.com> Fix comment

Change-Id: Ic0fd15d0b1b4d2c24eb177a6b22e0cc08ec1de99
extservice/TextServicesManager.java
a829e16681903e6a41901145195f88bf9d952f88 22-Sep-2011 Jeff Brown <jeffbrown@google.com> Merge "Handle orientation changes more systematically. Bug: 4981385"
01a98ddbdfbaf1f0d2bc602537e6e314364902a3 21-Sep-2011 Jeff Brown <jeffbrown@google.com> Handle orientation changes more systematically.
Bug: 4981385

Simplify the orientation changing code path in the
WindowManager. Instead of the policy calling setRotation()
when the sensor determined orientation changes, it calls
updateRotation(), which figures everything out. For the most
part, the rotation actually passed to setRotation() was
more or less ignored and just added confusion, particularly
when handling deferred orientation changes.

Ensure that 180 degree rotations are disallowed even when
the application specifies SCREEN_ORIENTATION_SENSOR_*.
These rotations are only enabled when docked upside-down for
some reason or when the application specifies
SCREEN_ORIENTATION_FULL_SENSOR.

Ensure that special modes like HDMI connected, lid switch,
dock and rotation lock all cause the sensor to be ignored
even when the application asks for sensor-based orientation
changes. The sensor is not relevant in these modes because
some external factor (or the user) is determining the
preferred rotation.

Currently, applications can still override the preferred
rotation even when there are special modes in play that
might say otherwise. We could tweak this so that some
special modes trump application choices completely
(resulting in a letter-boxed application, perhaps).
I tested this sort of tweak (not included in the patch)
and it seems to work fine, including transitions between
applications with varying orientation.

Delete dead code related to animFlags.

Handle pausing/resuming orientation changes more precisely.
Ensure that a deferred orientation change is performed when
a drag completes, even if endDragLw() is not called because the
drag was aborted before the drop happened. We pause
the orientation change in register() and resume in unregister()
because those methods appear to always be called as needed.

Change-Id: If0a31de3d057251e581fdee64819f2b19e676e9a
WindowManager.aidl
urface.java
indowManagerPolicy.java
indowOrientationListener.java
823f074a73cfc23c40a7b576c71daa096ee9ed6a 22-Sep-2011 Adam Powell <adamp@google.com> Fix bug 5300621 - Share menu disappears in gallery

ActionProviders (or action views) unfortunately had no way to report
that they had opened a sub-UI that would affect menu visibility
listeners used to hide action bars when not in use. This caused the
Gallery UI to hide its action bar when the share popup was open.

Add hidden API (to be made public later) to ActionProvider that can be
used to inform the menu system that a sub UI has opened or
closed. Account for this in menu visibility callbacks. Fix
ShareActionProvider to use this when its popup windows open and close.

Fix a regression where submenus were not properly reporting visibility
changes.

Change-Id: Ia6f45fb463ad106105c40d01f141c2e5c8b96f78
ctionProvider.java
705240631beffaedc28bc0b950e8b7f09b6d3b5d 21-Sep-2011 Daniel Sandler <dsandler@android.com> Revert "Allow views to setSystemUiVisibility() with the same value and have it work."

This reverts commit fad9555217ce3a657ffc7cba458a0d2622f7a379.
Because it just didn't work. (The views kept aggressively
re-applying their preferred flags every time view attributes
were aggregated.)

We'll pursue the original strategy, like lights out mode in
HC: if you want to tickle this mode, un-set and re-set the
flags (preferably synchronized with the global SystemUI
visibility state as reported by onSystemUiVisibilityChanged
callbacks).

Bug: 5052456
iew.java
bc1aa7bbc753ebcd32da4507fa23215489b6d314 20-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5312624: Lock screen very flickery

The key thing was to fix isVisibleOrBehindKeyguardLw() so that it
wouldn't count a window as not visible if it was just currently
in the process of drawing due to an orientation change.

Also improve logic in deciding when to turn screen on to better ensure
the screen is in a stable state, in particular treating screen off
as a frozen screen and not allowing it to turn on until the
update of the screen due to any config change is done.

Change-Id: If82199f3773270b2d07f9c7de9da2dad8c7b28d7
indowManagerPolicy.java
4943b3aa360033c0eae9e5b67c7491b25ea9ae07 19-Sep-2011 Amith Yamasani <yamasani@google.com> Merge "Make Volume control non-modal and allow touches underneath to take effect."
38e29a61d0c87fe3e391d24e2eb11dd1800d107d 18-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5242779: Device not responding to touch on unlock screen

Rework how we decide when it is okay to turn on the screen by having
the policy call back to the power manager when it knows the lock screen
has been drawn.

Change-Id: Ie8f3f72111dcf7f168723e6dce24e0343b4afe5d
WindowManager.aidl
indowManagerPolicy.java
284e630a9b7f126ffb83cee4a1c4fe5134190cab 17-Sep-2011 Amith Yamasani <yamasani@google.com> Make Volume control non-modal and allow touches underneath to take effect.

Bug: 5308506 "Video" App halts playback when volume slider is present
Change-Id: Ib0672384b9074af73d729d1f64db62e5a8882d80
olumePanel.java
4b86788003b3ddc968d0681d5ed4e5da07e4a65a 16-Sep-2011 Adam Powell <adamp@google.com> Bug 5244365 - Prevent views from receiving multiple onAttachedToWindow
calls.

If a View is added to a ViewGroup during the ViewGroup's
onAttachedToWindow method, the child can receive two calls to
onAttachedToWindow. Guard against this.

Change-Id: I845d0cb2c9172071eee1eadc6bc2dd282ee0ef43
iewGroup.java
4f59f8be0e177435a9a493668a74c793971b3bb5 16-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5300880: setSystemUiVisibility() always triggers a surface reallocation

Change-Id: Ia0a9d8acba6b62ef095e4c615099466c52eec8e4
iewRootImpl.java
df82905cf3ceb9192dc8087f934081f809d99bcf 15-Sep-2011 Dianne Hackborn <hackbod@google.com> Merge "Update the public APIs for finding views by text to optionally use content description."
93578af23ecfb8f5b6001346d63c6214cdec5d17 15-Sep-2011 Jeff Brown <jeffbrown@google.com> Merge "Velocity Tracker II: The Revenge of Velocity Tracker Bug: 5265529"
ea515aeafa01de6f50c854ee381b972ef2478284 15-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> Update the public APIs for finding views by text to optionally use content description.

1. Added flags to the search method to specify whether to match text or
content description or both.

2. Added test case for the seach by content description.

3. Updated the code in AccessibilityManager service to reflect the latest
changes there so test automation service works - this is the fake
service used for UI automation.

Change-Id: I14a6779a920ff0430e78947ea5aaf876c2e66076
iew.java
iewGroup.java
iewRootImpl.java
ccessibility/AccessibilityNodeInfo.java
ec537457cd2869e52b9b2c99e8c01dd96a9682e2 15-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5155678: Portrait > Landscape full-screen transition...

...mode cuts off screen rendering

The code for limiting application window sizes to not include the
navigation bar was dead. Now it is back.

Change-Id: Ic0bde56e3300fd0d9d225e19d8de2766d07e8780
isplay.java
b59ab9f41faafb358afb4f951de96f34a656e0b4 14-Sep-2011 Jeff Brown <jeffbrown@google.com> Velocity Tracker II: The Revenge of Velocity Tracker
Bug: 5265529

Rewrote the velocity tracker to fit a polynomial curve
to pointer movements using least squares linear regression.
The velocity is simply the first derivative of this polynomial.

Clients can also obtain an Estimator that describes the
complete terms of the estimating polynomial including
the coefficient of determination which provides a measure
of the quality of the fit (confidence).

Enhanced PointerLocation to display the movement curve predicted
by the estimator in addition to the velocity vector.

By default, the algorithm computes a 2nd degree (quadratic)
polynomial based on a 100ms recent history horizon.

Change-Id: Id377bef44117fce68fee2c41f90134ce3224d3a1
elocityTracker.java
1f903c3b577d20f7db7e3d5875cafe577d0d845f 14-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5283365: Rotating the device to portrait mode, hides the keyboard partly

PhoneWindowManager now takes full responsibility for deciding where the
navigation bar goes. This gets rid of a bunch of race conditions with
determining layout while the nav bar is moving itself at the same time
the window manager is computing a new configuration.

Note that this breaks the "nav bar on left" option. The current nav
bar code could also be cleaned up some more to completely drive its
behavior based on onSizeChanged() happening during relayout.

Change-Id: I1651d74c3464ba0d588aab3049e099c78420146a
indowManagerPolicy.java
ff87be5966d876031ec56f55d5c1e6cf4cef71fa 13-Sep-2011 Christopher Tate <ctate@google.com> Merge "Fix bug 5297302 - Remember to release surface after starting drag"
180c48489f07ebd748700a5a312070583fefdb45 13-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5309443: Ninjump crashes on boot with...

...java.lang.IllegalArgumentException: Window type can not be
changed after the window is added

Change-Id: I4e34622c99d721fa214fd534a9bbfc8006184770
iewRootImpl.java
8f73b5dfac9be998fcd6cdc30bcb1e4b210ba575 13-Sep-2011 Christopher Tate <ctate@google.com> Fix bug 5297302 - Remember to release surface after starting drag

Forgetting to release it was "safe" in that GC would eventually
tidy it up anyway, but in the meantime it was possible for a user to
do lots of drag operations, racing ahead of the progress of the garbage
collector, and wind up with drags failing because we'd run out of
surface slots due to all the piled up stale drag shadows.

Change-Id: I7ac93b13cc9996dda04a404571fbc44cb4314694
iew.java
ab0f485e64418eb22f0a1d89d7064902b381e9c2 13-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix problems where we were allocating TypedArray when not needed.

Fixes up some recycling of TypedArray objects to reduce the
number we need to allocate during inflation etc.

Change-Id: I948dccc052997779001eaa99db2a710b04be01ae
iew.java
nimation/Animation.java
bd5c9768c4432c6cb2bfa5f521d49ff03c087ff8 13-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Adding accessibility delegate mechanism for backwards compatibility support."
031d9c1389de2b9dac7f175af0b962e24b21d5be 10-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> Adding accessibility delegate mechanism for backwards compatibility support.

1. Added an AccessibilityDelegate class in View which can be set by
a client that wants to cutomize accessibility behavior via
composition as opposed to inheritance. Insead overriding a new method in
View thus being bound to the API version that introduced this
method a developer can conditionally inject the accessibility
customization if the platform API version is heigh enough. The
developer will have to override the method of interest of the
delegate. The default implementation of the delegate methods is
the same as that of View in the case that there is no delegate
set. If a delegate is set calling an accessibility related method
on View will be handed off to the corresponsing method of the
delegate.

bug:5259555

Change-Id: I00e750e22e5e7164a1b571cb3d12ecaf4ab93db4
iew.java
iewGroup.java
fe75cb342e33e7c465709bb34ab7abae9e9871f6 11-Sep-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix inflating of animations."
6a6977e8728f3a3d209daadf587079dc7369050b 11-Sep-2011 Chet Haase <chet@google.com> Merge "Fix 5266335: bad DIRTY/invalidation logic"
8962028b6e2f4176e6ceded281e584d223e44982 11-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix inflating of animations.

Need to define attributes for animation set, to have correct indices.

Also small fixes elsewhere.

Change-Id: If596147e8aee4ebffe4e184872070341eff6df73
nimation/AnimationSet.java
f186f30a7cbbf84e9b7ef52403d77f252b5229ed 11-Sep-2011 Chet Haase <chet@google.com> Fix 5266335: bad DIRTY/invalidation logic

The DIRTY flag is used to track which elements of the view hierarchy need
to be redrawn on the next drawing operation. This flag is set on the parent
hierarchy of a view when that view is invalidated. There is an optimization for
opaque views that tells the parent that it is dirty, but that it need not
redraw its own content because the view will cover it (since it is opaque).

This dirty-opaque logic breaks down in the current code because we only set
these dirty flags on the parent hierarchy, not on the view itself. In the situation
raised by this bug, we would invalidate the parent container directly (which does
not case the dirty flag to be set), then we would invalidate a child of that view.
Because the child is opaque, the DIRTY_OPAQUE flag would be set on the parent
container. This would cause us, in the later rendering process, to skip the
drawing on that parent container, assuming that it was only asked to be redrawn
because of its opaque child's invalidation.

The fix is to now set the DIRTY flag on an invalidated view, not just on its parent
hierarchy. The DIRTY_OPAQUE logic will avoid setting the opaque flag on views/parents
that are already marked DIRTY, thus an invalidated parent will be correctly drawn
during the drawing process.

Change-Id: Ib5e014a125a4f5168f6a5a3166e941474659aca5
iew.java
fd19906b50927834787403ca984f6fda93b53410 10-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Inter process interrogation ocassionally gets stuck."
6bc5e530016928027c7b390a8368ecdd5bff072f 10-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> Inter process interrogation ocassionally gets stuck.

1. There was a bug that was not handling correctly the
case for which the interrogator requests an accessibility
node info and the message describing how to fetch the
latter for the same process case was delivered after the
code that checks whether the message is there in order to
dispatch it is executed. Now the message handling is done
correctly - the caller checks if the message is present and
if so processes it, otherwise the caller sleeps and is
interrupted if such a message arrives.

bug:5138933

Change-Id: I4c2940b46c9a52a51c5ee48b83ca6811489765d6
ccessibility/AccessibilityInteractionClient.java
1ef3fdbe047c805ce33b2be463ea51dec5952729 10-Sep-2011 Romain Guy <romainguy@google.com> Go faster!!!!

The less we do, the faster we draw.

Change-Id: I7bbc3908b36d8ae295ea3e61ef71fd9ee2187970
iew.java
7b8d7cb59cfdc492df920b0c48960a691994f598 10-Sep-2011 Dianne Hackborn <hackbod@google.com> Merge "Pull animation attributes out of main view class."
ddb715b238c098d8b561a44b9687f0bc67a4c141 09-Sep-2011 Dianne Hackborn <hackbod@google.com> Pull animation attributes out of main view class.

These are now in a separate class that is only allocated when
needed by the view.

Change-Id: I9601bb43b3b4bfdabd982b02f7cd7534437b8ac3
iew.java
iewPropertyAnimator.java
1d50a2c0682926f783f9acab5c4bdeca1d3cb9cd 09-Sep-2011 Jeff Brown <jeffbrown@google.com> Merge "Adjust layers for system overlays."
8b83a7297680911d666546ee0b3a464514dc2c27 09-Sep-2011 Ken Wakasa <kwakasa@google.com> Fix a bug in InputMethodSubtype constructor

bug: 5249480

Change-Id: I707e45cc0606dae7824c478ab586fc24d3f417f8
nputmethod/InputMethodSubtype.java
bfcb60ab0f696c8ef70830c365550e62fe2808bf 09-Sep-2011 Jeff Brown <jeffbrown@google.com> Adjust layers for system overlays.

Prevent system overlays from showing above the notification bar.

Allow secure system overlays to be fullscreen, for the pointer
location view.

Show the drag layer above the notification bar.

Change-Id: Ic8d663792a243cca2cd9952d241d001e0357d551
indowManager.java
e080af37544f5d7d0cc8140289ac96dd21a8742d 09-Sep-2011 Romain Guy <romainguy@google.com> Save/restore display lists' canvas properly

Change-Id: Ic016f0215f9fe5c67af98f059ecce4ed94994810
iew.java
aacbf9111b58f10f7474fbd3a8debb02713f8b18 08-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Not visible view should not be announced or interacted with."
0b0a41d8e26eaf0f1d9d922621494daf40964a9a 08-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> Not visible view should not be announced or interacted with.

1. Some invisible views' text was reported by accessibility events.

2. Accessibility actions could have been perfromed on invisible views.

bug:5264355

Change-Id: I68184fb436a3e10e947ec6f1eae02aa3d0d1cb7f
iewRootImpl.java
e3238c98054688dd9a5b3ae4a776c023d70fb311 08-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Code cleaning"
8fc54f9b281eecdc1ee05d7c091968b75a640e7e 08-Sep-2011 Adam Powell <adamp@google.com> Fix build

Change-Id: I9efe13a7647088402c6759399a96de7831df964b
iew.java
2b04cef9b49ae5bd5ff197124f2dfcf97af71d09 08-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Code cleaning

- removing CharCount TextDirectionHeuristic references

Change-Id: I8cdc03b0d7bd610c7b8224073ffedd89b8953c63
iew.java
b6e43268f9a499b6d04b0d218e9bd46254ebbc8e 08-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Hide RTL related APIs"
2273b1e4eae27fa60b0b90d16a1891b4526c9b9c 08-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Hide RTL related APIs

Change-Id: Idda458fcdebe7afeb9b95e328e552fcbc7939157
iew.java
a7e88d688b6f1c3f892867d1401f88d79e759777 07-Sep-2011 Chet Haase <chet@google.com> Merge "Add end functionality to LayoutTransition"
36d3b9ddc4afc6d961b80c4d85f6dc0587b1285c 07-Sep-2011 Chet Haase <chet@google.com> Merge "Clarify AnimationSet docs and behavior"
d56c6951755a902a354e13e5fa05fb0984132cc6 07-Sep-2011 Chet Haase <chet@google.com> Add end functionality to LayoutTransition

This new hidden API is called by ViewRootImpl when there is a pending
transition but the parent window is not visible.

Change-Id: Idd6a0959b391fae542e675e8740b6a16f8963678
iewRootImpl.java
3791dc9b1c849bfacbff6de7fb53b77f414d1e4b 07-Sep-2011 Chet Haase <chet@google.com> Merge "Fix issue with LayoutTransition on non-visible windows."
61158c621d0834d6d4e1e0310596d9b7a1071178 07-Sep-2011 Chet Haase <chet@google.com> Fix issue with LayoutTransition on non-visible windows.

There's a problem with how LayoutTransition cleans up after itself
when the target view is in a Window that is not on the screen.
The quick fix is to always start (and therefore properly end and clear)
transitions, regardless of whether the window is in the tree.

Change-Id: I23f4f4f04176f3943e5c6e1d78acba0190a96930
iewRootImpl.java
2b72d93ce3f63c186db31aac9b0d8468fa9e50b6 07-Sep-2011 Romain Guy <romainguy@google.com> Merge "Don't destroy a window's buffers when moving it"
f21c9b0f52d5a1de5050f90f0818467fad014eaa 07-Sep-2011 Romain Guy <romainguy@google.com> Don't destroy a window's buffers when moving it

Change-Id: Ib08608373ae4299639c1b157421ba633e4293446
iewRootImpl.java
indowManager.java
c6fc20a91bdf6f5d8cd8784324a55e39bcb7077c 07-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #5262565 Need to remove CharCount TextDirectionHeuristics"
c529d8d8c709aed9c9e6d87af3ce2eb4c73da4bf 07-Sep-2011 Romain Guy <romainguy@google.com> Prevent crash in View.createSnapshot if getResources() returns null
Bug #5260241

Change-Id: I90b6d5a8961a6b7b50603a9f59a6e39093646bd4
iew.java
c861bd778b1b96aa12d3400ec799d80ba38c1f38 06-Sep-2011 Chet Haase <chet@google.com> Clarify AnimationSet docs and behavior

Two problems fixed here:
- The docs for AnimationSet were too vague and incorrect: some properties of
Animation (such as duration) are pushed from the AnimationSet down to its children, as
the current docs say. Some other properties (such as repeatCount) are ignored. Other
properties (such as startOffset) apply to the Set itself, but not to the children.
Fix: clarify this behavior for each of the properties.
- The behavior for XML resources was just busted. We would set the various properties
(e.g., duration) and then forget that we did so, since we reset the flags that marked
their existence after we loaded the resource. In fact, the duration property was
always being reset to 0, regardless of what it was set to in the xml resource.
Fix: Make it work they way it always should have: respect the values read from the XML
resource and make them behave the same way they do when set at runtime.

Change-Id: I07d68876d2259105dc5a359501d5c656ecfaa8e5
nimation/AnimationSet.java
e3bf88da23bfadd89a35b6dec769ea825e5ecd6e 06-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5262565 Need to remove CharCount TextDirectionHeuristics

- update unit tests too

Change-Id: I7c518f58a9f17cb679bc3913bdd38243f7ad2195
iew.java
dbfba8560dda9de810c4265b765d49952519e841 05-Sep-2011 satok <satok@google.com> Add a function to check auxiliary ime.

Change-Id: Ibda3d0a11c7dd77aa1304d34fc858bb7d941c626
nputmethod/InputMethodInfo.java
6b0c11da5a7a7ea236fd9dc409d1ce7a33bff9c2 03-Sep-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #5150899: Call activity takes 15MB we never get back."
3c4ce72c4d66d9ee041924259f20381b658c1529 03-Sep-2011 Chet Haase <chet@google.com> Fix artifact with LayoutTransitions on disappearing window.

Logic in performTraversals() starts a transition running at the
proper time. But when a view's parent window goes away, this transition
may not start at that time because drawing gets canceled. But the
transition still hung off of the ViewRoot, waiting until some later
drawing operation to kick it off. This resulted in some weird animations
like the Recents panel appearing and having a single item animate off of it.

The fix is to delete pending transitions when drawing is skipped.

Change-Id: I3ab7702c16e069644a163424f977350743e2cecc
iewRootImpl.java
5d927c2d8e832fcfcb0154c8741f896001141ef4 02-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5150899: Call activity takes 15MB we never get back.

Persistent process can no longer use hardware acclerated drawing
when running on a low-memory device.

Change-Id: I3110335617af1c98fcede9bf41f4a1d0c20d0e87
ardwareRenderer.java
iewRootImpl.java
indowManager.java
bffb83e96c2f3d01bf42490737201ab4de79c91b 02-Sep-2011 satok <satok@google.com> Merge "Add an option for the implicitly selected subtype"
a86f5e448cd6d29340ca6cbe509bc6384bc0d711 02-Sep-2011 satok <satok@google.com> Add an option for the implicitly selected subtype

Bug: 5057886
Change-Id: Iddde4724891501b4f18cade6a3d2c64b6124e58a
nputmethod/InputMethodInfo.java
nputmethod/InputMethodSubtype.java
ee5e77cafec2eae70890abdcc1646ed39b06eddd 02-Sep-2011 satok <satok@google.com> Make setAdditionalInputMethodSubtypes async

Bug: 5120261
Change-Id: Ic7869cfaa5361531e08d58d7dfa5ba0feab0613e
nputmethod/InputMethodManager.java
3889e492bcad3c6f565d30da4e02d0dcde09d084 02-Sep-2011 satok <satok@google.com> Make the constructor of InputMethodSubtype hidden.

The constructor is not open sourced yet.

Change-Id: I69385b05cb3b5ee761a5ece9be877a8682c5fe55
nputmethod/InputMethodSubtype.java
f679ed0939f10ee3da9363bb179802b8184d1880 02-Sep-2011 Romain Guy <romainguy@google.com> Merge "Prevent a leak when using View.postInvalidate(left, top, right, bottom)"
40c18f59ac3bd0e14ac9c7ed6467e52fb8f95640 02-Sep-2011 Romain Guy <romainguy@google.com> Prevent a leak when using View.postInvalidate(left, top, right, bottom)

Change-Id: I44c9a11d8b62d86d38f4600df2bbea13c874b991
iew.java
69666e078152362b19d02d9ee79bbd5fc69e09c3 02-Sep-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #5229575: Youtube link shared through messaging is not..."
08a1c04b9668e51ca3043a4e531b7649b018b245 01-Sep-2011 Romain Guy <romainguy@google.com> Merge "Dispatch onDetachedFromWindow before destroying everything Bug #5245686"
16260e73f6c1c9dc94acf0d328a3c564426b8711 01-Sep-2011 Romain Guy <romainguy@google.com> Dispatch onDetachedFromWindow before destroying everything
Bug #5245686

Change-Id: I637178ee0bb47fbec9b59198b388bb8de22c1786
ardwareRenderer.java
extureView.java
iewRootImpl.java
ba24e4d8bbeb60e96d74f05e21691dad61ce497e 01-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5229575: Youtube link shared through messaging is not...

...opening after selecting option "Youtube" as a luncher.

Also:

* Tweak window animations so that the wallpaper exist animations do not
stop too early (causing the wallpaper to suddenly disappear).
* Make sure no input is being processed while booting, to avoid
accidentally doing things especially in the upgrade dialog.
* Some other small cleanup.

Change-Id: I40a6b53731991d4e31ac4502e3d85f0e47507481
indowManagerPolicy.java
8b5a8b5bed98bd1c048864abcf39dfc3875518cb 01-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Code cleaning"
6a13dd5544d0eb55349ccf57ee6a781ab4fd51b6 01-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessibility hover events are fired if hover otside of modal window."
7552c044fcb60cb9db73372229048dcd0e65a955 01-Sep-2011 Jeff Brown <jeffbrown@google.com> Increase orientation settle time.
Bug: 4981385

Improves noise tolerance and reduces the chance of mispredicted
orientation changes.

Change-Id: I27f2c05a981ae93b0de41c542d41377b2ea25450
indowOrientationListener.java
4c1c101a91ed49089a1b81923385cb2f74253c57 01-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> Accessibility hover events are fired if hover otside of modal window.

1. Added a check whether the received hover event is in the bounds
if the view before sending accessiiblity hover events. Hence, if
a widnow gets a hover event and it gets to its topmost view the
latter will not fire an accessibility event.

bug:5233588

Change-Id: I61e81fbf0ce59a7f57377262ce066bcf8db98f56
iew.java
7d892dcc8a18376f499527a160c6c0ed664e22b1 01-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Code cleaning

- remove unused constant
- fix spelling

Change-Id: I0053129b33c2ee472db84e14d4b2ace5d97d20a8
iew.java
d040edbae968d826aa2c82d382345811a45c646b 31-Aug-2011 Dianne Hackborn <hackbod@google.com> Use floating point window positions.

Gets rid of gapps between windows during animations.

Change-Id: I17d2ef0af214008f0eabd7eb19268f145fe83b39
indowManagerPolicy.java
9d4bc852ea459c2a4347a87ce0357b3328a25db8 31-Aug-2011 Jeff Brown <jeffbrown@google.com> Merge "Fix input channel leak. Bug: 5156144"
bfe561c54a5addbc7c1fef75d87008ae2b9206eb 31-Aug-2011 satok <satok@google.com> Merge "Add a comment for setAdditionalInputMethodSubtypes"
75917b603fe83a87c0fe3902e1a768fc31f8d120 31-Aug-2011 satok <satok@google.com> Add a comment for setAdditionalInputMethodSubtypes

Change-Id: I3a19471b80a6f8a68473cba6f0fc934bd052af10
nputmethod/InputMethodManager.java
0158a1e9ffc5a43780d37bb7b6b964a39eae6e62 31-Aug-2011 satok <satok@google.com> Add a functionality to disable the spell checker

Change-Id: I1c2292f457d1911c149d594c175e638c92ad3917
extservice/TextServicesManager.java
b669d6d8d8434918647b311612ebe8fd6f390b36 31-Aug-2011 satok <satok@google.com> Improve the fallback of the locale of the spell checker

Change-Id: I79655dd13e60f221b07346596fb05cf7d3d5cf7d
extservice/TextServicesManager.java
cc4f7db698f88b633a286d8ab1105b28a474cd09 31-Aug-2011 Jeff Brown <jeffbrown@google.com> Fix input channel leak.
Bug: 5156144

Input channels could leak or simply live longer than they should
in some cases.

1. Monitor channels (used by the pointer location overlay) are never
unregistered, so they would leak.

Added code to handle failures in the receive callback by closing
the input channel.

2. The DragState held onto its input window and application handles
even after the input channel was disposed.

Added code to null these handles out when they are no longer needed.

3. Input channels previously used as input event targets would stick
around until the targets were cleared (usually on the next
event).

Added code to detect when the input dispatcher is in
an idle state and to proactively clear the targets then
to ensure that resources are released promptly.

4. Native input window handles held onto the input channel even
after the input window was removed from the input dispatcher.
Consequently, the input channel would not be disposed until
the input window handle itself was freed. Since the input
window handle is held from managed code, this meant that the
window's input channel could stick around until the next GC.

Refactored the input window handle to separate the properties
(info) and identify (handle) state into different objects.
Then modified the dispatcher to release the properties (info)
when no longer needed, including the input channel.

7. The pointer location overlay does not actually use its
standard input channel, only the monitor input channel.

Added INPUT_FEATURE_NO_INPUT_CHANNEL to allow windows to
request that they not be provided with an input channel
at all.

Improved some of the error handling logic to emit the status
code as part of the exception message.

Change-Id: I01988d4391a70c6678c8b0e936ca051af680b1a5
iewRootImpl.java
indowManager.java
c21843a8b5c395cbaae6db0f786bdee556075f5d 31-Aug-2011 Mathias Agopian <mathias@google.com> Merge "fix Surface positions are not floats"
34cb9f2a960c4173bdafb4b8a2444c1bca4c5f0d 31-Aug-2011 Mathias Agopian <mathias@google.com> fix Surface positions are not floats

Added Surface.setPosition(float, float) which allows to set a surface's
position in float.

Bug: 5239859
Change-Id: I903aef4ad5b5999142202fb8ea30fe216d805711
urface.java
8d102eb6720deccfb8b5872fde531ef6ca580077 30-Aug-2011 Jamie Gennis <jgennis@google.com> Merge changes I33f59705,Ia4c8c822,I2fb695ab,I2e587afc

* changes:
MediaDump: use the MediaPlayer#setSurface method
HTML5VideoView: switch to MediaPlayer#setSurface
MediaPlayer: unhide the setSurface method
Surface: unhide the SurfaceTexture ctor
32901b4fec5db9a137add68f0f38518636593668 29-Aug-2011 Chet Haase <chet@google.com> Merge "Fixed bug with invalidation in top-level Views."
e4e6e206959560a420a765aac576a8da5ec91dbd 29-Aug-2011 Chet Haase <chet@google.com> Fixed bug with invalidation in top-level Views.

There was a bug in an InputMethod app, where popups for the keys
would not pop-down again. The problem was that they were being
marked INVISIBLE, but the new invalidation logic noop'd the
invalidate() call that used to take place. Adding to that was logic
in setFlags() that only invalidated a parent for parents that are
instanceof ViewGroup. In this case, the parent is a ViewRootImpl.

Fix is to call invalidateChild() on the parent if it's not a ViewGroup.

Change-Id: I2c2352072d383cee1367ea7ee6c2207077721fd5
iew.java
0db3aef9f81b056c57b2331dd2750958c9341fdf 29-Aug-2011 Jamie Gennis <jgennis@google.com> Surface: unhide the SurfaceTexture ctor

This change unhides the Surface constructor that creates a Surface that
pushes frames to a SurfaceTexture.

Change-Id: I2e587afc52c9838d25b8681cae7421734b3e7b6e
urface.java
df0c84f90894c677c50bdc967a0598f516ac86d7 29-Aug-2011 Jamie Gennis <jgennis@google.com> Surface: move the SurfaceTexture ctor

This change moves the Surface ctor that takes a SurfaceTexture to the
portion of the file containing the public APIs.

Change-Id: I192df7bf5c0e6d0d0607bd577d72646312b2f717
urface.java
aceafe63eeb7d3bfc05ef5ab0b3957572d61ecf5 27-Aug-2011 Chet Haase <chet@google.com> Fixed error in invalidation/LayoutTransition logic

A recent fix for invalidation noop'd calls to invalidate() on
GONE/INVISIBLE views. This logic also noop'd views which might
be GONE, but which are in the process of fading in/out via
LayoutTransition animations. These views should invalidate as
usual.

Change-Id: Ie90a340f70290391a3aa4e68df535c6aabf4e5eb
iew.java
iewGroup.java
80122c2a7a2cb25dbd80b3d193cbf593c0589e12 26-Aug-2011 Romain Guy <romainguy@google.com> Merge "Prevent crash in VPN settings Bug #5217245"
eca9b1f53c2c291cbfb89b5f3cc45db7bdca6c7d 26-Aug-2011 Romain Guy <romainguy@google.com> Prevent crash in VPN settings
Bug #5217245

Change-Id: Ibacf4cbd40537cd417f1518b5ac4367a3f3d7d03
ardwareRenderer.java
iewRootImpl.java
7926f62a073ed3a27d870cfa88ade33013d8010b 26-Aug-2011 satok <satok@google.com> Fix newSpellCheckerSession

Change-Id: Ia862dba70666c69b81d18836561b7e9a1c2d81b3
extservice/TextServicesManager.java
b387954a92eb6f15b7f49d5b946745f492a26363 26-Aug-2011 satok <satok@google.com> Support system locale as the locale of the spell checkers

Bug: 5212035

Change-Id: I18d27e54b936cc7f4d6cc3c7100bce57f77f8f9f
extservice/TextServicesManager.java
fbedf1a3978d5dfc4a886e4c7107d4bc1923f740 26-Aug-2011 satok <satok@google.com> Fix NPE in setCurrentSpellCheckerSubtype

Change-Id: I9fce999f91dcccd2f877a0326c4f2e3ac9024f85
extservice/TextServicesManager.java
2388a7ba6218f44400ee78016282cb96c02dfc54 26-Aug-2011 satok <satok@google.com> Add getServiceInfo to SpellCheckerInfo

Change-Id: I11634b88cf65182465869b131cfdcc8815e74965
extservice/SpellCheckerInfo.java
c714531952fe1c22cae77631aa25dc7441b2b878 26-Aug-2011 satok <satok@google.com> Add getDisplayName to SpellCheckerSubtype

Change-Id: Ic4d1f494a1fb67eda73ffc8e3be1caf690a602ce
extservice/SpellCheckerSubtype.java
4bc554b37165dbee8d805a6f73ac5e946f2769ae 26-Aug-2011 satok <satok@google.com> Merge "Fix setCurrentSpellCheckerSubtype"
3cb5b39a0e63d98c4e7b47e9a5b5758e9d4024bd 26-Aug-2011 satok <satok@google.com> Fix setCurrentSpellCheckerSubtype

Change-Id: Ib42a3b4377b8700ceaf4b7e13150848464d073c1
extservice/TextServicesManager.java
ca07e34f13fd1c5df8deecc815fcb46f0a07052f 26-Aug-2011 Mathias Agopian <mathias@google.com> fix logging of eglMakeCurrent() errors

Change-Id: Ie22cabff822a8fb3186f082491234b9503b431c3
ardwareRenderer.java
27bf191327cd509daf52e3ebea2385ce66545093 25-Aug-2011 Romain Guy <romainguy@google.com> Merge "Optimize display lists"
04c9d8c2ffd028c35c750bac0a4a7b79e48059b5 25-Aug-2011 Romain Guy <romainguy@google.com> Optimize display lists

Remove redundant or useless operations

Change-Id: If989b4eaa9143eef4254c38b39959aeed1f2b9ab
iew.java
8d8533a9f0d2ed1955f548e7d255de747e01b8cf 25-Aug-2011 Romain Guy <romainguy@google.com> Merge "Implement saveLayer*() correctly"
189887e0ae171c1b7601991442104a30e56c50ab 25-Aug-2011 Romain Guy <romainguy@google.com> Implement saveLayer*() correctly

When the Rect parameter is null, the layer's bounds must match the
clip rect.

Change-Id: Idbb3973af039bf319e840d1095b7037bf1015f35
LES20Canvas.java
12bde60b39affbfdcb7ef6317e0a5f99c3f41b10 25-Aug-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Intra-process view hierarchy interrogation does not work."
1e3fac8bc62a2495eb9bb79cc208573b5782cedc 25-Aug-2011 satok <satok@google.com> Merge "Add functions to enable / disable spell checker"
a33c4fc5bed76727f1e06e522e0136101a2304cd 25-Aug-2011 satok <satok@google.com> Add functions to enable / disable spell checker

Bug: 5057977

Change-Id: I2b27bd5f55feb305368034d7e95f83257ac4b3e6
extservice/TextServicesManager.java
c93fcdce226ff7cfbbc5a63d7d8848e7ba07badb 25-Aug-2011 Chet Haase <chet@google.com> Merge "Fix issue with views becoming visible with stale content."
4324eadc89676e860d063fb5f18aabc9f335a48b 25-Aug-2011 Chet Haase <chet@google.com> Fix issue with views becoming visible with stale content.

An earlier fix nooop'd invalidate calls on non-visible views. This
caused an issue where changes to the view while it was not visible
(such as changing the text of a TextView) would not get picked up
by the invalidation process.

The fix is to automatically invalidate() a view when it becomes
visible, to account for any changes that may have occurred to its
content while it was not visible.

Change-Id: Ia0f8fb42ca627b5a38f08761fa622b23f2dfa38b
iew.java
6ff0037792619c4441d9d3caa4f9ab4f45c11236 25-Aug-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix to show the correct HW accel background in the preview window."
07213e6d8895af10951851435adf96a779863f6c 25-Aug-2011 Dianne Hackborn <hackbod@google.com> Fix to show the correct HW accel background in the preview window.

Also tweak wallpaper service to do a cleaner transition to a
static wallpaper.

Change-Id: I876a32091f92dd5a529d7fd809d3b8e730bb7d2a
iewRootImpl.java
f874c4f93437cbbef7a915a36d5abb448e1e3209 25-Aug-2011 Gilles Debunne <debunne@google.com> Merge "Spell checking in TextViews"
c2644096b7ddbd9dfbffe329c2b72bf83b3ea231 25-Aug-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #5050039: Launcher is sometimes rendering underneath the system/status bar"
c39e8e89eb370ed66f552da3be258e57f1aabeb9 25-Aug-2011 Romain Guy <romainguy@google.com> Merge "Add OpenGL backend to ImageWallpaper Bug #5204874"
407ec78b828173257b0c5dae221649a4ccd8b058 25-Aug-2011 Romain Guy <romainguy@google.com> Add OpenGL backend to ImageWallpaper
Bug #5204874

Currently disabled.

Change-Id: I5e7b35dce2981b0691f107e39c6394b260466543
ardwareRenderer.java
fa6b35be126ffcc3b5818393c26aff724ac65daf 25-Aug-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5050039: Launcher is sometimes rendering underneath the system/status bar

It looks like this is caused by the change in HC to stop activities when
the screen is off. ViewRootImpl (a.k.a. ViewRoot) has special code to
avoid doing work when it is stopped, and it is now stopped when the screen
is off. The problem here is if the window's activity is stopped when the
window is first displayed, then it would never do the initial fitSystemWindows()
with the status bar offsets given by the window manager, and never do this
again until the status bar changes.

Also included here is some re-arranging of the code dealing with the offsets
changing, because it was dealt with in two places and only one had a bunch of
code dealing with HW accelerated drawing and performing the fade transition
between states. Now all of that is unified into one place.

Change-Id: I9828f02664cc622dbf186effb1f685a8aa4456a1
iewRootImpl.java
8bd69610aafc6995126965d1d23b771fe02a9084 23-Aug-2011 Svetoslav Ganov <svetoslavganov@google.com> Intra-process view hierarchy interrogation does not work.

The content retrieval APIs are synchronous from a client's
perspective but internally they are asynchronous. The client thread
calls into the system requesting an action and providing a callback
to receive the result after which it waits up to a timeout for that
result. The system enforces security and then delegates the request
to a given view hierarchy where a message is posted (from a binder
thread) describing what to be performed by the main UI thread the
result of which it delivered via the mentioned callback. However,
the blocked client thread and the main UI thread of the target view
hierarchy can be the same one, for example an accessibility service
and an activity run in the same process, thus they are executed on the
same main thread. In such a case the retrieval will fail since the UI
thread that has to process the message describing the work to be done
is blocked waiting for a result is has to compute! To avoid this scenario
when making a call the client also passes its process and thread ids so
the accessed view hierarchy can detect if the client making the request
is running in its main UI thread. In such a case the view hierarchy,
specifically the binder thread performing the IPC to it, does not post a
message to be run on the UI thread but passes it to the singleton
interaction client through which all interactions occur and the latter is
responsible to execute the message before starting to wait for the
asynchronous result delivered via the callback. In this case the expected
result is already received so no waiting is performed.

bug:5138933

Change-Id: I382e2d8689f5189110226613c2387f553df98bd3
iewRootImpl.java
ccessibility/AccessibilityInteractionClient.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityRecord.java
ccessibility/IAccessibilityInteractionCallback.aidl
ccessibility/IAccessibilityInteractionConnection.aidl
ccessibility/IAccessibilityInteractionConnectionCallback.aidl
a4bacb8b74adf7908ac382024dc9183144793217 25-Aug-2011 Dianne Hackborn <hackbod@google.com> Fix animation scale to also scale start offset.

Also more better info in meminfo dump.

Change-Id: I45ab41821cd8dd81b61605de6a0cf7074e76c71a
nimation/Animation.java
4694b7f1866ae423c548eeb429c3b2a76c26f0be 24-Aug-2011 Chet Haase <chet@google.com> Merge "Fix docs for fill behavior in Animation class."
d8991c4ab02449e78745d7ecc521ca0b41ea4c53 24-Aug-2011 Chet Haase <chet@google.com> Fix docs for fill behavior in Animation class.

Change-Id: I9230e9b9841dbecead51a6716195749b0c5a0e39
nimation/Animation.java
ada8c4e6a3da96a795f39a1028d448eb7aebfab3 23-Aug-2011 satok <satok@google.com> Add functions to set / get SpellCheckerSubtype

Change-Id: I977326879fe201c4dee4a87da361217175eb6041
extservice/TextServicesManager.java
29aae6f36e565b8f2a99f2193597b964bb800ee8 19-Aug-2011 Dianne Hackborn <hackbod@google.com> Fix issue #4279860: previous UI flashes before showing lock screen...

...(when turning display on after recently turning it off)

Also clean up when we decide to turn the screen on to improve that
transition. There are still problems here with turning it on
before the wallpaper gets dispayed.

Change-Id: I2bc56c12e5ad75a1ce5a0546f43a845bf0823e66
WindowManager.aidl
indowManager.java
09d569a57e7c8f3d8d6a5f2204643988ae36e07c 24-Aug-2011 Chet Haase <chet@google.com> Merge "Fix invalidation roundoff error with old animations"
530b22ab4e9076926e13502b443e3ce3879b45ae 23-Aug-2011 Chet Haase <chet@google.com> Fix invalidation roundoff error with old animations

We need to add .5 to the width/height of invalidation areas to
avoid truncation errors.

Change-Id: Iaa2407a91a6a7f6d729af21d45e77e436197df11
iewGroup.java
6435a56a8c02de98befcc8cd743b2b638cffb327 05-Aug-2011 Gilles Debunne <debunne@google.com> Spell checking in TextViews

New UX interactions (the Paste action is no longer displayed after a delay)
suggestionEnabled flag replaced by existing input type flag.
removeSpans fixed in SpannableStringBuilder to always send notifications
SuggestionSpan handled by TextView instead of SpannableStringBuilder

New span update algorithm to correctly handle edition around word boundaries.

Change-Id: I52c01172f19e595fa512e285a565a3fd97c3c50e
extservice/SuggestionsInfo.java
defa12e95b8d25db5f3e9a044e83d6fe680b67a3 23-Aug-2011 Amith Yamasani <yamasani@google.com> Merge "Adjust slider range to be one more than max for base 1 volumes."
d47a3aee7ad7d8ef66ee279ab64b64a0f7918e90 23-Aug-2011 Amith Yamasani <yamasani@google.com> Adjust slider range to be one more than max for base 1 volumes.

Bug: 5191642
Change-Id: Id479ce584753fbb56feed22a8506579f2d9e35fd
olumePanel.java
67403e096e6f59b7cd18a90d0d3f5c3d17c31407 23-Aug-2011 Mathias Agopian <mathias@google.com> BLUR_BEHIND flag is not supported anymore

Bug: 5185650
Change-Id: I56541d4967b90b150a734be1bbeff696eb6a4fb3
urface.java
c2d256b41587ff44efb6373885affe02e5df80b5 23-Aug-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Improve TextDirection resolution"
9af1d280829da4330755b72b539f4f863e5ff3ff 23-Aug-2011 Chet Haase <chet@google.com> Merge "Fix invalidation bug with INVISIBLE views."
a68c5cf8a111d0c901474b5819d49ca5eea42a65 22-Aug-2011 Chet Haase <chet@google.com> Fix invalidation bug with INVISIBLE views.

There was a bug in the invalidation code that prevented some
animations fropm starting. An INVISIBLE view would mark some dirty
flags then propagate the invaliation up the parent hierarchy. This would
cause a redraw of the hierarchy, but would not include the invisible
view (invisible children do not get drawn). Thus the flags wouldn't get cleared.

Later, an animation to fade the view in (making it VISIBLE on start) would
be started on the view. But the invalidation triggered by that animation would
not propagate because the invisible view would see that it was already
invalidated, and wouldn't send the message along. No invalidation means no drawing,
so the animation wouldn't start because the invalidation didn't make it's way up to the
top and the child's parent did not redraw.

The fix is to noop the invalidate() call for GONE/INVISIBLE views which do not
have animations set on them. Making these views VISIBLE later will trigger
an invalidation, as will starting an animation on them, so the behavior should
not change except for the buggy situation.

Change-Id: I7a26a4bc7823f08fef56e52648e77ca256df6858
iew.java
661cd52e0e1d527132eb1cae604d3e64da7ec0cb 22-Aug-2011 Dianne Hackborn <hackbod@google.com> Add progress dialog for booting after an upgrade.

This introduces a new facility for code during the boot process
to display messages to the user through a progress dialog. This
is only for use when performing longer-than-usual post-upgrade
operations such as running dexopt on applications or upgrading
databases.

Change-Id: I0e78439ccec3850fb67872c22f235bf12a158dae
indow.java
indowManagerPolicy.java
c01391fb4eb0eef33d142e89e060eac7e75de39d 20-Aug-2011 Alexandre Elias <aelias@google.com> Minor fixes to SurfaceTexture transform matrix.

- Sometimes, the applyUpdate was applied through draw() and the
underlying matrix was not updated in time, causing "jitter". Add a
matrix update call in draw().

- Switch to invalidateParentIfNeeded() in setTransform().

Change-Id: I1cf9cdfe78f9d989821cdc9600984fc826430211
extureView.java
a646145c335ba821f01d9e4f8be2583eb9fd7266 20-Aug-2011 Fabrice Di Meglio <fdimeglio@google.com> Improve TextDirection resolution

- remove unuseful heuristics
- tune Javadoc

Change-Id: Id72a158b3a17a528423d278b1cbfd95b8c2951b5
iew.java
65fd251c3913fc921468a3dad190810db19eb9df 18-Aug-2011 Jeff Brown <jeffbrown@google.com> Input system bug fixes, particularly for stylus.
Bug: 5049148

Finished stylus support, including support for indirect stylus
and mouse tools.

Added TILT axis. When stylus tilt X/Y is available, it is transformed
into an orientation and tilt inclination which is a more convenient
representation and a simpler extension to the exiting API.

Touch devices now only report touch data using a single input
source. Previously touch devices in pointer mode would report
both absolute touch pad data and cooked pointer gestures.
Now we just pick one. The touch device switches modes as needed
when the focused application enables/disables pointer gestures.
This change greatly simplifies the code and reduces the load
on the input dispatcher.

Fixed an incorrect assumption that the value of ABS_(MT_)DISTANCE
would be zero whenever the stylus was in direct contact. It appears
that the correct way to determine whether the stylus is in direct
contact (rather than hovering) is by checking for a non-zero
reported pressure.

Added code to read the initial state of tool buttons and axis values
when the input devices are initialized or reset. This fixes
problems where the input mapper state might have the wrong initial
state.

Moved responsibility for cancelling pending inputs (keys down,
touches, etc.) to the InputDispatcher by sending it a device reset
notification. This frees the InputReader from having to synthesize
events during reset, which was cumbersome and somewhat brittle
to begin with.

Consolidated more of the common accumulator logic from
SingleTouchInputMapper and MultiTouchInputMapper into
TouchInputMapper.

Improved the PointerLocation output.

Change-Id: I595d3647f7fd7cb1e3eff8b3c76b85043b5fe2f0
otionEvent.java
baf6dbfa9340f3266e41841ebd51f21effc583ee 19-Aug-2011 Amith Yamasani <yamasani@google.com> Dismiss the volume overlay dialog when user touches above the dialog as well.

Bug: 5165168
Change-Id: Ib343c3b88371cb93f8241b1085d1a2f36a77b1ac
olumePanel.java
4abe2ac244e0fc70cd9837f1f335933694fc1b7c 18-Aug-2011 Chet Haase <chet@google.com> Merge "Fix potential null deref in ViewGroup when running transition"
1abf7fa1d1930e24739cae9874970420101bc2f9 18-Aug-2011 Chet Haase <chet@google.com> Fix potential null deref in ViewGroup when running transition

Change-Id: I9075c4a05e19122592145468e220afa43faee540
iewGroup.java
3de510313a44977a25ecb5253603fb2df2cc34b2 18-Aug-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #5175022 Easy mode in MeasuredText.setPara() is no more used"
4b60c30838fbd635964f1e79c057de5048dcc66f 18-Aug-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5175022 Easy mode in MeasuredText.setPara() is no more used

- use the real TextDirectionHeuristics constants
- make more formal that LayoutDirection should be resolved BEFORE TextDirection
- reset TextDirection if LayoutDirection is recomputed
- remove non used TextDirectionHeuristic.isRtl(CharSequence...)

Change-Id: I1d53a7e3ee324cfd27785bb4d715d93de8d9ff4d
iew.java
351eb33d84fb76f1addf6a18ce4c7ff5ca40dd5d 18-Aug-2011 Daniel Sandler <dsandler@google.com> Merge "Allow views to setSystemUiVisibility() with the same value and have it work."
fad9555217ce3a657ffc7cba458a0d2622f7a379 17-Aug-2011 Daniel Sandler <dsandler@google.com> Allow views to setSystemUiVisibility() with the same value and have it work.

This will save apps the trouble of having to first remove
the lights-out or hide-navigation flags before reapplying
them (in situations where the system UI has decided to
override those flags).

Bug: 5052456
Change-Id: I31f6ca9105379ae5f0216ebe3c39fc8d5d935f92
iew.java
4f536b3ba86dd744fbb6d8c0a0e5b31bbe4fdb73 16-Aug-2011 Romain Guy <romainguy@google.com> Merge "Prevent NPE in HardwareRenderer Bug #5169815"
86e3e22ba81fb75a5c7e5e007ca1c0cacfda3afb 16-Aug-2011 Romain Guy <romainguy@google.com> Prevent NPE in HardwareRenderer
Bug #5169815

Change-Id: I168b61f3a6cea679e455cf28282b69bb7f3072e5
ardwareRenderer.java
2ce81fcd7d904bb82c55f6076d19cc11e3867100 16-Aug-2011 Romain Guy <romainguy@google.com> Merge "Add an API to set the transform on a TextureView's surface texture. Bug #5156689"
302a9df1d50373c82923bb84ff665dfce584fb22 16-Aug-2011 Romain Guy <romainguy@google.com> Add an API to set the transform on a TextureView's surface texture.
Bug #5156689

Change-Id: I635a625885c9b832a60d44ece0de7613ceb84109
LES20Canvas.java
LES20RenderLayer.java
LES20TextureLayer.java
ardwareLayer.java
extureView.java
e43fca99573291311f90b540d67833011d5fc6be 16-Aug-2011 Adam Powell <adamp@google.com> Offer a masked version of setUiOptions for windows to only modify certain flags.

Change-Id: I36aaff982767f8984c468e8c13f8d5ec8c3c0040
indow.java
4dfbec2665bd5f567d7321f2e88a39e1ab45fdf8 15-Aug-2011 Jeff Brown <jeffbrown@google.com> Find next focus id from inside-out.
Bug: 5165543

This change fixes some problems when the view hierarchy contains
duplicate ids, such as when ListViews contain nested custom views.
If the custom views contain next focused id hints, then the system
should prefer the other views within the ListView item over any
other views outside of the ListView item.

Change-Id: I5653ff6bac0bf9f08bd6ecbe5a3bb22ea47ab566
iew.java
iewGroup.java
e21f89c80256ed2aeaa53022770b140b58e75394 15-Aug-2011 Adam Powell <adamp@google.com> Merge "Fix bug 5159596 - Slider grabs touch point when trying to scroll a list"
f2452b997c4eacc09985a1861a973e305b476135 15-Aug-2011 Jeff Sharkey <jsharkey@android.com> Merge "Change Preferences padding to match UI spec."
8b65c902ee25e9c38f64eef9f7af0cf9e86491e3 15-Aug-2011 Jeff Brown <jeffbrown@google.com> Merge "Use PARCELABLE_WIRTE_RETURN_VALUE flag in InputChannel. Bug: 5161290"
1029866a12e04e9db52485e2ec0353e764d15549 15-Aug-2011 Adam Powell <adamp@google.com> Fix bug 5159596 - Slider grabs touch point when trying to scroll a list

SeekBar widgets were not good citizens when placed in scrolling containers.
Detect when a SeekBar being touched is in a scrolling container and fall
back to a touch slop-based method for beginning a drag. Taps along the
seek bar itself will still change the value on touch up, even if the touch
slop never initiated a proper drag.

Factor out the code used to determine scrolling container status in View
into something that can be reused elsewhere in the framework; leave it
@hidden for now.

Change-Id: I59a21e8ab2c3b0092fafedbcd6ae1ee15f45971c
iew.java
0a0ab128a65900a23f1018a14f5cbecec6443dd3 13-Aug-2011 Jeff Brown <jeffbrown@google.com> Use PARCELABLE_WIRTE_RETURN_VALUE flag in InputChannel.
Bug: 5161290

Replace mDisposeAfterWriteToParcel with code that takes advantage
of the standard Parcel API support for releasing resources after
writing a Binder reply.

This change makes it less likely that InputChannels will leak
accidentally when passed across a Binder.

Change-Id: Id37706e7b88d074e8e4ac687c88f0db8963200f2
nputChannel.java
50d133e290468fd149b5c03e46549afca2ee05f8 13-Aug-2011 Romain Guy <romainguy@google.com> <blink/> is not an acceptable default behavior.
Bug #5156334

Change-Id: I9f803b090e81f4e490d0cccd6347a0f9f64bd20f
ardwareRenderer.java
iewRootImpl.java
c88ba95921444946443794cbaca5911f1a924720 12-Aug-2011 Xavier Ducrohet <xav@android.com> Merge "Make some methods/fields package private so that layoutlib can access them."
03f156e96f5b1b9427473197c2de3a8454d7039c 12-Aug-2011 Romain Guy <romainguy@google.com> Merge "Remove unnecessary private API"
9d865512f1a39bac6bed612b24023213d5a1fb1d 12-Aug-2011 Romain Guy <romainguy@google.com> Remove unnecessary private API

Change-Id: I2ecb367528ec0691c07153a3d163b82a6ca33fdf
LES20Canvas.java
010d7e51604b1cffed6c4a16ba1f8b2527fd27e8 09-Aug-2011 Jeff Sharkey <jsharkey@android.com> Change Preferences padding to match UI spec.

Bug: 5091431
Change-Id: I1b657534c3ecccbddda1bece910da7f31d85291c
iew.java
7f9f99ea11051614a7727dfb9f9578b518e76e3c 11-Aug-2011 Xavier Ducrohet <xav@android.com> Make some methods/fields package private so that layoutlib can access them.

Change-Id: I4aeadfbaf8a4f6a459fa19937c21ac23d9e5fb64
isplay.java
ayoutInflater.java
iewConfiguration.java
7277f3b9b26f0011475b39da1298484a510aca29 11-Aug-2011 Romain Guy <romainguy@google.com> Merge "Document threading limitations on various View methods Bug #5150923"
8a5c6617d513bd0a47c733520facb3ba543b70b0 11-Aug-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #5016544: IME keyboard hides folder rename text field."
e63a4f35c94f32dbc13533ddfb7334f9706be844 11-Aug-2011 Romain Guy <romainguy@google.com> Document threading limitations on various View methods
Bug #5150923

Change-Id: I765d8e4d63a1fee7a12b9c2992bec67b4b6d1131
iew.java
5585c08cd3513e2f3a1afa563cbd807da7a247e3 11-Aug-2011 Amith Yamasani <yamasani@google.com> Merge "Accessibility and silent mode changes to Volume Panel."
9b8e84857080dc1597dc6014c51c3203aa303e93 11-Aug-2011 Amith Yamasani <yamasani@google.com> Accessibility and silent mode changes to Volume Panel.

Volume icons don't say "tap to toggle.." anymore.
Only silentable streams have touchable volume icons.

Bug: 4982424
Bug: 5128528
Change-Id: Iafc0f4b309af390a356d71c382f1200663c5a6e4
olumePanel.java
402f05530352f34d5320c2d23be43c274d97c4e2 10-Aug-2011 Grace Kloba <klobag@google.com> Add a return value for SurfaceTextureListener#onSurfaceTextureDestroyed.

If returns true, the SurfaceTexture will be released by TextureView.
If returns false, the client needs to release the SurfaceTexture.

Change-Id: I946f71e337ad4170c168854ac27e028b82489c8c
extureView.java
70a3f677bf015d8641f41d149b76d362bb2b801c 08-Aug-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5016544: IME keyboard hides folder rename text field.

Tweak some issues in TextView with the focus rect used to determing
where the scroll position needs to be. The ultimate problem was that
in various situations it would use the right-most selection position
cursor as the scroll location and when it adds 1 to make this a valid
rect we end up with a rectangle that is outside of the view.

Change-Id: Ia200c58e4e014d2a0a1be4761f9a1e5eb702a8e5
iewRootImpl.java
6ae7ba3230313391c563f3947b10834deb77b7b7 09-Aug-2011 Dianne Hackborn <hackbod@google.com> Merge "Improve window manager debug output."
a44abeb125a0c8a8e5a065f868d316e41354286a 09-Aug-2011 Dianne Hackborn <hackbod@google.com> Improve window manager debug output.

Cleaned this up while I was debugging another issue.

Change-Id: I0663b9ed581c6868b59655a0f994d870971ec1a6
indowManager.java
cbbd93ae701b9af2e5054d59286bdbf6275c2838 09-Aug-2011 Chet Haase <chet@google.com> Fix ViewPropertyAnimator duration and startDelay issues

getDuration() wasn't returning the correct thing in some cases, and
setStartDelay() had no effect whatsoever. Fixed those.

Change-Id: I89f930535ec1acddf57227937a9ad64986548998
iewPropertyAnimator.java
c3166e15f8898a2ba66fb177efbddb1d0edf6140 09-Aug-2011 Romain Guy <romainguy@google.com> Don't draw more than what we need.

Change-Id: Ifeac66d379a48e8a1124188125e029421eb24226
iewRootImpl.java
03b2ea1102d9e3e9f189173878706ab04533eea3 03-Aug-2011 satok <satok@google.com> Support xml configuration file for the spell checker and add the spell checker subtype

Change-Id: I74715855525fc0a1282238d593ad37aefd42bfc3
extservice/SpellCheckerInfo.java
extservice/SpellCheckerSubtype.aidl
extservice/SpellCheckerSubtype.java
dfee59afb3e4cdcde38f6338f9360655de76da92 06-Aug-2011 Adam Powell <adamp@google.com> Fix bug 5011824 - New Holo overflow menu for physical menu key devices

The new Holo-style overflow menu now appears from the edge of the screen
where the device's physical menu key can be found. The policy determining
this lives in getPreferredOptionsPanelGravity() in WindowManagerService.

Change-Id: I8851a2265547156591e82044e50b5cfc58d3eefa
WindowManager.aidl
755edceadbd07084b694bfe29dc516436a6362d2 05-Aug-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "AccessibilityEvent#toString() always reports -1 for record count."
e4aa13b20166219a62916a92294055e7cc5c9f10 01-Aug-2011 Svetoslav Ganov <svetoslavganov@google.com> AccessibilityEvent#toString() always reports -1 for record count.

1. The implementation of toString() was calling a wrong method
for the record count.

bug:5087078

Change-Id: I4ca79faa6ccce135eb6fe797de7b08e30f8b3e71
ccessibility/AccessibilityEvent.java
5357806980269d846a15c845a6fcc0384fb18860 03-Aug-2011 satok <satok@google.com> API cleanup for the spell checker framework

Bug: 5110151

- Add a bundle to an argment of newSpellCheckerSession
- Expose SpellCheckerSessionImpl in SpellCheckerService
- Fix function names
- etc

Change-Id: Ia8ec783b7b4d5fcd18389854b445fc10fc502297
extservice/SpellCheckerSession.java
extservice/TextServicesManager.java
21351d1b440d3665ebedd7736915f5ef88477c42 04-Aug-2011 Dianne Hackborn <hackbod@google.com> Merge "Whoops also need to move notification shade above lock screen."
e8ecde10b33b1d050d2b63b3f4cd20e8bb7c96d4 04-Aug-2011 Dianne Hackborn <hackbod@google.com> Whoops also need to move notification shade above lock screen.

And this requires making a new layer for the volume toast.

Change-Id: I4f272d56c87cf3b6bf886774b0fb02e610ab9164
olumePanel.java
indowManager.java
452f035c31620499563dc9135926f9a6b4d15cae 04-Aug-2011 Mathias Agopian <mathias@google.com> Merge changes I689cb0c0,I09603218

* changes:
Add a 'release' method to the SurfaceTexture public Java API
Mark Window-Manager-specific APIs on android.view.Surface as @hide
ec46b4e1ca89d7c3a9ad70ded58da08b5e19f08f 04-Aug-2011 Mathias Agopian <mathias@google.com> Add a 'release' method to the SurfaceTexture public Java API

Bug: 5063618
Change-Id: I689cb0c01c14e597ccfb4eb0972e64fa570bd4e8
extureView.java
8c8333c80ea6f178294c054bc9de233105134ce2 04-Aug-2011 Romain Guy <romainguy@google.com> Merge "Destroy the EGL surface when the ViewRootImpl surface is invalid Bug #5109839"
1d0c708961f824ac5171238c205a7bf328d5d8a5 04-Aug-2011 Romain Guy <romainguy@google.com> Destroy the EGL surface when the ViewRootImpl surface is invalid
Bug #5109839

Change-Id: Icebde9abf43b852397a73ffef519004993b46901
ardwareRenderer.java
iewRootImpl.java
b923066deeffbbaad14a117bd56259bd6ee20a08 03-Aug-2011 Mathias Agopian <mathias@google.com> Mark Window-Manager-specific APIs on android.view.Surface as @hide

Bug: 5063337
Change-Id: I096032186acfc6b6a032636188e4d44907e46233
urface.java
590840ff5493133c503010e425bf76b5fa15c70e 03-Aug-2011 Romain Guy <romainguy@google.com> Merge "Don't recreate the EGL surface if the surface is not ready Bug #5114545"
d3facf341bf106588aade72c0164532cd4bf941f 03-Aug-2011 Romain Guy <romainguy@google.com> Don't recreate the EGL surface if the surface is not ready
Bug #5114545

Change-Id: I95149dc18e0582ca358716a6b0d89a4edc8fca26
ardwareRenderer.java
c66009169622ecdb65d887987feaf91fff091af8 03-Aug-2011 satok <satok@google.com> Rename API name "RESULT_ATTR_LOOKS_TYPO"

Change-Id: I42ab73513de20ea9a39af734b358094269ca7fe4
extservice/SuggestionsInfo.java
85de77a1c7d8393dfe349567f818a94e83720040 03-Aug-2011 Adam Powell <adamp@google.com> Merge "Fix bug 5098288 - Rethink the suite of new themes"
269248d112e35fe8e9f0d5d11c96dcb2ac1118b0 02-Aug-2011 Adam Powell <adamp@google.com> Fix bug 5098288 - Rethink the suite of new themes

Cut down the list of new themes for ICS. Holo apps now have
Theme.Holo, Theme.Holo.Light, and Theme.Holo.Light.DarkActionBar to
choose from.

Add manifest attribute android:uiOptions to express
splitActionBarWhenNarrow. Other options may move into this later as
well. (DialogWhenLarge?) This attribute is valid on both activity and
application tags; application settings will serve as the default for
activities that do not explicitly set uiOptions.

uiOptions are not currently reflected in the startup window for new
activities.

Change-Id: Iffdc2ce4cc69f79c9bd4e541b7923286e6936c1e
indow.java
04ee7956ea5009098f9a4c02436b91c18c60d225 03-Aug-2011 Romain Guy <romainguy@google.com> Merge "Add the ability to enable/disable marquee fading per device"
6311d0a079702b29984c0d31937345be105e1a5e 03-Aug-2011 Dianne Hackborn <hackbod@google.com> Clear the bitmap from the canvas in a lot of places.

Change-Id: I6b2071ac7b348c473b9bdd1b972d095aebbb4fb3
iew.java
iewDebug.java
6805545649f2b194859033df94602492b9ec086e 03-Aug-2011 Romain Guy <romainguy@google.com> Add the ability to enable/disable marquee fading per device

Change-Id: I4211553455e87f0af598a2fac1d4f65f15c294fc
iewConfiguration.java
6dd7431710c3737484044ac54d6cd6da1effb614 02-Aug-2011 Romain Guy <romainguy@google.com> Merge "Properly cancel pending buffers on window size change"
cf15efba0792b052dca5baa350d9fb00e6a60667 02-Aug-2011 Romain Guy <romainguy@google.com> Properly cancel pending buffers on window size change

Change-Id: Id6108ce61a971673f3ebc8270e9dd00849c91ae5
ardwareRenderer.java
iewRootImpl.java
b0a20e47dd773fc5ceac51d4158c7500e0bba268 02-Aug-2011 Amith Yamasani <yamasani@google.com> Merge "Volume panel changes."
33e6ad6eed598e4a8f328613d22ef439404373dd 02-Aug-2011 Romain Guy <romainguy@google.com> Merge "Prevent crash with NPE in HardwareRenderer Bug #5109839"
357c942462e4eb1d0b2e91b3fe8ec9ac7524bbed 02-Aug-2011 Romain Guy <romainguy@google.com> Prevent crash with NPE in HardwareRenderer
Bug #5109839

Change-Id: I402fc70ff4b25d273cf3150759d6f2d4d971975d
ardwareRenderer.java
9407c601eacc0a542c45b0b2e9a9353ab0f0193e 02-Aug-2011 satok <satok@google.com> Merge "Move SpellCheckerSession"
aafd955fa8f5c31c511763c0f826b6d7acf15b9c 02-Aug-2011 satok <satok@google.com> Move SpellCheckerSession

SpellCheckerSession should be in android.view.textservice because this class will be used directly by users.

Change-Id: I0df6d7958adda421312b5f641ac4459ca4739cc9
extservice/SpellCheckerSession.java
extservice/TextServicesManager.java
5b9b5a9553a0276dc6b7f1f458c8d4ed03227988 01-Aug-2011 satok <satok@google.com> Change SpellCheckerInfo IPC inputs to String

Change-Id: I4c3f3c7aa7587e3f2582b43702108fa78f37ec54
extservice/TextServicesManager.java
1164d776c612a33bc5e54262589490fb1d2c257d 02-Aug-2011 satok <satok@google.com> Merge "Add a method to set the current spell checker"
046cbe750ba6c18c8a37392896d13ecdf4e00511 01-Aug-2011 satok <satok@google.com> Add a method to set the current spell checker

Change-Id: I0e1fbe99538c873eed3723fb419bbfa626dec509
extservice/TextServicesManager.java
8a2da33c77bae825444fffd326d064225241c7cc 02-Aug-2011 Romain Guy <romainguy@google.com> Merge "Allow Canvas.setBitmap() to receive a null Bitmap."
0965a3244b4c3009d08db2e084cdcb681ef66d26 02-Aug-2011 Romain Guy <romainguy@google.com> Allow Canvas.setBitmap() to receive a null Bitmap.

Change-Id: I6096f0b44866e532ccd96a29c816bf34d48c1dc2
iew.java
42722bfa136f5616872a2c4e199813e804621c81 22-Jul-2011 Amith Yamasani <yamasani@google.com> Volume panel changes.

Combined volume panel only in tablets. On phones show active volume.
Added dummy assets for ring+notification icon.

Deprecated the NOTIFICATION_USES_RING_VOLUME. Now they are always
tied together. Audio manager changes still required to ensure that.

Initialize all feedback sounds to true.

Change-Id: I3ad7890c9be9334eedb5f3b709a4b6995fe24638
olumePanel.java
07c6cc7b7b2ffece4e8149cf10eab31da1fc1d87 01-Aug-2011 Jeff Brown <jeffbrown@google.com> Merge "Tweak hover for better accessibility and compatibility. Bug: 5087943"
1a7b1158c5c2566808c39638d54cae624bd2a361 30-Jul-2011 Romain Guy <romainguy@android.com> Trim HardwareRenderer memory more frequently.

Change-Id: I92e72ce5da324f9ffcfdf7a54d8b368c2531799c
ardwareRenderer.java
bb96bf6e479e00064b287c952a72362a2ee4cb4e 29-Jul-2011 Dianne Hackborn <hackbod@google.com> Merge "Various work on out of memory managment."
53f2531ba7bc72489d03fd17b6ce29c811fad8b5 29-Jul-2011 Daniel Sandler <dsandler@google.com> Merge "The fullest of fullscreen modes."
c68c913d357e2955d4bd7ca52829071e531c7825 29-Jul-2011 Dianne Hackborn <hackbod@google.com> Various work on out of memory managment.

- Improve how we handle processes that have shown UI, to take care
of more cases where we want to push them into the background LRU
list.
- New trim memory level for when an application that has done UI
is no longer visible to the user.
- Add APIs to get new trim memory callback.
- Add a host of new bind flags to tweak how the system will adjust
the OOM level of the target process.

Change-Id: I23ba354112f411a9f8773a67426b4dff85fa2439
ardwareRenderer.java
iewRootImpl.java
ea83503e8683531fac2534047e50bc1e5979b6dd 29-Jul-2011 Romain Guy <romainguy@google.com> Don't create hw layers when there's no hw context.
Bug #5093805

Change-Id: Ia58b3381c83b9a200e80020e5c1b9c337ad6c35c
LES20Layer.java
iew.java
iewGroup.java
iewRootImpl.java
a1b2418e647332e8bed8229d78a64f55a605d024 28-Jul-2011 Jeff Brown <jeffbrown@google.com> Tweak hover for better accessibility and compatibility.
Bug: 5087943

Change-Id: I5533c18ec042b8d9cb590d8d3b22ce4a391c910d
iew.java
60ee25643e0a7b8841063a4e97b0f18c51807e91 22-Jul-2011 Daniel Sandler <dsandler@google.com> The fullest of fullscreen modes.

View.setSystemUiVisibility() now properly accepts a
bitfield, including:

* SYSTEM_UI_FLAG_LOW_PROFILE: "lights out mode"
(previously known, erroneously, as STATUS_BAR_HIDDEN)

* SYSTEM_UI_FLAG_HIDE_NAVIGATION: for when you need every
single pixel on a device that also has a navigation bar

These flags are painstakingly aggregated across the entire
view hierarchy and carefully delivered to the status bar
service, which in turn gently passes them along to the bar
implementation.

To really get access to the whole screen, you need to use
HIDE_NAVIGATION in conjunction with FLAG_FULLSCREEN and
FLAG_LAYOUT_IN_SCREEN. See development/samples/Overscan for
an example of how to do this.

Change-Id: I5fbfe009d9ceebbbf71db73f14a7008ea7c1d4da
iew.java
a7ffaee29892cc38ae2327017b6670adafef711b 28-Jul-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "AccessibilityNodeInfo reports no children for the topmost view in the tree."
b6f7a27c59fd170b5d7617e43e21bfd8587f234e 28-Jul-2011 Romain Guy <romainguy@google.com> Merge "Reclaim more memory, more often."
65b345fa22b878e141b8fd8ece9c208df00fa40f 28-Jul-2011 Romain Guy <romainguy@google.com> Reclaim more memory, more often.

Yay.

Change-Id: I04557ad575c307a55088549f48f0e9ad994b7275
isplayList.java
LES20Canvas.java
LES20DisplayList.java
ardwareRenderer.java
iew.java
iewDebug.java
iewRootImpl.java
indowManagerImpl.java
c8ec222cd8e7d7056b0f01018ac0c38d2c7204c0 28-Jul-2011 Romain Guy <romainguy@google.com> Merge "Destroy layers and flush layers cache when a window is destroyed."
6d7475d666baefaa3ba9f0dcee25238739454241 28-Jul-2011 Romain Guy <romainguy@google.com> Destroy layers and flush layers cache when a window is destroyed.

Change-Id: I3fa1bc3ff50fb99e3d2e490925bd6b0a0f809fff
LES20Canvas.java
LES20RecordingCanvas.java
ardwareRenderer.java
iew.java
iewRootImpl.java
93b2182a2e1a42ef60d3c0fa79fbdc4b27875685 28-Jul-2011 Svetoslav Ganov <svetoslavganov@google.com> AccessibilityNodeInfo reports no children for the topmost view in the tree.

1. My previous change to restrain AccessibilityNodeInfo to report children
if it is root namespace did not take into account that the tompost view
i.e. the decor view actually is a root namespace. Adding check to allow
the info to report children of rthe topmost view but do not do so if a
descendant is flagged as root namespace.

bug:5086988

Change-Id: Ib82b8ebe5a2c287ab1c5333d130ec50eb9ced78c
iewGroup.java
3d5a703db83265f7914eed8580de986106abfad2 28-Jul-2011 Jeff Brown <jeffbrown@google.com> Merge "Report the external display size to the input reader."
be922d6006879692d100894dc924d947b50aed34 28-Jul-2011 Jeff Brown <jeffbrown@google.com> Merge "Handle stylus buttons and tool types."
812634c236b83e100c8473d607e44f8d8c48e805 27-Jul-2011 Scott Main <smain@google.com> cherrypick Change-Id: I213711f4b5d867ba91c961a2f098b6cc415cfcb3
docs: clarify framelayout class summary, issue 5055437

Conflicts:

core/java/android/view/View.java
core/java/android/widget/FrameLayout.java

Change-Id: Ia446d2d4cc798757d7aea104cfaf75fc2315dc50
iew.java
f4a28b5aa0c81086c55497ff921a80335ffe22d1 27-Jul-2011 Romain Guy <romainguy@google.com> Merge "Improve layers debugging"
eea60692b060737faeaa02bb30f5b79e2202b482 27-Jul-2011 Romain Guy <romainguy@google.com> Improve layers debugging

Change-Id: Ia4950dd5f0e0a224ecb69c581d33aa4f32260a7c
LES20Canvas.java
LES20RenderLayer.java
9146d7d327030a304cd6726d7ec6f0b0af280691 27-Jul-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "findViewWithText inconsistent with other findView* methods and AccessibilityNodeInfo not respecting root namespace."
912a7b32d0c59ba38265c5dd6ff84ce93f909a7f 27-Jul-2011 Romain Guy <romainguy@google.com> Make sure we have a current EGL context when invoking EGL
Bug #5081795

Change-Id: Iee3382d362a71c1e6c5c498b319bf7f7bcf5a2f0
ardwareRenderer.java
iewRootImpl.java
effe10fd67645bcaeb987dfefa154c284771064e 27-Jul-2011 Svetoslav Ganov <svetoslavganov@google.com> findViewWithText inconsistent with other findView* methods and AccessibilityNodeInfo not respecting root namespace.

1. Find viewsWithText does not respect if the current view group is a root name
space and keeps its traversal. This is inconsistent with the other findView*
methods. Also only visible views are returned witch is inconsistent with the other
findView* methods.

2. AccessibilityNodeInfo reports children it the source is root namespace. This is
not correct since thi flag denotes the beginning of a logically separate view
hierarchy.

bug:5082601

Change-Id: I9c7ca51f284d04728828d5e656112257c9a2c6e2
iewGroup.java
bc68a59c024bdb745dac8e2ec7408a9f30595f1a 25-Jul-2011 Jeff Brown <jeffbrown@google.com> Report the external display size to the input reader.

The input reader needs this information so that it knows how to
interpolate touches on an external touch screen.

Changed Display so that it asks the WindowManager what the real
display size is (as opposed to the raw display size). This means
it now takes into the forced display size set by
adb shell am display-size.

Replaced all calls to getRealWidth() / getRealHeight() /
getRealMetrics() in the WindowManager and replaced them with direct
usages of the mCurDisplayWidth / mCurDisplayHeight so that the WM
doesn't end up making a reentrant Binder call into itself.

Fixed the table status bar HeightReceiver so that it updates the
height on all configuration changes since it is possible that the
display size changed independently of an external HDMI display
being plugged / unplugged.

Improved the Display class documentation to make the distinctions
betweeen the various sizes clearer.

Change-Id: I3f75de559d3ebffed532ab46c4ae52c5e7f1da2b
isplay.java
WindowManager.aidl
iewRootImpl.java
49754db5a304d995c1cc108ff6f19e4ba4265572 02-Jul-2011 Jeff Brown <jeffbrown@google.com> Handle stylus buttons and tool types.

Added TOOL_TYPE_ERASER.

Refactored the InputReader to share more code between the
various input mappers that handle button states and to
simplify the accumulator implementations by having each
one only handle a single type of input.

Removed the concept of direct/indirect tool types from the API.
If we add it back, it should be done in a manner that is orthogonal
to the tool type itself, perhaps as a flags field on the pointer.
The device source may well provide sufficient information anyhow.

Change-Id: I811c22d95e8304269b6ee4f6d11a6b04f3cfc1b2
otionEvent.java
6c454c3225fd47422024af915fa28d5210d1e82e 26-Jul-2011 satok <satok@google.com> Merge "[step9] Add logging code for text services"
da317ef68603dc7649f98bda495267973825e7fa 26-Jul-2011 satok <satok@google.com> [step9] Add logging code for text services

Change-Id: I4dae847951848cca85bcb73f47c509ce23327334
extservice/TextServicesManager.java
e3f5edf9755ca2ffbb654389251a61b35a3d9901 26-Jul-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Set initial bounds offset to (0,0) so that in-screen bounds reported by AccessibilityNodeInfo are correct"
01391cc0286e3daad2bab193eca325dc1a30e9a0 25-Jul-2011 Romain Guy <romainguy@google.com> Merge "Add debug flag to print out the EGL configuration used by libhwui"
6ef8329c9d3e428658a111b3f803fb90cb805631 25-Jul-2011 Romain Guy <romainguy@google.com> Merge "Add ELG config debugging to HardwareRenderer"
29d23ecfd8612ecd4a7b2140acd344934b73a558 25-Jul-2011 Romain Guy <romainguy@google.com> Add debug flag to print out the EGL configuration used by libhwui

Change-Id: I8be5aebb60b7441342d430131168d11dc551ec34
ardwareRenderer.java
iewGroup.java
71f14a4e23c0b6eb60a81fd9a1be86dc441d051a 25-Jul-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Touch exploration state set to clients asynchronously and depended on talking service being enabled."
484c719c1c4a86d10d7be821782a808d0e12ea4e 25-Jul-2011 Romain Guy <romainguy@google.com> Add ELG config debugging to HardwareRenderer

Change-Id: I1954111e999ea95982c273eb50b9ea82397bc823
ardwareRenderer.java
5bd36eee8698553941bffdc795aa8f2cc66b6338 25-Jul-2011 Adam Powell <adamp@google.com> Merge "Fix bug 5060033 - No text-editing toolbar when in a dialog"
5518dd92d38edd5902482841413722aa654cc2e7 25-Jul-2011 Ted Bonkenburg <tedbo@google.com> Merge "Add support for creating a Surface from a a SurfaceTexture."
54e677ffb026eb838237b8a5e6581833f616e32a 25-Jul-2011 satok <satok@google.com> Merge "[Step 2] Add apis for spell checker settings"
562ab585f9e413d9696ee250e5ec02f95889a157 25-Jul-2011 satok <satok@google.com> [Step 2] Add apis for spell checker settings

Bug: 5057977

Change-Id: I4617b7f1487349c5de385e7392dbc39c69fa2ebc
extservice/SpellCheckerInfo.java
extservice/TextServicesManager.java
ab45c768bcfecbabbd664d4962f0c86627b6c76b 23-Jul-2011 satok <satok@google.com> Merge "Tweak APIs for SpellChecker"
1bedd99761e3d2acdac947d641e7fee5db556141 23-Jul-2011 satok <satok@google.com> Tweak APIs for SpellChecker

1. Move getSupellcheckerInfo to SpellCheckerSession
2. Change the interface of getSpellCheckerSession
3. Remove a flag in SuggestionsInfo

Change-Id: I3debe09e213fc0ab74618eb3504383f2a9447fd9
extservice/SuggestionsInfo.java
extservice/TextServicesManager.java
0bd1d0a15294345bf88b20df28466907f982cec7 23-Jul-2011 Adam Powell <adamp@google.com> Fix bug 5060033 - No text-editing toolbar when in a dialog

Fix a bug that caused standalone action mode bars to not appear
properly or account for system insets such as the status bar.

Add public API to View to toggle the fitsSystemWindows attribute.

Change-Id: I5d7669425b930c5d23f9df26a45f544b706e8242
iew.java
da89e57130363a9b35983368f0f8df3237a9dbfd 23-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Code cleaning"
d794acaa6b1c8333bb9c12a84cd74fe24662bb90 23-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Code cleaning

- this was a bit ugly, isnt it?

Change-Id: Ic479c180977d73d333afed7696b2920840d92abf
iew.java
00aabf7d187bc05408199bd687a538b2e68bdc17 21-Jul-2011 Svetoslav Ganov <svetoslavganov@google.com> Touch exploration state set to clients asynchronously and depended on talking service being enabled.

1. Upon registration of an accessibility client the latter received only
the accessiiblity state and waiting for the touch exploration state
to be sent by the system in async manner. This led the very first
check of touch exploration state is checked a wrong value to be reported.
Now a state of the accessibility layer is returned to the client
upon registration.

2. Removing the dependency on talking accessibility service to be enabled
for getting into touch exploration mode. What if the user wants to use
an accessibility service that shows a dialog with the text of the touched
view?

bug:5051546

Change-Id: Ib377babb3f560929ee73bd3d8b0d277341ba23f7
ccessibility/AccessibilityManager.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/IAccessibilityManager.aidl
ccessibility/IAccessibilityManagerClient.aidl
c9bcebe969fd6fac40bcef4f23dd8fe99290a90b 23-Jul-2011 Romain Guy <romainguy@google.com> Fix the build

Change-Id: Icdf7e25fff5f1dc0836e67368f6797b60164e8ae
nimation/AnimationSet.java
0de171b0d490a5928d54d2fb67c912d140aac643 16-Jul-2011 Ted Bonkenburg <tedbo@google.com> Add support for creating a Surface from a a SurfaceTexture.

The Surface is already using SurfaceTexture internally and it is parcelable. This
is intended to replace and phase out ParcelSurfaceTexture in favor of creating a
new Surface.java object from an existing SurfaceTexture.

Change-Id: I8e2dd86614523da6abed6403e1d705a68fa19fdf
urface.java
326804f81c0710f0ea0d0f871d2f24e6f332a23e 23-Jul-2011 Alan Viverette <alanv@google.com> Set initial bounds offset to (0,0) so that in-screen bounds reported by AccessibilityNodeInfo are correct

Bug: 5063700
Change-Id: I4814c78eb1d6eae007976a057358377560560363
iew.java
5bae58dff90025dd1419bd7508d17bbd32c26beb 23-Jul-2011 Romain Guy <romainguy@google.com> Merge "Nested alpha animations should cause invalidates too Bug #5041061"
d4745a689f36211afaff396874d78b1d5202762d 23-Jul-2011 Romain Guy <romainguy@google.com> Nested alpha animations should cause invalidates too
Bug #5041061

Change-Id: I96835449b6b5537872afda90956c5d06d826e841
iewGroup.java
nimation/AlphaAnimation.java
nimation/Animation.java
nimation/AnimationSet.java
3de3d6ad584d6f08f50aac1b04bc0fe6cb02fb09 22-Jul-2011 satok <satok@google.com> Fix the vendor build.

Change-Id: I856057c9418fd5194d78e34c4496bd43c520546f
extservice/SuggestionsInfo.java
7793719ca97571f5b3636d5a89cb067c71d627bd 22-Jul-2011 satok <satok@google.com> Merge "Create TextServiceManager and SpellCheckerService"
988323c57bd25a58f05dfa492d9b9c8ab62c5153 22-Jun-2011 satok <satok@google.com> Create TextServiceManager and SpellCheckerService

Bug: 4176026

This CL inherits https://android-git.corp.google.com/g/112600

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: Iaa425c7915fe70767ad0b17bf6c6fbcd2a1200b2
extservice/SpellCheckerInfo.aidl
extservice/SpellCheckerInfo.java
extservice/SuggestionsInfo.aidl
extservice/SuggestionsInfo.java
extservice/TextInfo.aidl
extservice/TextInfo.java
extservice/TextServicesManager.java
f726c1de8bb08a5ac08f4f7c7d890db103922b68 22-Jul-2011 Adam Powell <adamp@google.com> Fix doc breakage

Change-Id: I2311a97b626fda105b635b70885b17fdee53f8d2
ollapsibleActionView.java
7ebb0bb15799a53e1a0ea226d1bb8cdcb9fa1d5b 22-Jul-2011 Adam Powell <adamp@google.com> Merge "Bug 5061529 - Save/restore action view state for menu items across invalidations."
9cbd934b3c2c670e3b3a65af01b406e272c29c93 22-Jul-2011 Romain Guy <romainguy@google.com> Merge "Ouput looper traces as traceview traces"
9a8c5cefcab3d5dec6ff63f0e99553e1aa9a4af8 22-Jul-2011 Romain Guy <romainguy@google.com> Ouput looper traces as traceview traces

Change-Id: I96c8e85fd7497d970febbf6f5aefc4ab903add8e
iewDebug.java
08695111cffd239d0f9917ff197c86e12e2e150c 22-Jul-2011 Jeff Brown <jeffbrown@google.com> Merge "Decouple GLES20RecordingCanvas lifetime from GLES20DisplayList. Bug: 5062011"
162a0217563f4665da6eb183dfce0fef740f641f 22-Jul-2011 Jeff Brown <jeffbrown@google.com> Decouple GLES20RecordingCanvas lifetime from GLES20DisplayList.
Bug: 5062011

Previously, each GLES20DisplayList would hold onto an instance of
GLES20RecordingCanvas. In turn, each GLES20RecordingCanvas
held onto an SkWriter with a 16Kb buffer along with several other
objects. With one display list per view and hundreds of views,
the overhead could add up to a few megabytes.

Ensured that the GLES20RecordingCanvas is reset as soon as
the display list has been constructed, thereby promptly freeing
the 16Kb buffer.

Changed GLES20DisplayList so that it acquires a GLES20RecordingCanvas
from a pool as needed and recycles it when done.

Removed some dead code and cruft related to the construction of
GLES20Canvas objects in general. Some code was written with the
assumption that the underlying renderer object could change
behind the scenes or might be lazily constructed, but that isn't
actually the case so we can simplify things.

Removed an unnecessary weak reference from GLES20DisplayList
to the View. It isn't actually used anywhere.

Fixed a bug in GLES20DisplayList where isValid() would return
true while the display list was being recorded. This is incorrect
because the native display list might not actually exist. Worse,
even if the native display list does exist, it is stale and
potentially refers to old Bitmaps that have been GC'd (because the
mBitmaps list was cleared when recording started).

Change-Id: Ib12d5483688cb253478edeb0156d34c476c2566b
isplayList.java
LES20Canvas.java
LES20DisplayList.java
LES20RecordingCanvas.java
ardwareRenderer.java
iew.java
b72dedfa5e8db9e0fb532b4c362df252c3495591 22-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix CheckTextView padding"
038f1c80af06da55056120e121d43e3ee89ec726 21-Jul-2011 Adam Powell <adamp@google.com> Bug 5061529 - Save/restore action view state for menu items across
invalidations.

This includes expand/collapse state.

Add CollapsibleActionView interface. Views can implement this to have
special behavior when they are presented as an expanding/collapsing
action view. This lets SearchView and others take care of fiddly
behavior (focus stealing; opening the IME) automatically without apps
needing to implement this themselves.

Change-Id: Ibbd1eb5fcf3e3a862419e9344ad50f896bd05e36
ollapsibleActionView.java
6ee8c2495dd444ed4687489325b61ec6ebd75cba 22-Jul-2011 Romain Guy <romainguy@google.com> Merge "Add looper profiling to adb shell am"
aff599b4abb10bad6711ff9348f97a56240e0612 21-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix CheckTextView padding

- fix for bug #5051724 and bug #5051674
- override resolvePadding for doing correct padding resolution

Change-Id: Id8c7bf4afa24ff2169fd1bd7f5024a342279aab2
iew.java
7eabe55db6b113f83c2cefcd06812648927de877 21-Jul-2011 Romain Guy <romainguy@google.com> Add looper profiling to adb shell am

To profile the looper, run the following command:

adb shell am profile looper start <process> <file>
adb shell am profile looper stop <process>

Change-Id: I781f156e473d7bdbb6d13aaffeeaae88bc01a69f
iewDebug.java
6179ea3196e9306d3f14361fe9ef14191b1edba6 28-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> Adding accessibility support to the Status Bar.

1. Added content description to pretty much all animals
in the zoo including buttons in the navigation bar,
notifications and status icons for battery, signal,
data, etc.

2. Rectored to avoid ovelaying views since they block
touch exploratino. In general overlaying views
cause trouble for touch exploration and accessibility
in general.

3. Avoid sending accessibility events in case the user is
touching outside of the StatauBAr panels to avoid
confusion.

4. Added records to accessibility events in the places where
this would help the presentation. So the event comes from
a given "leaf" view and its predecessor is adding a record
to the event for itself to provide more cotext. It is up
to the accessiiblity service to choose how to present that.

bug:4686943

Change-Id: I1c1bd123d828fb10911bca92130e9a05c1f020b3
iewGroup.java
22a72964edf52fc4e79d09a0c9a759bf4ee4aa8e 21-Jul-2011 Romain Guy <romainguy@google.com> Merge "Convert looper traces to traceview traces"
648bee18a1ccd362445d562729250ff5910f16a0 21-Jul-2011 Romain Guy <romainguy@google.com> Convert looper traces to traceview traces

Change-Id: If9238e8b00744118c1c4d2182727569f94deb638
iewDebug.java
1180644280a38f77756926531037bfd7b9f1974c 20-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #4772392 Check what needs to be done for RTL specific new attributes that are in public.xml

- cleanup public.xml
- make BiDiTest makefile non visible to the build system
- provide file for injecting the new attributes by hand

Change-Id: I5037ec323066ebd254be51fff7070a5a0101dff7
iew.java
1003aeb9dee6cb9ccb9991b32a6be94cd933d0ce 20-Jul-2011 Romain Guy <romainguy@google.com> Merge "Reduce the fade area to save bandwidth."
f2fc460a9512500d9d5749fbaada88903d8e3b22 20-Jul-2011 Romain Guy <romainguy@google.com> Reduce the fade area to save bandwidth.

Change-Id: I8ccea17fc1fb3c132329baa0acc1b3d5a140a5c6
iew.java
f2cc48fe8bea26bd07cb943b8308a19336536867 19-Jul-2011 Romain Guy <romainguy@google.com> Merge "Let HardwareRenderer support multiple threads."
ee4a6478e23f400244cc8d71bff5f22d649cb409 19-Jul-2011 Philip Milne <pmilne@google.com> Merge "Expose to the platform the ability to pick up changes in child visibility."
2af9e1f7b55463dc071881af1c4ed8d48c0d7289 19-Jul-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #4869092: ResolverActivity occasionally fails to display"
350f0a63c9e785304063a95a6df9e128a67ec64f 19-Jul-2011 Philip Milne <pmilne@google.com> Expose to the platform the ability to pick up changes in child visibility.

Also:

. use above, to flsuh GridLayout state when child's GONE state changes.

Change-Id: I8567c24b51b807f0625918d42b6847a5a350311d
iewGroup.java
2c1c4aa69f4ee0b3868b9ad9f0107bf678ffbb2a 19-Jul-2011 Dianne Hackborn <hackbod@google.com> Fix issue #4869092: ResolverActivity occasionally fails to display

Change-Id: Ic632d08fcfa9138caeacb45fa4a00cbd4a943988
isplay.java
db94b0a5b071bafd5ae8cb9735528aa9d4b31cc8 19-Jul-2011 Chet Haase <chet@google.com> Merge "Don't constrain invalidation rect when not clipping children"
566b3efb25299d2a9c8ae827522802bad965426a 19-Jul-2011 Romain Guy <romainguy@google.com> Let HardwareRenderer support multiple threads.

This change will be useful to create multiples instances of
HardwareRenderer outside of ViewRootImpl. This will allow
the use of hardware accelerated canvas on TextureView or
for live wallpapers.

Change-Id: I877e43a31ba83d98a1a30556813c7e8a8a920eb5
ardwareRenderer.java
a3db866056adb01820bbd6389d20fc550be87eb3 19-Jul-2011 Chet Haase <chet@google.com> Don't constrain invalidation rect when not clipping children

View.setClipChidlren(false) allows children to draw outside of their containers.
But logic in ViewGroup.invalidateChildInParent() constrains the invalidation
rectangle to the bounds of the parent, making the flag useless in some situations.
Avoid intersecting the dirty rect with the parent bounds when the parent
is set to not clip its children.

Change-Id: Icc485b539758c96da0bd62ef57974a1bcb94f866
iewGroup.java
2e29de7cab35e4cf7c8f177b546cc95b101ed5c8 19-Jul-2011 Philip Milne <pmilne@google.com> Merge "Gather View's hierarchy notifications into methods that can easily be overidden."
f51d91c3ab232154b6c00d7f71377ff2421f79bf 19-Jul-2011 Philip Milne <pmilne@google.com> Gather View's hierarchy notifications into methods that can easily be overidden.

Also:

. Remove backward compatibility Group class now that AppsCustomizePagedView has been updated.

Change-Id: Ie3eabbdf57a539b28cdc3fd6d48cd984a4014960
iewGroup.java
7dde1c8ccce049378b8aa9e757b6f907040c8640 19-Jul-2011 Chet Haase <chet@google.com> Merge "Don't recreate view's display list when size hasn't changed"
4273ed652ae9ea2af0a77b6d59a183ebce53a680 19-Jul-2011 satok <satok@google.com> Merge "Enable IMEs to set additional subtypes in background"
75755e23f30d7a1f8c7b0c76ff5b2bcc72d6844f 19-Jul-2011 Chet Haase <chet@google.com> Don't recreate view's display list when size hasn't changed

Minor optimization in setFrame(), to force recreation of
a view's display list only when the actual size of the view has
changed.

Change-Id: Id07bd6943beec30de731ae8469ba881f5c0d9ac6
iew.java
f178737f823cf22d9a07df6f51071b7189a95e7e 15-Jul-2011 Adam Powell <adamp@google.com> Fix bug 5031652 - offer a way to associate metadata with an ActionMode

Change-Id: Ic9d453b5c58eea922ec65423801e008d953bb25b
ctionMode.java
6dd005b48138708762bfade0081d031a2a4a3822 18-Jul-2011 Dianne Hackborn <hackbod@google.com> I. Can. Not. Stand. ViewAncestor.

It was done so we would have the name "ViewRoot" available for a
public API. However, the name "ViewAncestor" just makes no sense.
So instead, change it to ViewRootImpl.

Change-Id: If9599ca67896f339f6fefa7d1dde121201171d97
urfaceView.java
iew.java
iewAncestor.java
iewDebug.java
iewGroup.java
iewRootImpl.java
indowManagerImpl.java
nputmethod/BaseInputConnection.java
nputmethod/InputMethodManager.java
f40aa3834d92bfb516e0f865375103d81e3de71d 19-Jul-2011 Romain Guy <romainguy@google.com> Merge "Trim OpenGLRenderer's memory usage whenever possible"
6be3d5561cbeccf0a8257a4acb155657f868e548 15-Jul-2011 Romain Guy <romainguy@google.com> Add lock/unlockCanvas to TextureView

With this change, TextureView has feature parity with SurfaceView.

Change-Id: I4ef2da33420fc9590f868636ae72a5a6de61965b
extureView.java
bdf7609867a3f886455c51dba91623a86cceb6e2 19-Jul-2011 Romain Guy <romainguy@google.com> Trim OpenGLRenderer's memory usage whenever possible

Change-Id: I9225077184f374b1a43300add15cc1d5b6869d1c
LES20Canvas.java
ardwareRenderer.java
indowManagerImpl.java
989571eeca547db5f8972560c2d45f00be92a327 18-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix resolution padding glitch"
91e88122cf28a48fd2e2260da7d3d87dd437227a 18-Jul-2011 satok <satok@google.com> Enable IMEs to set additional subtypes in background

Bug: 4591792

Change-Id: I7e61a576c56d1a3a56001bdf2fd51ad3801add01
nputmethod/InputMethodManager.java
35bfedeaba724aeadc6f6c890269cb6bf7ef42f5 15-Jul-2011 Svetoslav Ganov <svetoslavganov@google.com> Touch exploration separate setting and API to poll the latter state.

1. Seperated touch exploration to be a seperate setting rather being
magically enabled by the system of accessiiblity is on the there
is at leas one accessibility service that speaks enabled. Now
there is a setting for requesting touch exploration but still the
system will enabled it only if that makes sense i.e. accessibility
is on and one accessibility service that speaks is enabled.

2. Added public API for checking of touch exploration is enabled.

3. Added description attribute in accessibility service declaration
which will be shown to the user before enabling the service.

4. Added API for quick cloning of AccessibilityNodeInfo.

5. Added clone functionality to SparseArray, SparseIntArray, and
SparseBooleanArray.

bug:5034010
bug:5033928

Change-Id: Ia442edbe55c20309244061cd9d24e0545c01b54f
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityManager.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/IAccessibilityManagerClient.aidl
4d36ec11f21ccbb71fbf9277e14b440ad62ba31d 18-Jul-2011 Adam Powell <adamp@google.com> Make View#setBackgroundDrawable a no-op if setting the same background.

Change-Id: Idd3e0ae80609557d82a5564daa1cfb0abca42ded
iew.java
47b779b9f9c2e7948ae8d45ea07a10f1ad07d135 17-Jul-2011 Svetoslav Ganov <svetoslavganov@google.com> Scroll events should indicate whether or not they have pixel data.

1. Updated all integet properties of AccessibilityRecord to be set to -1
so this is a clue to the client that this property is irrelevant for
the current event type.

bug:5031598

Change-Id: Ifedc15bf2249847cbc6cbcb83f5732e17b8b2903
ccessibility/AccessibilityRecord.java
9c83011005349f2f0ebefb47c8ea7fc4bb5a07f7 16-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #4972141 Overlapping content in single-choice dialogs"
f3e1a936c3d10fb13c3b1006cfc91dd4a224dc26 16-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix resolution padding glitch

- make LAYOUT_DIRECTION_LTR case same as LAYOUT_DIRECTION_RTL case

Change-Id: I910f3227c7f5e469cca2c59a6a26362da7965ee5
iew.java
54d69625558f401d5fe65309effb713d2ea06f54 16-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #4972141 Overlapping content in single-choice dialogs

- need to take care about padding resolution

Change-Id: Ida9738ffada6c6455b7949f933fa61924c4f7961
iew.java
f9284695e8c10dad4daf3d2c84f607483bcb56ca 14-Jul-2011 Romain Guy <romainguy@google.com> Add new ViewDebug APIs to profile the event queue.

Change-Id: I225bf288780b0244f459316e2765cfa29cd22c89
iewAncestor.java
iewDebug.java
50e95eba5c7cf70a0ecbc50c0cf5b700201aa67f 15-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Implement textDirection heuristic selection."
a6111377e1edbc5d63fc2a7205d58b2d9c21d978 15-Jul-2011 Jeff Brown <jeffbrown@google.com> Remove edge slop support.

The edge slop feature was added a long time ago for a specific
device that had severe non-linear touch response issues near
the edges of its touch screen. The feature is not useful on
modern hardware that is property calibrated.

Change-Id: I26716cbc7411c31883ddb4bb4ddd981027790d0f
iewAncestor.java
7564d62a773857b2f46405d22f296edb3530d88e 15-Jul-2011 Jeff Brown <jeffbrown@google.com> Enter touch mode on ACTION_SCROLL.

Also fix the lastTouch tracking so it ignores irrelevant non-touch
events (like ACTION_HOVER).

Change-Id: I9e04872cb1f762aa6dcded1f9f83bf20eda17415
iewAncestor.java
2c41fa18bb48bb82e710c2899bd87ad6f84066be 15-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #5025936 TableLayout layout direction resolution is broken"
cb379120456d8065d742021fc5c66748fc8a11a8 07-Jul-2011 Doug Felt <dougfelt@google.com> Implement textDirection heuristic selection.

Change-Id: I2fcf18de573f2d66494fa5ed61e4273c3c6078c7
iew.java
iewGroup.java
fe7e40dc0dabbe677308b87d0b5f538fc9161c7d 13-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5025936 TableLayout layout direction resolution is broken

- check is the parent's view can do resolution when there is inheritance

Change-Id: Ic21d4ee761982ee219229a95f170b6bf2e596b02
iew.java
76559a65ad9d644f10beacf8895ceb217fdd0aeb 07-Jul-2011 Svetoslav Ganov <svetoslavganov@google.com> Polish of the ActivityChooserView and ShareActionProvider.

1. Addressed the UX comments: ActivityChooserView's default selection
popup no longer shows a message, rather hightlights the default
action which now it displays. Alignemnt of the UI.

2. The ShareActionProvider shows a sub-menu if the host item goes
on the overflow menu.

3. Now the heade layout of the activity chooser view is not needed hence
dropped and the item and footer ones are merged.

Change-Id: I0b3de623e4c0a805be9ed73a8541e66b8c00e2d2
ctionProvider.java
6ce9ed955e792a0bc7141d2d6951991c9a0ed1fc 13-Jul-2011 Romain Guy <romainguy@google.com> Merge "Revert "Don't preload HardwareRenderer, its static initialization is process dependant.""
08645eb0f4a8d73b2b2f26d3232f45cf459a27bc 13-Jul-2011 Romain Guy <romainguy@google.com> Revert "Don't preload HardwareRenderer, its static initialization is process dependant."

This reverts commit 821e24336b3ab1f902fc3ee8da423226f50b540c.
ardwareRenderer.java
c93ffea268b49e8697c767508dc5afe1a2338c05 13-Jul-2011 Romain Guy <romainguy@google.com> Merge "Don't preload HardwareRenderer, its static initialization is process dependant."
821e24336b3ab1f902fc3ee8da423226f50b540c 13-Jul-2011 Romain Guy <romainguy@google.com> Don't preload HardwareRenderer, its static initialization is process dependant.

Change-Id: I229357aaaa10b19209983c122f98dd3c07e01d7f
ardwareRenderer.java
961dd11895ce72e59bca124ef5bea4e4c1183099 12-Jul-2011 Adam Powell <adamp@google.com> Update ActionProvider to support dynamically building submenus.

Stub out ShareActionProvider for building a submenu of activities to
choose from.

Change-Id: Ibd9ada77a455ed1a296c87b6d967073ca0f676c2
ctionProvider.java
enuInflater.java
f21f07627df3ad4381fdd3daf47289eeda9754d3 12-Jul-2011 Romain Guy <romainguy@google.com> Merge "Always make GL calls with a valid EGL context. Bug #5010760"
039857520b1a03a52051b966d87d587225bdfcc3 12-Jul-2011 Romain Guy <romainguy@google.com> Always make GL calls with a valid EGL context.
Bug #5010760

Change-Id: If7500ef69683948e727df1406f458f18b11259d1
ardwareRenderer.java
iewAncestor.java
501c4671e73a484c1f01d94f4f5fff124c05f197 11-Jul-2011 Jeff Brown <jeffbrown@google.com> Merge "Eliminate single-process mode. Bug: 5010576"
7f86c806ada21fc7a3feefd89d6fcb4282b0af40 02-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix View reset of layoutDirection and textDirection

- do it in onDetachedFromWindow()
- make naming consistent too
- update unit tests

Change-Id: I320fcdbf75166bae793c4409e7344608b696667f
iew.java
iewGroup.java
10e89712863f5b91a2982dc1783fbdfe39c1485d 09-Jul-2011 Jeff Brown <jeffbrown@google.com> Eliminate single-process mode.
Bug: 5010576

Change-Id: Id450dc83efed4897d1e4ff451530fed14457aace
iewAncestor.java
c7a8be7fc4baa8eb70e49e3894c284ef8aa36612 09-Jul-2011 Romain Guy <romainguy@google.com> Merge "Always redraw the UI on orientation change Bug #4994715"
7e1160e8664a9c5c79367f4ba3c2266a39bbcef5 09-Jul-2011 Romain Guy <romainguy@google.com> Always redraw the UI on orientation change
Bug #4994715

In some cases, on some architectures, the hardware renderer could fail
to properly render a window after an orientation change. The fix is
to force the GL driver to drop any existing buffer to make sure the
next buffer used to draw has the correct geometry.

This change also fixes an issue that was preventing partial screen
updates from being properly enabled.

Change-Id: I874a48590845a8624425130af7db8e20022895dd
ardwareRenderer.java
iewAncestor.java
44476779aec2082b902a04394281206511b64322 08-Jul-2011 Romain Guy <romainguy@google.com> Merge "Correctly position layers."
b2479153b743df9e54f7e17c7132a5ecd87fa453 08-Jul-2011 Romain Guy <romainguy@google.com> Correctly position layers.

Change-Id: I1678b1c5bdab140b44e56556c50ab8329255f18a
iewGroup.java
69abbd8791f57f39a861c6f569da2f712bb6b5db 08-Jul-2011 Romain Guy <romainguy@google.com> Merge "Use NEAREST filtering for layers whenever possible."
9ace8f5e79e76893fe4ca9e4d10f6c4056330485 08-Jul-2011 Romain Guy <romainguy@google.com> Use NEAREST filtering for layers whenever possible.

Change-Id: Id5bee1bd4a322cf93e8000b08e18f1e1b058648e
LES20Canvas.java
ardwareRenderer.java
1d19c18f9bd66b2b4883f8ce33c04ff5c87dd881 08-Jul-2011 Huahui Wu <hwu@google.com> Merge "Revert "b/3302378 Passes touch pressures, size and timestamps to webkit.""
98933f3f6875a7327a44fca7271ae997e45d3779 07-Jul-2011 Huahui Wu <hwu@google.com> Revert "b/3302378 Passes touch pressures, size and timestamps to webkit."

This reverts commit 6e64e0c61720244894dbd1fd6b36394adc63b2de.
It introduced a null pointer crash for pinch-and-zoom.

Change-Id: I886057053b4cd2aded0f58618a806f7a67e58968
otionEvent.java
f61970fc79e9c5cf340fa942597628242361864a 07-Jul-2011 Romain Guy <romainguy@google.com> Add an API to query maximum bitmap/texture size on Canvas.

Change-Id: I2c576c9a4ecad9f33cc6636bcbc29786acdf052d
LES20Canvas.java
6e64e0c61720244894dbd1fd6b36394adc63b2de 29-Jun-2011 Huahui Wu <hwu@google.com> b/3302378 Passes touch pressures, size and timestamps to webkit.

Related CL in WebKit:
https://android-git.corp.google.com/g/#change,118422

Change-Id: Ibf209131a6d9ca8186c461b0c5b6286e5f669d0d
otionEvent.java
35412d63ee59b99a43725e466c5deef52b2324df 04-Jul-2011 satok <satok@google.com> Fix NPE in InputMethodSubtype

Change-Id: Iec8b2f95660db3edec18c2fc38db8f16395739b5
nputmethod/InputMethodSubtype.java
51ac0e94a83cfccb5105aa14df1077729a5b4ccc 17-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> Adding a ShareView and ActionProvider for menus.

1. Adding a widget for sharing contenet with other applications.
The widget orders the share targets based on previous shares.
It displays the share target list as either a popup anchored to
itslef or as a dialog.

2. Added a ShareDataModel that will back widgets or other classes
that are interested in share targets for a given intent ordered
according to share history. This class is backing the ShareView

3. Added ActionProvider mechanism for the MenuItems. The action
provider of a menu creates the action view as well as performs
a default action if the menu item is on the overflow menu and
is triggered but none of the menu callback has handled that.

bug:4590827

Change-Id: Iaa4add2df2538b8c6c7edbeaf2880486d4fd75c5
ctionProvider.java
enuInflater.java
enuItem.java
f03712bf540db15d0594b848e63c207fd50e9379 02-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix default TextView textDirection heuristic"
0b28c757adfec4302b144d8230c01c04ae00ca2b 01-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix default TextView textDirection heuristic

- use "first strong" instead of "locale"
- optimize "any rtl" heuristic too
- fix a few wording issues too

Change-Id: I239a11a49a7a6a6d45165f593c96e8b6b84f0661
iewGroup.java
0e591ab277e777b0422463823e3abf28bb1fd5d8 01-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Add charCount heuristic to TextView textDirection"
8f5026562f26dcde43ee9d9182b309c3204dc1ad 30-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Add charCount heuristic to TextView textDirection

- threshold set to 60% (using a constant)
- fix also one issue during layout direction resolution (parent could be null so delay resolution
up to when parent is no more null)

Change-Id: I65f24a297aac6bc0d5d482ee31b55db0b201e5bf
iew.java
iewGroup.java
8c4706252228755ed181d19532b7e0cfec270ba4 01-Jul-2011 Adam Powell <adamp@google.com> Add API to report the presence of a permanent menu key on the device.

Action bar now uses this to determine whether to show an overflow menu.

Change-Id: Ife4f724d02bbc0d9d86d94740c85299f6dacae91
iewConfiguration.java
ce5ee2dc8dec2a1369ceaad15a39d29909ed0172 01-Jul-2011 Svetoslav Ganov <svetoslavganov@google.com> Crash observed when attempted to uncheck the Accessibility option.

1. Accessibility events for change in the window content are sent
with a delay and code performing the send does not check the
accessibilitys state before sending the event.

bug:4980754

Change-Id: Ice68037ebab9c5dcd0dece927765585e13959c0c
iewAncestor.java
4dfecf55c1afcc7ffe0cef931df67c4934a13e34 01-Jul-2011 Jim Miller <jaggies@google.com> Fix runtime reboot loop.

Change-Id: Ib0614e64e81e376fdbbe7c42a5e4aa8fb9c88ce9
ccessibility/AccessibilityManager.java
1e75fbd8fef202dd59dab5ddacea22eea2174ebf 30-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Updating accessibility documentation."
38e8b4e5bc3c93affdffbc064fd9db5aeccc3e8e 30-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> Updating accessibility documentation.

Change-Id: Ice8cf9ac6918b3bfa553776c68d4619fa6559cf8
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityEventSource.java
ccessibility/AccessibilityManager.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityRecord.java
ccessibility/package.html
fe8b06cfb4cb4991bcfd09ffa60dcbb7b48ee45f 30-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Support control of text alignment."
8ef7358fb3039765b98df170fea4307935145305 30-Jun-2011 Jeff Brown <jeffbrown@google.com> Merge "Synthetic cancel event should have touchscreen source."
2fdbc5a0c499752285630336f0ef538d4a50e60e 30-Jun-2011 Jeff Brown <jeffbrown@google.com> Synthetic cancel event should have touchscreen source.

Fixed a warning identified by the InputEventConsistencyVerifier
due to some code that synthesizes a touch event which it sends
to onTouchEvent with no input device source specified.
This is generally harmless but a fake source is better than
none in this case.

Change-Id: I44cfa36a4746f598f8fde3086084af3896e2ba2a
iewGroup.java
c0ccf0c47c00942a9d0f2670600a8f2d4d7adb5b 24-Jun-2011 Doug Felt <dougfelt@google.com> Support control of text alignment.

Change-Id: Id6f3682f67ba2e6811e3014cd34a281e6dd0a469
iew.java
iewGroup.java
83955ef12fb324fb3d407c5ea08769f267af7074 29-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Add textDirection support for TextView and ViewGroup"
863fcd62171e55bc9f2105d9fb5877df982454d8 21-Jun-2011 satok <satok@google.com> Add onClickView to InputMethodService

Bug: 4697141

- onClickView is called everytime the user taps EditText

Change-Id: Ia71ad325e50a20e9e1001def662ef992bb50a9d0
nputmethod/InputMethodManager.java
nputmethod/InputMethodSession.java
222688682e6e072076489d8203d01bdf2366101a 28-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Add textDirection support for TextView and ViewGroup

- use ViewGroup inheritance if defined
- use different heuristics (inherit, firstStrong, anyRtl, ltr, rtl)
- add more unit tests

Change-Id: Ic1325aa7d9e4689b181e0a2d08b7dd7fb3f0dbeb
iew.java
iewGroup.java
8134681b25dfff814ffeaad8ff70e84316c1869f 29-Jun-2011 Jeff Brown <jeffbrown@google.com> Improve input event consistency invariants.

Fixed some issues where inconsistent streams of events could
be generated by the dispatcher, particularly when switching from
hovering with one device to hovering with another.

Fixed a bug where the touch pad would fail to generate a new
HOVER_MOVE following a tap event. As a result, the hover event
stream would not resume until the user touched the touch pad
again.

Change-Id: I444dce84641fb12e56a0af84c931520771d6c493
nputEventConsistencyVerifier.java
otionEvent.java
53ca3f13e70fda98aa9f39bb0c15afaf435e3904 28-Jun-2011 Jeff Brown <jeffbrown@google.com> Hover and stylus API cleanup.

Added missing setOnHoverListener method.
Removed BUTTON_STATE_ERASER.

Change-Id: I5d820d0a8e47fe5fd2d88e9fd9fc3fc6ce0dea0d
otionEvent.java
iew.java
a20cdc06e599c6fef784a0a479e8329f95e4bd09 27-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> Fixing the build

Change-Id: Ic3664e5cd812d5fe59c9cf2657a441ca76a61135
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityRecord.java
46bdc1ebbc079c6eb5c687cba3c39c130633d8a7 27-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Added scroll and text selection change accessibility events."
aaad33e0aa2f2c444118adf4177e037fba252960 27-Jun-2011 Romain Guy <romainguy@google.com> Merge "Fixing various broken javadoc comments in framework."
a0156177cdc809795dd8bc5a19943dd2b6f82b66 27-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> Added scroll and text selection change accessibility events.

1. Added scrolling accessibility event to provicde feedback
when a view is scrolled.

Note: We need scroll events for ICS since even though we have
touch exploration the user does not know when something
is scrollable and not feedback is provided while scrolling.

bug:4902097

2. Added a text selection change event to provide feedback
for selection changes including cursor movement.

Note: We need the text selection change events for ICS since
even though the IME supports navigation in text fields
the user receives no feedback for the current selection/
cursor position.

bug:4586186

3. Added a scrollable property to both AccessibilityEvent and
AccessibilityNodeInfo. The info has to describe the source
in terms of all properties that make sense for accessibility
purposes and the event has this property (kinda duplicated)
since clients will aways want to know if the source is
scrollable to provided clue to the user and we want to avoid
pulling the info of the source for every accessibility event.

Change-Id: I232d6825da78e6a12d52125f51320217e6fadb11
iew.java
iewAncestor.java
iewConfiguration.java
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityRecord.java
b76023afd192a1f5c81a8965cfd1b9dde2558726 21-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Introduce MarginLayoutParams marginStart and margingEnd

- update BiDiTest app for adding more unit tests concerning margin

Change-Id: Ia6a7e0a1948a2c375e8f3cc87d120a85351a8c27
iew.java
iewGroup.java
8ab3dc7a3e430cc69975091b962758f49bc84ef2 24-Jun-2011 Andrew Sapperstein <asapperstein@google.com> Fixing various broken javadoc comments in framework.

Change-Id: I48a6b3c268e8ebf3aa2ff3a1de7ff5fa6f8f6de7
eyEvent.java
4c60c541de2399d92610b8a7f7f105a42c1ed2a9 25-Jun-2011 Romain Guy <romainguy@google.com> Merge "Properly tear down TextureView"
80429c458506485904715180d10584092a5cd082 25-Jun-2011 Romain Guy <romainguy@google.com> Properly tear down TextureView

Change-Id: Ic23cd9257889d0abe8cc3fc1d04a66d0505e383e
extureView.java
c1ba416af5d902ff9b9db7627ab73ec2baff427c 24-Jun-2011 Romain Guy <romainguy@google.com> Merge "Reduce the number of UI events required to update a SurfaceTexture."
58f4edb7701bf20925468fa5fd1a06a461ff085b 24-Jun-2011 Romain Guy <romainguy@google.com> Reduce the number of UI events required to update a SurfaceTexture.

Change-Id: I9330c9646654fff57dcd6817c86e587a6490a9ad
extureView.java
c897fbfaf91f85a4f73643b2da6b58485350d574 24-Jun-2011 Romain Guy <romainguy@google.com> Merge "Code cleanup"
02ccac69fd1c0a03c24c5f3ace0ad4bed337b1fd 24-Jun-2011 Romain Guy <romainguy@google.com> Code cleanup

Change-Id: I64c346004e0adf9a776d0315534d4fe445f0c0ca
LES20Layer.java
LES20TextureLayer.java
ardwareLayer.java
ardwareRenderer.java
extureView.java
iew.java
iewAncestor.java
a54a600bc41c8ac760f85333b0c562cdc6770531 24-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #4813026 resolved direction of view doesn't change after layout direction changes"
5c5050d9026f7e0ba52bec094f681e048cdd5d9a 24-Jun-2011 Grace Kloba <klobag@google.com> Make TextureView to use async SurfaceTexture.

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
LES20TextureLayer.java
58b868417755805ebdfe4feb65664ad98c00bf35 23-Jun-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #4770360: older app compatibility mode is really tiny on ICS phones"
2b31d53161789358de57fd396716a6503855c5da 23-Jun-2011 Dianne Hackborn <hackbod@google.com> Fix issue #4770360: older app compatibility mode is really tiny on ICS phones

We were applying the density compat mode scaling multiple times to
display metrics, causing bad values.

Change-Id: Iafafd9a5e94b9d774cd2715bf968e91602a1bd82
isplay.java
cf559377b750271472aa0a717bf3b7d34abc0b39 23-Jun-2011 Grace Kloba <klobag@google.com> Add onSurfaceTextureUpdated to the TextureView listener.

The app needs a way to throttle the producer side. Expose this to enable it.

Change-Id: I04b6a3fc444117a9fc2449fb87c3c834247c8ef1
extureView.java
8b4512ef203ee0bc3bca33224f1e03f2c1e59546 23-Jun-2011 Romain Guy <romainguy@google.com> Merge "Prevent possible NPE in TextureView"
1ec3a58bcdd0d5fa82cf878d974d062811933ae2 23-Jun-2011 Romain Guy <romainguy@google.com> Prevent possible NPE in TextureView

Change-Id: I539813d614c7eb1f68dad6b605cbad5b5144c5e9
extureView.java
c2e0a1f1cdd249694bf707a7bc066e7808c340d0 23-Jun-2011 Romain Guy <romainguy@google.com> Merge "Add the ability to specify the opacity of a TextureView"
a9489274d67b540804aafb587a226f7c2ae4464d 23-Jun-2011 Romain Guy <romainguy@google.com> Add the ability to specify the opacity of a TextureView

TextureView assumes its content is opaque by default.

Change-Id: Iba873423566a5b67c388081838bd910dceba32ba
LES20Canvas.java
LES20TextureLayer.java
ardwareRenderer.java
extureView.java
iew.java
iewGroup.java
ef716baaa0f54d618da4f08474f81d02aff636cd 23-Jun-2011 Chet Haase <chet@google.com> Merge "Fix flashing artifacts caused by invalidation bugs"
80dc53d652b060d4dea7d70e9a5aa3b8321bcf8d 22-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #4813026 resolved direction of view doesn't change after layout direction changes

- 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
iew.java
iewGroup.java
ad4f70306b2089a273635b73a101fe48aa36cbe2 22-Jun-2011 Chet Haase <chet@google.com> Fix flashing artifacts caused by invalidation bugs

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
iewAncestor.java
c989d867f2580a99cde25fab0e49e445aea33f2f 22-Jun-2011 Romain Guy <romainguy@google.com> Collapse UI events in TextureView.

Change-Id: Ia6c0cef0f694edc4b685c1ade1a9ba509a51e541
extureView.java
a3e3c533ee4af6d9dba43b70ac421ba880992961 22-Jun-2011 Adam Powell <adamp@google.com> Fix bug 4807086 - Options menu panel too narrow in landscape

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
iewAncestor.java
8969d9924c662ab4cdacc342bbdc33756db730be 22-Jun-2011 satok <satok@google.com> Revert "Create TextServiceManager and SpellCheckerService"

This reverts commit eaddb894865a804279659b4aad6364a34ab50beb.
nputmethod/ISpellCheckerService.aidl
nputmethod/SpellCheckerInfo.aidl
nputmethod/SpellCheckerInfo.java
nputmethod/SpellCheckerService.java
nputmethod/TextServiceManager.java
f86ee14f6a53d409489261415901c6397877ce3d 22-Jun-2011 satok <satok@google.com> Merge "Create TextServiceManager and SpellCheckerService"
87b7f805b94f5df53343264509f6d606d96dfb05 22-Jun-2011 Jeff Brown <jeffbrown@google.com> Send hover to all children under pointer.

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
iew.java
iewGroup.java
194f4a7afd6be1600e360b553f6d9a2f03a3f45b 22-Jun-2011 Jeff Brown <jeffbrown@google.com> Merge "Only handle onHoverEvent in actionable views."
32b6328b0c7ca45bbfe71d68816e0022c23abc79 22-Jun-2011 Jeff Brown <jeffbrown@google.com> Merge "Fix taint and nesting bugs."
aa4d46bb12e7fab8d9d8d6e0e2a8d6205420a318 22-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #4796027 left/right padding regression after recent View change (part 2)"
f9e36506f1d1d83d5a7266f955e861b9e819b205 22-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #4796027 left/right padding regression after recent View change (part 2)

- 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
iew.java
10b6290c5f15ae512a2f6b5bf8d95bd2527c7235 21-Jun-2011 Jeff Brown <jeffbrown@google.com> Only handle onHoverEvent in actionable views.

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
iew.java
iewGroup.java
738e7e431c71777100726f6c870e47c354db1337 21-Jun-2011 Jeff Brown <jeffbrown@google.com> Fix taint and nesting bugs.

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
nputEventConsistencyVerifier.java
374d757e9c00d120b53703bb0573813bba7f11b7 22-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #4796027 left/right padding regression after recent View change"
f8ed444fad4c5bcb9c163ecb1303871c47e676d0 22-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #4796027 left/right padding regression after recent View change

- mUserPaddingStart and mUserPaddingEnd had be be greater than 0 for overriding

Change-Id: I588a9971bf73aa9461716cfd5a006373a14408f8
iew.java
86398bda3dd869c67faa841a5d961316b5f4aa8a 22-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> AccessiblityNodeInfo#findAccessibilityNodesByText returns null if non found.

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
ccessibility/AccessibilityNodeInfo.java
34e350daf89aed09ac748c2185f4506772a63b3f 21-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> ListView do not fire accessibility hover events.

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
ccessibility/AccessibilityEvent.java
b53a68bbd96c3ffa22914c72315d50e6999dcb28 21-Jun-2011 Adam Powell <adamp@google.com> Fix bug 4738084 - Padding calculation regression

Make sure user padding values aren't clobbered during construction.

Change-Id: I90d1610e0bf50ccb10f058fb2b6c6d8ff34eec3b
iew.java
d8703a98241ff190a26bc4b6089a0a8ab0122d8f 17-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Add View paddingStart and paddingEnd

- 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
iew.java
eaddb894865a804279659b4aad6364a34ab50beb 01-Jun-2011 satok <satok@google.com> Create TextServiceManager and SpellCheckerService

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
nputmethod/ISpellCheckerService.aidl
nputmethod/SpellCheckerInfo.aidl
nputmethod/SpellCheckerInfo.java
nputmethod/SpellCheckerService.java
nputmethod/TextServiceManager.java
98769300af3580723f99415bba0f790e874fb27b 18-Jun-2011 Romain Guy <romainguy@google.com> Merge "Add error checking to LayerRenderer::copyLayer"
d6b2a00dd43257d1498b09175bff63663f6cb861 18-Jun-2011 Romain Guy <romainguy@google.com> Add error checking to LayerRenderer::copyLayer

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
extureView.java
iewAncestor.java
1790a10eea34b777dcca54cfafb05ef4914b23fb 18-Jun-2011 Chet Haase <chet@google.com> Merge "Invisible views can't start animations"
ee452bcc06c6a42ecc78a154bb4fb9366e9178eb 18-Jun-2011 Romain Guy <romainguy@google.com> Merge "Fix rendering issue with paths when the stroke width is 0"
98029c825b9234e6b90721d910cc180885fcab1d 18-Jun-2011 Romain Guy <romainguy@google.com> Fix rendering issue with paths when the stroke width is 0

Change-Id: I5d8ac23dc69e9e17df4ef6b5195186b5207e2524
iew.java
c8a9a70c5fe1be7e22f861f40b8cf3a9cf147cb2 17-Jun-2011 Chet Haase <chet@google.com> Invisible views can't start animations

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
iew.java
4f844e26366dac62c27fea0ccdd4db5b9c359e47 17-Jun-2011 Amith Yamasani <yamasani@google.com> Merge "Inform the InputMethodManager that a focused view has been attached."
4503c8dd714e1e40306d9356bf27b1f4925ea5f0 17-Jun-2011 Amith Yamasani <yamasani@google.com> Inform the InputMethodManager that a focused view has been attached.

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
iew.java
b47f2f9533ec76be0228e53959aa3c93d4e1c355 16-Jun-2011 Chet Haase <chet@google.com> Merge "Fix crash in ViewPropertyAnimator for unparented view."
3a000a52d6863bd1c6c9822a9cfd83e00f3aaf79 16-Jun-2011 Chet Haase <chet@google.com> Fix crash in ViewPropertyAnimator for unparented view.

Mechanism for removing possible earlier animations should
call removeCallbacks on the view, not on the (possibly null)
handler of the view.

Change-Id: I76c6f0bea5e009be9197a6e49e9360ed9ef1a9cb
iewPropertyAnimator.java
7e27e489d86888ac8bfc7852379a58178313fa5c 16-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Introduce LocalUtil and getLayoutDirectionFromLocale() now use likelySubtags"
fa59d178bb9421218e18fc60d8ba63eb258cf84a 16-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Invisible views should not be visible to accessibility services (interrogation)"
ea1da3d2e61625afcc7753ba2e03c5d2fb565dae 16-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> Invisible views should not be visible to accessibility services (interrogation)

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
iewAncestor.java
iewGroup.java
e5e0c50f7dfaccc220725c5595080e921ffda1e4 16-Jun-2011 Romain Guy <romainguy@android.com> Properly refcount SurfaceTexture in the JNI layer.

Change-Id: I4b4c8020c13b8d6ce0d302fe42410033bf5785a6
LES20Canvas.java
LES20TextureLayer.java
ardwareRenderer.java
extureView.java
a47f45e4829f812ff47f9e5c9370b02284d92ae8 15-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Introduce LocalUtil and getLayoutDirectionFromLocale() now use likelySubtags

- move code from Configuration to LocaleUtil
- move unit tests

Change-Id: Ic14b0131894a0c5618f00d4acb3edb0daadefe01
iew.java
474dcb5c3ddff737c4ac9fc44a1f7be569605e5f 15-Jun-2011 Jeff Brown <jeffbrown@google.com> Add support for disabling pointer gestures.

Made it possible for individual windows to disable pointer gestures
while the window has focus using a private API.

Cleaned up the InputReader configuration code to enable in-place
reconfiguration of input devices without having to reopen them all.
This change makes changing the pointer speed somewhat nicer since the
pointer doesn't jump back to the origin after each change.

Change-Id: I9727419c2f4cb39e16acb4b15fd7fd84526b1239
indowManager.java
77a811610f99e21da7f88dafef60d09f345d0506 15-Jun-2011 Romain Guy <romainguy@google.com> Add TextureView.getBitmap()

This API can be used to get a Bitmap copy of the content of a
TextureView.

Change-Id: I07522216c353720fba5cab333174f58f484eb911
LES20Canvas.java
LES20Layer.java
ardwareRenderer.java
extureView.java
c0053223bedf33581b0830fb87be32c1f26e5372 13-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Add View.getResolvedLayoutDirection()

- update Callback2 interface
- update Gravity.getAbsoluteGravity() and Gravity.apply() to be more generic
by changing "boolean isRtl" parameter to "int layoutDirection"
- fix BiDiTests for RTL FrameLayout

Change-Id: I97bb456c22d5fd3ecb34f08564ce4dbed37e7459
ravity.java
iew.java
3e234ba1fb4530786286503306ed7091aecaeb1e 14-Jun-2011 Jeff Brown <jeffbrown@google.com> Merge "Allow touches to slide out of the navigation bar."
2714abff5cc50b1487c0979c99cc685f5ea113b1 14-Jun-2011 Adam Powell <adamp@google.com> Merge "Expose api on View to determine if the view can be scrolled."
98db5fabdad86dca379740d8050697950b9f026c 09-Jun-2011 Jeff Brown <jeffbrown@google.com> Allow touches to slide out of the navigation bar.

Change-Id: I73cabba3d62f47829bf6217700ace56a27c42b1d
indowManager.java
6915944fc722fd8a7d4f26a02faaee51afdfc5c1 14-Jun-2011 Adam Powell <adamp@google.com> Expose api on View to determine if the view can be scrolled.

Change-Id: I41783237a975151392faec04c6a85803ebbccfb4
iew.java
eeee4d2c01d3c4ed99e4891dbc75c7de69a803fa 11-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> Final polish of the interrogation feature.

1. Added a new event type for notifying client accessibilitiy
services for changes in the layout. The event is fired at
most once for a given time frame and is delivered to clients
only if it originates from the window that can be interrogated.

2. Exposed the findByText functionality in AccessibilityNodeInfo.
This is very useful for an accessibility service since it allows
searching for something the user knows is on the screen thus
avoiding touch exploring the content. Touch exploring is
excellent for learning the apps but knowing them search is
much faster.

3. Fixed a bug causing an accessibiliby service not to receive
the event source in case of more than one service is registered
and one of them does not have paermission to interrogate the window.
The same event was dispatched to multiple services but if one
of them does not have interrogation permission the event is
modified to remove the source causing subsequent serivices not
to get the later.

4. Moved the getSource setSource methods to AccessibilityRecord
instead in AccessibilityEvent.

5. Hiden some protected members in AccessibilityRecod which should
not be made public since getters exist.

6. Added the View absolute coordinates in the screen to AccessibilityNodeInfo.
This is needed for fast computation of relative positions of
views from accessibility - common use case for the later.

7. Fixed a couple of marshalling bugs.

8. Added a test for the object contract of AccessibilityNodeInfo.

Change-Id: Id9dc50c33aff441e4c93d25ea316c9bbc4bd7a35
iew.java
iewAncestor.java
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityRecord.java
ccessibility/IAccessibilityInteractionConnection.aidl
ad47ab3524289eee8410f0b93b024c70a1d469fd 11-Jun-2011 Jeff Brown <jeffbrown@google.com> Merge "Make orientation changes happen sooner."
c0e9e4293a4739b40c85e91c0f72e610c87d119d 11-Jun-2011 Romain Guy <romainguy@google.com> Merge "Add onSurfaceTextureDestroyed() callback."
40b62b9e66bf55cf2c49184298fa00c290e2bc2c 11-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Make View respect LAYOUT_DIRECTION_LOCALE"
451ce44a18e4c48f8a43aa250957f76967a35d31 11-Jun-2011 Romain Guy <romainguy@google.com> Add onSurfaceTextureDestroyed() callback.

This is needed for Renderscript and it also makes implementations
of TextureView cleaner. This change also hooks up the onSurfaceTextureSizeCHanged()
callback whenever the view size changes.

Change-Id: I2f972ee4504d800329defefacf32cf20547d31a3
extureView.java
26e432d25f2ba199ae8b762fc68da8463389dd9b 10-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Make View respect LAYOUT_DIRECTION_LOCALE

- update also unit tests for taking care of the locale direction
- code formatting on the layout test files

Change-Id: I4037eac3c572de9abb0178f36ca03803cc2c1522
iew.java
8dffad68c7aa7da9a3d73d1ee41f3c4460f733b4 10-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> Bug fixes in the accessibility interrogation APIs

1. AccessibilityNodeInfo was not overriding equals.

2. ViewAncestor was not calling the callback for
setting the result of an interrogation request
thus making the system process wait upto the
maximal timeout.

Change-Id: I040a3c12d97f48aee319ba6414879546e71e9b8e
iewAncestor.java
ccessibility/AccessibilityNodeInfo.java
21e2f1b4a0877ee38f7ba89eb32f585fb34431f3 10-Jun-2011 satok <satok@google.com> Merge "API to set additional subtypes"
e7c6998e0a953ae55487d4fe122739646f9280aa 03-Jun-2011 satok <satok@google.com> API to set additional subtypes

Bug: 4321667

- Due to the voice team's strong request

Change-Id: Ia8bbc277c0987bde996e6f65541877cec96a3ca1
nputmethod/InputMethodInfo.java
nputmethod/InputMethodManager.java
7bbf6f7d11877496502c20e8998a6984ab05cd39 10-Jun-2011 Dianne Hackborn <hackbod@google.com> am 8297f669: am 3aabdeac: am 5ba2e872: Merge "Fix for not reporting correct "sw" in compat mode." into honeycomb-mr2

* commit '8297f669356ee997c5faa745815e8b9a7009fba7':
Fix for not reporting correct "sw" in compat mode.
a47847fc50758a3bb983fc2f607c9e76e1e90577 10-Jun-2011 Dianne Hackborn <hackbod@google.com> Merge "resolved conflicts for merge of e2aa0490 to master"
8af7f5f8e413aa4ff101092dfff1726bc9aed7b9 10-Jun-2011 Romain Guy <romainguy@google.com> Merge "Add a way to measure potential framerate of the view hierarchy."
f741e679c496f7345304a6543f01d7048e31d1a7 10-Jun-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of e2aa0490 to master

Change-Id: Id0448a1598fc93aca0652b29253e02586e35a067
59a12cae208790dd202656f50a40a53ef49baeeb 10-Jun-2011 Romain Guy <romainguy@google.com> Add a way to measure potential framerate of the view hierarchy.

Change-Id: Ia19c7ed143d8a823fd678ffab84613ea075d228a
iew.java
iewAncestor.java
601ad8061cb8dcf3ab7385fa9e9dd13f15dc8ece 09-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> Invalid access to AccessibilityInteractionController

1. The Interaction connection checks if the ViewAncestor
is valid and posts a message to be processed on the UI
thread. The code in the UI thread did not check if
the mView was valid. Added this check.

2. Added a faster sync mechanism in the test for
getting the source of the last access event.

Change-Id: I9982b6592f5f44a68a67df40f37c063a3ba62993
iewAncestor.java
28285e176b1116da120da00bc9a20c262f26ea00 09-Jun-2011 Adam Powell <adamp@google.com> Merge "Bug 4588114 - Make GestureDetector behave nicer with parallel multi-touch detection"
17921eefe3d2219ee2348face5d650d33db64b06 09-Jun-2011 Adam Powell <adamp@google.com> Bug 4588114 - Make GestureDetector behave nicer with parallel multi-touch detection

Change-Id: I5ca377124a5888f0f45206d5de2d0a4b37e63351
estureDetector.java
aaedf740a9bb0085cbfb46c3f7d9d762d0b5e458 09-Jun-2011 Adam Powell <adamp@google.com> am 4e1504a6: am 7ed8ff18: am 68b81434: Merge "Fix bug 4533120 - rough handling of invalid event streams in ScaleGestureDetector" into honeycomb-mr2

* commit '4e1504a66b37b424c8839e64f97ac823e5358bd5':
Fix bug 4533120 - rough handling of invalid event streams in ScaleGestureDetector
8297f669356ee997c5faa745815e8b9a7009fba7 09-Jun-2011 Dianne Hackborn <hackbod@google.com> am 3aabdeac: am 5ba2e872: Merge "Fix for not reporting correct "sw" in compat mode." into honeycomb-mr2

* commit '3aabdeaceff8405406d90c329a6691552559556d':
Fix for not reporting correct "sw" in compat mode.
3aabdeaceff8405406d90c329a6691552559556d 09-Jun-2011 Dianne Hackborn <hackbod@google.com> am 5ba2e872: Merge "Fix for not reporting correct "sw" in compat mode." into honeycomb-mr2

* commit '5ba2e872fa684c0f1b992a95df00854b58f2cd8c':
Fix for not reporting correct "sw" in compat mode.
48a7651823030ed3c0f4c084b423430044425fea 09-Jun-2011 Dianne Hackborn <hackbod@google.com> Fix for not reporting correct "sw" in compat mode.

Change-Id: Ia225c94b36ccc3589d417aafd5680247678eddfd
indowManagerImpl.java
e2aa04908cfdf65ef309f1491f31a0c8846977ff 09-Jun-2011 Dianne Hackborn <hackbod@google.com> am a1396dfe: am 02140891: Merge "Work on issue #4518815: Compatibility mode introduces compatibility regression..." into honeycomb-mr2

* commit 'a1396dfe7ad6ec6953f544be42d69d7804ab0fd4':
Work on issue #4518815: Compatibility mode introduces compatibility regression...
a1396dfe7ad6ec6953f544be42d69d7804ab0fd4 09-Jun-2011 Dianne Hackborn <hackbod@google.com> am 02140891: Merge "Work on issue #4518815: Compatibility mode introduces compatibility regression..." into honeycomb-mr2

* commit '021408910af170268cb486910d4dd5a7d838c2bb':
Work on issue #4518815: Compatibility mode introduces compatibility regression...
34803caec8783166ffdec2a983b39f6df886c651 09-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "AccessibilityNodeInfo and AccessibilityEvent to initialized properly."
9210ccbdc3629cead65a822d729e1783a773118c 09-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> AccessibilityNodeInfo and AccessibilityEvent to initialized properly.

Change-Id: Id3a1b33a222790214820af4a8b49378f08e53558
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityNodeInfo.java
5fd2169eabd77e6bfafaf456e58051a3bafb2bca 07-Jun-2011 Dianne Hackborn <hackbod@google.com> Work on issue #4518815: Compatibility mode introduces compatibility regression...

...for Market App iRunner

There were a lot of serious issues with how we updated (or often didn't update)
the display and resource state when switching compatibility mode in conjunction
with restarting and updating application components. This addresses everything
I could find.

Unfortunately it does *not* fix this particular app. I am starting to think this
is just an issue in the app. This change does fix a number of other problems
I could repro, such as switching the compatibility mode of an IME.

Also a few changes here and there to get rid of $#*&^!! debug logs.

Change-Id: Ib15572eac9ec93b4b9966ddcbbc830ce9dec1317
ompatibilityInfoHolder.java
isplay.java
iewRoot.java
indow.java
indowManagerImpl.java
0a2f6640defa14b1bf1753ee2faf7e3d32c259f0 08-Jun-2011 Jeff Brown <jeffbrown@google.com> Make orientation changes happen sooner.

Tweaked the window orientation listener to be less conservative
in its filtering. Should shave a couple hundred milliseconds
off the rotation time.

Change-Id: If7dd5114b0941df6199fe81080ac94730cf797cf
indowOrientationListener.java
66e9af6c549b1f6ab4e3f26e2bab14b115ad3848 08-Jun-2011 Romain Guy <romainguy@google.com> Remove obsolete code.

Change-Id: I2f990528bdc0dc6127f367e55c55287d43dd29f9
iewAncestor.java
b39f051631250c49936a475d0e64584afb7f1b93 24-May-2011 Chet Haase <chet@google.com> Add 'Property' object

This change adds a generic Property facility to the SDK, which allows an
easy way to reference fields (private or otherwise) in a general way.
For example, animations can use this facility to animate 'properties'
on target objects in a way that is more code- and compiler-friendly than
the existing String-based approach (for objects which have implemented
Properties, of course). The animator classes have been updated to use
this new approach (in addition to Strings, which are still more generally
useful for objects which have get/set functions but not Property objects).

The change also includes new Property objects on View (which can now be
used in creating animations on Views).

There is an unrelated change on GLES20RecordingCanvas to change the way we
cache bitmaps, which avoids spurious garbage by using an ArrayList instead of
a HashSet.

Change-Id: I167b43a3fca20e7695b1a23ca81274367539acda
LES20RecordingCanvas.java
iew.java
3932aa7ff887007f4ae1e28e47b6775c9ceca566 08-Jun-2011 satok <satok@google.com> Merge "Fix the display name of InputMethodSubtype"
a9778d4d442db65344e32318b1fd43ab54898389 08-Jun-2011 satok <satok@google.com> Fix the display name of InputMethodSubtype

- Also fixed hashCode

Change-Id: I4ef4bf42e4b73d11e23a89c5df3947411e654c04
nputmethod/InputMethodSubtype.java
774ed9d9537c15482e8baca2f2890c5d2f4ffe75 08-Jun-2011 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 8b2c0014 to master

Change-Id: I33a5a2949dc6c2d09e8196ba8c7128caa7ac2361
4e1504a66b37b424c8839e64f97ac823e5358bd5 08-Jun-2011 Adam Powell <adamp@google.com> am 7ed8ff18: am 68b81434: Merge "Fix bug 4533120 - rough handling of invalid event streams in ScaleGestureDetector" into honeycomb-mr2

* commit '7ed8ff18ce16312b86bd7da855e185b9ecc934a8':
Fix bug 4533120 - rough handling of invalid event streams in ScaleGestureDetector
7ed8ff18ce16312b86bd7da855e185b9ecc934a8 08-Jun-2011 Adam Powell <adamp@google.com> am 68b81434: Merge "Fix bug 4533120 - rough handling of invalid event streams in ScaleGestureDetector" into honeycomb-mr2

* commit '68b81434963db90e0d5b14710e4edd86084ede3c':
Fix bug 4533120 - rough handling of invalid event streams in ScaleGestureDetector
982cb98393151921aceb0b214b14a1f9b473b71e 08-Jun-2011 Adam Powell <adamp@google.com> Fix bug 4533120 - rough handling of invalid event streams in
ScaleGestureDetector

Make ScaleGestureDetector a bit more tolerant of bogus event streams.

Change-Id: I28a8b1ea494b7f1ca9d4c4623b95aee38f213369
caleGestureDetector.java
c46f7ffa9079f3ae8a5204e7519ed7a1250116d0 07-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Rename atribute View horizontalDirection to layoutDirection and update unit tests

- update before/after to start/end in unit test app

Change-Id: Id7286ef5d9390540faf8ecd5f0b1c140d04bb364
ravity.java
iew.java
8b2c00144ac262a6fbdbbac1ed8dfe813b883f81 07-Jun-2011 Jeff Brown <jeffbrown@android.com> am b3536145: am ed48fa89: Merge "Touch pad improvements. Bug: 4124987" into honeycomb-mr2

* commit 'b3536145725250401d25ffa00cda85d222dfc21e':
Touch pad improvements. Bug: 4124987
b3536145725250401d25ffa00cda85d222dfc21e 07-Jun-2011 Jeff Brown <jeffbrown@android.com> am ed48fa89: Merge "Touch pad improvements. Bug: 4124987" into honeycomb-mr2

* commit 'ed48fa89a8e31b04681347a9235c2a566e7dbb8e':
Touch pad improvements. Bug: 4124987
bb3fcba0caf697f1d238a2cbefdf1efe06eded99 07-Jun-2011 Jeff Brown <jeffbrown@android.com> Touch pad improvements.
Bug: 4124987

Only show one spot per touch point instead of one spot per
finger for multitouch gestures.

Tweaked the pointer acceleration curves.

Dissociated the hover/tap timeouts from the "tap" timeout
since they mean very different things.

Change-Id: I7c2cbd30feeb65ebc12f6c7e33a67dc9a9f59d4c
iewConfiguration.java
8643aa0179e598e78d938c59035389054535a229 20-Apr-2011 Svetoslav Ganov <svetoslavganov@google.com> Interrogation of the view hierarchy from an AccessibilityService.

1. Views are represented as AccessibilityNodeInfos to AccessibilityServices.

2. An accessibility service receives AccessibilityEvents and can ask
for its source and gets an AccessibilityNodeInfo which can be used
to get its parent and children infos and so on.

3. AccessibilityNodeInfo contains some attributes and actions that
can be performed on the source.

4. AccessibilityService can request the system to preform an action
on the source of an AccessibilityNodeInfo.

5. ViewAncestor provides an interaction connection to the
AccessibiltyManagerService and an accessibility service uses
its connection to the latter to interact with screen content.

6. AccessibilityService can interact ONLY with the focused window
and all calls are routed through the AccessibilityManagerService
which imposes security.

7. Hidden APIs on AccessibilityService can find AccessibilityNodeInfos
based on some criteria. These API go through the AccessibilityManagerServcie
for security check.

8. Some actions are hidden and are exposes only to eng builds for UI testing.

Change-Id: Ie34fa4219f350eb3f4f6f9f45b24f709bd98783c
elocityTracker.java
iew.java
iewAncestor.java
iewGroup.java
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityManager.java
ccessibility/AccessibilityNodeInfo.aidl
ccessibility/AccessibilityNodeInfo.java
ccessibility/AccessibilityRecord.java
ccessibility/IAccessibilityInteractionConnection.aidl
ccessibility/IAccessibilityInteractionConnectionCallback.aidl
ccessibility/IAccessibilityManager.aidl
9e3b002d3f9141d54948a65e0330fdcd09e75a30 07-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Rename Gravity BEFORE/AFTER to START/END

- following spec proposal for having CSS3 like naming

Change-Id: Id5e316a2d9b54b9f20bbcb168fea6a3a83882e1b
ravity.java
indowManager.java
7218d830e27d81141588cd6e37f206d141a18f62 04-Jun-2011 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of ca2b552d to master

Change-Id: I2f3693a59042ac5aa2d7bcdc3a504c78dc99a18b
678d344bcb5c7981b5033cdf8070c58783ded01b 03-Jun-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of b9e2f68b to master

Change-Id: Icb68aee4c68170f0e7cd7854dbaa61656a349142
50469db07167e3a837e10f215baa4eacb1319604 03-Jun-2011 Dianne Hackborn <hackbod@google.com> am 7322e557: am a4cfcf10: am 75d6b3c2: Merge "Fix issue #4502672: Wrong xml resources used for homescreen widgets." into honeycomb-mr2

* commit '7322e557cfe42da42779625d69ced2db74a9df90':
Fix issue #4502672: Wrong xml resources used for homescreen widgets.
752737076dd0424998b8399e82af00bf745ba22f 03-Jun-2011 satok <satok@google.com> am e10de072: am be96408b: (Do not merge) Backport a fix for InputMethodManager.java

* commit 'e10de072d50cbe6984151cbbdba4dd2f2e8310b9':
(Do not merge) Backport a fix for InputMethodManager.java
e10de072d50cbe6984151cbbdba4dd2f2e8310b9 03-Jun-2011 satok <satok@google.com> am be96408b: (Do not merge) Backport a fix for InputMethodManager.java

* commit 'be96408b801666bf196adb0eabff4839e51e63ed':
(Do not merge) Backport a fix for InputMethodManager.java
be96408b801666bf196adb0eabff4839e51e63ed 03-Jun-2011 satok <satok@google.com> (Do not merge) Backport a fix for InputMethodManager.java

Bug: 4517456

Original CL: Icec380f3ca05cf798cc4b82155d0cecf178633a5

Change-Id: I579fb1ee1b53d312f7cfc5c689d4500cb875352e
nputmethod/InputMethodManager.java
b1b2e2275ff0e475df5c5614bb0d7965ebef90ae 03-Jun-2011 satok <satok@google.com> Merge "Update internal states stored in InputMethodManager properly"
ca2b552d981239043a575dfc9db86966492d0f9e 03-Jun-2011 Jeff Brown <jeffbrown@android.com> am c8812761: am e1718de6: Merge "Add a preference panel for mouse speed." into honeycomb-mr2

* commit 'c8812761609e532cceb400b112ed9982149c2490':
Add a preference panel for mouse speed.
c8812761609e532cceb400b112ed9982149c2490 03-Jun-2011 Jeff Brown <jeffbrown@android.com> am e1718de6: Merge "Add a preference panel for mouse speed." into honeycomb-mr2

* commit 'e1718de61c20c8d401633f83589f18d2c0c652db':
Add a preference panel for mouse speed.
a1908aa05c9b9673dfe0e7fb8e7a4027742958ba 03-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Improve ViewDebug informations for View and LineaLayout"
bce84d2bcaa30b9d937b629111091e9f6286c3eb 03-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Improve ViewDebug informations for View and LineaLayout

Change-Id: Ie34519c975027dead806b7859b638d78c39ace77
iew.java
1a84fd1fb7a51f3fe4f8865e1cdd09f3490f696c 02-Jun-2011 Jeff Brown <jeffbrown@android.com> Add a preference panel for mouse speed.

Bug: 4124987
Change-Id: I3ce175d268a1d043cf5878481261b1049a15a149
WindowManager.aidl
4b2711372d7bebd9dc874404ee22fbc9b932fa11 02-Jun-2011 Romain Guy <romainguy@google.com> Merge "Take advantage of EGL_BUFFER_PRESERVED on IMG."
6f7d9394ec69e9fb38ca5fc2caf6d2aef6f7442d 02-Jun-2011 Romain Guy <romainguy@google.com> Take advantage of EGL_BUFFER_PRESERVED on IMG.

The IMG architecture does not support the EGL_SWAP_BEHAVIOR_PRESERVED_BIT
in EGL configurations. This bit is used only to be able to change the
EGL_SWAP_BEHAVIOR, which matters when the default behavior is not the
one we want. However on IMG, the default swap behavior is the one we
desire.

Change-Id: Iff5980c97df9e41bc837e424baf83b8eadbb7161
LES20Canvas.java
ardwareRenderer.java
560bcb34fad8bfe642d9ab6f38d973185d253af5 02-Jun-2011 satok <satok@google.com> Update internal states stored in InputMethodManager properly

Bug: 4517456

"startInputInner" in InputMethodManager.java will call "startInput" in InputMethodManagerService.java
In startInputLocked in IMMS, mCurSeq (Bind sequence) is incremented, but if mCurMethod stored in
InputMethodManager.java is not null, mBindSequence in InputMethodManager.java will not be updated
to the incremented sequence.

Hence, after this procedure, unbinding IME will be cancelled by the mismatch of the bind sequence.

This situation happens when user changes the focused text view.
If I remember correctly, some behaviors of showing or hiding IME at switching text view were changed.
And I think this bug appeared because of that change.

Change-Id: Icec380f3ca05cf798cc4b82155d0cecf178633a5
nputmethod/InputMethodManager.java
ed60f81940c5f2125518c7c31ad4f61b8a9baf3e 02-Jun-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 76450622 to master

Change-Id: I26ccd8f264e65f100d894f43cf597a781552db83
cc28a669f61c71ec95e5cca2b25eab4266ea0cfb 02-Jun-2011 satok <satok@google.com> Merge "Add an api to get the display name for InputMethodSubtype"
4f31353cb3b00c77c9420ef27ec949fd570ede3b 01-Jun-2011 satok <satok@google.com> Add an api to get the display name for InputMethodSubtype

Bug: 4321667

Change-Id: I55aa844ff33dae0cf8ef00072e87727992eb77c1
nputmethod/InputMethodInfo.java
nputmethod/InputMethodSubtype.java
8d02deabac62c4a68a335a7b3141795466362b89 01-Jun-2011 Adam Powell <adamp@google.com> Implement bug 4500971 - Collapsable action views

Action views may now be flagged as 'collapsable'. This means that the
action menu will always show them in the collapsed state by
default. When selected, the action view will "take over" the
navigation/view side of an action bar until dismissed via the home/up
button.

This feature allows for more long-term exclusive modes akin to
ActionModes but less intrusive. The action menu itself remains
unaffected. Collapsable action views are ideal for things such as
search or categories of tool palettes.

Change-Id: Ibafce5631befbfe67c5d834c2e2617d3d7f6da7a
enuItem.java
b9e2f68b2865307db25fa7295b7ba3bd51c7521a 01-Jun-2011 Dianne Hackborn <hackbod@google.com> am 13e2bef4: am 80cf4e79: Merge "Fix issue #4500511: Holo effect background doesn\'t reach top of screen anymore" into honeycomb-mr2

* commit '13e2bef4f67c5bc5ce93aade1431ae3332d361f0':
Fix issue #4500511: Holo effect background doesn't reach top of screen anymore
13e2bef4f67c5bc5ce93aade1431ae3332d361f0 01-Jun-2011 Dianne Hackborn <hackbod@google.com> am 80cf4e79: Merge "Fix issue #4500511: Holo effect background doesn\'t reach top of screen anymore" into honeycomb-mr2

* commit '80cf4e79d2acd1f94b6a9866255459c6ab2760be':
Fix issue #4500511: Holo effect background doesn't reach top of screen anymore
a239c84525795ffc1828b545aa8069af88d26a71 01-Jun-2011 Dianne Hackborn <hackbod@google.com> Fix issue #4500511: Holo effect background doesn't reach top of screen anymore

Change-Id: Iebefe924e71206f3e6388eaee64f7b1416bc3239
iewRoot.java
4f5aa91ba58486ff25904942320b234986094958 01-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix View default horizontal direction

- set default value to View.HORIZONTAL_DIRECTION_INHERIT
- code refactoring

Change-Id: Ib5b49c8f8ebd6461992bff87603fdbb4b261218e
iew.java
7322e557cfe42da42779625d69ced2db74a9df90 01-Jun-2011 Dianne Hackborn <hackbod@google.com> am a4cfcf10: am 75d6b3c2: Merge "Fix issue #4502672: Wrong xml resources used for homescreen widgets." into honeycomb-mr2

* commit 'a4cfcf10cc300a1eb5b2a4254fb7d3190c56c4f1':
Fix issue #4502672: Wrong xml resources used for homescreen widgets.
a4cfcf10cc300a1eb5b2a4254fb7d3190c56c4f1 01-Jun-2011 Dianne Hackborn <hackbod@google.com> am 75d6b3c2: Merge "Fix issue #4502672: Wrong xml resources used for homescreen widgets." into honeycomb-mr2

* commit '75d6b3c2a24224e41e87685db0d9d0b8abea091d':
Fix issue #4502672: Wrong xml resources used for homescreen widgets.
2f0b17573d4324832f7a20402a3d2b5920bc4866 01-Jun-2011 Dianne Hackborn <hackbod@google.com> Fix issue #4502672: Wrong xml resources used for homescreen widgets.

There was a race in the system process between applying the initial
configuration and executing code in higher-level system services
like the app widget service that relies on the config. For some
reason it starting showing up more after my code changes; it should
now be completely fixed.

Also fix the activity starting window to run in compatibility mode
if its application is going to be in compatibility mode.

And some various cleanup and small fixes.

Change-Id: I0566933bf1bbb4259c1d99a60c0a3c19af1542e5
WindowManager.aidl
indowManagerPolicy.java
b1af3a2d1f710bd4a5cd7e5940e4a36c852556ce 31-May-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Accessibility serviceconfiguration via meta-data"
cc4053e031371456fe54d51bbad1db721db4ae38 23-May-2011 Svetoslav Ganov <svetoslavganov@google.com> Accessibility serviceconfiguration via meta-data

Note: This is a part of two CL change and contains the
system changes without updates to the settings.

1. Added a mechanism for configuring an accessibility service via
XML file specified in a meta-data tag (similar to IMEs).

2. Added property for specifying a settings activity for an
accessibility service.

3. Refactored the APIs in AccessibilityManager to return
lists of AccessiblityServiceInfo instead ServiceInfo
since the former describes an AccessibilityService in
particular (similar to IMEs).

Change-Id: Ie8781bb7e0cdb329e583b6702a612a507367ad7b
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityManager.java
ccessibility/IAccessibilityManager.aidl
c05aace48af1104dd917e8b5ad2dd76a02645ada 28-May-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix default for getAbsoluteGravity()

- remove LEFT as default, keep it as it is given (because apply() is doing CENTER_HORIZONTAL)
- update unit tests

Change-Id: I294621c5d5c7d675a715c15cb10947d026539b21
ravity.java
5ff0f99b23da389f59fe736c4c670c60f13be8ea 27-May-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Add support for Gravity BEFORE and AFTER"
6a03640539405afbdefe72894759281b98aa6e6f 23-May-2011 Fabrice Di Meglio <fdimeglio@google.com> Add support for Gravity BEFORE and AFTER

- update layouts
- add Callback2 for RTL aware Drawable
- add unit tests

Change-Id: Ic64d0291e262170aff7297c6580b0b422eaa8d89
ravity.java
iew.java
indowManager.java
dcf305ebf991ff13a56b71118968d905ff636eca 26-May-2011 Scott Main <smain@google.com> am 101139cc: am c3123961: DO NOT MERGE cherry pick Change-Id: I67ef29f8ccc7b4a754ebb24efd96e9821e3d8662 docs: add accepted values for setting status bar visibility

* commit '101139cc8f5b975dfacf1a2ffd3bdae8e3907f65':
DO NOT MERGE cherry pick Change-Id: I67ef29f8ccc7b4a754ebb24efd96e9821e3d8662 docs: add accepted values for setting status bar visibility
76450622f08b1d0d09df7f1ad8e52afe01090770 26-May-2011 Dianne Hackborn <hackbod@google.com> am d5238cc1: am 7a09f72b: Merge "Rework how we decide whether to use system or status bar." into honeycomb-mr2

* commit 'd5238cc1ab8366389b2aada228f2f2e5cbb3244e':
Rework how we decide whether to use system or status bar.
101139cc8f5b975dfacf1a2ffd3bdae8e3907f65 26-May-2011 Scott Main <smain@google.com> am c3123961: DO NOT MERGE cherry pick Change-Id: I67ef29f8ccc7b4a754ebb24efd96e9821e3d8662 docs: add accepted values for setting status bar visibility

* commit 'c31239616cca417e71acb98813df7eda645835df':
DO NOT MERGE cherry pick Change-Id: I67ef29f8ccc7b4a754ebb24efd96e9821e3d8662 docs: add accepted values for setting status bar visibility
d5238cc1ab8366389b2aada228f2f2e5cbb3244e 26-May-2011 Dianne Hackborn <hackbod@google.com> am 7a09f72b: Merge "Rework how we decide whether to use system or status bar." into honeycomb-mr2

* commit '7a09f72b8850ec22e4ca7fd50aba20ead7666f67':
Rework how we decide whether to use system or status bar.
c31239616cca417e71acb98813df7eda645835df 25-May-2011 Scott Main <smain@google.com> DO NOT MERGE
cherry pick Change-Id: I67ef29f8ccc7b4a754ebb24efd96e9821e3d8662
docs: add accepted values for setting status bar visibility

Change-Id: I255dcd62b71c1b4ca40187b395abce8d6836c249
iew.java
81e56d535c853d73ff537357da5b935f51cb779d 26-May-2011 Dianne Hackborn <hackbod@google.com> Rework how we decide whether to use system or status bar.

The PhoneWindowManager is now responsible for determing this,
since it needs to do this before we can generate the configuration
since we need to take into account the system bar size we will use.

Also the Display should now report the screen height without
including the system bar.

Change-Id: I82dfcc5e327e4d13d82c373c6c870f557a99b757
isplay.java
WindowManager.aidl
indowManagerPolicy.java
3453b1c584f456a18f17d74a72c044b4e39c6405 26-May-2011 Scott Main <smain@google.com> Merge "docs: add accepted values for setting status bar visibility"
8c1132e3ceed8e1a8c696e2afe0e6fe456ccd7ef 26-May-2011 Daniel Sandler <dsandler@android.com> Merge "Framework support for Android Dreams."
b2771f1a41af079fca31c11f7a905a94d2dc03bb 26-May-2011 Dianne Hackborn <hackbod@google.com> Merge "resolved conflicts for merge of 77dd616e to master"
f9f01008624e2d28c15a90d942fa36f98c8c967d 19-May-2011 satok <satok@google.com> Add Apis to send notifications when the suggestion was picked

- Due to a strong request from VoiceIME

Bug: 4443922

Change-Id: Ia539de0acf66053e0349daec459d75e36805f6bf
nputmethod/BaseInputConnection.java
nputmethod/InputMethodManager.java
fee1c69a49d03b651e481983432ade94fc07650a 26-May-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 77dd616e to master

Change-Id: Idb7180177b01e7d822327ccc7c76617220860da2
3c2fb0242b0ec21101959dfa08aad3162a523634 25-May-2011 Jeff Brown <jeffbrown@google.com> am 8148cc3e: am 86ea1f5f: Initial checkin of spot presentation for touchpad gestures. (DO NOT MERGE)

* commit '8148cc3e47e50c916066e2fed562618b5827188f':
Initial checkin of spot presentation for touchpad gestures. (DO NOT MERGE)
da97f16c5d62d96c1b774a73da23bdc3e3e7b794 25-May-2011 Jeff Brown <jeffbrown@google.com> am c5c7e047: am d0132e8e: Minor Alt-TAB / Recent Apps Dialog improvements. (DO NOT MERGE)

* commit 'c5c7e047d1a1c56ba55bdfea9391d1907f355dbc':
Minor Alt-TAB / Recent Apps Dialog improvements. (DO NOT MERGE)
8148cc3e47e50c916066e2fed562618b5827188f 25-May-2011 Jeff Brown <jeffbrown@google.com> am 86ea1f5f: Initial checkin of spot presentation for touchpad gestures. (DO NOT MERGE)

* commit '86ea1f5f521981d075aef56f11693e4f3bc32fdb':
Initial checkin of spot presentation for touchpad gestures. (DO NOT MERGE)
c5c7e047d1a1c56ba55bdfea9391d1907f355dbc 25-May-2011 Jeff Brown <jeffbrown@google.com> am d0132e8e: Minor Alt-TAB / Recent Apps Dialog improvements. (DO NOT MERGE)

* commit 'd0132e8e187ebf69bf4d2d6d0ef0027ff3f7a727':
Minor Alt-TAB / Recent Apps Dialog improvements. (DO NOT MERGE)
7d0fb57044576fd4bbaf9683997bab288c3b759c 25-May-2011 Jeff Brown <jeffbrown@google.com> am 16330e24: am 94e838f6: Merge "Improve VelocityTracker numerical stability. (DO NOT MERGE)" into honeycomb-mr2

* commit '16330e249663fed890df0e95fce4016c2971120a':
Improve VelocityTracker numerical stability. (DO NOT MERGE)
86ea1f5f521981d075aef56f11693e4f3bc32fdb 13-Apr-2011 Jeff Brown <jeffbrown@google.com> Initial checkin of spot presentation for touchpad gestures. (DO NOT MERGE)

Added a new PointerIcon API (hidden for now) for loading
pointer icons.

Fixed a starvation problem in the native Looper's sendMessage
implementation which caused new messages to be posted ahead
of old messages sent with sendMessageDelayed.

Redesigned the touch pad gestures to be defined in terms of
more fluid finger / spot movements. The objective is to reinforce
the natural mapping between fingers and spots which means there
must not be any discontinuities in spot motion relative to
the fingers.

Removed the SpotController stub and folded its responsibilities
into PointerController.

Change-Id: Ib647dbd7a57a7f30dd9c6e2c260df51d7bbdd18e
ointerIcon.aidl
ointerIcon.java
d0132e8e187ebf69bf4d2d6d0ef0027ff3f7a727 07-Apr-2011 Jeff Brown <jeffbrown@google.com> Minor Alt-TAB / Recent Apps Dialog improvements. (DO NOT MERGE)

Alt-TAB should have different semantics from the APP_SWITCH key
or long-press on HOME. Accordingly, remove the fallback action
for Alt-TAB and initiate the task switching behavior directly
in the policy.

Modified RecentApplicationsDialog to be more precise about the
initial modifiers that it considers to be holding the dialog.

The dialog is now dismissed by a second press on the APP_SWITCH
key or by a second long press on HOME.

Change-Id: I07e72dc4e1f3cd8edaf357c1d49e79f60d6d1604
eyEvent.java
16330e249663fed890df0e95fce4016c2971120a 25-May-2011 Jeff Brown <jeffbrown@google.com> am 94e838f6: Merge "Improve VelocityTracker numerical stability. (DO NOT MERGE)" into honeycomb-mr2

* commit '94e838f6e113f8cad30086a18f68da99976101d0':
Improve VelocityTracker numerical stability. (DO NOT MERGE)
94e838f6e113f8cad30086a18f68da99976101d0 25-May-2011 Jeff Brown <jeffbrown@google.com> Merge "Improve VelocityTracker numerical stability. (DO NOT MERGE)" into honeycomb-mr2
7d70fbf0b5672bada8b25f065bc292796c3d4812 25-May-2011 Romain Guy <romainguy@google.com> Use OpenGL to render transition bitmaps.

When the IME is opened/dismissed, ViewAncestor would draw the
view hierarchy into a Bitmap, using the software rendering
pipeline. With this change, ViewAncestor will now use OpenGL.

Change-Id: I69e24570e12ff55f6f3cec18a664b33410a0eaf4
ardwareRenderer.java
iewAncestor.java
77dd616e685e2671491d911d0847efa4f832717e 25-May-2011 Dianne Hackborn <hackbod@google.com> am 00b3a5c6: am c404e9b2: Merge "More compatibility mode improvements." into honeycomb-mr2

* commit '00b3a5c65e6ef26056178d1d7473b921671752e9':
More compatibility mode improvements.
00b3a5c65e6ef26056178d1d7473b921671752e9 25-May-2011 Dianne Hackborn <hackbod@google.com> am c404e9b2: Merge "More compatibility mode improvements." into honeycomb-mr2

* commit 'c404e9b20165f634904d1489216d17d8e09fe696':
More compatibility mode improvements.
5be8de3420ba4c9d816b98e29bdec11715f6b626 25-May-2011 Dianne Hackborn <hackbod@google.com> More compatibility mode improvements.

We now correctly adjust display metrics, fixing for example issues
seen in Barcode Scanner. In addition the decision about when to use
compatibility mode has a bug fixed where certain apps would not go
out of compatibility mode even though they should be able to.

Change-Id: I5971206323df0f11ce653d1c790c700f457f0582
isplay.java
urface.java
urfaceView.java
iewRoot.java
indow.java
indowManagerImpl.java
ec6331b82a41beda86d9ff1797af6001603f0053 25-May-2011 Scott Main <smain@google.com> docs: add accepted values for setting status bar visibility

Change-Id: I67ef29f8ccc7b4a754ebb24efd96e9821e3d8662
iew.java
8d5f808f70c1d47437eaf49234c1b3a23c244040 24-May-2011 Chet Haase <chet@google.com> Add more functionality to ViewPropertyAnimator.

Allow ViewPropertyAnimator animations to be started immediately, canceled,
and to have an optional startDelay. This is functionality parallel to that
in the base Animator class.

Change-Id: I391f1810bf697656999bd6e3e63a59e46eb7eb8a
iewPropertyAnimator.java
cca2c9807206f320bd41bf8656a227e4f249e4ba 20-May-2011 Chet Haase <chet@google.com> Add ability to transition parent hierarchy in layout transitions

This change compensates for changes in the parent hierarchy of
transitioning views. It automatically animates parents with the same
animations as those used for the CHANGING animations run on the container
children.

Change-Id: I86471d16a9070b024cc09c8f6e0f504a881fa99f
iew.java
iewAncestor.java
iewGroup.java
383715aafe108b24e374ff6462e84a7924824d30 25-May-2011 Romain Guy <romainguy@google.com> Merge "Code cleanup."
1c90f032fad84b468fbe84d1faa11421e5209f89 24-May-2011 Romain Guy <romainguy@google.com> Code cleanup.

Change-Id: I5469a2c826c054f20e045ea098bdbcad9e11b17b
iewAncestor.java
iewDebug.java
80fd47ce75253dcdc2cfa85d7a3f42634b923a47 24-May-2011 Jeff Brown <jeffbrown@google.com> Input device protocol enhancements.

Added support for Linux multitouch protocol B (slots).

Added support for using the device's input properties as a hint
to determine the intended usage of a touch device.

Added support for the ABS_MT_DISTANCE axis.

Fixed a bug reporting the presence of the orientation axis.

Change-Id: Icf7b5a5a0f1a9cdf6ad2b35be8ea0c1a35815d48
otionEvent.java
0601eb7953cbf77d92826bef3ca37e208d922de7 13-Apr-2011 Daniel Sandler <dsandler@android.com> Framework support for Android Dreams.

A Dream is an activity that is launched by the window
manager after a specified idle time. You might think of this
as a "screen saver", but with the same capacity for
interactivity as any other application.

The window manager maintains a timer (like the screen lock
timer) that is reset on userActivity; the timer is suspended
during wakelocks and when the screen is off.

When the timer elapses, the user's preferred dream module is
launched (by reading Settings.Secure.DREAM_COMPONENT, which
is configured through the Settings app UI).

Like a dock app, the user can install new dreams and a
single application package may contain multiple dream
activities. Unlike the dock mode, however, there is no
"screensaver mode" for the system to manage. This allows us
to offer the user the ability to run a dream at any time, in
addition to making the overall mechanism quite simple.

There is no public API for this facility.

There is, however, a useful/recommended base class for dream
activities in the support library (change I4559a958).

Change-Id: Ied691856f88cfa38a7aca496d015f9a595da72f2
indowManagerPolicy.java
5b2b4d9c0a56c4b5e869c828a6c36a1b9e27d61b 15-Mar-2011 Jeff Brown <jeffbrown@google.com> Improve VelocityTracker numerical stability. (DO NOT MERGE)

Replaced VelocityTracker with a faster and more accurate
native implementation. This avoids the duplicate maintenance
overhead of having two implementations.

The new algorithm requires that the sample duration be at least
10ms in order to contribute to the velocity calculation. This
ensures that the velocity is not severely overestimated when
samples arrive in bursts.

The new algorithm computes the exponentially weighted moving
average using weights based on the relative duration of successive
sample periods.

The new algorithm is also more careful about how it handles
individual pointers going down or up and their effects on the
collected movement traces. The intent is to preserve the last
known velocity of pointers as they go up while also ensuring
that other motion samples do not count twice in that case.

Bug: 4086785
Change-Id: I95054102397c4b6a9076dc6a0fc841b4beec7920
elocityTracker.java
33bdc3c9995cbef477cec756b65d767558e6b836 20-May-2011 satok <satok@google.com> am d9435bce: am b4788fdb: Do not merge. Backport two fixes for InputMethethodFramework

* commit 'd9435bcecc820c8715d8b6b920fd43042418a1e9':
Do not merge. Backport two fixes for InputMethethodFramework
d9435bcecc820c8715d8b6b920fd43042418a1e9 20-May-2011 satok <satok@google.com> am b4788fdb: Do not merge. Backport two fixes for InputMethethodFramework

* commit 'b4788fdbfdda97bd9cfd0e483276934114d9c438':
Do not merge. Backport two fixes for InputMethethodFramework
b4788fdbfdda97bd9cfd0e483276934114d9c438 20-May-2011 satok <satok@google.com> Do not merge. Backport two fixes for InputMethethodFramework

Bug: 3420384

backport cl1: Iaf293cf6c6fb35a994f344b0afc30e9f523032f4
backport cl2: I29d2555aeb7d0e51205d9f1fe0da708df0890942

Change-Id: Ia71ba27957fa818dc4ef8ff05b5fdb120b9650e0
nputmethod/InputMethodSubtype.java
161e67ff3ba26408eea09221734ad2e29a1eed11 20-May-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 06a8ceac to master

Change-Id: Id51574c825affddfac14ad7214c5496d6a3d6e69
06a8ceacb0dc2713cb0bb2c93d2a750f2a58db68 20-May-2011 Dianne Hackborn <hackbod@google.com> am c851ea56: am 69cb8757: Add new "-swNNNdp" resource qualifier.

* commit 'c851ea5672f6e042c2e89b2a2ce4a2467e1fcd2a':
Add new "-swNNNdp" resource qualifier.
c851ea5672f6e042c2e89b2a2ce4a2467e1fcd2a 20-May-2011 Dianne Hackborn <hackbod@google.com> am 69cb8757: Add new "-swNNNdp" resource qualifier.

* commit '69cb87576ba163b61bb0e6477a3b7c57a9b11d40':
Add new "-swNNNdp" resource qualifier.
69cb87576ba163b61bb0e6477a3b7c57a9b11d40 20-May-2011 Dianne Hackborn <hackbod@google.com> Add new "-swNNNdp" resource qualifier.

Change-Id: I0101e88ca9d8d44138bdcaf571f24b0352f4f6ce
indowManagerPolicy.java
71fcc865e3ac3a3b05ffa204e6a2eaa8bad48a8c 20-May-2011 Romain Guy <romainguy@google.com> Merge "Code cleanup."
88b4f153e2be863d79f4d7f68af95e0f9375e4ec 20-May-2011 Romain Guy <romainguy@google.com> Code cleanup.

Change-Id: Ia6ea04b83832db2f39e3168ef2596c24273a7ef3
iew.java
iewDebug.java
1714c21c15b83e555cb6cd47019145eecf5e8871 22-Feb-2010 Cibu Johny <cibu@google.com> View horizontalDirection public attribute resolution to an internal var.

- add more comment

Change-Id: I514c6ace3a98d56aa0b5c52221dee3045656071f
iew.java
d36a699410d8b65deede229df8414dde04c3421c 19-May-2011 Svetoslav Ganov <svetoslavganov@google.com> Fixing my build fix

Change-Id: I8393e0172367de730123b2fa9d743b1ecb2eb087
ccessibility/AccessibilityRecord.java
0a2ed6de7bf818a733ecafe709ff95333748dc57 18-May-2011 Romain Guy <romainguy@google.com> Merge "Improve LayoutInflater's compliance."
9c1223a71397b565f38015c07cae57a5015a6500 17-May-2011 Romain Guy <romainguy@google.com> Improve LayoutInflater's compliance.

There are standards, we should do our best to implement them
properly.

Change-Id: I83a7dc0651795d09b19d536c17b6aefc2eca5c81
ayoutInflater.java
dff789754865dff19792f0799cce2f76f7d41227 17-May-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "View horizontalDirection public attribute resolution to an internal var."
63e2c0888d1a4f91a48874052d13c95291fdfea7 17-May-2011 Chet Haase <chet@google.com> Merge "Fix for using HARDWARE layers on unaccelerated views."
6f33e81a0b3a95396318e987e234dc8e1dce1eb9 17-May-2011 Chet Haase <chet@google.com> Fix for using HARDWARE layers on unaccelerated views.

If a view is not accelerated but has its layer type set to
LAYER_TYPE_HARDWARE, then the framework will use the old drawing cache
approach, to cache it in a bitmap. This works fine, but when the layer
is set to NONE, that drawing cache is not destroyed, as it would be were
the layer set to LAYER_TYPE_SOFTWARE. This prevents future invalidations on
the view from working correctly because the bitmap cache has never been
destroyed and recreated.

The fix is to always destroy the drawing cache when the layer type is
changed from SOFTWARE or HARDWARE, to make sure that it gets set appropriately
regardless of the state of the view's acceleration.

Change-Id: I449649e6d370477825015505da76564455a156e6
iew.java
9d31154d0b0ecbc5a36733ac3a8b70dcae18bf9c 17-May-2011 Dianne Hackborn <hackbod@google.com> am b68c768d: am 41744836: am 7916ac65: Add new command line option to change global screen size.

* commit 'b68c768ddb57407bc253230c677056329c9e4bae':
Add new command line option to change global screen size.
b68c768ddb57407bc253230c677056329c9e4bae 17-May-2011 Dianne Hackborn <hackbod@google.com> am 41744836: am 7916ac65: Add new command line option to change global screen size.

* commit '417448369c170a34d76c477aa19c5293e3caa1df':
Add new command line option to change global screen size.
417448369c170a34d76c477aa19c5293e3caa1df 17-May-2011 Dianne Hackborn <hackbod@google.com> am 7916ac65: Add new command line option to change global screen size.

* commit '7916ac65dc492e4e1431879875c77d7121fbf82e':
Add new command line option to change global screen size.
7916ac65dc492e4e1431879875c77d7121fbf82e 17-May-2011 Dianne Hackborn <hackbod@google.com> Add new command line option to change global screen size.

For example:

adb shell am display-size 1024x600

Change-Id: I5df462acd3323bdaaaefa3126faea7dd8595b726
WindowManager.aidl
8666663e6e6dfe615c8e29cae4a42c8f135b7554 22-Feb-2010 Cibu Johny <cibu@google.com> View horizontalDirection public attribute resolution to an internal var.

Change-Id: Id87ab188faef27ff039cf6a400118707ee74a27d
iew.java
b5dde704cd2db7a0eb09243637ccbf4b3465ad3d 17-May-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Adding horizontalDirection public attribute for View."
7632cb9be5519ea9eace14a55fa9998f85c2af26 22-Feb-2010 Cibu Johny <cibu@google.com> Adding horizontalDirection public attribute for View.

Change-Id: Ic8a03447252e4e155c3ee874b1d8c8ac0bc9f7f5
iew.java
60e13114eb806d50b7b362d39051c5c775704bf6 16-May-2011 Dianne Hackborn <hackbod@google.com> am 1d340a3c: am 0eac0927: Merge "DO NOT MERGE. From main -- Start work on simulating landscape/portrait when orientation is locked." into honeycomb-mr2

* commit '1d340a3c24913d8750900355cd92ef5742eea11f':
DO NOT MERGE. From main -- Start work on simulating landscape/portrait when orientation is locked.
1d340a3c24913d8750900355cd92ef5742eea11f 16-May-2011 Dianne Hackborn <hackbod@google.com> am 0eac0927: Merge "DO NOT MERGE. From main -- Start work on simulating landscape/portrait when orientation is locked." into honeycomb-mr2

* commit '0eac092766d7871b34927442ee0b6e27e7e1317b':
DO NOT MERGE. From main -- Start work on simulating landscape/portrait when orientation is locked.
68066c2f38e47b56f0510c56eafd827731a0dc08 22-Apr-2011 Dianne Hackborn <hackbod@google.com> DO NOT MERGE. From main -- Start work on simulating landscape/portrait when orientation is locked.

Not yet working, so turned off.

Also fix a bug where the display size configuration became inconsistent
after a configuration change -- we now figure out everything about the
display size when computing a new configuration.

Change-Id: Id155f133c0bf108508a225ef64ed3ca398a90a58
isplay.java
indowManagerPolicy.java
63446167b9d6d9ed3410320d17e8fe816caf6c42 16-May-2011 Dianne Hackborn <hackbod@google.com> am fddd927f: am 9d0f2c6d: Merge "DO NOT MERGE: From master -- Fix bug in deciding which rotation to use for an orientation." into honeycomb-mr2

* commit 'fddd927fb78bb206287203f4f447a416b525115a':
DO NOT MERGE: From master -- Fix bug in deciding which rotation to use for an orientation.
fddd927fb78bb206287203f4f447a416b525115a 16-May-2011 Dianne Hackborn <hackbod@google.com> am 9d0f2c6d: Merge "DO NOT MERGE: From master -- Fix bug in deciding which rotation to use for an orientation." into honeycomb-mr2

* commit '9d0f2c6d970a1d2c7f9de5c9e89737d7772f95d3':
DO NOT MERGE: From master -- Fix bug in deciding which rotation to use for an orientation.
f97ed771979162c4a2a75959c57fb793438a3a8b 16-May-2011 Dianne Hackborn <hackbod@google.com> am d90a2c4d: am 1e662c32: Merge "DO NOT MERGE. Integrate from master: Rework display size access." into honeycomb-mr2

* commit 'd90a2c4d4463085155444efb07eba2d6579b444a':
DO NOT MERGE. Integrate from master: Rework display size access.
29735689cea7bf52998c1911542dcfdd1c1d9628 22-Apr-2011 Dianne Hackborn <hackbod@google.com> DO NOT MERGE: From master -- Fix bug in deciding which rotation to use for an orientation.

Change-Id: Ie271123271a662f3f753f381ce4c43ad7904dc4a
indowManagerPolicy.java
d90a2c4d4463085155444efb07eba2d6579b444a 16-May-2011 Dianne Hackborn <hackbod@google.com> am 1e662c32: Merge "DO NOT MERGE. Integrate from master: Rework display size access." into honeycomb-mr2

* commit '1e662c3294b740ff694ad98e4d9a366e1e4b5e62':
DO NOT MERGE. Integrate from master: Rework display size access.
ac8dea12c17aa047e03a358110aeb60401d36aa2 21-Apr-2011 Dianne Hackborn <hackbod@google.com> DO NOT MERGE. Integrate from master: Rework display size access.

Applications now get the display size from the window manager. No
behavior should be changed yet, this is just prep for some real
changes.

Change-Id: I47bf8b55ecd4476c25ed6482494a7bcc5fae45d2
isplay.java
WindowManager.aidl
nputDevice.java
eyCharacterMap.java
iew.java
iewRoot.java
02739a8eecce26783350041da332f8daf6691e25 16-May-2011 Romain Guy <romainguy@google.com> Fix javadoc issues

Change-Id: Ife66a8664955ac1a79b6ffd0080000c820f24632
iewGroup.java
24df0757f86851569b65dadd0dfa139521748b9c 14-May-2011 Dianne Hackborn <hackbod@google.com> am ed9321ab: am f9dd34f4: DO NOT MERGE: Integrate from main - Deprecate a bunch of APIs.

* commit 'ed9321ab5d282e40e7c5fa9caf0eb9d05646f2d0':
DO NOT MERGE: Integrate from main - Deprecate a bunch of APIs.
ed9321ab5d282e40e7c5fa9caf0eb9d05646f2d0 14-May-2011 Dianne Hackborn <hackbod@google.com> am f9dd34f4: DO NOT MERGE: Integrate from main - Deprecate a bunch of APIs.

* commit 'f9dd34f4d3203fd50363b3b0247c5d0db6fe2c8f':
DO NOT MERGE: Integrate from main - Deprecate a bunch of APIs.
f9dd34f4d3203fd50363b3b0247c5d0db6fe2c8f 20-Apr-2011 Dianne Hackborn <hackbod@google.com> DO NOT MERGE: Integrate from main - Deprecate a bunch of APIs.

And clean up some documentation.

Change-Id: I8f06e2fc3bb6c552581b64657e82ba690d524232
nputmethod/InputConnection.java
aa126171ae5c4c6449345471500f9bb124558643 14-May-2011 Eric Fischer <enf@google.com> Fix the build by removing @Override within javadoc comments.

Change-Id: I984cc6224185ab84e904bfc89eae80d567fcb59b
iew.java
8bd6d36c68ff8f32554b6d71323f44e71298e520 13-May-2011 Romain Guy <romainguy@google.com> Merge "Remove useless code."
4c8ed71cc70b9fdd2d90f3535aebb918d77747c8 13-May-2011 Romain Guy <romainguy@google.com> Remove useless code.

Change-Id: Ic2418438235e1fbcb8ccfece9c74c54fc46229df
iew.java
73162196e712c5f71238642bf8ca0b5984ee51a4 13-May-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Factored out the Accessibility vertical initialization."
30401328c1026389171d454c934c15875c3f7ff0 13-May-2011 Svetoslav Ganov <svetoslavganov@google.com> Factored out the Accessibility vertical initialization.

1. Accessibility events were filled with data in
dispatchPopulateAccessibilityEvent and
onPopulateAccessibilityEvent. These events have
two axis of population 1) up the class
hierarchy to populate information for the event
source; 2) down the view hierarchy to populated
all the text contained in the source including
its descendants. These two axis of population
were done in on population pass now the populating
the source properties happens in initializeAccessiblityEvent
and the text in onPopulateAccessibilityEvent which
is called from dispatchPopulateAccessiblityEvent.

2. Removed the string description from events fired from
CompoundButton since the event has isChecked()
property and it is responsibility of the clients
to decide what utterrance to use and if to use such
for announcing the checked state.

Change-Id: I5d7f75cf8a87a7a4b3bb7b311e8e642ec9a0faa5
iew.java
65f47d88107b2e34e4bab1f5208bff3f73ce4e8a 13-May-2011 Jeff Brown <jeffbrown@google.com> Merge "Add initial API for stylus and mouse buttons."
fe9f8ab03a63b1037f07dd85799fbea80ec6adaa 07-May-2011 Jeff Brown <jeffbrown@google.com> Add initial API for stylus and mouse buttons.

Added the concept of pointer properties in a MotionEvent.
This is currently used to track the pointer tool type to enable
applications to distinguish finger touches from a stylus.

Button states are also reported to application as part of touch events.

There are no new actions for detecting changes in button states.
The application should instead query the button state from the
MotionEvent and take appropriate action as needed.

A good time to check the button state is on ACTION_DOWN.

As a side-effect, applications that do not support multiple buttons
will treat primary, secondary and tertiary buttons identically
for all touch events.

The back button on the mouse is mapped to KEYCODE_BACK
and the forward button is mapped to KEYCODE_FORWARD.

Added basic plumbing for the secondary mouse button to invoke
the context menu, particularly in lists.

Added clamp and split methods on MotionEvent to take care of
common filtering operations so we don't have them scattered
in multiple places across the framework.

Bug: 4260011
Change-Id: Ie992b4d4e00c8f2e76b961da0a902145b27f6d83
nputDevice.java
eyEvent.java
otionEvent.java
iew.java
iewGroup.java
5c22a8c80aefe8c0739e93321f8cead5b60571e4 13-May-2011 Romain Guy <romainguy@google.com> Fix waaayyy too many documentation links.

Change-Id: Ia8d56149d8b92d85239ad62adacbf65d1e9e127d
iew.java
aa9d84c37e05f696ec158dac98ce38cf41e18314 10-May-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 05be6d6f to master

Change-Id: Ic6a6c5bb300f6f1d43f9ed550b284282b4f16212
05be6d6fe09ddfb706d1bef3b20c3d37f45e3c8a 10-May-2011 Dianne Hackborn <hackbod@google.com> am 4907d1d5: am 0c6cbf41: Merge "Better compat mode part one: start scaling windows." into honeycomb-mr2

* commit '4907d1d5e2c7d244b07579b8c52153df69754e85':
Better compat mode part one: start scaling windows.
4907d1d5e2c7d244b07579b8c52153df69754e85 10-May-2011 Dianne Hackborn <hackbod@google.com> am 0c6cbf41: Merge "Better compat mode part one: start scaling windows." into honeycomb-mr2

* commit '0c6cbf410a642f6e9cea7cca0a6e53a4a3cdd324':
Better compat mode part one: start scaling windows.
e2515eebf42c763c0a2d9f873a153711778cfc17 28-Apr-2011 Dianne Hackborn <hackbod@google.com> Better compat mode part one: start scaling windows.

First step of improving app screen size compatibility mode. When
running in compat mode, an application's windows are scaled up on
the screen rather than being small with 1:1 pixels.

Currently we scale the application to fill the entire screen, so
don't use an even pixel scaling. Though this may have some
negative impact on the appearance (it looks okay to me), it has a
big benefit of allowing us to now treat these apps as normal
full-screens apps and do the normal transition animations as you
move in and out and around in them.

This introduces fun stuff in the input system to take care of
modifying pointer coordinates to account for the app window
surface scaling. The input dispatcher is told about the scale
that is being applied to each window and, when there is one,
adjusts pointer events appropriately as they are being sent
to the transport.

Also modified is CompatibilityInfo, which has been greatly
simplified to not be so insane and incomprehendible. It is
now simple -- when constructed it determines if the given app
is compatible with the current screen size and density, and
that is that.

There are new APIs on ActivityManagerService to put applications
that we would traditionally consider compatible with larger screens
in compatibility mode. This is the start of a facility to have
a UI affordance for a user to switch apps in and out of
compatibility.

To test switching of modes, there is a new variation of the "am"
command to do this: am screen-compat [on|off] [package]

This mode switching has the fundamentals of restarting activities
when it is changed, though the state still needs to be persisted
and the overall mode switch cleaned up.

For the few small apps I have tested, things mostly seem to be
working well. I know of one problem with the text selection
handles being drawn at the wrong position because at some point
the window offset is being scaled incorrectly. There are
probably other similar issues around the interaction between
two windows because the different window coordinate spaces are
done in a hacky way instead of being formally integrated into
the window manager layout process.

Change-Id: Ie038e3746b448135117bd860859d74e360938557
isplay.java
indowManagerPolicy.java
9aabb95781bee6a44684a6f6feb155e115d24983 06-May-2011 satok <satok@google.com> Add one shot flag to the subtype

Bug: 4257258

Change-Id: I21da9e11c882eea056beb84a2dfb0f28da8a98b1
nputmethod/InputMethodSubtype.java
b51cc1dd63808da505cd8beb7300f57dc98ff1d3 05-May-2011 Patrick Dubroy <dubroy@google.com> Merge "Only delay pressed feedback for Views inside a scrolling parent"
e0a799a2ac1ca78e30fbac9e4e12a063425c08d3 05-May-2011 Patrick Dubroy <dubroy@google.com> Only delay pressed feedback for Views inside a scrolling parent

Add a method on ViewGroup to determine whether it supports scrolling.
This allows us to show the pressed feedback immediately in many cases,
improving responsiveness of buttons, etc.

This patch also lengthens the timeout in order to reduce flashes
when the user is scrolling.

Change-Id: Ieb91ae7a1f8e8f7e87448f2a730381a53947996f
iew.java
iewConfiguration.java
iewGroup.java
ed30fd8e9a2d65ee5c8520de55b0089c219f390c 23-Apr-2011 Chet Haase <chet@google.com> Add ability for hierarchyviewer to output displaylist info

Clicking on a node in hierarchyviewer1 and hierarchyviewer2 and then
clicking the new "Dump DisplayList" button will cause the display
list for the selected node (including its children) to be output into
logcat.

Change-Id: Iad05f5f6cca0f8b465dccd962b501dc18fe6e053
LES20Canvas.java
ardwareCanvas.java
iewAncestor.java
iewDebug.java
a17de9b493123f0d6e6d0b842150bf29322b7a88 05-May-2011 Chet Haase <chet@google.com> Revert "Add ability for hierarchyviewer to output displaylist info"

This reverts commit b2a4b52e8d5e499d33e2765e8c47851bf0266299.
LES20Canvas.java
ardwareCanvas.java
iewDebug.java
42a3a39e231c02a3c2b7624cb7c64fe10d6ff4b0 05-May-2011 Chet Haase <chet@google.com> Merge "Add ability for hierarchyviewer to output displaylist info"
b2a4b52e8d5e499d33e2765e8c47851bf0266299 23-Apr-2011 Chet Haase <chet@google.com> Add ability for hierarchyviewer to output displaylist info

Clicking on a node in hierarchyviewer1 and hierarchyviewer2 and then
clicking the new "Dump DisplayList" button will cause the display
list for the selected node (including its children) to be output into
logcat.

Change-Id: Id32f62569ad1ab4d533bc62987f3a7390c1bb4e6
LES20Canvas.java
ardwareCanvas.java
iewDebug.java
iewRoot.java
c6cc0f8c19d9eccf408a443fa2bf668af261dcd0 12-Apr-2011 Joe Onorato <joeo@google.com> Rename ViewRoot to ViewAncestor.

ViewRoot is about to be a new public class for poking at ViewAncestor.

Change-Id: Ie95d707c6d8bbb48f78d093d7b2667851812a7d5
ardwareRenderer.java
urfaceView.java
iew.java
iewAncestor.java
iewDebug.java
iewGroup.java
iewRoot.java
indowManagerImpl.java
nputmethod/BaseInputConnection.java
nputmethod/InputMethodManager.java
0c19aaaebb5baf78857e2e18ebe7fb37b7e1cf8e 04-May-2011 Daniel Sandler <dsandler@android.com> Merge "On-screen navigation bar (separate from the status bar)."
df0a7fbdcff3c683641b7980da50a7d0eebe0876 03-May-2011 Romain Guy <romainguy@google.com> Merge "Allows to render with an OpenGL context inside a TextureView."
8f0095cd33558e9cc8a440047908e53b68906f5f 03-May-2011 Romain Guy <romainguy@google.com> Allows to render with an OpenGL context inside a TextureView.

Change-Id: I59453f7fc3997f0502a1c5d325d37fed376fabc7
LES20Canvas.java
LES20TextureLayer.java
ardwareRenderer.java
extureView.java
e91a9c7ab075c43e983fdeb9af80447caa501337 02-May-2011 Romain Guy <romainguy@google.com> Remove unnecessary code.

Change-Id: I0352bf861192df51fe78873d439e8d7ff887118e
ardwareRenderer.java
a3dcd0a3f1b48fc0d675db7e32c27415a14f6d08 30-Apr-2011 Conley Owens <cco3@android.com> Merged "Adjust mBiggerTouchSlopSquare to the suitable value"

Conflicts:
core/java/android/view/ViewConfiguration.java

Change-Id: I74de006dbb19fd878591bc90955a1c6e74aa084e
f0f955e2c3440d835bfffffdec31c980d9a1ffd9 30-Apr-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Touch exploration - nits"
887e1a17eb9b12448f5929791b564565b2665aab 30-Apr-2011 Svetoslav Ganov <svetoslavganov@google.com> Touch exploration - nits

Change-Id: Ie49558e0a81218dbad70c02f81dd7a59b3213d5c
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityRecord.java
eb8171bcff9bd980dbdfc99b2d843a5bcc0ae3e5 29-Apr-2011 Conley Owens <cco3@android.com> Merge "Adjust mBiggerTouchSlopSquare to the suitable value"
e208fc2f5b5bf44e418ea24336317174c9ff7ec5 29-Apr-2011 Romain Guy <romainguy@google.com> Fix the build.

Change-Id: Ia6768ea01b3885504adb65bb9795daf68cee01e6
extureView.java
ad44445c772efe66fdf063aa8f78d7ae3233570e 29-Apr-2011 Romain Guy <romainguy@google.com> Merge "New widget: TextureView Bug #4343984"
aa6c24c21c727a196451332448d4e3b11a80be69 29-Apr-2011 Romain Guy <romainguy@google.com> New widget: TextureView
Bug #4343984

TextureView can be used to render media content (video, OpenGL,
RenderScript) inside a View.

The key difference with SurfaceView is that TextureView does
not create a new Surface. This gives the ability to seamlessly
transform, animate, fade, etc. a TextureView, which was hard
if not impossible to do with a SurfaceView.
A TextureView also interacts perfectly with ScrollView,
ListView, etc. It allows application to embed media content
in a much more flexible way than before.

For instance, to render the camera preview at 50% opacity,
all you need to do is the following:

mTextureView.setAlpha(0.5f);
Camera c = Camera.open();
c.setPreviewTexture(mTextureView.getSurfaceTexture());
c.startPreview();

TextureView uses a SurfaceTexture to get the job done. More
APIs are required to make it easy to create OpenGL contexts
for a TextureView. It can currently be done with a bit of
JNI code.

Change-Id: Iaa7953097ab5beb8437bcbbfa03b2df5b7f80cd7
LES20Canvas.java
LES20Layer.java
LES20RenderLayer.java
LES20TextureLayer.java
ardwareLayer.java
ardwareRenderer.java
extureView.java
a60594cb1c1399f557a82403f7fc7abb7af55250 28-Apr-2011 Conley Owens <cco3@android.com> Fixed bad merge in ViewRoot.java.

Change-Id: If76a320da3ecf0d0e9f366eb7157b195274a9e5f
iewRoot.java
4135f45c87d9aedebd0f7999e76d1c53a5042ec2 28-Apr-2011 Dima Zavin <dima@android.com> view: fix a bad merge

Change-Id: Ia309b6aca3d303d5ebc6f3def55b2d807ec8ec4b
Signed-off-by: Dima Zavin <dima@android.com>
iewRoot.java
d21e7b5d542cc9e93526182272c2bdc995c816fb 28-Apr-2011 Conley Owens <cco3@android.com> am c4791bd6: Merge commit \'5e3562a5\' into m

* commit 'c4791bd65cdf2e487c87da0d863140337e5141cb':
onDetachedFromWindow is called before onAttachedToWindow
c4791bd65cdf2e487c87da0d863140337e5141cb 28-Apr-2011 Conley Owens <cco3@android.com> Merge commit '5e3562a5' into m

Conflicts:
core/java/android/view/ViewRoot.java

Change-Id: Idd1eb8309e169eae2de3838f7969606df8097b87
2ef1ce494c923a9163de08f5cda6259e23134761 27-Apr-2011 Romain Guy <romainguy@google.com> Merge "Correctly compute tex coords for rect layers. Bug #4192695"
9fc27819d75e24ad63d7b383d80f5cb66a577a0d 27-Apr-2011 Romain Guy <romainguy@google.com> Correctly compute tex coords for rect layers.
Bug #4192695

This change also fixes Javadoc links in the framework.

Change-Id: Ia548bcb18baba5d6fe6a4a04a2278e3a3bd465b2
iewGroup.java
8956dbbc5f292d8b79072ae73b25f2114c8c7479 22-Apr-2011 Daniel Sandler <dsandler@android.com> On-screen navigation bar (separate from the status bar).

In Honeycomb we introduced navigation controls in the status
bar, for xlarge devices without physical buttons. What about
phones? The status bar is pretty cramped already, and
besides, it's at the top of the display most of the time,
not at the bottom where your thumb is likely to be.

Enter the navigation bar. It's a new window type that
appears atop almost everything (including the keyguard); the
window manager subtracts its rectangle from the default
visible rectangle of other windows (including the status bar
and notification shade).

However, it behaves (on phones) like the status bar in that
applications that request fullscreen windows can get access
to those pixels. Well, almost; they need cooperation from
the navigation bar implementation to make the navbar
disappear, just like the status bar.

The current SystemUI implementation of the navigation bar on
phones is still rough, but it has the basics:

+ back, home, and menu keys (NB: we're showing menu all the
time right now because checking the api level of the
package owning the top window is currently a poor
indicator of whether the app requires the menu key)
+ it tries to stick to the same physical end of the device,
regardless of device orientation (on a phone, this is
the strip of land closest to the microphone)

Change-Id: Ic613a3351220af0bbfbdef63e1d99cbefd5ed1c2
indowManager.java
ece92d34fcf273f68f33d2fd8e5764764fc0c66d 27-Apr-2011 satok <satok@google.com> Fix a bug in InputMethodSubtype#hashCode

Bug: 4345760

Not to use resource ids for calculating hashCode

Change-Id: I29d2555aeb7d0e51205d9f1fe0da708df0890942
nputmethod/InputMethodSubtype.java
5a7e94ea89196074962a1864aa785bc4d855c771 26-Apr-2011 Adam Powell <adamp@google.com> Only set the accelerated drawable state for views when the hardware
renderer is available.

Change-Id: I5bcf2068771d47604e12a44e1ab870fa4c69fb4c
iew.java
736c2756bf3c14ae9fef7255c119057f7a2be1ed 23-Apr-2011 Svetoslav Ganov <svetoslavganov@google.com> Touch exploration feature, event bubling, refactor

1. Added an Input Filter that interprets the touch screen motion
events to perfrom accessibility exploration. One finger explores.
Tapping within a given time and distance slop on the last exlopred
location does click and long press, respectively. Two fingers close
and in the same diretion drag. Multiple finglers or two fingers in
different directions or two fingers too far away are delegated to
the view hierarchy. Non moving fingers "accidentally grabbed the
device for the scrren" are ignored.

2. Added accessibility events for hover enter, hover exit, touch
exoloration gesture start, and end. Accessibility hover events
are fired by the hover pipeline. An accessibility event is
dispatched up the view tree and the topmost view fires it.
Thus predecessors can augment the fired event. An accessibility
event has several records and a predecessor can optionally
modify, delete, and add such to the event.

3. Added onPopulateAccessibilityEvent and refactored the existing
accessibility code to use it.

4. Added API for querying the currently enabled accessibility services
by feedback type.

Change-Id: Iea2258c07ffae9491071825d966dc453b07e5134
nputEventConsistencyVerifier.java
iew.java
iewConfiguration.java
iewGroup.java
iewParent.java
iewRoot.java
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityManager.java
ccessibility/AccessibilityRecord.java
ccessibility/IAccessibilityManager.aidl
3fb3d7c4e756bd32d5abde0abca9ab52d559bc84 23-Apr-2011 Adam Powell <adamp@google.com> Revert "Touch exploration feature, event bubling, refactor"

This reverts commit ac84d3ba81f08036308b17e1ab919e43987a3df5.

There seems to be a problem with this API change. Reverting for now to
fix the build.

Change-Id: Ifa7426b080651b59afbcec2d3ede09a3ec49644c
nputEventConsistencyVerifier.java
iew.java
iewConfiguration.java
iewGroup.java
iewParent.java
iewRoot.java
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityManager.java
ccessibility/AccessibilityRecord.java
ccessibility/IAccessibilityManager.aidl
f9fa622cc04028fd7c5f5036ea2e0ccfb80d55f3 23-Apr-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Touch exploration feature, event bubling, refactor"
dacea8ce503369e7b82ff1c0e1a5a8a48863a25a 22-Apr-2011 Dianne Hackborn <hackbod@google.com> Start work on simulating landscape/portrait when orientation is locked.

Not yet working, so turned off.

Also fix a bug where the display size configuration became inconsistent
after a configuration change -- we now figure out everything about the
display size when computing a new configuration.
isplay.java
indowManagerPolicy.java
ac84d3ba81f08036308b17e1ab919e43987a3df5 05-Apr-2011 Svetoslav Ganov <svetoslavganov@google.com> Touch exploration feature, event bubling, refactor

1. Added an Input Filter that interprets the touch screen motion
events to perfrom accessibility exploration. One finger explores.
Tapping within a given time and distance slop on the last exlopred
location does click and long press, respectively. Two fingers close
and in the same diretion drag. Multiple finglers or two fingers in
different directions or two fingers too far away are delegated to
the view hierarchy. Non moving fingers "accidentally grabbed the
device for the scrren" are ignored.

2. Added accessibility events for hover enter, hover exit, touch
exoloration gesture start, and end. Accessibility hover events
are fired by the hover pipeline. An accessibility event is
dispatched up the view tree and the topmost view fires it.
Thus predecessors can augment the fired event. An accessibility
event has several records and a predecessor can optionally
modify, delete, and add such to the event.

3. Added onPopulateAccessibilityEvent and refactored the existing
accessibility code to use it.

4. Added API for querying the currently enabled accessibility services
by feedback type.

Change-Id: Iec03c6c3fe298de3f14cb6efdbb9b198cd531a0c
nputEventConsistencyVerifier.java
iew.java
iewConfiguration.java
iewGroup.java
iewParent.java
iewRoot.java
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityManager.java
ccessibility/AccessibilityRecord.java
ccessibility/IAccessibilityManager.aidl
9d13264f6b5818812e61d66baaada599b8ad1faf 22-Apr-2011 Dianne Hackborn <hackbod@google.com> Fix bug in deciding which rotation to use for an orientation.

Change-Id: Icc928c2188a5865035cafcdab2efd5bae3132b1f
indowManagerPolicy.java
44bc17c6b517aef35a390c81b5aa79c4f284f744 21-Apr-2011 Dianne Hackborn <hackbod@google.com> Rework display size access.

Applications now get the display size from the window manager. No
behavior should be changed yet, this is just prep for some real
changes.

Change-Id: I2958a6660895c1cba2b670509600014e55ee9273
isplay.java
WindowManager.aidl
nputDevice.java
eyCharacterMap.java
iew.java
iewRoot.java
9567a66a5e6f49dd8495fb5f6e2efb9f32e84b35 20-Apr-2011 Dianne Hackborn <hackbod@google.com> Deprecate a bunch of APIs.

And clean up some documentation.

Change-Id: I7882183b3daf883b7ac6098d19f88dc7cfbcdf61
nputmethod/InputConnection.java
bbdc50b102faf52768ac3028bc49e027ff140656 20-Apr-2011 Jeff Brown <jeffbrown@google.com> Track unhandled input events in consistency verifiers.

This fixes spurious verification errors that would be generated
when a view declined an initial event such as ACTION_DOWN. Since
the view would not receive the rest of the event stream, it would
not see the corresponding ACTION_UP and the next ACTION_DOWN would
trigger a spurious verification error.

Change-Id: I2386acf378cd1765d5446faed5ad9c6525f8b400
estureDetector.java
nputEventConsistencyVerifier.java
caleGestureDetector.java
iew.java
iewGroup.java
2352b978a3c94cd88f41d0d908f961333fdac1e9 13-Apr-2011 Jeff Brown <jeffbrown@google.com> Initial checkin of spot presentation for touchpad gestures.

Added a new PointerIcon API (hidden for now) for loading
pointer icons.

Fixed a starvation problem in the native Looper's sendMessage
implementation which caused new messages to be posted ahead
of old messages sent with sendMessageDelayed.

Redesigned the touch pad gestures to be defined in terms of
more fluid finger / spot movements. The objective is to reinforce
the natural mapping between fingers and spots which means there
must not be any discontinuities in spot motion relative to
the fingers.

Removed the SpotController stub and folded its responsibilities
into PointerController.

Change-Id: I5126b1e69d95252fda7f2a684c9287e239a57163
ointerIcon.aidl
ointerIcon.java
d4fce2b7f1a861590ce84afcf2f569189251bc59 10-Apr-2011 satok <satok@google.com> Add comments for APIs of InputMethodManager added to Honeycomb

Change-Id: I89501889c612aaeca503d0c11f14e23c67a0ca39
nputmethod/InputMethodManager.java
68f1b78b7b9139a0e34285ff641a664e664a14b8 11-Apr-2011 satok <satok@google.com> Add an API to get the last used input method subtype

Bug: 4075039

- Voice input requires to know the last used input method subtype.

Change-Id: I603a4fb88a2af5195e52188adfa6585ad80304fa
nputmethod/InputMethodManager.java
505bd0d60d26811ac1e61d2c39a2d5a995d2254d 13-Apr-2011 Martin Wallgren <martin.wallgren@sonyericsson.com> onDetachedFromWindow is called before onAttachedToWindow

Multiple threads are adding messages about the current
state of the views to the main looper. This can cause
onDetachedFromWindow to be posted on the looper before
onAttachedToWindow. This change will make sure to only
dispatch onDetachedFromWindow if we have previously
dispatched onAttachToWindow.

Change-Id: Ibc7cbcafb098bc000d2ef5480d2110d3fff4d55a
iewRoot.java
43a17654cf4bfe7f1ec22bd8b7b32daccdf27c09 07-Apr-2011 Joe Onorato <joeo@google.com> Remove the deprecated things from Config.java. These haven't been working since before 1.0.

Change-Id: Ic2e8fa68797ea9d486f4117f3d82c98233cdab1e
rientationEventListener.java
urfaceView.java
iew.java
iewDebug.java
iewRoot.java
indowManagerImpl.java
indowOrientationListener.java
ccessibility/AccessibilityManager.java
4e91a180be46c0c7c3bf398d4df4cbe2404216b5 07-Apr-2011 Jeff Brown <jeffbrown@google.com> Coalesce input events that arrive faster than 333Hz.

Some drivers report individual finger updates one at a time
instead of all at once. When 10 fingers are down, this can
cause the framework to have to handle 10 times as many events
each with 10 times as much data. Applications like
PointerLocation would get significantly bogged down by all
of the redundant samples.

This change coalesces samples that are closely spaced in time,
before they are dispatched, as part of the motion event batching
protocol.

Increased the size of the InputChannel shared memory buffer so
that applications can catch up faster if they accumulate a
backlog of samples.

Added logging code to help measure input dispatch and drawing
latency issues in the view hierarchy. See ViewDebug.DEBUG_LATENCY.

Change-Id: Ia5898f781f19901d2225c529a910c32bdf4f504f
ardwareRenderer.java
nputEvent.java
eyEvent.java
iewDebug.java
iewRoot.java
5487500cf3d9f6d7703ce0704cb91837aa95d716 07-Apr-2011 Jeff Brown <jeffbrown@google.com> Minor Alt-TAB / Recent Apps Dialog improvements.

Alt-TAB should have different semantics from the APP_SWITCH key
or long-press on HOME. Accordingly, remove the fallback action
for Alt-TAB and initiate the task switching behavior directly
in the policy.

Modified RecentApplicationsDialog to be more precise about the
initial modifiers that it considers to be holding the dialog.

The dialog is now dismissed by a second press on the APP_SWITCH
key or by a second long press on HOME.

Change-Id: Idf4d803f51103819057cb655ff3b770b7729e4be
eyEvent.java
21bc5c917d4ee2a9b2b8173091e6bba85eaff899 01-Mar-2011 Jeff Brown <jeffbrown@google.com> Add a little input event consistency verifier.

The idea is to assist with debugging by identifying cases in which
the input event stream is corrupted.

Change-Id: I0a00e52bbe2716be1b3dfc7c02a754492d8e7f1f
estureDetector.java
nputEvent.java
nputEventConsistencyVerifier.java
eyEvent.java
otionEvent.java
caleGestureDetector.java
iew.java
iewGroup.java
iewRoot.java
0029c66203ab9ded4342976bf7a17bb63af8c44a 30-Mar-2011 Jeff Brown <jeffbrown@google.com> Add input filter mechanism for accessibility.

This patch adds a mechanism for capturing, filtering, transforming
and injecting input events at a very low level before the input
dispatcher attempts to deliver them to applications. At this time,
the mechanism is only intended to be used by the accessibility
system to implement built-in system-level accessibility affordances.

The accessibility input filter is currently just a stub.
It logs the input events receives and reinjects them unchanged,
except that it transforms KEYCODE_Q into KEYCODE_Z.

Currently, the accessibility input filter is installed whenever
accessibility is enabled. We'll probably want to change that
so it only enables the input filter when a screen reader is
installed and we want touch exploration.

Change-Id: I35764fdf75522b69d09ebd78c9766eb7593c1afe
nputEvent.java
indowManagerPolicy.java
3d4bf17f49b82355b3b82d8bdaec4d65c4293bc9 29-Mar-2011 Christopher Tate <ctate@google.com> Add view/drawable states for drag-accepting / drag-hovered

Added new drag_can_accept and drag_hovered XML attributes and the View
logic to support them. Drawable states are now refreshed automatically
when a drag starts/ends and when a drag crosses the boundary of a
participating view.

Change-Id: I25f8ee02c83b3fa4f27201997d7eabf4be653fd8
iew.java
iewGroup.java
e3797a15fbf769a0abcbe121cfd33b4b658aea1e 21-Mar-2011 satok <satok@google.com> Removed APIs for setCorrectionSpan from InputConnection

("setCorrectionSpan" was added in Id3abc9ea4d11753cd )

Also..
- Added a class java doc for CorrectionSpan
- Removed FLAG_DEFAULT
- Changed the return type of getSuggestions from Array<CharSequence> to String[]

Change-Id: If5eb091e307a7a40c5b4a70ec1fe6059ecd9fb2d
nputmethod/BaseInputConnection.java
nputmethod/InputConnection.java
nputmethod/InputConnectionWrapper.java
c50232d517d7b99ae3c3e073f04eb6799c876e8c 25-Mar-2011 satok <satok@google.com> Add hashCode to InputMethodInfo

The uniqueness of InputMethodInfo was guaranteed by mId (like InputMethodInfo#equals), but the hashCode was not implemented in the same way.
This change fixes a problem happening when the user gets the hashCode of InputMethodInfo obtained through IPC.

Change-Id: Ib876c5cb0d778481100597ec31202f94fb7b8f37
nputmethod/InputMethodInfo.java
dff626c56ac42bdcc7af5a300eefccd3fee3d166 25-Mar-2011 Jeff Brown <jeffbrown@google.com> Merge "Added a hovered state for drawables."
c33d8d49e44358d72f19e7f7730c03d3902fa1f2 15-Mar-2011 PY Laligand <pylaligand@google.com> Added a hovered state for drawables.

Change-Id: I2b12c8593e04e37c8eb748946ca6d4d7a61de36a
iew.java
ad575f4dda3391baf9fcab927e65afbee32e7b95 25-Mar-2011 Romain Guy <romainguy@google.com> Merge "When deleting a path, remove it from the path cache. Bug #4170585"
1af23a32d879db330eb5a08b21090ec60b604a32 25-Mar-2011 Romain Guy <romainguy@google.com> When deleting a path, remove it from the path cache.
Bug #4170585

Change-Id: I6be4d251ceb908c89afe49c2ff85c05f36c73b70
iewRoot.java
9c78930046a6e393764b58e6d7d4648963306d3f 25-Mar-2011 Michael Jurka <mikejurka@google.com> Merge "Fixing invalidate problems in software rendered mode"
d0872bd38a449012e3165ddf9cfca31b6044c05b 24-Mar-2011 Michael Jurka <mikejurka@google.com> Fixing invalidate problems in software rendered mode
iew.java
b7c25ce3aef3c6e930fc3f31436f52aed8ebed14 24-Mar-2011 Jeff Brown <jeffbrown@google.com> Merge "Add MotionEvent.HOVER_ENTER and HOVER_EXIT."
a032cc008618b83ecbbede537517d1e7998e3264 08-Mar-2011 Jeff Brown <jeffbrown@google.com> Add MotionEvent.HOVER_ENTER and HOVER_EXIT.

The input dispatcher sends a HOVER_ENTER to a window before dispatching
it any HOVER_MOVE events. For compatibility reasons, the window will
*also* receive the HOVER_MOVE. When the pointer moves into a different
window or the pointer goes down or when events are canceled for some reason,
the input dispatcher sends a HOVER_EXIT to the previously hovered window.

The view hierarchy behavior is similar. All views under the pointer
receive onHoverEvent with HOVER_ENTER followed by any number of HOVER_MOVE
events. When the pointer leaves a view, the view receives HOVER_EXIT.
Similarly, if a parent view decides to capture hover by returning true
from onHoverEvent, the hovered descendants will receive HOVER_EXIT.

The default behavior of onHoverEvent is to update the view's hovered
state by calling setHovered(true/false). Views can query their current
hovered state using isHovered().

For testing purposes, the hovered state is mapped to the pressed
drawable state. This will change in a subsequent commit with the
introduction of a new hovered drawable state.

Change-Id: Ib76a7a90236c8f2c7336e55773acade6346cacbe
otionEvent.java
iew.java
iewGroup.java
c5a43a249baad41acede2ab132d797c342c321e7 24-Mar-2011 Romain Guy <romainguy@google.com> Avoid NPE in postInvalidate().
Bug #4048131

Change-Id: I020400fc97015240924461674ca7bf8077059152
iew.java
13f35f3ce6a7d26c20d1c63485bfb5e2ffff31b9 24-Mar-2011 Romain Guy <romainguy@google.com> Correctly check bottom padding in setPadding().

Change-Id: Ie8099d37ad865acc559c4a4d34eb84960a1a19f3
iewGroup.java
aaceeb0c5be11121a81e44b9633c06fc5c0fcd4d 24-Mar-2011 Romain Guy <romainguy@google.com> Use the correct API to query system properties.

Change-Id: Ie120dee0e24959d4db3fdb0100b6d8fe7fe46cdb
ardwareRenderer.java
56215274f25d0040af00bf69b0df990894c0b4b0 24-Mar-2011 Romain Guy <romainguy@google.com> Apply color filters to bitmaps.

Change-Id: I36354a6a2d330b2e61ed2af12b6701b151880288
LES20Canvas.java
566c33105a76c6a02333db8b775721990bc6cca4 22-Mar-2011 Romain Guy <romainguy@google.com> Remove unnecessary test.

Change-Id: I7cb797f4be70ecd40a65c51e92a8e8722e49dec2
iewRoot.java
43e7aeb37e1d4d86eb89a0a5f620d148289d1986 21-Mar-2011 Romain Guy <romainguy@google.com> Merge "Add support for drawPoint() and drawPoints()."
ed6fcb034b44d9a6ac2fc72fee6030417811f234 21-Mar-2011 Romain Guy <romainguy@google.com> Add support for drawPoint() and drawPoints().

Change-Id: I01bef50c08ec3160f8d40dc060b2cf6c2e4d7639
LES20Canvas.java
a3d17a753d073b1f7425a495a17dec438c6894cd 19-Mar-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Text in accessibility events not consistent"
c0a8cd10a5829bf4e94ee073ba6f553128e9d8e9 19-Mar-2011 Svetoslav Ganov <svetoslavganov@google.com> Text in accessibility events not consistent

bug:2513822

Text added to accessibility events is truncated to max
length. However, the fromIndex and toIndex properties
are relative to the text before being truncated, thus
potentially our of bound. Removed the max length
limitation because test very rarely is longer that
500 characters and in the cases in which text is longer
than 500 character it will not be a real problem to
pass a bit more data through an IPC (very rarely).

Change-Id: Ie70ac630dfeb56d4f59079abb2f46d07582796b6
ccessibility/AccessibilityEvent.java
a168d7372132d6c87835878794b6ed43d0d282fd 19-Mar-2011 Romain Guy <romainguy@google.com> Correctly apply filters to Alpha8 bitmaps.

This change also removes unnecessary operations from display lists.

Change-Id: I627f85861982731f0ee7705b48b36d9c56f22f39
LES20Canvas.java
7270f62c1fcdf1e1133ba10f9765109c49e725ed 17-Mar-2011 Adam Powell <adamp@google.com> am 9cd93f09: am ea775ca3: am f8d1533b: Merge "Fix bug 4111271 and bug 4077526 - WebView touch event handling when WebCore is too slow" into honeycomb-mr1

* commit '9cd93f09d451afacb8fffeee5e71806e0f91cf31':
Fix bug 4111271 and bug 4077526 - WebView touch event handling when WebCore is too slow
ea775ca3ac793033e91b4d1cc05dfdb53ab807be 17-Mar-2011 Adam Powell <adamp@google.com> am f8d1533b: Merge "Fix bug 4111271 and bug 4077526 - WebView touch event handling when WebCore is too slow" into honeycomb-mr1

* commit 'f8d1533b07b51935e295b2cf92e2ea2aa94b303f':
Fix bug 4111271 and bug 4077526 - WebView touch event handling when WebCore is too slow
d0197f3669efda060c7ee2069ff41bd970fd6d9c 17-Mar-2011 Adam Powell <adamp@google.com> Fix bug 4111271 and bug 4077526 - WebView touch event handling when
WebCore is too slow

Make sure that we can recover properly from a bad gesture with missing
events that never come back from webcore. Lower timeout to 1 second.

Confirm movement on touch event enqueue so that we don't get phantom
taps or long presses when webcore is slow to respond.

Add sanity check in ScaleGestureDetector to end a gesture early on a
bad MotionEvent stream rather than throwing up.

Change-Id: I69690409d7edd6b4320dbcf3b052aba4023360fe
caleGestureDetector.java
5949f89f3c944ca5992cbe09b5cf3abbacbaa8b6 16-Mar-2011 Jeff Brown <jeffbrown@google.com> Merge "Add 3D mode key and others."
9812aed2765c671e6c3f5255ac1b8a2fe0e72ef6 08-Mar-2011 Jeff Brown <jeffbrown@google.com> Add 3D mode key and others.

Related to an AOSP change request.

Change-Id: I3f4f84b56a1af626a8783f5ecbb823eb12ba9fbe
eyEvent.java
4ad45c4d15b4d9772cc9b45e4fc31037b54a0cde 16-Mar-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Pressed state not cleared if view is disabled in long click handler"
35267f178c10878034364b8c774580401621cb78 16-Mar-2011 satok <satok@google.com> Merge "Add CorrectionSpan and APIs to pass a secure CorrectionSpan to TextView"
adb435835fb9a5f2bb74d29930b239dde18504a7 09-Mar-2011 satok <satok@google.com> Add CorrectionSpan and APIs to pass a secure CorrectionSpan to TextView

- CorrectionSpan is a span which has suggestions made by IME.
This has a function to change the current IME to other IME specified
in this span. For security reasons, only the current IME
is allowed to use this function through InputConnection.
(IME token is used for checking the validity of it.).

- CorrectionSpan stores following information:

flags, subtype Id, InputMethodInfo Id, suggests, locale, original string

Change-Id: Id3abc9ea4d11753cdc4f483a2bb3128f49ba198a
nputmethod/BaseInputConnection.java
nputmethod/InputConnection.java
nputmethod/InputConnectionWrapper.java
77b80c06af064403d9d6e8fbe04d76dd6f7d2dbb 16-Mar-2011 Svetoslav Ganov <svetoslavganov@google.com> Pressed state not cleared if view is disabled in long click handler

bug:2133127

If a View is disabled its onTouchEvent handler uses a shortcut
path for efficient handling which does not clear the pressed
flag. As a result if the view is disabled in a long click
handler the view keeps being in pressed state. The fix is to
clear if needed the pressed flag in the shortcut path
of onTouchEvent.

Change-Id: I046a62c2fce751c27fec3cfb756b74431fc003c3
iew.java
843e29d3751017267b96565c543df0301c31a9f7 16-Mar-2011 Jeff Brown <jeffbrown@google.com> Merge "Improve VelocityTracker numerical stability."
2ed2462aa29c564f5231f317c27b3188da875e52 15-Mar-2011 Jeff Brown <jeffbrown@google.com> Improve VelocityTracker numerical stability.

Replaced VelocityTracker with a faster and more accurate
native implementation. This avoids the duplicate maintenance
overhead of having two implementations.

The new algorithm requires that the sample duration be at least
10ms in order to contribute to the velocity calculation. This
ensures that the velocity is not severely overestimated when
samples arrive in bursts.

The new algorithm computes the exponentially weighted moving
average using weights based on the relative duration of successive
sample periods.

The new algorithm is also more careful about how it handles
individual pointers going down or up and their effects on the
collected movement traces. The intent is to preserve the last
known velocity of pointers as they go up while also ensuring
that other motion samples do not count twice in that case.

Bug: 4086785
Change-Id: I2632321232c64d6b8faacdb929e33f60e64dcdd3
elocityTracker.java
aaae0573bb537b9de89c0410b9386e8f96c3568b 15-Mar-2011 Brad Fitzpatrick <bradfitz@android.com> am 403da3a7: am 8d25eab1: Merge "Releasing lock even if exception is thrown."

* commit '403da3a79af78920b33448bbc8d91c4b8aebf4a4':
Releasing lock even if exception is thrown.
8d25eab10523ac2424dc645dc697126dbadad588 15-Mar-2011 Brad Fitzpatrick <bradfitz@android.com> Merge "Releasing lock even if exception is thrown."
8b5345fb3647fee0ec5882537b6a68bb90f4ac1b 15-Mar-2011 Brad Fitzpatrick <bradfitz@android.com> Merge "Fixing self-assignment in copying code."
ee7ace065f77b53a57cb6273b9f2f5d85caba90c 15-Mar-2011 Romain Guy <romainguy@google.com> Merge "Fix rendering artifact in edge fades. Bug #4092053" into honeycomb-mr1
7b5b6abf852c039983eded25ebe43a70fef5a4ab 15-Mar-2011 Romain Guy <romainguy@google.com> Fix rendering artifact in edge fades.
Bug #4092053

The problem always existed but was made visible by partial invalidation.
When saving a layer, the renderer would try to postpone glClear()
operations until the next drawing command. This however does not work
since the clip might have changed. The fix is rather simple and
simply gets rid of this "optimization" (that turned out to be
usless anyway given how View issues saveLayer() calls.)

This change also fixes an issue with gradients (color stops where
not properly computed when using a null stops array) and optimizes
display lists rendering (quickly rejects larger portions of the
tree to avoid executing unnecessary code.)

Change-Id: I0f5b5f6e1220d41a09cc2fa84c212b0b4afd9c46
LES20Canvas.java
ardwareCanvas.java
ardwareRenderer.java
iew.java
iewGroup.java
1b365921e88b14857d8e0826e221c371d25f6cb2 10-Mar-2011 Jim Miller <jaggies@google.com> Fix 3201849: Enable hardware acceleration in LockScreen WaveView [DO NOT MERGE]

Change-Id: I07bbed7843857158cd2c1ffd9b184bde7fd5860d
iewRoot.java
indowManager.java
7a9794e402ee961abbc149858f34848dd653ac7e 10-Mar-2011 Jim Miller <jaggies@google.com> Merge "Fix 3201849: Enable hardware acceleration in LockScreen WaveView"
3fa8a454f61c772036f5f38661d1a077fd3d8388 10-Mar-2011 Jim Miller <jaggies@google.com> Fix 3201849: Enable hardware acceleration in LockScreen WaveView

Change-Id: Id64e82fe2e09ac231736d7867cd47b504d79b81b
iewRoot.java
indowManager.java
efd3266b719eed5f1b217021c0a9e76e4b274b06 09-Mar-2011 Jeff Brown <jeffbrown@google.com> Input improvements and bug fixes.

Associate each motion axis with the source from which it comes.
It is possible for multiple sources of the same device to define
the same axis. This fixes new API that was introduced in MR1.
(Bug: 4066146)

Fixed a bug that might cause a segfault when using a trackball.

Only fade out the mouse pointer when touching the touch screen,
ignore other touch pads.

Changed the plural "sources" to "source" in several places in
the InputReader where we intend to refer to a particular source
rather than to a combination of sources.

Improved the batching code to support batching events from different
sources of the same device in parallel. (Bug: 3391564)

Change-Id: I0189e18e464338f126f7bf94370b928e1b1695f2
nputDevice.java
9626b14a283ef82d16636cf5fb5ba8bb4d30381e 03-Mar-2011 Jeff Brown <jeffbrown@google.com> Fix off by one errors in touch motion ranges. (DO NOT MERGE)

Report inclusive minimum and maximum ranges for all
axes including X and Y.

Set mouse pointer bounds to 0..width-1, 0..height-1.

Rotate touch and mouse positions more carefully, paying attention
to the maximum bounds when calculating the complement of an axis.

Simplified the InputReader somewhat and removed support for a
couple of poorly defined input device configuration parameters.
We now assume that the touch device provides useful absolute axis
ranges for the X and Y axes since the alternative does not actually
make sense.

Bug: 3413541
Change-Id: I121d28a125c4f9618cb283dc460d33ff1a907023
otionEvent.java
3391435afd7fa69e12cde17754e1d1f98f9d77e9 09-Mar-2011 Romain Guy <romainguy@google.com> am 812dba1f: Merge "Prevents NPE when a View was detached Bug #4068284" into honeycomb-mr1

* commit '812dba1fcaa1a374124c2fe0694c1b4f21e3dea9':
Prevents NPE when a View was detached Bug #4068284
e294d41593f13edc5598cf62f8a89e573b3eb653 09-Mar-2011 Romain Guy <romainguy@google.com> Prevents NPE when a View was detached
Bug #4068284

Change-Id: Ied1c9b8d32a3e9957c6b165642ba40bbdaf35d53
ardwareRenderer.java
1e415023ee4c8aef2bfcb51e4293e62eb32eb23f 08-Mar-2011 Romain Guy <romainguy@google.com> am 3d7796c1: Merge "Correctly handle opaque fading views Bug #3475554" into honeycomb-mr1

* commit '3d7796c17ffae7892d1987053c3b6698697cffa2':
Correctly handle opaque fading views Bug #3475554
2243e555b061254f7f0f72ca1d6cd44db6c266fa 08-Mar-2011 Romain Guy <romainguy@google.com> Correctly handle opaque fading views
Bug #3475554

Change-Id: Ia4915ada67046486103dfc6f08e4dac8564f85dd
iewGroup.java
d00353fe3191571a6773ef2d11921cfcff260bc4 08-Mar-2011 Romain Guy <romainguy@google.com> am bc8a8e8c: Merge "Add support for partial invalidates in WebView Bug #3461349" into honeycomb-mr1

* commit 'bc8a8e8c926115cb7b3910d016e5cff12b0f7b0a':
Add support for partial invalidates in WebView Bug #3461349
bc8a8e8c926115cb7b3910d016e5cff12b0f7b0a 08-Mar-2011 Romain Guy <romainguy@google.com> Merge "Add support for partial invalidates in WebView Bug #3461349" into honeycomb-mr1
78b9035b51cd5e59500fa242952cb30ee50cddc9 08-Mar-2011 Dianne Hackborn <hackbod@google.com> am 37e792d5: Merge "Fix issue #3515088: Don\'t be so aggressive trying to reclaim memory" into honeycomb-mr1

* commit '37e792d53d4b38d1283960d62edcd63ef0a30e5e':
Fix issue #3515088: Don't be so aggressive trying to reclaim memory
37e792d53d4b38d1283960d62edcd63ef0a30e5e 08-Mar-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #3515088: Don't be so aggressive trying to reclaim memory" into honeycomb-mr1
79bd55ccb55e85b39a8d0c867add56021cd608e2 08-Mar-2011 Chet Haase <chet@google.com> am 4bd6ccd2: Merge "Restore save/restore calls removed recently" into honeycomb-mr1

* commit '4bd6ccd25162a7634a90cfde72dcdc7d581d9a88':
Restore save/restore calls removed recently
4bd6ccd25162a7634a90cfde72dcdc7d581d9a88 08-Mar-2011 Chet Haase <chet@google.com> Merge "Restore save/restore calls removed recently" into honeycomb-mr1
6ac23abf0e3978e6995981810ddc01812a235387 08-Mar-2011 Adam Powell <adamp@google.com> am ad542efb: Merge "Fix bug 3506292 - Add guards against bad event streams to ScaleGestureDetector" into honeycomb-mr1

* commit 'ad542efb8aa241d3e576d9567f5b0979355037b3':
Fix bug 3506292 - Add guards against bad event streams to ScaleGestureDetector
cabfcc1364eb7e4de0b15b3574fba45027b45cfc 08-Mar-2011 Romain Guy <romainguy@google.com> Add support for partial invalidates in WebView
Bug #3461349

This change also fixes two bugs that prevented partial invalidates
from working with other views. Both bugs were in our EGL implementation:
they were preventing the caller from comparing the current context/surface
with another context/surface. This was causing HardwareRenderer to always
redraw the entire screen.

Change-Id: I33e096b304d4a0b7e6c8f92930f71d2ece9bebf5
LES20Canvas.java
ardwareCanvas.java
ardwareRenderer.java
iewGroup.java
ad542efb8aa241d3e576d9567f5b0979355037b3 08-Mar-2011 Adam Powell <adamp@google.com> Merge "Fix bug 3506292 - Add guards against bad event streams to ScaleGestureDetector" into honeycomb-mr1
88172fe49cf78f73fa7bf2b1bde665b45b1712ca 08-Mar-2011 Chet Haase <chet@google.com> Restore save/restore calls removed recently

Calls thought to be duplicates were removed, which caused rendering problems
for Browser as well as crashes in the widget list and music.

Change-Id: I6364aaa362619ea3dd368990304d61d84bbe2a90
iew.java
0818020d7cb04d83d51b71b8262d34bd79a76a95 08-Mar-2011 Adam Powell <adamp@google.com> Fix bug 3506292 - Add guards against bad event streams to ScaleGestureDetector

Change-Id: Id38ebb368168b7157369964e39948036405427b1
caleGestureDetector.java
3314a31377e60ee11335cc51a2e3dba86b36bb7e 08-Mar-2011 Adam Powell <adamp@google.com> am a46c1df2: Merge "Fix bug 4021346 - crash while navigating" into honeycomb-mr1

* commit 'a46c1df226f2aea54d3bb068b0537c9b1d28590c':
Fix bug 4021346 - crash while navigating
a46c1df226f2aea54d3bb068b0537c9b1d28590c 08-Mar-2011 Adam Powell <adamp@google.com> Merge "Fix bug 4021346 - crash while navigating" into honeycomb-mr1
3ba8f5d675831647e45d0ce11507c85dfb5f753b 08-Mar-2011 Adam Powell <adamp@google.com> Fix bug 4021346 - crash while navigating

Change-Id: Iff60c5f4214c56597f2a1b393982d023866e490e
iewGroup.java
db773c557226e8008a1fff7596321a69289c80ba 05-Mar-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3515088: Don't be so aggressive trying to reclaim memory

Change-Id: I8184306fa8c27a41b8bcfcad8d96985be8f0c9aa
iewRoot.java
fd47c5eea2a4393b5c9897bb80db721809146aaf 07-Mar-2011 Jeff Brown <jeffbrown@google.com> am f0210c36: Merge "Joystick tweaks. (DO NOT MERGE)" into honeycomb-mr1

* commit 'f0210c36218c03dc30e444ef85690dc815097920':
Joystick tweaks. (DO NOT MERGE)
f0210c36218c03dc30e444ef85690dc815097920 07-Mar-2011 Jeff Brown <jeffbrown@google.com> Merge "Joystick tweaks. (DO NOT MERGE)" into honeycomb-mr1
15c6b719fe8d1f4b27b4fa66ac94eede3957caf2 07-Mar-2011 Romain Guy <romainguy@google.com> am 0aaa11ed: Merge "Remove many unnecessary save/restore calls." into honeycomb-mr1

* commit '0aaa11ed5be45170fb2535a6ce021c92b18d8878':
Remove many unnecessary save/restore calls.
8529745b27877d98a0c76692295a3fcac238b1e6 04-Mar-2011 Jeff Brown <jeffbrown@google.com> Joystick tweaks. (DO NOT MERGE)

Ensure that the joystick can always reach -1.0, 0.0 and 1.0 positions
even when noise filtering is applied. (Bug: 3514510)

Add support for a few more standard axes.

Add additional mapping modes for axes.
Some axes are inverted from standard interpretation
or are actually intended to be split into two distict axes
such as left/right trigger controls or accelerator/brake.

Add key layout file for a G25 racing wheel and XBox 360 controller
to tweak behavior. They work fine without them but the axis mappings
are not ideal.

Change-Id: I0fddd90309af4dc14d35f34fe99ed6e521c0b7c7
otionEvent.java
d6cf477e5d6245a63f71958b75c3d658cd6c100e 05-Mar-2011 Romain Guy <romainguy@google.com> Remove many unnecessary save/restore calls.

This should help complex applications by reducing the amount of
unnecessary work performed by the renderer.

Change-Id: I9bdebb1a35cdbcc3d926b7485f19d9e88a019040
LES20DisplayList.java
iew.java
1bc593efeb88f668118bb7c169c49b978410bea4 03-Mar-2011 Jeff Brown <jeffbrown@google.com> Merge "Fix off by one errors in touch motion ranges."
d41cff2d3a95963a7aa348e502c6d42bae367235 03-Mar-2011 Jeff Brown <jeffbrown@google.com> Fix off by one errors in touch motion ranges.

Report inclusive minimum and maximum ranges for all
axes including X and Y.

Set mouse pointer bounds to 0..width-1, 0..height-1.

Rotate touch and mouse positions more carefully, paying attention
to the maximum bounds when calculating the complement of an axis.

Simplified the InputReader somewhat and removed support for a
couple of poorly defined input device configuration parameters.
We now assume that the touch device provides useful absolute axis
ranges for the X and Y axes since the alternative does not actually
make sense.

Bug: 3413541
Change-Id: I682ce3729e4473de7f1bcf8addb49a3f4484126f
otionEvent.java
63e1cea248cde3db3e89f49e5fcc3458aa87951e 03-Mar-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #3485923: Gmail crash"
648251710162cdaf7371012a1cbb79b9bc5bc0e4 03-Mar-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3485923: Gmail crash

Allow application to try to recover if a surface OOM error
happens on the client side.

Change-Id: I0308bd99647a35e4bcac448340b7fc6330a828f6
ardwareRenderer.java
WindowSession.aidl
iewRoot.java
a454767b09ecb7d25d00beae0e5a1fdd48605c63 03-Mar-2011 Jeff Brown <jeffbrown@google.com> Get key repeat timeout and delay from ViewConfiguration.

Replaces previously hardcoded values. This ensures that key repeat
takes the accessibility long press timeout setting into account.

Unfortunately the system must be rebooted for the change to take
effect. We will fix that later.

Change-Id: I3ab70bb037331620b7e532170c1727287b5c6f91
iewConfiguration.java
55acdf7dcd0cf5b9aacfe48808e98056c7d60e5b 03-Mar-2011 Jeff Brown <jeffbrown@google.com> Merge "Wake screen from external HID peripherals."
56194ebec6212e229f4ccdaa4b187166d20013ef 03-Mar-2011 Jeff Brown <jeffbrown@google.com> Wake screen from external HID peripherals.

Added some plumbing to enable the policy to intercept motion
events when the screen is off to handle wakeup if needed.

Added a basic concept of an external device to limit the scope
of the wakeup policy to external devices only. The wakeup policy
for internal devices should be based on explicit rules such as
policy flags in key layout files.

Moved isTouchEvent to native.

Ensure the dispatcher sends the right event type to userActivity
for non-touch pointer events like HOVER_MOVE and SCROLL.

Bug: 3193114
Change-Id: I15dbd48a16810dfaf226ff7ad117d46908ca4f86
otionEvent.java
indowManagerPolicy.java
2da0c5826df40d9f528bfe7d2e762c3fbea03f7f 03-Mar-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Add system wide management of core settings"
9402a667e90c86947834df172ae5a1db6e49eecb 03-Mar-2011 Chet Haase <chet@google.com> Merge "Cancel LayoutTransition animations selectively"
e8e45d32fd1f67fed1b70d0fc19d2f91a76f128e 03-Mar-2011 Chet Haase <chet@google.com> Cancel LayoutTransition animations selectively

A recent change to LayoutTransition caused new layout transitions to
cancel any previously-running animations. This was to handle situations
where a transition adding an item needed transitions removing items to
finish their job first (and vice versa). But canceling *all* running
animations from transitions caused some artifacts, like making the status
bar icons blink or fade in, depending on which one was started last.

The new approach is to cancel just the ones we care about: adding animations
cancel removing animations, and vice versa. Either one cancels 'changing'
animations, which prevents objects from being animated to the old end
locations, since the new transition will animate them to the correct new
end locations.

Change-Id: I68ac351b05365cace6639b6618422395c35c83fd
iewGroup.java
54d068ec6af0ee6d261a135400efe6816c6f5ffe 02-Mar-2011 Svetoslav Ganov <svetoslavganov@google.com> Add system wide management of core settings

bug:3505060

Since we want to have some settings that are used very frequently
by many applications (long-press timeout is one example) these should
be managed efficiently to reduce lookups from different processes
because in the case of a cache miss a disk I/O is performed. Now
the system manages such core settings and propagates them to the
application processes.

Change-Id: Ie793211baf8770f2181ac8ba9d7c2609dfaa32a7
iewConfiguration.java
acc3944dd16074491885bf0252c456e0ac190168 03-Mar-2011 Romain Guy <romainguy@google.com> Merge "Add an API to force Views to render their layer."
f1ae10640fe152b56465e7e7184731226f95b0dd 03-Mar-2011 Romain Guy <romainguy@google.com> Add an API to force Views to render their layer.

Change-Id: Id5776f3b0880fdf75835f16560a1d03a3175d139
iew.java
cbf9cb35bb7064f303c6dd9da4485cd5344b6779 03-Mar-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #3400119: API to specify a black background behind a window transition"
de75cb4738376c4cfe15c56aba7cd78d90e3100e 03-Mar-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3400119: API to specify a black background behind a window transition

There is now an API, which is used for task switching.

Also improved how we handle rotation animation when we can't take a
screen shot, to cleanly revert to the old freeze behavior. This removes
the need to special case the emulator.

Change-Id: I7227432a2309370437ec6ac78db02c6f1e7eedd5
nimation/Animation.java
05dc66ada6b61a6bdf806ffaa62617ac5394695d 02-Mar-2011 Jeff Brown <jeffbrown@google.com> Fade out the mouse pointer after inactivity or other events.

Fades out the mouse pointer:
- after 15 seconds of inactivity normally
- after 3 seconds of inactivity in lights out mode
- after a non-modifier key down
- after a touch down

Extended the native Looper to support enqueuing time delayed
messages. This is used by the PointerController to control
pointer fade timing.

Change-Id: I87792fea7dbe2d9376c78cf354fe3189a484d9da
iew.java
ffe2c7a071911b6a24954d41bbaeecd367286ba8 02-Mar-2011 Romain Guy <romainguy@google.com> Merge "Don't account for scrollX/Y when drawing a display list in a layer."
a7dabcd3dfb263468613fa2b04909c8fabb66a9d 02-Mar-2011 Romain Guy <romainguy@google.com> Don't account for scrollX/Y when drawing a display list in a layer.

Change-Id: I73bdcdab3e547d00ba2853aed550e65d5f8c6fcd
iewGroup.java
606ecf3e9f27c8f69a398ea4d83d842df50d094f 02-Mar-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #3495749: Crash on choosing to open the downloaded images"
d643bb56fdf21973ea75984f0816b7dc024698df 01-Mar-2011 Romain Guy <romainguy@google.com> Correctly mark layers dirty when drawing WebView.

Change-Id: I7ae0c3cfa0916d8fbeaf01e8da127c621a06a0f4
iewGroup.java
e6c524022deb665439a442ab8b66f2917ca62ca2 01-Mar-2011 Romain Guy <romainguy@google.com> Merge "Correctly mark layers dirty when drawing WebView."
ce418e661ab52a08a2a2c3b2f10a4dd9adf33305 01-Mar-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3495749: Crash on choosing to open the downloaded images

This is due to the window doing a relayout after its activity is
stopped, at which point it may need to interact with the adapter
to load data.

The fix here is to tell ViewRoot about an activity being stopped
and, if in this state, hold off on doing any new measurements and
layouts of the hierarchy until it is no longer stopped.

In this case the relayout was happening due to the cursor
being deactivated, with causes the adapter to invalidate
its data. Because this is now in a dialog window, this
allows the window to actually be resized smaller (unlike when
in a full screen activity), and boom.

Change-Id: I26442b4679819b4a4e6bc56289afd3445526750b
iewRoot.java
indowManagerImpl.java
d666cf320db4134938f72b0ffe18212997f8c8d8 01-Mar-2011 Chet Haase <chet@google.com> Cleanup of docs for ViewPropertyAnimator class

Fixed the copyright date, spec'd auto-canceling behavior of various methods,
fixed various typos.

Change-Id: I0db74787275890557a3ad8d617b69daeef2413ee
iewPropertyAnimator.java
9b1aa5e80cd1286ed7971fd4d0232588096bfe82 28-Feb-2011 Adam Powell <adamp@google.com> Merge "Fix some bugs in the new ScaleGestureDetector logic."
0fe4a135b78e3ee993dd5111cc3e48a5b48952fb 28-Feb-2011 Adam Powell <adamp@google.com> Fix some bugs in the new ScaleGestureDetector logic.

Lifting an active pointer now properly ends/begins a new gesture.

Fix out of bounds errors.

Change-Id: I29cb802785b886f65e7fc16fa7d2870f9219a3c6
caleGestureDetector.java
99aac7beca18b6d73e40db5e8e49f52f94be638e 26-Feb-2011 Dianne Hackborn <hackbod@google.com> You can now specify a custom display size as NxM.

Change-Id: Ieb6df51aab009689f0f19b8887025261c5ceb69f
isplay.java
33bbfd2232ea9eaae9a9d87a05a95a430f09bd83 25-Feb-2011 Jeff Brown <jeffbrown@google.com> Add support for mouse hover and scroll wheel.

Dispatch ACTION_HOVER_MOVE and ACTION_SCROLL through the View
hierarchy as onGenericTouchEvent. Pointer events dispatched
this way are delivered to the view under the pointer. Non-pointer
events continue to be delivered to the focused view.

Added scroll wheel support to AbsListView, ScrollView,
HorizontalScrollView and WebView. Shift+VSCROLL is translated
to HSCROLL as appropriate.

Added logging of new pointer events in PointerLocationView.

Fixed a problem in EventHub when a USB device is removed that
resulted in a long stream of ENODEV errors being logged until INotify
noticed the device was gone.

Note that the new events are not supported by wallpapers at this time
because the wallpaper engine only delivers touch events.

Make all mouse buttons behave identically. (Effectively we only
support one button.)

Change-Id: I9ab445ffb63c813fcb07db6693987b02475f3756
otionEvent.java
iew.java
iewGroup.java
iewRoot.java
53c7b1d544f1b78cc4fb206c74dc52b39b58b258 26-Feb-2011 Chet Haase <chet@google.com> Merge "ViewPropertyAnimator cancels prior animations"
0277c171283826dce53cc48e8dd66187051227e4 25-Feb-2011 Gilles Debunne <debunne@google.com> Merge "Code clean-up around ScrollView."
ba592d200390d89723682f1a7e40d308d7804b36 25-Feb-2011 Chet Haase <chet@google.com> ViewPropertyAnimator cancels prior animations

The initial approach of VPA was to cancel previous animations
on the same exact set of properties. This worked in most cases,
but if the new animation had a different set of properties
(like animating alpha, x, and y instead of just x and y), then
there was a possible artifact as the old animation continued to
run in the background and could show the button in the wrong
location as a result.

The new approach is to search all running animations for
a property when a new animation is requested on it and to
remove that property from the list of properties being animated
by that previous animation. The prior animations continue to
run, but will no longer update that property, which will now be
controlled solely by the new animation requested.

Change-Id: Ib35d54a5e91be0a1310725be6e2acbaa6ead4a4e
iewPropertyAnimator.java
2ed2eacd7e0569675410f1e62238b708c5dcc8ac 25-Feb-2011 Gilles Debunne <debunne@google.com> Code clean-up around ScrollView.

Change-Id: Ia110f30279a93c96741e9afbd93ed6231aa97ef1
iew.java
a00f3865f55c5c9cb74510ee2b239d101230133c 22-Feb-2011 Chet Haase <chet@google.com> Add ViewPropertyAnimator for easy animation of View properties

Change-Id: I2bc52ca16507d8d20004d2d6823e587791272aac
iew.java
iewPropertyAnimator.java
78b1dc594e53120ba7817d9ceb6a340278186891 25-Feb-2011 Adam Powell <adamp@google.com> Merge "Ensure WebView passes a complete/in-order event stream to ScaleGestureDetector. Prerequisite for several ScaleGestureDetector bugfixes."
a5364ee8942cd9f0546f80f6430812ca2ee59f30 24-Feb-2011 Romain Guy <romainguy@google.com> Add an API to control the distance between a View and its camera.

Change-Id: Ibaf4e7dc827933f7ad2bb7ab50c1dcef45fee83c
iew.java
e33cef8037cb87386e17bcf8701a47452d262fa6 24-Feb-2011 Adam Powell <adamp@google.com> Ensure WebView passes a complete/in-order event stream to
ScaleGestureDetector. Prerequisite for several ScaleGestureDetector
bugfixes.

Bugfixes for ScaleGestureDetector.

Make ScaleGestureDetector properly support >2 pointers. Track the most
recent two pointers for scale gestures.

Change-Id: I966319ad438c1c8e1103f245b53b3862c2d4e3c0
caleGestureDetector.java
47b8adec3904535c8d8ce2b6e42ecd736f2d90ce 24-Feb-2011 Romain Guy <romainguy@google.com> Add a new Camera API to control the camera's location

Change-Id: Id9a082d2def803eb527e1987875e0d8a22c6e8aa
iew.java
0c4650b4d566f65aa6faa9be45e7f1e29148e1a9 22-Feb-2011 Gilles Debunne <debunne@google.com> Merge "Cursor does not jump back to its previous position when IME is showed up."
3c85a4e6396dabf7f0061ff2c6e9f9b35793eadd 22-Feb-2011 Mike Lockwood <lockwood@android.com> Merge "KeyguardManager: Add isKeyguardLocked() and isKeyguardSecure()"
795e42e91ad049d7ddf5c3672a40f044fbc4d1e2 22-Feb-2011 Romain Guy <romainguy@google.com> Merge "Add more info to View.getLayoutParams()"
01c174bce3ab78ff85bf27f549b29ab9fcb70ac2 22-Feb-2011 Romain Guy <romainguy@google.com> Add more info to View.getLayoutParams()

Change-Id: I9abc64c9bbf726a02256a9ab692d9c555a6e3525
iew.java
93c5b6a81da8f7348ae43c860d21617eed4fa6d7 22-Feb-2011 Jozef BABJAK <jozef.babjak@gmail.com> Releasing lock even if exception is thrown.

However, the whole method needs to be reviewed. It still has several
locking/unlocking places not tied together by try-finally construct,
but they cannot be fixed without deeper understanding.

Change-Id: Iaaf87568d585327654be409377b6d57a1da135eb
iewRoot.java
5d29860222a9acb8b9c4a4b7359da61f2b1d835c 22-Feb-2011 Jozef BABJAK <jozef.babjak@gmail.com> Fixing self-assignment in copying code.

Change-Id: I0799f83dc9d02b9bc31c76e747e6ba1ff58000b0
otionEvent.java
cc0c159e9b3dd4e0f48da0ce3e33d2c68a651413 19-Feb-2011 Jeff Brown <jeffbrown@google.com> Add new hover move action and scroll wheel plumbing.

Added support for tracking the mouse position even when the mouse button
is not pressed. To avoid confusing existing applications, mouse movements
are reported using the new ACTION_HOVER_MOVE action when the mouse button
is not pressed.

Added some more plumbing for the scroll wheel axes. The values are
reported to Views but they are not yet handled by the framework.

Change-Id: I1706be850d25cf34e5adf880bbed5cc3265cf4b1
otionEvent.java
iewGroup.java
6f2fba428ca5e77a26d991ad728e346cc47609ee 19-Feb-2011 Jeff Brown <jeffbrown@google.com> Add new axes for joysticks and mouse wheels.

Added API on InputDevice to query the set of axes available.
Added API on KeyEvent and MotionEvent to convert keycodes and axes
to symbolic name strings for diagnostic purposes.
Added API on KeyEvent to query if a given key code is a gamepad button.
Added a new "axis" element to key layout files to specify the
mapping between raw absolute axis values and motion axis ids.
Expanded the axis bitfield to 64bits to allow for future growth.
Modified the Makefile for keyboard prebuilts to run the keymap
validation tool during the build.
Added layouts for two game controllers.
Added default actions for game pad button keys.
Added more tests.
Fixed a bunch of bugs.

Change-Id: I73f9166c3b3c5bcf4970845b58088ad467525525
nputDevice.java
eyEvent.java
otionEvent.java
iewRoot.java
e7c943926db892d479ba4a0a9b9b314db8abaaee 19-Feb-2011 Adam Powell <adamp@google.com> Merge "Add an API to listen for window attach/detach events on a View."
4afd62b18c52a55371ab923d54f93615ad68fd7a 19-Feb-2011 Adam Powell <adamp@google.com> Add an API to listen for window attach/detach events on a View.

Fix bug 3312949 - inconsistent state in MenuPopupHelper

Change-Id: Ie802ada3f8de4cf71c92fcc7c6abce9ba85e7b75
iew.java
520d8bc1d840966b5519195aaa514597a662c053 18-Feb-2011 Mike Lockwood <lockwood@android.com> KeyguardManager: Add isKeyguardLocked() and isKeyguardSecure()

BUG: 3402847

Change-Id: I725838c9d96617dd4497f9c80417cd623eceb846
Signed-off-by: Mike Lockwood <lockwood@android.com>
WindowManager.aidl
indowManagerPolicy.java
ad8484b3799ba7046e57388e34ba9a4c0a971b42 18-Feb-2011 Gilles Debunne <debunne@google.com> Cursor does not jump back to its previous position when IME is showed up.

Bug 3441308

This behavior may be restored for phones if appropriate.

Change-Id: Ibc2de587d64d372521da2d54f239cab56f04b407
nputmethod/InputMethodManager.java
e2ad901f4a7ec645c8711b19f0af379bab363c44 18-Feb-2011 Eric Laurent <elaurent@google.com> Added bluetooth SCO stream to VolumePanel

This is a preliminary change to enable control of BLUETOOTH_SCO stream
volume while in a video chat with a bluetooth headset.
The complete change requires a new icon for BT SCO volume.

Change-Id: I6cd22f0c73d80a9b404b228650b9a30ef144cedc
olumePanel.java
45708bf2f03f9f50c22f86cb794c2a088bab1c05 17-Feb-2011 Jeff Brown <jeffbrown@google.com> Merge "Add support for arbitrary axes in MotionEvents."
e9140a72b1059574046a624b471b2c3a35806496 17-Feb-2011 Chet Haase <chet@google.com> Fix invalidation bug with View bounds properties

When setLeft/Right/Top/Bottom() functions were called on View,
invalidation was only happening at the parent level. When an
app is hardware accelerated, this means that the view's display
list is not being recreated. So views that were changing size due
to these calls were not getting redrawn properly, causing some
artifacts in animations (especially LayoutTransition, which
calls these setters).

Fix is to invalidate the child instead of just the child's bounds
in the parent.

Change-Id: Ic8b2a5db519345dce617f914c2214738f22031b2
iew.java
91c69ab01539f7ba28708f41ec1835cc2920d0a0 15-Feb-2011 Jeff Brown <jeffbrown@google.com> Add support for arbitrary axes in MotionEvents.

This change makes it possible to extend the set of axes that
are reported in MotionEvents by defining new axis constants.

The MotionEvent object is now backed by its C++ counterpart
to avoid having to maintain multiple representations of the
same data.

Change-Id: Ibe93c90d4b390d43c176cce48d558d20869ee608
nputDevice.java
nputEvent.java
eyEvent.java
otionEvent.java
9c4cc03a354922df08efacfc486ef0e80144d3ea 14-Feb-2011 satok <satok@google.com> Add a method to check a string contained in ExtraValue of InputMethodSubtype

Change-Id: I34390537eaacd3ff8cfd336eaf5b9ca0d3e4b802
nputmethod/InputMethodSubtype.java
93a4dc6c3f5705d5e45ba6d7288fb824992a5749 15-Feb-2011 Christopher Tate <ctate@google.com> Merge "Disable cross-app drag/drop"
7f9ff9d191f00354c564a70eeeb1eda2b32eb1c7 15-Feb-2011 Christopher Tate <ctate@google.com> Disable cross-app drag/drop

@hides the View constant that designates a drag as cross-app, and also
forcibly ignores that flag on the system_server side even if it's passed
to startDrag() as a literal.

Change-Id: I6f321bdf0389db5bb44131fd0f8d6b92f049be52
iew.java
0211a0a10d20ec99bd78905ea9cd2960f7beb4c8 15-Feb-2011 Romain Guy <romainguy@google.com> Gracefully handle drawing caches allocation failure.
Bug #3431451

This bug was causing ListView to not render properly when showing an item
larger than the maximum drawing cache size. ListView relies on the drawing
cache to correctly mask all the background pixels. However, if the cache
is not properly created, the background will show through even though
ListView.isOpaque() == true. This change detects this case and falls
back to the default non opaque behavior.

Change-Id: I30a45e7a03fb7ebb2b12f0e85c075c2901954c44
iew.java
iewConfiguration.java
iewGroup.java
676b17391fb6583e5df944c36b1bd4c1be835689 14-Feb-2011 Romain Guy <romainguy@google.com> Deprecate ARGB_4444.

It looks awful.
Don't use it.
Use ARGB_8888, it's much better.
If you think you need ARGB_4444, you are wrong.
You are.

Change-Id: I4d6963cf98b6a8fb34cebcd0d24b9fd66b5a0fbf
iew.java
7265d9bd6d80c5bedaa6de2b80f6619a301a07c8 14-Feb-2011 satok <satok@google.com> Add sort method to InputMethodSubtype

Bug: 3364167

Change-Id: I94ad55b8eab49dc9b233dcb4e74429863b406fb4
nputmethod/InputMethodSubtype.java
e3361b8d0889de6489eb61c6d9ca05885cf4bf31 11-Feb-2011 Amith Yamasani <yamasani@google.com> Fix over-eager locking of volume dialog's primary stream.

Bug: 3427027

Don't lock in the active stream if visual feedback was not requested.
This fixes a transient problem after the notification volume was modified
by an API call.

Change-Id: I2227d8fdf6cc565713d9bbcc66748805e04ae163
olumePanel.java
8b4b97a14ad9b5b982d8fe92755efabec8ad0076 04-Feb-2011 Glenn Kasten <gkasten@google.com> Bug 3352047 Wrong message when adjusting volume

Add hidden AudioManager.getDevicesForStream and output device codes.

Change-Id: I4d1c1d3b6a077cd117720817d1f733dda557b947
olumePanel.java
add6577a0196258e5a48c5deefcdb12e05c935b3 10-Feb-2011 Chet Haase <chet@google.com> Fix animation and layoutTransition issues.

There were some subtle timing issues in animators with ending animations that
were not completely initialized (possibly because a startDelay'd animator
was ended before the delay elapsed).
Also, LayoutTransition had bugs around running a transition on a container
while a previously-started transition was still in progress. This could result
in some minor artifacts or crash bugs, depending on the durations and delays set
on the transition animations.

Change-Id: Ic6a69601f1ce9a55db15fff6b8ed25950b354491
iewGroup.java
069ea0e31a0aa283c83fae79f31a1798a6d85dde 08-Feb-2011 Romain Guy <romainguy@google.com> Better handling of EGL_SWAP_BEHAVIOR_PRESERVED_BIT
Bug #3410832
Bug #3410834

Change-Id: I6025d6b7200e4d23e43f783e9401df13a13e7b63
ardwareRenderer.java
3da2538aa18da2d457b54380c81aba1d992b60b2 07-Feb-2011 Eric Laurent <elaurent@google.com> am bdb23c26: am 2e96f15d: Merge "Fix issues 3425035 and 3423785." into honeycomb

* commit 'bdb23c26759089e29eb2f379e296bd006bc32b97':
Fix issues 3425035 and 3423785.
85cabc2eb367e8dcbe7445886bdd945e47d1bbfa 07-Feb-2011 Mike Cleron <mcleron@google.com> am 9cfa9c7a: am f6141980: Merge changes I46acd27a,I70b322e1 into honeycomb

* commit '9cfa9c7a3f5f23dec6ef4575407c1076d1b3c479':
aa is better than cc
Prevent ProgressBar from slowing down everything. bug #3422568
ced2c59678768116e2726f75fc433520e437085a 07-Feb-2011 Eric Laurent <elaurent@google.com> am a37a81d7: am e6955f8e: Merge "Issue 3371080: fix VolumePanel in mute state" into honeycomb

* commit 'a37a81d705bd9abaf1110fecd176a74d32ac2016':
Issue 3371080: fix VolumePanel in mute state
9edc5c056fa9999a8e1cd7dc7bbc449a252919ca 07-Feb-2011 Amith Yamasani <yamasani@google.com> am 9589ac6c: am 823fbbba: Merge "Expanded volume panel with sliders and mute buttons." into honeycomb

* commit '9589ac6c3f63a632e078adcc8ef742412af2014c':
Expanded volume panel with sliders and mute buttons.
40209532bff0f83cbbdf408bb3f6e8142e7b02cd 14-Jan-2011 Masanori Ogino <ogino.masanori@sharp.co.jp> Adjust mBiggerTouchSlopSquare to the suitable value

If the scaling factor is larger than 1.0 (i.e. 1.5),
then mTouchSlopSquare(576) is bigger than mBiggerTouchSlopSquare(400).
The double tap condition should be bigger than a single tap's one.
This causes the fail of the following CTS test cases in the device has
over 240 density.
- android.view.cts.GestureDetectorTest
* testOnTouchEvent
- android.view.cts.GestureDetector_SimpleOnGestureListenerTest
* testSimpleOnGestureListener
To fix this issue, I'll add a new public method
ViewConfiguration#getScaledLargeTouchSlop() then the value returned
from that method is used as a slop area of mLargeTouchSlop.

Change-Id: I0e61c13670e1300be1ccf45a89ef89410496fb48
estureDetector.java
iewConfiguration.java
bdb23c26759089e29eb2f379e296bd006bc32b97 04-Feb-2011 Eric Laurent <elaurent@google.com> am 2e96f15d: Merge "Fix issues 3425035 and 3423785." into honeycomb

* commit '2e96f15d8c6608c6bcb49c73fe13078a57245b28':
Fix issues 3425035 and 3423785.
402f7f29634a9f68e7929be828a927a3e2f5efe9 04-Feb-2011 Eric Laurent <elaurent@google.com> Fix issues 3425035 and 3423785.

- Make sure that STREAM_MUSIC is affected by ringer mode on non voice capable
devices whatever the saved settings say.

- Added a hidden method to AudioManager for VolumePanel to override
the stream selection logic while the panel is showing.

Change-Id: Ib2ff2a7af63decb4e29c45700c41e5058f79d877
olumePanel.java
9cfa9c7a3f5f23dec6ef4575407c1076d1b3c479 04-Feb-2011 Mike Cleron <mcleron@google.com> am f6141980: Merge changes I46acd27a,I70b322e1 into honeycomb

* commit 'f6141980c84f64618f083297bc37cfae7e0fca84':
aa is better than cc
Prevent ProgressBar from slowing down everything. bug #3422568
f6141980c84f64618f083297bc37cfae7e0fca84 04-Feb-2011 Mike Cleron <mcleron@google.com> Merge changes I46acd27a,I70b322e1 into honeycomb

* changes:
aa is better than cc
Prevent ProgressBar from slowing down everything. bug #3422568
a37a81d705bd9abaf1110fecd176a74d32ac2016 04-Feb-2011 Eric Laurent <elaurent@google.com> am e6955f8e: Merge "Issue 3371080: fix VolumePanel in mute state" into honeycomb

* commit 'e6955f8e38dfe7c0d748c3b55bbcfc5640c968c5':
Issue 3371080: fix VolumePanel in mute state
d72d51c77a43d75c098afb55c3939210739510f9 04-Feb-2011 Eric Laurent <elaurent@google.com> Issue 3371080: fix VolumePanel in mute state

VolumePanel must take stream mute state into account before displaying
the update stream volume.

Change-Id: I03a1697c25fca3fa56f892e3d426d00906abeb79
olumePanel.java
bb01f8a2d0656648cef6b4d665ad66b711f88157 04-Feb-2011 Michael Jurka <mikejurka@google.com> am d51e0820: am 8275c608: Merge "adding fast setters for translationx/y" into honeycomb

* commit 'd51e0820b3b7a71f2b3e0447bdf05188588c6003':
adding fast setters for translationx/y
8b113cf6d78bdb673e97400951b0829d722dba2b 04-Feb-2011 Romain Guy <romainguy@google.com> am cb2c84fd: am 3b66e43e: Merge "Refresh display lists when turning off layers rendering. Bug #3420565" into honeycomb

* commit 'cb2c84fd81a0891071e8ed0237927ad785751850':
Refresh display lists when turning off layers rendering. Bug #3420565
2f57ba56b3d4648476f0c00bd74fc4f6aa052810 04-Feb-2011 Romain Guy <romainguy@google.com> Prevent ProgressBar from slowing down everything.
bug #3422568

Change-Id: I70b322e140a8fdbe504c6984c54a22bcb7b753e7
iewGroup.java
b0905c998da7d4f7c8b7275ec0dcfa691d370e4e 04-Feb-2011 Romain Guy <romainguy@google.com> am 20bf23e5: am ac14db72: Merge "Fast transform properties setters. Bug #3413510" into honeycomb

* commit '20bf23e5e4172f5f80ce6c4cc16168355b107f0d':
Fast transform properties setters. Bug #3413510
9bd32c235dc0823f05eee824f37a2863bc80ff06 04-Feb-2011 Romain Guy <romainguy@google.com> am 109da7df: am 5bfd1aff: Merge "Allocate layers from the layers pool. Bug #3413433" into honeycomb

* commit '109da7dfd4c0766274b17467880ee673c731735c':
Allocate layers from the layers pool. Bug #3413433
9589ac6c3f63a632e078adcc8ef742412af2014c 04-Feb-2011 Amith Yamasani <yamasani@google.com> am 823fbbba: Merge "Expanded volume panel with sliders and mute buttons." into honeycomb

* commit '823fbbbab5856fa46f56c7acbdddaa50bf211d09':
Expanded volume panel with sliders and mute buttons.
2bbdd77ab20788e901a410f299edef028b66bb6e 03-Feb-2011 Amith Yamasani <yamasani@google.com> Expanded volume panel with sliders and mute buttons.

Bug: 3395734

Volume panel that can be expanded and can be used
to control different streams' volume and toggle
silent mode.

Shows the active stream's slider on top and the
remaining below. Touching outside dismisses the
dialog as well as a 3 second timeout.

Dialog fades out after timeout.

Change-Id: Ief258cc904bfd3d62f1291adba4a9cf442bcb006
olumePanel.java
d51e0820b3b7a71f2b3e0447bdf05188588c6003 03-Feb-2011 Michael Jurka <mikejurka@google.com> am 8275c608: Merge "adding fast setters for translationx/y" into honeycomb

* commit '8275c6087897e8fd614681d1cd12db62e6b9fcd5':
adding fast setters for translationx/y
8275c6087897e8fd614681d1cd12db62e6b9fcd5 03-Feb-2011 Michael Jurka <mikejurka@google.com> Merge "adding fast setters for translationx/y" into honeycomb
cb2c84fd81a0891071e8ed0237927ad785751850 03-Feb-2011 Romain Guy <romainguy@google.com> am 3b66e43e: Merge "Refresh display lists when turning off layers rendering. Bug #3420565" into honeycomb

* commit '3b66e43e8c5671c646ccc6d52b0f2dec13898c91':
Refresh display lists when turning off layers rendering. Bug #3420565
9d18f2d189aa2670d96462f2220ee7fd7950ebe5 03-Feb-2011 Romain Guy <romainguy@google.com> Refresh display lists when turning off layers rendering.
Bug #3420565

Change-Id: I2139540e591a97cd487e3d7cce6b70d6b23df9de
iewGroup.java
dece29ffd345c08f63f331e5766a5df906656798 03-Feb-2011 Michael Jurka <mikejurka@google.com> adding fast setters for translationx/y
iew.java
20bf23e5e4172f5f80ce6c4cc16168355b107f0d 03-Feb-2011 Romain Guy <romainguy@google.com> am ac14db72: Merge "Fast transform properties setters. Bug #3413510" into honeycomb

* commit 'ac14db72ca55110326f4ceb9ac34fddd360036f4':
Fast transform properties setters. Bug #3413510
da489796e5836b7db4cf3c925c40db449ac6e9ec 03-Feb-2011 Romain Guy <romainguy@google.com> Fast transform properties setters.
Bug #3413510

Change-Id: I2c83e219faff697a48a160fee627f87422a2cd08
iew.java
109da7dfd4c0766274b17467880ee673c731735c 03-Feb-2011 Romain Guy <romainguy@google.com> am 5bfd1aff: Merge "Allocate layers from the layers pool. Bug #3413433" into honeycomb

* commit '5bfd1afffe361958682bcb899b763ce35ec00c3a':
Allocate layers from the layers pool. Bug #3413433
09b7c91de73b59aa3f679b3ae3ba299f82ec9f8a 03-Feb-2011 Romain Guy <romainguy@google.com> Allocate layers from the layers pool.
Bug #3413433

This change will be beneficial to Launcher to avoid hiccups when
swiping pages of icons. When a layer is discarded, it is kept
in the layers pool instead of being destroyed right away. This
favors memory reuse over allocations.

Change-Id: Ifb6944ba83d6ceb67c331527c0827b26ce648eb1
LES20Layer.java
dcbcb680bc21059bf527f5c3c72373f26b2cd298 03-Feb-2011 Romain Guy <romainguy@google.com> am 44e3b0d0: am f44ed5ad: Merge "Don\'t clobber the local dirty rect after rendering a layer. Bug #3417254 Bug #3413433" into honeycomb

* commit '44e3b0d0344955d5ce1bbb0b329627e24b7dd468':
Don't clobber the local dirty rect after rendering a layer. Bug #3417254 Bug #3413433
44e3b0d0344955d5ce1bbb0b329627e24b7dd468 03-Feb-2011 Romain Guy <romainguy@google.com> am f44ed5ad: Merge "Don\'t clobber the local dirty rect after rendering a layer. Bug #3417254 Bug #3413433" into honeycomb

* commit 'f44ed5adc42fefa0c91fc79c5e3c20e1cdc7d697':
Don't clobber the local dirty rect after rendering a layer. Bug #3417254 Bug #3413433
62687ec12cb8e0b1d4044a235b1387b9a8c3b4b4 03-Feb-2011 Romain Guy <romainguy@google.com> Don't clobber the local dirty rect after rendering a layer.
Bug #3417254
Bug #3413433

Change-Id: I8045e9ec414ebe4ce4d38124142a00726d2c634d
ardwareRenderer.java
iew.java
44fbc03f651ce79b0726a6bb585567918a88e29c 02-Feb-2011 Romain Guy <romainguy@google.com> am 57188f0d: am c1f8bcff: Merge "Fix incorrect dirty rectangle transformation in hardware layers. Bug #3413433" into honeycomb

* commit '57188f0d1d7225991f8f5afb2740ed4cc878305b':
Fix incorrect dirty rectangle transformation in hardware layers. Bug #3413433
57188f0d1d7225991f8f5afb2740ed4cc878305b 02-Feb-2011 Romain Guy <romainguy@google.com> am c1f8bcff: Merge "Fix incorrect dirty rectangle transformation in hardware layers. Bug #3413433" into honeycomb

* commit 'c1f8bcffb8612ef5bdddc4bca6eca23804cbe453':
Fix incorrect dirty rectangle transformation in hardware layers. Bug #3413433
beff8d83ef062975459f149ad0c632a3797d78ce 02-Feb-2011 Romain Guy <romainguy@google.com> Fix incorrect dirty rectangle transformation in hardware layers.
Bug #3413433

Change-Id: Iba201c7c4b4f11937797f3afcbf20c5a7395be25
iewGroup.java
34cdf5bbb7d4d09e95cc6579a96c384284f99455 02-Feb-2011 Romain Guy <romainguy@google.com> am debeeef5: am d51eaa64: Merge "Update layers based on the dirty region. Bug #3413433" into honeycomb

* commit 'debeeef50408cf12f1041426e7438be266789a62':
Update layers based on the dirty region. Bug #3413433
debeeef50408cf12f1041426e7438be266789a62 02-Feb-2011 Romain Guy <romainguy@google.com> am d51eaa64: Merge "Update layers based on the dirty region. Bug #3413433" into honeycomb

* commit 'd51eaa64e3f2d9684b2dd18ebd67734f4e0e7801':
Update layers based on the dirty region. Bug #3413433
3a3133d876caf60ebff2176ad75c3dcf0259148d 02-Feb-2011 Romain Guy <romainguy@google.com> Update layers based on the dirty region.
Bug #3413433

This helps Launcher when a widget updates during a scroll, or when interacting
with widgets on the workspace if layers are still turned on.

Change-Id: Ic7a42eb34f74f4ae988039754f815e2efd1d1e4f
iew.java
iewGroup.java
4e96efe2edb73a8fbe4b89e85e03327da9796d80 02-Feb-2011 Romain Guy <romainguy@google.com> am a42ee699: am 518813ec: Merge "New API to let apps draw without layers. Bug #3413433" into honeycomb

* commit 'a42ee6994b59c02a745cb5d0f8ec257d01424753':
New API to let apps draw without layers. Bug #3413433
a42ee6994b59c02a745cb5d0f8ec257d01424753 02-Feb-2011 Romain Guy <romainguy@google.com> am 518813ec: Merge "New API to let apps draw without layers. Bug #3413433" into honeycomb

* commit '518813ec13153c7b02fb417720f353330e5d946e':
New API to let apps draw without layers. Bug #3413433
849d0a37cf2ca6c6a6c2d4d4456495e32e363120 02-Feb-2011 Romain Guy <romainguy@google.com> New API to let apps draw without layers.
Bug #3413433

Launcher now enables layers all the time, but in some cases (for instance, when the
workspace is not scrolling,) it is more efficient to draw without the layer.

Change-Id: I625fb5b48506acda9ae75356fdbbe812c85f2aab
iew.java
iewGroup.java
509e6cd89551d4222fab3dab9df190cc5e25666b 01-Feb-2011 Romain Guy <romainguy@google.com> am 1c531f4a: am f222956c: Merge "Correctly set the alpha of a hardware layer before drawing it. Bug #3410819" into honeycomb

* commit '1c531f4a44c9ea61e74dbe2ded1b8dca0f83f790':
Correctly set the alpha of a hardware layer before drawing it. Bug #3410819
1c531f4a44c9ea61e74dbe2ded1b8dca0f83f790 01-Feb-2011 Romain Guy <romainguy@google.com> am f222956c: Merge "Correctly set the alpha of a hardware layer before drawing it. Bug #3410819" into honeycomb

* commit 'f222956c955c97cf436c6f18b50bd0e57c89f381':
Correctly set the alpha of a hardware layer before drawing it. Bug #3410819
f222956c955c97cf436c6f18b50bd0e57c89f381 01-Feb-2011 Romain Guy <romainguy@google.com> Merge "Correctly set the alpha of a hardware layer before drawing it. Bug #3410819" into honeycomb
74c86d3e3a5206fef8d2e0ad1727bf903a76a638 01-Feb-2011 Chet Haase <chet@google.com> am 0a198c80: am 2cd52c80: Merge "Fix invalidation issue with actionbar items" into honeycomb

* commit '0a198c80765a0fbf52bdc84fddd11bc86c83ed51':
Fix invalidation issue with actionbar items
54229ee5eb92e3e2fc63d75353bcf09e0ebc8030 01-Feb-2011 Romain Guy <romainguy@google.com> Correctly set the alpha of a hardware layer before drawing it.
Bug #3410819

Change-Id: I3ebaca2233f4edf5b59d84ec7706555056a1a4b1
iewGroup.java
0a198c80765a0fbf52bdc84fddd11bc86c83ed51 01-Feb-2011 Chet Haase <chet@google.com> am 2cd52c80: Merge "Fix invalidation issue with actionbar items" into honeycomb

* commit '2cd52c809e52c042ad61067c93a4b5521eadd503':
Fix invalidation issue with actionbar items
2cd52c809e52c042ad61067c93a4b5521eadd503 01-Feb-2011 Chet Haase <chet@google.com> Merge "Fix invalidation issue with actionbar items" into honeycomb
f28595e47d7a2712df3e2d2e7b6591d1333add3b 01-Feb-2011 Chet Haase <chet@google.com> Fix invalidation issue with actionbar items

When a view hierarchy becomes VISIBLE, it is possible that the display
list of some of the subtrees needs to be recreated. In particular, if
the subtree was measured while it was GONE, then the children probably
didn't have a valid size. If a display list is created for any of the
subnodes in the tree during this time, then they may have clipped the
children out.

The fix is to force the parent to become INVALIDATED whenever a child
view's bounds change (and it is VISIBLE).

Change-Id: I3624253e65354289f4fb94c9ba76a7e6fb82af9a
iew.java
b4e28848e3244096fc1a7cff7f6a5ad688c96022 31-Jan-2011 Joe Onorato <joeo@google.com> am 19a02219: am fe6fd242: Merge "Mask out the non public bits, not the public ones." into honeycomb

* commit '19a022194d0e049759112a743835af323f4b05a1':
Mask out the non public bits, not the public ones.
19a022194d0e049759112a743835af323f4b05a1 31-Jan-2011 Joe Onorato <joeo@google.com> am fe6fd242: Merge "Mask out the non public bits, not the public ones." into honeycomb

* commit 'fe6fd242867022576a99fcd5fd6078fb7bab8451':
Mask out the non public bits, not the public ones.
6ab77bd5b3e613b064ebfa5780f21b79f81390a9 31-Jan-2011 Joe Onorato <joeo@google.com> Mask out the non public bits, not the public ones.

Bug: 3406103
Change-Id: I44b16700567cb2bf76efe9e8c1f9c82d0eaa8f10
iew.java
60d9d9cdba31e2d3483b33138d2e98ce8be4567b 31-Jan-2011 Joe Onorato <joeo@google.com> am 75057b15: am 4de68bae: Merge "Check for the STATUS_BAR permission for the system UI properties." into honeycomb

* commit '75057b1507881625368f76b2f401097b606bd530':
Check for the STATUS_BAR permission for the system UI properties.
75057b1507881625368f76b2f401097b606bd530 31-Jan-2011 Joe Onorato <joeo@google.com> am 4de68bae: Merge "Check for the STATUS_BAR permission for the system UI properties." into honeycomb

* commit '4de68baed4bf18b33dc38f89f25410d3d5edfecf':
Check for the STATUS_BAR permission for the system UI properties.
ac0ee89bd985c024870fefca9a3422c4585b62d4 31-Jan-2011 Joe Onorato <joeo@google.com> Check for the STATUS_BAR permission for the system UI properties.

If the app doesn't have that permission, just mask out the bits.
Also makes the systemUiVisibility field visible in hierarchyviewer.

Change-Id: Ic3d3a3aed96b5c6448832755b4b2e6175117e5be
iew.java
69aedbedfef2e2633076004000ae8931039ff7f5 30-Jan-2011 Joe Malin <jmalin@google.com> am f5002922: am 51990f9b: Merge "sdk doc change: Copy/Paste/Drag/Drop" into honeycomb

* commit 'f50029220664be6cc5b2b4c18377b0efa9fe6ca5':
sdk doc change: Copy/Paste/Drag/Drop
f50029220664be6cc5b2b4c18377b0efa9fe6ca5 30-Jan-2011 Joe Malin <jmalin@google.com> am 51990f9b: Merge "sdk doc change: Copy/Paste/Drag/Drop" into honeycomb

* commit '51990f9b0c7c0a22e1a3440c620ab97ebe4209c9':
sdk doc change: Copy/Paste/Drag/Drop
51990f9b0c7c0a22e1a3440c620ab97ebe4209c9 30-Jan-2011 Joe Malin <jmalin@google.com> Merge "sdk doc change: Copy/Paste/Drag/Drop" into honeycomb
9805d8e0818ea4e8ebddf20d40cf1856ecee6cc8 29-Jan-2011 Christopher Tate <ctate@google.com> Merge "Enable global (cross-application) drag/drop"
251602f410aaecc482a13d12984e67e3ddc1ef9c 29-Jan-2011 Christopher Tate <ctate@google.com> Enable global (cross-application) drag/drop

Also adds a new flag constant, View.DRAG_FLAG_GLOBAL, which indicates that
the drag operation should be allowed to propagate the drag outside the
originating app. When this flag is specified, all visible windows will
be notified about the ongoing drag.

Bug 3322724

Change-Id: Iaa3412a97f83f4e763019c9a03b5f09ebf75453f
iew.java
b6689044e917e8ec4de8972e646eb58f65406c1b 29-Jan-2011 Joe Onorato <joeo@google.com> am 9fecc19f: am 430dde3e: Merge "Don\'t force all views to be asking for lights out just because somebody did." into honeycomb

* commit '9fecc19f97453cc3ef258100f3a8e323011a7e80':
Don't force all views to be asking for lights out just because somebody did.
9fecc19f97453cc3ef258100f3a8e323011a7e80 29-Jan-2011 Joe Onorato <joeo@google.com> am 430dde3e: Merge "Don\'t force all views to be asking for lights out just because somebody did." into honeycomb

* commit '430dde3ef3b9b82bfca4ae51e225c6ad88aee514':
Don't force all views to be asking for lights out just because somebody did.
957a189bf2b28b063d7268e38b6cdae3304f1ea7 29-Jan-2011 Joe Onorato <joeo@google.com> Don't force all views to be asking for lights out just because somebody did.

Bug: 3396308
Bug: 3395422
Change-Id: Ic97a689bda12d3b53a6ecace504d411f2beb87d5
iew.java
98bf25269de0a8dc62c3d816b9d64fd36a1535e4 29-Jan-2011 Glenn Kasten <gkasten@google.com> Merge "Protected surface API"
489c8960b66387fb043350310e5b53554cff4c1f 28-Jan-2011 Romain Guy <romainguy@google.com> am 571a2c97: am b0c939ad: Merge "Prevent crash when detaching a SurfaceView. Bug #3400461" into honeycomb

* commit '571a2c971b9691f3ace247bf2110efccc782f3ba':
Prevent crash when detaching a SurfaceView. Bug #3400461
571a2c971b9691f3ace247bf2110efccc782f3ba 28-Jan-2011 Romain Guy <romainguy@google.com> am b0c939ad: Merge "Prevent crash when detaching a SurfaceView. Bug #3400461" into honeycomb

* commit 'b0c939adfa339c5cbb7f458072119269368b3ba5':
Prevent crash when detaching a SurfaceView. Bug #3400461
b0c939adfa339c5cbb7f458072119269368b3ba5 28-Jan-2011 Romain Guy <romainguy@google.com> Merge "Prevent crash when detaching a SurfaceView. Bug #3400461" into honeycomb
bafa3a31f58a52d49883db43167e28c16af1fc61 28-Jan-2011 Joe Onorato <joeo@google.com> am d6874a10: am cfd0bafd: Merge changes Iaa7bc042,Icc312fc9,I50ba06ed into honeycomb

* commit 'd6874a105ee584b1dc60aae2f2af7c78ee875114':
Make keyguard also ask to turn the back button off, now that it is controlled separately.
Allow independent control of the back and the other navigation buttons.
Allow the status bar disable flags to be used as View's system ui visibility fields.
8b16ebd0e80d5cc695d9a5567359a6c5dd9ac884 28-Jan-2011 Joe Onorato <joeo@google.com> am b940659f: am 94eb3d0f: Merge "Plumb whether an input view is actually visible or not through from the IME to the status bar." into honeycomb

* commit 'b940659f415d536966f1bb8af4d5281efa3a7f7a':
Plumb whether an input view is actually visible or not through from the IME to the status bar.
d6874a105ee584b1dc60aae2f2af7c78ee875114 28-Jan-2011 Joe Onorato <joeo@google.com> am cfd0bafd: Merge changes Iaa7bc042,Icc312fc9,I50ba06ed into honeycomb

* commit 'cfd0bafdebf1fccd3f5a0baed5cad8a539546e9b':
Make keyguard also ask to turn the back button off, now that it is controlled separately.
Allow independent control of the back and the other navigation buttons.
Allow the status bar disable flags to be used as View's system ui visibility fields.
b940659f415d536966f1bb8af4d5281efa3a7f7a 28-Jan-2011 Joe Onorato <joeo@google.com> am 94eb3d0f: Merge "Plumb whether an input view is actually visible or not through from the IME to the status bar." into honeycomb

* commit '94eb3d0f7e77eb94c9fee8523c013fbc0f9032c4':
Plumb whether an input view is actually visible or not through from the IME to the status bar.
cfd0bafdebf1fccd3f5a0baed5cad8a539546e9b 28-Jan-2011 Joe Onorato <joeo@google.com> Merge changes Iaa7bc042,Icc312fc9,I50ba06ed into honeycomb

* changes:
Make keyguard also ask to turn the back button off, now that it is controlled separately.
Allow independent control of the back and the other navigation buttons.
Allow the status bar disable flags to be used as View's system ui visibility fields.
94eb3d0f7e77eb94c9fee8523c013fbc0f9032c4 28-Jan-2011 Joe Onorato <joeo@google.com> Merge "Plumb whether an input view is actually visible or not through from the IME to the status bar." into honeycomb
f2a8b3c450f0570c1ad0ee6e0fae3cfb85bfb4de 28-Jan-2011 Dianne Hackborn <hackbod@google.com> am 8691b724: am 10e4148b: Merge "Fix issue #3291173: Problem report for NewsRoom - RSS News Reader" into honeycomb

* commit '8691b7243d40d5ef0ab94b8d5f204635d36bf1c4':
Fix issue #3291173: Problem report for NewsRoom - RSS News Reader
8691b7243d40d5ef0ab94b8d5f204635d36bf1c4 28-Jan-2011 Dianne Hackborn <hackbod@google.com> am 10e4148b: Merge "Fix issue #3291173: Problem report for NewsRoom - RSS News Reader" into honeycomb

* commit '10e4148b62c9bfed945c1bcea9dd5eea2a17b0d0':
Fix issue #3291173: Problem report for NewsRoom - RSS News Reader
420829ef78c5d86e470fc445279c7c10be6b5dbe 28-Jan-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3291173: Problem report for NewsRoom - RSS News Reader

The framework had started using the LayoutInflator's factory
for itself, which breaks apps that want to use it. Add a hack for
the framework to insert its own private factory.

Also fix a deadlock in the system process.

Change-Id: Iaf80186a5d7e4029faf89e968e184abdaabe514a
ayoutInflater.java
01d5edc49ae8995aabffe1a30bfd966faaf70bd6 28-Jan-2011 Romain Guy <romainguy@google.com> Prevent crash when detaching a SurfaceView.
Bug #3400461

Change-Id: I837d9d47b12bc5a8798b6dbb720de43b7539c3bc
urfaceView.java
iew.java
d6f5bde96b2fe82bc7e5d4e64266d585108c4648 20-Jan-2011 Glenn Kasten <gkasten@google.com> Protected surface API

To be used by DRM framework, implemented by display HAL

Change-Id: I054a07a94f4d5dbe792f3a597e2e49a100d90eb2
urface.java
indowManager.java
75afc6bfe27bffce1e75dd7107f410754cddbeb7 28-Jan-2011 Dianne Hackborn <hackbod@google.com> am f1a9ab26: am d23316bc: Merge "Maybe fix issue #3358322: Status and nav bar died while watching youtube" into honeycomb

* commit 'f1a9ab2673a2b5e6f684f7ceced177e3fc749ee7':
Maybe fix issue #3358322: Status and nav bar died while watching youtube
f1a9ab2673a2b5e6f684f7ceced177e3fc749ee7 28-Jan-2011 Dianne Hackborn <hackbod@google.com> am d23316bc: Merge "Maybe fix issue #3358322: Status and nav bar died while watching youtube" into honeycomb

* commit 'd23316bc8b49f269e5adcc91eae5698549faa0a3':
Maybe fix issue #3358322: Status and nav bar died while watching youtube
d23316bc8b49f269e5adcc91eae5698549faa0a3 28-Jan-2011 Dianne Hackborn <hackbod@google.com> Merge "Maybe fix issue #3358322: Status and nav bar died while watching youtube" into honeycomb
6478adc6b4c35f8c56176582bcde029998e7436f 28-Jan-2011 Joe Onorato <joeo@google.com> Allow independent control of the back and the other navigation buttons.

Bug: 3363046
Change-Id: Icc312fc9ffbf2f584dc541489c9769b07ed50315
iew.java
7bb8eeb90cf55f409a282c1f36ca08aa48c10543 28-Jan-2011 Joe Onorato <joeo@google.com> Allow the status bar disable flags to be used as View's system ui visibility fields.

Bug: 3363046
Change-Id: I50ba06ed9a4d2f5d0e0c807437aea9900f44fee9
iew.java
857fd9b8562c29913e03ed29288bd1802d37dc60 28-Jan-2011 Joe Onorato <joeo@google.com> Plumb whether an input view is actually visible or not through from the IME
to the status bar.

Bug: 3391067
Change-Id: I049531155bf7ee0b29874916c0b5b0a45b73c09e
nputmethod/InputMethodManager.java
ed383e4d24427aa0a639083cc7079d01a82c0709 28-Jan-2011 Adam Powell <adamp@google.com> am 599814f1: am f95e8c5b: Merge "Fix bug 3400213 - MenuItem ignores String spannable colors" into honeycomb

* commit '599814f16c6f25495cf05146e2760bf0ca46455d':
Fix bug 3400213 - MenuItem ignores String spannable colors
599814f16c6f25495cf05146e2760bf0ca46455d 28-Jan-2011 Adam Powell <adamp@google.com> am f95e8c5b: Merge "Fix bug 3400213 - MenuItem ignores String spannable colors" into honeycomb

* commit 'f95e8c5bb24b3e2ea217fb140077526bde5d6dcc':
Fix bug 3400213 - MenuItem ignores String spannable colors
f95e8c5bb24b3e2ea217fb140077526bde5d6dcc 28-Jan-2011 Adam Powell <adamp@google.com> Merge "Fix bug 3400213 - MenuItem ignores String spannable colors" into honeycomb
83a6f450bde23e1bfd07ee1c218dab35053dec76 28-Jan-2011 Dianne Hackborn <hackbod@google.com> Maybe fix issue #3358322: Status and nav bar died while watching youtube

Or at least make it better. Now if we get a failure locking the surface,
we mark to do a full relayout pass later to try to get a new good surface.

Also fix some bugs in how activity manager was classifying processes for
their OOM adjustment to make better choices in what to kill.

Change-Id: I8e4aa86744211ba7693f9828291d8bbf2698274f
iewRoot.java
6650185caed9d08162764ed9278095e602c7ab95 28-Jan-2011 Adam Powell <adamp@google.com> Fix bug 3400213 - MenuItem ignores String spannable colors

Make MenuInflater preserve spannable strings.

Change-Id: I1e01827def3a87ea7814078df53debcc35f245d2
enuInflater.java
4d7b10630a5192bfe84181a83c70c38ef0655b5f 28-Jan-2011 Adam Powell <adamp@google.com> am e3ba5cfe: am d1f94e36: Merge "Fix bug 3399725 - externally reported issue 14317: android:scrollbarSize attribute does not work in ScrollView tag" into honeycomb

* commit 'e3ba5cfe9b4f524d955f77f5fff53440d80f9464':
Fix bug 3399725 - externally reported issue 14317: android:scrollbarSize attribute does not work in ScrollView tag
e3ba5cfe9b4f524d955f77f5fff53440d80f9464 28-Jan-2011 Adam Powell <adamp@google.com> am d1f94e36: Merge "Fix bug 3399725 - externally reported issue 14317: android:scrollbarSize attribute does not work in ScrollView tag" into honeycomb

* commit 'd1f94e36da6276acc00d0a3267a505fd6a61702d':
Fix bug 3399725 - externally reported issue 14317: android:scrollbarSize attribute does not work in ScrollView tag
d1f94e36da6276acc00d0a3267a505fd6a61702d 28-Jan-2011 Adam Powell <adamp@google.com> Merge "Fix bug 3399725 - externally reported issue 14317: android:scrollbarSize attribute does not work in ScrollView tag" into honeycomb
e90a8b06b771881e08d04436d664417a865867f1 28-Jan-2011 Romain Guy <romainguy@google.com> am 01a58129: am 0250bc2f: Merge "Catch exception when ViewRoot\'s surface is not valid. Bug #3399426" into honeycomb

* commit '01a5812902668d0dbba51cd0efe22bfba3711230':
Catch exception when ViewRoot's surface is not valid. Bug #3399426
01a5812902668d0dbba51cd0efe22bfba3711230 28-Jan-2011 Romain Guy <romainguy@google.com> am 0250bc2f: Merge "Catch exception when ViewRoot\'s surface is not valid. Bug #3399426" into honeycomb

* commit '0250bc2faca14a332155b9111e0ee5dfc8493d6a':
Catch exception when ViewRoot's surface is not valid. Bug #3399426
fea12b87f2988f20ea87314c4a1b47e1a0f4d95e 28-Jan-2011 Romain Guy <romainguy@google.com> Catch exception when ViewRoot's surface is not valid.
Bug #3399426

Change-Id: Id4e0b8714c9520c4e84e81c2978752d46c912b6b
iewRoot.java
38d1f2530829ae14d5ee9bf7871cb359dbf03f89 28-Jan-2011 Chet Haase <chet@google.com> am 19312cfe: am 246bf85a: Merge "Fix NPE with display lists when view not attached" into honeycomb

* commit '19312cfef15608fca2c8403dc240e8ec4f54d6b7':
Fix NPE with display lists when view not attached
19312cfef15608fca2c8403dc240e8ec4f54d6b7 28-Jan-2011 Chet Haase <chet@google.com> am 246bf85a: Merge "Fix NPE with display lists when view not attached" into honeycomb

* commit '246bf85aaacbadf4e892270d714efcdb280a3de8':
Fix NPE with display lists when view not attached
3ba6774263db28bdfaa88bfdc4f2dfb37d6ce26a 27-Jan-2011 Adam Powell <adamp@google.com> Fix bug 3399725 - externally reported issue 14317:
android:scrollbarSize attribute does not work in ScrollView tag

Change-Id: Ic2cc908936991f473ccfc60d9c2711edfd45c132
iew.java
32736f085b74c4dcc9da61212ccbd6fe2de193a7 20-Jan-2011 Joe Malin <jmalin@google.com> sdk doc change: Copy/Paste/Drag/Drop

Change-Id: Ifb9ed554ae1a72ce6badff1c79d95c02f30525e9
ragEvent.java
iew.java
f4ac547f868db7c8a358e1f6e3d8fcebb02dbd49 27-Jan-2011 Chet Haase <chet@google.com> Fix NPE with display lists when view not attached

There was logic in ViewGroup that assumed that an accelerated
view must always be able to get a display list for any child
that it was drawing. One situation occurred, however, that
caused a problem with this - a contacts activity was started
and not yet attached, but was being asked to render into an
accelerated canvas. We assumed that the child would have a display
list and simply called getDisplayList(). But since that call
returned null, we later deref'd the null object.

The fix is to check whether a child can have a display list
instead of assuming that it can just because the container view
is accelerated.

Change-Id: I7de62fd597ad50720c9585d621bec02e77c171df
iew.java
iewGroup.java
75b8c858ab43375092da06658b6046a007eb85ef 27-Jan-2011 Chet Haase <chet@google.com> am cd88c39b: am e38ba4ac: Fix gmail crossfade artifacts.

* commit 'cd88c39b989fc927016aa8d1c3794b872519d575':
Fix gmail crossfade artifacts.
cd88c39b989fc927016aa8d1c3794b872519d575 27-Jan-2011 Chet Haase <chet@google.com> am e38ba4ac: Fix gmail crossfade artifacts.

* commit 'e38ba4acbe6f1536997ffb98d662fc3eff07add8':
Fix gmail crossfade artifacts.
e38ba4acbe6f1536997ffb98d662fc3eff07add8 27-Jan-2011 Chet Haase <chet@google.com> Fix gmail crossfade artifacts.

Display lists could not handle custom views that did their
own draw dispatching, as is the case with gmail. This fix makes that
possible and display lists handle this case robustly. Now the
crossfade works because the display lists contain the right content.

Change-Id: Iea7d6e99239b24f833701d546fe083aa00e2b31b
iewGroup.java
82782446cd0ea26604fcbd22d4b7e3608f32136d 27-Jan-2011 Chet Haase <chet@google.com> am fcf51a67: am a45c056e: Merge "Fix display List bugs" into honeycomb

* commit 'fcf51a67967a402bf2178c3d0e09828e8942cade':
Fix display List bugs
fcf51a67967a402bf2178c3d0e09828e8942cade 27-Jan-2011 Chet Haase <chet@google.com> am a45c056e: Merge "Fix display List bugs" into honeycomb

* commit 'a45c056e62be0ca97edbdd6f6660822cf453c886':
Fix display List bugs
a45c056e62be0ca97edbdd6f6660822cf453c886 27-Jan-2011 Chet Haase <chet@google.com> Merge "Fix display List bugs" into honeycomb
a1eb2ff008ce1b7d9d7039718a8295113abcb81a 27-Jan-2011 Romain Guy <romainguy@google.com> am 38f34ed2: am 7c53a0d6: Merge "Don\'t draw the same triangles several times. Bug #3388197" into honeycomb

* commit '38f34ed20a52d027cbf1b72fe22c6d616810613b':
Don't draw the same triangles several times. Bug #3388197
38f34ed20a52d027cbf1b72fe22c6d616810613b 27-Jan-2011 Romain Guy <romainguy@google.com> am 7c53a0d6: Merge "Don\'t draw the same triangles several times. Bug #3388197" into honeycomb

* commit '7c53a0d6078620df3abc4997acfe267ef903f5c6':
Don't draw the same triangles several times. Bug #3388197
678e0adbdbac5fa3f25ca8371fdff1b3182f67e9 25-Jan-2011 Chet Haase <chet@google.com> Fix display List bugs

Various property setters in View need to invalidate the parent's
cache to get redrawn properly when accelerated with display lists.

Also, fix logic around display lists and old-style Animations in
ViewGroup.

Change-Id: I70e1c2fa49e62228ee4a1301a006ce50bda4c305
iew.java
iewGroup.java
4f09f5417b5c14fd31336dacfff86972e7885a03 27-Jan-2011 Romain Guy <romainguy@google.com> Don't draw the same triangles several times.
Bug #3388197

Change-Id: Ief1dfd9447f144e9992340a173d2893e5e049129
iew.java
166f26e2c2378decaf023a4c829b03034a65d160 27-Jan-2011 Dianne Hackborn <hackbod@google.com> am f35d43f9: am 2dc9c784: Merge "Fix issue #3382992: IME close animation stutters from URL bar" into honeycomb

* commit 'f35d43f90b9e4553343a59b217430aaba91b0d1f':
Fix issue #3382992: IME close animation stutters from URL bar
3a6b7be25d8158c471034029de138ce0ee8844a3 27-Jan-2011 Romain Guy <romainguy@google.com> am 0d8f88b2: am ede54ce2: Merge "Fix crash in movie studio." into honeycomb

* commit '0d8f88b272f80f2a3594d2d988faabed4e540631':
Fix crash in movie studio.
b5fb99ff4d2022966073166e5ed026f3b55faf6d 27-Jan-2011 Romain Guy <romainguy@google.com> am 0518e7b5: am 9c8307fb: Merge "Make sure that we update SurfaceView\'s window with display lists. Bug #3395487" into honeycomb

* commit '0518e7b5bddfdeb010591c736fb080009a99cd14':
Make sure that we update SurfaceView's window with display lists. Bug #3395487
f35d43f90b9e4553343a59b217430aaba91b0d1f 27-Jan-2011 Dianne Hackborn <hackbod@google.com> am 2dc9c784: Merge "Fix issue #3382992: IME close animation stutters from URL bar" into honeycomb

* commit '2dc9c784b2fab67a8233318f559e65f444bf0c97':
Fix issue #3382992: IME close animation stutters from URL bar
2dc9c784b2fab67a8233318f559e65f444bf0c97 27-Jan-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #3382992: IME close animation stutters from URL bar" into honeycomb
63042d6a0347017fcc4cd98560ca3407044c165c 27-Jan-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3382992: IME close animation stutters from URL bar

Gross hack is grosser.

Change-Id: I0a34bf1d7c16c547402318f24776a5f7e8b7552b
iew.java
iewRoot.java
0d8f88b272f80f2a3594d2d988faabed4e540631 27-Jan-2011 Romain Guy <romainguy@google.com> am ede54ce2: Merge "Fix crash in movie studio." into honeycomb

* commit 'ede54ce2fe3252d4ab56b90de464b35a6920970d':
Fix crash in movie studio.
0c75622cf80e53c13d079bfe1f3df0b185c4f02d 27-Jan-2011 Romain Guy <romainguy@google.com> Fix crash in movie studio.

Change-Id: I06acb0b39cc3839cf7abb58b32dec9b9bec424d6
urfaceView.java
0518e7b5bddfdeb010591c736fb080009a99cd14 27-Jan-2011 Romain Guy <romainguy@google.com> am 9c8307fb: Merge "Make sure that we update SurfaceView\'s window with display lists. Bug #3395487" into honeycomb

* commit '9c8307fb19558ffe2e897bad009fb038bb9e845b':
Make sure that we update SurfaceView's window with display lists. Bug #3395487
f2499fa434521a8948387afe8f0acd4f39620500 27-Jan-2011 Romain Guy <romainguy@google.com> Make sure that we update SurfaceView's window with display lists.
Bug #3395487

Change-Id: Idaef3953a596ee3b4049a2d8aef6dda676b1545b
urfaceView.java
c02a1cc1b148e1d57b6d2f91e23720c308ed5afb 27-Jan-2011 Romain Guy <romainguy@google.com> am 62bea428: am 9e7c2c6d: Merge "Optimize invalidate() calls." into honeycomb

* commit '62bea4287dafc88b640d7e3fc8a433ddd858a5b8':
Optimize invalidate() calls.
62bea4287dafc88b640d7e3fc8a433ddd858a5b8 27-Jan-2011 Romain Guy <romainguy@google.com> am 9e7c2c6d: Merge "Optimize invalidate() calls." into honeycomb

* commit '9e7c2c6ded1144122915cfb8bd663e789c7eb93b':
Optimize invalidate() calls.
9e7c2c6ded1144122915cfb8bd663e789c7eb93b 27-Jan-2011 Romain Guy <romainguy@google.com> Merge "Optimize invalidate() calls." into honeycomb
0fd89bf7221431260883cee4597e2db942d799a0 27-Jan-2011 Romain Guy <romainguy@google.com> Optimize invalidate() calls.

Change-Id: I09d99290ca74f96046702bc2604f125a1276ce05
iew.java
cf5afe9299f6a8b7d76935d8efabe36c2423cc27 26-Jan-2011 Romain Guy <romainguy@google.com> am 08cdf6fd: am 940df6dd: Merge "Remove unused API" into honeycomb

* commit '08cdf6fd9ac9bbbd77024518c45034d66b5830c6':
Remove unused API
2b1847ea60650a9f68372abe860415f18b55081d 26-Jan-2011 Romain Guy <romainguy@google.com> Remove unused API

Change-Id: I1714fd82a64b752f0350ef4ef9179ce19e089c6a
LES20Canvas.java
08cdf6fd9ac9bbbd77024518c45034d66b5830c6 26-Jan-2011 Romain Guy <romainguy@google.com> am 940df6dd: Merge "Remove unused API" into honeycomb

* commit '940df6dd83624e5f46b147837d848853a1dab9b2':
Remove unused API
940df6dd83624e5f46b147837d848853a1dab9b2 26-Jan-2011 Romain Guy <romainguy@google.com> Merge "Remove unused API" into honeycomb
b648c60854e74ffda4caefa26b9e1d3f6cdbf13f 26-Jan-2011 Joe Onorato <joeo@google.com> am a4a5ec5e: am 1aadb210: Merge changes I48392c75,Id09437a4,I4a0aa878 into honeycomb

* commit 'a4a5ec5e748f99c40301c9c422b3d36cb44c6081':
Expose the window flags for lights out mode.
Make TabletStatusBar call into StatusBarManagerService when it goes out of lights out mode on its own.
Make FLAG_FULLSCREEN not go into lights out mode anymore.
a4a5ec5e748f99c40301c9c422b3d36cb44c6081 26-Jan-2011 Joe Onorato <joeo@google.com> am 1aadb210: Merge changes I48392c75,Id09437a4,I4a0aa878 into honeycomb

* commit '1aadb2108d7614d9d1ff61b41c6c31cb8d211ab9':
Expose the window flags for lights out mode.
Make TabletStatusBar call into StatusBarManagerService when it goes out of lights out mode on its own.
Make FLAG_FULLSCREEN not go into lights out mode anymore.
1aadb2108d7614d9d1ff61b41c6c31cb8d211ab9 26-Jan-2011 Joe Onorato <joeo@google.com> Merge changes I48392c75,Id09437a4,I4a0aa878 into honeycomb

* changes:
Expose the window flags for lights out mode.
Make TabletStatusBar call into StatusBarManagerService when it goes out of lights out mode on its own.
Make FLAG_FULLSCREEN not go into lights out mode anymore.
f5240cddbd5732c3929f7cd298666eb9bc999a8f 26-Jan-2011 Romain Guy <romainguy@google.com> am 7c55da5d: am f5b27e35: Merge "Fix NPE in YouTube. Bug #3385339" into honeycomb

* commit '7c55da5db50400400efbcd53a5cdc1a79c04cc63':
Fix NPE in YouTube. Bug #3385339
7c55da5db50400400efbcd53a5cdc1a79c04cc63 26-Jan-2011 Romain Guy <romainguy@google.com> am f5b27e35: Merge "Fix NPE in YouTube. Bug #3385339" into honeycomb

* commit 'f5b27e35c1e0e46ffd882606d0783875e1a1ff7b':
Fix NPE in YouTube. Bug #3385339
d30b36d3cdccc7854dedf5e3c020d2f4a8afa7b8 26-Jan-2011 Romain Guy <romainguy@google.com> Fix NPE in YouTube.
Bug #3385339

Change-Id: Id7b307994e343cdb808161a7fae590536f04252e
iew.java
f5b27e35c1e0e46ffd882606d0783875e1a1ff7b 26-Jan-2011 Romain Guy <romainguy@google.com> Merge "Fix NPE in YouTube. Bug #3385339" into honeycomb
14782f705e94d4e563a48efc85fd25129fd38a7d 26-Jan-2011 Joe Onorato <joeo@google.com> Expose the window flags for lights out mode.

I hadn't wanted to do this, but it makes porting the FLAG_FULLSCREEN
stuff over to this simpler because you don't have to go find a view
to proxy through.

This change also clears the flag everywhere when the window manager
notifies the views that the change has come back.

Change-Id: I48392c7550925bcca50c5bb9e1f263e99de6c7bc
iew.java
iewRoot.java
indowManager.java
e29131cac364d38e6ee598d190027a1b9bdda01d 26-Jan-2011 Chet Haase <chet@google.com> am b69e985b: am ace9233b: Merge "Fix invalidation problem with display lists" into honeycomb

* commit 'b69e985b9aa059d6cf7498a2350d3f814b4cf711':
Fix invalidation problem with display lists
b69e985b9aa059d6cf7498a2350d3f814b4cf711 26-Jan-2011 Chet Haase <chet@google.com> am ace9233b: Merge "Fix invalidation problem with display lists" into honeycomb

* commit 'ace9233b11e9be0d894fcf36cdee4c6b0a20d3bd':
Fix invalidation problem with display lists
ace9233b11e9be0d894fcf36cdee4c6b0a20d3bd 26-Jan-2011 Chet Haase <chet@google.com> Merge "Fix invalidation problem with display lists" into honeycomb
77785f9d257f663087a8c27957f506b9f7aa24c2 26-Jan-2011 Chet Haase <chet@google.com> Fix invalidation problem with display lists

It was previously the case that a view marked ~DRAWN must be
invalidated correctly already, so we would not mark any flags.
Display lists added new logic such that an undrawn node must still
be checked to see if its cache has been marked invalid. If not,
we must mark it invalid to make sure that a future rendering call
will cause the view to refresh its display list, thus refreshing its
child node tree's display lists, since that's where the invalidate
call must have originated.

Change-Id: I0f73c85459174c0e3f16d703f7eb914a706c808a
iew.java
iewGroup.java
e9a7d0dfb94726b8d742093fae031a7f91cc1f8c 26-Jan-2011 Romain Guy <romainguy@google.com> am 5742a277: am b6110a1e: Merge "Make sure the opaque bitmap is opaque. GL doesn\'t like being lied to. Bug #3382992" into honeycomb

* commit '5742a2771025fc40f00777b5b4aa02765317f5f9':
Make sure the opaque bitmap is opaque. GL doesn't like being lied to. Bug #3382992
5742a2771025fc40f00777b5b4aa02765317f5f9 26-Jan-2011 Romain Guy <romainguy@google.com> am b6110a1e: Merge "Make sure the opaque bitmap is opaque. GL doesn\'t like being lied to. Bug #3382992" into honeycomb

* commit 'b6110a1ef41337a5f3042c7e08b63274cee4faf6':
Make sure the opaque bitmap is opaque. GL doesn't like being lied to. Bug #3382992
f90f8171e6acb56f9f87093c01fd586f2140697a 26-Jan-2011 Romain Guy <romainguy@google.com> Make sure the opaque bitmap is opaque. GL doesn't like being lied to.
Bug #3382992

The result still looks wrong but it works as designed, unfortunately.

Change-Id: I6108e199fa336cb01faaabf6c75faa3b71c2339b
iewRoot.java
fbe446d7f2b9679f356d7a1d2e4a0ceab515ba76 26-Jan-2011 Jeff Brown <jeffbrown@google.com> am 391ef42c: am 3168a137: Merge "Fix surface frame size reporting." into honeycomb

* commit '391ef42c92ab97e5c22a720973790696d30576ca':
Fix surface frame size reporting.
391ef42c92ab97e5c22a720973790696d30576ca 25-Jan-2011 Jeff Brown <jeffbrown@google.com> am 3168a137: Merge "Fix surface frame size reporting." into honeycomb

* commit '3168a13723ff0f3f87937457fe33c3518caa4bb9':
Fix surface frame size reporting.
3168a13723ff0f3f87937457fe33c3518caa4bb9 25-Jan-2011 Jeff Brown <jeffbrown@google.com> Merge "Fix surface frame size reporting." into honeycomb
402ede322d2d9bcb1675dacb6106624a2db36568 25-Jan-2011 Romain Guy <romainguy@google.com> am 535602fe: am 3ac1b0f0: Merge "Prevent crash in View when gathering attributes without an AttachInfo. Bug #3385339" into honeycomb

* commit '535602fe5572e2a648251faf01b4dcd3649d5ede':
Prevent crash in View when gathering attributes without an AttachInfo. Bug #3385339
535602fe5572e2a648251faf01b4dcd3649d5ede 25-Jan-2011 Romain Guy <romainguy@google.com> am 3ac1b0f0: Merge "Prevent crash in View when gathering attributes without an AttachInfo. Bug #3385339" into honeycomb

* commit '3ac1b0f0d4d78568faf7616b2a8b808bdf5c4882':
Prevent crash in View when gathering attributes without an AttachInfo. Bug #3385339
3ac1b0f0d4d78568faf7616b2a8b808bdf5c4882 25-Jan-2011 Romain Guy <romainguy@google.com> Merge "Prevent crash in View when gathering attributes without an AttachInfo. Bug #3385339" into honeycomb
bfdb926d83056538796aed53a80d9cabb16dffdc 25-Jan-2011 Gilles Debunne <debunne@google.com> am a5b43a04: am c927ec50: Merge "Overscoll bounce amplitude is smaller." into honeycomb

* commit 'a5b43a04921711da8fa09b4f30ff5977f8222954':
Overscoll bounce amplitude is smaller.
a5b43a04921711da8fa09b4f30ff5977f8222954 25-Jan-2011 Gilles Debunne <debunne@google.com> am c927ec50: Merge "Overscoll bounce amplitude is smaller." into honeycomb

* commit 'c927ec50497bf5f477663deb7b366b37185d46b0':
Overscoll bounce amplitude is smaller.
c927ec50497bf5f477663deb7b366b37185d46b0 25-Jan-2011 Gilles Debunne <debunne@google.com> Merge "Overscoll bounce amplitude is smaller." into honeycomb
30bc34f191ca8a009af313fc751e5b4bff6e39a1 25-Jan-2011 Jeff Brown <jeffbrown@google.com> Fix surface frame size reporting.

The SurfaceHolder provided by the wallpaper service was not reporting
the correct size in getSurfaceFrame(). This broke an optimization in
the ImageWallpaper. The old code happened to work because calling
lockCanvas on the SurfaceHolder with a null dirty rectangle happened
to have the side-effect of updating the SurfaceHolder's surface frame
size field because it passed mSurfaceFrame as the dirty rect, causing
mSurfaceFrame to be set to the size of the region to be drawn.

However, relying on this side-effect is wrong. Among other things,
the dirty region could actually be smaller than the surface frame.

This patch fixes WallpaperService, SurfaceView and ViewRoot to ensure
that the surface frame size is always set explicitly and is not modified
by calls to lockCanvas.

Change-Id: I10948f5ec269409ceaf0f7d32b3f6731e9499ebc
urfaceView.java
iewRoot.java
6e81e57b526a3e23038e365414acbb9688f8e44a 25-Jan-2011 Romain Guy <romainguy@google.com> Prevent crash in View when gathering attributes without an AttachInfo.
Bug #3385339

Change-Id: I06b6f03721b52ab0b9d13c2fb3e133ae25d99970
iewRoot.java
8ce7aab79e711ff5de54985aeffb1a205b7f9942 25-Jan-2011 Gilles Debunne <debunne@google.com> Overscoll bounce amplitude is smaller.

Per Dan's request for poor behavior on low speed Overscrolls.

Change-Id: I184133df5e6cc68d8d9bf39edb62d42e13d27a90
iewConfiguration.java
335f1513d7644a62e8d1a5b47befd950371d4665 25-Jan-2011 Romain Guy <romainguy@google.com> am b372d7cb: am 89fca351: Merge "Make nested hardware layers work again" into honeycomb

* commit 'b372d7cbea0b80cda3c7b08dcaddbd5c398911b2':
Make nested hardware layers work again
b372d7cbea0b80cda3c7b08dcaddbd5c398911b2 25-Jan-2011 Romain Guy <romainguy@google.com> am 89fca351: Merge "Make nested hardware layers work again" into honeycomb

* commit '89fca351702e3ec54c2748e2e2676ec1b2fbe9dc':
Make nested hardware layers work again
5e7f766e99c679110fa95501728bb81a8e396e58 25-Jan-2011 Romain Guy <romainguy@google.com> Make nested hardware layers work again

Change-Id: I97bde694ec1b712a1e010c8137919e6d64af3148
iew.java
iewGroup.java
caf48e95e7ce9417c1f89aa28bc262b9ffd90797 25-Jan-2011 Romain Guy <romainguy@google.com> am 7b4950ae: am 169fafe6: Merge "Fix rendering issues with animated layers. Bug #3385247" into honeycomb

* commit '7b4950ae350255a393125cc4262925b432770ac4':
Fix rendering issues with animated layers. Bug #3385247
7b4950ae350255a393125cc4262925b432770ac4 25-Jan-2011 Romain Guy <romainguy@google.com> am 169fafe6: Merge "Fix rendering issues with animated layers. Bug #3385247" into honeycomb

* commit '169fafe6797dc4c7ae17eba29b72034be6c9c8ec':
Fix rendering issues with animated layers. Bug #3385247
8168396d1acbcb5fdd29eeda4c30b2803d5283ae 25-Jan-2011 Romain Guy <romainguy@google.com> Fix rendering issues with animated layers.
Bug #3385247

- The layer's alpha was interpreted in the wrong range 0..255 instead of 0..1
- 9-patches would not correctly dirty the layer region, the generated mesh
was incorrect

Change-Id: I4916249bedcdb0794929f3796bd17854971efc88
iewGroup.java
136f1b42a0b05cf33708c052bb175d8ef592a25c 25-Jan-2011 Romain Guy <romainguy@google.com> am 74d9a373: am 92dcf629: Merge "Fix rendering issues in Movie Studio." into honeycomb

* commit '74d9a373f9ac4fd1a8e51de7de5d7611317c5755':
Fix rendering issues in Movie Studio.
74d9a373f9ac4fd1a8e51de7de5d7611317c5755 25-Jan-2011 Romain Guy <romainguy@google.com> am 92dcf629: Merge "Fix rendering issues in Movie Studio." into honeycomb

* commit '92dcf629e1ecb60fc497b8b1b3d2aab35c334672':
Fix rendering issues in Movie Studio.
d88f54c5c4ce59585b8b9e6009836f14c00be743 25-Jan-2011 Romain Guy <romainguy@google.com> Fix rendering issues in Movie Studio.

Change-Id: I5b293767b9bdedeef0df4d27a179d0da48d7fe32
ardwareRenderer.java
e965dee34135e7bce186408d1265a5cfd05a9fb1 25-Jan-2011 Romain Guy <romainguy@google.com> am 4e1db6da: am 2ff6d705: Merge "Enable partial invalidates when rendering with OpenGL." into honeycomb

* commit '4e1db6dadd404c023b71ae1ab54e990fce56abc3':
Enable partial invalidates when rendering with OpenGL.
4e1db6dadd404c023b71ae1ab54e990fce56abc3 25-Jan-2011 Romain Guy <romainguy@google.com> am 2ff6d705: Merge "Enable partial invalidates when rendering with OpenGL." into honeycomb

* commit '2ff6d70521fe1f537f8ebd631f0b9b3aa8becf94':
Enable partial invalidates when rendering with OpenGL.
2ff6d70521fe1f537f8ebd631f0b9b3aa8becf94 25-Jan-2011 Romain Guy <romainguy@google.com> Merge "Enable partial invalidates when rendering with OpenGL." into honeycomb
7d7b5490a0b0763e831b31bc11f17d8159b5914a 25-Jan-2011 Romain Guy <romainguy@google.com> Enable partial invalidates when rendering with OpenGL.

Change-Id: Ie8be06c4776b815e8737753eb8003b4fd8936130
LES20Canvas.java
ardwareCanvas.java
ardwareRenderer.java
iew.java
iewGroup.java
iewRoot.java
f8ac62237babea7ec08ba71d00539f33d6ad560d 25-Jan-2011 Chet Haase <chet@google.com> am 235a20a3: am 21d405f5: Merge "Fix for display list problem with listview items." into honeycomb

* commit '235a20a3d1b57492ba0fbebb7f9dcce41ef011d0':
Fix for display list problem with listview items.
235a20a3d1b57492ba0fbebb7f9dcce41ef011d0 25-Jan-2011 Chet Haase <chet@google.com> am 21d405f5: Merge "Fix for display list problem with listview items." into honeycomb

* commit '21d405f5fa0ccf75e805e3f9404a53579416e2da':
Fix for display list problem with listview items.
3b2b0fc257b4c69cdd5c1f2885359786af6787df 25-Jan-2011 Chet Haase <chet@google.com> Fix for display list problem with listview items.

We were not correctly invalidating items that were being attached
to listviews.

Change-Id: I5d29a82c4276f09e401c6869ab1e86a3c8281366
iewGroup.java
63502a7fb2a0524d286d8ff1b2b84faf284927de 25-Jan-2011 Chet Haase <chet@google.com> am 2292fb4a: am 50d4de21: Merge "Fix bug with display lists and layout." into honeycomb

* commit '2292fb4afb942b5880ef20bca5b255c5e005fa5e':
Fix bug with display lists and layout.
2292fb4afb942b5880ef20bca5b255c5e005fa5e 25-Jan-2011 Chet Haase <chet@google.com> am 50d4de21: Merge "Fix bug with display lists and layout." into honeycomb

* commit '50d4de21ee6a2ee62c7ad89dfdfd82d1045e7a58':
Fix bug with display lists and layout.
5af048c791d1fc361e6fe3e901adc9598c8bfb72 25-Jan-2011 Chet Haase <chet@google.com> Fix bug with display lists and layout.

requestLayout() and forceLayout() should force the INVALIDATED
flag to be set, which causes a view's display list to be regenerated
on the next drawing operation. This is necessary when containers change
due to layout requests.

Change-Id: I5b18b5936b59f0605f93c8f45baf83a76dab4e5e
iew.java
76a23f8b2e22273ecba8443a90fed53e45f52a2e 25-Jan-2011 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of eebc944f to master

Change-Id: I969cf69d2bd6901742d2cdf1bd44344ee7ba9fc7
eebc944fd13099945b04a99f15173cdaada1ecf2 25-Jan-2011 Jeff Brown <jeffbrown@google.com> am aaa55d3f: Merge "New orientation listener." into honeycomb

* commit 'aaa55d3f45744814907d0809befb49281ced462e':
New orientation listener.
aaa55d3f45744814907d0809befb49281ced462e 25-Jan-2011 Jeff Brown <jeffbrown@google.com> Merge "New orientation listener." into honeycomb
ad184530375fc78b26b8e9fa8592f0ed0b7f7b0d 25-Jan-2011 Gilles Debunne <debunne@google.com> am c46491fc: am 7c8c6d68: Typo in InputMethodManager\'s documentation

* commit 'c46491fc2fdaa8cddaa2a4f83f50630b7d2e2a74':
Typo in InputMethodManager's documentation
c46491fc2fdaa8cddaa2a4f83f50630b7d2e2a74 25-Jan-2011 Gilles Debunne <debunne@google.com> am 7c8c6d68: Typo in InputMethodManager\'s documentation

* commit '7c8c6d689280ecfbd151a2e0cb40341768470676':
Typo in InputMethodManager's documentation
3a23a82275aaeb8e406e5b512112b845dda32bc2 24-Jan-2011 Gilles Debunne <debunne@google.com> am 287035f5: am 88b5953a: Merge "NULL inputType text fields should never show the IME." into honeycomb

* commit '287035f5749e4a5d4f088ee5f215f9ec4d03cc42':
NULL inputType text fields should never show the IME.
287035f5749e4a5d4f088ee5f215f9ec4d03cc42 24-Jan-2011 Gilles Debunne <debunne@google.com> am 88b5953a: Merge "NULL inputType text fields should never show the IME." into honeycomb

* commit '88b5953ab2f63ed6f820bb13845cf8fecb2d57e3':
NULL inputType text fields should never show the IME.
7c8c6d689280ecfbd151a2e0cb40341768470676 24-Jan-2011 Gilles Debunne <debunne@google.com> Typo in InputMethodManager's documentation

Change-Id: I711e6d24462e336546b789fac0b9c6f529ebe260
nputmethod/InputMethodManager.java
88b5953ab2f63ed6f820bb13845cf8fecb2d57e3 24-Jan-2011 Gilles Debunne <debunne@google.com> Merge "NULL inputType text fields should never show the IME." into honeycomb
4519f07e9c6b993fbe7a3d3df24d71d9450a54f1 23-Jan-2011 Jeff Brown <jeffbrown@google.com> New orientation listener.

The objective in this listener is to be more careful about the
signal processing to prevent spurious orientation changes
and to make all of the tweakable factors physically meaningful.

The calibration is defined in terms of time constants and
does not assume a particular discrete sampling rate. This is
useful because it allows us to change the accelerometer sampling
interval if desired without having to change the calibration.
Moreover, the accelerometer sampling interval can vary +/- 20ms
from one sample to the next even in normal circumstances.

Proposed orientation changes are weighted by confidence factors
that vary exponentially in relation to how close the device
is to the ideal orientation change posture (screen is vertical,
angle is exactly at the midpoint of the orientation quadrant,
and no external acceleration beside gravity). When not in an ideal
posture, the device takes proportionally longer to settle into a
new orientation state.

Added a little tool to plot the log output of the
WindowOrientationListener. Check the README for more information
about how to use it.

Change-Id: I787f02d03582ff26367df65eda8d9ce85c5cb343
indowOrientationListener.java
61b9649a50aefacc74449728e96f37f6f9d7a8b3 24-Jan-2011 Huahui Wu <hwu@google.com> am 6e4a69bb: am 94b8b114: Merge "A few small cleanning-ups." into honeycomb

* commit '6e4a69bbf7d7566899ec76d2634538dd79ca4166':
A few small cleanning-ups.
b05aacc1aea4eb7dec3126c88fd53680fb8765cc 24-Jan-2011 Joe Onorato <joeo@google.com> am ab8967ae: am da34e13b: Merge "Remove unwanted parameter (it was a typo)." into honeycomb

* commit 'ab8967ae9db71291094da2967e744038b7e91ff7':
Remove unwanted parameter (it was a typo).
3873da3c6ee0a63de0d91e6045b7546402f4ce3d 24-Jan-2011 Chet Haase <chet@google.com> am 2acb67ec: am 67005b05: Merge "Use optimized display lists for all hwaccelerated rendering" into honeycomb

* commit '2acb67ec9fe34316231519373f59dfb76c03d57b':
Use optimized display lists for all hwaccelerated rendering
6e4a69bbf7d7566899ec76d2634538dd79ca4166 24-Jan-2011 Huahui Wu <hwu@google.com> am 94b8b114: Merge "A few small cleanning-ups." into honeycomb

* commit '94b8b114ab9abf5ccad6b85deb08aac2a359915d':
A few small cleanning-ups.
10f4126a367071a49f208f10ceb1ed0e1151d48c 24-Jan-2011 Joe Onorato <joeo@google.com> resolved conflicts for merge of faf083ef to master

Change-Id: I316a1b4356f6dba6c3880ccb02dbb2fa00d21a85
8cbb4c6e30cff706a243599634aeb8fd9a818d92 24-Jan-2011 Gilles Debunne <debunne@google.com> NULL inputType text fields should never show the IME.

Bug 3381317

Changes made in https://android-git.corp.google.com/g/#change,91880
displayed the IME onFocus. However, the test was not consistent to what
is done in touch event. textIsEditable is now checked too.

Change-Id: If11382c1c90a557839b87d62494253470c42b621
nputmethod/InputMethodManager.java
f93246923f0a8c85fddb508533d63d59977f75eb 24-Jan-2011 Huahui Wu <hwu@google.com> A few small cleanning-ups.

1. Remove mDeferMultiTouch in WebView, it was for testing only but
we don't need it now since we always pass MultiTouch to WebKit.

2. Remove the use of mDeferMultiTouch in DRT tests.

3. Correct the index of getX(Y) for the second touch point in the
debug string of MotionEvent.

Change-Id: Ib63cfc5935af1a169ed26b2b138f74908492bc18
otionEvent.java
ab8967ae9db71291094da2967e744038b7e91ff7 24-Jan-2011 Joe Onorato <joeo@google.com> am da34e13b: Merge "Remove unwanted parameter (it was a typo)." into honeycomb

* commit 'da34e13bb4ef97832c43489937a26d314437a1d7':
Remove unwanted parameter (it was a typo).
2acb67ec9fe34316231519373f59dfb76c03d57b 24-Jan-2011 Chet Haase <chet@google.com> am 67005b05: Merge "Use optimized display lists for all hwaccelerated rendering" into honeycomb

* commit '67005b05cc76a38a5b3bf6e83957dd03619e9126':
Use optimized display lists for all hwaccelerated rendering
da34e13bb4ef97832c43489937a26d314437a1d7 24-Jan-2011 Joe Onorato <joeo@google.com> Merge "Remove unwanted parameter (it was a typo)." into honeycomb
e595cad6ee3971ff43b94a71fb46d1a72d84544f 24-Jan-2011 Joe Onorato <joeo@google.com> Remove unwanted parameter (it was a typo).

Bug: 3241144
Change-Id: I569f6c8dffb17041a422be6084b6eab89624a57b
iew.java
daf98e941e140e8739458126640183b9f296a2ab 10-Jan-2011 Chet Haase <chet@google.com> Use optimized display lists for all hwaccelerated rendering

Previously, display lists were used only if hardware acceleration
was enabled for an application (hardwareAccelerated=true) *and* if
setDrawingCacheEnabled(true) was called. This change makes the framework
use display lists for all views in an application if hardware acceleration
is enabled.

In addition, display list renderering has been optimized so that
any view's recreation of its own display list (which is necessary whenever
the visuals of that view change) will not cause any other display list
in its parent hierarchy to change. Instead, when there are any visual
changes in the hierarchy, only those views which need to have new
display list content will recreate their display lists.

This optimization works by caching display list references in each
parent display list (so the container of some child will refer to its
child's display list by a reference to the child's display list). Then when
a view needs to recreate its display list, it will do so inside the same
display list object. This will cause the content to get refreshed, but not
the reference to that content. Then when the view hierarchy is redrawn,
it will automatically pick up the new content from the old reference.

This optimization will not necessarily improve performance when applications
need to update the entire view hierarchy or redraw the entire screen, but it does
show significant improvements when redrawing only a portion of the screen,
especially when the regions that are not refreshed are complex and time-
consuming to redraw.

Change-Id: I68d21cac6a224a05703070ec85253220cb001eb4
isplayList.java
LES20Canvas.java
LES20DisplayList.java
ardwareCanvas.java
ardwareRenderer.java
iew.java
iewDebug.java
iewGroup.java
iewRoot.java
faf083ef0b7b893acb871084231d20e08e208f8f 24-Jan-2011 Joe Onorato <joeo@google.com> am 4c541b13: Merge "visibility ("lights out") API." into honeycomb

* commit '4c541b1303b0ee2b9b0d19bee85d3780c5c4c110':
visibility ("lights out") API.
4c541b1303b0ee2b9b0d19bee85d3780c5c4c110 24-Jan-2011 Joe Onorato <joeo@google.com> Merge "visibility ("lights out") API." into honeycomb
664644d9e012aa2a28ac96f305b1ce6499ec8806 24-Jan-2011 Joe Onorato <joeo@google.com> visibility ("lights out") API.

1. Views may setSystemUiVisibility() to recommend that
the system chrome (status bar or other UI) show or hide
itself. (This functionality was previously available only
via the FLAG_FULLSCREEN window flag for some SystemUI
implementations.)

2. Views may register a OnSystemUiVisibilityChangedListener
on a view, and find out when the system UI actually
appears or disappears, allowing apps to coordinate the
appearance of their own UI if desired.

Bug: 3241144
Change-Id: Ia1758d94099182d49a1e3688ea2738ae4995b829
Window.aidl
WindowManager.aidl
iew.java
iewGroup.java
iewRoot.java
indowManager.java
indowManagerPolicy.java
e3ba084285b96e69e7ccd09cd89f649fc7beac69 24-Jan-2011 Romain Guy <romainguy@google.com> am ff42d952: am 502d41d8: Merge "Add support for arcs." into honeycomb

* commit 'ff42d952ebb1d5393951f1644ee3d1b9e0fbc9e5':
Add support for arcs.
ff42d952ebb1d5393951f1644ee3d1b9e0fbc9e5 24-Jan-2011 Romain Guy <romainguy@google.com> am 502d41d8: Merge "Add support for arcs." into honeycomb

* commit '502d41d85958fb729a17e0651e80134e1c41c621':
Add support for arcs.
8b2f5267f16c295f12faab810527cd6311997e34 24-Jan-2011 Romain Guy <romainguy@google.com> Add support for arcs.

Change-Id: I96c057ff4eb1b464b03f132da0b85333777bee4f
LES20Canvas.java
1166e0f3adf1647ff1068f9ca3e8332d75bc891c 23-Jan-2011 Romain Guy <romainguy@google.com> am 22fdb6f3: am d182046e: Merge "Add support for ovals and stroked rectangles." into honeycomb

* commit '22fdb6f3e94f88687a2f624124ef678282588b75':
Add support for ovals and stroked rectangles.
22fdb6f3e94f88687a2f624124ef678282588b75 23-Jan-2011 Romain Guy <romainguy@google.com> am d182046e: Merge "Add support for ovals and stroked rectangles." into honeycomb

* commit 'd182046ee67c1196e52b74dc9f3f89dcb816785d':
Add support for ovals and stroked rectangles.
c1cd9ba335b293f11e1082447ef08e474710a05f 23-Jan-2011 Romain Guy <romainguy@google.com> Add support for ovals and stroked rectangles.

Change-Id: I1292e241386763c82e6622c8f7ed90b0f5b7bd4f
LES20Canvas.java
ccb9a0a9f0376f5971d0c0f79b297ec0cc1dd6c1 23-Jan-2011 Dianne Hackborn <hackbod@google.com> am 11a5d424: am b149f5c8: Merge "Fix issue #3302006: Cannot see the dialog lunched from a transparent activity." into honeycomb

* commit '11a5d42454fad1f61eb4874855113c5416396888':
Fix issue #3302006: Cannot see the dialog lunched from a transparent activity.
11a5d42454fad1f61eb4874855113c5416396888 23-Jan-2011 Dianne Hackborn <hackbod@google.com> am b149f5c8: Merge "Fix issue #3302006: Cannot see the dialog lunched from a transparent activity." into honeycomb

* commit 'b149f5c8d29cda2f2e46559a68467be89714f737':
Fix issue #3302006: Cannot see the dialog lunched from a transparent activity.
ff801ec71399f7e8aa95bcbb9937c53144fe17c5 23-Jan-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3302006: Cannot see the dialog lunched from a transparent activity.

The activity manager was not performing the layout pass on the new window,
because its app token was still hidden, because the activity manager / window
manager were still waiting for it to be ready to show.

Just ignore whether the app token is hidden for this case.

Also fixes some problems with animations, and tweaks the ViewConfiguration
values for xlarge screens.

Change-Id: Icbe9c77ba8127d1e02df2d6f27b8e86ec842e50a
iewConfiguration.java
iewRoot.java
d832d0b2406b930f04be1bbecd1da826c045c958 22-Jan-2011 Romain Guy <romainguy@google.com> am 10444a13: am 596ba2fa: Merge "Correctly invalidate views that transition from opaque to non-opaque. Bug #3337037" into honeycomb

* commit '10444a138ae98e940982096d802b2655cef0b645':
Correctly invalidate views that transition from opaque to non-opaque. Bug #3337037
10444a138ae98e940982096d802b2655cef0b645 22-Jan-2011 Romain Guy <romainguy@google.com> am 596ba2fa: Merge "Correctly invalidate views that transition from opaque to non-opaque. Bug #3337037" into honeycomb

* commit '596ba2fa791db7ae671bd79c346b54a7ea2f8113':
Correctly invalidate views that transition from opaque to non-opaque. Bug #3337037
596ba2fa791db7ae671bd79c346b54a7ea2f8113 22-Jan-2011 Romain Guy <romainguy@google.com> Merge "Correctly invalidate views that transition from opaque to non-opaque. Bug #3337037" into honeycomb
c5d55863ec0290370a17d37d06feab743626b12f 22-Jan-2011 Romain Guy <romainguy@google.com> Correctly invalidate views that transition from opaque to non-opaque.
Bug #3337037

Change-Id: I31397273a31b6004e2e3801866122bcbb3ebee5d
iew.java
iewRoot.java
61d4504ec66827924f926e99361ebf432c2390cb 22-Jan-2011 Adam Powell <adamp@google.com> am a4f8e903: am 5fc3c84f: Merge "Fix bug 3362680 - calendar crash while tabbing among views" into honeycomb

* commit 'a4f8e903c3b4be9a840e0495be5bbfdb2a0a21e1':
Fix bug 3362680 - calendar crash while tabbing among views
a4f8e903c3b4be9a840e0495be5bbfdb2a0a21e1 22-Jan-2011 Adam Powell <adamp@google.com> am 5fc3c84f: Merge "Fix bug 3362680 - calendar crash while tabbing among views" into honeycomb

* commit '5fc3c84f5c465d3f0f435037bd5b92fa8da1f2c2':
Fix bug 3362680 - calendar crash while tabbing among views
3cb8b638c49b767354b62d853067ae8290ff7e80 22-Jan-2011 Adam Powell <adamp@google.com> Fix bug 3362680 - calendar crash while tabbing among views

Remove pending click callbacks when a view is detached from its
window.

Change-Id: I51de184b8e95dbd594675ea6849647586a7c4ba2
iew.java
b8febbe12ec3295299c32d53add6820ea571747f 21-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> am 8a82de2f: am 4bb180d6: am ded2b006: Merge "frameworks/base: remove redundant code in WindowManager"

* commit '8a82de2fcae11a2a9cba25132c37cad83ccc859f':
frameworks/base: remove redundant code in WindowManager
8a82de2fcae11a2a9cba25132c37cad83ccc859f 21-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> am 4bb180d6: am ded2b006: Merge "frameworks/base: remove redundant code in WindowManager"

* commit '4bb180d62f71658d04a7d6800707de83c10b01a5':
frameworks/base: remove redundant code in WindowManager
ed19b88fe2707e85ebdc20f97b01eaf9b1f9e460 21-Jan-2011 Ken Wakasa <kwakasa@google.com> am 6ddec8be: am ccbdf5e8: Merge "Update class doc for InputMethodSubtype" into honeycomb

* commit '6ddec8be1cc23f4b7e8793503420072024884072':
Update class doc for InputMethodSubtype
d0417fa04e91318185e181ae09d81da7f7e38164 21-Jan-2011 Romain Guy <romainguy@google.com> am 8e2d489a: am 99d49118: Merge "Add support for drawBitmapMesh()." into honeycomb

* commit '8e2d489a868d52a979eed91a13a7605630ac997c':
Add support for drawBitmapMesh().
6ddec8be1cc23f4b7e8793503420072024884072 21-Jan-2011 Ken Wakasa <kwakasa@google.com> am ccbdf5e8: Merge "Update class doc for InputMethodSubtype" into honeycomb

* commit 'ccbdf5e838eb44a1920c2c02fcf4190880a3c540':
Update class doc for InputMethodSubtype
e31e9424554d5f032f578830556913b4ba78f7f9 21-Jan-2011 Ken Wakasa <kwakasa@google.com> Update class doc for InputMethodSubtype

bug: 3370290
Change-Id: Ib86f81c1a5f6c9acca34b586d810c6e94db1b552
nputmethod/InputMethodSubtype.java
8e2d489a868d52a979eed91a13a7605630ac997c 21-Jan-2011 Romain Guy <romainguy@google.com> am 99d49118: Merge "Add support for drawBitmapMesh()." into honeycomb

* commit '99d49118b857df4051a864b35254e275bc8a68b6':
Add support for drawBitmapMesh().
99d49118b857df4051a864b35254e275bc8a68b6 21-Jan-2011 Romain Guy <romainguy@google.com> Merge "Add support for drawBitmapMesh()." into honeycomb
5a7b466a2b4b7ced739bd5c31e022de61650545a 21-Jan-2011 Romain Guy <romainguy@google.com> Add support for drawBitmapMesh().

Change-Id: Ic77f9c534bb90dc7b9458299544bd50b8b6ae6a5
LES20Canvas.java
4789b873a6d19f798aa8599a9391eb1bfcad9181 21-Jan-2011 Dianne Hackborn <hackbod@google.com> am 8a545b9e: am e69e0fde: Merge "Fix issue #3374356: Buttons sometimes don\'t highlight" into honeycomb

* commit '8a545b9e3f67fedcb18f3ab9de00e8003a7fcd51':
Fix issue #3374356: Buttons sometimes don't highlight
3e09d42b2b0b44bdfae885b4d40fd9204b78c69f 21-Jan-2011 Christopher Tate <ctate@google.com> am 9424bfa9: am 7fb8b565: Include the local state obj in ACTION_DRAG_STARTED events

* commit '9424bfa91dd5686187d0e9611c17851dae580f52':
Include the local state obj in ACTION_DRAG_STARTED events
8a545b9e3f67fedcb18f3ab9de00e8003a7fcd51 21-Jan-2011 Dianne Hackborn <hackbod@google.com> am e69e0fde: Merge "Fix issue #3374356: Buttons sometimes don\'t highlight" into honeycomb

* commit 'e69e0fde6cf0e6302d5a05363a3db7a9c555e9dc':
Fix issue #3374356: Buttons sometimes don't highlight
9424bfa91dd5686187d0e9611c17851dae580f52 21-Jan-2011 Christopher Tate <ctate@google.com> am 7fb8b565: Include the local state obj in ACTION_DRAG_STARTED events

* commit '7fb8b565f9cd2ec6a63ff4d8a89f98f68a1a138c':
Include the local state obj in ACTION_DRAG_STARTED events
e69e0fde6cf0e6302d5a05363a3db7a9c555e9dc 21-Jan-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #3374356: Buttons sometimes don't highlight" into honeycomb
be1f62260ae4798cd80404dc595e1146f346cfe9 21-Jan-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3374356: Buttons sometimes don't highlight

On touch up, View would move itself to the pressed state if it
hadn't already shown as pressed. However, it did this *after*
scheduling the message to deliver the onClick(). Thus if the
app took a little too long to execute inside of onClick(), the
invalidate to draw the highlight state would be executed right
before the following message to remove the highlight state,
causing it to basically not be shown.

This change just does the invalidate before scheduling the
onClick, so we can be sure it gets done first.

Change-Id: I6a4d1742a3aab60969c38b44bb3e163f48de62d4
iew.java
7fb8b565f9cd2ec6a63ff4d8a89f98f68a1a138c 20-Jan-2011 Christopher Tate <ctate@google.com> Include the local state obj in ACTION_DRAG_STARTED events

Fixes bug 3362502

The underlying cause was that the DragEvent.obtain() variant which
clones an existing event was failing to copy the local state field.

This change also moves the logic for inserting the local state object
into DragEvents about to be dispatched from the Binder incall thread
into the main-thread code sequence. This is to eliminate any potential
SMP memory coherency issues around drag start vs incoming events
needing to refer to the local state object.

Change-Id: I368e8936dbf8a00b7d5cc19c2ef0101bd75b6b2d
ragEvent.java
iewRoot.java
571f76a24e685855d4cd8f6ea5f6ddead760dd2f 20-Jan-2011 Romain Guy <romainguy@google.com> am cff27e52: am c8219299: Merge "Remove unnecessary code." into honeycomb

* commit 'cff27e523d68f72012bd908bac1a78cbb5b0a7e9':
Remove unnecessary code.
cff27e523d68f72012bd908bac1a78cbb5b0a7e9 20-Jan-2011 Romain Guy <romainguy@google.com> am c8219299: Merge "Remove unnecessary code." into honeycomb

* commit 'c8219299b0003793cee8049b96a3bf7530765eea':
Remove unnecessary code.
c8219299b0003793cee8049b96a3bf7530765eea 20-Jan-2011 Romain Guy <romainguy@google.com> Merge "Remove unnecessary code." into honeycomb
ff26a0c1c905dc1ec53b1bab860b80f2976d59be 20-Jan-2011 Romain Guy <romainguy@google.com> Remove unnecessary code.

Change-Id: I83eba3406c26a4028af08b4d4c95ecd02803e75a
iewRoot.java
f41e1af8c092c2f7c18850bf263b32b7811dc074 20-Jan-2011 Ken Wakasa <kwakasa@google.com> am 7fff9d8e: am 586f0513: Refine InputMethodInfo API

* commit '7fff9d8e0489455363eb2d70111b7164adab46ff':
Refine InputMethodInfo API
7fff9d8e0489455363eb2d70111b7164adab46ff 20-Jan-2011 Ken Wakasa <kwakasa@google.com> am 586f0513: Refine InputMethodInfo API

* commit '586f051375d8d7aeece05329921f9f66fc6164cb':
Refine InputMethodInfo API
586f051375d8d7aeece05329921f9f66fc6164cb 20-Jan-2011 Ken Wakasa <kwakasa@google.com> Refine InputMethodInfo API

bug: 3370297
Change-Id: I2a18f3bdbe2fccb22e22cdae0f75aec5c703ad6d
nputmethod/InputMethodInfo.java
91d61c6b31b360c75642d9f6bfc97d8392ea0b23 20-Jan-2011 Romain Guy <romainguy@google.com> am 821b82aa: am ed8f8dd8: Merge "Add rounded rects and circles support to OpenGLRenderer." into honeycomb

* commit '821b82aaa1071b9ad69596ce0d0fae596ab1b171':
Add rounded rects and circles support to OpenGLRenderer.
821b82aaa1071b9ad69596ce0d0fae596ab1b171 20-Jan-2011 Romain Guy <romainguy@google.com> am ed8f8dd8: Merge "Add rounded rects and circles support to OpenGLRenderer." into honeycomb

* commit 'ed8f8dd8cf621d6046db7e083f8a36205ed55609':
Add rounded rects and circles support to OpenGLRenderer.
ed8f8dd8cf621d6046db7e083f8a36205ed55609 20-Jan-2011 Romain Guy <romainguy@google.com> Merge "Add rounded rects and circles support to OpenGLRenderer." into honeycomb
01d58e43ede5ca98cbebdd166f9b0c545032c01b 20-Jan-2011 Romain Guy <romainguy@google.com> Add rounded rects and circles support to OpenGLRenderer.

Change-Id: I6cedf2b495d58de7c0437096809fa9e4518a1b8c
LES20Canvas.java
c0d4062965b392dffef267ad4835930d504ca39f 20-Jan-2011 Jeff Brown <jeffbrown@google.com> am e200420e: am d49f3e00: Merge "Rename KeyCharacterMap.UnavailableException." into honeycomb

* commit 'e200420e168ae135f6e87ee3a1abd44c971a1fe4':
Rename KeyCharacterMap.UnavailableException.
e200420e168ae135f6e87ee3a1abd44c971a1fe4 20-Jan-2011 Jeff Brown <jeffbrown@google.com> am d49f3e00: Merge "Rename KeyCharacterMap.UnavailableException." into honeycomb

* commit 'd49f3e0078a79804e8dbd455c92786977a686020':
Rename KeyCharacterMap.UnavailableException.
7e1e21fdc5e8a9bb870b1f030658a67d2bf43207 20-Jan-2011 Jeff Brown <jeffbrown@google.com> Rename KeyCharacterMap.UnavailableException.

Bug: 3370261
Change-Id: I5cdca8ef2300b70b7a0fcc7e2c26765079645ecc
eyCharacterMap.java
eyEvent.java
ef3f7bd356a80c396ab597e6b9c20e497349d11d 20-Jan-2011 Christopher Tate <ctate@google.com> am 67265808: am 28f0a53a: Merge "Fail more gracefully when window state changes during drags" into honeycomb

* commit '67265808c10e53f305f59a65911d7bfcd82151a6':
Fail more gracefully when window state changes during drags
67265808c10e53f305f59a65911d7bfcd82151a6 20-Jan-2011 Christopher Tate <ctate@google.com> am 28f0a53a: Merge "Fail more gracefully when window state changes during drags" into honeycomb

* commit '28f0a53a882a39bc22bc5892250411cadf6c0d5d':
Fail more gracefully when window state changes during drags
28f0a53a882a39bc22bc5892250411cadf6c0d5d 20-Jan-2011 Christopher Tate <ctate@google.com> Merge "Fail more gracefully when window state changes during drags" into honeycomb
f01af7551b3cf8853d3a76412c2745a543063434 20-Jan-2011 Christopher Tate <ctate@google.com> Fail more gracefully when window state changes during drags

In particular, if a new window was created out from under the drag,
the drag-move event dispatch logic would wind up blithly assuming
that it would find a valid touch-dispatchable window under the
finger. When this was untrue, it would NPE, but the NPE was caught
and discarded safely by higher-level guard code.

With this change, we now avoid the NPE entirely and report the
spurious condition as part of the debugging log stream.

(Also add the local-state object to DragEvent.toString()'s output.)

Change-Id: Idfa5f45d049e48415ee59c8b0ffb5b0ed4098ce3
ragEvent.java
73ed89571c64daa87cff9dc890e321cc6e630f0d 20-Jan-2011 Gilles Debunne <debunne@google.com> am 8d2480ca: am 0c44d1db: Merge "Race condition patched in Email autocompletion." into honeycomb

* commit '8d2480ca39502e1378a19a5cd28c2319d1e0c59f':
Race condition patched in Email autocompletion.
8d2480ca39502e1378a19a5cd28c2319d1e0c59f 20-Jan-2011 Gilles Debunne <debunne@google.com> am 0c44d1db: Merge "Race condition patched in Email autocompletion." into honeycomb

* commit '0c44d1dbb152ed16df4eb2af39157f3d281323d9':
Race condition patched in Email autocompletion.
be2c4f92a990ca48ad6ede252343dd9574dfe505 18-Jan-2011 Gilles Debunne <debunne@google.com> Race condition patched in Email autocompletion.

Bug 3347962

Root cause of this problem: if the adapter's content gets updated by a backgroung
thread, the PopupDataSetObserver will call showDropDown which will popup the
list.

Added a flag to make this call show the popup iif it is already visible.
This relayout is needed to clear the mDataChanged flag set when the content was
modified and which otherwise prevents touch events on the result list.

ArrayAdapter didn't use its lock to protect access to mObject.

-------------------------------------------------

However, the study of the this race conditions revealed an other bug:

Updated adapter's content is not displayed in filtered AutoCompleteTextView
Bug 3369097

Change-Id: Icd90d452f98231866f4d8a1f6994c1492febecb9
indowManager.java
cf4b6c7cd6effe95068c2d5a3cdeef1e666e92ad 19-Jan-2011 Romain Guy <romainguy@google.com> am 1aae1c2a: am 8f36bedc: Merge "Don\'t attempt to create empty layers. Bug #3369888" into honeycomb

* commit '1aae1c2a9ba7ad229e8c2ba8ad1befc598986e57':
Don't attempt to create empty layers. Bug #3369888
1aae1c2a9ba7ad229e8c2ba8ad1befc598986e57 19-Jan-2011 Romain Guy <romainguy@google.com> am 8f36bedc: Merge "Don\'t attempt to create empty layers. Bug #3369888" into honeycomb

* commit '8f36bedcf3fd3b5b3e5746af689b9915d506365f':
Don't attempt to create empty layers. Bug #3369888
8f36bedcf3fd3b5b3e5746af689b9915d506365f 19-Jan-2011 Romain Guy <romainguy@google.com> Merge "Don't attempt to create empty layers. Bug #3369888" into honeycomb
514fb18827186591d66973c2362c859b64b63556 19-Jan-2011 Romain Guy <romainguy@google.com> Don't attempt to create empty layers.
Bug #3369888

Change-Id: Ic17bbd1c04bbf760cb17d0eb9e6767fd6479948c
LES20Canvas.java
22da4dd48ec8c143d90126a0760a06774c4923a9 19-Jan-2011 Christopher Tate <ctate@google.com> am 714066d8: am 5383d077: Merge "Fix a couple of drag & drop crashes" into honeycomb

* commit '714066d873b70098c09c2c094d374781b12d65a2':
Fix a couple of drag & drop crashes
714066d873b70098c09c2c094d374781b12d65a2 19-Jan-2011 Christopher Tate <ctate@google.com> am 5383d077: Merge "Fix a couple of drag & drop crashes" into honeycomb

* commit '5383d077ed79e9fec95361046fcd7491ee9a0fd4':
Fix a couple of drag & drop crashes
5383d077ed79e9fec95361046fcd7491ee9a0fd4 19-Jan-2011 Christopher Tate <ctate@google.com> Merge "Fix a couple of drag & drop crashes" into honeycomb
741fbc13d287f7982b52a25b193b060477ebe834 19-Jan-2011 Romain Guy <romainguy@google.com> am 2c197a07: am 9335f5b2: Merge "Make embedded hardware layers work. Bug #3369474" into honeycomb

* commit '2c197a0708dc3cb26c335371b572a3c47ca33736':
Make embedded hardware layers work. Bug #3369474
2c197a0708dc3cb26c335371b572a3c47ca33736 19-Jan-2011 Romain Guy <romainguy@google.com> am 9335f5b2: Merge "Make embedded hardware layers work. Bug #3369474" into honeycomb

* commit '9335f5b2fde244614184f45d29cc574d1ba8cbba':
Make embedded hardware layers work. Bug #3369474
9335f5b2fde244614184f45d29cc574d1ba8cbba 19-Jan-2011 Romain Guy <romainguy@google.com> Merge "Make embedded hardware layers work. Bug #3369474" into honeycomb
42f3a4b7c35dd1ea1922356eb3611af8cde05179 19-Jan-2011 Romain Guy <romainguy@google.com> Make embedded hardware layers work.
Bug #3369474

Change-Id: Ib6d7fb44eedda9dc2933b5e1b176f307968af91d
iew.java
1fc014fd0051a48083c6d469c2a4f22da1aa15e4 19-Jan-2011 Christopher Tate <ctate@google.com> Fix a couple of drag & drop crashes

1. ViewGroups being removed from the layout during a drag would wind up
crashing the app with an NPE at drag-ended time, due to blind dereference
of now-cleared object pointers.

2. Passing a 'null' ClipData to startDrag() would crash the system
process with an NPE. Should this even be valid? I'm inclined to say
yes, though it means that apps will need to guard against it.

Fixes bug 3369542

Change-Id: I168fc1284d6fd4403999946609725414cf254df0
iewGroup.java
iewRoot.java
033b5f63c183339f3020580b84097f084adda8be 19-Jan-2011 Eric Laurent <elaurent@google.com> am 28e8c942: am 10f4ffe9: Merge "Issue 3315999: catch ToneGenerator exceptions." into honeycomb

* commit '28e8c9423c1e8ac8f5d945f6f7742511e58dac57':
Issue 3315999: catch ToneGenerator exceptions.
28e8c9423c1e8ac8f5d945f6f7742511e58dac57 19-Jan-2011 Eric Laurent <elaurent@google.com> am 10f4ffe9: Merge "Issue 3315999: catch ToneGenerator exceptions." into honeycomb

* commit '10f4ffe9619ca3a943e3460d8bb7b5441575a173':
Issue 3315999: catch ToneGenerator exceptions.
733a42b24b91ce2881e2e4457a1ee06f12bb127a 19-Jan-2011 Eric Laurent <elaurent@google.com> Issue 3315999: catch ToneGenerator exceptions.

When the AudioFlinger runs out of available AudioTracks (max 32),
the ToneGenerator constructor throws a RuntimeException. Although this
denotes an abnormal situation, VolumePanel should catch this exception.

Change-Id: Ida1312fe4857e99a0ef38b4013cb03e819405689
olumePanel.java
9afbd5654dee66426a009692982bfa4929284f8f 19-Jan-2011 Romain Guy <romainguy@google.com> am 3e4f4b88: am 064f6ad3: Merge "Recreate the EGL surface when ViewRoot\'s surface changes. Bug #3306150" into honeycomb

* commit '3e4f4b88571a07ea08b8f6c8e98dc600dbe84f61':
Recreate the EGL surface when ViewRoot's surface changes. Bug #3306150
310ae9b39c10f6b43c885e458eb8d135a3ba6b71 19-Jan-2011 Dianne Hackborn <hackbod@google.com> am fe86e979: am 661b6cfb: Merge "Okay, new plan for dialogs." into honeycomb

* commit 'fe86e9793ce62c6a1aa34e5712f16b45800efdd0':
Okay, new plan for dialogs.
a953359db5250d0f648c7ca210ef3954bf1f8b66 19-Jan-2011 Christopher Tate <ctate@google.com> am 31cd02ad: am 17ed60c3: API CHANGE: add a no-View ctor for DragShadowBuilder

* commit '31cd02ade3dd85c676bb278a1c2181f57179c390':
API CHANGE: add a no-View ctor for DragShadowBuilder
7fc5d4b8e7145413411da3320495388f09fab536 19-Jan-2011 Dianne Hackborn <hackbod@google.com> am 2ec5a716: am 36c84403: Merge "Fix issue #3362484: Can\'t dismiss activity picker by tapping outside dialog" into honeycomb

* commit '2ec5a7160b3d32887b2428edef7a751ee3700809':
Fix issue #3362484: Can't dismiss activity picker by tapping outside dialog
3e4f4b88571a07ea08b8f6c8e98dc600dbe84f61 19-Jan-2011 Romain Guy <romainguy@google.com> am 064f6ad3: Merge "Recreate the EGL surface when ViewRoot\'s surface changes. Bug #3306150" into honeycomb

* commit '064f6ad3928c51996359694c00a580115b2dabfc':
Recreate the EGL surface when ViewRoot's surface changes. Bug #3306150
fe86e9793ce62c6a1aa34e5712f16b45800efdd0 19-Jan-2011 Dianne Hackborn <hackbod@google.com> am 661b6cfb: Merge "Okay, new plan for dialogs." into honeycomb

* commit '661b6cfb2bcecdd335540db7059e5d8e22c2e79a':
Okay, new plan for dialogs.
31cd02ade3dd85c676bb278a1c2181f57179c390 19-Jan-2011 Christopher Tate <ctate@google.com> am 17ed60c3: API CHANGE: add a no-View ctor for DragShadowBuilder

* commit '17ed60c3d2e480ab9788b445958a22b9ae7b6e96':
API CHANGE: add a no-View ctor for DragShadowBuilder
2a83f001fdb189f945e82e81e717ba204824b112 19-Jan-2011 Romain Guy <romainguy@google.com> Recreate the EGL surface when ViewRoot's surface changes.
Bug #3306150

Change-Id: Ifbf0ab9deca7a34eff7d844ea7276d12d7284788
ardwareRenderer.java
urface.java
iewRoot.java
064f6ad3928c51996359694c00a580115b2dabfc 19-Jan-2011 Romain Guy <romainguy@google.com> Merge "Recreate the EGL surface when ViewRoot's surface changes. Bug #3306150" into honeycomb
661b6cfb2bcecdd335540db7059e5d8e22c2e79a 19-Jan-2011 Dianne Hackborn <hackbod@google.com> Merge "Okay, new plan for dialogs." into honeycomb
ef57575887bde74ef09e9f21aae6b02f9c8163c7 19-Jan-2011 Dianne Hackborn <hackbod@google.com> Okay, new plan for dialogs.

Don't dismiss by default when tapping outside, even for AlertDialog.

If AlertDialog doesn't have any buttons, tapping outside will dismiss it.

Applications can make their own dialogs (or activities looking like
dialogs) can use the existing and new APIs to control this behavior
themselves so that it does the right thing.

Change-Id: I02bfb9161e169de0033200211b3a7ec80080bd83
indow.java
17ed60c3d2e480ab9788b445958a22b9ae7b6e96 18-Jan-2011 Christopher Tate <ctate@google.com> API CHANGE: add a no-View ctor for DragShadowBuilder

Cf conversation with the API council. Also expand the javadoc
a bit.

Change-Id: I9d4edb1042e00492b3db5c6bb7c7d9648581efad
iew.java
2ec5a7160b3d32887b2428edef7a751ee3700809 19-Jan-2011 Dianne Hackborn <hackbod@google.com> am 36c84403: Merge "Fix issue #3362484: Can\'t dismiss activity picker by tapping outside dialog" into honeycomb

* commit '36c84403ec07439d11ed284ac5f9a9db807fbf92':
Fix issue #3362484: Can't dismiss activity picker by tapping outside dialog
36c84403ec07439d11ed284ac5f9a9db807fbf92 19-Jan-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #3362484: Can't dismiss activity picker by tapping outside dialog" into honeycomb
cfaf8878de83b6bb7a24aee3c240259f428e6e4a 18-Jan-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3362484: Can't dismiss activity picker by tapping outside dialog

Change-Id: Idc2fe5a86c61e8f94fe9d902a0087a05f6f7918e
indow.java
4bb180d62f71658d04a7d6800707de83c10b01a5 18-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> am ded2b006: Merge "frameworks/base: remove redundant code in WindowManager"

* commit 'ded2b00643c788a96ce8adc1a4cc0f7619a4c606':
frameworks/base: remove redundant code in WindowManager
ba7ac24e4d85cabbe803c7abf032aca2606ee6a4 18-Jan-2011 Romain Guy <romainguy@google.com> am a2dcab45: am 89108d5c: Merge "Add support for skew()" into honeycomb

* commit 'a2dcab45d8dbbd9fd8d93720a91f789f18ae4d76':
Add support for skew()
3f6875f143fbaf4de993025f6765dc8237eb2b0b 18-Jan-2011 Vairavan Srinivasan <vairav@codeaurora.org> frameworks/base: remove redundant code in WindowManager

Change-Id: I8a356ca36129645977d33129e0d56c1b89f97fb0
indowManager.java
a2dcab45d8dbbd9fd8d93720a91f789f18ae4d76 18-Jan-2011 Romain Guy <romainguy@google.com> am 89108d5c: Merge "Add support for skew()" into honeycomb

* commit '89108d5c311d0cc6879fb41c6392f17c58644fee':
Add support for skew()
807daf7df615b60ce6fc41355aabe3aa353cebab 18-Jan-2011 Romain Guy <romainguy@google.com> Add support for skew()

Change-Id: Ia3a9a867f74fd78b61f75179e3788fdc2f0cacd0
LES20Canvas.java
0f6226b9f417182bbf791598000f0a153fbf191c 18-Jan-2011 Jeff Brown <jeffbrown@google.com> Merge "Add joystick support to framework."
ef1b612ebea2e5fe562abd826448533b01247189 17-Jan-2011 Romain Guy <romainguy@google.com> am d80d81bb: am a43cfd29: Merge "Improve hardware layers rendering speed when setting a View\'s alpha." into honeycomb

* commit 'd80d81bb65a1e60c0cc1a70959f6a67f55bdd5f0':
Improve hardware layers rendering speed when setting a View's alpha.
d80d81bb65a1e60c0cc1a70959f6a67f55bdd5f0 17-Jan-2011 Romain Guy <romainguy@google.com> am a43cfd29: Merge "Improve hardware layers rendering speed when setting a View\'s alpha." into honeycomb

* commit 'a43cfd2940d7c887a8130c0e972a1b398a887819':
Improve hardware layers rendering speed when setting a View's alpha.
d6cd572df8067c40b3e0e7e74e58cdb456b33e92 17-Jan-2011 Romain Guy <romainguy@google.com> Improve hardware layers rendering speed when setting a View's alpha.

Change-Id: Ib1275677f531c60d9919978c5538c663fdb823b5
iew.java
iewGroup.java
cb1404e45639d20439d7700b06d57ca1a1aad1fa 16-Jan-2011 Jeff Brown <jeffbrown@google.com> Add joystick support to framework.

Change-Id: I95374436708752e1a9cff3f85c5b9bc3e0987961
nputDevice.java
eyEvent.java
otionEvent.java
iew.java
iewGroup.java
iewRoot.java
indow.java
c886ff38c73983d028feae7cca0ee90915ebe67b 17-Jan-2011 Jeff Brown <jeffbrown@google.com> am fed9d654: am 5cdf0752: Merge "Support non-rectangular input regions." into honeycomb

* commit 'fed9d654e9f769a2d81682121faff01fee11555f':
Support non-rectangular input regions.
8675b3f79d20b1f0527999717012ece8c326a308 17-Jan-2011 Romain Guy <romainguy@google.com> am 761ae69b: am 3c372789: Merge "Don\'t dispatchDetachedFromWindow() if the View was not attached." into honeycomb

* commit '761ae69b7cb5639a5f468f258848578a6c8feb72':
Don't dispatchDetachedFromWindow() if the View was not attached.
fed9d654e9f769a2d81682121faff01fee11555f 17-Jan-2011 Jeff Brown <jeffbrown@google.com> am 5cdf0752: Merge "Support non-rectangular input regions." into honeycomb

* commit '5cdf07524132722e0db69db1ca8dcaf3f0073265':
Support non-rectangular input regions.
5cdf07524132722e0db69db1ca8dcaf3f0073265 17-Jan-2011 Jeff Brown <jeffbrown@google.com> Merge "Support non-rectangular input regions." into honeycomb
fbf097732137a32930d151f7ba6816a5b870c32a 16-Jan-2011 Jeff Brown <jeffbrown@google.com> Support non-rectangular input regions.

This enables the system bar to carve out a region through which
events will be sent to the IME behind it.

Bug: 3238092
Change-Id: I69b855a8d9b5b3ee525266c0861826e53e5b5028
WindowSession.aidl
iewRoot.java
iewTreeObserver.java
761ae69b7cb5639a5f468f258848578a6c8feb72 16-Jan-2011 Romain Guy <romainguy@google.com> am 3c372789: Merge "Don\'t dispatchDetachedFromWindow() if the View was not attached." into honeycomb

* commit '3c372789ea0b7836c6a9fe4852fac0de3f29fbbf':
Don't dispatchDetachedFromWindow() if the View was not attached.
90fc03bc493fc2c984599b198b9d50bc387134f2 16-Jan-2011 Romain Guy <romainguy@google.com> Don't dispatchDetachedFromWindow() if the View was not attached.

Change-Id: I36cb697be76c8c03497284563dc339c5367559c6
iewRoot.java
720b3ee1b18465f0c8884183a9ae4b690a9a8cd8 16-Jan-2011 Romain Guy <romainguy@google.com> am 2be00ccb: am 8dd5b1e5: Prevent NPE when a View is detached without having been attached. Bug #3355252

* commit '2be00ccbe7c8e2aedfa15b6b7c469160734dda15':
Prevent NPE when a View is detached without having been attached. Bug #3355252
8dd5b1e53184ed3b786dd329e12d665ae59ca3f4 15-Jan-2011 Romain Guy <romainguy@google.com> Prevent NPE when a View is detached without having been attached.
Bug #3355252

Change-Id: I58e03983ccf6a27a24619ec0f49659d6d7cc0a64
iew.java
2be00ccbe7c8e2aedfa15b6b7c469160734dda15 15-Jan-2011 Romain Guy <romainguy@google.com> am 8dd5b1e5: Prevent NPE when a View is detached without having been attached. Bug #3355252

* commit '8dd5b1e53184ed3b786dd329e12d665ae59ca3f4':
Prevent NPE when a View is detached without having been attached. Bug #3355252
a34773300009e41d965a7b9232f488ab7295e538 15-Jan-2011 Dianne Hackborn <hackbod@google.com> am 88471b25: Merge "DO NOT MERGE Added check to make orientation calculations more robust" into honeycomb

* commit '88471b25632818a8bc79193e20bd04a8be39f660':
DO NOT MERGE Added check to make orientation calculations more robust
fcbbb31f27f00efe7314031bac23e1e011954ad6 14-Jan-2011 Niclas Kellgren <niclas.kellgren@sonyericsson.com> DO NOT MERGE Added check to make orientation calculations more robust

Added check avoid a division by zero resulting in NaN which in turn
makes checkFullyTilted to ignore high tilt angles from then on.
If (x, y, z) == (0, 0, 0) then there is no tilt or rotation and
this vector must be ignored. This check is extended to ignore all
small acceleration values where noise can be of big influence.

Low or zero readings can happen when space travelling free falling,
but more commonly when shaking or getting bad readings from the sensor.
The accelerometer is turned off when not used and polling it too soon
after it is turned on may result in (0, 0, 0).

Change-Id: I7b61b77c8a9d4e137bf6352b84f0c358d93c82ae
indowOrientationListener.java
544ff558a80912d968570494363cea6540c08dd3 15-Jan-2011 Dianne Hackborn <hackbod@google.com> am 29c99aaa: Merge "Added check to make orientation calculations more robust" into gingerbread

* commit '29c99aaaaed00c605fb6cd64de169fafad0e40ed':
Added check to make orientation calculations more robust
75f555f26ffe1471ce0b9c7f83c4c81cff9ff145 14-Jan-2011 Patrick Dubroy <dubroy@google.com> am bdcff0fa: Merge "Allow old view hierarchy to be GC\'ed more quickly during rotation." into honeycomb

* commit 'bdcff0fa8383a1ae93c18a768a7c2bf150d3f405':
Allow old view hierarchy to be GC'ed more quickly during rotation.
ec84c3a189e4aa70aa6ea8ba712e5a4f260a153b 14-Jan-2011 Patrick Dubroy <dubroy@google.com> Allow old view hierarchy to be GC'ed more quickly during rotation.
iew.java
e1cc00bba019bdc165d61b14fef8a72fdeed1ae5 14-Jan-2011 Christopher Tate <ctate@google.com> am 64cb24e6: Merge "Send DRAG_STARTED notices to views that become visible during drag" into honeycomb

* commit '64cb24e686b13aabe3d28e049796c8315b011485':
Send DRAG_STARTED notices to views that become visible during drag
64cb24e686b13aabe3d28e049796c8315b011485 14-Jan-2011 Christopher Tate <ctate@google.com> Merge "Send DRAG_STARTED notices to views that become visible during drag" into honeycomb
f21ae26935349f45c55afa5c8e45e1f6aa880915 14-Jan-2011 Dianne Hackborn <hackbod@google.com> am d922ae01: Add Holo theme for IMEs.

* commit 'd922ae01ca99a2b6d39a9393f86776a1d10ebd14':
Add Holo theme for IMEs.
d922ae01ca99a2b6d39a9393f86776a1d10ebd14 14-Jan-2011 Dianne Hackborn <hackbod@google.com> Add Holo theme for IMEs.

Also clean up theme selection code to get rid of duplication.

Change-Id: Idf7b21db70ee83fce24756ead877169bd08b77a9
ontextThemeWrapper.java
86cab1bd52197d6fa60786413fad9788d9236762 14-Jan-2011 Christopher Tate <ctate@google.com> Send DRAG_STARTED notices to views that become visible during drag

We now recognize that a view is now a candidate for receiving the drop
but hasn't yet been notified about it, and send the DRAG_STARTED lifecycle
event properly. This change also changes the DRAG_ENDED policy: now,
every view that had been sent a DRAG_STARTED receives the corresponding
DRAG_ENDED event, even though subsequent visibility changes may have
occured.

Change-Id: If4ae9ddbf414703e9f15eb2005471626bf19f316
iewGroup.java
a1454becb96456fe7aef18519e891a088063089d 14-Jan-2011 Niclas Kellgren <niclas.kellgren@sonyericsson.com> Added check to make orientation calculations more robust

Added check avoid a division by zero resulting in NaN which in turn
makes checkFullyTilted to ignore high tilt angles from then on.
If (x, y, z) == (0, 0, 0) then there is no tilt or rotation and
this vector must be ignored. This check is extended to ignore all
small acceleration values where noise can be of big influence.

Low or zero readings can happen when space travelling free falling,
but more commonly when shaking or getting bad readings from the sensor.
The accelerometer is turned off when not used and polling it too soon
after it is turned on may result in (0, 0, 0).

Change-Id: I19aec653abb8ab6f7126778035c8c96449f1326f
indowOrientationListener.java
494565ad1b0efe8ab70d23c61866748a9de66337 14-Jan-2011 Niclas Kellgren <niclas.kellgren@sonyericsson.com> Added check to make orientation calculations more robust

Added check avoid a division by zero resulting in NaN which in turn
makes checkFullyTilted to ignore high tilt angles from then on.
If (x, y, z) == (0, 0, 0) then there is no tilt or rotation and
this vector must be ignored. This check is extended to ignore all
small acceleration values where noise can be of big influence.

Low or zero readings can happen when space travelling free falling,
but more commonly when shaking or getting bad readings from the sensor.
The accelerometer is turned off when not used and polling it too soon
after it is turned on may result in (0, 0, 0).

Change-Id: I19aec653abb8ab6f7126778035c8c96449f1326f
indowOrientationListener.java
bd04922f8fe08e132667da41fe55dad2e8044d0b 14-Jan-2011 Romain Guy <romainguy@google.com> am 5b907be8: Merge "Move the main thread check to the appropriate place." into honeycomb

* commit '5b907be8f5c387e7580a8e43935250adabc408c8':
Move the main thread check to the appropriate place.
5b907be8f5c387e7580a8e43935250adabc408c8 14-Jan-2011 Romain Guy <romainguy@google.com> Merge "Move the main thread check to the appropriate place." into honeycomb
501053a16dd8b24664856cab5551b246550d1ce5 14-Jan-2011 Romain Guy <romainguy@google.com> Move the main thread check to the appropriate place.

Change-Id: Ic9bcf209e9398ea05b293a8cc31ac7f234b9de16
iewRoot.java
4809e629a62a0c2f44c4ad8f833b7f0602afcd64 14-Jan-2011 Huahui Wu <hwu@google.com> am bfbb089c: Merge "b/3133123 Pass touch point ids to WebKit." into honeycomb

* commit 'bfbb089c7fcb2bc74f55fe3c171ef1b6df78b2da':
b/3133123 Pass touch point ids to WebKit.
bfbb089c7fcb2bc74f55fe3c171ef1b6df78b2da 14-Jan-2011 Huahui Wu <hwu@google.com> Merge "b/3133123 Pass touch point ids to WebKit." into honeycomb
e838a427786f136155b618962bd18781be8e012d 14-Jan-2011 Huahui Wu <hwu@google.com> b/3133123 Pass touch point ids to WebKit.

This is the CL in framework side and it needs the WebKit part CL:
https://android-git.corp.google.com/g/#change,89627

Change-Id: I11d4ffa29fa106d918332e6983090b06726ebd36
otionEvent.java
b054b4c8359992c13cc73d70914bc2b5bdb724de 14-Jan-2011 Dianne Hackborn <hackbod@google.com> am 8eca7a1e: Merge "Fix issue #3153930: orphan window left on screen" into honeycomb

* commit '8eca7a1e11d905e1d89d4c45adfe210536b5f521':
Fix issue #3153930: orphan window left on screen
8eca7a1e11d905e1d89d4c45adfe210536b5f521 14-Jan-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #3153930: orphan window left on screen" into honeycomb
2cf2b0c84cf1091f9700b4d1da823f590b52b9ec 13-Jan-2011 Gilles Debunne <debunne@google.com> am 783e6c8b: Merge "fix for cts DuplicateParentStateEnabled bug with TextViews." into honeycomb

* commit '783e6c8b3ba7eecac3bdd796b53a1293f9cb1be4':
fix for cts DuplicateParentStateEnabled bug with TextViews.
783e6c8b3ba7eecac3bdd796b53a1293f9cb1be4 13-Jan-2011 Gilles Debunne <debunne@google.com> Merge "fix for cts DuplicateParentStateEnabled bug with TextViews." into honeycomb
e3f71db5532858f0d609ca75024e4a964bd011aa 13-Jan-2011 Svetoslav Ganov <svetoslavganov@google.com> am cecb1db6: Merge "Invisible of gone views fire accessibility events." into honeycomb

* commit 'cecb1db6accffaa4749b1b0e71c0ec842c5b7a1a':
Invisible of gone views fire accessibility events.
fb81703ab11c653a587b652b90ec3b550f500ccf 13-Jan-2011 Gilles Debunne <debunne@google.com> fix for cts DuplicateParentStateEnabled bug with TextViews.

Bug 3347206

Do not add an extra slot in the drawable state for multiline if it
is not needed.

Updated setDuplicateParentStateEnabled documentation.

Change-Id: I95f74284721e25b483e12e9b861e810a55c260b6
iew.java
f99f9c5f92dbcdf5f6e9c93847a5dae4c35a817e 13-Jan-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3153930: orphan window left on screen

The problem is that if a window containing children is removed
before the children are, the children may be lost. This change
(amongst the huge amount of new debugging code) now ensures at
this point that all children windows are removed when the parent
is.

Note that this results in a bunch of error messages now as the
client app tries to continue to do things with that child window.
This is correct, it shouldn't be doing that, and needs to be
fixed to stop it. But at least it now can't cause the window
manager to leak surfaces.

Change-Id: I7b80dd89ff9de7cb5af1dc759cfa4b31ac29cddc
indowManagerPolicy.java
9cd1eca8546a6e633c94830d2195634fbfbb7144 13-Jan-2011 Svetoslav Ganov <svetoslavganov@google.com> Invisible of gone views fire accessibility events.

bug:3350110

1. Added a visibility check before sending an accessibility event.

Change-Id: I322ede3844502bc623ba2aff2b3586a9925ba682
iew.java
718153c71704f18ddd6e436df2008eb5ef9f6a06 13-Jan-2011 Romain Guy <romainguy@google.com> am c15c7a79: Merge "Cleanup implementation of hardware layers." into honeycomb

* commit 'c15c7a79a69733bd21d6548fd74c2874fdabe7e8':
Cleanup implementation of hardware layers.
c15c7a79a69733bd21d6548fd74c2874fdabe7e8 13-Jan-2011 Romain Guy <romainguy@google.com> Merge "Cleanup implementation of hardware layers." into honeycomb
ada830f639591b99c3e40de22b07296c7932a33f 13-Jan-2011 Romain Guy <romainguy@google.com> Cleanup implementation of hardware layers.

The new implementation relies on OpenGLRenderer's existing layer
code instead of duplicating it. The new code is much cleaner, with
simpler and better APIs and allows tracking of drawn regions inside
layers. Region tracking is not yet enabled but this will be done
in a future CL.

Change-Id: Ie826121a2227de8252c77b992a61218defea5143
LES20Canvas.java
LES20Layer.java
ardwareCanvas.java
iewGroup.java
3186e0da33256400b52024b268c9e6e048caee6c 13-Jan-2011 Christopher Tate <ctate@google.com> am 44a94bb5: Merge "Turn off debugging logspam for release" into honeycomb

* commit '44a94bb5a915922400944f666b218f4bb268c565':
Turn off debugging logspam for release
44a94bb5a915922400944f666b218f4bb268c565 13-Jan-2011 Christopher Tate <ctate@google.com> Merge "Turn off debugging logspam for release" into honeycomb
994ef9296a00523de1df424b4b760b4416ead58b 13-Jan-2011 Christopher Tate <ctate@google.com> Turn off debugging logspam for release

Fixes bug 2679101

Change-Id: I94cf1b1d0b732b2030008118eff3534f0e0608f7
iewDebug.java
dd14ec2e85204f93b7f80c5afd2361c68b3dc4f0 13-Jan-2011 Chet Haase <chet@google.com> am ef9932c2: Merge "Supress layout requests while a LayoutTransition is running." into honeycomb

* commit 'ef9932c2505eaf5a4256c6c398aa640bee3b47ea':
Supress layout requests while a LayoutTransition is running.
9c0874408cfc6f6f4e4561973ca5ae52a5982db7 13-Jan-2011 Chet Haase <chet@google.com> Supress layout requests while a LayoutTransition is running.

LayoutTransition works by animating layout-related properties
(left, right, top, and bottom). This works great when that animation
is the only thing affecting the layout of the UI. But if there are other things
happening in the application that cause layout to run on that
container or in its parent hierarchy, this can cause the layout properties
on its children to get mis-set during the middle of the transition.
This results in artifacts like animating objects jumping to locations where
they would be were there no animation running.

The fix is to supress layout requests on that container (and its children)
until the transition is complete (then issue a layout request on the container
to make sure that the container has the correct layout data)

Change-Id: I15bf0423a11409f854076f86099233db7fe4edc0
iew.java
iewGroup.java
703b0bc95313d6b43befce7b8a4ac6f166ccb9dc 13-Jan-2011 Romain Guy <romainguy@google.com> am d6b13534: Merge "Only enable GL rendering on the main thread." into honeycomb

* commit 'd6b13534d44faee5bf80eb02495c17aa0195d381':
Only enable GL rendering on the main thread.
4f6aff386045000c2c03b903c7109cb42092b7ea 13-Jan-2011 Romain Guy <romainguy@google.com> Only enable GL rendering on the main thread.

Change-Id: I41950f4c0a5063ee5d6950cf137eb60a1c7a72fe
ardwareRenderer.java
iewRoot.java
3aaff3aef4998156226486d1fad297150dd7a6bf 12-Jan-2011 Romain Guy <romainguy@google.com> Better debug info for layers.

Change-Id: I816c2446a33a1135553eaeea2f89c7418641cfe1
iew.java
1138401f348b2e30dc48c01da9a26e66e51b318c 12-Jan-2011 Romain Guy <romainguy@google.com> am e465b117: Merge "Better debug info for layers." into honeycomb

* commit 'e465b11745cdc49283c360fb2acf01649f4f4fb0':
Better debug info for layers.
5ecceb7df70a6e6b2a32ab97630bc625000261da 12-Jan-2011 Romain Guy <romainguy@google.com> am 85354828: Merge "Cleanup GL objects on the correct thread." into honeycomb

* commit '853548287ffe4eb85d1bd10669270292336d137a':
Cleanup GL objects on the correct thread.
853548287ffe4eb85d1bd10669270292336d137a 12-Jan-2011 Romain Guy <romainguy@google.com> Merge "Cleanup GL objects on the correct thread." into honeycomb
57066eb64c9a190d1afc87bb060bbb2d31e5b86c 12-Jan-2011 Romain Guy <romainguy@google.com> Cleanup GL objects on the correct thread.

Change-Id: Iddfea6e08a6591a4fab147151098ef27005f373d
LES20Canvas.java
LES20Layer.java
771fcc5e3d87f81663fe91149f3b680beec65f4a 12-Jan-2011 Christopher Tate <ctate@google.com> am 28514f8f: Merge "API CHANGE: startDrag() now takes "int flags" instead of "boolean localOnly"" into honeycomb

* commit '28514f8f9cdac95799d5654a30fe36ef05443dd3':
API CHANGE: startDrag() now takes "int flags" instead of "boolean localOnly"
af6295869051ad351070354bff9f01e5e65ea824 12-Jan-2011 Romain Guy <romainguy@android.com> am 9688fdf5: am fcf3d12d: Merge "Typo in Javadoc"

* commit '9688fdf51edb82a73e1a6d436bf7bce706c049fb':
Typo in Javadoc
02d2b3ba9ba830a8147db2739613f7bbb2d0fcbf 11-Jan-2011 Christopher Tate <ctate@google.com> API CHANGE: startDrag() now takes "int flags" instead of "boolean localOnly"

There will be, in the future, a flag (View.DRAG_FLAG_GLOBAL) that means
for the drag to be cross-application. For now that flag constant is @hide
and furthermore the server-side implementation strips it, enforcing
local-only drags.

Change-Id: I8db840480ab90e18a5b8ecf29d62b4e6eafd405e
WindowSession.aidl
iew.java
6c319ca1275c8db892c39b48fc54864c949f9171 11-Jan-2011 Romain Guy <romainguy@google.com> Better backend for hardware layers.

With this new backend, a hardware layer is only recreated when
its associated view is udpated. This offers fast composition
in GL and fast update of the layer in GL as well.

Change-Id: I97c43a612f5955c6bf1c192c8ca4af10fdf1d076
LES20Canvas.java
LES20DisplayList.java
LES20Layer.java
LES20RecordingCanvas.java
ardwareCanvas.java
ardwareLayer.java
ardwareRenderer.java
iew.java
iewGroup.java
a07105b7d2a27e6d69407bf96ddb773bddb5e553 11-Jan-2011 Romain Guy <romainguy@google.com> Better logging of out of memory errors in OpenGLRenderer.

Change-Id: I6b72a084340d8d4b6e0b0a100ed4314d09d441ef
iewRoot.java
72f0a276ffd5f3d6513400e50de1a8bda547bed4 10-Jan-2011 Romain Guy <romainguy@google.com> Better documentation for FLAG_HARDWARE_ACCELERATED
Bug #3154883

Change-Id: I2062781ba3b447b8ec4e0836b9ddeaa97c7aa60e
indowManager.java
fcd3e8e6faa5c73d3cf964b765ba3199ff323276 09-Jan-2011 Romain Guy <romainguy@google.com> Merge "Tighten up AsyncTask's semantics and behavior. Bug #3109366 Bug #3109382" into honeycomb
e95003e4a15eea2d5f93950fc46f99ff2b9c973a 09-Jan-2011 Romain Guy <romainguy@google.com> Tighten up AsyncTask's semantics and behavior.
Bug #3109366
Bug #3109382

The new behavior of AsyncTask is the following:
- Unchanged if you don't call cancel()
- If you call cancel():
- Either onCancelled() *OR* onPostExecute() is invoked
- onCancelled() is invoked only after doInBackground() finishes

Change-Id: If53faec5890d2fa7098aea76973186a0b1026b39
iewGroup.java
247fe74c934cb3fba85aae7e051a8044f460fb11 09-Jan-2011 Dianne Hackborn <hackbod@google.com> Implement issue # 3255887 could CursorLoader offer...

...to throttle contentobserver-based requeries

Why yes, I guess it could.

This also reworks AsyncTaskLoader to not generate multiple
concurrent tasks if it is getting change notifications before
the last background task is complete.

And removes some of the old APIs that had been deprecated but
need to be gone for final release.

And fixes a few little problems with applying the wrong theme
in system code.

Change-Id: Ic7a665b666d0fb9d348e5f23595532191065884f
ontextThemeWrapper.java
9688fdf51edb82a73e1a6d436bf7bce706c049fb 08-Jan-2011 Romain Guy <romainguy@android.com> am fcf3d12d: Merge "Typo in Javadoc"

* commit 'fcf3d12d701e41d6e46bae8c13776f56d54f90e8':
Typo in Javadoc
bd6fda11d287ba8ac749e06053dc9488653d1471 08-Jan-2011 Christian Mehlmauer <FireFart@gmail.com> Typo in Javadoc

Change-Id: I911ce02cab178f64aab222e4abcd25d113d75ec5
ayoutInflater.java
36d4c3f02b4c3366b965896bc3da8bb332db1a64 07-Jan-2011 Christopher Tate <ctate@google.com> Rename drag "thumbnail" to the drag "shadow"

No functional changes; just a rename of the relevant class/method/parameters.

Change-Id: I55d9ef7c2c17892b0bc99f5da622c281e006b53e
iew.java
7e68efb0a098149e1e6f86663e978e9fd26e0ea1 07-Jan-2011 Romain Guy <romainguy@google.com> Non-opaque views with fading edges cannot be marked dirty opaque.
Bug #3325084

Change-Id: I80b7653daa2ae3cc6d81da1063911aa4cb69e8f4
iewGroup.java
2c602e6a66469c9fcd8bc4d7d64aa24134dad8d9 07-Jan-2011 Romain Guy <romainguy@google.com> Merge "Non-opaque views with fading edges cannot be marked dirty opaque. Bug #3325084" into honeycomb
ad7fa7fa77318d416ed338ede6aae582c239f822 07-Jan-2011 Dianne Hackborn <hackbod@google.com> WM part of #3293405: Screen needs to be redrawn when HDMI is plugged in

Change-Id: If5ceb28073c6abf14165871bd99cb481b31a863b
indowManagerPolicy.java
171c592f0b7066acf279863c8a52ddabea49d3db 06-Jan-2011 Romain Guy <romainguy@google.com> New layers API for Views.

This API can be used to back a view and its children with either a
software layer (bitmap) or hardware layer (FBO). Layers have
various usages, including color filtering and performance
improvements during animations.

Change-Id: Ifc3bea847918042730fc5a8c2d4206dd6c9420a3
LES20Canvas.java
iew.java
iewGroup.java
b9a12d7b87e39e3f1588eb8d8d28129ae5449039 07-Jan-2011 Joe Onorato <joeo@google.com> Merge changes Ib809d4c5,I05d69da4 into honeycomb

* changes:
This makes the events at the edge of the screen find the button.
some touch event debugging
03ab0c7231a5c534b86eca28d875c6026ae09564 07-Jan-2011 Joe Onorato <joeo@google.com> some touch event debugging

Change-Id: I05d69da4db8c03f9c5131cd271bd9ee1b4996ca9
iewGroup.java
5977baa1fa24125c148a72699b53e62abaf08960 06-Jan-2011 Chet Haase <chet@google.com> Reuse of native display list objects

Change-Id: Ia4553e23930ad20e56c11faa7809be788a1ad4bb
LES20Canvas.java
LES20DisplayList.java
dab559a24f58d502aeeba62d2e341f0438f52b35 05-Jan-2011 Michael Jurka <mikejurka@google.com> exposing isDirty() method on View

- needed in Launcher2 for implementation of caching views to bitmaps

Change-Id: I1dc1e8e4328106f88e1aa8e55ccb17b08fc9756b
iew.java
9e90a9953b65ae575ec8db3989857e0c145724b1 05-Jan-2011 Chet Haase <chet@google.com> Reuse display lists at the java level.

Objects are invalidated and reset instead of being nulled out
and recreated. This avoids creating small amounts of garbage for
the display list and canvas objects.

Change-Id: I464fac7ea8944c19ad6d03f13a95d9017e3f4262
isplayList.java
LES20Canvas.java
LES20DisplayList.java
LES20RecordingCanvas.java
iew.java
64da12ab1f472e01325b6c6d094153ac110eaf7b 05-Jan-2011 Jeff Brown <jeffbrown@google.com> Add dispatch key shortcut window callback.

Enables Activities and Dialogs to implement key shortcut behavior.
Useful for global key shortcuts that are not bound to the focused
view or to a menu.

Change-Id: If377d20b227ee1c5cac84c47c9630b2d77f67e2c
eyEvent.java
iew.java
indow.java
70588bf864f961974c93aace7586d3e2773a54a8 05-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> resolved conflicts for merge of 3a2c6bf0 to master

Change-Id: I1963d8fc391bb84de1054f2b20ce4e082d764cbe
3a2c6bf0fcae9421cccf113ff972df7aaeb6d3e9 05-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> am 69ea4e15: Documentation fixes found over vacation hacking.

* commit '69ea4e15e52c456537575d21443ac1efdb03a902':
Documentation fixes found over vacation hacking.
69ea4e15e52c456537575d21443ac1efdb03a902 05-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> Documentation fixes found over vacation hacking.

Change-Id: I28900026465d66d950cf4f05f0c202b46c3c2d43
iew.java
3dbf55c3a2d993b89d0947885061cf8421930639 16-Dec-2010 Gilles Debunne <debunne@google.com> TextView's color transparency is taken into account.

Unless it has a background, the TextView will be able to support
alpha (text, cursor and highlighted text colors).

Background colored spans should be detected and should also multiply
their alpha by mCurrentAlpha.

Bug 3144861

Change-Id: If640895b8c0b25dc00b909a0a118b68fac0cfd76
iew.java
3f476b34049d062942eafcf48396f593e00bd324 04-Jan-2011 Adam Powell <adamp@google.com> Revisiting ActionBar API and layout.

Fix several bugs where ActionBar was ignoring LayoutParams in action
views.

Add convenience methods for toggling display options flags.

Add layout resource version of ActionBar#setCustomView

Fix a bug preventing actionViewClasses from being loaded properly in
menu xml.

Change-Id: I0d9a0b635fd9cfc020bac69369c0c7749c226349
enuInflater.java
enuItem.java
7f3d515f5e7bec65bea5e4e3aeeed716cea90876 05-Jan-2011 Romain Guy <romainguy@google.com> Merge changes Ia8a15db8,I20ac5203

* changes:
Don't enable hardware acceleration when the app owns the surface. Bug #3323096
Make FrameLayout support mixed wrap_content/match_parent children. Bug #3259668
1aec9a2212dd76e47ce0215006e5415b6430b54f 05-Jan-2011 Romain Guy <romainguy@google.com> Don't enable hardware acceleration when the app owns the surface.
Bug #3323096

Change-Id: Ia8a15db844703199b3cee3d178f118159315c2b9
iewRoot.java
b35cd54b88292bd6cf0387406ad9071f5475c6a7 05-Jan-2011 Dianne Hackborn <hackbod@google.com> No longer needed.

Change-Id: Ia2e8264147bb02e29599227d0588e40b1e626358
ontextThemeWrapper.java
6b5108bc9ce6401174fb1abf6791222f3e0353c4 05-Jan-2011 Romain Guy <romainguy@google.com> Change the OpenGL viewport when new layout params are used.
Bug #3303158

Change-Id: Id0b8667b262c218ead5feeb5df2c3a256f522bed
iewRoot.java
8235404786b9a78321691e4c3ac9bc66c55c602d 29-Dec-2010 Jeff Brown <jeffbrown@google.com> Merge "Add initial support for cursor-based pointing devices."
83c09685f2e62bc3cf7e71bc61d903f4b9ccaeb4 24-Dec-2010 Jeff Brown <jeffbrown@google.com> Add initial support for cursor-based pointing devices.

Some parts stubbed out but you can plug in a mouse and move
a green cursor around to interact with the UI.

Change-Id: I80d597a7f11d3bd92041890f74b3c77326975e6e
indowManager.java
6c7ad5dbed878a4b477edd8d92004a9be672a731 28-Dec-2010 Chet Haase <chet@google.com> Changes to view position update pivot point

Change-Id: I8ca8e2c8c016ae5ced32c8f8fbcbcded9fa3a466
iew.java
82d731ac5d28fb54c49948116786813a62b07b8b 24-Dec-2010 Ken Wakasa <kwakasa@google.com> Add TYPE_NUMBER_VARIATION_PASSWORD for entering a numeric password.

Also, bug fix in EditoInfo.makeCompatible().

bug: 3296883
Change-Id: Icc663b375cffbe1f4506d1758d624a1acca3576b
nputmethod/EditorInfo.java
fa93584a4fab6ca8d9348658dc30cedf76891753 23-Dec-2010 Jeff Brown <jeffbrown@google.com> am c6f2b3b3: Merge "Fix policy issues when screen is off. (DO NOT MERGE)" into gingerbread

* commit 'c6f2b3b302c06b8b7b81ec7e3a43a7df1813d0e0':
Fix policy issues when screen is off. (DO NOT MERGE)
995e77431982f9a320451dbe6132a62e69f73bab 23-Dec-2010 Jeff Brown <jeffbrown@google.com> Enable touch splitting by default for Honeycomb apps.

Also fixed some bad comments I noticed along the way.

Change-Id: I4328c8aaa22f48a5c1fd274e889abb7823747330
iew.java
iewGroup.java
eb9f7a01b0f501a535d872a957c1102ebb13d1c7 30-Oct-2010 Jeff Brown <jeffbrown@google.com> Fix policy issues when screen is off. (DO NOT MERGE)

Rewrote interceptKeyBeforeQueueing to make the handling more systematic.
Behavior should be identical except:
- We never pass keys to applications when the screen is off and the keyguard
is not showing (the proximity sensor turned off the screen).
Previously we passed all non-wake keys through in this case which
caused a bug on Crespo where the screen would come back on if a soft key
was held at the time of power off because the resulting key up event
would sneak in just before the keyguard was shown. It would then be
passed through to the dispatcher which would poke user activity and
wake up the screen.
- We propagate the key flags when broadcasting media keys which
ensures that recipients can tell when the key is canceled.
- We ignore endcall or power if canceled (shouldn't happen anyways).

Changed the input dispatcher to not poke user activity for canceled
events since they are synthetic and should not wake the device.

Changed the lock screen so that it does not poke the wake lock when the
grab handle is released. This fixes a bug where the screen would come
back on immediately if the power went off while the user was holding
one of the grab handles because the sliding tab would receive an up
event after screen turned off and release the grab handles.

Bug: 3144874
Change-Id: Iebb91e10592b4ef2de4b1dd3a2e1e4254aacb697
indowManagerPolicy.java
f74dcfcf001849096a95496a8cd30bed25e79757 22-Dec-2010 Chet Haase <chet@google.com> Merge "Account for background drawable size changing when lrtb properties change"
55dbb6516d8b3d04ed23cfd613aee24bd525b965 22-Dec-2010 Chet Haase <chet@google.com> Account for background drawable size changing when lrtb properties change

LayoutTransition may set the left, right, top, bottom properties of a View when
animating it. If the View has a background drawable, and if these properties change
the actual dimensions of the view, then the background drawable must be informed
of the size change in order to display itself correctly.

Change-Id: I8ae47a051b250d0d4bdee97b1f1b5d27fe3f7f8b
iew.java
c1df907e3950fd8d2efac110edd72ea07b3b441e 22-Dec-2010 Jeff Brown <jeffbrown@google.com> Support invoking key shortcuts using Control.

This enables Select All, Cut, Copy and Paste behavior in TextViews
and provides a general pattern for implementing additional keyboard
accelerators based on Control key shortcuts. The same shortcuts
also apply to menu accelerators.

Bug: 3286262
Change-Id: I7d458ee26abf51e0de1735ce490ce3baf504b471
eyEvent.java
iewRoot.java
16331c8a1d33defccc5cbb18694def79196c921b 20-Dec-2010 satok <satok@google.com> Add a parameter to InputMethodManagerService.getEnabledSubtype for allowing to select subtypes implicitly if no subtype is enabled.

Bug: 3142286

Change-Id: I92d019d0648c552e6d7695c3530aa81ae054d702
nputmethod/InputMethodManager.java
96abab264e4d96071dc169b4828e950c1ae59681 21-Dec-2010 Patrick Dubroy <dubroy@google.com> Merge "Ensure bitmaps aren't freed while referenced from a display list"
f890fab5a6715548e520a6f010a3bfe7607ce56e 20-Dec-2010 Patrick Dubroy <dubroy@google.com> Ensure bitmaps aren't freed while referenced from a display list

Also removes the reference queue finalizers. They aren't necessary
anymore now that Bitmaps are allocated in the heap.
LES20Canvas.java
LES20DisplayList.java
LES20RecordingCanvas.java
cec4328e63ecd773b3606bd6fa0c32cdb08fa44a 20-Dec-2010 Chet Haase <chet@google.com> Merge "Make sure background drawables are correct when View is attached"
a9b61ac69cd40bf019e640abb34f2b027378994c 20-Dec-2010 Chet Haase <chet@google.com> Make sure background drawables are correct when View is attached

Books had a bug where the search menu item would come back with an
out of date background color. The problem was that the logic to
change the background color was tied into StateListDrawable animations.
These animations were not always completing because the action bar would
remove the associated View and the drawable animations would stop being
scheduled (no handler to post to).
The fix is to always set the drawable state to the current state when
a View is added to the hierarchy.

Change-Id: I0fc8008381f7439b9e49d6449ae618512c8e9dd0
iew.java
334031cd07c3bd09d23fce0ebaf946fc6ecfee26 10-Nov-2010 Glenn Kasten <gkasten@google.com> Fix documentation errors

Fix typos.
Fix javadoc error.
Fix wrong instructions about new returning null.

Change-Id: I76bca22e386839007fc99667b07649a4ced4180f
urface.java
urfaceHolder.java
urfaceView.java
4c7cc34127efa3308e1a09b28728868911b79789 17-Dec-2010 Dianne Hackborn <hackbod@google.com> Demo hack!

To make a 800 tall screen run like a 720:

adb shell setprop persist.demo.screensizehack 800=720

Note this is a persistent property, so it will (intentionally) remain across boots.

Change-Id: I8a8a9f937399327444e8fb154b91f0e642db116e
isplay.java
4e6319b73c85082e18d1c532b86336ddd1f8cfaa 13-Dec-2010 Jeff Brown <jeffbrown@google.com> Add initial support for TAB navigation.

Bug: 3286652
Change-Id: I813a0318b3b8d9c9bc791ea6a2427be11c08de00
ocusFinder.java
iew.java
iewGroup.java
iewRoot.java
d4bbcbd2dd516108a11acfab1d2d5c0c2f911aad 17-Dec-2010 Chet Haase <chet@google.com> Merge "Fix for TimePicker not redrawing itself."
c75ec3324e9e3e6500148cc2978caab90ea962e4 17-Dec-2010 Chet Haase <chet@google.com> Fix for TimePicker not redrawing itself.

The problem was that NumberPicker override View.draw(), but did not
call the superclass version of the method in some situations. This
resulted in the DIRTY flag for the view not getting cleared properly,
and future invalidations not propagating correctly.

The fix was to call super.draw() from NumberPicker.draw().

Change-Id: Ic17215dea86d54b77375494ada124dd6970e3ad6
iew.java
c91893511dc1b9e634648406c9ae61b15476e65d 15-Dec-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3272082: Contacts: when going back from edit view,
list UI is not ready yet

This involves some reworking of Loaders.

Loaders, in particular CursorLoader, are now expected to retain
their current data after being stopped. This allows applications
to keep that data across onStop() -> onStart(), so when the user
returns to the app it doesn't have to wait for the data to reload
and thus cause flicker.

This includes various API changes to better reflect the new
semantics, plus a new LoaderCallbacks method to tell the application
when it is actually time to stop their use of a loader's data.

Note this is somewhat half-done, to help checking in the extensive
application changes that are required without causing build breakage.

Change-Id: Ib4b3bf8185a6da46e7f06ca125521d65e2e380a1
indow.java
34961cc2e5cd483b15dfd1ff1eb33b01b849e0dc 15-Dec-2010 Gilles Debunne <debunne@google.com> Reduced Overfling threshold after many different cefficient tries.

Change-Id: Ib655e73fc75a09c6379883871fabf90793a6cff5
iewConfiguration.java
982b71bf4713d57b0fdb9acaaf9f9465a817aacb 15-Dec-2010 Patrick Dubroy <dubroy@google.com> Merge "Allocate bitmap backing buffers in the Java heap."
e4ac2d6b5723c95e648c489b187ddde449452c13 01-Dec-2010 Patrick Dubroy <dubroy@google.com> Allocate bitmap backing buffers in the Java heap.

Change-Id: I60f6ccff13357c1c518e9d56b02fe0171637edd1
LES20Canvas.java
aa0b92ce2b51987e9c864164234fe968ab5b9311 14-Dec-2010 Adam Powell <adamp@google.com> Fix bug 3210201 - Popup window wrong size/position when IME hidden

Fixes a case where ViewRoot does not recompute its size properly.
This caused various offsets to get out of sync and the window would
draw improperly.

Change-Id: Id0abb37bbf27b60de2dca4077c21040ec84ef163
iewRoot.java
d2835935d2df8be70d1b37d3ef3b2fe0155b3422 14-Dec-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3258849: Grab thumbnail when exiting an app via back

Also issue #3281400: Rotating a retained instance fragment leaks the fragment manager

And turn off fragment debug logging.

Change-Id: Ibdd7db82bb35618021bcba421ba92ced7cd691c2
WindowManager.aidl
urface.java
28cbf4bd5c204f0493a6fa448a259ec056dcc29e 13-Dec-2010 Jeff Brown <jeffbrown@google.com> Make framework modifier key handling more precise.

Change-Id: I0cc2276b31f882170aea575288f607a3a4ee05d4
eyCharacterMap.java
eyEvent.java
b8c0de2c2726f4e8f0029710047efe0c8e6661ed 13-Dec-2010 Romain Guy <romainguy@google.com> Improve error detection in HardwareRenderer.draw().
Bug #3280872

This should avoid crashes before we detect a GL error and we switch over to
software rendering.

Change-Id: Ieb4992576d20014e194aab863a456f09c5e19672
ardwareRenderer.java
c35a829b10946fe88b53fd3354b55218ecaff00e 10-Dec-2010 Gilles Debunne <debunne@google.com> Modified OverScroller curves

When OverFlinged, the scroller goes back to the edge using a spline
instead of a parabolic curve. This ensures that the final velocity of
this movement is null, thus removing the visual discontinuity that can
be observed with the current version.

Bouncing coefficient is deprecated. Changed doc accordingly.

New more expressive spline tension tuning coefficients.
These were tuned to match the one used before the refactoring of CL 81532.

Change-Id: I80dbccebea11544595935077463ad7737c3392e9
iewConfiguration.java
cf9cf2f40efc4ccf3f73e6fdb07725d9c00c4f91 09-Dec-2010 Gilles Debunne <debunne@google.com> New API in InputConnection to signal IME's text correction.

Scafolding so that the IME team can start working on this feature.

The animation part in the TextView is missing.

Change-Id: I8225538564370fba1500e3539742a8ab79bdd199
nputmethod/BaseInputConnection.java
nputmethod/CompletionInfo.java
nputmethod/CorrectionInfo.aidl
nputmethod/CorrectionInfo.java
nputmethod/InputConnection.java
nputmethod/InputConnectionWrapper.java
20232d0f7ce2220df72dd78bed052f6b4a643f10 09-Dec-2010 Adam Powell <adamp@google.com> Holo scrollbars and related tweaks.

Added setting for placing vertical scrollbars on left or right.

Added setting for showing fast scroll persistently.

Fixed a bug where inset padding was miscalculated for horizontal scroll bars.

Fixed a bug where padded ListViews would draw fading edges incorrectly

Change-Id: I1f8499895272d42598b4b3fd3375301115def461
iew.java
a64f506941c5c3113984cd3403b82cbcb6bf482d 10-Dec-2010 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #3272051: Use backward transition when going backwards."
7da6ac33a9de82be52e22846d5f22d502452854c 10-Dec-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3272051: Use backward transition when going backwards.

Also know as:

Issue #3272051 Contacts edit view: Tapping the in-app back button
results in a forward transition

Yeah more complexity in deciding which animation to use.

Also reduce complexity in deciding which app's animation set to use,
to balance things out (and make it have less stupid behavior).

Change-Id: I78c6c5c5249a96206f7e03ce587c1dcb9a7dc14f
WindowManager.aidl
af636ebf5feb2837683fbfe965040cb706b32ec1 10-Dec-2010 Romain Guy <romainguy@google.com> Don't set the invisible flag when saving an empty layer.
Bug #3270371

Change-Id: I65e85671c2fb70d74553c91213e5e759e0ac64ee
iew.java
d2112306330ce0c162bee4b864991962ca2b655a 08-Dec-2010 Mathias Agopian <mathias@google.com> remove support for PUSH_BUFFER surfaces and overlays

the same functionality is now supported through
the h/w composer HAL, and YUV support in the GPU.

Change-Id: I8146605449954b8e8fd7f78810b7d873c2d8f5bf
urface.java
urfaceHolder.java
urfaceView.java
indowManager.java
f8d47b88dc2fba738ed07be73af7f75832d597a1 08-Dec-2010 Romain Guy <romainguy@google.com> Merge "Fallback to software rendering when eglMakeCurrent fails. Bug #3200621"
9745fae73b584f3e9a9c304098ed9b11f506e93b 08-Dec-2010 Romain Guy <romainguy@google.com> Fallback to software rendering when eglMakeCurrent fails.
Bug #3200621

Change-Id: Id8a455e64a1af23840752124b49c070c00e5e2a6
ardwareRenderer.java
0aae2d4e0075fd699cf40b26dca0eb2c3b3e37d2 08-Dec-2010 Dianne Hackborn <hackbod@google.com> Rework activity lifecycle so onSaveInstanceState() is after onPause().

The goal is to fix a bunch of fragment-related bugs caused by various
things trying to do fragment transactions after onPause()... which
currently throws an exception, since this is after the activity's state
has been saved so the new fragment state can be lost.

The basic change is relatively simple -- we now consider processes
hosting paused or stopping activities to be unkillable, and the client
code now does the onSaveInstanceState() as part of stopping the
activity.

For compatibility, if an app's targetSdkVersion is < HONEYCOMB, the
client side will still call onSaveInstanceState() prior to onPause()
and just hold on to that state until it needs to report it in once
being stopped.

Also included here is a change to generate thumbnails by taking
screenshots. The code for generating thumbnails by re-rendering
the view hierarchy is thus removed.

Change-Id: Iac1191646bd3cadbfe65779297795f22edf7e74a
WindowManager.aidl
f9e2ca326f565e4012f83da25068c00edb087e94 08-Dec-2010 Mathias Agopian <mathias@google.com> Merge "resolved conflicts for merge of a0f011ff to master"
669084dbe6f1a20517964745028eff158c2c27e3 08-Dec-2010 Mathias Agopian <mathias@google.com> resolved conflicts for merge of a0f011ff to master

Change-Id: I4c17021fc269ce66c98cc345353600eda332f980
dde4c353851fd107ebe122a4ad9328e007c169b9 08-Dec-2010 Romain Guy <romainguy@google.com> Merge "Correctly release the OpenGL Canvas on EGL error."
67f27952c1bcb2230beef9b5ca0bf42edad436a9 08-Dec-2010 Romain Guy <romainguy@google.com> Correctly release the OpenGL Canvas on EGL error.

Change-Id: Ib31fd8445f7ce5f7aa7e0205de0e7db80d024fc2
ardwareRenderer.java
49ed71db425c5054e3ad9526496a7e116c89556b 07-Dec-2010 Jeff Brown <jeffbrown@google.com> Add support for fallback keycodes.

This change enables the framework to synthesize key events to implement
default behavior when an application does not handle a key.
For example, this change enables numeric keypad keys to perform
their associated special function when numlock is off.

The application is informed that it is processing a fallback keypress
so it can choose to ignore it.

Added a new keycode for switching applications.

Added ALT key deadkeys.

New default key mappings:
- ESC -> BACK
- Meta+ESC -> HOME
- Alt+ESC -> MENU
- Meta+Space -> SEARCH
- Meta+Tab -> APP_SWITCH

Fixed some comments.
Fixed some tests.

Change-Id: Id7f3b6645f3a350275e624547822f72652f3defe
eyCharacterMap.java
eyEvent.java
iew.java
iewRoot.java
indowManagerPolicy.java
dbf78bdb7a9aed3b8393c247128a7e8c760343b5 08-Dec-2010 Romain Guy <romainguy@google.com> Fix possible NPE in ViewRoot with GL rendering enabled.
Bug #3257222

Change-Id: Ic11cbe5f06311627eb7eac4dfa8864b43651d904
iewRoot.java
a0f011ff499289c89535c41ebe79c8c642414dff 07-Dec-2010 Mathias Agopian <mathias@google.com> am 05813b0e: Merge changes I244b5469,I32044e91 into gingerbread

* commit '05813b0eb92cb1bc79607ee402f14ca1e4b43f6d':
[3253328, 3171580] Treat GONE and INVISIBLE views the same when calculating transparent regions
[3171580] Fix two typos related to fixed-size buffers
4d2bd4c9ae028adbb863bf6dd0aa90f7249153fc 01-Dec-2010 Michael Jurka <mikejurka@google.com> fixing getLocationInWindow

- takes into account mTranslationX/Y

Change-Id: I7d622fe9e8b5e021f8585894b72ffd82c087cc57
iew.java
e33811512eb061338792dbb0dbd37a1b8e4e1079 03-Dec-2010 Mathias Agopian <mathias@google.com> [3253328, 3171580] Treat GONE and INVISIBLE views the same when calculating transparent regions

We only used to check for INVISIBLE, which prevented some Surfaceview
optimization to take place.

Change-Id: I244b54696d861a022ca1c334ff61ab7efb899587
iewGroup.java
f2f7d8f9dd75c6e32a46a28fd3f53435addf0746 03-Dec-2010 Chet Haase <chet@google.com> Fix invalidation issue for optimized/GL case.

The bug caused intermittent artifacts where some apps would not get
repainted until some overall screen invalidation occurred.

Change-Id: I82a3294429f15fe51cc8f4b47134e3b5540cb240
iew.java
iewGroup.java
189ee18d6c6483ad63cc864267328259e2e00b95 03-Dec-2010 Dianne Hackborn <hackbod@google.com> Implement smarter sizing of WRAP_CONTENT windows.

This extends the view hierarchy's measure pass to allow view to
propagate up to their parent additional information besides just
their measured size. They can now report that their measured width
and/or height should be larger than the size their parent is
limiting them to (even though by definition they need to contrain
their reported measurements to the limits imposed by the parent).

ViewRoot uses this information to determine if it should remeasure
the window with a larger size limit to try to make it fit.

Change-Id: I90af3b7a8ec45d0a5c003fb009857025209d83eb
urfaceView.java
iew.java
iewRoot.java
9065504a63d6bf37bf621191fda1d1fe4da76ee3 02-Dec-2010 Jeff Brown <jeffbrown@google.com> Improve support for external keyboards.

Use Vendor ID, Product ID and optionally the Version to
locate keymaps and configuration files for external devices.

Moved virtual key definition parsing to native code so that
EventHub can identify touch screens with virtual keys and load
the appropriate key layout file.

Cleaned up a lot of old code in EventHub.

Fixed a regression in ViewRoot's fallback event handling.

Fixed a minor bug in FileMap that caused it to try to munmap
or close invalid handled when released if the attempt to map
the file failed.

Added a couple of new String8 conveniences for formatting strings.

Modified Tokenizer to fall back to open+read when mmap fails since
we can't mmap sysfs files as needed to open the virtual key
definition files in /sys/board_properties/.

Change-Id: I6ca5e5f9547619fd082ddac47e87ce185da69ee6
iewRoot.java
7d695945801b8e6a051440731b500ff109e4b5ab 02-Dec-2010 Romain Guy <romainguy@google.com> Skip DIRTY_OPAQUE optimizations when ViewRoot changes the dirty region.
Bug #3159481

Change-Id: I97d6517f4648b3efe8b13a277e0374844a4d8455
iewRoot.java
67f23ba649b99647873b5a61e4a38de25fa6d660 02-Dec-2010 Michael Jurka <mikejurka@google.com> Revert "Re-add performance optimization in View"

Found reproducible cases of Launcher freezing up due to this change

This reverts commit 62490bd358cd001e00cb643cf3879d736c448788.

Change-Id: I1b10e05ee9f0c43566b53c7a11e61fc168d17a75
iew.java
407b4e91fe7627545b8110e683953353236b4543 01-Dec-2010 Christopher Tate <ctate@google.com> API CHANGE: drags can now carry an originator-only object payload

When calling startDrag(), the app can now supply an Object to be passed
along in every DragEvent that the app winds up receiving itself. This
object is *not* passed to any other applications; it's strictly app-
local. The purpose is to allow state tracking/management to be done
directly through the drag mechanism rather than requiring out-of-band
code.

An example of the utility here might be TextEdit widgets. A drag that
starts in one TextEdit but ends in a different one should be treated as
a copy/paste operation, where the originating TextEdit is not altered.
However, a drag that starts and ends in the *same* TextEdit is a 'move'
operation within that TextEdit; the text is removed from its original
position and inserted at the drop point. To support this easily, the
drag/drop code in TextEdit can now pass a pointer to the originating
view as the local state object. Then, the drop recipient could tell
whether the drag started within the same TextEdit without needing to
implement any other out-of-band state tracking.

This CL (and its accompanying CLs in a few other packages where the
startDrag() API is being used) adds the new local-state parameter to
the API, but does not actually change the behavior of any existing
clients.

Change-Id: Icba73b2ab4a650b7a94485a19633065b0ef9058c
ragEvent.java
iew.java
iewRoot.java
fff4ab09b6c69e437537f322aaca7829f009ff1d 24-Nov-2010 Gilles Debunne <debunne@google.com> Refactored OverScroller

Restored the interpolator and a constructor with 4 parameters.

New spline coefficients, spline computation moved to MagneticOverScroller, which has been
renamed SplineOverScroller.

Change-Id: If1ab2653bb998600e9c5d6f46dfd6cd30fa44efc
iewConfiguration.java
0f761d6b8f5d5a607c87dbcdca6fe0ec7911970e 01-Dec-2010 Dianne Hackborn <hackbod@google.com> Implement issue #3201795: Improve transition when keyboard comes up

ViewRoot now does a fade animation between a snapshot of the previous
layout to the new one when its content rect changes.

Also tweaked some things in the window manager to fix problems in
deciding when to animate the movement of a window and when not to.

Change-Id: I9b4b3bd53c8258bd39a2f2fc315e77cfc56a409c
ardwareRenderer.java
iewRoot.java
46a5ae6dd747d4169c7328df3c2a3c4c26f4bd26 01-Dec-2010 Jeff Brown <jeffbrown@google.com> Fix documentation bug.

Change-Id: Idd8857087a61e357466c8db60d56075637240c5d
eyCharacterMap.java
1f2451007c660091b7b090c1ea332f9044515d2d 19-Nov-2010 Jeff Brown <jeffbrown@google.com> Ensure the ShortcutManager uses the correct key character map.

The ShortcutManager used to only receive the key code of the key event
that triggered the shortcut. This change now provides the shortcut
manager with the whole key event so it can look up the associated
character using the correct key character map.

To make this more efficient, added a mechanism for recycling
key events. At the moment it is only used by key events owned by the
system process, since clients of the existing API (such as Views)
might continue to hold on to key events after dispatch has finished so
they would break if the key event were recycled by the framework.

Deprecated KeyCharacterMap.BUILT_IN_KEYBOARD.

Change-Id: I4313725dd63f2be01c350c005a41c7fde9bc67e8
eyCharacterMap.java
eyEvent.java
otionEvent.java
indowManagerPolicy.java
62490bd358cd001e00cb643cf3879d736c448788 30-Nov-2010 Michael Jurka <mikejurka@google.com> Re-add performance optimization in View

- undoing change 79897

Change-Id: I52eb1247c4fead5e4203d7e7200129aa815e7c9b
iew.java
730666858692ea396f5ad779654b5d86ff90b6ca 30-Nov-2010 Chet Haase <chet@google.com> animation bugfix plus xml resources for new View properties

There was a bug around animation duration where it was possible,
for small durations or large inter-frame times, to calculate
fractions outside of the 0-1 range, causing bad value calculations.

Unrelated: new View properties for translation, scale, and rotation
were added in this release. This commit addes XML resources for
those properties.

Change-Id: Ieaf5dd729588adb2a40656aa82beecc3576f4af5
iew.java
fefc0743f8b0e8a936f0d138de20eca025ffe8c7 30-Nov-2010 Dianne Hackborn <hackbod@google.com> Merge "Auto-show IME for dialogs on large screens."
7d3a5bcf300aea7bffb1d46f28e244ca807f5e82 30-Nov-2010 Dianne Hackborn <hackbod@google.com> Auto-show IME for dialogs on large screens.

On a large screen the IME is not going to as significantly
cover a pan & scan window, so allow it to auto-show if the
app hasn't otherwise specified its visibility.

Also some fixes here and there.

Change-Id: I10227ec59c43454e06e6870633f53426f4d78b83
iewRoot.java
af4bf400abab86baee44dacbcdf13444d06ee46e 30-Nov-2010 satok <satok@google.com> Fix a bug of equals in InputMethodSubtype

Change-Id: I68b4726bedfb55d4737cf859ad3cb54bc19f9511
nputmethod/InputMethodSubtype.java
711e62a84fe6e127592fb14642e9d08cf25a5b75 30-Nov-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3225529: AlertDialogs are squishing their content views

ViewRoot is now smarter about measuring WRAP/WRAP windows.

Change-Id: I690fc78ddbe252d7c8070edb8e7352aec6c67ce9
iewRoot.java
f9d0be917b6f80efad29dce88ad2d2f117986c57 24-Nov-2010 Dianne Hackborn <hackbod@google.com> Implement rotation animations.

This introduces a small new feature for ScaleAnimation allowing
the scaling factor to be expressed as a percentage of the object
(which is the same as the existing float interpretation), a
percentage of the container, or a fixed dimension. Maybe not
useful for anything else, but I needed it for this.

Also fix a bug in how transformation matrices were propagated
from the Animation to Surface Flinger, so that rotate and skew
animations will actually work. :p

Change-Id: I301f4caa2147aa35564b5e511cb9c0b368d2425d
nimation/ScaleAnimation.java
440aab54cab106030f1edafea4dec1f9d8624f9b 25-Nov-2010 satok <satok@google.com> Removed InputMethodSubtypePicker

Change-Id: I08abac5d65a30c02cc671f4f70e93df25b6c8a92
nputmethod/InputMethodManager.java
c1a968a8ed45181312f7d4bcdbba0cc8ddc201ba 24-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> Option to enable StrictMode flashing on userdebug builds.

Change-Id: Ifc8e733ea0e0f6bda234a18ad84bcd230879e802
WindowManager.aidl
7750c2ac61d933cdb50114c2fc2e0a0c558a140e 24-Nov-2010 Joe Onorato <joeo@google.com> Merge "this should be @hidden"
a89e903fd4b84778e1a7f2268fe025fe66a6e45e 24-Nov-2010 Joe Onorato <joeo@google.com> this should be @hidden

Change-Id: Ib372fa15a5284b30e2edef5a1d90544eb2166ee4
indowManager.java
a111187a5b4dc5d287e29ced7d65e8d20edca140 24-Nov-2010 Dianne Hackborn <hackbod@google.com> Change rotation freeze to all be implemented in window manager.

Lots of work for no visible change in behavior, but now we can
do some fancier stuff...

Also allow rotation in all 4 directions.

Change-Id: I7e5e9537c5e359f69b83c10f65cc1ce95f371461
urface.java
29fc2c9705e1bb8ae098fca016032d2325031587 24-Nov-2010 Joe Onorato <joeo@google.com> Allow status bar panels to be on top of the status bar.

Change-Id: I3c74ece5f7042e6302717f4263746d59d5447ec9
indowManager.java
2820351489537698ad153c6397edf3270455edc5 24-Nov-2010 satok <satok@google.com> Add an API to set InputMethodAndSubtype

Change-Id: I66f1a4c8e0d98705614f12a737e7efcd0263b72a
nputmethod/InputMethodManager.java
f3db1af8d55ab247b6db67baf4fe772c18f33cab 23-Nov-2010 satok <satok@google.com> Change return type of getShortcutInputMethodsAndSubtypes to Map<InputMethodInfo, List<InputMethodSubtype>>

bug: 3201828

- Brushed up the code

Change-Id: I11ad9d1d749bd8947144ca7f1676bab3cf777fd6
nputmethod/InputMethodManager.java
637d337b58d8eec6de19230a5dd5ca5581c0478d 25-Aug-2010 Adam Powell <adamp@google.com> Merge overscrolling from gingerbread.

Change-Id: I3eb4413261b38ddd8c609d6153bdfd4ae46c6a0f
iew.java
iewConfiguration.java
6804433b0af50f33a338307ae8ddb50bc49e886b 23-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> StrictMode visual notification support.

Change-Id: I64a5adb683060d9649f1132414547bb3c346a2a8
WindowManager.aidl
4e4569dab5c75804b01a19b2d6e6101b445c1c68 19-Nov-2010 satok <satok@google.com> Add an API to get shortcut IMEs

- If there are no selected shortcut IMEs, the most applicable voice input will be selected as a shortcut IME

Change-Id: Ibd0f7ef5101013569c303820a3adc9038a97356d
nputmethod/InputMethodManager.java
8c62c1d6b9738cf55411f155a061814bd886ac76 20-Nov-2010 Brian Carlstrom <bdc@google.com> Merge "Adding CloseGuard to Animation to find forgotten animations"
877e0b99eedfd22590db4a1663ca8a3b8e6b63d2 19-Nov-2010 Brian Carlstrom <bdc@google.com> Adding CloseGuard to Animation to find forgotten animations

Change-Id: I90df2c8a88dd75550431b7db63242db1a1b2f16a
nimation/Animation.java
855e4c98846a4264b7a27ad68cfa66c12ac0591c 19-Nov-2010 Christopher Tate <ctate@google.com> Hide DragEvent pool implementation and add docs

Change-Id: Idaead8ab604c69d6dbc1bd5de3afa86e1fae8396
ragEvent.java
8e11ef0d949a52fec15359ec35557b2e773b093d 19-Nov-2010 Dianne Hackborn <hackbod@google.com> Some work on issue #3201795: Improve transition when keyboard comes up

Now try to slide dialogs if they end up moving due to the IME (or
other system things) showing/hiding. Pretty hackish, but seems to
work.

Change-Id: Icd297e941cf847fa920c9605145c46be63043d52
indowManager.java
6b53e8daa69cba1a2a5a7c95a01e37ce9c53226c 11-Nov-2010 Jeff Brown <jeffbrown@google.com> Added support for full PC-style keyboards.

BREAKING CHANGE: Redesigned the key character map format to
accomodate full keyboards with more comprehensive suite of modifiers.
Old key character maps will not work anymore and must be updated.
The new format is plain text only and it not compiled to a binary
file (so the "kcm" tool will be removed in a subsequent check-in).

Added FULL keyboard type to support full PC-style keyboards.

Added SPECIAL_FUNCTION keyboard type to support special function
keypads that do not have any printable keys suitable for typing
and only have keys like HOME and POWER

Added a special VIRTUAL_KEYBOARD device id convention that maps
to a virtual keyboard with a fixed known layout. This is designed
to work around issues injecting input events on devices whose
built-in keyboard does not have a useful key character map (ie.
when the built-in keyboard is a special function keyboard only.)

Modified several places where events were being synthesized
to use the virtual keyboard.

Removed support for the "qwerty" default layout.
The new default layout is "Generic". For the most part "qwerty"
was being used as a backstop in case the built-in keyboard did
not have a key character map (probably because it was a special
function keypad) and the framework needed to be able to inject
key events anyways. The latter issue is resolved by using the
special VIRTUAL_KEYBOARD device instead of BUILT_IN_KEYBOARD.

Added the concept of a key modifier behavior so that
MetaKeyKeyListener can distinguish between keyboards that use
chorded vs. toggled modifiers.

Wrote more robust key layout and key character map parsers
to enable support for new keyboard features and user installable
key maps.

Fixed a bug in InputReader generating key ups when keys
are released out of sequence.

Updated tons of documentation.

Currently QwertyKeyListener is being used for full keyboards
with autotext and capitalization disabled. This mostly works
but causes some problems with character pickers, etc.
These issues will be resolved in subsequent changes.

Change-Id: Ica48f6097a551141c215bc0d2c6f7b3fb634d354
eyCharacterMap.java
eyEvent.java
nputmethod/BaseInputConnection.java
67ddf9cbd5d7133c7f443cd3c55841ed1109c3a0 17-Nov-2010 satok <satok@google.com> Add a function to get enabledInputMethodAndSubtype

Change-Id: Ie97635343249aa63e33028c2843cab103125ca92
nputmethod/InputMethodManager.java
d9b3b7e8e1d8c919c3e5f5851daa80a2651ea7d1 17-Nov-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3202866: system server crash

Change-Id: Ied92164bea70f6cb8afe2c1c6ff4fc3836a209ab
indowManager.java
debf3bed9ea913ac55c80e1f9f7f33217054a943 16-Nov-2010 Adam Powell <adamp@google.com> Fix bug 2948913 - provide lifecycle notifications for action modes

Change-Id: I432e29a7bddb18bc32dfbe21a8ecd7d83158e3a0
indow.java
f942b7cbca8df6fbe44d73609662c47a480e523c 16-Nov-2010 Michael Jurka <mikejurka@google.com> Merge "Fix issue where Launcher was not getting redrawn"
ebefea465893529230157d4a857ef52c3fb545e7 16-Nov-2010 Michael Jurka <mikejurka@google.com> Fix issue where Launcher was not getting redrawn

This is a temporary fix; will submit a change later that restores the performance improvement but fixes the drawing issue
iew.java
759dc706ba61dda6b9eef80ecae2d590383229ae 16-Nov-2010 Adam Powell <adamp@google.com> Fix bug 3176330 - Improve documentation around MenuItem.setShowAsAction

Change-Id: Ibc8babd3668d0d8e1ed50ac330aac06a4f57dc1e
enuItem.java
7eec10e6c99c30d5ee061fec08ac89ad4254ac32 13-Nov-2010 Dianne Hackborn <hackbod@google.com> Get rid of the extended themes.

We now decide whether to use a bitmap background based on whether the
window's drawing is hardware accelerated. To do this, there is a new
"state_accelerated" that state list drawables can be parameterized on,
and the standard window background uses this to select a solid color
or bitmap drawable as appropriate.

Introduces a little hackery to have wm preview windows pretend like
they are hardware accelerated even if they aren't, so the preview looks
closer to the actual app.

Also Add a DialogWhenLarge variation for the light theme.

Change-Id: I215a79d5df65ba3eed52ab363cade9d8218a6588
WindowManager.aidl
iew.java
iewRoot.java
indow.java
indowManager.java
indowManagerImpl.java
indowManagerPolicy.java
b66d287e3003a0934d5714fbf15e554b3c814906 09-Nov-2010 satok <satok@google.com> Add a setter of InputMethodSubtype to InputMethodManager

- Public API: void setCurrentInputMethodSubtype(int pos)

Change-Id: I55daa19ba924999def544bf841f00bf54852f3e1
nputmethod/InputMethodManager.java
735cf38b8c7f8f91ad087511e44fe79018fa61d6 11-Nov-2010 satok <satok@google.com> Add a function to switch back to the last used IME

Change-Id: Iac7bcc2ee16dd04d91a3e75b160622d246788c9a
nputmethod/InputMethodManager.java
3adf490a5aaa2e87676c8985b566fcb0dfeb74b9 09-Nov-2010 Jason Bayer <bayer@google.com> Add new keycodes initially used for GoogleTV devices.

Change-Id: I1b901037d6d401931dd3ec6f7d5e1e6ad165d1c9
eyEvent.java
449bb119c954e6beacdfc7074c4d4a8254a07a13 11-Nov-2010 Chet Haase <chet@google.com> Merge "Add invalidation to Drawable when its properties change"
9891e1fce5f29d0421d34aa481037417bd70853d 11-Nov-2010 Chet Haase <chet@google.com> Add invalidation to Drawable when its properties change

invalidateSelf() already exists on Drawable. This triggers a call to
callback listeners so that they know the drawable has been invalidated.
For example, the background drawable on View will cause the View itself
to be invalidated.

Change-Id: I45b231a7600dcf3bc139e4059b7c9940ff49f60c
iew.java
0d200833fdc53f9796698f97c18cefc4a1b82df2 05-Nov-2010 Chet Haase <chet@google.com> Fix GL rendering of translucent surfaces

GL renderer was not initializing scissor correctly for translucent
surfaces, resulting in invisible window backgrounds in some cases
like fading popup windows

Change-Id: I87a964986e1ba2c4f59708c8892c5fa71903e6fc
iewGroup.java
848ae6e48b7942ced2ce149b167774db038cc741 09-Nov-2010 Adam Powell <adamp@google.com> am 6bb4f67a: am 26153a33: Fix bug 3163052 - always use 32-bit drawing caches when destination window is 32-bit

* commit '6bb4f67ac29b916b8ea4f08b79a7bc46c5844646':
Fix bug 3163052 - always use 32-bit drawing caches when destination window is 32-bit
0440f023dc2691705b5469aae5a124403f080fb6 09-Nov-2010 Mathias Agopian <mathias@google.com> am f704645b: am 5fd30540: Merge "possibly fix [2265804] OpenGL GLSurfaceView apps don\'t draw status bar drop shadow correctly" into gingerbread

* commit 'f704645b0ccf6feac9f41c82caf0ec34370a3bd0':
possibly fix [2265804] OpenGL GLSurfaceView apps don't draw status bar drop shadow correctly
6bb4f67ac29b916b8ea4f08b79a7bc46c5844646 09-Nov-2010 Adam Powell <adamp@google.com> am 26153a33: Fix bug 3163052 - always use 32-bit drawing caches when destination window is 32-bit

* commit '26153a33df8e6608bd37da7d44214b2a0db3195f':
Fix bug 3163052 - always use 32-bit drawing caches when destination window is 32-bit
26153a33df8e6608bd37da7d44214b2a0db3195f 09-Nov-2010 Adam Powell <adamp@google.com> Fix bug 3163052 - always use 32-bit drawing caches when destination
window is 32-bit

Change-Id: I0b6de28eb2de583e1d10d0a65c1ab534ef5bb047
iew.java
iewRoot.java
6908cd154c5a2ed2e3b21d40f51952d45be69184 09-Nov-2010 Dianne Hackborn <hackbod@google.com> Fix animations to use correct interpolator.

Also some fragment fixes.

Change-Id: I3906199e541a86379d07c8a4e4d5f9e99830c44a
nimation/Animation.java
nimation/DecelerateInterpolator.java
f704645b0ccf6feac9f41c82caf0ec34370a3bd0 08-Nov-2010 Mathias Agopian <mathias@google.com> am 5fd30540: Merge "possibly fix [2265804] OpenGL GLSurfaceView apps don\'t draw status bar drop shadow correctly" into gingerbread

* commit '5fd3054048b41b033700be3f30e4bca69f4f13a6':
possibly fix [2265804] OpenGL GLSurfaceView apps don't draw status bar drop shadow correctly
3915bb845b032dc184dba5e60970b803390ca3ed 05-Nov-2010 Jeff Brown <jeffbrown@google.com> Tell system server whether the app handled input events.

Refactored ViewRoot, NativeActivity and related classes to tell the
dispatcher whether an input event was actually handled by the application.

This will be used to move more of the global default key processing
into the system server instead of the application.

Change-Id: If06b98b6f45c543e5ac5b1eae2b3baf9371fba28
nputHandler.java
nputQueue.java
iewRoot.java
indowManagerPolicy.java
51387974f0914a12dcf758938bbd4ffe120bdab4 08-Nov-2010 Joe Onorato <joeo@google.com> Merge "Move the volume, media, call, camera and search key handling from PhoneWindow to a new PhoneFallbackEventHandler class that is used for all windows, not just ones with decors."
86f6786032b1a0380cf089aeeceef7e9d8982ef8 06-Nov-2010 Joe Onorato <joeo@google.com> Move the volume, media, call, camera and search key handling from
PhoneWindow to a new PhoneFallbackEventHandler class that is used
for all windows, not just ones with decors.

Bug: 3155146
Change-Id: Ib070fa3e523e3564b225bca576c08012fef4f416
allbackEventHandler.java
iewRoot.java
51e7fe7545e3509ebb5c31c10440acd31cec89a2 30-Oct-2010 Jeff Brown <jeffbrown@google.com> Rename the locked meta key constants for clarity.

Also added some tests for LED setting.

Change-Id: I3fd86322afd07ae8de52d1ccbc2fae2c6d586641
eyEvent.java
9ef0283bdcd9534cc09ae37eb2b78771b95247b5 04-Nov-2010 satok <satok@google.com> Change API for getting InputMethodSubtype's mode from resource id to String

Change-Id: I00aa99f8ab9901d40806a6bb336ab718eb857e8b
nputmethod/InputMethodInfo.java
nputmethod/InputMethodSubtype.java
1bd80ad7fdf71e437fa650f02366664c27b66b46 05-Nov-2010 Mathias Agopian <mathias@google.com> possibly fix [2265804] OpenGL GLSurfaceView apps don't draw status bar drop shadow correctly

request a layout when asking the transparent region to be recomputed, without this
it may never happen, since the transparent region is only calculated during layout.

this also fixes an issue where some fullscreen apps will run slower than expected
because their transparent region is never processed.

Change-Id: Iba187ef7b23f08ad3454aaa6707a3d262551e30c
iewRoot.java
e213677037f836529efcc0ac201fc61dd95481c5 04-Nov-2010 Dianne Hackborn <hackbod@google.com> Push the jumpDrawablesToCurrentState() thing off everywhere it should be.

Also add a new interface that items in AbsListView can implement to
adjust the bounds of the selection shown for them. This will allow
contacts to use list view's regular selection facility rather than
implementing something special in their item views.

Change-Id: I29cbdbc7122111ee97e47fe7d6ec55ff07be79cc
iewGroup.java
084f3ae952da2fa173a88ecdcd8055154e2683ec 04-Nov-2010 Daniel Sandler <dsandler@google.com> Merge "Rotation lock."
b73617de462579f7c12c25a4c2747c576f00f6a2 17-Aug-2010 Daniel Sandler <dsandler@google.com> Rotation lock.

IWindowManager now supports two new methods,
freezeRotation() and thawRotation(), that allow a caller to
temporarily stash the device's current rotation as the
default rotation (when no other constraints are present).

The system bar uses this to implement a user-accessible
rotation lock by calling freezeRotation() and then turning
off accelerometer-based display rotation; unless overridden
by an app, the display will continue to appear in the frozen
rotation until the rotation is unlocked by the user (either
via the rotation lock icon in the system bar or by checking
"rotate screen automatically" in Settings).

Bug: 2949639
Change-Id: Icd21c169d1053719590e72401f229424b254622f
WindowManager.aidl
indowManagerPolicy.java
6e0ecb4eed5cd2e1f15766d7028467129974a12d 04-Nov-2010 Chet Haase <chet@google.com> Adding JNI methods as a faster reflection mechanism

This approach is only for the common cases of void-return,
single-argument float/int methods.

Change-Id: Ifb31535a6f717b85417eced93c579be6e461e039
iewTreeObserver.java
079e23575024e103358c982152afb7a720ae1a8a 19-Oct-2010 Dianne Hackborn <hackbod@google.com> Add new fade in/out feature for drawable containers.

This is used to allow list view's pressed and activated indicators
to fade in an out, though of course it can be used elsewhere as well.

There is a lot of complexity in supporting this in list view. The
two main things that are being dealt with:

- When recycling views, we need to make sure that the view's drawable
state doesn't get animated from an old row's state. The recycler
now keeps track of which position a view was last in, and if it is
reused at a new position there is a new View/Drawable API to tell
it to jump to its current state instead of animating.

- For the pressed indicator to fade out, we need to keep displaying it
after it is hidden. There are new variables and code to keep track
of this state, and tweaks in various places to be able to remember
the last selected position and continue updating the drawable bounds
as needed.

Change-Id: Ic96aa1a3c05e519665abf3098892ff2cc4f0ef2f
iew.java
079fd674fb9005771dd383a1a483d7dc5072b5b3 04-Nov-2010 Chet Haase <chet@google.com> invalidate() View when backgroundColor changes

Change-Id: I5dd41b6ccffe35a784eec74495649fede65e78f2
iew.java
7c608f25d494c8a0a671e7373efbb47ca635367e 23-Oct-2010 Chet Haase <chet@google.com> optimizing for primitive types in animations

The animator classes caused autoboxing by converting primitive types (by far
the most typical types used in animations) to be converted to their
Object equivalents because of various APIs that required Object
(like getValue() to get the animated value). This change creates
factory methods on some classes instead of the former constructors
so that we can create and return private type-specific subclasses
which operate directly on the primitive types instead.

In particular, float and int are natively supported by the animators
now. Support in the APIs for double and long was removed because it
seemed like these less common types did not justify the extra
baggage of the added API and code.

Change-Id: I6008a3883e3d6dd5225005f45f112af148e5a4ea
iew.java
5f4b7d8a8a394940b49ecdd8b153a0eab9528c5c 03-Nov-2010 Chris Tate <ctate@google.com> Merge "Fix drag enter/exit reporting"
b0418da0e7594a8c2164a46985c5f1993632e010 01-Nov-2010 Jeff Brown <jeffbrown@google.com> Add plumbing for volume mute key.

Full support for the volume mute key will be implemented in a
later change.

Bug: 2912307
Change-Id: I98c27d6360f159c8b7447e04b45f442eff87b38a
eyEvent.java
9d1ab883293b047b654935b84d0803c8c383be91 02-Nov-2010 Chris Tate <ctate@google.com> Fix drag enter/exit reporting

Now, each ViewGroup is tracking which of its child views [which might
themselves be ViewGroups] is currently under the drag point, and when the
drag leaves that child, a DRAG_EXITED is synthesized and dispatched all
the way down to the leaf view previously under the point. ENTERED is
still *not* dispatched down like this; instead, it's calculated and
synthesized directly at each level based on the new LOCATION.

The ViewRoot still tracks the leaf drag target, but solely for the
purpose of reporting changes to the OS after full dispatch of a new
LOCATION -- the entered/exited messaging is no longer initiated at the
ViewRoot level.

Change-Id: I0089cc538b7e33a0440187543fcfd2f8b12e197d
iewGroup.java
iewRoot.java
a32edd4b4c894f4fb3d9fd7e9d5b80321df79e20 26-Oct-2010 Adam Cohen <adamcohen@google.com> Adding click feedback to widget collections

Change-Id: I97fceb6c68ca6eb1b703eafacf201e1aed7c38e7
iewGroup.java
c9acd7d2f06f4ba8237006ce5930f09c0922d84b 02-Nov-2010 Chet Haase <chet@google.com> Merge "Fixed null deref when view parent null during invalidation"
ea40e9abb094496987ee40aeffc2a57edd4bbcab 02-Nov-2010 Chet Haase <chet@google.com> Fixed null deref when view parent null during invalidation

Change-Id: I4896b4af69f3a44351465e7524dd7b621050b415
iew.java
4d396052deb54399cbadbeb8abd873df6f3af342 30-Oct-2010 Jeff Brown <jeffbrown@google.com> Fix policy issues when screen is off.

Rewrote interceptKeyBeforeQueueing to make the handling more systematic.
Behavior should be identical except:
- We never pass keys to applications when the screen is off and the keyguard
is not showing (the proximity sensor turned off the screen).
Previously we passed all non-wake keys through in this case which
caused a bug on Crespo where the screen would come back on if a soft key
was held at the time of power off because the resulting key up event
would sneak in just before the keyguard was shown. It would then be
passed through to the dispatcher which would poke user activity and
wake up the screen.
- We propagate the key flags when broadcasting media keys which
ensures that recipients can tell when the key is canceled.
- We ignore endcall or power if canceled (shouldn't happen anyways).

Changed the input dispatcher to not poke user activity for canceled
events since they are synthetic and should not wake the device.

Changed the lock screen so that it does not poke the wake lock when the
grab handle is released. This fixes a bug where the screen would come
back on immediately if the power went off while the user was holding
one of the grab handles because the sliding tab would receive an up
event after screen turned off and release the grab handles.

Fixed a couple of issues where media keys were being handled inconsistently
or not at all, particularly in the case of the new PAUSE, PLAY
and RECORD keys.

Bug: 3144874
Change-Id: Ie630f5fb6f128cfdf94845f9428067045f42892c
indowManagerPolicy.java
8eb2e244f9b14d946ee587d0b673b866865026c0 01-Nov-2010 Dianne Hackborn <hackbod@google.com> Various PreferenceActivity and related improvement.

This is all about making the preferences implementation better.

Well, mostly all about that.

Change-Id: I8efa98cb5680f3ccfa3ed694a1586de3fb3a9e11
indowManager.java
70d4ba15b1f0c1133c5aabc86de828b41e482fff 06-Oct-2010 Chet Haase <chet@google.com> Performance optimizations for animations and toolkit

Change-Id: I316a48273a9cbb428a965e4b849b3e5e9e8202f1
iew.java
iewGroup.java
iewRoot.java
dea3ef7967228f0ddcc03f2455a4f1254758e584 28-Oct-2010 Dianne Hackborn <hackbod@google.com> Add new resize mode to not resize, new web input types.

Change-Id: Ib098c03793d08532c3c099b59d0cc6b567e54900
indowManager.java
nputmethod/EditorInfo.java
06487a58be22b100daf3f950b9a1d25c3ea42aa2 29-Oct-2010 satok <satok@google.com> Add a functionarity for showing / hiding IME button on the system bar

Bug: 3077030

- IME communicates with status bar directly.

Change-Id: Ic5b6b5b7a2b8ea62372dcc9b9c36d81b9f2db651
nputmethod/InputMethodManager.java
04d50204705c9da52b218f11972da4e7d7a9cb84 25-Oct-2010 satok <satok@google.com> Show Subtype Icon properly in the system status bar

- Added API for getting the current subtype
- Added functions for show/hide status icon

Change-Id: Ifcaad00f7f4c658cdb3af367387476bbf316eb19
nputmethod/InputMethodManager.java
0d9275e565551eed57297627188aa39f3897a50b 26-Oct-2010 Romain Guy <romainguy@google.com> Enable display lists.

Change-Id: Id0d9b987251da5b7ecbb5497a55dbb5937430316
iew.java
iewGroup.java
iewRoot.java
c361da845a205ac35e724c0ca436744d483de7aa 26-Oct-2010 Romain Guy <romainguy@google.com> Don't initialize the hw renderer without a valid surface.
Bug #3054952

Change-Id: I5b4074391dbd84b04a14f7d2fb1b9a4a2487e1e2
iewRoot.java
d4533f1469990582e4a2dd0898429093fe2690c0 20-Oct-2010 Chris Tate <ctate@google.com> Report drag success/fail in the DRAG_ENDED message

DragEvent.getResult() returns 'true' if the drop was ultimately accepted;
false otherwise. The validity of this datum is only guaranteed when the
DragEvent's action verb is ACTION_DRAG_ENDED.

Also fixes the drag-start timeout handling (though the offending app is
not yet officially declared ANR).

Implements bug 3097807

Change-Id: I6908ac628c72ff7d6193d87060d769a559a78d0e
ragEvent.java
WindowSession.aidl
iewRoot.java
5c13d89c1332fcc499379b9064b891187b75ca32 08-Oct-2010 Chet Haase <chet@google.com> Optimizing display lists by referencing pointers to resources instead of copying them

Change-Id: I81ad3551d74aa1e5bb64d69e33d2eb29a6c1eb6a
isplayList.java
LES20Canvas.java
LES20DisplayList.java
ardwareCanvas.java
ardwareRenderer.java
iew.java
iewGroup.java
c02c7af0ec88ec56089a11138d5fcfafcf891c58 21-Oct-2010 Chris Tate <ctate@google.com> Fix obtain() when the pool is still empty

Fixes bug 3116798

Change-Id: I187e79892cd2b60173ef4ebef5d2eab56eb5eb42
ragEvent.java
fb0547d2c0f84e8266dce1444d332433ada09249 20-Oct-2010 Patrick Dubroy <dubroy@google.com> Fix memory leak with TouchTargets not being recycled.
iewGroup.java
32affef4f86961c57d9ba14572ec65dc2a5451de 19-Oct-2010 Chris Tate <ctate@google.com> Introduce an OnDragListener mechanism

If the listener's onDrag(view, event) returns 'false', the view's own
onDragEvent() will be called. If the listener returns 'true', it
consumes the event (and declares that it will handle the rest of the
drag event sequence, in the case of DRAG_STARTED actions).

Change-Id: I01aff0e4f59f71e55f5eea1049905c80714f0607
iew.java
iewGroup.java
6ba052b4847d85831c38c9b8e2942cef4987e55b 16-Oct-2010 Jeff Brown <jeffbrown@google.com> am c1a564b1: Merge "Add support for secure system overlays. (DO NOT MERGE)" into gingerbread

Merge commit 'c1a564b108c511c0bdd699567c245b031930e718' into gingerbread-plus-aosp

* commit 'c1a564b108c511c0bdd699567c245b031930e718':
Add support for secure system overlays. (DO NOT MERGE)
3b2b354ec1ba070eae13391d004d97a3e1403050 15-Oct-2010 Jeff Brown <jeffbrown@google.com> Add support for secure system overlays.

Manual merge from Gingerbread.

This change adds a new window type for secure system overlays
created by the system itself from non-secure system overlays that
might be created by applications that have the system alert permission.
Secure views ignore the presence of secure system overlays.

Bug: 3098519
Change-Id: Id876736fd8bf332ff9a5428bde59f5268aa49c3a
indowManager.java
2d3f159aa9622e05a18e7f93cecd57ad673955ae 15-Oct-2010 Jeff Brown <jeffbrown@google.com> Add support for secure system overlays. (DO NOT MERGE)

This change adds a new window type for secure system overlays
created by the system itself from non-secure system overlays that
might be created by applications that have the system alert permission.
Secure views ignore the presence of secure system overlays.

Bug: 3098519
Change-Id: I8f8398f4fdeb0469e5d71124c21bedf121bd8c07
indowManager.java
497a92cc5ba2176b8a8484b0a7da040eac0e887b 13-Sep-2010 Jeff Brown <jeffbrown@google.com> Add keycodes and meta-key modifiers to support external keyboards.

Added new key maps for external keyboards. These maps are intended to
be shared across devices by inheriting the "keyboards.mk" product
makefile as part of the device's product definition.

One of the trickier changes here was to unwind some code in
MetaKeyKeyListener that assumed that only the low 8 bits of the meta key
state were actually used. The new code abandons bitshifts in favor
of simple conditionals that are probably easier to read anyways.
The special meta key state constants used by MetaKeyKeyListener
are now (@hide) defined in KeyEvent now so as to make it clearer that they
share the same code space even if those codes are not valid for KeyEvents.

The EventHub now takes care of detecting the appropriate key layout
map and key character map when the device is added and sets system
properties accordingly. This avoids having duplicate code in
KeyCharacterMap to probe for the appropriate key character map
although the current probing mechanism has been preserved for legacy
reasons just in case.

Added support for tracking caps lock, num lock and scroll lock and
turning their corresponding LEDs on and off as needed.

The key character map format will need to be updated to correctly support
PC style external keyboard semantics related to modifier keys.
That will come in a later change so caps lock doesn't actually do
anything right now except turn the shiny LEDs on and off...

Added a list of symbolic key names to KeyEvent and improved the toString()
output for debug diagnosis. Having this list in a central place in the
framework also allows us to remove it from Monkey so there is one less
thing to maintain when we add new keycodes.

Bug: 2912307
Change-Id: If8c25e8d50a7c29bbf5d663c94284f5f86de5da4
eyEvent.java
otionEvent.java
6b3912865c1530a6e06dd189dd95dc5be102b4de 15-Oct-2010 Chris Tate <ctate@google.com> Drag thumbnail fixes / improvements

* Properly wipe the thumbnail canvas before handing it to the app for
its contents to be drawn

* Provide a getView() method in DragThumbnailBuilder that allows
clients or subclasses to get at the associated view. This is
especially for clients that want to draw entire (sub)layouts as
the drag thumbnail, by overriding onDrawThumbnail(Canvas c)
like this:

// Override specifically for drawing a whole ViewGroup into
// the drag thumbnail canvas
@Override
public void onDrawThumbnail(Canvas c) {
getView().dispatchDraw(c);
}

Change-Id: Ib43ddd7cf1d44faf2d7f6ba79f102bc3c7f14596
iew.java
a32dcf7f724137842b9b8d72add4e690fac74984 14-Oct-2010 Chris Tate <ctate@google.com> Actually draw the drag thumbnail

Now sets the layer and thumbnail dimensions correctly. Also removed the
leftover bits of the now-replaced thumbnail measurement/drawing mechanism.

Fixes bug 3077339

Change-Id: I02983648e0a7ce2ce5fee10825f744e20a3a5b8d
iew.java
909cbaf8f92d69f507bbdba9e5aa960d1e6c7a1f 14-Oct-2010 Romain Guy <romainguy@google.com> Don't draw TextView's alpha layers when not needed.

Change-Id: Iedf42cbc62d727f18500c78fcccf2d081a761fec
iewConfiguration.java
67a2f7b5a1b3ec5d2440d8be6e5ee4274e90e226 14-Oct-2010 Romain Guy <romainguy@google.com> Never skip drawing SurfaceViews.

Change-Id: I07fbc632b01d96cee16b6e000e0cbf05238a442b
iewGroup.java
db6303e51ef2779b2b6b8b6dc557b5de9b7fdcf0 14-Oct-2010 Daniel Sandler <dsandler@google.com> Merge "Dynamically show the menu button on the system bar."
d8404b23739b135060ab9a04317a9f8b990cf8ca 13-Oct-2010 Adam Powell <adamp@google.com> Allow icon+text action buttons

Change-Id: I96d1f3958de3ac13cadbab108b87d6bae96e9473
enuItem.java
41030da16856c8869e1e51d4a0405432fa96614e 13-Oct-2010 Romain Guy <romainguy@google.com> Add a getNativeMatrix() API.

This API can be used by WebView to apply the appropriate transform
on its rendering.

Change-Id: I79aa39a29805f462fb08226370328815e74bdc52
LES20Canvas.java
e02d808abf370965c3c4e4d38af11bc69110fde2 08-Oct-2010 Daniel Sandler <dsandler@google.com> Dynamically show the menu button on the system bar.

Windows with FLAG_NEEDS_MENU_KEY (or windowNeedsMenuKey=true
in their theme) will cause the system bar to show a menu
icon. (Note that the phone's status bar currently ignores
this, but phones tend to have hardware menu keys anyway.)

Additionally, all windows whose package's SDK version is
pre-Honeycomb will have FLAG_NEEDS_MENU_KEY set by default.

Bug: 3003728

Change-Id: I2d983763a726ea4f32cd1af9b0390e30478b11d1
indowManager.java
048691cfac42acce24d9462eca5e57ca5aa78e7d 13-Oct-2010 Chris Tate <ctate@google.com> Don't stomp on the drag-focus bookkeeping inadvertently.

Also don't update the focus tracking redundantly.
Fixes bug 3076468

Change-Id: I021e1bb91134d5226735d9510ad7f9a7b650f93f
iewRoot.java
91e9bb3b468f0d5efccdb245d151cbcda1583386 12-Oct-2010 Chris Tate <ctate@google.com> Elide undelivered drag-location messages

The recipient app could be receiving drag location updates faster than
it handled them, leading to progressive poor responsiveness. Now we
discard any undelivered pending location updates and replace them with
the newest data point when the location is updated.

Change-Id: I7299d205a0ef8ef8f5f32fd14e9ef87383d92717
iewRoot.java
a3496a9e6011e73deadd33bd0edd9229512e23d3 12-Oct-2010 Romain Guy <romainguy@google.com> Fix invisible views issue in Launcher.

Change-Id: Ic7cb8f418b5879110eaea5a9c5fdb4f237ca4cab
iew.java
iewGroup.java
c00972bb162779e52d1b0d8f662a9f6033bf9182 12-Oct-2010 Romain Guy <romainguy@google.com> Don't recreate a new texture every time we draw a layer.

Change-Id: I3c28aff5acffc7c6f1ac74805869725426c62d28
elocityTracker.java
d10cd5765a2b706fc174f16b951d6b0a5d3740d3 10-Oct-2010 Romain Guy <romainguy@google.com> Always create OpenGL accelerated windows in RGBA 8888.

Bug #3081600

The OpenGL renderer in libhwui uses a single EGL context per process and
thus create it with an RGBA 8888 EGL configuration. To ensure that all
windows are compatible with this configuration, this change modifies
the window manager and SurfaceFlinger.

The window manager now checks the window's flags and if the window is
hardware accelerated, it forces the window's pixel format to be
translucent when creating the surface. The window itself is still
marked as opaque if we know that the window will be opaque on screen.
This keeps existing optimizations in place.

Similarly in SurfaceFlinger, a translucent Surface can now be created
with the Surface.OPAQUE flag, indicating SurfaceFlinger that the surface
does not require blending, despite its RGBA 8888 configuration.

Change-Id: Ic747b6b12564ba064412d842117880fcc199eb7c
ardwareRenderer.java
urface.java
53ca03d9a3a6a95286302802173c4820b16328ce 09-Oct-2010 Romain Guy <romainguy@google.com> Don't set hwAccelerated=true when libhwui is not present.

Change-Id: I6df5a89e4b4d94d76e96b5d0a678b7a8f646268a
ardwareRenderer.java
iewRoot.java
4231124c9df51727a42cb1c09777816797c912cb 12-Oct-2010 Jeff Brown <jeffbrown@google.com> Merge "Fix an event injection bug when the policy is bypassed."
d5d2b7382cd863dd5c92c99575fb345777f0c567 12-Oct-2010 Romain Guy <romainguy@google.com> Merge "Don't draw fully transparent views/primitives."
dbc26d2ba13f80a7590c57de2d80530d96832969 12-Oct-2010 Romain Guy <romainguy@google.com> Don't draw fully transparent views/primitives.

Change-Id: Icd7d8ef1f57b51a24faf32f7004125e6300d4fdc
iewConfiguration.java
iewGroup.java
e20c9e0264190f94324197a8271cf03811a4ca58 11-Oct-2010 Jeff Brown <jeffbrown@google.com> Fix an event injection bug when the policy is bypassed.

Added the concept of a "trusted" event to distinguish between events from
attached input devices or trusted injectors vs. other applications.
This change enables us to move certain policy decisions out of the
dispatcher and into the policy itself where they can be handled more
systematically.

Cherry pick of b931a1b4 from gingerbread into master.

Change-Id: I700a5f07b8b227878cea9437a289a45a245c0424
indowManagerPolicy.java
dd8b0c90400a1c59d4d71d768c02eed961596bc8 12-Oct-2010 Jeff Brown <jeffbrown@google.com> am 41aabeb5: am 1e6a3a53: Merge "Added more robust tracking and cancelation of events." into gingerbread

Merge commit '41aabeb51305d19747687f246080f44fc2a74435'

* commit '41aabeb51305d19747687f246080f44fc2a74435':
Added more robust tracking and cancelation of events.
f2e0681ada3ffe1de994a51dcebd6ef045d27434 12-Oct-2010 Jeff Brown <jeffbrown@google.com> am 1da8d4d1: Merge "Fix an event injection bug when the policy is bypassed." into gingerbread

Merge commit '1da8d4d1697cec871dea8c30dad67e90db10bde6' into gingerbread-plus-aosp

* commit '1da8d4d1697cec871dea8c30dad67e90db10bde6':
Fix an event injection bug when the policy is bypassed.
b931a1b4183386ba840edc1bcc507eccf11b5cbe 11-Oct-2010 Jeff Brown <jeffbrown@google.com> Fix an event injection bug when the policy is bypassed.

Added the concept of a "trusted" event to distinguish between events from
attached input devices or trusted injectors vs. other applications.
This change enables us to move certain policy decisions out of the
dispatcher and into the policy itself where they can be handled more
systematically.

Change-Id: I4d56fdcdd31aaa675d452088af39a70c4e039970
indowManagerPolicy.java
101e2ae00c478e13f34c81db05a9a921ad637571 11-Oct-2010 Romain Guy <romainguy@google.com> Redraw the screen when needed.

Bug #3085265

Change-Id: Ibb47500f819b823eb4f3dee829f0396dce9a3d65
iewRoot.java
325b05f611909ffec123003aa33bc22dace356e0 11-Oct-2010 Jeff Brown <jeffbrown@google.com> am b13998f2: am d00b4386: Merge "Clarify some comments on individual key codes." into gingerbread

Merge commit 'b13998f2b482ff0ebe96cd683801758a01d10799'

* commit 'b13998f2b482ff0ebe96cd683801758a01d10799':
Clarify some comments on individual key codes.
fd5072606b85948cbe7c026b6d251774a9facb97 11-Oct-2010 Romain Guy <romainguy@google.com> Reset the dirty region after drawing in hardware.

Change-Id: I687419f2a95d5d7c51913467bd80249244102725
iewRoot.java
41aabeb51305d19747687f246080f44fc2a74435 10-Oct-2010 Jeff Brown <jeffbrown@google.com> am 1e6a3a53: Merge "Added more robust tracking and cancelation of events." into gingerbread

Merge commit '1e6a3a53fc4d56e3a0f86c8721dedfd46e738a32' into gingerbread-plus-aosp

* commit '1e6a3a53fc4d56e3a0f86c8721dedfd46e738a32':
Added more robust tracking and cancelation of events.
b699726018a0049665d8ad6b90dbc5af0e18f135 09-Oct-2010 Jeff Brown <jeffbrown@google.com> Added more robust tracking and cancelation of events.

This change fixes several issues where events would be dropped in the
input dispatch pipeline in such a way that the dispatcher could not
accurately track the state of the input device.

Given more robust tracking, we can now also provide robust cancelation
of input events in cases where an application might otherwise become
out of sync with the event stream due to ANR, app switch, policy decisions,
or forced focus transitions.

Pruned some of the input dispatcher log output.

Moved the responsibility for calling intercept*BeforeQueueing into
the input dispatcher instead of the input reader and added support for
early interception of injected events for events coming from trusted
sources. This enables behaviors like injection of media keys while
the screen is off, haptic feedback of injected virtual keys, so injected
events become more "first class" in a way.

Change-Id: Iec6ff1dd21e5f3c7feb80ea4feb5382bd090dbd9
eyEvent.java
otionEvent.java
indowManagerPolicy.java
ca33268ef88d54458a990e082153fa55971b666c 09-Oct-2010 Dianne Hackborn <hackbod@google.com> am 18e225b4: am bfba7cab: Fix issue #3001362: API REVIEW: android.view.InputQueue.Callback

Merge commit '18e225b42b77c48efa63f245a4137c5f74302e26'

* commit '18e225b42b77c48efa63f245a4137c5f74302e26':
Fix issue #3001362: API REVIEW: android.view.InputQueue.Callback
9568a5ab2e51428685904a2d1fd18b4ec736ba0b 09-Oct-2010 Mike Dodd <mdodd@google.com> Merge "HardwareRenderer: When throwing an exception because of an EGL error, include the specific error."
5d3e2ea6f3a02b5bd073887eabfa4f50a59bbcf0 08-Oct-2010 Mike Dodd <mdodd@google.com> HardwareRenderer: When throwing an exception because of an EGL
error, include the specific error.

Change-Id: I8e4b0cdbc207824df4f4bb55c3b379b0ee4aeec2
ardwareRenderer.java
b13998f2b482ff0ebe96cd683801758a01d10799 08-Oct-2010 Jeff Brown <jeffbrown@google.com> am d00b4386: Merge "Clarify some comments on individual key codes." into gingerbread

Merge commit 'd00b4386aed2ef58077490ca7de7d93b98ed51fb' into gingerbread-plus-aosp

* commit 'd00b4386aed2ef58077490ca7de7d93b98ed51fb':
Clarify some comments on individual key codes.
c4dfe3d5c08daebdb4f27f715f2bbb7a860423a9 08-Oct-2010 Dianne Hackborn <hackbod@google.com> am 92d29c66: am a2a0a98a: Merge "Fix NPE if there is no accelerometer." into gingerbread

Merge commit '92d29c66f5cb69627172d21057e672eaba2eb03f'

* commit '92d29c66f5cb69627172d21057e672eaba2eb03f':
Fix NPE if there is no accelerometer.
224d4a15353656182939aaf4be8cbbf5ab7c63c5 08-Oct-2010 Jeff Brown <jeffbrown@google.com> Clarify some comments on individual key codes.

Change-Id: I03cce0ad69aaab5b71e5017982b01afd27285d2f
eyEvent.java
e0ee2e9f3102c3c14c873a75a7b04e49787e0fb9 07-Oct-2010 Chet Haase <chet@google.com> New TimeInterpolator interface for android.animation package.

The new animation package's reliance on the old Interpolator interface (in
android.view.animation) was an eyesore. Adding TimeInterpolator, and having the
old Interpolator interface extend it, allows the new Animator classes to break
the tie to the older animation package completely. However, developers can still
use the older Interpolator-based classes, such as AccelerateInterpolator,
because they all implicitly extend the new TimeInterpolator class.

Change-Id: I41132fa56167ba564f4839113289114d0ea31a92
nimation/Interpolator.java
18e225b42b77c48efa63f245a4137c5f74302e26 07-Oct-2010 Dianne Hackborn <hackbod@google.com> am bfba7cab: Fix issue #3001362: API REVIEW: android.view.InputQueue.Callback

Merge commit 'bfba7cab94cd9cf28e561159dbbe934dc83a6f0a' into gingerbread-plus-aosp

* commit 'bfba7cab94cd9cf28e561159dbbe934dc83a6f0a':
Fix issue #3001362: API REVIEW: android.view.InputQueue.Callback
47a44916e2fb33cf4751906386d5f5c903b28d8b 06-Oct-2010 satok <satok@google.com> Add InputMethodEnabler for enabling input methods and subtypes

- Copyed functionarity from LanguageSettings.java

TODO: Save enabled InputMethodSubtypes

Change-Id: I7b4fb1a79cb8b3229f88773d261430e23ba7aae2
nputmethod/InputMethodManager.java
e743bd2bac1ed8a04d32def6e6ccfa5c9c180458 07-Oct-2010 Romain Guy <romainguy@google.com> Merge "Don't clear the framebuffer when not needed."
6b7bd24659fb175fe1f0e97c86c18969918b496a 07-Oct-2010 Romain Guy <romainguy@google.com> Don't clear the framebuffer when not needed.
LES20Canvas.java
ardwareRenderer.java
iewRoot.java
bfba7cab94cd9cf28e561159dbbe934dc83a6f0a 25-Sep-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3001362: API REVIEW: android.view.InputQueue.Callback

Change-Id: Ibc12a7326a13c318205774e226ed1f62a5cf11eb
nputQueue.java
5ada6cb0591c1106e3591a3b7adcdc77a1322209 05-Oct-2010 Christopher Tate <ctate@google.com> More drag/drop adjustments:

* Make View.onDragEvent() public instead of protected.
* No longer @hide View.startDrag()
* Properly manage the boundaries of DRAG_STARTED / DRAG_ENDED notifications
to windows (and as a result don't send bogus empty DRAG_STARTED events or
double-recycle pooled DragEvents)

Change-Id: Ib75f5c1417640c82a5b043c555e02d6e6f4b4d9c
iew.java
iewGroup.java
7930b5bc068e92a1eaaa6c890b77aebbdf01e259 07-Oct-2010 Mathias Agopian <mathias@google.com> am 722665c5: am ef115308: fix build. SurfaceView.setFrame needed to be hidden

Merge commit '722665c5f76e81bed646490977ea30f38aaa00da'

* commit '722665c5f76e81bed646490977ea30f38aaa00da':
fix build. SurfaceView.setFrame needed to be hidden
3243cbc9b2f9ada6314292d0dea384c0434d8afb 07-Oct-2010 Mathias Agopian <mathias@google.com> am b99e81ab: am 7e6064ad: Merge "fix [3008290] passion GB surface does not send surfaceChanged notification after size change." into gingerbread

Merge commit 'b99e81ab4cccac537fc7ae8d07d59a0f6c1395d2'

* commit 'b99e81ab4cccac537fc7ae8d07d59a0f6c1395d2':
fix [3008290] passion GB surface does not send surfaceChanged notification after size change.
e537858ba72b0cac0ae9d20df687853b5413fba4 06-Oct-2010 Neel Parekh <neel@google.com> Fix pressed vs selected typo in onCreateDrawableState

Change-Id: I7a415cacf29ed8c6c558f6b29902edd76fc98ea6
iew.java
c21550a8d1dfc9e5359fe994cb48049a0bd4c82c 06-Oct-2010 Brian Carlstrom <bdc@google.com> Adding android.os.Debug.countInstancesOfClass

- Debug.countInstancesOfClass is just a wrapper on
dalvik.system.VMDebug.countInstancesOfClass to avoid code from
depending on the dalvik classes directly

- Existing usages of VMDebug.countInstancesOfClass in ActivityThread
and ViewDebug are converted to the new Debug.countInstancesOfClass

- Existing use of OpenSSLSocketImpl.instanceCount, which is being
removed, is converted to Debug.countInstancesOfClass(OpenSSLSocketImpl.class)

Bug: 3015791
Change-Id: Iefa781292d5b82a63bad7254c913a09deb3b7888
iewDebug.java
92d29c66f5cb69627172d21057e672eaba2eb03f 06-Oct-2010 Dianne Hackborn <hackbod@google.com> am a2a0a98a: Merge "Fix NPE if there is no accelerometer." into gingerbread

Merge commit 'a2a0a98ac7ce53f282a9a4caac9d382a0eb01ef9' into gingerbread-plus-aosp

* commit 'a2a0a98ac7ce53f282a9a4caac9d382a0eb01ef9':
Fix NPE if there is no accelerometer.
a2a0a98ac7ce53f282a9a4caac9d382a0eb01ef9 06-Oct-2010 Dianne Hackborn <hackbod@google.com> Merge "Fix NPE if there is no accelerometer." into gingerbread
b499bb106927283c7eccf6d935335c50492a23e4 06-Oct-2010 Dianne Hackborn <hackbod@google.com> Fix NPE if there is no accelerometer.

Change-Id: I983290a7fc3deda2a82b03ff564f1b7201cc3dd3
indowOrientationListener.java
ee7e0efcc1314b994ba70d91f6e8fa951044c916 06-Oct-2010 Adam Powell <adamp@google.com> am 59c4cb9e: Merge "DO NOT MERGE Fix bug 3001751 and bug 3001584 - Gingerbread API review for over-scroll" into gingerbread

Merge commit '59c4cb9e8fee03f770aa0fa1a2f0ec84ffb945b8' into gingerbread-plus-aosp

* commit '59c4cb9e8fee03f770aa0fa1a2f0ec84ffb945b8':
DO NOT MERGE Fix bug 3001751 and bug 3001584 - Gingerbread API review for over-scroll
737e8fe2c7ce167bc68ad779160488007a5e0b1d 05-Oct-2010 Adam Powell <adamp@google.com> DO NOT MERGE Fix bug 3001751 and bug 3001584 - Gingerbread API review for over-scroll

Change-Id: If34c8ea4e15697420adad0bc404f3c278efd7c1b
iew.java
e21635571eec6600abbfa2cd926383e788b12e12 05-Oct-2010 Romain Guy <romainguy@google.com> Merge "Code cleanup and disable display lists for now."
469b1dbeaf7d3267d1b43af4e7391b49eac10ee0 05-Oct-2010 Romain Guy <romainguy@google.com> Code cleanup and disable display lists for now.

Change-Id: I681213036b5279339cb96a016d1dfb15d74dafc8
iewGroup.java
a0374192b9669d00d85840ee3ddbfd41c2cc52f3 05-Oct-2010 Christopher Tate <ctate@google.com> Make View.DragThumbnailBuilder a static class

It also now uses a WeakReference to the associated View, not a hard
object pointer.

Change-Id: I37e10b3155ee7e089a72bdf050cc2d323794810f
iew.java
38014763a2ceec005682066da01849adf95839bd 05-Oct-2010 Dianne Hackborn <hackbod@google.com> am 89230e3b: am 458fc5f5: Merge "Fix issue #3041660: Camera image flips upside down when rotating device" into gingerbread

Merge commit '89230e3b7b9ec455373e3f60b62ff65589a9c57d'

* commit '89230e3b7b9ec455373e3f60b62ff65589a9c57d':
Fix issue #3041660: Camera image flips upside down when rotating device
2fe9a8f6f6a5264597a9dbed2fb2e02d84853189 05-Oct-2010 Romain Guy <romainguy@google.com> Correctly invalidate the drawing cache when an invalidate is requested.

Change-Id: Ic78f85d728a14a9f2e4a1925d46b6db9a204bbb1
iew.java
722665c5f76e81bed646490977ea30f38aaa00da 05-Oct-2010 Mathias Agopian <mathias@google.com> am ef115308: fix build. SurfaceView.setFrame needed to be hidden

Merge commit 'ef11530874f86570aa04a10c16a416b274b3fdf5' into gingerbread-plus-aosp

* commit 'ef11530874f86570aa04a10c16a416b274b3fdf5':
fix build. SurfaceView.setFrame needed to be hidden
ef11530874f86570aa04a10c16a416b274b3fdf5 05-Oct-2010 Mathias Agopian <mathias@google.com> fix build. SurfaceView.setFrame needed to be hidden

Change-Id: I96b0896e24483e9b5db19c938cb6058868f34e48
urfaceView.java
b99e81ab4cccac537fc7ae8d07d59a0f6c1395d2 05-Oct-2010 Mathias Agopian <mathias@google.com> am 7e6064ad: Merge "fix [3008290] passion GB surface does not send surfaceChanged notification after size change." into gingerbread

Merge commit '7e6064ad7ccd4a0c59d89ccdf16e969b0c3296d3' into gingerbread-plus-aosp

* commit '7e6064ad7ccd4a0c59d89ccdf16e969b0c3296d3':
fix [3008290] passion GB surface does not send surfaceChanged notification after size change.
7e6064ad7ccd4a0c59d89ccdf16e969b0c3296d3 05-Oct-2010 Mathias Agopian <mathias@google.com> Merge "fix [3008290] passion GB surface does not send surfaceChanged notification after size change." into gingerbread
2c095f367779ef32130c72849936a2e3013c8492 04-Oct-2010 Christopher Tate <ctate@google.com> Refinements to drag/drop

Thumbnail measurement & drawing has been moved out into a delegate
class called View.DragThumbnailBuilder. This consolidates the
thumbnail-related code as well as ensuring that the drag initiator
does not have to know a priori where to place the thumbnail relative
to the touch point *before* the thumbnail measurement step, as was
previously the case.

startDrag() no longer needs to be told where the current touch point
is at the time the drag is launched.

Drag events are now dispatched only to VISIBLE views.

Dispatch shouldn't double-recycle events any more when the target
window is local to the system process.

Change-Id: I49419103765a0cad2e18ddfcdd6dacb94daf1ff1
ragEvent.java
Window.aidl
iew.java
iewDebug.java
iewGroup.java
iewRoot.java
995bb9d24d3b278939a01e1d05c2b7f337ab0565 05-Oct-2010 Mathias Agopian <mathias@google.com> fix [3008290] passion GB surface does not send surfaceChanged notification after size change.

The video has the same aspect ratio than the window, so the window size doesn't change.
In turn, onSizeChanged() is not called, which is where surfaceChanged() is eventually called from.

we now override setFrame() and always call updateWindow from there instead of from onSizeChanged()

Change-Id: I87064b577ff1d7b6ba50e563d7278813002d2b29
urfaceView.java
5e25c2c14593caee5638603120553ae1ec530f85 16-Sep-2010 Chet Haase <chet@google.com> Add ability to automate animated transitions on View show/hide

Change-Id: Id6ff92c8fd06c3f5fb30c41b020b4de4f567154f
iew.java
iewGroup.java
89230e3b7b9ec455373e3f60b62ff65589a9c57d 04-Oct-2010 Dianne Hackborn <hackbod@google.com> am 458fc5f5: Merge "Fix issue #3041660: Camera image flips upside down when rotating device" into gingerbread

Merge commit '458fc5f52e25d7a8b4e482010711aed66f0b4999' into gingerbread-plus-aosp

* commit '458fc5f52e25d7a8b4e482010711aed66f0b4999':
Fix issue #3041660: Camera image flips upside down when rotating device
e5439f228f603f60febe058f633d91d5af2fff76 03-Oct-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3041660: Camera image flips upside down when rotating device

Apps now must explicitly opt in to having their rotation changed while
forcing landscape mode. Also add some new orientation constants for other
things apps may want to do.

Change-Id: If64d84b5ef54793ee717ebda9b4c76408efc9bfd
indowOrientationListener.java
efb8a3d6e058c8bc90bb9da6c58dde453f359851 02-Oct-2010 Jeff Brown <jeffbrown@google.com> am 57fa3e8b: am 9e32a438: Merge "Support haptic feedback for virtual keys defined in key layout." into gingerbread

Merge commit '57fa3e8b4c94125ddb5be015dd7fbde4a458894f'

* commit '57fa3e8b4c94125ddb5be015dd7fbde4a458894f':
Support haptic feedback for virtual keys defined in key layout.
120e6be701833fd7cdc6bf063b17e1f88929a074 02-Oct-2010 Dianne Hackborn <hackbod@google.com> am 007d5b2c: am fd57416c: Fix build.

Merge commit '007d5b2cf6af32dfe96c0c04988d090b872afb01'

* commit '007d5b2cf6af32dfe96c0c04988d090b872afb01':
Fix build.
ed03270fb0a6391df50134d69220f04df398f468 01-Oct-2010 Chet Haase <chet@google.com> Optimizing invalidation to avoid trashing the rendering cache

Objects whose size or contents do not change can use the same rendering cache as before, so in these cases we do invalidation without causing the rendering cache to be recreated.

Change-Id: I840737097b73017ae9ccc9e2cc0bc3d71527e555
iew.java
57fa3e8b4c94125ddb5be015dd7fbde4a458894f 02-Oct-2010 Jeff Brown <jeffbrown@google.com> am 9e32a438: Merge "Support haptic feedback for virtual keys defined in key layout." into gingerbread

Merge commit '9e32a438fd87180692da55197972ecddb1a731d9' into gingerbread-plus-aosp

* commit '9e32a438fd87180692da55197972ecddb1a731d9':
Support haptic feedback for virtual keys defined in key layout.
0eaf3931a31c29f3a3883aab426b595c231c2a58 01-Oct-2010 Jeff Brown <jeffbrown@google.com> Support haptic feedback for virtual keys defined in key layout.

Change-Id: I83e4108a87332692e03791dc066206becbc7941f
indowManagerPolicy.java
007d5b2cf6af32dfe96c0c04988d090b872afb01 01-Oct-2010 Dianne Hackborn <hackbod@google.com> am fd57416c: Fix build.

Merge commit 'fd57416cc8c2a333f46cacad6de48a3b1547eac9' into gingerbread-plus-aosp

* commit 'fd57416cc8c2a333f46cacad6de48a3b1547eac9':
Fix build.
fd57416cc8c2a333f46cacad6de48a3b1547eac9 01-Oct-2010 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I99d362e6673252ade4da29f29852eccaedbc9709
indowManagerPolicy.java
866717406710595a487cdca33f698876dcd4e8af 01-Oct-2010 Jeff Brown <jeffbrown@google.com> Make View transformation matrix updating more explicit.

The original code depends on side-effects of hasIdentityMatrix()
to update the View transformation matrix. This change adds an
explicit updateMatrix() method to make it more explicit when
we are relying on the matrix having been updated. Among other
things, getInverseMatrix() did not update the matrix so the
caller had to know to call hasIdentityMatrix() first (which was
always the case, but still potentially error-prone).

Change-Id: I16d56f60a785a15c65f73e57b9aded9e4e3bca55
iew.java
0bb5667b4ef91fefd0500fae0186789d15d54e0e 01-Oct-2010 Romain Guy <romainguy@android.com> Fix INVALID_OPERATION error with layers rendering.

This change is a workaround for a driver bug that causes an INVALID_OPERATION
to be thrown on every glCopyTexSubImage() call. This change also adds a new
test for gradients local matrices.

Change-Id: I41b7437481026702d0a3a9677f099b4557c0a84e
iew.java
a53146c5569f8ff5f7eb55e9ad35d23ddacf2add 07-Sep-2010 Christopher Tate <ctate@google.com> Drag/drop APIs and infrastructure

A View initiates a drag-and-drop operation (hereafter just called a "drag")
by calling its startDrag(ClipData) method. Within the processing of that
call, two callbacks are made into the originating View. The first is to
onMeasureDragThumbnail(). Similarly to the core onMeasure() method, this
callback must respond by calling setDragThumbnailDimension(width, height) to
declare the size of the drag thumbnail image that should be used. Following
this, the View's onDrawDragThumbnail(canvas) method will be invoked to
actually produce the bits of the thumbnail image.

If all goes well, startDrag() will return 'true', and the drag is off and
running. (The other arguments to startDrag() provide reconciliation between
the current finger position and where the thumbnail should be placed on
the screen relative to it.)

Potential receipients of the ClipData behind the drag are notified by a
new dispatch mechanism, roughly parallel to motion event dispatch. The core
routine is the View's onDragEvent(event) callback, with the mechanics of
dispatch itself being routed through dispatchDragEvent(event) -- as in
the case of motion events, the dispatch logic is in ViewGroup, with leaf
View objects not needing to consider the dispatch flow.

Several different event 'actions' are delivered through this dispatch
mechanism:

ACTION_DRAG_STARTED: this event is propagated to every View in every window
(including windows created during the course of a drag). It serves as a
global notification that a drag has started with a payload whose matching
ClipDescription is supplied with the event. A View that is prepared to
consume the data described in this event should return 'true' from their
onDragEvent() method, and ideally will also make some visible on-screen
indication that they are a potential target of the drop.

ACTION_DRAG_ENTERED: this event is sent once when the drag point
enters the View's bounds. It is an opportunity for the View to set up
feedback that they are the one who will see the drop if the finger goes
up now.

ACTION_DRAG_LOCATION: when the drag point is over a given View, that
View will receive a stream of DRAG_LOCATION events, providing an
opportunity for the View to show visual feedback tied to the drag point.

ACTION_DRAG_EXITED: like DRAG_ENTERED, but called when the drag point
leaves the View's bounds. The View should undo any visuals meant to
emphasize their being the hovered-over target.

ACTION_DROP: when the drag ends at a given point, the View under that
point is sent this event, with the full ClipData of the payload.

ACTION_DRAG_ENDED: paralleling the DRAG_STARTED action, this is the global
broadcast that the drag has ended and all Views should return to their
normal visual state. This happens after the DROP event.

Change-Id: Ia8d0fb1516bce8c735d87ffd101af0976d7e84b6
ragEvent.aidl
ragEvent.java
Window.aidl
WindowSession.aidl
iew.java
iewGroup.java
iewRoot.java
indowManager.java
20e987bfc35d0ae6cb6344ead65ed44ee7cf8750 23-Aug-2010 Jeff Brown <jeffbrown@google.com> Add MotionEvent Matrix transformations.

Fixed issued in ViewGroup's transformation of MotionEvents to ensure
that the entire historical trace is transformed, not just the current
pointer.

Simplified the code in ViewGroup for splitting events across Views.
The new code also handles the case where some pointers are dispatched
to the ViewGroup in addition to its children whereas the previous
code would drop some pointers on the floor.

Change-Id: I56ac31903e1de8a9c376d9c935b7217b0c42d93e
otionEvent.java
iew.java
iewGroup.java
e17c054d34676c25f03b4eb0d8daebe41b84bf6e 29-Sep-2010 Romain Guy <romainguy@google.com> Merge "Add display lists caching."
b051e895ccb696604349c6c5efe7c4747e1d1ab6 29-Sep-2010 Romain Guy <romainguy@google.com> Add display lists caching.

Change-Id: Iac3a248a81ed8cb076a83ef9d186b8ebba685b4c
isplayList.java
LES20Canvas.java
LES20DisplayList.java
ardwareCanvas.java
ardwareRenderer.java
iew.java
iewGroup.java
iewRoot.java
464fb74e28b6d76d5e741abcdbb714eea2d9b4d1 27-Sep-2010 Jeff Brown <jeffbrown@google.com> am 9785bf0f: am 14a288da: Merge "Add suuport for splitting touch events across windows." into gingerbread

Merge commit '9785bf0f2b6b8758aed7ded3b996a2ef0be89919'

* commit '9785bf0f2b6b8758aed7ded3b996a2ef0be89919':
Add suuport for splitting touch events across windows.
9785bf0f2b6b8758aed7ded3b996a2ef0be89919 27-Sep-2010 Jeff Brown <jeffbrown@google.com> am 14a288da: Merge "Add suuport for splitting touch events across windows." into gingerbread

Merge commit '14a288da6a372230d9af41da12241fe500eec837' into gingerbread-plus-aosp

* commit '14a288da6a372230d9af41da12241fe500eec837':
Add suuport for splitting touch events across windows.
14a288da6a372230d9af41da12241fe500eec837 27-Sep-2010 Jeff Brown <jeffbrown@google.com> Merge "Add suuport for splitting touch events across windows." into gingerbread
01ce2e9eee41cc0c24b0d16465710a28ea337d5d 27-Sep-2010 Jeff Brown <jeffbrown@google.com> Add suuport for splitting touch events across windows.

This feature is currently used to enable dragging the start and end
selection handles of a TextView at the same time. Could be used for
other things later.

Deleted some dead code in ArrowKeyMovementMethod and CursorControllers.

Change-Id: I930accd97ca1ca1917aab8a807db2c950fc7b409
indowManager.java
79d716f7dec8558e282d13c4372b8b2999bab06d 26-Sep-2010 Jean-Baptiste Queru <jbq@google.com> am 74a8df20: am dcfb271b: Merge "Fix if ACTION_DOWN and lost focus time too close, it will become long press."

Merge commit '74a8df2026514025b186aba80a810a03377a80e9'

* commit '74a8df2026514025b186aba80a810a03377a80e9':
Fix if ACTION_DOWN and lost focus time too close, it will become long press.
74a8df2026514025b186aba80a810a03377a80e9 26-Sep-2010 Jean-Baptiste Queru <jbq@google.com> am dcfb271b: Merge "Fix if ACTION_DOWN and lost focus time too close, it will become long press."

Merge commit 'dcfb271b7fa364d567ffd7c495b2baa28a755251' into gingerbread-plus-aosp

* commit 'dcfb271b7fa364d567ffd7c495b2baa28a755251':
Fix if ACTION_DOWN and lost focus time too close, it will become long press.
405e012681aa563b1d7b66c671c90ed2deb26e41 25-Sep-2010 Dianne Hackborn <hackbod@google.com> am deaa8ff1: am a7ef18fc: Merge "Some debugging support." into gingerbread

Merge commit 'deaa8ff1b10d38add4f7c276e7be2ffc19359a14'

* commit 'deaa8ff1b10d38add4f7c276e7be2ffc19359a14':
Some debugging support.
deaa8ff1b10d38add4f7c276e7be2ffc19359a14 25-Sep-2010 Dianne Hackborn <hackbod@google.com> am a7ef18fc: Merge "Some debugging support." into gingerbread

Merge commit 'a7ef18fca50d0db99a161d8c7e2d8979f0445503' into gingerbread-plus-aosp

* commit 'a7ef18fca50d0db99a161d8c7e2d8979f0445503':
Some debugging support.
f123e49bf0708719b51a7064ae134c097abe4a54 24-Sep-2010 Dianne Hackborn <hackbod@google.com> Some debugging support.

- New feature to "am monitor" to have it automatically launch
gdbserv for you when a crash/ANR happens, and tell you how to
run the client.

- Update dumpstate to match new location of binder debug logs

- Various commented out logs that are being used to track down
issues.

Change-Id: Ia5dd0cd2df983a1fc6be697642a4590aa02a26a5
iewRoot.java
1abe452515c35f04e12421b1745419554c343d20 24-Sep-2010 Romain Guy <romainguy@google.com> Merge "Add drawing profiling to the HardwareRenderer."
9a40babc62416259d18783ce8c03c00042ec317b 24-Sep-2010 Romain Guy <romainguy@google.com> Add drawing profiling to the HardwareRenderer.

Change-Id: Idf410f1764f3e73590b587d0d76a8d10c021f056
ardwareRenderer.java
d1fbcbb3cc9dc060d234715517783155c835051e 24-Sep-2010 Romain Guy <romainguy@google.com> Merge "Don't clip alpha layers if the flag is not set."
fd880425e058a039ed6483d822738b80f962eb08 24-Sep-2010 Romain Guy <romainguy@google.com> Don't clip alpha layers if the flag is not set.

Change-Id: I820fa66bc3699357677f37a769de52fd176d9416
iewGroup.java
5bd069fe1e5208b9d41ea108a8c9ada504cae39c 23-Sep-2010 Jeff Brown <jeffbrown@google.com> am 27917946: am de04fb0a: Merge "Enforce serial ordering of MotionEvents." into gingerbread

Merge commit '279179461edccaa4217fe752a9abf6fcc2efa5a1'

* commit '279179461edccaa4217fe752a9abf6fcc2efa5a1':
Enforce serial ordering of MotionEvents.
279179461edccaa4217fe752a9abf6fcc2efa5a1 23-Sep-2010 Jeff Brown <jeffbrown@google.com> am de04fb0a: Merge "Enforce serial ordering of MotionEvents." into gingerbread

Merge commit 'de04fb0a0366057028369eb3b3efcb75367f74db' into gingerbread-plus-aosp

* commit 'de04fb0a0366057028369eb3b3efcb75367f74db':
Enforce serial ordering of MotionEvents.
93ed4e3052a773289c0570984801ea8f0f0849d2 23-Sep-2010 Jeff Brown <jeffbrown@google.com> Enforce serial ordering of MotionEvents.

This change modifies ViewRoot to wait until the MotionEvent has been
delivered before telling the input dispatcher that it is finished.
The serial ordering guarantee will be required by new features that
may need to transfer touch focus from one window to another.

Change-Id: I0a64d1f0c8bc3f08846f213d6e28ce48b1d48e58
iewRoot.java
085002c5efda0fe57d9e4a0707c0b9ec7ee28ce6 23-Sep-2010 Amith Yamasani <yamasani@google.com> am 847810f0: am 6e98c280: Merge "Fix for IndexOutOfBounds in setComposingRegion." into gingerbread

Merge commit '847810f0cdccd10e6e233281d4eb984b7ce8d680'

* commit '847810f0cdccd10e6e233281d4eb984b7ce8d680':
Fix for IndexOutOfBounds in setComposingRegion.
847810f0cdccd10e6e233281d4eb984b7ce8d680 23-Sep-2010 Amith Yamasani <yamasani@google.com> am 6e98c280: Merge "Fix for IndexOutOfBounds in setComposingRegion." into gingerbread

Merge commit '6e98c280f792932d60bf9374c8979d9eadce2d9c' into gingerbread-plus-aosp

* commit '6e98c280f792932d60bf9374c8979d9eadce2d9c':
Fix for IndexOutOfBounds in setComposingRegion.
6e98c280f792932d60bf9374c8979d9eadce2d9c 23-Sep-2010 Amith Yamasani <yamasani@google.com> Merge "Fix for IndexOutOfBounds in setComposingRegion." into gingerbread
ab751aa085433e9f735d2e7603459c6c7e9d2fb0 14-Sep-2010 satok <satok@google.com> Add methods for managing subtypes

- added showInputMethodSubtypePicker to public API
-- show the selector dialog for subtypes
- added getter, setter and event handler to InputMethodManagerService
- extract InputMethodSubtype to the top level class for using it in aidl
- TODO: make an enabler for input method subtypes
- TODO: handle the event of changing an input method subtype in LatinIME

Change-Id: I49f8c6675ac4b06511635d14a37bd398738eff33
nputmethod/InputMethod.java
nputmethod/InputMethodInfo.java
nputmethod/InputMethodManager.java
nputmethod/InputMethodSubtype.aidl
nputmethod/InputMethodSubtype.java
806de5b1c5f98d67b00f7ba6087faca3b9632845 23-Sep-2010 Romain Guy <romainguy@android.com> Remove unused constant.

Change-Id: I02e8f76cc1406e693f822822808b3485d2158884
indow.java
66df755834e1f5a843f57ea082884bd6f759ae20 23-Sep-2010 Steve Howard <showard@google.com> am 1d056cd6: am 127146ee: Merge "Decrease sensitivity of orientation changes a bit." into gingerbread

Merge commit '1d056cd6ef6d6bdea00a92f411b0eaec7694b624'

* commit '1d056cd6ef6d6bdea00a92f411b0eaec7694b624':
Decrease sensitivity of orientation changes a bit.
4198918eed8e44723417fad8a986cda664c92d5b 23-Sep-2010 Amith Yamasani <yamasani@google.com> Fix for IndexOutOfBounds in setComposingRegion.

Bug: 3000457

Check upper and lower bounds of the composing region and clip them.

Change-Id: I8128a2b581ce3d8a9ff6c71cc648c3e87163b3f5
nputmethod/BaseInputConnection.java
29d8997bd43b7c4ad37fc3d6f91eaafa74913c88 23-Sep-2010 Romain Guy <romainguy@android.com> Fix OpenGL errors in various places.

Change-Id: I3a4e115d8fb13b6c443e65460d92987b16f2524c
iewRoot.java
1d056cd6ef6d6bdea00a92f411b0eaec7694b624 23-Sep-2010 Steve Howard <showard@google.com> am 127146ee: Merge "Decrease sensitivity of orientation changes a bit." into gingerbread

Merge commit '127146ee1c716d785fd70207045625c0c1f1d1ef' into gingerbread-plus-aosp

* commit '127146ee1c716d785fd70207045625c0c1f1d1ef':
Decrease sensitivity of orientation changes a bit.
127146ee1c716d785fd70207045625c0c1f1d1ef 23-Sep-2010 Steve Howard <showard@google.com> Merge "Decrease sensitivity of orientation changes a bit." into gingerbread
625ac271f80777668f832a344486a6fcdc06d0ae 18-Sep-2010 Dianne Hackborn <hackbod@google.com> Work on fragments in layouts.

- Change semantics if IDs associated with these fragments, to
work correctly when placed in a container. If the container
has an ID or you have supplied a tag, the fragment's ID is
optional.

- To do this, there is a new LayoutInflater API that allows code
creating views to access the parent container that view will
be in.

- Fix issues with state management around these fragments. Now
correctly retains state when switching to a layout that doesn't
include the fragment.

Also:

- Add new simple list layouts for items that want to show an
activated state.
- Add new Activity.dump() that can be invoked with adb shell
dumpsys; the default implementation dumps fragment state.

Change-Id: I192f35e3ea8c53fbd26cf909095f2a994abfc1b6
ayoutInflater.java
879fb6b5d66bec90d3420fad12a2a9b2fe9592f3 20-Sep-2010 Adam Powell <adamp@google.com> Text selection anchors changed to use windows

Manually cherry-picked

Change-Id: Id080dfad0e2f324fef3a5175abc78f76c8bad4c8
iew.java
iewGroup.java
iewParent.java
iewRoot.java
770a681b2f5b00e699920317bff04a24676ae143 22-Sep-2010 Adam Powell <adamp@google.com> am 9aed3002: Text selection anchors changed to use windows

Merge commit '9aed300279db6953356aed5ef24a42291f5829cb' into gingerbread-plus-aosp

* commit '9aed300279db6953356aed5ef24a42291f5829cb':
Text selection anchors changed to use windows
9aed300279db6953356aed5ef24a42291f5829cb 20-Sep-2010 Adam Powell <adamp@google.com> Text selection anchors changed to use windows

Change-Id: I14f138039f5e3175a8c07f21985715b8447708e5
iew.java
iewGroup.java
iewParent.java
iewRoot.java
85b53adc750c605adcd0662740df24861ad27f33 22-Sep-2010 Steve Howard <showard@google.com> Decrease sensitivity of orientation changes a bit.

I've noticed over the past couple weeks that my phone was flipping to
landscape when I placed it down too often, more like it did in Eclair.
I think my previous changes to make orientation changes quicker were a
bit too aggressive, so I'm backing off a couple of the time constants.

Change-Id: Ifffd45ac934984cc9091da56958bc2b6bcaa280a
indowOrientationListener.java
5d8f9dd3572c9d3b3d57985c31427dc9ca2a7f4a 18-Sep-2010 Adam Powell <adamp@google.com> am 99f0f367: am 4258bfb7: Merge "Fix some drawing artifacts/bugs around overlays/text anchors" into gingerbread

Merge commit '99f0f3676f50640dbb22bd12960f771fc414862e'

* commit '99f0f3676f50640dbb22bd12960f771fc414862e':
Fix some drawing artifacts/bugs around overlays/text anchors
99f0f3676f50640dbb22bd12960f771fc414862e 18-Sep-2010 Adam Powell <adamp@google.com> am 4258bfb7: Merge "Fix some drawing artifacts/bugs around overlays/text anchors" into gingerbread

Merge commit '4258bfb7a9fb18907fbfbe79ec0a937b4e7382b1' into gingerbread-plus-aosp

* commit '4258bfb7a9fb18907fbfbe79ec0a937b4e7382b1':
Fix some drawing artifacts/bugs around overlays/text anchors
23bd5f50759c54224a2620cbed4614e434437265 18-Sep-2010 Adam Powell <adamp@google.com> Fix some drawing artifacts/bugs around overlays/text anchors

Change-Id: I28170d4e120506c09a1cfea721244fbcd3c2576a
iewGroup.java
f37df070ea84c353ff8bed4b2591932126d7e2ca 18-Sep-2010 Adam Powell <adamp@google.com> resolved conflicts for merge of b39470b5 to master

Change-Id: If441c8684c576b6cbc485a37088d6869ad3fb23f
b39470b57d2e4e0bf5abb43729ef9e43eb0ad5f2 17-Sep-2010 Adam Powell <adamp@google.com> am b08013c3: Added overlay support for drawing/responding to text anchors.

Merge commit 'b08013c312e3d849029a2f4c11889274c00f438d' into gingerbread-plus-aosp

* commit 'b08013c312e3d849029a2f4c11889274c00f438d':
Added overlay support for drawing/responding to text anchors.
b08013c312e3d849029a2f4c11889274c00f438d 17-Sep-2010 Adam Powell <adamp@google.com> Added overlay support for drawing/responding to text anchors.

Overlays let views draw and respond to touch events outside of their
bounds. This allows selection anchors to be friendlier and easier to
grab. This is currently private API, pending further evaluation.

Added themes/styles for text selection anchors.

Added assets for text selection anchors as provided by UX. The
left/right anchors are currently not suitable for use. They are here
for bookkeeping and replacement later. The theme currently uses the
'middle' anchor asset for all three. This will be changed once assets
are ready.

Change-Id: I01b21e5ae90cab201f86f38f2f5eeaf2bd7f6bcd
iew.java
iewGroup.java
iewParent.java
iewRoot.java
a977120681904ee6309f3e90f51c6cc43615c007 17-Sep-2010 Romain Guy <romainguy@google.com> Merge "Add support for drawLines(), with anti-aliasing"
759ea80dca64ad652110a129e0d8bf93fea79f61 17-Sep-2010 Romain Guy <romainguy@google.com> Add support for drawLines(), with anti-aliasing

Change-Id: I16c0593c5671490909dec13a85df601e1428a1a6
LES20Canvas.java
c6669ca63299219d815464129dac051ab2404286 16-Sep-2010 Dianne Hackborn <hackbod@google.com> Add API for showing breadcrumbs of fragment back stack.

This adds a simple API to have your back stack automatically
shown as bread crumbs in the action bar. Introduces some APIs
to retrieve the current back stack.

Also fix a little bug in the "activated" state where it was
being propagated down the hierarchy as "selected". :p And from
that, fix the standard colors to be reasonable when in the
activated state.

Finally PreferenceActivity is updated to take advantage of
bread crumbs to show your place in the preferences.

Change-Id: I9d633bedf8d7c6e4ed9b25cb9698faa66c7dd9a4
iew.java
885b1f21d95c5c356d7dbe40a4d033d558c2c772 16-Sep-2010 Romain Guy <romainguy@google.com> Merge "Better error handling in the OpenGL renderer."
b025b9c8b4efefadb01937db61a1f8ee7d2452bf 16-Sep-2010 Romain Guy <romainguy@google.com> Better error handling in the OpenGL renderer.

Add a glGetError() check on every frame
Don't attempt to create textures larger than the maximum size allowed

Change-Id: Iee4afae16089406dbe8bf10fc93b674f1271a0ca
LES20Canvas.java
ardwareRenderer.java
8fca21d0fa9643b029f8af0d353370a0452953e1 16-Sep-2010 Joe Onorato <joeo@google.com> Merge "Fix broken javadoc."
707929d6f8f8ff2663da9982a99f943736b8be5c 16-Sep-2010 Jeff Brown <jeffbrown@google.com> am 61cf67a2: am 24326f72: Merge "Input API review." into gingerbread

Merge commit '61cf67a220ba3205737c646c1c836a92074220de'

* commit '61cf67a220ba3205737c646c1c836a92074220de':
Input API review.
61cf67a220ba3205737c646c1c836a92074220de 16-Sep-2010 Jeff Brown <jeffbrown@google.com> am 24326f72: Merge "Input API review." into gingerbread

Merge commit '24326f7223275ba9c85014b86d42040e3a7d2815' into gingerbread-plus-aosp

* commit '24326f7223275ba9c85014b86d42040e3a7d2815':
Input API review.
9316232130fe831c998c9d7be9cf67294eccdcae 16-Sep-2010 Joe Onorato <joeo@google.com> Fix broken javadoc.

Change-Id: I4729ebee36117f281af613e0b49f70d7dee5f334
iew.java
d0fa371f276fde32d81c037006941bc93da0bb03 15-Sep-2010 Dianne Hackborn <hackbod@google.com> Add a new "activated" state to View.

Use this in ListView and GridView if the top view is not checkable.

This allows PreferenceActivity to now highlight the current heading
that is being shown.

Change-Id: I0d28aded9a61a42962b4aece420ae4058712d963
iew.java
iewGroup.java
dc1ab4b5cc274b7d744c11a939bb5910becec5e0 15-Sep-2010 Jeff Brown <jeffbrown@google.com> Input API review.

Drop currently unsupported input features.
Add documentation comments.

Change-Id: I407d2e1dd90c5ee82983a3ccf177430d35ee7592
nputDevice.java
eyEvent.java
otionEvent.java
5f12084daa254276582be73005ee8c4a19bc8cee 14-Sep-2010 Adam Powell <adamp@google.com> Merge "Fix bug 2995805 - splitMotionEvents behavior change"
167bc821ddfee3d6d3b1c0ea10636be7c6eb591a 14-Sep-2010 Adam Powell <adamp@google.com> Fix bug 2995805 - splitMotionEvents behavior change

Changed the new split motion events behavior to match the enshrined
behavior. A return value of false from a target's dispatchTouchEvent
will not prevent the target from receiving further events in the
gesture unless it is the initial ACTION_DOWN event.

Change-Id: Ied8d531dfec7009a4124ed670b1700753c3f9caa
iewGroup.java
59a29f4a6ca7f6e177509f4c86a8ab968faf4f2c 14-Sep-2010 Adam Powell <adamp@google.com> am b07c0789: Merge "DO NOT MERGE Fix bug 2995887 - overscroll effect initialization issue" into gingerbread

Merge commit 'b07c078921fb917d33075a63d77fdf98221e2bac' into gingerbread-plus-aosp

* commit 'b07c078921fb917d33075a63d77fdf98221e2bac':
DO NOT MERGE Fix bug 2995887 - overscroll effect initialization issue
57361ef001c13a28701dbe8ba3aa08e56310c3a7 14-Sep-2010 Adam Powell <adamp@google.com> DO NOT MERGE Fix bug 2995887 - overscroll effect initialization issue

Change-Id: I03cc18616dec05eb9e0383dc02371366c70cc12b
iew.java
58ef7fbf16864164efe98bf613b15c64deb1afc0 13-Sep-2010 Romain Guy <romainguy@google.com> Forces windows to draw the first time they show.

Change-Id: I239572ee49bc60f30d957f548104e75844859a93
iewRoot.java
26edf20a0b9516f6021521bc8edd2d30c03fc2ad 13-Sep-2010 Tony Wu <Tony_Wu@acer.com.tw> Fix if ACTION_DOWN and lost focus time too close, it will become long press.

It will become long press because CheckForTap is still posted in background.
So remove the callback when lose focus, or it will become long press event.

Change-Id: I4f98a6fc077d256edbe555464095b2b81e75dd41
iew.java
cf78b3e5101349fdddbde14b3a55140f9562ae66 13-Sep-2010 Adam Powell <adamp@google.com> Add support for custom action views in ActionBar menus

Change-Id: Ic7850bc00fcfe95d805dd6a1b15cb5d413942475
enuInflater.java
enuItem.java
2bffd268f135df8308c9e67af110525a5c463424 13-Sep-2010 Romain Guy <romainguy@google.com> Fix text rendering issue with text scaling.

Change-Id: I1f3ae40025697e8f8ca0616ee6550fe215cadcc8
iew.java
iewRoot.java
eb851c4ecf38e3e2935fcf81c75c2ceadc2728e1 13-Sep-2010 Jeff Brown <jeffbrown@google.com> am e740dd0c: am 69206512: Fix some API discrepancies in InputEvent.

Merge commit 'e740dd0c8fde910066f9ddf83b4ab094ed95eaf9'

* commit 'e740dd0c8fde910066f9ddf83b4ab094ed95eaf9':
Fix some API discrepancies in InputEvent.
e740dd0c8fde910066f9ddf83b4ab094ed95eaf9 13-Sep-2010 Jeff Brown <jeffbrown@google.com> am 69206512: Fix some API discrepancies in InputEvent.

Merge commit '692065128e66de77470de2c50ead2bef0452952a' into gingerbread-plus-aosp

* commit '692065128e66de77470de2c50ead2bef0452952a':
Fix some API discrepancies in InputEvent.
692065128e66de77470de2c50ead2bef0452952a 13-Sep-2010 Jeff Brown <jeffbrown@google.com> Fix some API discrepancies in InputEvent.

Change-Id: I8e33e125e10075d6f256a1eb3dd46990f35074d6
nputEvent.java
e4e0a4bca00e89056945805de2e739e3303476d8 12-Sep-2010 Romain Guy <romainguy@android.com> am 7d5c0e66: am 15f0a79a: Merge "fix typo in comment @beamsOverlap"

Merge commit '7d5c0e660e52888f986acef2cecde8ddc9ca26c8'

* commit '7d5c0e660e52888f986acef2cecde8ddc9ca26c8':
fix typo in comment @beamsOverlap
ae44d554b765597bd82d42e2d7c1008468b42b8e 12-Sep-2010 Romain Guy <romainguy@google.com> Merge "Correct implementation of saveLayer()."
f607bdc167f66b3e7003acaa4736ae46d78c1492 11-Sep-2010 Romain Guy <romainguy@google.com> Correct implementation of saveLayer().

Change-Id: I5375126636913e0a84f2d6bbd0ebe40d2e4f2763
iew.java
7d5c0e660e52888f986acef2cecde8ddc9ca26c8 12-Sep-2010 Romain Guy <romainguy@android.com> am 15f0a79a: Merge "fix typo in comment @beamsOverlap"

Merge commit '15f0a79a81fd18211603587bcd46eee0e37ced4d' into gingerbread-plus-aosp

* commit '15f0a79a81fd18211603587bcd46eee0e37ced4d':
fix typo in comment @beamsOverlap
44e8ec71977127ad5db0f351f796f6c62db86e86 12-Sep-2010 madan ankapura <mankapur@sta.samsung.com> fix typo in comment @beamsOverlap

Change-Id: I7c7f8e94391ed71a54b65badea164286281df7e3
ocusFinder.java
b20db3ec34e846010f389880b2cfab4d7bf79820 10-Sep-2010 Chet Haase <chet@google.com> Make fragment animations work when fragments go away

Change-Id: I136de6ef910cc02b8181fcfa065bdb0770841396
iewGroup.java
897247b2c419567d2d091b8da37a394f481f6f84 09-Sep-2010 Chet Haase <chet@google.com> Fix bug with pivot point not including translationXY factors

Change-Id: Ib16cd0acc007405fea24664327554019e24c2ac9
iew.java
8ae0f3f6c7319717237af74c8d4aad2c082eef2b 09-Sep-2010 Adam Powell <adamp@google.com> Fix bug 2988160 - Flinging broken in certain apps/widgets

Change-Id: I89de767cecbbc37cb2fe90a0346e8e1591dec60b
elocityTracker.java
b380c4d7edc158788a85c906900232675c0164ac 08-Sep-2010 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of a05088c1 to master

Change-Id: I7973f9f28586dec9b9659f8f662f40db7997a521
85a3176704b5bfbeece9bd928369fbb76eec7dc6 02-Sep-2010 Jeff Brown <jeffbrown@google.com> Add support for secure views.

Added the MotionEvent.FLAG_WINDOW_IS_OBSCURED flag which is set by the
input manager whenever another visible window is partly or wholly obscured
the target of a touch event so that applications can filter touches
accordingly.

Added a "filterTouchesWhenObscured" attribute to View which can be used to
enable filtering of touches when the view's window is obscured.

Change-Id: I936d9c85013fd2d77fb296a600528d30a29027d2
otionEvent.java
iew.java
iewGroup.java
indowManagerPolicy.java
a18a86b43e40e3c15dcca0ae0148d641be9b25fe 07-Sep-2010 Chet Haase <chet@google.com> Rename several animation classes

Change-Id: I6a4544875090db485163c8d56de8718f56d267c7
nimation/AnimationUtils.java
53389bdcdf6ffaaec533b73bc1d0abc5807ec7f6 08-Sep-2010 Romain Guy <romainguy@google.com> Correctly set the viewport on window resize.

Change-Id: Idec325264d85feda76d4cda00fa511aaac82cf64
iewRoot.java
5429e1d1026db8922478b715672e6c0703bbf4a9 07-Sep-2010 Romain Guy <romainguy@google.com> Use static final debug fields.

Change-Id: I304c39f54f609729bcec581091f285b2baa6fefa
iew.java
iewDebug.java
iewGroup.java
iewRoot.java
14cd0653e493cc83041ab51af91399ba00b85c24 07-Sep-2010 Romain Guy <romainguy@google.com> Temporarily disable fading edges if solidColor=0 and hw is on.

Change-Id: I430d8d4d00cbabc99644b98ea832460339c196d8
iew.java
a14c8e0c67223fdc9a0746b370ae594a92530e78 04-Sep-2010 Romain Guy <romainguy@google.com> Bring back instances counts to dumpsys meminfo.

Change-Id: Idd846e137e8e87cb93551ba13751df60a8046eed
iew.java
iewDebug.java
iewRoot.java
bfcb1f5c4e53c76d363d230b3cad7ea971a90301 04-Sep-2010 Romain Guy <romainguy@google.com> Merge "Prevent the system process from using the HardwareRenderer."
13cc1207fab68adc5c7da0bf3b365196e26a273e 04-Sep-2010 Chet Haase <chet@google.com> Add ability to enable layout transition animations by default from XML

Change-Id: I2b884c83e868f5d22ef85d65ff8ee984633de65e
iewGroup.java
7627c221c6ce8bf433bf207b002eabe7236c4757 04-Sep-2010 Adam Powell <adamp@google.com> DO NOT MERGE Tweak overscroll

Change-Id: I5ba00fc87ba7b286978acf577ba6461f79066437
iewConfiguration.java
5233920a216302b4aa03b100c32e8b3efe33cbc6 04-Sep-2010 Romain Guy <romainguy@google.com> Prevent the system process from using the HardwareRenderer.

This change allows applications with the system UID to use the hardware
renderer.

Change-Id: I3c5d776ee9c07bb14933dbe3060cad4175e4fc95
ardwareRenderer.java
iewRoot.java
21cd1389d2ef218b20994b617c57af120841a57f 02-Sep-2010 Chet Haase <chet@google.com> Add transition effects for layout changes on ViewGroups

Change-Id: Ibefcca5692450188fbcec608f3f7e36be1213b21
iew.java
iewGroup.java
47c41e807e36999e4d0d2072e41a82bc45655ff2 02-Sep-2010 Erik <roboerik@android.com> Added methods for getting the x and y span

We would like to separate x and y for our pinch gestures. This
change adds methods for returning those independently instead of
only allowing access to the total span.

Change-Id: I2f54cd83602e447174a49035237da379a573b63e
caleGestureDetector.java
355a17c4f853c235a18380e71e1aa446f72fa5eb 03-Sep-2010 Gilles Debunne <debunne@google.com> am ece9e194: am d180232e: Merge "Revert "Merge "InputMethodManager showSoftInput return documentation." into gingerbread"" into gingerbread

Merge commit 'ece9e1947831a46b5d67b1a3d3d8e0189e38d983'

* commit 'ece9e1947831a46b5d67b1a3d3d8e0189e38d983':
Revert "Merge "InputMethodManager showSoftInput return documentation." into gingerbread"
d4723bb415dc70008c744d1027c3e3d9473adfe1 03-Sep-2010 Gilles Debunne <debunne@google.com> Revert "Merge "InputMethodManager showSoftInput return documentation." into gingerbread"

This reverts commit 26d708d93624d2d060529b7e33e0a20172e85efd, reversing
changes made to 3ac85d31de6cab5a468b7728b3340cf1b57bc8fe.

Change-Id: Ifc19f837bee7437707ddddf0b19cb6bce53dd2c5
nputmethod/InputMethodManager.java
25962adc733be1fa7e06ba28a708880f5e66a8da 02-Sep-2010 Gilles Debunne <debunne@google.com> am 5402c34b: am 26d708d9: Merge "InputMethodManager showSoftInput return documentation." into gingerbread

Merge commit '5402c34b2717fd4885782a8fc631b3b66162d140'

* commit '5402c34b2717fd4885782a8fc631b3b66162d140':
InputMethodManager showSoftInput return documentation.
26d708d93624d2d060529b7e33e0a20172e85efd 02-Sep-2010 Gilles Debunne <debunne@google.com> Merge "InputMethodManager showSoftInput return documentation." into gingerbread
9b34d45c8f164f1d4c51538f241263dfefc0f22e 02-Sep-2010 Romain Guy <romainguy@google.com> Correctly apply alpha on TextView.
Bug #2969691

Change-Id: Ied46e9a38718cb37df10f9dc79b48fbc3a8bd237
iew.java
iewGroup.java
5916882c3f13429d29f95b89dd94bd2d5733da85 02-Sep-2010 Adam Powell <adamp@google.com> DO NOT MERGE Overscroll continues; asset and behavior tweaks.

Change-Id: I367643877a397e7b4fa9bd8c40639ff69436e7f0
iewConfiguration.java
8aef54fa17f2a3753d9a8f2027629bc480088f69 02-Sep-2010 Romain Guy <romainguy@android.com> Add support for Canvas flags on save.

This is required for the rewrite of layers support.

Change-Id: I5c0867dcf5aeb0392c8d0fbab05febb0eaff70d9
LES20Canvas.java
a18cf547317d3602b5476ee4b9e206fe4c12d7b5 01-Sep-2010 Gilles Debunne <debunne@google.com> InputMethodManager showSoftInput return documentation.

Change-Id: I12b1fe6d224e1b44377fb9152a33a818b1974925
nputmethod/InputMethodManager.java
2cbe236138d1e8b003730087ee9c8e9ecca83795 31-Aug-2010 Romain Guy <romainguy@google.com> Merge "Add hooks for hardware accelerated WebView."
da8532c6f48b4c10b5e2ccb9e08690341efa1616 31-Aug-2010 Romain Guy <romainguy@google.com> Add hooks for hardware accelerated WebView.

Change-Id: I907cdec8a67594f87749ac46bda85f04af5a2003
LES20Canvas.java
6b2a75751d93fb2a4124e979603d79634ac017e0 31-Aug-2010 Jeff Brown <jeffbrown@google.com> am be990e97: am 6eb5ac9c: Fix doc link in InputDevice.

Merge commit 'be990e97a93f029c0ecc77a1bba66ea92057e5e4'

* commit 'be990e97a93f029c0ecc77a1bba66ea92057e5e4':
Fix doc link in InputDevice.
6eb5ac9ceeb3ff67d38c7ead54b4247e762f278d 31-Aug-2010 Jeff Brown <jeffbrown@google.com> Fix doc link in InputDevice.

Change-Id: I3b356b8e3803661ccfe5bb4812021b6c6d576d21
nputDevice.java
0a77ce277c6ed2aa25bbea5f8cd5687c0720cb68 25-Aug-2010 Adam Powell <adamp@google.com> New edge effects for scrolling widgets (overscroll)

TODO: Currently disabled for WebView. Assets used for the glow effect
need to be themable/styleable. Overscroll effect should take place
even when the user did not grab the widget within actual content.

Change-Id: I68277d14d37dc5bcdb9254eaddf6e4998b3f2bf4
iew.java
iewConfiguration.java
22f5ee93746f37823265b8cb9b1e94e572607514 31-Aug-2010 Jeff Brown <jeffbrown@google.com> am 36f0cb26: am 8d60866e: Input device calibration and capabilities.

Merge commit '36f0cb26cbb4ef62995ff2e5a540cf8814e7f030'

* commit '36f0cb26cbb4ef62995ff2e5a540cf8814e7f030':
Input device calibration and capabilities.
8d60866e2100db70ecf0502c14768a384514d7e9 30-Aug-2010 Jeff Brown <jeffbrown@google.com> Input device calibration and capabilities.

Finished the input device capability API.
Added a mechanism for calibrating touch devices to obtain more
accurate information about the touch contact area.
Improved pointer location to show new coordinates and capabilities.
Optimized pointer location display and formatting to avoid allocating large
numbers of temporary objects. The GC churn was causing the application to
stutter very badly when more than a couple of fingers were down).
Added more diagnostics.

Change-Id: Ie25380278ed6f16c5b04cd9df848015850383498
WindowManager.aidl
nputDevice.aidl
nputDevice.java
7dff1a72146ba549d51649ad786a0e1cc8b6897c 30-Aug-2010 Romain Guy <romainguy@google.com> Make profiling easier.

Change-Id: I3d4a0a0ead72569a8950bc986dfe584b186e0d65
iewRoot.java
f956fd6d1325fcb2e5ce9b8dac95a9a40824ead8 27-Aug-2010 Amith Yamasani <yamasani@google.com> am 4b4114d1: am a90b7f01: Add methods to InputConnection: setComposingRegion() to select a region of text for correction, and getSelectedText() to return the selected text.

Merge commit '4b4114d155b4f3d5cc4179934cb6403b1776261d'

* commit '4b4114d155b4f3d5cc4179934cb6403b1776261d':
Add methods to InputConnection: setComposingRegion() to select a region of text for correction, and getSelectedText()
a90b7f0125389b9e1040d2be82aad4ef74ea6071 26-Aug-2010 Amith Yamasani <yamasani@google.com> Add methods to InputConnection: setComposingRegion() to select a region of text for correction, and getSelectedText()
to return the selected text.

setComposingRegion:

The TextView may choose to highlight the text in some way (underline for now) to indicate
that the text is selected for correction, if the IME wants to provider alternatives.

Choosing an alternative in the IME can then call IC.commitText() to replace the highlighted
(not selected) text with a different candidate.

This change also ensures that any existing spans/styles are not wiped out. So we can now
correct rich text as well.

getSelectedText:

This is a convenience to get the selected text instead of using extracted text that is
more heavy weight. Existing getTextBeforeCursor() and getTextAfterCursor() fail to
retrieve the selected text, only what's before and after the selection.

Change-Id: Ieb5ecd5ff947ea04958589f501e7bd5228e00fb5
nputmethod/BaseInputConnection.java
nputmethod/InputConnection.java
nputmethod/InputConnectionWrapper.java
5fcfa52d60e1ca7674fbb6d8e90979f267347c18 26-Aug-2010 Dianne Hackborn <hackbod@google.com> am efd05ea6: am 0a7f5fc4: Merge "Fix issue #2951784: Launcher crashes on startup" into gingerbread

Merge commit 'efd05ea69a53d73d2dacacd74f6a420cac8ef97b'

* commit 'efd05ea69a53d73d2dacacd74f6a420cac8ef97b':
Fix issue #2951784: Launcher crashes on startup
0a7f5fc474182c58b478d8f9017209dcf8d0ca0b 26-Aug-2010 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #2951784: Launcher crashes on startup" into gingerbread
9dae48e3992521f104cde7c916ed1fb5ee1ecb54 26-Aug-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2951784: Launcher crashes on startup

Change-Id: I98aedacce9a7d6b8bc168f39ea5489b40dc0ec8d
ayoutInflater.java
c8f8497b9cac63a923dbdb1c08e247ba32c19e5e 26-Aug-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 66d633d2 to master

Change-Id: I6c38d7c4d127954dfca17082215c587a3cd4a586
3003a017d312a55e3804d6cf4a80044b1f1d7993 26-Aug-2010 Dianne Hackborn <hackbod@google.com> Merge "Don't retain global ref to last inflated context." into gingerbread
7e269644fcc319835f1e7f762f3cbd8087e3e22f 26-Aug-2010 Dianne Hackborn <hackbod@google.com> Don't retain global ref to last inflated context.

Also rework URI permission granting to support upcoming
clipboard use.

Change-Id: I9842920350955531c5a511c2ecc5215e8c783343
ayoutInflater.java
261d509270d41508ca99d5a1a0d0dd8e7e4bd966 26-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> am 5a54e980: am 6947cc59: Merge "Preventing the hierarchy viewer from getting stuck, once when trying to load the window data for SurfaceView and the Wallpaper, and in the case the captured node has disappeared." into gingerbread

Merge commit '5a54e98022d640900f94102c077d8dff447f3c76'

* commit '5a54e98022d640900f94102c077d8dff447f3c76':
Preventing the hierarchy viewer from getting stuck, once when trying to load the window data for SurfaceView and the Wallpaper, and in the case the captured node has disappeared.
dc9e486e0a6cbc6f4083190848c95fe3f24f9819 25-Aug-2010 Romain Guy <romainguy@google.com> Merge "Only destroy the GL Canvas when necessary."
4caa4ed120a86e855d4d3b6b455c6fb9ca22e365 25-Aug-2010 Romain Guy <romainguy@google.com> Only destroy the GL Canvas when necessary.

Change-Id: I6caf4873b02dc4a6d7c8c91925d2447b3b0e0593
ardwareRenderer.java
iewRoot.java
43b9b48f792e0b1b166af7f7fb6a32172e7f11c2 25-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> Preventing the hierarchy viewer from getting stuck, once when trying to load the window data for SurfaceView and the Wallpaper, and in the case the captured node has disappeared.

Change-Id: Iaff6bd501a2bb3faa7a394fff740479f6a95e899
iewDebug.java
9b073948cfb84c0dd04f8a94ee1f7f263f027c83 20-Aug-2010 Adam Cohen <adamcohen@google.com> Cleanup and bug fixes in StackView
-> pushed functionality from AdapterViewAnimator to StackView
-> only modifying clipping flags as far up the view
hierarchy as needed
-> still need framework level solution for drawing outside bounds

ViewGroup touch dispatch temp fix
-> Touch event was being modified and not reset in some
code paths.

Change-Id: I8135b62e2d73f239b9df407b0fa93bc434796989
iewGroup.java
7e2fb173918291bd38573fe57c828c320499cea3 25-Aug-2010 Gilles Debunne <debunne@google.com> Merge "Fixed typo in View id documentation"
71fcc470eb2fda968ef98c75f507a552403a8b8c 25-Aug-2010 Chet Haase <chet@google.com> Merge "Change animator xml importing to use new inflater class"
0243caff24ee3b5e4c5e55c888ebb4cdf75b3602 25-Aug-2010 Gilles Debunne <debunne@google.com> Fixed typo in View id documentation

Change-Id: I2df4f0ff9dc0b229349c8accbd6ef962f1d345bb
iew.java
d51d368f2d512ab657b8ae45780c82c0dbea94c3 12-Aug-2010 Chet Haase <chet@google.com> Change animator xml importing to use new inflater class

Change-Id: I97225ee9868f4dcce5e4c1ba55e16414eb6c0464
nimation/AnimationUtils.java
a84e02ce3cc392ccf23bbe89cdfbef650047ffe7 25-Aug-2010 Romain Guy <romainguy@google.com> Merge "Use only one GL context per process, share chaches."
fb8b763f762ae21923c58d64caa729b012f40e05 24-Aug-2010 Romain Guy <romainguy@google.com> Use only one GL context per process, share chaches.

Change-Id: Ieabaa25338d2f4b8d4fd90e7401ad6e7452eae11
LES20Canvas.java
ardwareRenderer.java
iewRoot.java
a3715c151b8d35e93b068740baf6b2c38ebc8623 24-Aug-2010 Adam Powell <adamp@google.com> Merge "Disable FEATURE_ACTION_BAR on windows with incompatible feature sets."
f4a6ec4e9398c1beb019e1c208272bf56401f925 24-Aug-2010 Adam Powell <adamp@google.com> Disable FEATURE_ACTION_BAR on windows with incompatible feature sets.

Change-Id: I70c860c72eb9e1f1f123764202334ab714f4f830
indow.java
49afa5bc100e5d4c069fea980dd6b09501f56397 23-Aug-2010 Chet Haase <chet@google.com> Add facilities for layout transitions

Change-Id: I5c73ce6c6ba3bc9e3b57fcfbbcab37d511db6132
iew.java
nimation/Animation.java
208e3c586d83b39b692ed63974edd7feeea761b3 24-Aug-2010 Adam Powell <adamp@google.com> Merge "Fix some issues with touch event splitting around event timing"
816c3be1d7e27ee91ad4e87d39a208dbdc27c8f9 24-Aug-2010 Adam Powell <adamp@google.com> Fix some issues with touch event splitting around event timing

Change-Id: I15d04d226c218ad7b8a5fe43a55c33c3ade2128d
iewGroup.java
a931e9a15840f9074f1803b5adb2f23b40a1ab1b 23-Aug-2010 Jeff Brown <jeffbrown@google.com> am 6bacd9c6: am 2f6d975b: Minor MotionEvent optimization.

Merge commit '6bacd9c6fb799f185be580a0596214b0ce998999'

* commit '6bacd9c6fb799f185be580a0596214b0ce998999':
Minor MotionEvent optimization.
dfc8cde5c865560458518dfcd178ec9f4ebede30 21-Aug-2010 Steve Howard <showard@google.com> am 1f442104: am e0c8582e: Merge "Improve orientation sensing when waking up while flat." into gingerbread

Merge commit '1f4421048206ca1745ddd6366588759c9c5c38f9'

* commit '1f4421048206ca1745ddd6366588759c9c5c38f9':
Improve orientation sensing when waking up while flat.
2b342f0a76f3237e97f15dc2f4e8a0b72dd7c023 19-Aug-2010 Adam Powell <adamp@google.com> Allow ViewGroup to split MotionEvents to multiple targets during dispatch.

Use the layout xml attribute splitMotionEvents="true" or the ViewGroup
method setMotionEventSplittingEnabled(true) to enable motion event
splitting. Rules for splitting are as follows:

* Splitting is enabled per ViewGroup. When splitting is enabled any
MotionEvent dispatched to that ViewGroup can potentially be split
into several and dispatched to children independently.

* Each pointer is assigned a target child view when the ACTION_DOWN or
ACTION_POINTER_DOWN event is received. That will be the pointer's
target until it goes up, the target returns false from onTouchEvent,
or the MotionEvents are intercepted.

* Multiple pointers may be assigned to the same target. All pointer
data sent to a target are bundled into a single MotionEvent. Child
views do not need to be aware that splitting has occurred.

Change-Id: I993f838e2f6b455da9812f4742a016dfcd1c4cc9
iew.java
iewGroup.java
baf72cd79c2a675c2265384eb704067ab24259a7 20-Aug-2010 Dianne Hackborn <hackbod@google.com> Merge "DO NOT MERGE 2928156 Accessibility event's parcelableData property not nullified during recycling (GINGERBREAD)" into gingerbread
2f6d975b93bbc5b55c35a00d913ee38ad9b76401 20-Aug-2010 Jeff Brown <jeffbrown@google.com> Minor MotionEvent optimization.

Change-Id: I862e934e8dae80f394ffd4ab4b4697037805022c
otionEvent.java
d018a0ce72124f668d859b19fe3e73f5637d3c7c 20-Aug-2010 Gilles Debunne <debunne@google.com> Merge "Text selection without trackball." into gingerbread
b0d6ba1ec4f71b96cab7d1ff62b846d5cf162c4f 18-Aug-2010 Gilles Debunne <debunne@google.com> Text selection without trackball.

Backported from HC.

Squashed commit of the following:

commit af214a595c7a9fdd11a2dc384f7d4665abf751c0
Fixes in TextView's selection.

commit eb9fd59ebe6500a66c2003d46b5802299970ae8d
TextView with Selection Contextual Mode

commit 4c4c338ef355b369ce4b57d6c6fba7ee8f9dddf4
Cosmetic changes around TextView.

commit d4b4b054e87480d984ad18766f5e76553e3080d8
Double and one and a half tap removed from TextView.

commit 897c2847ba1fca8ef01eadadd1bc3de007af3ee5
Selection handlers in TextView

commit 832be74a5394649e28927484d9a86c6d53b430e7
New cursor controller in TextViews.

Change-Id: I01cc64736e2abea605317ee53907a1713617fc17
bsSavedState.java
otionEvent.java
iew.java
e0c8582e8a9f2b6eb5ebde667ddd1fddf4652bd4 19-Aug-2010 Steve Howard <showard@google.com> Merge "Improve orientation sensing when waking up while flat." into gingerbread
917031361c2a6f8ddc2986964d1306c51f2b1c27 18-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> am 28bd3a54: am f2af87b3: Merge "Making sure the draw time is measured." into gingerbread

Merge commit '28bd3a54ec192ed9259cf88873e387129103258e'

* commit '28bd3a54ec192ed9259cf88873e387129103258e':
Making sure the draw time is measured.
5eb49583e2f0b82d7a48182ffed5f409b4f85dc5 16-Aug-2010 Steve Howard <showard@google.com> Improve orientation sensing when waking up while flat.

This change makes the window manager pass the currently displayed
orientation to the WindowOrientationListener each time to calls to get
the currently sensed orientation. Now, when the
WindowOrientationListener doesn't know for sure what the orientation
of the device should be (for example, if the sensed orientation is
flat on a table), then it trusts the already-displayed orientation,
rather than trusting whatever sensors reading it most recently
received.

The main use case this addresses is:
* user uses device in portrait
* user turns off device, puts it in pocket
* while in pocket, screen gets turned on, activating orientaiton
sensor, which senses landscape orientation
* screen timed out
* user takes device out, places it on a table (or looks down at it,
holding it flat), and unlocks it

Previously, when the device was unlocked, the
WindowOrientationListener would return landscape orientation based on
its previous sensor readings. Now, it will override those previous
readings because it knows they never actually took effect and the
device is presently flat.

This change also slightly modifies the way we handle flat orientation,
now completely ignoring data when the tilt distrust is nonzero (even
if the current sensor reading shows non-tilted).

Change-Id: Ia4950a41827f8c53a80487d0c2e83b556df781b9
indowOrientationListener.java
756879836bd3acb9fd500ca0aefebe7579567148 18-Aug-2010 Romain Guy <romainguy@google.com> Merge "Layers were using an extra Snapshot causing extra clipping."
2542d199745cdf3ec910b8e3e4cff5851ed24e9b 18-Aug-2010 Romain Guy <romainguy@google.com> Layers were using an extra Snapshot causing extra clipping.

Bug #2919310

Change-Id: I72ccd44bba7a3f3db72f581aa96198b6226e4478
iew.java
bef337f516eafaee8f3891e22688b74388570317 18-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> Making sure the draw time is measured.

Change-Id: I6bf8094aee03793f125008386c4fea730e95d07a
iewDebug.java
7eb84256e57ce85bece610e6a01e20fa12e0f3fe 04-Aug-2010 satok <satok@google.com> Enhancement of method.xml for Fast IME switching

- (Public API) Add public attrs: imeSubtypeExtraValue, imeSubtypeLanguage, imeSubtypeMode
-- (Public API) Add InputMethodSubtype class
-- (Public API) Add getSubtypes to InputMethodInfo
- Add parser for the enhanced method.xml

Change-Id: Ie7965fd29fd9615ef9c9418075c9f5f1c3365eb6
nputmethod/InputMethodInfo.java
3dfaf21dfc5b13bed3874f52bdcf63e95de640c2 18-Aug-2010 Svetoslav Ganov <svetoslavganov@google.com> DO NOT MERGE 2928156 Accessibility event's parcelableData property not nullified during recycling (GINGERBREAD)

Change-Id: I18437d98032487329b6b9b579ed12abbfb77501f
ccessibility/AccessibilityEvent.java
291905e34a7f0ae03c68fb2c1b8c34b92d447fbf 18-Aug-2010 Dianne Hackborn <hackbod@google.com> Maybe fix #2925641: calling onCreateOptionsMenu before attached activity

Also add some APIs to PreferenceActivity.

Change-Id: I85894a3eb9cd3e5adb78b82e85454c0d74773178
indow.java
8fb954263dd2f918ad339045cc6d82e346515599 18-Aug-2010 Romain Guy <romainguy@google.com> Fix save()/restore() issues in the OpenGL renderer.

The save stack now behaves exactly like in Skia.

Change-Id: If7e642f41f2c8f693f6e8c26cba81507d466562e
ardwareRenderer.java
iew.java
iewRoot.java
4d9861e7ec8488634d316b20981464de2ab7b6fe 17-Aug-2010 Adam Powell <adamp@google.com> Bug 2923440 - ActionMode buttons show if room by default - different approach.

This enforces the new policy if menu items are created
programmatically instead of inflated from menu xml.

This reverts commit fbb72fdbe58142e0f1f7ffa17f009b0d829b33c3.

Change-Id: I102e93b80a3248634e98e0d7dc3321bf1d8b263b
enuInflater.java
fbb72fdbe58142e0f1f7ffa17f009b0d829b33c3 17-Aug-2010 Adam Powell <adamp@google.com> Fix bug 2923440 - ActionMode buttons show as action by default

The MenuInflater returned by ActionModes will set the default
showAsAction value to "ifRoom" if not otherwise specified.

Change-Id: I86045dc4e877a97a3464a1a5f44d8d1e2120b086
enuInflater.java
0ab1d7f552ba79af59cecea99c95f2a70ee36831 17-Aug-2010 Mathias Agopian <mathias@google.com> am 98a94989: am 833533c9: Improve Display javadoc slightly

Merge commit '98a94989dd5fbf3da61329d0232a84a0e2dfcb74'

* commit '98a94989dd5fbf3da61329d0232a84a0e2dfcb74':
Improve Display javadoc slightly
833533c9292f860e4dfc060a4eba6429cd259ed4 16-Aug-2010 Mathias Agopian <mathias@google.com> Improve Display javadoc slightly

Change-Id: Iaa7d599e11d42d4aaf50e87b141f9b8d04ba445e
isplay.java
1e45aae5de003657e5d18f74d34998f5de5db5b7 14-Aug-2010 Romain Guy <romainguy@google.com> Add drop shadows.

Change-Id: Ic6a72409d4785968d1fbdff229f17ee5c00b240b
LES20Canvas.java
831cffa572a9228e95528c4a1f6ada7f45f5d2fb 12-Aug-2010 Romain Guy <romainguy@google.com> Merge "Bunch of fixes."
959c91f7f7b4f921d341264f5b4ef54e702a0df0 12-Aug-2010 Romain Guy <romainguy@google.com> Bunch of fixes.

Fixes memory leak, fixes multiple context support, fix 3d transforms.

Change-Id: I7462cfbc57857dbd4de4e76b9d4cba58a1bce77b
ardwareRenderer.java
949dbf7629eacfa02f267ade4643c98aef8e42a9 12-Aug-2010 Chet Haase <chet@google.com> Fix the build from two breaking changes (update to current.xml and ViewRoot import)

Change-Id: I987b12f7c5fdd4137faa55405fce99bd6f73fc71
iewRoot.java
08965fc73099b194ff88a15c0de497aa61e7aff2 12-Aug-2010 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 4e14159a to master

Change-Id: I42dc1efc2218af326a826aeb16daded71722b363
943fbb4f4006273ae5983da42143d721ae05dfd4 12-Aug-2010 Adam Powell <adamp@google.com> Merge "ActionBar overlay mode, height fetching, show/hide"
b219a83ff6278eeef981e6908abf871876a68699 12-Aug-2010 Jeff Brown <jeffbrown@google.com> am f66f8a58: am 95af0c14: Merge "Add support for the PointerLocation overlay." into gingerbread

Merge commit 'f66f8a58cc4412bd258e1d5b11cac17a617bdc58'

* commit 'f66f8a58cc4412bd258e1d5b11cac17a617bdc58':
Add support for the PointerLocation overlay.
92ff1dd8359889f5876f8a222c5d923071e66dbd 12-Aug-2010 Jeff Brown <jeffbrown@google.com> Fix ViewRoot bug attempting to finish synthetic KeyEvents.

Bug: 2834068
Change-Id: I34ee0c4479cee36b25a2c3e1cdf5d761b663ac1e
iewRoot.java
6b336f835d637853800b94689375a03f337139a4 11-Aug-2010 Adam Powell <adamp@google.com> ActionBar overlay mode, height fetching, show/hide

Change-Id: Ie931ed26ec885d891d6733132b517a53d95f8491
indow.java
95af0c14a64ef264d2b362ded4ca2b5a169d1066 12-Aug-2010 Jeff Brown <jeffbrown@google.com> Merge "Add support for the PointerLocation overlay." into gingerbread
a41ca77fabe1c7ad12ebb9b69b9e786c07d49fa0 11-Aug-2010 Jeff Brown <jeffbrown@google.com> Add support for the PointerLocation overlay.

This change involves adding a new method to IWindowManager,
monitorInput() that returns an InputChannel to receive a copy of all
input that is dispatched to applications. The caller must have
the READ_INPUT_STATE permission to make this request (similar to
other window manager methods such as getKeycodeState).

Change-Id: Icd14d810174a5b2928671ef16de73af88302aea0
WindowManager.aidl
indowManagerPolicy.java
12fb5a3573cd39e2bc4699600fe706cc9ef948db 11-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> am 8279c754: am 91a7f5fe: Making sure that the prefix is handled properly.

Merge commit '8279c754d176d5c2aa23f6f7ad16fcea03278788'

* commit '8279c754d176d5c2aa23f6f7ad16fcea03278788':
Making sure that the prefix is handled properly.
f98d3e3047d87bc468eefa4e1f4f481ed75bc708 11-Aug-2010 Adam Powell <adamp@google.com> am e8fa85d7: am 224ab9a5: Merge "Fix public bug http://code.google.com/p/android/issues/detail?id=10067" into gingerbread

Merge commit 'e8fa85d7a1a75d6894a75b1c25abf99bbff50085'

* commit 'e8fa85d7a1a75d6894a75b1c25abf99bbff50085':
Fix public bug http://code.google.com/p/android/issues/detail?id=10067
ecb1d5ded9afee63735dc91cfb08ada2c639d237 11-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> resolved conflicts for merge of f00ee0f7 to master

Change-Id: I13b968bde37fad8fffdaa9bb94a0f1da9b2e6e0c
91a7f5fef8a9fc496acef23f513cb48139e8dff5 11-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> Making sure that the prefix is handled properly.

Change-Id: Ic50327b1ed4d6b54753b5b3887508a53cd7a3497
iew.java
iewDebug.java
224ab9a5c6f7ae70fe55bf3d5604cbdf883baee7 11-Aug-2010 Adam Powell <adamp@google.com> Merge "Fix public bug http://code.google.com/p/android/issues/detail?id=10067" into gingerbread
9bccdb7d5c93e350337e707bc6edf3cd017b8f96 11-Aug-2010 Adam Powell <adamp@google.com> Fix public bug http://code.google.com/p/android/issues/detail?id=10067

Change-Id: I7b7a9a32e82fc7541beabe286b20b01f39406cc8
caleGestureDetector.java
f39d5987b977fdff8c34a2ddabaec31d1e909db3 11-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> Merge "Categorizing exported view properties." into gingerbread
bea95162ca25bd00b0479d93739b6283795c3986 11-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> Categorizing exported view properties.

Change-Id: I79c42019836973d80662c21d195d088ae01537a0
iew.java
iewDebug.java
iewGroup.java
ea48ff4ba405923a88f5f0ef22be607be6310564 11-Aug-2010 Jeff Brown <jeffbrown@google.com> am 95105f3c: am c3fc2d03: Fix safe mode and KeyEvent.getMaxKeyCode().

Merge commit '95105f3c25110f28b236cfa71e9ad74533eef854'

* commit '95105f3c25110f28b236cfa71e9ad74533eef854':
Fix safe mode and KeyEvent.getMaxKeyCode().
fb8e05b154c9dd1b36696c20985a3ce70d851b94 11-Aug-2010 Jeff Brown <jeffbrown@google.com> am d3cf0544: am d98d0fc6: Merge "Optimize VelocityTracker to run in linear time." into gingerbread

Merge commit 'd3cf0544cc7eec8ace3dc3b7fc17b7dac69e0aab'

* commit 'd3cf0544cc7eec8ace3dc3b7fc17b7dac69e0aab':
Optimize VelocityTracker to run in linear time.
c3fc2d03d58a258c53c9265a70143d4af076b764 11-Aug-2010 Jeff Brown <jeffbrown@google.com> Fix safe mode and KeyEvent.getMaxKeyCode().

Bug: 2901731
Change-Id: I78617c1b9dee3790fc590e5af4b5083368873184
eyEvent.java
d98d0fc6e9172d3f130794e499462c911920adf6 11-Aug-2010 Jeff Brown <jeffbrown@google.com> Merge "Optimize VelocityTracker to run in linear time." into gingerbread
a48a1a87ba17f20f7006eaab21dcedf86c015c13 10-Aug-2010 Romain Guy <romainguy@google.com> Fast text selection drawing.

Change-Id: I93fb1312b47bc05345defa9b6cfe47c0658bb329
LES20Canvas.java
61c8c9c5b2006d18e9310b6521c65b36ffe75ce4 10-Aug-2010 Romain Guy <romainguy@google.com> Fix tons of bugs and add new text rendering support.

Change-Id: I326c66b10784006f6df2f12d38e120cef94cd0d7
LES20Canvas.java
ardwareRenderer.java
fd2b002bcfca73958233a4e83a737612393e8a16 06-Aug-2010 Chet Haase <chet@google.com> Add 3D rotation to View

Change-Id: I4aa2542eb821e82d44e13d69b0938de13ffd4f0d
iew.java
iewGroup.java
6f4169cb285bae8225de8616a01f7a69c12f5799 10-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> am 75493be9: am 63cca691: Merge "Make sure profiling is done only for views that are actually measured, laid out and drawn." into gingerbread

Merge commit '75493be9c0b4dd24fc5cddce6ee993ce5f0b2887'

* commit '75493be9c0b4dd24fc5cddce6ee993ce5f0b2887':
Make sure profiling is done only for views that are actually measured, laid out and drawn.
88cf2fca38066e75f9349950c8e6255a91350d97 10-Aug-2010 Jeff Brown <jeffbrown@google.com> Optimize VelocityTracker to run in linear time.

Uses a linked list for efficient pointer addition and removal.
When possible, makes use of the fact that pointer ids are usually in
sorted order to avoid quadratic time lookups when adding new data.
Fixed an incorrect assumption that the pointer count would always change
when old pointers were removed.

Also fixed a bug in InputQueue FinishedCallback recycling.

Change-Id: Ie048d3bb022d39cf4185e2fe43923a861d94c4f3
nputQueue.java
elocityTracker.java
63cca69157eae17da2a5492d1bcb7330061a52ac 10-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> Merge "Make sure profiling is done only for views that are actually measured, laid out and drawn." into gingerbread
02890fd0f98b3b8d98baf0bda1ea906afd723d8b 07-Aug-2010 Romain Guy <romainguy@google.com> Replace Bitmap's finalizers with PhantomReferences.

This change also removes the use of SoftReferences for View's
drawing cache.

A bitmap now creates a PhantomReference enqueued in a reference
queue provided by the new Finalizers class. This queue is polled
from a thread started after forking zygote. That thread is in charge
of clearing the references after GC runs and of calling reclaim()
on them. The reclaim() method is now how finalizers are run.

Note that a PhantomReference cannot be kept in the instance it
refers to, which is why they are kept in a separate List.

Change-Id: If3c1a5e9dc23fa49e34857860d730f5cf5ad5926
iew.java
163935113919a184122b8b3bd672ef08c8df65dc 08-Aug-2010 Romain Guy <romainguy@android.com> Make libhwui entirely optional.

The makefile variable USE_OPENGL_RENDERER must be set to true to compile
libhwui and the related code in the JNI layer.

This change also removes obsolete APIs from Canvas that must not be used
and would be confusing if left in. These APIs were remnants of our first
attempt at an OpenGL renderer for the view hierarchy and had not been
taken out before Android 1.0 was released.

Change-Id: I2475ff1307212bab26c926724f3c508681c7dae1
LES20Canvas.java
ardwareRenderer.java
4938d7916042cf25a46fa16072a2e288e009e195 07-Aug-2010 Steve Howard <showard@google.com> am d49d4031: am 9fbf00cb: Merge "Slight improvement (hopefully) to orientation sensing." into gingerbread

Merge commit 'd49d4031d654398904d5af30c488a3b32b176122'

* commit 'd49d4031d654398904d5af30c488a3b32b176122':
Slight improvement (hopefully) to orientation sensing.
c6dc45700bf0c18708b0ad2f695ea85fadcbf131 07-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> Make sure profiling is done only for views that are actually measured, laid out and drawn.

Change-Id: I88c66e882be2781d079c51b6580a19c4e359c5b1
iew.java
iewDebug.java
5f531ae6b342697ba94ddb68b47f76ccddb75f7b 06-Aug-2010 Steve Howard <showard@google.com> Slight improvement (hopefully) to orientation sensing.

Since orientation sensing has been an issue for numerous users, I
decided a spend a little time experimenting with some possible
improvements. I've settled on a couple major changes:

* Perform all lowpass filtering in spherical coordinates, not
cartesian. Since the rotations are what we're really concerned
with, this makes more sense and gives more consistent results.

* Introduce a system of tracking "distrust" in the current data, based
on external acceleration and on tilt. The basic idea is after a
signal of unreliable data -- repeated acceleration or
nearly-horizontal tilt -- we wait for things to "stabilize" for some
number of ticks before we start trusting the data again. This is an
extension of the basic lowpass filtering. One simple example is
after the phone is picked up off a table, we ignore the first few
readings. Another example is while the phone is under external
acceleration for a while (i.e. in a car mount on a rough road), if a
single "good" reading comes in, we distrust it, under the assumption
that it was probably just a lucky reading (i.e. the magnitude
happened to be close to that of gravity by chance).

These changes have allowed me to relax other constraints, such as the
filtering time constants, the maximum deviation from gravity, and the
max tilt before we start distrusting data.

The net effect is that orientation changes happen more quickly and can
happen under a wider variety of conditions, but false changes due to
tilt and acceleration are still avoided well. I think the improvement
is subtle, but it's the best I've come up with in my limited time.

I've also included some refactoring and additonal comments to try and
further clarify the (somewhat twisted) logic.

Change-Id: I34c7297bd2061fae8317ffefd32a85c7538a3efb
indowOrientationListener.java
7fbcc0492fca03857e3c45064f4aa040af817d55 05-Aug-2010 Romain Guy <romainguy@google.com> Add support for paths.

Rendering is implementing by rasterizing the paths into A8 textures.
This cna be extremely inefficient if the path changes often.

Change-Id: I609343f304ae38e0d319359403ee73b9b5b3c93a
LES20Canvas.java
df030d2c160ff42927c58ff54c51049c69a48312 31-Jul-2010 Chet Haase <chet@google.com> View x/y properties now feed into matrix translation

Change-Id: I35d8953ab6c7a511cdf90f3f94a4a1b5ef549fc3
iew.java
iewGroup.java
5bac1cc0b8ddfeb1290d8324beaadd1e48f3fd14 04-Aug-2010 Chris Tate <ctate@android.com> am 9f6b16a2: am 5d46ce24: Merge "Enhanced VelocityTracker for > 5 pointers and fixed bugs." into gingerbread

Merge commit '9f6b16a29b62f29496bc652cfec7d6fe9f08c7f4'

* commit '9f6b16a29b62f29496bc652cfec7d6fe9f08c7f4':
Enhanced VelocityTracker for > 5 pointers and fixed bugs.
bf0d12c2e2169ce94995c3bef66fe7b088468545 04-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> am 77c444dd: am 6fcf3a51: Merge "Improving profiling of views." into gingerbread

Merge commit '77c444dd2bdc9bb2d54fc58420d263a83018190c'

* commit '77c444dd2bdc9bb2d54fc58420d263a83018190c':
Improving profiling of views.
529b60a3b16ac3dff24f2403d760ab8ebc9670ff 04-Aug-2010 Romain Guy <romainguy@google.com> Add android:hardwareAccelerated to Activity.

Hardware acceleration can now be enabled/disabled locally on each activity
declared in the manifest. It can also be enabled/disabled directly on a
window through the WindowManager.LayoutParams.

Change-Id: I91dd0b26c4e7eb8cd7288e523ed6b7bda6d0990b
iewRoot.java
indow.java
indowManager.java
5d46ce24cc46dc57d31f809302af916999114ced 03-Aug-2010 Chris Tate <ctate@android.com> Merge "Enhanced VelocityTracker for > 5 pointers and fixed bugs." into gingerbread
f8e1219cf8992a22d6c48c2c70d4fbbccc2494f6 03-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> Improving profiling of views.

Change-Id: I1abb8c21f1769ad55416f37e7bfa1458b80ace63
iewDebug.java
7768e02973f65d347f4457583e05c82810bd5cb8 03-Aug-2010 Romain Guy <romainguy@google.com> Merge "Add support for ColorFilters."
db1938e0e6ef816e228c815adccebd5cb05f2aa8 03-Aug-2010 Romain Guy <romainguy@google.com> Add support for ColorFilters.

Color filters are fully supported and can be used with shaders.

Change-Id: Id90ccf1c81cb462f2431f366f3f8f710d7971e04
LES20Canvas.java
9168f0b170c6a99371ae46e7d3f5d66c8c4c930d 03-Aug-2010 Adam Powell <adamp@google.com> Add ActionMode#getMenuInflater() for easier menu inflation in
ActionMode.Callback implementations

Change-Id: If9e7ab0d65598bab537add6c6a452a55c093064f
ctionMode.java
9e2ad36be87f2703b3d737189944d82f93bd4f27 31-Jul-2010 Jeff Brown <jeffbrown@google.com> Enhanced VelocityTracker for > 5 pointers and fixed bugs.

Improved PointerLocation tool to use VelocityTracker more efficiently
and correctly when multiple pointers are down.

Fixed a bug in TouchInputMapper where it was not correctly copying
the id to index map in the last touch data. This could cause strange
behavior on secondary pointer up events.

Also added finished callback pooling in InputQueue.

Change-Id: Ia85e52ac2fb7350960ea1d7edfbe81a1b3e8267b
nputQueue.java
otionEvent.java
elocityTracker.java
eb4e0c3c1c8e82f363b86a3751f72d7d496ebd1f 31-Jul-2010 Romain Guy <romainguy@google.com> Merge "Refactor Skia shaders handling."
06f96e2652e4855b6520ad9dd70583677605b79a 31-Jul-2010 Romain Guy <romainguy@google.com> Refactor Skia shaders handling.

With this change, Skia shaders can easily be applied to any mesh. This change also
supports ComposeShader. For instance, this can be used to blend a gradient and a
bitmap togehter and paint a string of text with the result.

Change-Id: I701c2f9cf7f89b2ff58005e8a1d0d80ccf4a4aea
LES20Canvas.java
4de823a759a25ee6034454ade0826d9464de1d15 31-Jul-2010 Chet Haase <chet@google.com> Merge "Fix problems with moving Views around (invalidation, conflict with layout)"
8fbf8d2b08a22a8f06abe8cff39d935865ec1c9d 31-Jul-2010 Chet Haase <chet@google.com> Fix problems with moving Views around (invalidation, conflict with layout)

Change-Id: I38f8f8a4e8082854a53a2975da258b5d946ed525
iew.java
6ec402b5ae33c8927694d8522b4cc6a5c8ba974e 29-Jul-2010 Jeff Brown <jeffbrown@google.com> DO NOT MERGE: Fix input event injection ANRs on UI thread.

Added a new asynchronous injection mode and made the existing
synchronization mechanism more robust.

Change-Id: Ia4aa04fd9b75ea2461a844c5b7933c831c1027e6
WindowManager.aidl
nputEvent.aidl
nputEvent.java
eyEvent.java
otionEvent.java
bbda99d2086d79ac70b403cad38a47c35af84adf 29-Jul-2010 Jeff Brown <jeffbrown@google.com> Fixed StatusBar ANRs due to input event injection on UI thread.

Added a new asynchronous injection mode and made the existing
synchronization mechanism more robust.

Change-Id: I0464f70ff5cbd519dbb02686b2cb5d810fe7dbb2
WindowManager.aidl
nputEvent.aidl
nputEvent.java
eyEvent.java
otionEvent.java
3b69b6f0be85d1f97c1e6824cf986777ba4e5d00 29-Jul-2010 Chet Haase <chet@google.com> Make the new android.animation package public

Change-Id: Iff31676f25fc989707a1e17fb172296014a22c27
nimation/AnimationUtils.java
f54a8d7c479485174941c38f151ea7083c658da3 22-Jul-2010 Chet Haase <chet@google.com> Adding xml declarations for new animation framework

Change-Id: Ic789e47790cf24d1c4b3bcbe9048b992ab93517b
nimation/AnimationUtils.java
c9ae2a24dc1fa274ca0916c91a2e9a2764ba4bb3 28-Jul-2010 Adam Powell <adamp@google.com> Add support for setting action mode titles/subtitles by resource ID

Change-Id: Ia0d5234cc16f325eeb29127fb87e2616d67379ec
ctionMode.java
f788a9fccd9cdb662527aa375af24b8868069108 22-Jul-2010 Gilles Debunne <debunne@google.com> TextView with Selection Contextual Mode

Context menu entries have been moved to a contextual mode in the action bar.

Change Input Method has been removed and *should be added to the system bar instead*.

Add word to dictionnary has also been removed and should now be done using the suggestioni
bar "tap on word to add" feature.

Change-Id: I767373f53515b2d6a06500321b4b12ed0b05a9b6
iew.java
2279971b6f66d60240b8c72a9d52644a3bcdf01b 28-Jul-2010 Jeff Brown <jeffbrown@google.com> am 9795a25d: am 6d0fec2d: Refactor input reader to support new device types more easily.

Merge commit '9795a25da060f9a7df87da8ab43fb1086d4322a5'

* commit '9795a25da060f9a7df87da8ab43fb1086d4322a5':
Refactor input reader to support new device types more easily.
6d0fec2de3601821f4f44eeb7d7deedebb2b7117 24-Jul-2010 Jeff Brown <jeffbrown@google.com> Refactor input reader to support new device types more easily.

Refactored the input reader so that each raw input protocol is handled
by a separate subclass of the new InputMapper type. This way, behaviors
pertaining to keyboard, trackballs, touchscreens, switches and other
devices are clearly distinguished for improved maintainability.

Added partial support for describing capabilities of input devices
(incomplete and untested for now, will be fleshed out in later commits).

Simplified EventHub interface somewhat since InputReader is taking over
more of the work.

Cleaned up some of the interactions between InputManager and
WindowManagerService related to reading input state.

Fixed swiping finger from screen edge into display area.

Added logging of device information to 'dumpsys window'.

Change-Id: I17faffc33e3aec3a0f33f0b37e81a70609378612
nputDevice.java
otionEvent.java
5d27977f9da482627ceb19317a2cd70467aff046 28-Jul-2010 Adam Powell <adamp@google.com> Action modes without action bar

Change-Id: I0367ab35e598a17980bd373b30828175f6283acc
enuInflater.java
indow.java
ac670c0433d19397d4e36ced2110475b6f54fe26 28-Jul-2010 Romain Guy <romainguy@google.com> Generate shaders to cover all possible cases.

With this change, all the vertex and fragment shaders used by the GL
renderer are now generated based on a program description supplied
by the caller. This allows the renderer to generate a large number
of shaders without having to write all the possible combinations by
hand. The generated shaders are stored in a program cache.

Change-Id: If54d286e77ae021c724d42090da476df12a18ebb
indow.java
6e34636749217654f43221885afb7a29bb5ca96a 23-Jul-2010 Adam Powell <adamp@google.com> Moved context modes into view, renamed to action modes

ContextualMode renamed to ActionMode. Adds a reference to the action
bar and reduces confusion around things named "Context".

Change-Id: Ia5098b1d0799a0ece0810c34e6696eda039fb005
ctionMode.java
iew.java
iewGroup.java
iewParent.java
iewRoot.java
indow.java
236d4ee896c831183ca8b873406e3fe7b5fa3058 22-Jul-2010 Romain Guy <romainguy@google.com> Merge "Add text rendering."
694b519ac647fe998fd396fe0784cc8e179aadc4 22-Jul-2010 Romain Guy <romainguy@google.com> Add text rendering.

Change-Id: Ibe5a9fa844d531b31b55e43de403a98d49f659b9
LES20Canvas.java
46ea4828840952384bd37a73438c88ba5d931856 21-Jul-2010 Chet Haase <chet@google.com> Merge "Fix issue with touch MOVE events on transformed containers"
ddc8e713ba345b24240fd16971283449c060a783 21-Jul-2010 Chet Haase <chet@google.com> Fix issue with touch MOVE events on transformed containers

Change-Id: I17e58f2c6acce606a672756d48d20eb0796b69e8
iewGroup.java
a1db574036c9bc2d397b69f8200594027e1fff16 20-Jul-2010 Romain Guy <romainguy@google.com> Add preliminary support for text rendering.

Change-Id: I547eb631dbda24d13960d54b4144fb8908fd8a49
LES20Canvas.java
c0ac193b9415680f0a69e20a3f5f22d16f8053be 20-Jul-2010 Romain Guy <romainguy@google.com> Add support for linear gradients.

Change-Id: Id15329da065045b3f06fdaed615f33cd57608496
LES20Canvas.java
ec66a3a9e06ae91e0b49a5e858e46fe0c91606f1 20-Jul-2010 Adam Powell <adamp@google.com> Fix docs for MenuItem#setShowAsAction

Change-Id: Id68273dde9c0ce904bca7b40aa2e9558880c55c2
enuItem.java
33e72aef05c75699c9180626dbaa00b06f86ad5b 17-Jul-2010 Romain Guy <romainguy@android.com> Make View transforms work again.

Change-Id: I42aa8b5a55d7584ed242e1cb1f7123a6354edbc8
iew.java
iewGroup.java
b5de9f3bafae2c30e7a67faa1cdf7d1c161820c3 17-Jul-2010 Adam Powell <adamp@google.com> Fix bug 2845609 - Touch event dispatching problem.

Maintain the state of the CANCEL_NEXT_UP_EVENT flag properly.

Change-Id: I5ca22409bf8557c486d02806811b10550c5576eb
iew.java
iewGroup.java
5700c95f40d09720e6e78130dc753c59dca52027 17-Jul-2010 Chet Haase <chet@google.com> Merge "Fixing view property invalidation issues"
ea2604d966dfc62f50922a516caaa9cc411d9c64 17-Jul-2010 Romain Guy <romainguy@android.com> Merge "Add plumbing to support gradients in OpenGL renderer."
7fac2e18339f765320d759e8d4c090f92431959e 17-Jul-2010 Romain Guy <romainguy@android.com> Add plumbing to support gradients in OpenGL renderer.

The LinearGradient class keeps a copy of the various parameters that
define the gradient. The copies are native arrays to avoid copying
Java arrays on every draw call. The gradient code path is implemented
until OpenGLRenderer::drawRect() (see TODO.) The actual gradient
implementation will be added in a latter change.

Change-Id: I9300d250ef5e2e9c2e097c3116ee71dfc9d752d8
LES20Canvas.java
9a89b0e1b9d4d7ebc9496442b219f2f58f30f5e8 16-Jul-2010 Romain Guy <romainguy@android.com> Merge "Improve clip support (add intersect, union and replace.)"
079ba2c85b15e882629b8d188f5fbdb42f7f8eea 16-Jul-2010 Romain Guy <romainguy@android.com> Improve clip support (add intersect, union and replace.)

This change also modifies the way the clip is stored. The clip is now
always stored in screen-space coordinates.

Change-Id: I96375784d82dfe975bc6477a159e6866e7052487
LES20Canvas.java
9bc829cc15757edd149a61868426b214430a1c24 16-Jul-2010 Chet Haase <chet@google.com> Fixing view property invalidation issues

Change-Id: I51d2c03cabacfc1a7c05073977e7c22d32de7cb3
iewGroup.java
eb857f12d605659b385d168ef1ea7d4ba5193585 16-Jul-2010 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of f7adbe10 to master

Change-Id: I898a5e53b180adaee2337c0c0b9896c799d056e7
e33348ba54cd68d6936cffd4507037c14d4b10c2 16-Jul-2010 Jeff Brown <jeffbrown@google.com> Fix bug with phantom input windows.

Add dumpsys integration for the native input dispatcher.
Add some InputDevice API stubs.
Add an appendFormat helper method to String8 for printf style
string formatting mainly for debugging purposes.
Use generic ArrayList<WindowState> everywhere in WindowManagerService
to eliminate unnecessary casts all over.

Change-Id: I9d1e3bd90eb7222d10620200477f11b7bfd25e44
nputDevice.java
nputEvent.java
otionEvent.java
b75fa30aaf03d9e425d150b452501e5df0621351 16-Jul-2010 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of aca672ba to master

Change-Id: I7ae11fca0acdbf513a4870226d0d3e3cafbe9a08
c5ed5910c9ef066cec6a13bbb404ec57b1e92637 15-Jul-2010 Jeff Brown <jeffbrown@google.com> Add support for new input sources.

Added several new coordinate values to MotionEvents to capture
touch major/minor area, tool major/minor area and orientation.

Renamed NDK input constants per convention.

Added InputDevice class in Java which will eventually provide
useful information about available input devices.

Added APIs for manufacturing new MotionEvent objects with multiple
pointers and all necessary coordinate data.

Fixed a bug in the input dispatcher where it could get stuck with
a pointer down forever.

Fixed a bug in the WindowManager where the input window list could
end up containing stale removed windows.

Fixed a bug in the WindowManager where the input channel was being
removed only after the final animation transition had taken place
which caused spurious WINDOW DIED log messages to be printed.

Change-Id: Ie55084da319b20aad29b28a0499b8dd98bb5da68
nputChannel.java
nputDevice.java
nputEvent.java
nputHandler.java
nputQueue.java
eyCharacterMap.java
eyEvent.java
otionEvent.java
iewRoot.java
c96cdc9844d60d54683fb7700fc5908fdb8ff856 15-Jul-2010 Romain Guy <romainguy@google.com> Merge "Add support for BitmapShader."
d27977d1a91d5a6b3cc9fa7664ac7e835e7bd895 15-Jul-2010 Romain Guy <romainguy@google.com> Add support for BitmapShader.

This change also fixes an issue with the clip and layers.

Change-Id: I5fd9832098d8cf7ae8eb781ff9bffe7defaea279
LES20Canvas.java
82e2b4cb51e869a5c2014f56e5b0cf38569ff09a 15-Jul-2010 Scott Main <smain@google.com> am 4fd41688: am 5352d237: am 38137d7a: Merge "docs: lots of additions to the resources docs new drawable resources add <merge> and <include> to layout resource update drawable class descriptioons to point to resources guide add ID resource type" into froyo

Merge commit '4fd416880e53c172bac4a51b2eafea699b58badf'

* commit '4fd416880e53c172bac4a51b2eafea699b58badf':
docs: lots of additions to the resources docs
5352d2378d2f92ebe0657e4caedb4498492fc404 15-Jul-2010 Scott Main <smain@google.com> am 38137d7a: Merge "docs: lots of additions to the resources docs new drawable resources add <merge> and <include> to layout resource update drawable class descriptioons to point to resources guide add ID resource type" into froyo

Merge commit '38137d7a27b037611c70a9d900aa53b4c15563bf' into gingerbread

* commit '38137d7a27b037611c70a9d900aa53b4c15563bf':
docs: lots of additions to the resources docs
c3aa361d65119de503224202ae2296dbb1d3cf33 17-Jun-2010 Chet Haase <chet@google.com> Add various properties to View to allow it to be moved, scaled, faded, and rotated by property manipulation instead of just Animation operations.

Change-Id: Iefab11f243c7511f7bba0e32bd399ed716b9131f
iew.java
iewGroup.java
839458d8d4dbf44cd1778a23471cf8f948a2012c 15-Jul-2010 Jim Miller <jaggies@google.com> resolved conflicts for merge of e03952c0 to master

Change-Id: I414d934101d452a2c2500e539f0b0aff1e1b3ff0
71ecab2d89122535a8bb1f589bc8d920aaedaa7c 15-Jul-2010 Dianne Hackborn <hackbod@google.com> Argh oops I didn't mean to delete this.

Change-Id: I8910eb8b6e898b77ee6fc63420d6954b496513ca
urfaceView.java
ed86eaa7301d5509bce38dffce3f8ef11e4e4cd0 15-Jul-2010 Dianne Hackborn <hackbod@google.com> Merge "Argh oops I didn't mean to delete this." into gingerbread
9d42c7f75cfd7544d6e3f253cedf9ac983fdc6b2 15-Jul-2010 Jim Miller <jaggies@google.com> Merge "Fix 2797185: Re-enable thumbnail generation in framework" into gingerbread
251fd430c7e355ad440202c83b0c6d91f5bf93e5 15-Jul-2010 Dianne Hackborn <hackbod@google.com> Argh oops I didn't mean to delete this.

Change-Id: I3d0877d56f1abab3d0929a086621f4ef1212cecc
urfaceView.java
2388ad9eef109fa7f63c196c819c83f0376f0645 14-Jul-2010 Dianne Hackborn <hackbod@google.com> am f8d9379b: am d76b67c3: IME events are now dispatched to native applications.

Merge commit 'f8d9379bd834573feca085284970cf686993c330'

* commit 'f8d9379bd834573feca085284970cf686993c330':
IME events are now dispatched to native applications.
d76b67c340d1564abf8d14d976fdaf83bf2b3320 14-Jul-2010 Dianne Hackborn <hackbod@google.com> IME events are now dispatched to native applications.

And also:

- APIs to show and hide the IME, and control its interaction with the app.
- APIs to tell the app when its window resizes and needs to be redrawn.
- API to tell the app the content rectangle of its window (to layout
around the IME or status bar).

There is still a problem with IME interaction -- we need a way for the
app to deliver events to the IME before it handles them, so that for
example the back key will close the IME instead of finishing the app.

Change-Id: I37b75fc2ec533750ef36ca3aedd2f0cc0b5813cd
urfaceHolder.java
urfaceView.java
iewRoot.java
indow.java
0b2a6d0773211449fbde9d2706388714beeffebb 14-Jul-2010 Jim Miller <jaggies@google.com> Fix 2797185: Re-enable thumbnail generation in framework

This re-enables thumbnail generation code in the framework
with a few improvements.

In addition to enabling the system to capture thumbnails,
it removes padding from the borders to account for space
overlapped by system widgets (status bar, etc.). Thus,
the contents of the bitmap are only those pixels unique to
the activity.

It also maximizes resolution of the bitmap by capturing the
image in the application's current orientation. In landscape
mode, it captures a bitmap with dimensions w x h. In portrait,
it captures a bitmap with dimensions h x w. Where w and h are
thumbnail_width and thumbnail_height as defined in dimens.xml.

Though enabled, the change is not currently used in this
branch. The work is being checked in here to avoid
complicated downstream merges.

Change-Id: Ifc8a4e0075d7d0697d8159589be3816ace31d70c
iew.java
6ac7674e143f9716312f048da3f25ca83b646315 14-Jul-2010 Jeff Brown <jeffbrown@google.com> am 89ee578b: am fd035829: Add initial gamepad support.

Merge commit '89ee578b7053d27a50922f82feb94bf6054b330c'

* commit '89ee578b7053d27a50922f82feb94bf6054b330c':
Add initial gamepad support.
fd03582995e0fce963dd0fa0669e3211b74c0dd7 01-Jul-2010 Jeff Brown <jeffbrown@google.com> Add initial gamepad support.

Change-Id: I0439648f6eb5405f200e4223c915eb3a418b32b9
eyEvent.java
2d0e87b64402459d89adfd004083a748f81a0391 13-Jul-2010 Gilles Debunne <debunne@google.com> Cosmetic changes around TextView.

Fixed some warnings in the code.

Change-Id: Id19395031a1ab41edcc47e3dc8cd9479c6e19f83
bsSavedState.java
otionEvent.java
6926c72e25b8dec3dd4b84af0819fa1937ae7296 13-Jul-2010 Romain Guy <romainguy@google.com> Correctly support pre-multiplied alpha, optimizations, more stuff.

Add support for the following drawing functions:
- drawBitmap(int[]...)
- drawPaint()

Optimizes shader state changes by enabling/disabling attribute arrays
only when needed.

Adds quick rejects when drawing trivial shapes to avoid unnecessary
OpenGL operations.

Change-Id: Ic2c6c2ed1523d08a63a8c95601a1ec40b6c7fbc9
LES20Canvas.java
8445ca6c3ba9b7cee6d20f5919e3b3ba8e6b8c96 10-Jul-2010 Dianne Hackborn <hackbod@google.com> am b14f325a: am 289b9b62: Add ANativeWindow API for directly drawing to the surface bits.

Merge commit 'b14f325a0118ffce286155caaabaae149653462c'

* commit 'b14f325a0118ffce286155caaabaae149653462c':
Add ANativeWindow API for directly drawing to the surface bits.
289b9b62372ef52a06113b83dfb870e2c2fb325a 09-Jul-2010 Dianne Hackborn <hackbod@google.com> Add ANativeWindow API for directly drawing to the surface bits.

Also other cleanup and fixes:

- We now properly set the default window format to 565.
- New APIs to set the window format and flags from native code.
- Tweaked glue for simpler handling of the "destroy" message.
- Um, other stuff.

Change-Id: Id7790a21a2fa9a19b91854d225324a7c1e7c6ade
iewRoot.java
dbd77cd444f89d94ec5333223c1bc17dbe0c90cd 09-Jul-2010 Romain Guy <romainguy@google.com> Remove support for density compatibility in the hardware renderer.

Change-Id: I535e919986e5ccfb344ede8516ccd84c02642823
LES20Canvas.java
ardwareRenderer.java
iewRoot.java
1a33274d28a3174b9062ae0dcce77bf1d68cd463 09-Jul-2010 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 167449e5 to master

Change-Id: Ib448e69a726eb45b5c9099d2574e40b8345eee67
dac5f9f3caea71e9e0002582ee90ffddadb70d8f 08-Jul-2010 Romain Guy <romainguy@google.com> Do not draw the fade areas when it's not necessary.

Prior to this change, every singleLine TextView would create, draw
and compose a layer on every draw dispatch. This was unnecessary and
expensive.

Change-Id: Ia4f79d7fc8f485784fe6b795f0f196d38d579838
iew.java
deba785f122a47915756ffd991f5540d952cf937 08-Jul-2010 Romain Guy <romainguy@google.com> Add support to draw 9patches in OpenGL.

This change only adds the necessary API and stubs. The implementation
will be added in another change.

Change-Id: Ie50b8aff5868e78796cee331df15bdbf990d2ea1
LES20Canvas.java
00fa7bdd69f0868fd17ea7c881c771d785b2fbbd 03-Jul-2010 Jeff Brown <jeffbrown@google.com> More native input dispatch work.

Removed old input dispatch code.
Refactored the policy callbacks.
Pushed a tiny bit of the power manager state down to native.
Fixed long press on MENU.
Made the virtual key detection and cancelation a bit more precise.

Change-Id: I5d8c1062f7ea0ab3b54c6fadb058c4d5f5a9e02e
Window.aidl
WindowSession.aidl
awInputEvent.java
urfaceView.java
iewRoot.java
indowManagerPolicy.java
f86ef57f8bcd8ba43ce222ec6a8b4f67d3600640 01-Jul-2010 Romain Guy <romainguy@google.com> Don't use full screen FBOs, this dramatically increase performance.

The next step will be to add an FBO cache to avoid churning memory on every
frame we draw. This change also adds support for drawBitmap(Bitmap, Matrix, Paint).

Change-Id: I7825cdcf0cad9bffe6219e05d8328a53d4a6e583
LES20Canvas.java
ardwareRenderer.java
8ba548f81d1ab5f1750cbf86098c4a14e0b8bead 01-Jul-2010 Romain Guy <romainguy@google.com> Add implementation for drawBitmap(Bitmap, Rect, Rect, Paint)

Change-Id: I10904d2325a5431d15801aebcec1048715678e8c
LES20Canvas.java
68e9a49aeb0b07d0d99c0a05771348bcd460a703 01-Jul-2010 Romain Guy <romainguy@google.com> Merge "Add hooks for drawBitmap()."
25a98b8e21f7840ae582ce0a4cde21694c4c94ec 01-Jul-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 7f6c6e8f to master

Change-Id: Id9dddb78c51f16ff8c4b60339421c94fde506db2
ce0537b80087a6225273040a987414b1dd081aa0 30-Jun-2010 Romain Guy <romainguy@google.com> Add hooks for drawBitmap().

Change-Id: I58e962c3a8b2bc75c2605fe369ad3002579d86e0

Add texture cache.

Change-Id: I1c0e5581d228869e114438258a1014e33e024ad7
LES20Canvas.java
ardwareRenderer.java
iewRoot.java
3c80a4a044865bdf1289c7896baffa1c082d835c 30-Jun-2010 Dianne Hackborn <hackbod@google.com> Implement default key handling for native code.

The native code now maintains a list of all keys that may use
default handling. If the app finishes one of these keys
without handling it, the key will be passed back off to Java
for default treatment.

Change-Id: I6a842a0d728eeafa4de7142fae573f8c11099e18
eyEvent.java
89e0645b4157961e8c465eb9c819f965fdb453d8 24-Jun-2010 Adam Powell <adamp@google.com> Added context modes to ActionBar API.

Change-Id: I7c3e782cbf01be7bc671b377fb4d706040888833
ctionBarView.java
enuInflater.java
enuItem.java
f40e4928b9d8e1da4166c76dbd3f86a6bd2d3f72 29-Jun-2010 Chris Tate <ctate@android.com> am 96725326: am 31e0ffe8: Merge "Native input event dispatching." into gingerbread

Merge commit '96725326149687168937cf62f75364cf9cc3e96b'

* commit '96725326149687168937cf62f75364cf9cc3e96b':
Native input event dispatching.
349703effce5acc53ed96f7ed8556131f0c65e18 22-Jun-2010 Jeff Brown <jeffbrown@google.com> Native input event dispatching.

Target identification is now fully native.
Fixed a couple of minor issues related to input injection.
Native input enabled by default, can be disabled by setting
WindowManagerPolicy.ENABLE_NATIVE_INPUT_DISPATCH to false.

Change-Id: I7edf66ed3e987cc9306ad4743ac57a116af452ff
nputTarget.java
iewRoot.java
indowManagerPolicy.java
bd6b79b40247aea7bfe13d0831c6c0472df6c636 26-Jun-2010 Romain Guy <romainguy@android.com> Add implementations for saveLayerAlpha() and textured rects.

Even though there's an implementation for textured rects, drawBitmap() is not
hooked up yet as it will require a good texture cache.

This method is implemented using FBOs. There's currently an issue either in the
driver or in the Canvas renderer that forces the FBO to be fullscreen, which is
extremely expensive and yields terrible performance.

Change-Id: I148419195e12d45653c60186938aa78c23a68e2c
LES20Canvas.java
c7d53494f1fbd9f9d74af89053ff9fdb1ccbac6c 25-Jun-2010 Romain Guy <romainguy@android.com> Implement quickReject() and drawRect().

The OpenGL ES 2.0 renderer can now draw colored rectangles. At least there's
something on screen now.

Change-Id: I80a13ccc1dd56784edf74f2670a364f30700234a
LES20Canvas.java
9d5316e3f56d138504565ff311145ac01621dff4 25-Jun-2010 Romain Guy <romainguy@google.com> Add colored rectangles implementation in OpenGLRenderer.

Drawing two rectangles one after the other discards the second one because of
Z buffering issues. This will be fixed in another changelist.

Change-Id: Ida1b3cde8a78e60cacc07e477abc44def527ff67
LES20Canvas.java
038ecb097a4ee4997938d5c3a21c1c450c3beedc 24-Jun-2010 Romain Guy <romainguy@google.com> Merge "Add support for transformations."
f6a11b8a9e25ff9861bbba19251bea84d8a5daf2 24-Jun-2010 Romain Guy <romainguy@google.com> Add support for transformations.

This change adds partial support for the following transforms:
- scale()
- translate()
- rotate()
- setMatrix()
- getMatrix()

The transform is stored in a snapshot and saved/restored as needed.
The transform is currently not applied to the clip rect and is not
mapped to the vertex shader.

Change-Id: Id48993453311200804149917d0c126a4d0471226
LES20Canvas.java
f92f8686f982c62a609a2087383a77a24d126992 23-Jun-2010 Dianne Hackborn <hackbod@google.com> am 98f7aed6: am 1e4b9f39: Remove InputConsumer, replacing with InputQueue.

Merge commit '98f7aed66b54c365f816fe990de978f61155cde1'

* commit '98f7aed66b54c365f816fe990de978f61155cde1':
Remove InputConsumer, replacing with InputQueue.
1e4b9f3936d6f357e89360293e05a0e16d5fa440 23-Jun-2010 Dianne Hackborn <hackbod@google.com> Remove InputConsumer, replacing with InputQueue.

Change-Id: Ib06907278457aaee842b123adc072840ca3602d8
nputConsumer.java
nputQueue.java
iewRoot.java
indow.java
c047b956360a2476793b38d9d3e996fed941af8b 23-Jun-2010 Adam Powell <adamp@google.com> am bc337d2f: am 73ccafb5: Merge "Fix a bug where requestDisallowInterceptTouchEvent does not get called when scrolling is resumed after stopping a fling." into gingerbread

Merge commit 'bc337d2f675e8417be5534439e1b4ed1bc45a9c7'

* commit 'bc337d2f675e8417be5534439e1b4ed1bc45a9c7':
Fix a bug where requestDisallowInterceptTouchEvent does not get called
bb9524b6bdddc7ac77d8628daa8b366b8a7be4a4 23-Jun-2010 Romain Guy <romainguy@google.com> Add implementations for clipRect(), save() and restore().

The current implementation of clipRect() does not apply local transformations
before setting the new clip.

Change-Id: I5997871bb638dfcd1a8ef96354846af52427e445
LES20Canvas.java
320742b15a710ede57862eee170945da26ef0172 23-Jun-2010 Dianne Hackborn <hackbod@google.com> am e3e2883f: am e24a60aa: Merge "First stab at attaching native event dispatching." into gingerbread

Merge commit 'e3e2883f2232007174ead562610eb01201890d9b'

* commit 'e3e2883f2232007174ead562610eb01201890d9b':
First stab at attaching native event dispatching.
6c55b8b143b4cc8335789bff58a2ac545bd58806 23-Jun-2010 Daniel Sandler <dsandler@android.com> am 71764c4c: am 613dde4a: Revised "immersive mode" API.

Merge commit '71764c4ce5b248a79542238b171a783e82e0fe37'

* commit '71764c4ce5b248a79542238b171a783e82e0fe37':
Revised "immersive mode" API.
e981c883d5ca99ccb97c317d824b9c288b613f67 23-Jun-2010 Jeff Brown <jeffbrown@google.com> am b1efc3f6: am 7fbdc84e: More native input event dispatching.

Merge commit 'b1efc3f68277a8c38c21e2d2e8ce05287118ecfe'

* commit 'b1efc3f68277a8c38c21e2d2e8ce05287118ecfe':
More native input event dispatching.
110486f932510fb49bfeff978b0b0e0237ee0656 23-Jun-2010 Adam Powell <adamp@google.com> Fix a bug where requestDisallowInterceptTouchEvent does not get called
when scrolling is resumed after stopping a fling.

Change-Id: I6796c5082cb81b3116de5baf1f27fe3addb40d00
iewGroup.java
85bf02fc16784d935fb9eebfa9cb20fe46ff7951 22-Jun-2010 Romain Guy <romainguy@google.com> Fix the simulator build.

Change-Id: Ie404f7c2c308f0657f273af19a56e8c039b61898
LES20Canvas.java
a95e4cb62f3642cb190d032dbf7dc40d9ecc6973 19-Jun-2010 Dianne Hackborn <hackbod@google.com> First stab at attaching native event dispatching.

Provides the basic infrastructure for a
NativeActivity's native code to get an object representing
its event stream that can be used to read input events.

Still work to do, probably some API changes, and reasonable
default key handling (so that for example back will still
work).

Change-Id: I6db891bc35dc9683181d7708eaed552b955a077e
nputChannel.java
nputConsumer.java
iewRoot.java
indow.java
613dde4aa651e11dac3db859723cc6faf8fc0a82 21-Jun-2010 Daniel Sandler <dsandler@android.com> Revised "immersive mode" API.

No longer a window bit, FLAG_IMMERSIVE is now set on
ActivityInfo.flags and in the Activity's manifest as
android:immersive="true" (ActivityInfo).

[An "immersive" activity is one that wishes to avoid being
paused by full-screen notifications (like an incoming call).
An activity that sets FLAG_IMMERSIVE/android:immersive is
sending a signal to the notification manager, status bar,
etc. that they should try to find some other way to get the
user's attention in high-priority situations.]

[Originally: change Ie290c2e.]

Change-Id: I967bb10b930b8f0772b10f81f2957a03fa3f1736
indowManager.java
dfe5c204403bc56c29bb36410574eab8b1950417 09-Jun-2010 Scott Main <smain@google.com> docs: lots of additions to the resources docs
new drawable resources
add <merge> and <include> to layout resource
update drawable class descriptioons to point to resources guide
add ID resource type

Change-Id: I733eec50bb2671f28c9e6dd7dec14eb6586f5193
iew.java
7fbdc84e87dd3a0e196b9803bb04495d11e9cb8a 18-Jun-2010 Jeff Brown <jeffbrown@google.com> More native input event dispatching.

Added ANRs handling.
Added event injection.
Fixed a NPE ActivityManagerServer writing ANRs to the drop box.
Fixed HOME key interception.
Fixed trackball reporting.
Fixed pointer rotation in landscape mode.

Change-Id: I50340f559f22899ab924e220a78119ffc79469b7
nputChannel.java
nputTarget.java
7ade1be822ed05a143b059319dccd5e9f623b56d 17-Jun-2010 Adam Powell <adamp@google.com> Action bar button layout changes.

Theme attribute added for spacing between action buttons. Action
buttons are now allowed to fill up to half of the total action bar's
width.

Change-Id: Iabbc67e695684529dfae9681d4d9580cd30839d0
ctionBarView.java
53f2bb549ed756d3f6a6c0baad4c65cf51e56981 18-Jun-2010 Daniel Sandler <dsandler@android.com> am fddf19f6: am a2650db7: Merge "Fix SDK docs build." into gingerbread

Merge commit 'fddf19f671dc91b9c50fa82870e1b3df29ce397a'

* commit 'fddf19f671dc91b9c50fa82870e1b3df29ce397a':
Fix SDK docs build.
a2650db770e93a9424d6d6948fd31f943f6dac49 18-Jun-2010 Daniel Sandler <dsandler@android.com> Merge "Fix SDK docs build." into gingerbread
ae069f76ee65fd5d9252c8191429fa55296d0208 18-Jun-2010 Daniel Sandler <dsandler@android.com> Fix SDK docs build.

Change-Id: I2d11682cdf2cdcd48f0299f8c168fddd5994dc65
indowManager.java
3b970e78d2974eacc621258bb6e581d458d9bbd3 17-Jun-2010 Romain Guy <romainguy@google.com> Merge "Add libhwui, to hardware accelerate the Canvas API using OpenGL ES 2.0."
e4d011201cea40d46cb2b2eef401db8fddc5c9c6 17-Jun-2010 Romain Guy <romainguy@google.com> Add libhwui, to hardware accelerate the Canvas API using OpenGL ES 2.0.

This is the initial checkin to setup the library and turn on OEGL ES 2.0
in ViewRoot, not a functional renderer.

Change-Id: I6655c54166e2967da2e21e7d6dcfba78bf113b44
LES20Canvas.java
ardwareRenderer.java
iewRoot.java
4e74ae3d5b27d917ea26d0929015f9fdc64af412 17-Jun-2010 Jeff Brown <jeffbrown@google.com> am 42bb545a: am 5c225b16: Even more native input dispatch work in progress.

Merge commit '42bb545a54d89f0ddbb230d7a01ea4210c0f6c00'

* commit '42bb545a54d89f0ddbb230d7a01ea4210c0f6c00':
Even more native input dispatch work in progress.
733c6f2e9bff13e24dcb468dd05219ec6ea8aa96 17-Jun-2010 Daniel Sandler <dsandler@android.com> am 747f75dc: am 3a0146cd: Merge "New API for "immersive" activity windows." into gingerbread

Merge commit '747f75dc0882138828ac2b2752c2872ccae49747'

* commit '747f75dc0882138828ac2b2752c2872ccae49747':
New API for "immersive" activity windows.
5c225b1680e696ae8bbf505a1997d6f720672f74 16-Jun-2010 Jeff Brown <jeffbrown@google.com> Even more native input dispatch work in progress.

Added more tests.
Fixed a regression in Vector.
Fixed bugs in pointer tracking.
Fixed a starvation issue in PollLoop when setting or removing callbacks.
Fixed a couple of policy nits.

Modified the internal representation of MotionEvent to be more
efficient and more consistent.

Added code to skip/cancel virtual key processing when there are multiple
pointers down. This helps to better disambiguate virtual key presses
from stray touches (such as cheek presses).

Change-Id: I2a7d2cce0195afb9125b23378baa94fd2fc6671c
otionEvent.java
96675b1df3969f2d313b68f60ed9fa36805db8ce 11-Jun-2010 Adam Powell <adamp@google.com> Merging ActionBar menu with options menu.

Options menu items may now specify if they would like to appear in the
action bar. Menu items defined in xml may set the showAsAction
attribute to one of "never"(default), "ifRoom", or "always". Action
buttons are populated as follows:

* All showAsAction="always" items become action buttons, even if it
would crowd the navigation area of the action bar.

* If there is space remaining, showAsAction="ifRoom" items are added
until no more will fit comfortably.

Action button click events are now handled by the
onOptionsItemSelected method used by the standard options menu.

The construction of options menus now happens earlier in order to
provide data to the action bar. Activities with an action bar can now
expect to have onCreateOptionsMenu called when activity start-up is
complete.

Activity#invalidateOptionsMenu can be used to force a refresh of menu
items where the previous API would use ActionBar#updateActionMenu.

Change-Id: If52ddf1cf9f6926206bcdeadf42072ea2c24fab9
ctionBarView.java
enuInflater.java
e6ac8b9aade9443ab8456c8f7a47cdfba3b70266 17-Jun-2010 Gilles Debunne <debunne@google.com> Removed API changes from CL 54712.

onLoadClass(Class ) was replaced by onLoadClass(Class<?> ) in CL 54712.
This changes the API and may introduce errors in users' implementations.

Change reverted.

Change-Id: Ie578a444168423959b44857f22e13f004e108965
ayoutInflater.java
611fae4c39edbeb23b53f789a0219c539cf32fa6 17-Jun-2010 Daniel Sandler <dsandler@android.com> New API for "immersive" activity windows.

An "immersive" activity (as indicated by the new
FLAG_IMMERSIVE) is one that wishes to avoid being paused by
full-screen notifications (like an incoming call).
An activity that sets FLAG_IMMERSIVE on its window is
sending a signal to the notification manager, status bar,
etc. that they should try to find some other way to get the
user's attention in high-priority situations.

FLAG_IMMERSIVE should be used exclusively in conjunction
with FLAG_FULL_SCREEN (that is, only activities that hide
the status bar should consider themselves immersive).

Change-Id: Ie290c2e92fc391bcf55edfdb1fbd626cd284e3e2
indowManager.java
3030193dc179b3010f2dd3bffe9c1dec54da38fc 17-Jun-2010 Gilles Debunne <debunne@google.com> Removed warnings in LayoutInflater.

These changes are similar to those of CL 49296. They do not include the
generic fixes done on GenericInflater.java, which had issues and broke the build.

Added a asSubClass method in LayoutInflater which will (correctly) throw a
ClassCastException when the inflated class is not a View subclass.

Performance testing on these changes showed a 10% performance improvement,
which is still to be explained.

Change-Id: Id4d3b45f0945baccdbbda15fcce095e855b23c9a
ayoutInflater.java
4846032ac7be7c28c7cfeb3096b8cb656312a382 11-Jun-2010 Chet Haase <chet@google.com> Fix bug with layout animations when apps are auto-scaled.

The pivot points in RotateAnimation and ScaleAnimation are in pixel coordinates. When an app is being autoscaled, these values are incorrect and should be adjusted for the current scale factor. The fix adds API to Animation to allow ViewGroup to pass in the scaling factor.

Change-Id: I978c48f9b5aea6760148435e74e1a8d49e2f785d
iewGroup.java
nimation/Animation.java
nimation/AnimationSet.java
nimation/RotateAnimation.java
nimation/ScaleAnimation.java
9295ada0ec89fa7a666be4a2f1006a4b722adf4f 15-Jun-2010 Romain Guy <romainguy@google.com> Allow the use of styles with LinearLayout, make "useLargestChild" attr public.

Change-Id: I044f3f5bd9b90c684ded7a37ff85e3aa8d15af96
ayoutInflater.java
84b51c8eb7ffe137878df3cf2652209c58bbdde4 15-Jun-2010 Scott Main <smain@google.com> am fb48f3a2: am e4bca7ee: am 322e7e47: Merge "docs: fix markup error" into froyo

Merge commit 'fb48f3a25d821a9037591aa76faa7bae46d1debd'

* commit 'fb48f3a25d821a9037591aa76faa7bae46d1debd':
docs: fix markup error
b860fd11e9eaa62d0a6c0c7bc1c0f07806eda3c0 15-Jun-2010 Scott Main <smain@google.com> am 322e7e47: Merge "docs: fix markup error" into froyo

Merge commit '322e7e477d89aca18d65cbd289343e716c45a699' into froyo-plus-aosp

* commit '322e7e477d89aca18d65cbd289343e716c45a699':
docs: fix markup error
e4bca7ee60c6d361ef9f1f025881a6f80a9efdab 15-Jun-2010 Scott Main <smain@google.com> am 322e7e47: Merge "docs: fix markup error" into froyo

Merge commit '322e7e477d89aca18d65cbd289343e716c45a699' into gingerbread

* commit '322e7e477d89aca18d65cbd289343e716c45a699':
docs: fix markup error
15f87c6e4b942cb0221e8230c8a8712387d07926 15-Jun-2010 Mathias Agopian <mathias@google.com> am 5126633a: am 2d468c5d: Make sure SurfaceView use a 565 surface when requesting an OPAQUE format.

Merge commit '5126633a3e7d04754792e0702231b1b6be2d1498'

* commit '5126633a3e7d04754792e0702231b1b6be2d1498':
Make sure SurfaceView use a 565 surface when requesting an OPAQUE format.
2d468c5d73cc1cefbcfa8d98e30622c54756918c 15-Jun-2010 Mathias Agopian <mathias@google.com> Make sure SurfaceView use a 565 surface when requesting an OPAQUE format.

this is needed for backward compatibility with somewhat buggy applications.
not a big deal, since the app can request another format explicitely.

Change-Id: Ic73f8acedf94ffc0115637efac28fa8ffaa7e5a4
urfaceView.java
8e03b7566c42621fda01186b66b019142eb84fbf 14-Jun-2010 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 9e660c82 to master

Change-Id: Ic4bd85cbaa5b9a10dcb474a0dad46490bf967e43
46b9ac0ae2162309774a7478cd9d4e578747bfc2 23-Apr-2010 Jeff Brown <jeffbrown@google.com> Native input dispatch rewrite work in progress.

The old dispatch mechanism has been left in place and continues to
be used by default for now. To enable native input dispatch,
edit the ENABLE_NATIVE_DISPATCH constant in WindowManagerPolicy.

Includes part of the new input event NDK API. Some details TBD.

To wire up input dispatch, as the ViewRoot adds a window to the
window session it receives an InputChannel object as an output
argument. The InputChannel encapsulates the file descriptors for a
shared memory region and two pipe end-points. The ViewRoot then
provides the InputChannel to the InputQueue. Behind the
scenes, InputQueue simply attaches handlers to the native PollLoop object
that underlies the MessageQueue. This way MessageQueue doesn't need
to know anything about input dispatch per-se, it just exposes (in native
code) a PollLoop that other components can use to monitor file descriptor
state changes.

There can be zero or more targets for any given input event. Each
input target is specified by its input channel and some parameters
including flags, an X/Y coordinate offset, and the dispatch timeout.
An input target can request either synchronous dispatch (for foreground apps)
or asynchronous dispatch (fire-and-forget for wallpapers and "outside"
targets). Currently, finding the appropriate input targets for an event
requires a call back into the WindowManagerServer from native code.
In the future this will be refactored to avoid most of these callbacks
except as required to handle pending focus transitions.

End-to-end event dispatch mostly works!

To do: event injection, rate limiting, ANRs, testing, optimization, etc.

Change-Id: I8c36b2b9e0a2d27392040ecda0f51b636456de25
WindowSession.aidl
nputChannel.aidl
nputChannel.java
nputHandler.java
nputQueue.java
nputTarget.java
eyEvent.java
otionEvent.java
urfaceView.java
iewRoot.java
indowManagerPolicy.java
f10e6331e3bf01653235d93aa523056c146a85a3 11-Jun-2010 Scott Main <smain@google.com> docs: fix markup error

Change-Id: Icea017095f58068c55dd3c1c18cecbdf06afb595
indowManager.java
e3924992733234fd7d7a614c165a94e0a2cd6b84 11-Jun-2010 Romain Guy <romainguy@google.com> Refactor HardwareRenderer to allow the use of OpenGL ES 2.0.

The current OpenGL ES 2.0 HardwareRenderer will fail and does not
even attempt to create a Canvas. The next step will be to create
a new native-backed Canvas that relies on OpenGL ES 2.0 and bypasses
the current OpenGL ES 1.0 implementation done in Skia.

Change-Id: I7a8e9f87f316e9137ef191bb5609213e160eaa4c
ardwareRenderer.java
c6133285820bba23778906cd417ceb9114e928dc 11-Jun-2010 Romain Guy <romainguy@google.com> Fix native crash when enabling hardware acceleration.

This change also prevents hardware acceleration when the ViewRoot is in the
system process. This causes problem in EGL intialization because of having
both a SurfaceControl and a Surface. This is not needed and better to leave
it off anyway (so that preview windows don't get unnecessary hw acceleration.)

Change-Id: I1cc55d7fb9a4c1a9c4c59f11f49d3e44de78acef
iewRoot.java
2d6145993e19d2bb664766dbaf3c1e9ad3d12cdc 10-Jun-2010 Romain Guy <romainguy@google.com> Move OpenGL support out of ViewRoot into a new HardwareRenderer class.

Change-Id: Iffaed924a5defc3c4df26223c390dc27eee115b1
ardwareRenderer.java
iewGroup.java
iewRoot.java
b31e84bc4513e46bac4be8f8d0513f78e360fb11 09-Jun-2010 Dianne Hackborn <hackbod@google.com> Add Fragment option menu APIs.

Also fix up how transactions are handled so that a series of transactions
can correctly be created and committed.

Change-Id: I948ba47d49e9b2246a1958bd9eac9dd36dc5a855
indow.java
db479c9af0dd44bb0e3efcd1c432c473153a1a57 09-Jun-2010 Adam Powell <adamp@google.com> Merge "Dropdown mode for ActionBar; style and API updates"
a408291e22def5755559f42cde913706a6d628c0 05-Jun-2010 Adam Powell <adamp@google.com> Dropdown mode for ActionBar; style and API updates
ctionBarView.java
8d49cd77df7bfcd27f28a503641df7fa4c4c5191 08-Jun-2010 Romain Guy <romainguy@google.com> am c62c4c8b: am 804d0496: am 71d73a0d: Merge "Add a method to hide/show a SurfaceView\'s surface." into froyo
6a102b4bc70e22a3636503a90b55ba175b18ab31 08-Jun-2010 Romain Guy <romainguy@google.com> am 71d73a0d: Merge "Add a method to hide/show a SurfaceView\'s surface." into froyo

Merge commit '71d73a0dfc110d0bdfc1b7ba385db3e2cfe007e5' into froyo-plus-aosp

* commit '71d73a0dfc110d0bdfc1b7ba385db3e2cfe007e5':
Add a method to hide/show a SurfaceView's surface.
804d04969da91b45ee31e8d290de3ede7650fe48 08-Jun-2010 Romain Guy <romainguy@google.com> am 71d73a0d: Merge "Add a method to hide/show a SurfaceView\'s surface." into froyo

Merge commit '71d73a0dfc110d0bdfc1b7ba385db3e2cfe007e5' into kraken

* commit '71d73a0dfc110d0bdfc1b7ba385db3e2cfe007e5':
Add a method to hide/show a SurfaceView's surface.
afc3e11f10828e113331eb24b65e4f9759f67747 08-Jun-2010 Romain Guy <romainguy@google.com> Add a method to hide/show a SurfaceView's surface.

This can be used to move a surface offscreen to avoid the cost of compositing it.
This preserves the window and therefore the OpenGL context when used in h/w
accelerated apps.

Change-Id: I280295376601b17989d0fc8a271af66650016f09
urfaceView.java
22449c1d3b37471558a43a0425800971ea37e377 03-Jun-2010 Jeff Brown <jeffbrown@google.com> am 1bcc845f: am ca583f09: Merge "Fixed some minor bugs in MotionEvent recycling." into kraken
d28f4be870ea8850a2d4a2fe51333643f16b9ab1 03-Jun-2010 Jeff Brown <jeffbrown@google.com> Fixed some minor bugs in MotionEvent recycling.

1. MotionEvent.recycle() never set mRecycled to true so it couldn't actually
detect doubly-recycled events (unless the TRACK_RECYCLED_LOCATION debuging
flag was enabled).

2. MotionEvent.obtain() did not set mNext to null before returning the event
so it would unnecessarily retain a reference to other events in the
recycled event linked list until recycled again.

Change-Id: I93709c402d260691875f632dfc080a355f85fbb0
otionEvent.java
812ccbeb3ce55c50463fda1d161b2eeed8b19cd2 01-Jun-2010 Romain Guy <romainguy@google.com> Add new hardwareAccelerated manifest attribute to enable HW drawing.

Change-Id: I2bb0252f3699cb720e7f5b6868419c9904e4fb35
iew.java
iewGroup.java
iewRoot.java
c1600ae869d1f3947bdc645951ba9d6cd265a60f 25-May-2010 Mathias Agopian <mathias@google.com> am 36893612: am d6ddcb7f: fix [2677468] some 3rd party GL ES apps get a 32-bits surface by default and fail
d6ddcb7f00a7af95b452233d965b922632f78f21 25-May-2010 Mathias Agopian <mathias@google.com> fix [2677468] some 3rd party GL ES apps get a 32-bits surface by default and fail

force all SurfaceView to 565

Change-Id: I8ebfa1239d8e4fa097c2e544677fb92fa20b39bd
urfaceView.java
9b081a809a7e39c6877a9606289ada4680f3d91f 19-May-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 8b625a95 to master

Change-Id: I03264c6aad2d87629f9154f5c390cb36ce08efba
dc8a7f69d7df5f1ca29763995a0d55acf7936fc6 10-May-2010 Dianne Hackborn <hackbod@google.com> Add new API to take over a window's Surface.

Change-Id: Iad6245faadc95f19ea63c8e229a1c02e9188f69e
urfaceHolder.java
iewRoot.java
indow.java
a1700783b52c3f4e6b52ea425cdce93c74936586 13-May-2010 Adam Powell <adamp@google.com> ActionBar - custom navigation views

Change-Id: Ibc98565816c713474eefd4e96fb51175abfb0187
ctionBarView.java
a4bb6410403d7cc4e5cac82243ad2cc3fc1d3c60 13-May-2010 The Android Open Source Project <initial-contribution@android.com> am 1331ded8: am e28776bb: am b1110149: merge from open-source master
e28776bbd72397eea0dd24f5c28273fb2bf1a2f0 13-May-2010 The Android Open Source Project <initial-contribution@android.com> am b1110149: merge from open-source master

Merge commit 'b1110149cccc3b99e59ead34ca46e5ac026f6db9' into kraken

* commit 'b1110149cccc3b99e59ead34ca46e5ac026f6db9':
Use integer for loop counter instead of float
New test in FrameworkTest for the VelocityTracker class
Preserve '+' in phone numbers imported from SIM.
b1110149cccc3b99e59ead34ca46e5ac026f6db9 13-May-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: I88a580162b34a80d1e3e7987b7a301c253afa0e8
b4bc78b16a05554c57508b488e21dd8eca4e13e6 13-May-2010 Dianne Hackborn <hackbod@google.com> Further work on fragments:

- Implement all of the state saving and restoring machinery. This
caused some flux in the API.
- Add ability to have fragments that are retained across activity
instances.
- Fix some bugs.

Change-Id: Ib6b5b0752d7f8d667cfdcd3e76d127cc9b6d901b
iew.java
iewGroup.java
b79781af1ebc68dbaa1b44da43fd391de067a201 13-May-2010 Kenny Root <kroot@google.com> Use integer for loop counter instead of float

Change-Id: Iafaccbb3a3a7cbe0d67ed6827906d713c37ce89b
elocityTracker.java
33b974393b6fadcefc896ec4a0f9b66724f61e9f 20-Apr-2010 Adam Powell <adamp@google.com> ActionBar added to framework, integrated with Activity and styles.
Added onClick attribute support to menus in MenuInflater.

Change-Id: I739771b4f249d87a0d8b15969f3d526b099067a1
ctionBarView.java
enuInflater.java
indow.java
203688c6579bc530288642972d1f872a12516dfe 13-May-2010 Romain Guy <romainguy@google.com> Fix dump of the persistent drawing cache attribute.

Change-Id: I351028f6e0858c9ebf7f59bd6cc964925bc3e2b9
iewGroup.java
10c40078d0cd75544d9183dec9df59bee9fa00ac 07-May-2010 Christopher Tate <ctate@google.com> am 5cfec530: am fa9e7c05: Sketch of Native input for MessageQueue / Looper / ViewRoot
fa9e7c05c7be6891a6cf85a11dc635a6e6853078 06-May-2010 Christopher Tate <ctate@google.com> Sketch of Native input for MessageQueue / Looper / ViewRoot

MessageQueue now uses a socket for internal signalling, and is prepared
to also handle any number of event input pipes, once the plumbing is
set up with ViewRoot / Looper to tell it about them as appropriate.

Change-Id: If9eda174a6c26887dc51b12b14b390e724e73ab3
iewRoot.java
108817f3d85f80ddeb8db0ced75502520449a550 06-May-2010 The Android Open Source Project <initial-contribution@android.com> am 8b270a7a: am 579e08e6: am f7896449: merge from open-source master
579e08e657a8dc9274b297b5dda95a4383cc3642 06-May-2010 The Android Open Source Project <initial-contribution@android.com> am f7896449: merge from open-source master

Merge commit 'f78964490d8098387d51444c87bf520ad3f674e2' into kraken

* commit 'f78964490d8098387d51444c87bf520ad3f674e2':
Add new keycodes for the convenience of Japanese IMEs
Call register_localized_collators() with the current locale.
Fixed deserialization problem in DatePicker.
Fix for bug 2467152 files with spaces fail to open.
Set alpha value for newly created dim surface.
telephony: Fix CID when CID is unknown
f78964490d8098387d51444c87bf520ad3f674e2 06-May-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: Ia9e1f4e049f5870386ea29ddb6e3ef028ea918da
b032bc037399110f41cfdb838a792b3c65756323 02-Oct-2009 mogimo <mogimogio@gmail.com> Add new keycodes for the convenience of Japanese IMEs

Change-Id: Ibd308cef11261147856258595f6ca0137e03e05c
eyEvent.java
5cb9d13ba7ae4f63b2676d0aadb5842769713bc0 05-May-2010 Jean-Michel Trivi <jmtrivi@google.com> am fd9b8fb4: am 99fb5046: am fc12b5be: am b5fa4dff: Merge "Fix bug 2594126 Do not crash when ViewRoot is trying to play a UI sound. This CL doesn\'t fix why mView can be null in the first place, but prevents a crash when mView is null and a UI sound is to be played."
99fb50468c460c29da8541cd69655bd3ff92cb08 05-May-2010 Jean-Michel Trivi <jmtrivi@google.com> am fc12b5be: am b5fa4dff: Merge "Fix bug 2594126 Do not crash when ViewRoot is trying to play a UI sound. This CL doesn\'t fix why mView can be null in the first place, but prevents a crash when mView is null and a UI sound is to be played." into froyo

Merge commit 'fc12b5be2ee49ba2392274d413bd5d759c03c346' into kraken

* commit 'fc12b5be2ee49ba2392274d413bd5d759c03c346':
Fix bug 2594126 Do not crash when ViewRoot is trying to play a UI
fc12b5be2ee49ba2392274d413bd5d759c03c346 05-May-2010 Jean-Michel Trivi <jmtrivi@google.com> am b5fa4dff: Merge "Fix bug 2594126 Do not crash when ViewRoot is trying to play a UI sound. This CL doesn\'t fix why mView can be null in the first place, but prevents a crash when mView is null and a UI sound is to be played." into froyo

Merge commit 'b5fa4dff0c4756ef7868926d4f373645ac0b00a9' into froyo-plus-aosp

* commit 'b5fa4dff0c4756ef7868926d4f373645ac0b00a9':
Fix bug 2594126 Do not crash when ViewRoot is trying to play a UI
13b18fd7f954c0034144edde84a1aef1a7b56355 05-May-2010 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 2594126 Do not crash when ViewRoot is trying to play a UI
sound.
This CL doesn't fix why mView can be null in the first place, but
prevents a crash when mView is null and a UI sound is to be played.

Change-Id: I74ea03567e8e6ebebb6c95c80a473abf11e1163d
iewRoot.java
76f0ce1fe4b10a67fb4c037a89024cc134ccb1c1 04-May-2010 Gilles Debunne <debunne@google.com> Revert "Merge "Raw types warnings removed.""

This reverts commit 9794ca60d745757d882d456e653a2dfe41cbb6ff, reversing
changes made to d3f9051c85ffdf50d800b914c8a2def73ffa5bf3.

Change-Id: I39cebc7e92d3604941d66b09bd7b899d06f703fb
ayoutInflater.java
9794ca60d745757d882d456e653a2dfe41cbb6ff 04-May-2010 Gilles Debunne <debunne@google.com> Merge "Raw types warnings removed."
0c0b1b3a07e1c5caf5ddd158c0e8901f02d4d4d0 29-Apr-2010 Steve Howard <showard@google.com> am 3fd6419f: am 3b20c9e8: am 81ac367b: Merge "Fix a minor bug in transitions to left-edge-up landscape." into froyo
3fd6419fe542c4ecb8e838d1754a83ce8591b288 29-Apr-2010 Steve Howard <showard@google.com> am 3b20c9e8: am 81ac367b: Merge "Fix a minor bug in transitions to left-edge-up landscape." into froyo

Merge commit '3b20c9e80533401d8c423977ef86460d789d4e1e' into kraken

* commit '3b20c9e80533401d8c423977ef86460d789d4e1e':
Fix a minor bug in transitions to left-edge-up landscape.
3b20c9e80533401d8c423977ef86460d789d4e1e 29-Apr-2010 Steve Howard <showard@google.com> am 81ac367b: Merge "Fix a minor bug in transitions to left-edge-up landscape." into froyo

Merge commit '81ac367be66905a5b53b8e7e98160546802bd98b' into froyo-plus-aosp

* commit '81ac367be66905a5b53b8e7e98160546802bd98b':
Fix a minor bug in transitions to left-edge-up landscape.
c64d537e9b3f36c68506c0560e97f53e1afe7d64 28-Apr-2010 Steve Howard <showard@google.com> Fix a minor bug in transitions to left-edge-up landscape.

Fix MAX_TRANSITION_TILT to remove the entry for upside-down
orientation, which should've been removed when that orientation itself
was removed. This was causing the phone to require further vertical
tilt for transitions to left-edge-up landscape, as compared to
right-edge-up landscape or portait mode.

Bug: 2639310
Change-Id: I8fe2e2baecd6a9c2cecae95d316b0d4e2f8ee251
indowOrientationListener.java
9afed28629e9a35d341a39f8b4ee21b418079263 21-Apr-2010 Gilles Debunne <debunne@google.com> Raw types warnings removed.

Raw types replaced. Added a asSubClass method in LayoutInflater which
will (correctly) throw a ClassCastException when the inflated class is
not a View subclass.

Reduced the number of warnings in GenericInflater, but those remaining
are valid. A lot of unsafe class casts happen between parent (P) and
item (T) types that will generate runtime errors if the XML is not valid.

Change-Id: I887fd67769a51ab54c6092e1270dbe3bfb6313ca
ayoutInflater.java
73f37ed8269aeb7e3f17b2a4aca8ecee788efae7 27-Apr-2010 Marco Nelissen <marcone@google.com> am 55fb51aa: resolved conflicts for merge of 86303198 to kraken
55fb51aa411b574646cc3068ce36e73789b81616 27-Apr-2010 Marco Nelissen <marcone@google.com> resolved conflicts for merge of 86303198 to kraken

Change-Id: Idd921c7108e4c2cd4a861ee1fb8b43e5d56f8f2f
863031983d3b4a0f31b9535123ec97dee55ac8cb 27-Apr-2010 Marco Nelissen <marcone@google.com> am 8138cb49: Make Surface.toString() show more useful info to help debug bug 2594388.

Merge commit '8138cb49e47f9a9905a316a217757710185c66aa' into froyo-plus-aosp

* commit '8138cb49e47f9a9905a316a217757710185c66aa':
Make Surface.toString() show more useful info to help debug bug 2594388.
8138cb49e47f9a9905a316a217757710185c66aa 27-Apr-2010 Marco Nelissen <marcone@google.com> Make Surface.toString() show more useful info to help debug bug 2594388.

Change-Id: I005d3388503d8886e11a26fece30b87572934f15
urface.java
cbb02b9a66c6fa6f68aa3542b64c8ad578007f15 27-Apr-2010 Mathias Agopian <mathias@google.com> am 62801264: Merge "fix [2615973] ViewRoot locks the Surface even when the dirty region is empty" into kraken
8af711d35219f626bfccd901d4ce63e79418e020 23-Apr-2010 Jeff Hamilton <jham@android.com> Attempt to fix the build.

Change-Id: I03569da7a426b17fded35a23d01586e837769836
urface.java
2291fe2a8ccbd6c08e1e3d29d20b66fbd5eeba5f 23-Apr-2010 Dianne Hackborn <hackbod@google.com> am 0c1be50f: am dc14dc6d: am bf73bbff: Merge "Some debugging help for issue #2594388" into froyo
0c1be50ffa256d7b4d39034f90633f33b059c799 23-Apr-2010 Dianne Hackborn <hackbod@google.com> am dc14dc6d: am bf73bbff: Merge "Some debugging help for issue #2594388" into froyo

Merge commit 'dc14dc6d60675be688c333bbc60a315d2c658054' into kraken

* commit 'dc14dc6d60675be688c333bbc60a315d2c658054':
Some debugging help for issue #2594388
dc14dc6d60675be688c333bbc60a315d2c658054 23-Apr-2010 Dianne Hackborn <hackbod@google.com> am bf73bbff: Merge "Some debugging help for issue #2594388" into froyo

Merge commit 'bf73bbffc18f5abb5350fa3a410830c05ad10206' into froyo-plus-aosp

* commit 'bf73bbffc18f5abb5350fa3a410830c05ad10206':
Some debugging help for issue #2594388
ba3e31d9eed67291a51b501d12fdc27625af688e 23-Apr-2010 Dianne Hackborn <hackbod@google.com> Some debugging help for issue #2594388

WallpaperService doesn't always call onSurfaceDestroyed()

Just helps us see a little better what is going on.

Change-Id: Ibe8efd9e343e880ca31df446c8b36c7fa3722e87
urface.java
a62b09a121960d98005e364d85aac4998a410ae3 22-Apr-2010 Mathias Agopian <mathias@google.com> fix [2615973] ViewRoot locks the Surface even when the dirty region is empty

Change-Id: I3041a57441bd9ee97f2cbc03ce42643175023c78
iewRoot.java
b19b17ed39d2ffaa799d63878988e1d93a389e07 20-Apr-2010 Adam Powell <adamp@google.com> am 8dc38941: am 7f30f8ab: am 93d35f77: Merge "Fix bug 2587373 - awaken scrollbars when a scrolling view becomes visible." into froyo
8dc38941b4321bc367c02649f4efdbd99e7dffb6 20-Apr-2010 Adam Powell <adamp@google.com> am 7f30f8ab: am 93d35f77: Merge "Fix bug 2587373 - awaken scrollbars when a scrolling view becomes visible." into froyo

Merge commit '7f30f8abe3161ae912c3475aa89ad14388f576d7' into kraken

* commit '7f30f8abe3161ae912c3475aa89ad14388f576d7':
Fix bug 2587373 - awaken scrollbars when a scrolling view becomes visible.
7f30f8abe3161ae912c3475aa89ad14388f576d7 20-Apr-2010 Adam Powell <adamp@google.com> am 93d35f77: Merge "Fix bug 2587373 - awaken scrollbars when a scrolling view becomes visible." into froyo

Merge commit '93d35f77439f54cc55ff63b6e274dec0ac6c3c47' into froyo-plus-aosp

* commit '93d35f77439f54cc55ff63b6e274dec0ac6c3c47':
Fix bug 2587373 - awaken scrollbars when a scrolling view becomes visible.
8568c3a09bff9bd2f7c9462b116bed0537d19342 19-Apr-2010 Adam Powell <adamp@google.com> Fix bug 2587373 - awaken scrollbars when a scrolling view becomes visible.

Change-Id: I7eb38c53c3a03b23786b8b0c2d16139acd0eb38e
iew.java
af7adab3e35863fff24e701039d5d04afbc060c5 17-Apr-2010 Svetoslav Ganov <svetoslavganov@google.com> 2604184 Expose hidden APIs for testing the AccessibilityManager separately from the backing AccessibilityManagerServcie

Change-Id: Ief5df31baa3c0990467625977e97cd066a671959
ccessibility/AccessibilityManager.java
7946d07183c2020b7421113e3a113763eac15a67 14-Apr-2010 Dianne Hackborn <hackbod@google.com> Merge "2593810 Accessibility event's parcelableData property not nullified during recycling"
9efd078c6bf513e8c6bf59ce57e6f9c038fdf3ee 14-Apr-2010 Svetoslav Ganov <svetoslavganov@google.com> 2593810 Accessibility event's parcelableData property not nullified during recycling

Change-Id: I88d6f3d63d7ff0fbdd88fb9cb642349029838b31
ccessibility/AccessibilityEvent.java
dd64a9b0d6ff0f15b22d02a108c5342c74db995a 14-Apr-2010 Svetoslav Ganov <svetoslavganov@google.com> 2593833 AccessibilityManager not properly initialized immediately upon registration in the AccessibilityManagerService

Change-Id: I0226bafc5e9c5b800c54019c9309394f1e5f9e88
ccessibility/AccessibilityManager.java
ccessibility/IAccessibilityManager.aidl
8b138323d54e36fd66b22a634494648e20c53373 13-Apr-2010 Mathias Agopian <mathias@google.com> don't hardcode "mSurface" throughout our source code

this is used in a few places to get access to the android.view.Surface
native surface. use a macro instead. Also rename the field to mNativeSurface.

Change-Id: I1c6dea14abd6b8b1392c7f97b304115999355094
urface.java
376722fcdf41ade7286bcdb757564559d35a4976 10-Apr-2010 Romain Guy <romainguy@google.com> am 4525c981: Merge "Fix regression introduced when fixing focus issue with ScrollView. Bug #2581646" into froyo

Merge commit '4525c98114c1e570ecef84521f66095e866af77d' into froyo-plus-aosp

* commit '4525c98114c1e570ecef84521f66095e866af77d':
Fix regression introduced when fixing focus issue with ScrollView.
2d4cff64b4c864aa5f6859b73ffa65e31ee915ac 10-Apr-2010 Romain Guy <romainguy@google.com> Fix regression introduced when fixing focus issue with ScrollView.
Bug #2581646

The correct fix is to make ScrollView ignore the BACK key instead of consuming it.

Change-Id: I5c029a5c60ae8e7791391f63672c44b5c96fec71
iewRoot.java
65369424cbfbf165b4324bdcb6f138435462a196 08-Apr-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: I975030d9572463bc69245bcffa25c47d7acb2b51
7b70f6589205dec10afdb358b7ddef7aa61b7dd8 07-Apr-2010 Romain Guy <romainguy@google.com> Search for focusable views only after layout has happened when the window is first created.
Bug #2565564

Change-Id: I9eb58bbcba873ac1d6dc0b60b0de99e0e9979398
iewRoot.java
c957ebef9755d15f92c27d690641995587c0ba2f 07-Apr-2010 Daniel Sandler <dsandler@android.com> Merge "Add more WindowManager flags to ViewDebug." into froyo
2e4f426bbc3bad62d2c30109a5370c2026b3df36 06-Apr-2010 Romain Guy <romainguy@google.com> Correctly resize dialogs when measured in WRAP_CONTENT
Bug #2549649

If the window had a different size than its content but the content had already
been measured with the appropriate size, the window would not be resized. This
happens in wrap_content windows (dialogs.) This change simply adds a new codition
to window resizing: if the window is wrap_content, not as big as it can be and
not as big as its content, it gets resized.

Change-Id: I1d82d03af5a15c9ad8dffa0511d5f6d522578285
iewRoot.java
4fedd80c1d3997d62073518973b1fe09862ebaa5 27-May-2009 Chih-Wei Huang <cwhuang@linux.org.tw> Add keycodes PageUp and PageDown

This is useful for applications like web browser.

Change-Id: Ie9262d5b75de87ecd0971407a7c3ce9aa6e4998e
eyEvent.java
20e9271cf25e48d8ea17bed74e87465ca3d77b8c 02-Apr-2010 Daniel Sandler <dsandler@android.com> Add more WindowManager flags to ViewDebug.

Bug: 2567955
Change-Id: Ia34aaa3cbf6e2bc2e59fe9ae83e4c8a6498612ca
indowManager.java
3d5f648f8fe61507107b900fc3c4cf79b19572c6 26-Mar-2010 Dirk Dougherty <ddougherty@google.com> doc change: cherry pick 75c66da20927e7e854397c00ef1974140270c57f. (clarify fill_parent/match_parent transition in ViewGroup.LayoutParams and R.attr. Mention match_parent in dev guide "declaring layout" doc.)

Change-Id: I1d2b80b8dc3f8b2e3c1befcbb7c4c522d78a2db8
iewGroup.java
726426ee736929e605742bfa52bca4b20095921d 01-Apr-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2529154 Found SurfaceFlinger timeout in logcat when wake up Camcorder

We need to make sure, if the window size changes, to have onSurfaceChanged()
called for the surface to be redrawn.

Change-Id: Iad518199fa400de8059a77ed34d50d6eb93a6aff
urfaceView.java
9d32d24dbd8a015c9d5c44ed4901d5a666eb8e7f 30-Mar-2010 Adam Powell <adamp@google.com> Remove overscrolling

Change-Id: I7e9db8d8a9b8ef67f0c0c82bf57c9155b7ebabea
iew.java
8deb239169f9b60cf19b6f4293978e654fa15a03 30-Mar-2010 Steve Howard <showard@google.com> Merge "Remove upside-down portrait orientation." into froyo
1c310b9d2f58ac008fe50f98c6a5c04a5f0645ff 29-Mar-2010 Steve Howard <showard@google.com> Remove upside-down portrait orientation.

I also realized the ROTATION_NN constants were misdocumented, they
actually align the opposite direction from the "orientation" angle
computed in the code (i.e. orientation=90 is left side up, ROTATION_90
is right side up). I just changed the comment here to keep the change
minimal; I'll update the code to be more consistent outside of this
release branch.

Bug: 2549875
Change-Id: I79c4286be582a21e730b25a8a24f2e1137c6e4cb
indowOrientationListener.java
6b1e6969828f05a2f5f55825fdf16b19c9dce2dd 29-Mar-2010 Romain Guy <romainguy@google.com> Rename tab widget attributes, remove scroll barrier constant.
Bug #2553515 #2553595

Change-Id: Id36280a57f00a1ee59251be6be1aae8df2189c09
apticFeedbackConstants.java
iew.java
d49258fed489bcd72a2b2a6ce3a3c38d4b2531e6 26-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2544466: Car Home brightness icon comes and goes while phone is in car dock in FRE83

There was a really dumb bug that was causing us to not always apply
the new configuration. As a result of fixing this, there were new
glithes in the transition between car and regular mode, so further
work here to fix that. And since I was actually working during the
night and seeing night mode, I noticed how obnoxiously bright the
status bar is compared to the car home at night, so it now nicely
dims itself when we switch to the night config. Oh and in doing
that I also found and fixed a bug in dispatching config changes to
a window (where they wouldn't get dispatched if the window didn't
resize).

FINALLY... tweak the wallpaper enter/exit animations a bit to
make them a little smoother.

Change-Id: I4e062093cbcfbc919307799a794846db2920216f
iewRoot.java
8f2bd4328a7cc9dd70e597b7cc011be22c6ca566 25-Mar-2010 Joe Onorato <joeo@android.com> Add window flags and window types to hierarchyviewer.

For debugging http://b/issue?id=2544870

Change-Id: I4b7775e6fd275bb7a9041bf5736e076122bfb5f1
indowManager.java
f5e32f33eddc6e22edee1df486b38294ddc76cc3 24-Mar-2010 Mathias Agopian <mathias@google.com> another small step towards fixing [2501808] sapphire: OOM in GPU Surface area

release the Surface in SurfaceView when it's not visible, after it comes back from relayout(),
it should not be holding buffers at this point, but it's cleaner to have it in the released state.

also log a warning in Surface.finalize() when there is work to do, as it means Surface.release() wasn't
called when it should have.

Change-Id: Id637d4ec2916d8fd800b0344d8dec6cecce02051
urface.java
urfaceView.java
1c6a89491b23aa54bec9e7677c24005350aca525 24-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2538211: system server crash

Change-Id: Ib440650129ca35e25c8c770113af21fef239178d
ClassCastException: com.android.internal.widget.PointerLocationView
iewRoot.java
1a26c9aa0b96d30fc99eeb10bfd41f966ceb003a 23-Mar-2010 Romain Guy <romainguy@android.com> Merge "Improve export to bitmap layers for HierarchyViewer."
65554f27855ce1764123604b061b10346f8b8404 23-Mar-2010 Romain Guy <romainguy@android.com> Improve export to bitmap layers for HierarchyViewer.

- Do not show layers with an invisible parent
- Correctly draw extras from dispatchDraw() (ListView's dividers for instance)

Change-Id: Id2e24ae9d52879290dffbf1cc446c5eda9522fbb
iewDebug.java
iewGroup.java
7179b8133d4a1d8e5f26cbe3da6aa978094e75c9 22-Mar-2010 Derek Sollenberger <djsollen@google.com> Adding a hidden method to check if a surface is fixed in size.

Change-Id: I5d719d436aa1475dfb25f26c258a6f417a9b5c1c
urfaceView.java
1afd1c90ebe789b8d3a137004127a50d2db7e3b5 19-Mar-2010 Dianne Hackborn <hackbod@google.com> Maybe fix issue #2457218: Corrupt batterystats.bin file preventing phone boot - LIBtt68127

No steps to repro, but makes the code more robust by using the standard
JournaledFile class and doing sanity checks on the input it reads.

This required moving the JournaledFile class in to the framework (and
we really should get rid of either it or AtomicFile, but they have
different recovery semantics so that is tough). Also went through and
cleaned up the file management in various places.

Change-Id: Ieb7268d8435e77dff66b6e67bb63b62e5dea572e
iewDebug.java
52964243dc95f74ac2ab9a96d031a36931a11931 24-Feb-2010 Gilles Debunne <debunne@google.com> New OverScroller with edge bouncing effect.

OverScroller has been made a Scroller child class. Both use a physical constant deceleration
force to compute the animation. OverScroller also includes a rubber edge bounce effect.

Approved by Jim Palmer.

Change-Id: I3f43a03694b8cb6bfa0784c2663b37c9c39322cc
iew.java
nimation/DecelerateInterpolator.java
b05ec11868463fef0322689f5c0b0408a6a0e540 19-Mar-2010 Romain Guy <romainguy@android.com> Merge "Force all views to relayout when ViewRoot is resized. Bug #2519590"
cdb86673a78b021f2ba46c48c1a6e7639d013551 19-Mar-2010 Romain Guy <romainguy@android.com> Force all views to relayout when ViewRoot is resized.
Bug #2519590

Change-Id: Ia6b9d4cf6d719f713703a1eb2e1ccdd5d61a5123
iewRoot.java
e2af5c882b146c3a8c7a37f093d13c8b386e8eba 18-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2438457: Resolving Flash artifacts while scrolling.

When the surface view scrolls off the screen it stops drawing, so
we stop moving it. Add an observer to scrolls so we can continue
to update its position.

Change-Id: I2604cbbecd3e72be1a2a6bc5794e3e1c19317b9e
urfaceView.java
694f79b5d1196640d1beb680b7d1fc68e6e77cbd 18-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2519590: Lock screen stuck in landscape mode

Well, mostly. There is still a problem here where the first time
you show the lock screen it just doesn't draw itself. I assume
this is something breaking in the view hierarchy as it floounders
around removing and adding new views as it is first being shown...
but no idea at this point what is the actual case.

Change-Id: Iba99ae3242931c8673b17b106c86fc99e2c52abe
WindowSession.aidl
urfaceView.java
iewRoot.java
cc83c868b6a34c52060698ef441745ba9e4537a2 18-Mar-2010 Adam Powell <adamp@google.com> Fix the build

Change-Id: I4448a0c56c192d3d9f0308bb77301a3f18de6024
iew.java
8a836a8b98557263152a476f614b6e05e19ffc5a 18-Mar-2010 Adam Powell <adamp@google.com> Eliminate haptic feedback when hitting an overscroll barrier due to a fling.

Change-Id: I434ec3edd95a19677ad9dbd1ac5ca3f3f5d091cb
iew.java
51a6bee6719820d09595f474264fcb833eff470a 15-Mar-2010 Adam Powell <adamp@google.com> Fix bugs when transitioning out of touch mode

Change-Id: I56cbac17fba500871af839a87d746ea8e1fd5d0f
iewRoot.java
a35d7687dda3617b5b8cd4e8876d620223dd1613 12-Mar-2010 Adam Powell <adamp@google.com> Make sure visible View state is updated before dispatching clicks

Change-Id: If2619ffa760be708efe8b0d2d04e17eb0dc9375e
iew.java
346c8fb036b99a33756c66dcebeb5d0f67a1df72 12-Mar-2010 Adam Powell <adamp@google.com> Improvements to ScaleGestureDetector

Change-Id: I995bf7237a1de3ea194efdd21ed31156ff1c3c5b
caleGestureDetector.java
15a4d2ffd04dc6c70f2cd17dae12ac6bc14c69ab 12-Mar-2010 Kenny Root <kroot@google.com> Add correct copyright headers to multiple files

Format for the list of changes shows the origin commit reference followed
by the file name.

33931-p9 awt/org/apache/harmony/awt/gl/font/AndroidGlyphVector.java
33931-p9 awt/org/apache/harmony/awt/gl/image/PngDecoderJava.java
133776-p9 core/java/android/app/IntentService.java
127013-p9 core/java/android/appwidget/AppWidgetHost.java
27863-p9 core/java/android/bluetooth/BluetoothAudioGateway.java
60765-p9 core/java/android/content/SyncResult.java
43920-p9 core/java/android/content/pm/ActivityInfo.java
43920-p9 core/java/android/content/pm/ApplicationInfo.java
43920-p9 core/java/android/content/pm/InstrumentationInfo.java
43920-p9 core/java/android/content/pm/PackageInfo.java
44103-p9 core/java/android/content/pm/PackageItemInfo.java
68960-p9 core/java/android/content/pm/PackageStats.java
43920-p9 core/java/android/content/pm/ResolveInfo.java
43920-p9 core/java/android/content/pm/ServiceInfo.java
60641-p9 core/java/android/content/res/Configuration.java
60734-p9 core/java/android/content/res/TypedArray.java
137672-p9 core/java/android/inputmethodservice/ExtractButton.java
123112-p9 core/java/android/inputmethodservice/ExtractEditText.java
119291-p9 core/java/android/inputmethodservice/IInputMethodSessionWrapper.java
112946-p9 core/java/android/inputmethodservice/IInputMethodWrapper.java
115078-p9 core/java/android/os/BatteryStats.java
124790-p9 core/java/android/text/style/UpdateAppearance.java
45083-p9 core/java/android/view/RawInputEvent.java
101491-p9 core/java/android/view/inputmethod/EditorInfo.java
114701-p9 core/java/android/view/inputmethod/ExtractedText.java
123112-p9 core/java/android/view/inputmethod/ExtractedTextRequest.java
119291-p9 core/java/com/android/internal/os/HandlerCaller.java
129279-p9 core/java/com/android/internal/os/PkgUsageStats.java
114701-p9 core/java/com/android/internal/view/IInputConnectionWrapper.java
114701-p9 core/java/com/android/internal/view/InputConnectionWrapper.java
84364-p9 opengl/java/android/opengl/EGLLogWrapper.java
11355-p9 opengl/tools/glgen/src/CFunc.java
11355-p9 opengl/tools/glgen/src/CType.java
11355-p9 opengl/tools/glgen/src/CodeEmitter.java
11355-p9 opengl/tools/glgen/src/GenerateGL.java
11355-p9 opengl/tools/glgen/src/JFunc.java
11355-p9 opengl/tools/glgen/src/JType.java
11355-p9 opengl/tools/glgen/src/JniCodeEmitter.java
11355-p9 opengl/tools/glgen/src/ParameterChecker.java
57236-p9 services/java/com/android/server/status/AnimatedImageView.java
66754-p9 services/java/com/android/server/status/CloseDragHandle.java
57188-p9 services/java/com/android/server/status/DateView.java
46928-p9 services/java/com/android/server/status/ExpandedView.java
70590-p9 services/java/com/android/server/status/FixedSizeDrawable.java
45968-p9 services/java/com/android/server/status/IconData.java
57470-p9 services/java/com/android/server/status/IconMerger.java
82719-p9 services/java/com/android/server/status/LatestItemView.java
45968-p9 services/java/com/android/server/status/NotificationData.java
66754-p9 services/java/com/android/server/status/NotificationLinearLayout.java
57458-p9 services/java/com/android/server/status/NotificationViewList.java
45968-p9 services/java/com/android/server/status/StatusBarException.java
45968-p9 services/java/com/android/server/status/StatusBarIcon.java
46130-p9 services/java/com/android/server/status/StatusBarNotification.java
45968-p9 services/java/com/android/server/status/StatusBarView.java
46199-p9 services/java/com/android/server/status/Ticker.java
62286-p9 services/java/com/android/server/status/TickerView.java
57188-p9 services/java/com/android/server/status/TrackingView.java
86041-p9 telephony/java/android/telephony/PhoneStateListener.java
87020-p9 telephony/java/com/android/internal/telephony/TelephonyIntents.java
136269-p9 telephony/java/com/android/internal/telephony/gsm/SpnOverride.java
34409-p9 tests/FrameworkTest/src/com/android/frameworktest/FrameworkTestApplication.java
55717-p9 tests/FrameworkTest/src/com/android/frameworktest/performance/InvalidateCycle.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/AutoCompleteTextViewActivityLandscape.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/AutoCompleteTextViewActivityPortrait.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityNonScrollablePanScan.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityNonScrollableResize.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityScrollablePanScan.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityScrollableResize.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/BottomEditTextActivityPanScan.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/BottomEditTextActivityResize.java
127341-p9 tests/ImfTest/src/com/android/imftest/samples/ButtonActivity.java
129347-p9 tests/ImfTest/src/com/android/imftest/samples/DialogActivity.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/EditTextActivityDialog.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityNoScrollPanScan.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityScrollPanScan.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityScrollResize.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/OneEditTextActivityNotSelected.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/OneEditTextActivitySelected.java
25959-p9 tests/framework-tests/src/android/test/FrameworkTests.java
46162-p9 tests/framework-tests/src/com/android/internal/http/multipart/MultipartTest.java
77101-p9 tools/layoutlib/bridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
9788976b1465ce982b5ae7c741345edd0ecd9322 core/java/android/accounts/AuthenticatorDescription.java
53332883543868fb83e111a07306368b7772b340 core/java/android/app/UiModeManager.java
93e7e22ec91dbc641d10ca6d70423e1357a95bba core/java/android/app/FullBackupAgent.java
328c0e7986aa6bb7752ec6de3da9c999920bb55f core/java/android/content/CursorEntityIterator.java
307da1a46b4c9b711bafe8fbaaa6b98e8868c18e core/java/android/content/SyncQueue.java
307da1a46b4c9b711bafe8fbaaa6b98e8868c18e core/java/android/content/SyncOperation.java
eb034652c2037a47ebfd99779e8383bb8bb528af core/java/android/content/pm/LabeledIntent.java
49237345d83e62fdb9eb8d50b13ad086636a04fa core/java/android/content/pm/FeatureInfo.java
a2b6c3775ed6b8924232d6a01bae4a19740a15f8 core/java/android/content/pm/PackageInfoLite.java
3ecd5f437580e49d80beecd29489d5fb1f7a7db0 core/java/android/content/pm/RegisteredServicesCacheListener.java
5ebbb4a6b3e16f711735ae0615b9a9ea64faad38 core/java/android/content/pm/XmlSerializerAndParser.java
c4516a7b62de525e3d6d5e76851bdfaf12c11f05 core/java/android/database/sqlite/SQLiteTransactionListener.java
9bbc21a773cbdfbef2876a75c32bda5839647751 core/java/com/android/internal/backup/LocalTransport.java
21f1bd17b2dfe361acbb28453b3f3b1a110932fa core/java/com/android/internal/content/PackageMonitor.java
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 core/java/com/android/internal/view/BaseSurfaceHolder.java
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 core/java/com/android/internal/view/BaseIWindow.java
e540833fdff4d58e37c9ba859388e24e2945ed45 core/java/com/android/internal/os/SamplingProfilerIntegration.java
192ab903887bbb8e7c7b6da5c581573850e30f46 core/tests/coretests/src/android/widget/expandablelistview/PositionTesterContextMenuListener.java
1619367ab823150fa8856d419abe02ceb75886f1 media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/MediaProfileReader.java
27f8002e591b5c579f75b2580183b5d1c4219cd4 opengl/tools/glgen/stubs/gles11/glGetString.java
560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glGetProgramInfoLog.java
560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glGetShaderInfoLog.java
560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glShaderSource.java
1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/GenerateGLES.java
1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/Jsr239CodeEmitter.java
1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/GLESCodeEmitter.java
69e21f5f6e0d04539cd92848ea009dd615d88c2c opengl/tests/gldual/src/com/android/gldual/TriangleRenderer.java
c028be4f3b8c7476b46859f66c3f33d528adf181 packages/DefaultContainerService/src/com/android/defcontainer/DefaultContainerService.java
7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerMeasurement.java
7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerTestActivity.java
7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerTestRunner.java
df8a3f31d871db25e952972c2eb346a71186e9e3 tests/BrowserTestPlugin/src/com/android/testplugin/TestPlugin.java
cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/ActivityManagerPermissionTests.java
cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/ServiceManagerPermissionTests.java
cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/WindowManagerPermissionTests.java

Copyright header moved to top in following file:

core/tests/coretests/src/android/widget/ListViewTest.java

Change-Id: I3c3198be5a0ba36e18679ed834170432bf0b8418
awInputEvent.java
nputmethod/EditorInfo.java
nputmethod/ExtractedText.java
nputmethod/ExtractedTextRequest.java
3b0233959cc181baca896620b42e3cb6ceca2808 12-Mar-2010 Adam Powell <adamp@google.com> Fix tap detection after a long press

Change-Id: I004651b8522cac175a72e94a14128d2283da35a4
iew.java
42e14d74f3a1e146091e627ae3067651c6dab104 11-Mar-2010 Joe Onorato <joeo@android.com> Throw a better error message when the automatic onClick handling doesn't work.

Change-Id: I61729e26f76a2ab8825e892cd6c70c06f0955e4c
iew.java
b7ef1d9ec9aa09ecba5a348c939b10f798aff131 11-Mar-2010 Adam Powell <adamp@google.com> Make paging touch slop smaller

Change-Id: I36e2623dcc6e3209de51d32841ca68ce322cc5d8
iewConfiguration.java
b8b11a0b1d82e24f7a79f2e1672e7f5cf1611a55 11-Mar-2010 Dianne Hackborn <hackbod@google.com> Further improvements to window management!

Fix issue #2493497: Stuck in the Emergency dialer - Home/Back keys doesn't work
This was another case of not updating the window focus when needed, this time
when the lock screen was hidden.

Also re-arrange the layout/animate flow to address issues where you would see
a flicker of whatever was behind the lock screen when showing a new activity that
hides the lock screen. This was because we were deciding to hide the lock screen
during the layout phase, which meant we had to do it without considering whether
it had drawn. So we could hide the lock screen before the window is shown for the
first time after being drawn. Now we can do this in the policy during animate, so
we can wait until the window is drawn and actually being shown.

The flow in perform layout is thus significantly changed, where the layout and
animate loops are both under the same repeating loop. The actual flow from this
should be the same, but it now allows the policy to request a new layout after
the animation loop is done. This actually cleans up a number of things in this
code as the complexity has increased.

Finally this includes a change to the ui mode manager when switching modes, to do
the resource configuration switch at a different time. This makes transitions
between modes much cleaner (though not yet perfect).

Change-Id: I5d9e75c1e79df1106108dd522f8ffed6058ef82b
indowManagerPolicy.java
80ea00c8391d4fa3a1966903af50732c337aadab 10-Mar-2010 Romain Guy <romainguy@android.com> Fix the build.

Change-Id: I7ed20f3d2fb1a80974fbbfe42fdd2f8f135ee401
elocityTracker.java
de8d0834fc2bc31f011fb3316757883e1b731440 10-Mar-2010 Adam Powell <adamp@google.com> Added ViewConfiguration.getScaledPagingTouchSlop()

Change-Id: I9ab5560c4b76d2b87e53d38b10ba8f5ec4868d85
iewConfiguration.java
1127895fd42111f95fdc5049141c512e60198292 09-Mar-2010 Eric Fischer <enf@google.com> Guard against calls to getTextAfterCursor() in text that has no cursor.

Act like the cursor is at 0 in this case instead of crashing.

Bug 2497485

Change-Id: I5ce9b83b323d895e3be75e3133ff2f8e33cc203d
nputmethod/BaseInputConnection.java
51c5a0c50e8ec5e2cb59bd60f85f3e612eb08931 05-Mar-2010 Adam Powell <adamp@google.com> Added accessors for view overscroll modes
iew.java
20cb56e26e91df91bd64d4251222e0d421cdbe47 04-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix some bugs.

Bug #2376231: Apps lose window focus (and back key causes ANR) if the
lock screen is dismissed while the phone is in landscape mode

This is another case where we weren't recomputing the focused window
after changing the visibility policy.

bug #2479958: Investigate source of "Resources don't contain package
for resource number 0x7f0a0000"

Um, okay, so it turns out there were bugs all over the place where
we would load an XML resource from a another application, but not
use the Resources for that application to retrieve its resources...!
I think the only reason any of this stuff was working at all was
because it typically only cared about retrieving the resource
identifiers of the items (it would look up the values later).

Bug #2401082: Passion ERE26 monkey crash - InputMethodManagerService

Add some null checks.
nputmethod/InputMethodInfo.java
0bba68ddc7e489fd6fb1579417a656f77cbc1ab3 04-Mar-2010 Adam Powell <adamp@google.com> Fix VelocityTracker for CTS tests
elocityTracker.java
f5bcc6addd9c1f8f6bb8b8626540d003b3f964fa 02-Mar-2010 Adam Powell <adamp@google.com> InputDevice filtering for jumpy screens.
Updated ScaleGestureDetector for framework deprecations.
caleGestureDetector.java
223ff5c0586adbbd1d6d57a3a4d176222e8b7434 03-Mar-2010 Romain Guy <romainguy@android.com> Add new CAPTURE_LAYERS command to HiearchyViewer protocol.

This command is used by the desktop tool to export a given view hierarchy into
a layered file format.
iew.java
iewDebug.java
iewGroup.java
8bda24874f1da3ca10e40bd0a11154911337b2ac 02-Mar-2010 Romain Guy <romainguy@android.com> Turn on fading scrollbars by default.
Bug #2142162
iew.java
5d26c1e38dabb3ad8b4b6e1000375f3b1a6b7693 02-Mar-2010 Mathias Agopian <mathias@google.com> Added a name to Surface created by SurfaceFlinger

Updated the window manager to use this new facility.
Surfaces name are now printed by "dumpsys".
urface.java
74bfea76ea601017126714729f7cea68e5d9cbdb 01-Mar-2010 Derek Sollenberger <djsollen@google.com> am a630dcdb: am ecde72fe: Ensure the IME is rendered above the surface when we z-order the surface to be on top.

Merge commit 'a630dcdb956f9acb028dd03bc63b28874f100f8a'

* commit 'a630dcdb956f9acb028dd03bc63b28874f100f8a':
Ensure the IME is rendered above the surface when we z-order the surface to be on top.
ecde72fe411811ca02a2565bf73b86e6e8ddc76b 01-Mar-2010 Derek Sollenberger <djsollen@google.com> Ensure the IME is rendered above the surface when we z-order the surface to be on top.
urfaceView.java
80615257cf71714ff80d22f1cde9035e96257d20 26-Feb-2010 Romain Guy <romainguy@google.com> Merge "Send cancel event to recycled views instead of an up. Bug #2309387"
4c904a3bf3dbe98607b5e3f706ee8ef8887ee104 26-Feb-2010 Joe Onorato <joeo@android.com> fix the build.
isplay.java
8afa515936e78ccfc5563ca9164dc9a50ca73db4 26-Feb-2010 Romain Guy <romainguy@android.com> Send cancel event to recycled views instead of an up.
Bug #2309387

This was a problem in lists with list items that would cause notifyDatasetChanged()
interleaved with a series of up/down motion events. This is a pretty rare case
but it's worth fixing it to avoid getting views in a weird state.
iew.java
iewGroup.java
5cb70b54156fb305d579a1cc167424c8705bfdf7 26-Feb-2010 Dianne Hackborn <hackbod@google.com> Rename Display.getOrientation() to Display.getRotation().

Update various docs.
isplay.java
82fe564267f276151063b2aa0d26075c3210d75f 24-Feb-2010 Carl Shapiro <cshapiro@google.com> Comment out the finalize() methods defined on the Activity,
ContextImpl, View and ViewRoot classes. This allows instances of
subclasses to be collected without the additional latency of
finalization.
iew.java
iewRoot.java
d82968d8d8f3ac5908e6cb76b6e8989092f41c27 25-Feb-2010 Steve Howard <showard@google.com> Merge "Improve accelerometer-based orientation sensing."
8354fa65ebf4f44dd189d1d6f33767cf009b5769 25-Feb-2010 Bjorn Bringert <bringert@android.com> Make setBackgroundResource() remotable

Change-Id: Iad9c2bdf743a81a085024cad9dc340ae8a983f34
iew.java
1ba101f82eae4e54293428480fbcbfd1c58359c8 23-Feb-2010 Steve Howard <showard@google.com> Improve accelerometer-based orientation sensing.

There were three main complains about orientation sensing:
* Switching to landscape when putting a device down on a table (or picking it up)
* Changing orientation due to road bumps or vehicle vibrations while in a car dock
* Switching to upside-down too easily

This change includes three primary enhancements.

First, we run the accelerometer output through a lowpass filter before considering its orientation. This avoids glitches due to brief phone movement, particularly when the phone hits a table. The filter uses a very low default time constant of 200ms to retain responsiveness (note the samping period is ~200ms, so the effect of this filtering is pretty mild). At tilt angles beyond 45 degrees, however, we increase the time constant to 600ms, which helps greatly with avoiding glitches picking the phone up from a table. It does introduce some sluggishness when rotating while the phone is tilted back, i.e. being used in one's lap.

It's also worth mentioning that the accelerometer output on Sapphire appears to be pre-lowpass-filtered with a time constant of around 500ms, making this less necessary on that device, but the added effect doesn't noticeably degrade user experience in my opinion.

Second, we check the magnitude of the raw accelerometer output. If it deviates from the strength of gravity by more than one m/s^2, we distrust the data, since that implies the device is under external acceleration and the sensor data doesn't accurately reflect orientation. This helps avoid glitches due to shocks and vibrations, as in the car dock scenario. However, rather than ignore the data entirely, we filter it with a very high time constant (5 sec). As a result, if the device is rotated while vibrating, even if we never pick up a clean sample, we will eventually detect the orientation switch. Of course, with a sampling period of 200ms, we're prone to aliasing, but that seems like a highly unlikely corner case.

Third, we restrict transitions to upside-down orientation to a much narrower range, both in terms of orientation and tilt. This should prevent upside-down mode from activating in most cases where it's not desired.

I also updated a lot of stale documentation, added a lot of documentation, and cleaned up a lot of the code, so as to make this (often subtle) code as transparent as possible.
indowOrientationListener.java
dcc490f20103a4bbd879ea040ce67779d211c2d7 25-Feb-2010 Romain Guy <romainguy@android.com> Fix the build.
iewGroup.java
a440b002aa59e1455bdfa2c5a1ca51c74bbc19ac 25-Feb-2010 Romain Guy <romainguy@android.com> Prevents ListView items children to modify properties of other children.
Bug #2464502

This fix introduce a new dispatch mechanism to tell views when they are temporary
detached/reattached from/to a ListView. This is very important to remove pending
callbacks or cleanup temporary states.

This change also modifies TextView which was relying on that callback in a very
particular case: a focused EditText in a ListView. The modified code acts only
when in that case, not if onStart/FinishTemporaryDetach() is called via
dispatch*() (== recycled views in ListView.)
iew.java
iewGroup.java
32637cf9fd71096becb4f43bde56e9137b8187e4 19-Feb-2010 Adam Powell <adamp@google.com> Merge "Recycle MotionEvents properly in GestureDetector"
45f2ca7f7d9fac55aa228e022f46ecbac8712a15 18-Feb-2010 Adam Powell <adamp@google.com> Recycle MotionEvents properly in GestureDetector
estureDetector.java
e36d6e277e49475076b7872d36ea6a5c5b996e9d 18-Feb-2010 Dianne Hackborn <hackbod@google.com> Work on issue #2263557: PMF3000 showing hybrid of portrait and landscape modes

This is a bunch of reworking of how configuration changes are handled:

- When orientation is changing (for whatever reason), the window manager no
longer tries to pre-emptively compute a new configuration. Instead, it
just determines change is happening and tells the window manager.
- The activity manager is now responsible for giving the window manager the
final configuration it is using. This is both so it knows whem the
activity manager is done with its configuration updates, and so the window
manager can use the "real" configuration.
- When an orientation or other configuration change is happening, freeze the
screen and keep it frozen until the activity manager has given us the
final configuration.
- The window manager can now send new configurations to its clients during
its layout pass, as part of a resize, if it has determined that it has
changed. This allows for a new View.onConfigurationChanged() API for any
view to easily find out when the configuration has changed.
- ViewRoot now also works with the activity thread to make sure the process's
current resources are updated to the new configuration when it receives one
from a window. This ensures that at the time onConfigurationChanged() and
other view callbacks are happening, the correct configuration is in force.
- There is now a sequence number associated with Configuration, which
ActivityThread uses to avoid using stale configurations. This is needed now
that it can receive configurations asynchronously from both the window
manager and activity manager.
- The hack for keeping the locale has been removed, and underlying problem
fixed by having Configuration initialize its locale to "unknown" instead of
a valid default value.
Window.aidl
WindowManager.aidl
urfaceView.java
iew.java
iewGroup.java
iewRoot.java
ab4835ee0df866a4f7982644742e2b758c50fdd7 18-Feb-2010 Romain Guy <romainguy@android.com> am 00b17659: Manual merge of 40245 (ed5c973fc23a6733fd473ad13b4eb317e74e9bb5) DO NOT MERGE.

Merge commit '00b17659bb4b2774580eea523c5f23b588105ab6' into eclair-plus-aosp

* commit '00b17659bb4b2774580eea523c5f23b588105ab6':
Manual merge of 40245 (ed5c973fc23a6733fd473ad13b4eb317e74e9bb5) DO NOT MERGE.
6f4a52a3f7c6bd87e7109d741441bff332a445a4 18-Feb-2010 Romain Guy <romainguy@android.com> am 67e9e9df: Manual merge of 40170 (b4a107d8269d1a75b8f270e0516c1fa3b517f8f9) DO NOT MERGE

Merge commit '67e9e9df929aad9139f1dc776b15f6c5d64f424e' into eclair-plus-aosp

* commit '67e9e9df929aad9139f1dc776b15f6c5d64f424e':
Manual merge of 40170 (b4a107d8269d1a75b8f270e0516c1fa3b517f8f9) DO NOT MERGE
00b17659bb4b2774580eea523c5f23b588105ab6 10-Feb-2010 Romain Guy <romainguy@android.com> Manual merge of 40245 (ed5c973fc23a6733fd473ad13b4eb317e74e9bb5) DO NOT MERGE.

Prevent infinite loop in the Phone UI.
nimation/Animation.java
67e9e9df929aad9139f1dc776b15f6c5d64f424e 10-Feb-2010 Romain Guy <romainguy@android.com> Manual merge of 40170 (b4a107d8269d1a75b8f270e0516c1fa3b517f8f9) DO NOT MERGE

Fix the lock screen.
iew.java
nimation/Animation.java
6c71d476f32adb5308a2a9e32660b66b2b7e6c1a 18-Feb-2010 Romain Guy <romainguy@android.com> am 8368ef0b: Manual merge of 40080 DO NOT MERGE Properly notifies listener when an animation is cancelled. Bug: #2428005.

Merge commit '8368ef0b670f8193f3161671b119e78b1fb659a1' into eclair-plus-aosp

* commit '8368ef0b670f8193f3161671b119e78b1fb659a1':
Manual merge of 40080 DO NOT MERGE
8368ef0b670f8193f3161671b119e78b1fb659a1 09-Feb-2010 Romain Guy <romainguy@android.com> Manual merge of 40080 DO NOT MERGE
Properly notifies listener when an animation is cancelled.
Bug: #2428005.
iew.java
nimation/Animation.java
2b95c2413838c2e2b127ebab8fb4fead7d52e460 09-Feb-2010 Jeff Sharkey <jsharkey@android.com> Added more @RemotableViewMethod methods, mutate ImageView.

Catch some View methods missed during the first pass of
marking with @RemotableViewMethod annotation. Also adds new
ImageView.setColorFilter(int) to match the android:tint XML
attribute.

When ImageView touches ColorFilter or alpha, mutate the
underlying Drawable. Fix NPE in StateListDrawable.mutate().
iew.java
c9fbaabc1bbf847b6e8bf2595068cbd990f3da55 17-Feb-2010 Adam Powell <adamp@google.com> XML attribute for overscrolling behavior
iew.java
3d0ff09e35521a97ec1cfe14d57c6868e271fe9a 16-Feb-2010 Adam Powell <adamp@google.com> Merge "VelocityTracker now uses pointer id instead of index when referring to multiple pointers. VelocityTracker now correctly handles multitouch. Addresses http://b/issue?id=2439030"
73d8fca6ba1991dbcbcd4686212d087a5ae8de2d 13-Feb-2010 Adam Powell <adamp@google.com> VelocityTracker now uses pointer id instead of index when referring to
multiple pointers. VelocityTracker now correctly handles
multitouch. Addresses http://b/issue?id=2439030
elocityTracker.java
b125dc5599468a09d82751cd76152071ae485afb 13-Feb-2010 Dianne Hackborn <hackbod@google.com> Fix MotionEvent pointer API.

Ooops. The API said that the pointer down and up actions contained
the pointer id, but it is actually the index. Actually it makes
much more sense for it to be the index, and those ACTION_POINTER_1_DOWN
etc. constants were stupid.
estureDetector.java
otionEvent.java
f5c6eff63d19a9f7a970a4f90619edac873c006d 10-Feb-2010 Gilles Debunne <debunne@google.com> Force layout on TableRows when column widths are shrinked or streched.

Also features some comment typos and import re-ordering.

Change-Id: I32cb14419d7d349064032718469daf62a0a72e3a
iewGroup.java
04994989351922e241089de2af540facc8688505 11-Feb-2010 Amith Yamasani <yamasani@google.com> Add a new KEYBOARD_TAP haptic feedback type for very short, low-latency vibration.

The minimum value varies from device to device, so this is useful for defining
the shortest and most efficient vibration. The VibratorService creates a Thread
when playing back vibration patterns, so this allows you to avoid thread creation
and associated scheduling delays by specifying a one-shot duration in the config
file.
apticFeedbackConstants.java
90d2db3d21d07c2a4b4cbbc558f5ec59d20098c3 12-Feb-2010 Dianne Hackborn <hackbod@google.com> Add Pointer Location to the window manager.

The window manager now has pointer location built into it.
Viva la touch!
indowManagerPolicy.java
4886d40091ebf1fd71c0942224c0b4ad7410f6a7 12-Feb-2010 Adam Powell <adamp@google.com> Fix javadoc link for SDK build breakage
iew.java
0b8bb4282a7d1afb24f8c4d5beb2ca4ecc731116 08-Feb-2010 Adam Powell <adamp@google.com> Overscrolling modifications. Overscroll will not allow the user to
scroll content out of view. Scrolling will slow down halfway to the
barrier point. API added in View. AbsListView, ScrollView,
HorizontalScrollView all use this API. Overscrolling uses haptic
feedback. Added scroll barrier pattern to config.xml.
apticFeedbackConstants.java
iew.java
5180d1c52209f6cd86f2273da6105205c505510a 10-Feb-2010 Romain Guy <romainguy@android.com> Prevent infinite loop in the Phone UI.
nimation/Animation.java
b4a107d8269d1a75b8f270e0516c1fa3b517f8f9 10-Feb-2010 Romain Guy <romainguy@android.com> Fix the lock screen.
iew.java
nimation/Animation.java
e1d683074b9a5cfa12c39e2e3d5a538599a9da75 10-Feb-2010 Adam Powell <adamp@google.com> am 87da8606: Manually merged VelocityTracker changes

Merge commit '87da860616009a86e260e49bbefffe12c1a06607'

* commit '87da860616009a86e260e49bbefffe12c1a06607':
Use a circular buffer in VelocityTracker
87da860616009a86e260e49bbefffe12c1a06607 09-Feb-2010 Adam Powell <adamp@google.com> Manually merged VelocityTracker changes
305a2eb8e5957a4f3db2734a8918faf1a39fb9a4 09-Feb-2010 Romain Guy <romainguy@android.com> Properly notifies listener when an animation is cancelled.
Bug: #2428005.
iew.java
nimation/Animation.java
18f75bd45cdbfaf175364552f2d0d0dc3b2835c0 09-Feb-2010 Adam Powell <adamp@google.com> am e88192b9: Cleanup fixes for ScaleGestureDetector

Merge commit 'e88192b9d2a8c364d8545471907c5baa275bb5f6' into eclair-plus-aosp

* commit 'e88192b9d2a8c364d8545471907c5baa275bb5f6':
Cleanup fixes for ScaleGestureDetector
e88192b9d2a8c364d8545471907c5baa275bb5f6 09-Feb-2010 Adam Powell <adamp@google.com> Cleanup fixes for ScaleGestureDetector
caleGestureDetector.java
5d36c46d2d8fb3f1bdc8fd1ff407e14b4433272a 08-Feb-2010 The Android Open Source Project <initial-contribution@android.com> am ad9bcb22: merge from open-source master

Merge commit 'ad9bcb22d05fbf130ac64254abd51a137e9a3d3f'

* commit 'ad9bcb22d05fbf130ac64254abd51a137e9a3d3f':
Fix x coordinate of the ACTION_UP event in TouchUtils.drag() method
Fixed Android animation framework, for using interpolators that do not start at 0.0f
Fix for GPS engines without separate session and engine status events.
Be tolerant of GPS session and engine on status messages arriving out of order.
GpsLocationProvider: Do not release wakelock until the GPS engine is fully off
ad9bcb22d05fbf130ac64254abd51a137e9a3d3f 05-Feb-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master
b09ef7b4fa388c1399a6359e239789ca0137aaac 05-Feb-2010 Adam Powell <adamp@android.com> Merge "Use a circular buffer in VelocityTracker"
4766defdd0778d7e0a656179d03a4865a9a40523 05-Feb-2010 Andreas Agvard <andreas.agvard@sonyericsson.com> Fixed Android animation framework, for using interpolators that do not start at 0.0f

There is a bug that affects interpolators that do not return 0.0f when given 0.0f as input. All default interpolators in Android do return 0.0f, which is why it hasn't been
noticed. Some custom interpolators can for example run backwards, returning 1.0f when given input 0.0f.
nimation/Animation.java
nimation/AnimationSet.java
2a9094d07915a077026a651a7773f94322bf7d23 04-Feb-2010 Dianne Hackborn <hackbod@google.com> Framework part of issue #2391576: Add method to start the Jit and call it
iewRoot.java
732ebb1bc3d7760fd424b84e0235ea9946100102 03-Feb-2010 Adam Powell <adamp@google.com> Fixed a regression in View.cancelLongPress
iew.java
ab905c87b7324d15715b78eaae7ef8558ad3bd10 03-Feb-2010 Adam Powell <adamp@google.com> Javadoc fixes to ScaleGestureDetector for SDK builds
caleGestureDetector.java
ce760cd6df920efff026c8757a371692ac54fad4 03-Feb-2010 Marc Capdevielle <marc.capdevielle@gmail.com> Use a circular buffer in VelocityTracker

Optimizes the frequently called addPoint() method while keeping the
same velocity computation.

Thx Cyril Mottier for help and tests.
elocityTracker.java
216bccf804db9c972b317620a27de6a8adf7fbfe 02-Feb-2010 Adam Powell <adamp@google.com> Updated GestureDetector to ignore multitouch if requested by the app
or if targetSdkVersion >= Froyo. Made ScaleGestureDetector
public. current.xml API updates for gestures.
estureDetector.java
caleGestureDetector.java
95f7850a9d9c7c4f020d06986300f4740fb6a52c 30-Jan-2010 Christopher Tate <ctate@google.com> Fix build: javadoc @link pointers need HTML-style #refname

Change-Id: I0e061516fce2bcf5dea401f58180f2ff396482ab
indowManager.java
ef73162887943e16587b8e737b19e59348338e8c 27-Jan-2010 Mike Lockwood <lockwood@android.com> Support for triggering the lockscreen while the screen is on:

Add new ALLOW_LOCK_WHILE_SCREEN_ON window manager flag, which when set
causes the window manager to put up the lockscreen after the
normal screen timeout has elapsed.

Add plumbing to pass PowerManager.userActivity() to the window manager policy.

Change-Id: I05adc52bad39c56031a08e8ec3cbcf5c2d9b9827
Signed-off-by: Mike Lockwood <lockwood@android.com>
indowManager.java
indowManagerPolicy.java
254cb446faa7cb13699d8150eb4cc4f44cb61a2d 28-Jan-2010 Dianne Hackborn <hackbod@google.com> More device admin.

- Clean up device policy manager APIs.
- Implement lockNow(). For now this just turns the screen off to lock the device.
indowManagerPolicy.java
43c9cdffb619f93d9d4525dffd05701dc9c8c4bf 27-Jan-2010 Romain Guy <romainguy@android.com> New View.dispatchDisplayHint() API.
Bug #2399147

This new API will be used by scrollable containers to tell children that they
are/are not displayed. This will allow lists to hide their filter popup window
for instance.
iew.java
iewGroup.java
f96a91abb6574eb4313946fa65ed69adbc413e44 26-Jan-2010 Grace Kloba <klobag@google.com> am 5b745762: am d5ada83c: ScaleGestureDetector needs to query the displaymetrics for the width/height on each touch down as orientation can change.

Merge commit '5b74576218055f1c9d31d9559255e8cf504cd662'

* commit '5b74576218055f1c9d31d9559255e8cf504cd662':
ScaleGestureDetector needs to query the displaymetrics
8ad96ae820e3fd6e8ad1eb070f0a2cf1356073a6 26-Jan-2010 Grace Kloba <klobag@google.com> am f8c7d06f: am 89e3c1ab: Merge "Fix the sloppy detection in the ScaleGestureDetector." into eclair

Merge commit 'f8c7d06ffa67015516b822a992513ab86aad1ad5'

* commit 'f8c7d06ffa67015516b822a992513ab86aad1ad5':
Fix the sloppy detection in the ScaleGestureDetector.
a948f4787b0bf842ed5a9000bd1e1a214dac0096 22-Jan-2010 Adam Powell <adamp@google.com> am 97b10853: am 5910cb53: Merge "Edge of screen slop detection for ScaleGestureDetector." into eclair

Merge commit '97b108532f04f72af035e372be7b827f77888650'

* commit '97b108532f04f72af035e372be7b827f77888650':
Edge of screen slop detection for ScaleGestureDetector.
cf635ae7c65de34f62a41cd330f25f4ee9ddc95b 22-Jan-2010 Romain Guy <romainguy@android.com> Bring back buttons in dialogs.
Bug #2390537
iewDebug.java
d5ada83c719d366d3063572ca6ce5ab8918fd39b 21-Jan-2010 Grace Kloba <klobag@google.com> ScaleGestureDetector needs to query the displaymetrics
for the width/height on each touch down as orientation
can change.

This should fix the problem where we can't pinch on the
top right corner when device is in landscape mode.
caleGestureDetector.java
8f9fbb0c45265a6f5da51cb3bc35362d8e5bc900 20-Jan-2010 Grace Kloba <klobag@google.com> Fix the sloppy detection in the ScaleGestureDetector.

Fix http://b/issue?id=2385061
caleGestureDetector.java
380b525220955ce4e4df8943b89082c7443ebfdd 20-Jan-2010 Adam Powell <adamp@google.com> Edge of screen slop detection for ScaleGestureDetector.
caleGestureDetector.java
bc9fdc92603112b3462024c8d0096b4eca3001c3 19-Jan-2010 Romain Guy <romainguy@android.com> Make sure the drawing cache is invalidated when reattaching a view.
Bug #2373677
iewGroup.java
3e22d199a0434a6450eccc5f75a1ad8141878de0 19-Jan-2010 Adam Powell <adamp@google.com> am b5a5a397: am 56a17690: Merge "TransformGestureDetector is now ScaleGestureDetector - scope reduced. N1 screen can\'t reliably handle translation and scaling at the same time." into eclair

Merge commit 'b5a5a39716502be2cd325a6f9b393e155c0636ee'

* commit 'b5a5a39716502be2cd325a6f9b393e155c0636ee':
TransformGestureDetector is now ScaleGestureDetector - scope reduced.
d68478467e3f837511196c80891d7245d0e163df 13-Jan-2010 Dianne Hackborn <hackbod@google.com> First pass at new device policy and administration APIs.

This adds new DevicAdmin, DevicePolicyManager, and DeviceAdminInfo classes.
See the java docs for each on documentation on them. Basically: a DeviceAdmin
is what you derive from to administer a device; DevicePolicyManager is what you
use to apply and check your policy requirements and perform other administration
tasks.
nputmethod/InputMethod.java
52e2ef8cac0cd6d78c2c2f5783846e03c636a54c 14-Jan-2010 Romain Guy <romainguy@android.com> Update ListView's children when the drawing cache color hint changes.
Bug #2371777
iew.java
ae542ff055301a4c3c8a18e8da1739df3a771958 14-Jan-2010 Adam Powell <adamp@google.com> TransformGestureDetector is now ScaleGestureDetector - scope reduced.
N1 screen can't reliably handle translation and scaling at the same time.
caleGestureDetector.java
ransformGestureDetector.java
a77f93f76a40128ecc3d017ead6d1105f96b282a 13-Jan-2010 Leon Scroggins <scroggo@google.com> am ace8addc: am 2edd6826: Create a new ImeOption that disables fullscreen in landscape, and use it.

Merge commit 'ace8addce47efc03be5038eef48d7fb066b14aae'

* commit 'ace8addce47efc03be5038eef48d7fb066b14aae':
Create a new ImeOption that disables fullscreen in landscape, and use it.
908c48587d18e787a0511b1fa544d88d13b6bbb5 13-Jan-2010 Adam Powell <adamp@google.com> am 202a6734: am 8acdb201: Added TransformGestureDetector (still in progress) Modified VelocityTracker to track multiple pointers Added TransformTest

Merge commit '202a6734fd39289257955d404edf7a1165f6e480'

* commit '202a6734fd39289257955d404edf7a1165f6e480':
Added TransformGestureDetector (still in progress)
8acdb201bdad2cd03c07ebad9cda29f7971ed164 07-Jan-2010 Adam Powell <adamp@google.com> Added TransformGestureDetector (still in progress)
Modified VelocityTracker to track multiple pointers
Added TransformTest
ransformGestureDetector.java
elocityTracker.java
2edd68260f26cbd6eddd0df16404bb6bcb22b3b6 12-Jan-2010 Leon Scroggins <scroggo@google.com> Create a new ImeOption that disables fullscreen in landscape, and use it.

EditorInfo:
Add a flag to tell the InputMethodService to never go into fullscreen
mode.

InputMethodService:
When the new flag is set, onEvaluateFullscreenMode always returns
false.

WebTextView:
Use the new flag, along with IME_FLAG_NO_EXTRACT_UI. Fixes
http://b/issue?id=2358360
nputmethod/EditorInfo.java
980a938c1c9a6a5791a8240e5a1e6638ab28dc77 09-Jan-2010 Romain Guy <romainguy@android.com> Deprecate fill_parent and introduce match_parent.
Bug: #2361749.
iew.java
iewGroup.java
iewRoot.java
indow.java
indowManager.java
d9328513da1ed413273afa30a499ee1dcdab1fb4 05-Jan-2010 Suchi Amalapurapu <asuchitra@google.com> Turn off debug flag
indowOrientationListener.java
63104edbf06e16642bd0a02d34e0ae3f9aa655aa 15-Dec-2009 Suchi Amalapurapu <asuchitra@google.com> Add four way directional rotation to WindowOrientationListener
indowOrientationListener.java
de2606dcd36e9dfa49c42dbc68c539505d5ff8d4 19-Dec-2009 Dianne Hackborn <hackbod@google.com> Don't perform app transition of the app is not currently visible.

Yet more special casing for the window manager... try really hard,
if we are performing an activity transition that is behind an
opaque window (like say the lock screen or status bar) to just not
do it. And, just as important, do a reasonable transition away from
whatever is on top.

Examples:

- If the lock screen is up, and you get a call or press the
emergency dialer button, we fade from the lock screen to the
new UI, instead of fading to the animation going on between
the old and new.

- If you are in something hiding the lock screen, like the
in-call screen, and that is hidden, then fade back to the
lock screen.

- If you select an item from the status bar, then have the
new item displayed behind it as the status bar rolls up
rather than seeing a second animation. (In fact this can't
always be done because we may not start the transition to
the new thing until the status bar is already going away.
But for most cases we can do this with just one anim.)
indowManagerPolicy.java
83e10959795fac6438ef20471b3612421b55a9d4 18-Dec-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change I1d1ed967

* changes:
Tap delays; making tap UI feel better. Addresses bug 2317577
ccc8305ae9fd59ee829d45c62ac79cef7e3df179 18-Dec-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change I58acbafc

* changes:
Fix for http://b/issue?id=2323459 and generics correctness on a WeakReference
e14579bac59aa84523c2bfbfc3f28c7842ec664d 17-Dec-2009 Adam Powell <adamp@google.com> Tap delays; making tap UI feel better.
Addresses bug 2317577

Views now will not enter PRESSED state until
ViewConfiguration.getTapTimeout() milliseconds have elapsed. This
prevents scrolls and other gestures from causing views to enter
PRESSED state prematurely.

Quick taps within the same view still work as expected. There is now a
PREPRESSED state flag within View to help track quick taps.

If tapped quickly, views will remain pressed for
ViewConfiguration.getPressedStateDuration().

Tap timeout has been changed to 115ms. Pressed state duration has been
changed to 125ms.
iew.java
iewConfiguration.java
38e951b62ed956501b11f0715e23e3bf70942f6d 17-Dec-2009 Romain Guy <romainguy@android.com> Write HierarchyViewer's data in UTF-8.

This change fixes issues with HierarchyViewer running on phones with a non en locale.
The biggest problem occurred with spanish locales.
iewDebug.java
1549dd1e6801a0240a2e2769c91181698910f98d 15-Dec-2009 Maryam Garrett <mkamvar@google.com> Fixes the IME not triggering on touch bug.

http://b/issue?id=2328818

Change-Id: I98cb3b5c3ba49d35e2b031e4fabd050bccccfa81
iew.java
58acbafcf2263232c4805cf7a39196acf03763d9 15-Dec-2009 Adam Powell <adamp@google.com> Fix for http://b/issue?id=2323459 and generics correctness on a WeakReference

ViewStub.setVisibility now passes View.GONE through. Even though this doesn't
make a lot of sense to do in practice, it preserves the value for future
ViewStub.getVisibility calls.
iewStub.java
236092a36216c79507ec19eb207831810caced19 15-Dec-2009 Romain Guy <romainguy@android.com> Fixes crash in HierarchyViewer when windows hash code exceed int capacity.
Bug: 2321018
iewDebug.java
39f0efba92a4420f77e3abc53c367ea3cacde3cf 11-Dec-2009 Maryam Garrett <mkamvar@google.com> Fixes context-menu trigger behavior after scroll in TextView

This change fixes the context menu trigger behavior while
the user is selecting via touch. How if a user is selecting
text via dragging their finger, to trigger the context menu
they will have to lift their finger up, then issue a
longpress. This is consistent with the behavior of selecting
via the trackball.
iew.java
326d808b858359464b2ffeb84f2e0a8e0c79b600 10-Dec-2009 Adam Powell <adamp@google.com> Added View#dispatchViewVisibilityChanged and View#onDispatchVisibilityChanged; updated api; tests

Reverted a change to InstrumentationTestCase that would have allowed @UiThreadTest on setUp() methods of tests.
iew.java
iewGroup.java
ea4823c1c7fdee093789850d0f76a3df22ca58d2 09-Dec-2009 Romain Guy <romainguy@android.com> Improve javadoc in View.
iew.java
237c1ceea36024cf4194212e713806e3ce8a1c49 08-Dec-2009 Romain Guy <romainguy@android.com> Improve exception message thrown when a View's state is of the wrong type.
iew.java
iewDebug.java
f2feb0faa266e5e0844c20a8adb9cdb5f360322f 04-Dec-2009 Romain Guy <romainguy@android.com> am 48a65d99: Merge change I8c5f2fc3 into eclair

Merge commit '48a65d99cba33db3af2e05982a6825b883be2030' into eclair-mr2

* commit '48a65d99cba33db3af2e05982a6825b883be2030':
Fix invalidate code path (#2273209).
ecd80ee31c23ac067bb420f44f046682c499e83c 04-Dec-2009 Romain Guy <romainguy@android.com> Fix invalidate code path (#2273209).

Cached views would, in some situations, not update if they contained an
animating child. This was caused by clearing the dirty cache flag too
early in View.buildDrawingCache().

Approved by Dr. No mcleron.

Change-Id: I8c5f2fc3e6605657e0da625d60d50b55bb133666
iew.java
44000eb2a2340b1a47eaa587d4829810e04cbcdc 03-Dec-2009 Mike Lockwood <lockwood@android.com> am 678c2e35: Merge change I9ef88863 into eclair

Merge commit '678c2e35768a5426b4ad8f67c836008e7751a353' into eclair-mr2

* commit '678c2e35768a5426b4ad8f67c836008e7751a353':
Add WindowManagerPolicy.OFF_BECAUSE_OF_PROX_SENSOR to indicate screen was turned off by the proximity sensor.
435eb6464c1f326caf8179438a5401f358f0d7ac 03-Dec-2009 Mike Lockwood <lockwood@android.com> Add WindowManagerPolicy.OFF_BECAUSE_OF_PROX_SENSOR to indicate screen was turned off by the proximity sensor.

Part of a fix for bug b/2300622 (Proximity sensor always blows up the lock screen while in call)

Change-Id: I9ef888638b19540a78a34507d52ff522f505102f
Signed-off-by: Mike Lockwood <lockwood@android.com>
indowManagerPolicy.java
db727a8a0384ba2ac4dcb4bf93e1dd54e3062b28 29-Nov-2009 Mike Lockwood <lockwood@android.com> Remove some unused window manager methods.

Change-Id: I1c28150416b92b96b9f434270652c4be2613434c
Signed-off-by: Mike Lockwood <lockwood@android.com>
indowManagerPolicy.java
df7edf5d92ae3e708e802b68014864fe13184060 25-Nov-2009 Joe Onorato <joeo@android.com> am 55896f3c: Merge change Ib71193bf into eclair

Merge commit '55896f3c5121e73e3f657ed14e7ee8937ad72449' into eclair-mr2

* commit '55896f3c5121e73e3f657ed14e7ee8937ad72449':
Fix 2283089 - ERD47B: Force Close of Launcher2 process when hitting Search button to invoke QSB
b71193bffc1d2ec60efd987300e2e85e678aa6f0 25-Nov-2009 Joe Onorato <joeo@android.com> Fix 2283089 - ERD47B: Force Close of Launcher2 process when hitting Search button to invoke QSB

In this case, as opposed to what was happening in 1977685, the focused view wasn't the one that was
directly removed, it was a child of the removed view.
iewRoot.java
fb73f79340375013225618a5d87f46b958f698ef 20-Nov-2009 Mike Lockwood <lockwood@android.com> Add window manager support for overriding button and keyboard backlight values.

The new backlightBrightness field works similarly as the existing WindowManager.LayoutParams.screenBrightness field

Needed for bugs:
b/2233655 (under low ambient light the touch keys remain illuminated during video playback and never timeout)
b/2221079 (Backlight for home/search/back/etc buttons should turn off when in dock in night mode)

Change-Id: I60dfecdc7bb653b0db38094464de651220b3d438
indowManager.java
a2f4c2543a7f78b77491c701230e8f406dcca540 18-Nov-2009 Dianne Hackborn <hackbod@google.com> am 1d62ea9d: Fix issue #2249821: Unable to start passion in safe mode

Merge commit '1d62ea9d8c2646d198b6967e2c6ae3dad5c18f9e' into eclair-mr2

* commit '1d62ea9d8c2646d198b6967e2c6ae3dad5c18f9e':
Fix issue #2249821: Unable to start passion in safe mode
1d62ea9d8c2646d198b6967e2c6ae3dad5c18f9e 17-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2249821: Unable to start passion in safe mode

Holding down the trackball now works.

Also fix a little API check warning from Intent.

Change-Id: Icb1f901535cb521917bf7f847a93c4ff7861d20e
WindowManager.aidl
9db3d07b9620b4269ab33f78604a36327e536ce1 13-Nov-2009 Jean-Baptiste Queru <jbq@google.com> eclair snapshot
apticFeedbackConstants.java
Window.aidl
WindowManager.aidl
WindowSession.aidl
eyEvent.java
ayoutInflater.java
otionEvent.java
awInputEvent.java
urface.java
urfaceHolder.java
urfaceView.java
iew.java
iewConfiguration.java
iewGroup.java
iewRoot.java
iewStub.java
olumePanel.java
indow.java
indowManager.java
indowManagerPolicy.java
nimation/Animation.java
nputmethod/InputMethodInfo.java
nputmethod/InputMethodManager.java
949ffa3da5231772425c3bde50caeab6c4d08ec5 10-Nov-2009 Marco Nelissen <marcone@google.com> am 11cff8cd: Merge change Ie211adae into eclair

Merge commit '11cff8cd30f03b5adb137e985532543da5e960c4' into eclair-mr2

* commit '11cff8cd30f03b5adb137e985532543da5e960c4':
Add a way for wallpapers to know the delta between virtual screens.
bf6956b1d95442e9d9c483894d578fe6b7044cbb 10-Nov-2009 Marco Nelissen <marcone@google.com> Add a way for wallpapers to know the delta between virtual screens.
Window.aidl
WindowSession.aidl
iewRoot.java
2934bc1c438b6f00942dcc5c18cbe7ecfa8785c0 10-Nov-2009 Dianne Hackborn <hackbod@google.com> am 644693f4: Merge change Ic42763b1 into eclair

Merge commit '644693f4caf2364a0e811dca13304788e2c8fee8' into eclair-mr2

* commit '644693f4caf2364a0e811dca13304788e2c8fee8':
Fix issue #2242440: Window screen brightness attribute is broken
badc47ecd1677d5f53bb16f8f30c158a879f5832 09-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2242440: Window screen brightness attribute is broken

Um okay, that was dumb. And I guess this means it is time to make 6.xml.

Change-Id: Ic42763b1c8a13448cf6db20b4cd6daadc7786ac1
indowManager.java
15b9de8cf217c315acb57044c43a9b12da57b6c4 06-Nov-2009 Romain Guy <romainguy@android.com> am 1d5b3a63: Fix the build

Merge commit '1d5b3a631cfcbfd2ea264f29a11a1366a16593b0' into eclair-mr2

* commit '1d5b3a631cfcbfd2ea264f29a11a1366a16593b0':
Fix the build
1d5b3a631cfcbfd2ea264f29a11a1366a16593b0 06-Nov-2009 Romain Guy <romainguy@android.com> Fix the build

Change-Id: Id7514858594772ab79c0f3db745b00f0bb59218b
iew.java
05abe8d01d91389b4b52111ed525aa4c4f4e1b71 05-Nov-2009 Romain Guy <romainguy@android.com> am 131564d2: Merge change I3bbfb4f9 into eclair

Merge commit '131564d26ac5b7f963c60802089b9fe1472659f7' into eclair-mr2

* commit '131564d26ac5b7f963c60802089b9fe1472659f7':
Remove unused field and add new API to control the children drawing order.
293451e4f005a26386db873f5192f86585cc79bc 04-Nov-2009 Romain Guy <romainguy@android.com> Remove unused field and add new API to control the children drawing order.

Approved by: xav, hackbod, mcleron.

Change-Id: I3bbfb4f96e3c9adedbb68d78703059a2df1e2013
iewGroup.java
4d7860d408d248aaebed973e7f774c02efc290f8 03-Nov-2009 Romain Guy <romainguy@android.com> am 9ed30f93: Merge change I96444af2 into eclair

Merge commit '9ed30f93f6149ede5885b9b8c0e22595876c6c84' into eclair-mr2

* commit '9ed30f93f6149ede5885b9b8c0e22595876c6c84':
Unhide View.isOpaque().
732046f87412dc5da4e7290c9f7c4bd7fa3071e1 03-Nov-2009 Romain Guy <romainguy@android.com> Unhide View.isOpaque().

Change-Id: I96444af2a7e66a330a2c4b3fa0a173ec5ab4ed40
iew.java
c6bead14fe6fe70bcfd8802ee9f0259476a074ce 23-Oct-2009 Dianne Hackborn <hackbod@google.com> am 7580493b: Implement feature #2117336: Create event communication APIs for live wallpaper

Merge commit '7580493b014a2c7ea883cd291255798dc72ebbff' into eclair-mr2

* commit '7580493b014a2c7ea883cd291255798dc72ebbff':
Implement feature #2117336: Create event communication APIs for live wallpaper
7580493b014a2c7ea883cd291255798dc72ebbff 21-Oct-2009 Dianne Hackborn <hackbod@google.com> Implement feature #2117336: Create event communication APIs for live wallpaper

Note: currently only implements an async version (no result), and not yet
actually tested.

Change-Id: Id47ed045a4b0eb309ea8c58daf41a0e03eff1d3a
Window.aidl
WindowSession.aidl
iewRoot.java
3d4247ef9541afc88af5ac8d4634f331b20ed5cb 22-Oct-2009 Mike Lockwood <lockwood@android.com> am fee0f577: Merge change I99dc6477 into eclair

Merge commit 'fee0f5773335e42f4ffdf2d2d1c344ceee3ccb33' into eclair-mr2

* commit 'fee0f5773335e42f4ffdf2d2d1c344ceee3ccb33':
Add WindowManagerPolicy.allowKeyRepeat() method for disabling key repeats.
3d0ea72dd74bb0a7ad082a82dbf53df11a4f487c 22-Oct-2009 Mike Lockwood <lockwood@android.com> Add WindowManagerPolicy.allowKeyRepeat() method for disabling key repeats.

Part of a fix for bug b/2198537

Change-Id: I99dc64772fa7644b12432d5549603025196ea3e2
Signed-off-by: Mike Lockwood <lockwood@android.com>
indowManagerPolicy.java
d443ba4534b88fe6dfd3bd8f1dd1dc8451ed6734 10-Oct-2009 Jack Palevich <jackpal@google.com> Prevent transparent region from getting out of sync with Surface Flinger

The ViewRoot is responsible for calculating the current view's surface's
transparent region and reporting this to the window server, which in
turn notifies Surface Flinger.

To minimize cross-process traffic, ViewRoot keeps track of the
most recent transparent region that it has reported to the window
server, and only sends updates when the region shape changes.

ViewRoot is effectively shadowing the internal state of the window
server, and usually this works fine, because ViewRoot is usually the
only thing that changes this value.

But when the surface is recreated, the window server resets the
transparent region to empty. So in order to properly update the window
server we need to reset our copy of its state to empty too.

Fixes issue #2133090: GL Gears runs at half speed in some cases
iewRoot.java
fd71653f6a37d692d7afba73b68793b3cdb6944d 12-Oct-2009 Mike Reed <reed@google.com> add local flag to enable FPS w/o having to enable Config.DEBUG, which can have unintended costs
iewRoot.java
1bb5550107eae60993dc35f2e917cb664f841255 10-Oct-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change I85f598e0 into eclair-mr2

* changes:
Prevent transparent region from getting out of sync with Surface Flinger
61a6e689188cd8743905e4f7b10440c7e50823f3 10-Oct-2009 Jack Palevich <jackpal@google.com> Prevent transparent region from getting out of sync with Surface Flinger

The ViewRoot is responsible for calculating the current view's surface's
transparent region and reporting this to the window server, which in
turn notifies Surface Flinger.

To minimize cross-process traffic, ViewRoot keeps track of the
most recent transparent region that it has reported to the window
server, and only sends updates when the region shape changes.

ViewRoot is effectively shadowing the internal state of the window
server, and usually this works fine, because ViewRoot is usually the
only thing that changes this value.

But when the surface is recreated, the window server resets the
transparent region to empty. So in order to properly update the window
server we need to reset our copy of its state to empty too.

Fixes issue #2133090: GL Gears runs at half speed in some cases
iewRoot.java
a62e4705d51e6f36ba1c02350813b6a12af49703 08-Oct-2009 Romain Guy <romainguy@android.com> Fixes #2175599. Prevents an NPE when AttachInfo is null.

This bug was introduced by a change made to query the window's opacity.

Approved by mcleron.

Change-Id: I95319bde72b0faade095bbbbb317e84b9be8efa8
iew.java
3d163f073f5cf3b3bf0287fc7d60fabce0269748 08-Oct-2009 Dianne Hackborn <hackbod@google.com> More fix #2163209: alarm clock rings but is hidden behind lock screen

There was another way we could ignore the application windows flags
while the lock screen was displayed. This is the infrastructure to
deal with that.

Change-Id: Id8c9cb2f7081df6757ccb797a7cde618e82f7b38
indowManagerPolicy.java
35b38cefcc92f1ed599a652ac5736ab9e9e75039 07-Oct-2009 Romain Guy <romainguy@android.com> Improve drawing cache speed by selecting the correct opacity and keeping a 32 bits
format when the window is 32 bits.

Change-Id: I46762def67fa7d6a331a75fa8660c6422394ccf2
iew.java
iewRoot.java
29e4a3c566f435c32f0b95e4ac8e8b33cac6faba 01-Oct-2009 Dianne Hackborn <hackbod@google.com> Update from API review.

Change-Id: I16b1c566f91167aac9615ac59dd297a154c828ea
urfaceView.java
iew.java
290947bbf830a1ea335b01bcd8155c699b6713ca 30-Sep-2009 Mike Cleron <mcleron@google.com> Git sucks
iew.java
94d691499bdce019421238ebdb6e3d48171eeefd 29-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix issue #1930911: Crash in system process

Ensure that we do all the work for removing a window's view
hierarchy in that window's thread.

Change-Id: Ib7c1701aee6b541b75fd1a680f6987f959f2ba88
iewRoot.java
52f0a6495277469bd7ede29ef89bc34cb2aa8a85 29-Sep-2009 Mike Cleron <mcleron@google.com> Finish off java API to allow fading scrollbars
iew.java
ebd45e5ca9690110ecb50c26b0b791054ee4c0ef 29-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change I55edce63 into eclair

* changes:
Fix issue #2149145: Safe Mode does not work on Sholes device
fe81d386a818b386ffc0d5a789236531ab4e264f 28-Sep-2009 Mike Cleron <mcleron@google.com> Remove obsolete links; start at a method to turn on fading scrollbars
iew.java
6af0d50a8edb101d9da1306b6d85abf5dd3f9a30 28-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2149145: Safe Mode does not work on Sholes device

The APIs for checking whether keys are held down now also look
at virtual keys.

However it turns out there is less than a second between the time we
start the input thread and check for safe mode, so there is not enough
time to actually open all of the devices and get the data from them
about the finger being down to determine if a virtual key is down.

So now you can also hold DPAD center, trackball center, or s to
enter safe mode. Also give some vibrator feedback.

Change-Id: I55edce63bc0c375813bd3751766b8070beeb0153
apticFeedbackConstants.java
indowManagerPolicy.java
3ecd58c650371206008efd687933c370e4e28a34 28-Sep-2009 Mike Cleron <mcleron@google.com> Fix build
iew.java
f116bf8884b5b58aae261d148003811aa4a7c6e9 28-Sep-2009 Mike Cleron <mcleron@google.com> Fading scrollbars return. But you have to opt in.
iew.java
iewConfiguration.java
2397640740e053af7ef4aa742467f723186d5ad7 27-Sep-2009 Dianne Hackborn <hackbod@google.com> Maybe fix issue #2145012: Array bounds exception in touch event processing

Change-Id: I223d9ae29f22f08cb8426ccd8bbadeedd5db3fc3
otionEvent.java
3e2ac8843489e83c4171aabcfe98769b5159a5c8 25-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix/improve issue #2142662: too easy to click a link/item instead of fling

Reduce the slop.

Change-Id: If255e68cc8092e7f746a91c0fea27abfc5292b73
iewConfiguration.java
3b3e145d3c41fd68974e08f799b1fd1f8f060cf0 25-Sep-2009 Dianne Hackborn <hackbod@google.com> A variety of work on animations.

- The lock screen now fades in and out.
- Fixed a bug where we would accidentally freeze the screen when switching
to an activity with a different orientation than the current (but
the screen itself is in the current orientation). This would mess up
the animations on the car dock.
- New API to force a particular animation for an activity transition
(untested).
- New wallpaper animations.
- Resources now uses the next API version when in a development build,
to help applications being developed against such builds.

Change-Id: I2d9998f8400967ff09a04d693dc4ce55f0dbef5b
WindowManager.aidl
indowManager.java
indowManagerPolicy.java
ffa424800d0338b8b894aef2ea1e3e3344cbda7a 24-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2133206: dialogs/menus should auto-dismiss when screen turns off

Lot of infrastructure for more things to go away when "clear system dialogs"
happens, and now do this when we turn on the lock screen.

Change-Id: I567130296fe47ce82df065ed58ef21b37416ceaf
Window.aidl
WindowManager.aidl
iew.java
iewRoot.java
5baba1698964194daa02d30d4dd93807b08c9379 24-Sep-2009 Dianne Hackborn <hackbod@google.com> Newer animations.

Change-Id: I1bb8e52f91dc60a6ec9496e2c66623bc8080b95d
nimation/Animation.java
9bfb707597898f54722460b48588007b682f3e2a 22-Sep-2009 Dianne Hackborn <hackbod@google.com> Various fixes and improvements to window, activity.

- New meta-data you can add to a dock activity to have it launched by the
home key when the device is in that dock.

- Fix a deadlock involving ActivityThread's internal content provider lock.

- New window flag to have a non-secure keyguard entirely dismissed when a
window is displayed.

- New WindowManagerPolicy APIs to allow the policy to tell the system when
a change it makes during layout may cause the wall paper or
overall configuration to change.

- Fix a bug where an application token removed while one of its windows is
animating could cause the animating window to get stuck on screen.

Change-Id: I6d33fd39edd796bb9bdfd9dd7e077b84ca62ea08
indowManager.java
indowManagerPolicy.java
bfe319e06aa56c081d0d94d64a8181291d7f7388 21-Sep-2009 Dianne Hackborn <hackbod@google.com> Turn animations on by default.

Add API to skip the animation for a particular start activity, so that
a latter better one can be used.

Fix Theme.NoDisplay to actually work.

Fiddle with various animations: don't do a different animation for task
switching, try a scale animation for switching in/out of the wallpaper.

Adjust the animation duration so that at normal speed we have something
more like the slower animation option (so slow is now the default).

Change-Id: Ieba9f3db0bd9a762a19b327a3ecccbc7b547893d
indowManagerPolicy.java
6136b7ef169a65a02a6660be636fcec370c68145 18-Sep-2009 Dianne Hackborn <hackbod@google.com> Show the live wallpaper on the lock screen.

This also takes care of the problem of system dialogs like the
crash dialog causing the status bar to dim behind the lock screen.

On the down side, the fade transition from the lock screen is
now gone, and I'm not sure how likely it is for it to return.

Change-Id: I7f9e6d0f3510a1fdbbe6ad252d986bd85a16475d
indowManagerPolicy.java
c17f07aa0468424e3475d7761313b761372d1860 17-Sep-2009 Mike Lockwood <lockwood@android.com> Revert "Don't activate keyguard if screen is turned off while proximity sensor is active."

This reverts commit ddfe879b783ad72603308e28e8f683454464684e.
indowManagerPolicy.java
d03b880836bcc4fae83a95458e0709cd45aa6313 16-Sep-2009 Romain Guy <romainguy@android.com> Change Theme.Light's background back to pure white.

Go away gray!

Change-Id: Ice59e585bfd01c02c0fa7fd74a8b13e548248f9e
ayoutInflater.java
93e462b79d6896da10e15e74c5aec6beb098dddf 16-Sep-2009 Dianne Hackborn <hackbod@google.com> Implement issue #1780928: Need support hiding nav keys.

This implements support for devices whose hardware can hide
their navigation keys. It works much like the existing keyboardHidden
configuration, and for compatibility uses the same configuration
change bit.

Also add FLAG_TURN_ON_SCREEN for windows, which has the system
cause the screen to be turned on when the window is displayed.
Great fun when used with FLAG_SHOW_WHEN_LOCKED!

Change-Id: I0b867f19af85cfd8786a14cea194b34f7bdd9b7a
indowManager.java
1cd403eaac24e0e84619dea07e2d1d60e58e1fd2 15-Sep-2009 Dianne Hackborn <hackbod@google.com> Add SurfaceView API to put surface on top of window.

Change-Id: I9db84ee63a362e54ebc2f5b24a20ae5bdc3588bf
urfaceView.java
8d37426c754e9822feaa8c6cc0b7c13e8523e217 15-Sep-2009 Dianne Hackborn <hackbod@google.com> Various fixed for back key handling.

My last change was far from perfect. Hopefully this gets us
a little closer.

Change-Id: I413e55b6af42400b565de3040859d25d668bc9d2
eyEvent.java
83fe3f559249451706957b1a5f660b2b8272f114 13-Sep-2009 Dianne Hackborn <hackbod@google.com> Last big work on #1991910: Make swipes work with capacitive keys

This takes care of allowing us to cancel the back button. The
back button is a bear because it is strewn all over the place --
everywhere you can close something, there is some code looking
for the back button that now needs to deal with being canceled.

The main things changed are activity (of course), dialog,
input method, search dialog. There are some other misc places
in the framework (and some I missed here that I will get in a
second pass).

To facility all of this, the key dispatching APIs now provide
a lot more support for dealing with looking for cancelled keys,
and incidentally also provide an actual API for catching long
key presses. This also helped clean up the code in PhoneWindow
where it deals with all of the combinations of key pressed and
releases. (And also allows people to override
Activity.onKeyLongPress() to provide a different long press
action for a standard key like search.)

And while I was doing this, I reworked how we detect long
presses by having this be part of the key event delivered by
the window manager. This should greatly reduce (hopefully
outright eliminate) the problems with long presses being
mis-detected when an application is being slow.

Change-Id: Ia19066b8d588d573df3eee6d96e1c90fdc19f57d
eyEvent.java
iew.java
iewRoot.java
d023f9a9a90705410250cd86bc6446c738423a99 15-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 24829 into eclair

* changes:
Some optizations to wallpaper drawing/scrolling.
19382ac1a4e4e7c23a1346d299368763f149de9c 12-Sep-2009 Dianne Hackborn <hackbod@google.com> Some optizations to wallpaper drawing/scrolling.

First, fix some issues with the final wallpaper bitmap
we use: ensure it is always 16bpp, and make sure dithering
of its bitmap is turned off. We take of dithering
when loading, to make sure we don't use it when drawing.

Also add new APIs to return the wallpaper with the equivalent
of Launcher's old FastBitmapDrawable. As doing this, also load
the default wallpaper the same way as custom ones, taking care to
resize it as needed at load time.

Finally implement a mechanism for the window manager to wait
for the wallpaper to redraw at its new position before returning
from the application's call to change the offset. This ensures
that the wallpaper better tracks the application. Note that there
is a timeout in this wait that is relatively short, and if it
expires we will run for a while without waiting.

Change-Id: Ife449437746da85958bd447e0a6cf3d2223b398c
Window.aidl
WindowSession.aidl
iewRoot.java
8c11e31143726c9457280c6c0ec83472763c0de9 15-Sep-2009 Romain Guy <romainguy@android.com> Fix a possible NPE in View.

Change-Id: Ieebd176e1f42c78e298aca973e9e5eed2dc3c6d9
iew.java
8cae124af2142687a6833dbaab8a43df6dd67b43 10-Sep-2009 Dianne Hackborn <hackbod@google.com> Various cleanup around resources and nine-patches.

Remove the stuff that doesn't use preloaded drawables when in
compatibility mode, since this works fine ever since we were able
to deal with drawables in a different density than the canvas.

Change the snapshot function on View to return a snapshot at
the same size that will actually be drawn on screen (when in
compatibility mode), to be able to show scaling artifacts and
all.

This change was original an attempt to fix issue #2101917: Text
field edges appears to be improperly rounded. That turns out to
probably be something deeper in the graphics system, but also
included here is the debugging code I did to try to track down the
problem to make it easy to turn on again later.

Change-Id: I34bfca629639c7ff103f3989d88874112ef778d9
iew.java
6b7f1a62b5094fc72765a2537ee0760572df0950 10-Sep-2009 Mathias Agopian <mathias@google.com> fix [2074427] SurfaceView doesn't disappear on GONE
urfaceView.java
eb034652c2037a47ebfd99779e8383bb8bb528af 07-Sep-2009 Dianne Hackborn <hackbod@google.com> Implement all of the infrastructure for configuring wallpapers.

Actually being able to configure a wallpaper relies on additional
work in the launcher and wallpapers that will be in another change.
Also note that this breaks all existing wallpapers, since they now
need to include a meta-data item about themselves. This also
will be fixed in another change.

Change-Id: I97d2c2bd07237abc32f92b9147c32530a2f73c71
nputmethod/InputMethodInfo.java
0586a1b77a788a119166a37fccd909bf9ed65f23 07-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2095422: Some fades from opaque to transparent don't work

ViewRoot was using Surface.clear(), which has different behavior
in different processes -- in the system process it would kill the
surface, causing all windows in that process to immediately disappear
instead of animating away.

This change makes Surface.release() public and uses that instead. It
also renames Surface.clear() to Surface.destroy().

Also fixed some issues in the window manager that were causing the
wallpaper to not get immediately resized when the orientation changes
and its target window is removed and re-added.

Change-Id: I2a992e365cf5747511f0bf1193db32dc2525b218
urface.java
iewRoot.java
25994b4306a256b88d79159106834c9f114e6943 04-Sep-2009 Dianne Hackborn <hackbod@google.com> Wallpapers: new transitions, hiding when not visible, other cleanup.

This is work on the transitions with wallpapers. There are now new
animations specifically for leaving the wallpaper and returning to
it, which allow us to have a consistent animation when entering home
and returning to it. I also renamed the existing animations across
wallpapers, and cleaned up some junk in the various interpolators.

This also now hides the wallpaper surface when it is not visible,
to get rid of the wallpaper flickers people complained about albeit
in a somewhat brutal way. :) (Though really returning us to the
previous behavior with the same previous bugs and name back to them
not being very visible, yay!) There is are also some bug fixes
here and there about managing the wallpaper visibility that this
change revealed.

Change-Id: I913990a9a81651728122ed2e1101b75ed2c36fcb
indowManagerPolicy.java
e8853fc57093e781fa7c659c6eb4da3be9f8695a 04-Sep-2009 Mike Reed <reed@google.com> also expose onDrawHorizontalScrollBar() in View
retool WebView's calculations to correctly compute scrollbar height and parameters
iew.java
4d6fe5ffdc62625726e5785edb0e01586d6072bf 03-Sep-2009 Mike Reed <reed@google.com> allow subclassing for drawing vertical scrollbar, so that clients (e.g. webview) can resize/position
iew.java
6198ae8468668bf7374535c2eeeab8de7f8e7e99 01-Sep-2009 Romain Guy <romainguy@android.com> Prevent ListView from scrolling/flinging its content when the content fits on screen.

Change-Id: Id46313bca3ae53b0717cd74a4a6f889a01f9fcb1
iew.java
72b1f379d5c97c8ff31d2201e78215af777d6bda 31-Aug-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
iewRoot.java
6391830d103ccb19465c69660065c22c2711dcfd 27-Aug-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 22958 into eclair

* changes:
Don't activate keyguard if screen is turned off while proximity sensor is active.
ddfe879b783ad72603308e28e8f683454464684e 27-Aug-2009 Mike Lockwood <lockwood@android.com> Don't activate keyguard if screen is turned off while proximity sensor is active.

Signed-off-by: Mike Lockwood <lockwood@android.com>
indowManagerPolicy.java
6ccd2aff3eb4450c6f1021637d18e4e5d9346bf0 27-Aug-2009 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 301b97ac to eclair

Change-Id: I0fb70cbe0a52006ad14f43a02c30b72aad457c48
e55e1a78857b5d952f593c912655011fced355d5 27-Aug-2009 Romain Guy <romainguy@android.com> Change fade to use a gradient from opaque color to transparent color.

Previously the fade was using a gradient from opaque color to transparent black.
iew.java
fd12af4e768fec852c4c5dfee3b9bd7403b4b347 27-Aug-2009 Dianne Hackborn <hackbod@google.com> Various tweaks to try to improve low memory behavior.

- Reduce the amount that we ask processes to GC after a significant
operation occurs, but introducing a minimum time between GCs and
using this in various ways to schedule them.

- Don't spam all of the processes with onLowMemory(). Now deliver
these using the same gc facility, so we do the processes one at a
time, and don't allow the same process to get this call more than
once a minute.

- Increase the time a service must run before we will reset its
restart delay to 30 minutes (from 10).

- Increase the restart delay multiplication factor from 2 to 4.

- Ensure that we don't restart more than one service every 10 seconds
(unless some external event causes a service's process to be started
for some other reason of course).

- Increase the amount of time that a service must run before we
decide to lower it to a background process.

And some other things:

- Catch IllegalArgumentException in ViewRoot like we do for no
resources to avoid the system process crashing.

- Fix a number of places where we were missing breaks between the
activity manager's message dispatch func(!!).

- Fix reason printed for processes in the background.

- Print the list of processing waiting to GC.
iewRoot.java
4a51c20ce607c74914f90fd897f04080121ac13b 22-Aug-2009 Dianne Hackborn <hackbod@google.com> I am getting tired of the java doc warnings, so fix them.

Change-Id: I2205eebae419eaf4a0992c9f5b7cd807eb843fe1
nimation/Animation.java
391305e740eb640277c03da0caa6c102a3d90221 24-Aug-2009 Mike Lockwood <lockwood@android.com> Add resources to specify display rotation when in keyboard open or docked state.

Also added constant for SW_LID input event.

Signed-off-by: Mike Lockwood <lockwood@android.com>
awInputEvent.java
3be63c09309b21c01b535271625d4c39045690e5 21-Aug-2009 Dianne Hackborn <hackbod@google.com> Infrastructure for supporting wallpaper previews.

Various things that will allow us to show previews of wallpapers.
Also some fixes to animations across wallpapers.
indow.java
789de3a824003759c369e0f7c74520ef322d0504 20-Aug-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 22003 into eclair

* changes:
Add wallpaper transition animations.
f8fbdb6b920562473dc47046924ac8ffed0b8daf 19-Aug-2009 Dianne Hackborn <hackbod@google.com> Add wallpaper transition animations.

The window manager now detects when a transition between two
wallpaper activities is happening, and switches to a new set
of animations for that. The animations I defined here are just
an arbitrary something that can work in this case.
indowManagerPolicy.java
b2f8450db8dfbc05724624f93d9ec5e65f0b7e54 20-Aug-2009 Mathias Agopian <mathias@google.com> fix [2063336] Surface.lockSurface throws IllegalArgumentException when out of memory
urface.java
15df6703f8bf3255eb7ba5c27e3518f60adc83f1 18-Aug-2009 Romain Guy <romainguy@android.com> Fix potential leak in ViewRoot.

The way View.post() is handled can cause potential leaks in ViewRoot. For instance,
if a View calls post(Runnable) just after being detached from the window (in an
onClickListener for instance,) it will enqueue a Runnable in ViewRoot.RunQueue.
Unfortunately the RunQueue is emptied only on the very first layout of the ViewRoot.
This change prevents the leak by rxecuting the enqueued Runnables on every layout request
The latter did not happen before and to keep views in a correct state I think it
is necessary to always ensure we run the Runnables sent via View.post().
iewRoot.java
8df8b2b405c60cacf7a66c4e2ca078dd3d7ec7bd 18-Aug-2009 Dianne Hackborn <hackbod@google.com> Allow wallpapers to get touch events.
Window.aidl
otionEvent.java
urfaceView.java
iewRoot.java
317a6280cc109e873646e4652be1582d870eedfd 14-Aug-2009 Mathias Agopian <mathias@google.com> Surface::GPU and Surface::HARDWARE are now deprecated; they will be set automatically if needed.

this also ripples into the window manager API by making some constant there deprecated as well.
urface.java
urfaceHolder.java
urfaceView.java
indowManager.java
168173a698e820ceb1ebf54b4910888891be2056 13-Aug-2009 Joe Onorato <joeo@android.com> Don't crash when the window is closing
urfaceView.java
72c82ab9923025a91bbabb32e56bfea27bfd083b 12-Aug-2009 Dianne Hackborn <hackbod@google.com> Report wallpaper offset to the wallpaper, use this in the image wallpaper.

Wallpapers can now be just the size of the screen, and get told when their
scroll position should change to do the updating on their own.
Window.aidl
urfaceView.java
iewRoot.java
c8a0a75e1c61d1ab24bd46a8243041c107e738ac 11-Aug-2009 Dianne Hackborn <hackbod@google.com> Implement support for scrolling a wallpaper.

This currently only works for a wallpaper that is larger than the
screen. Set the scroll position with the new wallpaper API. Right
now only does jump scrolls.
WindowManager.aidl
WindowSession.aidl
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 09-Aug-2009 Dianne Hackborn <hackbod@google.com> Very primitive wallpapers in a surface.

This is all of the basic pieces:

- The WallpaperService now creates a surface with the window manager for its
contents.
- There is a simple service that displays a bitmap.
- The wallpaper manager takes care of starting and stopping the service.
- The window manager knows about wallpaper windows and how to layer them with
the windows that want to be shown on top of wallpaper.

Lots and lots of issues remain, but at this point you can actually write a
wallpaper service, select it in the UI, and see it behind an activity.
iewRoot.java
indowManager.java
nputmethod/InputMethodManager.java
1e8dfc73fba88766ee3c25ae7b3bb1850319b11d 06-Aug-2009 Dianne Hackborn <hackbod@google.com> Fix crash when MotionEvent is initialized with more than 2 fingers, and bump
its initial size to allow for up to 5 fingers.
otionEvent.java
d41ba666d12a24ee4624ea9a009151e6165e3775 06-Aug-2009 Dianne Hackborn <hackbod@google.com> Fix documentation.
otionEvent.java
0dd7cb4b4ef86eb7d4e837b1948501da66adeebe 04-Aug-2009 Dianne Hackborn <hackbod@google.com> Finish implementation of multiple pointer support for MotionEvent.

The major things going on here:

- The MotionEvent API is now extended to included "pointer ID" information, for
applications to keep track of individual fingers as they move up and down.
PointerLocation has been updated to take advantage of this.

- The input system now has logic to generate MotionEvents with the new ID
information, synthesizing an identifier as new points are down and trying to
keep pointer ids consistent across events by looking at the distance between
the last and next set of pointers.

- We now support the new multitouch driver protocol, and will use that instead
of the old one if it is available. We do NOT use any finger id information
coming from the driver, but always synthesize pointer ids in user space.
(This is simply because we don't yet have a driver reporting this information
from which to base an implementation on.)

- Increase maximum number of fingers to 10. This code has only been used
with a driver that reports up to 2, so no idea how more will actually work.

- Oh and the input system can now detect and report physical DPAD devices.
otionEvent.java
awInputEvent.java
7cd88e171391dd0c876bf7d928d946a70cf95373 04-Aug-2009 Wink Saville <wink@google.com> Update the comment for setBackgroundResource that 0 removes the background.
iew.java
5c1207be90fdf296c1b83034b7c68915e1749284 01-Aug-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
isplay.java
urface.java
urfaceView.java
iew.java
iewDebug.java
iewRoot.java
a05f75d61aa4e779f2fdf466267b47e7df213566 31-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 9267

* changes:
Don't invalidate view if setEnabled doesn't change the state.
a2ef00b4282dcf122c3bdd6fc23cf772474f6abb 31-Jul-2009 Amith Yamasani <yamasani@google.com> Don't invalidate view if setEnabled doesn't change the state.

Check the current enabled state before setting it, in case there's
no change. Otherwise some apps are repeatedly redrawing buttons based
on validation of some text field (like gmail or mms message bodies).
Should slightly improve the performance of soft keyboard text entry.
iew.java
afcf686cb070313ae5ce6c54ac381a3a86a60ed2 31-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 25dff70f: Merge change 9039 into donut

Merge commit '25dff70f153529b87f5ad4a92f4de21e8950b1de'

* commit '25dff70f153529b87f5ad4a92f4de21e8950b1de':
Fix #2018814: System cannot correctly render assets with "wrap_content" attribute in QVGA
0d221012ff5fd314711c00ed30e9b807b9c454c1 30-Jul-2009 Dianne Hackborn <hackbod@google.com> Fix #2018814: System cannot correctly render assets with "wrap_content" attribute in QVGA

It turns out we were not returning the density for anything retrieved from a
TypedArray... which basically means any bitmap references from a layout or style...!!!

This is now fixed.

Also fiddle with the density compatibility mode to turn on smoothing in certain situations,
helping the look of things when they need to scale and we couldn't do the scaling at
load time.
iewRoot.java
206b7b1709e98952576821cd2ee8867f2265b6aa 30-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 8974

* changes:
Fix OOB in arraycopy.
a8675f67e33bc7337d148358783b0fd138b501ff 29-Jul-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
isplay.java
urface.java
urfaceView.java
iewRoot.java
indow.java
indowManager.java
a5d7b1b7f7b75d5adf9802f341b22509195c77d5 29-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 159e1a9a: Merge change 8883 into donut

Merge commit '159e1a9a13ccfa4d99941e21068994366e2bbc7b'

* commit '159e1a9a13ccfa4d99941e21068994366e2bbc7b':
fix [1973755] Surface.SURACE_FROZEN spelled SURACE_FROZEN
18a081e68441a098fe0a1a6283439913cfb6b0ca 29-Jul-2009 Owen Lin <owenlin@google.com> Fix OOB in arraycopy.
otionEvent.java
f256c4001bfd65169158af854672df0eea234d54 29-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am a62f16ac: Merge change 8877 into donut

Merge commit 'a62f16accad31e03ede5e4e6525dbe30dccc6db0'

* commit 'a62f16accad31e03ede5e4e6525dbe30dccc6db0':
Remove warning in non-eng builds.
159e1a9a13ccfa4d99941e21068994366e2bbc7b 29-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 8883 into donut

* changes:
fix [1973755] Surface.SURACE_FROZEN spelled SURACE_FROZEN
69f593ccb7414ee98991b1da1a4bfbd9951e3570 28-Jul-2009 Marco Nelissen <marcone@google.com> Support for selection of silent ringtone from the ringtone picker.
This doesn't actually enable that, but adds the necessary code to make it work when enabled, and cleans up some ringtone related code.
olumePanel.java
c87c4a3e3b3c3949ae3c6f8fd245b71691d5ca3b 29-Jul-2009 Mathias Agopian <mathias@google.com> fix [1973755] Surface.SURACE_FROZEN spelled SURACE_FROZEN
urface.java
e551dc76bcde0e114b06e876eeb1d5f9d367fddf 29-Jul-2009 Romain Guy <romainguy@android.com> Remove warning in non-eng builds.
iewDebug.java
dac57e4ec94591207eeb660adbe53245dd78e713 27-Jul-2009 Adam Bliss <abliss@google.com> Fix a bug that was causing ArrayIndexOutOfBoutExceptions when obtaining a MotionEvent from an older one that had a number of time samples.
otionEvent.java
ddca3ee3e86fbaa05c1528bd72afd955f0fb4ee6 24-Jul-2009 Dianne Hackborn <hackbod@google.com> Add support for power keys, improve behavior of virtual keys.

The platform now knows how to deal with a platform key, which at this
point is "just like end call, but don't end a call."

Also improve the handling of virtual keys, to allow for canceling when
sliding off into the display and providing haptic feedback.

Finally fixes a bug where the raw x and y in motion event were not
always set which caused the status bar to not work.
apticFeedbackConstants.java
eyEvent.java
otionEvent.java
iewRoot.java
indowManagerPolicy.java
e2dba02441b42afbae725109ac779877a4b72aa0 25-Jul-2009 Dianne Hackborn <hackbod@google.com> am 11ea3347: Allow for screen density drawables in compatibility mode.

Merge commit '11ea33471e1a14a8594f0b2cd012d86340dd3bd8'

* commit '11ea33471e1a14a8594f0b2cd012d86340dd3bd8':
Allow for screen density drawables in compatibility mode.
11ea33471e1a14a8594f0b2cd012d86340dd3bd8 23-Jul-2009 Dianne Hackborn <hackbod@google.com> Allow for screen density drawables in compatibility mode.

This change allows us to use drawables that match the current screen
density even when being loaded in compatibility mode. In this case,
the bitmap is loaded in the screen density, and the bitmap and
nine-patch drawables take care of accounting for the density difference.

This should be safe for existing applications, for the most part, since
they shouldn't really be pulling the bitmap out of the drawable. For
the small rare chance of them breaking, it worth getting the correct
graphics. Also this will only happen when there is actually a resource
of the matching density, and no existing apps should have resources for
anything besides the default density (though of course all of the
framework resources will be available in the native density).

As part of this, the bitmap density API has been changed to a single
integer provider the DPI unit density.
isplay.java
iew.java
iewRoot.java
30b06eb8b98b6e6dc685cf65ad4faa25a85008c5 24-Jul-2009 Mitsuru Oshima <oshima@google.com> am 589cebe2: * Use the scaled size for surface view instead of native. The surface will be always scaled by surface flinger in compatiblity mode. The original approach confused the app because the surface size and the view size were different. * a few clean up. remo

Merge commit '589cebe2d58591403de4a77077941c0454bc91bc'

* commit '589cebe2d58591403de4a77077941c0454bc91bc':
* Use the scaled size for surface view instead of native. The surface will be always scaled
08f89ed9a44ae9262a6c2063878bde44bedb0e37 24-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am e0ef973b: Merge change 8323 into donut

Merge commit 'e0ef973b1358585d039989ee5572e16751078aaf'

* commit 'e0ef973b1358585d039989ee5572e16751078aaf':
* a best effort fix for apps that uses get/set Matrix API on canvas.
589cebe2d58591403de4a77077941c0454bc91bc 23-Jul-2009 Mitsuru Oshima <oshima@google.com> * Use the scaled size for surface view instead of native. The surface will be always scaled
by surface flinger in compatiblity mode. The original approach confused the app because
the surface size and the view size were different.
* a few clean up. removed unsed arguments, obsolete conditions from getTranslator()
(expandable check was a bug)
urfaceView.java
iewRoot.java
240f8a7532a024e36998bdbe87cff2ef080d75de 23-Jul-2009 Mitsuru Oshima <oshima@google.com> * a best effort fix for apps that uses get/set Matrix API on canvas.
- scale the matrix
- but don't scale if the matrix *looks* like obtained from the canvas itself. (typically to set it back to original matrix)

This is best effort change and not perfect (not even close), but works for one game,
and hopes it can handle many other apps that uses set/get Matrix. If you have an alternative idea, please let me know.
urface.java
urfaceView.java
iewRoot.java
2c33bb19f704f039aed5634150eed42da446133b 23-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 98a44df4: Merge change 8235 into donut

Merge commit '98a44df4b4cc8cd28276ad888a7e17f81353ae44'

* commit '98a44df4b4cc8cd28276ad888a7e17f81353ae44':
* Revert the change that I introduced while refactroing in SurfaceView#dispatchTouchEvent
424f668545c8b1423f46ed1286146393a8e4bc1a 22-Jul-2009 Mitsuru Oshima <oshima@google.com> * Revert the change that I introduced while refactroing in SurfaceView#dispatchTouchEvent
* Don't scale back the event if the canvas is used in SurfaceView.
urfaceView.java
9822d2b27330793ea4ba9c3316ef35f402f35fb4 21-Jul-2009 Dianne Hackborn <hackbod@google.com> First stab at poly-finger support.

The MotionEvent API should be fairly solid, but there is still a lot of
work to do in the input device code. In particular, right now we are
really stupid about watching how fingers change -- we just take whatever
the driver reports as down and dump that directly into the motion event.

The big remaning work is to assign pointer IDs so that applications have
help in determine which fingers go up and down, and adding support for
the official multi-touch driver protocol.
otionEvent.java
d5d967fbd9753396e908899d8ad2a169d6095d02 22-Jul-2009 Mitsuru Oshima <oshima@google.com> am 38ed7d77: * Adjust canvas size under compatibility mode.

Merge commit '38ed7d7701514ee7127d0430e952930854608c4f'

* commit '38ed7d7701514ee7127d0430e952930854608c4f':
* Adjust canvas size under compatibility mode.
38ed7d7701514ee7127d0430e952930854608c4f 21-Jul-2009 Mitsuru Oshima <oshima@google.com> * Adjust canvas size under compatibility mode.
urface.java
urfaceView.java
iewRoot.java
fead9b8ad0c6e64066fb73f4285b088ab68f452b 22-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am fe6f45c8: Merge change 8098 into donut

Merge commit 'fe6f45c81463d2d28e11ac6083f2653e1286c5ef'

* commit 'fe6f45c81463d2d28e11ac6083f2653e1286c5ef':
cast is floor. Use round instead.
61324e58c549670c015010d0be14c6af76e3e9f7 22-Jul-2009 Mitsuru Oshima <oshima@google.com> cast is floor. Use round instead.
This fixes a few layout issues (that was due to smaller widnow size)
urfaceView.java
iewRoot.java
indowManager.java
cf4550c3198d6b3d92cdc52707fe70d7cc0caa9f 21-Jul-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
estureDetector.java
otionEvent.java
urfaceView.java
elocityTracker.java
iew.java
iewConfiguration.java
iewDebug.java
iewGroup.java
iewRoot.java
indow.java
indowManager.java
indowManagerImpl.java
ccessibility/AccessibilityEvent.aidl
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityEventSource.java
ccessibility/AccessibilityManager.java
ccessibility/IAccessibilityManager.aidl
ccessibility/IAccessibilityManagerClient.aidl
nputmethod/BaseInputConnection.java
a065b01904d5017232c9b51ccb174412ff57e138 20-Jul-2009 Mitsuru Oshima <oshima@google.com> am 841f13c8: * Reverted the change in PackageParser that I checked by accident * More surface view fix. - correct event translation on surface view. - use compatible window * removed FLAG_NO_COMPATIBILITY_SCALE. It was my misunderstanding of how SurfaceView works,

Merge commit '841f13c8e9ff3f7695b6c18a8abcec3c947983ff'

* commit '841f13c8e9ff3f7695b6c18a8abcec3c947983ff':
* Reverted the change in PackageParser that I checked by accident
841f13c8e9ff3f7695b6c18a8abcec3c947983ff 18-Jul-2009 Mitsuru Oshima <oshima@google.com> * Reverted the change in PackageParser that I checked by accident
* More surface view fix.
- correct event translation on surface view.
- use compatible window
* removed FLAG_NO_COMPATIBILITY_SCALE. It was my misunderstanding of how SurfaceView works, and this was not necessary.
* Added compatibility related info to package dumpsys
urfaceView.java
indowManager.java
97900afa9f80f8e72d6f521b713af17f18d7b769 18-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am e96bd129: Merge change 7707 into donut

Merge commit 'e96bd1291482175ac1740780cbd0f42bbe9ff746'

* commit 'e96bd1291482175ac1740780cbd0f42bbe9ff746':
* scale surface view's canvas
0fde7de9d660e4acdb8404f954f75d8c331b5d45 17-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 54f09101: Merge change 7613 into donut

Merge commit '54f09101381fa63dca35ae4ea0ba3802ee863236'

* commit '54f09101381fa63dca35ae4ea0ba3802ee863236':
* Use Fede In/Out animation if one of opening/closing apps is in compatibility mode.
34bf2ee9e695c620e0a4b9a790f1f6ccb8a77234 17-Jul-2009 Mitsuru Oshima <oshima@google.com> * scale surface view's canvas
This will not affect GL/Video views as they're directly using surfce but not canvas.
urfaceView.java
5a2b91dc14e4c92e91c6abcc795f54ac98ee5866 17-Jul-2009 Mitsuru Oshima <oshima@google.com> * Use Fede In/Out animation if one of opening/closing apps is in compatibility mode.
* preserve compatibility window flag when the app updates window's layout params.
* Added assertion in DEFAULT_COMPATIBILITY_INFO object to prevent unintentional modification.
* A few minor updates
* log/dump message improvement
* Removed unnecessary method in FadeInOutAnimator
* Fixed 100 char issue in WindwoManagerServer.java
iewRoot.java
indowManager.java
e9dcb803a0a08780054c272df12b7e8b5984b30a 16-Jul-2009 Romain Guy <romainguy@android.com> Fixes merge conflict.
otionEvent.java
6630e4a1dc40850eb7a4ddc8aaa06479469e8c4d 15-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am b5c735d3: Merge change 7106 into donut

Merge commit 'b5c735d35c8c1d2fb4e4654fbffcdb62d5acab4d'

* commit 'b5c735d35c8c1d2fb4e4654fbffcdb62d5acab4d':
Return adjusted display for WindowManager.getDefaultDisplay()
b5c735d35c8c1d2fb4e4654fbffcdb62d5acab4d 15-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 7106 into donut

* changes:
Return adjusted display for WindowManager.getDefaultDisplay()
5b2e50cbe18d525e9a15cad437f04f45e3c0e46c 15-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 30d86e51: Merge change 7124 into donut

Merge commit '30d86e5143d01815763f8c28b0fc72b0493ea9f8'

* commit '30d86e5143d01815763f8c28b0fc72b0493ea9f8':
Fixes #1977685. Prevent crash when the soft keyboard is brought up.
e8b165253d03d67b30850cedee15e1214a453cb4 14-Jul-2009 Romain Guy <romainguy@android.com> Fixes #1977685. Prevent crash when the soft keyboard is brought up.

ViewRoot keeps a reference to the previously focused View and use this reference
when trying to scroll the window to the focused rect. There situations however
in which the previously focused view might have been removed from the view
hierarchy. This happens on Home for instance when you trash an icon, or with
ListView's items. This change ensures the previously focused view is still part
of the view hierarchy.
iewRoot.java
ddd12535f095d8d056716c3290faf50ec52a538a 14-Jul-2009 Mitsuru Oshima <oshima@google.com> Return adjusted display for WindowManager.getDefaultDisplay()
isplay.java
indow.java
5583dc630f861dd9a3006390db227f9296007e00 10-Jul-2009 Mathias Agopian <mathias@google.com> fix [1968839] tap on phonetop search couple of times will cause the runtime restart

ViewRoot wasn't calling Surface.clear() when releasing the Surface.
iewRoot.java
c3f60ddaeadb69c1e85198e609e575f55ecc28ac 09-Jul-2009 Mitsuru Oshima <oshima@google.com> am 1ecf5d28: Re-implementation of large screen support using window manager. * added background filler surface to fill the outer rim. Using the same layer as dim surface because they never co-exists (in the same window) * clean up the obsolete code in Compatibilt

Merge commit '1ecf5d28817f0a051e77488380dcd5bc622ea169'

* commit '1ecf5d28817f0a051e77488380dcd5bc622ea169':
Re-implementation of large screen support using window manager.
1ecf5d28817f0a051e77488380dcd5bc622ea169 07-Jul-2009 Mitsuru Oshima <oshima@google.com> Re-implementation of large screen support using window manager.
* added background filler surface to fill the outer rim. Using the same layer as dim surface because
they never co-exists (in the same window)
* clean up the obsolete code in CompatibiltyMode/ViewRoot for support large screen support.
urfaceView.java
iewRoot.java
indowManager.java
d6f49fe8d6f7f976f358cec47b88c540f3aabdef 07-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 790a604b: Merge change 6372 into donut

Merge commit '790a604b9c32647711599710e21f0f00eb3d839c'

* commit '790a604b9c32647711599710e21f0f00eb3d839c':
Fixes #1963217. Increases the invalidate region in compatibility mode.
1e09597512fd7e6c62ea00e4f0a93d305717ca79 07-Jul-2009 Romain Guy <romainguy@android.com> Fixes #1963217. Increases the invalidate region in compatibility mode.

To account for rounding errors when scaling the invalidate regions, increase
the dirty rectangle by 1 pixel in each direction
iewRoot.java
a2b5dab5b7796d3967c73df95154810ae38efd82 07-Jul-2009 Romain Guy <romainguy@android.com> am 870e09fc: Fixes #1963229. Introduces Context#isRestricted().

Merge commit '870e09fcd2dfdc12ac318962efd28b0420c562bb'

* commit '870e09fcd2dfdc12ac318962efd28b0420c562bb':
Fixes #1963229. Introduces Context#isRestricted().
870e09fcd2dfdc12ac318962efd28b0420c562bb 07-Jul-2009 Romain Guy <romainguy@android.com> Fixes #1963229. Introduces Context#isRestricted().

A restricted Context is a special type of Context that prevents specific features
from being used. For instance, android:onClick, used by View, can be dangerous when
used from within apps widgets. By using a restricted Context to inflate apps widgets,
widgets providers are prevented from using android:onClick.
iew.java
03a9a3449af3e0e79e9bbcd87f8057189ab9e151 06-Jul-2009 Mathias Agopian <mathias@google.com> Merge commit 'goog/master' into merge_master
005ae544f93494eb7d315b2e34aae0ac3c922728 06-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 79ec07b3: Merge change 6241 into donut

Merge commit '79ec07b333f8982ee83de8eeb0b1927a6cb112ed'

* commit '79ec07b333f8982ee83de8eeb0b1927a6cb112ed':
Fixes #1444844. Set a maximum fling velocity in scrollable views.
4296fc4d326447875c26a925f12b3935632f13bb 06-Jul-2009 Romain Guy <romainguy@android.com> Fixes #1444844. Set a maximum fling velocity in scrollable views.
estureDetector.java
elocityTracker.java
iewConfiguration.java
dfe983bd7979ccb1602f29b8f9804c98411d9cd6 02-Jul-2009 Mathias Agopian <mathias@google.com> Merge commit 'goog/master' into merge_master
35a2664f8d9d19b0c3c33ff675511c86ccc5088d 01-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 22e8cbc3: Merge change 5656 into donut

Merge commit '22e8cbc32bd642bcb3e9b6f161ec662bcf45ff70'

* commit '22e8cbc32bd642bcb3e9b6f161ec662bcf45ff70':
Generate key events for actions sent to generic input connections.
e4b988b6bdc66122941e072b5f3e2752437b3fda 01-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 52bce9c4: Merge change 5680 into donut

Merge commit '52bce9c4e7b66ee0a8e1bc5ea7798cf5892b4f23'

* commit '52bce9c4e7b66ee0a8e1bc5ea7798cf5892b4f23':
Fixes #1949502. Prevents an NPE in View.buildDrawingCache().
b8990f39b0d8d4a74127e295590cc576c78bd56c 30-Jun-2009 Romain Guy <romainguy@android.com> am fbd8f69a: Fixes #1946141. Introduce new caching API to control scaling.

Merge commit 'fbd8f69a84163ef1cf52b07966320caf448c2bc9'

* commit 'fbd8f69a84163ef1cf52b07966320caf448c2bc9':
Fixes #1946141. Introduce new caching API to control scaling.
22e8cbc32bd642bcb3e9b6f161ec662bcf45ff70 30-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 5656 into donut

* changes:
Generate key events for actions sent to generic input connections.
e11232287296eefc82cd895b8392079feedb37cc 29-Jun-2009 Romain Guy <romainguy@android.com> Fixes #1949502. Prevents an NPE in View.buildDrawingCache().
iew.java
86d56cca9ce23b0f4814418d7c71ec11ea9fd278 29-Jun-2009 Dianne Hackborn <hackbod@google.com> Generate key events for actions sent to generic input connections.

There is a compatibility issue with the cupcake IME where the generic
input connection would just consume actions. Late in cupcake this
stuff was reworked so that the IME would send an action command
to the app instead of an enter key event, and the compatibility code
got lost.
nputmethod/BaseInputConnection.java
fbd8f69a84163ef1cf52b07966320caf448c2bc9 26-Jun-2009 Romain Guy <romainguy@android.com> Fixes #1946141. Introduce new caching API to control scaling.

This change fixes issues with existing applications that access the drawing cache
directly. The API now lets application choose whether they want to get a scaled
drawing cache or not. The framework relies on the scaled cache for quality
purposes.
iew.java
iewGroup.java
f31868e59fbf59a8d479587c80b648fb37a166fc 25-Jun-2009 Mathias Agopian <mathias@google.com> merge master in master_gl
ecf2b68d834d334de218dc427615b4ca05c0293a 25-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 7941e903: Merge change 5091 into donut

Merge commit '7941e903c973af66075bbd4fa4bcadf021a61ccc'

* commit '7941e903c973af66075bbd4fa4bcadf021a61ccc':
* new screen resolution support impl.
64f59342d41849bd365cb43fad7505d5e3daa417 21-Jun-2009 Mitsuru Oshima <oshima@google.com> * new screen resolution support impl.
* use full window for activities, and shift & clip the content
* refactored the compatibility code, and introdcued Translator class to handle cooridnate translations.
* removed a workaround to handle an activity with configChagne=rotation in old implementation.
* I'll fix background issue on rotation in next CL.

* removed unnecessary scaling code in SurfaceView, which I forgot to remove when I changed SurfaceView
not to scale the content.
otionEvent.java
urfaceView.java
iew.java
iewRoot.java
indowManager.java
03e53b4a6601823622dc9316f4c57899269b2349 23-Jun-2009 Karl Rosaen <krosaen@google.com> am 61ab270c: Add missing \'break\'s in switch statement, fixing bug 1876430

Merge commit '61ab270c17094ef1373f54d8fb9ade6d287c3a60'

* commit '61ab270c17094ef1373f54d8fb9ade6d287c3a60':
Add missing 'break's in switch statement, fixing bug 1876430
61ab270c17094ef1373f54d8fb9ade6d287c3a60 23-Jun-2009 Karl Rosaen <krosaen@google.com> Add missing 'break's in switch statement, fixing bug 1876430
iew.java
cb85ef6a8b58f9fe04a1b0f397119353c82f3146 22-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am e146d824: Merge change 4965 into donut

Merge commit 'e146d824785078fed578f88b11ff47a7390d27c5'

* commit 'e146d824785078fed578f88b11ff47a7390d27c5':
Fix bugs 1827027, 1808979, 1820700.
a465a170ce5d7155580fd308d1e50092365117e4 22-Jun-2009 Dianne Hackborn <hackbod@google.com> Fix bugs 1827027, 1808979, 1820700.

These are all variations of needing to validate ranges on editing operations
coming from the IME, to account for the underlying text changing (usually being
deleted) asynchronously with the IME.
nputmethod/BaseInputConnection.java
9f79975fa03311dd682611d743e9257654d85c59 22-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am ecfb9f91: Merge change 4940 into donut

Merge commit 'ecfb9f91afa49df7b9b62526dcaca431b5ff1e01'

* commit 'ecfb9f91afa49df7b9b62526dcaca431b5ff1e01':
Fixes #1933585. Don't dismiss ACTV's drop down when it's set to alwaysVisible.
7299807d1895ea25cbe45d32b6edfd9a5723ee7a 22-Jun-2009 Romain Guy <romainguy@android.com> Fixes #1933585. Don't dismiss ACTV's drop down when it's set to alwaysVisible.

This change also resizes the drop down automatically whenever the soft input
method is shown/hidden.
indowManager.java
f73bbd042367b65780316d2335784686dedd0459 20-Jun-2009 Mathias Agopian <mathias@google.com> Merge commit 'goog/master' into merge_master
e57b288e243d5eb5e55e9acc8045186abbeca6ef 17-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 8ad47399: Merge change 4374 into donut

Merge commit '8ad473994d402e42ec3c8f44f31e99ef2f7e9237'

* commit '8ad473994d402e42ec3c8f44f31e99ef2f7e9237':
Fixes a potential NPE in View.
779398e7eb462ca1562eee50a919305849582e08 16-Jun-2009 Romain Guy <romainguy@android.com> Fixes a potential NPE in View.

Calling getLocationOnScreen() before the View is attached to a window can
throw an NPE. This change simply guards against the exception.
iew.java
69f066c8fc42b9f0acc5c41f8ffd972f8d6d0584 16-Jun-2009 Mathias Agopian <mathias@google.com> Merge commit 'goog/master' into merge_master
9d2b0f4de03ca9bcdab5a3608dea5474c91faf86 15-Jun-2009 The Android Open Source Project <initial-contribution@android.com> merge cafdea61a85c8f5d0646cc9413a09346c637f43f w/ one minor conflict in core/java/android/view/MotionEvent.java
cafdea61a85c8f5d0646cc9413a09346c637f43f 12-Jun-2009 Romain Guy <romainguy@android.com> Fixes #1914574. An NPE could be causes in lists by ViewGroup.dispatchDraw().

ViewGroup was trying to access the AttachInfo without checking whether the
info object is null. The object can be null at varioous times in the lifecycle
of a list.
otionEvent.java
iewGroup.java
32c79898c0020637b2f8e536c8208519801eb9cb 12-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am e8966e12: Merge change 4008 into donut

Merge commit 'e8966e126388223de119c909d572fb8d1406a3ac'

* commit 'e8966e126388223de119c909d572fb8d1406a3ac':
Fixes #1886237. Views drawing cache was not generated properly.
8506ab4ac062d0e1ccde136e5e2f4081560e0c11 12-Jun-2009 Romain Guy <romainguy@android.com> Fixes #1886237. Views drawing cache was not generated properly.

In compatibility mode, a View's drawing cache was created at the 160 density
scale instead of the right scale.
iew.java
iewGroup.java
iewRoot.java
bd6b11dd582d7c7dde64e355f967f5ed77a9870d 11-Jun-2009 Mitsuru Oshima <oshima@google.com> am e5fb3288: resolution support fix/improvement * adding compatibility menu * backup gravity * set expanable=true if the screen size is hvga * density. * added "supports any density" mode. I\'ll add sdk check later. * disallow to catch orientation c

Merge commit 'e5fb328825995aa33b5b7ecf8b5bee2b17f81715'

* commit 'e5fb328825995aa33b5b7ecf8b5bee2b17f81715':
resolution support fix/improvement
e5fb328825995aa33b5b7ecf8b5bee2b17f81715 10-Jun-2009 Mitsuru Oshima <oshima@google.com> resolution support fix/improvement
* adding compatibility menu
* backup gravity
* set expanable=true if the screen size is hvga * density.
* added "supports any density" mode. I'll add sdk check later.
* disallow to catch orientation change event if the app is not expandable. This
was causing layout problem under non-expandable mode. I discussed this with Mike C
and we agreed to do this approach for now. We'll revisit if this causes problem to
a lot of applications.
iewRoot.java
indowManager.java
51c8a3e00e6cffe42d25d1ac87d417e925d8a84d 06-Jun-2009 Mathias Agopian <mathias@google.com> Merge commit 'goog/master' into merge_master
fa77935446dbbb3719a2e7d260a425361d7e1f6e 05-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am ad8a510f: Merge change 3227 into donut

Merge commit 'ad8a510fcc3b853bd0dadcffb4433c465f2993b4'

* commit 'ad8a510fcc3b853bd0dadcffb4433c465f2993b4':
Fix int to string mapping of exported properties. The value generated by the
a1f3e4aef19882b4b81075d9205bd363efe1e66d 05-Jun-2009 Romain Guy <romainguy@android.com> Fix int to string mapping of exported properties. The value generated by the
mapping in a @ViewDebug.ExportedProperty annotation was always overriden by
the resolveId attribute.
iewDebug.java
342d59d3197caa1cd1de7a600c6e0ba4a59883f4 04-Jun-2009 Mitsuru Oshima <oshima@google.com> am 9189cabb: * Moved supports-density tag under manifest * Refactored Compatibility code * Added CompatibilityInfo class * Removed getApplicationScale from Context * Added Resources#getCompatibilityInfo so that RootView can get the compatibility info w/o going through Context * Expandable support * Added expandable tag under manifest * Old application w/o expandable is given the default screen size ([320, 480] x density). * The non-expandable window is centered.

Merge commit '9189cabb0b6c6c28232fe6f412b7ba7a37352a6a'

* commit '9189cabb0b6c6c28232fe6f412b7ba7a37352a6a':
* Moved supports-density tag under manifest
9189cabb0b6c6c28232fe6f412b7ba7a37352a6a 03-Jun-2009 Mitsuru Oshima <oshima@google.com> * Moved supports-density tag under manifest
* Refactored Compatibility code
* Added CompatibilityInfo class
* Removed getApplicationScale from Context
* Added Resources#getCompatibilityInfo so that RootView can get the compatibility info w/o going through Context
* Expandable support
* Added expandable tag under manifest
* Old application w/o expandable is given the default screen size ([320, 480] x density).
* The non-expandable window is centered.
urfaceView.java
iewRoot.java
5b4718ba8aeac969095b75c20fbe74ced0c04725 02-Jun-2009 Mike Reed <reed@google.com> make FEATURE_OPENGL public (but hidden for now) so we can test with it
indow.java
2da99bdaa1712f00525e6a84b58044332cb1baef 27-May-2009 Mathias Agopian <mathias@google.com> Merge commit 'goog/master' into merge_master

Conflicts:
include/ui/Rect.h
libs/ui/ISurfaceComposer.cpp
a8ddb2827597f66fcfbe8937f40988d4631caa69 25-May-2009 Romain Guy <romainguy@android.com> am ec25df9f: Fix drawing bug: opaque invalidations should not be taken into account when the invalidated view is animating. Also add the ability to disable the auto-fade on the GestureOverlayView.

Merge commit 'ec25df9fbc685be384f8dd764fa224a4d923e9d8'

* commit 'ec25df9fbc685be384f8dd764fa224a4d923e9d8':
Fix drawing bug: opaque invalidations should not be taken into account when the invalidated view is animating. Also add the ability to disable the auto-fade on the GestureOverlayView.
ec25df9fbc685be384f8dd764fa224a4d923e9d8 25-May-2009 Romain Guy <romainguy@android.com> Fix drawing bug: opaque invalidations should not be taken into account when the invalidated view is animating. Also add the ability to disable the auto-fade on the GestureOverlayView.
iewGroup.java
d14508b4d678373fbb511dc0da9a5133ce321c6d 22-May-2009 The Android Open Source Project <initial-contribution@android.com> merge f41c640d8424fbd90cb1751173ede1c9f5e848b4 w/minor conflict
947f4f4d384ea26eb2145cc070a3eed42c59534a 22-May-2009 Mathias Agopian <mathias@google.com> merge master to master_gl
d6a463a9f23b3901bf729f2f27a6bb8f78b95248 22-May-2009 Romain Guy <romainguy@android.com> Add a new API to ListView: setGestures(int). This allows developers to enable gestures to jump inside the list or filter it. This change also introduces a new XML attribute to control this API. It also adds the ability to theme the GestureOverlayView from the gestures library. Finally, this adds a new VERSION header to the binary format used to store the letters for the recognizer.
iew.java
iewGroup.java
47588ef1a272613d87c22ca32fcba08359eef5ae 22-May-2009 Dianne Hackborn <hackbod@google.com> am c4d5d026: Add new window manager type for a hacking second-level media surface.

Merge commit 'c4d5d02667af6989a3121072871f6a4b1e68b594'

* commit 'c4d5d02667af6989a3121072871f6a4b1e68b594':
Add new window manager type for a hacking second-level media surface.
c4d5d02667af6989a3121072871f6a4b1e68b594 22-May-2009 Dianne Hackborn <hackbod@google.com> Add new window manager type for a hacking second-level media surface.

This adds a new window type that is a surface that sits between the
current media type and the application window, in theory allowing you
to have two surface views in your hierarchy and control their
Z-ordering. There is also another hidden API on SurfaceView to set
the type of your window.

All a big hack, but for the good of the commonwealth!
urfaceView.java
indow.java
indowManager.java
843ef36f7b96cc19ea7d2996b7c8661b41ec3452 20-May-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
otionEvent.java
urfaceView.java
elocityTracker.java
iew.java
iewDebug.java
iewGroup.java
iewRoot.java
indowManager.java
nimation/AccelerateDecelerateInterpolator.java
nimation/AccelerateInterpolator.java
nimation/AnimationUtils.java
nimation/AnticipateInterpolator.java
nimation/AnticipateOvershootInterpolator.java
nimation/BounceInterpolator.java
nimation/OvershootInterpolator.java
nimation/Transformation.java
ccee782cdaadaf28fbbddd3885f1a9ca2427bd2d 18-May-2009 Suchi Amalapurapu <asuchitra@google.com> am d1a93373: Add a new window flag to display a window when keyguard is shown.

Merge commit 'd1a9337380cf9f40f1aa095457b11242d483295d'

* commit 'd1a9337380cf9f40f1aa095457b11242d483295d':
Add a new window flag to display a window when keyguard is shown.
d1a9337380cf9f40f1aa095457b11242d483295d 15-May-2009 Suchi Amalapurapu <asuchitra@google.com> Add a new window flag to display a window when keyguard is shown.
indowManager.java
53071d6d159f6dfd6fe0328a39bcf967ef308a64 14-May-2009 Michael Chan <mchan@android.com> Added LatencyTimer to ease latency measurements

new file: core/java/android/os/LatencyTimer.java
modified: core/java/android/view/MotionEvent.java
modified: core/java/android/view/ViewRoot.java
modified: services/java/com/android/server/InputDevice.java
modified: services/java/com/android/server/KeyInputQueue.java
modified: services/java/com/android/server/WindowManagerService.java
otionEvent.java
iewRoot.java
370331fbcadb241caf1fb48a0b8f5e167b3e41b0 16-May-2009 Android (Google) Code Review <android-gerrit@google.com> am b3c6addf: Merge change 1825 into donut

Merge commit 'b3c6addfc17be2a52133026148f3928ab97c83cb'

* commit 'b3c6addfc17be2a52133026148f3928ab97c83cb':
Fixes #1855461, #1857290 and #1857365. Certain scrollbar styles make an opaque view not be opaque. ListView and View now account for this when indicating whether they are opaque or not.
8f1344f5e7c92f2fd532f65e5584afe0e4cc6b11 16-May-2009 Romain Guy <romainguy@android.com> Fixes #1855461, #1857290 and #1857365. Certain scrollbar styles make an opaque view not be opaque. ListView and View now account for this when indicating whether they are opaque or not.
iew.java
59aa044a1098e49823d59905731f28465003e983 16-May-2009 Mathias Agopian <mathias@google.com> Merge branch '2514' into merge_master
76879bc2343779d4d2a870b7bd46b0544c0cc46c 15-May-2009 svetoslavganov <svetoslavganov@google.com> resolved conflicts w/ 75986cf9bc57ef11ad70f36fb77fbbf5d63af6ec merge....
75986cf9bc57ef11ad70f36fb77fbbf5d63af6ec 15-May-2009 svetoslavganov <svetoslavganov@google.com> Accessibility feature - framework changes (replacing 698, 699, 700, 701 and merging with the latest Donut)
iew.java
iewGroup.java
iewRoot.java
indow.java
indowManagerImpl.java
ccessibility/AccessibilityEvent.aidl
ccessibility/AccessibilityEvent.java
ccessibility/AccessibilityEventSource.java
ccessibility/AccessibilityManager.java
ccessibility/IAccessibilityManager.aidl
ccessibility/IAccessibilityManagerClient.aidl
11abc8a36d639775b05a0471c9ea45d83fa19e56 15-May-2009 Mathias Agopian <mathias@google.com> Merge commit 'goog/master' into merge_master

Conflicts:
opengl/libagl/Android.mk
opengl/libs/Android.mk
opengl/libs/egl_impl.h
e52a5a5fca18348728dfc5609b42b88e9cc7ef98 15-May-2009 Android (Google) Code Review <android-gerrit@google.com> am 669ec3a6: Merge change 1747 into donut

Merge commit '669ec3a6e47248fee0a3a0f4877b46875eb42140'

* commit '669ec3a6e47248fee0a3a0f4877b46875eb42140':
Fixes #1846038. The dirty region can sometimes be modified by SurfaceFlinger. When this happens, force the view hierarchy to ignore the dirty flags.
5bcdff45bf4ada77ae7c95f520b795876adef75c 15-May-2009 Romain Guy <romainguy@android.com> Fixes #1846038. The dirty region can sometimes be modified by SurfaceFlinger. When this happens, force the view hierarchy to ignore the dirty flags.
iew.java
iewDebug.java
iewGroup.java
iewRoot.java
780d61dd97ace088463fe325e548282f9d566213 15-May-2009 Android (Google) Code Review <android-gerrit@google.com> am d1f7b3a5: Merge change 1704 into donut

Merge commit 'd1f7b3a5720a4d6d92c4eea5a1fe812a790a7442'

* commit 'd1f7b3a5720a4d6d92c4eea5a1fe812a790a7442':
New feature to track down #1846038. Adds the ability to export flags encoded in int values so as to make them human readable in HierarchyViewer.
d1f7b3a5720a4d6d92c4eea5a1fe812a790a7442 15-May-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 1704 into donut

* changes:
New feature to track down #1846038. Adds the ability to export flags encoded in int values so as to make them human readable in HierarchyViewer.
809a7f6080312f3e12f1a3a30eacf0e0c7627305 15-May-2009 Romain Guy <romainguy@android.com> New feature to track down #1846038. Adds the ability to export flags encoded in int values so as to make them human readable in HierarchyViewer.
iew.java
iewDebug.java
d6ea77e1a4f6467e3154d56164330b0698010fe5 14-May-2009 Android (Google) Code Review <android-gerrit@google.com> am 4a8fb93f: Merge change 1638 into donut

Merge commit '4a8fb93f5e320f5bd5c1dd272339ae499e4b4ec4'

* commit '4a8fb93f5e320f5bd5c1dd272339ae499e4b4ec4':
fix window layout problem in ViewRoot
a64b860749ad7e5f9e887013d87b56b928c5d405 14-May-2009 Android (Google) Code Review <android-gerrit@google.com> am aa642c0c: Merge changes 1591,1596 into donut

Merge commit 'aa642c0cc20293137376d44f8221876c121e5be9'

* commit 'aa642c0cc20293137376d44f8221876c121e5be9':
Get the backup calling through to the file backup helper.
Fix typos.
Add a new feature to android.os.Debug to add the ability to inject only specific fields when calling setFieldsOn().
Fixes #1836075. Adds consistency checks for the View hierarchy. To enable them, you need a debug build and ViewDebug.sConsistencyCheckEnabled set to true in debug.prop. This change also lets you easily enable drawing and layout profiling in ViewRoot by setting ViewRoot.sProfileDrawing, ViewRoot.sProfileLayout and ViewRoot.sShowFps in debug.prop with a debug build.
Add Intent.ACTION_APP_ERROR
3d91492d694cf00474fec792134e496be6ee0313 14-May-2009 Mitsuru Oshima <oshima@google.com> fix window layout problem in ViewRoot
* don't scale LayoutParams (this must be app's scale).
* scale the layout params' coordinates & size only when requesting layout.
In SurfaceView, window's x,y wasn't scaled before sending to window manager.
urfaceView.java
iewRoot.java
indowManager.java
13922e03037d71a538f24ddf61c0b61bb4eb5af0 13-May-2009 Romain Guy <romainguy@android.com> Fixes #1836075. Adds consistency checks for the View hierarchy. To enable them, you need a debug build and ViewDebug.sConsistencyCheckEnabled set to true in debug.prop. This change also lets you easily enable drawing and layout profiling in ViewRoot by setting ViewRoot.sProfileDrawing, ViewRoot.sProfileLayout and ViewRoot.sShowFps in debug.prop with a debug build.
iew.java
iewDebug.java
iewGroup.java
iewRoot.java
898761f6e6a0e83ba699e6886f483ae9dd0824cc 13-May-2009 Mitsuru Oshima <oshima@google.com> am c5b0e6e: don\'t scale trackball event

Merge commit 'c5b0e6e4eb09a4dd8fc1cfcfca959262705d84d0'

* commit 'c5b0e6e4eb09a4dd8fc1cfcfca959262705d84d0':
don't scale trackball event
98eeba88e333d1c6217a642d1da2d90e1bbfb606 13-May-2009 Android (Google) Code Review <android-gerrit@google.com> am 6347c32: Merge change 1436 into donut

Merge commit '6347c322b36cdf6a30a35e80d205d00d40368e61'

* commit '6347c322b36cdf6a30a35e80d205d00d40368e61':
Density Compatibility mode for SurfaceView
7118a2cf547ed53900a7591ca93b99ee0508cea9 13-May-2009 Android (Google) Code Review <android-gerrit@google.com> am 807f23b: Merge change 1057 into donut

Merge commit '807f23b2d8c7148cf6fc95bb88cfc2f78e4be66a'

* commit '807f23b2d8c7148cf6fc95bb88cfc2f78e4be66a':
* Add regoin scaling for transparent support
c5b0e6e4eb09a4dd8fc1cfcfca959262705d84d0 13-May-2009 Mitsuru Oshima <oshima@google.com> don't scale trackball event
iewRoot.java
6347c322b36cdf6a30a35e80d205d00d40368e61 13-May-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 1436 into donut

* changes:
Density Compatibility mode for SurfaceView * use fixed size when requested. Otherwise, give the original size instead of scaled down size. * scale back the motion event to original size when surface view is using the orignal size.
001a6e52445b2744b4f2eb00099b98a17f4245c9 12-May-2009 Mitsuru Oshima <oshima@google.com> Density Compatibility mode for SurfaceView
* use fixed size when requested. Otherwise, give the original size instead of scaled down size.
* scale back the motion event to original size when surface view is using the orignal size.
urfaceView.java
807f23b2d8c7148cf6fc95bb88cfc2f78e4be66a 13-May-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 1057 into donut

* changes:
* Add regoin scaling for transparent support
b10f138e125b5656e810901d14c5f956ff5d9b64 12-May-2009 Mitsuru Oshima <oshima@google.com> * Add regoin scaling for transparent support
iewRoot.java
9ec7b3d3e7130247be8c290540c4747fa3627e41 12-May-2009 Android (Google) Code Review <android-gerrit@google.com> am c70b644: Merge change 1463 into donut

Merge commit 'c70b64441029b9748eea7f260f1b3521dc58eb91'

* commit 'c70b64441029b9748eea7f260f1b3521dc58eb91':
Fixes #1846038. DrawableContainer was wrongly returning its opacity by ignoring the visibility of the currently selected layer. This change simply reports a TRANSPARENT opacity if there is no currently selected layer of if the selected layer is not visible. Otherwise it reports the opacity computed by the state class.
83b2107c4d2f07f46b6ae663115421749486f8b1 12-May-2009 Romain Guy <romainguy@android.com> Fixes #1846038. DrawableContainer was wrongly returning its opacity by ignoring the visibility of the currently selected layer. This change simply reports a TRANSPARENT opacity if there is no currently selected layer of if the selected layer is not visible. Otherwise it reports the opacity computed by the state class.
iew.java
6ca73d6a09780c2beee36705c72bc671de71a32f 12-May-2009 Romain Guy <romainguy@android.com> am 7ed6acd: Remove useless logging on every draw.

Merge commit '7ed6acdc084f5cbd37bd9b9d5422d75fa31f43ce'

* commit '7ed6acdc084f5cbd37bd9b9d5422d75fa31f43ce':
Remove useless logging on every draw.
e62a04c9cbd5a2709574a3f6649d2d8f5baebfa8 12-May-2009 Android (Google) Code Review <android-gerrit@google.com> am a2ea1d3: Merge change 1371 into donut

Merge commit 'a2ea1d376524346e3f601694751e423ce2711d6b'

* commit 'a2ea1d376524346e3f601694751e423ce2711d6b':
Fixes #1596240. Optimize invalidate/draw passes by marking opaque views and avoiding drawing them. Whenever a View requests an invalidate its parent check whether the view is opaque or not. When the view is not opaque, the framework behaves as it used to. However, when a view is opaque, the parent marks itself as being dirty because of an opaque view. Its parent then does the same, and so on. When the framework then starts drawing the views, it does not draw views marked as dirty opaque. If a view is dirty opaque and receives an invalidate request from a non-opaque view, it then clears the dirty opaque flag and behaves as before.
7ed6acdc084f5cbd37bd9b9d5422d75fa31f43ce 12-May-2009 Romain Guy <romainguy@android.com> Remove useless logging on every draw.
iew.java
24443ea3992e372e47daa50266b0f2ec38cac388 11-May-2009 Romain Guy <romainguy@android.com> Fixes #1596240. Optimize invalidate/draw passes by marking opaque views and avoiding drawing them. Whenever a View requests an invalidate its parent check whether the view is opaque or not. When the view is not opaque, the framework behaves as it used to. However, when a view is opaque, the parent marks itself as being dirty because of an opaque view. Its parent then does the same, and so on. When the framework then starts drawing the views, it does not draw views marked as dirty opaque. If a view is dirty opaque and receives an invalidate request from a non-opaque view, it then clears the dirty opaque flag and behaves as before.
iew.java
iewGroup.java
iewRoot.java
6ec72e3fa9cdf9e896f3042fb1b1b4f3f6cea541 08-May-2009 Mathias Agopian <mathias@google.com> Merge commit 'goog/master' into merge_master
1471c8f6a73c1284442cff4c36c754b9842d8427 08-May-2009 The Android Open Source Project <initial-contribution@android.com> am c664d18: Merge branch \'donut\' of ssh://android-git.corp.google.com:29

Merge commit 'c664d1837c34f3e7ab743f7fb96771b0c9d8df6e'

* commit 'c664d1837c34f3e7ab743f7fb96771b0c9d8df6e':
don't use modulo
6bebbcd57b7b3ffad3af046f4899d885b30c828e 08-May-2009 Mathias Agopian <mathias@google.com> Merge commit 'goog/master' into merge_master
d4cc32ca99390ca54762f86d4850ab553a05ccf7 08-May-2009 Mitsuru Oshima <oshima@google.com> don't use modulo
otionEvent.java
cfe5cdd3a13b166e93e5f74e5a23fa9303238bb5 07-May-2009 The Android Open Source Project <initial-contribution@android.com> manual merge d90a331 to avoid conflicts

Merge commit 'd90a331'
d90a33111b3f1d0b2fff7ba9bafabc63fdb67d3a 06-May-2009 Romain Guy <romainguy@android.com> Add new setTag(int, Object) API to allow applications to specify several tags.
iew.java
b6af533114cfa5a4547990e79e96bd0402c47e72 28-Apr-2009 Mihai Preda <preda@google.com> Allow ViewStub to be used in AdapterView.setEmptyView() (bug 1803058)
iewStub.java
a426c9609fbfcd8b3578c563f7e922e8d8db4848 01-May-2009 Romain Guy <romainguy@google.com> am 9a81736: Add the ability to specify the onClick handler with XML.

Merge commit '9a81736176f507489f262344b6e3d55bbe53be7c'

* commit '9a81736176f507489f262344b6e3d55bbe53be7c':
Add the ability to specify the onClick handler with XML. The new android:onClick attribute defines the name of the method in the Activity to invoke when the button is clicked. The method has to be public and get one View parameter.
9a81736176f507489f262344b6e3d55bbe53be7c 01-May-2009 Romain Guy <romainguy@google.com> Add the ability to specify the onClick handler with XML. The new android:onClick attribute defines the name of the method in the Activity to invoke when the button is clicked. The method has to be public and get one View parameter.
iew.java
4e0711625278d5a98279fff1d05ae1709030c686 01-May-2009 The Android Open Source Project <initial-contribution@android.com> am 3500f01: Merge branch \'donut\' of ssh://android-git.corp.google.com:29

Merge commit '3500f016bfc43a42b19cfc51f5472b1be87b8369'

* commit '3500f016bfc43a42b19cfc51f5472b1be87b8369':
Fixes #1712631. Whenever a View loses focus/selection, reset its pressed state.
a2431d0ba24ca7d79d21b2df63f9a58025702c7e 01-May-2009 Romain Guy <romainguy@google.com> Fixes #1712631. Whenever a View loses focus/selection, reset its pressed state.
iew.java
fa6eda01a9f3df0102ce6a65302c8674cc9c7e50 30-Apr-2009 Mathias Agopian <mathias@google.com> Merge commit 'goog/master' into merge_master

Conflicts:
libs/surfaceflinger/Layer.cpp
libs/surfaceflinger/SurfaceFlinger.cpp
opengl/libagl/egl.cpp
opengl/libs/EGL/egl.cpp
opengl/libs/GLES_CM/gl.cpp
opengl/libs/GLES_CM/gl_api.in
opengl/libs/gl_entries.in
opengl/libs/tools/glapigen
453a34f62bc145ac106d032e64263bdbc904f29f 30-Apr-2009 Mitsuru Oshima <nobody@android.com> am d4ed049: Merge branch \'readonly-p4-donut\' into donut

Merge commit 'd4ed0496724d9083ce0762d3a5c0b36183c02f6c'

* commit 'd4ed0496724d9083ce0762d3a5c0b36183c02f6c':
AI 148024: fix NPE when there is no history
d4ed0496724d9083ce0762d3a5c0b36183c02f6c 30-Apr-2009 Mitsuru Oshima <nobody@android.com> Merge branch 'readonly-p4-donut' into donut
dffbb4dbceb7e90e91b65d02dfdbd1abd6147b94 30-Apr-2009 Mitsuru Oshima <nobody@android.com> AI 148024: fix NPE when there is no history

Automated import of CL 148024
otionEvent.java
c2839e087041b16a1ee7292b85459a396c25c771 29-Apr-2009 Mitsuru Oshima <> am 13735a2: Merge branch \'readonly-p4-donut\' into donut

Merge commit '13735a255dedd2c2e3b0cff66f0be2e17671f553'

* commit '13735a255dedd2c2e3b0cff66f0be2e17671f553':
AI 147976: Compatibility mode support. Part 2.
4cc574be4ee4c20af7c3d1aa901315505efd4e4e 29-Apr-2009 Mitsuru Oshima <> am 257eef3: Merge branch \'readonly-p4-donut\' into donut

Merge commit '257eef353dfc9519b63e3fe2616505c5534b460a'

* commit '257eef353dfc9519b63e3fe2616505c5534b460a':
AI 147845: Compatibility mode support. Part 1
137b0c9d6430ccb519c82a1198048cf413e06c5e 29-Apr-2009 Android (Google) Code Review <android-gerrit@google.com> am 0b8ffd1: Merge change 460 into donut

Merge commit '0b8ffd17bc6641fc522db3e842a868b6cdbf6d82'

* commit '0b8ffd17bc6641fc522db3e842a868b6cdbf6d82':
More optimization of dumpsys output.
13735a255dedd2c2e3b0cff66f0be2e17671f553 29-Apr-2009 Mitsuru Oshima <> Merge branch 'readonly-p4-donut' into donut
8169daed2f7a8731d478b884b1f455c747b88478 29-Apr-2009 Mitsuru Oshima <> AI 147976: Compatibility mode support. Part 2.
* Introduced ApplicationScale (may not be good name. CompatibilityScale? CanvasScale? Pls let me know if you have better idea)
* Changes to RootView / SurfaceView
- Makes the app believe it's running in the supported density/resolution.
- Makes the window manager believe it's running at the right density/resolution.
* Added methods to Rect/Event for scaling up/down.
Known issues:
* certain kind of images (such as nine patch for buttons) seesm to be loaded not by app, thus does not take the scale into account,
which, in turn, is causing layout issue.
* ZoomButton in MapView is rendered in wrong place
* Transparent region on Surface is not correct
* Specifying different densities in one process is not working.
BUG=1770627

Automated import of CL 147976
otionEvent.java
urfaceView.java
iewRoot.java
indowManager.java
257eef353dfc9519b63e3fe2616505c5534b460a 27-Apr-2009 Mitsuru Oshima <> Merge branch 'readonly-p4-donut' into donut
8d112675879a2b83197d3b4ae4fb623abd1a1ec3 27-Apr-2009 Mitsuru Oshima <> AI 147845: Compatibility mode support. Part 1
Adding supports-density tag to manifest file/ApplicationInfo.
BUG=1752478

Automated import of CL 147845
indowManager.java
1d442e0d990b581357f33f5463c7c5cb49b551e8 21-Apr-2009 Dianne Hackborn <hackbod@google.com> More optimization of dumpsys output.

There are three major classes of changes here:

- Avoid writing lines where their values are often empty, false, or some other typical thing.
- Use partial writes to the PrintWriter to avoid creating temporary strings.
- Use StringBuilder where we need to generate real String objects (and where possible cache the result).
nimation/Transformation.java
17f638b39f2e8b610ecfa1290e5bc42ab7700c98 17-Apr-2009 Mathias Agopian <mathias@google.com> more splitting of Surface/SurfaceControl. Surface.java is now implemented in terms of Surface and SurfaceControl.

The WindowManager side of Surface.java holds a SurfaceControl, while the client-side holds a Surface. When the client is in the system process, Surface.java holds both (which is a problem we'll try to fix later).
urface.java
402c34649f514669517c2208e35caa58ff8bb2b9 15-Apr-2009 Mathias Agopian <mathias@google.com> fix some issues with Surface's lifetime management.

To deal with Java's lack of destructors and delayed garbage collection, we used to duplicate Surface.cpp objects in some case; this caused some issues because Surface is supposed to be reference-counted and unique.
urface.java
75534fbe246e5562779500bc7cf7f0ddfe9b8330 14-Apr-2009 Dianne Hackborn <> Merge branch 'readonly-p4-master'
935ae463d495d41155e27feb849768ad2b8b16db 14-Apr-2009 Dianne Hackborn <> AI 145994: Integrate #145778 from Donut.

Automated import of CL 145994
ravity.java
eyEvent.java
iew.java
iewConfiguration.java
iewDebug.java
iewTreeObserver.java
f8a7ceaef2e7d5cd530c9426bde91b6fa9a40b75 11-Apr-2009 Andy Stadler <> AI 145778: Manual merge changes 145382-145384 from cupcake.

Automated import of CL 145778
ravity.java
eyEvent.java
iew.java
iewConfiguration.java
iewDebug.java
iewTreeObserver.java
48276ab989a4d775961ce30a43635a317052672a 09-Apr-2009 Dianne Hackborn <> AI 145383: API review: clean up a bunch of @hides that have been pending API review.
Either expose them, or official hide them with an explanation for why.
BUG=1779439

Automated import of CL 145383
ravity.java
iew.java
iewConfiguration.java
iewDebug.java
iewTreeObserver.java
5eabbd9f27b5684508b5f5f1f99030c67984ae81 09-Apr-2009 Dianne Hackborn <> AI 145382: API review: change new media keycode names to avoid ambiguity.
Updates the key maps. During this I noticed that the dream keymap didn't have all of the media buttons like the sapphire key map...! So this is now changed to match.
BUG=1779435

Automated import of CL 145382
eyEvent.java
5a2f463fe575643ef9938b4c9fb7cdf8f4e8af34 02-Apr-2009 Romain Guy <> Merge branch 'readonly-p4-master'
10b4043c99dd93ba4db4f461f0761547170134ca 02-Apr-2009 Romain Guy <> AI 144014: am: CL 144013 Rename PoolFactory to Pools, to follow the java.util convention (Collections, Arrays.)
Original author: romainguy
Merged from: //branches/donutburger/...

Automated import of CL 144014
elocityTracker.java
iew.java
2e9bbce84d9697a9dcccd02cec55dc485d985746 01-Apr-2009 Romain Guy <> AI 144013: Rename PoolFactory to Pools, to follow the java.util convention (Collections, Arrays.)

Automated import of CL 144013
elocityTracker.java
iew.java
caee1703fee75fbf37ba7774db64479a33cda82b 01-Apr-2009 The Android Open Source Project <initial-contribution@android.com> Merge commit 'goog/readonly-p4-master'
7ac3f67c179ec77caeee59b86d87d4ec007c4586 01-Apr-2009 Dianne Hackborn <> AI 143901: am: CL 143899 am: CL 143896 Fix issue #1748954 and #1737952:
#1748954 (New status bar fades into all white background): FrameLayout wasn't updating its foreground drawable when its padding changed, which would happen as the status bar is shown and hidden. To fix this I also ended up fixing a problem in the view debug stuff where we couldn't get a bitmap for a view that is the full screen size because it is too big... actually I just went ahead and added another function to snapshot the view hierarchy which works a lot better for us anyway.
#1737952 (Home screen icons overlap with the notification bar after exiting any camera app): Originally I punted this because it only happened in rare situations, but now that home is always portrait it happens a lot more so it is more important to fix. This involved a few things to clean up hiding/showing the status bar:
- We now determine when to hide and show it during layout, which allows us to do this at the time it is actually needed rather than during animation after we can actually catch it for the initial display of a window. This required tweaking the layout API so the policy can request a second layout pass if needed.
- When doing layout, we are now much more aggressive about skipping the layout of windows. Basically anything that we know will be hidden in the near future is ignored for layout, so that it doesn't glitch as it is transfered out of the screen. The theory being that it is better to leave it as it was originally placed while we are transitioning it out, than to switch it to something slightly more correct.
Original author: hackbod
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...

Automated import of CL 143901
iew.java
iewDebug.java
indowManagerPolicy.java
958b9adc086f126dcd757d29f0d7f443ae9064b2 01-Apr-2009 Dianne Hackborn <> AI 143899: am: CL 143896 Fix issue #1748954 and #1737952:
#1748954 (New status bar fades into all white background): FrameLayout wasn't updating its foreground drawable when its padding changed, which would happen as the status bar is shown and hidden. To fix this I also ended up fixing a problem in the view debug stuff where we couldn't get a bitmap for a view that is the full screen size because it is too big... actually I just went ahead and added another function to snapshot the view hierarchy which works a lot better for us anyway.
#1737952 (Home screen icons overlap with the notification bar after exiting any camera app): Originally I punted this because it only happened in rare situations, but now that home is always portrait it happens a lot more so it is more important to fix. This involved a few things to clean up hiding/showing the status bar:
- We now determine when to hide and show it during layout, which allows us to do this at the time it is actually needed rather than during animation after we can actually catch it for the initial display of a window. This required tweaking the layout API so the policy can request a second layout pass if needed.
- When doing layout, we are now much more aggressive about skipping the layout of windows. Basically anything that we know will be hidden in the near future is ignored for layout, so that it doesn't glitch as it is transfered out of the screen. The theory being that it is better to leave it as it was originally placed while we are transitioning it out, than to switch it to something slightly more correct.
Original author: hackbod
Merged from: //branches/cupcake/...

Automated import of CL 143899
iew.java
iewDebug.java
indowManagerPolicy.java
b3785307143556f3aba228f4c81fac96fda09ea1 01-Apr-2009 Dianne Hackborn <> AI 143896: Fix issue #1748954 and #1737952:
#1748954 (New status bar fades into all white background): FrameLayout wasn't updating its foreground drawable when its padding changed, which would happen as the status bar is shown and hidden. To fix this I also ended up fixing a problem in the view debug stuff where we couldn't get a bitmap for a view that is the full screen size because it is too big... actually I just went ahead and added another function to snapshot the view hierarchy which works a lot better for us anyway.
#1737952 (Home screen icons overlap with the notification bar after exiting any camera app): Originally I punted this because it only happened in rare situations, but now that home is always portrait it happens a lot more so it is more important to fix. This involved a few things to clean up hiding/showing the status bar:
- We now determine when to hide and show it during layout, which allows us to do this at the time it is actually needed rather than during animation after we can actually catch it for the initial display of a window. This required tweaking the layout API so the policy can request a second layout pass if needed.
- When doing layout, we are now much more aggressive about skipping the layout of windows. Basically anything that we know will be hidden in the near future is ignored for layout, so that it doesn't glitch as it is transfered out of the screen. The theory being that it is better to leave it as it was originally placed while we are transitioning it out, than to switch it to something slightly more correct.
BUG=1748954,1737952

Automated import of CL 143896
iew.java
iewDebug.java
indowManagerPolicy.java
d1b3dd058d2015cd1f2a3ef7fb3798f0d7923fe3 01-Apr-2009 Romain Guy <> AI 143894: am: CL 143890 Fixes #1749387. Improve the pooling of the VelocityTracker class. This introduces a new, hidden, API for pooling objects easily.
Original author: romainguy
Merged from: //branches/donutburger/...

Automated import of CL 143894
elocityTracker.java
iew.java
d928d6837dee4df30b06529164326722075da063 01-Apr-2009 Romain Guy <> AI 143890: Fixes #1749387. Improve the pooling of the VelocityTracker class. This introduces a new, hidden, API for pooling objects easily.
BUG=1749387

Automated import of CL 143890
elocityTracker.java
iew.java
fb43fea68a00b7b147992b52b86305f6fbc1548e 01-Apr-2009 Romain Guy <> AI 143815: am: CL 143758 Fixes #1749387. When a client of VelocityTracker obtains an instance from the pool, actually remove the object from the pool. Otherwise, several clients can share the same VelocityTracker which can lead to really weird side effects (including concurrency and UI issues.)
Original author: romainguy
Merged from: //branches/cupcake/...

Automated import of CL 143815
elocityTracker.java
7474a5acbe5b73342e4cf129d39cd3bc1195292c 31-Mar-2009 Romain Guy <> AI 143830: am: CL 143815 am: CL 143758 Fixes #1749387. When a client of VelocityTracker obtains an instance from the pool, actually remove the object from the pool. Otherwise, several clients can share the same VelocityTracker which can lead to really weird side effects (including concurrency and UI issues.)
Original author: romainguy
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...

Automated import of CL 143830
elocityTracker.java
d65addb4c9e8d552907bc2720e6127e0259b8f09 31-Mar-2009 Romain Guy <> AI 143758: Fixes #1749387. When a client of VelocityTracker obtains an instance from the pool, actually remove the object from the pool. Otherwise, several clients can share the same VelocityTracker which can lead to really weird side effects (including concurrency and UI issues.)
BUG=1749387

Automated import of CL 143758
elocityTracker.java
762d30a31365e5cae9ba7c2802de60a2f8c3513d 29-Mar-2009 The Android Open Source Project <initial-contribution@android.com> Merge branch 'open_source' into google_internal

Conflicts:
core/java/android/widget/TwoLineListItem.java
core/res/res/values/public.xml
preloaded-classes
eb0c86e18b7d620b679ff2a45a0233867a53a334 28-Mar-2009 Mathias Agopian <> AI 143320: am: CL 143171 am: CL 142873 fix [1732012] Only show screen rotation animation when triggered by sensor
Original author: mathias
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...

Automated import of CL 143320
urface.java
e4fbd6235c8d1c5b0ed4883ec275dd3fc9c919fb 28-Mar-2009 Dianne Hackborn <> AI 143318: am: CL 143169 am: CL 142870 Fix issue #1724917 (Applications (browser, maps, gmail) fail to retain their landscape state after coming out of sleep mode). We now rely on the listeners last known orientation, and make sure to clear it when enabling/disabling.
Also do most of the work for issue #1732012 (Only show screen rotation animation when triggered by sensor). This just needs to be hooked up to the surface flinger API when that appears.
Original author: hackbod
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...

Automated import of CL 143318
WindowManager.aidl
indowOrientationListener.java
94befd1be9b3a19fb2dda8badebb373806cb311c 28-Mar-2009 Suchi Amalapurapu <> AI 143311: am: CL 143162 am: CL 142858 Fix framework orientation issues
Define orientation limits for various cases.
Values between 235 and 295 are considered landscape,
0 - 60 are considered portrait.
0-235 are ignored since we don't support Surfaces for 180 and 270 yet.
A linear threshold value is calculated for values between 265 and 355 to switch between landscape and portrait.(different for both cases)
Based on current mode we not only calculate the threshold but also compare accordingly based on increasing or decreasing orientation
BUG = 1734325
Original author: asuchitra
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...

Automated import of CL 143311
indowOrientationListener.java
66b8ec99c5fc505877b3711a52e284bbb451f836 28-Mar-2009 Mathias Agopian <> AI 143171: am: CL 142873 fix [1732012] Only show screen rotation animation when triggered by sensor
Original author: mathias
Merged from: //branches/cupcake/...

Automated import of CL 143171
urface.java
1e880dba106b14619c3eaf94c5dc2d1a943645bc 28-Mar-2009 Dianne Hackborn <> AI 143169: am: CL 142870 Fix issue #1724917 (Applications (browser, maps, gmail) fail to retain their landscape state after coming out of sleep mode). We now rely on the listeners last known orientation, and make sure to clear it when enabling/disabling.
Also do most of the work for issue #1732012 (Only show screen rotation animation when triggered by sensor). This just needs to be hooked up to the surface flinger API when that appears.
Original author: hackbod
Merged from: //branches/cupcake/...

Automated import of CL 143169
WindowManager.aidl
indowOrientationListener.java
3b840af148766f6214c36f4a845dd5b26b18819d 27-Mar-2009 Suchi Amalapurapu <> AI 143162: am: CL 142858 Fix framework orientation issues
Define orientation limits for various cases.
Values between 235 and 295 are considered landscape,
0 - 60 are considered portrait.
0-235 are ignored since we don't support Surfaces for 180 and 270 yet.
A linear threshold value is calculated for values between 265 and 355 to switch between landscape and portrait.(different for both cases)
Based on current mode we not only calculate the threshold but also compare accordingly based on increasing or decreasing orientation
BUG = 1734325
Original author: asuchitra
Merged from: //branches/cupcake/...

Automated import of CL 143162
indowOrientationListener.java
d9b7d24667f578ec7aaf187690d5b12d6f363221 27-Mar-2009 Romain Guy <> AI 143249: am: CL 142820 am: CL 142818 Fixes #1735278. Deep hierarchies could generate stack overflow exception due to new local variables introduces in Cupcake. This change removes 4 ints from the dispatchDraw/drawChild code path to save a bit of stack on deep hierarchies. This is a stop-gap measure but that's all we can/should do for now.
Original author: romainguy
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...

Automated import of CL 143249
iewGroup.java
e1861133d51b9e6a6f658eb366630ad4f4d3ff8f 27-Mar-2009 The Android Open Source Project <initial-contribution@android.com> Merge commit 'korg/cupcake'

Conflicts:
core/java/android/webkit/WebView.java
core/java/android/widget/TwoLineListItem.java
preloaded-classes
c4a5f87c7ad6d8bca3929e1a3c0d280951f7a12e 27-Mar-2009 Romain Guy <> AI 143240: am: CL 142790 am: CL 142788 Fixes #1730741. Marquee text was not always animated in context menus.
The reason for that bug was that the marquee could potentially be stopped/started as part of the layout workflow. Unfortunately TextView was relying on setFrame() being called after onMeasure() which is *not* always the case, especially when the widget is inside of a ListView. This change simply checks for the marquee restart flag in on the onDraw() method in case we skipped the setFrame() step.
Original author: romainguy
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...

Automated import of CL 143240
iewGroup.java
c75c4364eae030a9ea6db658c4d1e38cdb05ab4c 26-Mar-2009 Mathias Agopian <> Automated import from //branches/cupcake/...@142873,142873
urface.java
02771bcb5d2156a58b825a5f8132fdf575ea862d 26-Mar-2009 Dianne Hackborn <> Automated import from //branches/cupcake/...@142870,142870
WindowManager.aidl
indowOrientationListener.java
a110047298c5add920350944ce52bd4b0ea1558b 26-Mar-2009 Suchi Amalapurapu <> Automated import from //branches/cupcake/...@142858,142858
indowOrientationListener.java
8f2d94fd77836dac14319735e40f46b18b04216d 26-Mar-2009 Romain Guy <> Automated import from //branches/donutburger/...@142820,142820
iewGroup.java
d6ab043da8f981d9307d4d0108870544c7d0eee6 26-Mar-2009 Romain Guy <> Automated import from //branches/cupcake/...@142818,142818
iewGroup.java
986003d46add147714ce7e16c9fefa8c18042fc8 26-Mar-2009 Romain Guy <> Automated import from //branches/donutburger/...@142790,142790
iewGroup.java
3661101005c6527dfd384d0c88c4a3b68ee208af 26-Mar-2009 Romain Guy <> Automated import from //branches/cupcake/...@142788,142788
iewGroup.java
8b0662878eae69ab62e859b07165f086ea65cad5 25-Mar-2009 Jean-Baptiste Queru <> Automated import from //branches/master/...@142574,142574
nimation/AccelerateDecelerateInterpolator.java
nimation/AccelerateInterpolator.java
nimation/AnimationUtils.java
nimation/AnticipateInterpolator.java
nimation/AnticipateOvershootInterpolator.java
nimation/BounceInterpolator.java
nimation/OvershootInterpolator.java
97d00b3150df9eb434f51f486a6104bb16a16cec 25-Mar-2009 Romain Guy <> Automated import from //branches/donutburger/...@142465,142465
nimation/AccelerateDecelerateInterpolator.java
nimation/AccelerateInterpolator.java
nimation/AnimationUtils.java
nimation/AnticipateInterpolator.java
nimation/AnticipateOvershootInterpolator.java
nimation/BounceInterpolator.java
nimation/OvershootInterpolator.java
3fd65be666d85ff485504cea6ba645103acb8ddc 25-Mar-2009 Suchi Amalapurapu <> Automated import from //branches/master/...@142306,142306
indowOrientationListener.java
543d69d0eabfea24502b74215abea880f443afcb 25-Mar-2009 Suchi Amalapurapu <> Automated import from //branches/donutburger/...@142291,142291
indowOrientationListener.java
4087f5425c3799ebd4f3883f4f222ad14f27b3e0 25-Mar-2009 Romain Guy <> Automated import from //branches/master/...@141886,141886
iewGroup.java
iewRoot.java
nimation/TranslateAnimation.java
bb93d5598daa3312318c29401815bddf1df8c4de 25-Mar-2009 Romain Guy <> Automated import from //branches/donutburger/...@141885,141885
iewGroup.java
iewRoot.java
nimation/TranslateAnimation.java
cf843835b51d1a0e4a7f3a64fd5721ac01208d4a 25-Mar-2009 Dianne Hackborn <> Automated import from //branches/donutburger/...@141042,141042
nputmethod/InputMethodManager.java
4eba271a64b98a5fc38227f40190b879f807acf5 25-Mar-2009 Dianne Hackborn <> Automated import from //branches/master/...@141043,141043
nputmethod/InputMethodManager.java
9cb3e09ec49351401cf19b5ae5092dd9ca90a538 25-Mar-2009 Suchi Amalapurapu <> Automated import from //branches/cupcake/...@142231,142231
indowOrientationListener.java
1bf5e22da72b477c8b7a45ed85a4dba94be39db5 25-Mar-2009 Dianne Hackborn <> Automated import from //branches/donutburger/...@141001,141001
nputmethod/BaseInputConnection.java
nputmethod/InputConnectionWrapper.java
nputmethod/InputMethodManager.java
51bf077883df4f5cc816fbfec6d19eedffc26d70 25-Mar-2009 Dianne Hackborn <> Automated import from //branches/master/...@141004,141004
nputmethod/BaseInputConnection.java
nputmethod/InputConnectionWrapper.java
nputmethod/InputMethodManager.java
32f2ccd39334193ea4ed54cb418d8a3607e4b2ec 25-Mar-2009 Romain Guy <> Automated import from //branches/cupcake/...@141884,141884
iewGroup.java
iewRoot.java
nimation/TranslateAnimation.java
c2ad241504fcaa12d4579d3b0b4038d1ca8d08c9 20-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@141571
nputmethod/BaseInputConnection.java
nputmethod/InputConnectionWrapper.java
nputmethod/InputMethodManager.java
105925376f8d0f6b318c9938c7b83ef7fef094da 19-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@140373
estureDetector.java
WindowManager.aidl
eyEvent.java
iew.java
iewDebug.java
iewRoot.java
iewTreeObserver.java
nputmethod/EditorInfo.java
2a73de7b21a89aa2ba4c254d28658b49793425b2 18-Mar-2009 Jean-Baptiste Queru <jbq@google.com> Merge commit 'remotes/korg/cupcake' into merge

Conflicts:
core/java/android/view/animation/TranslateAnimation.java
core/jni/Android.mk
core/res/res/values-en-rGB/strings.xml
libs/audioflinger/AudioFlinger.cpp
libs/surfaceflinger/LayerScreenshot.cpp
packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
ba87e3e6c985e7175152993b5efcc7dd2f0e1c93 13-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@138607
iewDebug.java
iewRoot.java
indowOrientationListener.java
c39a6e0c51e182338deb8b63d07933b585134929 11-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@137873
iew.java
iewDebug.java
indowManagerPolicy.java
nputmethod/InputMethodInfo.java
nputmethod/InputMethodManager.java
b2a3dd88a53cc8c6d19f6dc8ec4f3d6c4abd9b54 09-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@137197
estureDetector.java
apticFeedbackConstants.java
iew.java
nputmethod/BaseInputConnection.java
nputmethod/EditorInfo.java
nputmethod/ExtractedText.java
nputmethod/InputConnection.java
nputmethod/InputConnectionWrapper.java
nputmethod/InputMethodManager.java
9181dd4e08c8ecba8a921d88ea6a53e310cfc2f8 08-Mar-2009 Cyril Mottier <cyrilmottier@gmail.com> A simple fix on a Javadoc comment. The main purpose of this commit is
for me to get to know git and repo and how to contribute to the Android
project.
nimation/TranslateAnimation.java
f5b4b98fada53d91c4c2ebeb5a1d33ccc95c94d2 06-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@136745
estureDetector.java
4df2423a947bcd3f024cc3d3a1a315a8dc428598 05-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@136594
iewGroup.java
nimation/Animation.java
nimation/AnimationSet.java
nputmethod/EditorInfo.java
nputmethod/InputMethod.java
nputmethod/InputMethodManager.java
nputmethod/InputMethodSession.java
41df3851287361a377203fb5ad4397475831eb27 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135859
nimation/TranslateAnimation.java
bdbdc4f92951200a88d4c754448b9f91626ffc04 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135856
nimation/AlphaAnimation.java
nimation/AnimationSet.java
nimation/RotateAnimation.java
nimation/ScaleAnimation.java
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
bsSavedState.java
ontextMenu.java
ontextThemeWrapper.java
isplay.java
ocusFinder.java
ocusFinderHelper.java
estureDetector.java
ravity.java
apticFeedbackConstants.java
ApplicationToken.aidl
OnKeyguardExitResult.aidl
RotationWatcher.aidl
Window.aidl
WindowManager.aidl
WindowSession.aidl
nflateException.java
eyCharacterMap.java
eyEvent.aidl
eyEvent.java
ayoutInflater.java
enu.java
enuInflater.java
enuItem.java
otionEvent.aidl
otionEvent.java
rientationEventListener.java
rientationListener.java
awInputEvent.java
emotableViewMethod.java
oundEffectConstants.java
ubMenu.java
urface.aidl
urface.java
urfaceHolder.java
urfaceSession.java
urfaceView.java
ouchDelegate.java
elocityTracker.java
iew.java
iewConfiguration.java
iewDebug.java
iewGroup.java
iewManager.java
iewParent.java
iewRoot.java
iewStub.java
iewTreeObserver.java
olumePanel.java
indow.java
indowManager.aidl
indowManager.java
indowManagerImpl.java
indowManagerPolicy.java
indowOrientationListener.java
nimation/AccelerateDecelerateInterpolator.java
nimation/AccelerateInterpolator.java
nimation/AlphaAnimation.java
nimation/Animation.java
nimation/AnimationSet.java
nimation/AnimationUtils.java
nimation/CycleInterpolator.java
nimation/DecelerateInterpolator.java
nimation/GridLayoutAnimationController.java
nimation/Interpolator.java
nimation/LayoutAnimationController.java
nimation/LinearInterpolator.java
nimation/RotateAnimation.java
nimation/ScaleAnimation.java
nimation/Transformation.java
nimation/TranslateAnimation.java
nimation/package.html
nputmethod/BaseInputConnection.java
nputmethod/CompletionInfo.aidl
nputmethod/CompletionInfo.java
nputmethod/EditorInfo.aidl
nputmethod/EditorInfo.java
nputmethod/ExtractedText.aidl
nputmethod/ExtractedText.java
nputmethod/ExtractedTextRequest.aidl
nputmethod/ExtractedTextRequest.java
nputmethod/InputBinding.aidl
nputmethod/InputBinding.java
nputmethod/InputConnection.java
nputmethod/InputMethod.java
nputmethod/InputMethodInfo.aidl
nputmethod/InputMethodInfo.java
nputmethod/InputMethodManager.java
nputmethod/InputMethodSession.java
nputmethod/package.html
ackage.html
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
bsSavedState.java
ontextMenu.java
ontextThemeWrapper.java
isplay.java
ocusFinder.java
ocusFinderHelper.java
estureDetector.java
ravity.java
apticFeedbackConstants.java
ApplicationToken.aidl
OnKeyguardExitResult.aidl
RotationWatcher.aidl
Window.aidl
WindowManager.aidl
WindowSession.aidl
nflateException.java
eyCharacterMap.java
eyEvent.aidl
eyEvent.java
ayoutInflater.java
enu.java
enuInflater.java
enuItem.java
otionEvent.aidl
otionEvent.java
rientationEventListener.java
rientationListener.java
awInputEvent.java
emotableViewMethod.java
oundEffectConstants.java
ubMenu.java
urface.aidl
urface.java
urfaceHolder.java
urfaceSession.java
urfaceView.java
ouchDelegate.java
elocityTracker.java
iew.java
iewConfiguration.java
iewDebug.java
iewGroup.java
iewManager.java
iewParent.java
iewRoot.java
iewStub.java
iewTreeObserver.java
olumePanel.java
indow.java
indowManager.aidl
indowManager.java
indowManagerImpl.java
indowManagerPolicy.java
indowOrientationListener.java
nimation/AccelerateDecelerateInterpolator.java
nimation/AccelerateInterpolator.java
nimation/AlphaAnimation.java
nimation/Animation.java
nimation/AnimationSet.java
nimation/AnimationUtils.java
nimation/CycleInterpolator.java
nimation/DecelerateInterpolator.java
nimation/GridLayoutAnimationController.java
nimation/Interpolator.java
nimation/LayoutAnimationController.java
nimation/LinearInterpolator.java
nimation/RotateAnimation.java
nimation/ScaleAnimation.java
nimation/Transformation.java
nimation/TranslateAnimation.java
nimation/package.html
nputmethod/BaseInputConnection.java
nputmethod/CompletionInfo.aidl
nputmethod/CompletionInfo.java
nputmethod/EditorInfo.aidl
nputmethod/EditorInfo.java
nputmethod/ExtractedText.aidl
nputmethod/ExtractedText.java
nputmethod/ExtractedTextRequest.aidl
nputmethod/ExtractedTextRequest.java
nputmethod/InputBinding.aidl
nputmethod/InputBinding.java
nputmethod/InputConnection.java
nputmethod/InputMethod.java
nputmethod/InputMethodInfo.aidl
nputmethod/InputMethodInfo.java
nputmethod/InputMethodManager.java
nputmethod/InputMethodSession.java
nputmethod/package.html
ackage.html
076357b8567458d4b6dfdcf839ef751634cd2bfb 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@132589
estureDetector.java
eyEvent.java
iew.java
iewConfiguration.java
iewRoot.java
nputmethod/BaseInputConnection.java
nputmethod/EditorInfo.java
nputmethod/InputConnection.java
nputmethod/InputMethodManager.java
3dec7d563a2f3e1eb967ce2054a00b6620e3558c 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@137055
estureDetector.java
eyEvent.java
iew.java
iewConfiguration.java
iewRoot.java
nputmethod/BaseInputConnection.java
nputmethod/EditorInfo.java
nputmethod/InputConnection.java
nputmethod/InputMethodManager.java
15ab3eae2ec3d73b3e8aa60b33ae41445bf83f4b 20-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132569
eyEvent.java
rientationEventListener.java
urfaceHolder.java
iewRoot.java
indowManagerPolicy.java
indowOrientationListener.java
3001a035439d8134a7d70d796376d1dfbff3cdcd 19-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132276
estureDetector.java
rientationEventListener.java
rientationListener.java
emotableViewMethod.java
iew.java
iewConfiguration.java
iewGroup.java
iewRoot.java
iewTreeObserver.java
indowManager.java
indowOrientationListener.java
nimation/Animation.java
nputmethod/BaseInputConnection.java
nputmethod/InputConnection.java
nputmethod/InputMethodManager.java
da996f390e17e16f2dfa60e972e7ebc4f868f37e 13-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@131421
apticFeedbackConstants.java
WindowSession.aidl
iew.java
iewRoot.java
indowManager.java
indowManagerPolicy.java
nputmethod/BaseInputConnection.java
nputmethod/InputConnection.java
nputmethod/InputMethodManager.java
d24b8183b93e781080b2c16c487e60d51c12da31 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
ocusFinder.java
estureDetector.java
WindowManager.aidl
eyCharacterMap.java
eyEvent.java
ouchDelegate.java
iew.java
iewConfiguration.java
iewGroup.java
iewRoot.java
olumePanel.java
indow.java
indowManager.java
indowManagerPolicy.java
nimation/Animation.java
nimation/AnimationSet.java
nimation/LayoutAnimationController.java
nputmethod/BaseInputConnection.java
nputmethod/DefaultInputMethod.java
nputmethod/EditorInfo.java
nputmethod/ExtractedText.java
nputmethod/ExtractedTextRequest.java
nputmethod/InputConnection.java
nputmethod/InputConnectionWrapper.java
nputmethod/InputMethod.java
nputmethod/InputMethodManager.java
nputmethod/MutableInputConnectionWrapper.java
94cbba0933e50d593c1c462cff698dd3387ba95b 22-Jan-2009 The Android Open Source Project <initial-contribution@android.com> Merge branch 'cupcake'
f1e484acb594a726fb57ad0ae4cfe902c7f35858 22-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127436
indowManagerPolicy.java
nputmethod/InputConnection.java
nputmethod/InputConnectionWrapper.java
nputmethod/InputMethodManager.java
7547115694ef213f6c4ead3841296370cc07b4af 20-Jan-2009 The Android Open Source Project <initial-contribution@android.com> Merge branch 'cupcake'
22f7dfd23490a3de2f21ff96949ba47003aac8f8 20-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127101
iewRoot.java
nputmethod/InputMethodManager.java
0fda766e53fba7e829fe6e145738f6a94ce48bda 16-Jan-2009 android-build SharedAccount <android-build@undroid16.corp.google.com> Merge branch 'cupcake'
9266c558bf1d21ff647525ff99f7dadbca417309 16-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@126645
WindowManager.aidl
awInputEvent.java
iew.java
iewRoot.java
indowManager.java
nimation/Animation.java
nputmethod/DefaultInputMethod.java
nputmethod/InputMethod.java
nputmethod/InputMethodManager.java
e570a0fa86c2eea2680f07e2c0c546f104bea948 10-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@125939
b798689749c64baba81f02e10cf2157c747d6b46 10-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@125939
enu.java
urfaceView.java
iew.java
iewRoot.java
nimation/Animation.java
nimation/package.html
nputmethod/BaseInputConnection.java
nputmethod/DefaultInputMethod.java
nputmethod/InputConnection.java
nputmethod/InputConnectionWrapper.java
nputmethod/InputMethod.java
nputmethod/InputMethodManager.java
nputmethod/InputMethodSession.java
nputmethod/package.html
9bdf576615231e4b9693f08bfe3dc886c2edf49e 03-Jan-2009 Jon Larimer <jlarimer@gmail.com> proposed fix for issue #1703: http://code.google.com/p/android/issues/detail?id=1703
urfaceView.java
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
ontextMenu.java
ravity.java
Window.aidl
WindowManager.aidl
WindowSession.aidl
eyEvent.java
enu.java
enuItem.java
otionEvent.java
rientationListener.java
urfaceView.java
iew.java
iewConfiguration.java
iewDebug.java
iewGroup.java
iewParent.java
iewRoot.java
iewTreeObserver.java
olumePanel.java
indow.java
indowManager.java
indowManagerImpl.java
indowManagerPolicy.java
nimation/Animation.java
nimation/AnimationSet.java
nimation/Transformation.java
nputmethod/BaseInputConnection.java
nputmethod/CompletionInfo.aidl
nputmethod/CompletionInfo.java
nputmethod/DefaultInputMethod.java
nputmethod/EditorInfo.aidl
nputmethod/EditorInfo.java
nputmethod/ExtractedText.aidl
nputmethod/ExtractedText.java
nputmethod/ExtractedTextRequest.aidl
nputmethod/ExtractedTextRequest.java
nputmethod/InputBinding.aidl
nputmethod/InputBinding.java
nputmethod/InputConnection.java
nputmethod/InputConnectionWrapper.java
nputmethod/InputMethod.java
nputmethod/InputMethodInfo.aidl
nputmethod/InputMethodInfo.java
nputmethod/InputMethodManager.java
nputmethod/InputMethodSession.java
nputmethod/MutableInputConnectionWrapper.java
nputmethod/package.html
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
bsSavedState.java
ontextMenu.java
ontextThemeWrapper.java
isplay.java
ocusFinder.java
ocusFinderHelper.java
estureDetector.java
ravity.java
ApplicationToken.aidl
OnKeyguardExitResult.aidl
RotationWatcher.aidl
Window.aidl
WindowManager.aidl
WindowSession.aidl
nflateException.java
eyCharacterMap.java
eyEvent.aidl
eyEvent.java
ayoutInflater.java
enu.java
enuInflater.java
enuItem.java
otionEvent.aidl
otionEvent.java
rientationListener.java
awInputEvent.java
oundEffectConstants.java
ubMenu.java
urface.aidl
urface.java
urfaceHolder.java
urfaceSession.java
urfaceView.java
ouchDelegate.java
elocityTracker.java
iew.java
iewConfiguration.java
iewDebug.java
iewGroup.java
iewManager.java
iewParent.java
iewRoot.java
iewStub.java
iewTreeObserver.java
olumePanel.java
indow.java
indowManager.aidl
indowManager.java
indowManagerImpl.java
indowManagerPolicy.java
nimation/AccelerateDecelerateInterpolator.java
nimation/AccelerateInterpolator.java
nimation/AlphaAnimation.java
nimation/Animation.java
nimation/AnimationSet.java
nimation/AnimationUtils.java
nimation/CycleInterpolator.java
nimation/DecelerateInterpolator.java
nimation/GridLayoutAnimationController.java
nimation/Interpolator.java
nimation/LayoutAnimationController.java
nimation/LinearInterpolator.java
nimation/RotateAnimation.java
nimation/ScaleAnimation.java
nimation/Transformation.java
nimation/TranslateAnimation.java
nimation/package.html
ackage.html