856 Commits

Author SHA1 Message Date
Brad Fitzpatrick
1423f51ec5 am ae087369: am 63070856: Merge "Don\'t propagate StrictMode over one-way Binder calls." into gingerbread
Merge commit 'ae087369c56a270c33c1c1af5be7d3c5d7f94e80'

* commit 'ae087369c56a270c33c1c1af5be7d3c5d7f94e80':
  Don't propagate StrictMode over one-way Binder calls.
2010-08-31 15:06:24 -07:00
Brad Fitzpatrick
ae087369c5 am 63070856: Merge "Don\'t propagate StrictMode over one-way Binder calls." into gingerbread
Merge commit '63070856d034a2819a26560bc7f2881e501c78b7' into gingerbread-plus-aosp

* commit '63070856d034a2819a26560bc7f2881e501c78b7':
  Don't propagate StrictMode over one-way Binder calls.
2010-08-31 15:02:21 -07:00
Brad Fitzpatrick
0234376503 Don't propagate StrictMode over one-way Binder calls.
This was causing stack stitching problems where a one-way call with
violations followed by a two-way call without violations was getting
the previous one-way call's violation stack stitched on to the second
caller's stack.

The solution is a little more indirect than I would've liked
(preserving the binder's onTransact flags until enforceInterface) but
was seemingly necessary to work without changing the AIDL compiler.
It should also be sufficiently cheap, since no new calls to
thread-local IPCThreadState lookups were required.  The additional
work is just same-thread getter/setters on the existing
IPCThreadState.

Change-Id: I4b6db1d445c56e868e6d0d7be3ba6849f4ef23ae
2010-08-31 13:16:49 -07:00
Romain Guy
da8532c6f4 Add hooks for hardware accelerated WebView.
Change-Id: I907cdec8a67594f87749ac46bda85f04af5a2003
2010-08-31 11:50:35 -07:00
Robert Greenwalt
fc40701c8b Merge "resolved conflicts for merge of 4ea54f44 to master" 2010-08-27 17:27:02 -07:00
Gilles Debunne
71eaac0880 am 95464c9a: am 445ab76c: Merge "Broken build. Missing ;" into gingerbread
Merge commit '95464c9aa063d2e36a0385a60edd6ee519ed2d85'

* commit '95464c9aa063d2e36a0385a60edd6ee519ed2d85':
  Broken build. Missing ;
2010-08-27 16:18:37 -07:00
Gilles Debunne
a16fb779d5 am 084dd872: am b8fd0473: Merge "Fix for 512 limit in assetManager.list" into gingerbread
Merge commit '084dd872b1bf9f7de87554d40d89df1f30b11c45'

* commit '084dd872b1bf9f7de87554d40d89df1f30b11c45':
  Fix for 512 limit in assetManager.list
2010-08-27 16:06:13 -07:00
Gilles Debunne
95464c9aa0 am 445ab76c: Merge "Broken build. Missing ;" into gingerbread
Merge commit '445ab76c49779998543bb78881f5d9f8ae81e598' into gingerbread-plus-aosp

* commit '445ab76c49779998543bb78881f5d9f8ae81e598':
  Broken build. Missing ;
2010-08-27 12:23:47 -07:00
Gilles Debunne
0db187a3e6 Broken build. Missing ;
Change-Id: Ic266e491a73fb3df00e77111a4ad9f270741c28b
2010-08-27 11:51:34 -07:00
Robert Greenwalt
585ac0fc8d resolved conflicts for merge of 4ea54f44 to master
Change-Id: Ia77bb59a6e1950648c8ebf7db307e204f93a9f56
2010-08-27 11:05:11 -07:00
Gilles Debunne
084dd872b1 am b8fd0473: Merge "Fix for 512 limit in assetManager.list" into gingerbread
Merge commit 'b8fd047311e329f2b8dbe3d228488ba844718ee1' into gingerbread-plus-aosp

* commit 'b8fd047311e329f2b8dbe3d228488ba844718ee1':
  Fix for 512 limit in assetManager.list
2010-08-27 10:34:47 -07:00
Gilles Debunne
4d4040b7b3 Fix for 512 limit in assetManager.list
Also replaced all doThrow by jniThrow.

OutOfMemory after string creation were removed: should have been thrown before.

Bug http://b/issue?id=2949164

Change-Id: Idea8e27fdedeb43e3976776c477766e4dcdebcf8
2010-08-26 17:21:43 -07:00
Robert Greenwalt
b21b62327c resolved conflicts for merge of b998f311 to gingerbread-plus-aosp
Change-Id: I7ceb0b624e78d85542d1c36bfabeb5dc31961505
2010-08-25 17:48:47 -07:00
Brian Carlstrom
78448edcdd resolved conflicts for merge of 50d35946 to master
Change-Id: Ia8c3312d626952c378fc4e7fec1d46119e2ccf42
2010-08-25 11:32:17 -07:00
Brian Carlstrom
171ea89fb9 Update AndroidRuntime with dalvik-dev changes
This change is the result of three cherry-picks:

- Add dalvik.vm.gc.preverify dalvik.vm.gc.postverify properties.
  git cherry-pick --no-commit 0ef82fcf

- Add the property dalvik.vm.gc.verifycardtable to set the -Xgc:-Xgc:verifycardtable option for the vm.
  git cherry-pick --no-commit 8b4faf54

- Eliminate short JIT debugging properties
  git cherry-pick --no-commit 57a673fc3db9d84908467ae6d245fd60d4637b2f

Change-Id: I5f8002ed1e431344570add02f58e2641c8fae549
2010-08-24 21:27:52 -07:00
Romain Guy
a84e02ce3c Merge "Use only one GL context per process, share chaches." 2010-08-24 17:20:20 -07:00
Romain Guy
fb8b763f76 Use only one GL context per process, share chaches.
Change-Id: Ieabaa25338d2f4b8d4fd90e7401ad6e7452eae11
2010-08-24 17:18:14 -07:00
Chia-chi Yeh
bb2c2c14ed am 3a91abcb: am d3aaad0e: Merge "Use getMinFrameCount() instead of querying AudioSystem directly." into gingerbread
Merge commit '3a91abcb4cd06751009c155bfdce6c0a15a704df'

* commit '3a91abcb4cd06751009c155bfdce6c0a15a704df':
  Use getMinFrameCount() instead of querying AudioSystem directly.
2010-08-23 12:01:18 -07:00
Kenny Root
e49564e0f7 am 821afa9a: am 54d41379: Merge "Add OBB flags to support overlays" into gingerbread
Merge commit '821afa9aec8d3a4ffd2e72ce797d8097eaf13973'

* commit '821afa9aec8d3a4ffd2e72ce797d8097eaf13973':
  Add OBB flags to support overlays
2010-08-21 09:41:12 -07:00
Wei-Ta Chen
ce53603a4f am 9f7257f0: am 8d124f70: Merge "Fix a bug, where one thread is using JNIEnv associated with another thread." into gingerbread
Merge commit '9f7257f0a14cd17d8b55bc3bd1584dac2f9dd1b2'

* commit '9f7257f0a14cd17d8b55bc3bd1584dac2f9dd1b2':
  Fix a bug, where one thread is using JNIEnv associated with another thread.
2010-08-21 09:39:51 -07:00
Chia-chi Yeh
d3aaad0e2a Merge "Use getMinFrameCount() instead of querying AudioSystem directly." into gingerbread 2010-08-19 18:08:02 -07:00
Romain Guy
18ef37258d DO NOT MERGE. Fix the build.
Change-Id: I3322faa948af015f7d8df31b9a4c281f5311f067
2010-08-19 15:15:19 -07:00
Romain Guy
4f0a8df9fe Fix the build.
Change-Id: I71e77cb3c124b31b81d952dc3897ebc414a1f701
2010-08-19 15:10:54 -07:00
Romain Guy
288471d8a5 DO NOT MERGE. Load assets in place instead of deferring until draw.
Before this change, all framework assets would be decoded at drawing time
outside of zygote. This was forcing all apps to re-decode the assets and
zygote to keep an in-memory copy of each asset. This behavior is now
opt-in by setting the inPurgeable flag on BitmapFactory.Options.

Change-Id: Ief823139163d8071b8ee1267746622faf52eb8ec
2010-08-19 15:02:31 -07:00
Romain Guy
207b3ab604 Load assets in place instead of deferring until draw.
Before this change, all framework assets would be decoded at drawing time
outside of zygote. This was forcing all apps to re-decode the assets and
zygote to keep an in-memory copy of each asset. This behavior is now
opt-in by setting the inPurgeable flag on BitmapFactory.Options.

Change-Id: Ic703f57adb26b2a701ecff0a653d35a93e26d47c
2010-08-19 14:41:16 -07:00
Banavathu, Srinivas Naik
9bc709d46e Add an API to request route to an IPv6 host.
Add API to create a route to an IPv6 host through a particular
interface.

Change-Id: I7649051e94832576e02b5f5ad17abe093d21d48e
2010-08-19 12:50:35 -07:00
Kenny Root
54d4137935 Merge "Add OBB flags to support overlays" into gingerbread 2010-08-19 09:09:32 -07:00
Chia-chi Yeh
c3308074cd Use getMinFrameCount() instead of querying AudioSystem directly.
Change-Id: I6c4d2f1778703c1fd1ba5610c46e77c857418bff
2010-08-19 17:14:36 +08:00
Wei-Ta Chen
291303ba3d Fix a bug, where one thread is using JNIEnv associated with another thread.
We see abort messages like this when using JavaPixelAllocator and JavaMemoryUsageReporter.
W/dalvikvm(  680): JNI WARNING: threadid=2 using env from threadid=10
W/dalvikvm(  680):              in Landroid/graphics/LargeBitmap;.nativeClean (I)V (CallVoidMethodV)

To fix it, we keep JavaVM, rather than JNIEnv, in JavaPixelAllocator and JavaMemoryUsageReporter,
because JavaVM allows us to get the JNIEnv corresponds to the current thread.

Change-Id: Ibd4b394a53dd3fdccc5a442eeb0dedf836479575
2010-08-19 12:21:44 +08:00
Danica Chang
6fdd0c6274 bluetooth tethering
Change-Id: Id6d5fb1922facc7013abc29214d3e1141995b767
2010-08-18 15:07:50 -07:00
Jeff Brown
671cc0ec30 am 8fd80e92: am 72ce4235: Merge "Fix possible race conditions during channel unregistration." into gingerbread
Merge commit '8fd80e924a2f40f6a785f834914f8a6f18a3aa9d'

* commit '8fd80e924a2f40f6a785f834914f8a6f18a3aa9d':
  Fix possible race conditions during channel unregistration.
2010-08-18 14:20:24 -07:00
Kenny Root
02ca31fbae Add OBB flags to support overlays
* Add flags field in OBB footer to support overlays.

* Remove unused 'crypto' and 'filesystem' fields in obbtool (could
  later be supported in the "flags" field of the OBB footer).

* Add notes to document OBB classes before shipping.

Change-Id: I386b43c32c5edef55210acb5d3322639c08010ba
2010-08-18 09:34:58 -07:00
Bjorn Bringert
a006b47298 New API and implementation of DB and memory-backed FDs
This depends on a kernel patch that implements read(2)
in the ashmem driver.

Bug http://b/issue?id=2595601

Change-Id: Ie3b10aa471aada21812b35e63954c1b2f0a7b042
2010-08-18 15:39:52 +01:00
Jeff Brown
72ce42352c Merge "Fix possible race conditions during channel unregistration." into gingerbread 2010-08-17 17:05:38 -07:00
Jeff Brown
2cbecea4c9 Fix possible race conditions during channel unregistration.
Previously, the input dispatcher assumed that the input channel's
receive pipe file descriptor was a sufficiently unique identifier for
looking up input channels in its various tables.  However, it can happen
that an input channel is disposed and then a new input channel is
immediately created that reuses the same file descriptor.  Ordinarily
this is not a problem, however there is a small opportunity for a race
to arise in InputQueue.

When InputQueue receives an input event from the dispatcher, it
generates a finishedToken that encodes the channel's receive pipe fd,
and a sequence number.  The finishedToken is used by the ViewRoot
as a handle for the event so that it can tell the InputQueue when
the event has finished being processed.

Here is the race:

1. InputQueue receives an input event, assigns a new finishedToken.
2. ViewRoot begins processing the input event.
3. During processing, ViewRoot unregisters the InputChannel.
4. A new InputChannel is created and is registered with the Input Queue.
   This InputChannel happens to have the same receive pipe fd as
   the one previously registered.
5. ViewRoot tells the InputQueue that it has finished processing the
   input event, passing along the original finishedToken.
6. InputQueue throws an exception because the finishedToken's receive
   pipe fd is registered but the sequence number is incorrect so it
   assumes that the client has called finish spuriously.

The fix is to include a unique connection id within the finishedToken so
that the InputQueue can accurately confirm that the token belongs to
the currently registered InputChannel rather than to an old one that
happened to have the same receive pipe fd.  When it notices this, it
ignores the spurious finish.

I've also made a couple of other small changes to avoid similar races
elsewhere.

This patch set also includes a fix to synthesize a finished signal
when the input channel is unregistered on the client side to
help keep the server and client in sync.

Bug: 2834068
Change-Id: I1de34a36249ab74c359c2c67a57e333543400f7b
2010-08-17 17:03:42 -07:00
Irfan Sheriff
8c11e95230 DO NOT MERGE WifiLock extensions for high performance mode
Add extension to WifiLock to allow apps to operate
in high performance mode (high power & disable suspend
optimizations for battery consumption).

Bug: 2834260
Change-Id: I8b33d307f3d569bc92ba2139b9ed224ffc147547
2010-08-17 15:27:54 -07:00
Joseph Wen
1b10d3d235 am 81dcea60: am f1f48bc7: Do JPEG tile-based decoding.
Merge commit '81dcea6093dfcdadd52982505249a5eacf47a81b'

* commit '81dcea6093dfcdadd52982505249a5eacf47a81b':
  Do JPEG tile-based decoding.
2010-08-17 00:35:06 -07:00
Joseph Wen
81dcea6093 am f1f48bc7: Do JPEG tile-based decoding.
Merge commit 'f1f48bc7f200f54c76b22d845d8ba8419879b375' into gingerbread-plus-aosp

* commit 'f1f48bc7f200f54c76b22d845d8ba8419879b375':
  Do JPEG tile-based decoding.
2010-08-17 00:31:34 -07:00
Joseph Wen
f1f48bc7f2 Do JPEG tile-based decoding.
Change-Id: I5c1b4ac3c02eb4350ef0ba9a7877b22cfd730cfb
2010-08-17 14:34:02 +08:00
Romain Guy
1e45aae5de Add drop shadows.
Change-Id: Ic6a72409d4785968d1fbdff229f17ee5c00b240b
2010-08-13 19:41:14 -07:00
Mikael Kanstrup
876247784e DO NOT MERGE WLAN: Reset power save mode to startup value after DHCP response.
When the driver was configured to run with power save mode disabled the
power save mode incorrectly got reverted back to AUTO mode right after
DHCP response. The power save mode value is now saved so that the device
properly reverts back to a previous mode after DHCP response.

Change-Id: Ie68cd107872d233bf422e24130a1eb9f6432db91
Bug: 2834260
2010-08-13 10:24:04 -07:00
Dianne Hackborn
7b6d0d99b6 am 679ac09a: am a5ae50cd: Merge "More native work." into gingerbread
Merge commit '679ac09a5c22175354f3a04b28456b323839530e'

* commit '679ac09a5c22175354f3a04b28456b323839530e':
  More native work.
2010-08-11 00:50:56 -07:00
Dianne Hackborn
679ac09a5c am a5ae50cd: Merge "More native work." into gingerbread
Merge commit 'a5ae50cd838b5725c63ed485292aae4edd1a98cb' into gingerbread-plus-aosp

* commit 'a5ae50cd838b5725c63ed485292aae4edd1a98cb':
  More native work.
2010-08-11 00:47:51 -07:00
Dianne Hackborn
08d5b8fad8 More native work.
Implement save/restore of state, and add native APIs for
configuration information.

Change-Id: I2a3ddc2ba605db58d7c8b2b31b9215fb323f90b5
2010-08-11 00:29:59 -07:00
Romain Guy
48daa54d31 Add extra blending modes.
This change adds the following blending modes for shaders and color filters:
Add
Multiply
Screen
Overlay
Darken
Lighten

Change-Id: Iff22f5ce6041b43c71b1857d73013f5010ab3413
2010-08-10 21:42:40 -07:00
Romain Guy
a48a1a87ba Fast text selection drawing.
Change-Id: I93fb1312b47bc05345defa9b6cfe47c0658bb329
2010-08-10 14:59:15 -07:00
Romain Guy
61c8c9c5b2 Fix tons of bugs and add new text rendering support.
Change-Id: I326c66b10784006f6df2f12d38e120cef94cd0d7
2010-08-10 12:22:01 -07:00
Dianne Hackborn
23fdaf6fb6 Add new ContentProvider for doing conversions to data streams.
This introduces basic infrastructure that should allow content
providers holding complex data to perform on-demand conversion
of their data to streams of various types.  It is achieved through
two new content provider APIs, one to interrogate the possible
stream MIME types the provider can return, and the other to
request a stream of data in a particular MIME type.

Because implementations of this will often need to do on-demand
data conversion, there is also a utility intoduced in ContentProvider
for subclasses to easily run a function to write data into a
pipe that is read by the client.

This feature is mostly intended for cut and paste and drag and
drop, as the complex data interchange allowing the source and
destination to negotiate data types and copy (possible large)
data between them.  However because it is fundamental facility
of ContentProvider, it can be used in other places, such as for
more advanced GET_CONTENT data exchanges.

An example implementation of this would be in ContactsProvider,
which can now provider a data stream when a client opens certain
pieces of it data, to return data as flat text, a vcard, or other
format.

Change-Id: I58627ea4ed359aa7cf2c66274adb18306c209cb2
2010-08-08 18:49:31 -07:00
Romain Guy
1639351139 Make libhwui entirely optional.
The makefile variable USE_OPENGL_RENDERER must be set to true to compile
libhwui and the related code in the JNI layer.

This change also removes obsolete APIs from Canvas that must not be used
and would be confusing if left in. These APIs were remnants of our first
attempt at an OpenGL renderer for the view hierarchy and had not been
taken out before Android 1.0 was released.

Change-Id: I2475ff1307212bab26c926724f3c508681c7dae1
2010-08-08 17:45:07 -07:00
Mike Lockwood
b83f9c3027 Merge "Set umask of system server to 0077" 2010-08-06 09:40:54 -07:00