1856 Commits

Author SHA1 Message Date
Mathias Agopian
08965ec67a fixup hardcoded include paths for new project
Change-Id: Id443ec5c99bb4d7653905f1be1f72a029e0cf087
2012-03-07 19:34:36 -08:00
Glenn Kasten
66199cf939 Merge "Remove obsolete references to sched_policy.h" 2012-03-06 08:17:43 -08:00
Glenn Kasten
403475a894 Remove obsolete references to sched_policy.h
As part of scheduling policy cleanup, remove or isolate
all references to the scheduling policy APIs.

Change-Id: Ia1ea2fe711a399039f25217309e061267744b856
2012-03-05 18:12:45 -08:00
Romain Guy
f51abc7dc5 Merge "Delete display list objects and resources on the UI thread Bug #6073717 Bug #6065504 Bug #6026515 Bug #5971725" 2012-03-05 13:48:55 -08:00
Romain Guy
bb0acdf9e1 Delete display list objects and resources on the UI thread
Bug #6073717
Bug #6065504
Bug #6026515
Bug #5971725

Prior to this patch, the destructor of DisplayList would always run
on the finalizer thread. This could cause a race condition if the UI
thread was busy rendering display lists at the same time leading to
various random native crashes.

Change-Id: Ie11108e3b1538d4b358a1a8b4cce1b2d33152d0c
2012-03-05 13:44:35 -08:00
Jeff Brown
ef6f68b8c8 Merge "Don't log SQLITE_SCHEMA errors." 2012-03-05 13:38:24 -08:00
Jeff Brown
08cbdad565 Don't log SQLITE_SCHEMA errors.
These errors are usually transient.  SQLite automatically retries
queries up to 5 times before actually reporting an error to the
application.  We expect SQLITE_SCHEMA errors to occur occasionally
due to the prepared statement cache, and it is ok.

If SQLite fails to automatically resolve a schema error, then
a SQLiteException will be thrown as usual.

Bug: 6114391
Change-Id: I0cdafa1a1db5c567b95bec0c41310802fe75a8c7
2012-03-05 10:30:06 -08:00
Romain Guy
2bf68f063b Deferred layer updates
Change-Id: I83d9e564fe274db658dcee9e0cc5bbf9223ebb49
2012-03-02 13:37:47 -08:00
Jeff Brown
5936ff097e Externalize more SQLite configuration options.
Moved more configuration into config.xml so we can tweak settings
like the default journal mode, WAL auto-checkpoint interval and
so on.

This change itself should not introduce any functional differences.

Change-Id: Id6c95fa25b116ce47e8ae49cd8a80d52b1c0dd80
2012-02-29 21:03:20 -08:00
Jeff Brown
0e689abaec Merge "Don't throw if sqlite3_finalize returns an error." 2012-02-29 17:06:23 -08:00
Jeff Brown
958cbbab6a Don't throw if sqlite3_finalize returns an error.
Change-Id: Ibcc772ad5343dd241ed9dc492e4d838e1ab962d4
2012-02-29 17:02:04 -08:00
Fabrice Di Meglio
ff40ab7a41 Fix bug #5180841 TextLayoutCache needs to support Indic
- add Tamil and Devanagari shaping support

Change-Id: I331ec52cd1987e157100deb699db27f855881c32
2012-02-28 14:35:48 -08:00
Mathias Agopian
49d2b1864c move CursorWindow from libbinder to libandroidfw
Change-Id: I3b304e4f74e0d0ec8b20c57296c62449c9a0f792
2012-02-27 18:11:20 -08:00
Mathias Agopian
8335f1cccc fix libgui header location
Change-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe
2012-02-27 13:03:08 -08:00
Mathias Agopian
018549e4bf Merge "remove dependency on android_native{s_priv|buffer}.h" 2012-02-24 19:08:12 -08:00
Mathias Agopian
af01feafc3 remove dependency on android_native{s_priv|buffer}.h
Change-Id: Ie4b95f7061c240f37c504414259f92d72c4ffc89
2012-02-24 18:26:01 -08:00
Romain Guy
325740fb44 Add hooks to implement Canvas.drawTextOnPath() in GL
Change-Id: I165c9e05facf5365aa6850605688e538640c7fcc
2012-02-24 16:48:34 -08:00
Mathias Agopian
83c64e6b62 frameworks/base refactoring
create the new libandroidfw from parts of libui and libutils

Change-Id: I1584995616fff5d527a2aba63921b682a6194d58
2012-02-20 22:38:43 -08:00
Todd Poynor
94d0024557 Power HAL PowerManagerService hookup
Use PowerHAL to set system awake/suspend state.

Change-Id: If58a6f548564ea141b68f304455997d9ff04eace
Signed-off-by: Todd Poynor <toddpoynor@google.com>
2012-02-17 22:19:45 -08:00
Mathias Agopian
b13b9bdad2 frameworks/base refactoring.
step 2: move libutils headers to their new home: androidfw

Change-Id: I14624ba23db92a81f2cb929f104386e1fab293ef
2012-02-17 19:01:26 -08:00
Jeff Brown
4a7571bc0b Merge "frameworks/base refactoring." 2012-02-17 16:28:20 -08:00
Mathias Agopian
b93a03f841 frameworks/base refactoring.
First step. Move libui includes to their new home: androidfw.

Change-Id: Ic042b52fdba72f30edc3cc6339bf30b4c1b99662
2012-02-17 15:36:10 -08:00
Romain Guy
6917e6550d Merge "Record possible clip rejects when recording display lists" 2012-02-17 15:18:14 -08:00
Iliyan Malchev
8d25cb8a64 bluetooth: replace malloc() + memset() to zero with calloc()
Change-Id: I86b0ee4babc79189184b09c51757ec1162517c7b
Signed-off-by: Iliyan Malchev <malchev@google.com>
2012-02-17 14:27:13 -08:00
Romain Guy
33f6beb10f Record possible clip rejects when recording display lists
This optimization allows us to quickly skip operations that lie
entirely outside of the known bounds of a display list. Because
of ViewGroup.setClipChildren, we must keep the operations recorded
in the display list. setClipChildren(false) is however a very
uncommon operation and we will therefore often benefit from this
new optimization.

Change-Id: I0942c864e55298e6dccd9977d15adefbce3ba3ad
2012-02-17 13:10:00 -08:00
Jeff Brown
9806a2307f Ignore broken input channel when finishing input event.
There are occasional races during application shut down where the
input dispatcher will close an input channel before the application
has finished its last event.  So just ignore EPIPE.

Also tweak the logging for failed input event injection to make
it clearer which pid was trying to perform the injection.

Bug: 6013004
Change-Id: I7bbb01441d41762b03eafd4d39dcf0323e1cadf3
2012-02-17 10:28:09 -08:00
Jeff Brown
b503f1eea1 Don't throw on EPIPE in consumeBatchedInputEvents.
Bug: 6014825
Change-Id: I59bd98a1fba5d86f9793fd6e9d9f0a271ac1c789
2012-02-16 20:15:22 -08:00
Jeff Brown
91ec0b722f Merge "Clean up InputChannel file descriptor data type." 2012-02-14 17:11:41 -08:00
Jeff Brown
91e328984c Clean up InputChannel file descriptor data type.
File descriptors are ints.

Change-Id: Ie36733bf36ddfeaa9a09ef6ebd7bd2f1788f5d27
2012-02-14 15:57:59 -08:00
Irfan Sheriff
870084d26d Merge "Initial support for concurrency" 2012-02-14 15:37:07 -08:00
Glenn Kasten
b3db213eb5 Update comments
We no longer put the filename at start of file.

Change-Id: Ic435b159a23105681e3d4a6cb1ac097bc853302e
2012-02-14 09:17:59 -08:00
Jeff Brown
a9daa164a5 Merge "Fix possible races in vsync infrastructure." 2012-02-13 20:38:24 -08:00
Jeff Brown
58aedbc9be Fix possible races in vsync infrastructure.
Applications sometimes crashed on exit due to the display event
receiver pipe apparently being closed while still a member of the
Looper's epoll fd set.

This patch fixes a few different possible races related to
the display event receiver lifecycle.

1. The receiver used to play a little dance with the Looper,
registering and unregistering its callback after each vsync
request.  This code was a holdover from a time before the
surface flinger supported one-shot vsync requests, so we can
get rid of it and make things a lot simpler.

2. When the Choreographer is being accessed from outside the UI
thread, it needs to take great care that it does not touch
the display event receiver.  Bad things could happen if the receiver
is handling a vsync event on the Looper and the receiver is
disposed concurrently.

3. It was possible for the Choreographer to attempt to dispose
the receiver while handling a vsync message.  Now we defer disposing
the receiver for a little while, which is also nice because we
may be able to avoid disposing the receiver altogether if we find
that we need it again a little while later.

Bug: 5974105
Change-Id: I77a158f51b0b689af34d07aee4245b969e6260d6
2012-02-13 20:34:38 -08:00
Jean-Baptiste Queru
b35b9a8642 am 6466f400: am fca4ff38: am eaf2617f: am 472512f6: Merge "Fix incorrect prototype for JNI call"
* commit '6466f400a40224dc113eb6d06009a1c655151045':
  Fix incorrect prototype for JNI call
2012-02-13 20:02:50 -08:00
Jean-Baptiste Queru
eaf2617fc2 am 472512f6: Merge "Fix incorrect prototype for JNI call"
* commit '472512f6970fa170e2e1a3e1c24ac2b742e2e6b6':
  Fix incorrect prototype for JNI call
2012-02-13 19:55:52 -08:00
Jean-Baptiste Queru
472512f697 Merge "Fix incorrect prototype for JNI call" 2012-02-13 14:32:33 -08:00
Jeff Brown
072ec96a49 Implement batching of input events on the consumer side.
To support this feature, the input dispatcher now allows input
events to be acknowledged out-of-order.  As a result, the
consumer can choose to defer handling an input event from one
device (because it is building a big batch) while continuing
to handle input events from other devices.

The InputEventReceiver now sends a notification when a batch
is pending.  The ViewRoot handles this notification by scheduling
a draw on the next sync.  When the draw happens, the InputEventReceiver
is instructed to consume all pending batched input events, the
input event queue is fully processed (as much as possible),
and then the ViewRoot performs traversals as usual.

With these changes in place, the input dispatch latency is
consistently less than one frame as long as the application itself
isn't stalled.  Input events are delivered to the application
as soon as possible and are handled as soon as possible.  In practice,
it is no longer possible for an application to build up a huge
backlog of touch events.

This is part of a series of changes to improve input system pipelining.

Bug: 5963420

Change-Id: I42c01117eca78f12d66d49a736c1c122346ccd1d
2012-02-13 10:28:41 -08:00
Jeff Brown
cbee6d6ede Rewrite input transport using sockets.
Since we will not longer be modifying events in place, we don't need
to use an ashmem region for input.  Simplified the code to instead
use a socket of type SOCK_SEQPACKET.

This is part of a series of changes to improve input system pipelining.

Bug: 5963420

Change-Id: I05909075ed8b61b93900913e44c6db84857340d8
2012-02-13 10:28:40 -08:00
Amith Yamasani
f0451db422 Merge "Multi-user - wallpaper service" 2012-02-10 14:34:52 -08:00
Amith Yamasani
37ce3a8af6 Multi-user - wallpaper service
- Allow each user to have their own wallpaper (live or static).
- Migrate old wallpaper on upgrade.
- Update SystemBackupAgent to backup/restore from primary user's
  new wallpaper directory.

Reduce dependency on Binder.getOrigCallingUser() by passing the
userId for bindService.

Change-Id: I19c8c3296d3d2efa7f28f951d4b84407489e2166
2012-02-10 14:34:07 -08:00
Glenn Kasten
1137be1a68 Follow raw pointer and sp<> conventions
Unconditional delete for raw pointers.
Use "if (sp != 0)" not "if (sp.get() != 0)" or "if (sp != NULL)".
Use "if (raw != NULL)" not "if (raw)".

Change-Id: I531a8da7c37149261ed2f34b862ec4896a4b785b
2012-02-10 13:48:44 -08:00
Glenn Kasten
5dd4754f58 Merge "No newline or space at end of ALOG format string" 2012-02-10 13:36:24 -08:00
Mike Lockwood
3a74bd36f8 Add headless mode for running the framework without the surface flinger
Enabled by setting system property ro.config.headless to 1
This will allow the framework to run without starting activities,
system UI and the keyguard.
Framework can still run services, content providers and broadcast receivers.

Signed-off-by: Mike Lockwood <lockwood@android.com>

Conflicts:

	policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
	services/java/com/android/server/PowerManagerService.java
	services/java/com/android/server/am/ActivityManagerService.java
2012-02-10 10:51:24 -08:00
Girts Folkmanis
d3622e9e49 Disable output processing when opening serial port.
If post processing is not disabled, we end up translating LF to CRLF, which
makes binary protocols sad.
2012-02-10 10:51:23 -08:00
Mike Lockwood
7dbc4b457d Add SerialPort.sendBreak()
Signed-off-by: Mike Lockwood <lockwood@android.com>
2012-02-10 10:51:21 -08:00
Mike Lockwood
b01e8bf57b New Serial Manager API:
SerialManager: provides access to serial ports
SerialPort: for reading and writing data to and from serial ports

IO with both array based and direct ByteBuffers is supported.

Accessing serial ports requires android.permission.SERIAL_PORT permission

Each platform must configure list of supported serial ports in the
config_serialPorts resource overlay
(this is needed to prevent apps from accidentally accessing the bluetooth
or other system UARTs).

In addition, the platform uevent.rc file must set the owner to the
/dev/tty* files to "system" so the framework can access the port.

Signed-off-by: Mike Lockwood <lockwood@android.com>
2012-02-10 10:51:19 -08:00
Mike Lockwood
cbdb49dc5e Simple master volume support
Still needs integration with Settings (for persistence) and VolumePanel UI.

Change-Id: I9eca92c4b1ef2df2564411006a35753ab9618dce
Signed-off-by: Mike Lockwood <lockwood@android.com>
2012-02-10 09:01:28 -08:00
Glenn Kasten
0765c448ab No newline or space at end of ALOG format string
Change-Id: I0bef580cbc818cb7c87aea23919d26f1446cec32
2012-02-08 17:21:49 -08:00
Chih-Chung Chang
fb2cfa223b Comment out a warning message to avoid log spamming.
The warning message happens a lot when the region decoder is used (like
viewing a picture in the Gallery app).

Change-Id: I435f92eac8f322b091f3ed14ee48d0b5f0d84a8a
2012-02-07 13:07:51 +08:00
Jean-Baptiste Queru
0a3f6d69b6 am 33476f7a: am f79bcd2d: am 52da99fa: am a081c7b8: Merge "Skia API changes as a result of an update to the Skia library."
* commit '33476f7ad1c3b4dcaefddb306f315e201c4efb33':
  Skia API changes as a result of an update to the Skia library.
2012-02-06 14:45:36 -08:00