If vold isn't told "none" for the key, it will try to mount it as an
encrypted container.
Also remove the -c option from mkobb since it can be triggered by
including a key as well.
Change-Id: I40a8ff3f778bfda682312630e6687ecc14b51844
Merge commit '1fa69735d9e786da4b20c3ab3da3aa66f3cf8116' into gingerbread-plus-aosp
* commit '1fa69735d9e786da4b20c3ab3da3aa66f3cf8116':
Fix issue #3037083: Problem report for Pinball
The app was toggling between hiding and showing the status bar, because
the dialog was large enough to fill the screen but didn't set to hide
the status bar.
It turns out that the code to determine the top fullscreen window is
intrinsically unstable, since it relies on comparing a window's frame
with the screen, yet the window frame can change as a result of changes
such as hiding the status bar.
Instead, we now simplify all of this to just say that the top fillxfill
window gets to control the status bar.
Change-Id: I22913adf7235fe0d52612f6738c7c94351274e38
Merge commit '6ce5f60c791401ed0faf5d36baf4fc6612358676'
* commit '6ce5f60c791401ed0faf5d36baf4fc6612358676':
Remove OBBs from state list when volume unmounted
Merge commit '0a69f597604254bc37721b135ab612eaacdd0cbd' into gingerbread-plus-aosp
* commit '0a69f597604254bc37721b135ab612eaacdd0cbd':
Rub in a little 'ol log-b-gone.
Merge commit 'ab2e6284845794079d809e62c52c6c380b31c4b5' into gingerbread-plus-aosp
* commit 'ab2e6284845794079d809e62c52c6c380b31c4b5':
Use the private version of userActivity.
Merge commit '8b28441adab59f2bb0d92c8a717af75331249e08' into gingerbread-plus-aosp
* commit '8b28441adab59f2bb0d92c8a717af75331249e08':
Being already unmounted is not a failure
Merge commit '27358a69b33eaa268ee75ef778ec824c8085adcc' into gingerbread-plus-aosp
* commit '27358a69b33eaa268ee75ef778ec824c8085adcc':
Only allow 8 OBBs to be mounted by a UID
Merge commit '38cf8867a8d3e8d5159abd0bd0e6a3b0b8348b94' into gingerbread-plus-aosp
* commit '38cf8867a8d3e8d5159abd0bd0e6a3b0b8348b94':
Remove OBBs from state list when volume unmounted
Using a plaintext password doesn't work unless it's a certain length, so
just hash the plaintext password with MD5 to make it the right length
for the twofish encryption.
Tracking the IInterface doesn't make much sense since it's different
each time, so track the IBinder instead. That way we can unlinkToDeath
the binder when the last thing it's holding onto goes away.
Change-Id: Id828d25b4d74f27e9d8b4bfb3909c964469cc473
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
We were flunking the enforcement of DEVICE_POWER since apps don't need that permission to use a wake
lock.
Bug: 3051596
Change-Id: I1910d8402adb3e9a4d8635de5d2a301f6286f216
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
Merge commit '727d67d4fb8721b0291312e4cca33927dfba0e31' into gingerbread-plus-aosp
* commit '727d67d4fb8721b0291312e4cca33927dfba0e31':
location: rebind to network location and geocoder services after package update
Merge commit '198297b495d975cd4889f5136cd69368bd319eed'
* commit '198297b495d975cd4889f5136cd69368bd319eed':
Revert "Revert "Check for the DEVICE_POWER permission in userActivity.""
Merge commit '8bd545ab4f7e75634c970b50ed15c20858d6ac0c'
* commit '8bd545ab4f7e75634c970b50ed15c20858d6ac0c':
Move all the permissions check up for unmount
Merge commit 'f01a873029641da2155ca1882f311d8f4e92675a' into gingerbread-plus-aosp
* commit 'f01a873029641da2155ca1882f311d8f4e92675a':
Revert "Revert "Check for the DEVICE_POWER permission in userActivity.""
Merge commit '212d81a004f50e51ed8f6d803b79f4b71546b351' into gingerbread-plus-aosp
* commit '212d81a004f50e51ed8f6d803b79f4b71546b351':
Move all the permissions check up for unmount
We have already scanned the state of the OBB in mountObb, so check the
caller against the stored state in the unmountObb call. This allows us
to ensure the calling binder is the same one that mounted it since we
tie the lifecycle of the OBB to the lifecycle of the binder.
Change-Id: I45d9cfbab5d3f5b37a6a9b594b10bd8b91cccc45
Merge commit '05e110506156a1b782232833b907afb428802b69'
* commit '05e110506156a1b782232833b907afb428802b69':
Revert "Check for the DEVICE_POWER permission in userActivity."
Merge commit 'a25eabad23d7b8fd430ada757ae4e9f2559f8845' into gingerbread-plus-aosp
* commit 'a25eabad23d7b8fd430ada757ae4e9f2559f8845':
Revert "Check for the DEVICE_POWER permission in userActivity."