65724 Commits

Author SHA1 Message Date
Eric Fischer
5c6dfc374a Merge "Import translations." 2012-02-13 14:26:03 -08:00
Jean-Michel Trivi
fbd2e64346 Merge "Playback rate on MediaPlayer" 2012-02-13 14:21:36 -08:00
Jeff Brown
a17032eeb9 Merge "Accurately track the sequence numbers of batched events." 2012-02-13 14:02:51 -08:00
Fabrice Di Meglio
7a29d84f01 Merge "Fix bug #5904777 GridLayout should be RTL aware" 2012-02-13 14:01:28 -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
27b51987dd Merge "Enable deferred input messages to be batched." 2012-02-13 13:55:41 -08:00
Fabrice Di Meglio
47d248eb43 Fix bug #5904777 GridLayout should be RTL aware
- update also DEBUG mode for taking care about RTL
- one minor issue remaining: left alignment is not properly honored in RTL

Change-Id: I9a4c8413cb1189a032649472016994642418637b
2012-02-13 13:52:47 -08:00
Tsu Chiang Chuang
298b8004ad am 5f5ea91f: am eb56ad18: am 08eb7dd6: Merge "extending timeout to stabilize tests" into ics-mr1
* commit '5f5ea91f60b4b7d2fcf3da3603cd745a53cba48f':
  extending timeout to stabilize tests
2012-02-13 13:47:45 -08:00
Tsu Chiang Chuang
5f5ea91f60 am eb56ad18: am 08eb7dd6: Merge "extending timeout to stabilize tests" into ics-mr1
* commit 'eb56ad183af8a9833ff22a22b97f174f05266c58':
  extending timeout to stabilize tests
2012-02-13 13:45:06 -08:00
Tsu Chiang Chuang
eb56ad183a am 08eb7dd6: Merge "extending timeout to stabilize tests" into ics-mr1
* commit '08eb7dd630a2de8dd51a988a747da26ff9d3f8fb':
  extending timeout to stabilize tests
2012-02-13 13:42:45 -08:00
Tsu Chiang Chuang
08eb7dd630 Merge "extending timeout to stabilize tests" into ics-mr1 2012-02-13 13:41:37 -08:00
Eric Fischer
6cbc99f9f0 Import translations.
Change-Id: I5a3f1a37ae10c3fb6d264654f9b4cc7e945cd722
2012-02-13 13:38:44 -08:00
Dianne Hackborn
ec5b5156e7 Merge "Fix issue where screen rotations would stop animating." 2012-02-13 13:30:53 -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
Dianne Hackborn
0bbd872ea8 am d1f88de2: am c1496d2d: Add xxhdpi; fix ActivityManager.getLauncherLargeIconSize() etc.
* commit 'd1f88de2c496423e483760654a4381b563dc1e1d':
  Add xxhdpi; fix ActivityManager.getLauncherLargeIconSize() etc.
2012-02-13 12:41:27 -08:00
Jean-Michel Trivi
e901a5c29b Playback rate on MediaPlayer
Add support for modifying the playback rate of a MediaPlayer
 by altering the sample rate of its AudioTrack.
The playback rate is expressed in permille, where 1000 is the
 playback at normal speed.

Change-Id: I981d060ab32f7bae7a767e82c60c88ae635dceed
2012-02-13 12:39:54 -08:00
Dianne Hackborn
d1f88de2c4 am c1496d2d: Add xxhdpi; fix ActivityManager.getLauncherLargeIconSize() etc.
* commit 'c1496d2d9a496e4aba817a58ecb9e07fe55cdba5':
  Add xxhdpi; fix ActivityManager.getLauncherLargeIconSize() etc.
2012-02-13 12:38:37 -08:00
Eric Laurent
65b8bbd3c9 Merge "Fix audio preprocessing library wrapper" 2012-02-13 12:27:27 -08:00
Dianne Hackborn
c1496d2d9a Add xxhdpi; fix ActivityManager.getLauncherLargeIconSize() etc.
Change-Id: I519d6cdc527a402d93b98df17a64fc1da52ad598
2012-02-13 12:01:56 -08:00
Stephen Hines
3be5c85651 Revert "Test initialization of constant array exports."
This reverts commit f7c4ce0b6afae9ace59879d625bb9be6bc14899c.
2012-02-13 11:56:29 -08:00
Stephen Hines
dfb64e8c80 Merge "Test initialization of constant array exports." 2012-02-13 11:13:21 -08:00
Dianne Hackborn
4dcece8e50 Fix issue where screen rotations would stop animating.
If we went through the update loop multiple times, and had finished
animating the first time, we would blow away that information the
second time and never kill the animation.

Also moved killing the animation back up to the animation step --
this involves destroying surfaces and such, and so really should
be done as part of the surface transaction.  We can also consider
the screen rotation animation object to be owned by the animation,
so it can destroy it when done.

Change-Id: If24356c509c66d046f2ddfd9ad5bfe12504d7716
2012-02-13 10:37:08 -08:00
Glenn Kasten
760a36f207 Merge "Factor out and speed up permission-checking code" 2012-02-13 10:31:44 -08:00
Glenn Kasten
81211143c3 Factor out and speed up permission-checking code
Use the caching permission check for dump to save IPC.

Cache getpid() to save kernel call for other permission checks.

The C runtime library getpid() can't cache due to a fork
race condition, but we know that mediaserver doesn't fork.

Don't construct String16 on the stack.

Change-Id: I6be6161dae5155d39ba6ed6228e7683e67be34ed
2012-02-13 10:30:23 -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
1adee11b5e Optimize dispatcher for back-to-back finished signals.
Minor tweak to the dispatcher to handle as many finished signals
in a receive callback as possible instead of going back to
the Looper and waiting for the next poll() to hit the callback
again.

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

Bug: 5963420

Change-Id: I8471107371693e21ce8ce7cca1e8d79ba4ca2351
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
8b4be56030 Delete premature optimization.
This is part of a series of changes to improve input system pipelining.

Bug: 5963420

Change-Id: I5c182f6e17d468bf3033125b2094b2baa5b94e81
2012-02-13 10:28:41 -08:00
Jeff Brown
28b5cf1c33 Delete dead code.
This is part of a series of changes to improve input system pipelining.

Bug: 5963420

Change-Id: I9f8b93f6a25ddd872f993366b57bab404c93bede
2012-02-13 10:28:40 -08:00
Jeff Brown
59f1ff9978 Delete latency tracking information in the Connection.
The information gathered here will no longer be valid once we
start dispatching multiple events at a time to the same connection.
Moreover, we are more concerned with end-to-end latency, which we
can measure with sufficiently high accuracy in other ways.

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

Bug: 5963420

Change-Id: I49a0c9876b64af56b40e96e0d98c45f325da2a73
2012-02-13 10:28:40 -08:00
Jeff Brown
9831d90db8 Remove active connection tracking.
The dispatcher no longer needs to track which connections are
active except perhaps for diagnostic purposes, so we might as well
remove this code.

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

Bug: 5963420

Change-Id: Ibadc830b7b792a59b9244d0a6e85f320c4947109
2012-02-13 10:28:40 -08:00
Jeff Brown
e9bb9be9e4 Simplify input target handling in the dispatcher.
Since we no longer stream events to the application, we don't need to
keep the current list of input targets around longer than it takes
to begin the dispatch cycle.

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

Bug: 5963420

Change-Id: I5824b04e564c8a4dec991598292441e46c331905
2012-02-13 10:28:40 -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
Jeff Brown
3241b6b7bd Remove batching and streaming from the input dispatcher.
Don't worry, these features will be moving to a different part of
the pipeline.  We're just getting them out of the way for now so
we can make deeper changes to how the input dispatcher works.

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

Bug: 5963420

Change-Id: If97de923c8165776882eef23f5204cc448dad0fc
2012-02-13 10:28:39 -08:00
Jeff Brown
d4762334f1 Merge "Process input events immediately when received." 2012-02-13 10:26:40 -08:00
Jeff Brown
62d1058cc9 Merge "Remove the input dispatcher throttle." 2012-02-13 10:26:33 -08:00
Marc Blank
5a1f6fb407 Merge "Use ' for apostrophe in HTML encoding" 2012-02-13 10:20:38 -08:00
Marc Blank
f4832da16a Use ' for apostrophe in HTML encoding
* We were using ' which is not correct

Change-Id: I4872da7d5e19f18ecd570dbcaac295020d66681c
2012-02-13 10:11:50 -08:00
Mike Lockwood
f96901f8cc Merge "Add support for non-linear ramping of master volume adjustment" 2012-02-10 21:55:52 -08:00
James Dong
8fdaf785e2 Merge "Change the signature of method addTextSource() in AwesomePlayer" 2012-02-10 17:57:16 -08:00
Wink Saville
e4e04945e7 am 5caed1d9: am f11b6fbf: am 197fe269: Merge "Add OEM specific USB mode enumeration based on ro.bootmode property" into ics-mr1
* commit '5caed1d99b99a011501c532fbf970324ea82e13d':
2012-02-10 17:00:51 -08:00
Wink Saville
9288155154 Merge "resolved conflicts for merge of e8b57fea to master" 2012-02-10 16:57:39 -08:00
Wink Saville
41b564f354 resolved conflicts for merge of e8b57fea to master
Change-Id: I2ccf2b4cb73faadd0c8608cc21dda5db888d2937
2012-02-10 16:11:18 -08:00
Mike Lockwood
9760647dd0 Add support for non-linear ramping of master volume adjustment
Bug: 5472584

Change-Id: I1227007d1563eca739fb78b6d9595febc04a3f03
Signed-off-by: Mike Lockwood <lockwood@google.com>
2012-02-10 15:58:07 -08:00
Glenn Kasten
ad8d175b40 mAudioHwDevs and related cleanup
Inline AudioFlinger::initCheck and remove unnecessary lock.

Remove redundant check of mAudioHwDevs.size().

No need to lock mHardwareLock for each device separately
during initialization.

Use size_t not int to loop through Vector, since size() returns size_t.

Add missing hardware lock for get_mic_mute() and get_input_buffer_size().

Add comments.

Change-Id: Iafae78ef78bbf65f703d99fcc27c2f4ff221aedc
2012-02-10 15:36:46 -08:00
Glenn Kasten
da639f5438 Merge "Simplify ThreadBase::exit() aka requestExitAndWait" 2012-02-10 15:32:16 -08:00
Glenn Kasten
6f5f9ce713 Merge "Disable HQ resamplers for now until qualified" 2012-02-10 15:31:54 -08:00
Glenn Kasten
d335c1cc4f Merge "Move header declarations around for clarity" 2012-02-10 15:31:07 -08:00
Glenn Kasten
3ebf95bb52 Merge "Camel case readability & private disconnect(bool)" 2012-02-10 15:30:15 -08:00
Glenn Kasten
2a67e1a6c0 Merge "Remove aliasing" 2012-02-10 15:29:35 -08:00