1276 Commits

Author SHA1 Message Date
Jeff Brown
f7adbe10c2 am eec69d29: Merge "Fix bug with phantom input windows." into gingerbread
Merge commit 'eec69d2923636b2aaa51df93bacc2b3bbb742736' into gingerbread-plus-aosp

* commit 'eec69d2923636b2aaa51df93bacc2b3bbb742736':
  Fix bug with phantom input windows.
2010-07-16 00:16:09 -07:00
Jeff Brown
e33348ba54 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
2010-07-16 00:02:48 -07:00
Dianne Hackborn
9c37e5add9 am 75a91389: Merge "Implement native key pre-dispatching to IMEs." into gingerbread
Merge commit '75a91389f1938214397aaee262f4136e6bb6b094' into gingerbread-plus-aosp

* commit '75a91389f1938214397aaee262f4136e6bb6b094':
  Implement native key pre-dispatching to IMEs.
2010-07-15 22:24:53 -07:00
Dianne Hackborn
2c6081ce35 Implement native key pre-dispatching to IMEs.
This significantly re-works the native key dispatching code to
allow events to be pre-dispatched to the current IME before
being processed by native code.  It introduces one new public
API, which must be called after retrieving an event if the app
wishes for it to be pre-dispatched.

Currently the native code will only do pre-dispatching of
system keys, to avoid significant overhead for gaming input.
This should be improved to be smarted, filtering for only
keys that the IME is interested in.  Unfortunately IMEs don't
currently provide this information. :p

Change-Id: Ic1c7aeec8b348164957f2cd88119eb5bd85c2a9f
2010-07-15 22:05:33 -07:00
Jeff Brown
aca672ba2e am c5ed5910: Add support for new input sources.
Merge commit 'c5ed5910c9ef066cec6a13bbb404ec57b1e92637' into gingerbread-plus-aosp

* commit 'c5ed5910c9ef066cec6a13bbb404ec57b1e92637':
  Add support for new input sources.
2010-07-15 18:47:24 -07:00
Jeff Brown
c5ed5910c9 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
2010-07-15 18:32:33 -07:00
Brad Fitzpatrick
3e5e21d4dc am 1772c34e: Merge "StrictMode: gather and return violating stacks in Binder replies" into gingerbread
Merge commit '1772c34e5331a6456c8a93051192d19ff873c062' into gingerbread-plus-aosp

* commit '1772c34e5331a6456c8a93051192d19ff873c062':
  StrictMode: gather and return violating stacks in Binder replies
2010-07-15 15:44:46 -07:00
Brad Fitzpatrick
cc52121c4f am c4b204bd: Merge "More StrictMode work, keeping Binder & BlockGuard\'s thread-locals in-sync." into gingerbread
Merge commit 'c4b204bdc4ab974f1f96814c93d8eaa750c15122' into gingerbread-plus-aosp

* commit 'c4b204bdc4ab974f1f96814c93d8eaa750c15122':
  More StrictMode work, keeping Binder & BlockGuard's thread-locals in-sync.
2010-07-15 15:44:41 -07:00
Brad Fitzpatrick
5b747191ff StrictMode: gather and return violating stacks in Binder replies
Now, when Thread A has a strict mode policy in effect and does a
Binder call to Thread B (most likely in another process), the strict
mode policy is passed along, but with the GATHER penalty bit set which
overrides other policies and instead gathers all offending stack
traces to a threadlocal which are then written back in the Parcel's
reply header.

Change-Id: I7d4497032a0609b37b1a2a15855f5c929ba0584d
2010-07-15 13:18:05 -07:00
Brad Fitzpatrick
727de40c6b More StrictMode work, keeping Binder & BlockGuard's thread-locals in-sync.
Change-Id: Ia67cabcc17a73a0f15907ffea683d06bc41b90e5
2010-07-15 13:18:05 -07:00
Jeff Brown
d1313da599 am eb6e0df1: Don\'t build framework tests for simulator target.
Merge commit 'eb6e0df18a6567d38caa039ba0b0e49e2e9b46c3' into gingerbread-plus-aosp

* commit 'eb6e0df18a6567d38caa039ba0b0e49e2e9b46c3':
  Don't build framework tests for simulator target.
2010-07-15 10:21:18 -07:00
Jeff Brown
eb6e0df18a Don't build framework tests for simulator target.
Change-Id: I70f29c7eb307e4f3ec5702f4eb9d97b4342e2f36
2010-07-14 22:55:02 -07:00
Mathias Agopian
78983a9133 am 4055b780: Merge "move native services under services/" into gingerbread
Merge commit '4055b780bb7e85abcf4754b84e50bf407c45bec8' into gingerbread-plus-aosp

* commit '4055b780bb7e85abcf4754b84e50bf407c45bec8':
  move native services under services/
2010-07-14 18:45:56 -07:00
Mathias Agopian
08e83bb3b7 move native services under services/
moved surfaceflinger, audioflinger, cameraservice

all native services should now reside in this location.

Change-Id: Iee42b83dd2a94c3bf5107ab0895fe2dfcd5337a8
2010-07-14 17:59:35 -07:00
Mathias Agopian
db386f2c26 am c9a11088: Merge "first step at implementing the native sensor support" into gingerbread
Merge commit 'c9a11088e503b9e3ae52a3f671b2d21f5cd54f06' into gingerbread-plus-aosp

* commit 'c9a11088e503b9e3ae52a3f671b2d21f5cd54f06':
  first step at implementing the native sensor support
2010-07-14 16:36:19 -07:00
Mathias Agopian
98704f14ea am 38eea8bf: Merge "Remove the YV16 format for simplicity\'s sake." into gingerbread
Merge commit '38eea8bf990540360b45b963195a7766c30b55d2' into gingerbread-plus-aosp

* commit '38eea8bf990540360b45b963195a7766c30b55d2':
  Remove the YV16 format for simplicity's sake.
2010-07-14 16:35:55 -07:00
Mathias Agopian
c9a11088e5 Merge "first step at implementing the native sensor support" into gingerbread 2010-07-14 16:32:04 -07:00
Mathias Agopian
058d0390a4 Remove the YV16 format for simplicity's sake.
Change-Id: Iee03d100933ba0c67b13d51e0435be3b4cd953cf
2010-07-14 15:12:05 -07:00
Mathias Agopian
b957b9d63c first step at implementing the native sensor support
in this commit:
- implemented the C stub
- implemented the binder interfaces involved
- implemented most of the C++ client side

missing:
- SensorManager cannot connect to the SensorServer yet
(because there is no SensorServer yet)

Change-Id: I75010cbeef31c98d6fa62fd5d388dcef87c2636b
2010-07-13 22:21:56 -07:00
Dianne Hackborn
f8d9379bd8 am d76b67c3: IME events are now dispatched to native applications.
Merge commit 'd76b67c340d1564abf8d14d976fdaf83bf2b3320' into gingerbread-plus-aosp

* commit 'd76b67c340d1564abf8d14d976fdaf83bf2b3320':
  IME events are now dispatched to native applications.
2010-07-13 18:55:52 -07:00
Dianne Hackborn
d76b67c340 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
2010-07-13 18:36:46 -07:00
Jeff Brown
89ee578b70 am fd035829: Add initial gamepad support.
Merge commit 'fd03582995e0fce963dd0fa0669e3211b74c0dd7' into gingerbread-plus-aosp

* commit 'fd03582995e0fce963dd0fa0669e3211b74c0dd7':
  Add initial gamepad support.
2010-07-13 17:46:19 -07:00
Jeff Brown
fd03582995 Add initial gamepad support.
Change-Id: I0439648f6eb5405f200e4223c915eb3a418b32b9
2010-07-13 17:04:57 -07:00
Brad Fitzpatrick
706623ddb8 am c0a7e690: Add Parcel::readExceptionCode() and Parcel::writeNoException()
Merge commit 'c0a7e690bfd32dd897ceccd04dd0fa6bf6e9cee6' into gingerbread-plus-aosp

* commit 'c0a7e690bfd32dd897ceccd04dd0fa6bf6e9cee6':
  Add Parcel::readExceptionCode() and Parcel::writeNoException()
2010-07-13 15:55:05 -07:00
Brad Fitzpatrick
c0a7e690bf Add Parcel::readExceptionCode() and Parcel::writeNoException()
Add native Parcel methods analogous to the Java versions.

Currently, these don't do much, but upcoming StrictMode work changes
the RPC calling conventions in some cases, so it's important that
everybody uses these consistently, rather than having a lot of code
trying to parse RPC responses out of Parcels themselves.

As a summary, the current convention that Java Binder services use is
to prepend the reply Parcel with an int32 signaling the exception
status:

     0: no exception
     -1: Security exception
     -2: Bad Parcelable
     -3: ...
     -4: ...
     -5: ...

... followed by Parceled String if the exception code is non-zero.

With an upcoming change, it'll be the case that a response Parcel can,
non-exceptionally return rich data in the header, and also return data
to the caller.  The important thing to note in this new case is that
the first int32 in the reply parcel *will not be zero*, so anybody
manually checking for it with reply.readInt32() will get false
negative failures.

Short summary: If you're calling into a Java service and manually
checking the exception status with reply.readInt32(), change it to
reply.readExceptionCode().

Change-Id: I23f9a0e53a8cfbbd9759242cfde16723641afe04
2010-07-13 15:45:18 -07:00
Eric Laurent
66fa2b44ca am 8e886be4: Merge "Modifications in audio effect engine state management." into gingerbread
Merge commit '8e886be413570fab6c623930a5775dd36a6d11e1' into gingerbread-plus-aosp

* commit '8e886be413570fab6c623930a5775dd36a6d11e1':
  Modifications in audio effect engine state management.
2010-07-13 12:31:35 -07:00
Eric Laurent
7d850f23c8 Modifications in audio effect engine state management.
- Separate the updating of effect engine state from the process call in EffectModule so that the state
of all effects in the same effect chain is updated simultaneusly before all process functions are called.
- Added a mechanism for the effect engine to continue being called for processing after receiving the disable
commands untils it considers that the framework can stop calling the process function without causing
a glitch or loosing some effect tail.
- Updated test reverb and equalizer to support this new feature

Change-Id: Icb56ae2c84c076d4dbad6cf733b1a62f823febe7
2010-07-13 12:27:18 -07:00
Kenny Root
ceb8465e97 am 87bb1857: Merge changes I2337051b,I19b426cb into gingerbread
Merge commit '87bb18579a5eea2e24af78af8c0f54f5455ce8fd' into gingerbread-plus-aosp

* commit '87bb18579a5eea2e24af78af8c0f54f5455ce8fd':
  Tweak ObbFile class
  Allow things that can install packages to set Obb paths
2010-07-12 11:20:04 -07:00
Kenny Root
87bb18579a Merge changes I2337051b,I19b426cb into gingerbread
* changes:
  Tweak ObbFile class
  Allow things that can install packages to set Obb paths
2010-07-12 11:18:34 -07:00
Kenny Root
87315aa1f0 Tweak ObbFile class
* Move error messages around to clarify the errors.

* Add extra error check when reading a file.

* Seek to the end of a file when writing the signature so the users of
  the API don't have to remember to do it.

Change-Id: I2337051b9f9fa8147c5900237deec790dcd92436
2010-07-12 09:11:24 -07:00
Dianne Hackborn
b14f325a01 am 289b9b62: Add ANativeWindow API for directly drawing to the surface bits.
Merge commit '289b9b62372ef52a06113b83dfb870e2c2fb325a' into gingerbread-plus-aosp

* commit '289b9b62372ef52a06113b83dfb870e2c2fb325a':
  Add ANativeWindow API for directly drawing to the surface bits.
2010-07-09 17:03:14 -07:00
Dianne Hackborn
289b9b6237 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
2010-07-09 16:58:19 -07:00
Dianne Hackborn
49159f0748 am 74bf59b4: Merge "Add new glue code for writing native apps." into gingerbread
Merge commit '74bf59b450daf9e7e6bf234f01db164099edbfd5' into gingerbread-plus-aosp

* commit '74bf59b450daf9e7e6bf234f01db164099edbfd5':
  Add new glue code for writing native apps.
2010-07-08 12:26:32 -07:00
Dianne Hackborn
85448bbecd Add new glue code for writing native apps.
This factors out the boiler-plate code from the sample
app to a common glue code that can be used for everyone
writing this style of app: a dedicated app thread that
takes care of waiting for events and processing them.

As part of doing this, ALooper has a new facility to allow
registration of fds that cause ALooper_pollOnce() to return
the fd that has data, allowing the app to drive the loop
without callbacks.  Hopefully this makes some people feel better. :)

Also do some other cleanup of the ALooper API, plus some
actual documentation.

Change-Id: Ic53bd56bdf627e3ba28a3c093faa06a92be522b8
2010-07-08 11:06:59 -07:00
Kenny Root
d481cdd4c0 am c9535de8: Merge "Add OBB file helper class" into gingerbread
Merge commit 'c9535de8e398d766c95144f9a831f34b2cecfd91' into gingerbread-plus-aosp

* commit 'c9535de8e398d766c95144f9a831f34b2cecfd91':
  Add OBB file helper class
2010-07-07 18:16:01 -07:00
Kenny Root
c9535de8e3 Merge "Add OBB file helper class" into gingerbread 2010-07-07 18:14:13 -07:00
Chris Tate
167449e5f8 am b17f4dcf: Merge "More native input dispatch work." into gingerbread
Merge commit 'b17f4dcfb3edba25bd8c30e60449b9bbcd600a57' into gingerbread-plus-aosp

* commit 'b17f4dcfb3edba25bd8c30e60449b9bbcd600a57':
  More native input dispatch work.
2010-07-07 17:45:21 -07:00
Chris Tate
b17f4dcfb3 Merge "More native input dispatch work." into gingerbread 2010-07-07 17:43:12 -07:00
Eric Laurent
b91881fdd1 am dacabf97: Merge "Added Visualizer effect." into gingerbread
Merge commit 'dacabf97c609a040ada857a7da6c560097448ae3' into gingerbread-plus-aosp

* commit 'dacabf97c609a040ada857a7da6c560097448ae3':
  Added Visualizer effect.
2010-07-07 16:34:57 -07:00
Eric Laurent
dacabf97c6 Merge "Added Visualizer effect." into gingerbread 2010-07-07 16:23:30 -07:00
Eric Laurent
df9b81ced4 Added Visualizer effect.
The visualizer enables application to retrieve part of the currently playing audio for visualization purpose.
It is not an audio recording interface and only returns partial and low quality audio content as a waveform or
a frequency representation (FFT).

Removed temporary hack made in MediaPlayer for animated wall papers based on audio visualization (snoop() method.

This commit also includes a change in AudioEffect class:
 - the enable()/disable() methods have been replaced bya more standard setEnabled() method.
 - some fixes in javadoc

Change-Id: Id092a1340e9e38dae68646ade7be054e3a36980e
2010-07-07 11:00:28 -07:00
Kenny Root
7cee34a051 Add OBB file helper class
ObbFile is a binary blob that will be used in packaging large files
with smaller APKs.

Change-Id: Ib1594346cfa2f49113de6565af77c24efbd89d63
2010-07-07 09:57:50 -07:00
Dianne Hackborn
e24901d3ad am 68267415: Add new native Looper API.
Merge commit '682674154e3fe88f6061245145f934f25f1a2eb8' into gingerbread-plus-aosp

* commit '682674154e3fe88f6061245145f934f25f1a2eb8':
  Add new native Looper API.
2010-07-07 09:04:19 -07:00
Jeff Brown
00fa7bdd69 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
2010-07-03 19:23:01 -07:00
Dianne Hackborn
682674154e Add new native Looper API.
This allows us to avoid exposing the file descriptor of
the event queue; instead, you attach an event queue to
a looper.  This will also should allow native apps to be
written without the need for a separate thread, by attaching
the event queue to the main thread's looper and scheduling
their own messages there.

Change-Id: I38489282635895ae2cbfacb88599c1b1cad9b239
2010-07-02 18:57:02 -07:00
The Android Open Source Project
f601ce2c14 merge from open-source master
Change-Id: Ifec16490ea2170728cb6ccb18d2e74fcb3478db6
2010-07-02 07:38:30 -07:00
Mathias Agopian
61c55c4907 remove unused YUV formats
Change-Id: Ie84616f842c7e0329d68e67e65a65d510558004b
2010-07-01 21:17:56 -07:00
Dianne Hackborn
c6e1d88022 Merge "Introduce official public NativeWindow type." into gingerbread 2010-06-30 16:05:30 -07:00
Mathias Agopian
30fe6fa07a Merge "fix live wallpapers on Droid" into gingerbread 2010-06-30 15:59:02 -07:00
Mathias Agopian
4cfb3a69d2 fix live wallpapers on Droid
On omap3 h/w we force opaque formats to RGB_565 instead of RGBX_8888
because the GL driver doesn't support it. RGBX_8888 is always remapped
to RGBA_8888.

Change-Id: I0bfabeb98c8d3a399079e6797cf2a0ee95915324
2010-06-30 15:43:47 -07:00