64 Commits

Author SHA1 Message Date
Jeff Brown
349703effc 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
2010-06-28 19:10:54 -07:00
Jeff Brown
46b9ac0ae2 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
2010-06-13 17:42:16 -07:00
Christopher Tate
a8ebe8b3f5 am df2e2eff: Merge "Watchdog now records kernel stacks when it fires" into froyo
Merge commit 'df2e2eff9446c0220515fa7aab7857135e04e12e' into kraken

* commit 'df2e2eff9446c0220515fa7aab7857135e04e12e':
  Watchdog now records kernel stacks when it fires
2010-06-06 12:10:08 -07:00
Christopher Tate
ecaa7b41ca Watchdog now records kernel stacks when it fires
The kernel threads are appended to the usual /data/anr/traces.txt file
and dropboxed along with the usual Dalvik stack dumps.

Change-Id: I120f1f5ee54c965efe9ac0c7f40fdef56385f1fa
NOTE: this change depends on the kernel publishing /proc/$PID/stack
2010-06-04 14:55:02 -07:00
Christopher Tate
fa9e7c05c7 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
2010-05-06 17:00:54 -07:00
Dianne Hackborn
69969e48f2 First pass at NativeActivity.
This is a rough sketch of the new pure-native API, which you can
use through a NativeActivity in your manifest (no Java code in
the .apk needed!).

Intentionally no docs yet, the API is still being seriously
messed with.  But it works.

Change-Id: I0e916d58a0d159ecaf3689e41834eb8dc681c0c0
2010-05-05 15:17:26 -07:00
Dan Egnor
a40b3a8d98 am c1420832: am 5945579e: Merge "Change TrafficStats to a new JNI implementation." into froyo
Merge commit 'c1420832a8f9c7fa62b143ce63c71062b3969c1b' into kraken

* commit 'c1420832a8f9c7fa62b143ce63c71062b3969c1b':
  Change TrafficStats to a new JNI implementation.
2010-04-08 14:53:06 -07:00
Dan Egnor
2b4abcd0c7 Change TrafficStats to a new JNI implementation.
Also change phone's ConnectionStateTrackers to use it directly,
rather than through the INetStat binder interface.

Bug: 2578938
Change-Id: I8858e2609cbec3be845a0ce5178cb03f67e01b41
2010-04-07 19:06:29 -07:00
Mike Lockwood
00b74270c9 Move files internal to LocationManagerService from framework.jar to services.jar
Change-Id: Iebbfc49b8300ab59730733efdf489ec87ea45a25
Signed-off-by: Mike Lockwood <lockwood@android.com>
2010-04-04 18:44:05 -04:00
Doug Felt
dae8e94cce Add support for accessing native bidi implementation via jni.
Include a simple test to verify that the bidi code works.
2010-02-24 18:20:54 -08:00
Mathias Agopian
000479f9e3 split libsurfaceflinger_client and libcamera_client out of libui 2010-02-11 13:16:22 -08:00
Doug Zongker
870d81d038 remove android.os.Base64Utils
There are no more users of this code.

Change-Id: Ie0109ece2ea329aeb9607e9193eaf0808955eab9
2010-02-08 12:27:07 -08:00
Wei-Ta Chen
bca2d613e0 Add a Java API that converts yuv data to a jpeg.
The compression is done in the native layer via calling libjpeg.

Bug: 2285598
2010-01-27 11:41:34 +08:00
Jack Palevich
a6276fdd42 A library for encoding and decoding ETC1 textures.
The ETC1 compressed texture format is commonly
supported by OpenGL ES 2.0-capable devices.
2009-12-31 13:31:04 +08:00
Mike Lockwood
726a570258 resolved conflicts for merge of dfaf2e03 to master
Change-Id: I440d2042dd404a421789063e42102699fa33b7c0
2009-11-25 15:05:51 -05:00
Mike Lockwood
3a32213c40 Remove HardwareService and move vibrator support to VibratorService.
The lights support is only needed by PowerManagerService and NotificationManagerService, so we do not need a Binder API for it.
Move backlight and notification light support to new LightsService class.
The camera flash is now handled directly by the camera HAL, so the flash Hardware service flash support is obsolete.

Change-Id: I086d681f54668e7f7de3e8b90df3de19d59833c5
Signed-off-by: Mike Lockwood <lockwood@android.com>
2009-11-25 12:54:58 -05:00
Vasu Nori
8914a04b16 am 483ae632: am 5a03f36e: maintain cache of statementids returned by sqlite upon compiling a sql stmnt
Merge commit '483ae6328701d29e9731af25c64b09b1e18bc2e7'

* commit '483ae6328701d29e9731af25c64b09b1e18bc2e7':
  maintain cache of statementids returned by sqlite upon compiling a sql stmnt
2009-11-20 14:19:49 -08:00
Vasu Nori
5a03f36ef8 maintain cache of statementids returned by sqlite upon compiling a sql stmnt 2009-11-20 14:09:24 -08:00
Jack Palevich
560814f6b1 Add a Java API for OpenGL ES 2.0.
Currently this API is hidden.

Add a test program.
2009-11-19 16:34:55 +08:00
Nick Pelly
bd022f423a Bluetooth: API change.
Split BluetoothDevice into BluetoothDevice and BluetoothAdapter.

BluetoothAdapter: Represents the local BT adapter. Operations on the local
                  adapter (start a scan, etc).
BluetoothDevice: Represents a remote BT device. Operations on remote devices
                 (pair, connect, etc).

IBluetoothDevice.aidl -> Bluetooth.aidl
BluetoothDeviceService.java -> BluetoothDeviceService.java

TODO:
Javadoc
2009-08-18 08:24:22 -07:00
Mike Reed
b5af325fb1 rename libsgl/libcorecg to libskia 2009-07-10 15:33:21 -04:00
Mathias Agopian
dfe983bd79 Merge commit 'goog/master' into merge_master 2009-07-01 18:33:18 -07:00
Android (Google) Code Review
2df7c15aa0 am b505ae41: Merge change 5459 into donut
Merge commit 'b505ae4195d9b8a93c71b1f9da6d7d8c3aaa3c08'

* commit 'b505ae4195d9b8a93c71b1f9da6d7d8c3aaa3c08':
  Make the BackupHelperDispatcher properly handle multiple helpers.
2009-06-25 18:06:01 -07:00
Joe Onorato
4ababd922e Make the BackupHelperDispatcher properly handle multiple helpers. 2009-06-25 20:36:09 -04:00
Android (Google) Code Review
1f7300818f am c44989d6: Merge change 5350 into donut
Merge commit 'c44989d6c7bcc761fb37f54fd37aac2070ba8e5e'

* commit 'c44989d6c7bcc761fb37f54fd37aac2070ba8e5e':
  move ui/Time.cpp to core/jni, since this is the only place it is used
2009-06-25 15:11:09 -07:00
Mathias Agopian
864c0d50cd move ui/Time.cpp to core/jni, since this is the only place it is used 2009-06-25 14:39:56 -07:00
Mathias Agopian
f31868e59f merge master in master_gl 2009-06-24 18:31:21 -07:00
Android (Google) Code Review
4527acb0c3 am 856dd8a6: Merge change 4952 into donut
Merge commit '856dd8a60a70a5b7dca2bf2114872ce063e2ad60'

* commit '856dd8a60a70a5b7dca2bf2114872ce063e2ad60':
  Helper API cleanup.  Allows multiple helpers to function,
2009-06-22 13:20:31 -07:00
Joe Onorato
06290a4bb9 Helper API cleanup. Allows multiple helpers to function,
because they'll always go in the same order, and this lets
us not have to write headers to keep them paired.
2009-06-22 13:02:24 -07:00
Mathias Agopian
f73bbd0423 Merge commit 'goog/master' into merge_master 2009-06-19 17:41:14 -07:00
Ben Cheng
52b0e73443 Process new property definitions for JIT-specific options for apps performance tuning and debugging. 2009-06-19 13:50:58 -07:00
Android (Google) Code Review
1c14776a13 am 16ce3504: Merge change 4708 into donut
Merge commit '16ce3504c5bf98d95d5c36001f755bb4b15253c9'

* commit '16ce3504c5bf98d95d5c36001f755bb4b15253c9':
  Make RestoreHelper and friends also write out the snapshot state.
2009-06-18 19:04:50 -07:00
Joe Onorato
d2d9ceb730 Make RestoreHelper and friends also write out the snapshot state. 2009-06-18 18:41:11 -07:00
Mathias Agopian
69f066c8fc Merge commit 'goog/master' into merge_master 2009-06-16 12:38:55 -07:00
Christopher Tate
daf701fa62 am 2fdd428e: Fix some backup reader/writer issues; make local transport do backup
Merge commit '2fdd428e0f18384160f7c38ce3a2cd9ba7e7b2c2'

* commit '2fdd428e0f18384160f7c38ce3a2cd9ba7e7b2c2':
  Fix some backup reader/writer issues; make local transport do backup
  Fix the jni initializer.
  Add RestoreFileHelper, BackupDataInput, and add java wrappers for the methods on BackupDataOutput.
  Fix bug #1812041: activity manager crash with bad args.
  Journal backup requests so that they won't be lost in a crash
  Fix data connection issues.
2009-06-14 21:13:03 -07:00
Joe Onorato
1cf587496f Add RestoreFileHelper, BackupDataInput, and add java wrappers for the methods on BackupDataOutput. 2009-06-12 16:21:24 -07:00
Mathias Agopian
2da99bdaa1 Merge commit 'goog/master' into merge_master
Conflicts:
	include/ui/Rect.h
	libs/ui/ISurfaceComposer.cpp
2009-05-27 14:34:50 -07:00
Android (Google) Code Review
67880624cc am c0139711: Merge change 2432 into donut
Merge commit 'c0139711b0e4a07ad997fb4130c674ed2d90e2fc'

* commit 'c0139711b0e4a07ad997fb4130c674ed2d90e2fc':
  Make android_runtime to not include libemoji but use dlopen() instead.
2009-05-27 04:50:13 -07:00
Nick Pelly
0b6955a48b New BluetoothSocket API.
Modeled on blocking java.net.Socket and java.net.ServerSocket library.

Public interface is:

public final class BluetoothSocket implements Closeable {
   public static BluetoothSocket createRfcommSocket(String address, int port) throws IOException;
   public static BluetoothSocket createInsecureRfcommSocket(String address, int port) throws IOException;

   public void connect() throws IOException;
   public void close() throws IOException;

   public String getAddress();
   public InputStream getInputStream() throws IOException;
   public OutputStream getOutputStream() throws IOException;
}

public final class BluetoothServerSocket implements Closeable {
   public static BluetoothServerSocket listenUsingRfcommOn(int port) throws IOException;
   public static BluetoothServerSocket listenUsingUnsecureRfcommOn(int port) throws IOException;

   public BluetoothSocket accept() throws IOException;
   public BluetoothSocket accept(int timeout) throws IOException;
   public void close() throws IOException;

}
2009-05-26 19:39:21 -07:00
Daisuke Miyakawa
63507babb6 Make android_runtime to not include libemoji but use dlopen() instead.
This must be submitted with change 2432
2009-05-27 00:27:23 +09:00
Mathias Agopian
947f4f4d38 merge master to master_gl 2009-05-22 02:16:08 -07:00
Nick Pelly
f5e17310d1 Remove Database.java API.
This provided SDP functionality to Java, but is not currently used by any Apps.

I will shortly be providing SDP functionality in a new API, but it will be
quite different to this one, and in the mean-time keeping this stale code
updated with other API changes is a pain.
2009-05-20 15:24:14 -07:00
Mathias Agopian
25ba5b6564 checkpoint: split libutils into libutils + libbinder 2009-05-20 12:55:02 -07:00
Android (Google) Code Review
bad962bf40 am e2914615: Merge change 2099 into donut
Merge commit 'e29146158b6048936671decc060d398a68333fc0'

* commit 'e29146158b6048936671decc060d398a68333fc0':
  Hook up the backup data writer, and add a utility to read the backup data files.
2009-05-20 11:58:08 -07:00
Joe Onorato
d2110dbce0 Hook up the backup data writer, and add a utility to read the backup data files. 2009-05-20 11:24:20 -07:00
Mathias Agopian
6ec72e3fa9 Merge commit 'goog/master' into merge_master 2009-05-08 13:13:12 -07:00
The Android Open Source Project
1a36071092 manual merge of 7ec32cc
Merge commit '7ec32cc'
2009-05-08 07:21:43 -07:00
Joe Onorato
b1a7ffef3a More backup tests 2009-05-07 15:32:48 -07:00
Mathias Agopian
fa6eda01a9 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
2009-04-30 14:43:18 -07:00
Android (Google) Code Review
cb49634c73 am 1fb758e: Merge change 546 into donut
Merge commit '1fb758e94b5b9e342b6dc6452cb5bd7cf0cc4ed6'

* commit '1fb758e94b5b9e342b6dc6452cb5bd7cf0cc4ed6':
  Add (hidden for now) purgeable bitmaps
2009-04-29 13:35:29 -07:00