1176 Commits

Author SHA1 Message Date
Jeff Brown
56194ebec6 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
2011-03-02 19:57:07 -08:00
Christopher Tate
bd8b6f25bb Fix binder proxy death notice tracking
There was an issue with stale recipient tracking when BinderProxy weak
references had been purged and a new proxy object allocated for a
still-live underlying IBinder.  The death recipient bookkeeping has
now been reworked so that it's fundmentally tied to the BinderProxy
instances, not maintained as global state, to prevent this sort of
confusion entirely.

Bug 3499939

Change-Id: I75c5216b6d53b90868ac969e32c9725201e51be3
2011-03-01 18:25:52 -08:00
Mike Lockwood
c4308f01c9 Move USB framework support from android.hardware to android.hardware.usb package
Change-Id: I00fd4f0caaa4aebe48f71c576bb211b5f38bf88d
Signed-off-by: Mike Lockwood <lockwood@android.com>
2011-03-01 08:07:20 -08:00
Dianne Hackborn
c9119f5034 Add ParcelFileDescriptor APIs to get raw fd.
Change-Id: I66ba72ffffd27237e60c9411453eef950ae62705
2011-02-28 18:03:26 -08:00
Elliott Hughes
20ccb06a7c Merge "Fix Parcel.writeNative to not ignore 'offset'." 2011-02-28 15:11:00 -08:00
Elliott Hughes
a28b83ee04 Fix Parcel.writeNative to not ignore 'offset'.
Also switch to using libcore's array bounds checking. (This variant had no
detail message and was missing the length check.)

Bug: http://code.google.com/p/android/issues/detail?id=15075
Change-Id: Icfc045bd59403b59f02d95c8514abf881d3996e5
2011-02-28 14:55:29 -08:00
Christopher Tate
d5dac80fed Merge "Binder linkage no longer depends on JNI objrefs as persistent tokens" 2011-02-28 12:50:09 -08:00
Mathias Agopian
8c8cfec0ea Merge "Fix sp<> conversion operator / constructor" 2011-02-28 12:50:04 -08:00
Christopher Tate
0b41448506 Binder linkage no longer depends on JNI objrefs as persistent tokens
There are two areas that have changed to eliminate the assumption that
local jobject references are both canonical and persistent:

1. JavaBBinderHolder no longer holds onto and reuses it parent object
reference per se.  Since the underlying JavaBBinder object holds a
real global ref, this was redundant anyway.  Now, for purposes of its
transient need to perform JNI operations, it simply uses the current
jobject ref(s) passed during method invocation, and no longer attempts
to hold these refs beyond the scope of a single invocation.

2. Binder obituaries no longer assume that a jobject reference to a
recipient will always compare == as a 32-bit value with any future
reference to the same object.  The implementation now asks Dalvik
whether object references match.

This amended patch fixes the earlier bug around races between
remote binder death cleanup and local explicit unregistration of
VM-side death recipients.

Bug 2090115

Change-Id: I70bd788a80ea953632b1f466f385ab6b78ef2913
2011-02-28 11:37:20 -08:00
Dianne Hackborn
99aac7beca You can now specify a custom display size as NxM.
Change-Id: Ieb6df51aab009689f0f19b8887025261c5ceb69f
2011-02-28 11:23:18 -08:00
Jeff Brown
02cafc9f6e Log errors reading input channel from parcel.
Bug: 3378634
Change-Id: I47908e48b8348f0366dcef545e828b65d99d81a6
2011-02-26 15:39:12 -08:00
Mathias Agopian
32a55cf66e Fix sp<> conversion operator / constructor
some of the conversion operators were not using the proper
pointer type when calling incStrong/decStrong, usually it
has no bad consequences, but for some implementation
of the ref-counted object it could lead to recording the wrong
owner id.

Change-Id: If574b9069b8a4cf6e0911a992c8f095aba799995
2011-02-25 16:20:52 -08:00
Christopher Tate
e2ed9562fc Revert "Binder linkage no longer depends on JNI objrefs as persistent tokens"
This reverts commit c2d55dd89743c8a38deb809f3cdf1ad2d1dbac2b.
2011-02-25 15:18:53 -08:00
Vasu Nori
e6044145bc bug:3467948 if byteArray couldn't be allocated for blob, throw exception
Change-Id: I73e36c10f31086ea567debad536350316b2df67f
2011-02-25 08:56:07 -08:00
Eric Hassold
447ee77431 Merge "Detect out of memory in extractAlpha" 2011-02-24 13:47:16 -08:00
Christopher Tate
7e8a69ed5c Merge "Binder linkage no longer depends on JNI objrefs as persistent tokens" 2011-02-24 13:22:19 -08:00
Christopher Tate
c2d55dd897 Binder linkage no longer depends on JNI objrefs as persistent tokens
There are two areas that have changed to eliminate the assumption that
local jobject references are both canonical and persistent:

1. JavaBBinderHolder no longer holds onto and reuses it parent object
reference per se.  Since the underlying JavaBBinder object holds a
real global ref, this was redundant anyway.  Now, for purposes of its
transient need to perform JNI operations, it simply uses the current
jobject ref(s) passed during method invocation, and no longer attempts
to hold these refs beyond the scope of a single invocation.

2. Binder obituaries no longer assume that a jobject reference to a
recipient will always compare == as a 32-bit value with any future
reference to the same object.  The implementation now asks Dalvik
whether object references match.

Bug 2090115

Change-Id: If62edd554d0a9fbb2d2977b0cbf8ad7cc8e2e68d
2011-02-24 13:15:09 -08:00
Eric Hassold
ef7be262e5 Detect out of memory in extractAlpha
When extractAlpha() native method in Skia fails to allocate pixels,
it resets target bitmap. This change detects when such empty bitmap
is returned, and throws a OutOfMemory Java exception.

Depends on https://android-git.corp.google.com/g/97793

Bug: 3418381
Change-Id: I65a84998be089c49ed5005f6995bdc4f4d1669bc
2011-02-24 11:21:13 -08:00
Derek Sollenberger
62c7574c02 Merge "Skia Merge (revision 808)" 2011-02-24 05:27:34 -08:00
Romain Guy
47b8adec39 Add a new Camera API to control the camera's location
Change-Id: Id9a082d2def803eb527e1987875e0d8a22c6e8aa
2011-02-23 19:51:42 -08:00
Irfan Sheriff
563db5343f Merge "Add support for background scanning" 2011-02-23 10:41:12 -08:00
James Dong
e00cab707d Application-managed callback buffer support for raw image
bug - 3292153

Change-Id: I9789f7c5cde3a3889d7375e881181e9152d95fc2
2011-02-22 20:48:15 -08:00
Kenny Root
1665da555d Merge "Fix poll options for NativeActivity's hasEvents" 2011-02-22 16:08:42 -08:00
Kenny Root
2bb10f4299 Fix poll options for NativeActivity's hasEvents
NativeActivity created a pipe to wake up a Looper it's attached to, but
it failed to set the right options for the read part of the pipe. This
affects only the NativeActivity API call for AInputQueue_hasEvents

Change-Id: I02e5dad4e700f4c724b3187a4b7e0df931dd1eed
2011-02-22 15:29:21 -08:00
Fabrice Di Meglio
beefeb6151 Merge "Code cleaning" 2011-02-22 15:03:24 -08:00
Fabrice Di Meglio
dd347df9f8 Code cleaning
- use constants whenever possible
- better memory allocation of buffers
- add logging thru conditional compilation

Change-Id: I486195b1cb35046ea00971630832978c1b2e64a0
2011-02-22 14:52:50 -08:00
Derek Sollenberger
6062c5912d Skia Merge (revision 808)
This is a companion CL to the one found in /external/skia

Change-Id: If81748545435cab20a5d8479329ab333cb973e16
2011-02-22 16:07:36 -05:00
Jaikumar Ganesh
b7508df1f6 Merge "Fix compiler errors when compiled with debug option." 2011-02-22 10:57:48 -08:00
Jaikumar Ganesh
2653a1e7ca Fix compiler errors when compiled with debug option.
The Logv statement was missing the format specifier.

Change-Id: Ibf986d28dabfdbb3fbfd75381cb349448c6e57e7
2011-02-22 10:53:29 -08:00
Irfan Sheriff
fcc0845cf9 Add support for background scanning
Background scanning (preferred network offload) allows us the
host to sleep while the dongle monitors the presence of any
preferred networks. This allows us for significant power savings
since the system does not have to wake up often to initiate
a scan

Bug: 3453021
Change-Id: I7c1dbfd0c3f717df81e4da6091c4c5657c9ec9ca
2011-02-21 14:02:44 -08:00
Jeff Brown
cc0c159e9b 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
2011-02-19 06:14:21 -08:00
Jeff Brown
6f2fba428c 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
2011-02-19 05:23:10 -08:00
Irfan Sheriff
3ca6d6bbfe Merge "data activity reporting on wifi" 2011-02-17 14:06:52 -08:00
Irfan Sheriff
227bec4915 data activity reporting on wifi
Initial checkin, need icons to complete the feature

Bug: 3412258

Change-Id: I9a3ecc8159cc314d84707065dafe23d402409a84
2011-02-17 13:57:55 -08:00
Jeff Brown
ebbd5d14ad Fix a regression with MotionEvent parceling.
Also added some more unit tests.

Change-Id: I413654294d1a998eec056884e6df5eaa50f3daf4
2011-02-17 13:01:34 -08:00
Jeff Brown
45708bf2f0 Merge "Add support for arbitrary axes in MotionEvents." 2011-02-16 20:00:21 -08:00
Jeff Brown
91c69ab015 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
2011-02-15 19:14:37 -08:00
Robert Greenwalt
a04ee9fa7e Merge "Remove some unused wifi dhcp code." 2011-02-15 14:26:37 -08:00
Robert Greenwalt
19f8ca846b Remove some unused wifi dhcp code.
Change-Id: I114b3772b334a41936c6ed4bb8304f6914481ef1
2011-02-15 13:50:21 -08:00
Jaikumar Ganesh
a44a1e77ef Distinguish between NAP and PAN role disconnections
Distinguish between NAP and PANU disconnect in BT tethering
and call appropriate functions. We were never disconnecting
NAP role devices.

ToDo: BluetoothService needs to be refactored, its become too big
1) BluetoothAdapter and BluetoothDevice properties need to be moved to separate
classes.
2) BluetoothPanProfile and BluetoothInputDeviceProfile which are handled
by BluetoothService need to be moved to a separate file.
3) Integrate PAN to the profile state machine.

Change-Id: I32a8d274f38c78931434bd9738c8f6570ba89fcf
2011-02-14 15:00:25 -08:00
Glenn Kasten
8b4b97a14a Bug 3352047 Wrong message when adjusting volume
Add hidden AudioManager.getDevicesForStream and output device codes.

Change-Id: I4d1c1d3b6a077cd117720817d1f733dda557b947
2011-02-10 14:37:42 -08:00
Andy McFadden
ccc9d14d6c Merge "Use JNI helper function to get buffer address" 2011-02-08 16:03:24 -08:00
Stan Chesnutt
320b56dcdd Parse the rssi result string in case-insensitive manner. This matches similar
code in wpa-supplicant, driver_wext.c

Change-Id: Ibeff41f9ef9168e47c338513b4c8c8781254e068
2011-02-08 14:50:30 -08:00
Andy McFadden
90f4c18a86 Use JNI helper function to get buffer address
This replaces the Get/Release sequence with a call to
jniGetNonMovableArrayElements.

Bug 3409356

Change-Id: I847fd67ac71d904fef0c807ac25a29f802e6cd45
2011-02-08 14:23:59 -08:00
Mike Cleron
b31688eb05 am a626eb18: am 2d47fd3c: Merge "Fix crash when Paths are GCd in hw accelerated apps" into honeycomb
* commit 'a626eb18ae2c4a48c8770ece3a64eeee5974f455':
  Fix crash when Paths are GCd in hw accelerated apps
2011-02-07 13:47:48 -08:00
Chet Haase
5a7e828842 Fix crash when Paths are GCd in hw accelerated apps
A recent change to optimize path rendering didn't account for
the destruction of native objects by the VM finalizer. We may be
done with the Java level version before we're done with the native
structure that's used by the display list. For example, a drawing
method on a View that creates a temporary path to render into the
canvas will implicitly create a native structure that is put onto
the GL display list. That temporary path may go away, but the native
version should stick around as long as the display list does.

The fix is to refcount the original native version of the path
and only delete it when the refcoutn reaches zero (which means that
it is no longer needed by any display list). This is a similar mechanism
used for bitmaps and shaders.

Change-Id: I4de1047415066d425d1c689aa60827f97729b470
2011-02-04 12:50:55 -08:00
Eric Laurent
2e8fbebff4 am 6f1bd261: am 9c0a1003: Merge "Fix issue 3371080" into honeycomb
* commit '6f1bd261b7fd86ac7817ca061dfb55b95150b836':
  Fix issue 3371080
2011-02-03 17:18:46 -08:00
Eric Laurent
25101b0b9a Fix issue 3371080
Modified default volume control logic in AudioService:
1 IN_CALL volume if in video/audio chat
2 NOTIFICATION if notification is playing or was playing less than 5s ago.
3 MUSIC

Modified silent mode:
- now also affect MUSIC stream type
- entering silent mode when VOL- hard key is pressed once while selected
stream volume is already at 0 (except for VOICE_CALL stream).
- exiting silent mode when pressing VOL+ hard key while in silent mode

Play sound FX (audible selections, keyboard clicks) at a fixed volume.

Modified audio framework:
- isStreamActive() method now implemented in AudioPolicyManagerBase (previously AudioFlinger)
- iStreamActive() now specifies a time window during which the stream is considered
active after it actually stopped.

Change-Id: I7e5a0724099450b9fc90825224180ac97322785f
2011-02-03 09:26:24 -08:00
Brian Carlstrom
929a1c2192 Removing android.security.MessageDigest
Bug: 3392028
Change-Id: I6b9732da17d086ba00c846c3ad1c7fb39baf9502
2011-02-01 22:25:47 -08:00
Mike Lockwood
dd8b64c0a5 Merge "Add support for synchronous bulk USB transfers" 2011-01-27 16:25:26 -08:00