4351 Commits

Author SHA1 Message Date
Jason Sams
f7795e0c2f Work around VSync signal while screen is off.
Change-Id: I0a9637170ee658ff84a363e91c558892dce5cfaf
2012-02-17 17:00:37 -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
7e1d395686 libs/utils: replace malloc() + memset() to zero with calloc()
Change-Id: I8bdf4360147e51e35c162856c9a859aed6acac34
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
Jason Sams
42a23efa85 Merge "Update prototype remote fifo. Tested primary connection using only fifo data transport." 2012-02-17 12:05:13 -08:00
Jason Sams
e158f203d2 Merge "Rename three header files to free namespace for api." 2012-02-17 12:04:20 -08:00
Jason Sams
548cc0e973 Update prototype remote fifo. Tested primary connection
using only fifo data transport.

cleanup cl.

Change-Id: I9b5f5e5a256b7f66b387bd801c1da0e642761200
2012-02-16 17:21:32 -08:00
Jason Sams
1d6983af33 Rename three header files to free namespace for api.
Change-Id: Ie9ef65a477373c30b2d5b02248f62e768b6f27ae
2012-02-16 17:14:06 -08:00
Mike J. Chen
6c92951047 Upintegrate the common_time service from ics-aah.
Move the common_time service developed in the ics-aah branch back into
master.

The common_time service is a small service build to synchronize an
arbitrary timeline amongst peers on a local sub-net.  While running
and configured, the service will elect a master from the set of
available devices within the subnet, define a relationship between the
common_time timeline the local time timeline (provided by the local
time HAL), and then attempt to maintain synchronization between common
and local time by controlling the frequency of the local time clock
via the HAL, or by disciplining local time in the digital domain if
the local time HAL implementation does not support HW slewing.

On its own, the native common time service will do nothing until it is
configured.  The CommonTimeManagementService (running out of the
system server process) is responsible for implementing policy
regarding configuration and operation of the common_time service and
will be added in a subsequent CL.

Change-Id: I71292f9b9b1797665865689c4572c9d3a0552f64
Signed-off-by: John Grossman <johngro@google.com>
2012-02-16 13:45:10 -08:00
Alex Sakhartchouk
791c0d188a Merge "Piping texture names through shader builder. Fixing uint size_t mismatch." 2012-02-16 09:28:21 -08:00
Alex Sakhartchouk
2123b46ba8 Piping texture names through shader builder.
Fixing uint size_t mismatch.

Change-Id: Ia7c8bd9f829deaa50e1cc381ccd50f29676bbdfb
2012-02-15 16:21:46 -08:00
Alex Sakhartchouk
6be163651c Merge "Fixing uint32 size_t mismatches." 2012-02-15 15:14:21 -08:00
Jason Sams
c107b10354 Merge "Beging IO stream out from allocation to surface texture." 2012-02-15 12:05:26 -08:00
Jason Sams
163766cbe7 Beging IO stream out from allocation to surface texture.
Change-Id: I4d6b7f7740a896d39b811d6fe7532bb00db62373
2012-02-15 12:04:24 -08:00
Jamie Gennis
39eb8074de Merge "Refactored query function from SurfaceTexture into BufferQueue" 2012-02-14 16:29:02 -08:00
Alex Sakhartchouk
a3f154324a Fixing uint32 size_t mismatches.
Change-Id: I5263158f5855472db6317a52c209fe4e273f3368
2012-02-14 16:00:22 -08:00
Stephen Hines
10e9f39f1d Merge "Initialize all class members." 2012-02-14 13:35:21 -08:00
Stephen Hines
5b79842b4a Initialize all class members.
Change-Id: I2bb2701a9dde66f6c4484a62945c72ddf52248fa
2012-02-13 17:49:20 -08:00
Jeff Brown
6b31449e5d am a17032ee: Merge "Accurately track the sequence numbers of batched events."
* commit 'a17032eeb91f709360b6271b71b85e67f729bcc1':
  Accurately track the sequence numbers of batched events.
2012-02-13 14:05:29 -08:00
Jeff Brown
2d34e0cfe7 Accurately track the sequence numbers of batched events.
Instead of sending finished signals immediately when appending to
a batch, record the chain of sequence numbers that were part of
the batch and then send finished signals all at once when done.
This change helps the dispatcher keep track of the true state
of the application and can improve ANR detection slightly.

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

Bug: 5963420
Change-Id: I463c2221e2aa8fdf1c3d670c18e39e59ab69b0db
2012-02-13 13:59:32 -08:00
Jeff Brown
11ffe521b5 am 27b51987: Merge "Enable deferred input messages to be batched."
* commit '27b51987dd3fa7e18703aab45fa10625a56d8c98':
  Enable deferred input messages to be batched.
2012-02-13 13:58:34 -08:00
Jeff Brown
90fde93c47 Enable deferred input messages to be batched.
This is part of a series of changes to improve input system pipelining.

Bug: 5963420
Change-Id: I6874d2128e880a35c6c33890c858cc6ee22af0fd
2012-02-13 12:44:01 -08:00
Jeff Brown
684f4443d7 am 072ec96a: Implement batching of input events on the consumer side.
* commit '072ec96a4900d4616574733646ee46311cb5d2cb':
  Implement batching of input events on the consumer side.
2012-02-13 10:34:12 -08:00
Jeff Brown
877f352b84 am d1c48a05: Dispatch multiple touch events in parallel.
* commit 'd1c48a0525d05021036d4b14e937e221c0ae1318':
  Dispatch multiple touch events in parallel.
2012-02-13 10:34:07 -08:00
Jeff Brown
52acea839c am cbee6d6e: Rewrite input transport using sockets.
* commit 'cbee6d6ede0499fb4a2c00bfc00d5db8d9ed5139':
  Rewrite input transport using sockets.
2012-02-13 10:31:06 -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
d1c48a0525 Dispatch multiple touch events in parallel.
This change enables the input dispatcher to send multiple touch
events to an application without waiting for them to be acknowledged.
Essentially this is a variation on the old streaming optimization
but it is much more comprehensive.  Event dispatch will stall as
soon as 0.5sec of unacknowledged events are accumulated or a
focused event (such as a key event) needs to be delivered.

Streaming input events makes a tremendous difference in application
performance.  The next step will be to enable batching of input
events on the client side once again.

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

Bug: 5963420
Change-Id: I025df90c06165d719fcca7f63eed322a5cce4a78
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
Alex Sakhartchouk
ff3de0e5d9 am 87a36a3b: Merge "Making shader compilation errors throw a Java exception."
* commit '87a36a3b291e78a612d2d08c14b245ff970080e0':
  Making shader compilation errors throw a Java exception.
2012-02-10 15:30:48 -08:00
Jason Sams
b2a5354f0c resolved conflicts for merge of cb66aec0 to graphics-dev
Change-Id: Ic8817f702b6993f046c89f2fc598c9fe3bf30fe8
2012-02-10 15:27:26 -08:00
Alex Sakhartchouk
87a36a3b29 Merge "Making shader compilation errors throw a Java exception." 2012-02-10 15:00:21 -08:00
Jason Sams
cb66aec0bd Merge "Start implementing SurfaceTexture streaming into RS allocations." 2012-02-10 13:51:04 -08:00
Jason Sams
532efd3ce2 Start implementing SurfaceTexture streaming into RS allocations.
Change-Id: I561fbb63c63371ea59047c07fb2d68c21d16e76b

Conflicts:

	libs/rs/rsAllocation.h
2012-02-10 13:24:18 -08:00
Dianne Hackborn
887ffbea90 am d10035d5: Merge "Some hardening of isolated processes by restricting access to services."
* commit 'd10035d52bcd4eed9f83cad580d606cd522dd6c7':
  Some hardening of isolated processes by restricting access to services.
2012-02-09 18:10:48 -08:00
Dianne Hackborn
d10035d52b Merge "Some hardening of isolated processes by restricting access to services." 2012-02-09 18:08:38 -08:00
Dianne Hackborn
a573f6a1d9 Some hardening of isolated processes by restricting access to services.
Services now must explicitly opt in to being accessed by isolated
processes.  Currently only the activity manager and surface flinger
allow this.  Activity manager is needed so that we can actually
bring up the process; SurfaceFlinger is needed to be able to get the
display information for creating the Configuration.  The SurfaceFlinger
should be safe because the app doesn't have access to the window
manager so can't actually get a surface to do anything with.

The activity manager now protects most of its entry points against
isolated processes.

Change-Id: I0dad8cb2c873575c4c7659c3c2a7eda8e98f46b0
2012-02-09 18:06:01 -08:00
Daniel Lam
f7c761e5d3 Refactored query function from SurfaceTexture into BufferQueue
Change-Id: Id1cb6cc38d01edb4fcfcad867c5a7693bdcc3ab1
2012-02-09 16:16:51 -08:00
Jason Sams
206904b2af am 468a9715: Merge "Remove unused param."
* commit '468a971512f4665b13e83cc3c7dc24c9031b14eb':
  Remove unused param.
2012-02-09 15:19:10 -08:00
Jason Sams
87e2721f89 Remove unused param.
Change-Id: Idf26c3bf4eec7ed17dbfb99b40c314bce7996101
2012-02-09 14:50:50 -08:00
Jamie Gennis
b64807855c am 1c90e73f: Merge "Refactored ISurfaceTexture calls from SurfaceTexture into BufferQueue."
* commit '1c90e73f5d22c3d8e07b236ec8f33a42c01e056f':
  Refactored ISurfaceTexture calls from SurfaceTexture into BufferQueue.
2012-02-09 11:09:30 -08:00
Jamie Gennis
1c90e73f5d Merge "Refactored ISurfaceTexture calls from SurfaceTexture into BufferQueue." 2012-02-09 11:08:02 -08:00
Jason Sams
811adfe1b4 am 5b6abb38: Merge "Fix bug in generated code for functions with inband data from pointers. Passing zero length data would desync return command stream."
* commit '5b6abb38f0892f429976bd6976f93ae216b21d38':
  Fix bug in generated code for functions with inband data from pointers.  Passing zero length data would desync return command stream.
2012-02-07 18:58:19 -08:00
Jason Sams
5b6abb38f0 Merge "Fix bug in generated code for functions with inband data from pointers. Passing zero length data would desync return command stream." 2012-02-07 18:56:39 -08:00
Jason Sams
d51280f10b Fix bug in generated code for functions with inband data
from pointers.  Passing zero length data would desync
return command stream.

Change-Id: I273a6a44636a203d8305ddff3d6607eae9f9ec8a
2012-02-07 18:54:03 -08:00
Romain Guy
61d8ce6f7b am 28587f44: Merge "Fix the system"
* commit '28587f445a2af6d94d1b215e019e8bcc377c17a1':
  Fix the system
2012-02-07 18:24:53 -08:00
Romain Guy
28587f445a Merge "Fix the system" 2012-02-07 18:22:43 -08:00
Romain Guy
21c9c8551d Fix the system
Change-Id: Ie097ea5d6c0af9c5929b8c5deb76b4824d5de787
2012-02-07 18:22:07 -08:00
Alex Sakhartchouk
257e8a9a4f Making shader compilation errors throw a Java exception.
Change-Id: I612142b6fe1b75eab62e89950c3bea6f326cb730
2012-02-07 18:06:13 -08:00