Merge commit '57fa3e8b4c94125ddb5be015dd7fbde4a458894f'
* commit '57fa3e8b4c94125ddb5be015dd7fbde4a458894f':
Support haptic feedback for virtual keys defined in key layout.
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
Merge commit '9e32a438fd87180692da55197972ecddb1a731d9' into gingerbread-plus-aosp
* commit '9e32a438fd87180692da55197972ecddb1a731d9':
Support haptic feedback for virtual keys defined in key layout.
Merge commit '98f310879790a98c4c24cd06677e08bf49f1cea0' into gingerbread-plus-aosp
* commit '98f310879790a98c4c24cd06677e08bf49f1cea0':
DO NOT MERGE Fix bug 3026771, other design/asset fixes.
* Button text changed to bold by default.
* Change notification divider to lighter gray (new asset).
* Change "Clear" notification button to use system small button assets.
Change-Id: Id1f1bdcf8c034186ad9acbdbdd544546bd32bbd8
Merge commit 'e468a4bc74f1b241b3de09ea99251a419e40c6d3'
* commit 'e468a4bc74f1b241b3de09ea99251a419e40c6d3':
A few additions to the download manager public API documentation
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
Merge commit '751b47313886264e1229ab67184c9771424be402' into gingerbread-plus-aosp
* commit '751b47313886264e1229ab67184c9771424be402':
A few additions to the download manager public API documentation
This makes it more future-proof and maintainable, not exposing the
internal bitpacking state.
The implementation is unchanged (the policy is still just an int we pass
around).
Also starts to introduce VmPolicy, for things which are process-wide,
not per-thread. As an initial user, make SQLite's Cursor finalization
leak warnings use StrictMode.
Change-Id: Idedfba4e965716f5089a52036421460b1f383725
Fix 3052285 by not publishing the BitmapRegionDecoder API until the honeycomb release.
Bug: 3052285
Change-Id: Ie339e414c1a5581e1d38684621e0e97162616977
Merge commit '277465fb5bfc74716f194f1abc2befb42ed73590'
* commit '277465fb5bfc74716f194f1abc2befb42ed73590':
b/3054044 Make allDay event times format in utc
Merge commit '57bd0615fa48124c4607fbb1ba09a7c7160be146' into gingerbread-plus-aosp
* commit '57bd0615fa48124c4607fbb1ba09a7c7160be146':
b/3054044 Make allDay event times format in utc
AllDay events could get formatted with the local time zone
instead of utc. This makes it so that using the utc flag in the
wrapper for formatting correctly passes in UTC as the time zone.
Change-Id: I65090ef939ce64c1a942c7683cf76a927c02cb53
The new assets are just copies of old assets. However, now
the code is set up properly, and when we do get final
assets no new code needs to be written, and both TextView
and the select action mode for the browser will be updated.
Change-Id: I9a1461bf447f6bbc2782d8f948d873cbeeccbcb0
Dismiss the full screen plugin view when the user navigates to a
new page or tab. This ensures the plugin does not cover up new
content when the browser switches tabs or loads a new URL.
Change-Id: I35d65073dbc772ab5babd20287d4d2fe598178e5
http://b/2908332
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
Merge commit '6ce5f60c791401ed0faf5d36baf4fc6612358676'
* commit '6ce5f60c791401ed0faf5d36baf4fc6612358676':
Remove OBBs from state list when volume unmounted
Merge commit 'efb8b42789a291e38a7e837f64d18bcb511f65f9'
* commit 'efb8b42789a291e38a7e837f64d18bcb511f65f9':
Avoid NPE when viewing failed legacy download with no local path
Merge commit '0a69f597604254bc37721b135ab612eaacdd0cbd' into gingerbread-plus-aosp
* commit '0a69f597604254bc37721b135ab612eaacdd0cbd':
Rub in a little 'ol log-b-gone.
Merge commit '38cf8867a8d3e8d5159abd0bd0e6a3b0b8348b94' into gingerbread-plus-aosp
* commit '38cf8867a8d3e8d5159abd0bd0e6a3b0b8348b94':
Remove OBBs from state list when volume unmounted
Don't keep tracking OBBs when the volume they're located on goes away.
Remove them from our state tracking maps and then send a notification to
any listener that is still around.
Add a dump handler to MountService so the state of the mount lists
can be inspected.
Change the API to just make a callback directly to the change listener
when mount is called when it's already mounted or unmount called when
it's already unmounted.
Change-Id: Idb4afbb943ca5ca775825f908bff334e3ce1cfcc
Merge commit '4ba2817c869d4ec6b518a57ea32cc3765b18b0db' into gingerbread-plus-aosp
* commit '4ba2817c869d4ec6b518a57ea32cc3765b18b0db':
Avoid NPE when viewing failed legacy download with no local path
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