• Home
  • History
  • Annotate
  • only in /frameworks/base/core/java/android/content/
History log of /frameworks/base/core/java/android/content/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
026f91915f2ad710b93284b9a604d3c39161b2ed 14-Jan-2013 Scott Kennedy <skennedy@google.com> am 08342698: Merge "docs: Fix a bunch of issues" into jb-mr1-dev

* commit '083426980dbe6607a0cfc8b4ec5944d5b414ecbe':
docs: Fix a bunch of issues
7ed189e457b16c06b0425bd28aeeb1df5c8ff5b8 12-Jan-2013 Scott Kennedy <skennedy@google.com> docs: Fix a bunch of issues

External tracker 42609
External tracker 42607
External tracker 42604
External tracker 42600
External tracker 42574
External tracker 42450
External tracker 41050
External tracker 40995
External tracker 40970
External tracker 40935
External tracker 40507
External tracker 40481
External tracker 40435
External tracker 40406
External tracker 40297
External tracker 40281
External tracker 39978
External tracker 39929
External tracker 39803
External tracker 39715
External tracker 39441

Change-Id: If4215cef850ba8e4e8df356a68192566806e7914
roadcastReceiver.java
13579ed3305bf89b41a9fa88e1347f0e0769d279 29-Nov-2012 Dianne Hackborn <hackbod@google.com> Cleaner initial boot.

This does some cleanup of the initial boot, especially when
booting in "no core apps" mode for encryption/decryption.

Change-Id: Ifb3949f580e52f54559e603c4b0b104f6bac2f6c
m/IPackageManager.aidl
40e9f2922cae76ffcbc521481e5be8e80e8744ef 28-Nov-2012 Dianne Hackborn <hackbod@google.com> Quiet down a lot of logging.

Also fix a little problem where the USER_STARTED broadcasts
were not being sent as ordered broadcasts(!).

Change-Id: I3aa3e0a9b3900967cdd2d115ee103371b0a50c41
yncStorageEngine.java
m/RegisteredServicesCache.java
8b2c3a14603d163d7564e6f60286995079687690 12-Nov-2012 Jeff Sharkey <jsharkey@android.com> Useful annotations for code documentation.

Bug: 6537978
Change-Id: I806c3c09e3255f8789455f13bf37c1dde2a93f1f
yncManager.java
yncStorageEngine.java
m/RegisteredServicesCache.java
1c8135adba37ac09fe661180237df446611daa4b 23-Oct-2012 Jeff Sharkey <jsharkey@android.com> Merge "Update docs for multi-user storage behavior." into jb-mr1-dev
8c16579994a58c5763788b4f6be864e8a8219575 22-Oct-2012 Jeff Sharkey <jsharkey@android.com> Update docs for multi-user storage behavior.

Define external storage as being isolated for each user, with the
caveat for shared OBB files. Also mention external storage
permissions.

Bug: 7384941
Change-Id: Ib156b5874c5587749d7bc066791e9e88d931b174
ontext.java
cd75706117432e33d11639e675bcff50479a6bb9 20-Oct-2012 Amith Yamasani <yamasani@google.com> System server should always send broadcasts to a specific or all users

Bug: 7368245

Log a warning if the system process calls unqualified sendBroadcast()
and other calls.

As a result of the logging above, found a few more method calls such as
bindService() that would benefit from being more explicit to avoid
future confusion and reduce the log warnings.

Change-Id: I17f15c8be9adf7becd456d6abbab606f19befdbf
yncManager.java
8074e98b20ac04fdc032a1ed00dd6763b7e04147 21-Oct-2012 Amith Yamasani <yamasani@google.com> Merge "Fix crashes when quickly adding and removing users" into jb-mr1-dev
db6a14cc85cede0769735fdac4da70766989a3ce 18-Oct-2012 Amith Yamasani <yamasani@google.com> Fix crashes when quickly adding and removing users

Make USER_REMOVED an ordered broadcast and send it before the user's
state is completely removed from the system. This gives services the
opportunity to clean up their state, while still having access to the
user's directory and UserInfo object (such as serial number).

Tell SyncManager to skip over dying/partially created users.

Improve UserManager tests, waiting for users to be removed fully.

Bug: 7382252

Change-Id: I93cfb39c9efe6f15087bf83c569a2d154ef27168
ntent.java
yncManager.java
935415a050be75f582f632dd168be9fbb047137b 19-Oct-2012 Christopher Tate <ctate@google.com> Merge "Document immutable requirement of SharedPreferences return objects" into jb-mr1-dev
01ed79c5786c527628544828abf8b70d02b989cd 19-Oct-2012 Christopher Tate <ctate@google.com> Document immutable requirement of SharedPreferences return objects

In particular, make it quite clear that the set returned by
getStringSet() must not be modfied by the app, period; and
add a similar caution about the map returned via getAll().

Also, fix a bug that could lead to unexpected data being committed
if the set instance passed to putStringSet() was mutated by the
app after that call (including mutations after commit() was
invoked).

Bug 7312641

Change-Id: If9a1be1b0669ac879ff7a7dc67a8805548ea10cc
haredPreferences.java
09a5321c60c02d944684abb98e0daec9dd810fab 19-Oct-2012 Dave Burke <daveburke@google.com> Merge "Revert "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.""" into jb-mr1-dev
579e14016c4a972e70cd2bd0c6d89bbd7e9e941c 19-Oct-2012 Dave Burke <daveburke@google.com> Revert "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.""

This reverts commit 57fca90ac65ecfe97acd4c93d442c3db8f815e11

Change-Id: I21b007a7d150a4c23f25a706cdba5cb86198198f
es/TypedArray.java
bd4f2181077ab35a26bcca115c1337e78814bb9d 18-Oct-2012 Jeff Sharkey <jsharkey@android.com> Merge "Defer more Account actions until user starting." into jb-mr1-dev
871a6d7d4fb3bffaff37e45f0b4f5e3c862239d2 18-Oct-2012 Justin Ho <justinho@google.com> Merge "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."" into jb-mr1-dev
4e360f06003dd31da25dc8529fa1876ab573d0aa 18-Oct-2012 Justin Ho <justinho@google.com> Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."

This reverts commit f49d835dfe1bd21920ff8a48cbdfb9c1fd632fd9

Change-Id: If0093f23d6458e53619220fbf0aa5f844ad2c790
es/TypedArray.java
4db3165793a837ffc8197184fbc13ef2217e3dfc 18-Oct-2012 Justin Ho <justinho@google.com> Merge "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height." into jb-mr1-dev
f49d835dfe1bd21920ff8a48cbdfb9c1fd632fd9 18-Oct-2012 Justin Ho <justinho@google.com> This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.

This reverts commit 57fca90ac65ecfe97acd4c93d442c3db8f815e11

Change-Id: I0fe25056cd54b8852b32ae4621e048d3f5c7d555
es/TypedArray.java
e4996bbd519a088927180c2eed2941fe59a4cd40 17-Oct-2012 Jeff Sharkey <jsharkey@android.com> Defer more Account actions until user starting.

Instead of explicitly scanning OWNER accounts, move to using the
"user starting" call path for consistency.

Bug: 7358086
Change-Id: Ied3289a074aafa48259d828db1d68804912589b3
yncManager.java
yncQueue.java
144d405511e9ed685568e50db87b22cc42b6a252 17-Oct-2012 Justin Ho <justinho@google.com> Merge "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."" into jb-mr1-dev
57fca90ac65ecfe97acd4c93d442c3db8f815e11 17-Oct-2012 Justin Ho <justinho@google.com> Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."

This reverts commit dcf59629beed8182759a1068ab8ee997935bef82

Change-Id: I27426a0ffe993973ffb0b05ce1ed3afe73fcd87d
es/TypedArray.java
8e6145013a6533ca6a33e03c8a5e45ad2de431e4 17-Oct-2012 Jim Miller <jaggies@google.com> Merge "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height." into jb-mr1-dev
dcf59629beed8182759a1068ab8ee997935bef82 17-Oct-2012 Jim Miller <jaggies@google.com> This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height.

Revert "Revert "Revert "Fix for bug 6050753."""

This reverts commit 6868d6f349610c15256471cc3d5fa708cbfd5f1d

Change-Id: I8843d92dba14c82f06d9ee59517cf11b2abbbf04
es/TypedArray.java
69b0c974b5abb38a4443410cf09f7d5f28cf2c7f 17-Oct-2012 Christopher Tate <ctate@google.com> Merge "Fix ApplicationInfo copy ctor" into jb-mr1-dev
bcb0255770caa6b053da100de13beb840da71b21 17-Oct-2012 Christopher Tate <ctate@google.com> Fix ApplicationInfo copy ctor

Need to copy ALL the fields!

Bug 7360899

Change-Id: Ie6ed2d6f41c2efaf793ebf111adc8fa5e8b57d7c
m/ApplicationInfo.java
a706e2fd0059b1bb86c487722dbc9fc0fda9c980 16-Oct-2012 Jeff Sharkey <jsharkey@android.com> Lock SyncQueue when user starting, copy RSC list.

Document SyncQueue locking policy and protect in onUserStarting()
and clearAllBackoffs(). Return copy of ServiceInfo list from
RegisteredServicesCache instead of exposing locking externally.

Bug: 7357776, 7352537
Change-Id: I6a32ca98a355b639d4207a88bde572179beae359
yncManager.java
yncQueue.java
yncStorageEngine.java
m/RegisteredServicesCache.java
6868d6f349610c15256471cc3d5fa708cbfd5f1d 16-Oct-2012 Mathias Agopian <mathias@google.com> Revert "Revert "Fix for bug 6050753.""

Emergency revert -- fix reboot loop.

This reverts commit 8e63bcc63fd002231f8391af8982eeb235d096c8.

Change-Id: I4373b867d756de09cdf6aa0aba9e6ff8f47bcdbc
es/TypedArray.java
8e63bcc63fd002231f8391af8982eeb235d096c8 15-Oct-2012 Romain Guy <romainguy@google.com> Revert "Fix for bug 6050753."

This reverts commit c29f031598811486d83f418fd08fbfe1fc41788a.
es/TypedArray.java
8f55d112983aa922687de7e3581f73913c06e37a 11-Oct-2012 Jeff Sharkey <jsharkey@android.com> Database cleanup needs to happen for all users.

Bug: 6970084
Change-Id: I9a6f1cbaf095b245ec9707a90c518256e0aa1f5f
yncManager.java
9535c915b61c43d7b4bdb2b35d53774cfb16bfbb 11-Oct-2012 Amith Yamasani <yamasani@google.com> Fix a runtime restart when cycling between 4 users

Some refactoring in Sync Manager caused mUserManager to be initialized too late.
Make sure this is initialized in the constructor now.

Bug: 7328386
Change-Id: Ic67915e172c3b8ef368852147667287e38c0213b
yncManager.java
6eb9620ff289105c3fc4a1be28a8eebb17d044e0 10-Oct-2012 Jeff Sharkey <jsharkey@android.com> Include all accounts in dumpsys.

Allow accounts to be loaded when a user is stopped, but always
validate accounts against a freshly queried PMS cache when the user
actually starts.

Bug: 7276595
Change-Id: I0382064c73123c243bc6f6e5da8fc3d0a8b73442
yncManager.java
6ab72d74b86e5f4ec3c3909366fd46c225a66bd7 09-Oct-2012 Jeff Sharkey <jsharkey@android.com> Make RegisteredServicesCache multi-user aware.

RegisteredServicesCache is used to track account authenticators and
sync adapters, which can vary based on user. This change requires
that callers now provide a userId when making cache requests. It
continues persisting into a single file for now, which is keyed based
on UID.

It now watches for package broadcasts from all users, and scans
packages on-demand. It changes cache callers to provide a relevant
userId, and evicts cache entries when users are stopped.

Changes SyncManager to only work with accounts from running users,
only kicking off pending syncs once a user is started.

Bug: 7276595, 7316150
Change-Id: I79466a84aa69aa37e4bd9691c5d6221d3662ff29
ontentService.java
yncManager.java
yncQueue.java
m/RegisteredServicesCache.java
m/RegisteredServicesCacheListener.java
36d337adffa6d1c4c953e83730ad58747f554877 08-Oct-2012 Dianne Hackborn <hackbod@google.com> Framework side of issue #7302511: GCM client needs to use new framework API...

...to fix background->shutdown delivery race

Add ACTION_STOPPING and ACTION_STARTING to allow such apps to keep track of
which users are started/stopped, and be involved in the process of stopping
a user.

Also get rid of the scale part of the wallpaper transitions, since it seems
like I have still failed at getting the user switch to wait until the new
wallpaper is displayed.

Change-Id: If7e8fdae3544a9d7987a1b9274dc8b49022f6f62
ntent.java
9c2a38ed10592a54d9bb753ef882632f7a8cd446 08-Oct-2012 Amith Yamasani <yamasani@google.com> Merge "Fix resource reading for secondary users" into jb-mr1-dev
64442c11555d828a41af0b8a58ab933357889061 07-Oct-2012 Amith Yamasani <yamasani@google.com> Fix resource reading for secondary users

Bug: 7086881

Load resources for the correct user.

Also clean up package monitoring and locking.
Added dump method to SearchManagerService.

Sneaking in a change to make crash dialogs visible to current user.

Change-Id: Id56dd15428d66084de995e28be242db27c15fda3
m/PackageItemInfo.java
5962b12bedc4a1d0354816c1cd6b06ba04f6d807 05-Oct-2012 Craig Mautner <cmautner@google.com> Adds showWhenLocked attribute to Activities.

The new attribute allows an Activity such as the alarm to appear
on all users screens.

Bug: 7213805 fixed.
Change-Id: If7866b13d88c04af07debc69e0e875d0adc6050a
m/ActivityInfo.java
m/PackageParser.java
afccaa84c8d1b9aa45040ddeb0edd42ba80e80d6 04-Oct-2012 Christopher Tate <ctate@google.com> Use myUserId() only in registerContentObserver()

The reason for this is a bit subtle: we want to guarantee that
when a content observer is registered using the public API, it
is *always* bound to the host user's view of the data behind the
observed Uri, never the calling user's. Now, the reason it was
the calling user in the first place is that the Settings provider
(and potentially any singleton provider) needs the observers
underlying Cursors returned from query() to be tied to the caller's
user, not the provider's host user.

In order to accomplish that now that the public-facing behavior is
always tied to the host user, the concrete class that implements
the Cursor type handled by the Settings provider has been extended
with a new hidden API for setting a notification observer tied to
an arbitrary user; and then the provider explicitly downcasts the
query result's Cursor to that class in order to register the
notification observer. We can do this safely because this is platform
code; if we change the way that these underlying cursors are constructed,
we can just fix this point of call to follow along. If they get out
of sync in the future, the Settings provider will scream bloody
murder in the log and throw a crashing exception.

Bug 7231549

Change-Id: I0aaceebb8b4108c56f8b9964ca7f9e698ddd91c8
ontentResolver.java
5bc54bf354f6e674a129b2e286b4bd3eefe91c2b 03-Oct-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #7272775: Auto Start Apps Not Starting" into jb-mr1-dev
4a9f071f3d3fdd20615167cda6f22da912bc60c7 03-Oct-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7272775: Auto Start Apps Not Starting

Bad defaults were causing stopped state to be set at each
boot.

Change-Id: I49b04e9c62f6ac391054201b508fddb6c7985615
m/PackageUserState.java
2e7d25b91f6f9185d447c99b2eabeab6bf735079 01-Oct-2012 Daniel Sandler <dsandler@android.com> Introduce ACTION_QUICK_CLOCK for the QS time tile.

By default it will still go to Date/Time Settings (see
change Ib430f0c5) but 3Ps can hook it for other useful
things.

Bug: 7264806
Change-Id: Ic561dbeb5cc0738372c079b3eb52749c44b3cf0d
ntent.java
fe37f8f51d90fc4c6230e54dcd1270df5fcc6be3 30-Sep-2012 Dianne Hackborn <hackbod@google.com> Work on issue #6949468: android.dpi.cts.ConfigurationScreenLayoutTest...

...#testScreenLayout failures on JO

This doesn't actually fix it; I have concluded that the test is broken
(the platform is correctly reporting that this is a NOT LONG device
because in portrait once you account for the status bar and system
bar our size is 880dp high and 600dp wide, which is not enough for us
to be in the LONG config).

However while working on this I noticed that the code for computing
the configuration of the external display was wrong. I have fixed
that by putting this code for computing these parts of the configuration
in a common place that both the window manager and external display
code can use.

Change-Id: Ic6a84b955e9ec345a87f725203a29e4712dac0ad
es/Configuration.java
c36c49ee83123d6083c05a3e333ac43a13f664cd 30-Sep-2012 Craig Mautner <cmautner@google.com> Changing debug for b/7094175.

Fixes bug 7094175 (but not really).

Change-Id: Ice2abb93f479ea0bda931e9643710668c25aa285
es/Resources.java
be87e2f5885b28145a788fd31d1fb5ae88a71100 29-Sep-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7255954: API Review: rename Dream to DreamService

Change-Id: I89ecf2c3ec4fef09c0495aa68de11576f9cfd872
ntent.java
3ff8e1a80058e5557d13693d3223e1aa011c0038 29-Sep-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #7211769 and #7244492, thrash around on #7226656." into jb-mr1-dev
d4ac8d7b3de27a9f0e4c6af2496ca71d794e42d1 28-Sep-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7211769 and #7244492, thrash around on #7226656.

Issue #7211769: Crash dialog from background user has non-working "report"

The report button now launches the issue reporter for the correct user.
Also for crashes on background users, either disable the report button,
or simply don't show the dialog depending on the build config.

Issue #7244492: Bugreport button in Quick Settings doesn't actually do anything

Now they do.

Issue #7226656: second user seeing primary user's apps

I haven't had any success at reproducing this. I have tried to tighten up
the path where we create the user to ensure nothing could cause the
user's applications to be accessed before the user it fully created and thus
make them installed... but I can't convince myself that is the actual problem.

Also tightened up the user switch code to use forground broadcasts for all
of the updates about the switch (since this is really a foreground operation),
added a facility to have BOOT_COMPELTED broadcasts not get launched for
secondary users and use that on a few key system receivers, fixed some debug
output.

Change-Id: Iadf8f8e4878a86def2e495e9d0dc40c4fb347021
m/ActivityInfo.java
m/PackageParser.java
m/PackageUserState.java
m/UserInfo.java
9dbbfcda81f251f23aded866f7f9d49d8a744c75 28-Sep-2012 Ben Gruver <bgruv@google.com> Merge "Pass the originating uid to the package verifier" into jb-mr1-dev
625239a05401bbf18b04d9874cea3f82da7c29a1 27-Sep-2012 Jeff Sharkey <jsharkey@android.com> Migrate more Secure settings to Global.

Migrate networking, storage, battery, DropBox, and PackageManager
related Secure settings to Global table.

Bug: 7232014, 7231331, 7231198
Change-Id: I772c2a9586a2f708c9db95622477f235064b8f4d
yncManager.java
37d83a3caf138e35fa1a355787d20c351f6b37a6 27-Sep-2012 Ben Gruver <bgruv@google.com> Pass the originating uid to the package verifier

Bug: 6923241
Change-Id: I85a3e0d53b469543cb0551d3a440d2663b5d0697
ntent.java
m/VerificationParams.java
38796fe16266e22c56d2eee3eb63fac0cb926aaa 27-Sep-2012 Amith Yamasani <yamasani@google.com> Merge "Fix sync problems when setting up a new user and account" into jb-mr1-dev
d648a605e8249219ce60ac93e074758ebb6fc4ab 27-Sep-2012 Amith Yamasani <yamasani@google.com> Fix sync problems when setting up a new user and account

Bug: 7197445

The listener on AccountManager is not sufficient since it only triggers when
primary user's accounts change.

Switch to watching for LOGIN_ACCOUNTS_CHANGED_ACTION for all users.

Change-Id: I63f526aebd70f0ad777490f3e0b6e6894220d26c
yncManager.java
b12e1354f25f04e9c9a71da76c6fca858b7d39d0 26-Sep-2012 Dianne Hackborn <hackbod@google.com> Maybe fix issue #7211766: bindService() to User u0 While u10 is...

...Forground Sometimes Doesn't Take

The main change here is a one-liner in ActiveServices to check the
uid when deciding whether to remove an item from mPendingServices.
This could cause the problem being seen -- if the same service for
two users is starting at the same time, the second one would blow
away the pending start of the first one. Unfortunately I have had
trouble reproducing the bug, so I don't know if this is actually
fixing it. It's a bug, anyway.

The reason so much has changed here is because I spread around
logging and printing of the user ID associated with operations and
objects to make it easier to debug these kind of multi-user things.

Also includes some tweaks to the oom manager to allow more background
processes (I have seen many times in logs where we thrash through
processes because the LRU list is too short), plus to compensate an
additional time-based metric for when to get rid of background processes,
plus some new logic to try to help things like Chrome keep around
their service processes.

Change-Id: Icda77fb2a1dd349969e3ff2c8fff0f19b40b31d3
ontext.java
98edc951712823dbf5db2b7e9c203a0e98fc616b 25-Sep-2012 Amith Yamasani <yamasani@google.com> Load resources for the correct user

For apps that are only installed on secondary users, the SystemUI is
unable to see them by default. Added some methods to explicitly pass the
userId of the user the resources are requested for by the StatusBarIcon

Bug: 7214384

Also fix binding to remote views

Bug: 7192802

Change-Id: I5d6c5f624aa37fb231f3467f9764c8d99077a91d
m/PackageManager.java
ea7e91514ee1968d15713e82a5cca745e2c46a05 25-Sep-2012 Amith Yamasani <yamasani@google.com> AppInfo from Notifications for secondary users

Required wiring up startActivitiesAsUser()

Bug: 7224950

Also fix a bug in navigateUp in secondary user

Change-Id: I114ae2de0457362d62e899fdb94b12239a3eb778
ontext.java
ontextWrapper.java
7451f15e7464fe8dd117b74c6dcff780785e0007 24-Sep-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #6926562: Ensure all multi-user cache files are managed correctly" into jb-mr1-dev
556b09e184b891d9542092962ed248616810e054 24-Sep-2012 Dianne Hackborn <hackbod@google.com> Fix issue #6926562: Ensure all multi-user cache files are managed correctly

Now we correctly iterate through the different user cache dirs.

Also update documentation to describe the new cache pruning behavior,
and deprecate the file modes for making files world readable/writable
which we really don't want people using any more.

Change-Id: I3708df3ddc697b1f5c511143cce7cc40a5a3d0bd
ontext.java
fcf0061ebf2a56f76f207460b39fb14f25779bfd 24-Sep-2012 Alon Albert <aalbert@google.com> Merge "Skip operations for users who are not running" into jb-mr1-dev
752cd922f7091dfd5401faf70dc248934a9dbb6d 24-Sep-2012 Jeff Sharkey <jsharkey@android.com> Always bind to DefaultContainerService as OWNER.

When PackageManagerService deals with external storage, always bind
to DefaultContainerService as USER_OWNER. This avoids binding to a
stopped user, which would fail.

Bug: 7203111
Change-Id: I8e303c7558e8b5cbe4fea0acc9a472b598df0caa
m/PackageCleanItem.java
11820f7386ce86fd89e9e6b49d9231dce6e1ed07 23-Sep-2012 Jeff Sharkey <jsharkey@android.com> Merge "Allow acquiring ContentProviders across users." into jb-mr1-dev
b939e35274334d1f5e71a526efe8d235eb6d7387 23-Sep-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #7209355, #7214271." into jb-mr1-dev
8da429e80d1778d7bcfbfbd64355c70fb466b3ce 23-Sep-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7209355, #7214271.

Issue #7209355: Intent on the secondary user results in an intent picker
in the Primary user.
Issue #7214271: Crash in system UI

Also fix a bug where I recently broke the removeTask() operation in the
activity manager where it would remove the wrong task.

Change-Id: I448c73a0e83a78d9d8d96b4629658c169888d275
m/ResolveInfo.java
a91c9f9f7a3c5d09333bdf27ef06012bb4e7d710 23-Sep-2012 Eino-Ville Talvala <etalvala@google.com> Merge "Unhide and document feature android.hardware.camera.any." into jb-mr1-dev
6d51571835737c7502a2e111ee9dc2527ebad984 21-Sep-2012 Jeff Sharkey <jsharkey@android.com> Allow acquiring ContentProviders across users.

Otherwise services like SystemUI will always open content://-style
Uris as USER_OWNER. Surfaces through createPackageContextAsUser()
which points all ContentResolver operations towards a given user.

Start using in RemoteViews, so that Notifications correctly resolve
image Uris to the sending user. Also add user support for "content"
shell tool.

Bug: 7202982
Change-Id: I8cb7fb8a812e825bb0b5833799dba87055ff8699
ontext.java
ontextWrapper.java
c9108b1856c7b6d98ddc04fbe330df21f2da890d 22-Sep-2012 Eino-Ville Talvala <etalvala@google.com> Merge "Add hardware feature android.hardware.camera.any." into jb-mr1-dev
58d37b55bd228032355360ea3303e46a804e0516 18-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> Multi-user support for the accessibility layer.

1. This change converts the accessibility manager service to
maintain a state per user. When the user changes the services
for the user that is going away are disconnected, the local
accessibility managers in the processes for this user are
disabled, the state is swapped with the new user's one, and
the new user state is refreshed.

This change updates all calls into the system to use their
user specific versions when applicable. For example, regisetring
content observers, package monitors, calls into other system
services, etc.

There are some components that are shared across users such
as UI created by the system process and the SystemUI package.
Such components are managed as a global state shared across
all users and are updated accordingly on a user switch. Since
the SystemUI is running in a normal app process this change
adds hidden APIs on the local window manager to allow the
SystemUI to notify the accessibility layer that it will run
accross users.

Calls to AccessibiltyManager's isEnabled(), isTouchExplorationEnabled()
and sendAccessibilityEvent return false or a are a nop for a
background user sice he should not send accessibility events,
and should not perform touch exploration.

Update the internal accessibility tests due to changes in the
AccessibilityManager.

This change also fixes several issues that were encountered
such as calling out the accessibility manager service with a
lock held.

Removed some incorrect debugging code from the TouchExplorer
that was leading to a system crash.

bug:6967373

Change-Id: I2cf32ffdee1d827a8197ae4ce717dc0ff798b259
m/PackageManager.java
8e28555f6d4ea557ba79e3d411ea46e5a0788b8f 18-Sep-2012 Alon Albert <aalbert@google.com> Skip operations for users who are not running

Listen to ACTION_USER_FOREGROUND and check alarms when it happens
Also add user logging to dumpsys

Bug: 7115753
Change-Id: Idb7881b62e31813feec684db8ff2e9d22e65a0f9
yncManager.java
yncOperation.java
920ace0bbc2d4133dbec991d2636c99a57d6245e 21-Sep-2012 Amith Yamasani <yamasani@google.com> Query users excluding any being removed

Keep track of user creation and last logged-in time.
adb shell dumpsys users
User switcher shouldn't show users about to be removed.
No need to check for singleton for activities.

Bug: 7194894
Change-Id: Ic9a59ea5bd544920479e191d1a1e8a77f8b6ddcf
m/UserInfo.java
58e7f73c6e2d6583be0beabc95e7ac430bef0eb4 21-Sep-2012 Christopher Tate <ctate@google.com> Merge "Multiuser awareness in content observer infrastructure" into jb-mr1-dev
c72fc674a33b8d17585764d09d3bb6c77d7d947e 20-Sep-2012 Dianne Hackborn <hackbod@google.com> Implement multi-user PackageMonitor.

New APIs let you indicate what user(s) to monitor, and tell you
what user is changing when receiving a callback.

Fix package manager to only deliver package brpadcasts to the
running users. (This isn't really a change in behavior, since
the activity manager would not deliver to stopped users anyway).
Make sure all broadcasts that package monitor receives also include
user information for it to use.

Update wallpaper service to (hopefully) now Really Correctly
monitor package changes per user.

Change-Id: Idd952dd274abcaeab452277d9160d1ae62919aa0
ntent.java
b7564454297ba1706670ccab0562cac6676d0a77 20-Sep-2012 Christopher Tate <ctate@google.com> Multiuser awareness in content observer infrastructure

Content observers are registered under the calling user's identity,
not under the provider host's identity (unless the caller is using
the new permissioned entry points that allow observers to be
registered for a different user's view of the data). The most important
implication of this is that when the settings provider is directly
queried, the Cursor returned to the app is wired for change notifications
based on that calling app's user.

Note that it is not possible to use query() / insert() to read/write
data for different users. All such manipulations should use the
standard get* / put* methods in Settings.*.

Bug 7122169

Change-Id: If5d9ec44927e5e56e4e7635438f4ef48a5430986
ontentResolver.java
ontentService.java
8f301e666873e4a9feaace38a0b184a5f3ce7003 19-Sep-2012 Craig Mautner <cmautner@google.com> Merge "Add debug for b/7094175." into jb-mr1-dev
a1c46636dd533e889e1f3b3326fa0d851928df4f 19-Sep-2012 Christopher Tate <ctate@google.com> Merge "Disable content observer cross-user permission checks..." into jb-mr1-dev
390392ff3ef0114544eab3db4093c1c7aba825da 19-Sep-2012 Dianne Hackborn <hackbod@google.com> Merge "Changes to support side-loading of apps from other users." into jb-mr1-dev
e6c660ab35d60952e38e74b60c34db57ef00b674 19-Sep-2012 Christopher Tate <ctate@google.com> Disable content observer cross-user permission checks...

... until we have a solid fix for the singleton ContentProvider
problem cases in place.

Bug 7190837

Change-Id: Ibbef2ddc594896ba7b9217e2856c3e393f525af6
ontentService.java
eba784ff4ab2a080ddc1d41b90db0e3729ee1ea3 19-Sep-2012 Dianne Hackborn <hackbod@google.com> Changes to support side-loading of apps from other users.

Change-Id: I5b7c0aa0dc9566b29d5980dc7f42a508a61a58d3
ntent.java
72b4db15b6f30a5bc1c906aece93873b223f7dc2 19-Sep-2012 Eino-Ville Talvala <etalvala@google.com> Unhide and document feature android.hardware.camera.any.

Bug: 6847310
Change-Id: I67a973dccfdc735aac457fce625003a386ff2fbe
m/PackageManager.java
752af83e5b28a4225510406a0ec868585caf1ccc 18-Sep-2012 Eino-Ville Talvala <etalvala@google.com> Add hardware feature android.hardware.camera.any.

This feature means that a device has at least one camera, facing in
some direction, so it matches devices that:
- Have just a back-facing camera
- Have just a front-facing camera
- Have both

In the future, it could also be used for devices that have a camera
that's neither front- or back-facing, such as a webcam or other
flexibly-pointed device.

Hidden for now.

Bug: 6847310
Change-Id: I51ea3b4db2020b0f056d77e10629a6b5f2daebe1
m/PackageManager.java
20586fa0353f63453766140b32a4778793ce2b43 18-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7173351 API REVIEW: android.util.LocaleUtil" into jb-mr1-dev
d3d9f3f1004dfee2649a26cfe8dba948cd364904 18-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7173351 API REVIEW: android.util.LocaleUtil

Change-Id: I08fd491eff714059e9ec874fadebe7eb556c34d5
es/Configuration.java
0cbfcffe7b99eea85dc17e92ef204035fa6fd4f9 18-Sep-2012 Craig Mautner <cmautner@google.com> Add debug for b/7094175.

Change-Id: Iec83b9350bfeb804dfe3da25986138c2dbaa6d45
es/Resources.java
f7a6dfcafc1eaa8014b4fa796e4b31208f72fd36 18-Sep-2012 Amith Yamasani <yamasani@google.com> Merge "Pass Bitmap instead of ParcelFileDescriptor in UserManager" into jb-mr1-dev
e928d7d95dbb64627e6ff3a0572190c555b59d96 18-Sep-2012 Amith Yamasani <yamasani@google.com> Pass Bitmap instead of ParcelFileDescriptor in UserManager

Add a USER_INFO_CHANGED intent for lockscreen and quicksettings to use
to monitor changes to the user name or icon.

Bug: 7164040
Change-Id: Id6fb8b6d38ce04ccd02bbadcf0c10699783d6c03
ntent.java
c33f94e2a50c9b03cb771237e8672743da8b1314 18-Sep-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix API review bugs." into jb-mr1-dev
8832c18d8b63367929c2d394c9c508f56003d400 18-Sep-2012 Dianne Hackborn <hackbod@google.com> Fix API review bugs.

7173152 API REVIEW: android.content.pm.PackageUserState
7172969 API REVIEW: android.app.PendingIntent
7172730 API REVIEW: android.content.Context
7172726 API REVIEW: android.manifest.permission

Change-Id: Iad470256d3b5ca5596487f6a699ec1871457c3b5
ontext.java
ntentSender.java
m/PackageManager.java
m/PackageUserState.java
16aa9736175f5bbe924a6e5587a2ca47c2dd702b 18-Sep-2012 Christopher Tate <ctate@google.com> Per-user content observer APIs

Callers with INTERACT_ACROSS_USERS_FULL permission can now observe content
for a given user's view (and can notify content uri changes targeted to a
specific user). An observer watching for UserHandle.USER_ALL will see all
notifications for the given uri across all users; similarly, a notifier
who specifies USER_ALL will broadcast the change to all observers across
all users.

The API handles both USER_ALL or USER_CURRENT, and explicitly forbids
any other "pseudouser" designations.

This CL also revs the Settings provider to notify with USER_ALL for
changes to global settings, and with only the affected user's handle
for all other changes.

Bug 7122169

Change-Id: I94248b11aa91d1beb0a36432e82fe5725bb1264f
ontentResolver.java
ontentService.java
ContentService.aidl
6d235d8265a45bbc56c058ca1a9eca4eff69636a 17-Sep-2012 Dianne Hackborn <hackbod@google.com> New uninstall option to uninstall for all users.

Change-Id: Ie8eb59564078069633a89fc8a92d4f8531baa1aa
ntent.java
2ca2c8787130506d350d997c18bbc274faf88e37 17-Sep-2012 Dianne Hackborn <hackbod@google.com> More adjustments to permissions.

- New "cost money" flag can be put on a permission to
have this emphasized in the UI.
- Some further re-organization of permissions to better
match UX spec.

Change-Id: I450ac739eff6b90e7c7fc39589d68db82b61f897
m/PackageParser.java
m/PermissionInfo.java
d65afc65ea5b2bf83889dd88a9c94f895da8aece 16-Sep-2012 Dianne Hackborn <hackbod@google.com> Merge "More multi-user stuff." into jb-mr1-dev
5dc5a00e7ebadc085ded7e29feacd17e53698486 16-Sep-2012 Dianne Hackborn <hackbod@google.com> More multi-user stuff.

- New public APIs to find out when a user goes to the foreground,
background, and is first initializing.
- New activity manager callback to be involved in the user switch
process, allowing other services to let it know when it is safe
to stop freezing the screen.
- Wallpaper service now implements this to handle its user switch,
telling the activity manager when it is done. (Currently this is
only handling the old wallpaper going away, we need a little more
work to correctly wait for the new wallpaper to get added.)
- Lock screen now implements the callback to do its user switch. It
also now locks itself when this happens, instead of relying on
some other entity making sure it is locked.
- Pre-boot broadcasts now go to all users.
- WallpaperManager now has an API to find out if a named wallpaper is
in use by any users.

Change-Id: I27877aef1d82126c0a1428c3d1861619ee5f8653
ntent.java
m/UserInfo.java
d0c6ccbafdebc73d03cf3cd47f02f9f6c78a69ff 15-Sep-2012 Jeff Sharkey <jsharkey@android.com> Move NetworkPolicy from apps to UID.

For multi-user devices, switch to storing policy per-user instead of
per-app. Also watch for user added/removed broadcasts to clean up
policies and apply global restrictions.

Bug: 7121279
Change-Id: Ia7326bd0ebe0586fa4ec6d3a62f6313dc8814007
ntent.java
13d428e8306d1bb1a3017045bc5d2f76edec32df 13-Sep-2012 rich cannings <richc@google.com> Send more information to verifiers

Send package name, version code and the uid of the application requesting the
install to package verifiers.

Bug: 7164155
Change-Id: I2464dc5d4551f60b4f38f7982495a8920c83e1cd
m/PackageManager.java
m/VerificationParams.java
7454d3b73cfd0d7ad58b0285102b09aad1e0150f 13-Sep-2012 Dianne Hackborn <hackbod@google.com> New permissions UI, again.

Change-Id: I0bbecd88ff1f212b30d1ef32d5bcaa49cdf1e9ce
m/PackageParser.java
m/PermissionGroupInfo.java
b049e212ab7fe8967893c202efcb30fecfdb82fb 08-Sep-2012 Jeff Sharkey <jsharkey@android.com> Include user identifier in external storage paths.

When building external storage paths, always include user in path
to enable cross-user paths and aid debugging.

Each Zygote process continues to only have access to the appropriate
user-specific emulated storage through bind mounts. A second set of
mounts continue supporting legacy /sdcard-style paths. For example,
a process running as owner has these mount points:

/storage/emulated_legacy
/storage/emulated_legacy/Android/obb
/storage/emulated/0
/storage/emulated/obb

Since Environment is created before Zygote forks, we need to update
its internal paths after each process launches.

Bug: 7131382
Change-Id: I6f8c6971f2a8edfb415c14cb4ed05ff97e587a21
m/UserInfo.java
151ec4c9f8ca34625733730a4551a23eb97cda23 08-Sep-2012 Amith Yamasani <yamasani@google.com> More multi-user methods in PM

pm can list installed packages by user now.

Bug: 6926465

Change-Id: I822311bfd6e7e2d6fb315fc484739fbf953c9bb6
m/IPackageManager.aidl
m/PackageManager.java
5e03e2ca7d25b899b129baad2dd5eca6bf99d88a 06-Sep-2012 Dianne Hackborn <hackbod@google.com> More multi-user stuff:

- New (hidden) isUserRunning() API.
- Maintain LRU list of visited users.
- New FLAG_IS_DATA_ONLY for ApplicationInfo.
- Clean up pending intent records when force-stopping a user (or package).
(Also fixes bug #6880627: PendingIntent.getService() returns stale
intent of force stopped app)
- Fix force-stopping when installing an app to do the force-stop across
all users for that app.
- When selecting which processes to kill during a force stop, do this
based on the actual packages loaded in the process, not just process
name matching.
- You can now use --user option in am when starting activities, services,
and instrumentation.
- The am --user option accepts "current" and "all" as arguments.
- The pm uninstall command now uninstalls for all users, so it matches
the semantics of the install command.
- PhoneWindowManager now explicitly says to start home in the current
user.
- Activity manager call to retrieve the MIME type from a content provider
now takes a user argument, so it will direct this to the proper user.
- The package manager uninstall paths are now implemented around
PackageSetting, not PackageParser.Package. This allows them to work
even if the application's apk has been removed (in which case it only
exists as a PackageSetting, not the PackageParser.Package parsed from
the apk).

Change-Id: I3522f6fcf32603090bd6e01cc90ce70b6c5aae40
ontentResolver.java
m/ApplicationInfo.java
m/InstrumentationInfo.java
6543c292b2d1cb3547f4565f89b7cb649ad955d6 07-Sep-2012 Romain Guy <romainguy@google.com> Merge "The drawables cache strikes again Bug #7117785" into jb-mr1-dev
5f49c3023a512efbef8bc9515d310c7a72be4af2 07-Sep-2012 Romain Guy <romainguy@google.com> The drawables cache strikes again
Bug #7117785

Draawables created from the ConstantState cache found in Resources must be
mutated before they can be safely modified by apps. Failure to do so results
in all drawables sharing the same constant state to be affected by the
modification.

In the case of the bugreport above, the status bar code plays tricks with
a background drawable and modifies its color to implement a fade in/out
effect. This drawable comes from a cached resource (color 0x0) and the
modifications made by the status bar apply to other clients of this drawable,
most notably the recents panel.

This change fixes several things:
- Simplifies colors caching by removing the assetCookie from the key. This
should result in better reuse of cached drawables
- Makes View.setBackgroundColor() honor the mutate() contract
- Ensure StateListDrawable properly mutates its children before modifying
them
- Optimize Bitmap/ColorDrawable to mark them mutated when they are not
created from an existing ConstantSate. The same optimization should be
applied to other drawables in the future

Change-Id: I54adb5d5b914c7d8930bf9b46f7e3f9dcbf4bcab
es/Resources.java
8a802dbdabdfd27692c2e38b2c3adafe95566106 05-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Use "ldrtl" and "ldltr" config qualifiers for RTL / LTR resources

- we cannot use "rtl" / "ltr" qualifiers as they can conflict with ISO-639 Alpha-3
codespace which uses 3 letters for identifying a language code (and could use either
"rtl" or "ltr" strings for defining a language in the future).

- we are using instead "ldrtl" for RTL and "ldltr" for LTR resources. Those qualifiers
are defined by more than 3 chars and outside of what is defined into ISO-639. They
are also more understandable as "ld" prefix is for "layoutdirection"

Change-Id: Id43e948103707e09bef63ebd54ac1779dde58e72
es/Configuration.java
f389f2820c731b2b938a7057cde9dc11d87bcbe3 05-Sep-2012 Jean-Baptiste Queru <jbq@google.com> resolved conflicts for merge of 7749a1c5 to jb-mr1-dev

Change-Id: If30a6a4ded996749b34f6a975481a97006cbcf97
b4ac801c477c0a0de18da89744d9a78e79d2ff51 05-Sep-2012 Jean-Baptiste Queru <jbq@google.com> am 1ca2fee9: Merge "Make default value of auto-sync in SyncStorageEngine configurable"

* commit '1ca2fee9547dbdd7008211ac318b1f8f40ce1e35':
Make default value of auto-sync in SyncStorageEngine configurable
035ce2ca92742894f7f906c93d7d217c647aa19a 05-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Add support for "-rtl" in resources" into jb-mr1-dev
20e809870d8ac1e5b848f2daf51b2272ef89bdfc 01-Sep-2012 Dianne Hackborn <hackbod@google.com> Add registering for explicit users.

New API to register as an explicit user, which allows you to
also select ALL to see broadcasts for all users.

New BroadcastReceiver API to find out which user the broadcast
was sent to.

Use this in app widget service to handle per-user package broadcasts
and boot completed broadcasts correctly.

Change-Id: Ibbe28993bd4aa93900c79e412026c27863019eb8
roadcastReceiver.java
ontext.java
ontextWrapper.java
IntentReceiver.aidl
ntentSender.java
2b5d0ea5e90bd5b9a1b3afdd230e8907315e65e2 11-Jan-2011 Yameng Huang <yameng.huang@sonyericsson.com> Make default value of auto-sync in SyncStorageEngine configurable

This will make the default value of the automatic synchronization
in the SyncStorageEngine configurable with overlays for use by
vendors who want or have legal requirements to have the synchronization
off by default.

Change-Id: Iabdb355c4a1169fe8e254e91c43e162c5913d5e0
yncStorageEngine.java
2701f325a6d4acd920637d2ff6fd6972a9cf836b 01-Sep-2012 Dianne Hackborn <hackbod@google.com> Merge "Remove Binder.getOrigCallingUid()." into jb-mr1-dev
a492c3a7b2c18426fd0cb4d017eacbc368195dc5 24-Aug-2012 Jeff Brown <jeffbrown@google.com> Initial draft of high-level multi-display APIs.

This patch introduces the ability to create a Context that
is bound to a Display. The context gets its configuration and
metrics from that display and is able to provide a WindowManager
that is bound to the display.

To make it easier to use, we also add a new kind of Dialog
called a Presentation. Presentation takes care of setting
up the context as needed and watches for significant changes
in the display configuration. If the display is removed,
then the presentation simply dismisses itself.

Change-Id: Idc54b4ec84b1ff91505cfb78910cf8cd09696d7d
ontext.java
ontextWrapper.java
4120375d46091df8527bb701882e056fbb0e6b06 31-Aug-2012 Dianne Hackborn <hackbod@google.com> Remove Binder.getOrigCallingUid().

Replaced all remaining places that used it with explicit user
specification.

While doing this, I ran into stuff that was creating PendingIntent
objects (that now need to specify the explicit user they are for),
which are also posting notifications... but have no way to specify
the user for the notification.

So the notification manager in the system process now also gets a
formal concept of a user associated with the notification, which
is passed in to all the necessary aidl calls. I also removed the
old deprecated aidl interface for posting/cancelling notifications,
since we now always need a user supplied.

There is more work that needs to be done here, though. For example
I think we need to be able to specify USER_ALL for a notification that
should be shown to all users (such as low storage or low battery).
Along with that, the PendingIntent creation needs to be tweaked to
be able to handle USER_CURRENT by evaluating the user at the point the
pending intent is sent.

That's for another change, however.

Change-Id: I468e14dce8def0e13e0870571e7c31ed32b6310c
yncManager.java
a2875f481bc40fb5c7e5ae2d475dfb6d557294c0 31-Aug-2012 rich cannings <richc@google.com> Merge "Notify verifiers that verification is complete" into jb-mr1-dev
f203aeef993b0f4ce65c9630d06bbd50a504e89f 30-Aug-2012 Amith Yamasani <yamasani@google.com> Enforce permissions for calls with specified userId

Fix a couple of places where incorrect userIds were being passed in.

Change-Id: I398c676e0488ff7e584be96e96c8b32652134238
m/PackageManager.java
d1b5cfc94ae940f42be352e7ed98c21c973471b2 29-Aug-2012 rich cannings <richc@google.com> Notify verifiers that verification is complete

Send the Intent.ACTION_PACKAGE_VERIFIED to all verifiers when
verification is complete (either one verifier verified the package or a
timeout occurred). Details of what occurred is in a new extra,
PackageManager.EXTRA_VERIFICATION_RESULT.

Bug: 7048930
Change-Id: I4f9855a29b0eb6d77f469891402c69e2e8922945
ntent.java
m/PackageManager.java
5ac72a29593ab9a20337a2225df52bdf4754be02 30-Aug-2012 Dianne Hackborn <hackbod@google.com> Improve multi-user broadcasts.

You can now use ALL and CURRENT when sending broadcasts, to specify
where the broadcast goes.

Sticky broadcasts are now correctly separated per user, and registered
receivers are filtered based on the requested target user.

New Context APIs for more kinds of sending broadcasts as users.

Updating a bunch of system code that sends broadcasts to explicitly
specify which user the broadcast goes to.

Made a single version of the code for interpreting the requested
target user ID that all entries to activity manager (start activity,
send broadcast, start service) use.

Change-Id: Ie29f02dd5242ef8c8fa56c54593a315cd2574e1c
ontext.java
ontextWrapper.java
80a4af2bbc6af42ae605e454bf89558e564f5244 28-Aug-2012 Dianne Hackborn <hackbod@google.com> Start implementing concept of "running" users.

The activity manager now keeps track of which users are running.

Initially, only user 0 is running.

When you switch to another user, that user is started so it is
running. It is only at this point that BOOT_COMPLETED is sent
for that user and it is allowed to execute anything.

You can stop any user except user 0, which brings it back to the
same state as when you first boot the device. This is also used
to be able to more cleaning delete a user, by first stopping it
before removing its data.

There is a new broadcast ACTION_USER_STOPPED sent when a user is
stopped; system services need to handle this like they currently
handle ACTION_PACKAGE_RESTARTED when individual packages are
restarted.

Change-Id: I89adbd7cbaf4a0bb72ea201385f93477f40a4119
ntent.java
7e67151b912622f8a279ab1523a9bcf26ebaff3d 27-Aug-2012 rich cannings <richc@google.com> Add permission checks for Verification API calls

Ensure that only applications with
android.Manifest.permission.PACKAGE_VERIFICATION_AGENT can call application
verification APIs, like PackageManager.verifyPendingInstall and
PackageManager.extendVerificationTimeout

Bug: 7049083
Change-Id: I5fc28b37e864d67cd319a1ed9d03a90dd15ad052
m/PackageManager.java
4428e17c5e05c0dad76da8f1c28ccba62a66cd91 25-Aug-2012 Dianne Hackborn <hackbod@google.com> Some clean up of app install and user management.

UserManagerService is now closely tied to PackageManagerService,
sharing the same locks. There is no longer direct access of
Installer by UserManagerService, instead the package manager is
back to solely owning it.

Creating a new user now correctly only installs system apps for
that user.

Fixed some misc bugs, where we were getting nulls when
querying content providers and instrumentation in uninstalled
users, incorrect locking, etc.

Change-Id: Ife69b6e373d0cf7c5cfc03fc588e36b43ad5d8b0
m/RegisteredServicesCache.java
7767eac3232ba2fb9828766813cdb481d6a97584 24-Aug-2012 Dianne Hackborn <hackbod@google.com> Keep track of whether an app is installed for each user.

This add a new per-user state for an app, indicating whether
it is installed for that user.

All system apps are always installed for all users (we still
use disable to "uninstall" them).

Now when you call into the package manager to install an app,
it will only install the app for that user unless you supply
a flag saying to install for all users. Only being installed
for the user is just the normal install state, but all other
users have marked in their state for that app that it is not
installed.

When you call the package manager APIs for information about
apps, uninstalled apps are treated as really being not visible
(somewhat more-so than disabled apps), unless you use the
GET_UNINSTALLED_PACKAGES flag.

If another user calls to install an app that is already installed,
just not for them, then the normal install process takes place
but in addition that user's installed state is toggled on.

The package manager will not send PACKAGE_ADDED, PACKAGE_REMOVED,
PACKAGE_REPLACED etc broadcasts to users who don't have a package
installed or not being involved in a change in the install state.
There are a few things that are not quite right with this -- for
example if you go through a full install (with a new apk) of an
app for one user who doesn't have it already installed, you will
still get the PACKAGED_REPLACED messages even though this is
technically the first install for your user. I'm not sure how
much of an issue this is.

When you call the existing API to uninstall an app, this toggles
the installed state of the app for that user to be off. Only if
that is the last user user that has the app uinstalled will it
actually be removed from the device. Again there is a new flag
you can pass in to force the app to be uninstalled for all users.

Also fixed issues with cleaning external storage of apps, which
was not dealing with multiple users. We now keep track of cleaning
each user for each package.

Change-Id: I00e66452b149defc08c5e0183fa673f532465ed5
ontext.java
ontextWrapper.java
m/ApplicationInfo.java
m/IPackageManager.aidl
m/ManifestDigest.java
m/PackageCleanItem.aidl
m/PackageCleanItem.java
m/PackageInfoLite.java
m/PackageManager.java
m/PackageParser.java
m/PackageUserState.java
d9ef3e5495db1c46bcfcc1a2d4386af8db6deb0c 22-Aug-2012 rich cannings <richc@google.com> Allow verifiers to extend timeout

Create a new verifier API to extend the timeout for a giving package,
including the resulting action (allow or deny) upon the timeout occuring.

Bug: 6901038
Change-Id: I351f7944327f863aff1d7dd1227be74652fa1511
m/IPackageManager.aidl
m/PackageManager.java
5f7979993979466c79ab4f38d83c6f2aca361662 16-Jun-2012 Fabrice Di Meglio <fdimeglio@google.com> Add support for "-rtl" in resources

- fix bug #7035019 Need to have "-rtl" support for Resource

Change-Id: Ic82145c2ac672729d8a6c695a5f343276a1a0a2c
m/ActivityInfo.java
es/Configuration.java
es/Resources.java
0c3804950236fe170ebf6cc7a5f1e3e305b8f315 21-Aug-2012 Dianne Hackborn <hackbod@google.com> Improve multi-user app management.

Introduce API to get per-user storage information, keep track
of services associated with users, and various small cleanup.

Change-Id: I5d4e784e7ff3cccfed627d66a090d2f464202634
m/IPackageManager.aidl
m/PackageManager.java
m/PackageStats.java
706e8ba26bf0de19ad5f736516dae40c4c88c2d7 20-Aug-2012 rich cannings <richc@google.com> Pass URLs to package verifiers

This change passes the originating URL and accompanied referrer to
package verifiers, when available.

Bug: 6544677
Change-Id: I9ebc71bc13f549bd88267e444816151a99bda000
ntent.java
m/IPackageManager.aidl
m/PackageManager.java
m/VerificationParams.aidl
m/VerificationParams.java
98365d7663cbd82979a5700faf0050220b01084d 20-Aug-2012 Jeff Brown <jeffbrown@google.com> Refactor for multi-display support.

Split WindowManagerImpl into two parts, the WindowManager
interface implementation remains where it is but the global
communications with the window manager are now handled by
the WindowManagerGlobal class. This change greatly simplifies
the challenge of having separate WindowManager instances
for each Context.

Removed WindowManagerImpl.getDefault(). This represents the
bulk of this change. Most of the usages of this method were
either to perform global functions (now handled by WindowManagerGlobal)
or to obtain the default display (now handled by DisplayManager).

Explicitly associate each new window with a display and make
the Display object available to the View hierarchy.

Add stubs for some new display manager API features.

Start to split apart the concepts of display id and layer stack.
since they operate at different layers of abstraction.
While it's true that each logical display uniquely corresponds to a
surface flinger layer stack, it is not necessarily the case that
they must use the same ids. Added Display.getLayerStack()
and started using it in places where it was relatively easy to do.

Change-Id: I29ed909114dec86807c4d3a5059c3fa0358bea61
ontext.java
ontextWrapper.java
5c6912c6f697e34d79447b0cd794a6d9edea72ab 18-Aug-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix permission check on ContentProvider to be multi-user aware." into jb-mr1-dev
0d8af78b748d0279756c1ea8ae1659f6c2c802bb 18-Aug-2012 Dianne Hackborn <hackbod@google.com> Fix permission check on ContentProvider to be multi-user aware.

Change-Id: I1e504fe6561caef99d478e37660e2294fec7ea8b
ontentProvider.java
7fdaa3976d6082bd7e96329240bda478c08b751e 18-Aug-2012 Amith Yamasani <yamasani@google.com> Merge "Save preferred activity info with user id." into jb-mr1-dev
a3f133afe885f9e005dfc0584cb7b3b90f75f665 10-Aug-2012 Amith Yamasani <yamasani@google.com> Save preferred activity info with user id.

So each user can have their own set of intent resolution preferences.

ResolverActivity now launches the activity on the correct user, and
persists the preference for the correct user.

Bug: 6961905
Change-Id: I6d3a8a9af89bc649277d4fc8d0f367ee123f8392
m/IPackageManager.aidl
m/PackageManager.java
79af1dd54c16cde063152922b42c96d72ae9eca8 17-Aug-2012 Dianne Hackborn <hackbod@google.com> Switch public APIs to use new UserHandle class for identifying users.

Gets rid of "yet another integer" confusion.

Change-Id: Id07ea7307aea7c62f0087c6663a1f1c08e2e5dee
ontext.java
ontextWrapper.java
ntentSender.java
2a00329c6d55c6cd9166e01963d7410e95d80d21 15-Aug-2012 Amith Yamasani <yamasani@google.com> UserHandle to UserSerialNo mapping

Use AtomicFile for usermanager files.

Added a MANAGE_USERS permission that apps (signature permission) can use
to create/query/modify/remove users.

Change-Id: I5cf232232d0539e7508df8ec9b216e29c2351cd9
ntent.java
yncManager.java
m/UserInfo.java
f02b60aa4f367516f40cf3d60fffae0c6fe3e1b8 16-Aug-2012 Dianne Hackborn <hackbod@google.com> Rename UserId to UserHandle.

This is the start of turning this into a formal public API.

Change-Id: I5786d2c320f1de41a06ed5d0f65adb68967287a0
ontentProvider.java
ontentService.java
ntentSender.java
yncManager.java
m/PackageParser.java
abac0cd16105c60fdd6c5ce37116c972dc7431bb 15-Aug-2012 Dianne Hackborn <hackbod@google.com> Merge "Add PendingIntent and IntentSender APIs to get user handle." into jb-mr1-dev
c7501279ee36a80fc8dc98d8eb3e6393a2217909 15-Aug-2012 Dianne Hackborn <hackbod@google.com> Add PendingIntent and IntentSender APIs to get user handle.

Also uid.

Change-Id: I0a328d0cc2bbc17dc0a49b7b8b8d515af80f1e15
ntentSender.java
34743ac7d688a7ecf4daec84078fc7ec74a6dac9 15-Aug-2012 Dianne Hackborn <hackbod@google.com> Merge "Add API to create new contexts with custom configurations." into jb-mr1-dev
756220bd1912535840388a6743830d2e59ad4964 15-Aug-2012 Dianne Hackborn <hackbod@google.com> Add API to create new contexts with custom configurations.

This allows you to, say, make a Context whose configuration
is set to a different density than the actual density of the device.

The main API is Context.createConfigurationContext(). There is
also a new API on ContextThemeWrapper that allows you to apply
an override context before its resources are retrieved, which
addresses some feature requests from developers to be able to
customize the context their app is running in.

Change-Id: I88364986660088521e24b567e2fda22fb7042819
ontext.java
ontextWrapper.java
es/Configuration.java
es/Resources.java
a5d1dc9d0322d2c7b7d7f13816fd551a7042c2a3 14-Aug-2012 Scott Main <smain@google.com> am bd63fb87: am 6958c161: Merge "docs: misc bug fixes from external issues" into jb-dev

* commit 'bd63fb875c49d69d5969df35ae159bd17cadb730':
docs: misc bug fixes from external issues
183bf116978e3c44292c9ead2bceb47e972624a1 14-Aug-2012 Scott Main <smain@google.com> docs: misc bug fixes from external issues

Change-Id: I380b65341200c0519a93e2f8969f70f64aec0264
es/Resources.java
es/TypedArray.java
258848d2ae04f447ff1c18023fa76b139fcc0862 11-Aug-2012 Amith Yamasani <yamasani@google.com> User Manager service to manage users and query user details

Moved a bunch of methods from PackageManager to UserManager.

Fix launching of activities from recents to correct user.

Guest creation APIs

Change-Id: I0733405e6eb2829675665e225c759d6baa2b708f
ontext.java
ontextWrapper.java
yncManager.java
m/IPackageManager.aidl
m/PackageManager.java
m/UserInfo.java
5a28605155e51cdbd58737a8b7c47b337c5539bb 09-Aug-2012 Nick Kralevich <nnk@google.com> Merge "PackageParser: remove temporary code." into jb-mr1-dev
8264408f5995534f8e3147b001664ea0df52aaa5 03-Aug-2012 Amith Yamasani <yamasani@google.com> Start the correct settings from the status bar.

Added a new method to Context: startActivityAsUser() requiring the
INTERACT_ACROSS_USERS_FULL permission.

Show the correct Recents list, based on current user.
Added a getRecentTasksForUser() in ActivityManager. Hidden and requires
the INTERACT_ACROSS_USERS_FULL permission.

Change-Id: If5b56465efdd3ead36601a3b51ed4af157bbf35c
ontext.java
ontextWrapper.java
a30a4806aca7f36fb416f485b332060b03a16c0b 09-Aug-2012 Nick Kralevich <nnk@google.com> PackageParser: remove temporary code.

This code isn't needed and wasn't doing what I thought
it was doing.

Bug: 3306452
Change-Id: Ifeab672e379fd331a6f0ef1504eebb29aa6b4466
m/PackageParser.java
a56d9cecee8a34e0554770ac6253dd3a76b9199c 08-Aug-2012 Rich Cannings <richc@google.com> Merge "Revert "Pass URLs to package verifiers"" into jb-mr1-dev
e1d7c711df3e3a2d2f195457882aa4ddb5626167 08-Aug-2012 Rich Cannings <richc@google.com> Revert "Pass URLs to package verifiers"

This reverts commit 24713907fe4632d263aea82f7a35c8fb08918a09

Change-Id: Ie04ba73475b813635c4a74915c45e83250801b6b
ntent.java
m/IPackageManager.aidl
m/PackageManager.java
9d16c219f1ca0836a832e25a61fcaf9c1d0dd67b 08-Aug-2012 Nick Kralevich <nnk@google.com> Merge "Content Providers: change default for android:exported" into jb-mr1-dev
7d19e0242faac8017033dabb872cdf1542fa184c 08-Aug-2012 Dianne Hackborn <hackbod@google.com> More mult-user API work.

- You can now use android:singleUser with receivers and providers.
- New API to send ordered broadcasts as a user.
- New Process.myUserHandle() API.

For now I am trying out "user handle" as the name for the numbers
representing users.

Change-Id: I754c713ab172494bb4251bc7a37a17324a2e235e
ontentProviderClient.java
ontext.java
ontextWrapper.java
m/ActivityInfo.java
m/PackageParser.java
m/ProviderInfo.java
m/ServiceInfo.java
f097b16cfddce2dbb097b929458fe9b0a402963e 28-Jul-2012 Nick Kralevich <nnk@google.com> Content Providers: change default for android:exported

Change the default value of android:exported to true
for applications which target a newer API version.
This will help stop inadvertent content provider
exposure to untrusted apps.

Bug: 3306452

Change-Id: I8cb34e823aef9551319951ce92217345c54cee63
m/PackageParser.java
dde331cebd87982faded6818ad5f9927ff994c96 03-Aug-2012 Dianne Hackborn <hackbod@google.com> We can now (kind-of) change screen density on the fly.

Preloaded drawables now have a density associated with them, so we
can load the correct drawable if we are using a different density.

Window manager now formally keeps track of the density for each
screen, allowing it to be overridden like you can already do with
size, and relies on this density to drive itself internally and
the configurations it reports.

There are a new set of Bitmap constructors where you provide a
DisplayMetrics so they can be constructed with the correct density.
(This will be for when you can have different windows in the same
app running at different densities.)

ActivityThread now watches for density changes, and pushes them
to the DENSITY_DEVICE and Bitmap global density values for that
process.

A new am command allows you to change the density.
es/Resources.java
329465c6b2407ee086a171cac1a3581f83dbb048 03-Aug-2012 Dianne Hackborn <hackbod@google.com> Merge "Add APIs for interacting across users." into jb-mr1-dev
b4163a6e12ee7100c758c6d3d062ade1f2843fce 03-Aug-2012 Dianne Hackborn <hackbod@google.com> Add APIs for interacting across users.

- Expose the existing Context.sendBroadcast() as
Context.sendBroadcastAsUser().
- Add new android:singleUser attribute for services.
- Add new INTERACT_ACROSS_USERS_FULL permission for full
system-level access to cross-user interface (allows
sendBroadcastAsUser() to send to any receiver).
- Add new INTERACT_ACROSS_USERS_FULL permission for
more restricted cross-user interaction: this is required
for android:singleUser, and allows you to use
sendBroadcastAsUser() but only to send to your own
receivers.

Change-Id: I0de88f6718e9505f4de72e3f45d29c0f503b76e9
ontext.java
ontextWrapper.java
m/PackageParser.java
m/ServiceInfo.java
24713907fe4632d263aea82f7a35c8fb08918a09 26-Jul-2012 rich cannings <richc@google.com> Pass URLs to package verifiers

This change passes the originating URL and accompanied referrer to
package verifiers, when available.

Bug: 6544677
Change-Id: If9ff6663ad7f3426b7aea2aceb1413b689788138
ntent.java
m/IPackageManager.aidl
m/PackageManager.java
908aecc3a63c5520d5b11da14a9383f885b7d126 01-Aug-2012 Dianne Hackborn <hackbod@google.com> Start moving away from DisplayMetrics.DENSITY_DEVICE.

This puts in most of the infrastructure needed to allow us to
switch between different densities at run time. The main remaining
uses of the global are to initialize the Bitmap object (not sure
what to do about that since it doesn't have anything passed in
the constructor to get this information from), and being able to
load drawables if we need a different density than what was preloaded
by zygote.

Change-Id: Ifdbfd6b7a5c59e6aa22e63b95b78d96af3d96848
m/ActivityInfo.java
es/CompatibilityInfo.java
es/Configuration.java
es/Resources.java
40e5df95ff9468cec0624ca7fb14e51c13e4b047 01-Aug-2012 Dianne Hackborn <hackbod@google.com> Merge "Make AtomicFile a public API. It's about time!" into jb-mr1-dev
39606a007a5b1309dd000234f2b8cf156c49fd0f 01-Aug-2012 Dianne Hackborn <hackbod@google.com> Make AtomicFile a public API. It's about time!

Change-Id: Ib34e294747405b7ab709cb0bbb2d9a0cc80ce86a
yncStorageEngine.java
m/RegisteredServicesCache.java
e23ae144cc1b6487a7c0e7a33d3016431c81850c 31-Jul-2012 Kenny Root <kroot@google.com> am fa74f7e0: am bba948dc: Merge "Delay AccountManagerService initialization" into jb-dev

* commit 'fa74f7e04fcad1258a1b85515547dba0466086d8':
Delay AccountManagerService initialization
26ff6626fc4ee0ae46f01ad309b366921da589fe 30-Jul-2012 Kenny Root <kroot@google.com> Delay AccountManagerService initialization

Since applications can have Account providers, they need to be delayed
until after PackageManagerService says everything is mounted.
Otherwise the accounts associated with that provider will be removed
immediately when startup happens.

Bug: 6820670
Change-Id: Iba81765260421649f706624d0605a40ebc1347b1
ontentService.java
m/RegisteredServicesCache.java
c92db391379cc19738de8bb5008ed619cb049ebe 27-Jul-2012 Nick Kralevich <nnk@google.com> ClipData: html attribute values should always be escaped

Failure to properly escape HTML attribute values can lead to
XSS attacks. Technically, HTML of the form

<a href="http://www.google.com/search?x=a&y=b">blah</a>

is malformed (but widely accepted). Such links should be written as

<a href="http://www.google.com/search?x=a&amp;y=b">blah</a>

See: http://www.w3.org/TR/1999/REC-html401-19991224/appendix/notes.html#h-B.2.2

Change-Id: I188ded00b4cac44acb38884d4728c4cf9500f3b6
lipData.java
440f32bbd48272095a5482abc87b8769ebd515b6 26-Jul-2012 Jeff Smith <whydoubt@yahoo.com> am ddd88726: am 71930dd7: am a45746ef: Fix several cases of broken droiddoc syntax external issue 35214

* commit 'ddd88726a247e4100cb62b3dc9d0887ca2ae2ec4':
Fix several cases of broken droiddoc syntax external issue 35214
fa25bf5382467b1018bd9af7f1cb30a23d7d59f7 24-Jul-2012 Jeff Brown <jeffbrown@google.com> Add display manager skeleton.

The purpose of this change is to remove direct reliance on
SurfaceFlinger for describing the size and characteristics of
displays.

This patch also starts to make a distinction between logical displays
and physical display devices. Currently, the window manager owns
the concept of a logical display whereas the new display
manager owns the concept of a physical display device.

Change-Id: I7e0761f83f033be6c06fd1041280c21500bcabc0
ontext.java
ddd88726a247e4100cb62b3dc9d0887ca2ae2ec4 26-Jul-2012 Jeff Smith <whydoubt@yahoo.com> am 71930dd7: am a45746ef: Fix several cases of broken droiddoc syntax external issue 35214

* commit '71930dd77e4dc6f6be5c648019d2ab0da5f0584c':
Fix several cases of broken droiddoc syntax external issue 35214
a45746efadd11bb7dfab026fb3c81a25fae74ca4 19-Jul-2012 Jeff Smith <whydoubt@yahoo.com> Fix several cases of broken droiddoc syntax
external issue 35214

patch contributed by Jeff Smith <whydoubt@yahoo.com>

Change-Id: I70dcee88a140699bf3e1ab369bed6dcd2fdd3d83
roadcastReceiver.java
m/PackageManager.java
1abb1cb3a8fe17f7866150604c2fd73751da787e 26-Jan-2012 Jaikumar Ganesh <jaikumar@google.com> Changes to Bluetooth Service structure.

Changes to make Bluetooth Service part of the system_service.
These changes may be temporary.

Changes to update to the new disable API.

Change-Id: If89dba17e6e6c6daa53c37684221763a2da076e9

Conflicts:

services/java/com/android/server/pm/PackageManagerService.java
ontext.java
de6082551da1651e7c8c0d91de908710b6c11113 27-Jun-2012 Scott Main <smain@google.com> am 882c97b5: am cdb3f9c4: Merge "docs: add api overview for jb" into jb-dev

* commit '882c97b59a8ef89ff8efa9064829f8014b9a7638':
docs: add api overview for jb
cdb3f9c45b97a64380f044c6b8c1863c1ba58b6a 27-Jun-2012 Scott Main <smain@google.com> Merge "docs: add api overview for jb" into jb-dev
60dd520d37a6d3163747eb9a4266d0a08b207c98 23-Jun-2012 Scott Main <smain@google.com> docs: add api overview for jb

Change-Id: Ibb916138026bb13bb424c826fe8faa563c71bf94
ontext.java
e6c2d62efb65fa7b4681d29ad0710df56bf9002b 26-Jun-2012 Dianne Hackborn <hackbod@google.com> am 9906e784: am 17990395: Merge "Fix issue #6717667: expanded notification actions don\'t work on the lock screen" into jb-dev

* commit '9906e784faca2cc8388a04fdc544722ea93d51be':
Fix issue #6717667: expanded notification actions don't work on the lock screen
1927ae8a56a010919a7535231fa0f7db70f7e152 23-Jun-2012 Dianne Hackborn <hackbod@google.com> Fix issue #6717667: expanded notification actions don't work on the lock screen

FLAG_ACTIVITY_CLOSE_SYSTEM_DIALOGS was a mistake.

Instead, and the infrastructure for the status bar to take care
of closing and hiding things itself when you press these buttons,
just like it does for the main Intent of the notification.

Bug: 6717667
Change-Id: I1b22186e0cedc05f46a1a3ec78053a72afaf61b1
ntent.java
adba6ffbb949e3644f0effdaffee349b0b49688a 22-Jun-2012 Scott Main <smain@google.com> am 101a120c: am 9be0105f: docs: fix several links

* commit '101a120c27f68fb7d44e6221244cb9441dfc4285':
docs: fix several links
9be0105fbc56eb1b1813bb7c5fe258a144867a43 22-Jun-2012 Scott Main <smain@google.com> docs: fix several links

Change-Id: I89d9fd64dc22c90680bb05415cc966c255165af9
es/package.html
6009dc014f8fa0aefc68e7265761960c5433d108 20-Jun-2012 Jean-Michel Trivi <jmtrivi@google.com> am b92d2a13: am 18ddb6ce: Merge "Remote volume handling in MediaRouter" into jb-dev

* commit 'b92d2a13c4ab34862968f47191d2713de3701757':
Remote volume handling in MediaRouter
1357012968f9066ea3051d83995e9bac69526c3c 19-Jun-2012 Jean-Michel Trivi <jmtrivi@google.com> Remote volume handling in MediaRouter

Extend MediaRouter.UserRouteInfo to enable setting playback
information, which includes volume. When the user route instance
has a RemoteControlClient, forward any playback information to it.
Enable specifying a callback to be notified of volume events
on the route.
Extend MediaRouter.RouteInfo to enable retrieving playback
information.

Update RemoteControlClient javadoc to reflect which parts of the
API are not intended to be made public.

Change-Id: I59d728eb61747af6c8c89d53f0faeb07940594c3
ntent.java
629f051f7d061f4db4a174dbd267a96f0c8113df 19-Jun-2012 Jean-Michel Trivi <jmtrivi@google.com> am 586b8ee6: am 2f442304: Merge "Remote volume handling" into jb-dev

* commit '586b8ee62e0245e3c88ce9db51e1c1c3b4f1fb2c':
Remote volume handling
2f4423043ffeaf232ec984be03743326f08cdc8a 19-Jun-2012 Jean-Michel Trivi <jmtrivi@google.com> Merge "Remote volume handling" into jb-dev
3114ce3861f20f9a5c2c59dd2629197a1f4874a8 12-Jun-2012 Jean-Michel Trivi <jmtrivi@google.com> Remote volume handling

Extend RemoteControlClient class to enable an applicaton to
specify more information about how it's playing media, now covering
usecases where media playback happens "remotely". This playback
information can be used to set the volume and maximum volume
used remotely.
Declare a new intent and associated extras in Intent,
ACTION_VOLUME_UPDATE, so an application can be notified that
the volume it handles should be updated. It can then use
the new RemoteControlClient.setPlaybackInformation() method
to notify AudioService what the volume is.
Extend AudioService to maintain playback information associated
with the RemoteControlClient information in the stack of
media button event receivers (mRCStack). The information
about the active remote is cached so the stack doesn't have
to be iterated over in order to retrieve remote playback info.
Events to "adjust" the remote volume based on hardware key
presses cause the client application to be notified of
volume updates, and the volume panel to display the volume
set by the app.
Revise which stream type is controlled when none is specified
according to latest guidelines for remote playback.
Update VolumePanel class to support a new pseudo stream type,
AudioService.STREAM_REMOTE_MUSIC, that corresponds to the
remote playback volume, and uses the new "media route" icon.
Enable it to receive asynchronously new volume values for
the remote that will be displayed if the UI is still up,
and ignored otherwise.
Now supports hiding/showing sliders dynamically so remote
volume only appears when AudioService has a remote control
client handling remote volume.
Define new java symbols for the two media route icons.
Modify lockscreen behavior: don't automatically control music
volume when music is active, consider also remote playback.

Still to do:
- playback information set by RemoteControlClient should post
a message for AudioService to update playback information
instead of updating it synchronously

Change-Id: I557aa687239f9acfe33a609f05876c67fa7eb967
ntent.java
4d2bef3f850e75744ade93f95615c7cb4a7fefa0 19-Jun-2012 Nicolas Falliere <nicof@google.com> am 277c09f6: am 56bb344c: Merge "Added or fixed doctrings for required permissions." into jb-dev

* commit '277c09f6c16c4adfd50407e2fa4dbf61a0e06e55':
Added or fixed doctrings for required permissions.
9530e3a22d5ffa2019d1a5177b6a441d4d6d048b 19-Jun-2012 Nicolas Falliere <nicof@google.com> Added or fixed doctrings for required permissions.

Bug: 6591338
Change-Id: Ia2092f9994854701b5fa1425c371817367ae07ec
ontentResolver.java
ontext.java
f8fd7ef97895524a0ce5735e19654549cb295cda 19-Jun-2012 Christopher Tate <ctate@google.com> Merge "Fail immediately if bindService() is passed a null ServiceConnection"
79b3317b775810bac088b0998c48eb6506e2578c 18-Jun-2012 Christopher Tate <ctate@google.com> Fail immediately if bindService() is passed a null ServiceConnection

Or if unbindService() is passed one, naturally.

Change-Id: Ib7f1f0b5e12c04e3affbcc9008612801081819d5
ontext.java
554259fe02afba852c9999e827b3c086e92637bd 13-Jun-2012 Jeff Sharkey <jsharkey@android.com> am 9eabf916: am f6f7f1d2: Low disk space string change, surface state.

* commit '9eabf916dc5d53bc6c765d39cca0847993e73dcf':
Low disk space string change, surface state.
b8151ecd6ef4faa5c16d0a4c3abb45ec84d1f97a 19-Apr-2012 Amith Yamasani <yamasani@google.com> Add an icon to the user information.

Store the icon in the user folder under /data/system,
similar to how the wallpaper is stored.

Change-Id: Id8ccb55b9e2ba7b4c557505a7f69f04eca1518cf
m/IPackageManager.aidl
m/PackageManager.java
m/UserInfo.java
f6f7f1d2dc6e8fad5d6ff9a56af9929488873b4f 13-Jun-2012 Jeff Sharkey <jsharkey@android.com> Low disk space string change, surface state.

Surface current low disk state through IPackageManager for use in
Settings app.

Bug: 6576409
Change-Id: I9ae9ce99a2faa3015a237036c03567d1ae11628f
m/IPackageManager.aidl
d4a0c49ffa5fb6d2a44e7727c54fdfc5a8ed4d1a 12-Jun-2012 Dianne Hackborn <hackbod@google.com> am 007f2b40: am f9d80b6b: Merge "Rework media router to be per-context with global process state." into jb-dev

* commit '007f2b40f952eab8951c6b22302a59a955a20561':
Rework media router to be per-context with global process state.
b1add0b8f251e237297ff7bad6a1107ef7d760f2 12-Jun-2012 Dianne Hackborn <hackbod@google.com> am 6892f1ec: am 0f6471ac: Merge "Fix issue #6641368: can\'t launch gallery" into jb-dev

* commit '6892f1ec9670432f1cab71813592077bea991a8b':
Fix issue #6641368: can't launch gallery
b58b8f832d06b0ffa8886eba5a4916578a3b8743 12-Jun-2012 Dianne Hackborn <hackbod@google.com> Rework media router to be per-context with global process state.

Change-Id: Ic1cb6f13e691d22783bcdafae85b7c75aec0a66f
ontext.java
2bd8d0403be62df679f0f94ab4d84c9ae9a2e918 11-Jun-2012 Dianne Hackborn <hackbod@google.com> Fix issue #6641368: can't launch gallery

This is a revert of 1db36528b12395b9ed9bf8a1005a6d4ace737627,
but with comments added so I don't make this mistake again. :)

Change-Id: I053216279e3721f08f32f561bb989736ef619f82
m/PackageParser.java
c7e2d4a57bca3c9b2fe005041314c9cbc6f843b2 08-Jun-2012 Dianne Hackborn <hackbod@google.com> am 33e39aef: am 0876ab0a: Merge "Fix issue #6295373: "Package com.google.android.apps.authenticator2 has..." into jb-dev

* commit '33e39aefdf9266dc4858f7a6171f46f43ffa3ec3':
Fix issue #6295373: "Package com.google.android.apps.authenticator2 has...
3191329819fcf8e81b773c4d375273ab4537e811 08-Jun-2012 rich cannings <richc@google.com> Merge "Add Intent extras to pass to package verifiers"
0876ab0ac17518c479e9dffe025884870a586d9c 08-Jun-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #6295373: "Package com.google.android.apps.authenticator2 has..." into jb-dev
b313a9990f378a7dd136de2718ae25e442b85ecb 08-Jun-2012 Kenny Root <kroot@google.com> am f5490997: am af95137a: Merge "Whoops, this version number wasn\'t updated when JB was introduced!" into jb-dev

* commit 'f549099705d0e55410072db89926f1cb95a3e7b5':
Whoops, this version number wasn't updated when JB was introduced!
1db36528b12395b9ed9bf8a1005a6d4ace737627 08-Jun-2012 Dianne Hackborn <hackbod@google.com> Whoops, this version number wasn't updated when JB was introduced!

Change-Id: I9c9cd658cc1cba99b84059c8873c22b21b9f3c19
m/PackageParser.java
d0c5f515c05d05c9d24971695337daf9d6ce409c 08-Jun-2012 Dianne Hackborn <hackbod@google.com> Fix issue #6295373: "Package com.google.android.apps.authenticator2 has...

...mismatched uid: X on disk, Y in settings" errors on Froyo and Gingerbread

Deal more gracefully with the uid changing in three ways:

1. If the uid on disk has become root, then have installd change it to
the application's uid. This is to correct a potential case where
installd was interrupted while linking or unlinking the libs dir,
during which it temporarily changes the owner of the dir to root
so that a malicious app can not get in its way. So if the uid on
disk has become root, we assume we can safely just change it back
to the correct uid.

2. When scaning packages at boot, use the same "delete and rebuild data
directory" code for third party applications as we have for system
applications. This allows us to at least end up in a state where the
app will run, even if its data is lost.

3. But we really don't want to get in to case 2, so if an application
update is being installed and we find that the uid we now have for
the app is different than the one on disk, fail the update. This will
protect against for example a developer changing the sharedUserId of
their app and getting into this bad state.

Bug: 6295373
Change-Id: Ic802fdd818ac62449ff3c61d1fff1aa4d4942f39
m/PackageManager.java
368ed010ee0d86742fab46edaef8b205bb8ab262 08-Jun-2012 rich cannings <richc@google.com> Add Intent extras to pass to package verifiers

Adding extras to identify the:

- URL from which the APK originated

- the HTTP referrer associate with the URL

Bug: 6544677
Change-Id: Ie3d2244d9befa7161eeceb458573d6b0f8206cc7
ntent.java
cbc5e0aae45374ec92574b1cab9b31e494ce10e7 02-Jun-2012 Dianne Hackborn <hackbod@google.com> am 3522225d: am ea01e4a2: Merge "Survey says: NIET!" into jb-dev

* commit '3522225dba19e77defaf56f0e70c0382c2cbb0a2':
Survey says: NIET!
4034bc431df8903072bca513a81ecdcf858c718b 01-Jun-2012 Dianne Hackborn <hackbod@google.com> Survey says: NIET!

Bug: 6593206
Change-Id: I5390609a5615d6aff1793a9bc361012a0cea330b
m/PackageParser.java
m/PermissionGroupInfo.java
0597161ee43cfaa7dbe14691a134fb358a00317a 31-May-2012 Philip Milne <pmilne@google.com> Merge "Fix for bug 6050753."
327bc6bb5037dbd0eb05bdb4b0897196bd154366 31-May-2012 Kenny Root <kroot@google.com> am 65519b8b: am 03e93e51: Merge "Move package-wide flags out of parseApplication" into jb-dev

* commit '65519b8bb94321889eb3e34c76428f6dd9e0bd84':
Move package-wide flags out of parseApplication
7cb9be26c1f16de738178e89e4cf9ec8a35e7d41 31-May-2012 Kenny Root <kroot@google.com> Move package-wide flags out of parseApplication

Being on SD card and being forward-locked are package-wide flags that
shouldn't depend on an APK having an <application> stanza.

Bug: 6563724
Change-Id: If5f2159cd8e3fa136f959b656d82b05ea6bdfae5
m/PackageParser.java
ce783749b191a58e4fed9a397066376915c1db65 30-May-2012 Dianne Hackborn <hackbod@google.com> am f3b4c93e: am ae5811c7: Merge "Fix (mostly) issue #5109947: Race condition between retrieving a..." into jb-dev

* commit 'f3b4c93e0da9af2db9e16864faa734cf70fecfe3':
Fix (mostly) issue #5109947: Race condition between retrieving a...
6ae8d1821822296df0606c9cd1c46708cc21cb58 23-May-2012 Dianne Hackborn <hackbod@google.com> Fix (mostly) issue #5109947: Race condition between retrieving a...

...content provider and updating its oom adj

This introduces the concept of an "unstable" reference on a content
provider. When holding such a reference (and no normal stable ref),
the content provider dying will not cause the client process to be
killed.

This is used in ContentResolver.query(), .openAssetFileDescriptor(),
and .openTypedAssetFileDescriptor() to first access the provider
with an unstable reference, and if at the point of calling into the
provider we find it is dead then acquiring a new stable reference
and doing the operation again. Thus if the provider process dies
at any point until we get the result back, our own process will not
be killed and we can safely retry the operation.

Arguably there is still the potential for a race -- if somehow the
provider is killed way late by the OOM killer after the query or
open has returned -- but this should now be *extremely* unlikely.
We also continue to have the issue with the other calls, but these
are much less critical, and the same model can't be used there (we
wouldn't want to execute two insert operations for example).

The implementation of this required some significant changes to the
underlying plumbing of content providers, now keeping track of the
two different reference counts, and managing them appropriately. To
facilitate this, the activity manager now has a formal connection
object for a client reference on a content provider, which hands to
the application when opening the provider.

These changes have allowed a lot of the code to be cleaned up and
subtle issues closed. For example, when a process is crashing, we
now have a much better idea of the state of content provider clients
(olding a stable ref, unstable ref, or waiting for it to launch), so
that we can correctly handle each of these.

The client side code is also a fair amount cleaner, though in the
future there is more than should be done. In particular, the two
ProviderClientRecord and ProviderRefCount classes should be combined
into one, part of which is exposed to the ContentResolver internal
API as a reference on a content provider with methods for updating
reference counts and such. Some day we'll do that.

Change-Id: I87b10d1b67573ab899e09ca428f1b556fd669c8c
ontentProviderClient.java
ontentResolver.java
bd8e6f9d1ca0c22fe83517095ecee94680791e9b 21-May-2012 Dianne Hackborn <hackbod@google.com> am c5fe4737: am fb5c3dba: Fix issue #6440173: MenuItem.setIcon(Drawable) scaling incorrectly...

* commit 'c5fe47376c905e946eafbabdb78db4c128d3d71b':
Fix issue #6440173: MenuItem.setIcon(Drawable) scaling incorrectly...
dc7643d84c085748d099953badd4368338e63a6f 21-May-2012 Jeff Sharkey <jsharkey@android.com> am 40bd46ae: am 9cb660fa: Merge "Guard against apps breaking CHOOSER contract." into jb-dev

* commit '40bd46aefde45a216ff73f8c40497a50eccdb1e0':
Guard against apps breaking CHOOSER contract.
bad4c4bf71c4d5c3077ff8f5020b09a736a86d9b 21-May-2012 Dianne Hackborn <hackbod@google.com> am ccf4e2f7: am abe39277: Merge "Fix issue #6515427: Add android.hardware.television and fix..." into jb-dev

* commit 'ccf4e2f71b65ace6d55c1e8513dd60b1123805da':
Fix issue #6515427: Add android.hardware.television and fix...
fb5c3dba4ddac023cfd4cdcabdfdbcf343197c94 19-May-2012 Dianne Hackborn <hackbod@google.com> Fix issue #6440173: MenuItem.setIcon(Drawable) scaling incorrectly...

...when resource is aliased

We were not correctly using the final resolved configuration when
retrieving a drawable through Resources.getDrawable(). (It already
does the correct behavior when going through TypedArray.getDrawable()).

Change-Id: I9032b788b592412178e31e2e6b0181b92c20fe45
es/Resources.java
9cb660fa342488cd8550644b5649436f1f7868ee 18-May-2012 Jeff Sharkey <jsharkey@android.com> Merge "Guard against apps breaking CHOOSER contract." into jb-dev
1c29700c5fe261f6829d95f22bd8c1fe6daf362e 18-May-2012 Jeff Sharkey <jsharkey@android.com> Guard against apps breaking CHOOSER contract.

Bug: 6520937
Change-Id: I677a644cf7765bbb046f9c82e1ebd8a40968cee6
ntent.java
0cf2c8a53350a800055e76c1c9bf0a6d44480768 18-May-2012 Dianne Hackborn <hackbod@google.com> Fix issue #6515427: Add android.hardware.television and fix...

...logic for notouch in Configuration

Added new TELEVISION feature.

We now force the configuration to "television" if the TELEVISION
feature is set, and "notouch" if the TOUCHSCREEN feature is not set.

Also cleaned up documentation, deprecated some configurations that
are not used.

Change-Id: If1c7a284b580a8a66bda2a75f0c7fa841b3dc9b7
m/PackageManager.java
es/Configuration.java
7ba90544d97a9735d295f2133138174b1acdfb73 16-May-2012 Dianne Hackborn <hackbod@google.com> am a15ebaa2: am 79f5777d: Merge "A few odds and ends." into jb-dev

* commit 'a15ebaa25c93c750c22e80498c2415b2af0f2f3e':
A few odds and ends.
e302a162359e191633e966520a6bab4ad569390c 15-May-2012 Dianne Hackborn <hackbod@google.com> A few odds and ends.

- Add documentation on "television" UI mode.
- Tweak new documentation and implementation around propagating
URI grants through choosers.
- Add new activity launch flag for closing system dialogs.

Change-Id: I978c05f0dc3d16e1c55d43631828b9efa6335b19
ntent.java
6b10c61ef97c909b17ef2b1284ede800853bff78 15-May-2012 Jeff Sharkey <jsharkey@android.com> am 68ba1c86: am d6c1e498: Merge "Migrate stream extras in CHOOSER intents." into jb-dev

* commit '68ba1c8604448049ded03a5d95d6b34241d0267d':
Migrate stream extras in CHOOSER intents.
3b7d1ef4be2af83eecde3a7577b783355a9cd7c1 15-May-2012 Jeff Sharkey <jsharkey@android.com> Migrate stream extras in CHOOSER intents.

When sending CHOOSER intent, inspect its target for any EXTRA_STREAM
needing migration. If any migration happens, copy the ClipData to
the CHOOSER intent and set GRANT_READ flag. Also update CHOOSER docs.

Bug: 6463773
Change-Id: I66a7adf7bf6f2f173866925cb7e048f4c7a63222
ntent.java
d640d0641ac87035c608e85d3ab7e499a8b27d2f 14-May-2012 Jeff Sharkey <jsharkey@android.com> am f2fe4cb1: am cd586258: Merge "Enforce READ_EXTERNAL through Settings.Secure." into jb-dev

* commit 'f2fe4cb11b2b93acf1a983e856efe26b6bb79683':
Enforce READ_EXTERNAL through Settings.Secure.
cd5862586ab555b53ffd0a62488843838d1aa94d 12-May-2012 Jeff Sharkey <jsharkey@android.com> Merge "Enforce READ_EXTERNAL through Settings.Secure." into jb-dev
f53857716a0db805c51c0cae93550d90e32e4749 11-May-2012 Jeff Sharkey <jsharkey@android.com> Enforce READ_EXTERNAL through Settings.Secure.

Always defers to user-defined setting, when present.

Bug: 6389556
Change-Id: I079d2a41b772facfdac74eefc4c8072fc9284f97
m/PackageManager.java
e4fd3d50c7a39313120a005e659640bc10d94ef4 11-May-2012 Kenny Root <kroot@google.com> am 42a419b4: am 718af32a: Merge "Use long instead of int for file offsets" into jb-dev

* commit '42a419b4c0e7d16145e336ceec709dcefbdcf894':
Use long instead of int for file offsets
718af32a191066822262ad05cdd525a09c66094f 10-May-2012 Kenny Root <kroot@google.com> Merge "Use long instead of int for file offsets" into jb-dev
bb0018d0606a920fe39de332e8d6ecbfdd3aec58 10-May-2012 Jesse Wilson <jessewilson@google.com> am 36b6999b: am 822b72ef: Merge "Rename Uri.normalize() to Uri.normalizeScheme()." into jb-dev

* commit '36b6999bf12866679b80b03ada1f20f516b35904':
Rename Uri.normalize() to Uri.normalizeScheme().
822b72efd8795abe72b95d0ddd45873a5c4b77f8 10-May-2012 Jesse Wilson <jessewilson@google.com> Merge "Rename Uri.normalize() to Uri.normalizeScheme()." into jb-dev
103d53005e7a3c2735f4ac76fa9b795a7e7e39d7 10-May-2012 Kenny Root <kroot@google.com> Use long instead of int for file offsets

Use long instead of int so we don't run into a 2GB file limit.

Fix possible overflows in offset and length.

Change-Id: Idb3a34f5600f9c2372b9c89256f21757049fa43b
m/ContainerEncryptionParams.java
m/LimitedLengthInputStream.java
58d4f2e36f4091272c40d59fb3b7b80ee792ba57 10-May-2012 Dianne Hackborn <hackbod@google.com> am e2e03913: am dd79ae6b: Merge "Add infrastructure for accessing "unstable" content providers." into jb-dev

* commit 'e2e0391389fce1a9fd9d5c5442ba1901b6d96211':
Add infrastructure for accessing "unstable" content providers.
abc43ddd8ae098de7a56afc55909f904cd933016 10-May-2012 Jesse Wilson <jessewilson@google.com> Rename Uri.normalize() to Uri.normalizeScheme().

Change-Id: I67839656c7c1c16a5376c9894d699d2bad3c7a5c
ntent.java
652b6d1e591f6684cda4b93d4712920f287991b4 10-May-2012 Dianne Hackborn <hackbod@google.com> Add infrastructure for accessing "unstable" content providers.

We have an API and some stuff that purports to this, but no real
implementation yet.

Change-Id: I93555440014a50fdf79fa3f65318d90fb82265b4
ontentProviderClient.java
ontentResolver.java
335f8726d748b5de4d9b36e57383cf1cc652f29d 09-May-2012 Jeff Brown <jeffbrown@google.com> am 8ab3f090: am 8c680128: Merge "Check for null fd when constructing AssetFileDescriptor." into jb-dev

* commit '8ab3f090c008091318bc0c0e8052f18132e720c2':
Check for null fd when constructing AssetFileDescriptor.
e8308aafec594e7070ea3a16c5544d3e40fadd17 09-May-2012 Carlos Valdivia <carlosvaldivia@google.com> am e0ea02c2: am 3fcf1c85: Merge "Fix a race condition with respect to clients of SyncStorageEngine." into jb-dev

* commit 'e0ea02c20ea7bcb495baab653a12087b8cd09890':
Fix a race condition with respect to clients of SyncStorageEngine.
8fd851709fae7bb48aa513ebcf2285a8cdb28dce 09-May-2012 Jeff Brown <jeffbrown@google.com> am a394efa3: am 947f1c8d: Merge "Move CancellationSignal to android.os package." into jb-dev

* commit 'a394efa33531ce36c432872ec56ad0c93a9999e7':
Move CancellationSignal to android.os package.
c72b502d897fc1314ccbb8799f8ca66a3d131e17 09-May-2012 Kenny Root <kroot@google.com> am 83ea8609: am 29bb27ef: Merge "Add encryption parameters to package installation" into jb-dev

* commit '83ea86091bf94571912694c7caf8be1c21727f91':
Add encryption parameters to package installation
8c68012809ab9a1593f295463624774975bec1e1 09-May-2012 Jeff Brown <jeffbrown@google.com> Merge "Check for null fd when constructing AssetFileDescriptor." into jb-dev
3fcf1c85873008df43ee80f896216fb39e4c630e 09-May-2012 Carlos Valdivia <carlosvaldivia@google.com> Merge "Fix a race condition with respect to clients of SyncStorageEngine." into jb-dev
af67fc65bf113b028ff33e71cd6a45810018c273 08-May-2012 Jeff Brown <jeffbrown@google.com> Check for null fd when constructing AssetFileDescriptor.

An AssetFileDescriptor with a null fd is pretty useless and should
never happen during normal operation. It can't even be parcelled
without hitting an NPE. To make it easier to find bugs where a null
fd might have been generated, check at construction time.

Bug: 5655036
Change-Id: I1da6dbee0cab9c11e309f3cebe698bf44dc5e27d
es/AssetFileDescriptor.java
947f1c8db00bd3805838ff49a5f4d220df507b47 08-May-2012 Jeff Brown <jeffbrown@google.com> Merge "Move CancellationSignal to android.os package." into jb-dev
a7771df3696954f0e279407e8894a916a7cb26cc 08-May-2012 Jeff Brown <jeffbrown@google.com> Move CancellationSignal to android.os package.

Bug: 6427830
Change-Id: I39451bb1e1d4a8d976ed1c671234f0c8c61658dd
syncTaskLoader.java
ancellationSignal.java
ontentProvider.java
ontentProviderClient.java
ontentProviderNative.java
ontentResolver.java
ursorLoader.java
CancellationSignal.aidl
ContentProvider.java
perationCanceledException.java
3aca7d7bec4b48bc68480b9d6b0ccdabf6903dfb 08-May-2012 Carlos Valdivia <carlosvaldivia@google.com> Fix a race condition with respect to clients of SyncStorageEngine.

GetAuthorities will now return a better copy of AuthorityInfos.

Bug: 6388370
Change-Id: Iac532e6e40079dbafa6e1c8345bd74902d68cf85
yncStorageEngine.java
ceb1b0bfaea56251796b08c07b963de7403d84eb 24-Apr-2012 Anonymous Coward <nobody@android.com> Add encryption parameters to package installation

Change-Id: Ic9f8ab9f8110f08bb3c00725cfce5b8ee7b766f3
m/ContainerEncryptionParams.aidl
m/ContainerEncryptionParams.java
m/IPackageManager.aidl
m/LimitedLengthInputStream.java
m/MacAuthenticatedInputStream.java
m/PackageManager.java
c77218e6b0f69d8480ec2bf9899806fc10b93936 07-May-2012 Dianne Hackborn <hackbod@google.com> am 25fc66b8: am 7bfa1457: Merge "Finish up issue #6249094: Display permissions based on relevance to private data" into jb-dev

* commit '25fc66b898a35796af65ec7e3eb9b1584588e063':
Finish up issue #6249094: Display permissions based on relevance to private data
7bfa14570e3e43ae8595400353853acdd7cea37c 07-May-2012 Dianne Hackborn <hackbod@google.com> Merge "Finish up issue #6249094: Display permissions based on relevance to private data" into jb-dev
99222d212f9ff5081d4ce6eef09dbe8eff85b83a 07-May-2012 Dianne Hackborn <hackbod@google.com> Finish up issue #6249094: Display permissions based on relevance to private data

Added bitmaps for permission group icons. We had to pick either
icons for a dark or light background, and it had to be light for
settings, so the installer theme has gone back to dark.

Tweaked the permission groups to match the icons.

Redid the group priorities to make them correct (they were written
with higher priorities being less important).

Fixed bug where priority was not being used for system apps.

Change-Id: Ia3d3f0c1614a11b4cfd11682ce9e6c9f87d75c06
m/PackageParser.java
94e4429086fd3948ca26593993c78ae61cbe7706 07-May-2012 Fred Quintana <fredq@google.com> am 5484e826: am 989c7532: Merge "fix expedited syncs. there were times when an expedited sync wouldn\'t correctly preempt non-expedited syncs" into jb-dev

* commit '5484e82612ef67630f10a0179dfad55716bcce2a':
fix expedited syncs. there were times when an expedited sync wouldn't correctly preempt non-expedited syncs
dc47556cb37b6f25faceb5eb97cef60d384b55fb 05-May-2012 Fred Quintana <fredq@google.com> fix expedited syncs. there were times when an expedited sync wouldn't
correctly preempt non-expedited syncs

Change-Id: Ia88ce6504c06d7c8e50e40362e8bf2b85bd0934b
yncManager.java
yncOperation.java
yncStorageEngine.java
66ff373f5f98d60054bad8b540e881621d724dfd 05-May-2012 Andy Stadler <stadler@google.com> am 1f1aed5e: am c4be1b7e: Merge "Add System Tracing capability to Sync Manager" into jb-dev

* commit '1f1aed5e76efd27c69e597fd3eab91fe822bd850':
Add System Tracing capability to Sync Manager
c4be1b7e963413c110d8a6ee9fdd4fd7443fb2e0 04-May-2012 Andy Stadler <stadler@google.com> Merge "Add System Tracing capability to Sync Manager" into jb-dev
43dad01f5bb24f0b972b043a51e6afc1ca73578c 04-May-2012 Jim Miller <jaggies@google.com> am 360ca12b: am 516c25b3: Merge "Fix 6414061: Add new ACTION_ASSIST intent." into jb-dev

* commit '360ca12bf2914c0832da58f9e7963026799bf676':
Fix 6414061: Add new ACTION_ASSIST intent.
516c25b38a03decc8f9cbd41f4d9baa4f52f438f 04-May-2012 Jim Miller <jaggies@google.com> Merge "Fix 6414061: Add new ACTION_ASSIST intent." into jb-dev
0799440ab3ce50ffa6acb762cb7677abdffb3f74 02-May-2012 Jim Miller <jaggies@google.com> Fix 6414061: Add new ACTION_ASSIST intent.

Change-Id: I3d334f67723ac89f6001267e0f06ad76190b929f
ntent.java
66388dcb09018933ccd1d38eae563f0890ba4f06 04-May-2012 Fabrice Di Meglio <fdimeglio@google.com> Hide RTL related APIs - DO NOT MERGE

- fix bug #6441155 API review: @hide RTL layout APIs

Change-Id: I13c5ea5f579cecffed9d517f06180ab0576cd26a
m/ApplicationInfo.java
09b45a3ad96379b4181d32f8391f63e9c57dc316 04-May-2012 Andy Stadler <stadler@google.com> Add System Tracing capability to Sync Manager

This tracing code is enabled via "systrace.py --set-tags sync"

Change-Id: Ia8bc01adbba345a568405b0ac8ade96e56b40cc1
bstractThreadedSyncAdapter.java
0e128bb2e03dafdabc06710a6b0ea93f0e62a188 01-May-2012 Dianne Hackborn <hackbod@google.com> New permissions UI.

Had to keep around a little of the old API for the device
admin settings UI to continue to use.

Change-Id: I84c5666a7f3fec0495eae196a0ffc2223c9e6f82
ntent.java
19eaf0a74dc4521db4c248504ea1815d052c0b27 02-May-2012 Jeff Sharkey <jsharkey@android.com> Merge "Catch CCE when migrating to ClipData." into jb-dev
dd471e6a6fcea7e7c43b68554f92d875e9f65165 01-May-2012 Jeff Sharkey <jsharkey@android.com> Catch CCE when migrating to ClipData.

Bug: 6231948
Change-Id: I51bc272d29a17881b3d4908fda549da20aa7e6b3
ntent.java
fd5015be41080970c9a992a8ef17a1deefb57478 01-May-2012 Dianne Hackborn <hackbod@google.com> Add new APIs for permission group flags and priorities.

Change-Id: I2d476c6aa9dbd05407ec49be45986f42d2acf9e7
m/PackageParser.java
m/PermissionGroupInfo.java
263d044c790923d7d83ab036e79a3decc25c7b4d 28-Apr-2012 Jeff Brown <jeffbrown@google.com> Merge "Fix CancellationSignal deadlock." into jb-dev
aeee2f5d7564614da7b5e1aedb8816fc6559b2e9 27-Apr-2012 Jeff Brown <jeffbrown@google.com> Fix CancellationSignal deadlock.

Bug: 6398945
Change-Id: I5a3d4dce74009d6f1d284a8cc54c9f68daa6a9c2
ancellationSignal.java
c5bf7584422adca286c1f27a073df925c06f068d 26-Apr-2012 Dianne Hackborn <hackbod@google.com> Update process importance documentation.

Also be more direct about some of the wallpaper APIs.

Change-Id: I2112898c0cd4415d6c5fd47923de682d59b8291f
omponentCallbacks2.java
ntent.java
c1da08f1aea42d958c0dd245f1d58345e43eb323 25-Apr-2012 Irfan Sheriff <isheriff@google.com> Merge "Expose Context.NSD_SERVICE"
60309fc7bb95c9b3fc3e0ed60aa1eeb35bd13a68 24-Apr-2012 Irfan Sheriff <isheriff@google.com> Expose Context.NSD_SERVICE

Missed exposing Context.NSD_SERVICE for the network service
discovery API

Change-Id: I38cfa93e923286072ded05b707d31cd4db7ff7d4
ontext.java
ce5a597e66a1fc586681d963114904dc24e11784 24-Apr-2012 Jeff Sharkey <jsharkey@android.com> Merge "Disable READ_EXTERNAL enforcement until API level cut."
d776f617f5ad8052245e173602a7b80703f5fb39 24-Apr-2012 Jeff Sharkey <jsharkey@android.com> Disable READ_EXTERNAL enforcement until API level cut.

Bug: 6389556
Change-Id: I78238b9de24c1b8ebb4fdc35d8aafd2e85a4adfe
m/PackageManager.java
07b0465095bd9ab3412caefa4fcacbdc3825c64b 24-Apr-2012 Glenn Kasten <gkasten@google.com> Scheduling policy service

Change-Id: I6178b96896ffbb3323210f93784a65d724a3e694
ontext.java
7b5f22e11c37ef481ca5bc2b7d07c3c33c6ad3e8 19-Apr-2012 Joe Malin <jmalin@google.com> am 787fa9dc: am 20176edc: Merge "DOC CHANGE: Add javadoc to ClipboardManager" into ics-mr1

* commit '787fa9dc69262dc002c9da77fa86e88e5a4e658f':
DOC CHANGE: Add javadoc to ClipboardManager
787fa9dc69262dc002c9da77fa86e88e5a4e658f 19-Apr-2012 Joe Malin <jmalin@google.com> am 20176edc: Merge "DOC CHANGE: Add javadoc to ClipboardManager" into ics-mr1

* commit '20176edc4ff43f10ab3be03d84bb9f02b7859bdb':
DOC CHANGE: Add javadoc to ClipboardManager
20176edc4ff43f10ab3be03d84bb9f02b7859bdb 19-Apr-2012 Joe Malin <jmalin@google.com> Merge "DOC CHANGE: Add javadoc to ClipboardManager" into ics-mr1
d95ce04bdc92fe337c929c0dca9366fde7a564d2 17-Apr-2012 Amith Yamasani <yamasani@google.com> Merge "Make sure persistent processes are not replicated for secondary users."
a4a54e2a5f383e766bfecaec776e0b00002badd1 17-Apr-2012 Amith Yamasani <yamasani@google.com> Make sure persistent processes are not replicated for secondary users.

An intent is launched in a singleton process if the process is persistent
and the resolved activity/service/etc is not requested to run in a different
process.

Change-Id: I1463e73a76bc8bde4185f9cf4395edb47515841d
m/PackageParser.java
ac4243f177efb66f15df2f818418eac2b7abcec7 14-Apr-2012 Dianne Hackborn <hackbod@google.com> Make ACTION_SEND and ACTION_SEND_MULTIPLE build full clip items.

The current code was just for transferring URI grants. This change
makes it so it propagates all of the relevant extra data into the
ClipData, so developers can just retrieve the ClipData for all of
their data needs.

Change-Id: I36a050c7beae325aceb84518337f878c337d8b86
ntent.java
2a07308ed27b7323377142c69975b019244e38d7 14-Apr-2012 Dianne Hackborn <hackbod@google.com> Merge "Add direct support for HTML formatted text in ClipData etc."
acb69bb909d098cea284df47d794c17171d84c91 14-Apr-2012 Dianne Hackborn <hackbod@google.com> Add direct support for HTML formatted text in ClipData etc.

When using the clipboard, ACTION_SEND, etc., you can now supply
HTML formatted text as one of the representations. This is exposed
as a set of methods on ClipData for building items with HTML
formatted text, and retrieving and coercing to HTML (and styled)
text. In addtion, there is a new EXTRA_HTML_TEXT for interoperating
with the old ACTION_SEND protocol.

Change-Id: I8846520a480c8a5f829ec1e693aeebd425ac170d
lipData.java
lipDescription.java
ontentResolver.java
ntent.java
10b6f68d484d19de418403e35589deea33f212b3 13-Apr-2012 Jeff Sharkey <jsharkey@android.com> Merge "Enforce READ_EXTERNAL on non-user builds."
5d32e772b3a19c1ac84e665f2885755427d590c8 13-Apr-2012 Jeff Sharkey <jsharkey@android.com> Enforce READ_EXTERNAL on non-user builds.

Enable default enforcement of READ_EXTERNAL_STORAGE on non-user
builds. Users can still explicitly enable enforcement in Settings.

Bug: 6131916
Change-Id: I7dc66b624ad252ed2a2ad3647f3ea85dda7f8e82
m/IPackageManager.aidl
m/PackageManager.java
bc59bc355bea19f8eb2f8fbdd3da6ad2e17ad17e 13-Apr-2012 Romain Guy <romainguy@google.com> Merge "Properly cache color state lists."
5d911c3a95cf4db4cf1cc0c8d4d253553d50c550 13-Apr-2012 Romain Guy <romainguy@google.com> Properly cache color state lists.

Clobbering the typed value's cookie with the alpha channel is not okay.

Change-Id: Ia75481be06699b42f80eb4c59672c6cd6cf8c0a8
es/Resources.java
a11236bf0908c5d02e7be24b97ec4cf9e63e33f3 12-Apr-2012 Jeff Sharkey <jsharkey@android.com> Merge "Include enforcement state in dumpsys."
1c27576aff247ff1d7789e0a571958726f161593 12-Apr-2012 Jeff Sharkey <jsharkey@android.com> Include enforcement state in dumpsys.

Bug: 6323087
Change-Id: I6d779798538c114ea9816d3bdbbff5552c285df6
m/PackageManager.java
b990893ffc591bc7de9d5fd54dbe1707388717a8 12-Apr-2012 Jeff Sharkey <jsharkey@android.com> Merge "Make component names visible in javadoc."
5554b7082220d37496e30f39a0d9146afc177ab4 12-Apr-2012 Jeff Sharkey <jsharkey@android.com> Make component names visible in javadoc.

Change-Id: I3770ea6616b8425c387bcd27d668e3114b14335d
ontentProvider.java
9766937ba57ca80977a68c681fdd4e46b6e1fd81 12-Apr-2012 Ashish Sharma <ashishsharma@google.com> Merge "Synchronize/align periodic sync alarms based on a random per device seed value."
69d95de53bc82e6c23c64ad566e428fbefae0543 12-Apr-2012 Ashish Sharma <ashishsharma@google.com> Synchronize/align periodic sync alarms based on a random per device seed value.

Removes duplicates SyncHandler.MESSAGE_CHECK_ALARM messages from the queue.

Change-Id: Ib29a06da904cebdd45ee05c9d9a6bf00b72100eb
yncManager.java
yncStorageEngine.java
f29f2369cf4e1de090c985ed53d3f5e59535986a 06-Apr-2012 Amith Yamasani <yamasani@google.com> Fix a race condition in SyncManager.onAccountsUpdated()

Get the full list of accounts from AccountManagerService in one shot
instead of getting them per user.

Bug: 6263091

Change-Id: I488f24749a96281ef1e2a620820399c97f471024
yncManager.java
yncStorageEngine.java
79af6063d536eb7edbc73be0fa2b8eb734758db7 10-Apr-2012 Dianne Hackborn <hackbod@google.com> Merge "Hide the optional permission stuff, not making it in to JB."
59f482764e346a5c5ac118ee1f7b24da645c2559 06-Apr-2012 Eric Laurent <elaurent@google.com> Added support for USB audio devices

Two types of USB audio devices are defined:
- USB audio device: the audio device in USB device mode while
the Android device is in USB host mode.
- USB audio accessory: the audio device in USB host mode while
the Android device is in USB device mode.

Renamed intents for analog and digital docks to avoid confusion:
- ACTION_USB_ANLG_HEADSET_PLUG to ACTION_ANALOG_AUDIO_DOCK_PLUG
- ACTION_USB_DGTL_HEADSET_PLUG to ACTION_DIGITAL_AUDIO_DOCK_PLUG

Factorized code in AudioService broadcast receiver.

Change-Id: I1b6d0257a9d68ecb9495c78c98bac8c67fec7891
ntent.java
e824120016248bcfe3962883fe9f3b0481dd1c3d 06-Apr-2012 Dianne Hackborn <hackbod@google.com> Hide the optional permission stuff, not making it in to JB.

Also lock down the rest of the development tools permissions to
be development permissions that must be granted through an
explicit shell command.

Change-Id: I1ba216fffe1aab4bb9f83fcef108efc504f892f4
m/PackageInfo.java
m/PackageParser.java
85d9e02094a0eefe21b949effb5e7c8f042c92c8 06-Apr-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix dumb bug."
5e4705a82786103982b2c9980b0dcd0bb54208d3 06-Apr-2012 Dianne Hackborn <hackbod@google.com> Fix dumb bug.

Change-Id: I5e0dfc0f03677888c22d938013299a8ec4597c69
m/PackageParser.java
5713c9cfa9a0ed7625c8a48925a5c33b2c070460 06-Apr-2012 Mike Lockwood <lockwood@google.com> Merge "Add Intents to notify when USB audio devices or accessories are attached"
29d6fa9d8b651b6940e6f3f9182f5b72c404c739 06-Apr-2012 Dianne Hackborn <hackbod@google.com> Merge "Implement call log permission compatibility."
9d5a4be05b6d51ebb768e5fbcfa27ed9a39269b3 06-Apr-2012 Mike Lockwood <lockwood@google.com> Add Intents to notify when USB audio devices or accessories are attached

In this change, only the USB audio accessory support is implemented.

Change-Id: Id9b411319b07a96dc56649ca74cc5f3f89a55a7c
Signed-off-by: Mike Lockwood <lockwood@google.com>
ntent.java
31b0e0e86ad061cd8005e80817bcad017e2d56dd 06-Apr-2012 Dianne Hackborn <hackbod@google.com> Implement call log permission compatibility.

If a pre-JellyBean application requests read/write contacts, it
will implicitly be given read/write call log.

Change-Id: I029db4b09fda737bb8fba4e1611355ebdbbfd34f
m/PackageParser.java
23b871d7147de910b53646cdb987e28dac0df927 06-Apr-2012 Jeff Brown <jeffbrown@google.com> Merge "Initial commit of InputManager and keyboard layout API."
9df6e7a926ce480baf70e97ee1b9ea387193f6ad 05-Apr-2012 Jeff Brown <jeffbrown@google.com> Initial commit of InputManager and keyboard layout API.

Added a new InputManager service for interacting with input
devices and configuring them. This will be the focus of
an upcoming refactoring.

Added an API for registering keyboard layouts with the system
based on the use of a broadcast receiver. Applications can
register their own keyboard layouts simply by declaring a
broadcast receiver in their manifests.

Added the skeleton of a package that will ultimately contain
the keyboard layouts and other input device related resources
that are part of the base system.

Bug: 6110399
Change-Id: Ie01b0ef4adbd5198f6f012e73964bdef3c51805c
ontext.java
dd8fab2629131b09367df747afd9a61e42dd1992 23-Mar-2012 Adam Powell <adamp@google.com> TaskStackBuilder and Activity navigation features for framework

Promote navigation helpers from the support library to the core
platform.

The support library's meta-data element has been replaced with a
first-class parentActivityName attribute. This attribute is valid
on both activity and activity-alias elements. An activity-alias
will inherit the target activity's parentActivityName if one is
not explicitly specified.

Automatic Up navigation for Activities

Add the public method onNavigateUp() to Activity. The default
implementation will use the metadata supplied in the manifest about an
activity's hierarchical parent (parentActivityName) to do the right
thing.

If any activities in the parent chain require special Intent
arguments, the Activity subclass should override onNavigateUp() to
properly implement Up navigation for the app, supplying such arguments
as needed.

If automatic Up navigation within the same task can't find an activity
matching the supplied intent in the current task stack, it will act as
an in-app "home" and return to the root activity (presumably the app's
front page) in that task. (From this state, pressing "back" with
default behavior will return to the launcher.)

Change-Id: If163e27e59587f7af36975a09c986cb117ec3bc6
m/ActivityInfo.java
m/PackageParser.java
7d024d372431effc87168afdc7cbe387680c4935 23-Mar-2012 Irfan Sheriff <isheriff@google.com> Add initial framework for DNS service discovery

Change-Id: I53c0b7ebfd75e520ebb7553612f1aa8413b6b79b
ontext.java
59dfce8bdaf011337530a0dbec7f7280871f9bc9 03-Apr-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6140391 Make RTL awareness as an opt-in into the AndroidManifest

- introduce "supportsRtl" as a new application attribute in the AndroidManifest
- "supportsRtl" default value is FALSE (no RTL support)
- adapt the View layoutDirection and textDirection logic to take care of "supportsRtl" value

Change-Id: I5e4f9f576e14f35dedc6b0c29a7142c397f598e0
m/ApplicationInfo.java
m/PackageParser.java
8b5bce8d9060c1b68b5605da8f6978d8fb5ea1d3 27-Mar-2012 Amith Yamasani <yamasani@google.com> Merge "User management and switching"
135936072b24b090fb63940aea41b408d855a4f3 23-Mar-2012 Amith Yamasani <yamasani@google.com> User management and switching

Broadcast intents that get sent out when users are added/removed/switched.

More work on generating user-specific information in package manager queries.
APIs to update user name and query a user by id.
Removed Package.mSetStopped and mSetEnabled, since they're not user specific.

User removal:
- Cleanup ActivityManager, PackageManager, WallpaperManager, AppWidgetService
and AccountManager.
- Shutdown processes belonging to the user.

Don't show vibrate option in long-press power if there's no vibrator.

Lock the screen when switching users, to force unlocking.

Change-Id: Ib23a721cb75285eef5fd6ba8c7272462764038fa
ntent.java
yncManager.java
yncQueue.java
m/IPackageManager.aidl
m/PackageManager.java
m/PackageParser.java
f27ea66114569d233c65cb895543668f3202ca19 27-Mar-2012 Jeff Sharkey <jsharkey@android.com> Avoid ClassCast when migrating ACTION_SEND extras.

Bug: 6231948
Change-Id: I008195fa973517446b2400ed3f59af0cbf0fc925
ntent.java
0c44525a4888de321c9497204d59c8515f828499 24-Mar-2012 Jeff Sharkey <jsharkey@android.com> Merge "Copy EXTRA_STREAM into ClipData and grant."
678d04f1b6d189b2d867d518065f90dce7292863 23-Mar-2012 Jeff Sharkey <jsharkey@android.com> Copy EXTRA_STREAM into ClipData and grant.

When sending SEND or SEND_MULTIPLE intents, copy any EXTRA_STREAM
Uris to ClipData and set GRANT_READ_URI_PERMISSION flag.

Bug: 6216357
Change-Id: I3c9b0d1d4b7e0c4655b47c4192150b0c3641e0e8
ntent.java
47847f3f4dcf2a0dbea0bc0e4f02528e21d37a88 23-Mar-2012 Jeff Brown <jeffbrown@google.com> Support enabling WAL using a flag when DB is opened.

Using enableWriteAheadLogging() to enable WAL is inefficient because
we previously disabled WAL mode when the database was opened.
Switching from WAL to PERSIST then back to WAL is inefficient
and could slow down application launch time. It would be better
to leave the database in WAL mode when we open it to begin with.

To do that, we need to know ahead of time whether we will want to
have WAL enabled for the newly opened database.

Using this flag also reduces the chance that we will encounter
an error enabling WAL mode due to there being other open connections
to the database.

Bug: 6124556
Change-Id: I38ec7a528baeda9f1ef77e25e88b3ca4b6296200
ontext.java
483f3b06ea84440a082e21b68ec2c2e54046f5a6 14-Mar-2012 Amith Yamasani <yamasani@google.com> Package restrictions per user

Packages can be enabled/disabled per user.
This requires maintaining stopped/launched states and
enabled / disabled components and packages per user.

Refactored pm.Settings and PackageSettingsBase to keep
track of states per user.

Migrated the stopped-packages.xml to users/<u>/package-restrictions.xml

Changed intent resolution to handle individual user restrictions.
Bunch of IPackageManager calls now have a userId argument.
Make AppWidgetService handle removals of packages.

Added some tests for pm.Settings and PackageManager.

Change-Id: Ia83b529e1df88dbcb3bd55ebfc952a6e9b20e861
m/IPackageManager.aidl
m/PackageParser.java
09f5aededa1568f59bbe014ce5199ebca35a93b8 20-Mar-2012 Jeff Sharkey <jsharkey@android.com> Merge "Selective enforcement of READ_EXTERNAL_STORAGE."
edc84ee8392afa0102f098168329db5bb43a6d4b 20-Mar-2012 Jeff Sharkey <jsharkey@android.com> Selective enforcement of READ_EXTERNAL_STORAGE.

Store enforcement state of specific permissions, allowing them to be
selectively enforced. Currently supports READ_EXTERNAL_STORAGE, which
by default isn't enforced, but enforcement can be enabled at runtime.

Bug: 6131916
Change-Id: I4bcc215a2eb5e6507d6257b577311cbd13c77acf
m/IPackageManager.aidl
m/PackageManager.java
9ce685b934b36cc57631e10f7c1e3609e91e3f9c 16-Mar-2012 Christopher Tate <ctate@google.com> Make immersive mode public & imply update locking

Activity.setImmersive(boolean) / android:immersive="bool" are now public.
In addition, if the foreground activity is immersive then an update lock
will be held on its behalf. This lets applications such as movie players
suppress the display of intrusive notifications, OTA-availability dialogs,
and the like while they are displaying content that ought not to be
rudely interrupted.

The update lock aspect of this mode is *advisory*, not binding -- the
update mechanism is not actually constrained; it simply uses this information
in deciding whether/when to prompt the user. It's more a guideline than
a rule.

Bug 6154438

Change-Id: Ibd3491fc437077f3fa0d9708ed91955121e8c877
m/ActivityInfo.java
f1bdf65308af0ced783ffffd60b841a6bc0da970 20-Mar-2012 Dianne Hackborn <hackbod@google.com> Merge "Start using the new activity options argument."
7a2195cdd33f27c79eda343defc1f7ccf59cc8ac 20-Mar-2012 Dianne Hackborn <hackbod@google.com> Start using the new activity options argument.

New class lets you make an options bundle defining a custom animation,
as an alternative to Activity.overridePendingTransition().

Change-Id: I8e209bf52398a98ab9f1bcafa1ec0a580dae57c0
ontext.java
a2dea4fce61aa3ff126f53738620726a2ce53cf0 19-Mar-2012 Jeff Sharkey <jsharkey@android.com> Merge "Better exceptions around provider permissions."
e5d4933692343d082912856198fc3d207865d1cc 13-Mar-2012 Jeff Sharkey <jsharkey@android.com> Better exceptions around provider permissions.

When enforcing ContentProvider permissions, mention which
<path-permission> caused the denial.

Bug: 6131916
Change-Id: I06ed461d188fc92c7ddc2acc92ec6169a7c9891a
ontentProvider.java
0791335443f5d2d8751ab371fd97ecaaca35ac61 15-Mar-2012 Amith Yamasani <yamasani@google.com> Merge "Fix sync tests failure."
fb5a4964b8d402b39754f406dd2255035ff2148d 15-Mar-2012 Jeff Brown <jeffbrown@google.com> Prefetch column names in bulk cursor adaptor.

If the remote end of a bulk cursor died, then it was possible
for getColumnNames() to return null, violating the invariant
that it never returns null. As a result, the application could
crash in strange ways due to an NPE.

Since we are often interested in the column names anyhow, prefetch
them when setting up the bulk cursor adaptor. This way, a
remote cursor will never return null even if the remote end died.

It is possible for an application to continue to use a remote cursor
even after the provider has died unless it needs to requery it
for some reason. Of course at that point, bad things will
happen... but usually the app is better prepared for it than
if it just randomly encounters a null array of column names.

This change also optimizes the bulk cursor adaptor to return the
initial cursor window back to the client, potentially saving
an extra RPC. Because the communication protocol between
the CursorToBulkCursorAdaptor and BulkCursorToCursorAdaptor was
getting a little hard to follow, introduced a new type called
BulkCursorDescriptor to hold all of the necessary parameters.

Deleted several unnecessary IBulkCursor methods that are never
actually called remotely.

Bug: 6168809
Change-Id: I9aaf6f067c6434a575e2fdbf678243d5ad10755f
ontentProviderNative.java
1b6ae002a5ccb4f1e06b8a2971edef2140a35a3c 14-Mar-2012 Amith Yamasani <yamasani@google.com> Fix sync tests failure.

Bug: 6156819 Contacts initial sync test fails

Earlier commit was incorrectly cloning the currentSyncs list, so it
wasn't being updated.

Change-Id: I23cea8a190127746e9a1218e7bfda630599cef17
yncStorageEngine.java
a4972e951bf2bdb7afdafee95b3ab0c15b8bacae 14-Mar-2012 Dianne Hackborn <hackbod@google.com> Add new "options" argument to all startActivity APIs.

This will be used to allow new features to be requested... such as,
say, a special kind of animation. Right now there are no options
defined.

Change-Id: I4eb6f27275cdd4bf186f6da316ab93a2372ad4b7
ontext.java
ontextWrapper.java
b8c81768d9517bdb36f7ef83e7618fda038c6608 13-Mar-2012 Jeff Sharkey <jsharkey@android.com> Merge "Let <path-permission> block unprotected providers."
7924512aa12c6af37d90e8ccfcdf04eb78a294a3 12-Mar-2012 Dianne Hackborn <hackbod@google.com> Add new READ_EXTERNAL_STORAGE permission.

Also adds some initial compatibility code for dealing with it.

Change-Id: I104bff11798349e4aaa6da9b7be787b257daa1bb
m/PackageParser.java
110a6b6252d6daf9882ece7595bd3613b82448a8 12-Mar-2012 Jeff Sharkey <jsharkey@android.com> Let <path-permission> block unprotected providers.

When accessing a ContentProvider that is unprotected by top-level
permissions, and caller doesn't hold a matching <path-permission>
permission, revoke the default top-level access.

This enables an otherwise unprotected provider to enforce permissions
on specific paths.

Bug: 6131916
Change-Id: Icab89f765ccd90b1acea6988b05f00877fe2c11e
ontentProvider.java
f76a50ce8fdc6aea22cabc77b2977a1a15a79630 09-Mar-2012 Ken Wakasa <kwakasa@google.com> Fix obvious typos under frameworks/base/core

Change-Id: Ia5fc3db1bb51824e7523885553be926bcc42d736
ontentResolver.java
ontext.java
ntent.java
m/PackageManager.java
28ca8f9f95b1ee8186463bfc3f33b9383c0d1dd0 09-Mar-2012 Amith Yamasani <yamasani@google.com> Merge "Make SyncManager and AccountManagerService multi-user aware."
21c241e061de29a538008ca42df9c878184bcfb8 08-Mar-2012 Dianne Hackborn <hackbod@google.com> Add new Intent API for associating a ClipData with an Intent.

Allows applications to propagate multiple URI grants through an
Intent.

Later on, we should probably redefine the share actions to be
based on this ClipData with the old extras-based approach only
there for compatibility. Even if we don't do that, though, this
allows you to do a multi-select share that grants multiple URI
permissions by stuffing the URIs in a ClipData.

Also add some documentation in various places telling people how
they can grant URI permissions.

Change-Id: Id4ba8e72c11caf7e1f1f438cb7af058d1586a37c
lipData.java
lipDescription.java
ntent.java
04e0d265e3385e9d1fbc35e43c4e8caffbbe3290 14-Feb-2012 Amith Yamasani <yamasani@google.com> Make SyncManager and AccountManagerService multi-user aware.

AccountManagerService
- Maintain multiple account lists, one per user
- Keep multiple databases of accounts
- Account db moved to /data/system/users/<userid>/

SyncManager
- SyncStorageEngine keeps track of multiple users' accounts.
- SyncQueue maintained as a single instance, queueing requests from
multiple users.
- Changed some methods to take userId arguments
- Removed some deadc0de
- Store the userId in the SyncOperation, so we know which provider
instance to bind to when queued operations are processed.

ContentService
- Pass along the userid to sync manager calls.

ActivityManagerService:
- Fixed a bug in cancelIntentSender
- Don't bring other user's task forward when resetting tasks.

Updated tests

Change-Id: If317340ef68e902787aa3f5ceb4cf96f14aea695
ontentService.java
yncManager.java
yncOperation.java
yncQueue.java
yncStorageEngine.java
e61cad321d2888f2b6b7e0322158211e3b3e0c46 08-Mar-2012 Dirk Dougherty <ddougherty@google.com> resolved conflicts for merge of 532679a5 to master

Change-Id: Id60d047c0e1f288acff97526c016cca632873b6b
27ff913d56de8400083a13fc572e2812b32c890c 06-Mar-2012 Dianne Hackborn <hackbod@google.com> Work on more low memory reporting to apps.

There are now some new trim memory levels that are sent to
non-background applications as RAM becomes low.

There is a new API for an application to retrieve information
about memory trimming and such on demand.

Fixed various checks against the memory trim level to be
robust (not compare against exact values).

Change-Id: Ifd1c6151124350168aef20a94e517166fd2e03eb
omponentCallbacks2.java
4f03d35f9c040222e6a46dde807fe2ff7852beb8 06-Mar-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix issues #6103378 and #5959515."
56bab8bd83c4f54f876fdd76fc241197920129db 06-Mar-2012 Dirk Dougherty <ddougherty@google.com> am 4d7bc655: Doc change: String changes for Android Market

* commit '4d7bc65538c7cd9fbb1fbbcf22d1da47fcee1219':
Doc change: String changes for Android Market
cd83bf9420a7c4c25d562b197438f532ad897c90 06-Mar-2012 Dirk Dougherty <ddougherty@google.com> am 4d7bc655: Doc change: String changes for Android Market

* commit '4d7bc65538c7cd9fbb1fbbcf22d1da47fcee1219':
Doc change: String changes for Android Market
4d7bc65538c7cd9fbb1fbbcf22d1da47fcee1219 28-Jan-2012 Dirk Dougherty <ddougherty@google.com> Doc change: String changes for Android Market

Change-Id: I823812a4fd24021bec906ad856479c92a8d2a759
ntent.java
6569625beef705ec489662b80d372c4423f9c7f7 06-Mar-2012 Dianne Hackborn <hackbod@google.com> Fix issues #6103378 and #5959515.

Change-Id: I762d86dd7119c9ac02f4b8803c4a250c6b7637c7
6103378: APR: IOOBE at android.content.pm.PackageParser.generatePackageInfo(
PackageParser.java:355)
5959515: PackageManager doesn't validate className in setComponentEnabledSetting
m/PackageParser.java
3edd8f06cb5538d0f6cb7e9ca844237111802470 06-Mar-2012 Nick Pelly <npelly@google.com> Merge "Clarify docs for the thread used in BroadcastReceiver.onReceive()"
de88dba17cd1021bad39b4f80b4387a157c0dce3 03-Mar-2012 Nick Pelly <npelly@google.com> Clarify docs for the thread used in BroadcastReceiver.onReceive()

Change-Id: Ib6c0da5d0ca2fc95b26b230b306f205a9942cf03
roadcastReceiver.java
ab38500d9c0b8188dcb1045a24ce91cab1ca39ce 02-Mar-2012 Jean-Baptiste Queru <jbq@google.com> am dbc591e2: am c69d6134: am 6ae4fe94: am 9303919d: Merge "Adds documentation for ContentResolver notifyChange()"

* commit 'dbc591e27686486c732fca2f94fde645e3487b7a':
Adds documentation for ContentResolver notifyChange()
6ae4fe945b41d4bcb3ba7d931e34d6ef184b8b45 01-Mar-2012 Jean-Baptiste Queru <jbq@google.com> am 9303919d: Merge "Adds documentation for ContentResolver notifyChange()"

* commit '9303919d7d837dedf16f09ace0013e62670568e7':
Adds documentation for ContentResolver notifyChange()
8662cab5c6a01ea5c426512e6f6d2cf3e158aea0 23-Feb-2012 Christopher Tate <ctate@google.com> Merge: Introduce UpdateLocks

An "UpdateLock" works similarly to a wake lock in API: the caller is
providing a hint to the OS that now is not a good time to interrupt
the user/device in order to do intrusive work like applying OTAs.
This is particularly important for headless or kiosk-like products
where ordinarily the update process will be automatically scheduled
and proceed without user or administrator intervention.

UpdateLocks require that the caller hold the new signatureOrSystem
permission android.permission.UPDATE_LOCK. acquire() and release()
will throw security exceptions if this is not the case.

The "is now convenient?" state is expressed to interested parties
by way of a sticky broadcast sent only to registered listeners. The
broadcast is protected; only the system can send it, so listeners
can trust it to be accurate. The broadcast intent also includes a
timestamp (System.currentTimeMillis()) to help inform listeners that
wish to implement scheduling policies based on when the device became
idle.

The API change here is a tiny one: a dump(PrintWriter) method has been
added to the TokenWatcher class to facilitate getting information out
of it for dumpsys purposes. UpdateLock itself is still @hide.

Bug 5543442

Change-Id: I3709c831fc1883d7cb753cd2d3ee8e10a61e7e48
ontext.java
3fb824bae3322252a68c1cf8537280a5d2bd356d 29-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5217606 LocaleUtils constants TEXT_LAYOUT_DIRECTION_LTR_DO_NOT_USE and TEXT_LAYOUT_DIRECTION_RTL_DO_NOT_USE should be renamed

- replace them by the View constants

Change-Id: I7c2bf0213319247d3db369b6f7c36771fdf3e509
es/Configuration.java
66e817655a239f8738ce73e06bb1496b2e818f74 23-Feb-2012 Christopher Tate <ctate@google.com> Introduce UpdateLocks - "now is not a good time for non-interactive OTA"

An "UpdateLock" works similarly to a wake lock in API: the caller is
providing a hint to the OS that now is not a good time to interrupt
the user/device in order to do intrusive work like applying OTAs.
This is particularly important for headless or kiosk-like products
where ordinarily the update process will be automatically scheduled
and proceed without user or administrator intervention.

UpdateLocks require that the caller hold the new signatureOrSystem
permission android.permission.UPDATE_LOCK. acquire() and release()
will throw security exceptions if this is not the case.

The "is now convenient?" state is expressed to interested parties
by way of a sticky broadcast sent only to registered listeners. The
broadcast is protected; only the system can send it, so listeners
can trust it to be accurate. The broadcast intent also includes a
timestamp (System.currentTimeMillis()) to help inform listeners that
wish to implement scheduling policies based on when the device became
idle.

The API change here is a tiny one: a dump(PrintWriter) method has been
added to the TokenWatcher class to facilitate getting information out
of it for dumpsys purposes. UpdateLock itself is still @hide.

Bug 5543442

Change-Id: Ic1548dd43935f45d4efc67f970abdc290a45f715
ontext.java
e639da7baa23121e35aa06d6e182558e0e755696 22-Feb-2012 Dianne Hackborn <hackbod@google.com> New development permissions.

These are permissions that an application can request, but won't
normally be granted. To have the permission granted, the user
must explicitly do so through a new "adb shell pm grant" command.

I put these permissions in the "development tools" permission
group. Looking at the stuff there, I think all of the permissions
we already had in that group should be turned to development
permissions; I don't think any of them are protecting public APIs,
and they are really not things normal applications should use.

The support this, the protectionLevel of a permission has been
modified to consist of a base protection type with additional
flags. The signatureOrSystem permission has thus been converted
to a signature base type with a new "system" flag; you can use
"system" and/or "dangerous" flags with signature permissions as
desired.

The permissions UI has been updated to understand these new types
of permissions and know when to display them. Along with doing
that, it also now shows you which permissions are new when updating
an existing application.

This also starts laying the ground-work for "optional" permissions
(which development permissions are a certain specialized form of).
Completing that work requires some more features in the package
manager to understand generic optional permissions (having a
facility to not apply them when installing), along with the
appropriate UI for the app and user to manage those permissions.

Change-Id: I6571785c6bb5f6b291862b7a9be584885f88f3a5
m/IPackageManager.aidl
m/PackageInfo.java
m/PackageManager.java
m/PackageParser.java
m/PermissionInfo.java
c29f031598811486d83f418fd08fbfe1fc41788a 23-Feb-2012 Philip Milne <pmilne@google.com> Fix for bug 6050753.

The method:

TypedArray: getLayoutDimension(int, String)

throws an undocumented exception when either the width and/or height
attributes are undefined.

See the bug report above for reasons why this was deemed unhelpful both
in the tools area and to developers in general.

Fix by:

1. Documenting the conditions under which the method raises an exception.
2. Deprecating the method, advising callers to supply a default instead.

Additionally, redefine the:

ViewGroup: setBaseAttributes(TypedArray, int, int);

methods to provide the appropriate defaults in ViewGroup subclasses as
advised above.

For the platform layouts the default value is WRAP_CONTENT (and is
defined in the ViewGroup.LayoutParams class). The special cases
are accomodated in LayoutParams subclasses in the following cases:

Subclass width height

FrameLayout.LayoutParams: MATCH_PARENT, MATCH_PARENT
TableLayout.LayoutParams: MATCH_PARENT, WRAP_CONTENT
TableRow.LayoutParams: MATCH_PARENT, WRAP_CONTENT

Change-Id: I335a3bd8e2d7f7866692898ed73492635a5b61ea
es/TypedArray.java
67cf7d314b5b94db1a9f1c57140b6615b0ea8291 16-Feb-2012 Amith Yamasani <yamasani@google.com> Fix Power Control widget

Some changes in AppWidgetService were interfering with widget permissions.

Added some hidden methods in Context to communicate the requesting user
information instead of using the calling uid.

Bug: 6019296
Change-Id: I5e519fd3fbbfa5b3fcc5c297b729c671dac8e7c7
ontext.java
ontextWrapper.java
37ce3a8af6faab675319d0803b288ab1dddc76be 06-Feb-2012 Amith Yamasani <yamasani@google.com> 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
ontext.java
ontextWrapper.java
m/PackageParser.java
b01e8bf57b7492b77e3445db51471edcbadda75e 30-Aug-2011 Mike Lockwood <lockwood@android.com> 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>
ontext.java
a0c283eac33dd2da72235751bbfa4f2d9898d5ea 09-Feb-2012 Dianne Hackborn <hackbod@google.com> Add new feature for running services in "isolated" sandbox processes.

This reserves a range of uids (for each user) in which these processes
run. These uids are not associated with an application, so they
effectively run with no permissions. When a Service requests to
run in such a process through android:isolatedProcess="true", each
time it is brought up a new isolated process is started with its
own unique uid.

What we have so far gives us the basic infrastructure; more work
remains to further lock down what these uids have access to.

Change-Id: Ibfd27c75619cba61f528f46ede9113f98dc5f45b
m/PackageParser.java
m/ServiceInfo.java
1ef7d13172248848805b9ceb6161b0741d8580dd 03-Feb-2012 Amith Yamasani <yamasani@google.com> Merge "Multi-user - 1st major checkin"
742a67127366c376fdf188ff99ba30b27d3bf90c 04-May-2011 Amith Yamasani <yamasani@google.com> Multi-user - 1st major checkin

Switching activity stacks
Cache ContentProvider per user
Long-press power to switch users (on phone)

Added ServiceMap for separating services by user
Launch PendingIntents on the correct user's uid
Fix task switching from Recents list
AppWidgetService is mostly working.

Commands added to pm and am to allow creating and switching profiles.

Change-Id: I15810e8cfbe50a04bd3323a7ef5a8ff4230870ed
m/IPackageManager.aidl
m/PackageManager.java
m/PackageParser.java
4c1241df8f8b7fd5ec3dff6c7e0f66271248e76e 03-Feb-2012 Jeff Brown <jeffbrown@google.com> Rename CancellationSignal using preferred spelling.

Bug: 5943637
Change-Id: I12a339f285f4db58e79acb5fd8ec2fc1acda5265
ancelationSignal.java
ancellationSignal.java
ontentProvider.java
ontentProviderClient.java
ontentProviderNative.java
ontentResolver.java
ursorLoader.java
CancelationSignal.aidl
CancellationSignal.aidl
ContentProvider.java
perationCanceledException.java
9dbfc331b42371c5bcb1d8ec7750f4cd4f914123 02-Feb-2012 Jeff Brown <jeffbrown@google.com> Merge "Support automatic cancellation of Loaders."
b19a71a20adb48c084e87d06a1e6b0dcb49170f5 31-Jan-2012 Jeff Brown <jeffbrown@google.com> Support automatic cancellation of Loaders.

Change-Id: I18d3f49e413f48fcdd519d15e99c238ad54d35b9
syncTaskLoader.java
ursorLoader.java
oader.java
f46723b41f723ebfc9ed18c7c409b319f4b5e539 26-Jan-2012 Christopher Tate <ctate@google.com> Implement background vs foreground broadcasts

Before now, receiving a broadcast would cause a process to be hoisted
to foreground priority / cgroup. This is no longer the case: broadcasts
by default are handled in the background, with a suitably increased
timeout interval. When a given broadcast needs to be dealt with in a
more timely manner, the issuer can set the new FLAG_BROADCAST_FOREGROUND
flag on the Intent, which will produce the old foreground-priority
behavior.

To avoid priority inversions, foreground broadcasts are tracked on a
separate outgoing queue and can be in flight simultaneously with a
background-priority broadcast. If there is already a background-level
broadcast in flight to a given app and then a foreground-level one is
dispatched to that app, the app [and its handling of both broadcasts]
will be properly hoisted to foreground priority.

This change is also essentially the first step towards refactoring the
broadcast-handling portions of the Activity Manager into a more
independent existence. Making BroadcastQueue a top-level class and
regularizing its operation viz the primary Activity Manager operation
is the next step.

Change-Id: If1be33156dc22dcce318edbb5846b08df8e7bed5
ntent.java
6c997a9e880e08c354ffd809bd62df9e25e9c4d4 31-Jan-2012 Dianne Hackborn <hackbod@google.com> aapt now sorts the strings in the resource string pool.

In our current environment with very many translations, this can
save a lot of RAM -- for example over 200K in Gmail just by sorting
the strings in the Gmail .apk (not the framework).

Also add a new aapt command to print the contents of the resource
table string pool.

Change-Id: I1da037b3e2c377b890833ff57ab158965314ac48
es/Configuration.java
2d2d7d6f42fe22ecc2b1dc8bb96a19e503a61a20 28-Jan-2012 Jeff Brown <jeffbrown@google.com> Merge "Implement a cancelation mechanism for queries."
75ea64fc54f328d37b115cfb1ded1e45c30380ed 26-Jan-2012 Jeff Brown <jeffbrown@google.com> Implement a cancelation mechanism for queries.

Added new API to enable cancelation of SQLite and content provider
queries by means of a CancelationSignal object. The application
creates a CancelationSignal object and passes it as an argument
to the query. The cancelation signal can then be used to cancel
the query while it is executing.

If the cancelation signal is raised before the query is executed,
then it is immediately terminated.

Change-Id: If2c76e9a7e56ea5e98768b6d4f225f0a1ca61c61
syncTaskLoader.java
ancelationSignal.java
ontentProvider.java
ontentProviderClient.java
ontentProviderNative.java
ontentResolver.java
ursorLoader.java
CancelationSignal.aidl
ContentProvider.java
perationCanceledException.java
dc828acd5fadb266b13cce459b1cacfad8ef7aef 25-Jan-2012 Nick Pelly <npelly@google.com> Merge "Add API's for normalizing MIME's and URI's."
ccae412deda8b0c165c86f395752c0667a3411a6 09-Jan-2012 Nick Pelly <npelly@google.com> Add API's for normalizing MIME's and URI's.

Helps developers create well-behaved intents:
- lower case MIME data type
- strip parameters from MIME content types
- lowercase URI scheme

The new API's are
normalizeAndSetType()
normalizeAndSetData()
normalizeAndSetDataAndType()
Uri.normalize()
normalizeMimeType()

Change-Id: Ib5c907897f39b1f705bcc4c9103ba1e6f316380b
ntent.java
655e66bceba7595a2b80e7a328433e6ed5dc28a9 24-Jan-2012 Jeff Brown <jeffbrown@google.com> Inform ContentObservers about the changed content Uri.

Added a new method ContentObserver.onChange(boolean, Uri) that
receives the changed content Uri. This can help applications make
better decisions about how to interpret a change notification.

Change-Id: I8e35378b6485fe22c5bc240ba07557d269af0836
ontentService.java
86de0590b94bcce27e3038c27464bed510bb564a 23-Jan-2012 Jeff Brown <jeffbrown@google.com> Clean up content observer code.

Improved the documentation a little bit.

Fixed a bug in ContentService wherein if a ContentObserver was
passed as an argument and its deliverSelfNotifications() method
returned true, then notifyChange would tell all observers that
the change was a self-change even though it was only a self-change
from the perspective of the provided observer.

Deprecated ContentObservable.notifyChange since it is never
used and in general it shouldn't be because we want the notification
to be posted to the handler.

Change-Id: Idde49eb40777e011a068f2adae8a32f779dfb923
ontentResolver.java
ontentService.java
d7a1aada2d1245eaeef973bc3e37619ce8e6d593 18-Jan-2012 Steve Pomeroy <steve@staticfree.info> Adds documentation for ContentResolver notifyChange()

Adds clarifying documentation to ContentResolver#notifyChange() to
explain interaction with the sync framework.

Change-Id: Ia1a1ed173e230bc11aa778268749323536ca434f
Signed-off-by: Steve Pomeroy <steve@staticfree.info>
ontentResolver.java
cf1290271922dab2ad9fd0b155a00a5fe0597ba8 13-Jan-2012 Alon Albert <aalbert@google.com> Merge "Log global autosync on dumpsys Protect dumpsys from divide by zero"
27096822e2da828e0f41c0337cf6f0f11e5bace5 12-Jan-2012 Alon Albert <aalbert@google.com> Log global autosync on dumpsys
Protect dumpsys from divide by zero

Change-Id: I3474f2f4b41643ef1e95cbcf835c96b66b13de38
yncManager.java
32313b161f7c7d17841bf49b3d146fd19dd7fde1 10-Jan-2012 Dianne Hackborn <hackbod@google.com> am d476c8b8: am d3be0a76: Merge "Unhide Resources APIs for getting resources at specific densities." into ics-mr1

* commit 'd476c8b8a8a6fadea7e72426d3e93c4e6b00e543':
Unhide Resources APIs for getting resources at specific densities.
7d537b556804baee07d5b3129d1b6b59c1859635 10-Jan-2012 Dianne Hackborn <hackbod@google.com> am d3be0a76: Merge "Unhide Resources APIs for getting resources at specific densities." into ics-mr1

* commit 'd3be0a76e46584357dbb77fcd200128d0d7dc9a8':
Unhide Resources APIs for getting resources at specific densities.
613989772f7d7f7317349568a4809bf08b942bd7 09-Jan-2012 Dianne Hackborn <hackbod@google.com> Unhide Resources APIs for getting resources at specific densities.

This adds Resources.getDrawableForDensity() and
Resources.getValueForDensity(). These are needed for applications
to correctly retrieve larger icons such as in launcher when
running on a tablet. We had already exposed the APIs to tell the
application which density to use for app icons on the current
device, but didn't unhide these APIs that allowed you to
actually retrieve them.

This is safe to do without introducing a new API level (as long
as we do it soon) because we know these APIs already exist in
Android 4.0, and there is no reason for anyone to be removing
them when building a device.

Change-Id: I5138e5dc908197b66a98d20af73c5374cb5d41d3
es/Resources.java
2b072677538de979961b5bf527109fdab1713731 23-Dec-2011 Joe Fernandez <joefernandez@google.com> am 201469f5: am bb7f590a: Merge "docs: Add developer guide cross-references, Project ACRE, round 4" into ics-mr1

* commit '201469f54522436be79d4d6665721049bfc74320':
docs: Add developer guide cross-references, Project ACRE, round 4
70b8a9d09b028331d6f98263c65802e164651f07 23-Dec-2011 Joe Fernandez <joefernandez@google.com> am bb7f590a: Merge "docs: Add developer guide cross-references, Project ACRE, round 4" into ics-mr1

* commit 'bb7f590a5a539486de5127071c7ade8ec988d755':
docs: Add developer guide cross-references, Project ACRE, round 4
3aef8e1d1b2f0b87d470bcccf37ba4ebb6560c45 20-Dec-2011 Joe Fernandez <joefernandez@google.com> docs: Add developer guide cross-references, Project ACRE, round 4

Change-Id: I1b43414aaec8ea217b39a0d780c80a25409d0991
lipData.java
lipDescription.java
lipboardManager.java
earchRecentSuggestionsProvider.java
413e9b3a5c1392ed8b80b66f00d9de5de0858b85 16-Dec-2011 Joe Malin <jmalin@google.com> DOC CHANGE: Add javadoc to ClipboardManager

Change-Id: Ib499952c45f3448897a2876ed7a7edd5c3dfebfd
lipboardManager.java
c3c7bac14aa6924df917ef5f61c97b97dc32817d 16-Dec-2011 Joe Onorato <joeo@google.com> Merge "Add a new ui mode for "appliance"" into ics-aah
c6a7f358e86e9debdc110236797fba911bd9474a 16-Dec-2011 Joe Onorato <joeo@google.com> Merge "Add a new ui mode for "appliance""
44fcb83b38b062a650ddf556fe7f5e34905df9ea 15-Dec-2011 Joe Onorato <joeo@google.com> Add a new ui mode for "appliance"

The idea is that this is a device which is more-or-less headless. It
might have some limited interaction capabilities, but it's not something
that you want to rely on having.

Change-Id: Ib92f53a120bf83de781728011721a4859def7d9f
es/Configuration.java
18cb28756caf02bf2b2f5e67c68451edaf719b47 15-Nov-2011 Marco Nelissen <marcone@google.com> Add ContentProvider.dump()

This is similar to the existing dump() facility for services.
ContentProviders can now implement dump() and that info will be shown
when running "dumpsys activity provider" and when taking a bugreport.

Change-Id: I33b3b132e3c4f920153355cc368eda2f725a715f
ontentProvider.java
68e616840bcbb14990552fd99f955a8e1216dc2e 15-Dec-2011 Joe Onorato <joeo@google.com> Add a new ui mode for "appliance"

The idea is that this is a device which is more-or-less headless. It
might have some limited interaction capabilities, but it's not something
that you want to rely on having.

Change-Id: Icc9f674299f8dbe2b736a5622a4965904d27e49c
es/Configuration.java
18ca25be58be75be78cdce7541b6b082a4b3864f 15-Dec-2011 Romain Guy <romainguy@google.com> Merge "Generate even fewer GL commands"
8f85e80b64b89fd38cc23b129f61ec36ddde7f15 15-Dec-2011 Romain Guy <romainguy@google.com> Generate even fewer GL commands

Change-Id: I0f4dcacb03ef5ee7f6ebd501df98bfead5f0a7f8
es/Resources.java
51a0e745ee29aa90e2c8c3d7c7bdc083bdc0028d 15-Dec-2011 Dianne Hackborn <hackbod@google.com> am 13299a33: am 399f1df3: Merge "Fix some java docs." into ics-mr1

* commit '13299a33e14562a5de14c89ad058d28ab0cd9f37':
Fix some java docs.
965e2c638b32cd771769cd1cc1fb99e5bda08370 15-Dec-2011 Dianne Hackborn <hackbod@google.com> am 399f1df3: Merge "Fix some java docs." into ics-mr1

* commit '399f1df38594ea8bc927ad23bfbde996a9dc161d':
Fix some java docs.
251fe263756988a6d6207fe73bb0f64bf2abacda 15-Dec-2011 Dianne Hackborn <hackbod@google.com> Fix some java docs.

Change-Id: I0eeba6f9108db74418063fba522ed3ef1c27ae95
ntent.java
4df142c4e942f47225abd6810b9034567fe3e75f 13-Dec-2011 Dianne Hackborn <hackbod@google.com> am a1279586: Merge "SDK only: now that support lib is in SDK, we can link to it." into ics-mr1

* commit 'a1279586dd1a866dd58d669aa0980d71f6c589d9':
SDK only: now that support lib is in SDK, we can link to it.
df3c49ee2e00f85599348473951a208be9397829 13-Dec-2011 Dianne Hackborn <hackbod@google.com> am 2ad8a89b: am a1279586: Merge "SDK only: now that support lib is in SDK, we can link to it." into ics-mr1

* commit '2ad8a89b4b55f1cf8994e5b044d496d889839403':
SDK only: now that support lib is in SDK, we can link to it.
7871badd5d4d29d80207e9cc09a0681f26a151d0 13-Dec-2011 Dianne Hackborn <hackbod@google.com> SDK only: now that support lib is in SDK, we can link to it.

Update some of the platform documentation to directly link to
relevent support lib docs. Yay!

Also improve BroadcastReceiver documentation to more clearly
discussion security around receivers, and how the support
lib's LocalBroadcastManager can help.

Change-Id: I563c7516d5fbf91ab884c86bc411aff726249e42
roadcastReceiver.java
oader.java
7c918ad493392ccb9cc24d3f2f35cab55916f582 07-Dec-2011 Joe Malin <jmalin@google.com> am 3eebad61: am 3744d1fa: am 9e2cf49f: Merge "DOC CHANGE: Add Content URI ref doc" into ics-mr0

* commit '3eebad61b4df7f5b4c898545aa7ec9076bc077d0':
DOC CHANGE: Add Content URI ref doc
7659e295a50c68581f685b91aeb4f63407ef3d9e 07-Dec-2011 Joe Malin <jmalin@google.com> am 3744d1fa: am 9e2cf49f: Merge "DOC CHANGE: Add Content URI ref doc" into ics-mr0

* commit '3744d1faf582214132b9ba000d54cdbf44425113':
DOC CHANGE: Add Content URI ref doc
3744d1faf582214132b9ba000d54cdbf44425113 07-Dec-2011 Joe Malin <jmalin@google.com> am 9e2cf49f: Merge "DOC CHANGE: Add Content URI ref doc" into ics-mr0

* commit '9e2cf49fa360e70b33a870e9ae0b3eec11752972':
DOC CHANGE: Add Content URI ref doc
3b282fae37c9897514f5bb7a16aa0b80dd65dd1f 06-Dec-2011 Jason Simmons <jsimmons@google.com> resolved conflicts for merge of 0c0120ef to ics-aah

Change-Id: If1f39ff160b4305ef057d50bb1f01d2c45f1579d
deb86c63c33f766b1a7fd6916f56b757d40803b1 06-Dec-2011 Dianne Hackborn <hackbod@google.com> am ec42750e: am 0c0120ef: Merge "Fix issue #5714517: App shortcuts can result in bad task intents" into ics-mr1

* commit 'ec42750e4d0e695515d078fb1f222c99a705fd93':
Fix issue #5714517: App shortcuts can result in bad task intents
0c0120efa2dedaf25ae789bced5a3f9fa33c32bb 06-Dec-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #5714517: App shortcuts can result in bad task intents" into ics-mr1
f5b8671c340f189c50b41c53622f979b6d5e0a57 06-Dec-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5714517: App shortcuts can result in bad task intents

New API to let you build an Intent whose base configuration is correct,
but has an additional "selector" to pick out the specific app that you
would like launched.

Change-Id: Ide9db6dc60e2844b7696cfe09b28337fe7dd63db
ntent.java
e7851ea6121bf8c6d89f16c27a5c704f8e8a5c59 06-Dec-2011 Fred Quintana <fredq@google.com> am f3f7d65b: am b5f2dfbc: Merge "By default ICS allows two syncs to run in parallel. Make it only do one at a time for devices that don\'t have much RAM as defined by the call ActivityManager.isLargeRAM()" into ics-mr1

* commit 'f3f7d65b650dec7f4eacefa1f0174fadfce5ec6e':
By default ICS allows two syncs to run in parallel. Make it only do one at a time for devices that don't have much RAM as defined by the call ActivityManager.isLargeRAM()
9a3e16ffa8b37b9336c6eab85d5d296b1ffe4b9c 06-Dec-2011 Fred Quintana <fredq@google.com> am b5f2dfbc: Merge "By default ICS allows two syncs to run in parallel. Make it only do one at a time for devices that don\'t have much RAM as defined by the call ActivityManager.isLargeRAM()" into ics-mr1

* commit 'b5f2dfbc221d3dc799232e0ada3b6621d3d4d597':
By default ICS allows two syncs to run in parallel. Make it only do one at a time for devices that don't have much RAM as defined by the call ActivityManager.isLargeRAM()
33e446941722b0e31a453399e92e0e82697f05aa 06-Dec-2011 Fred Quintana <fredq@google.com> By default ICS allows two syncs to run in parallel. Make it only
do one at a time for devices that don't have much RAM as
defined by the call ActivityManager.isLargeRAM()

Bug: 5713224
Change-Id: Ic8c42103f4031e1d7b1db797edcbbd7f7bac1387
yncManager.java
1d7d0af9a1ee32f30018ed4892de58a83fedc067 03-Dec-2011 Joe Malin <jmalin@google.com> DOC CHANGE: Add Content URI ref doc

Change-Id: I859b4bdc9d78f1f5e5769fe3fee421af2ad85778
ontentUris.java
d4b1c4424d1d27c0a294e9360a3a489ef5f62dd1 29-Nov-2011 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of be6ab576 to ics-aah

Change-Id: I87c5679c46a58e233da30e73f068bed2af627ab3
0475f82c95e6e9657580820b16b0e48d814119b5 29-Nov-2011 Jeff Brown <jeffbrown@google.com> am c339fe30: am be6ab576: Merge "Fix application launch shortcuts." into ics-mr1

* commit 'c339fe302bc5083f0a110569eec06676be511088':
Fix application launch shortcuts.
6651a638348c15e89e265b0a53c775cac9beafa2 28-Nov-2011 Jeff Brown <jeffbrown@google.com> Fix application launch shortcuts.

Improved quick launch bookmarks to support category-based shortcuts
instead of hardcoding package and class names for all apps.

Added a set of Intent categories for typical applications on the
platform.

Added support for some of the HID application launch usages to
reduce reliance on quick launch for special purpose keys. Some
keyboard vendors have hardcoded launch keys that synthesize
"Search + X" type key combos. The goal is to encourage them
to stop doing this by implementing more of HID.

Bug: 5674723
Change-Id: I79f1147c65a208efc3f67228c9f0fa5cd050c593
ntent.java
c45fa2a823e9ddcdc94be609dcd568e67c56ab56 12-Nov-2011 Christopher Tate <ctate@google.com> am 0fbd9eba: am c51bb4d3: Merge "XML parsing optimizations" into ics-mr1

* commit '0fbd9ebab891530290b4d52fd5e81f6b4d7278d8':
XML parsing optimizations
432c210fe3bcd18fa782a5240d4b4b93e8a9ce64 12-Nov-2011 Christopher Tate <ctate@google.com> am c51bb4d3: Merge "XML parsing optimizations" into ics-mr1

* commit 'c51bb4d394dd47e48abc8a6d9cbc740f821546ff':
XML parsing optimizations
60201f2b4ee3fcf222310b5bf91d1d150470cab7 12-Nov-2011 Christopher Tate <ctate@google.com> XML parsing optimizations

Traceview showed approximately 10% of total parse time inside the
synthetic 'trampoline' methods generated to provide inner classes
with access to their outer class's private fields. The bottleneck
in this particular case is in XmlBlock and its inner class Parser.

Making the bottlneck outer-class members and methods package-scope
instead of private removes that 10% overhead being spent within
these access trampolines.

Traceview tends to overemphasize the significance of very small
methods such as these trampolines. That said, the measured speed
gain on the ParseLargeXmlResFg op due to this patch is between
5% and 6%.

Change-Id: Ia0e3ae5408d1f9992b46e6e30dd2407090379b07
es/XmlBlock.java
88b15749d223960b5d97ac998e33b1af4034ca85 03-Nov-2011 Kenny Root <kroot@google.com> am e24ac4b2: Merge "Update GET_UNINSTALLED_PACKAGES flag documentation" into ics-mr1

* commit 'e24ac4b219a582f1a99465551b1fd76345553b22':
Update GET_UNINSTALLED_PACKAGES flag documentation
44eed9f6a99c778faa6a0810e9138016b746612c 03-Nov-2011 Kenny Root <kroot@google.com> am e24ac4b2: Merge "Update GET_UNINSTALLED_PACKAGES flag documentation" into ics-mr1

* commit 'e24ac4b219a582f1a99465551b1fd76345553b22':
Update GET_UNINSTALLED_PACKAGES flag documentation
685f490eff35e33e435e455e9b784c9d70083e49 03-Nov-2011 Kenny Root <kroot@google.com> Update GET_UNINSTALLED_PACKAGES flag documentation

Change-Id: I483b84f07836e6ad96c75e7dd3a86633cb29db22
m/PackageManager.java
9e9a64e87549cd668939c8edfb71b2d7866f5e74 02-Nov-2011 Dianne Hackborn <hackbod@google.com> am f136aa34: Merge "Various performance and other work." into ics-mr1

* commit 'f136aa341abaaf7fd6f7632d41a30b2989d93985':
Various performance and other work.
88175571f23ca7cff6d21cd1d5d6345cfacaa84a 01-Nov-2011 Dianne Hackborn <hackbod@google.com> am f136aa34: Merge "Various performance and other work." into ics-mr1

* commit 'f136aa341abaaf7fd6f7632d41a30b2989d93985':
Various performance and other work.
2c84cfc001fb92a71811bf7384b7f865ff31ff9d 31-Oct-2011 Dianne Hackborn <hackbod@google.com> Various performance and other work.

- IME service now switches between visible and perceptible depending on
whether it is being showm, allowing us to more aggressively free its
memory when not shown.

- The activity display time is no longer delayed by the activity
transition animation.

- New -R (repeat) option for launching activities with the am command.

- Improved some documentation on Loader to be clear about some methods
that apps should not normally call.

- FrameworkPerf test now allows you to select individual tests to run.

Change-Id: Id1f73de66dc93d63212183958a72119ad174318b
ontext.java
oader.java
92537e6ff21d4b20738fae851c2174ea568eb843 31-Oct-2011 Ed Heyl <ed@google.com> merged by hand (services/java/com/android/server/PowerManagerService.java needs to be reviewed)

Change-Id: I86d1111d86cd1646ebc8a88d58aa393089e9f928
eba186448ff048f8fc1ba596c9779e8069a93128 31-Oct-2011 Joe Fernandez <joefernandez@google.com> am 74b2b954: am 09848bc8: Merge "docs: add developer guide cross references, Project ACRE, round 3" into ics-mr0

* commit '74b2b9547329a0b05e0bd5701057696007b854bb':
docs: add developer guide cross references, Project ACRE, round 3
f82621dc3c62db55f8dce71e5d835cae1967bafb 31-Oct-2011 Dianne Hackborn <hackbod@google.com> am e02c88af: Work on process management.

* commit 'e02c88af7935c72fb90a478375e61e4a94465587':
Work on process management.
74b2b9547329a0b05e0bd5701057696007b854bb 29-Oct-2011 Joe Fernandez <joefernandez@google.com> am 09848bc8: Merge "docs: add developer guide cross references, Project ACRE, round 3" into ics-mr0

* commit '09848bc89de999416e2de82a7693b2deec6bf802':
docs: add developer guide cross references, Project ACRE, round 3
e02c88af7935c72fb90a478375e61e4a94465587 28-Oct-2011 Dianne Hackborn <hackbod@google.com> Work on process management.

Introduce a new concept of "B" services. All running services are
classified as either A or B. B services are later in the LRU list.
Their oom_adj is after the home app. This allows us to better pick
services to kill based on how long they have running, and should
reduce the amount that we end up killing the home app.

This temporarly turns on a debug log when the oom_adj of a process
is changed. Sorry, I know it is noisy. This is needed to try to
track down why some processes are being killed.

Also add a flag to the SyncManager's service binding to allow the
syncing process to be more aggressively killed if it has done UI.
This is to address cases we have seen where sync is causing an 80MB
gmail process to be kept around, preventing other process from running.
Now what will happen is that the syncing process will aggressively be
killed by the system, and can then be restarted in a much lighter-weight
state.

Do a little tweak in the power manager to allow us to still do smooth
brightness changes even when the fancy TV off animation is in use.

And get rid of a debug log in the window manager that was accidentally
left in.

Change-Id: I64a8eeaaa1f096bab29c665fbff804c7f1d029e2
yncManager.java
61fd1e8d8c3ccf2d6b7d4af1c19e8f0988d5a1ec 26-Oct-2011 Joe Fernandez <joefernandez@google.com> docs: add developer guide cross references, Project ACRE, round 3

Change-Id: I6125315ecdf0f78dd947c514a9944729d723e95d
haredPreferences.java
e0ded6710a9fe7cc4f1efd7dfe7af7de42e1b0f2 30-Aug-2011 Mike Lockwood <lockwood@android.com> 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.

Change-Id: I8d75ca7d6592223ea6c47f8a17fa180dfed1aad0
Signed-off-by: Mike Lockwood <lockwood@android.com>
ontext.java
ca756bfd97d668c8e865c6247ef923b0aad9b065 26-Oct-2011 Jeff Hamilton <jham@android.com> Clarify the docs around the activityInfo field.

Change-Id: Id9a5ac610d564165073cb60e5b631b1cba3e8187
m/ResolveInfo.java
12b3e39ecb56c35fc524fde62c26ed44a4b35c26 21-Oct-2011 Dianne Hackborn <hackbod@google.com> am 4bbd71a6: Merge "Fix issue #5228934: IME shows up on boot, or when digits screen is tapped" into ics-mr0

* commit '4bbd71a6b2f4957f4778da13861ec03d30afbee7':
Fix issue #5228934: IME shows up on boot, or when digits screen is tapped
0836c7cb98dd3ff1ef0379dcb97be8b315fed7eb 21-Oct-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5228934: IME shows up on boot, or when digits screen is tapped

Activity aliases weren't propagating the softInputMode from the original
activity.

Change-Id: I47534e6c9a0f94bb6eb3fd2186ba9ffc8d583d08
m/PackageParser.java
3585a3dfc6824581e8b4b46bfa1207bb18fad0cf 19-Oct-2011 Dianne Hackborn <hackbod@google.com> am 47f8367a: Merge "Work on issue #5465917: Wakelock *overflow* held for very long times" into ics-mr0

* commit '47f8367ab79247501d5d204632a7797fa8a888e5':
Work on issue #5465917: Wakelock *overflow* held for very long times
c24ab866b0d46685f6ddd340b9c84375cf8d6831 19-Oct-2011 Dianne Hackborn <hackbod@google.com> Work on issue #5465917: Wakelock *overflow* held for very long times

- Fix ordering problem in sync manager that would cause its wake
locks to slightly appear in the system process when they should
be fully accounted against the app.
- Allow the system process to have more wake lock names in its
battery stats.
- In the bug report output, print totals of the wake locks for each
process, to make it easier to parse what is being printed for things
like the system process with a huge number of individual wake locks.

Change-Id: I3cf39330f22f3c51c11e65e4124150d73a7da2dd
yncManager.java
aac01f699f9f6ccf285bdec7e89ff864f180409d 15-Oct-2011 Jeff Brown <jeffbrown@google.com> Merge "Add a CrossProcessCursorWrapper. Bug: 5220669"
471fa9d10b4fa4da070c0ffb5fa5ea1354c8e6b8 14-Oct-2011 Joe Fernandez <joefernandez@google.com> Merge "docs: add developer guide cross-references, Project ACRE, Round 2" into ics-mr0
558459fe85f56f29a6ed6a4d0adb4a0bd6665884 14-Oct-2011 Joe Fernandez <joefernandez@google.com> docs: add developer guide cross-references, Project ACRE, Round 2

Change-Id: I39a534ae3a2a34b4dabc333a09961012ef911d3e
ontentProvider.java
ontentResolver.java
22dad40d3e8ce54a00f337ea06b9b0bbfbd3fd6b 14-Oct-2011 Kenny Root <kroot@google.com> Merge "Add support for signature in getPackageArchiveInfo" into ics-mr0
6ccd41265db1a6bfb3c54d64aba2df67d373af4f 13-Oct-2011 Kenny Root <kroot@google.com> Add support for signature in getPackageArchiveInfo

GET_SIGNATURES was indicated as supported, but it never actually did
anything.

This is needed for the package verifier development sample.

Change-Id: I09ca6790cd8bf9435aa208c0711359b4d76fb278
m/PackageManager.java
825c5132bff21e72c1448241f4c6868563c8d624 13-Oct-2011 Jeff Brown <jeffbrown@google.com> Add a CrossProcessCursorWrapper.
Bug: 5220669

The CrossProcessCursorWrapper is a useful building block
for wrapping cursors that will be sent to processes remotely.
It can also transform normal Cursors into CrossProcessCursors
transparently.

The new class fixes common performance problems and bugs
that applications have encountered when implementing
ContentProviders.

Change-Id: Icc59fec10add3f7d8cfbd0495447860c1872c752
ontentResolver.java
cc21cc017ba02338a78eca00af6a1a0d3f7ce5bf 13-Oct-2011 Daniel Lehmann <lehmannd@google.com> Merge "Allow clearing out the source bounds" into ics-mr0
a5b58df09753bd13744381c54c8b2663eb4f256f 13-Oct-2011 Daniel Lehmann <lehmannd@google.com> Allow clearing out the source bounds

Change-Id: Id49f4a3ac397cf17c5704d298b6a9a376f6a5c23
ntent.java
0cde89f5f025b7826be009ebb9673b970e180e32 10-Oct-2011 Jeff Brown <jeffbrown@google.com> Use ashmem for CursorWindows.
Bug: 5332296

The memory dealer introduces additional delays for reclaiming
the memory owned by CursorWindows because the Binder object must
be finalized. Using ashmem instead gives CursorWindow more
direct control over the lifetime of the shared memory region.

The provider now allocates the CursorWindows and returns them
to clients with a read-only protection bit set on the ashmem
region.

Improved the encapsulation of CursorWindow. Callers shouldn't
need to care about details like how string fields are allocated.

Removed the compile-time configuration of string and numeric
storage modes to remove some dead weight.

Change-Id: I07c2bc2a9c573d7e435dcaecd269d25ea9807acd
ontentProviderNative.java
58f42a59bda3bc912d0d2f81dc65a9d31d140eaa 10-Oct-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5405788: Device continuously opening and closing...

...the "Complete action using" dialog

When an application goes idle, it sends back to the activity manager
the configuration it last used, to make sure the two don't get out
of sync. Fix a bunch of edge cases here in dealing with that, and
be sure to also send the current configuration when launching an
activity so the client is always up-to-date when launching.

Also a small fix to not show the upgrading dialog during first boot.

Change-Id: I14ed366a87cd689d1c78787369e052422290ac6f
m/IPackageManager.aidl
184b44e79406e5f7e4f68673277c9637c6451b55 10-Oct-2011 Jeff Brown <jeffbrown@google.com> Merge "Fix ownership of CursorWindows across processes. Bug: 5332296"
222b92a7322346e544188ca040bef1e27ab2b71a 10-Oct-2011 Jeff Brown <jeffbrown@google.com> Merge "Implement CloseGuard in ContentResolver."
326e8748f082f3c794fcfcd7c87c688a0564a964 10-Oct-2011 Jeff Brown <jeffbrown@google.com> Merge "Clean up handrolled Binder proxies. Bug: 5332296"
d2183654e03d589b120467f4e98da1b178ceeadb 09-Oct-2011 Jeff Brown <jeffbrown@google.com> Fix ownership of CursorWindows across processes.
Bug: 5332296

Ensure that there is always an owner for each CursorWindow
and that references to each window are acquired/released
appropriately at all times.

Added synchronization to CursorToBulkCursorAdaptor to
prevent the underlying Cursor and CursorWindow from being
remotely accessed in ways that might violate invariants,
resulting in leaks or other problems.

Ensured that CursorToBulkCursorAdaptor promptly releases
its references to the Cursor and CursorWindow when closed
so they don't stick around longer than they should, even
if the remote end hangs onto the IBulkCursor for some reason.

CursorWindow respects Parcelable.FLAG_WRITE_RETURN_VALUE
as an indication that one reference to the CursorWindow is
being released. Correspondingly, CursorToBulkCursorAdaptor
acquires a reference to the CursorWindow before returning
it to the caller. This change also prevents races from
resulting in the transfer of an invalid CursorWindow over
the wire.

Ensured that BulkCursorToCursorAdaptor promptly releases
its reference to the IBulkCursor when closed and throws
on attempts to access the cursor while closed.

Modified ContentProviderNative to handle both parts of
the wrapping and unwrapping of Cursors into IBulkCursors.
This makes it a lot easier to ensure that the right
things happen on both ends. Also, it turns out that
the only caller of IContentProvider.bulkQuery was
ContentProviderNative itself so there was no need
to support bulkQuery on ContentProviderProxy and it was
just getting in the way.

Implement CloseGuard on CursorWindow.

Change-Id: Ib3c8305d3cc62322f38a06698d404a2989bb6ef9
ontentProvider.java
ontentProviderNative.java
ContentProvider.java
229edbc38dedbd58fb058da47fc3108276e61de4 10-Oct-2011 Dianne Hackborn <hackbod@google.com> Calling close() outside of the main thread breaks stuff.

Too dangerous to fix at this point.

Change-Id: I7de5bfecd757fbae635b02c2c2d9ba7ce3bcb435
ursorLoader.java
baaf8c3f55d9d95b9d2cd9279e2ce1725da0dc52 09-Oct-2011 Jeff Brown <jeffbrown@google.com> Implement CloseGuard in ContentResolver.

Also, don't try to close the cursor from the finalizer,
it just won't work because quite probably the Binder underneath
it has already been finalized or is about to be.

Change-Id: I6363cd30f32abe15412948d126e0bcc5f62943c5
ontentResolver.java
df6611d8c0cd69c3dcb93462eb138e0bbf137b88 09-Oct-2011 Jeff Brown <jeffbrown@google.com> Clean up handrolled Binder proxies.
Bug: 5332296

We can't replace these with AIDL generated proxies just yet, but
at least we can make them a little more conformant.

Change-Id: I1814f76d0f9c5e44a7fd85a12b2e3c2b7e3c9daa
ontentProviderNative.java
421fa2744556d6483007bc2a6a1e4030811142f9 09-Oct-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5418999: [From My Phone] - ANR when navigating back from OneUp view

Close cursors asynchronously.

Change-Id: I32c106d26c0443710789344bf823c288eaf31db5
ursorLoader.java
cac15eb21cab68e5b76fe06f9aff273978c92054 04-Oct-2011 Joe Fernandez <joefernandez@google.com> Merge "docs: add developer guide cross-references, Project ACRE"
b54e7a3d9f60ac605f404f9eb3c5e92ca51bbd23 04-Oct-2011 Joe Fernandez <joefernandez@google.com> docs: add developer guide cross-references, Project ACRE

Change-Id: I5df1c4e13af67ff4c4a5b22f3cb1247bf0103b09
roadcastReceiver.java
ntent.java
ntentFilter.java
oader.java
62abf34d0dce0deb017b18beef3d8f73bd90981a 04-Oct-2011 Alon Albert <aalbert@google.com> Merge "Update dumpsys output"
9ecebbfbf768fd63e9a6c9a09c86d81c7737ee2d 29-Sep-2011 Dianne Hackborn <hackbod@google.com> Add mechanism for Parcel to not allow FDs to be written to it.

This is to help implement issue #5224703.

Change-Id: I026a5890495537d15b57fe61227a640aac806d46
roadcastReceiver.java
ntent.java
bf976ba6576a8ebf0e25f10eca83cb8038578510 03-Oct-2011 Alon Albert <aalbert@google.com> Update dumpsys output

After using the new format for a few days, I decided it's better to ahve the auth & acct
info on every row because we will sometimes grep the data and won't see it if the auth/acct
is ommited.

Also added the "time since last sync" to every row. This is also very useful.

Detailed Statistics (Recent history): 31 (# of times) 119s (sync time)
-------------------------------------------------------------------------------------
subscribedfeeds : 8/25% 17s/14%
aagmtest2@gmail.com/com.google : 5/16% 16s/13%
aagmtest1@gmail.com/com.google : 3/9% 1s/0%
-------------------------------------------------------------------------------------
com.android.calendar : 5/16% 10s/8%
aagmtest2@gmail.com/com.google : 3/9% 0s/0%
aagmtest1@gmail.com/com.google : 2/6% 9s/8%
-------------------------------------------------------------------------------------
com.google.android.apps.books : 3/9% 26s/22%
-------------------------------------------------------------------------------------
com.android.contacts : 3/9% 14s/11%
aagmtest1@gmail.com/com.google : 2/6% 9s/7%
aagmtest2@gmail.com/com.google : 1/3% 5s/4%
-------------------------------------------------------------------------------------
com.android.browser : 3/9% 12s/10%
-------------------------------------------------------------------------------------
com.google.android.music.MusicContent : 3/9% 7s/6%
-------------------------------------------------------------------------------------
gmail-ls : 2/6% 12s/10%
-------------------------------------------------------------------------------------
com.google.android.apps.plus.content.EsGooglePhotoProvider : 2/6% 1s/0%
aagmtest2@gmail.com/com.google : 1/3% 1s/0%
aagmtest1@gmail.com/com.google : 1/3% 0s/0%
-------------------------------------------------------------------------------------
com.google.android.apps.plus.content.EsProvider : 1/3% 10s/9%
-------------------------------------------------------------------------------------
com.google.android.gallery3d.GooglePhotoProvider : 1/3% 5s/5%
-------------------------------------------------------------------------------------

Recent Sync History
#1 : 2011-10-03 13:26:41 SERVER 0.0s aagmtest2@gmail.com/com.google com.android.calendar
#2 : 2011-10-03 13:26:40 LOCAL 1.8s aagmtest2@gmail.com/com.google subscribedfeeds
#3 : 2011-10-03 13:26:40 LOCAL 0.1s aagmtest1@gmail.com/com.google subscribedfeeds
#4 : 2011-10-03 13:26:37 SERVER 0.1s 4 aagmtest2@gmail.com/com.google com.android.calendar
#5 : 2011-10-03 13:26:37 LOCAL 0.1s aagmtest2@gmail.com/com.google com.google.android.apps.books
#6 : 2011-10-03 13:26:30 SERVER 0.9s 7 aagmtest2@gmail.com/com.google com.google.android.apps.books
#7 : 2011-10-03 13:26:25 SERVER 1.1s aagmtest2@gmail.com/com.google gmail-ls
#8 : 2011-10-03 13:26:13 SERVER 11.8s 11 aagmtest2@gmail.com/com.google gmail-ls
#9 : 2011-10-03 13:26:08 SERVER 5.0s aagmtest2@gmail.com/com.google com.android.contacts
#10 : 2011-10-03 13:26:08 SERVER 0.7s 29 aagmtest2@gmail.com/com.google com.android.calendar
#11 : 2011-10-03 13:26:07 SERVER 0.7s aagmtest2@gmail.com/com.google com.android.browser
#12 : 2011-10-03 13:26:04 SERVER 3.0s 2 aagmtest2@gmail.com/com.google com.android.browser
#13 : 2011-10-03 13:26:04 SERVER 25.9s 25 aagmtest2@gmail.com/com.google com.google.android.apps.books

Change-Id: I8da004f469d136fd9a86310b262eba61197fd0e7
yncManager.java
d0e8fb431ac9c1fcc2f5b0eba884d29fc57a4cf1 28-Sep-2011 Mathew Inwood <mathewi@google.com> Merge "Document thrown IllegalArgumentException."
e0bde33e0d2b3ffb7918a5818a387773d4aa3e71 22-Sep-2011 Alon Albert <aalbert@google.com> Add Detailed Sync Stats Section
Also improve history formatting
Here's a smaple of what it looks like:

Detailed Statistics (Recent history): 20 40s
-------------------------------------------------------------------------------------
com.android.contacts : 9/45% 11/27%
aagmtest1@gmail.com/com.google : 3/15% 4/11%
aagmtest2@gmail.com/com.google : 3/15% 3/9%
aalbert@google.com/com.google : 3/15% 2/6%
-------------------------------------------------------------------------------------
gmail-ls : 6/30% 22/56%
-------------------------------------------------------------------------------------
com.android.calendar : 3/15% 5/14%
aagmtest1@gmail.com/com.google : 1/5% 4/12%
aagmtest2@gmail.com/com.google : 1/5% 0/0%
aalbert@google.com/com.google : 1/5% 0/0%
-------------------------------------------------------------------------------------
com.google.android.apps.plus.content.EsGooglePhotoProvider : 2/10% 0/1%
aagmtest1@gmail.com/com.google : 1/5% 0/1%
aagmtest2@gmail.com/com.google : 1/5% 0/0%
-------------------------------------------------------------------------------------

Recent Sync History
#1 : 2011-09-23 15:18:35 SERVER 0.8s aalbert@google.com/com.google gmail-ls
#2 : 2011-09-23 15:17:56 SERVER 1.3s 00:38
#3 : 2011-09-23 15:17:52 SERVER 4.6s 00:04
#4 : 2011-09-23 15:17:45 SERVER 1.7s 00:06
#5 : 2011-09-23 15:16:51 LOCAL 0.8s aagmtest2@gmail.com/com.google com.android.contacts
#6 : 2011-09-23 15:16:51 LOCAL 0.7s aalbert@google.com/com.google com.android.contacts
#7 : 2011-09-23 15:16:50 LOCAL 0.7s aagmtest1@gmail.com/com.google com.android.contacts
#8 : 2011-09-23 15:15:35 LOCAL 0.7s aalbert@google.com/com.google com.android.contacts
#9 : 2011-09-23 15:15:34 LOCAL 0.8s aagmtest2@gmail.com/com.google com.android.contacts
#10 : 2011-09-23 15:15:33 LOCAL 1.9s aagmtest1@gmail.com/com.google com.android.contacts
#11 : 2011-09-23 15:14:37 LOCAL 1.3s aalbert@google.com/com.google com.android.contacts
#12 : 2011-09-23 15:14:35 LOCAL 2.0s aagmtest1@gmail.com/com.google com.android.contacts
#13 : 2011-09-23 15:14:32 LOCAL 2.2s aagmtest2@gmail.com/com.google com.android.contacts
#14 : 2011-09-23 15:13:41 SERVER 1.3s aalbert@google.com/com.google gmail-ls
#15 : 2011-09-23 15:13:34 LOCAL 0.3s aalbert@google.com/com.google com.android.calendar
#16 : 2011-09-23 15:13:34 LOCAL 0.4s aagmtest2@gmail.com/com.google com.android.calendar
#17 : 2011-09-23 15:13:33 SERVER 0.1s aagmtest2@gmail.com/com.google com.google.android.apps.plus.content.EsGooglePhotoProvider
#18 : 2011-09-23 15:13:33 SERVER 0.5s aagmtest1@gmail.com/com.google com.google.android.apps.plus.content.EsGooglePhotoProvider
#19 : 2011-09-23 15:13:29 LOCAL 4.9s aagmtest1@gmail.com/com.google com.android.calendar
#20 : 2011-09-23 15:13:28 SERVER 13.1s aalbert@google.com/com.google gmail-ls

Change-Id: Idc904e2e18a373b6d2d10af65b02683c11fd8d90
yncManager.java
1b9f8d92a934188eb200647025bffaf90469ee55 26-Sep-2011 Mathew Inwood <mathewi@google.com> Document thrown IllegalArgumentException.

Change-Id: I502f91e3c1130c14ad8f67934bf52a7206de302f
m/PackageManager.java
05ca4c90644921df9193d92b2abdc81ef77e4a62 15-Sep-2011 Kenny Root <kroot@google.com> Allow non-required package verifiers

* Verifiers can be specified in the AndroidManifest.xml

* Those verifiers can respond to the new Intent action

* PackageManager API for those verifiers: verifyPendingInstall

Change-Id: I4892bce2e6984871e6e93c60a1ca0dae145f5df5
m/PackageInfoLite.java
m/PackageManager.java
m/PackageParser.java
m/Signature.java
m/VerifierInfo.aidl
m/VerifierInfo.java
a982ad19d2aee54f714fa3ad9ee4ddbac08dc0fe 23-Sep-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #5173952: Opening a Notification From Lock Screen..."
90c52de28691ca0bbbf7c039ef20f85ce46882cc 23-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5173952: Opening a Notification From Lock Screen...

...Should Skip Unsecure Lockscreen (ICS)

Also while I am in there, clean up logging of intent objects to include
even less sensitive information, while showing the true Intent in dump
output (since apps can't get to that).

Change-Id: I35fed714645b21e4304ba38a11ebb9c4c963538e
ntent.java
e797ed6a74593630219faf7f0ba5dc8235586bce 23-Sep-2011 Scott Main <smain@google.com> docs: a few additions and revisions to action bar docs

Change-Id: I12c24e5d4ed49d8f9822050d330f617bd614b7b9
m/ActivityInfo.java
3a9b5fbb97e65019abec97f172b4cbf2100d1225 20-Sep-2011 Kenny Root <kroot@google.com> Unhide new PackageManager APIs for API 14

Change-Id: I83110285ccee39a4cd872a1c2af8357f541833d4
ntent.java
m/IPackageManager.aidl
m/PackageManager.java
c11bc8d22405458cd942e38e71ce1a837ed38c9e 14-Sep-2011 Kenny Root <kroot@google.com> Be more forgiving in parsing verifier IDs

RFC 4648's Base32 is made to be forgiving for users doing manual entry
of the digits. For this reason we want to be able to parse lowercase
letters as uppercase and number 0 (zero) as letter O along with number
1 (one) as letter I.

Cherry-pick into ics-factoryrom

Change-Id: I149d8e947ff8b36305c1e61d8a1d80ff0b317cda
m/VerifierDeviceIdentity.java
c924fbd6933f6a96588b6e78d385082155cfd236 14-Sep-2011 Kenny Root <kroot@google.com> Merge "Add verifier device identity"
651cdfcbac6245f570475991588ddc2d30265e8d 07-Sep-2011 Irfan Sheriff <isheriff@google.com> Unhide wifi p2p API

Bug: 5247957
Change-Id: Id93e30c0cb60f361ba13a840de8f843415777336
ontext.java
0aaa0d931716e9f57a1d84d795fab2df75092756 13-Sep-2011 Kenny Root <kroot@google.com> Add verifier device identity

This adds a special device identifier that is usable only for device
validation. The user will be presented with this number encoded in
easily-transcribable Base32 in the Developer options of Settings.

Change-Id: I4843f55ee90d689a51d0269b22454ca04c1be7ec
m/ActivityInfo.aidl
m/ApplicationInfo.aidl
m/ConfigurationInfo.java
m/FeatureInfo.aidl
m/IPackageDataObserver.aidl
m/IPackageManager.aidl
m/IPackageStatsObserver.aidl
m/InstrumentationInfo.aidl
m/ManifestDigest.aidl
m/PackageInfo.aidl
m/PackageInfoLite.aidl
m/PackageManager.java
m/PackageStats.aidl
m/PackageStats.java
m/ParceledListSlice.aidl
m/PermissionGroupInfo.aidl
m/PermissionInfo.aidl
m/ProviderInfo.aidl
m/ResolveInfo.aidl
m/ServiceInfo.aidl
m/Signature.aidl
m/VerifierDeviceIdentity.aidl
m/VerifierDeviceIdentity.java
ab0f485e64418eb22f0a1d89d7064902b381e9c2 13-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix problems where we were allocating TypedArray when not needed.

Fixes up some recycling of TypedArray objects to reduce the
number we need to allocate during inflation etc.

Change-Id: I948dccc052997779001eaa99db2a710b04be01ae
es/Resources.java
83f9dfe0f085a01ebaa9f3ba6205af20e20bbe78 13-Sep-2011 Dianne Hackborn <hackbod@google.com> Merge "Add boot mode where only "core apps" are started."
d2509fd83597595914ef0627685e917380863eb6 12-Sep-2011 Dianne Hackborn <hackbod@google.com> Add boot mode where only "core apps" are started.

A core app is one that has coreApp="true" in its manifest tag.

The system can successfully boot (though a little painfully) with
only framework-res.apk, SettingsProvider.apk, SystemUI.apk,
DefaultContainerService.apk, and Launcher2.apk set as core apps.

Currently this boot mode is always turned off.

Change-Id: Ieaa4a8031c2c391a12996aa8d8b1d65fc2b09d6b
m/PackageParser.java
87b146625a2daa7eaa606e1975e94a9a579af8b8 12-Sep-2011 Fred Quintana <fredq@google.com> Revert "Make the SyncManager timeout syncs if it takes too long to bind to them."

This reverts commit bf3c634dc5bea1d6188efaba159b1ecbc038a4f7

Bug: 5290505
Change-Id: I11a681b48360f5c200a0602c4daf30ae82b4209c
yncManager.java
16e1678df48f6de4eb602f9cd18baa1e40b1181f 09-Sep-2011 Fred Quintana <fredq@google.com> Merge "Make the SyncManager have wakelocks per account, not per account type, otherwise the parallel sync behavior of gmail can cause the first account to finish to release the wakelock that is used for the other account, which will result in the device going to sleep before the sync is complete."
fdb2dca4546742803617c370c2fb823b0ab63a07 09-Sep-2011 Fred Quintana <fredq@google.com> Make the SyncManager have wakelocks per account, not per account type,
otherwise the parallel sync behavior of gmail can cause the first
account to finish to release the wakelock that is used for the other
account, which will result in the device going to sleep before the
sync is complete.

Change-Id: I7658465ca0956dfd9bb341de03126869e6217d31
yncManager.java
795b6490fef91376698f01476e76af7fb00d3b2c 08-Sep-2011 Subir Jhanb <subir@google.com> Changing the timeout for detecting syncs that are taking too long to bind
BUG: 5222661

Change-Id: I9406980e26a4ee30ac6d5470bc97928e3dc74d24
yncManager.java
905577f6345c014fc2489a8068ea967ba8c18012 08-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5263361: Browser instance not created in application picker

The resolver activity was hiding the following activity from recents.

Also some other fixes: a little better memory use debugging, removed
some unneeded code from window manager, moved some system activities
into their own process, added some more running process information for
manage apps.

Change-Id: I66687d16989ff965d524b92dc360f37c19199717
ontext.java
1a58dce0cc9ae772c0025ecadac1fe3b3a06e1a0 07-Sep-2011 Irfan Sheriff <isheriff@google.com> Merge "Add feature definition for Wi-Fi Direct"
45b8b464992bbfa9bd2a587f05c1e1723aedcecd 07-Sep-2011 Irfan Sheriff <isheriff@google.com> Add feature definition for Wi-Fi Direct

Bug: 5267396
Change-Id: I4f61b0afd1466420ab951f6d74ec444036772b21
m/PackageManager.java
9b44aaefc0c8c4aafd176c2fe5af86e098422b56 03-Sep-2011 Dianne Hackborn <hackbod@google.com> Some more preloaded drawables.

More to come.

Change-Id: I28393c6e52553e960d3a765ba793cfdbf36460ff
es/Resources.java
f705f788b5a4ba8c8b92bcd237534eb55c464f57 02-Sep-2011 Fred Quintana <fredq@google.com> Merge "Make the SyncManager timeout syncs if it takes too long to bind to them."
bf3c634dc5bea1d6188efaba159b1ecbc038a4f7 01-Sep-2011 Fred Quintana <fredq@google.com> Make the SyncManager timeout syncs if it takes too long to bind to them.

Bug: 5222661
Change-Id: Ia6b995744860a27d13ad1ee64fa06bef137b7731
yncManager.java
93d77b633e7888b425443f544b2732485adee45e 01-Sep-2011 David Brown <dab@google.com> Don't log PII when launching intents with "sms:" or "sip:" URIs

We were already redacting phone numbers from "tel:" and "smsto:" URIs.

Now, do that for "sms:" and "sip:" too, since those schemes are equally
likely to contain PII in the scheme-specific part.

TESTED: Received incoming call; selected "Respond via SMS" -> "Custom
message"; confirmed no PII in the system log.

Bug: 5244735
Change-Id: If2444c8901249aac9fd8e6b809d6da01db2e27c1
ntent.java
d32f27aec04dd91edf488f280ca609e0b55aec9e 26-Aug-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #5199577 TextView with android:password="true" is showing the "dots" on the left even if the password chars are RTL"
7810b5f8cffb3c2c98fd0df579f4da5a9ac6cc73 25-Aug-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5199577 TextView with android:password="true" is showing the "dots" on the left even if the password chars are RTL

- force TextView to LOCALE text heuristic when in "password" mode
- remove TEXT_LAYOUT_DIRECTION_UNKNOWN_DO_NOT_USE
- LocaleUtils.getLayoutDirectionFromLocale() returns "LTR" is locale is NULL or ROOT

Change-Id: I182c46aaf2d73c8b18967fffa230bfabec91ed06
es/Configuration.java
e6d60ecdf668499f003a81274f18cb57075eb65b 24-Aug-2011 Fred Quintana <fredq@google.com> add a way for the sync adapter to specify the activity that should
be invoked to reach a settings screen for that sync adapter

Bug: 5204776
Change-Id: I4641067c1f0710c51f2633241a8c87bc4d568af2
bstractThreadedSyncAdapter.java
yncAdapterType.java
yncAdaptersCache.java
661cd52e0e1d527132eb1cae604d3e64da7ec0cb 22-Aug-2011 Dianne Hackborn <hackbod@google.com> Add progress dialog for booting after an upgrade.

This introduces a new facility for code during the boot process
to display messages to the user through a progress dialog. This
is only for use when performing longer-than-usual post-upgrade
operations such as running dexopt on applications or upgrading
databases.

Change-Id: I0e78439ccec3850fb67872c22f235bf12a158dae
m/IPackageManager.aidl
d99b293d5f11b784d7406f5398bc654920b42482 18-Aug-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5180553: permission RECEIVE_BOOT_COMPLETED is not checked

Change-Id: I069673f2fbdf05e409c5e9ed99ccd1e15b4fe3ed
m/ResolveInfo.java
14ee9a117e9c307678ae71fda070687ac0409c29 17-Aug-2011 Alon Albert <aalbert@google.com> Merge "Check for periodic sync that is in the future Bug: 5164762 Change-Id: If578737bcfc4f83756f75c516657afdfc601caf1"
cc6edf378e32e607037cd8e69032efbe74917984 17-Aug-2011 Alon Albert <aalbert@google.com> Check for periodic sync that is in the future
Bug: 5164762
Change-Id: If578737bcfc4f83756f75c516657afdfc601caf1
yncManager.java
46d2545db48e6b8565ef7beedf6486ef5d7f4507 16-Aug-2011 Kenny Root <kroot@google.com> Merge "Infrastructure to support package verifier"
bcc2d40a11432736e94c1dd3c64abd1aac476c20 16-Aug-2011 Kenny Root <kroot@google.com> Merge "Throw exception on odd length Signatures"
5ab2157bf1f105b02d3e2913cd3a33f9765b74ca 27-Jul-2011 Kenny Root <kroot@google.com> Infrastructure to support package verifier

Allow a package verifier to approve or disapprove of a package being
installed.

Change-Id: Ibfea0f2b1aaa4ab1589a4e59f96144702b9bf94b
ntent.java
m/IPackageManager.aidl
m/PackageManager.java
6e90a362bc66cc67b1beae27b21d3f0148403b08 15-Aug-2011 Adam Powell <adamp@google.com> Fix bug 5159736 - Make DeviceDefault the default

Have the framework refer to the DeviceDefault themes for ICS apps that
don't explicitly request another theme.

Change-Id: I27dd0bbaa60f71df4f36e47d260f556d923ba075
es/Resources.java
7f9f99ea11051614a7727dfb9f9578b518e76e3c 11-Aug-2011 Xavier Ducrohet <xav@android.com> Make some methods/fields package private so that layoutlib can access them.

Change-Id: I4aeadfbaf8a4f6a459fa19937c21ac23d9e5fb64
es/AssetManager.java
es/Resources.java
es/TypedArray.java
e09cd7914c117e84bf78676d0e760c51aa147eb8 11-Aug-2011 Dianne Hackborn <hackbod@google.com> Merge "New broadcast telling when an app is fully removed."
f9abb405903cab1fcd379388a96925524840c607 11-Aug-2011 Dianne Hackborn <hackbod@google.com> New broadcast telling when an app is fully removed.

Change-Id: Ia516d826f302a01881fa92d9ffdc0adfbf669a4b
ntent.java
bcc954d772e8cd5ef640060cbc0be50e7e4778f2 09-Aug-2011 Kenny Root <kroot@google.com> Manifest digest stored during package scanning

This allows things that scanned an APK to pass a hash of the manifest to
others that would then be able to compare it.

Change-Id: I465f5edf3acab2a952c3d321c8df2247ffe012ea
m/ManifestDigest.aidl
m/ManifestDigest.java
m/PackageParser.java
4a51773e4aa6b447e9cbf70030eaf92e4e6d7b90 10-Aug-2011 Kenny Root <kroot@google.com> Merge "Eliminate warnings from PackageParser"
271c2fe0eb36fbf872535bedf3ee8156e3087847 10-Aug-2011 Dianne Hackborn <hackbod@google.com> New extended Intent protcols for installing/uninstalling apps.

Change-Id: I13be1cc58c91f51d521a1f0f734d2b2db7b2980b
ntent.java
d2d2925ff7ae9456c1c6c9147b1b9fd9a99ea607 08-Aug-2011 Kenny Root <kroot@google.com> Eliminate warnings from PackageParser

Change-Id: I1e07029261df59907115fd1f54da3e9b3fbfa240
ntentFilter.java
m/PackageParser.java
1137341885d8dc451dddc2e01319fb0fab00bbc3 29-Jul-2011 Kenny Root <kroot@google.com> Throw exception on odd length Signatures

The old version of this code would silently truncate odd-length
Signatures. However, this masks some bugs. Add a throw of
IllegalArgumentException so users can easily see where they're getting
bad input for Signatures.

Also, go through the existing code and catch this exception or
pre-check the input strings so system_server doesn't crash later.

Bug: 5092338
Change-Id: I8c672c5eaeb738a92c4581ce0df09baf719980ef
m/Signature.java
1ebd74acf9977daa42133507e970dab88e08f0ef 04-Aug-2011 Kenny Root <kroot@google.com> Better error codes for missing files

Make sure that files that don't exist aren't returning bogus 'out of
space' error codes.

Add some Javadoc so I can remember what each thing does in an IDE.

Add copyright header to NativeLibraryHelper

Bug: 3375299
Change-Id: Iac46019160921daca65b21d38897e5165063316e
m/PackageParser.java
269248d112e35fe8e9f0d5d11c96dcb2ac1118b0 02-Aug-2011 Adam Powell <adamp@google.com> Fix bug 5098288 - Rethink the suite of new themes

Cut down the list of new themes for ICS. Holo apps now have
Theme.Holo, Theme.Holo.Light, and Theme.Holo.Light.DarkActionBar to
choose from.

Add manifest attribute android:uiOptions to express
splitActionBarWhenNarrow. Other options may move into this later as
well. (DialogWhenLarge?) This attribute is valid on both activity and
application tags; application settings will serve as the default for
activities that do not explicitly set uiOptions.

uiOptions are not currently reflected in the startup window for new
activities.

Change-Id: Iffdc2ce4cc69f79c9bd4e541b7923286e6936c1e
m/ActivityInfo.java
m/ApplicationInfo.java
m/PackageParser.java
c68c913d357e2955d4bd7ca52829071e531c7825 29-Jul-2011 Dianne Hackborn <hackbod@google.com> Various work on out of memory managment.

- Improve how we handle processes that have shown UI, to take care
of more cases where we want to push them into the background LRU
list.
- New trim memory level for when an application that has done UI
is no longer visible to the user.
- Add APIs to get new trim memory callback.
- Add a host of new bind flags to tweak how the system will adjust
the OOM level of the target process.

Change-Id: I23ba354112f411a9f8773a67426b4dff85fa2439
omponentCallbacks.java
omponentCallbacks2.java
ontentProvider.java
ontext.java
f40216f98aa63df4a4ff1f26692502cd9078a6fa 28-Jul-2011 Jean Chalard <jchalard@google.com> Fix a bug where a provider could be never released.

Bug: 5034192
Change-Id: I5d4adf27ea933687d4a0bc5ee76d57b74e708eec
ontentResolver.java
f2fa907e1f815f2fe1add2cb8fb0e159d0f38edb 27-Jul-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #4466531: onServiceConnected() not called after..."
36193d09a87035395d036a730038b765ac0b0913 13-Jul-2011 Scott Main <smain@google.com> cherrypick Change-Id: I4713d3977a0a1514ff9c4217e7f3723c0346d0d8
docs: revise ActionBar class summary and add a few links to dev guide docs

Change-Id: I14df84b16d7bdab85aa74d8b8211e988b0519115
oader.java
130b0d2b2629bdd8fc415e0f3da947f965a3f29d 27-Jul-2011 Dianne Hackborn <hackbod@google.com> Fix issue #4466531: onServiceConnected() not called after...

...apk reinstall; affects user privacy

Disconnecting a ServiceConnection after an app is torn down could
impact the bookkeeping of the same service if it has been started
for the app.

Also address issue #5073927: GSF process can't be killed

A new flag allows the systems location manager service to tell
the activity manager to not pull bound services up forever into
the visible adj level.

Change-Id: I2557eca0e4bd48f3b10007c40ec878e769fd96a8
ontext.java
34821881c159e434a1a2c8a6ba5ebfc64376791e 13-Jul-2011 Jeff Sharkey <jsharkey@android.com> Avoid sync when UID network is disconnected.

During maybeStartNextSyncLocked(), check the network connectivity for
the target UID, and skip when disconnected.

Bug: 4519115
Change-Id: I8adee8e04521cb878624b19e557d01869f984c4c
yncManager.java
5ccdaa9a0354f0424303ef4f94a65e35764cc9c4 25-Jul-2011 Kenny Root <kroot@google.com> Merge "Stop using charAt for Signatures"
55bc5f3e0408bcb5a39a6732de0b2d1aa99a55be 24-Jun-2011 repo sync <isheriff@google.com> Updated: Wi-Fi p2p framework

First stage. Get the bones in right now even though
we are not ready on the native side.

Once, we have things underneath working - we will further update the
framework

Change-Id: I4a7dab5cd4267373dc5f8989ae4122f91c384ed5
ontext.java
d21d444426911d93c507a929a8223ebf63258954 23-Jul-2011 Kenny Root <kroot@google.com> Stop using charAt for Signatures

Simply getting the byte array and operating on that instead of using
String.charAt() repeatedly speeds up Signature initializer calls during
bootup from 150ms to 9ms (1700% faster).

Change-Id: I85ef17ef63477927e0181d5f49a1d521b7b0d98b
m/Signature.java
7793719ca97571f5b3636d5a89cb067c71d627bd 22-Jul-2011 satok <satok@google.com> Merge "Create TextServiceManager and SpellCheckerService"
988323c57bd25a58f05dfa492d9b9c8ab62c5153 22-Jun-2011 satok <satok@google.com> Create TextServiceManager and SpellCheckerService

Bug: 4176026

This CL inherits https://android-git.corp.google.com/g/112600

Spec of TextServiceManager
- Chooses the most applicable TextService(e.g. SpellCheckerService, WordBreakIteratorService..)
for each locale

Spec of SpellCheckerService
- Returns whether the given string is a correct word or not
- Returns Suggestions for the given string

Change-Id: Iaa425c7915fe70767ad0b17bf6c6fbcd2a1200b2
ontext.java
f0754f5ba7a45b517cffcb3c2c96f2a32aeac06d 22-Jul-2011 Dianne Hackborn <hackbod@google.com> Fix bug where memory trim was not being delivered with correct level.

Also improve how we handle services, keeping track of whether they showed
UI and if so putting them immediately on the LRU list.

Change-Id: I816834668722fc67071863acdb4a7f427a982a08
omponentCallbacks.java
b4569fb17fada4fdc43e4f4dbfbc79bb097a1f74 09-Jul-2011 Amith Yamasani <yamasani@google.com> SearchView behavioral and visual changes

Align text suggestions and search string.
Close button only clears the field.
Back button clears focus, hides dropdown and keyboard.
Tweaked SearchDialog's use of SearchView to follow above patterns.
Fixed other little bugs.

Change-Id: I9d34c2ebe2b1b2ca887220894c19a26809db85f6
earchRecentSuggestionsProvider.java
1b64e0d8657463c0f7ce9b068a16a522cdfe7d28 18-Jul-2011 Dianne Hackborn <hackbod@google.com> Work on death recipient leaks in Activity Manager and Content Service.

This should fix a leak of process death recipients in the activity manager.

Also add debugging of content observers to try to track down what looks
like a leak of them in the content service.

Change-Id: Id6823679493ef0cde5307bb66490ebe31b878556
ontentService.java
ce86ba86df61de8b34b226a4eb6c23ec33e866e0 14-Jul-2011 Dianne Hackborn <hackbod@google.com> Improve handling of low memory.

Now classify background processes into a set of bins of how much
memory they should try to clear. The last bin also involves
destroying all activities in that process.

Removed the old code for the simulator that is no longer needed
(yay). The debugging features it had are now integrated into the
regular oom adj code.

Small fixes to load average service.

Change-Id: Ic8df401714b188c73b50dbc8f8e6345b58f1f3a0
omponentCallbacks.java
08009f1446eaad72946ec1af806590dbf60d95bf 08-Jul-2011 Gilles Debunne <debunne@google.com> Merge "XmlDocumentProvider moved to the XmlAdapter sample code"
79ec80db70d788f35aa13346e4684ecbd401bd84 24-Jun-2011 Christopher Tate <ctate@google.com> Make full backup API available to apps

New methods for full backup/restore have been added to BackupAgent
(still hidden): onFullBackup() and onRestoreFile(). The former is the
entry point for a full app backup to adb/socket/etc: the app then writes
all of its files, entire, to the output. During restore, the latter
new callback is invoked, once for each file being restored.

The full backup/restore interface does not use the previously-defined
BackupDataInput / BackupDataOutput classes, because those classes
provide an API designed for incremental key/value data structuring.
Instead, a new FullBackupDataOutput class has been introduced, through
which we restrict apps' abilities to write data during a full backup
operation to *only* writing entire on-disk files via a new BackupAgent
method called fullBackupFile().

"FullBackupAgent" exists now solely as a concrete shell class that
can be instantiated in the case of apps that do not have their own
BackupAgent implementations.

Along with the API change, responsibility for backing up the .apk
file and OBB container has been moved into the framework rather than
have the application side of the transaction do it.

Change-Id: I12849b06b1a6e4c44d080587c1e9828a52b70dae
m/ApplicationInfo.java
m/PackageParser.java
171c60e81fef8e227c261e0567b786124e718851 01-Jun-2011 Gilles Debunne <debunne@google.com> XmlDocumentProvider moved to the XmlAdapter sample code

Bug 4477831

Related to CL https://android-git.corp.google.com/g/#change,112514

Change-Id: Ib63a0bf5d2a868433748dec1a45576ca2fa18045
mlDocumentProvider.java
6c418d585e0a91054b168fde3130188afd006c98 29-Jun-2011 Dianne Hackborn <hackbod@google.com> Fix issue #4902856: Don't let apps register non-explicit PendingIntents

Location manager now checks for such intents, and logs a warning when
they are given to it. Nothing thrown yet, it needs to check the
targetSdkVersion of the caller somehow.

When sending the pending intent, we require that the recipient hold the
appropriate permission. This should pretty much close the security hole.

Includes a bunch of infrastructure in the activity manager needed to
support all this.

Change-Id: I4dba7a98a7b8bbb9e347666451aa9cb1efad1848
ontext.java
IntentSender.aidl
ntentSender.java
292f8bc9d1b790ab975a87a842c7fabc908b97e0 28-Jun-2011 Dianne Hackborn <hackbod@google.com> Plumb information from the framework about asec container size.

Change-Id: Ie0ec3cb6d463aefa341a8cbea80be790451ba5e3
m/PackageStats.java
2d6833bab353e31ceb4230f3f3563fca2e0d9f6f 25-Jun-2011 Dianne Hackborn <hackbod@google.com> Turn on HW accel by default for apps that target ICS.

Change-Id: I010e11e03b2dfd0d1db8c47f74c25a28586fd79c
m/PackageParser.java
2b31d53161789358de57fd396716a6503855c5da 23-Jun-2011 Dianne Hackborn <hackbod@google.com> Fix issue #4770360: older app compatibility mode is really tiny on ICS phones

We were applying the density compat mode scaling multiple times to
display metrics, causing bad values.

Change-Id: Iafafd9a5e94b9d774cd2715bf968e91602a1bd82
es/CompatibilityInfo.java
es/Resources.java
8969d9924c662ab4cdacc342bbdc33756db730be 22-Jun-2011 satok <satok@google.com> Revert "Create TextServiceManager and SpellCheckerService"

This reverts commit eaddb894865a804279659b4aad6364a34ab50beb.
ontext.java
eaddb894865a804279659b4aad6364a34ab50beb 01-Jun-2011 satok <satok@google.com> Create TextServiceManager and SpellCheckerService

Bug: 4176026

Spec of TextServiceManager
- Chooses the most applicable TextService(e.g. SpellCheckerService, WordBreakIteratorService..)
for each locale

Spec of SpellCheckerService
- Returns whether the given string is a correct word or not
- Returns Suggestions for the given string

Change-Id: Ia25e7b4f308778891929e31b8cbd741f6848cce4
ontext.java
0ac3031c159a0904e73eb4439cdc724d8df4a6e6 17-Jun-2011 Dianne Hackborn <hackbod@google.com> Implement remaining infrastructure for user disabling apps.

Change-Id: If8135eb0e27ec36f8f159eb7b6397add7acd0299
m/ApplicationInfo.java
m/PackageManager.java
m/PackageParser.java
7e27e489d86888ac8bfc7852379a58178313fa5c 16-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Introduce LocalUtil and getLayoutDirectionFromLocale() now use likelySubtags"
a47f45e4829f812ff47f9e5c9370b02284d92ae8 15-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Introduce LocalUtil and getLayoutDirectionFromLocale() now use likelySubtags

- move code from Configuration to LocaleUtil
- move unit tests

Change-Id: Ic14b0131894a0c5618f00d4acb3edb0daadefe01
es/Configuration.java
711516d140390aeec9e3eefb8fdb2681c3454980 14-Jun-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 77fc8b80 to master

Change-Id: I014f9a886d6f05607d2a5d101ad2052a6841ee8d
77fc8b8066709a1d09a159901fd65c49b5e6eaa5 14-Jun-2011 Dianne Hackborn <hackbod@google.com> am 6c0533f9: am c5193c62: Merge "Add new landscape and portrait orientation features." into honeycomb-mr2

* commit '6c0533f994e7991b3bd60cab48362e8e2e6d86f0':
Add new landscape and portrait orientation features.
e289bff0ec2b1af4ba773e0c8d49d5fd46eb9921 14-Jun-2011 Dianne Hackborn <hackbod@google.com> Add new landscape and portrait orientation features.

Updates aapt to know about these. Also updates aapt badging to:

- No longer crash due to the change to how we match unspecified
configuration resources.
- Report the new "smallest screen" supported screen configs.
- Infer old screen size buckets based on new smallest width attrs.
- Report all of the different labels and icons in an app.

Change-Id: I7376042b817391bd070f549cebbc7f03be4635c8
m/PackageManager.java
7a736fbf69dd6f03db968d7d8182024eebc0e508 10-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Update Configuration for renaming and fixes

- rename layoutDirection to textLayoutDirection
- rename constants for being clear that they cannot be used (work in progress)
- fix a few issues concerning default switch case and relation to Locale

Change-Id: Icfe9a9b5c0d1c0e28e5a893549b437fc4fa5df82
es/Configuration.java
e6b03d0979e0bd6dfeda7b45850182c3092bb3e7 10-Jun-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 9dfd7d0a to master

Change-Id: I9fbee3209b7fe5c7b5b42b62309eb60dc49bf9e2
f741e679c496f7345304a6543f01d7048e31d1a7 10-Jun-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of e2aa0490 to master

Change-Id: Id0448a1598fc93aca0652b29253e02586e35a067
5f3b2f1e59f34f7043487a194c9ab532b0f5a24f 10-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Add Configuration.getLayoutDirectionFromLocale()"
7194efd394ce0b38a74bab87206adfd9ff823742 09-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Add Configuration.getLayoutDirectionFromLocale()

- returns LAYOUT_DIRECTION_UNDEFINED / LAYOUT_DIRECTION_LTR / LAYOUT_DIRECTION_RTL depending on the Locale
- add unit tests

Change-Id: I4372734eb011cbf6270f39ba815e696b04f2352f
es/Configuration.java
9dfd7d0a47549bdf0b429b760a9ede9748f427de 09-Jun-2011 Dianne Hackborn <hackbod@google.com> am 2d618e41: am e22fe933: Fix issue #4582417: Need to add new PackageManager...

* commit '2d618e415fa0ed8a1e7ac8d0ffe98cebdf6c208b':
Fix issue #4582417: Need to add new PackageManager...
e22fe9331ad8a9f81470751fdeca7633f654cffa 09-Jun-2011 Dianne Hackborn <hackbod@google.com> Fix issue #4582417: Need to add new PackageManager...

...FEATURE_ constant for FAKE_MULTITOUCH in MR2

Change-Id: Ib6950d9dbdd58618aec593de7e0cf1c01b7d6ef9
m/PackageManager.java
e2aa04908cfdf65ef309f1491f31a0c8846977ff 09-Jun-2011 Dianne Hackborn <hackbod@google.com> am a1396dfe: am 02140891: Merge "Work on issue #4518815: Compatibility mode introduces compatibility regression..." into honeycomb-mr2

* commit 'a1396dfe7ad6ec6953f544be42d69d7804ab0fd4':
Work on issue #4518815: Compatibility mode introduces compatibility regression...
5fd2169eabd77e6bfafaf456e58051a3bafb2bca 07-Jun-2011 Dianne Hackborn <hackbod@google.com> Work on issue #4518815: Compatibility mode introduces compatibility regression...

...for Market App iRunner

There were a lot of serious issues with how we updated (or often didn't update)
the display and resource state when switching compatibility mode in conjunction
with restarting and updating application components. This addresses everything
I could find.

Unfortunately it does *not* fix this particular app. I am starting to think this
is just an issue in the app. This change does fix a number of other problems
I could repro, such as switching the compatibility mode of an IME.

Also a few changes here and there to get rid of $#*&^!! debug logs.

Change-Id: Ib15572eac9ec93b4b9966ddcbbc830ce9dec1317
es/CompatibilityInfo.java
es/Configuration.java
es/Resources.java
7f86827af44eb5267c8d21f355d109ff71b04f10 06-Jun-2011 Jeff Sharkey <jsharkey@android.com> Intent to manage application network data usage.

Will be launched by Settings when presenting detailed network data
usage for a specific application. Offers easy access into application
settings to change behavior.

Change-Id: I4ee0fdbc69f6a800ad59aca8db6b21f15ca71a66
ntent.java
b0628bfd5aac480a0d412ac96b8af1d97ac01c30 03-Jun-2011 Christopher Tate <ctate@google.com> Implement shared-storage full backup/restore

Every available shared-storage volume is backed up, tagged with its
ordinal in the set of mounted shared volumes. This is an approximation
of "internal + the external card". This lets us restore things to the
same volume [or "equivalent" volume, in the case of a cross-model
restore] as they originated on.

Also fixed a bug in the handling of files/dirs with spaces in
their names.

Change-Id: I380019da8d0bb5b3699bd7c11eeff621a88e78c3
m/PackageParser.java
7e4db3767b1338dd9f2c09a3f6453abd656c977f 07-Jun-2011 Mike Lockwood <lockwood@android.com> Add comment for deprecation of Intent.ACTION_UMS_CONNECTED and ACTION_UMS_DISCONNECTED

Change-Id: I3c42393c79424217d6b44cccef9de9e06da58193
Signed-off-by: Mike Lockwood <lockwood@android.com>
ntent.java
da85e524c7d2dc3b7524cddd12ad0461602a1cbb 07-Jun-2011 Mike Lockwood <lockwood@android.com> Deprecate Intent.ACTION_UMS_CONNECTED and Intent.ACTION_UMS_DISCONNECTED

Change-Id: I7261959462422cf241a46a5ada6fbd98d655db3d
Signed-off-by: Mike Lockwood <lockwood@android.com>
ntent.java
ead40eaedb7993ca8c5153c349dd65f276d6862e 04-Jun-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of cc20b4e3 to master

Change-Id: I990368443a16a0577f7a1f5623b348cca3f81ac4
2515db74fe2e75018f618591fabe23fda8362bf3 03-Jun-2011 Dianne Hackborn <hackbod@google.com> am 3a80c504: am 8b9a2b6c: am e6676351: Work around OpenFeint bug.

* commit '3a80c50485809fe72d6de83dacad494c5e84ed24':
Work around OpenFeint bug.
9f2f3752ae26b6812e0ee33a61dd331b0be673c7 03-Jun-2011 Dianne Hackborn <hackbod@google.com> am c11f6c3e: am 7cae137e: am 79841acb: Merge "Compatibility mode never needed for normal size screens." into honeycomb-mr2

* commit 'c11f6c3e33c9f1e3964cb2427f82509fc97e3527':
Compatibility mode never needed for normal size screens.
455591b91311d6959f521fff9acae5a06df442a8 03-Jun-2011 Dianne Hackborn <hackbod@google.com> am c691d7f9: am b8d10931: am fd206560: Merge "Forgot this file." into honeycomb-mr2

* commit 'c691d7f9a3621d5ef9b9d48e95c644a318b36322':
Forgot this file.
50469db07167e3a837e10f215baa4eacb1319604 03-Jun-2011 Dianne Hackborn <hackbod@google.com> am 7322e557: am a4cfcf10: am 75d6b3c2: Merge "Fix issue #4502672: Wrong xml resources used for homescreen widgets." into honeycomb-mr2

* commit '7322e557cfe42da42779625d69ced2db74a9df90':
Fix issue #4502672: Wrong xml resources used for homescreen widgets.
7dad2c24fa7811c115f850fd2a8f2ecc8874061e 03-Jun-2011 Dianne Hackborn <hackbod@google.com> am 9b94aa18: am e5d37701: am 8ea5e1d7: Fix compat mode bugs when updating apps.

* commit '9b94aa18f78e6c6281202e72b5a7451bc479fe82':
Fix compat mode bugs when updating apps.
0e5e16a656b0002f377f1bcda2e43a97206e4046 03-Jun-2011 Dianne Hackborn <hackbod@google.com> am da9837fb: am c058d386: am ff762299: Merge "Small fixes and cleanup of resource config handling." into honeycomb-mr2

* commit 'da9837fb61c8aa53c67921682016d97655332089':
Small fixes and cleanup of resource config handling.
546d64f56d0f930070289e26021f97638601e388 02-Jun-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 5c2e4d20 to master

Change-Id: Iadbee872468ceafb54c5877046c91f6052f3c953
c6f1f4ac3b3f19222cb72c44e19d5251a3b46831 02-Jun-2011 Gilles Debunne <debunne@google.com> am ca6c3a2b: am 4ce6822b: am 24de44a1: Merge "ExternalStorageFormatter takes an optional StorageVolume target." into honeycomb-mr2

* commit 'ca6c3a2bba4445f492117697cb304a014a185159':
ExternalStorageFormatter takes an optional StorageVolume target.
ed60f81940c5f2125518c7c31ad4f61b8a9baf3e 02-Jun-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 76450622 to master

Change-Id: I26ccd8f264e65f100d894f43cf597a781552db83
cc20b4e31ece564800aa2322efe3ae9da163b570 02-Jun-2011 Dianne Hackborn <hackbod@google.com> am a5f88510: am 2969b511: Merge "Add new supports-screen API to set maximum allowed size." into honeycomb-mr2

* commit 'a5f8851019605be26dd9a628280092e27f8a5f31':
Add new supports-screen API to set maximum allowed size.
2762ff3dc864018352362f6d103de471f9529ba6 02-Jun-2011 Dianne Hackborn <hackbod@google.com> Add new supports-screen API to set maximum allowed size.

Change-Id: I0a7cd4ba73a4c18558e6daee28963d5fd12c7978
m/ApplicationInfo.java
m/PackageParser.java
es/CompatibilityInfo.java
3a80c50485809fe72d6de83dacad494c5e84ed24 02-Jun-2011 Dianne Hackborn <hackbod@google.com> am 8b9a2b6c: am e6676351: Work around OpenFeint bug.

* commit '8b9a2b6cbd9cf37e9f5aa1bfc7106c67a5e89202':
Work around OpenFeint bug.
75279904202357565cf5a1cb11148d01f42b4569 25-May-2011 Jeff Sharkey <jsharkey@android.com> Collect historical network stats.

Periodically records delta network traffic into historical buckets to
support other services, such NetworkPolicyManager and Settings UI.

Introduces NetworkStatsHistory structure which contains sparse, uniform
buckets of data usage defined by timestamps. Service periodically
polls NetworkStats and records changes into buckets. It only persists
to disk when substantial changes have occured. Current parameters
create 4 buckets each day, and persist for 90 days, resulting in about
8kB of data per network.

Only records stats for "well known" network interfaces that have been
claimed by Telephony or Wi-Fi subsystems. Historical stats are also
keyed off identity (such as IMSI) to support SIM swapping.

Change-Id: Ia27d1289556a2bf9545fbc4f3b789425a01be53a
ontext.java
e66763516a9c27c192adaba417616371a1c3c9bf 02-Jun-2011 Dianne Hackborn <hackbod@google.com> Work around OpenFeint bug.

Change-Id: Ib8320e50bb63fc56dc0118d5c8e9e328dbd3fcb1
m/ActivityInfo.java
m/PackageParser.java
c11f6c3e33c9f1e3964cb2427f82509fc97e3527 01-Jun-2011 Dianne Hackborn <hackbod@google.com> am 7cae137e: am 79841acb: Merge "Compatibility mode never needed for normal size screens." into honeycomb-mr2

* commit '7cae137ed155f2d311f020bbb3e75730344fd5fc':
Compatibility mode never needed for normal size screens.
39ec8fb9572b6f7a6c3dbc135f32f2a8cbcd640f 01-Jun-2011 Dianne Hackborn <hackbod@google.com> Compatibility mode never needed for normal size screens.

Change-Id: I3482fa692618b9272e1e19384e766a77f2a53c5d
es/CompatibilityInfo.java
36f80f3a5a3de42d4e7ca4b53d4aa3e567f4df6f 01-Jun-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 590ec479 to master

Change-Id: I30503da6a73b9cb15eee66a67c75d50ccdc4b9f0
c691d7f9a3621d5ef9b9d48e95c644a318b36322 01-Jun-2011 Dianne Hackborn <hackbod@google.com> am b8d10931: am fd206560: Merge "Forgot this file." into honeycomb-mr2

* commit 'b8d109318f6fc88d1a59ca0e6e362963cd06960c':
Forgot this file.
363456c7249f6545e7bde8134ff2e796c6f4c55f 01-Jun-2011 Dianne Hackborn <hackbod@google.com> Forgot this file.

Change-Id: I8aa457d8d81d283f8cc36f68eca33fcb3a86ccad
es/CompatibilityInfo.aidl
7322e557cfe42da42779625d69ced2db74a9df90 01-Jun-2011 Dianne Hackborn <hackbod@google.com> am a4cfcf10: am 75d6b3c2: Merge "Fix issue #4502672: Wrong xml resources used for homescreen widgets." into honeycomb-mr2

* commit 'a4cfcf10cc300a1eb5b2a4254fb7d3190c56c4f1':
Fix issue #4502672: Wrong xml resources used for homescreen widgets.
2f0b17573d4324832f7a20402a3d2b5920bc4866 01-Jun-2011 Dianne Hackborn <hackbod@google.com> Fix issue #4502672: Wrong xml resources used for homescreen widgets.

There was a race in the system process between applying the initial
configuration and executing code in higher-level system services
like the app widget service that relies on the config. For some
reason it starting showing up more after my code changes; it should
now be completely fixed.

Also fix the activity starting window to run in compatibility mode
if its application is going to be in compatibility mode.

And some various cleanup and small fixes.

Change-Id: I0566933bf1bbb4259c1d99a60c0a3c19af1542e5
es/CompatibilityInfo.java
es/Configuration.java
es/Resources.java
9b94aa18f78e6c6281202e72b5a7451bc479fe82 28-May-2011 Dianne Hackborn <hackbod@google.com> am e5d37701: am 8ea5e1d7: Fix compat mode bugs when updating apps.

* commit 'e5d377014b04022a04fd0b2b24b343d1e0ec8d2a':
Fix compat mode bugs when updating apps.
8ea5e1d79eb1f05ee7628b0d45ea8fc8eea5330d 28-May-2011 Dianne Hackborn <hackbod@google.com> Fix compat mode bugs when updating apps.

No longer accidentally puts an app into compatibility mode.

Also various cleanup, freezing screen while switching between modes.

Change-Id: Ic1b3958be7800189a93f68e9dee3c5adfc45fe57
es/CompatibilityInfo.java
da9837fb61c8aa53c67921682016d97655332089 27-May-2011 Dianne Hackborn <hackbod@google.com> am c058d386: am ff762299: Merge "Small fixes and cleanup of resource config handling." into honeycomb-mr2

* commit 'c058d38602a1ffe00e14b4ab32c876c252eabe6d':
Small fixes and cleanup of resource config handling.
3904d03dd01dcd43c446744e44b34615825d9679 27-May-2011 Dianne Hackborn <hackbod@google.com> Small fixes and cleanup of resource config handling.

Change-Id: I402c31b68f2b4825cb4c610a65ee8e1da471c7bb
es/Resources.java
5c2e4d20df934728f39312741ef3390fd87795ce 27-May-2011 Dianne Hackborn <hackbod@google.com> am 8fcbfb52: am 94250ac6: Merge "Add new supports-screens attributes for declaring the compatible screens." into honeycomb-mr2

* commit '8fcbfb52607263754b6d3895a112f792c5c3a12e':
Add new supports-screens attributes for declaring the compatible screens.
94250ac69c6e07534e4781d3479dccb79d8c366c 27-May-2011 Dianne Hackborn <hackbod@google.com> Merge "Add new supports-screens attributes for declaring the compatible screens." into honeycomb-mr2
ca6c3a2bba4445f492117697cb304a014a185159 27-May-2011 Gilles Debunne <debunne@google.com> am 4ce6822b: am 24de44a1: Merge "ExternalStorageFormatter takes an optional StorageVolume target." into honeycomb-mr2

* commit '4ce6822bc63665ca3e9d9984766f367ce4f4d3a7':
ExternalStorageFormatter takes an optional StorageVolume target.
24de44a1877be3e5d63697f90c98a87a4d88b1fb 27-May-2011 Gilles Debunne <debunne@google.com> Merge "ExternalStorageFormatter takes an optional StorageVolume target." into honeycomb-mr2
df6e980e3f63eb0f6f9eb437fa925d5009cd9c44 26-May-2011 Dianne Hackborn <hackbod@google.com> Add new supports-screens attributes for declaring the compatible screens.

Change-Id: I40d57e4354e48accc1027c9f90916ea73eb5190d
android:requiresSmallestWidthDp provides the smallest supported width.
android:compatibleWidthLimitDp provides the largest compatible width.
m/ApplicationInfo.java
m/PackageParser.java
es/CompatibilityInfo.java
76450622f08b1d0d09df7f1ad8e52afe01090770 26-May-2011 Dianne Hackborn <hackbod@google.com> am d5238cc1: am 7a09f72b: Merge "Rework how we decide whether to use system or status bar." into honeycomb-mr2

* commit 'd5238cc1ab8366389b2aada228f2f2e5cbb3244e':
Rework how we decide whether to use system or status bar.
1d8f8819f1e98cdf3b7756396158613e95fe9eb6 26-May-2011 Kenny Root <kroot@google.com> Merge "Break apart queries to getInstalled* API DO NOT MERGE" into honeycomb-mr2
37051cdd8624c4821bb68169be427061c48ad837 26-May-2011 Gilles Debunne <debunne@google.com> ExternalStorageFormatter takes an optional StorageVolume target.

Change-Id: Ic85689659dbf49a7fcc1b7aaf25e4a94e62848b9
ntentFilter.java
590ec479fd51e13d077212833e2ac4f848a49cc3 26-May-2011 Dianne Hackborn <hackbod@google.com> am 80ef2a97: am 42f8094c: Merge "Spiffy new compatibility mode UI." into honeycomb-mr2

* commit '80ef2a9745e6103efd9698577536bbfed1fd74f6':
Spiffy new compatibility mode UI.
81e56d535c853d73ff537357da5b935f51cb779d 26-May-2011 Dianne Hackborn <hackbod@google.com> Rework how we decide whether to use system or status bar.

The PhoneWindowManager is now responsible for determing this,
since it needs to do this before we can generate the configuration
since we need to take into account the system bar size we will use.

Also the Display should now report the screen height without
including the system bar.

Change-Id: I82dfcc5e327e4d13d82c373c6c870f557a99b757
es/CompatibilityInfo.java
1bb6cf18c0039cb9d2a60713ea34d3709af58c5c 16-Apr-2011 Kenny Root <kroot@google.com> Break apart queries to getInstalled* API DO NOT MERGE

To avoid blowing past the Binder IPC limit, change the
PackageManagerService to have a DB-like interaction where the client
tells the service the last "row" that it read.

The fact that we use a HashMap instead of a TreeMap makes this
problematic. For now we're just making a new ArrayList for the keys and
then sorting them for each call. This can make the API slower for callers
of this, but it's probably greatly overshadowed by the cost of the data
transfer itself.

Bug: 4064282
Change-Id: Ia3a8cdaa94581ed9336f2e05694b8c8a5f757bce
m/IPackageManager.aidl
m/ParceledListSlice.aidl
m/ParceledListSlice.java
36cd41f8efa6f6a683d3353d309ff548295af9e9 26-May-2011 Dianne Hackborn <hackbod@google.com> Spiffy new compatibility mode UI.

Change-Id: I1207eaafae59a434fcc979ad60a83e2d685288af
es/CompatibilityInfo.java
fee1c69a49d03b651e481983432ade94fc07650a 26-May-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 77dd616e to master

Change-Id: Idb7180177b01e7d822327ccc7c76617220860da2
77dd616e685e2671491d911d0847efa4f832717e 25-May-2011 Dianne Hackborn <hackbod@google.com> am 00b3a5c6: am c404e9b2: Merge "More compatibility mode improvements." into honeycomb-mr2

* commit '00b3a5c65e6ef26056178d1d7473b921671752e9':
More compatibility mode improvements.
5be8de3420ba4c9d816b98e29bdec11715f6b626 25-May-2011 Dianne Hackborn <hackbod@google.com> More compatibility mode improvements.

We now correctly adjust display metrics, fixing for example issues
seen in Barcode Scanner. In addition the decision about when to use
compatibility mode has a bug fixed where certain apps would not go
out of compatibility mode even though they should be able to.

Change-Id: I5971206323df0f11ce653d1c790c700f457f0582
es/CompatibilityInfo.java
es/Configuration.java
es/Resources.java
8f40e5871213afb63ae4b68a44dd09e0a014e417 25-May-2011 Ying Wang <wangying@google.com> Merge "Fix intermediate src dir for framework.jar"
e2c7715c772d5121397591b532d04a31b3ffcc99 24-May-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of bbca8133 to master

Change-Id: I81493674dceab848e41d380a77a37e5a9be06db6
bbca81334e3603c7328dc526bd63032b23d5261d 24-May-2011 Dianne Hackborn <hackbod@google.com> am 4bb78889: am 40277df7: Merge "Add "television" mode." into honeycomb-mr2

* commit '4bb78889d04594c01a6af7f6d38c1764e9f575f9':
Add "television" mode.
e360bb6bd8ea84b8d37604fc11dfc744b18fb0de 21-May-2011 Dianne Hackborn <hackbod@google.com> Add "television" mode.

Change-Id: Ida1fdb61b036a8b489dbeda196fb4bc82e651b2b
es/Configuration.java
eedcb9525ba5befee2ba6ebb7a9ee3f13395c2a3 17-May-2011 Jeff Sharkey <jsharkey@android.com> APIs to profile network usage for current UID.

Added startDataProfiling() and stopDataProfiling() to TrafficStats,
which can be used by apps to measure network usage delta between two
points in time. Currently takes two NetworkStats snapshots and returns
delta, which will eventually include tag-level granularity. Added
tests for NetworkStats delta subtraction.

Added NMS.getNetworkStatsUidDetail() that returns stats for specific
UID. Always gives stats access for the calling UID, otherwise enforces
that caller has permission. Fix readSingleLongFromFile(), since
/proc/ files don't have well-defined lengths.

Change-Id: Ic5b6414d8effbd66846e275b00d4b8a82c74589d
ontext.java
161e67ff3ba26408eea09221734ad2e29a1eed11 20-May-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 06a8ceac to master

Change-Id: Id51574c825affddfac14ad7214c5496d6a3d6e69
06a8ceacb0dc2713cb0bb2c93d2a750f2a58db68 20-May-2011 Dianne Hackborn <hackbod@google.com> am c851ea56: am 69cb8757: Add new "-swNNNdp" resource qualifier.

* commit 'c851ea5672f6e042c2e89b2a2ce4a2467e1fcd2a':
Add new "-swNNNdp" resource qualifier.
69cb87576ba163b61bb0e6477a3b7c57a9b11d40 20-May-2011 Dianne Hackborn <hackbod@google.com> Add new "-swNNNdp" resource qualifier.

Change-Id: I0101e88ca9d8d44138bdcaf571f24b0352f4f6ce
m/ActivityInfo.java
m/PackageParser.java
es/AssetManager.java
es/Configuration.java
es/Resources.java
a51b6fd6f8a53f040894ef07cf23695581595e6b 20-May-2011 Kenny Root <kroot@google.com> resolved conflicts for merge of b2d0ee16 to master

Change-Id: I4483a6d0ccecfea4a1e66bb6eba80d13e8b9a3a4
e6cd0c747e76723bc51a23925c239ae10f9d3b5c 19-May-2011 Kenny Root <kroot@google.com> resolved conflicts for merge of 2433c443 to honeycomb-plus-aosp

Change-Id: I3385f57e5761679e6700bcbe3c41deb3ecd43ba1
2433c443bb5fe96d9a39b59e10e3c03d791e2278 19-May-2011 Kenny Root <kroot@google.com> am f2006f31: Merge "Break apart queries to getInstalled* API" into gingerbread

* commit 'f2006f3123dcdf598e052051041b49c89710b53e':
Break apart queries to getInstalled* API
65ee22aa01c038fbcf656748ba7655c17df3ea61 17-May-2011 Ying Wang <wangying@google.com> Fix intermediate src dir for framework.jar

Intermediate src dir for JAVA_LIBRARIES should be in the common
intermediate dir.

Change-Id: Ib16ddd63aed080cdd1494204b347c1e1e1beafcb
OnPrimaryClipChangedListener.aidl
0305e354e12c9ff25bfd252cb282346632171b73 13-May-2011 Dianne Hackborn <hackbod@google.com> This API change is now part of MR2.

Change-Id: I242e66fb9c46d48244942298361f408062fb05c4
m/PackageParser.java
63446167b9d6d9ed3410320d17e8fe816caf6c42 16-May-2011 Dianne Hackborn <hackbod@google.com> am fddd927f: am 9d0f2c6d: Merge "DO NOT MERGE: From master -- Fix bug in deciding which rotation to use for an orientation." into honeycomb-mr2

* commit 'fddd927fb78bb206287203f4f447a416b525115a':
DO NOT MERGE: From master -- Fix bug in deciding which rotation to use for an orientation.
29735689cea7bf52998c1911542dcfdd1c1d9628 22-Apr-2011 Dianne Hackborn <hackbod@google.com> DO NOT MERGE: From master -- Fix bug in deciding which rotation to use for an orientation.

Change-Id: Ie271123271a662f3f753f381ce4c43ad7904dc4a
es/Configuration.java
fbdf9df053800afb25453630d11bd48cbc068271 16-May-2011 Dianne Hackborn <hackbod@google.com> am 2a20583a: am 700ab1c7: Merge "DO NOT MERGE. Integrate from master: Improve activity manager debug dumps." into honeycomb-mr2

* commit '2a20583a5f436d66ab73cd6c0fdc73e59a3cecad':
DO NOT MERGE. Integrate from master: Improve activity manager debug dumps.
24df0757f86851569b65dadd0dfa139521748b9c 14-May-2011 Dianne Hackborn <hackbod@google.com> am ed9321ab: am f9dd34f4: DO NOT MERGE: Integrate from main - Deprecate a bunch of APIs.

* commit 'ed9321ab5d282e40e7c5fa9caf0eb9d05646f2d0':
DO NOT MERGE: Integrate from main - Deprecate a bunch of APIs.
9a84983a9fd9959671e102045eaf185b83291269 08-Apr-2011 Dianne Hackborn <hackbod@google.com> DO NOT MERGE. Integrate from master: Improve activity manager debug dumps.

Activity manager now does all dump requests into apps
asynchronously, so it can nicely timeout if there is an
app problem. Also lots of general cleanup of the am
dump output.

Change-Id: I99447b87f77a701af52aeca984d93dfe931f065d
es/Configuration.java
f9dd34f4d3203fd50363b3b0247c5d0db6fe2c8f 20-Apr-2011 Dianne Hackborn <hackbod@google.com> DO NOT MERGE: Integrate from main - Deprecate a bunch of APIs.

And clean up some documentation.

Change-Id: I8f06e2fc3bb6c552581b64657e82ba690d524232
syncTaskLoader.java
oader.java
2e4a3236a7634d17f89288e9739a438ecbea0471 13-May-2011 Dianne Hackborn <hackbod@google.com> am 46a282f3: am 0ed2e845: Merge "DO NOT MERGE. Integrate add new screen width/height in "dp" configs." into honeycomb-mr2

* commit '46a282f323bc05606e4fe1eba795bd9ac7c99819':
DO NOT MERGE. Integrate add new screen width/height in "dp" configs.
ebff8f92f13513ce37bd74759eb1db63f2220590 13-May-2011 Dianne Hackborn <hackbod@google.com> DO NOT MERGE. Integrate add new screen width/height in "dp" configs.

You can now specify resource configuration variants "wNNNdp"
and "hNNNdp". These are the minimum screen width/height in "dp"
units. This allows you to do things like have your app adjust
its layout based only on the about of horizontal space available.

This introduces a new configuration change flag for screen size.
Note that this configuration change happens each time the orientation
changes. Applications often say they handle the orientation change
to avoid being restarted at a screen rotation, and this will now
cause them to be restarted. To address this, we assume the app can
handle this new config change if its target SDK version is < ICS.

Change-Id: I4acb73d82677b74092c1da9e4046a4951921f9f4
m/ActivityInfo.java
m/PackageParser.java
es/AssetManager.java
es/Configuration.java
es/Resources.java
3d0724dc220a2e027b9e38f61c39c84c28a505d5 13-May-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 0e59729b to master

Change-Id: I2d3a6bddf66b1df0c101c45ea2fec1cf65caf01b
0e59729b104e48c7d935026f565c4b45f1f37d12 13-May-2011 Dianne Hackborn <hackbod@google.com> am 97280816: am 0f1de9ad: New compat mode front end: UI and persistence.

* commit '972808164adde6c0784e9c836d06219a9cf7eb7f':
New compat mode front end: UI and persistence.
0f1de9adde0b52d2a385a76232bd7ac30c3eeea2 12-May-2011 Dianne Hackborn <hackbod@google.com> New compat mode front end: UI and persistence.

Adds a really crappy UI for toggling compat mode.

Persists compat mode selection across boots.

Turns on compat mode by default for newly installed apps.

Change-Id: Idc83494397bd17c41450bc9e9a05e4386c509399
es/CompatibilityInfo.java
4a627c71ff53a4fca1f961f4b1dcc0461df18a06 01-Apr-2011 Christopher Tate <ctate@google.com> Full local backup infrastructure

This is the basic infrastructure for pulling a full(*) backup of the
device's data over an adb(**) connection to the local device. The
basic process consists of these interacting pieces:

1. The framework's BackupManagerService, which coordinates the
collection of app data and routing to the destination.

2. A new framework-provided BackupAgent implementation called
FullBackupAgent, which is instantiated in the target applications'
processes in turn, and knows how to emit a datastream that contains
all of the app's saved data files.

3. A new shell-level program called "bu" that is used to bridge from
adb to the framework's Backup Manager.

4. adb itself, which now knows how to use 'bu' to kick off a backup
operation and pull the resulting data stream to the desktop host.

5. A system-provided application that verifies with the user that
an attempted backup/restore operation is in fact expected and to
be allowed.

The full agent implementation is not used during normal operation of
the delta-based app-customized remote backup process. Instead it's
used during user-confirmed *full* backup of applications and all their
data to a local destination, e.g. via the adb connection.

The output format is 'tar'. This makes it very easy for the end
user to examine the resulting dataset, e.g. for purpose of extracting
files for debug purposes; as well as making it easy to contemplate
adding things like a direct gzip stage to the data pipeline during
backup/restore. It also makes it convenient to construct and maintain
synthetic backup datasets for testing purposes.

Within the tar format, certain artificial conventions are used.
All files are stored within top-level directories according to
their semantic origin:

apps/pkgname/a/ : Application .apk file itself
apps/pkgname/obb/: The application's associated .obb containers
apps/pkgname/f/ : The subtree rooted at the getFilesDir() location
apps/pkgname/db/ : The subtree rooted at the getDatabasePath() parent
apps/pkgname/sp/ : The subtree rooted at the getSharedPrefsFile() parent
apps/pkgname/r/ : Files stored relative to the root of the app's file tree
apps/pkgname/c/ : Reserved for the app's getCacheDir() tree; not stored.

For each package, the first entry in the tar stream is a file called
"_manifest", nominally rooted at apps/pkgname. This file contains some
metadata about the package whose data is stored in the archive.

The contents of shared storage can optionally be included in the tar
stream. It is placed in the synthetic location:

shared/...

uid/gid are ignored; app uids are assigned at install time, and the
app's data is handled from within its own execution environment, so
will automatically have the app's correct uid.

Forward-locked .apk files are never backed up. System-partition
.apk files are not backed up unless they have been overridden by a
post-factory upgrade, in which case the current .apk *is* backed up --
i.e. the .apk that matches the on-disk data. The manifest preceding
each application's portion of the tar stream provides version numbers
and signature blocks for version checking, as well as an indication
of whether the restore logic should expect to install the .apk before
extracting the data.

System packages can designate their own full backup agents. This is
to manage things like the settings provider which (a) cannot be shut
down on the fly in order to do a clean snapshot of their file trees,
and (b) manage data that is not only irrelevant but actively hostile
to non-identical devices -- CDMA telephony settings would seriously
mess up a GSM device if emplaced there blind, for example.

When a full backup or restore is initiated from adb, the system will
present a confirmation UI that the user must explicitly respond to
within a short [~ 30 seconds] timeout. This is to avoid the
possibility of malicious desktop-side software secretly grabbing a copy
of all the user's data for nefarious purposes.

(*) The backup is not strictly a full mirror. In particular, the
settings database is not cloned; it is handled the same way that
it is in cloud backup/restore. This is because some settings
are actively destructive if cloned onto a different (or
especially a different-model) device: telephony settings and
AndroidID are good examples of this.

(**) On the framework side it doesn't care that it's adb; it just
sends the tar stream to a file descriptor. This can easily be
retargeted around whatever transport we might decide to use
in the future.

KNOWN ISSUES:

* the security UI is desperately ugly; no proper designs have yet
been done for it
* restore is not yet implemented
* shared storage backup is not yet implemented
* symlinks aren't yet handled, though some infrastructure for
dealing with them has been put in place.

Change-Id: Ia8347611e23b398af36ea22c36dff0a276b1ce91
m/ApplicationInfo.java
m/PackageParser.java
aa9d84c37e05f696ec158dac98ce38cf41e18314 10-May-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 05be6d6f to master

Change-Id: Ic6a6c5bb300f6f1d43f9ed550b284282b4f16212
05be6d6fe09ddfb706d1bef3b20c3d37f45e3c8a 10-May-2011 Dianne Hackborn <hackbod@google.com> am 4907d1d5: am 0c6cbf41: Merge "Better compat mode part one: start scaling windows." into honeycomb-mr2

* commit '4907d1d5e2c7d244b07579b8c52153df69754e85':
Better compat mode part one: start scaling windows.
e2515eebf42c763c0a2d9f873a153711778cfc17 28-Apr-2011 Dianne Hackborn <hackbod@google.com> Better compat mode part one: start scaling windows.

First step of improving app screen size compatibility mode. When
running in compat mode, an application's windows are scaled up on
the screen rather than being small with 1:1 pixels.

Currently we scale the application to fill the entire screen, so
don't use an even pixel scaling. Though this may have some
negative impact on the appearance (it looks okay to me), it has a
big benefit of allowing us to now treat these apps as normal
full-screens apps and do the normal transition animations as you
move in and out and around in them.

This introduces fun stuff in the input system to take care of
modifying pointer coordinates to account for the app window
surface scaling. The input dispatcher is told about the scale
that is being applied to each window and, when there is one,
adjusts pointer events appropriately as they are being sent
to the transport.

Also modified is CompatibilityInfo, which has been greatly
simplified to not be so insane and incomprehendible. It is
now simple -- when constructed it determines if the given app
is compatible with the current screen size and density, and
that is that.

There are new APIs on ActivityManagerService to put applications
that we would traditionally consider compatible with larger screens
in compatibility mode. This is the start of a facility to have
a UI affordance for a user to switch apps in and out of
compatibility.

To test switching of modes, there is a new variation of the "am"
command to do this: am screen-compat [on|off] [package]

This mode switching has the fundamentals of restarting activities
when it is changed, though the state still needs to be persisted
and the overall mode switch cleaned up.

For the few small apps I have tested, things mostly seem to be
working well. I know of one problem with the text selection
handles being drawn at the wrong position because at some point
the window offset is being scaled incorrectly. There are
probably other similar issues around the interaction between
two windows because the different window coordinate spaces are
done in a hacky way instead of being formally integrated into
the window manager layout process.

Change-Id: Ie038e3746b448135117bd860859d74e360938557
es/CompatibilityInfo.java
es/Configuration.java
es/Resources.java
b7642cbae40aa6b1c54e5b39ed046f7f52e327d9 26-Apr-2011 Jean-Baptiste Queru <jbq@google.com> am 31418a1e: am 45e13ec1: am 5fcfce96: am 4b72eec3: Merge "Re-assingning local variable if mStringBlocks was initialized here. NPE is thrown otherwise."

* commit '31418a1e9b905593587d8bf7a4705429db549d97':
Re-assingning local variable if mStringBlocks was initialized here. NPE is thrown otherwise.
31418a1e9b905593587d8bf7a4705429db549d97 26-Apr-2011 Jean-Baptiste Queru <jbq@google.com> am 45e13ec1: am 5fcfce96: am 4b72eec3: Merge "Re-assingning local variable if mStringBlocks was initialized here. NPE is thrown otherwise."

* commit '45e13ec1c5cd765162b7450b1c3a4632e8979894':
Re-assingning local variable if mStringBlocks was initialized here. NPE is thrown otherwise.
5fcfce965f1380ee7e151c1df75b247dd42b349e 26-Apr-2011 Jean-Baptiste Queru <jbq@google.com> am 4b72eec3: Merge "Re-assingning local variable if mStringBlocks was initialized here. NPE is thrown otherwise."

* commit '4b72eec34c983abb7a3afcbadd74d3bd807c4765':
Re-assingning local variable if mStringBlocks was initialized here. NPE is thrown otherwise.
eb6b9e649e0e8a9d8f7bcfaac38bc244825e911a 22-Apr-2011 Marco Nelissen <marcone@google.com> Fix javadoc.

Change-Id: I6de2ac39626cb8749a525c51234018986dd95969
ntent.java
9d13264f6b5818812e61d66baaada599b8ad1faf 22-Apr-2011 Dianne Hackborn <hackbod@google.com> Fix bug in deciding which rotation to use for an orientation.

Change-Id: Icc928c2188a5865035cafcdab2efd5bae3132b1f
es/Configuration.java
52c03d2cb9a782366e804d1910a7c8f072b05353 21-Apr-2011 Scott Main <smain@google.com> am a23ae0d7: am 69ccfd7a: am ca7f30eb: am b8a57841: Merge "docs: add a little info to Configuration class description" into honeycomb

* commit 'a23ae0d7be890b7590a87891b894a30f25bbd3ef':
docs: add a little info to Configuration class description
ca7f30ebb20dcf4c056f57a8c4ab3342cafaed83 21-Apr-2011 Scott Main <smain@google.com> am b8a57841: Merge "docs: add a little info to Configuration class description" into honeycomb

* commit 'b8a57841316171d6db4311a65914720213516153':
docs: add a little info to Configuration class description
63848e3df3a87c111617a81ff3e1f2685de7b031 21-Apr-2011 Scott Main <smain@google.com> docs: add a little info to Configuration class description

Change-Id: I3278759bd1c323330c1143ef71d0644872caa085
es/Configuration.java
9567a66a5e6f49dd8495fb5f6e2efb9f32e84b35 20-Apr-2011 Dianne Hackborn <hackbod@google.com> Deprecate a bunch of APIs.

And clean up some documentation.

Change-Id: I7882183b3daf883b7ac6098d19f88dc7cfbcdf61
syncTaskLoader.java
oader.java
25641ca1ac5b09727f86fe01389877332a00455d 19-Apr-2011 Amith Yamasani <yamasani@google.com> Merge "Plumbing in PackageManager and installd for multi-user support."
0e2c0f37d98bb5539b0fe41865aaf1add0ff1bb3 16-Apr-2011 Kenny Root <kroot@google.com> Break apart queries to getInstalled* API

To avoid blowing past the Binder IPC limit, change the
PackageManagerService to have a DB-like interaction where the client
tells the service the last "row" that it read.

The fact that we use a HashMap instead of a TreeMap makes this
problematic. For now we're just making a new ArrayList for the keys and
then sorting them for each call. This can make the API slower for callers
of this, but it's probably greatly overshadowed by the cost of the data
transfer itself.

Bug: 4064282
Change-Id: Ic370fd148d4c3813ae4f2daffa1a7c28d63d5a09
m/IPackageManager.aidl
m/ParceledListSlice.aidl
m/ParceledListSlice.java
41a5ed7cd9f56d955a797a485c11ae5e7ccfb094 19-Apr-2011 Jozef BABJAK <jozef.babjak@gmail.com> Re-assingning local variable if mStringBlocks was initialized here. NPE is thrown otherwise.

Change-Id: Ic8648aa5ae6a61348803171243c1c217feb058ec
es/AssetManager.java
0b285499db739ba50f2f839d633e763c70e67f96 15-Apr-2011 Amith Yamasani <yamasani@google.com> Plumbing in PackageManager and installd for multi-user support.

- Create /data/user directory and symlink /data/user/0 -> /data/data for
backward compatibility
- Create data directories for all packages for new user

- Remove data directories when removing a user

- Create data directories for all users when a package is created

- Clear / Remove data for multiple users

- Fixed a bug in verifying the location of a system app

- pm commands for createUser and removeUser (will be disabled later)

- symlink duplicate lib directories to the original lib directory

Change-Id: Id9fdfcf0e62406a8896aa811314dfc08d5f6ed95
m/IPackageManager.aidl
m/PackageManager.java
m/PackageParser.java
m/UserInfo.aidl
m/UserInfo.java
0c5001d776d56bae02a5cc2663286a125d99bc5e 13-Apr-2011 Dianne Hackborn <hackbod@google.com> Add APIs to remove tasks.

You can remove sub-tasks inside of a task, or an entire task.

When removing an entire task, you can have its process killed
as well.

When the process is killed, any running services will get an
onTaskRemoved() callback for them to do cleanup before their
process is killed (and the service possibly restarted).

Or they can set a new android:stopWithTask attribute to just
have the service automatically (cleanly) stopped at this point.

Change-Id: I1891bc2da006fa53b99c52f9040f1145650e6808
m/PackageParser.java
m/ServiceInfo.java
beb182a4945b9b762fac77edd1183897bcac5b32 11-Apr-2011 Amith Yamasani <yamasani@google.com> Merge "Package manager changes to store and update user information."
4b2e934928a2eb65927bd39197198c28c49efb94 31-Mar-2011 Amith Yamasani <yamasani@google.com> Package manager changes to store and update user information.

Some API stubs for managing users and storing their details.
List of users is stored in an xml file.
Each user's properties are stored in a separate xml file.

Some unit tests for modifying the XML files.

Change-Id: If2ce2420723111bd426f6762def3c2afc19a0ae5
m/PackageManager.java
m/UserInfo.java
43a17654cf4bfe7f1ec22bd8b7b32daccdf27c09 07-Apr-2011 Joe Onorato <joeo@google.com> Remove the deprecated things from Config.java. These haven't been working since before 1.0.

Change-Id: Ic2e8fa68797ea9d486f4117f3d82c98233cdab1e
ontentResolver.java
ontentService.java
ntentFilter.java
m/PackageParser.java
es/AssetManager.java
es/StringBlock.java
e17aeb31030cfeed339a39a107912ad5e9178390 08-Apr-2011 Dianne Hackborn <hackbod@google.com> Improve activity manager debug dumps.

Activity manager now does all dump requests into apps
asynchronously, so it can nicely timeout if there is an
app problem. Also lots of general cleanup of the am
dump output.

Change-Id: Id0dbccffb217315aeb85c964e379833e6aa3f5af
es/Configuration.java
9cdffa1788e2f24a674f185307000946aeb3760f 07-Apr-2011 Joe Onorato <joeo@google.com> A system setting for "advanced settings."

Change-Id: I622bc5fa7e5cba41362acd3b25ed9d3f119c72a2
ntent.java
3fc982f41fda1f254bfbc35490d81cd82a0ed90a 31-Mar-2011 Dianne Hackborn <hackbod@google.com> Add new resource configurations for screen width/height in "dp".

You can now specify resource configuration variants "wNNNdp"
and "hNNNdp". These are the minimum screen width/height in "dp"
units. This allows you to do things like have your app adjust
its layout based only on the about of horizontal space available.

This introduces a new configuration change flag for screen size.
Note that this configuration change happens each time the orientation
changes. Applications often say they handle the orientation change
to avoid being restarted at a screen rotation, and this will now
cause them to be restarted. To address this, we assume the app can
handle this new config change if its target SDK version is < ICS.

Change-Id: I22f8afa136b4f274423978c570fa7c9855040496
m/ActivityInfo.java
m/PackageParser.java
es/AssetManager.java
es/Configuration.java
es/Resources.java
2f98f2670828a42ef93fe782b5be82b1dfeba6ce 29-Mar-2011 Dianne Hackborn <hackbod@google.com> Expand screen documentation with explicit screen size dimensions.

This updates the various documentation on screen sizes to discuss
the exact screen dimensions that are now associated with each size.
In addition, the screen sizes vs. densities table is updated to
include a number of additional representative screens.

Change-Id: Id07491148b1857e0265cef7139e564e190f38e03
es/Configuration.java
18cd686fc828c9c75596de1494ecaa5467fcc195 23-Mar-2011 Scott Main <smain@google.com> am ef6b305b: docs: fix markup error

* commit 'ef6b305b93009b60ad7c6ddbd200d1b5c554963f':
docs: fix markup error
ef6b305b93009b60ad7c6ddbd200d1b5c554963f 23-Mar-2011 Scott Main <smain@google.com> docs: fix markup error

Change-Id: I59e379a7a36c4184862095442c53a6b9496d856e
m/PackageManager.java
7866be2b76e421ca28e5dcbd3e7d362baf279dd9 03-Mar-2011 Mike Lockwood <lockwood@android.com> am 40bbf929: DO NOT MERGE: Backport USB accessory support to gingerbread

* commit '40bbf9295d5245d3917629ce15f7b37670aef1ac':
DO NOT MERGE: Backport USB accessory support to gingerbread
3dee21eb0f253a7e78572872b8dfc7b5d990a063 02-Mar-2011 Kenny Root <kroot@google.com> Merge "Switch to returnCode for IPackageDeleteObserver"
40bbf9295d5245d3917629ce15f7b37670aef1ac 01-Mar-2011 Mike Lockwood <lockwood@android.com> DO NOT MERGE: Backport USB accessory support to gingerbread

Signed-off-by: Mike Lockwood <lockwood@android.com>
ontext.java
m/PackageManager.java
c39bb4aaa7be1b9b0cc9fb0b1f03d54f7609ffeb 28-Feb-2011 Kenny Root <kroot@google.com> Switch to returnCode for IPackageDeleteObserver

Before the IPackageDeleteObserver only knew whether the deletion
succeeded or failed, but not the reason why.

Bug: 2520191
Change-Id: I1f0d7c04f06c539660b6e17e7e133defb0f61b5b
m/IPackageDeleteObserver.aidl
m/PackageManager.java
c4308f01c965571dc2354107c3574df113e397ee 01-Mar-2011 Mike Lockwood <lockwood@android.com> Move USB framework support from android.hardware to android.hardware.usb package

Change-Id: I00fd4f0caaa4aebe48f71c576bb211b5f38bf88d
Signed-off-by: Mike Lockwood <lockwood@android.com>
ontext.java
f4ca247158ffb83139d675ac0e1d25239c310be2 27-Feb-2011 Mike Lockwood <lockwood@android.com> Add platform features for USB host and USB accessory support.

Also removed config_hasUsbHostSupport framework resource, which is now obsolete.

Change-Id: I6f18cc1c4f68085de8b8363e1b5edff79aff404f
Signed-off-by: Mike Lockwood <lockwood@android.com>
m/PackageManager.java
239f77d20adcc0e2ce67a7907b3f6ca75b13fd00 27-Feb-2011 Jeff Brown <jeffbrown@google.com> Fix a regression matching intents when action doesn't matter.

Bug: 3482199
Change-Id: I0960e4396f4e71e9a3fc71146730030a52f96e9f
ntentFilter.java
e7f972122db87dc54e41ed1a6e417534d43bca3a 24-Feb-2011 Dianne Hackborn <hackbod@google.com> Implement issue #3426299: Introduce application "stopped" state

The package manager now keeps track of whether an application is
stopped. There are new intent flags to control whether intent
filters in a stopped application will match the intent. This is
currently used in one place, sending broadcasts, so that stopped
apps can not be launched due to background processes.

The package manager during first init makes sure no applications
are in the stopped state. When new applications are installed,
that begin in the stopped state. When the activity manager is
launching a component of an application, it ensures the application
is taken out of the stopped state.

The "force stop" button in manage applications will now put an
application back in to the stopped state; it can't go back out
of the stopped state until one of its components is launched by
the activity manager.

There will probably be a few more places where we need to filter
stopped applications out of intent matches, but doing this for
broadcast is a very big first step.

This also introduces a new broadcast that is sent to an application
after it is replaced with a new .apk. But only if the app is not
in the stopped state. This makes it a lot easier for developers to
implement code to get their application back in proper running shape
after an upgrade.

Finally another new broadcast is added that is sent to a package's
installer at the first time it is launched. This allows the installer
to tell the package about it being installed only when it is first
actually used.

Change-Id: I589c53ff0e0ece868fe734ace4439c0d202dca2d
ntent.java
m/ApplicationInfo.java
m/IPackageManager.aidl
m/PackageParser.java
57283d7aba00e9e7b21d79778834140fa4207f12 22-Feb-2011 Jesse Wilson <jessewilson@google.com> Merge "Save a few bytes on the zygote heap."
179a3bda60044cf191ce9f47e3349398fc32bafb 18-Feb-2011 Jesse Wilson <jessewilson@google.com> Save a few bytes on the zygote heap.

The default LongSparseArray constructor builds two 10-element
arrays that we don't need.

Change-Id: I83ef4fbd8825109087cbe8990ad66d79eab33e5c
es/Resources.java
1bad83adf011ff4e6a6474c62b287d119ba43b3e 16-Feb-2011 Alon Albert <aalbert@google.com> Rename method to discourage use of this in favor of member field

Change-Id: Ie2d1e17e8879ad0f11fe815001fefccdd6603936
yncManager.java
b79db4cd5ccbe17e837c8943abb658bbf0dd0854 16-Feb-2011 Alon Albert <aalbert@google.com> am be5f82ab: Merge "DO NOT MERGE - Clear backoffs on reconnect" into gingerbread

* commit 'be5f82ab0ddacea3846cfa5aa846d1c97def0318':
DO NOT MERGE - Clear backoffs on reconnect
d1c3fe022efba45c43cc93694852884cb553314c 16-Feb-2011 Alon Albert <aalbert@google.com> Merge "Bring back auto clear backoff on reconnect Also, make sure it works this time by calling onBackoffChanged()"
ed1d253573a238fd53d27def24d298314f24d425 15-Feb-2011 Alon Albert <aalbert@google.com> Bring back auto clear backoff on reconnect
Also, make sure it works this time by calling onBackoffChanged()

Bug: 3460736
Change-Id: I0470d6cb0aabd798dab4116d5d135c7a2364ed28
yncManager.java
yncStorageEngine.java
c441e4e355b2c277da3ff72b6319cdf024d29e7f 16-Feb-2011 Alon Albert <aalbert@google.com> DO NOT MERGE - Clear backoffs on reconnect

Slightly modified backport from HC

Bug: 3460736
Change-Id: I155dfd34bb7abb76a10b5b58fe9a32af2449d4f1
yncManager.java
yncStorageEngine.java
55cdc0c9048fe63c5abe4ec8fc8a3479aba316d1 16-Feb-2011 Scott Main <smain@google.com> am 0ab1b326: am 13033ea5: docs: fix misc broken links

* commit '0ab1b326c72afb2bd7798462fcdd8e5d3b440fd2':
docs: fix misc broken links
0ab1b326c72afb2bd7798462fcdd8e5d3b440fd2 16-Feb-2011 Scott Main <smain@google.com> am 13033ea5: docs: fix misc broken links

* commit '13033ea52714d48d754c6bc8fccb18514c645a47':
docs: fix misc broken links
13033ea52714d48d754c6bc8fccb18514c645a47 15-Feb-2011 Scott Main <smain@google.com> docs: fix misc broken links

Change-Id: Id7d0ee36398aca452ceb2c3d15982397f58a06c6
m/package.html
121370d25c7c7113fb7913ab90f45c667b26af57 09-Feb-2011 Scott Main <smain@google.com> am 3c565377: am b508d6e2: Merge "docs: fix links to revised fundamentals documents" into honeycomb

* commit '3c5653773d6b48f27aa52d746a7a6f8728d5ba36':
docs: fix links to revised fundamentals documents
3c5653773d6b48f27aa52d746a7a6f8728d5ba36 08-Feb-2011 Scott Main <smain@google.com> am b508d6e2: Merge "docs: fix links to revised fundamentals documents" into honeycomb

* commit 'b508d6e26e3a1fd68bf637dc29df335f0e7ccd92':
docs: fix links to revised fundamentals documents
7aee61f5a96e94e158bf5ad3d8e192c4d4f7eff6 08-Feb-2011 Scott Main <smain@google.com> docs: fix links to revised fundamentals documents

Change-Id: Ie2a660cce1d00f924c9fde5c6a00776307e5e1c7
ontentProvider.java
ntent.java
f313e95821cdb7e9dca8e61d87747064a63e807b 07-Feb-2011 Alon Albert <aalbert@google.com> Merge "Move handing of a "cancel" inside try-finally block"
9257ec05639ac1a529c81ba94cc631b1fa5f49d9 07-Feb-2011 Alon Albert <aalbert@google.com> Move handing of a "cancel" inside try-finally block

Bug: 3417906
Change-Id: I87e41c0cdad74e2ba72a7b4d1f059e72d106e105
bstractThreadedSyncAdapter.java
4b7b7ccd6651f54239c8849d4d85a633c2bbdf6a 02-Feb-2011 John Reck <jreck@google.com> Fix COMPONENT_ENABLED_STATE check (copy from HC)

This fixes a problem where ai.enabled would be set to false incorrectly,
causing widgets to not show up in launcher.

Change-Id: I25e11ab9033e1d8d3dcc581edcbe40acdddd1f85
m/PackageParser.java
fe86a7f64c666b86c4aedbdd159c27e1cd0d7490 01-Feb-2011 Dianne Hackborn <hackbod@google.com> am 723453a7: am e9da0c1d: Merge "Fix issue #3408542: "resizeable" attribute required to get out of compat mode" into honeycomb

* commit '723453a7a77180b47720d3b5e8a9752349b77e2f':
Fix issue #3408542: "resizeable" attribute required to get out of compat mode
1368454815aaf793fe32ba32473fd11cf7b02e0d 31-Jan-2011 Dianne Hackborn <hackbod@google.com> am e6c6b760: DO NOT MERGE Fix issue #3408542: "resizeable" attribute required to get out of compat mode

* commit 'e6c6b760eb0c1068fdfa656007ec27e482313b58':
DO NOT MERGE Fix issue #3408542: "resizeable" attribute required to get out of compat mode
723453a7a77180b47720d3b5e8a9752349b77e2f 31-Jan-2011 Dianne Hackborn <hackbod@google.com> am e9da0c1d: Merge "Fix issue #3408542: "resizeable" attribute required to get out of compat mode" into honeycomb

* commit 'e9da0c1de179e3cdb2d3709bde2b5cb6eb192230':
Fix issue #3408542: "resizeable" attribute required to get out of compat mode
e6c6b760eb0c1068fdfa656007ec27e482313b58 31-Jan-2011 Dianne Hackborn <hackbod@google.com> DO NOT MERGE Fix issue #3408542: "resizeable" attribute required to get out of compat mode

The "resizeable" attribute of supports-screens was never well documented,
so many apps don't set it. Assuming that if they are explicitly saying
they support large or xlarge screens then they are also implying that they
are resizeable.

Change-Id: Ibce45539d8910dfddb4f548da5464b31ac4a3a89
es/CompatibilityInfo.java
2bfa2ea1ecc538bef44ff2a7da1e2db149fd9970 31-Jan-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3408542: "resizeable" attribute required to get out of compat mode

The "resizeable" attribute of supports-screens was never well documented,
so many apps don't set it. Assuming that if they are explicitly saying
they support large or xlarge screens then they are also implying that they
are resizeable.

Change-Id: Iaa1ad431c9868254af7581499477bff98ed109e5
es/CompatibilityInfo.java
cc322207ccc1234c26cd21733d7f4fadd49a36cf 31-Jan-2011 Dianne Hackborn <hackbod@google.com> am 97510f6a: am 260c3c77: Fix issue #3381489: IllegalStateException: attempt to re-open...

* commit '97510f6abda493119cbf7db84064291a7edacfc0':
Fix issue #3381489: IllegalStateException: attempt to re-open...
97510f6abda493119cbf7db84064291a7edacfc0 31-Jan-2011 Dianne Hackborn <hackbod@google.com> am 260c3c77: Fix issue #3381489: IllegalStateException: attempt to re-open...

* commit '260c3c77d9b340164e055f87002c64d78da6e836':
Fix issue #3381489: IllegalStateException: attempt to re-open...
260c3c77d9b340164e055f87002c64d78da6e836 31-Jan-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3381489: IllegalStateException: attempt to re-open...

...an already-closed object: android.database.sqlite.SQLiteQuery

It turns out there is a state we are missing -- the loader is
still needed, but in the inactive list. In this case the loader
needs to continue holding on to its current data, and not deliver
any new data (which would result in it releasing its old data).

This introduces the new state to Loader, and uses it in
AsyncTaskLoader so all subclasses of that should get the new
correct behavior.

A further improvement would be to unregister CursorLoader's
content listener when going in to this state, but that can
wait for later.

Change-Id: I6d30173b94f8e30b5be31d018accd328cc3388ec
syncTaskLoader.java
oader.java
2c376fc46cd01b12e003a7bf83d82f527f6efaf1 29-Jan-2011 Jeff Brown <jeffbrown@google.com> Optimize IntentResolver to reduce lookup time by 50%.

IntentResolver frequently iterates over hundreds of different IntentFilters
and spends much of its time creating iterators and comparing strings.
This change avoids reduces the amount of garbage created by eschewing
iterators where possible. The FastImmutableArraySet type on its own
provides a 2.5x speed boost compared to repeatedly iterating over a HashSet.

In absolute terms, during orientation changes we spent about 160ms resolving
11 intents and performing 1129 calls to IntentFilter.match. Now we spend
half of that time.

Change-Id: Ia120e0082c8cf0b572a0317b9ef4a22c766dbad6
ntent.java
ntentFilter.java
c42eb2cce70aa4e985615ef9d4cddfff435f7b7f 27-Jan-2011 Scott Main <smain@google.com> am d2b87091: am 0f2e2b8b: Merge "Update package descriptions with editorial revisions. Notably, this removes exessive info about resources from the content package, because it\'s not a good location and the info is avilable in the dev guide, but also added some of the

* commit 'd2b87091cc30c575496eb78ebea88297da775359':
Update package descriptions with editorial revisions. Notably, this removes exessive info about resources from the content package, because it's not a good location and the info is avilable in the dev guide, but also added some of the info to the Resources class description.
d2b87091cc30c575496eb78ebea88297da775359 27-Jan-2011 Scott Main <smain@google.com> am 0f2e2b8b: Merge "Update package descriptions with editorial revisions. Notably, this removes exessive info about resources from the content package, because it\'s not a good location and the info is avilable in the dev guide, but also added some of the info to the R

* commit '0f2e2b8b82c7b589bcc603ce57f8ff3d1c947784':
Update package descriptions with editorial revisions. Notably, this removes exessive info about resources from the content package, because it's not a good location and the info is avilable in the dev guide, but also added some of the info to the Resources class description.
0f2e2b8b82c7b589bcc603ce57f8ff3d1c947784 27-Jan-2011 Scott Main <smain@google.com> Merge "Update package descriptions with editorial revisions. Notably, this removes exessive info about resources from the content package, because it's not a good location and the info is avilable in the dev guide, but also added some of the info to the Resources class description." into honeycomb
036dfd0653c723d4515b43639b2ab0bbf50ce718 27-Jan-2011 Fabrice Di Meglio <fdimeglio@google.com> am 3782fe2b: am f728411b: Merge "Fix bug #3395355 ("adb shell dumpsys content" should present human readable failure messages instead of error codes)" into honeycomb

* commit '3782fe2b23c4a6fa2e512f1d200ffa85c37bfb14':
Fix bug #3395355 ("adb shell dumpsys content" should present human readable failure messages instead of error codes)
3782fe2b23c4a6fa2e512f1d200ffa85c37bfb14 27-Jan-2011 Fabrice Di Meglio <fdimeglio@google.com> am f728411b: Merge "Fix bug #3395355 ("adb shell dumpsys content" should present human readable failure messages instead of error codes)" into honeycomb

* commit 'f728411ba40d71a40a0cb0dbfcaa44764af17692':
Fix bug #3395355 ("adb shell dumpsys content" should present human readable failure messages instead of error codes)
f728411ba40d71a40a0cb0dbfcaa44764af17692 27-Jan-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #3395355 ("adb shell dumpsys content" should present human readable failure messages instead of error codes)" into honeycomb
dc2dd88249f5e3df672fc3c7e18f3ddfb08e02b5 26-Jan-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #3395355 ("adb shell dumpsys content" should present human readable failure messages instead of error codes)

- add human readable error messages

Change-Id: Ib6937684e61aca80b2c3bc78fd67b93c3df61d17
yncManager.java
f4f05b8f24183b9e0d6959fe8b71fb88543edd9b 07-Jan-2011 Scott Main <smain@google.com> Update package descriptions with editorial revisions.
Notably, this removes exessive info about resources
from the content package, because it's not a good location
and the info is avilable in the dev guide, but also
added some of the info to the Resources class description.

Change-Id: Ie78af26c9cec66314deb98e53078f48e16c08e70
ackage.html
m/package.html
es/Resources.java
es/package.html
7f13e47620077e44272f8bc795226fe55b540d33 26-Jan-2011 Dianne Hackborn <hackbod@google.com> am 1a904ded: am 8fca2ecc: Merge "New extra for GET_CONTENT." into honeycomb

* commit '1a904dedbb5a15b3e60cac0fab83a3734701aff6':
New extra for GET_CONTENT.
1a904dedbb5a15b3e60cac0fab83a3734701aff6 26-Jan-2011 Dianne Hackborn <hackbod@google.com> am 8fca2ecc: Merge "New extra for GET_CONTENT." into honeycomb

* commit '8fca2eccb03b9b8d71ec4a7ec088d617edec4e73':
New extra for GET_CONTENT.
c4d0e6fceafbf8b2f3e4e09bc2fc69af3c4eb92b 25-Jan-2011 Dianne Hackborn <hackbod@google.com> New extra for GET_CONTENT.

Change-Id: Ib367c02619ee301d9651dd70d35f7d57aa8a0cbc
ntent.java
1563966ca03361e2d90ecc66621dfb7a93c8ce8b 25-Jan-2011 Dianne Hackborn <hackbod@google.com> am 98d169ea: am 5d9d03a0: Maybe fix issue #3093599: java.lang.IndexOutOfBoundsException...

* commit '98d169eacd65e6278bb8eab354f0278065771e9f':
Maybe fix issue #3093599: java.lang.IndexOutOfBoundsException...
98d169eacd65e6278bb8eab354f0278065771e9f 25-Jan-2011 Dianne Hackborn <hackbod@google.com> am 5d9d03a0: Maybe fix issue #3093599: java.lang.IndexOutOfBoundsException...

* commit '5d9d03a0234faa3cffd11502f973057045cafe82':
Maybe fix issue #3093599: java.lang.IndexOutOfBoundsException...
5d9d03a0234faa3cffd11502f973057045cafe82 24-Jan-2011 Dianne Hackborn <hackbod@google.com> Maybe fix issue #3093599: java.lang.IndexOutOfBoundsException...

...Invalid index 0, size is 0 at
android.app.ActivityThread.performPauseActivity(ActivityThread.java:2326)

It looks like if an arrow key is dispatched between the time the
list view is told its data set has changed and it does the resulting
layout pass, we could try to move the position to a now invalid
index. This may prevent that from happening.

Also put in a better error message if saving state of a fragment
whose target is no longer in the fragment manager.

And fix a bug in PackageManager where we could return a null from
queryIntentActivities().

And add a new API to find out whether a fragment is being removed,
to help fix issue #3306021: NPE at
android.app.AlertDialog.getDefaultDialogTheme(AlertDialog.java)

Next, for new HC apps we can delay committing data to
storage until the activity is stopped.

Finally, use the new multi-threaded AyncTask executor in a few
places, so we don't have worked blocked by long-running tasks from
the application.

Change-Id: I27b2aafedf2e1bf3a2316309889613fa539760f3
syncTaskLoader.java
ontentProvider.java
c63ca57a16e9a3f5776376070cea748c9caa90aa 23-Jan-2011 Dan Morrill <morrildl@google.com> am fe7006c5: am 9dbf1351: Merge "Adding faketouch feature." into honeycomb

* commit 'fe7006c5fc6f972aca2a4471ea5cd7db3947e809':
Adding faketouch feature.
fe7006c5fc6f972aca2a4471ea5cd7db3947e809 23-Jan-2011 Dan Morrill <morrildl@google.com> am 9dbf1351: Merge "Adding faketouch feature." into honeycomb

* commit '9dbf1351e8cd1d8a320cdc7fecffc876fffb71f1':
Adding faketouch feature.
a537687c3863912b1199c13c1aa010d74c243fcc 23-Jan-2011 Dan Morrill <morrildl@google.com> Adding faketouch feature.

Change-Id: Idff0b059c2f82fa4237d6238710e87dc55ae76a8
m/PackageManager.java
e7d511e148bc901ef41ac44d7b3593e5d803f72f 30-Dec-2010 Mike Lockwood <lockwood@android.com> New APIs for USB host support:

UsbManager:
- is now a service retrievable via Context.getSystemService(Context.USB_SERVICE).
- provides support for returning a list all connected USB devices
- broadcasts ACTION_USB_DEVICE_ATTACHED and USB_DEVICE_DETACHED when devices
are added and removed from the USB host bus

UsbDevice:
- represents an attached USB device.

UsbInterface:
- represents an interface on a USB device
- devices may have multiple interfaces if they provide multiple
sets of functionality (for example, android phones typically have interfaces
for both USB mass storage and adb)

UsbEndpoint:
- represents an endpoint on a USB interface
- endpoints are used for sending or receiving data
(only in one or the other direction)

UsbRequest:
- encapsulates a send or receive request to be sent over an endpoint

Change-Id: Ieef3e434c62760770ea839070cf5eba1a705967a
Signed-off-by: Mike Lockwood <lockwood@android.com>
ontext.java
016c6daff019377a1baa63dfd027472c6b7ed6e1 18-Jan-2011 Dmitri Plotnikov <dplotnikov@google.com> am b92d08a7: am 48395385: Merge "Hiding the AsyncTaskLoader.waitForLoader method" into honeycomb

* commit 'b92d08a7385f241722b2299a988ab7a55053f6ea':
Hiding the AsyncTaskLoader.waitForLoader method
b92d08a7385f241722b2299a988ab7a55053f6ea 18-Jan-2011 Dmitri Plotnikov <dplotnikov@google.com> am 48395385: Merge "Hiding the AsyncTaskLoader.waitForLoader method" into honeycomb

* commit '48395385039a0c845bba8913c8d0c76981425aa4':
Hiding the AsyncTaskLoader.waitForLoader method
4afde4fda383116a9730aea1e931d4bce7ea0fd0 18-Jan-2011 Dmitri Plotnikov <dplotnikov@google.com> Hiding the AsyncTaskLoader.waitForLoader method

I introduced this method a couple of weeks ago,
but then we had a chat with Dianne and she made
a good point that rather than having this behavior
on AsyncTaskLoader, we should have it on LoaderManager
and then it will cover all kinds of loaders,
not just the ones inheriting from AsyncTaskLoader.
She suggested that we postpone that work until
after Honeycomb.

Change-Id: I1939956296cddb678791ba652ab5f4a0dd45eea1
syncTaskLoader.java
44b628d2f63f62b1c1990b1b6cb8ab63502264a7 18-Jan-2011 Dianne Hackborn <hackbod@google.com> am ad81f4ff: am f4c4b666: Merge "Remove old APIs." into honeycomb

* commit 'ad81f4ffb8b8c32afea1a742dbb9bbc734b7a8a1':
Remove old APIs.
ad81f4ffb8b8c32afea1a742dbb9bbc734b7a8a1 18-Jan-2011 Dianne Hackborn <hackbod@google.com> am f4c4b666: Merge "Remove old APIs." into honeycomb

* commit 'f4c4b666234d0e5c510c846b13382b77175f10e1':
Remove old APIs.
3c3a7f55bb818ccd14a7f29b94caf22e6658fabf 18-Jan-2011 Dianne Hackborn <hackbod@google.com> am 2d6dae2f: am 80ad0b0a: Merge "Fix a bunch of API review bugs." into honeycomb

* commit '2d6dae2f4d2ce98adcb6fe83bcaa91a506805859':
Fix a bunch of API review bugs.
2d6dae2f4d2ce98adcb6fe83bcaa91a506805859 18-Jan-2011 Dianne Hackborn <hackbod@google.com> am 80ad0b0a: Merge "Fix a bunch of API review bugs." into honeycomb

* commit '80ad0b0aeb5a55d2e62aaaf18863253501b87b60':
Fix a bunch of API review bugs.
17b9b81418c9166e181a992f27598e4de18d7203 18-Jan-2011 Dianne Hackborn <hackbod@google.com> Remove old APIs.

Change-Id: If676e4e7886ad71c4959d4253db99639b49218b8
lipData.java
327fbd2c8fa294b919475feb4c74a74ee1981e02 17-Jan-2011 Dianne Hackborn <hackbod@google.com> Fix a bunch of API review bugs.

3362464 API REVIEW: android.content potpourri
3362445 API REVIEW: Fragment transaction stuff
3362428 API REVIEW: Fragment stuff
3362418 API REVIEW: Loader stuff
3362414 API REVIEW: android.content.pm.ActivityInfo

Change-Id: I6475421a4735759b458acb67df4380cc6234f147
syncTaskLoader.java
roadcastReceiver.java
lipData.java
lipboardManager.java
ursorLoader.java
mlDocumentProvider.java
m/ActivityInfo.java
9b4320f9db98556479fb61d0910d852f0c6c1878 17-Jan-2011 Kenny Root <kroot@google.com> am a33dd09b: am d6c54d97: Merge "Revert "Add the {get,set}PackageObbPaths calls to API"" into honeycomb

* commit 'a33dd09b5cc62b50afc3a15cd8b67b5344756f1e':
Revert "Add the {get,set}PackageObbPaths calls to API"
a33dd09b5cc62b50afc3a15cd8b67b5344756f1e 17-Jan-2011 Kenny Root <kroot@google.com> am d6c54d97: Merge "Revert "Add the {get,set}PackageObbPaths calls to API"" into honeycomb

* commit 'd6c54d97867edd566700c535f3edf57dd4396350':
Revert "Add the {get,set}PackageObbPaths calls to API"
a1cbb94dbc9a82d4eb3a47242fe161af21803858 17-Jan-2011 Kenny Root <kroot@google.com> Revert "Add the {get,set}PackageObbPaths calls to API"

This reverts commit 5d40fe9c6846ba765072e50ed1254293cb9195e4.

Change-Id: Ie41010c92fb860b19a12bcf63f6fe95ffa68da81
m/IPackageManager.aidl
m/PackageManager.java
e26aa3f78a33af5720e141e98a1ab0c77ef0456d 17-Jan-2011 Kenny Root <kroot@google.com> am 34d2b41e: Revert "Add the {get,set}PackageObbPaths calls to API"

* commit '34d2b41e48281d1df2c844e004740f008e699093':
Revert "Add the {get,set}PackageObbPaths calls to API"
c05dc09d273abe36c222a2df6e2efe12c2e25efb 17-Jan-2011 Kenny Root <kroot@google.com> am 898954d7: am d37d6616: Merge "Add OBB size to PackageStats" into honeycomb

* commit '898954d7469260c339eb776d0a3370b7dbcee720':
Add OBB size to PackageStats
898954d7469260c339eb776d0a3370b7dbcee720 17-Jan-2011 Kenny Root <kroot@google.com> am d37d6616: Merge "Add OBB size to PackageStats" into honeycomb

* commit 'd37d661669cc019faa93177aee9c6143eebe490f':
Add OBB size to PackageStats
34d2b41e48281d1df2c844e004740f008e699093 17-Jan-2011 Kenny Root <kroot@google.com> Revert "Add the {get,set}PackageObbPaths calls to API"

This reverts commit 6c4d904851772313930f800ac7c323cf90c709bb.

Going with a different tactic that doesn't dump stuff on
PackageManagerService.

Bug: 3214719
Change-Id: I0bbeccf3c21d264deda4256eb53713d2c98284f4
m/IPackageManager.aidl
m/PackageManager.java
bcd6c96e753d2efc76f918c403cecbfdbd4f037a 17-Jan-2011 Kenny Root <kroot@google.com> Add OBB size to PackageStats

Bug: 3356814
Change-Id: I4f871fb9fd0cb2f3177cc756631f95d928862571
m/PackageStats.java
c886ff38c73983d028feae7cca0ee90915ebe67b 17-Jan-2011 Jeff Brown <jeffbrown@google.com> am fed9d654: am 5cdf0752: Merge "Support non-rectangular input regions." into honeycomb

* commit 'fed9d654e9f769a2d81682121faff01fee11555f':
Support non-rectangular input regions.
c293a5627fb50a741e390d978596688f7429b93a 17-Jan-2011 Dianne Hackborn <hackbod@google.com> am e27145d8: am 805fd7ee: Add API to get path to OBBs.

* commit 'e27145d83f144eb025f34985a02cda9cd5e0bcfe':
Add API to get path to OBBs.
a9d5188cc61969188311d223d3273e00d01dbb12 17-Jan-2011 Kenny Root <kroot@google.com> am d259468f: am fc28f412: Merge "Put externalSize measurements in PackageStats" into honeycomb

* commit 'd259468fe92b9714b45a134e781ce09681e70217':
Put externalSize measurements in PackageStats
f2d4c9ec33d35d56a5beca703ed2435d31887e19 17-Jan-2011 Dianne Hackborn <hackbod@google.com> am 8a3a5320: am bdacefba: Merge "Change FLAG_FORWARD_LOCK back to its original value to not break things." into honeycomb

* commit '8a3a5320e616b79a227e5e1e4bc22b0b909925e1':
Change FLAG_FORWARD_LOCK back to its original value to not break things.
3b403694be42836b50adb061448d6a27697b12ac 17-Jan-2011 Dianne Hackborn <hackbod@google.com> am 64e30643: am c237bb27: Merge "Add manifest API to request a large heap." into honeycomb

* commit '64e306430570fcfb35a1b14e1b333ad114b23829':
Add manifest API to request a large heap.
fed9d654e9f769a2d81682121faff01fee11555f 17-Jan-2011 Jeff Brown <jeffbrown@google.com> am 5cdf0752: Merge "Support non-rectangular input regions." into honeycomb

* commit '5cdf07524132722e0db69db1ca8dcaf3f0073265':
Support non-rectangular input regions.
5cdf07524132722e0db69db1ca8dcaf3f0073265 17-Jan-2011 Jeff Brown <jeffbrown@google.com> Merge "Support non-rectangular input regions." into honeycomb
fbf097732137a32930d151f7ba6816a5b870c32a 16-Jan-2011 Jeff Brown <jeffbrown@google.com> Support non-rectangular input regions.

This enables the system bar to carve out a region through which
events will be sent to the IME behind it.

Bug: 3238092
Change-Id: I69b855a8d9b5b3ee525266c0861826e53e5b5028
es/CompatibilityInfo.java
e27145d83f144eb025f34985a02cda9cd5e0bcfe 17-Jan-2011 Dianne Hackborn <hackbod@google.com> am 805fd7ee: Add API to get path to OBBs.

* commit '805fd7ee0e5dc2939e85c84f78d9890a51982bc0':
Add API to get path to OBBs.
805fd7ee0e5dc2939e85c84f78d9890a51982bc0 17-Jan-2011 Dianne Hackborn <hackbod@google.com> Add API to get path to OBBs.

Also hide the bitmap thumbnail stuff, we can't support it in its
current form.

And fix some bugs with propagating paths to native code. Yikes!

Change-Id: I13ab37ddbdba5c073489cba5eab035117d3c1574
ontext.java
ontextWrapper.java
d259468fe92b9714b45a134e781ce09681e70217 17-Jan-2011 Kenny Root <kroot@google.com> am fc28f412: Merge "Put externalSize measurements in PackageStats" into honeycomb

* commit 'fc28f412b54d811c61d4997ea94c79875f9ad015':
Put externalSize measurements in PackageStats
fc28f412b54d811c61d4997ea94c79875f9ad015 17-Jan-2011 Kenny Root <kroot@google.com> Merge "Put externalSize measurements in PackageStats" into honeycomb
366949c2d934435ff9ef8082408ca36ff14a2241 15-Jan-2011 Kenny Root <kroot@google.com> Put externalSize measurements in PackageStats

When measuring a package's usage, put the external size in the
PackageStats as well. This will allow programs using a lot of space on
the external card to be held accountable.

Bug: 3308791
Change-Id: If2df07bdbf6ffb31577074fad8f4a87ca4e89086
m/PackageStats.java
8a3a5320e616b79a227e5e1e4bc22b0b909925e1 16-Jan-2011 Dianne Hackborn <hackbod@google.com> am bdacefba: Merge "Change FLAG_FORWARD_LOCK back to its original value to not break things." into honeycomb

* commit 'bdacefba95dcd2680b17120d1721167f5c7990c3':
Change FLAG_FORWARD_LOCK back to its original value to not break things.
75e616e8203a540c860888ccff73ffaa87498c5e 16-Jan-2011 Dianne Hackborn <hackbod@google.com> Change FLAG_FORWARD_LOCK back to its original value to not break things.

Change-Id: Ib9a38521cc5031a81bae5a830aaf458b8a5ee7a5
m/ApplicationInfo.java
64e306430570fcfb35a1b14e1b333ad114b23829 16-Jan-2011 Dianne Hackborn <hackbod@google.com> am c237bb27: Merge "Add manifest API to request a large heap." into honeycomb

* commit 'c237bb2776facbfd3325ef23865fd7f6ced67f17':
Add manifest API to request a large heap.
3b81bc18bb661c02ad8074c39dab16644c1e65d0 15-Jan-2011 Dianne Hackborn <hackbod@google.com> Add manifest API to request a large heap.

You can now do android:largeHeap="true" on an application.

Doesn't yet do anything, waiting for Dalvik API.

Also tweak package parsing so that the SDK API level is set in the
configuration, allowing manifest resource value selection based on
that.

Change-Id: I6e035f9702a97b055416743b88f83a22ba4a9584
m/ApplicationInfo.java
m/PackageParser.java
es/Resources.java
dd4a1e3825f4f379ba36fd721f78de0101bb1833 15-Jan-2011 Dianne Hackborn <hackbod@android.com> am 7d234fab: Merge "Don\'t drop the drawable cache completely on configuration change"

* commit '7d234fabe61cd5f034fe4ff4484209fbf5130c4d':
Don't drop the drawable cache completely on configuration change
f445a8800936aa2f4074ae10a5692668b82a3aa0 15-Jan-2011 Dianne Hackborn <hackbod@google.com> am 909d447d: am 0b08c5cb: Merge "Don\'t drop the drawable cache completely on configuration change" into honeycomb

* commit '909d447d8ab565019f05c2003bc4f9d1037b1b17':
Don't drop the drawable cache completely on configuration change
909d447d8ab565019f05c2003bc4f9d1037b1b17 15-Jan-2011 Dianne Hackborn <hackbod@google.com> am 0b08c5cb: Merge "Don\'t drop the drawable cache completely on configuration change" into honeycomb

* commit '0b08c5cb14e848f41eb33093c3e8198ab416e0ab':
Don't drop the drawable cache completely on configuration change
0b08c5cb14e848f41eb33093c3e8198ab416e0ab 15-Jan-2011 Dianne Hackborn <hackbod@google.com> Merge "Don't drop the drawable cache completely on configuration change" into honeycomb
27b775a62df01e214b139f44bb9b0b306097d9e9 14-Jan-2011 Kenny Root <kroot@google.com> am d9fa11b4: am 312206b9: Merge "Add the {get,set}PackageObbPaths calls to API" into honeycomb

* commit 'd9fa11b446da5dbc92776518c20bab1f04e55537':
Add the {get,set}PackageObbPaths calls to API
d9fa11b446da5dbc92776518c20bab1f04e55537 14-Jan-2011 Kenny Root <kroot@google.com> am 312206b9: Merge "Add the {get,set}PackageObbPaths calls to API" into honeycomb

* commit '312206b98749bbe395416634e6e82bd242b1d5f2':
Add the {get,set}PackageObbPaths calls to API
312206b98749bbe395416634e6e82bd242b1d5f2 14-Jan-2011 Kenny Root <kroot@google.com> Merge "Add the {get,set}PackageObbPaths calls to API" into honeycomb
0142e990ff8cf4f04265c0a77c9eabc9b52fc620 14-Jan-2011 Dianne Hackborn <hackbod@google.com> am f21ae269: am d922ae01: Add Holo theme for IMEs.

* commit 'f21ae26935349f45c55afa5c8e45e1f6aa880915':
Add Holo theme for IMEs.
f21ae26935349f45c55afa5c8e45e1f6aa880915 14-Jan-2011 Dianne Hackborn <hackbod@google.com> am d922ae01: Add Holo theme for IMEs.

* commit 'd922ae01ca99a2b6d39a9393f86776a1d10ebd14':
Add Holo theme for IMEs.
6efd2bad954e0e5bd74916a32f036a0f149dcd4d 13-Jan-2011 Christopher Lais <chris+android@zenthought.org> Don't drop the drawable cache completely on configuration change

There was a lot of fancy code just above the clear to ensure
that drawables that aren't affected by the change are kept,
then the entire array was cleared. This patch removes the
clear, so that the drawables that haven't changed are really
kept, matching the logs, comments and larger part of the code.

This patch also fixes the various constant states to return
correct ChangingConfigurations.

Change-Id: Ic11f6179537318d3de16dc58286989eb62a07f15
Old-Change-Id: I22495e6ed232dfe056207ce5155405af1fa82428
es/Resources.java
d922ae01ca99a2b6d39a9393f86776a1d10ebd14 14-Jan-2011 Dianne Hackborn <hackbod@google.com> Add Holo theme for IMEs.

Also clean up theme selection code to get rid of duplication.

Change-Id: Idf7b21db70ee83fce24756ead877169bd08b77a9
es/Resources.java
5d40fe9c6846ba765072e50ed1254293cb9195e4 14-Jan-2011 Kenny Root <kroot@google.com> Add the {get,set}PackageObbPaths calls to API

Add getPackageObbPaths() and setPackageObbPaths() to the public API.

Bug: 3214719
Change-Id: I8627b5f674a795d5780eb5c08911419110670a41
m/IPackageManager.aidl
m/PackageManager.java
8d71769b9bc3d0e72b26217d9059ce4473a91fe5 13-Jan-2011 Christopher Lais <chris+android@zenthought.org> Don't drop the drawable cache completely on configuration change

There was a lot of fancy code just above the clear to ensure
that drawables that aren't affected by the change are kept,
then the entire array was cleared. This patch removes the
clear, so that the drawables that haven't changed are really
kept, matching the logs, comments and larger part of the code.

This patch also fixes the various constant states to return
correct ChangingConfigurations.

Change-Id: Ic11f6179537318d3de16dc58286989eb62a07f15
Old-Change-Id: I22495e6ed232dfe056207ce5155405af1fa82428
es/Resources.java
8c3dc00a7d34776f1abff6dabd4a3d9f377952a0 13-Jan-2011 Jason parks <jparks@google.com> am 4a534fa8: am a3cdaa53: Revert "Remove the APIs for the old encryption scheme."

* commit '4a534fa899e0101e26e5b670383aa357c10483b8':
Revert "Remove the APIs for the old encryption scheme."
4a534fa899e0101e26e5b670383aa357c10483b8 13-Jan-2011 Jason parks <jparks@google.com> am a3cdaa53: Revert "Remove the APIs for the old encryption scheme."

* commit 'a3cdaa5337fa573c4c61770195d6232c2e587090':
Revert "Remove the APIs for the old encryption scheme."
a3cdaa5337fa573c4c61770195d6232c2e587090 13-Jan-2011 Jason parks <jparks@google.com> Revert "Remove the APIs for the old encryption scheme."

This reverts commit 1125d780a8b61703b8eb28c5c77dac5f3f0022dd.
yncStorageEngine.java
m/ApplicationInfo.java
m/PackageParser.java
02f9acbdb4df8758d0474a1a968f12bd18ed6f92 13-Jan-2011 Jason parks <jparks@google.com> am da6f7dbf: am ca6777b2: Merge "Remove the APIs for the old encryption scheme." into honeycomb

* commit 'da6f7dbf9f8bf90c84147dbc57b885b3ece03e81':
Remove the APIs for the old encryption scheme.
da6f7dbf9f8bf90c84147dbc57b885b3ece03e81 13-Jan-2011 Jason parks <jparks@google.com> am ca6777b2: Merge "Remove the APIs for the old encryption scheme." into honeycomb

* commit 'ca6777b23bbe9283380efb2ba7e6d0a79d8669db':
Remove the APIs for the old encryption scheme.
ca6777b23bbe9283380efb2ba7e6d0a79d8669db 13-Jan-2011 Jason parks <jparks@google.com> Merge "Remove the APIs for the old encryption scheme." into honeycomb
2f71565aac3bbbe7b5b592a438161a39f983e6e3 13-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> am ef5864f1: am 2e390809: Merge "Unhide Content{Resolver,Provider}.call()" into honeycomb

* commit 'ef5864f1bb1418307c40fc8ed4cae7545d8a44dd':
Unhide Content{Resolver,Provider}.call()
470750793b6e930a323ee63cbed05c43dc435ba1 13-Jan-2011 Kenny Root <kroot@google.com> am e8c04db7: Merge "Add the {get,set}PackageObbPaths calls to API" into gingerbread

* commit 'e8c04db71e347396e9537ead7113ba9f46706e44':
Add the {get,set}PackageObbPaths calls to API
e8c04db71e347396e9537ead7113ba9f46706e44 13-Jan-2011 Kenny Root <kroot@google.com> Merge "Add the {get,set}PackageObbPaths calls to API" into gingerbread
ef5864f1bb1418307c40fc8ed4cae7545d8a44dd 13-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> am 2e390809: Merge "Unhide Content{Resolver,Provider}.call()" into honeycomb

* commit '2e3908097b1c86004d50c0a070ca6b76a4d0d7c5':
Unhide Content{Resolver,Provider}.call()
534c84c1ce19ae20ded249315c3c0558577eca6c 12-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> Unhide Content{Resolver,Provider}.call()

Change-Id: Ic7833b921f5a8e70ef7d565bfdf461e6e135ff1b
ontentProvider.java
ontentResolver.java
ContentProvider.java
1125d780a8b61703b8eb28c5c77dac5f3f0022dd 12-Jan-2011 Jason parks <jparks@google.com> Remove the APIs for the old encryption scheme.

Change-Id: I55116a5b29b10dfd50015805ec019b485257f68b
yncStorageEngine.java
m/ApplicationInfo.java
m/PackageParser.java
090093592e24a067c08c4049344fcf37601960c0 12-Jan-2011 Kenny Root <kroot@google.com> am c669559d: am b5a4b5d3: Merge "Allow updated system apps to retain priority" into honeycomb

* commit 'c669559dc3c1d348145d902c623166a9d874b5a8':
Allow updated system apps to retain priority
c669559dc3c1d348145d902c623166a9d874b5a8 12-Jan-2011 Kenny Root <kroot@google.com> am b5a4b5d3: Merge "Allow updated system apps to retain priority" into honeycomb

* commit 'b5a4b5d300bc05a969181155a4f155a79241f792':
Allow updated system apps to retain priority
0ee294470d09e1de0ce0fe6e3246e98e450a4d26 12-Jan-2011 Kenny Root <kroot@google.com> am 6688b6c3: Merge "Allow updated system apps to retain priority" into gingerbread

* commit '6688b6c31765242866fc276cea7fa241fc5b5e7b':
Allow updated system apps to retain priority
502e9a47c64d819a7aa45251bcf7cb5dd77a310b 10-Jan-2011 Kenny Root <kroot@google.com> Allow updated system apps to retain priority

Previously any updated system apps would not be able to have a greater
than 0 priority on an activity intent filter. Moving the priority check
later in the package scanning allows it to apply to updated system
packages as well.

Cherry-pick from gingerbread branch

Bug: 2572398
Change-Id: I95d8b6360bf7a3f39cd7a1ff09e1ee57e11583d8
m/PackageParser.java
8fecde99056df835ad2edd795bc9fa7593c4cd2a 12-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> am 43194ce0: am 52d70722: am cb842753: Merge "Closing cursor in finalizer to avoid GREF and fd leak in acore"

* commit '43194ce05eef26665572fb248a108fd24d247a8f':
Closing cursor in finalizer to avoid GREF and fd leak in acore
43194ce05eef26665572fb248a108fd24d247a8f 12-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> am 52d70722: am cb842753: Merge "Closing cursor in finalizer to avoid GREF and fd leak in acore"

* commit '52d70722654548d156bd7a1cb8c1f05b94b09f06':
Closing cursor in finalizer to avoid GREF and fd leak in acore
b540514cb2a85f8f52ed03229eb6fc6adce1a020 12-Jan-2011 Dianne Hackborn <hackbod@google.com> am b5637c46: am 45a8f53b: Merge "Get rid of old ParcelFileDescriptor API." into honeycomb

* commit 'b5637c467d7ea859f589d2006f3806c5a2c4a27f':
Get rid of old ParcelFileDescriptor API.
540f86aa42877ac73f6f2f24dac49382432aa078 12-Jan-2011 Dianne Hackborn <hackbod@google.com> Get rid of old ParcelFileDescriptor API.

Also some new debugging code in AsyncTaskLoader.

Change-Id: Ib13386b7862821cf0ee31b003bedef78f46240f1
syncTaskLoader.java
1c6e764275934b0ddf65aeb86179c75a50ba15d4 10-Jan-2011 Kenny Root <kroot@google.com> Allow updated system apps to retain priority

Previously any updated system apps would not be able to have a greater
than 0 priority on an activity intent filter. Moving the priority check
later in the package scanning allows it to apply to updated system
packages as well.

Bug: 2572398
Change-Id: I9fdf7906809518b28b49ffec31afec1442d85d3c
m/PackageParser.java
486bca10f5a245fa04ad7ea5ba2acba2f9c82d33 11-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> am 24bc5331: am cef29578: Merge "Change local names for greater clarity." into honeycomb

* commit '24bc5331cd302bfdf83ebee14a6acff7b6b48a34':
Change local names for greater clarity.
cef295780ade72a26201c0c92ed2b64fde03a261 11-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> Merge "Change local names for greater clarity." into honeycomb
1b744ca49cd61482c9537e08dbd48e60037b2779 11-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> Change local names for greater clarity.

Change-Id: I806284317c0c756260080b6c006b4c338b9cbc6d
yncManager.java
fab3f2fef84a100affd48694436c77b36733db0b 11-Jan-2011 Joe Onorato <joeo@google.com> am cb649050: am e5e95588: Merge "add ComponentInfo.isEnabled()" into honeycomb

* commit 'cb649050a9af1df45df5e99f965307e6684ac56d':
add ComponentInfo.isEnabled()
e38cabf5442745a462ad98013507cf6874221f68 11-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> am 7710465f: am 55ccb887: Merge "Don\'t check for services before boot-complete" into honeycomb

* commit '7710465f38217fd452ec6512c2c5d84c65d37729':
Don't check for services before boot-complete
a85a91573af97a76ab08ffd5f8558b73283e1faa 08-Jan-2011 Joe Onorato <joeo@google.com> add ComponentInfo.isEnabled()

Change-Id: I5ce59f62dc0ce3ce446bdbe397d1515e43031d76
m/ComponentInfo.java
03b15b976c7ba1a45e423fd3743fc7a28c28a7d9 11-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> Don't check for services before boot-complete

fixes the build

Change-Id: I2ee55d9aaad53dac16fa8182df3a7b43b57eb719
yncManager.java
e896be71c70c7aaa86886fec1044c53e93c42621 10-Jan-2011 Subir Jhanb <subir@google.com> Making the sync manager take the data connected value from ConnectivityManager and not from the intent.
BUG:3337128

Change-Id: Ife2705569fcdde1b201773d6622a8a9d0b7ccfa1
yncManager.java
753c57bf729def69be3f3ed0bcc07b0d858b73bb 10-Jan-2011 Subir Jhanb <subir@google.com> Making the sync manager take the data connected value from ConnectivityManager and not from the intent.
BUG: 3337128
BUG: 3334394

Change-Id: I75b88c7cc0be526e8e7e441aa2668307e2452e62
yncManager.java
52d70722654548d156bd7a1cb8c1f05b94b09f06 10-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> am cb842753: Merge "Closing cursor in finalizer to avoid GREF and fd leak in acore"

* commit 'cb8427538dfdc5eae941e377b11bfd11a95fc5a5':
Closing cursor in finalizer to avoid GREF and fd leak in acore
872a52c6b637faf75262b83fe68ff4e0d9fe044c 20-Dec-2010 Johannes Carlsson <johannes.carlsson.x@sonyericsson.com> Closing cursor in finalizer to avoid GREF and fd leak in acore

The finalize() call did not clean up completely, this eventually
caused the android.process.acore to crash since it ran out of fds
and GREF to increased above 2000 if an application forgot to close
its cursor objects. A warning was also added when this happens so
that application developers can correct their mistake. The
included test case tries to verify that the finalizer works as
expected by creating a bunch of Cursor objects without closing
them (without this fix the acore process crashes after about 400
iterations and the test case ends with "Process crashed").

Change-Id: I11e485cef1ac02e718b2742108aa88793666c31d
ontentResolver.java
6c4d904851772313930f800ac7c323cf90c709bb 19-Nov-2010 Kenny Root <kroot@google.com> Add the {get,set}PackageObbPaths calls to API

Add getPackageObbPaths() and setPackageObbPaths() to the public API.

Bug: 3214719
Change-Id: Icb9f2f92f8c59bb3d31317f609854e81abbd1449
m/IPackageManager.aidl
m/PackageManager.java
1f22d2a31abc5fa8a2d97f1f506bb2c25c87a96b 08-Jan-2011 Dianne Hackborn <hackbod@google.com> DO NOT MERGE Fix issue #3333958: Package Manager can sometimes mistakenly think...

...an app is disabled!

Ouch.

Change-Id: I45dc2beef4e413fd447d905632901fadd924cb6e
m/PackageParser.java
412ebd6f9d18eebc11d8473318316aef1dfc5caa 09-Jan-2011 Dianne Hackborn <hackbod@google.com> am 433863b1: Fix issue #3333958: Package Manager can sometimes mistakenly think...

* commit '433863b1085248a8fdc9bcd0ac8501cc6a7b8ace':
Fix issue #3333958: Package Manager can sometimes mistakenly think...
433863b1085248a8fdc9bcd0ac8501cc6a7b8ace 08-Jan-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3333958: Package Manager can sometimes mistakenly think...

...an app is disabled!

Ouch.

Change-Id: I5788c5f8edfe2a0d6f4f0f3359e1742f8ed8d98e
m/PackageParser.java
59d8edd09dc88cc0eb629bdee711a004d300f2fa 09-Jan-2011 Dmitri Plotnikov <dplotnikov@google.com> Fixed the waitForLoader method.

The reason we need a separate latch is that
AsyncTask will post onPostExecute/onCancelled
_after_ executing mFuture.get(). The previous
implementation would only wait for mFuture.get()
to complete and not the entire task.

Change-Id: I96964591980965148eb09af38b5838bfa5d28277
syncTaskLoader.java
247fe74c934cb3fba85aae7e051a8044f460fb11 09-Jan-2011 Dianne Hackborn <hackbod@google.com> Implement issue # 3255887 could CursorLoader offer...

...to throttle contentobserver-based requeries

Why yes, I guess it could.

This also reworks AsyncTaskLoader to not generate multiple
concurrent tasks if it is getting change notifications before
the last background task is complete.

And removes some of the old APIs that had been deprecated but
need to be gone for final release.

And fixes a few little problems with applying the wrong theme
in system code.

Change-Id: Ic7a665b666d0fb9d348e5f23595532191065884f
syncTaskLoader.java
ontext.java
ontextWrapper.java
ursorLoader.java
oader.java
cd3676e7b835653b04d4f66251a63749e7603f5b 07-Jan-2011 Dmitri Plotnikov <dplotnikov@google.com> Adding AsyncTaskLoader.waitForLoader() for testing

Change-Id: I8a4c13d48c9deca70594be58beafb68f08da65ea
syncTaskLoader.java
b35cd54b88292bd6cf0387406ad9071f5475c6a7 05-Jan-2011 Dianne Hackborn <hackbod@google.com> No longer needed.

Change-Id: Ia2e8264147bb02e29599227d0588e40b1e626358
m/PackageParser.java
2967aa3e6060f582f166cdb334a0fb9ff0cb4759 28-Dec-2010 Alon Albert <aalbert@google.com> am 672ebb61: Merge "Improved ignore-backoff handling Allow a non-epidited ignore-backoff op to pass through an expidited backed off op." into gingerbread

* commit '672ebb61a755e4bbe60e4e884b1adadf186733b6':
Improved ignore-backoff handling Allow a non-epidited ignore-backoff op to pass through an expidited backed off op.
03ee779b28227e75f16cb6240c5c667d097e59d1 28-Dec-2010 Jean-Baptiste Queru <jbq@google.com> am e90a1b16: am 752942ec: Merge "The phone is crashing when unknown mime content is transferred."

* commit 'e90a1b16a3d6c559cb7fc47ad967a1810d88e923':
The phone is crashing when unknown mime content is transferred.
e90a1b16a3d6c559cb7fc47ad967a1810d88e923 28-Dec-2010 Jean-Baptiste Queru <jbq@google.com> am 752942ec: Merge "The phone is crashing when unknown mime content is transferred."

* commit '752942ec4719e6a274d6ab11103ac28459cb0f0c':
The phone is crashing when unknown mime content is transferred.
d41fe75f09fa09fc708d389572639511d745c20e 22-Dec-2010 Alon Albert <aalbert@google.com> Improved ignore-backoff handling
Allow a non-epidited ignore-backoff op to pass through
an expidited backed off op.

To do this, I first refactored the complicated if statement:

if (best == null
|| ((bestSyncableIsUnknownAndNotARetry == syncableIsUnknownAndNotARetry)
? (best.expedited == op.expedited
? opRunTime < bestRunTime
: op.expedited)
: syncableIsUnknownAndNotARetry)) {
best = op;
bestSyncableIsUnknownAndNotARetry = syncableIsUnknownAndNotARetry;
bestRunTime = opRunTime;
}

Into a more readable:
boolean setBest = false;
if (best == null) {
setBest = true;
} else if (bestSyncableIsUnknownAndNotARetry == syncableIsUnknownAndNotARetry) {
if (best.expedited == op.expedited) {
if (opRunTime < bestRunTime) {
// if both have same level, earlier time wins
setBest = true;
}
} else {
if (op.expedited) {
setBest = true;
}
}
} else {
if (syncableIsUnknownAndNotARetry) {
setBest = true;
}
}
if (setBest) {
best = op;
bestSyncableIsUnknownAndNotARetry = syncableIsUnknownAndNotARetry;
bestRunTime = opRunTime;
}

The refactoring was all done automatically with IntelliJ to avoid human error
in the conversion.

After verifying this code still behaved as expected including the error
condition in the bug, I added handling for the cases when a non-expidited op
may override an expedited op if certain conditions occur, specificaly, if the
expidited op is backed off and the non-expidited op is not.

Finally, refactored to make it testable and added tests and logging.

Bug: 3128963

Change-Id: I131cbcec6073ea5fe425f6b5aa88ca56c02b6598
yncQueue.java
0e3b8f421dfcc5363f234eb1b76479cb2fb2e8ee 21-Dec-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3301572: onCreateLoader must not be a member class: VolumeMetadataLoader

Also some various cleanup.

Change-Id: I8e8616a86c50c86817f7ec9bb02a5954c1ccd84f
syncTaskLoader.java
ursorLoader.java
oader.java
145e6c4975536d927e506634514a06c43313df17 20-Dec-2010 Ola Olsson <ola1.olsson@sonyericsson.com> The phone is crashing when unknown mime content is transferred.

The content resolver does not take care of the IllegalStateException
that is thrown in getType and that needs to be fixed.

Change-Id: I3e66f1aa259ab91fb9233e1ba07faa1ab6c3f2dd
ontentResolver.java
a2ea747faaf5fcd437afbaaf4085cfc29e7c16b8 20-Dec-2010 Dianne Hackborn <hackbod@google.com> More cleanup of Loader APIs.

- Remove old method names.
- Introduce onXxx() hooks to Loader.
- Improve debugging.

Change-Id: I3fba072a05c7023aa7d2c3eb4e126feb514ab6d8
syncTaskLoader.java
ursorLoader.java
oader.java
8c972f2ce200a0f4b452cd5abb0ff0ae8fb5ee05 18-Dec-2010 Dianne Hackborn <hackbod@google.com> Merge "Some fixes to the new loader management."
f73c75ca20fcaaee1b0eeaaf756252c33e3099c6 18-Dec-2010 Dianne Hackborn <hackbod@google.com> Some fixes to the new loader management.

Change-Id: Ib882be5762b0ebeed9b027754159f401232718e9
ursorLoader.java
b23a82cc035bf48454732b1ef9d7c7643d79861a 17-Dec-2010 Fred Quintana <fredq@google.com> Merge "fix the TooManyDeletes to show up again"
c91893511dc1b9e634648406c9ae61b15476e65d 15-Dec-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3272082: Contacts: when going back from edit view,
list UI is not ready yet

This involves some reworking of Loaders.

Loaders, in particular CursorLoader, are now expected to retain
their current data after being stopped. This allows applications
to keep that data across onStop() -> onStart(), so when the user
returns to the app it doesn't have to wait for the data to reload
and thus cause flicker.

This includes various API changes to better reflect the new
semantics, plus a new LoaderCallbacks method to tell the application
when it is actually time to stop their use of a loader's data.

Note this is somewhat half-done, to help checking in the extensive
application changes that are required without causing build breakage.

Change-Id: Ib4b3bf8185a6da46e7f06ca125521d65e2e380a1
ursorLoader.java
oader.java
b19e62add0a747127952862bb7bea0b73379edcc 16-Dec-2010 Fred Quintana <fredq@google.com> fix the TooManyDeletes to show up again

It was moved so it was no longer in the location that
SyncManager expected. I fixed it by (a) moving it to the
SyncManager directory and by (b) changing the SyncManager to
refer to it by class rather than by class name, which means
it will now check for it at compile time, not run time.
Bug: 3289922

Change-Id: I24f8bac371a16c62c2a38ed1024702c6d0913b93
yncActivityTooManyDeletes.java
yncManager.java
051c751569bebade2ae3fa7f68b70b174a4c0840 16-Dec-2010 Eric Laurent <elaurent@google.com> Merge "Fix error in HDMI and digital dock intent strings"
4d29b2f11d4ea3b0cf60f1a1bf394740d64ef416 16-Dec-2010 Eric Laurent <elaurent@google.com> Fix error in HDMI and digital dock intent strings

Intent.ACTION_USB_DGTL_HEADSET_PLUG and Intent.ACTION_HDMI_AUDIO_PLUG
where mistakenly using the same string.

Change-Id: Iede1896196585396dcc7e00aad06ad60e9a87875
ntent.java
744e310f6635026396e32ab0a2c009e464c2be3c 14-Dec-2010 Alon Albert <aalbert@google.com> Clear all pending backoffs on a reconnect event

Change-Id: I509e2c6c9d95922d196ac805eded523b674ad805
yncManager.java
yncStorageEngine.java
194157638ae59418b9d9cb4d73f7e285f59bc579 15-Dec-2010 Dianne Hackborn <hackbod@google.com> Fix launching of activities that I broke.

Change-Id: I39f4189bad6bdecdc7f9362410f36453fd816121
m/PackageManager.java
4e920f70f38d52d3a74c6a3133388a2e2cb6c175 14-Dec-2010 Brad Fitzpatrick <bradfitz@android.com> Add MODE_MULTI_PROCESS flag to Context.getSharedPreferences()

Also, changes to make this testable with CTS:

-- special PENALTY_DEATH StrictMode fast path that doesn't use
the Looper idling to "time" the violation. Only used when
death is the only violation,

-- make PENALTY_DEATH throw a RuntimeException instead of
killing its process with a signal. this means we can catch
it in CTS tests, but it's also more consistent with
PENALTY_NETWORK_DEATH in Honeycomb.

-- make FileUtils.getFileStatus() invoke StrictMode, which isn't
(yet?) aware of I/O in native code. so help it out.

CTS test for MODE_MULTI_PROCESS is in I6154edab

Change-Id: Icf93f9dfb0ece06b16781e4803dd2c17df3cf1b3
ontext.java
aeeb620906d037902d0c111a2272b6efd97f377a 10-Dec-2010 Alon Albert <aalbert@google.com> Do not increase backoff before it expires

Change-Id: Ia5f382f3cc0b0d41bf382d98665dc50512513dda
yncManager.java
ccc714131359eb1022d8c6702b7d82ab9e93f27c 13-Dec-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 78e9f4cb to master

Change-Id: I1135361e6d66f524c3f349e2bf1f31bd4191c634
78e9f4cbaece783b7b87ce3fb0a157dae766012a 13-Dec-2010 Dianne Hackborn <hackbod@google.com> am e4a59519: Fix issue #3154576: battery stats checkin should include UID -> packages+ map

* commit 'e4a5951925f16f18dae91ed65567e96528f17fee':
Fix issue #3154576: battery stats checkin should include UID -> packages+ map
e4a5951925f16f18dae91ed65567e96528f17fee 07-Dec-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3154576: battery stats checkin should include UID -> packages+ map

Includes some other small fixes to battery collection and a few
other things.

Output of package info looks like this:

5,0,i,uid,1000,com.android.settings
5,0,i,uid,1000,com.android.providers.subscribedfeeds
5,0,i,uid,1000,com.android.providers.settings
5,0,i,uid,1000,com.android.server.vpn
5,0,i,uid,1000,android
5,0,i,uid,1000,com.android.systemui
5,0,i,uid,1000,com.google.android.backup
5,0,i,uid,1001,com.android.phone
5,0,i,uid,1001,com.android.providers.telephony
5,0,i,uid,1022,com.android.nfc
5,0,i,uid,10021,com.google.android.location
5,0,i,uid,10021,com.google.android.syncadapters.calendar
5,0,i,uid,10021,com.google.android.gsf
5,0,i,uid,10021,com.google.android.syncadapters.contacts
5,0,i,uid,10026,com.android.providers.downloads.ui
5,0,i,uid,10026,com.android.providers.media
5,0,i,uid,10026,com.android.providers.drm
5,0,i,uid,10026,com.android.providers.downloads
5,0,i,uid,10032,com.android.launcher
5,0,i,uid,10039,com.google.android.gm
5,0,i,uid,10041,com.google.android.gallery3d
5,0,i,uid,10049,com.android.providers.calendar

Change-Id: I9e38f254eef146339113ad270f5c6e8b60fb7a1d
m/PackageParser.java
30d7189067524000c738c188c4ff91f84f474d25 11-Dec-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3274841: Orientation change problem with a paused activity

Plus a bunch of debug output improvements.

And some new Intent helpers for dealing with restarting an app.

Change-Id: I50ec56bca6a86c562156b13fe8a6fdf68038a12e
ntent.java
m/PackageManager.java
d250746716305717d7cde64032d2d25cda14e6c9 13-Dec-2010 Nick Pelly <npelly@google.com> resolved conflicts for merge of 1d0d1188 to master

Change-Id: I80413d5a54a0284ab6f685c4c6197a2c009ea717
1d0d1188d71ed086b3910cfe1d244fdeee47f182 11-Dec-2010 Nick Pelly <npelly@google.com> am ae56a851: Merge "Make getSystemService(NFC_SERVICE) the NFC entry point." into gingerbread

* commit 'ae56a851624c2b2e78da8a2c339d2caa64c4f981':
Make getSystemService(NFC_SERVICE) the NFC entry point.
50b4d8f643f31b37e9872f562fb869059cf79c8a 08-Dec-2010 Nick Pelly <npelly@google.com> Make getSystemService(NFC_SERVICE) the NFC entry point.

This gives NFC service a handle to the application context.

Deprecate NfcAdapter.getDefaultAdapter(), it does not provide a context.
Using this method will print a warning, and will later throw an exception
if a method that requires a context is called. No 2.3 API's will fail, but
new API's that do require a context might fail.

Also add helper NfcAdapter.getDefaultAdapter(Context).

Change-Id: I9a6378de4ef4b61ad922f8d53e64e2a1a1d5d60c
ontext.java
957d85ec046651a8b0549b62021079ddcc0b8f53 10-Dec-2010 Fred Quintana <fredq@google.com> revert an API change that conflicted witha previous SDK version

Change-Id: I71ef6bd135296846021c0e7ee465cac9181b5473
yncAdapterType.java
0c4d04ac2e8aa62560d8d767fa1c87e5361b0b08 04-Nov-2010 Fred Quintana <fredq@google.com> allow sync adapter authors to control more policies

- let the SyncManager know that the SyncAdapter can handle
parallel syncs even within sync adapter types
- allow indicating that the sync adapter should be auto
initialized without requiring the sync adapter to run first.
When this setting is used then setIsSyncable(1) is automatically
called for the sync adapter.

Change-Id: Ib40eba95c2556eaee4bb0fe715f379af1b72b84a
bstractThreadedSyncAdapter.java
yncAdapterType.java
yncAdaptersCache.java
yncManager.java
yncOperation.java
yncQueue.java
eca7511f61a6bfbb43a6646f87b5771bcc5d3fdc 09-Dec-2010 Alon Albert <aalbert@google.com> Listen for SyncAdapter death to cancel a sync

Change-Id: Icbb439c56b89fea1726723d7061c347867834dc8
yncManager.java
af8962e48ecf0ff3833084f540ca7e2f05295560 08-Dec-2010 Brad Fitzpatrick <bradfitz@android.com> am 5f8524d4: am 36af7943: Fix malformed Javadoc.

* commit '5f8524d446fb217516eebafe5d347005051891d1':
Fix malformed Javadoc.
5f8524d446fb217516eebafe5d347005051891d1 08-Dec-2010 Brad Fitzpatrick <bradfitz@android.com> am 36af7943: Fix malformed Javadoc.

* commit '36af79434fb62c26238132eaeda2ec5e732f3c2f':
Fix malformed Javadoc.
36af79434fb62c26238132eaeda2ec5e732f3c2f 08-Dec-2010 Brad Fitzpatrick <bradfitz@android.com> Fix malformed Javadoc.

Change-Id: I5cfbd49272117defce5226da0f40a8392457a2e2
ontext.java
26b71be600a44341a34079a007ce1492a6f26c1f 07-Dec-2010 Brad Fitzpatrick <bradfitz@android.com> Fix doc typo.

Change-Id: I9d4db682e3d365e783d5d70fbf66d47fe04e88eb
ontext.java
5695c7b4e5bedb692c78a92b95b26e22ae33316b 07-Dec-2010 Fred Quintana <fredq@google.com> make sure that pending operation reconstituted from disk
always have an extras bundle

Bug:3226463
Change-Id: I16db632e0be1e75a77853394f716d4c47c08359e
yncStorageEngine.java
384977fceaba842fd4a5f64111a2266c9e61dba5 06-Dec-2010 Fred Quintana <fredq@google.com> Merge "add caching to the AccountManagerService"
56285a60e83138bb4b4f2d3bdec91b2f3ca11aa2 02-Dec-2010 Fred Quintana <fredq@google.com> add caching to the AccountManagerService

- cache the accounts, userdata and authtokens
- make the AccountManagerServiceTest work again
- add a log statement for every binder call

http://b/issue?id=3188457

Change-Id: I96b94b9b690cf391fe4341e2a72893a6d823777b
m/RegisteredServicesCache.java
1921eab4e7e61bf4e50b09efa4513853521e5281 03-Dec-2010 Bjorn Bringert <bringert@android.com> Merge "Only decrement mRemaining once in read()."
eca53640a863b40ea9f96f280a90ce8aa538f9d1 02-Dec-2010 Fabrice Di Meglio <fdimeglio@google.com> Add better SQL exception handling to the Sync framework (see bug #3202693)

- do the reply.writeNoException() only if there are NO exceptions
- before, the code could actually generate an exception when asking for the count or the index,
and then the exception could not be unmaarshalled because we previously calling reply.writeNoException()

Change-Id: I241120878c3fc10fea5fbaeb74f9124b1413a3d4
ontentProviderNative.java
212799338d7be336e73eb65de3dcd0338a705a11 02-Dec-2010 Bjorn Bringert <bringert@android.com> Only decrement mRemaining once in read().

In the old code AssetFileDescriptor.AutoCloseInputStream.read()
called super.read(), which calls read(byte[] buffer, int offset, int count),
which decrements mRemaining. Then read() decremented mRemaining again
after super.read() returned.

I'm extending the CTS tests for AssetFileDescriptor.AutoCloseInputStream
to cover this.

Bug: 3240844
Change-Id: I70b945abc773d3ce5c1317dad23a0d797b31f111
es/AssetFileDescriptor.java
7d3a5bcf300aea7bffb1d46f28e244ca807f5e82 30-Nov-2010 Dianne Hackborn <hackbod@google.com> Auto-show IME for dialogs on large screens.

On a large screen the IME is not going to as significantly
cover a pan & scan window, so allow it to auto-show if the
app hasn't otherwise specified its visibility.

Also some fixes here and there.

Change-Id: I10227ec59c43454e06e6870633f53426f4d78b83
es/Configuration.java
711e62a84fe6e127592fb14642e9d08cf25a5b75 30-Nov-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3225529: AlertDialogs are squishing their content views

ViewRoot is now smarter about measuring WRAP/WRAP windows.

Change-Id: I690fc78ddbe252d7c8070edb8e7352aec6c67ce9
es/Configuration.java
621e17de87f18003aba2dedb719a2941020a7902 23-Nov-2010 Dianne Hackborn <hackbod@google.com> Implement issue #3221502: New APIs to support new back stack / task navigation

What this adds:

- A new Intent activity flag to completely replace an existing task.
- A new Intent activity flag to bring the current home task up behind
a new task being started/brought to the foreground.
- New versions of startActivity() that take an array of Intents to be
started, allowing applications to start a task in a specific state.
- A public moveTaskToFront() method on ActivityManager, with a new flag
that allows the caller to have the task moved to the front with the
current home task immediately behind it.

Change-Id: Ie8028d09acffb5349d98043c67676daba09f75c8
ontext.java
ontextWrapper.java
ntent.java
cb4541fc8e1dd6165d65b16cd7c8b2b9fb763c80 20-Nov-2010 Brian Muramatsu <btmura@google.com> Merge "Fix ClipboardManager#hasText"
3f6b3b6430f3fad595e46c63876ee8c96e22e127 20-Nov-2010 Brian Muramatsu <btmura@google.com> Fix ClipboardManager#hasText

Bug 3202642

I didn't see any usage of ClipboardService#hasClipboardText.
It seemed like this method was designed to be called by the
deprecated hasText method to retain compatibility rather
than calling hasPrimaryClip.

Change-Id: I84d73d618a6ee2feb2e8e603c611b393850230e7
lipboardManager.java
880119bf43d738ca632b5d3861eb52d655c1c0fc 19-Nov-2010 Dianne Hackborn <hackbod@google.com> Implement issue #2367442: Please add API for manipulating installer
package names

Change-Id: I0563e896a47ae1a6e77aebc2d624fb1bde52ffbc
m/IPackageManager.aidl
m/PackageManager.java
33710fc4a95df602cffc338fdfe79e27eaea4f06 19-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> am 096c4c44: am 251384a7: Merge "Improve performance when getting styled string."

* commit '096c4c448d8110c21108f2db4a19a85099e78557':
Improve performance when getting styled string.
096c4c448d8110c21108f2db4a19a85099e78557 19-Nov-2010 Brad Fitzpatrick <bradfitz@android.com> am 251384a7: Merge "Improve performance when getting styled string."

* commit '251384a7595022ddbc53f4ab0fa386f9c040f1f5':
Improve performance when getting styled string.
62fd4e3fcb5af7ddbeae9f6faec73aa667a3a702 18-Nov-2010 Daisuke Miyakawa <dmiyakawa@google.com> Make AsyncQueryHandler emit more helpful log.

The log is introduced in a5f743f1fc7c5037ee7ad4ab611115b6d44af5b8
We need more info for understanding what is happening.

Bug: 3204897
Change-Id: Ie2fbc838cb76757837c8dedb05055fbcc287d2b4
syncQueryHandler.java
ac4a181d2e02f2dd375c61ce231d35e50d0d1836 18-Nov-2010 Peter Eliasson <peter.eliasson.x@sonyericsson.com> Improve performance when getting styled string.

The style used in the composing text for input methods
takes a long time to create. This is experienced as a
lag when composing the first word.

The bottleneck lies in the 10 calls to
nativeIndexOfString which does a linear search through
thousands of strings.

Change-Id: I3184b2be3673d384cca19e9a70ad94b4d3085576
es/StringBlock.java
866647f9b4d78ea5791d7480a459d93629afbf97 10-Nov-2010 Fred Quintana <fredq@google.com> handle a race condition where a cursor receives an inflight onChange after the cursor has been closed

Change-Id: I11e3d969ef48ef5150976241bb62717c6c0c1b83
ontentQueryMap.java
6e079a32bceb85a44da3b396f8d37e718d1421d5 12-Nov-2010 Alon Albert <aalbert@google.com> Reset backoff on successful sync

Change-Id: I5661485e580dae127c756cd13e814987242e26dd
yncManager.java
3fa51e3430e3bf902ae4f2d72dfb956103b6bd2d 11-Nov-2010 Alon Albert <aalbert@google.com> Improve logging

Change-Id: Ia855b1a45a3abbc1a87233462f19b330b72d30b9
m/RegisteredServicesCache.java
03595d01188d88c169e8c9dd51b357fd545e69cc 02-Nov-2010 Robert Greenwalt <rgreenwalt@google.com> Tell each VM to flush their DNS cache.

bug:3095357
Change-Id: I93de24e3e5a7d8b94d55f4facfffc863a2b8c202
ntent.java
26e37349831476d3225570af2dfbf1e459374c6b 03-Nov-2010 Praveen Bharathi <pbharathi@motorola.com> frameworks/base: switch audio to hdmi when cable is plugged in

Change-Id: I01c4ee968bc0ffbb6ce75370935571cc1ff6f8c7
Signed-off-by: Iliyan Malchev <malchev@google.com>
ntent.java
21e941bf43362ddc6639a9f2d0828053360f53d7 06-Oct-2010 Praveen Bharathi <pbharathi@motorola.com> Added support for dock headset observer

Change-Id: I06b2e65e3bfa10735e6c7fd3349afa9ae7d45292
Signed-off-by: Praveen Bharathi <pbharathi@motorola.com>
ntent.java
23493ac1b73bcae513ae197cea2cb4d0b975934d 01-Nov-2010 Jean-Baptiste Queru <jbq@google.com> am a87cdd39: am b1fa549a: Merge "Fixes Issue 7907 in the public bugs database (http://code.google.com/p/android/issues/detail?id=7907)."

* commit 'a87cdd398fa8b46eb48b4f9a7a6b114a336e3bf2':
Fixes Issue 7907 in the public bugs database (http://code.google.com/p/android/issues/detail?id=7907).
a87cdd398fa8b46eb48b4f9a7a6b114a336e3bf2 01-Nov-2010 Jean-Baptiste Queru <jbq@google.com> am b1fa549a: Merge "Fixes Issue 7907 in the public bugs database (http://code.google.com/p/android/issues/detail?id=7907)."

* commit 'b1fa549a49fd8fa2fe67ee30d107cc2d1486645f':
Fixes Issue 7907 in the public bugs database (http://code.google.com/p/android/issues/detail?id=7907).
0a675fd8fe145ce636f363c8d29e2416d7d52003 31-Oct-2010 Daniel Trebbien <dtrebbien@gmail.com> Fixes Issue 7907 in the public bugs database (http://code.google.com/p/android/issues/detail?id=7907).

The Javadoc comment for class `android.content.UriMatcher` had four issues:
1. The example calls to `addURI` should not be using a leading forward slash in
the path parameter (reported by Ester Ytterbrink).
2. The sample code to construct a `UriMatcher` was incorrect because the
`UriMatcher` constructor takes a parameter (reported by Ross Light).
3. The code example for using `match` was incorrect because it showed two
parameters being passed, when `match` only takes one (reported by
Ross Light).
4. The sample `getType` implementations were incorrect because `getType` takes
a `Uri` object, not an array of `String`s.

Change-Id: I560bff6f021c13cabf736f40ff0f47a205074291
riMatcher.java
03034739eb90a41c930201253f5d709c232ce5a9 29-Oct-2010 Kenny Root <kroot@google.com> Merge "Add path to get different DPI drawables"
55fc850cf992cdcb0993cb109d2f716613c0dbdd 28-Oct-2010 Kenny Root <kroot@google.com> Add path to get different DPI drawables

Allow a caller to request a different density than their current display
allows. This can mean a device displaying mdpi can get a resource that's
in hdpi and have it pretend to be in mdpi resolution. If a drawable
that's returned is not in the requested density, it will set it at the
appropriate density to be scaled up later on.

The API for this is hidden currently.

Bug: 3134688
Change-Id: I6c3908cbdef4907b8d3f1576df9e3b0e7af1755a
es/AssetManager.java
es/Resources.java
ae5ace55d9fc45bc11608c9fb59c9ee884fd9ea6 28-Oct-2010 Jeff Hamilton <jham@android.com> am bd8ff5b5: Merge "DO NOT MERGE. Fix asset file descriptor for pipe based fds." into gingerbread

* commit 'bd8ff5b5d4f4c74889ce20a0c7a2f8e0ab7b6ea9':
DO NOT MERGE. Fix asset file descriptor for pipe based fds.
c1ac7769d884ad54a320ab3ec6d8406801cfb420 28-Oct-2010 Alon Albert <aalbert@google.com> Apply backoff to operation that caused it

Change-Id: I4f0c9598f031fc7c440071db14eca40094956afb
yncManager.java
145fe77dbf930761ccc8617f93014bf88afc7140 28-Oct-2010 Jeff Hamilton <jham@android.com> DO NOT MERGE. Fix asset file descriptor for pipe based fds.

Change-Id: Ic366d01f91017109abfcfa65bd2231dd7416ce71
es/AssetFileDescriptor.java
e829fef63957a23b61cdb01bb692a17a041ff2dc 27-Oct-2010 Dianne Hackborn <hackbod@google.com> Add facility for broadcasts receives to do work asynchronously.

You can now call goAsync() and move your work to a background thread.
If you are that kind of receiver. You weirdo.

Also allows SharedPreferences.apply() to be committed off the main
thread after returning from onReceive().

Change-Id: I27f975910e28f230ababcaeb551eb9a78ec4fc76
roadcastReceiver.java
f834dfabbcbbe1f209682f18c67f2e8b9d3e1dd7 26-Oct-2010 Dianne Hackborn <hackbod@google.com> ClipDescription no longer inherits from ClipData.

Change-Id: Ie4939f87c7e1628d9c19ecb5c0b3036d1f76ef29
lipData.java
dc28be1095c681522ed0784038b30f5630e62291 25-Oct-2010 Scott Main <smain@google.com> resolved conflicts for merge of 177b05d6 to master

Change-Id: I21072a31a28d0e0ea242d1d4f81e5f5f657e6364
177b05d6140cb0fb25fa75a61b888cf53f44564e 25-Oct-2010 Scott Main <smain@google.com> am abb50f15: Merge "docs: fix a couple api links" into gingerbread

Merge commit 'abb50f152879cc8dff1bf5cbc4d6375e959305cd' into gingerbread-plus-aosp

* commit 'abb50f152879cc8dff1bf5cbc4d6375e959305cd':
docs: fix a couple api links
abb50f152879cc8dff1bf5cbc4d6375e959305cd 25-Oct-2010 Scott Main <smain@google.com> Merge "docs: fix a couple api links" into gingerbread
a0b46c9c441f017a2008ca8ee2c864987465996b 22-Oct-2010 Dianne Hackborn <hackbod@google.com> Implement issue #3116702: New manifest tags for supported screen sizes

Merged from GB.

Change-Id: I94730b54bcacd083f77708e84c35f4932a7b9d2e
m/PackageParser.java
9c7489f8bdcd08990c44250cbad64399badc72be 22-Oct-2010 Dianne Hackborn <hackbod@google.com> am 38993d8d: Merge "Fix issue #3122240: Expose xlarge in GB." into gingerbread
5383f502e4479d117c89666fb2ee1ca53f3d27cf 22-Oct-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3122240: Expose xlarge in GB.

Plus some other small API cleanup.

Change-Id: I1a3c60f510f99224cccac9cc3f838f04141064f8
es/Configuration.java
101f14b275ab2451aef50dec427376d721d17aea 22-Oct-2010 Dianne Hackborn <hackbod@google.com> am ba501785: Merge "Implement issue #3116702: New manifest tags for supported screen sizes DO NOT MERGE" into gingerbread

Merge commit 'ba501785c7b298198d1c6e4787fd40e98f97da67' into gingerbread-plus-aosp

* commit 'ba501785c7b298198d1c6e4787fd40e98f97da67':
Implement issue #3116702: New manifest tags for supported screen sizes DO NOT MERGE
a6d9c7c04c4b17d85ac70f4494777555655f3be1 22-Oct-2010 Dianne Hackborn <hackbod@google.com> Implement issue #3116702: New manifest tags for supported screen sizes DO NOT MERGE

Change-Id: Iabf64d86c89d387ffbfbc39f950d308a73fe17eb
m/PackageParser.java
46cb1d9602905061ff2a9ba3bc7654bfe94183db 21-Oct-2010 Dianne Hackborn <hackbod@google.com> am 674b856c: am fb2cd0aa: Merge "Fix java doc on FLAG_EXTERNAL." into gingerbread

Merge commit '674b856c15206a23d9d8a22fbd936a4f3055894d'

* commit '674b856c15206a23d9d8a22fbd936a4f3055894d':
Fix java doc on FLAG_EXTERNAL.
4b5da6829aa5e324f5e9414c25d132ba0a9ebeb3 21-Oct-2010 Scott Main <smain@google.com> docs: fix a couple api links

Change-Id: If0e35011a28dc87324e2d53e856cfcdb35236061
ontext.java
674b856c15206a23d9d8a22fbd936a4f3055894d 21-Oct-2010 Dianne Hackborn <hackbod@google.com> am fb2cd0aa: Merge "Fix java doc on FLAG_EXTERNAL." into gingerbread

Merge commit 'fb2cd0aa9d140efdf78f0d920d8e3bb7db39c8de' into gingerbread-plus-aosp

* commit 'fb2cd0aa9d140efdf78f0d920d8e3bb7db39c8de':
Fix java doc on FLAG_EXTERNAL.
eddfc04a08cc4d5315930d94d4627caa7dad5596 21-Oct-2010 Dianne Hackborn <hackbod@google.com> Fix java doc on FLAG_EXTERNAL.

Change-Id: Ic533b3a6c3300a986dd8d0da04243d723cf393ef
m/ApplicationInfo.java
cd0e839a2448deea50f79bddeba782c546b33893 14-Oct-2010 Nick Pelly <npelly@google.com> NFC: Move NFC service implementation out of system_server.

NFC service is now an application service in packages/apps/Nfc.

NFC service is registered through ServiceManager.addService(), and the proxy
object NfcAdapter obtains a handle to it through ServiceManager.getService().

**Important** Had to add new symbols AID_NFC / NFC_UID / android.uid.nfc and
modify service_manager.c, Process.java and PackageManagerService.java in order
to force the com.android.nfc process to take a fixed uid, so that it can use
ServiceManager.addService().

Most of the JNI has moved to packages/apps/Nfc/jni. However NdefRecord and
NdefMessage require some in-process native code, so android_com_NdefMessage.cpp
and android_com_NdefRecord.cpp stay in frameworks/base/core/jni. They link to
a very small library libnfc_ndef.so that implements NDEF message parsing. This
has been added to core.mk so all devices (even without NFC hardware) can work
with NDEF data.

Bug: 3041259
Bug: 3097445
Change-Id: If7f00cd8f2053acfc9319ca366d4a9c02bd396e6
Signed-off-by: Nick Pelly <npelly@google.com>
ontext.java
36e7790b6b3c2c36c67fbe5dc2e2313cdd537349 16-Oct-2010 Jean-Baptiste Queru <jbq@google.com> Merge a851d8d0 from gingerbread

Change-Id: Iea0e3fa1662d6326ab337821fe52a65a9dfd989a
fcab0f5502410b975afe045354bbae31ccba68a5 15-Oct-2010 Kenny Root <kroot@google.com> am 8fda1636: am bdf8034c: Merge "OBB: use PBKDF2 for key generation." into gingerbread

Merge commit '8fda1636e3e35f060b9046294efd3c062a1fdb84'

* commit '8fda1636e3e35f060b9046294efd3c062a1fdb84':
OBB: use PBKDF2 for key generation.
bc21fdefdfbeba1754c6cd339c7dd8e8f1d6fd48 14-Oct-2010 Nick Pelly <npelly@google.com> NFC: Move NFC service implementation out of system_server.

NFC service is now an application service in packages/apps/Nfc.

NFC service is registered through ServiceManager.addService(), and the proxy
object NfcAdapter obtains a handle to it through ServiceManager.getService().

**Important** Had to add new symbols AID_NFC / NFC_UID / android.uid.nfc and
modify service_manager.c, Process.java and PackageManagerService.java in order
to force the com.android.nfc process to take a fixed uid, so that it can use
ServiceManager.addService().

Most of the JNI has moved to packages/apps/Nfc/jni. However NdefRecord and
NdefMessage require some in-process native code, so android_com_NdefMessage.cpp
and android_com_NdefRecord.cpp stay in frameworks/base/core/jni. They link to
a very small library libnfc_ndef.so that implements NDEF message parsing. This
has been added to core.mk so all devices (even without NFC hardware) can work
with NDEF data.

Bug: 3041259
Bug: 3097445
Change-Id: If8f00ce8f2053acfc9319ca366d4a9c02bd396e6
Signed-off-by: Nick Pelly <npelly@google.com>
ontext.java
b079a106524c8028a1602b6df9be5d273a6552cf 15-Oct-2010 Wink Saville <wink@google.com> am 94980e0f: am 07e1be62: Merge "Fix NPE caused by Change I4df27119." into gingerbread

Merge commit '94980e0f76295de53bd168608d11dba3c39cca9d'

* commit '94980e0f76295de53bd168608d11dba3c39cca9d':
Fix NPE caused by Change I4df27119.
8fda1636e3e35f060b9046294efd3c062a1fdb84 14-Oct-2010 Kenny Root <kroot@google.com> am bdf8034c: Merge "OBB: use PBKDF2 for key generation." into gingerbread

Merge commit 'bdf8034c657147226b2390eef113ff841e0d6065' into gingerbread-plus-aosp

* commit 'bdf8034c657147226b2390eef113ff841e0d6065':
OBB: use PBKDF2 for key generation.
1b422d8cd8ed83b79e977a3afb99969cea4a6700 14-Oct-2010 Wink Saville <wink@google.com> am 090ac9f7: am a3100314: Merge "Remove some PII." into gingerbread

Merge commit '090ac9f7dd883aa75c899745182471d409a2b762'

* commit '090ac9f7dd883aa75c899745182471d409a2b762':
Remove some PII.
bdf8034c657147226b2390eef113ff841e0d6065 14-Oct-2010 Kenny Root <kroot@google.com> Merge "OBB: use PBKDF2 for key generation." into gingerbread
3b1abba6bbc895d63da3e82e9b158c01bd12eddd 14-Oct-2010 Kenny Root <kroot@google.com> OBB: use PBKDF2 for key generation.

Switch to using PBKDF2 for the key generation for OBBs. Any previously
generated OBBs will stop being read correctly. A small pbkdf2gen program
is available to allow generation of appropriate keys with the salts.

Bug: 3059950
Change-Id: If4305c989fd692fd1150eb270dbf751e09c37295
es/ObbInfo.java
94980e0f76295de53bd168608d11dba3c39cca9d 13-Oct-2010 Wink Saville <wink@google.com> am 07e1be62: Merge "Fix NPE caused by Change I4df27119." into gingerbread

Merge commit '07e1be62c7a8650313e7ad8690968c58ec8e88ad' into gingerbread-plus-aosp

* commit '07e1be62c7a8650313e7ad8690968c58ec8e88ad':
Fix NPE caused by Change I4df27119.
c491ee02237fc5c0e6a4ad81ebc899d97c9778b5 13-Oct-2010 Wink Saville <wink@google.com> Fix NPE caused by Change I4df27119.

This change caused Music APP to throw an NPE the fix
is to test that scheme is not null before using it.

Bug: 3092886
Change-Id: Ib29f944cbd9a9ff628462bdd6f4b68a308468536
ntent.java
090ac9f7dd883aa75c899745182471d409a2b762 12-Oct-2010 Wink Saville <wink@google.com> am a3100314: Merge "Remove some PII." into gingerbread

Merge commit 'a310031438877a7b70a6ac30eb2f2b33e06907e6' into gingerbread-plus-aosp

* commit 'a310031438877a7b70a6ac30eb2f2b33e06907e6':
Remove some PII.
a42880749b368e60caee77dd682d434e48ca96bd 12-Oct-2010 Wink Saville <wink@google.com> Remove some PII.

Change-Id: I4df27119b6bbd28bf950516fd6f44676a8e04f06
ntent.java
yncStorageEngine.java
d532d8d8c16c8b83a75310453d1f9f7197961bbf 12-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am ca1db5ae: am dd644c17: Fallback to SharedPreferences.commit() when no apply() exists.

Merge commit 'ca1db5ae68971779fd8af83c908128849f470ae0'

* commit 'ca1db5ae68971779fd8af83c908128849f470ae0':
Fallback to SharedPreferences$Editor.commit() when no apply() exists.
ca1db5ae68971779fd8af83c908128849f470ae0 11-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> am dd644c17: Fallback to SharedPreferences.commit() when no apply() exists.

Merge commit 'dd644c179c1bf47d82d776d7f644e4fc1467159d' into gingerbread-plus-aosp

* commit 'dd644c179c1bf47d82d776d7f644e4fc1467159d':
Fallback to SharedPreferences$Editor.commit() when no apply() exists.
dd644c179c1bf47d82d776d7f644e4fc1467159d 10-Oct-2010 Brad Fitzpatrick <bradfitz@android.com> Fallback to SharedPreferences$Editor.commit() when no apply() exists.

Gingerbread widened the SharedPreferences.Editor interface, adding an
apply() method. Most people don't implement this interface
themselves, but a couple apps do.

A few spots in the core framework take a SharedPreferences[.Editor]
from apps, which might be a pre-Gingerbread implementation without an
apply() method. This patch makes sure we never depend on the presence
of an apply() method, falling back to commit() if apply() isn't
available.

Change-Id: I32693ac9227a60b694526a26a30234fb17a40581
haredPreferences.java
615e2fa1755ea3b6b8196f783842cd394ad3beb2 10-Oct-2010 Dianne Hackborn <hackbod@google.com> am b77455ee: am 78d68836: Implement tracking of package install times.

Merge commit 'b77455ee290691b036ac79236a93e57ff294ef0c'

* commit 'b77455ee290691b036ac79236a93e57ff294ef0c':
Implement tracking of package install times.
fa9921e4bca92025810b946955910fbdfe6c8482 09-Oct-2010 Dianne Hackborn <hackbod@google.com> am e89bf502: am ef083ec0: Merge "Work on issue #3062691: GPS enable bypass via com.android.settings.widget.SettingsAppWidgetProvider" into gingerbread

Merge commit 'e89bf50261902bf263887923bf95595ec8eae069'

* commit 'e89bf50261902bf263887923bf95595ec8eae069':
Work on issue #3062691: GPS enable bypass via com.android.settings.widget.SettingsAppWidgetProvider
c6a69559cb62bd20166c0c9684e64c60d779da38 28-Sep-2010 Fred Quintana <fredq@google.com> Add getCurrentSyncs() to the SDK, which replaces the deprecated
getCurrentSync().

Change-Id: I1112df41e48ed93ff4c0c5af4825dbdce0c4cccc
ontentResolver.java
ontentService.java
ContentService.aidl
yncInfo.java
yncStorageEngine.java
b77455ee290691b036ac79236a93e57ff294ef0c 08-Oct-2010 Dianne Hackborn <hackbod@google.com> am 78d68836: Implement tracking of package install times.

Merge commit '78d688369a2240009d3bbe4126996a973b2e2fe2' into gingerbread-plus-aosp

* commit '78d688369a2240009d3bbe4126996a973b2e2fe2':
Implement tracking of package install times.
78d688369a2240009d3bbe4126996a973b2e2fe2 07-Oct-2010 Dianne Hackborn <hackbod@google.com> Implement tracking of package install times.

Provides information about the time at which the package was
first installed and the time it was last updated.

Change-Id: Icb43f77b5b669a1ce685e8913046b8be386b6175
m/PackageInfo.java
m/PackageManager.java
m/PackageParser.java
8c4e779a4c968d4c7a4e4902484004e1659217aa 07-Oct-2010 Dianne Hackborn <hackbod@google.com> am e112b744: am 930d6c3c: Merge "Fix issue #3056500: Problem report for ASTRO" into gingerbread

Merge commit 'e112b744c08cd7dcffe142f3cd22c96870bad482'

* commit 'e112b744c08cd7dcffe142f3cd22c96870bad482':
Fix issue #3056500: Problem report for ASTRO
e89bf50261902bf263887923bf95595ec8eae069 07-Oct-2010 Dianne Hackborn <hackbod@google.com> am ef083ec0: Merge "Work on issue #3062691: GPS enable bypass via com.android.settings.widget.SettingsAppWidgetProvider" into gingerbread

Merge commit 'ef083ec008a3ec69180340912e7f0137472c97d9' into gingerbread-plus-aosp

* commit 'ef083ec008a3ec69180340912e7f0137472c97d9':
Work on issue #3062691: GPS enable bypass via com.android.settings.widget.SettingsAppWidgetProvider
72b526a13c9b548a1e1a0239f670e36744cb0fdc 07-Oct-2010 Dianne Hackborn <hackbod@google.com> am cb9f1e4d: am 6f7e10ca: Merge "Make it easier to figure out whether an app can go on sd card." into gingerbread

Merge commit 'cb9f1e4d30ab4f9203e30abe807cbe33d07db4a0'

* commit 'cb9f1e4d30ab4f9203e30abe807cbe33d07db4a0':
Make it easier to figure out whether an app can go on sd card.
043fcd9847a804bc6394728e5785aecc495e6347 06-Oct-2010 Dianne Hackborn <hackbod@google.com> Work on issue #3062691: GPS enable bypass via com.android.settings.widget.SettingsAppWidgetProvider

Exposes an Intent I need (okay it fixes an unrelated thing in the power widget),
and fixes some dump output.

Change-Id: I51d6c93a6ac879bab64e9d5aa21129e2bbcd461b
yncStorageEngine.java
c8b7971cb3e09dfd4480a4bb8875a32157b62192 06-Oct-2010 Fred Quintana <fredq@google.com> Merge "Make a separate active sync queue for initialization and regular syncs."
918339ab8255f8e1d03d8448ab1d9036c7c15173 05-Oct-2010 Fred Quintana <fredq@google.com> Make a separate active sync queue for initialization and regular syncs.

This entails allowing multiple syncs to happen in parallel, with
different limits for regular and initialization syncs.

Change-Id: I0e47c6515af5c98faf899f91855b342b0d0c708c
yncManager.java
yncOperation.java
yncQueue.java
yncStorageEngine.java
e112b744c08cd7dcffe142f3cd22c96870bad482 05-Oct-2010 Dianne Hackborn <hackbod@google.com> am 930d6c3c: Merge "Fix issue #3056500: Problem report for ASTRO" into gingerbread

Merge commit '930d6c3cd5ad387489eb1d35a38beeafe54166b6' into gingerbread-plus-aosp

* commit '930d6c3cd5ad387489eb1d35a38beeafe54166b6':
Fix issue #3056500: Problem report for ASTRO
817c24752cf1d70bcd53a038a0d06abbb1ec6aad 05-Oct-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3056500: Problem report for ASTRO

Change-Id: Ifa07dbc50930f5d6a20cdc0ee541c0566f3785ba
m/ApplicationInfo.java
90f4aafa336d9f2f07281ead3c846d323a710015 27-Sep-2010 Dianne Hackborn <hackbod@google.com> Implement permission granting in clipboard.

Change-Id: I9a7a949d1aaf4b3beabceaf807fb7d3b040e4ea8
lipboardManager.java
Clipboard.aidl
38014763a2ceec005682066da01849adf95839bd 05-Oct-2010 Dianne Hackborn <hackbod@google.com> am 89230e3b: am 458fc5f5: Merge "Fix issue #3041660: Camera image flips upside down when rotating device" into gingerbread

Merge commit '89230e3b7b9ec455373e3f60b62ff65589a9c57d'

* commit '89230e3b7b9ec455373e3f60b62ff65589a9c57d':
Fix issue #3041660: Camera image flips upside down when rotating device
cb9f1e4d30ab4f9203e30abe807cbe33d07db4a0 05-Oct-2010 Dianne Hackborn <hackbod@google.com> am 6f7e10ca: Merge "Make it easier to figure out whether an app can go on sd card." into gingerbread

Merge commit '6f7e10ca0aa869c4b3ed4c37e56cf9d471fd9283' into gingerbread-plus-aosp

* commit '6f7e10ca0aa869c4b3ed4c37e56cf9d471fd9283':
Make it easier to figure out whether an app can go on sd card.
54e570f78b45d6c47578a4a2513097b590b6d43f 05-Oct-2010 Dianne Hackborn <hackbod@google.com> Make it easier to figure out whether an app can go on sd card.

Change-Id: I9195a0881b2c435b138f39c2ab1505dc820caf10
m/ApplicationInfo.java
m/PackageParser.java
89230e3b7b9ec455373e3f60b62ff65589a9c57d 04-Oct-2010 Dianne Hackborn <hackbod@google.com> am 458fc5f5: Merge "Fix issue #3041660: Camera image flips upside down when rotating device" into gingerbread

Merge commit '458fc5f52e25d7a8b4e482010711aed66f0b4999' into gingerbread-plus-aosp

* commit '458fc5f52e25d7a8b4e482010711aed66f0b4999':
Fix issue #3041660: Camera image flips upside down when rotating device
e5439f228f603f60febe058f633d91d5af2fff76 03-Oct-2010 Dianne Hackborn <hackbod@google.com> Fix issue #3041660: Camera image flips upside down when rotating device

Apps now must explicitly opt in to having their rotation changed while
forcing landscape mode. Also add some new orientation constants for other
things apps may want to do.

Change-Id: If64d84b5ef54793ee717ebda9b4c76408efc9bfd
m/ActivityInfo.java
4768a16cbc9c25fac6bfb9f1f2f7ddfba67aac7b 02-Oct-2010 Dianne Hackborn <hackbod@google.com> am 9e1556de: am 14e7d693: Merge "Some documentation fixes." into gingerbread

Merge commit '9e1556de8382c3eb68d324a7ef559b2cde1b3d6c'

* commit '9e1556de8382c3eb68d324a7ef559b2cde1b3d6c':
Some documentation fixes.
9e1556de8382c3eb68d324a7ef559b2cde1b3d6c 02-Oct-2010 Dianne Hackborn <hackbod@google.com> am 14e7d693: Merge "Some documentation fixes." into gingerbread

Merge commit '14e7d693415832a974abc298124a6a5797d49a04' into gingerbread-plus-aosp

* commit '14e7d693415832a974abc298124a6a5797d49a04':
Some documentation fixes.
4d023d214d12c8588b6a3441c2b4bd7c09900937 01-Oct-2010 Dianne Hackborn <hackbod@google.com> Some documentation fixes.

Change-Id: Iaae452fc1430af788ce440a043ca7fb53e667a61
m/PackageManager.java
dc71b9e4d67327065a992924a021cad4bc100fa2 01-Oct-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 6a3eddb4 to master

Change-Id: I1ca1d100274d4a733ef2bf58b0d5d7217b4f858e
9e95468bbb4b4cb48d817cee2960681aa876b12a 01-Oct-2010 Kenny Root <kroot@google.com> am 6ce5f60c: am 38cf8867: Remove OBBs from state list when volume unmounted

Merge commit '6ce5f60c791401ed0faf5d36baf4fc6612358676'

* commit '6ce5f60c791401ed0faf5d36baf4fc6612358676':
Remove OBBs from state list when volume unmounted
6a3eddb469b282f7d904e5dbcb375ad44ada3ee3 01-Oct-2010 Dianne Hackborn <hackbod@google.com> am 0a69f597: Merge "Rub in a little \'ol log-b-gone." into gingerbread

Merge commit '0a69f597604254bc37721b135ab612eaacdd0cbd' into gingerbread-plus-aosp

* commit '0a69f597604254bc37721b135ab612eaacdd0cbd':
Rub in a little 'ol log-b-gone.
0a69f597604254bc37721b135ab612eaacdd0cbd 01-Oct-2010 Dianne Hackborn <hackbod@google.com> Merge "Rub in a little 'ol log-b-gone." into gingerbread
cef65eeb0315c3118bf8860d6f723cb49ff6bc52 01-Oct-2010 Dianne Hackborn <hackbod@google.com> Rub in a little 'ol log-b-gone.

Mmmmmm... great fresh scent!

Change-Id: I050e70b31b5d4a9c6731f15a4b51a3620a33a78d
m/PackageParser.java
6ce5f60c791401ed0faf5d36baf4fc6612358676 01-Oct-2010 Kenny Root <kroot@google.com> am 38cf8867: Remove OBBs from state list when volume unmounted

Merge commit '38cf8867a8d3e8d5159abd0bd0e6a3b0b8348b94' into gingerbread-plus-aosp

* commit '38cf8867a8d3e8d5159abd0bd0e6a3b0b8348b94':
Remove OBBs from state list when volume unmounted
38cf8867a8d3e8d5159abd0bd0e6a3b0b8348b94 26-Sep-2010 Kenny Root <kroot@google.com> Remove OBBs from state list when volume unmounted

Don't keep tracking OBBs when the volume they're located on goes away.
Remove them from our state tracking maps and then send a notification to
any listener that is still around.

Add a dump handler to MountService so the state of the mount lists
can be inspected.

Change the API to just make a callback directly to the change listener
when mount is called when it's already mounted or unmount called when
it's already unmounted.

Change-Id: Idb4afbb943ca5ca775825f908bff334e3ce1cfcc
es/ObbInfo.java
es/ObbScanner.java
a53146c5569f8ff5f7eb55e9ad35d23ddacf2add 07-Sep-2010 Christopher Tate <ctate@google.com> Drag/drop APIs and infrastructure

A View initiates a drag-and-drop operation (hereafter just called a "drag")
by calling its startDrag(ClipData) method. Within the processing of that
call, two callbacks are made into the originating View. The first is to
onMeasureDragThumbnail(). Similarly to the core onMeasure() method, this
callback must respond by calling setDragThumbnailDimension(width, height) to
declare the size of the drag thumbnail image that should be used. Following
this, the View's onDrawDragThumbnail(canvas) method will be invoked to
actually produce the bits of the thumbnail image.

If all goes well, startDrag() will return 'true', and the drag is off and
running. (The other arguments to startDrag() provide reconciliation between
the current finger position and where the thumbnail should be placed on
the screen relative to it.)

Potential receipients of the ClipData behind the drag are notified by a
new dispatch mechanism, roughly parallel to motion event dispatch. The core
routine is the View's onDragEvent(event) callback, with the mechanics of
dispatch itself being routed through dispatchDragEvent(event) -- as in
the case of motion events, the dispatch logic is in ViewGroup, with leaf
View objects not needing to consider the dispatch flow.

Several different event 'actions' are delivered through this dispatch
mechanism:

ACTION_DRAG_STARTED: this event is propagated to every View in every window
(including windows created during the course of a drag). It serves as a
global notification that a drag has started with a payload whose matching
ClipDescription is supplied with the event. A View that is prepared to
consume the data described in this event should return 'true' from their
onDragEvent() method, and ideally will also make some visible on-screen
indication that they are a potential target of the drop.

ACTION_DRAG_ENTERED: this event is sent once when the drag point
enters the View's bounds. It is an opportunity for the View to set up
feedback that they are the one who will see the drop if the finger goes
up now.

ACTION_DRAG_LOCATION: when the drag point is over a given View, that
View will receive a stream of DRAG_LOCATION events, providing an
opportunity for the View to show visual feedback tied to the drag point.

ACTION_DRAG_EXITED: like DRAG_ENTERED, but called when the drag point
leaves the View's bounds. The View should undo any visuals meant to
emphasize their being the hovered-over target.

ACTION_DROP: when the drag ends at a given point, the View under that
point is sent this event, with the full ClipData of the payload.

ACTION_DRAG_ENDED: paralleling the DRAG_STARTED action, this is the global
broadcast that the drag has ended and all Views should return to their
normal visual state. This happens after the DROP event.

Change-Id: Ia8d0fb1516bce8c735d87ffd101af0976d7e84b6
es/CompatibilityInfo.java
ea7ee3f4d31b92828df005d021cf482f6332514a 30-Sep-2010 Kenny Root <kroot@google.com> am 8bd545ab: am 212d81a0: Merge "Move all the permissions check up for unmount" into gingerbread

Merge commit '8bd545ab4f7e75634c970b50ed15c20858d6ac0c'

* commit '8bd545ab4f7e75634c970b50ed15c20858d6ac0c':
Move all the permissions check up for unmount
4715bd91f5949a1919156a5a5cb50f0cccda645e 29-Sep-2010 Nick Pelly <npelly@google.com> resolved conflicts for merge of f4c3b7e9 to master

Change-Id: Idcdc521144f3072058b2bb6cb383e42c852e64f4
8bd545ab4f7e75634c970b50ed15c20858d6ac0c 29-Sep-2010 Kenny Root <kroot@google.com> am 212d81a0: Merge "Move all the permissions check up for unmount" into gingerbread

Merge commit '212d81a004f50e51ed8f6d803b79f4b71546b351' into gingerbread-plus-aosp

* commit '212d81a004f50e51ed8f6d803b79f4b71546b351':
Move all the permissions check up for unmount
212d81a004f50e51ed8f6d803b79f4b71546b351 29-Sep-2010 Kenny Root <kroot@google.com> Merge "Move all the permissions check up for unmount" into gingerbread
f1121dc1d35c7e8c317c278aad0dd4ad1358d870 29-Sep-2010 Kenny Root <kroot@google.com> Move all the permissions check up for unmount

We have already scanned the state of the OBB in mountObb, so check the
caller against the stored state in the unmountObb call. This allows us
to ensure the calling binder is the same one that mounted it since we
tie the lifecycle of the OBB to the lifecycle of the binder.

Change-Id: I45d9cfbab5d3f5b37a6a9b594b10bd8b91cccc45
es/ObbScanner.java
f4c3b7e916b417fabb468ec0a565dc79cd7ba2b3 29-Sep-2010 Nick Pelly <npelly@google.com> am 038cabe0: NFC integration

Merge commit '038cabe0247ee46df62f9363f1a303bc5b9c1028' into gingerbread-plus-aosp

* commit '038cabe0247ee46df62f9363f1a303bc5b9c1028':
NFC integration
038cabe0247ee46df62f9363f1a303bc5b9c1028 24-Sep-2010 Nick Pelly <npelly@google.com> NFC integration

Source: Trusted_NFC_Device_Host_AA03.01e02_google.zip code drop (23-Sep-2010)

Conflicts:

core/java/android/app/ApplicationContext.java
core/java/android/provider/Settings.java
core/jni/Android.mk
core/jni/AndroidRuntime.cpp
core/res/AndroidManifest.xml
include/utils/Asset.h

Change-Id: I62c92f4c79f5ee65126c97602f6bc1c15794e573
Signed-off-by: Nick Pelly <npelly@google.com>
ontext.java
bff405f91001237ec94ec64f86fa2370c4509559 29-Sep-2010 Kenny Root <kroot@google.com> resolved conflicts for merge of d8e8186c to master

Change-Id: Ica3f6cd958717ea7033cab8b4bf9cd3425c1e1c5
d8e8186c887fe47977721315f439465771a96374 29-Sep-2010 Kenny Root <kroot@google.com> am 05105f7a: Update OBB API to include callbacks

Merge commit '05105f7abe02b2dff91d6260b3628c8b97816bab' into gingerbread-plus-aosp

* commit '05105f7abe02b2dff91d6260b3628c8b97816bab':
Update OBB API to include callbacks
d58429f9acdb33f05bdb233b7bba495de80cb336 28-Sep-2010 Steve Howard <showard@google.com> Manual merge: Move DownloadManager to android.app

Changing package at hackbod's request.

Change-Id: I867017b6a9f4684d30c6c5bd1b07f9cabecddb9f
ontext.java
05105f7abe02b2dff91d6260b3628c8b97816bab 23-Sep-2010 Kenny Root <kroot@google.com> Update OBB API to include callbacks

Add a callback for users of the StorageManager API to be able to receive
notifications when the requested operation completes for mountObb and
unmountObb.

Add NDK API to get to ObbInfo like the Java API has.

Also update the docs for the API and remove the "STOPSHIP" comments.

Change-Id: I23a4409c7f8b74d3169614beba920b4d667990a4
es/ObbInfo.java
es/ObbScanner.java
9d9719c44ad05834b48542ea0fc4edbb4f59c311 28-Sep-2010 Steve Howard <showard@google.com> am 5bdb89d7: Merge "Move DownloadManager to android.app (DO NOT MERGE)" into gingerbread

Merge commit '5bdb89d7ac20d4d3e71660d7fe78002a63900399' into gingerbread-plus-aosp

* commit '5bdb89d7ac20d4d3e71660d7fe78002a63900399':
Move DownloadManager to android.app (DO NOT MERGE)
cc8f44bc819a76ac8d0127c57a303bd839240a62 28-Sep-2010 Kenny Root <kroot@google.com> am e7dd4e38: am 04a426f5: Merge "Use buffered I/O during certificate parsing" into gingerbread

Merge commit 'e7dd4e38c47f2f7760d1ce4f86d6321e17f98d1d'

* commit 'e7dd4e38c47f2f7760d1ce4f86d6321e17f98d1d':
Use buffered I/O during certificate parsing
64bbbb471ed78ae06f411224849a4556a30fd362 28-Sep-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of a8bce7c8 to master

Change-Id: I34526a3aed6591639e1a1bff8f42e0c5d8e328cc
cca1f0e3476edd09cdd81b075a6b7780a2959b46 27-Sep-2010 Dianne Hackborn <hackbod@google.com> Allow all apps to call ContentResolver.getType().

I can't find the bug number for this, but it is needed for some things
we are doing where the app building an intent may not have access to the
URI in the data field. This is for HC, but doing in GB to avoid introducing
integration issues.

Change-Id: I0cac971854198b18775d2a73deb80f23431bfbe2
ontentProvider.java
ontentResolver.java
31fd85f39b554e09b2e6c1c2ccf5c186859880fa 28-Sep-2010 Steve Howard <showard@google.com> Move DownloadManager to android.app (DO NOT MERGE)

Changing package at hackbod's request. I'll merge this manually, as
there's some additional master-only code that will be to be
simultaneously changed.

Change-Id: Ibb629ec1c31807fbee31e0193c6a941d04be0117
ontext.java
e7dd4e38c47f2f7760d1ce4f86d6321e17f98d1d 27-Sep-2010 Kenny Root <kroot@google.com> am 04a426f5: Merge "Use buffered I/O during certificate parsing" into gingerbread

Merge commit '04a426f5b50a628fb73bc29b003b0e5bece17c27' into gingerbread-plus-aosp

* commit '04a426f5b50a628fb73bc29b003b0e5bece17c27':
Use buffered I/O during certificate parsing
04a426f5b50a628fb73bc29b003b0e5bece17c27 27-Sep-2010 Kenny Root <kroot@google.com> Merge "Use buffered I/O during certificate parsing" into gingerbread
a8bce7c8acb3904eb69bf21276c0ca2635c76a20 27-Sep-2010 Dianne Hackborn <hackbod@google.com> am d8691d73: Merge "Allow all apps to call ContentResolver.getType()." into gingerbread

Merge commit 'd8691d73d158acd9ffc63748126e822afd656707' into gingerbread-plus-aosp

* commit 'd8691d73d158acd9ffc63748126e822afd656707':
Allow all apps to call ContentResolver.getType().
d8691d73d158acd9ffc63748126e822afd656707 27-Sep-2010 Dianne Hackborn <hackbod@google.com> Merge "Allow all apps to call ContentResolver.getType()." into gingerbread
2b0fa71c1a9e588fc31944baa5a21c362a0ab1ca 27-Sep-2010 Dan Morrill <morrildl@google.com> am c6581a10: am 4e9751f0: Merge "Adding a feature to indicate that the device possesses low-latency audio. The specific criteria for low-latency audio are defined in the CDD, but since that hasn\'t yet been settled for Gingerbread, this change doesn\'t go into details

Merge commit 'c6581a1046b062d0e06e50e9b09e6c12a8e54efc'

* commit 'c6581a1046b062d0e06e50e9b09e6c12a8e54efc':
Adding a feature to indicate that the device possesses low-latency audio.
c6581a1046b062d0e06e50e9b09e6c12a8e54efc 27-Sep-2010 Dan Morrill <morrildl@google.com> am 4e9751f0: Merge "Adding a feature to indicate that the device possesses low-latency audio. The specific criteria for low-latency audio are defined in the CDD, but since that hasn\'t yet been settled for Gingerbread, this change doesn\'t go into details. We can do a d

Merge commit '4e9751f0770c8bfe6f7d57465cba754af5aa942b' into gingerbread-plus-aosp

* commit '4e9751f0770c8bfe6f7d57465cba754af5aa942b':
Adding a feature to indicate that the device possesses low-latency audio.
d63f7dbf5d30320e8fd4dd8056d245f7b1e818ba 27-Sep-2010 Kenny Root <kroot@google.com> Use buffered I/O during certificate parsing

The PackageParser was using a raw InputStream instead of wrapping it in
a BufferedInputStream which could degrade performance.

Change-Id: I15c86c3ead363ddbadf4ae27e011feda90fcc579
m/PackageParser.java
8313fc7e94e46e5cc09f457a15a771a325b9f74f 27-Sep-2010 Dianne Hackborn <hackbod@google.com> Allow all apps to call ContentResolver.getType().

I can't find the bug number for this, but it is needed for some things
we are doing where the app building an intent may not have access to the
URI in the data field. This is for HC, but doing in GB to avoid introducing
integration issues.

Change-Id: I0cac971854198b18775d2a73deb80f23431bfbe2
ontentProvider.java
ontentResolver.java
898e1e8860dea8490ba9208fca7965adf9cb8298 27-Sep-2010 Dan Morrill <morrildl@google.com> Adding a feature to indicate that the device possesses low-latency audio.
The specific criteria for low-latency audio are defined in the CDD, but since
that hasn't yet been settled for Gingerbread, this change doesn't go into
details. We can do a docs change later once GB CDD is final.

Change-Id: Ic5ad9d04e8ecd78c81b6f09439affec6bf8cb9b2
m/PackageManager.java
c388844d50a67ecd8eb93d29d618bae1fa3a3c5d 25-Sep-2010 Dianne Hackborn <hackbod@google.com> am 234e42df: DO NOT MERGE. Fix issue #3000764: API REVIEW: android.R.*

Merge commit '234e42df5fac958ed9f15aae6005dd72e4bdf08a' into gingerbread-plus-aosp

* commit '234e42df5fac958ed9f15aae6005dd72e4bdf08a':
DO NOT MERGE. Fix issue #3000764: API REVIEW: android.R.*
234e42df5fac958ed9f15aae6005dd72e4bdf08a 25-Sep-2010 Dianne Hackborn <hackbod@google.com> DO NOT MERGE. Fix issue #3000764: API REVIEW: android.R.*

Not going out in GB.

Change-Id: I9d4f5938ec7d2a54c0f72b8eb5a177ee66f12146
m/PackageParser.java
4d891e7db56c823a7baefd94fd3fb4af8b485ea9 22-Sep-2010 Dmitri Plotnikov <dplotnikov@google.com> Making observer registration customizable.

There is a need to skip registering the observer
or register a different observer in cases when
we have an extremely chatty content provider
(think MediaStore).

Change-Id: Iadfb8e0193736cb231762a147c2df1491ad22e0e
ursorLoader.java
596b55d9c82a52049702931839f69a12cd7dc920 22-Sep-2010 Dan Morrill <morrildl@google.com> am 62018429: Merge "Adding new feature definitions for new sensors (barometer and gyroscope.)" into gingerbread

Merge commit '62018429c2639b8a0f27e9b18b9b186df80bca4d' into gingerbread-plus-aosp

* commit '62018429c2639b8a0f27e9b18b9b186df80bca4d':
Adding new feature definitions for new sensors (barometer and gyroscope.)
5744bb4aa5dea525d1ae236cd16379134024eae1 02-Sep-2010 Dan Morrill <morrildl@google.com> Adding new feature definitions for new sensors (barometer and gyroscope.)

Change-Id: Ic3a35c7b277921eaa5b05e3285b6aed5ed75bea6
m/PackageManager.java
bfb619a12aa723ab2d6a9ce9444f633488cc31a4 17-Sep-2010 Jeff Hamilton <jham@android.com> Merge "Convert Numbers to Booleans when calling getAsBoolean()."
d208c3a68b96cf0c1dde5cdeab0e8464b9e52018 17-Sep-2010 Jeff Hamilton <jham@android.com> Convert Numbers to Booleans when calling getAsBoolean().

Change-Id: I31ad0bccd422f8e76cf37d500a93744cc23d4859
ontentValues.java
04065bdcca44d419812d4a2d955e3ee7b6c914eb 16-Sep-2010 Joe Onorato <joeo@google.com> am ee76ed9c: am 4198cece: Merge "Fix the rest of the javadoc warnings." into gingerbread

Merge commit 'ee76ed9c0df11ac70ae67bae051cb64c9d79dafb'

* commit 'ee76ed9c0df11ac70ae67bae051cb64c9d79dafb':
Fix the rest of the javadoc warnings.
ee76ed9c0df11ac70ae67bae051cb64c9d79dafb 16-Sep-2010 Joe Onorato <joeo@google.com> am 4198cece: Merge "Fix the rest of the javadoc warnings." into gingerbread

Merge commit '4198cececf70bf034e12f19bb87f29cc29931c39' into gingerbread-plus-aosp

* commit '4198cececf70bf034e12f19bb87f29cc29931c39':
Fix the rest of the javadoc warnings.
d3ad696b1daaa6c92d8fa268c81ce220ed1d9ffc 16-Sep-2010 Joe Onorato <joeo@google.com> Fix the rest of the javadoc warnings.

Change-Id: Ifbf422a2eb177858813d118f03ceddcd807e73b4
bstractThreadedSyncAdapter.java
ontentProviderOperation.java
c5e2e26b9da40dc0941d0a6a33a82d8923924051 15-Sep-2010 Chris Palmer <palmer@google.com> am 5bade703: Merge "DO NOT MERGE Correct the PackageManager.checkSignatures documentation." into gingerbread

Merge commit '5bade703fd8434ba4cd5c9d1e8e1dc0f383b32b5' into gingerbread-plus-aosp

* commit '5bade703fd8434ba4cd5c9d1e8e1dc0f383b32b5':
DO NOT MERGE Correct the PackageManager.checkSignatures documentation.
5bade703fd8434ba4cd5c9d1e8e1dc0f383b32b5 15-Sep-2010 Chris Palmer <palmer@google.com> Merge "DO NOT MERGE Correct the PackageManager.checkSignatures documentation." into gingerbread
ade9916d5ca5795ced859a7d7405ef32140ccee8 14-Sep-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 6421ae7e to master

Change-Id: Ic8c4418f13a42fc1d3a44ad68e32b4e438b07f6f
6421ae7eff277da7c0f84eb1cb78c2015ff04b25 14-Sep-2010 Dianne Hackborn <hackbod@google.com> am 5251c800: Merge "Fix potential crash in sync." into gingerbread

Merge commit '5251c800c93c6f6fd473475c36b8ab3b360c1e4d' into gingerbread-plus-aosp

* commit '5251c800c93c6f6fd473475c36b8ab3b360c1e4d':
Fix potential crash in sync.
50addddba5154f6ca00d8e275d279bf4ec66921f 14-Sep-2010 Dianne Hackborn <hackbod@google.com> Fix potential crash in sync.

Change-Id: I523d8faa24b7ba57dcc09cbe91b5cb91d9f6f262
yncManager.java
e746f03c6c8b8d0897d322ab524d545ace200fcd 14-Sep-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 53686433 to master

Change-Id: I27004dc464f5771d3205ae5757c6eccc5b16854d
53686433a9790bcfe7211a661b26783ee12bb436 13-Sep-2010 Dianne Hackborn <hackbod@google.com> am 7e9f4eb2: Track client requests through location manager.

Merge commit '7e9f4eb2608148436cef36c9969bf8a599b39e72' into gingerbread-plus-aosp

* commit '7e9f4eb2608148436cef36c9969bf8a599b39e72':
Track client requests through location manager.
09f3360f51b216fb9c40f78e7a4eee41cd9cc187 13-Sep-2010 Chris Palmer <palmer@google.com> DO NOT MERGE Correct the PackageManager.checkSignatures documentation.

Make the documentation match the current behavior since change ID
Ibdeff170bd386d723f774136b18e0ad59d9cdabb.

Will add @deprecated tags back in in a separate CL. This is just to get
things in the same state as master, following the build breakage mishap.

Change-Id: I47c53700892473061093002c32ad8f095b5813d1

Do not merge to master; an equivalent CL has already been committed there.
m/PackageManager.java
7e9f4eb2608148436cef36c9969bf8a599b39e72 11-Sep-2010 Dianne Hackborn <hackbod@google.com> Track client requests through location manager.

This fixes a problem where applications could ask the location
manager to do very heavy-weight things (like... say... update
location every minute), which would get accounted against the
system instead of the application because ultimately it is the
system making the heavy calls (wake locks, etc).

To solve this, we introduce a new class WorkSource representing
the source of some work. Wake locks and Wifi locks allow you
to set the source to use (but only if you are system code and thus
can get the permission to do so), which is what will be reported
to the battery stats until the actual caller.

For the initial implementation, the location manager keeps track
of all clients requesting periodic updates, and tells its providers
about them as a WorkSource param when setting their min update time.
The network location provider uses this to set the source on the
wake and wifi locks it acquires, when doing work because of the
update period.

This should also be used elsewhere, such as in the GPS provider,
but this is a good start.

Change-Id: I2b6ffafad9e90ecf15d7c502e2db675fd52ae3cf
yncManager.java
f5aafff4851cc55523ac3beb164e994ec223985d 13-Sep-2010 Chris Palmer <palmer@google.com> Unbreak the build.

Just a quick fix. Will properly re-add @deprecated and update-api next, and
then get API approval.

Change-Id: Idf57a33dc97bc2619cf48509f74d9e0de935124b
m/PackageManager.java
ed35d0ee857353f42e58342023647d0b10ab9fd3 13-Sep-2010 Chris Palmer <palmer@google.com> Merge "Correct the PackageManager.checkSignatures documentation."
cec7eb1c079331ba38ed4472abe26a55d6427324 13-Sep-2010 Kenny Root <kroot@google.com> am 8b11f30c: am 1bece432: Make nativeLibraryDir visible in the API

Merge commit '8b11f30cb2cfe9922439e8a032311de114ce4da4'

* commit '8b11f30cb2cfe9922439e8a032311de114ce4da4':
Make nativeLibraryDir visible in the API
8b11f30cb2cfe9922439e8a032311de114ce4da4 13-Sep-2010 Kenny Root <kroot@google.com> am 1bece432: Make nativeLibraryDir visible in the API

Merge commit '1bece4320c1d2308b4a5b5aeda47b065312b3053' into gingerbread-plus-aosp

* commit '1bece4320c1d2308b4a5b5aeda47b065312b3053':
Make nativeLibraryDir visible in the API
1bece4320c1d2308b4a5b5aeda47b065312b3053 13-Sep-2010 Kenny Root <kroot@google.com> Make nativeLibraryDir visible in the API

Change-Id: Ic88e76a85b0041e97b4c29c42dfa09db0356391c
m/ApplicationInfo.java
42855149750fb848b0d743cf0e5f204a05be2f07 10-Sep-2010 Chris Palmer <palmer@google.com> Correct the PackageManager.checkSignatures documentation.

Make the documentation match the current behavior since change ID
Ibdeff170bd386d723f774136b18e0ad59d9cdabb.

Change-Id: I9d24800ba98f14cb278f029cdf37a086394d1747
m/PackageManager.java
94bf9431e5464c7757890abfe0716997151f153f 08-Sep-2010 Jake Hamby <jhamby@google.com> am e7578344: am 5872e9d7: Merge "Allow incoming SMS until internal storage is almost full." into gingerbread

Merge commit 'e75783440a55fb0a5ef75066be94a11898f652f0'

* commit 'e75783440a55fb0a5ef75066be94a11898f652f0':
Allow incoming SMS until internal storage is almost full.
e75783440a55fb0a5ef75066be94a11898f652f0 08-Sep-2010 Jake Hamby <jhamby@google.com> am 5872e9d7: Merge "Allow incoming SMS until internal storage is almost full." into gingerbread

Merge commit '5872e9d7f31e5a4c5f3d871dba02b6d72a7ada78' into gingerbread-plus-aosp

* commit '5872e9d7f31e5a4c5f3d871dba02b6d72a7ada78':
Allow incoming SMS until internal storage is almost full.
bb3716332321e22537a5015be13e2229fb9b90bc 24-Aug-2010 Jake Hamby <jhamby@google.com> Allow incoming SMS until internal storage is almost full.

Fix for bug 2382830: new incoming SMS should not be rejected when
running low on internal phone storage.

Testing revealed that the /data partition should have at least 256 KiB
available in order to prevent random app crashes (including system apps)
due to SQLite transaction failures. With 256 KiB free, the device should
safely boot without storage full errors. This takes into account the
36-40 KiB that the YAFFS2 filesystem reports as available even after
the partition has been completely filled. I've set the default full
threshold to 1 MiB to provide a generous safety margin.

For this bug, I changed the DeviceStorageMonitorService demon to send
two new hidden notifications for device storage "full" and "not full",
when the free space falls below the full threshold (default 1 MiB,
but configurable as a system setting), in addition to the existing
storage low/okay notifications sent when the storage crosses the threshold
of 90% full (also configurable).

The SMS code was changed to use these new notifications so that it can
accept messages until the data partition has been filled to the maximum
safe capacity rather than stopping when it hits 90% full. There should
be no negative impact on battery life because the additional check in
the storage polling service should be offset by an optimization to cache
the free threshold values which were previously being computed every time
through the loop.

While testing this change, I discovered that SMSDispatcher was being
instantiated twice, the first time in GSMPhone/CDMAPhone, and the second
time in SimSmsInterfaceManager / RuimSmsInterfaceManager. Changed the code
to pass the original SMSDispatcher to the Sim/RuimSmsInterfaceManager
constructor.

Change-Id: Ie0c6d05294778ab6ee42e0fa01313af96d824c77
ntent.java
7e955e7ccef41fba8bed9f6b9d4fd59afb9007ae 04-Sep-2010 Kenny Root <kroot@google.com> am a060b5f7: am 6dc003a7: Merge "Reduce footprint of Signature from ~7000 to ~1448" into gingerbread

Merge commit 'a060b5f73863f4b5f161674a9c5ac0a0d8d76072'

* commit 'a060b5f73863f4b5f161674a9c5ac0a0d8d76072':
Reduce footprint of Signature from ~7000 to ~1448
a060b5f73863f4b5f161674a9c5ac0a0d8d76072 04-Sep-2010 Kenny Root <kroot@google.com> am 6dc003a7: Merge "Reduce footprint of Signature from ~7000 to ~1448" into gingerbread

Merge commit '6dc003a73f7f01aa5dd5831e777e2aa44f65b032' into gingerbread-plus-aosp

* commit '6dc003a73f7f01aa5dd5831e777e2aa44f65b032':
Reduce footprint of Signature from ~7000 to ~1448
6dc003a73f7f01aa5dd5831e777e2aa44f65b032 04-Sep-2010 Kenny Root <kroot@google.com> Merge "Reduce footprint of Signature from ~7000 to ~1448" into gingerbread
de0ff63700c1836771d797e6c7340b18cb814484 04-Sep-2010 Kenny Root <kroot@google.com> Reduce footprint of Signature from ~7000 to ~1448

Signature had lazy initialization of the mString member when needed, but
it would stick around forever when initialized. Each package had one or
more Signatures that would be ~7000 bytes each. At a couple hundred
packages, that's over 1.3MB just for signatures.

Whenever packages.xml was written out, it would write the Signature for
each program as well which happens at boot thereby initializing the
mString member pretty much immediately.

Change-Id: Idb882ffeca2861b3e87437fc83f001710d6c0441
m/Signature.java
acc4e041d27c24b45fb190c493717fda987b52c2 04-Sep-2010 Dianne Hackborn <hackbod@google.com> am 69717ccd: DO NOT MERGE. Some stuff that is Not Ready.

Merge commit '69717ccd13bb5568b912701ab39d603cfa7091cc' into gingerbread-plus-aosp

* commit '69717ccd13bb5568b912701ab39d603cfa7091cc':
DO NOT MERGE. Some stuff that is Not Ready.
69717ccd13bb5568b912701ab39d603cfa7091cc 03-Sep-2010 Dianne Hackborn <hackbod@google.com> DO NOT MERGE. Some stuff that is Not Ready.

Change-Id: I8fdba32722d86b92c791dbf7c6c0166bcdb02852
m/ApplicationInfo.java
es/Configuration.java
6c82f673f6c01cdcf7ede82c67601fbd53d090f3 04-Sep-2010 Dianne Hackborn <hackbod@google.com> am fd3f44b3: am e1aa82a4: Merge "Adding a feature denoting support for 5 or more fully independent multitouch pointers." into gingerbread

Merge commit 'fd3f44b38882c74c10aff0e238ee4ad9fcd8b724'

* commit 'fd3f44b38882c74c10aff0e238ee4ad9fcd8b724':
Adding a feature denoting support for 5 or more fully
fd3f44b38882c74c10aff0e238ee4ad9fcd8b724 04-Sep-2010 Dianne Hackborn <hackbod@google.com> am e1aa82a4: Merge "Adding a feature denoting support for 5 or more fully independent multitouch pointers." into gingerbread

Merge commit 'e1aa82a4228d009537693253ba3a0113abbf5ab8' into gingerbread-plus-aosp

* commit 'e1aa82a4228d009537693253ba3a0113abbf5ab8':
Adding a feature denoting support for 5 or more fully
6993d3d136fed8600a3e337d710907b50d8d6e49 03-Sep-2010 Dan Morrill <morrildl@google.com> Adding a feature denoting support for 5 or more fully
independent multitouch pointers.

Change-Id: I9997ed9c481dbd507e9eff70d8beb9e1140cca3f
m/PackageManager.java
16750623421fb404181b12ae04baa2fe26c5b9dd 02-Sep-2010 Dan Morrill <morrildl@google.com> Adding features for new hardware, and creating a baseline list of required
hardware for the Tablet profile. This is very much subject to change.

Change-Id: Id0921b373cf610a7ec9ddd75dc020bf8b22a6911
m/PackageManager.java
f83d4f1779eb4801275a56023c343459a95009af 02-Sep-2010 Hung-ying Tyan <tyanh@google.com> resolved conflicts for merge of 3e4975a5 to master

Change-Id: Icd382fc43c8a1975801ab42eb184b633520149c7
3e4975a52ccd9dade7fffc9f8c144bff0f4c3cb1 02-Sep-2010 Hung-ying Tyan <tyanh@google.com> am 3424c02e: Add software features for SIP and VOIP

Merge commit '3424c02e6b931a8bbd651ae75217bebd008b2605' into gingerbread-plus-aosp

* commit '3424c02e6b931a8bbd651ae75217bebd008b2605':
Add software features for SIP and VOIP
3424c02e6b931a8bbd651ae75217bebd008b2605 27-Aug-2010 Hung-ying Tyan <tyanh@google.com> Add software features for SIP and VOIP

and block SipService creation and SIP API if the feature is not available.

Change-Id: Icf780af1ac20dda4d8180cea3e5b20e21a8350bc
m/PackageManager.java
90324669f21e0676e66bc4ed681be560bba5f188 02-Sep-2010 Dan Morrill <morrildl@google.com> am 61f1cbdd: am a800a2ef: Merge "Adding a feature definition corresponding to support for Near-Field Communications (NFC)." into gingerbread

Merge commit '61f1cbdd71942433ce1515b614ec3d9c259ea037'

* commit '61f1cbdd71942433ce1515b614ec3d9c259ea037':
Adding a feature definition corresponding to support for Near-Field
61f1cbdd71942433ce1515b614ec3d9c259ea037 02-Sep-2010 Dan Morrill <morrildl@google.com> am a800a2ef: Merge "Adding a feature definition corresponding to support for Near-Field Communications (NFC)." into gingerbread

Merge commit 'a800a2efa29d88e198220753f07e7d9ff69ddd9b' into gingerbread-plus-aosp

* commit 'a800a2efa29d88e198220753f07e7d9ff69ddd9b':
Adding a feature definition corresponding to support for Near-Field
76437d379357a418b8236b041d1b3e03939264e6 01-Sep-2010 Dan Morrill <morrildl@google.com> Adding a feature definition corresponding to support for Near-Field
Communications (NFC).

Change-Id: I32b1b949524bfd978f53e23e02d38dfba4a2ea9c
m/PackageManager.java
2394c164a76f6d3f8ad9f1c1517f58f72adab9d7 01-Sep-2010 Dianne Hackborn <hackbod@google.com> am ec438e14: am 361199b5: Add PackageManager API to get information about a provider component.

Merge commit 'ec438e1448ebc578ee5a4c4beb1e26292cdedd6e'

* commit 'ec438e1448ebc578ee5a4c4beb1e26292cdedd6e':
Add PackageManager API to get information about a provider component.
ec438e1448ebc578ee5a4c4beb1e26292cdedd6e 01-Sep-2010 Dianne Hackborn <hackbod@google.com> am 361199b5: Add PackageManager API to get information about a provider component.

Merge commit '361199b5e742c6635d4d7a03de6cf37b31cf442c' into gingerbread-plus-aosp

* commit '361199b5e742c6635d4d7a03de6cf37b31cf442c':
Add PackageManager API to get information about a provider component.
361199b5e742c6635d4d7a03de6cf37b31cf442c 31-Aug-2010 Dianne Hackborn <hackbod@google.com> Add PackageManager API to get information about a provider component.

Kind-of useful when all you have is a ComponentName.

Change-Id: I9a99f12daabb29e97e882e09c43ca0df70c00651
m/IPackageManager.aidl
m/PackageManager.java
02f4f0eb4919453e8dbf40549d4ae9c05f05b8dd 31-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> am 734d2707: am bb660d7e: Merge "Renaming SharedPreferences.startCommit to apply" into gingerbread

Merge commit '734d270769c609c7d3a1f2ec46e1d329d9682ab4'

* commit '734d270769c609c7d3a1f2ec46e1d329d9682ab4':
Renaming SharedPreferences$Editor.startCommit to apply
734d270769c609c7d3a1f2ec46e1d329d9682ab4 31-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> am bb660d7e: Merge "Renaming SharedPreferences.startCommit to apply" into gingerbread

Merge commit 'bb660d7e1bed3a07a1804bd9641d9634bfaa4972' into gingerbread-plus-aosp

* commit 'bb660d7e1bed3a07a1804bd9641d9634bfaa4972':
Renaming SharedPreferences$Editor.startCommit to apply
66fce5068a8a3aeb28aaf713843891b286a75280 31-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> Renaming SharedPreferences$Editor.startCommit to apply

Also removes the artifical restriction that only one apply() can be in
flight at once. That was old from when I thought it'd end up being
required, but wasn't.

Change-Id: I3540ea8be6e0760d6a51d218186f71655c2f3f55
haredPreferences.java
6dabe240ed0adcf74d0b5eed37d7085095e20ffd 30-Aug-2010 Patrick Dubroy <dubroy@google.com> Add an Intent category for apps that provide an app market.
ntent.java
44af754cf0c9ad9a8162e1bd2af60737e81a8beb 28-Aug-2010 Daniel Sandler <dsandler@android.com> am d02bdaab: Remove experimental immersive mode support. DO NOT MERGE

Merge commit 'd02bdaab495641ab50e2123fdfd99a819cc40540' into gingerbread-plus-aosp

* commit 'd02bdaab495641ab50e2123fdfd99a819cc40540':
Remove experimental immersive mode support. DO NOT MERGE
d02bdaab495641ab50e2123fdfd99a819cc40540 26-Aug-2010 Daniel Sandler <dsandler@android.com> Remove experimental immersive mode support. DO NOT MERGE

Bug: 2949215

Change-Id: I7d998ef571ef7e149bb96261430e92150b80b77d
m/ActivityInfo.java
m/PackageParser.java
818c830c59fb8fb0fe7576f1e5a073ab599227c8 28-Aug-2010 Kenny Root <kroot@google.com> am 83285781: am 7046bd92: Merge "Allow native shared libraries in ASEC containers" into gingerbread

Merge commit '8328578152fbfd23952a6cda4b2e60853d78eb74'

* commit '8328578152fbfd23952a6cda4b2e60853d78eb74':
Allow native shared libraries in ASEC containers
8328578152fbfd23952a6cda4b2e60853d78eb74 28-Aug-2010 Kenny Root <kroot@google.com> am 7046bd92: Merge "Allow native shared libraries in ASEC containers" into gingerbread

Merge commit '7046bd924f77c54585b9e0e0c95e5edd2ceb55a3' into gingerbread-plus-aosp

* commit '7046bd924f77c54585b9e0e0c95e5edd2ceb55a3':
Allow native shared libraries in ASEC containers
85387d7ba36e56b291cbde87acb5a5b2200fe01c 26-Aug-2010 Kenny Root <kroot@google.com> Allow native shared libraries in ASEC containers

This change moves the native library handling earlier in the package
installation process so that it may be inserted into ASEC containers
before they are finalized in the DefaultContainerService.

Note that native libraries on SD card requires that vold mount ASEC
containers without the "noexec" flag on the mount point.

Change-Id: Ib34b1886bf6f94b99bb7b3781db6e9b5a58807ba
m/ApplicationInfo.java
m/InstrumentationInfo.java
7f7ce40f90cf00dc046fb9520d77d29e96b474d6 28-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> resolved conflicts for merge of 28130bae to master

Change-Id: I13df8dc12092c3d2536e12216df9130d5914380a
f6d952bbc85706031e1ad29ec389c1e02cfff433 28-Aug-2010 Dianne Hackborn <hackbod@google.com> Fix some SDK build breakage. Not all.

Change-Id: I2791b0a7c48d03cb6e5ca93771efb56c0a0c1956
lipData.java
lipDescription.java
28130baefb4fa6d1e0ff9c92337295ba74461cf7 27-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> resolved conflicts for merge of 6b50986a to gingerbread-plus-aosp

Change-Id: I7c5ec7ae717e75ad242e2c1ad4537052e4eea718
41bfa37cb2ca244432061bddb1c8bf802545ae6e 27-Aug-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 409b7120 to master

Change-Id: I1741e205b5ff5ae62a38ab3b096bcc3d96883538
1040dc465cbf5ca8f834a87c949e476abefa3f76 27-Aug-2010 Dianne Hackborn <hackbod@google.com> Improve clipboard API.

- Rename ClippedData to ClipData.
- Introudce ClipDescription subclass.
- Add convenience APIs for creating a ClipData.
- Add ClipboardManager API to get just the ClipDescription.
- Define MIME types associated with a clip.

Change-Id: If97ef91aa99a4dd0ec74ccaea504345c9ef12b5c
lipData.aidl
lipData.java
lipDescription.aidl
lipDescription.java
lipboardManager.java
lippedData.aidl
lippedData.java
ontentProvider.java
Clipboard.aidl
333b8cba996c8ebb8ca55ebfc5cc536bdd64af94 26-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> SharedPreferences$Editor.startCommit()

Adds a fire-and-forget save method (startCommit) to the
SharedPreferences.Editor, which is the way most people use it anyway.

This commit adds the implementation. The previous commit added the
interface and docs:

previous change: Idf9934b445da1fb72b79f0192218b47c0a7f5a34
git commit: edf32d01316bd3432c023f17747461b08ae36375

In addition, this change:

-- adds a generic "runPendingWorkFinishers" mechanism to
ActivityThread to wait on async operations that are still
in flight and use it for this.

-- ties runPendingWorkFinishers into Activity.onPause,
BroadcastReceiver, and Service.

-- makes sSharedPreferences keyed on name, not File, to avoid
unnnecessary allocations

-- documents and guarantees what thread
OnSharedPreferenceChangeListener callbacks run on

-- makes a few things in frameworks/base use startCommit(), notably
Preference.java (which was ignoring the return value anyway)

Change-Id: I1c8db60ad45643226fe6d246d3e513eeb7bd0ebd
haredPreferences.java
409b71201a982e188c05238d95a2eb53ea9e0cf7 26-Aug-2010 Dianne Hackborn <hackbod@google.com> am 02486b13: Hide heavy-weight API.

Merge commit '02486b1327e3007c62d253dd89ba9db1852b87f8' into gingerbread-plus-aosp

* commit '02486b1327e3007c62d253dd89ba9db1852b87f8':
Hide heavy-weight API.
02486b1327e3007c62d253dd89ba9db1852b87f8 26-Aug-2010 Dianne Hackborn <hackbod@google.com> Hide heavy-weight API.

And give it a better name, for when it is later un-hidden.

Change-Id: Iae0d3054d44f873b9f953bc41d175a47802a185e
m/ApplicationInfo.java
m/PackageParser.java
4cbc4f1067503b5de62a5338478d3cad8c25bd3d 26-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> am 49209cbc: am d0e6598b: Merge "Start of SharedPreferences.startCommit()" into gingerbread

Merge commit '49209cbcef37c4b20c9d0649ba284a51144b3930'

* commit '49209cbcef37c4b20c9d0649ba284a51144b3930':
Start of SharedPreferences$Editor.startCommit()
49209cbcef37c4b20c9d0649ba284a51144b3930 26-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> am d0e6598b: Merge "Start of SharedPreferences.startCommit()" into gingerbread

Merge commit 'd0e6598b4a32f3000247341414449a3aa4d9f7f4' into gingerbread-plus-aosp

* commit 'd0e6598b4a32f3000247341414449a3aa4d9f7f4':
Start of SharedPreferences$Editor.startCommit()
edf32d01316bd3432c023f17747461b08ae36375 25-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> Start of SharedPreferences$Editor.startCommit()

No implementation yet, just the interface.

Change-Id: Idf9934b445da1fb72b79f0192218b47c0a7f5a34
haredPreferences.java
f924a513da2ec1989a06dc16d007c0eca422ea67 25-Aug-2010 Jeff Hamilton <jham@android.com> Fix the documentation of ContentValues.

Bug: 2172562
Change-Id: If7752b937dabc7238723787bb0aa5c348406e28b
ontentValues.java
103bff317be898498afa1a2f33b960f09592da74 24-Aug-2010 Dianne Hackborn <hackbod@google.com> am 5474b0f8: am 39792d22: Fix bugs with granting permissions through onNewIntent().

Merge commit '5474b0f8603ee66413c3e44600ca46f162f3089e'

* commit '5474b0f8603ee66413c3e44600ca46f162f3089e':
Fix bugs with granting permissions through onNewIntent().
3e6d50cc484f2eee0cff63789cc7796718eb6b68 24-Aug-2010 Dianne Hackborn <hackbod@google.com> Make Theme.Holo the default theme for new apps.

Also change Holo to have an action bar, instead of a title bar.

Change-Id: I45c2f06938509ae02cde99d1c06c228f86e8e3e8
m/PackageParser.java
0c0250c8515f8b2502db6472c16f99980b7a4101 21-Aug-2010 Gilles Debunne <debunne@google.com> am bbe5fb2b: am 189de282: Merge "Fix for a Resource system bug that displayed the wrong name for missing asset." into gingerbread

Merge commit 'bbe5fb2b73172a6b42b3406354a3556bd53916e1'

* commit 'bbe5fb2b73172a6b42b3406354a3556bd53916e1':
Fix for a Resource system bug that displayed the wrong name for missing asset.
e49564e0f710ba4a1405cfdfde068cb776ee474e 21-Aug-2010 Kenny Root <kroot@google.com> am 821afa9a: am 54d41379: Merge "Add OBB flags to support overlays" into gingerbread

Merge commit '821afa9aec8d3a4ffd2e72ce797d8097eaf13973'

* commit '821afa9aec8d3a4ffd2e72ce797d8097eaf13973':
Add OBB flags to support overlays
37444f4239b26944d24f039c537d411ac7004243 21-Aug-2010 Dianne Hackborn <hackbod@google.com> am d172594e: am cf6d2a1d: Merge "Fix issue #2845673: android:exported="false" is not obeyed" into gingerbread

Merge commit 'd172594e3a1e25f1f2c190e99421cb7d4963389b'

* commit 'd172594e3a1e25f1f2c190e99421cb7d4963389b':
Fix issue #2845673: android:exported="false" is not obeyed
5474b0f8603ee66413c3e44600ca46f162f3089e 20-Aug-2010 Dianne Hackborn <hackbod@google.com> am 39792d22: Fix bugs with granting permissions through onNewIntent().

Merge commit '39792d2262352ae775091876d5488d2412a2ff92' into gingerbread-plus-aosp

* commit '39792d2262352ae775091876d5488d2412a2ff92':
Fix bugs with granting permissions through onNewIntent().
39792d2262352ae775091876d5488d2412a2ff92 20-Aug-2010 Dianne Hackborn <hackbod@google.com> Fix bugs with granting permissions through onNewIntent().

It would grant the permission to the temporary ActivityRecord,
not the real one, so it never got cleaned up.

Also allow granting of permissions to services because... well,
it would be really really useful. And it introduces some
refactoring that we'll need to support cut/paste.

Change-Id: If521f509042e7baad7f5dc9bec84b6ba0d90ba09
m/ApplicationInfo.java
bbe5fb2b73172a6b42b3406354a3556bd53916e1 20-Aug-2010 Gilles Debunne <debunne@google.com> am 189de282: Merge "Fix for a Resource system bug that displayed the wrong name for missing asset." into gingerbread

Merge commit '189de2820932fd5dc98b9639fdc420a57cfa2316' into gingerbread-plus-aosp

* commit '189de2820932fd5dc98b9639fdc420a57cfa2316':
Fix for a Resource system bug that displayed the wrong name for missing asset.
189de2820932fd5dc98b9639fdc420a57cfa2316 20-Aug-2010 Gilles Debunne <debunne@google.com> Merge "Fix for a Resource system bug that displayed the wrong name for missing asset." into gingerbread
75399683a418fff55539e6028341caa2e7572362 19-Aug-2010 Gilles Debunne <debunne@google.com> Fix for a Resource system bug that displayed the wrong name for missing asset.

I didn't reproduce the bug and cannot ensure that this will fix it. The monkey
with identical parameters stops with an ANR.

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

Change-Id: I45f156c6a694f2d67fe514e0f0bb367aa017f08e
es/TypedArray.java
821afa9aec8d3a4ffd2e72ce797d8097eaf13973 19-Aug-2010 Kenny Root <kroot@google.com> am 54d41379: Merge "Add OBB flags to support overlays" into gingerbread

Merge commit '54d41379357d1d800d0a7bd7c5dc56111710482a' into gingerbread-plus-aosp

* commit '54d41379357d1d800d0a7bd7c5dc56111710482a':
Add OBB flags to support overlays
54d41379357d1d800d0a7bd7c5dc56111710482a 19-Aug-2010 Kenny Root <kroot@google.com> Merge "Add OBB flags to support overlays" into gingerbread
d172594e3a1e25f1f2c190e99421cb7d4963389b 19-Aug-2010 Dianne Hackborn <hackbod@google.com> am cf6d2a1d: Merge "Fix issue #2845673: android:exported="false" is not obeyed" into gingerbread

Merge commit 'cf6d2a1de274e9a4156b12be811a180eb36412ab' into gingerbread-plus-aosp

* commit 'cf6d2a1de274e9a4156b12be811a180eb36412ab':
Fix issue #2845673: android:exported="false" is not obeyed
b424b633bb3664bed924d2ea89036290a57eb2bd 19-Aug-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2845673: android:exported="false" is not obeyed

Thou shall obey.

Change-Id: I09f163a0db7cc9189c8d7f5116cc8ca9d4f7a76c
ontentProvider.java
02ca31fbae9f35dd30f79de6927fae11b549391a 12-Aug-2010 Kenny Root <kroot@google.com> 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
es/ObbInfo.java
a006b47298539d89dc7a06b54c070cb3e986352a 14-Apr-2010 Bjorn Bringert <bringert@android.com> 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
es/AssetFileDescriptor.java
3f00be5bd0b46e7937b68909baeff295b86215cc 16-Aug-2010 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I9e887aacf3d3ba642df287dfdecbc2ff1ef02033
ontentProvider.java
def1537e9e8d0dd190cde5310ddae8b921088c9b 15-Aug-2010 Dianne Hackborn <hackbod@google.com> More fragment work:

- Introduce FragmentManager as a public API, deprecating the fragment
APIs on Activity. (They will be removed soon.)
- Add APIs to write a fragment reference to a bundle and later retrieve
it.
- Add Fragment API to set another fragment as its target, for delivering
results.
- Change when onInflate() is called and formalize its meaning in relation
to the fragment arguments that were previously introduced.
- Change onDestroyView() to always be called, regardless of when
onCreateView() returns. It now also is called slightly differently,
after the view hierarchy's state is saved.
- Fix some issues with DialogFragment's lifecycle with its associated
Dialog and state save/restore.
- Preference can now have a Bundle associated with it to provide
arguments to a fragment. The data for this Bundle call be supplied
via <extra> tags under a PreferenceScreen.
- PreferenceActivity's header XML tags are now <preference-headers>
and <header>, and you can supply <extra> tags under a <header> to set
arguments for the header's fragment.

Change-Id: I22c212c9fa862d50840201ca16e51f9de5ef0031
es/Resources.java
02dfd2630437ea5591942e503606fdeff29eb11e 13-Aug-2010 Dianne Hackborn <hackbod@google.com> Fix bug with calls to the typeless open API.

Fix bug where we weren't using the default stream if a caller
requested "*/*" as a type. This broke apps calling the old open
APIs on content providers that did not report MIME types.

Change-Id: Id6e3e64e36cb8637097c3a7834b09407c27487d2
ontentProvider.java
7b6d0d99b6904b511996267efae215fe9cb5e98f 11-Aug-2010 Dianne Hackborn <hackbod@google.com> am 679ac09a: am a5ae50cd: Merge "More native work." into gingerbread

Merge commit '679ac09a5c22175354f3a04b28456b323839530e'

* commit '679ac09a5c22175354f3a04b28456b323839530e':
More native work.
679ac09a5c22175354f3a04b28456b323839530e 11-Aug-2010 Dianne Hackborn <hackbod@google.com> am a5ae50cd: Merge "More native work." into gingerbread

Merge commit 'a5ae50cd838b5725c63ed485292aae4edd1a98cb' into gingerbread-plus-aosp

* commit 'a5ae50cd838b5725c63ed485292aae4edd1a98cb':
More native work.
08d5b8fad8d46ccb64db2fdcb4d66972ec87bf48 04-Aug-2010 Dianne Hackborn <hackbod@google.com> More native work.

Implement save/restore of state, and add native APIs for
configuration information.

Change-Id: I2a3ddc2ba605db58d7c8b2b31b9215fb323f90b5
es/Resources.java
53aa7afe2944aa8fc85b95d5079daccdf7ae85ae 10-Aug-2010 Manuel Roman <manuelroman@google.com> Merge "Incorporated Joe's comments"
2c96a0c7acddb5f2e8027e9ffac73f82c297c4b9 06-Aug-2010 Manuel Roman <manuelroman@google.com> Incorporated Joe's comments

Change-Id: I07f9b00282acb5e1b505b578e6fae1dcb90d1e52
ontentProvider.java
09328a254bddd41642f77693687a4bce4d333245 10-Aug-2010 Dmitri Plotnikov <dplotnikov@google.com> Removing closed cursor on stop

The client of the loader may have already closed the cursor,
so we need to forget it, otherwise the closed cursor
will be redelivered on start.


Change-Id: I30e005ea0827966956bc276a2d3d7b13c95850af
ursorLoader.java
23fdaf6fb62a9b5154b2508916a21c678462c5d0 06-Aug-2010 Dianne Hackborn <hackbod@google.com> 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
lipboardManager.java
lippedData.java
ontentProvider.java
ontentProviderClient.java
ontentProviderNative.java
ontentResolver.java
ContentProvider.java
ntent.java
es/AssetFileDescriptor.java
024d59601e8439e6884e50c22301e35eaf53120a 05-Aug-2010 Chung-yih Wang <cywang@google.com> resolved conflicts for merge of a06ad953 to master

Change-Id: I282525787d7475cc72b2dec10fbc2cf8c5727b82
a06ad953a2c44e81ea2d376ffefeae5ffb91de81 06-Aug-2010 Chung-yih Wang <cywang@google.com> am 7324489f: Merge "Add SIP service into system server." into gingerbread

Merge commit '7324489f18ee01586931f577f00567092cbf52df' into gingerbread-plus-aosp

* commit '7324489f18ee01586931f577f00567092cbf52df':
Add SIP service into system server.
7324489f18ee01586931f577f00567092cbf52df 06-Aug-2010 Chung-yih Wang <cywang@google.com> Merge "Add SIP service into system server." into gingerbread
c6e7d7658c8b3dd1d8c46090a2cf5a8aaba5b18d 06-Aug-2010 Fred Quintana <fredq@google.com> am c2a836a5: am 5005a6c0: am cdf16787: Merge "Changed SyncOperation.toKey() to not rely on the implementation of Account.toString()" into froyo

Merge commit 'c2a836a5f41897267aa92e5fdeecdf94203d640c'

* commit 'c2a836a5f41897267aa92e5fdeecdf94203d640c':
Changed SyncOperation.toKey() to not rely on the implementation of
c2a836a5f41897267aa92e5fdeecdf94203d640c 06-Aug-2010 Fred Quintana <fredq@google.com> am 5005a6c0: am cdf16787: Merge "Changed SyncOperation.toKey() to not rely on the implementation of Account.toString()" into froyo

Merge commit '5005a6c031b5d66c1b47cad6f0dbaacebcbb6803' into gingerbread-plus-aosp

* commit '5005a6c031b5d66c1b47cad6f0dbaacebcbb6803':
Changed SyncOperation.toKey() to not rely on the implementation of
5005a6c031b5d66c1b47cad6f0dbaacebcbb6803 06-Aug-2010 Fred Quintana <fredq@google.com> am cdf16787: Merge "Changed SyncOperation.toKey() to not rely on the implementation of Account.toString()" into froyo

Merge commit 'cdf16787fc1234b7f21a9cddc6f8a27b4056bc39' into gingerbread

* commit 'cdf16787fc1234b7f21a9cddc6f8a27b4056bc39':
Changed SyncOperation.toKey() to not rely on the implementation of
2d94231ef91c732f649ff7af9520ee9eac441b16 04-Aug-2010 Chung-yih Wang <cywang@google.com> Add SIP service into system server.

Change-Id: Icc39e4e54768cfdcc1b20a3efe6206009b9a8d10
ontext.java
cdf16787fc1234b7f21a9cddc6f8a27b4056bc39 06-Aug-2010 Fred Quintana <fredq@google.com> Merge "Changed SyncOperation.toKey() to not rely on the implementation of Account.toString()" into froyo
b4b7b4837bfdecb0b6ab8e76c15f495b3ae3d37c 05-Aug-2010 Fred Quintana <fredq@google.com> Changed SyncOperation.toKey() to not rely on the implementation of
Account.toString()

bug: 2898033
Change-Id: I6bfac976127190d2d667312df7aa9c7d57b21555
yncOperation.java
9f53119b72e6da865bcd53173d3dacd1eba01aee 05-Aug-2010 Dianne Hackborn <hackbod@google.com> First pass at a new clipboard API.

ClipboardManager was in android.text(!!) so it needed to be moved
up to android.content to have access to the richer data types we
now need.

ClippedData is the data representation. Still needs a lot of
fleshing out to allow holding more than one data type at a time
and perhaps conversions between them. (MIME-oriented interrogation
and conversion will be done through ContentProvider, which needs
to grow an ability to report multiple MIME types and accept a
desired MIME type when a stream is being opened.)

Change-Id: Ifa51bedcd084a677813b255d171804e8496b0cb5
lipboardManager.java
lippedData.aidl
lippedData.java
Clipboard.aidl
OnPrimaryClipChangedListener.aidl
ab847c44d0549a47717f16ead806b03eecc957db 05-Aug-2010 Scott Main <smain@google.com> am c9de8c34: am 97c2d840: am 8dd87ad9: fix some doc errors in the resources; add link to resource docs for ColorStateList class

Merge commit 'c9de8c34a32af1b305b49096ee96da4c35acd2e8'

* commit 'c9de8c34a32af1b305b49096ee96da4c35acd2e8':
fix some doc errors in the resources;
ce845d73015acea0a337dd06721f5c649f565242 05-Aug-2010 Kenny Root <kroot@google.com> am c5183aca: am c68bcc32: Merge "Only allow one movePackage operation in-flight" into gingerbread

Merge commit 'c5183acae55e08f4bfcb58aa122a200863748a63'

* commit 'c5183acae55e08f4bfcb58aa122a200863748a63':
Only allow one movePackage operation in-flight
c9de8c34a32af1b305b49096ee96da4c35acd2e8 05-Aug-2010 Scott Main <smain@google.com> am 97c2d840: am 8dd87ad9: fix some doc errors in the resources; add link to resource docs for ColorStateList class

Merge commit '97c2d840a10813164d82571775a3566637d6c5de' into gingerbread-plus-aosp

* commit '97c2d840a10813164d82571775a3566637d6c5de':
fix some doc errors in the resources;
97c2d840a10813164d82571775a3566637d6c5de 05-Aug-2010 Scott Main <smain@google.com> am 8dd87ad9: fix some doc errors in the resources; add link to resource docs for ColorStateList class

Merge commit '8dd87ad9440bc63bc312b06f292adcd2642b1c41' into gingerbread

* commit '8dd87ad9440bc63bc312b06f292adcd2642b1c41':
fix some doc errors in the resources;
8dd87ad9440bc63bc312b06f292adcd2642b1c41 05-Aug-2010 Scott Main <smain@google.com> fix some doc errors in the resources;
add link to resource docs for ColorStateList class

Change-Id: I7f59bfd136d5bd3c2ea066b6123ee13ccd57f502
es/ColorStateList.java
96183e16e4f32e28213b7a6c7f4a136df7e970a6 05-Aug-2010 Manuel Roman <manuelroman@google.com> Merge "add shutdown() to ContentProvider & call in ProviderTestCase*.tearDown"
0c9e14aa4aa1370e01872dc05238f822f2dd552c 04-Aug-2010 Vasu Nori <vnori@google.com> add shutdown() to ContentProvider & call in ProviderTestCase*.tearDown

Change-Id: I3dd69b6907d68b7c1184139f22297ab92337f043
ontentProvider.java
a7dd5eab33d1a87135ae5bd40a02f2e3c564f5de 04-Aug-2010 Vasu Nori <vnori@google.com> requery() return value should be checked

if not checked and if the cursor continues to be used, it will result in
bug:2529736

Change-Id: I920f665643561374c2211acded6cc31fa8931909
ontentQueryMap.java
529b60a3b16ac3dff24f2403d760ab8ebc9670ff 04-Aug-2010 Romain Guy <romainguy@google.com> Add android:hardwareAccelerated to Activity.

Hardware acceleration can now be enabled/disabled locally on each activity
declared in the manifest. It can also be enabled/disabled directly on a
window through the WindowManager.LayoutParams.

Change-Id: I91dd0b26c4e7eb8cd7288e523ed6b7bda6d0990b
m/ActivityInfo.java
m/ApplicationInfo.java
m/PackageParser.java
c5183acae55e08f4bfcb58aa122a200863748a63 04-Aug-2010 Kenny Root <kroot@google.com> am c68bcc32: Merge "Only allow one movePackage operation in-flight" into gingerbread

Merge commit 'c68bcc320522abf856211e9aa00bba71ccaddacb' into gingerbread-plus-aosp

* commit 'c68bcc320522abf856211e9aa00bba71ccaddacb':
Only allow one movePackage operation in-flight
deb112674e9940a46c87fa4e3bae5d8d1ee84ef3 02-Aug-2010 Kenny Root <kroot@google.com> Only allow one movePackage operation in-flight

When a movePackage operation is requested, don't allow multiple requests
to pile up for one package. Once a move is completed, an observer will
receive the message and be allowed to call movePackage again.

Change-Id: Ie3842b6d96446febc0037bf9b8f1ca250735edc2
m/PackageManager.java
m/PackageParser.java
ec37c88570bdd1b94309ad613395295f13449c3f 03-Aug-2010 Makoto Onuki <omakoto@google.com> Adding a method called when detecting content change.

Added Loader.onContentChanged() which is called by ForceLoadContentObserver
when it detects a change, rather than forceLoad().

By default onContentChanged() just calls forceLoad(), so there's no change
in behavior.

This is useful when a subclass wants to perform custom operations upon
data chantes. For example, a subclass may want to limit the number
of automatic requeries per second.

Change-Id: I493dac3f4f1a75b056d2c7065336ea9252dbf424
oader.java
532abb65308725c649fe94ba485abc24ece05b2e 03-Aug-2010 Vasu Nori <vnori@google.com> add public method in ContentValues to return set of all keys

why not this method? it is useful and cheap.

Change-Id: I5db96d149b13d26b5359b52515a8eabf033eb000
ontentValues.java
b0289f62af77a2811b4528fe284aad871e3c6b31 02-Aug-2010 Kenny Root <kroot@google.com> am 59d4a536: am 739cdab7: Merge "Do not deference before null check" into gingerbread

Merge commit '59d4a5369cd68d4b65809ded407611b62b013f9a'

* commit '59d4a5369cd68d4b65809ded407611b62b013f9a':
Do not deference before null check
59d4a5369cd68d4b65809ded407611b62b013f9a 02-Aug-2010 Kenny Root <kroot@google.com> am 739cdab7: Merge "Do not deference before null check" into gingerbread

Merge commit '739cdab7cb63d53440bb411fa2d558e2114b4c81' into gingerbread-plus-aosp

* commit '739cdab7cb63d53440bb411fa2d558e2114b4c81':
Do not deference before null check
930d3af75f9e9663222f4c4a1d75b326cf811e35 31-Jul-2010 Kenny Root <kroot@google.com> Do not deference before null check

The return of parsePackageLite wasn't checked until after it was
deferenced. Move the deference below the null check and remove redundant
set.

Bug: 2852726
Change-Id: I3eaaea5050948145eed44b64507dc846993d98eb
m/PackageParser.java
84383376d87f89bc9ed7fe5351c6aa2cccd3e309 30-Jul-2010 Daniel Sandler <dsandler@google.com> Merge "More readable Configuration#toString() output."
48c05739dd7e58552fb5b856c243edc692e9c456 30-Jul-2010 Steve Howard <showard@google.com> am 6a114b21: am 7c600369: Merge "Update Context.getSystemService() docs for download manager." into gingerbread

Merge commit '6a114b211a77bdd4f4c687f99f9e5f9273ec1a76'

* commit '6a114b211a77bdd4f4c687f99f9e5f9273ec1a76':
Update Context.getSystemService() docs for download manager.
6a114b211a77bdd4f4c687f99f9e5f9273ec1a76 30-Jul-2010 Steve Howard <showard@google.com> am 7c600369: Merge "Update Context.getSystemService() docs for download manager." into gingerbread

Merge commit '7c600369c9695de73ca37db552eb81b8b89d5e76' into gingerbread-plus-aosp

* commit '7c600369c9695de73ca37db552eb81b8b89d5e76':
Update Context.getSystemService() docs for download manager.
7c600369c9695de73ca37db552eb81b8b89d5e76 30-Jul-2010 Steve Howard <showard@google.com> Merge "Update Context.getSystemService() docs for download manager." into gingerbread
7083c42fff819b2c4949984a461bd54e9fa822a3 29-Jul-2010 Steve Howard <showard@google.com> Update Context.getSystemService() docs for download manager.

Change-Id: Ic514b3289b38d6da7d5fe4ffc87c6865280d66d8
ontext.java
127fe81448aebe21ef9bb318fbe81f29bd6e002c 28-Jul-2010 Dan Egnor <egnor@google.com> am 8190f485: am b350bec5: am 17876aa5: Minor changes to ContentProvider javadoc to improve consistency.

Merge commit '8190f485539c36803489dcf5f198d03ed87ae8f9'

* commit '8190f485539c36803489dcf5f198d03ed87ae8f9':
Minor changes to ContentProvider javadoc to improve consistency.
8190f485539c36803489dcf5f198d03ed87ae8f9 28-Jul-2010 Dan Egnor <egnor@google.com> am b350bec5: am 17876aa5: Minor changes to ContentProvider javadoc to improve consistency.

Merge commit 'b350bec514eb9fee473e4ef62680c53e992dc49b' into gingerbread-plus-aosp

* commit 'b350bec514eb9fee473e4ef62680c53e992dc49b':
Minor changes to ContentProvider javadoc to improve consistency.
b350bec514eb9fee473e4ef62680c53e992dc49b 28-Jul-2010 Dan Egnor <egnor@google.com> am 17876aa5: Minor changes to ContentProvider javadoc to improve consistency.

Merge commit '17876aa586cc9acfb3e5b909c14b9e73537a1a8d' into gingerbread

* commit '17876aa586cc9acfb3e5b909c14b9e73537a1a8d':
Minor changes to ContentProvider javadoc to improve consistency.
17876aa586cc9acfb3e5b909c14b9e73537a1a8d 28-Jul-2010 Dan Egnor <egnor@google.com> Minor changes to ContentProvider javadoc to improve consistency.

Change-Id: I710f618c94ffd5d6368ef04a39ac08f675bec11b
ontentProvider.java
a58a8751b4c2ce457f0082a0baaee61312d56195 13-Jul-2010 Bai Tao <michaelbai@google.com> Add new system service CountryDetector

a. The CountryDetector detects the country the user is in
in order of mobile network, location, sim card or locale.
It will be used by contact and contact provider.

b. All added APIs are hidden at this stage.

Change-Id: I4ba278571ffb6ab6ded0996d4f440a18534f8ed4
ontext.java
c3a8c8a767acdcb66b4a80401224f977ab82348e 28-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> am a4ab2651: am 4d544376: am 86c035f0: Merge "COMMENT ONLY change to clarify ContentProvider documentation." into froyo

Merge commit 'a4ab26513426bf86c51c3c9419efb148be3aca8e'

* commit 'a4ab26513426bf86c51c3c9419efb148be3aca8e':
COMMENT ONLY change to clarify ContentProvider documentation.
82d0249f5b2629f977be3621ba5a55879ec39c32 28-Jul-2010 Steve Howard <showard@google.com> am 55020622: am 7feab347: Merge "Un-@hide new download manager public API." into gingerbread

Merge commit '550206226b59ff116cc677121c82aa61eac966bc'

* commit '550206226b59ff116cc677121c82aa61eac966bc':
Un-@hide new download manager public API.
a4ab26513426bf86c51c3c9419efb148be3aca8e 28-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> am 4d544376: am 86c035f0: Merge "COMMENT ONLY change to clarify ContentProvider documentation." into froyo

Merge commit '4d5443762bd2b44b28edc2f2f75728911d70eac1' into gingerbread-plus-aosp

* commit '4d5443762bd2b44b28edc2f2f75728911d70eac1':
COMMENT ONLY change to clarify ContentProvider documentation.
4d5443762bd2b44b28edc2f2f75728911d70eac1 28-Jul-2010 Brad Fitzpatrick <bradfitz@android.com> am 86c035f0: Merge "COMMENT ONLY change to clarify ContentProvider documentation." into froyo

Merge commit '86c035f0d176be9cb06b1e4f2390c25701417586' into gingerbread

* commit '86c035f0d176be9cb06b1e4f2390c25701417586':
COMMENT ONLY change to clarify ContentProvider documentation.
550206226b59ff116cc677121c82aa61eac966bc 28-Jul-2010 Steve Howard <showard@google.com> am 7feab347: Merge "Un-@hide new download manager public API." into gingerbread

Merge commit '7feab3470156c7864fe159115d575c16f0974493' into gingerbread-plus-aosp

* commit '7feab3470156c7864fe159115d575c16f0974493':
Un-@hide new download manager public API.
6fcc0f073d8583cf1f485b9548cde41336a422be 28-Jul-2010 Dan Egnor <egnor@google.com> COMMENT ONLY change to clarify ContentProvider documentation.

Gets a little more specific about thread behavior, and makes
pointed comments about not doing too much work in onCreate().

Change-Id: I682f0eb7d7559babee901ed26642751a6ba0a1ea
ontentProvider.java
46be2a5bb647a2429c16ce7d613dd9cce8c3c43b 27-Jul-2010 Steve Howard <showard@google.com> Un-@hide new download manager public API.

Change-Id: Ia8433160ef40e25fb9408f05f97c7bbfa10a807e
ontext.java
6e34636749217654f43221885afb7a29bb5ca96a 23-Jul-2010 Adam Powell <adamp@google.com> Moved context modes into view, renamed to action modes

ContextualMode renamed to ActionMode. Adds a reference to the action
bar and reduces confusion around things named "Context".

Change-Id: Ia5098b1d0799a0ece0810c34e6696eda039fb005
ontext.java
4cca89c0425a93dd842d85a56205c017a418e1c1 26-Jul-2010 Dianne Hackborn <hackbod@google.com> am 3a2ff74f: am 46730fc7: Fix handling of application disabled state.

Merge commit '3a2ff74fa4c3f014555ec64fccc16e1b9f6d0111'

* commit '3a2ff74fa4c3f014555ec64fccc16e1b9f6d0111':
Fix handling of application disabled state.
3a2ff74fa4c3f014555ec64fccc16e1b9f6d0111 26-Jul-2010 Dianne Hackborn <hackbod@google.com> am 46730fc7: Fix handling of application disabled state.

Merge commit '46730fc78388607fd562044cbaaa26ffc9f65337' into gingerbread-plus-aosp

* commit '46730fc78388607fd562044cbaaa26ffc9f65337':
Fix handling of application disabled state.
46730fc78388607fd562044cbaaa26ffc9f65337 25-Jul-2010 Dianne Hackborn <hackbod@google.com> Fix handling of application disabled state.

Change-Id: I617b76e89eeb75437b384b92f1205bb00b15bb70
m/PackageParser.java
8e6f69b08fa3be56ad11aaffbecbcbead49afd33 23-Jul-2010 Ben Komalo <benkomalo@google.com> Release resources for a previously loaded cursor if a new one
comes in.

Change-Id: I43b8788869d5bfdd06096de6cb23acdf26a1c19a
ursorLoader.java
7d6bddc9a22b1eccc360417a1ca4d1f63a3df4f1 22-Jul-2010 Daniel Sandler <dsandler@google.com> More readable Configuration#toString() output.

Change-Id: I761cba019d7c09c79db59b705dbd3390c62c94e2
es/Configuration.java
63ae85f0e17f09892e87e2b02de38599289eac5a 21-Jul-2010 The Android Open Source Project <initial-contribution@android.com> am 42ef77f3: merge from open-source master

Merge commit '42ef77f3603ae54990d6718db79afae61e91dc61'

* commit '42ef77f3603ae54990d6718db79afae61e91dc61':
Shoud specify the Resource class instance as an argument of the method
42ef77f3603ae54990d6718db79afae61e91dc61 21-Jul-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: Ide1539b6777faf232d5360d6dc89a5d255982747
ac695c608ba620e2362f57126d7be453cf5b7e1b 21-Jul-2010 Adam Powell <adamp@google.com> Refactored contextual modes out of action bar.

Change-Id: I1fc1c9383e5ee90f135b92a5afa8eadbf1c13d20
ontext.java
708654c0b8d45001bc333a3b7b9fd845c81c6f26 20-Jul-2010 Masanori Ogino <ogino.masanori@sharp.co.jp> Shoud specify the Resource class instance as an argument of the method
newDrawable and change the name from 'DrawableCacheClear' to 'clearDrawableCache'
(additional changes for ID:15815)
https://review.source.android.com/#change,15815

Change-Id: I6bf19b8e6e187df8c8e3cb57d9e04278ddfe5055
es/Resources.java
bf4564f03daf9a43bafae8cbfe6c3cecd60847f0 16-Jul-2010 The Android Open Source Project <initial-contribution@android.com> am 5adfe6c5: merge from open-source master

Merge commit '5adfe6c56369b48e10493c0bb9e9b64ac553a19f'

* commit '5adfe6c56369b48e10493c0bb9e9b64ac553a19f':
Fix the problem that color drawable cache key conflicts another drawable one.
5adfe6c56369b48e10493c0bb9e9b64ac553a19f 16-Jul-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: Iacd42b06fa01fa6dfd18b81f07ce4b6da922dfff
fb4e1e24a93c7e6bc0fcdb3f5cfadfbc19503cd8 16-Jul-2010 Kenny Root <kroot@google.com> resolved conflicts for merge of 181bb0ab to master

Change-Id: I2284e7c671d127da0d124fbabae8d887727fd5bf
6ba776ad34a8029e4d0c784ce0092f1fcbc91bef 16-Jul-2010 Christopher Tate <ctate@google.com> am 078ccbdb: am 2c40582a: Merge "Add native C APIs for working with the Asset Manager" into gingerbread

Merge commit '078ccbdbb98c118aa87cab2fef61ff90dd128358'

* commit '078ccbdbb98c118aa87cab2fef61ff90dd128358':
Add native C APIs for working with the Asset Manager
02c8730c1bf19daf48bec8c6995df676a00a73b1 01-Jul-2010 Kenny Root <kroot@google.com> Add API to call to vold for mounting OBBs

* Unhide StorageService class; hide all the USB-related items

* Add application-visible API to StorageManager for OBB files

* Add class for parceling OBB info across binders (ObbInfo)

* Add a JNI glue class to libutils/ObbFile (ObbScanner)

* Add API to MountService to deal with calling into vold and checking
permissions

Change-Id: I33ecf9606b8ff535f3a2ada83931da6bbef41cfd
ontext.java
es/ObbInfo.aidl
es/ObbInfo.java
es/ObbScanner.java
4565d52bdd60490b05f9f8f7c1fd3c552974948c 16-Jul-2010 Dmitri Plotnikov <dplotnikov@google.com> Fixing NPE in CursorLoader

Change-Id: I8d005473166f43dd018ac304ff9ec606e90483a3
ursorLoader.java
c7d9d2790f0b7a036d70bac2f100b42790ff0979 09-Jul-2010 Masanori Ogino <ogino.masanori@sharp.co.jp> Fix the problem that color drawable cache key conflicts another drawable one.
The cache key of a color drawable resource may be the same as another
drawable resource's value.

Change-Id: Ia971bb242ceac5e8f9346094009a10f356399ab9
(Reduced duplicated codes and replace TAB to white spaces)

And try to fix compile error.
es/Resources.java
6cce32b6adbb3a9725fc730ba0e0068a74657e60 13-Jul-2010 Christopher Tate <ctate@google.com> Add native C APIs for working with the Asset Manager

Change-Id: I493b142c4b35e5cc1a1e85283bb5dfb306a6d261
es/AssetManager.java
4c14a0f13fb9f5d796b505991e0178b60efbaccf 13-Jul-2010 Steve Howard <showard@google.com> am 47b46648: am b8d890eb: Merge "Initial implementation of the download manager public API." into gingerbread

Merge commit '47b46648b5a9b8c518b96db37618fc49c5e5f2d1'

* commit '47b46648b5a9b8c518b96db37618fc49c5e5f2d1':
Initial implementation of the download manager public API.
a2709360665f77ed8bebccb2df86f08e8c83a701 03-Jul-2010 Steve Howard <showard@google.com> Initial implementation of the download manager public API.

The implementation is in android.net.DownloadManager, which is
obtained through Context.getSystemService(). Right now this class
acts as a simple wrapper on top of the existing DownloadProvider,
exposing a simple interface to a subset of DownloadProvider's
functionality. There are several TODOs for features that require
changes to the underlying download manager implementation.

Change-Id: I2f26e51b60b6e82af8478ac7ccd895667df095b6
ontext.java
511d9ec363c5bb460e4695de56edc1b7785dc7bf 09-Jul-2010 Kenny Root <kroot@google.com> am 0a21801f: am a5402dab: Merge "OBB API for PackageManager" into gingerbread

Merge commit '0a21801f5fae22cd5e1b3e9f1c1405c744e24c9b'

* commit '0a21801f5fae22cd5e1b3e9f1c1405c744e24c9b':
OBB API for PackageManager
93565c4b3265c16aee4a82d7556f811776c17db8 19-Jun-2010 Kenny Root <kroot@google.com> OBB API for PackageManager

Simple API for tracking .obb files associated with packages. Stores the
path in the PackageSettings. No verification of file content is done
now since the PackageManagerService can't read the SD card where these
files will likely live.

Change-Id: Ibeaf26ba0526b6d60f401137e58f46ee9faff39e
m/IPackageManager.aidl
m/PackageManager.java
1ad636c31501b1f407a3bf504d14689c1d5c7f5a 02-Jul-2010 Elliott Hughes <enh@google.com> Defer to ICU's knowledge of language-specific grammatical quantity rules.

Also improve the documentation to make it a little less unclear what this
is all about. In particular, explain why the original submitter's complaint
about "zero" never being used in English, is expected behavior.

Bug: 2663392
Change-Id: Iade3b4f5c549ce01a95fd0e7e5c6ea394178eda3
es/PluralRules.java
es/Resources.java
1df11fc8f17573f0f23229e5eb77c0f82942f7f7 28-Jun-2010 Chih-Chung Chang <chihchung@google.com> am cbbc035b: am de1057c4: Unhide new API for supporting multiple cameras.

Merge commit 'cbbc035b640790650d0e377a2d6291cc523a2a35'

* commit 'cbbc035b640790650d0e377a2d6291cc523a2a35':
Unhide new API for supporting multiple cameras.
de1057c4a6aa41c3b88bcc4fd49d70f973f1d9eb 14-Jun-2010 Chih-Chung Chang <chihchung@google.com> Unhide new API for supporting multiple cameras.

Change-Id: I916a536c80330444a15986ba380205a6deed2390
m/PackageManager.java
36e5f667bc889a7b1bc17f9a5bd44f33b2d47020 25-Jun-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 2eb12a47 to master

Change-Id: I79eb9d9f083e51ec1b99145d81632683669e7a99
01e4cfc47d0a2c7e7ab383d2fb23224ec52c0301 25-Jun-2010 Dianne Hackborn <hackbod@google.com> Some ActivityThread/ActivityManager cleanup.

- Move PackageInfo out of ActivityThread, renaming to LoadedApk.
- Rename some of the other PacakgeInfo inner classes to better
represent what they are.
- Rename HistoryRecord to ActivityRecord.
- Introduce AppGlobals, to eventually let ActivityThread become
package scoped.

Change-Id: Ib714c54ceb3cdbb525dce3db9505f31042e88cf0
ontentResolver.java
03f0292744094ec107ffce71301c394503a31ded 09-Jun-2010 Gilles Debunne <debunne@google.com> New XmlDocumentProvider class.

Minor changes in the Adapters.java helper class.

Extracts data out of a XML document using an XPath-like syntax.

Change-Id: I0617b0783f11c86118b42cd8485d54440810c805
ontentResolver.java
mlDocumentProvider.java
c4c6635d1a1dc5ac60abf39d239a9c2a6ce97845 23-Jun-2010 Daniel Sandler <dsandler@android.com> am 57b53265: am ef730e6e: Merge "Fix javadocs." into gingerbread

Merge commit '57b5326561b6edb22b09016985b41b7cdb2156c0'

* commit '57b5326561b6edb22b09016985b41b7cdb2156c0':
Fix javadocs.
6c55b8b143b4cc8335789bff58a2ac545bd58806 23-Jun-2010 Daniel Sandler <dsandler@android.com> am 71764c4c: am 613dde4a: Revised "immersive mode" API.

Merge commit '71764c4ce5b248a79542238b171a783e82e0fe37'

* commit '71764c4ce5b248a79542238b171a783e82e0fe37':
Revised "immersive mode" API.
8091ca5015b2a9f591ad7d3ee5ec832c16cf5548 22-Jun-2010 Daniel Sandler <dsandler@android.com> Fix javadocs.

Change-Id: Ic37c16625ddd0175cc048dd2b22bc75c6962d43d
m/ActivityInfo.java
613dde4aa651e11dac3db859723cc6faf8fc0a82 21-Jun-2010 Daniel Sandler <dsandler@android.com> Revised "immersive mode" API.

No longer a window bit, FLAG_IMMERSIVE is now set on
ActivityInfo.flags and in the Activity's manifest as
android:immersive="true" (ActivityInfo).

[An "immersive" activity is one that wishes to avoid being
paused by full-screen notifications (like an incoming call).
An activity that sets FLAG_IMMERSIVE/android:immersive is
sending a signal to the notification manager, status bar,
etc. that they should try to find some other way to get the
user's attention in high-priority situations.]

[Originally: change Ie290c2e.]

Change-Id: I967bb10b930b8f0772b10f81f2957a03fa3f1736
m/ActivityInfo.java
m/PackageParser.java
bef9c7a59dc020c5cdcbd555b5212ae5a10e8045 17-Jun-2010 Dmitri Plotnikov <dplotnikov@google.com> Preventing cursor leaks when a query is interrupted

Re-ran runtest cts-os

Change-Id: I518a2a4f842b01d082078e16643aa377a4575237
syncTaskLoader.java
ursorLoader.java
d0b15cecc63b03ca4e42549ed3a54ae2c7e31866 04-Jun-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of f3307ae8 to master

Change-Id: Ic59db363391f73343eba32894113914ceea5a963
860755faa6bdd3c2aeae49c05b87b5bc080ae60c 04-Jun-2010 Dianne Hackborn <hackbod@google.com> Add support for heavy-weight applications.

Only one can be running at a time, their process can not be killed,
and a notification is posted while it is running.

Change-Id: I843015723947e0c934ae63a1aeee139327c0bc01
ntentSender.java
m/ApplicationInfo.java
m/PackageParser.java
03acd51bae7d3fe746d21aa89f5b6de539d92bc8 03-Jun-2010 Vasu Nori <vnori@google.com> fix docs errors

Change-Id: I775dc3e665a8ce32ed6c95f3240280ddef984bb6
ontext.java
74f170f9468d3cf6d7d0ef453320141a3e63571b 02-Jun-2010 Vasu Nori <vnori@google.com> new API in Context. on openDatabase, new param DatabaseErrorHandler

add new method openOrCreateDatabase in Context.java to allow
callers specify a DatabaseErrorHandler object to be used when
database corruption occurs.
add new constructor in SQLiteOpenHelper to accept DatabaseErrorHandler
as an additional param to be used when SQLiteDatabase instance is
created.

Change-Id: I912a0202a74510f9ca0206dd8101c4abab9102ae
ontext.java
ontextWrapper.java
812ccbeb3ce55c50463fda1d161b2eeed8b19cd2 01-Jun-2010 Romain Guy <romainguy@google.com> Add new hardwareAccelerated manifest attribute to enable HW drawing.

Change-Id: I2bb0252f3699cb720e7f5b6868419c9904e4fb35
m/ApplicationInfo.java
m/PackageParser.java
a2f2a34d51fe3bd9f5a00a61e5d8cf1224671f5b 19-May-2010 The Android Open Source Project <initial-contribution@android.com> am 6af002b7: am b32a74c7: am ee1cdd0e: merge from open-source master
b32a74c73b1433a3613419e61c05f6ff8efb5b41 19-May-2010 The Android Open Source Project <initial-contribution@android.com> am ee1cdd0e: merge from open-source master

Merge commit 'ee1cdd0e605e9154b3b61d4bf7dd5aad9cab88ed' into kraken

* commit 'ee1cdd0e605e9154b3b61d4bf7dd5aad9cab88ed':
Don't allow invalid Uris to be added as observers.
ee1cdd0e605e9154b3b61d4bf7dd5aad9cab88ed 19-May-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: I1612bf92bf47eb88299ed0e627e6662b23adc35a
f51266471cb6c3e824435ae6e416012a62266d52 22-Mar-2010 Anthony Newnam <anthony.newnam@garmin.com> Don't allow invalid Uris to be added as observers.

If a null segment is added, it will cause problems traversing the list
at a later point.

Change-Id: I5aa97b969cac7231e214168af7d3263b1c16f0a0
ontentService.java
7860b10d1687b7102a14f321d327620bb4191fa6 18-May-2010 Jeff Hamilton <jham@android.com> Another try at fixing the docs build.

Change-Id: Ief60f4e71efee1d3bb4ee36e2f2a2fcaeb996284
syncTaskLoader.java
e6c6d09a7eb9a7cd6e94c164e75a08dc499fd577 18-May-2010 Jeff Hamilton <jham@android.com> Fix a broken docs link.

Change-Id: I2e940165726ecfce306cd143ed049045c927b6a0
syncTaskLoader.java
9911b7f83db2e960f72345e6d50df2b77ca75e3f 15-May-2010 Jeff Hamilton <jham@android.com> Add the Loader and supporting classes.

Loaders are designed to make it easier to manage
asynchronously loading data.

Change-Id: I948db08c721411e94fca071dc6fb4db2b83ea4d6
syncTaskLoader.java
ursorLoader.java
oader.java
2b6b8351961d627be87396bbeb3e0ab811747bf3 13-May-2010 Costin Manolache <costin@google.com> am 0c6028c1: am c1959658: am fa2e3dcd: am 8ea9f130: Merge "Bug 2680071: Rename the Cloud to Device" into froyo
c195965893da2003a3da9936391c27db05d47dd8 13-May-2010 Costin Manolache <costin@google.com> am fa2e3dcd: am 8ea9f130: Merge "Bug 2680071: Rename the Cloud to Device" into froyo

Merge commit 'fa2e3dcd855f573e160dbf258fd60a172b6e3f02' into kraken

* commit 'fa2e3dcd855f573e160dbf258fd60a172b6e3f02':
Bug 2680071: Rename the Cloud to Device
8d83f9e31bfff0281b522c53e035dffc7dd00ba9 13-May-2010 Costin Manolache <costin@google.com> Bug 2680071: Rename the Cloud to Device

Change-Id: I12ab32de393e44a499e3f9e3a0b38f4682156ff5
ntent.java
3a17fbb757576ab52ff1ec5fcd54101f33977099 12-May-2010 Costin Manolache <costin@google.com> am b20842c7: am 8579a4d7: am 625de488: am e2055fe4: Merge "Bug 2673557: rename datamessaging" into froyo
8579a4d72697a752fe33445b5c57d09e0151b559 12-May-2010 Costin Manolache <costin@google.com> am 625de488: am e2055fe4: Merge "Bug 2673557: rename datamessaging" into froyo

Merge commit '625de488973f262e56d3ee6825a8cf1ebaee089b' into kraken

* commit '625de488973f262e56d3ee6825a8cf1ebaee089b':
Bug 2673557: rename datamessaging
161c75a0f3ca5255001f7d737a02a4f9d728f1f4 11-May-2010 Costin Manolache <costin@google.com> Bug 2673557: rename datamessaging

Change-Id: I583ac61c7b8fce69d60801dc76aeca9f13d250b2
ntent.java
09d91ca47c6594db43215c3bb2d21e7a7ee24180 30-Apr-2010 Dianne Hackborn <hackbod@google.com> am fefe7a22: Merge "Fix build." into kraken
22ec9ab3b881d71866279ba9363c644a9e4e7164 30-Apr-2010 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: Iac00a1d02d04c346807ff2580362adfc838d1813
m/ApplicationInfo.java
8640c1d0e55281530da58350ef54a881d5c51187 29-Apr-2010 Dianne Hackborn <hackbod@google.com> am 14cee9f6: New xlarge screen size.
14cee9f688c32d63d8521188e7422811629bb7c2 24-Apr-2010 Dianne Hackborn <hackbod@google.com> New xlarge screen size.

Not complete, only for experimentation at this point.

This includes a reworking of how screen size configurations are matched,
so that if you are on a larger screen we can select configurations for
smaller screens if there aren't any exactly matching the current screen.

The screen size at which we switch to xlarge has been arbitrarily
chosen; the compatibility behavior has not yet been defined.

Change-Id: I1a33b3818eeb51a68fb72397568c39ab040a07f5
m/ApplicationInfo.java
m/PackageParser.java
es/CompatibilityInfo.java
es/Configuration.java
ca3a7b9bc55ef232c282108cf9d65cb81d008d68 29-Apr-2010 Vasu Nori <vnori@google.com> am 43f2c35b: am 91a62f3d: am a07c4cbe: Merge "bug:2622719 move \'forcing of cursor execution\' to ContentProvider" into froyo
43f2c35bf3bbc475c2434ef14f36f1623650a69e 29-Apr-2010 Vasu Nori <vnori@google.com> am 91a62f3d: am a07c4cbe: Merge "bug:2622719 move \'forcing of cursor execution\' to ContentProvider" into froyo

Merge commit '91a62f3d4a6b4f92c694d09e991fc6f82701fc47' into kraken

* commit '91a62f3d4a6b4f92c694d09e991fc6f82701fc47':
bug:2622719 move 'forcing of cursor execution' to ContentProvider
020e5345795a157d7829ebbe4d7864595dafc576 28-Apr-2010 Vasu Nori <vnori@google.com> bug:2622719 move 'forcing of cursor execution' to ContentProvider

revert part of the CL: Ia561135e974a44ad3e3774ecb23c6a3d0fc38176
and add it to ContentProvider.query() to force query execution
in worker thread, instead of having the main thread incur the cost
of query execution and potentially get ANR

Change-Id: I0ea8a170bd954a421f4ad825f8090319a83a5b2b
ontentResolver.java
2e192931d50ca5c5899ee12149a1edd72520c9b9 28-Apr-2010 Fred Quintana <fredq@google.com> am 2bf0f1a3: am 00b92b94: am 9aaf24f2: Merge "revert a change in the SyncManager that caused it to not cancel long running syncs if the next sync had the same account and authority." into froyo
2bf0f1a3c153c432faa050479a8d8b4259d4999f 28-Apr-2010 Fred Quintana <fredq@google.com> am 00b92b94: am 9aaf24f2: Merge "revert a change in the SyncManager that caused it to not cancel long running syncs if the next sync had the same account and authority." into froyo

Merge commit '00b92b943ff397cb7f7c4827a0eea9df7aa22071' into kraken

* commit '00b92b943ff397cb7f7c4827a0eea9df7aa22071':
revert a change in the SyncManager that caused it to not cancel
9aaf24f2a46eacd1e342f8c0300c3093646e2814 28-Apr-2010 Fred Quintana <fredq@google.com> Merge "revert a change in the SyncManager that caused it to not cancel long running syncs if the next sync had the same account and authority." into froyo
f910cf4dcb978b7663ef088b22abe197c8158f33 28-Apr-2010 Fred Quintana <fredq@google.com> am 018579c4: am b2dbae87: am 6ce78924: Merge "Add JavaDoc for SyncResult http://b/2420252" into froyo
12664a7a4d0a17c4c4db33374550f7ff19593be7 28-Apr-2010 Fred Quintana <fredq@google.com> revert a change in the SyncManager that caused it to not cancel
long running syncs if the next sync had the same account and
authority.

Change-Id: I0c18ce3b7098e79e2080e401e441ad246b1d6910
http://b/2631221
yncManager.java
525bb6a0cd4c269c8becd91affe96a7512d72749 27-Apr-2010 Dianne Hackborn <hackbod@google.com> am b6c45927: am 44f2c6ba: am 2e4b98dc: Merge "Whoops a little more on issue #2631417: Expose FLAG_EXTERNAL_STORAGE" into froyo
018579c473858de49cc17e6ec739bb3d11f05cd8 27-Apr-2010 Fred Quintana <fredq@google.com> am b2dbae87: am 6ce78924: Merge "Add JavaDoc for SyncResult http://b/2420252" into froyo

Merge commit 'b2dbae879d32ce654528ab550c0dd017b67d7b08' into kraken

* commit 'b2dbae879d32ce654528ab550c0dd017b67d7b08':
Add JavaDoc for SyncResult
6ce78924ebd179611c71122b864807dc4525f593 27-Apr-2010 Fred Quintana <fredq@google.com> Merge "Add JavaDoc for SyncResult http://b/2420252" into froyo
20c640e0f4c11f56cb02abaac0a25fe84ebfa487 27-Apr-2010 Fred Quintana <fredq@google.com> Add JavaDoc for SyncResult
http://b/2420252

Change-Id: I88be5232d54959f6ec3480c36751a8fb7dc369fd
yncResult.java
yncStats.java
ff121670b7f5f886e12aad5a46e8ad05dc419ca3 27-Apr-2010 Dianne Hackborn <hackbod@google.com> am 34483a0f: resolved conflicts for merge of 5a8f877c to kraken
b6c459276f222e01777380c4c1e3a31680e561ec 27-Apr-2010 Dianne Hackborn <hackbod@google.com> am 44f2c6ba: am 2e4b98dc: Merge "Whoops a little more on issue #2631417: Expose FLAG_EXTERNAL_STORAGE" into froyo

Merge commit '44f2c6baa68e02f7837cd1ca285d5c4f0f871b18' into kraken

* commit '44f2c6baa68e02f7837cd1ca285d5c4f0f871b18':
Whoops a little more on issue #2631417: Expose FLAG_EXTERNAL_STORAGE
34483a0f6e1db9b0d96abc8b6dd056ec385f82b6 27-Apr-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 5a8f877c to kraken

Change-Id: I3e320cfe9fcafe4f49e1863eaeddac96bc3f72c6
94c567e1e344d49168603f5a0560215a4ce735e6 27-Apr-2010 Dianne Hackborn <hackbod@google.com> Whoops a little more on issue #2631417: Expose FLAG_EXTERNAL_STORAGE

There was a gap in the bit numbers.

Change-Id: I0feef7dc4abed5db7412659b5ad078caffe4f2d4
m/ApplicationInfo.java
3202d380226043fa665df3c92252f791f8c52d55 27-Apr-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2631417: Expose FLAG_EXTERNAL_STORAGE

Also update 8.xml to match the current API.

Change-Id: I668fe56f6c156c2e8daa458baa7410fdb8ebef52
m/ApplicationInfo.java
b9eab6c793959cae13399620965d44bd3a6871c3 24-Apr-2010 Adam Powell <adamp@google.com> resolved conflicts for merge of 81cd2e90 to master

Fixed public.xml value padding for kraken/master

Merge commit '81cd2e90' into manualmerge

Conflicts:
api/current.xml

Change-Id: I09d2c5c7e6acbf4086c0bb8756a5aaf41a646d71
81cd2e90ccdda498234384c8207afe2213714e60 22-Apr-2010 Adam Powell <adamp@google.com> Logo attribute for manifest and PackageManager methods to fetch it

Change-Id: I2c5ac44a4e2af982a616b2012901d7395013b19f
m/ComponentInfo.java
m/PackageItemInfo.java
m/PackageManager.java
m/PackageParser.java
ef404b7aa0430a67300355a607c81a4b379c911a 21-Apr-2010 Suchi Amalapurapu <asuchitra@google.com> am 0c64ff75: am d32f9422: am 0dde41fb: Merge "Fix 2610961 Unhide broadcast intents that are sent when sdcard gets mounted/unmounted." into froyo
0c64ff7568f0e1e37e300005ea0de3f21faa08e0 21-Apr-2010 Suchi Amalapurapu <asuchitra@google.com> am d32f9422: am 0dde41fb: Merge "Fix 2610961 Unhide broadcast intents that are sent when sdcard gets mounted/unmounted." into froyo

Merge commit 'd32f942280cc4390ab853321557eef06292b300e' into kraken

* commit 'd32f942280cc4390ab853321557eef06292b300e':
Fix 2610961
89e0c1a9f5a86d47c20b1bf9b9c78507ffbafd1f 20-Apr-2010 Suchi Amalapurapu <asuchitra@google.com> Fix 2610961
Unhide broadcast intents that are sent when sdcard gets mounted/unmounted.

Change-Id: Ibb5700178e98f657f1c2b6a2f83e722151c4a44f
ntent.java
212db7d3f8ce5297f4a556234a9c0675c697f1cf 09-Apr-2010 Adam Powell <adamp@google.com> Added MultiSelectListPreference

Added set support to XmlUtils; added Set<String> functions to SharedPreferences.

MultiSelectListPreference allows multiple selection and persistence of
string preferences. Addresses bug 2575634.

Change-Id: Icd56022d444b0ce43cccf819cd7d600fdb00e88a
haredPreferences.java
7829f3d4b1bbcdfb3182d69999863276f39e29f9 08-Apr-2010 Dan Egnor <egnor@google.com> am c138fd3a: am a28a05f3: am f1f00f5b: am 21248080: Merge "Missed these ones in the previous rename." into froyo
a28a05f31b7e4837a1ec0aa661f5202576694580 08-Apr-2010 Dan Egnor <egnor@google.com> am f1f00f5b: am 21248080: Merge "Missed these ones in the previous rename." into froyo

Merge commit 'f1f00f5bddd6b222879166f4528055a30bed307e' into kraken

* commit 'f1f00f5bddd6b222879166f4528055a30bed307e':
Missed these ones in the previous rename.
3f73e4869f2044f2fdd3fed7b1517ac678f213f3 08-Apr-2010 Brad Fitzpatrick <bradfitz@android.com> am 341d0a52: am 9c3554e9: am 4183b514: am c62cdef4: Merge "Rename logtag for clarity." into froyo
2124808060a1eb5ea396238b7b99d2ed266b0b53 08-Apr-2010 Dan Egnor <egnor@google.com> Merge "Missed these ones in the previous rename." into froyo
9c3554e997aae8226bd437a1dd8edee3cbd5d6dc 08-Apr-2010 Brad Fitzpatrick <bradfitz@android.com> am 4183b514: am c62cdef4: Merge "Rename logtag for clarity." into froyo

Merge commit '4183b514bb72d96e8ed925c14266a23067c02fe5' into kraken

* commit '4183b514bb72d96e8ed925c14266a23067c02fe5':
Rename logtag for clarity.
a8fbedbf5e274581ba0cbb20da34ade286fc1cfc 08-Apr-2010 Brad Fitzpatrick <bradfitz@android.com> Missed these ones in the previous rename.

BUG=2581935

Change-Id: I12e7fc924d7164ab4a5ff7bd6ee52a10f7551ad4
ontentResolver.java
ac6ec41b679bab78ac33bf4ecde445d616030bbd 08-Apr-2010 Robert Greenwalt <robdroid@android.com> resolved conflicts for merge of 4e33e9c1 to master

Change-Id: I3a150497693009a4cf4300c8445a791c1e1eea3b
228629e920edf056eb12a3d0f4adf6ef84642632 08-Apr-2010 Brad Fitzpatrick <bradfitz@android.com> Rename logtag for clarity.

BUG=2581935

Change-Id: I85f0b704435861acd5a406ce5ec084b60696580c
ventLogTags.logtags
6646cf7af9a050c9c2b698507756f96be9f30169 08-Apr-2010 Robert Greenwalt <robdroid@android.com> am 6f72a313: am 2b4b5738: Merge "Add service to monitor/control the flow of data." into froyo

Merge commit '6f72a313a042fdf0a5345f83eda74c5970b7db05' into kraken

* commit '6f72a313a042fdf0a5345f83eda74c5970b7db05':
Add service to monitor/control the flow of data.
9e696c29f06d45d2891e1d38fd8d9033a9e21bb9 01-Apr-2010 Robert Greenwalt <robdroid@android.com> Add service to monitor/control the flow of data.

bug:2576057
Change-Id: Ib343c7ee1d619c6978910d9ee597db195d5aa3b6
ontext.java
08695a5c9157a28e7b875c9fe5c2f99a8622426c 08-Apr-2010 Fred Quintana <fredq@google.com> Merge "create a SyncManager WakeLock for each syncadapter accountType/authority pair so that it will be easy to tell via bugreport which sync adapter is holding the wake lock the most"
4baf4e6a742fffba238ad79f8b2ce7bc52f96b18 08-Apr-2010 Suchi Amalapurapu <asuchitra@google.com> am eb606ec9: am 3e543abb: am a599469f: am c2461be6: Merge "Fix 2579461 Move install location values to secure settings. Diable attribute for UI. Set default value to auto. Add command line interface to set install location via pm." into froyo
3e543abbc18eec03ba7300b53cd65dc1c30fd40b 08-Apr-2010 Suchi Amalapurapu <asuchitra@google.com> am a599469f: am c2461be6: Merge "Fix 2579461 Move install location values to secure settings. Diable attribute for UI. Set default value to auto. Add command line interface to set install location via pm." into froyo

Merge commit 'a599469f9095532cac95a8e7600412f156b88f1c' into kraken

* commit 'a599469f9095532cac95a8e7600412f156b88f1c':
Fix 2579461
40e472521a544f26cb6956995788f7c36fff1404 08-Apr-2010 Suchi Amalapurapu <asuchitra@google.com> Fix 2579461
Move install location values to secure settings.
Diable attribute for UI. Set default value to auto.
Add command line interface to set install location via pm.

Change-Id: I80e97b3d24845adad7102f40dcbe238f00efa406
m/IPackageManager.aidl
b3029c3d563cf99ea07395282b053e87d5dbbb95 06-Apr-2010 Fred Quintana <fredq@google.com> create a SyncManager WakeLock for each syncadapter
accountType/authority pair so that it will be easy to tell via
bugreport which sync adapter is holding the wake lock the most

http://b/issue?id=2571451
yncManager.java
f974b84b547f6a0f239dec79363fe0fc4a57b417 07-Apr-2010 Ray Chen <raychen@google.com> am e4b62c23: am 84d12f3f: am dbad286c: am 25c2dd60: Merge "Per requested by API council, rename MediaScannerConneciton.ScanResultListener to .OnScanCompletedListener http://2553871" into froyo
b4d32b5657e5a57a7d2f6046f811c1bb26ea6a1e 07-Apr-2010 Dianne Hackborn <hackbod@google.com> am c24a1498: am 7aed1e14: am d66e2b23: am 4e7cacd3: Merge "Maybe fix issue #2568615: System server crashed in SyncStorageEngine" into froyo
84d12f3fe7aad8d024dd7d89aea813d5e556387e 07-Apr-2010 Ray Chen <raychen@google.com> am dbad286c: am 25c2dd60: Merge "Per requested by API council, rename MediaScannerConneciton.ScanResultListener to .OnScanCompletedListener http://2553871" into froyo

Merge commit 'dbad286c4640ab7d2244695c5b175ebd1b6fcbab' into kraken

* commit 'dbad286c4640ab7d2244695c5b175ebd1b6fcbab':
Per requested by API council, rename MediaScannerConneciton.ScanResultListener to .OnScanCompletedListener
25c2dd60d43298c18b9459abd6ff33046d675fe6 07-Apr-2010 Ray Chen <raychen@google.com> Merge "Per requested by API council, rename MediaScannerConneciton.ScanResultListener to .OnScanCompletedListener http://2553871" into froyo
7aed1e14b53778ea4044362b001fb5bf5cac09c0 07-Apr-2010 Dianne Hackborn <hackbod@google.com> am d66e2b23: am 4e7cacd3: Merge "Maybe fix issue #2568615: System server crashed in SyncStorageEngine" into froyo

Merge commit 'd66e2b23a5c6b4b2b6586015c1a6951b4d6d1bfa' into kraken

* commit 'd66e2b23a5c6b4b2b6586015c1a6951b4d6d1bfa':
Maybe fix issue #2568615: System server crashed in SyncStorageEngine
4e80820ab54f3985220ff06b2fcd381565e9f19d 07-Apr-2010 Dianne Hackborn <hackbod@google.com> Maybe fix issue #2568615: System server crashed in SyncStorageEngine

Ack, we were acquiring the wrong lock at some points when
accessing the data structure!

Change-Id: I8bbc8e1ffa2e3e8a94bf7625e3d7f020c458eea2
yncStorageEngine.java
b7c8c76180dc1abbf55c734ab121a7a2469060f6 31-Mar-2010 Ray Chen <raychen@google.com> Per requested by API council, rename MediaScannerConneciton.ScanResultListener to .OnScanCompletedListener
http://2553871

Change-Id: I293b8138a2c23ea107b634da014902f838966c0e
ontext.java
7a3a6dba21d3b14a9836af51ce9db5a1dad05645 06-Apr-2010 Dianne Hackborn <hackbod@google.com> am 5a0797a9: am c94dad83: am 6e52b5d7: 2568467 System crash when installing corrupt APK
49313315523fd182391780b63c54974c11efab1a 06-Apr-2010 Dianne Hackborn <hackbod@google.com> am f0adaa1b: am eab92d7b: am 01f6b75b: Merge "Fix issue #2564479: Favorite Recipes App Installation Fail" into froyo
5a0797a91016e85bb50a7d5c0d7e031166429ddd 06-Apr-2010 Dianne Hackborn <hackbod@google.com> am c94dad83: am 6e52b5d7: 2568467 System crash when installing corrupt APK

Merge commit 'c94dad83be792928206363cb43524a68b6a62ffe' into kraken

* commit 'c94dad83be792928206363cb43524a68b6a62ffe':
2568467 System crash when installing corrupt APK
f0adaa1bd579a0749406f6f5c72d00a0a62eb0e6 06-Apr-2010 Dianne Hackborn <hackbod@google.com> am eab92d7b: am 01f6b75b: Merge "Fix issue #2564479: Favorite Recipes App Installation Fail" into froyo

Merge commit 'eab92d7bec5ff0d12ee68047bba4ade3afb718a7' into kraken

* commit 'eab92d7bec5ff0d12ee68047bba4ade3afb718a7':
Fix issue #2564479: Favorite Recipes App Installation Fail
6e52b5d76850ee60bbef2f3d8a2e47bd589e28e8 05-Apr-2010 Dianne Hackborn <hackbod@google.com> 2568467 System crash when installing corrupt APK

Also fix another crash I just saw in the package manager, when a
permission got left around from a previous install but as no
longer defined.

Change-Id: I33b87420f0c59e24b8b77fab8b0316461d99e048
m/PackageParser.java
01f6b75baa3b9144240fa8c9772859ab4ac948bd 06-Apr-2010 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #2564479: Favorite Recipes App Installation Fail" into froyo
7d6eef83d34439d7a95232e89aad3e5dd281a911 06-Apr-2010 Dan Morrill <morrildl@google.com> am a03dfc07: am ca5e7de8: am 21390f08: Merge "Adding a feature definition for touchscreens that was overlooked in the last round." into froyo
a03dfc079263bc6eb9bbb060273ea346930b4944 06-Apr-2010 Dan Morrill <morrildl@google.com> am ca5e7de8: am 21390f08: Merge "Adding a feature definition for touchscreens that was overlooked in the last round." into froyo

Merge commit 'ca5e7de82b18dcd5fb8f617b40b45c95edce8c3e' into kraken

* commit 'ca5e7de82b18dcd5fb8f617b40b45c95edce8c3e':
Adding a feature definition for touchscreens that was overlooked in the last
b0fe033ff8695418645ede29ce683949f68033c2 05-Apr-2010 Dan Morrill <morrildl@google.com> Adding a feature definition for touchscreens that was overlooked in the last
round.

Change-Id: I8f30676a7b468a9868503b05f366709d5534a44e
m/PackageManager.java
d1cff1b4a477bad7f6c968572ecdff26ca6e8cda 03-Apr-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2564479: Favorite Recipes App Installation Fail

Change-Id: Ide1045e3f6bef9ed2a2fee08bfeda8c58feb685f
m/PackageParser.java
488fd5d9c364964851ea4c6ed37768bcdfabb3d8 02-Apr-2010 Dianne Hackborn <hackbod@google.com> am 4d075b02: am 9bdc4508: am e13beb09: Merge "Add a new intent category used for activities running in carmode." into froyo
4d075b029f13e9c38e70d87ca4b246902d3f72c4 02-Apr-2010 Dianne Hackborn <hackbod@google.com> am 9bdc4508: am e13beb09: Merge "Add a new intent category used for activities running in carmode." into froyo

Merge commit '9bdc45084f963869d4e9dd68de2280d3de7dda1d' into kraken

* commit '9bdc45084f963869d4e9dd68de2280d3de7dda1d':
Add a new intent category used for activities running in carmode.
aea4b678b5f59f63ba6810f94dbc40ea4139e708 31-Mar-2010 Bernd Holzhey <holzhey@google.com> Add a new intent category used for activities running in carmode.

Change-Id: I4702538c9f53cc0b64eae72298e27232cdfb3548
ntent.java
48d9980d0c7169f353c2cd60657c399fa7fce0ac 01-Apr-2010 Bjorn Bringert <bringert@android.com> Expose Context.STORAGE_SERVICE in master

This was recently hidden in Froyo, and the the change automerged
to Master, where it broke the SDK build since StorageManager is
exposed in Master.

Change-Id: I44f9f666c7644e1c16e3274adc6ae6cd5ac0fdd4
ontext.java
767225d8206adf4db968f3fa86d9ebb107a12067 31-Mar-2010 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of d9ee01a9 to kraken

Change-Id: I645177513e6dfa4b3b02c0061b8026bde4acde8d
07330791116513710d879c45b2f095cd314cbfd0 31-Mar-2010 Jeff Brown <jeffbrown@google.com> Show SD unavailable icon for apps on SD when ejected.

This change include a minor refactoring of PackageItemInfo and related
classes to eliminate code duplication and to avoid redundant work
searching for an ApplicationInfo instance we already have.

Bug: b/2537578
Change-Id: Id0794c3f055ea58b943028f7a84abc7dec9d0aac
m/ApplicationInfo.java
m/ComponentInfo.java
m/PackageItemInfo.java
m/ResolveInfo.java
6669a7b4b5d14c16a08983d25354dd2ae106f62c 31-Mar-2010 Fred Quintana <fredq@google.com> am 4a2f285d: am 77c560f3: - changed periodic sync scheduling to just creating pending and changed the "get next operation to sync" logic just look at pending syncs, rather than them and periodic syncs - made syncoperation dup-detection ignore the initialization

Merge commit '4a2f285deafc996435ac20162abaeb21838c1c40' into kraken

* commit '4a2f285deafc996435ac20162abaeb21838c1c40':
- changed periodic sync scheduling to just creating pending
77c560f3d7891d9ae1ad714b5f65a22ff4f4c06b 30-Mar-2010 Fred Quintana <fredq@google.com> - changed periodic sync scheduling to just creating pending
and changed the "get next operation to sync" logic just look
at pending syncs, rather than them and periodic syncs
- made syncoperation dup-detection ignore the initialization
sync extra
- made the sync dispatcher treat initialization syncs as just
a regular sync request and also made it explicitly set or
clear the initialization extra based on whether the sync
adapter was in the syncable or unknown state
- change the getNextSync logic to prioritize syncable "unknown"
syncs above everything else (since they should be fast and
are important)
- make it reschedule completed initialization syncs if the
sync adapter is now marked syncable
- fix some logging in SyncStorageEngine
- change SyncStorageEngine to not reuse authority ids when one
is removed

http://b/issue?id=2531359
http://b/issue?id=2429638

Change-Id: I79805b582da74f4f0b6193eafaff24c2371d51e8
yncManager.java
yncOperation.java
yncQueue.java
yncStorageEngine.java
010fbfc9842ee3b86eafb1b3fc6bccd83be99b9e 31-Mar-2010 Fred Quintana <fredq@google.com> am 344ba661: am d5e4fdc8: some changes due to an API review - make EntityIterator extend Iterator and thus not throw a RemoteException, instead converting it into a RuntimeException. - rename ActiveSyncInfo to SyncInfo - change getActiveSync to getCurrentSync -

Merge commit '344ba661ab406759a91ecaba1378a4907971b119' into kraken

* commit '344ba661ab406759a91ecaba1378a4907971b119':
some changes due to an API review
d5e4fdc8a4743abc0d9fe3cb952a78f9ad078c6b 31-Mar-2010 Fred Quintana <fredq@google.com> some changes due to an API review
- make EntityIterator extend Iterator and thus not throw a
RemoteException, instead converting it into a RuntimeException.
- rename ActiveSyncInfo to SyncInfo
- change getActiveSync to getCurrentSync
- remove the accessors in SyncInfo and instead make the final
fields publicly accessible
- made AbstractThreadedSyncAdapter.cancelSync not take a thread

Change-Id: I99fde5585bc5f1e95f4873ffbba189074a8d6372
http://b/issue?id=2553539
http://b/issue?id=2553541
http://b/issue?id=2553550
bstractThreadedSyncAdapter.java
ctiveSyncInfo.aidl
ctiveSyncInfo.java
ontentResolver.java
ontentService.java
ursorEntityIterator.java
ntityIterator.java
ContentService.aidl
yncInfo.aidl
yncInfo.java
yncManager.java
yncStorageEngine.java
591ad27d748c5c605d4fd44b89b2a8ea8f0057ff 31-Mar-2010 Dianne Hackborn <hackbod@google.com> am 6d630607: am 5cdd7858: Merge "Fix issue #2553553: API REVIEW: android.context.Context" into froyo

Merge commit '6d63060768f9d73c6062a2b603d3c51c7d5f0043' into kraken

* commit '6d63060768f9d73c6062a2b603d3c51c7d5f0043':
Fix issue #2553553: API REVIEW: android.context.Context
acaf028fc9efd9754f57ed65476e79a816811b35 30-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2553553: API REVIEW: android.context.Context

Change-Id: I3e3ab7a909329d498544dc9ed4d500cbcc4ed281
ontext.java
b4915265a09361c375e792781ead5bfec6c797d9 30-Mar-2010 Dianne Hackborn <hackbod@google.com> am ab86fc91: am de2722af: Merge "Package manager optimizations." into froyo

Merge commit 'ab86fc91f5b54b8b730c0f594f04bbfb4c41697a' into kraken

* commit 'ab86fc91f5b54b8b730c0f594f04bbfb4c41697a':
Package manager optimizations.
d7c096845dee7616095eda0fe9e7aa08f0ba9c20 30-Mar-2010 Dianne Hackborn <hackbod@google.com> Package manager optimizations.

Addresses:
Issue #2550648: PackageManagerService setComponentEnabledSetting unconditionally
writes Settings xml
Issue #2549084: Make PackageManager.addPermission have async version

Also make the writing of settings when changing the preferred activities to use
the same async mechanism, and fiddle with thread priorities in the background
thread to go up to foreground priority when holding the lock to write settings
and a few other places. (At some point we should really clean this up to never
acquire the main lock while in the background.)

Change-Id: Ib2b7632543f6fb3f92a225518579f3b2d15e1413
m/IPackageManager.aidl
m/PackageManager.java
1f4df90bfab8ca42eabe95f19eadff3432eee7fd 27-Mar-2010 Oscar Montemayor <oam@google.com> DO NOT MERGE
Removing unused features from source tree.
Please refer to Bug#2502219.

Change-Id: I879c29bfd5ffe933f64bb1082aaae7c956450a5a
yncStorageEngine.java
m/ApplicationInfo.java
m/PackageParser.java
691b806ff8b4a6428588e8495cb1a5819a0aee99 30-Mar-2010 Romain Guy <romainguy@google.com> Merge "Fix possible security issue. Bug #2553187" into froyo
ef3f5ddc2137ed99e41f00441b688fb56b855179 30-Mar-2010 Ben Cheng <bccheng@android.com> Replace "safeMode" with a more specific name "vmSafeMode" in the public API.

Bug: 2553512
Change-Id: Id0dad80ecdcb8c7430dcf1ac26132ccd9c0770f5
m/ApplicationInfo.java
m/PackageParser.java
2aba11f6b9b7b202742a11797084a23d0f940c35 30-Mar-2010 Romain Guy <romainguy@google.com> Fix possible security issue.
Bug #2553187

Limit the max number of lines for each entry in the ResolveActivity to 2. Also
make sure to discard potential styling tags and newlines/space characters from
package name and activity labels.

Change-Id: Ibda3688267aa948b921164d3d3abc8c9236e61a2
m/PackageItemInfo.java
m/ResolveInfo.java
2c5da313dd72c284fbc2c11839f8a452ab5ce574 25-Mar-2010 Brad Fitzpatrick <bradfitz@android.com> Log blocking Binder calls to the EventLog.

This mimics what we do already for SQLiteDatabase's db_operation and
ContentProvider's content_query_operation and
content_update_operation: over a threshold things are always logged,
and under which they're sub-sampled.

Change-Id: Ia0280b9b07b336ee88b17be2a31a7af0fd7c5770
ventLogTags.logtags
1f343ebed1859c2033759983391278572d97e5ba 24-Mar-2010 Fred Quintana <fredq@google.com> Merge "fix bug where sync settings set lost upon upgrade from donut and eclair to froyo"
fb084400d6afa6443a421117fbcaee0265d38fb6 24-Mar-2010 Fred Quintana <fredq@google.com> fix bug where sync settings set lost upon upgrade from donut and eclair
to froyo

- intepret a missing syncavble attribute from donut as "unsynced"
rather than the traditional "true"
- copy the sync settings from the authorities "contacts" and "calendar"
to "com.android.contacts" and "com.android.calendar" if the latter
don't already have settings
- delay the database cleanup until after boot completed, which will give
the GoogleLoginService accounts migration code a chance to run; this
was causing all the settings to get removed upon a donut to froyo upgrade

Change-Id: I8795e97ba0c9b930d1a50784229ca9ab15dff9d2
http://b/issue?id=2531359
yncManager.java
yncStorageEngine.java
1c4027b68d5938795cc536c1d45e8d942ea537a4 23-Mar-2010 Daniel Lehmann <lehmannd@google.com> Small speedup in getAsString and comment fix

Change-Id: I19744983bbc0f4b9060de326bd539137e373415b
ontentValues.java
e99bb5f10b90736d10cee9729b56cba156fc0921 19-Mar-2010 Suchi Amalapurapu <asuchitra@google.com> Add new method call back in MountService.
PackageManager invokes this call back when its done handling
the media status update.
Add new uid check for updateExternalMediaStatus
Change killPids method in ActivityManager.
Remove mountsd command in Pm.java We cannot arbitrarily enable/disable
packages in PackageManager now.

Change-Id: I28dcba4afd2b4486f68abdaa1628a31b66544c91
m/IPackageManager.aidl
2e805b19cdb309ea6eeb6d2e8b0915681f831f5a 22-Mar-2010 Brad Fitzpatrick <bradfitz@android.com> Grammar fixes.

Change-Id: I77672d2260c26aee146bb6a853137c14e3db1f28
m/PackageManager.java
806da1d46c94c71728b94dec75dec6519c962b5c 19-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2512507: Shortcuts and Widgets lost on upgrading from Eclair to FRE70D

Apps on the system partition are now allowed to change their certs, as
long as they are not using a shared user id.

Change-Id: I02ff7ac874dc649b7f8cbb705ae8d7ed31e1d125
m/PackageParser.java
90d8ee650be988d8479f4f14ae8e541bb4cb034b 18-Mar-2010 Suchi Amalapurapu <asuchitra@google.com> Switch default install location to unspecified.
Add a new install location unspecified for backward compatibility.
There is not much difference between policies auto and unspecified.
But we dont have to make any code changes in PackageParser based
on our preference for install location.
Add tests

Change-Id: I563238133261d911d08fbc66344687b7dfc870b1
m/PackageInfo.java
m/PackageParser.java
694f79b5d1196640d1beb680b7d1fc68e6e77cbd 18-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2519590: Lock screen stuck in landscape mode

Well, mostly. There is still a problem here where the first time
you show the lock screen it just doesn't draw itself. I assume
this is something breaking in the view hierarchy as it floounders
around removing and adding new views as it is first being shown...
but no idea at this point what is the actual case.

Change-Id: Iba99ae3242931c8673b17b106c86fc99e2c52abe
es/Configuration.java
14b6abda1309631d49d4bebbb0317a7e1dfc0a50 17-Mar-2010 Suchi Amalapurapu <asuchitra@google.com> Add new install flag to install on internal flash only
Change default install location policy for new flag.
New error code for media unavailable.

Change-Id: I5a5d0828b067692b2b94a15a2bcc7534f796c1a2
m/PackageManager.java
8a9ab24a5c9b595ac0268fcade4b5bbfe7c45c2d 12-Mar-2010 Suchi Amalapurapu <asuchitra@google.com> Do storage checks before initiating a move.
Add new remote method to check for insufficient error conditions.
Some fixes in MountService when updating media status on PackageManagerService
Fix size calculation condition in installd.

Add new error code if media is unavailable.
New tests for testing error codes.
Some additional debugging statements in MountService.

Change-Id: Ibfe90d5ed6c71d57f9c1c67806f38b5ae9ecdfbf
m/PackageManager.java
7620f1ae498e01bf2df58eaa1b9b20ef1eb47fa1 16-Mar-2010 Fred Quintana <fredq@google.com> Clean the settings for the account/authority when trying to sync an
adapter that is not installed.

Change-Id: Id4a804615b9546155948797f9dd9a0f03fbe4b2f
http://b/issue?id=2520175
yncManager.java
yncStorageEngine.java
c2e4691d788088b22eadc9b2d35e9bdf0b6a0ffc 16-Mar-2010 Fred Quintana <fredq@google.com> - make the SyncManager add periodic syncs when it upgrades from a
version of the accounts.xml file that pre-dated periodic syncs,
e.g. eclair or early froyo. http://b/2515823
- make the AccountManagerService dump() use a getAccounts call that
doesn't check the GET_ACCOUNTS permission to make it useful
in "adb bugreport"
- add some logging to SyncManager to help track down a problem

Change-Id: Icb646909074e2d327d71f6bb39cf06b6fac29e77
yncManager.java
yncStorageEngine.java
3de55bcd34afd5871816526294f9514d1adf3fe5 13-Mar-2010 Christopher Tate <ctate@google.com> API CHANGE: expose the backup-related ApplicationInfo flag masks

Fixes bug #2507582 by doing the following:

- Un-@hide the FLAG_ALLOW_BACKUP, FLAG_KILL_AFTER_RESTORE, and
FLAG_RESTORE_ANY_VERSION mask constants in ApplicationInfo. These
correspond, respectively, to the <application> manifest tag's
android:allowBackup, android:killAfterRestore, and
android:restoreAnyVersion attributes.

- Remove the android:restoreNeedsApplication attribute and the
corresponding FLAG_RESTORE_NEEDS_APPLICATION constant [which was still
marked @hide]. We now always use the application's own Application
class when performing a normal restore. In the future when we support
an externalized full-filesystem backup/restore operation, we will use
an OS-defined agent class with a base-class Application instance, but
this will not happen until a future release.

Also expands real documentation on the above ApplicationInfo constants;
that work is part of bug #2465360

Change-Id: I735d07a963ae80a01343637d83bef84e4c23fdcc
m/ApplicationInfo.java
m/PackageParser.java
a839703e0dec352bba9c7e4165e91b9083f58185 12-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2483335: android.content.res.cts.ConfigurationTest test's are failing

Change-Id: Ic2d10809c88f24d84e58d9f2edfd95912af29038
es/Configuration.java
15a4d2ffd04dc6c70f2cd17dae12ac6bc14c69ab 12-Mar-2010 Kenny Root <kroot@google.com> Add correct copyright headers to multiple files

Format for the list of changes shows the origin commit reference followed
by the file name.

33931-p9 awt/org/apache/harmony/awt/gl/font/AndroidGlyphVector.java
33931-p9 awt/org/apache/harmony/awt/gl/image/PngDecoderJava.java
133776-p9 core/java/android/app/IntentService.java
127013-p9 core/java/android/appwidget/AppWidgetHost.java
27863-p9 core/java/android/bluetooth/BluetoothAudioGateway.java
60765-p9 core/java/android/content/SyncResult.java
43920-p9 core/java/android/content/pm/ActivityInfo.java
43920-p9 core/java/android/content/pm/ApplicationInfo.java
43920-p9 core/java/android/content/pm/InstrumentationInfo.java
43920-p9 core/java/android/content/pm/PackageInfo.java
44103-p9 core/java/android/content/pm/PackageItemInfo.java
68960-p9 core/java/android/content/pm/PackageStats.java
43920-p9 core/java/android/content/pm/ResolveInfo.java
43920-p9 core/java/android/content/pm/ServiceInfo.java
60641-p9 core/java/android/content/res/Configuration.java
60734-p9 core/java/android/content/res/TypedArray.java
137672-p9 core/java/android/inputmethodservice/ExtractButton.java
123112-p9 core/java/android/inputmethodservice/ExtractEditText.java
119291-p9 core/java/android/inputmethodservice/IInputMethodSessionWrapper.java
112946-p9 core/java/android/inputmethodservice/IInputMethodWrapper.java
115078-p9 core/java/android/os/BatteryStats.java
124790-p9 core/java/android/text/style/UpdateAppearance.java
45083-p9 core/java/android/view/RawInputEvent.java
101491-p9 core/java/android/view/inputmethod/EditorInfo.java
114701-p9 core/java/android/view/inputmethod/ExtractedText.java
123112-p9 core/java/android/view/inputmethod/ExtractedTextRequest.java
119291-p9 core/java/com/android/internal/os/HandlerCaller.java
129279-p9 core/java/com/android/internal/os/PkgUsageStats.java
114701-p9 core/java/com/android/internal/view/IInputConnectionWrapper.java
114701-p9 core/java/com/android/internal/view/InputConnectionWrapper.java
84364-p9 opengl/java/android/opengl/EGLLogWrapper.java
11355-p9 opengl/tools/glgen/src/CFunc.java
11355-p9 opengl/tools/glgen/src/CType.java
11355-p9 opengl/tools/glgen/src/CodeEmitter.java
11355-p9 opengl/tools/glgen/src/GenerateGL.java
11355-p9 opengl/tools/glgen/src/JFunc.java
11355-p9 opengl/tools/glgen/src/JType.java
11355-p9 opengl/tools/glgen/src/JniCodeEmitter.java
11355-p9 opengl/tools/glgen/src/ParameterChecker.java
57236-p9 services/java/com/android/server/status/AnimatedImageView.java
66754-p9 services/java/com/android/server/status/CloseDragHandle.java
57188-p9 services/java/com/android/server/status/DateView.java
46928-p9 services/java/com/android/server/status/ExpandedView.java
70590-p9 services/java/com/android/server/status/FixedSizeDrawable.java
45968-p9 services/java/com/android/server/status/IconData.java
57470-p9 services/java/com/android/server/status/IconMerger.java
82719-p9 services/java/com/android/server/status/LatestItemView.java
45968-p9 services/java/com/android/server/status/NotificationData.java
66754-p9 services/java/com/android/server/status/NotificationLinearLayout.java
57458-p9 services/java/com/android/server/status/NotificationViewList.java
45968-p9 services/java/com/android/server/status/StatusBarException.java
45968-p9 services/java/com/android/server/status/StatusBarIcon.java
46130-p9 services/java/com/android/server/status/StatusBarNotification.java
45968-p9 services/java/com/android/server/status/StatusBarView.java
46199-p9 services/java/com/android/server/status/Ticker.java
62286-p9 services/java/com/android/server/status/TickerView.java
57188-p9 services/java/com/android/server/status/TrackingView.java
86041-p9 telephony/java/android/telephony/PhoneStateListener.java
87020-p9 telephony/java/com/android/internal/telephony/TelephonyIntents.java
136269-p9 telephony/java/com/android/internal/telephony/gsm/SpnOverride.java
34409-p9 tests/FrameworkTest/src/com/android/frameworktest/FrameworkTestApplication.java
55717-p9 tests/FrameworkTest/src/com/android/frameworktest/performance/InvalidateCycle.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/AutoCompleteTextViewActivityLandscape.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/AutoCompleteTextViewActivityPortrait.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityNonScrollablePanScan.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityNonScrollableResize.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityScrollablePanScan.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityScrollableResize.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/BottomEditTextActivityPanScan.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/BottomEditTextActivityResize.java
127341-p9 tests/ImfTest/src/com/android/imftest/samples/ButtonActivity.java
129347-p9 tests/ImfTest/src/com/android/imftest/samples/DialogActivity.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/EditTextActivityDialog.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityNoScrollPanScan.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityScrollPanScan.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityScrollResize.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/OneEditTextActivityNotSelected.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/OneEditTextActivitySelected.java
25959-p9 tests/framework-tests/src/android/test/FrameworkTests.java
46162-p9 tests/framework-tests/src/com/android/internal/http/multipart/MultipartTest.java
77101-p9 tools/layoutlib/bridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
9788976b1465ce982b5ae7c741345edd0ecd9322 core/java/android/accounts/AuthenticatorDescription.java
53332883543868fb83e111a07306368b7772b340 core/java/android/app/UiModeManager.java
93e7e22ec91dbc641d10ca6d70423e1357a95bba core/java/android/app/FullBackupAgent.java
328c0e7986aa6bb7752ec6de3da9c999920bb55f core/java/android/content/CursorEntityIterator.java
307da1a46b4c9b711bafe8fbaaa6b98e8868c18e core/java/android/content/SyncQueue.java
307da1a46b4c9b711bafe8fbaaa6b98e8868c18e core/java/android/content/SyncOperation.java
eb034652c2037a47ebfd99779e8383bb8bb528af core/java/android/content/pm/LabeledIntent.java
49237345d83e62fdb9eb8d50b13ad086636a04fa core/java/android/content/pm/FeatureInfo.java
a2b6c3775ed6b8924232d6a01bae4a19740a15f8 core/java/android/content/pm/PackageInfoLite.java
3ecd5f437580e49d80beecd29489d5fb1f7a7db0 core/java/android/content/pm/RegisteredServicesCacheListener.java
5ebbb4a6b3e16f711735ae0615b9a9ea64faad38 core/java/android/content/pm/XmlSerializerAndParser.java
c4516a7b62de525e3d6d5e76851bdfaf12c11f05 core/java/android/database/sqlite/SQLiteTransactionListener.java
9bbc21a773cbdfbef2876a75c32bda5839647751 core/java/com/android/internal/backup/LocalTransport.java
21f1bd17b2dfe361acbb28453b3f3b1a110932fa core/java/com/android/internal/content/PackageMonitor.java
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 core/java/com/android/internal/view/BaseSurfaceHolder.java
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 core/java/com/android/internal/view/BaseIWindow.java
e540833fdff4d58e37c9ba859388e24e2945ed45 core/java/com/android/internal/os/SamplingProfilerIntegration.java
192ab903887bbb8e7c7b6da5c581573850e30f46 core/tests/coretests/src/android/widget/expandablelistview/PositionTesterContextMenuListener.java
1619367ab823150fa8856d419abe02ceb75886f1 media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/MediaProfileReader.java
27f8002e591b5c579f75b2580183b5d1c4219cd4 opengl/tools/glgen/stubs/gles11/glGetString.java
560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glGetProgramInfoLog.java
560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glGetShaderInfoLog.java
560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glShaderSource.java
1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/GenerateGLES.java
1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/Jsr239CodeEmitter.java
1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/GLESCodeEmitter.java
69e21f5f6e0d04539cd92848ea009dd615d88c2c opengl/tests/gldual/src/com/android/gldual/TriangleRenderer.java
c028be4f3b8c7476b46859f66c3f33d528adf181 packages/DefaultContainerService/src/com/android/defcontainer/DefaultContainerService.java
7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerMeasurement.java
7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerTestActivity.java
7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerTestRunner.java
df8a3f31d871db25e952972c2eb346a71186e9e3 tests/BrowserTestPlugin/src/com/android/testplugin/TestPlugin.java
cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/ActivityManagerPermissionTests.java
cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/ServiceManagerPermissionTests.java
cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/WindowManagerPermissionTests.java

Copyright header moved to top in following file:

core/tests/coretests/src/android/widget/ListViewTest.java

Change-Id: I3c3198be5a0ba36e18679ed834170432bf0b8418
ursorEntityIterator.java
yncOperation.java
yncQueue.java
yncResult.java
m/ActivityInfo.java
m/ApplicationInfo.java
m/FeatureInfo.java
m/InstrumentationInfo.java
m/LabeledIntent.java
m/PackageInfo.java
m/PackageInfoLite.java
m/PackageItemInfo.java
m/PackageStats.java
m/RegisteredServicesCacheListener.java
m/ResolveInfo.java
m/ServiceInfo.java
m/XmlSerializerAndParser.java
es/Configuration.java
es/TypedArray.java
2ee89ea2887252053c31541c54126a8b084c9bca 11-Mar-2010 Dianne Hackborn <hackbod@google.com> Applications should -not- be able to set preferred activities.

I can't believe I let this slip through. And in the SDK no less. :(

The APIs for setting preferred activities will now throw a security
exception when used. This may break some apps, we'll see how it
goes. If it is too bad we can just make these log and not throw
anything, but I would much prefer they throw an exception.

Change-Id: I3aed434750eef8b202aa9d5bd774a0121be521c6
m/PackageManager.java
d2a2daaa89865d19e881ab9af133ce0f3902c820 11-Mar-2010 Omari Stephens <xsdg@android.com> Fix small typo in javadoc: "deleting" -> "updating"

Change-Id: Ie0464aa92d33eb5b076a8122f5bd6317fd44a7b2
ontentResolver.java
3802141d17631183b6638d8e66630750f75daf38 10-Mar-2010 Fred Quintana <fredq@google.com> Merge "make the syncmanager keep track if whether a service has been unbound from so that it knows whether to call unbind at a later time"
3ec4730e375689b8ad9a03fcf98ff7773d726dda 10-Mar-2010 Fred Quintana <fredq@google.com> make the syncmanager keep track if whether a service has been unbound
from so that it knows whether to call unbind at a later time

Change-Id: Ida0d4b06454909d84380e2336fcc238834d292bc
http://b/2492397
yncManager.java
6069beb2dfed6da837bf7faa3db3f6119edc017a 10-Mar-2010 Suchi Amalapurapu <asuchitra@google.com> Rename ApplicationInfo.FLAG_ON_SDCARD to ApplicationInfo.FLAG_EXTERNAL_STORAGE

Change-Id: Iadef9f9bb2851c38b6d79be1bafbf932abce4210

Change-Id: I2e412bace3d8005db5057a3497bd836d0038b90c
m/ApplicationInfo.java
m/PackageParser.java
cf244ada58539ce857ec041d7288d0271204fbb6 10-Mar-2010 Dianne Hackborn <hackbod@google.com> Add ability for some manifest attributes to reference resources.

This loosens our restriction on many manifest attributes requiring
literal string values, to allow various ones to use values from
resources. This is only allowed if the resource value does not change
from configuration changes, and the restriction is still in place
for attributes that are core to security (requesting permissions) or
market operation (used libraries and features etc).

Change-Id: I4da02f6a5196cb6a7dbcff9ac25403904c42c2c8
m/PackageParser.java
es/TypedArray.java
104798b706370c1bf403a1d07a0d69a740a3fb2f 10-Mar-2010 Brad Fitzpatrick <bradfitz@android.com> Merge "Speed up ContentProvider.query() in simple case by ~30%"
9ffdfa0c238fce3b85741d7f6828fd484cd8f195 09-Mar-2010 Brad Fitzpatrick <bradfitz@android.com> Speed up ContentProvider.query() in simple case by ~30%

When query() uses bulkQuery() and we know we're going to need some
metadata right afterwards (number of rows and column index of _id, if
present), just asked for it in the initial binder transaction instead
of immediately fetching it again.

Also, this defers loading column names until the client asks for them.

This gets down the simpler (and very common) use cases of
ContentProvider.query() down to 3 binder calls:

QUERY_TRANSACTION to android.content.ContentProvider$Transport
GET_CURSOR_WINDOW_TRANSACTION to android.database.CursorToBulkCursorAdaptor
CLOSE_TRANSACTION to android.database.CursorToBulkCursorAdaptor

More can still be done, but this is a good bite-sized first piece.

Change-Id: I7ad45949f53e0097ff18c2478d659f0f36929693
ontentProviderNative.java
a2b6c3775ed6b8924232d6a01bae4a19740a15f8 06-Mar-2010 Suchi Amalapurapu <asuchitra@google.com> Add conditions to check for updated system applications. Restrict them
to internal flash only even before we copy.

Return error codes when install flag options mismatch.
Some conditions for existings apps
- install flags override existing location
- explicity manifest option install location overrides previous location
- if upgraded package's install location is unspecified or auto, fall
back to recommended install policy which considers user setting as well.

Check for sdcard status before finding available size on sdcard
Add light weight parsing for manifest attributes including package name and
install location only

Change-Id: I5143dda87c88c595f564b317326c926d0ec3ceb8
m/PackageInfo.java
m/PackageInfoLite.aidl
m/PackageInfoLite.java
m/PackageParser.java
f19d43d8805948a85924706f76ef9b0eb5f80c9f 09-Mar-2010 Brad Fitzpatrick <bradfitz@android.com> Merge "Fix Parcel leak in ContentProvider.call()"
dfb437e17c6ba3b29f9e636d064125668d706249 09-Mar-2010 Brad Fitzpatrick <bradfitz@android.com> Fix Parcel leak in ContentProvider.call()

This manifested itself as memory allocation and Binder failures during
my load testing / benchmarking.

BUG=2498615

Change-Id: I260fd916f97777fc98bee98d10474f12deb21dee
ontentProviderNative.java
50ab63f5831fed5cfa888fb67f0a27eb4c0a86c4 06-Mar-2010 Dan Morrill <morrildl@google.com> Adding definitions & APIs for features that are newly-optional in FroYo.
This also refactors the files containing the features so that they are more
modular. Note that this also changes data/etc/Android.mk so that
required_hardware.xml is NOT copied automatically for all devices
anymore. Accordingly, that file is removed.
m/PackageManager.java
4528186e0d65fc68ef0dd1941aa2ac8aefcd55a3 06-Mar-2010 Christopher Tate <ctate@google.com> Refactor android.backup => android.app.backup

Change-Id: I0b21316ff890d7f3c7d4b82837bb60670724c2e8
ontext.java
1877d0158b529663b8315482e7346a7bcaa96166 05-Mar-2010 Brad Fitzpatrick <bradfitz@android.com> Add "call" method on ContentProvider.

This permits implementing interfaces which are faster than using
remote Cursors. It then uses it for Settings & SettingProvider, which
together account for ~50% of total ContentProvider event loop stalls
across Froyo dogfooders.

For fetching Settings this looks like it should reduce average
Settings lookup from 10 ms to 0.4 ms on Sholes, once the
SettingsProvider serves most gets from in-memory cache. Currently it
brings the Sholes average down from 10ms to 2.5 ms while still using
SQLite queries on each get.
ontentProvider.java
ontentProviderNative.java
ontentResolver.java
ContentProvider.java
7299c41630935a2b106e73e5603579a7747f7535 05-Mar-2010 Dianne Hackborn <hackbod@google.com> Refactor car mode.

Extract all UI behavior from dock observer and ACTION_DOCK_EVENT.

Also introduce a desk type to go along with the car type all through
the resource system, since we now need to have corresponding high-level
broadcasts for desk dock mode. As part of that I also reworked some
of the logic for switching modes to all funnel through a single
update() call that looks all of the current state to decide what to
do next, and fixed various locking issues.

In addition I found there were bugs in the configuration change
handling causing us to only switch into the car mode config and
then never get out of it. Unfortunately now that we are actually
changing the configuration for each mode change, the transitions
between them are really crummy as we restart all kinds of
activities. :(
ntent.java
es/Configuration.java
1a31ae34a073b9769775f9e6cf5818888173a8e8 04-Mar-2010 Joe Onorato <joeo@android.com> Merge "Fix typo. According to grep, this is the only place in the tree that has it."
8a051a4ec34680dc93554457fec84677cb2cdcbf 04-Mar-2010 Joe Onorato <joeo@android.com> Fix typo. According to grep, this is the only place in the tree that has it.
ntent.java
20cb56e26e91df91bd64d4251222e0d421cdbe47 04-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix some bugs.

Bug #2376231: Apps lose window focus (and back key causes ANR) if the
lock screen is dismissed while the phone is in landscape mode

This is another case where we weren't recomputing the focused window
after changing the visibility policy.

bug #2479958: Investigate source of "Resources don't contain package
for resource number 0x7f0a0000"

Um, okay, so it turns out there were bugs all over the place where
we would load an XML resource from a another application, but not
use the Resources for that application to retrieve its resources...!
I think the only reason any of this stuff was working at all was
because it typically only cared about retrieving the resource
identifiers of the items (it would look up the values later).

Bug #2401082: Passion ERE26 monkey crash - InputMethodManagerService

Add some null checks.
yncAdaptersCache.java
m/RegisteredServicesCache.java
c1552397be706c243338389c628a44eee6011eae 04-Mar-2010 Dianne Hackborn <hackbod@google.com> Allow multiple original-package tags.

Also fix some issues with moving files from update commands.
m/PackageParser.java
bf2dd44a6f86d13efd55d1e690822fba11187bf8 03-Mar-2010 Mike Lockwood <lockwood@android.com> MountService: Send ACTION_MEDIA_UNSHARED Intent a volume is no longer shared via UMS.

Change-Id: I21c887ae76eccabcc5d8449aa0a38e98758e8958
Signed-off-by: Mike Lockwood <lockwood@android.com>
ntent.java
db204c2383ccf2e4e5e8776e93c20b376aa6934e 02-Mar-2010 Fred Quintana <fredq@google.com> Merge "change ObserverNode.binderDied() to lock the root node before manipulating the observers tree by calling removeObserverLocked()"
002ffad599964653186c01f8e07fadc82dc0acee 02-Mar-2010 Fred Quintana <fredq@google.com> change ObserverNode.binderDied() to lock the root node before manipulating
the observers tree by calling removeObserverLocked()

http://b/issue?id=2457485
ontentService.java
ef05e076ced1a32c5c0aaee28403779834adb2ba 02-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2448075: aapt doesn't fix up activity-alias android:targetActivity links

And related:

- The aapt tool now sets a resource configurations sdk level to match any configs
that have been set (for example if you specify density your sdk level will be
at least 4).
- New option to modify the targetPackage attribute of instrumentation.
- Clean up of aapt options help.
- Fix of UI type values to leave 0 for "unspecified".
- Make the UI mode config APIs public.
m/ActivityInfo.java
es/Configuration.java
881cc1dffb12a21cc9d2dbf1908b3a3cf4e1ac0c 01-Mar-2010 Fred Quintana <fredq@google.com> Merge "fix a bug where if a syncmanager gets back a SyncAlreadyInProgress error it immediately reschedules another sync, thus burning up the battery if the sync is in progress for a while."
82c5c4248a5dcd648ecbc311e2b8cd765c388aab 01-Mar-2010 Fred Quintana <fredq@google.com> fix a bug where if a syncmanager gets back a SyncAlreadyInProgress error
it immediately reschedules another sync, thus burning up the battery if
the sync is in progress for a while.

http://b/issue?id=2477901
yncManager.java
yncOperation.java
87bba1ee14279bb14a28d42e27c4ef66d9967bf8 27-Feb-2010 Dianne Hackborn <hackbod@google.com> Move DeviceAdmin APIs to android.app.admin.

Also add ability for admins to hide themselves when not in use,
a facility for admins to not allow other admins to reset
their password, and debug dumping.
ontext.java
1f9e1b4c37c135b75cf064cbb5675aa576e2942a 26-Feb-2010 Suchi Amalapurapu <asuchitra@google.com> Remove public variables in PackageManager
Dont invoke getInstallLocation for forward locked apps.
If INSTALL_ON_SDCARD is selected as default, forward locked
apps are not being installed because of conflicting flags.
m/PackageManager.java
6cb6f246fe9fa7bd2be88946f531a82576008be4 26-Feb-2010 Fred Quintana <fredq@google.com> remove redundant @hides
ctiveSyncInfo.java
1b487ec44b6b5594914d52fa427bec4f29a60541 26-Feb-2010 Fred Quintana <fredq@google.com> expose some sync control methods
- ActiveSyncInfo
- ContentResolver.addStatusChangeListener
- SYNC_OBSERVER_TYPE_SETTINGS
- SYNC_OBSERVER_TYPE_PENDING
- SYNC_OBSERVER_TYPE_ACTIVE
- make the ContentService resilient to nulls passed in to the
status change listener registration and unregistration calls

bug http://b/issue?id=2337197
ctiveSyncInfo.java
ontentResolver.java
ontentService.java
yncManager.java
yncStorageEngine.java
08bbffb049c135c5dfd40d261118c90d1a6dc111 25-Feb-2010 Bjorn Bringert <bringert@android.com> Support CharSequence lists+arrays in Bundle+Intent

Fixes http://b/issue?id=2468093

Change-Id: Id82686f6ca8c9501f6db8a07018278a78ddacd05
ntent.java
aaec779513737a70007dea955f60e1b8bcbc2f1a 25-Feb-2010 Suchi Amalapurapu <asuchitra@google.com> Pick up default install location
m/PackageParser.java
2269d1572e5fcfb725ea55f5764d8c3280d69f6d 25-Feb-2010 Dianne Hackborn <hackbod@google.com> Re-arrange android-common so framework no longer links with it.

This is the framework part, moving classes around so the framework
no longer needs to link to android-common. Makes some APIs public,
others that didn't need to be public are private in the framework,
some small things are copied.
ntent.java
ntentFilter.java
yncStorageEngine.java
m/PackageParser.java
m/RegisteredServicesCache.java
es/Resources.java
es/StringBlock.java
es/TypedArray.java
es/XmlBlock.java
3dda518a4fd57cdded3afa50d8aa206501de7fc6 25-Feb-2010 Christopher Tate <ctate@google.com> Add 'restoreAnyVersion' attr for apps that want to restore "future" data

If a backup-participating app sets android:restoreAnyVersion="true" in its
manifest <application> tag, then its agent will be invoked for restore
even if the available dataset was created by a later version of the app
than is currently installed on the device. This will not typically be
a problem for third party applications, since for them the installation
and initial data restore are tightly coupled, but it can cause serious
problems for applications which are both preinstalled on the system
partition and overridden by later updates. The primary difficulty
that this new attribute addresses is this:

1. User buys a Nexus One, Market self-updates, and the user installs some apps.
At this point the backup data on the server may indicate that the version of
Market which originated its bookkeeping is newer than the stock N1 Market app.
2. User loses their phone, and buys a replacement N1. At setup time, Market
has not yet had a chance to self-update, so when the restore comes in, it's
tagged as being from "the future" and so the restore is refused. No apps get
reinstalled.

Bug: 2442127
Change-Id: I076a9553dc613e5c3189350e778315718ed1ed2b
m/ApplicationInfo.java
m/PackageParser.java
c3b91fd26a940f8cee54888f91b490cb1768b03c 24-Feb-2010 Dianne Hackborn <hackbod@google.com> Fix crash in PendingIntentRecord debug output.

Add null checks to a few places to avoid crashes when dumping
debug data.

Also add some sanity checks for accessing content providers in
the activity manager.
es/AssetManager.java
es/XmlBlock.java
cf6eaeaae9e6745dd6e07540812c79821d7043c2 24-Feb-2010 Suchi Amalapurapu <asuchitra@google.com> Some framework fixes for apps on sd
change hard coded path in installd
fix tests
Work around for renaming containers.
Do forced unmount when destroying containers.
Force a gc in default container service to release handle to parsed package
and thus avoid getting killed by vold
Some cosmetic changes to PackageManager api.
Unit tests for renaming container for MountService
Remove internal size limit on app to be installed.
m/IPackageManager.aidl
25880968cbde25c9edb162c0d70d45dc75239456 23-Feb-2010 Brad Fitzpatrick <bradfitz@android.com> Reduce SQLiteDatabase and ContentResolver EventLog logging thresholds.

Turns out the database is used a ton, and not particularly quickly, so
these were spamming the logs at their prior 100ms thresholds. Setting
it to 500ms now. (still sub-sampled, so should be ~5x less spammy...)
ontentResolver.java
53332883543868fb83e111a07306368b7772b340 19-Feb-2010 Tobias Haamel <haamel@google.com> Manager for controlling the UI modes.

The ui modes can be controlled with the UiModeManager class, which
is can be retrieved as a system service via getSytemService(Context.UIMODE_SERVICE).

The class is necessary so that CarHome can be unbundled and other apps can
disable the car mode. Its currently a hidden class, since I'm not sure if this
is the best way to provide this functionality to the user.
ontext.java
21f1bd17b2dfe361acbb28453b3f3b1a110932fa 20-Feb-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2438980: Implement package watcher for voice recognizer service setting

I am getting tired of writing package monitor code, realized this is missing in
a number of places, and at this point it has gotten complicated enough that I
don't think anyone actually does it 100% right so:

Introducing PackageMonitor.

Yes there are no Java docs. I am still playing around with just what this
thing is to figure out what makes sense and how people will use it. It is
being used to fix this bug for monitoring voice recognizers (integrating the
code from the settings provider for setting an initial value), to replace
the existing code for monitoring input methods (and fix the bug where we
wouldn't remove an input method from the enabled list when it got
uninstalled), to now monitor live wallpaper package changes (now allowing
us to avoid reverting back to the default live wallpaper when the current
one is updated!), and to monitor device admin changes.

Also includes a fix so you can't uninstall an .apk that is currently enabled
as a device admin.

Also includes a fix where the default time zone was not initialized early
enough which should fix issue #2455507 (Observed Google services frame work crash).

In addition, this finally introduces a mechanism to determine if the
"force stop" button should be enabled, with convenience in PackageMonitor
for system services to handle it. All services have been updated to support
this. There is also new infrastructure for reporting battery usage as an
applicatin error report.
omponentName.java
ntent.java
1bb6906c7a903ee6427c8ff37bdc5896c386ff73 20-Feb-2010 Christopher Tate <ctate@google.com> Automatically restore app data at install time

When an application being installed defines a backupAgent in its manifest, we
now automatically perform a restore of the latest-known-good data for that app.
This is defined as "data backed up by this app from this handset, if available;
otherwise data for this app as it existed when the device was initially
provisioned." If neither option exists for the app, no restore action is
taken.

The CL involves major changes in the Backup and Package Managers...

* The Package Manager's act of installing an application has now been split
into two separate phases, with a data-restore phase optionally occurring
between these two PM actions. First, the details of the install are performed
as usual. Instead of immediately notifying install observers and issuing the
install-related broadcasts, the in-process install state is snapshotted and
the backup manager notified that a restore operation should be attempted. It
does this by calling a new API on IBackupManager, passing a token by which it
identifies its in-progress install state.

The backup manager then downloads [if possible] the data for the newly-installed
application and invokes the app's backupAgent to do the restore. After this
step, regardless of failure, it then calls back into the Package Manager to
indicate that the restore phase has been completed, supplying the token that
was passed in the original notification from the Package Manager.

The Package Manager then runs the final post-install actions: notifying install
observers and sending out all the appropriate broadcasts. It's only at this
point that the app becomes visible to the Launcher and the rest of the OS.

... and a few other bits and pieces...

* The ApplicationInfo.backupAgentName field has been exposed to the SDK. This
can be reverted if there's a reason to do so, but it wasn't clear that this
info needs to be hidden from 3rd party apps.

* Debug logging of restore set IDs and operation timeout tokens [used during
any asynchronous Backup Manager operation] are now consistently in hex for
readability.

* We now properly reset our binder identity before calling into the transport
during restore-set operations. This fixes a permissions failure when a
single-app restore was attempted.

* The 'BackupTest' test app is no longer lumped onto the system partition
by default.

Change-Id: If3addefb846791f327e2a221de97c8d5d20ee7b3
m/ApplicationInfo.java
m/IPackageManager.aidl
35abad216da8a49128c3899a206c15d44c471617 19-Feb-2010 Ken Shirriff <kens@google.com> Add error logging to ContentProviderOperation.

This will dump out the contents of the operation in some error cases
to make debugging easier.
ontentProviderOperation.java
6c81defa3d1111c36f8b0c9c4e84e8b2c342620f 19-Feb-2010 Suchi Amalapurapu <asuchitra@google.com> Merge "Move package from internal to external and vice versa."
8946dd3355fc1dcbad872c0546e356474d4cc5de 19-Feb-2010 Suchi Amalapurapu <asuchitra@google.com> Move package from internal to external and vice versa.
m/IPackageManager.aidl
m/IPackageMoveObserver.aidl
m/PackageManager.java
bda8874a2990a864f32f8d2d916f7a05f33f797b 19-Feb-2010 Fred Quintana <fredq@google.com> improve logging of errors when trying to resolve backrefs http://b/2371475
ontentValues.java
ac7c8e6cd1756d527d381308b7ff8c669531385c 19-Feb-2010 Fred Quintana <fredq@google.com> Merge "- fix the AccountManager documentation. http://b/2401790 - only pass the authtoken through from the authenticator to the client for getAuthToken() and strip it out from the other calls, like addAccount(). http://b/2332762 - beef up the documentation to indicate what calls are allowed to be made from the main thread and which are not allowed. http://b/2384961 - wait a bit before retrying syncs that failed because one was already in progress. http://b/2414235"
bd3f527ea0fcca2be0f773e5d6832a80a884699f 19-Feb-2010 Mike LeBeau <mlebeau@android.com> Elaborate a little on the documentation for PackageManager's resolveActivity.

Not sure if this wording is perfectly appropriate, so comments welcome.
m/PackageManager.java
8570f7440780db5c9b410e033e843b0e80e2fd27 18-Feb-2010 Fred Quintana <fredq@google.com> - fix the AccountManager documentation. http://b/2401790
- only pass the authtoken through from the authenticator to the client
for getAuthToken() and strip it out from the other calls, like
addAccount(). http://b/2332762
- beef up the documentation to indicate what calls are allowed to be made
from the main thread and which are not allowed. http://b/2384961
- wait a bit before retrying syncs that failed because one was already
in progress. http://b/2414235
yncManager.java
e36d6e277e49475076b7872d36ea6a5c5b996e9d 18-Feb-2010 Dianne Hackborn <hackbod@google.com> Work on issue #2263557: PMF3000 showing hybrid of portrait and landscape modes

This is a bunch of reworking of how configuration changes are handled:

- When orientation is changing (for whatever reason), the window manager no
longer tries to pre-emptively compute a new configuration. Instead, it
just determines change is happening and tells the window manager.
- The activity manager is now responsible for giving the window manager the
final configuration it is using. This is both so it knows whem the
activity manager is done with its configuration updates, and so the window
manager can use the "real" configuration.
- When an orientation or other configuration change is happening, freeze the
screen and keep it frozen until the activity manager has given us the
final configuration.
- The window manager can now send new configurations to its clients during
its layout pass, as part of a resize, if it has determined that it has
changed. This allows for a new View.onConfigurationChanged() API for any
view to easily find out when the configuration has changed.
- ViewRoot now also works with the activity thread to make sure the process's
current resources are updated to the new configuration when it receives one
from a window. This ensures that at the time onConfigurationChanged() and
other view callbacks are happening, the correct configuration is in force.
- There is now a sequence number associated with Configuration, which
ActivityThread uses to avoid using stale configurations. This is needed now
that it can receive configurations asynchronously from both the window
manager and activity manager.
- The hack for keeping the locale has been removed, and underlying problem
fixed by having Configuration initialize its locale to "unknown" instead of
a valid default value.
es/Configuration.java
es/Resources.java
154f7a1cc2d4f0468a7cc8dfa36e837c84cd9f7e 17-Feb-2010 Tobias Haamel <haamel@google.com> Show car mode notification in status bar.

The notification is an ongoing event and can be used to get out of car mode.
ntent.java
fb6a5359e4ae8d36bcba601aa4ce81dbeb287617 17-Feb-2010 Fred Quintana <fredq@google.com> remove check for obsolete property ro.config.sync
yncManager.java
63cfebf2dbe628508cccc10f47754fdacd48c1a0 05-Feb-2010 Costin Manolache <costin@google.com> Switch from REMOTE_INTENT to the new push messaging, add the required permission.
ntent.java
5b993ce7bc29e43a3215a50ce6ce5d6550d4e5e2 12-Feb-2010 Suchi Amalapurapu <asuchitra@google.com> Include install location preference when installing packages.
Changes include
Add new remote call in default container service to determine
install location.
Rename INSTALL_ON_SDCARD
Remove recommentAppInstall method
Add some additional flags used in remote stubs.
Move check for protected apps prior to copy.
Unit tests

DefaultContainerService first parses the file uri(if content uri is specified
it returns a default install internal only value) and returns
a recommended location. Based on which the temporary id is determined
either a file name or a container id and the file is copied there.
This is then later renamed during install.
Todo's light weight parsing of package when determining location since we
just need the install location attribute only when finding out
recomended location. This will also enable to move the check for
updated system apps(cannot be on sdcard) prior to copying.
m/PackageManager.java
470969346d7958f859d97d1a136b4ecc11e2a464 12-Feb-2010 Dianne Hackborn <hackbod@google.com> Add APIs for mapping between new and current package names.

This will allow Market and others to find out what the "real" name
of a package is, when it is currently running under the old name of
a previously installed version.
m/IPackageManager.aidl
m/PackageManager.java
d72f718c9cc4bd5e4701f4c5cdab51b4d8cf6435 12-Feb-2010 Brad Fitzpatrick <bradfitz@android.com> Measure walltime in ContentResolver and SQLiteDatabase operations logging.

Previously, SQLiteDatabase was using Debug.threadCpuTimeNanos(), which
doesn't include I/O time (user-perceived latency), and ContentResolver
was using System.currentTimeMillis(), which didn't account for deep
sleeps.

Now both are consistently using SystemClock.uptimeMillis().
ontentResolver.java
27b28b3f62bd3b54fa13acd5d035940b9be464f3 09-Feb-2010 Tobias Haamel <haamel@google.com> Introduce special UI modes for night and car usage.

The device mode is now called ui mode. Furthermore is the order of
precedence for the resources now in such a way that the ui mode needs
to be specified after the orientation and before the density.

The ui mode can be set, like it is done for the locale, as follows:

IActivityManager am = ActivityManagerNative.getDefault();
Configuration config = am.getConfiguration();
config.uiMode = Configuration.UI_MODE_TYPE_CAR | Configuration.UI_MODE_NIGHT_ANY;
am.updateConfiguration(config);

To allow users to disable the car mode and set the night mode the IUiModeManager
interface is used.

The automatic night mode switching will be added in a separate change.
ntent.java
m/ActivityInfo.java
es/AssetManager.java
es/Configuration.java
es/Resources.java
6dee18c5cfdd5d63f3a9c299d2b61f819c07e920 10-Feb-2010 Dianne Hackborn <hackbod@google.com> New implementation of <original-package> tag.

We now have the new package retain the name of the old package. This makes
sure that all existing references to it (shortcuts, widgets, etc) will still
work.

This does mean that your package can run under either the old or new name,
depending on whether the user got it with an update. Buyer beware!

I have tried testing all of the paths of updating, installing another
update in /data, uninstalling the update, updating system with an even
newer update, etc. I think they all work. No promises though.
m/PackageParser.java
23085b781e145ed684e7270af1d5ced6800b8eff 09-Feb-2010 Ben Cheng <bccheng@android.com> Support per-application switch to execute the VM in safe mode.

The new attribute can be set by adding android:safeMode="true"
in AndroidManifest.xml with the SDK.

Tested with pairing locally compiled SDK with Eclipse and verified that the JIT
(the only component currently included in the safe mode) is indeed disabled
with the new attribute.

Bug: 2267583
m/ApplicationInfo.java
m/PackageParser.java
caa6f3860f8cf493daace8d7c2230973759d7f3d 10-Feb-2010 Fred Quintana <fredq@google.com> Merge "fix an NPE in SyncManager's dump where it can get a null AuthorityInfo; instead create one if one doesn't exist yet"
1bbcd105a164ebbd69ee3fd1fe8fb75cd8a8c0cb 10-Feb-2010 Fred Quintana <fredq@google.com> fix an NPE in SyncManager's dump where it can get a null AuthorityInfo; instead create one if one doesn't exist yet
yncManager.java
yncStorageEngine.java
117818e4f171b1fd9daa05349c48f61388f04567 09-Feb-2010 Suchi Amalapurapu <asuchitra@google.com> Add new manifest option for install location
Change recommendAppInstallLocation api
add code to parse new attribute.
Define flags in PackageInfo
Add new settings attributes for enabling setting and value for install location
Some tests
The policy for install location: if explicitly set in manifest as internal only we try to install the app only on internal storage. if set to preferExternal, we try to install it on sdcard if possible. If not we fall back to internal.
If the user enables setting SET_INSTALL_LOCATION(which will always
be set to false in final release builds) and sets a prefered location, we try
to honour it.
m/PackageInfo.java
m/PackageManager.java
m/PackageParser.java
a63730d1f103f78589faef461d2af7351fc49f42 08-Feb-2010 Brad Fitzpatrick <bradfitz@android.com> Log ContentProvider operations to the EventLog.

Just like with db_operation, operations over 100ms are always logged,
while operations under that are subsampled.

This will help with performance analysis, getting real-world
performance numbers from dogfooders.
ontentResolver.java
ventLogTags.logtags
e83cefcef07f9ac025642c1ffec76b4c7ab39cf2 05-Feb-2010 Dianne Hackborn <hackbod@google.com> New external storage APIs.

This implements the spec for external storage organization, and
properly reflects how the media scanner organizes the files it finds.

Also includes package manager support for removing app private
files from external storage when the application is uninstalled.

For the new APIs and paths, the main place to look is Environment
and Context.
ontext.java
ontextWrapper.java
m/IPackageManager.aidl
m/PackageManager.java
8e867eb454efadca1f45a48d879ee57c883dbb91 09-Feb-2010 Bjorn Bringert <bringert@android.com> Merge "Fix NPE in PackageParser"
b104340496e3a531e26c8f428c808eca0e039f50 05-Feb-2010 San Mehat <san@google.com> Framework: Clean up / Refactor Mount APIs

- Move android.storage.* -> android.os.storage.* and refactor users
- Refactor generic shares back to explicit ums enable/disable/isEnabled
- Remove media insert/removed event callbacks (not ready for Froyo)
- Remove 'label' from volume state change callbacks
- Add public API functions for enabling/disabling USB mass storage (permissions enforced
in MountSevice)
- Remove some stray un-needed import lines
- Move android.os.IMountService / android.os.IMountServiceListener -> android.os.storage
- Improve code comments

Updated:
MountService: Add dup state check and move debugging behind a conditional
UsbStorageActivity: Fix review comments + a TODO
StorageNotification: Add @Override tags
StorageManager: Don't use a static Listener list
MountService: Reduce bloat and fix == where I meant .equals()
PackageManagerTests: Update for new API

Signed-off-by: San Mehat <san@google.com>
ontext.java
ace5a3fbfbf1b41905410925f1ea007040a7a675 05-Feb-2010 Kenny Root <kroot@google.com> Hide resourceDirs from public API

Change-Id: I070558c0adca43c8650ac740d3cda4334d0f4a50
m/ApplicationInfo.java
e04b1ad9cd3d9a159d4c7721a374f987be1062cd 09-Feb-2010 Bjorn Bringert <bringert@android.com> Fix NPE in PackageParser

Before, PackageParser threw NPE when reading <path-permission>
android:writePermission set.

Fixes http://b/issue?id=2430967

Change-Id: I4c69f0210ab362a649ff239c5f9e927d93c2f241
m/PackageParser.java
53bd2522ca7767f46646606123b6e2689b811850 06-Feb-2010 Fred Quintana <fredq@google.com> - change the SyncManager to retry MANUAL syncs that encounter a soft error
- make the sync dump handle the case where there are no accounts
- fix a bug that caused the SyncManager to burn up CPU in the system process

The following was implemented:

scheduler offers:
- settings to disable sync
- retries of certain errors
- backoffs

want a way to control these when scheduling a sync
- "ignore_settings"
- "ignore initial backoff"
- "manual" : ignore settings, ignore initial backoff
- "do not retry"

- need to change the default behavior of not retrying manual syncs to retry regardless
ontentResolver.java
yncManager.java
yncOperation.java
yncQueue.java
b56ae20b22fd7283df32072a431ab6d4965f3c1b 05-Feb-2010 Suchi Amalapurapu <asuchitra@google.com> Rename media resource broadcasts
Add checks for fwdlocked and updated system apps
add more tests
remove duplicate adds
ntent.java
m/PackageManager.java
m/RegisteredServicesCache.java
e8d898f4edb4dca397ec21c14f2a63c79ffdeccc 08-Feb-2010 Joe Onorato <joeo@google.com> Merge "Make ComponentName cloneable."
edc649aabc795bb31ff08c94836cd7268a70c73a 08-Feb-2010 Joe Onorato <joeo@android.com> Make ComponentName cloneable.
omponentName.java
c5d1c6db61f208b206b260f897bb5bbc64be4d97 27-Jan-2010 Fred Quintana <fredq@google.com> add sync polling

- added the ability to specify that a sync (of account/authority/extras)
should occur at a given frequency
- the existing daily poll code was replaced with seeding each
account/authority with a 24 hour periodic sync
- enhanced the "adb shell dumpsys content" output to show the
periodic syncs and when they will next run
ontentResolver.java
ontentService.java
ContentService.aidl
eriodicSync.aidl
eriodicSync.java
yncManager.java
yncQueue.java
yncStatusInfo.java
yncStorageEngine.java
b858dfda5012a1040927ed62c3bb856c3294d882 02-Feb-2010 Dianne Hackborn <hackbod@google.com> Implement system data migration support.

This adds three new features:

- <original-package android:name="com.foo" /> manifest tag.
This allows an .apk to specify another package it originally came from,
propagating all state and data from the old to new package.

- <adopt-permissions android:name="com.foo" /> manifest tag.
In some more complicated cases, a new .apk may be a combination
of multiple older .apks that each declared their own permissions.
This allows you to propagate the permissions from these other
.apks into the new one.

- A new system/etc/updatecmds directory.
You can place files here which describe data files to move from
one package to another. (See below for details.)

Also in this change: we now clean up the data directories of
.apks that disappear from the system image, and some improvements
to logging and reporting error messages.

A typical file in the updatecmds directory looks like this:

-------
com.google.android.gsf:com.google.android.providers.talk
databases/talk.db
com.google.android.gsf:com.google.android.googleapps
databases/gls.db
-------

This says that for com.google.android.sfs, there are two packages to
move files from:

From com.google.android.providers.talk, the file databases/talk.db.
From com.google.android.googleapps, the file databases/gls.db

As part of moving the file, its owner will be changed from the old
package to whoever is the owner of the new package's data directory.

If those two files had existed, after booting you would now have the
files:

/data/data/com.google.android.gsf/databases/talk.db
/data/data/com.google.android.gsf/databases/gls.db

Note that all three of these facilities assume that the older .apk
is completely removed from the newer system. The WILL NOT work
correctly if the older .apk still remains.
m/PackageParser.java
08675a3376819a82aa5ab344bc3e7b1635c30b05 28-Jan-2010 Suchi Amalapurapu <asuchitra@google.com> Apps on sdcard: Add new broadcasts

Add new broadcasts ACTION_MEDIA_RESOURCES_AVAILABLE and
ACTION_MEDIA_RESOURCES_UNAVAILABLE that get broadcast by
PackageManagerService when sdcard gets mounted/unmounted
by MountService so that packages on sdcard get recognized by
various system services as being installed/available or
removed/unavailable by the system.
The broadcasts are sent before the actual package cleanup which includes
mounting/unmounting the packages and we force a gc right after so
that any lingering file references to resources on sdcard get
released.
ntent.java
m/RegisteredServicesCache.java
556d350a4d68be72c74b30ca9cd87a152f8512c2 02-Feb-2010 San Mehat <san@google.com> StorageManager: API_CHANGE: Move StorageManager into android.storage

Signed-off-by: San Mehat <san@google.com>
ontext.java
9ec33186c9f35e5dee23c65fb51873636694258e 02-Feb-2010 Oscar Montemayor <oam@google.com> Merge "Apps on SD project. Javadoc fixes for new method in PackageManager class."
c9d8175f40691228e25f0dd924cc2453a6f08e10 01-Feb-2010 San Mehat <san@google.com> Context: API_CHANGE: Add support for retrieving StorageManager

Signed-off-by: San Mehat <san@google.com>
ontext.java
cdc428bdb73db7e0d3403b6515c65573b182e218 01-Feb-2010 Oscar Montemayor <oam@google.com> Apps on SD project.
Javadoc fixes for new method in PackageManager class.
m/PackageManager.java
539d3c475f44b1499499a8b70375a192545cf113 30-Jan-2010 Oscar Montemayor <oam@google.com> Apps on SD card project.
Refactored recommendAppInstallLocation(..) method in PackageManager by making it an instance method.
Since PackageManager has only abstarct instance methods, moved implementation to ApplicationContext.ApplicationPackageManager class, in line with the rest of the method
implementations. Tah way, chage is consistent with best coding practices.
Also MockPackageManager received the additional method.
m/PackageManager.java
1228d0a1dddb8c03474ee3823499936a8b1d850c 28-Jan-2010 Oscar Montemayor <oam@google.com> Apps on SD card project.
This class implements heuristics to determine best app install location, without looking at the package flags (pre-parsing stage).
m/PackageManager.java
a322dfa47eab8d49eeb71b5245de7147c0207137 28-Jan-2010 Fred Quintana <fredq@google.com> am 6f3e1e27: am 9a400fa4: Merge "initialize sync adapters that get installed while the system is running bug http://b/issue?id=2360782" into eclair

Merge commit '6f3e1e27a697d3e64bf73792c1007135319ff0d5'

* commit '6f3e1e27a697d3e64bf73792c1007135319ff0d5':
initialize sync adapters that get installed while the system is running
8aa2e8939c61d788cbc192098465e79f584e173a 22-Jan-2010 Dianne Hackborn <hackbod@google.com> More device admin work: description, policy control.

There is now a description attribute associated with all components,
that can supply user-visible information about what the component does.
We use this to show such information about device admins, and wallpapers
are also updated to be able to show this in addition to the existing
description in their meta-data.

This also defines security control for admins, requiring that they
declare the policies they will touch, and enforcing that they do
so to be able to use various APIs.
m/ComponentInfo.java
m/PackageParser.java
508370f0cb5d3e03b1bcf04f1164ea1f384f496f 26-Jan-2010 David Turner <digit@google.com> Merge "Make PackageManager unpack gdbserver binaries at installation time."
d1df8ac6d076ef15ba8857211da2e447b6505fb3 26-Jan-2010 San Mehat <san@google.com> NetworkManagementService: Start service when SystemServer starts up

Signed-off-by: San Mehat <san@google.com>
ontext.java
307da1a46b4c9b711bafe8fbaaa6b98e8868c18e 21-Jan-2010 Fred Quintana <fredq@google.com> enhance the sync manager backoff logic and add support for retry-after

moved SyncQueue and SyncOperation into their own top-level classes
to ease maintainability and testing6

removed some dead code
yncManager.java
yncOperation.java
yncQueue.java
yncResult.java
yncStorageEngine.java
1edab2b551995a8df25f4b533405d6003b8b8b66 22-Jan-2010 David 'Digit' Turner <digit@google.com> Make PackageManager unpack gdbserver binaries at installation time.

Native-debuggable packages contain a lib/<abi>/gdbserver executable.
This patch ensures that the package manager will copy it to the
proper location (/data/data/<appname>/lib) at installation time.

Note that such packages are marked with a new ApplicationInfo flag
named FLAG_NATIVE_DEBUGGABLE, to be used later by the Activity
Manager.
m/ApplicationInfo.java
d1ab01682b136b586aac94334f976f03c762b3c7 22-Jan-2010 Kenny Root <kroot@google.com> Add extra resources field for ApplicationInfo

Allow ApplicationInfo to track multiple files it wants to use as
resources by adding a string array to its public definition.

Change-Id: Ieffc4b1755270520b59c4e5a3c084e86aef02346
m/ApplicationInfo.java
3214839482aebcdfccc7cec0b0849739ef46fa68 22-Jan-2010 Kenny Root <kroot@google.com> Unhide resource-related API calls in Context

Context hides methods related to the underlying functioning of
resources which are readily available from the ApplicationInfo
object. This change allows getting access to information
without having to make PackageManager calls for it.

Change-Id: Icf6a9da652dad8175bd11b5cd81a924181070373
ontext.java
6f3e1e27a697d3e64bf73792c1007135319ff0d5 22-Jan-2010 Fred Quintana <fredq@google.com> am 9a400fa4: Merge "initialize sync adapters that get installed while the system is running bug http://b/issue?id=2360782" into eclair

Merge commit '9a400fa4d3e89a3ab3669c0aa2ef6676020646d1' into eclair-plus-aosp

* commit '9a400fa4d3e89a3ab3669c0aa2ef6676020646d1':
initialize sync adapters that get installed while the system is running
3a19833750de7f8872ad44892054e409b2d77614 22-Jan-2010 Kenny Root <kroot@google.com> Multiple asset adding in one shot for AssetManager

Add a hidden convenience method to allow adding multiple assets
to an AssetManager at once.

Change-Id: I56753a85904a2c8e9a405cba2ea3cb85ec40e1cc
es/AssetManager.java
44037e6c41f8167bf5ac51fcb684ad28b20073ce 21-Jan-2010 Fred Quintana <fredq@google.com> initialize sync adapters that get installed while the system is running
bug http://b/issue?id=2360782
yncManager.java
d68478467e3f837511196c80891d7245d0e163df 13-Jan-2010 Dianne Hackborn <hackbod@google.com> First pass at new device policy and administration APIs.

This adds new DevicAdmin, DevicePolicyManager, and DeviceAdminInfo classes.
See the java docs for each on documentation on them. Basically: a DeviceAdmin
is what you derive from to administer a device; DevicePolicyManager is what you
use to apply and check your policy requirements and perform other administration
tasks.
ontext.java
130a8b71bbfb93c1cbe0642e7f2cb97322f899d1 15-Jan-2010 Ficus Kirkpatrick <ficus@android.com> Add Dialog.setOnShowListener() to the public API.
ialogInterface.java
8d528c85d00cea5168ed6842f17c7f5afae338c4 15-Jan-2010 Suchi Amalapurapu <asuchitra@google.com> Fix build error
m/ApplicationInfo.java
af8e9f4805643f90a9dc0ecfa119e0a860c12f8a 12-Jan-2010 Suchi Amalapurapu <asuchitra@google.com> app install on sdcard. provide skeleton implementation
to install an app on sdcard, just resources.
Add new install path for /asec in installd.
ignore . when checking for apk path since the sdcard packages id'ed
by package name.
Add new -s option to adb shell pm
Refactor fwd locked from scanMode to ApplicationInfo.
Add new flag for sd install
Add new parse flags for fwd locking and installing on sdcard
New mock api's in PackageManagerService to invoke MountService api's. These
will be refactored again and so have been wrapped internally.
Some error codes in PackageManager
Changes in PackageManagerService to use mPath and mScanPath during installation
and switch to using PackageParser.Package.applicationInfo attributes for
source and public resource directories.
Some known issues that will be addressed later
using system_uid for now. needs some tinkering with uid and packagesetting creation to use the actual app uid
error handling from vold not very robust. ignoring lot of things for now
sending a delayed destroy to delete packages. will revisit later
revisit temp file creation later. just copy for now
m/ApplicationInfo.java
m/IPackageManager.aidl
m/PackageManager.java
m/PackageParser.java
a94e7afb28c6bd9af6f2b0142a577086399066b2 13-Jan-2010 Bjorn Bringert <bringert@android.com> Remove Intent.ACTION_GLOBAL_SEARCH

I added Intent.ACTION_GLOBAL_SEARCH a little while ago, since
I thought we needed it to be different from the old
SearchManager.INTENT_ACTION_GLOBAL_SEARCH. Since GlobalSearch is
no longer built, reusing SearchManager.INTENT_ACTION_GLOBAL_SEARCH
should be fine.

Change-Id: If3a11a77a8e1d9940cf2b20817a60888cdd9d69f
ntent.java
44641d3db3b5fd5c7616c8a646ec8b6af20baa18 09-Jan-2010 Paul Westbrook <pwestbro@google.com> Bug 2321983

Move SYNC_DETAILS from framework/base to the gsf clientlib
ventLogTags.logtags
980a938c1c9a6a5791a8240e5a1e6638ab28dc77 09-Jan-2010 Romain Guy <romainguy@android.com> Deprecate fill_parent and introduce match_parent.
Bug: #2361749.
ackage.html
046dd0111c834a16d812ef41f9f12b6e127e6c0c 08-Jan-2010 Tom O'Neill <tomo@google.com> Merge "ContentResolver.query() includes performance considerations"
0ba1cb06c6a0332b76c469bd54dcf6f98128ac82 08-Jan-2010 Tom O'Neill <tomo@google.com> ContentResolver.query() includes performance considerations

Mention the desirability of using "?"-substitution in the where clause,
and reemphasize the importance of using an explicit projection.

Change-Id: Iaa489d50db409f34e78bcd55253e5a4e53445cf2
ontentResolver.java
edc5189c33de03f3e2f5f73edc0e007992b933c9 07-Jan-2010 Doug Zongker <dougz@android.com> change remaining frameworks/base Gservices to Secure settings

Change-Id: I61bdb05a2526523700c2833154d5a4133881ef10
yncManager.java
4cb8b8ffdf7cc1d4413c7837a4f1a056fc847e50 04-Jan-2010 Romain Guy <romainguy@google.com> Merge "Fix typo in ColorStateList documentation."
79dc8ccddd846816d4e0e55405ad0dbefa5b0ff6 04-Jan-2010 Romain Guy <romainguy@android.com> Fix typo in ColorStateList documentation.
es/ColorStateList.java
1337b012f8e18c725b1ec17b456dc57a084d594d 04-Jan-2010 Dan Egnor <egnor@google.com> Fix DropBox reference in SDK comment. (Fix SDK build.)
ontext.java
e38d58bf890c03eb034afd18c62c730c7d735f1c 31-Dec-2009 Dan Egnor <egnor@google.com> Remove Google-specific (or only-used-by-Google-code) classes.

Fix a small typo in Context javadoc.
ontext.java
f0108cda21bec61418b24aa6217406072780b5d5 22-Dec-2009 Tom Taylor <tomtaylor@google.com> resolved conflicts for merge of ad2fa35d to master

Change-Id: Ia4362cd48ac0689b91003943a4cd9660da72ff90
ee0511d76ce0ceae2f54782ca33e400e62d08137 22-Dec-2009 Dianne Hackborn <hackbod@google.com> Fix issue #1154972: clone defined, but class doesn't implement Cloneable
ntent.java
d4a4729c0cac582a2dcec7c8cfb316b81885a0f0 21-Dec-2009 Tom Taylor <tomtaylor@google.com> Update imports to android-common

Several files were moved to android-common. Update all the references
to import those files from the new location.
ntent.java
ntentFilter.java
yncStorageEngine.java
m/PackageParser.java
m/RegisteredServicesCache.java
es/Resources.java
es/StringBlock.java
es/TypedArray.java
es/XmlBlock.java
009909b417ba0dd79aad5e9ec887e0562fbb148b 16-Dec-2009 Xavier Ducrohet <xav@android.com> am b43b35a0: am e6547423: Merge change I10073d50 into eclair

Merge commit 'b43b35a034ad667ba749270537155e7534906153'

* commit 'b43b35a034ad667ba749270537155e7534906153':
Add Annotation for optional features.
b43b35a034ad667ba749270537155e7534906153 16-Dec-2009 Xavier Ducrohet <xav@android.com> am e6547423: Merge change I10073d50 into eclair

Merge commit 'e6547423e3ed7d84f0d7fee8199e5bbb015fd8c3' into eclair-plus-aosp

* commit 'e6547423e3ed7d84f0d7fee8199e5bbb015fd8c3':
Add Annotation for optional features.
2c5634198a4438e0d6be3e8cc3ae5fc6b0fdf588 16-Dec-2009 Fred Quintana <fredq@google.com> resolved conflicts for merge of 5a374f94 to master
3274b9b7da6f3ee0ee0285deb955907adec52bad 15-Dec-2009 Xavier Ducrohet <xav@android.com> Add Annotation for optional features.

This is used by the SDK to display available features in the
editors.

Change-Id: I10073d503d1b3dcb92a5dc526cd054285b85fa3a
m/PackageManager.java
274dc9d35fdf5d0464f74071a9a8f14e497d4d5f 11-Dec-2009 Fred Quintana <fredq@google.com> moved the hidden sync helpers out of the framework
bstractSyncableContentProvider.java
bstractTableMerger.java
bstractThreadedSyncAdapter.java
yncAdapter.java
yncStateContentProviderHelper.java
yncableContentProvider.java
empProviderSyncAdapter.java
empProviderSyncResult.java
74a76d5e071ba11eb92c92933fa5de338010374d 15-Dec-2009 Dianne Hackborn <hackbod@google.com> am 83652ebf: am 3a3fd2ba: Merge change Iaf1f0918 into eclair-mr2

Merge commit '83652ebfe1963bcecdcf24383165904223baca6e'

* commit '83652ebfe1963bcecdcf24383165904223baca6e':
Implement API to have new broadcasts replace existing broadcasts.
1c633fc89bae9bf0af6fe643ac7ad2e744f27bed 09-Dec-2009 Dianne Hackborn <hackbod@google.com> Implement API to have new broadcasts replace existing broadcasts.

Use this in various places where it should serve no purpose to deliver
both broadcasts. This is intended to reduce somewhat the flurry of
broadcasts that we churn through during boot.
ntent.java
34bb11536790337ae354d8a386cfc97c859e13e8 10-Dec-2009 Fred Quintana <fredq@google.com> am c7afd922: am 97ef7637: - move the EventLog stuff out of ATSA - move the google calendar sync adapter settings out of Settings.java

Merge commit 'c7afd9221babd89ca4acd859c608f41c29f3731b'

* commit 'c7afd9221babd89ca4acd859c608f41c29f3731b':
- move the EventLog stuff out of ATSA
36b1907693a4c6f4462018a683579f4c119d98bf 10-Dec-2009 Doug Zongker <dougz@android.com> am fc96523b: am b3c1f1cf: Merge change I7daa7ae8 into eclair-mr2

Merge commit 'fc96523b94ddaad1da39bee0d6861e2186d8479c'

* commit 'fc96523b94ddaad1da39bee0d6861e2186d8479c':
move event log tags used by SyncAdapter into a local .logtags file
e11a00111977103a6549916e585819bb32e4f21a 10-Dec-2009 Bjorn Bringert <bringert@android.com> am c0c7b32e: am 45e77ce3: Merge change I154386b1 into eclair-mr2

Merge commit 'c0c7b32e0b5ab6af749db638a7f08d8a3767d167'

* commit 'c0c7b32e0b5ab6af749db638a7f08d8a3767d167':
Use unbundled QSB for global search
97ef7637c6799e72956db8e08192539f1b1942f6 10-Dec-2009 Fred Quintana <fredq@google.com> - move the EventLog stuff out of ATSA
- move the google calendar sync adapter settings out of Settings.java
bstractThreadedSyncAdapter.java
2ec6c5699181316e5a5c2cd293c006ac4a8bb101 10-Dec-2009 Fred Quintana <fredq@google.com> am 328c0e79: - removed the concept of Entity from the ContentProvider APIs - removed the parcelling ability from Entity and EntityIterator and made them public - added an EntityIterator abstract implementation that allow easy wrapping of a Cursor - changed the VCard c

Merge commit '328c0e7986aa6bb7752ec6de3da9c999920bb55f' into eclair-mr2-plus-aosp

* commit '328c0e7986aa6bb7752ec6de3da9c999920bb55f':
- removed the concept of Entity from the ContentProvider APIs
bstractCursorEntityIterator.java
syncQueryHandler.java
ontentProvider.java
ontentProviderClient.java
ontentProviderNative.java
ontentResolver.java
ursorEntityIterator.java
ntity.aidl
ntity.java
ntityIterator.java
ContentProvider.java
EntityIterator.java
b3c1f1cff4ecf5c88a0bd00d421beeb022bb41e4 10-Dec-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change I7daa7ae8 into eclair-mr2

* changes:
move event log tags used by SyncAdapter into a local .logtags file
9b902a5266603ac969dfc64eee48c51706b54a83 10-Dec-2009 Dianne Hackborn <hackbod@google.com> am eb68a226: am af9788a9: Merge change Ia53c6725 into eclair-mr2

Merge commit 'eb68a226563f60265663f1688dda77c4f909e5de'

* commit 'eb68a226563f60265663f1688dda77c4f909e5de':
Add bindService API to not bring ot foreground.
630432e4249ca775e28eedeeb28d1f367ca45296 10-Dec-2009 Ken Shirriff <kens@google.com> am d44c2f2c: am 1270e2e2: Merge change I96ddd6e2 into eclair-mr2

Merge commit 'd44c2f2c85c8720763837b89a8988b6e5cc248bf'

* commit 'd44c2f2c85c8720763837b89a8988b6e5cc248bf':
Migration to TrafficStats.
936b1ba33dc20fdbed3e2d2e8567d8b472998c7d 10-Dec-2009 Trevor Johns <tjohns@google.com> am 15650af4: am 7e42e8f3: am d59fb6e7: Updating list of standard Intents in android.content.Intent documentation.

Merge commit '15650af4ab1df7fb84839162f9409d88cb4a3ccc'

* commit '15650af4ab1df7fb84839162f9409d88cb4a3ccc':
Updating list of standard Intents in android.content.Intent
f7ae3c958b4888969f8ee6b0a9a5226680397a94 10-Dec-2009 Fred Quintana <fredq@google.com> am 517ebaa6: am 18ff0e32: am 1067c3cb: Merge change Ia5ef9acd into eclair

Merge commit '517ebaa69a9c4baed99bb5667b956dab129c96e7'

* commit '517ebaa69a9c4baed99bb5667b956dab129c96e7':
remove an old STOPSHIP comment
45e77ce36ae1d26bcf35afb1f7662d7b6fb08212 10-Dec-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change I154386b1 into eclair-mr2

* changes:
Use unbundled QSB for global search
45e6dbf90b24543c90f8c6b0426e9b70c934838d 08-Dec-2009 Doug Zongker <dougz@android.com> move event log tags used by SyncAdapter into a local .logtags file
ventLogTags.logtags
yncAdapter.java
328c0e7986aa6bb7752ec6de3da9c999920bb55f 07-Dec-2009 Fred Quintana <fredq@google.com> - removed the concept of Entity from the ContentProvider APIs
- removed the parcelling ability from Entity and EntityIterator and made them public
- added an EntityIterator abstract implementation that allow easy wrapping of a Cursor
- changed the VCard code to use the new APIs
bstractCursorEntityIterator.java
syncQueryHandler.java
ontentProvider.java
ontentProviderClient.java
ontentProviderNative.java
ontentResolver.java
ursorEntityIterator.java
ntity.aidl
ntity.java
ntityIterator.java
ContentProvider.java
EntityIterator.java
3c50ef6f665ab22cdb50c76bb31283e6bac47fc6 09-Dec-2009 Bjorn Bringert <bringert@android.com> Use unbundled QSB for global search

This obsoletes the following:
- The need to run SearchDialog in the system process.
- The global search mode code in SearchDialog.
- The GlobalSearch package.
- The search widget built into Launcher.

I will remove these in future changes.

Change-Id: I154386b1d6be73cfeab8376b6959a1dc5483e5f0
ntent.java
09c916bccbf236ccd0a2c80941e28cc55006e02a 08-Dec-2009 Dianne Hackborn <hackbod@google.com> Add bindService API to not bring ot foreground.

Add a new flag for bindService that tells the system to not bring the
target service's process in to the foreground scheduling class. This is
used by the sync system to not cause the current sync adapter to come to
the foreground as it is running.

Also some small improvements to the debug output of the process list
of oom adj and scheduling info.
ontext.java
yncManager.java
1719a39a4c0ff3afbf9c9e5f03f20ba50f490902 08-Dec-2009 Ken Shirriff <kens@google.com> Migration to TrafficStats.

TrafficStats is the SDK version of NetStat.
bstractThreadedSyncAdapter.java
empProviderSyncAdapter.java
cd337edc8511f56847673409867f43297b586dfa 08-Dec-2009 Trevor Johns <tjohns@google.com> am d59fb6e7: Updating list of standard Intents in android.content.Intent documentation.

Merge commit 'd59fb6e7435b57d83662b196f5430e6f2bc5427b' into eclair-plus-aosp

* commit 'd59fb6e7435b57d83662b196f5430e6f2bc5427b':
Updating list of standard Intents in android.content.Intent
7e42e8f33446107d6abcbb69f4624abf1bba5fad 08-Dec-2009 Trevor Johns <tjohns@google.com> am d59fb6e7: Updating list of standard Intents in android.content.Intent documentation.

Merge commit 'd59fb6e7435b57d83662b196f5430e6f2bc5427b' into eclair-mr2

* commit 'd59fb6e7435b57d83662b196f5430e6f2bc5427b':
Updating list of standard Intents in android.content.Intent
d59fb6e7435b57d83662b196f5430e6f2bc5427b 20-Nov-2009 Trevor Johns <tjohns@google.com> Updating list of standard Intents in android.content.Intent
documentation.
ntent.java
c1dc8e4e24509a99dfc1abac668d3aa5e36a7d6c 08-Dec-2009 Fred Quintana <fredq@google.com> am 1067c3cb: Merge change Ia5ef9acd into eclair

Merge commit '1067c3cbab73a4bc75a2ebd2e3c51077db96fa24' into eclair-plus-aosp

* commit '1067c3cbab73a4bc75a2ebd2e3c51077db96fa24':
remove an old STOPSHIP comment
18ff0e329b314e033e4bfb92b24ecab961f0eb99 08-Dec-2009 Fred Quintana <fredq@google.com> am 1067c3cb: Merge change Ia5ef9acd into eclair

Merge commit '1067c3cbab73a4bc75a2ebd2e3c51077db96fa24' into eclair-mr2

* commit '1067c3cbab73a4bc75a2ebd2e3c51077db96fa24':
remove an old STOPSHIP comment
1067c3cbab73a4bc75a2ebd2e3c51077db96fa24 08-Dec-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change Ia5ef9acd into eclair

* changes:
remove an old STOPSHIP comment
a5ef9acdf4dc31bfe4756b933806070355d6aa3f 07-Dec-2009 Fred Quintana <fredq@google.com> remove an old STOPSHIP comment
ontext.java
9946639f74e73b85aa91370f812bd27912e8c9ab 04-Dec-2009 Daisuke Miyakawa <dmiyakawa@google.com> am 8ad6ec2e: am 8280c2b1: Implement new MockContentProvider. Also make ContentProvider aware of the class.

Merge commit '8ad6ec2eb4a58a6dad34be60d49f32a53f2419f4'

* commit '8ad6ec2eb4a58a6dad34be60d49f32a53f2419f4':
Implement new MockContentProvider. Also make ContentProvider aware of the class.
5ff9239f4f86da5c44b6875e6339b231c926a47e 04-Dec-2009 Fred Quintana <fredq@google.com> am a8dd0a54: am 298de218: am 0ce8431c: Merge change Iaa7edda4 into eclair

Merge commit 'a8dd0a545409af281b73e483dc203f6e3f8d1de6'

* commit 'a8dd0a545409af281b73e483dc203f6e3f8d1de6':
don't reschedule syncs that failed with a tooManyRetries error
8280c2b15f6875b2d387c05df23d264864eb9cd5 22-Oct-2009 Daisuke Miyakawa <dmiyakawa@google.com> Implement new MockContentProvider. Also make ContentProvider aware of the class.

Rename the old MockContentProvider to MockIContentProvider since it is
more appropriate name.

Detail:
Current developers inevitably depend on the backend used by ContentProvider,
which is useful but not ideal nor "testable" from the view of them.

Current MockContentResolver only accepts exact "ContentProvider" class, not
IContentProvider interface, since we want to hide "IContentProvider" while
the old MockContentProvider implements IContentProvider and as a result some
methods we want to hide may be exposed to the public SDK now and probably
for the future.

On the other hand, ContentProvider is not interface but an exact class
heavily depends on the internal logic and not suitable for external
developers to use for tests.

The new MockContentProvider introduces the mock implementation
for ContentProvider.
It extends ContentProvider, so "is" ContentProvider, but tries to avoid
depending on any backend System like IPC in Android, etc.
This should be useful from the view of application developers who do not
want to be confused with ContentProvider/ContentResolver backend
implementation "at all" and want to use MockContentResolver without
any other ContentProvider implementations tightly connected to the
external worlds.
ontentProvider.java
ac1cd3181acfc0a2783e48e9d80ef06dd12b9a3c 04-Dec-2009 Fred Quintana <fredq@google.com> am 0ce8431c: Merge change Iaa7edda4 into eclair

Merge commit '0ce8431c15078e095a22a123dbabcd91049a9652' into eclair-plus-aosp

* commit '0ce8431c15078e095a22a123dbabcd91049a9652':
don't reschedule syncs that failed with a tooManyRetries error
298de218c540eab6c4e6c3415ab8a5c985c57772 04-Dec-2009 Fred Quintana <fredq@google.com> am 0ce8431c: Merge change Iaa7edda4 into eclair

Merge commit '0ce8431c15078e095a22a123dbabcd91049a9652' into eclair-mr2

* commit '0ce8431c15078e095a22a123dbabcd91049a9652':
don't reschedule syncs that failed with a tooManyRetries error
0ce8431c15078e095a22a123dbabcd91049a9652 04-Dec-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change Iaa7edda4 into eclair

* changes:
don't reschedule syncs that failed with a tooManyRetries error
aa7edda4719dc0accbc29ff917b4280f6b600675 03-Dec-2009 Fred Quintana <fredq@google.com> don't reschedule syncs that failed with a tooManyRetries error
yncManager.java
8da7873f94d5a3722b5bb2dd73d51377ce3dff8a 03-Dec-2009 Joe Onorato <joeo@android.com> am dbed5350: am b28632a5: am c7a63eea: Add a new field to Intent that allows you to give a hint about what on screen caused the intent to be sent.

Merge commit 'dbed53504f515337ccc2f60248bb589dff0f24fb'

* commit 'dbed53504f515337ccc2f60248bb589dff0f24fb':
Add a new field to Intent that allows you to give a hint about what on screen caused the intent to
b28632a5206d11844db39ca1ab5f64a99ec74e29 03-Dec-2009 Joe Onorato <joeo@android.com> am c7a63eea: Add a new field to Intent that allows you to give a hint about what on screen caused the intent to be sent.

Merge commit 'c7a63eea8d3d346addaaf892b5bbe0aa80651640' into eclair-mr2

* commit 'c7a63eea8d3d346addaaf892b5bbe0aa80651640':
Add a new field to Intent that allows you to give a hint about what on screen caused the intent to
03cd88b3ffee71fc22a2355eb462b6f99891411c 03-Dec-2009 Joe Onorato <joeo@android.com> am c7a63eea: Add a new field to Intent that allows you to give a hint about what on screen caused the intent to be sent.

Merge commit 'c7a63eea8d3d346addaaf892b5bbe0aa80651640' into eclair-plus-aosp

* commit 'c7a63eea8d3d346addaaf892b5bbe0aa80651640':
Add a new field to Intent that allows you to give a hint about what on screen caused the intent to
c7a63eea8d3d346addaaf892b5bbe0aa80651640 03-Dec-2009 Joe Onorato <joeo@android.com> Add a new field to Intent that allows you to give a hint about what on screen caused the intent to
be sent.
ntent.java
8a1b6decfbee41bd513540d86423258743cf8d00 03-Dec-2009 Dianne Hackborn <hackbod@google.com> am e2585127: am 9ed7dc10: am 5886050f: Merge change I0d8f7593 into eclair

Merge commit 'e2585127974ce972a013407e2af95d8776a99a8e'

* commit 'e2585127974ce972a013407e2af95d8776a99a8e':
Fix issue #2296457: PackageManager.addPackageToPreferred needs to a no-op
9ed7dc10d263a505da32522139098f085fee811a 02-Dec-2009 Dianne Hackborn <hackbod@google.com> am 5886050f: Merge change I0d8f7593 into eclair

Merge commit '5886050fad97923c33cbc831fe07a5b1746b2b58' into eclair-mr2

* commit '5886050fad97923c33cbc831fe07a5b1746b2b58':
Fix issue #2296457: PackageManager.addPackageToPreferred needs to a no-op
0b63b9fb5666347f610e02f2ef5516f27907a3a7 02-Dec-2009 Dianne Hackborn <hackbod@google.com> am 5886050f: Merge change I0d8f7593 into eclair

Merge commit '5886050fad97923c33cbc831fe07a5b1746b2b58' into eclair-plus-aosp

* commit '5886050fad97923c33cbc831fe07a5b1746b2b58':
Fix issue #2296457: PackageManager.addPackageToPreferred needs to a no-op
a7ca0e5e320bbb643f8bc9feb4717dbc5e78e0b9 01-Dec-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2296457: PackageManager.addPackageToPreferred needs to a no-op

Change-Id: I0d8f75938226e1bb49cf7b1154445631b0bb0bc9
m/PackageManager.java
506de3b57667e76cf92086b30d007c21c2cebbfd 25-Nov-2009 Dianne Hackborn <hackbod@google.com> am 5417933a: am d1689ea8: am 8e1985d4: Merge change Ie552036f into eclair

Merge commit '5417933a456f23a0ca30bb73632feee5dd5f8e46'

* commit '5417933a456f23a0ca30bb73632feee5dd5f8e46':
Fix issue #2286419: maxSdkVersion causes existing apps to disappear.
d1689ea8b7ec4b36865072aa23a6622d3c5a9513 25-Nov-2009 Dianne Hackborn <hackbod@google.com> am 8e1985d4: Merge change Ie552036f into eclair

Merge commit '8e1985d4f28bfa9bea7db05f324759991d4e59e9' into eclair-mr2

* commit '8e1985d4f28bfa9bea7db05f324759991d4e59e9':
Fix issue #2286419: maxSdkVersion causes existing apps to disappear.
31826a5ac636339abca8b0b5d97d4cd4d750794b 25-Nov-2009 Dianne Hackborn <hackbod@google.com> am 8e1985d4: Merge change Ie552036f into eclair

Merge commit '8e1985d4f28bfa9bea7db05f324759991d4e59e9' into eclair-plus-aosp

* commit '8e1985d4f28bfa9bea7db05f324759991d4e59e9':
Fix issue #2286419: maxSdkVersion causes existing apps to disappear.
935ef2c4f43eaa849f62055c383d8fd7dcf3eead 25-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2286419: maxSdkVersion causes existing apps to disappear.

Change-Id: Ie552036f4ea673e0ce9981ff1cbd1fbe08678510
m/PackageParser.java
a8529f68671a8a118751cb6ad577f44eaf076b96 18-Nov-2009 Oscar Montemayor <oam@google.com> Encrypted File Systems Project. Installer modifications.
Started to modify isntaller for data redirection to a secure location.
yncStorageEngine.java
187f0749b8412553a0b8ff6abecc1d956653e03b 20-Nov-2009 Dianne Hackborn <hackbod@google.com> am 79374643: am b9ab7126: am 524812fb: Merge change I7d40ad9a into eclair

Merge commit '7937464319133d478d5e8b386e9d08668eddd8a9'

* commit '7937464319133d478d5e8b386e9d08668eddd8a9':
More on issue #2271640: Fix wallpaper etc docs
b9ab71263ebff601a7c5e00258d92493de85fb36 20-Nov-2009 Dianne Hackborn <hackbod@google.com> am 524812fb: Merge change I7d40ad9a into eclair

Merge commit '524812fbf583db5053ff56f7a146fa8fe9296742' into eclair-mr2

* commit '524812fbf583db5053ff56f7a146fa8fe9296742':
More on issue #2271640: Fix wallpaper etc docs
166569f62aba3b426f45b9f1736928f87f8bac4e 20-Nov-2009 Dianne Hackborn <hackbod@google.com> am 524812fb: Merge change I7d40ad9a into eclair

Merge commit '524812fbf583db5053ff56f7a146fa8fe9296742' into eclair-plus-aosp

* commit '524812fbf583db5053ff56f7a146fa8fe9296742':
More on issue #2271640: Fix wallpaper etc docs
08ee42ce864dc2b3ca2ca92af7220a3681d06835 20-Nov-2009 Dianne Hackborn <hackbod@google.com> More on issue #2271640: Fix wallpaper etc docs

Publish the features developers may be interested in.

Change-Id: I7d40ad9a9f4b9770e2f8dd1b0a729b0d322c062e
m/PackageManager.java
14d9431a5ff69d0b0fad7adbe3404a052aa9251b 18-Nov-2009 Dianne Hackborn <hackbod@google.com> am 08a22a20: am a2f4c254: am 1d62ea9d: Fix issue #2249821: Unable to start passion in safe mode

Merge commit '08a22a200739e0e14784e1c7139ed78e50c15dfa'

* commit '08a22a200739e0e14784e1c7139ed78e50c15dfa':
Fix issue #2249821: Unable to start passion in safe mode
a2f4c2543a7f78b77491c701230e8f406dcca540 18-Nov-2009 Dianne Hackborn <hackbod@google.com> am 1d62ea9d: Fix issue #2249821: Unable to start passion in safe mode

Merge commit '1d62ea9d8c2646d198b6967e2c6ae3dad5c18f9e' into eclair-mr2

* commit '1d62ea9d8c2646d198b6967e2c6ae3dad5c18f9e':
Fix issue #2249821: Unable to start passion in safe mode
abcb849d098eb7d3b7669247209f4715e75ab585 18-Nov-2009 Dianne Hackborn <hackbod@google.com> am 1d62ea9d: Fix issue #2249821: Unable to start passion in safe mode

Merge commit '1d62ea9d8c2646d198b6967e2c6ae3dad5c18f9e' into eclair-plus-aosp

* commit '1d62ea9d8c2646d198b6967e2c6ae3dad5c18f9e':
Fix issue #2249821: Unable to start passion in safe mode
1d62ea9d8c2646d198b6967e2c6ae3dad5c18f9e 17-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2249821: Unable to start passion in safe mode

Holding down the trackball now works.

Also fix a little API check warning from Intent.

Change-Id: Icb1f901535cb521917bf7f847a93c4ff7861d20e
ntent.java
87e5afb6e4483679861df8f589b5d9134ae69357 17-Nov-2009 Dianne Hackborn <hackbod@google.com> am 003ac2c8: am beaf87bf: am 60d7db4c: Fix #2262593: 42 ANR reports from android.process.acore

Merge commit '003ac2c8e9a684a28180dac01340c759bf321cfd'

* commit '003ac2c8e9a684a28180dac01340c759bf321cfd':
Fix #2262593: 42 ANR reports from android.process.acore
beaf87bfec29378b27bd28c1d1d2c4db1116d7ce 17-Nov-2009 Dianne Hackborn <hackbod@google.com> am 60d7db4c: Fix #2262593: 42 ANR reports from android.process.acore

Merge commit '60d7db4c3e3d60060e7ac021445ea1f510b7a1fb' into eclair-mr2

* commit '60d7db4c3e3d60060e7ac021445ea1f510b7a1fb':
Fix #2262593: 42 ANR reports from android.process.acore
09299282128ccb67eb74f1a20574caf414866e81 17-Nov-2009 Dianne Hackborn <hackbod@google.com> am 60d7db4c: Fix #2262593: 42 ANR reports from android.process.acore

Merge commit '60d7db4c3e3d60060e7ac021445ea1f510b7a1fb' into eclair-plus-aosp

* commit '60d7db4c3e3d60060e7ac021445ea1f510b7a1fb':
Fix #2262593: 42 ANR reports from android.process.acore
60d7db4c3e3d60060e7ac021445ea1f510b7a1fb 17-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix #2262593: 42 ANR reports from android.process.acore

There was a lock in AssetManager that purported to be per-instance (mSync)
but was actually static. A lot of code used it like it was per-instance,
but this would actually block all instances. This is now changed to fix
the name and make everything except the actual static data lock on the
specific AssetManager instance.

Change-Id: Ie8e9ad60f962184e76b2301f7a2790d0c2487063
es/AssetManager.java
abc577250460b8042898339288cac0fac8723470 15-Nov-2009 Jean-Baptiste Queru <jbq@google.com> merge from open-source master

Merge commit 'goog/stage-korg-master' into HEAD
05ffc255c0232b5d4663b6281b1c6c914ed3b585 12-Nov-2009 Fred Quintana <fredq@google.com> always preserve rows for accounts with type of localhost even if the account manager doesn't know about them
bstractSyncableContentProvider.java
9db3d07b9620b4269ab33f78604a36327e536ce1 13-Nov-2009 Jean-Baptiste Queru <jbq@google.com> eclair snapshot
bstractCursorEntityIterator.java
bstractSyncableContentProvider.java
bstractTableMerger.java
bstractThreadedSyncAdapter.java
ctiveSyncInfo.java
syncQueryHandler.java
roadcastReceiver.java
ontentProvider.java
ontentProviderClient.java
ontentProviderNative.java
ontentProviderOperation.java
ontentProviderResult.java
ontentResolver.java
ontentService.java
ontext.java
ontextWrapper.java
ntity.aidl
ntity.java
ntityIterator.java
ContentProvider.java
ContentService.aidl
EntityIterator.java
IntentReceiver.aidl
SyncAdapter.aidl
ntent.java
ntentSender.java
perationApplicationException.java
yncAdapter.java
yncAdapterType.aidl
yncAdapterType.java
yncAdaptersCache.java
yncContext.java
yncManager.java
yncResult.java
yncStateContentProviderHelper.java
yncStats.java
yncStatusInfo.java
yncStatusObserver.java
yncStorageEngine.java
yncUIContext.java
yncableContentProvider.java
empProviderSyncAdapter.java
m/ActivityInfo.java
m/ApplicationInfo.java
m/ConfigurationInfo.java
m/FeatureInfo.aidl
m/FeatureInfo.java
m/IPackageManager.aidl
m/LabeledIntent.java
m/PackageInfo.java
m/PackageManager.java
m/PackageParser.java
m/ProviderInfo.java
m/RegisteredServicesCache.java
m/RegisteredServicesCacheListener.java
m/ResolveInfo.java
m/ServiceInfo.java
m/XmlSerializerAndParser.java
es/AssetManager.java
es/CompatibilityInfo.java
es/Configuration.java
es/Resources.java
es/StringBlock.java
bfdece49cf34eda8d5f1e8bfb9437ccaf62ebe41 13-Nov-2009 Eric Laurent <elaurent@google.com> am 355743c7: am 609acfd2: am 1aa9f3ca: Merge change I923d7d72 into eclair

Merge commit '355743c70d9810fda3e59d718d055f9513fb05b7'

* commit '355743c70d9810fda3e59d718d055f9513fb05b7':
Fix issue 2242614: Wired headset not recognized: bogus "state" in ACTION_HEADSET_PLUG broadcast.
609acfd2a1067f49e51925776484b070a24d8301 13-Nov-2009 Eric Laurent <elaurent@google.com> am 1aa9f3ca: Merge change I923d7d72 into eclair

Merge commit '1aa9f3cac31a7c2b50fcb3c9259cead8d638ae54' into eclair-mr2

* commit '1aa9f3cac31a7c2b50fcb3c9259cead8d638ae54':
Fix issue 2242614: Wired headset not recognized: bogus "state" in ACTION_HEADSET_PLUG broadcast.
67abf57846168dd00fa951489c3d636e6016f3ce 12-Nov-2009 Dan Egnor <egnor@google.com> am 00556831: am f18a01c7: Rename [I]DropBox[Service] to [I]DropBoxManager[Service].

Merge commit '00556831f7503a922a5402c525b4387ebdd1a4bb'

* commit '00556831f7503a922a5402c525b4387ebdd1a4bb':
Rename [I]DropBox[Service] to [I]DropBoxManager[Service].
f18a01c77e78209b74e34d05cfb352fa4a92db5f 12-Nov-2009 Dan Egnor <egnor@google.com> Rename [I]DropBox[Service] to [I]DropBoxManager[Service].

Un-hide the DropBoxManager interface, and update the public API accordingly.
ontext.java
923d7d721d37f6ba5148e7d79d61a4fa48e79df2 12-Nov-2009 Eric Laurent <elaurent@google.com> Fix issue 2242614: Wired headset not recognized: bogus "state" in ACTION_HEADSET_PLUG broadcast.

The headset state indicated by HeadsetObserver in the broadcast intent ACTION_HEADSET_PLUG was not 0 or 1 as specified in the java doc but contained a bit field indicating the type of headset connected.

Modified HeadsetObserver to broacast a state conforming to java doc.
Added an extra to intent ACTION_HEADSET_PLUG to indicate if headset has a microphone or not.
Removed handling of non standard headset indications from HeadsetObserver.
Removed platform specific devices from output devices defined in AudioSystem.
Modified AudioService to use new ACTION_HEADSET_PLUG intent extra instead of bitfield in state.
ntent.java
1ee0d41b0b7f6458d067f4e51875fd3d34c2efe6 12-Nov-2009 Dianne Hackborn <hackbod@google.com> am d2aaeefc: am c5dc6872: am 360d710e: Merge change I580de484 into eclair

Merge commit 'd2aaeefc31c37417e6074fefeabe3434ea2768d9'

* commit 'd2aaeefc31c37417e6074fefeabe3434ea2768d9':
Fix issue #2256270: Package manager sends bad broadcasts when components change
c5dc6872dac40f87b6b8261c3cd5260a52325aba 12-Nov-2009 Dianne Hackborn <hackbod@google.com> am 360d710e: Merge change I580de484 into eclair

Merge commit '360d710ebccc2a2b53bf6233e722d3287d585476' into eclair-mr2

* commit '360d710ebccc2a2b53bf6233e722d3287d585476':
Fix issue #2256270: Package manager sends bad broadcasts when components change
86a72dacbea3331cd5423c1f2f6ecbfae535e57c 12-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2256270: Package manager sends bad broadcasts when components change

Also reworks this intent protocol a little bit to be much more efficient, only
requiring one broadcast per package.

Change-Id: I580de4843ebd3c7f2e6df7295a2f80d2937cef7c
ntent.java
5a1a55e54ab81d60e6b41e3a1bf24c72df382116 12-Nov-2009 Dianne Hackborn <hackbod@google.com> am 7bd2179f: am 823edb76: am 532d5603: Merge change I80022375 into eclair

Merge commit '7bd2179f22c63cba9b444b4089242af327501f85'

* commit '7bd2179f22c63cba9b444b4089242af327501f85':
Fix issue #2256032: Change CONFIGURATION_CHANGED and add a locale changed broadcast
78bceeb925dff57543d7d9cd27f560448fb2e854 12-Nov-2009 Dianne Hackborn <hackbod@google.com> am 8c3fc080: am 5bb200fd: am 2ade6421: Merge change I775e1ec0 into eclair

Merge commit '8c3fc0801bb32a99dd5ab97c93bb615999b2c977'

* commit '8c3fc0801bb32a99dd5ab97c93bb615999b2c977':
Debugging for issue #2250075: Desk dock clock app sometimes doesn't
823edb76661d57c1af7dbf4eb56eb0e3cb78e229 12-Nov-2009 Dianne Hackborn <hackbod@google.com> am 532d5603: Merge change I80022375 into eclair

Merge commit '532d56034532809da7691059742371c1b4d0656c' into eclair-mr2

* commit '532d56034532809da7691059742371c1b4d0656c':
Fix issue #2256032: Change CONFIGURATION_CHANGED and add a locale changed broadcast
5bb200fde2306d9da1972a81c0238c26ca6f475b 12-Nov-2009 Dianne Hackborn <hackbod@google.com> am 2ade6421: Merge change I775e1ec0 into eclair

Merge commit '2ade6421f2d6dd615b559c951deace7143958b90' into eclair-mr2

* commit '2ade6421f2d6dd615b559c951deace7143958b90':
Debugging for issue #2250075: Desk dock clock app sometimes doesn't
362d5b9b6429a2766f5b980d2010262135788ad8 12-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2256032: Change CONFIGURATION_CHANGED and add a locale changed broadcast

You can no longer receive CONFIGURATION_CHANGED in a manifest, which is really really
bad (launching apps every time the screen is rotated!). A new LOCALE_CHANGED broadcast
is sent that you can receive in a manifest.

Change-Id: I80022375f0716db2e672382a29db3cea1af74702
ntent.java
12527f9fb1cb0a1ad3be8149c1c88a0e731cb4d6 12-Nov-2009 Dianne Hackborn <hackbod@google.com> Debugging for issue #2250075: Desk dock clock app sometimes doesn't

This adds a history of the last 100 broadcasts that is printed in the
debug log, to be able to see what recently happened at the time the
bug report was taken. Also does some optimization of the printing of
the broadcast records to make it feasible to print this number of
entries. (We kind-of need to do this because there are some broadcasts
like SIG_STR and SYNC_STATE_CHANGED that are being broadcast a LOT.)

Change-Id: I775e1ec0f63369c8bca8c83cee27b95ddc5ec450
m/ActivityInfo.java
m/ApplicationInfo.java
m/PackageItemInfo.java
2f20558f09a43c497c7e49ad70745c3f12567891 12-Nov-2009 Fred Quintana <fredq@google.com> am f291a68d: am d73f7de4: am 4cb6fc7e: Merge change Icc48b1e7 into eclair

Merge commit 'f291a68dbff5fb74696204b2a0bc49d5eba67c93'

* commit 'f291a68dbff5fb74696204b2a0bc49d5eba67c93':
don't request a sync when temp providers are created
d73f7de40e1bdd0d8aee1ee793db36e7a9f7d8cb 12-Nov-2009 Fred Quintana <fredq@google.com> am 4cb6fc7e: Merge change Icc48b1e7 into eclair

Merge commit '4cb6fc7ed2e4371b7ea4d053064fbeb3f86cfc20' into eclair-mr2

* commit '4cb6fc7ed2e4371b7ea4d053064fbeb3f86cfc20':
don't request a sync when temp providers are created
bb3921c9dd351d9fb2ca197d2aaf6aa1845f2aea 12-Nov-2009 Fred Quintana <fredq@google.com> am 7efa6715: am e871be66: Merge change I735f4553 into eclair-mr2

Merge commit '7efa671569955aead877d10e7d6b1fa3129184a4'

* commit '7efa671569955aead877d10e7d6b1fa3129184a4':
Make the RegisteredSErvices Cache not allow the registered service for a
735f45538650728e9ca9856b9ff87ec54c972f04 12-Nov-2009 Fred Quintana <fredq@google.com> resolved conflicts for merge of ae0cf6dc to eclair-mr2
cc48b1e77dfe74e1acf7cfa85215e68551b37ee6 12-Nov-2009 Fred Quintana <fredq@google.com> don't request a sync when temp providers are created
bstractSyncableContentProvider.java
1874aa487cf5da31f5770d21f0973a417f99247c 11-Nov-2009 Oscar Montemayor <oam@google.com> Encrypted File Systems project. Implementation of opt-out flag in AndroidManifest XML file.
This flag is necessary for applications to specifythat their daa is never to be encrypted when the encrypted file system feature is
commplete and enabled.
Encrypted File Systems project.
Adding android:neverEncrypt flag to AndroidManifest.XML to allow packages to opt-out from EFS features.

Encrypted File Systems Project.
Fixing white spaces and end-line issues.

Encrypted File SYstems Project: opt-out flag.
Removed AndroidManifest.xml changes, as will make that change in a separate integration.
m/ApplicationInfo.java
m/PackageParser.java
5ebbb4a6b3e16f711735ae0615b9a9ea64faad38 10-Nov-2009 Fred Quintana <fredq@google.com> Make the RegisteredSErvices Cache not allow the registered service for a
type to change without first uninstalling the previous service for that
type, unless the newly installed service is in the system image.

Notify the listener when a service is added or removed.

Make the AccountManagerService remove the accounts for an authenticator
when the registered authenticator changes from one uid to another.

Make the AbstractSyncableContentProvider force a sync when the database is first created.
bstractSyncableContentProvider.java
yncAdaptersCache.java
m/RegisteredServicesCache.java
m/RegisteredServicesCacheListener.java
m/XmlSerializerAndParser.java
d62b063fd4ac0ae1419348ac62c55527cb398fd9 02-Nov-2009 Dianne Hackborn <hackbod@google.com> am b6a6791f: Merge change I60413727 into eclair

Merge commit 'b6a6791f381691d4a58fe6972eb9f0b65308ac1f' into eclair-mr2

* commit 'b6a6791f381691d4a58fe6972eb9f0b65308ac1f':
Fix issue #2226370: Resource versions match with equality
553399518f39cd9f31f2bb6f502866c3c9d6d1a5 02-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2226370: Resource versions match with equality

Also fixed turned-around increment of version number for resources. :(

Change-Id: I604137272da984bcd69cee4f174e6b7f2c786e46
es/Resources.java
5546e9e6721a5b05678ea6ceb3be433219f53fe6 30-Oct-2009 Jeff Sharkey <jsharkey@android.com> am 824838d7: Avoid NPE when callers send null selection args.

Merge commit '824838d74eb0316f6987a1d98d2d9e9fa8d4e15b' into eclair-mr2

* commit '824838d74eb0316f6987a1d98d2d9e9fa8d4e15b':
Avoid NPE when callers send null selection args.
cd79e5e173e00995f072104f7a89cf4015a90efd 30-Oct-2009 Jeff Hamilton <jham@android.com> am b5c05516: Merge change I3b7d5cbe into eclair

Merge commit 'b5c05516ba2c341655d54f17bdd17a5ab2d173df' into eclair-mr2

* commit 'b5c05516ba2c341655d54f17bdd17a5ab2d173df':
Copy the selection args when creating a CPO since callers often reuse the passed in array.
a7bbedca97498e75b32c6f6ca4afe56d4cf481f7 30-Oct-2009 Suchi Amalapurapu <asuchitra@google.com> am 22dad592: Merge change I6cae32c7 into eclair

Merge commit '22dad5928d1d1f2c791616d9d6ab3a3172cec62e' into eclair-mr2

* commit '22dad5928d1d1f2c791616d9d6ab3a3172cec62e':
When upgrading packages with shared user ids make sure we are eliminating
824838d74eb0316f6987a1d98d2d9e9fa8d4e15b 30-Oct-2009 Jeff Sharkey <jsharkey@android.com> Avoid NPE when callers send null selection args.

Fixes http://b/2226007
ontentProviderOperation.java
0fca5b45ffe86c1c69359e6eb3727a9953b971c9 29-Oct-2009 Fred Quintana <fredq@google.com> am 5e5eb393: Merge change Id572ffc7 into eclair

Merge commit '5e5eb393729630800079206498f283de8f02f3a7' into eclair-mr2

* commit '5e5eb393729630800079206498f283de8f02f3a7':
don't throw an exception when we can't find a pending sync operation in the database
b5c05516ba2c341655d54f17bdd17a5ab2d173df 29-Oct-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change I3b7d5cbe into eclair

* changes:
Copy the selection args when creating a CPO since callers often reuse the passed in array.
d83006cbe86545a1e8882b1a4ed90005ebf3423e 29-Oct-2009 Suchi Amalapurapu <asuchitra@google.com> When upgrading packages with shared user ids make sure we are eliminating
the package about to be deleted or upgraded when updating permissions associated
with the shared user. Include a simple null check when retrieving the permission.

Fix PackageParser to avoid ArrayIndexOutOfBounds exceptions in several places
m/PackageParser.java
952402704a175ba27f6c89dff1ada634c5ce5626 28-Oct-2009 Dan Egnor <egnor@google.com> Instead of a raw AIDL interface, give DropBox a Java
interface (android.os.DropBox); move the Binder interface
behind the scenes. Make DropBoxEntry into DropBox.Entry.
Make it possible to get a dropbox from an (Application)Context
with the usual getSystemService(DROPBOX_SERVICE) type thing.
Update the tests accordingly.
ontext.java
cb41faa285ad0c00bcdc8815d4bf83219552007d 28-Oct-2009 Fred Quintana <fredq@google.com> don't throw an exception when we can't find a pending sync operation in the database
yncManager.java
acff20bda404f59ffba6035b18956d6aff7afcd8 28-Oct-2009 Jeff Hamilton <jham@android.com> Copy the selection args when creating a CPO since callers often reuse the passed in array.

Bug: 2221947
Change-Id: I3b7d5cbef61777d76ca7fc0d7c91c44553e609a9
ontentProviderOperation.java
e341c7e7c8eed486113cbb721b09ac3aeda07d2f 19-Oct-2009 Ken Shirriff <kens@google.com> Add access to ContentProvider for SyncState.

This is used (temporarily) by the new calendar sync implementation.
bstractSyncableContentProvider.java
e7424ffdafb0c18f753f383ebfb121ea5ebf582b 15-Oct-2009 Fred Quintana <fredq@google.com> add an IPC for sync initialization
bstractThreadedSyncAdapter.java
SyncAdapter.aidl
yncAdapter.java
yncContext.java
yncManager.java
083a50a394915b562ad53be9fd8ec7524e3db21c 10-Oct-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change I66693ea2 into eclair

* changes:
fix sync exponential backoff for expedited syncs
66693ea208a233993b541784d99f3a8333b7ac69 10-Oct-2009 Fred Quintana <fredq@google.com> fix sync exponential backoff for expedited syncs
yncManager.java
f242b7b931898856bcbcb7ec36cacf43098ba544 08-Oct-2009 Nick Pelly <npelly@google.com> Introduce BluetoothAdapter.getDefaultAdapter().

This is the main entry point to the Bluetooth APIs, and returns the default
local Bluetooth adapter.

It replaces context.getSystemService(Context.BLUETOOTH_SERVICE). This was
never in a public SDK release.

DrNo: eastham
Bug: 2158765
Joke: Why can't you play cards in the jungle? Because there's too many cheetas!
Change-Id: Ieed8be009ee5aba621cb69090ee8c8a9c19c840d
ontext.java
f038004f4a5e4fab18df9c87573ba1e82790c30f 07-Oct-2009 Fred Quintana <fredq@google.com> changes from Sync Manager API Review: bug 2164262
bstractThreadedSyncAdapter.java
yncContext.java
yncResult.java
yncUIContext.java
f83d9b3fcd74f2528b0acc74185d2d7bdd716942 06-Oct-2009 Fred Quintana <fredq@google.com> fix build breakage
syncQueryHandler.java
5bba632d877c2878384ff21566c8eb6a1a22f37b 05-Oct-2009 Fred Quintana <fredq@google.com> - hide Entity and all its references
- remove updateEntity and insertEntity, since they are not
used
- add the RawContacts.Entity class, which is used in lieu of the
android.content.Entity
bstractCursorEntityIterator.java
syncQueryHandler.java
ontentProvider.java
ontentProviderClient.java
ontentProviderNative.java
ontentResolver.java
ntity.java
ntityIterator.java
ContentProvider.java
8d5ae98549f68a1214a72e6d79456503eb7d96f5 06-Oct-2009 Suchi Amalapurapu <asuchitra@google.com> Make sdk version and code names static finals in PackageParser.
Remove api to set these values.
Remove an unused method in AppSecurityPermissions
m/PackageParser.java
68d881cf2d2b252f6f795cd64d43e316a1d736e5 05-Oct-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2166755: BroadcastReceiver trying to return result during a non-ordered broadcast

Tell the broadcast receiver whether it is getting an initial sticky value,
so it will be quiet about attempts to do ordered broadcast stuff.

Note that the original bug being reported was not actually a crash, just
an error log. So all we are doing here is making the log quieter.

Change-Id: Iaf1b718d82093ec1197142410a64feff47eb3859
roadcastReceiver.java
IntentReceiver.aidl
ntentSender.java
f7ae77cd67f1a3993b8e56c1af4720a7adf4e69d 03-Oct-2009 Fred Quintana <fredq@google.com> account manager api review changes
bstractSyncableContentProvider.java
yncManager.java
bd0a81ff1c0e92e80e05e2f12bb1805c7d081e94 04-Oct-2009 Dianne Hackborn <hackbod@google.com> Work on issue #2163789: Way too much logging

Dr.No from mcleron.

Change-Id: Iaca2268684f83fe8757e64db0b0e047a19755311
yncStorageEngine.java
m/PackageParser.java
29e4a3c566f435c32f0b95e4ac8e8b33cac6faba 01-Oct-2009 Dianne Hackborn <hackbod@google.com> Update from API review.

Change-Id: I16b1c566f91167aac9615ac59dd297a154c828ea
m/RegisteredServicesCacheListener.java
a33e3f79259b56b03c7912af35944f34ad190e3c 30-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2154794: Force close when start facebook application.

I think when we were scanning the updated app in the system image,
from an older version on the data partition, we were not setting
the existing package to have the system flag, so not auto-granting
any new permissions.

This also includes some other cleanup in the package manager to
remove old files in various places, and tighten up logging.

Also similar logging cleanup elsewhere.

Change-Id: I6d113c7cf7e736ab9be512d6d7c94c806a24199a
yncStorageEngine.java
m/PackageParser.java
d2c494d9be366aed081742c097b97816a6ed9d44 30-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change I8b2e000c into eclair

* changes:
add class description and revise descriptions for get*Drawable and peek*Drawable methods for clarity. also fix some links.
8b2e000c43f5a93209be269a0b9e08943fad8d3c 30-Sep-2009 Scott Main <smain@google.com> add class description and revise descriptions for
get*Drawable and peek*Drawable methods for clarity.
also fix some links.
ntent.java
609c2c08d7d059681434ea322b551264abab8a71 30-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change Ia54b1bf0 into eclair

* changes:
- make SyncManager get the accounts list during the constructor, which will allow syncs to be scheduled during bootup. The providers need this so that they can potentially schedule syncs while they are starting up. - make the SyncManager message handler wait until boot has completed to start dispatching messages
e91ebe2be9580625ff31af8583e55aaefc50474f 30-Sep-2009 Fred Quintana <fredq@google.com> - make SyncManager get the accounts list during the constructor,
which will allow syncs to be scheduled during bootup. The
providers need this so that they can potentially schedule
syncs while they are starting up.
- make the SyncManager message handler wait until boot
has completed to start dispatching messages
yncManager.java
3348f14b3d46b172a5b557f81aac526b7e8bf5fb 30-Sep-2009 Costin Manolache <costin@google.com> Remove GAIA string
bstractSyncableContentProvider.java
ontentResolver.java
yncStorageEngine.java
7eca687c2ee8f633678a1cd3ebf0886c0e6bbcf9 29-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix bug where we would return null with disabled components.

Change-Id: I1624a42803f1c4b02736f558a8eeeeba2890667e
m/PackageParser.java
093f581090d8cf98f5877746d924107f7695dd8b 27-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 27238 into eclair

* changes:
The touch screen is probably a feature.
039c68e75606e837cf021815a0210836724574ad 27-Sep-2009 Dianne Hackborn <hackbod@google.com> The touch screen is probably a feature.

Also extend the feature APIs a bit.

Change-Id: I99e932d7f4e61edb0e20f75c55e9831e4b59a14d
m/IPackageManager.aidl
m/PackageManager.java
86135d3240a50f9224b49fb8407a1c86cae0e1b9 25-Sep-2009 Tadashi G. Takaoka <takaoka@google.com> Pass provider authority to SyncActivityTooManyDeletes

Internal Bug: 2138733
yncManager.java
3b3e145d3c41fd68974e08f799b1fd1f8f060cf0 25-Sep-2009 Dianne Hackborn <hackbod@google.com> A variety of work on animations.

- The lock screen now fades in and out.
- Fixed a bug where we would accidentally freeze the screen when switching
to an activity with a different orientation than the current (but
the screen itself is in the current orientation). This would mess up
the animations on the car dock.
- New API to force a particular animation for an activity transition
(untested).
- New wallpaper animations.
- Resources now uses the next API version when in a development build,
to help applications being developed against such builds.

Change-Id: I2d9998f8400967ff09a04d693dc4ce55f0dbef5b
m/ApplicationInfo.java
es/Resources.java
ffa424800d0338b8b894aef2ea1e3e3344cbda7a 24-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2133206: dialogs/menus should auto-dismiss when screen turns off

Lot of infrastructure for more things to go away when "clear system dialogs"
happens, and now do this when we turn on the lock screen.

Change-Id: I567130296fe47ce82df065ed58ef21b37416ceaf
m/ActivityInfo.java
m/PackageParser.java
600dde04ee07b740dc119c879cf096b5d697ec32 23-Sep-2009 Fred Quintana <fredq@google.com> make the SyncManager listen for backgroun data setting changes and do a sync when the setting is enabled
yncManager.java
be3bceb5b908c23eeda5a8d04d2ea3d43cc7ed10 23-Sep-2009 Fred Quintana <fredq@google.com> fix the logic for starting a sync after the accounts changed
yncManager.java
4271c7c36bc6c3acef1a7d0926a5cf300e5efa4a 23-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 26449 into eclair

* changes:
Keep track of 'initial' sync state in SyncStatusInfo
5ed64cd06ce308e91a5ab74e51bcea5fba9a3860 22-Sep-2009 Costin Manolache <costin@google.com> Keep track of 'initial' sync state in SyncStatusInfo
yncStatusInfo.java
yncStorageEngine.java
9bfb707597898f54722460b48588007b682f3e2a 22-Sep-2009 Dianne Hackborn <hackbod@google.com> Various fixes and improvements to window, activity.

- New meta-data you can add to a dock activity to have it launched by the
home key when the device is in that dock.

- Fix a deadlock involving ActivityThread's internal content provider lock.

- New window flag to have a non-secure keyguard entirely dismissed when a
window is displayed.

- New WindowManagerPolicy APIs to allow the policy to tell the system when
a change it makes during layout may cause the wall paper or
overall configuration to change.

- Fix a bug where an application token removed while one of its windows is
animating could cause the animating window to get stuck on screen.

Change-Id: I6d33fd39edd796bb9bdfd9dd7e077b84ca62ea08
ntent.java
585c67f70f18b8879ced854c5865141d6c650cd8 22-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 26300 into eclair

* changes:
experimental fix for compatibility mode. When we scale up by 1.5 (240 dpi), we put stretched ninepatches on exact pixel boundaries when we walk the inverse matrix (e.g. 2/3, 1+1/3, 2, 2+2/3, 3+1/3, 4, ...).
b5c17a64edbdac47d8aa48951b50ea0a8e982655 22-Sep-2009 Mike Reed <reed@google.com> experimental fix for compatibility mode. When we scale up by 1.5 (240 dpi), we put stretched ninepatches on
exact pixel boundaries when we walk the inverse matrix (e.g. 2/3, 1+1/3, 2, 2+2/3, 3+1/3, 4, ...).

These are not stable, since any variance in the inverse matrix (even in the lowest bit) can cause some other
part of the ninepatch to start a hair to the left, resulting in misaligning every 3 pixels.

The fix changes the matrix' phase enough to keep all of the stretched ninepatches in phase.
es/CompatibilityInfo.java
bfe319e06aa56c081d0d94d64a8181291d7f7388 21-Sep-2009 Dianne Hackborn <hackbod@google.com> Turn animations on by default.

Add API to skip the animation for a particular start activity, so that
a latter better one can be used.

Fix Theme.NoDisplay to actually work.

Fiddle with various animations: don't do a different animation for task
switching, try a scale animation for switching in/out of the wallpaper.

Adjust the animation duration so that at normal speed we have something
more like the slower animation option (so slow is now the default).

Change-Id: Ieba9f3db0bd9a762a19b327a3ecccbc7b547893d
ntent.java
e256c79731ecd412fbf0d566ea6c844ea8e972a1 21-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 26053 into eclair

* changes:
log hash of account name in sync event log
44f574781545781c31db3dcf495ed08763073f75 21-Sep-2009 Doug Zongker <dougz@android.com> log hash of account name in sync event log

Add an account field to the sync event, which is the java hash of the
account name. (A hash is used for privacy reasons.)
yncManager.java
6cca1599f78549716ef120245e54fa1961976dda 20-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix issue #1862317: Browser does not appear to honor anchors (#es) in links

Also a little improved debugging output of bad resource identifiers.

Change-Id: I054064ef22855608ffd722e4ccf12ce57d1992b2
ntent.java
d163f4babe101b89aaf322c34d3bafeae237f7da 20-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 25853 into eclair

* changes:
Don't back up / restore certain sync-related settings
edd9316ca9b3b24d54e8a2468927da7e813098fc 19-Sep-2009 Dianne Hackborn <hackbod@google.com> Add better APIs for the battery status, and other cleanup.

Also add new configs for keeping screen on while docked, which will
be used elsewhere.

Change-Id: Ifaa1118f14fd850ac809895f9a5c9e8c413259b8
ntent.java
efa199f016985b0a9d0471e42c803ee9f7941f0e 19-Sep-2009 Dianne Hackborn <hackbod@google.com> Add API to send an ordered sticky broadcast.

Change-Id: Ida7081204e226db0cd07ff618c08e308a909ec0c
ontext.java
ontextWrapper.java
a286f419084d56217f05a64f1d24c9e07917212e 19-Sep-2009 Christopher Tate <ctate@android.com> Don't back up / restore certain sync-related settings

In particular, this no longer attempts to back up the on/off state of specific
backend syncing [gmail/contacts/calendar], nor the "background data" toggle.
The former was causing a great deal of spurious trips through backup as the
notification was being tickled during general sync operation, and the latter
makes little sense at restore time.

Fixes these issues:

b/2097613 - frequent "backup_data_changed" messages in event log
b/2131662 - should not backup background data, master sync settings
yncStorageEngine.java
ae22c05b91d1e7a458066792eb5cfc0974c1be9e 18-Sep-2009 Dianne Hackborn <hackbod@google.com> Try to fix docs build.

Change-Id: I331e128fa95c3bc0b8bc4ab2537cc2ea92e310e7
ontext.java
fa82f22f1d8c4c828bdf9b670006be4f4fec772e 18-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2093608: Calendar widget takes a few seconds to launch

Avert your eyes!

The key change here is that RemoteViews can now call a Context API to
start its pending intent, which inside of the activity manager we can
use to determine to cancel the timeout delay for external entities
to disrupt the home screen.

Change-Id: If097cf7478cbed7a3c04a304050bd7fd5703d197
ontext.java
ontextWrapper.java
ntent.java
ntentSender.java
3ecd5f437580e49d80beecd29489d5fb1f7a7db0 17-Sep-2009 Fred Quintana <fredq@google.com> - Make the AccountManagerService delete accounts that
have no Authenticator, both when the package is removed
and when the phone is booted.
- add the ability to register with the RegisteredServicesCache
to be notified when the set of Authenticators changes.
m/RegisteredServicesCache.java
m/RegisteredServicesCacheListener.java
5f78786cf9802b988a4de3c08555eb43f1e02e04 17-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 25190 into eclair

* changes:
add the ability to do a newAssert with no values
9092ab4d458ad60b459d5fad52368bde5d25f665 16-Sep-2009 Mike Lockwood <lockwood@android.com> Add support for launching activities when attaching to a car or desk dock.

Categories CATEGORY_CAR_DOCK and CATEGORY_DESK_DOCK can be assigned to
activities to make them launchable on docked events.
This is a better mechanism than listening for ACTION_DOCK_EVENT with a broadcast receiver.

Change-Id: Ic5f3ab3555ce02ca922bc31ebba41978cefe8bda
Signed-off-by: Mike Lockwood <lockwood@android.com>
ntent.java
57384101b9757b1c67570fae60cdb8f89c84bf32 16-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 25270 into eclair

* changes:
Use Resources to load search icons with android.resource URIs
4c87a3f26a7c0c75fa371024a8726b59a108fd0f 16-Sep-2009 Bjorn Bringert <bringert@android.com> Use Resources to load search icons with android.resource URIs

Before, all icon URIs were opened with
ContentResolver.openInputStream(Uri), but that does not
include the density information from the source
application.

Now, if the URI uses the android.resource scheme,
we resolve the URI to a Resources and a resource ID,
and load it with Resources.getDrawable(int).
This requires making OpenResourceIdResult and getResourceId()
in ContentResolver public (but hidden).

This change also caches icons that were specified using just a
resource ID.

Since loading a Drawable from a URI is a generally useful operation,
it would be good to make it easy for apps to do it in the proper
density-independent way. We could add a getDrawable(Uri)
method to the framework. The question is where.

It would be easiest to add it to ContentResolver, but that may be a
bit odd since there is no other code for dealing with Drawables in
ContentResolver. Another alternative is in Resources, since
getDrawable(int) is there, but that class deals with the resources
for a single app, whereas getDrawable(Uri) can open a drawable
from any app. Putting it in Context may be the best choice,
since that's in android.content, and can thus access package
private members in ContentResolver, and since it's already
a dumping place for random useful high-level methods.
Opinions?

Fixes http://b/issue?id=2034526
"Icons on search do not scale for wide VGA"

Change-Id: I44de0b74826e5560141a3174bcbba991ba6264ac
ontentResolver.java
93e462b79d6896da10e15e74c5aec6beb098dddf 16-Sep-2009 Dianne Hackborn <hackbod@google.com> Implement issue #1780928: Need support hiding nav keys.

This implements support for devices whose hardware can hide
their navigation keys. It works much like the existing keyboardHidden
configuration, and for compatibility uses the same configuration
change bit.

Also add FLAG_TURN_ON_SCREEN for windows, which has the system
cause the screen to be turned on when the window is displayed.
Great fun when used with FLAG_SHOW_WHEN_LOCKED!

Change-Id: I0b867f19af85cfd8786a14cea194b34f7bdd9b7a
m/ActivityInfo.java
es/Configuration.java
5ab78057a35dc71b2847920031cd707a7e2c6c64 16-Sep-2009 Fred Quintana <fredq@google.com> add the ability to do a newAssert with no values
ontentProviderOperation.java
d2a3a8a7ba869247e6d1a8e3f72780e4841b39d6 16-Sep-2009 Jim Miller <jaggies@google.com> Fix for #2092883: Allow manual sync even when background data is disabled
yncManager.java
c2974809373697147cbe5754835cc871fb93aef1 14-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2116977: buttons are huge and bent

Now that we are using preloaded drawables in compatibilty mode, when
constructing them from their constant state we need to set the new
drawable's target density appropriately.

Change-Id: I3665cbea09d38b9ac5f45f8c380dc8641f86b266
es/Resources.java
e7f47f50ad0a97e32c87104e56f311db910e98f1 15-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 24921 into eclair

* changes:
add system properties for experimenting with sync timeouts.
44ee0f03f99b3eea8bf3d3e7f63ad0553623f426 14-Sep-2009 Debajit Ghosh <debajit@google.com> add system properties for experimenting with sync timeouts.
yncManager.java
19382ac1a4e4e7c23a1346d299368763f149de9c 12-Sep-2009 Dianne Hackborn <hackbod@google.com> Some optizations to wallpaper drawing/scrolling.

First, fix some issues with the final wallpaper bitmap
we use: ensure it is always 16bpp, and make sure dithering
of its bitmap is turned off. We take of dithering
when loading, to make sure we don't use it when drawing.

Also add new APIs to return the wallpaper with the equivalent
of Launcher's old FastBitmapDrawable. As doing this, also load
the default wallpaper the same way as custom ones, taking care to
resize it as needed at load time.

Finally implement a mechanism for the window manager to wait
for the wallpaper to redraw at its new position before returning
from the application's call to change the offset. This ensures
that the wallpaper better tracks the application. Note that there
is a timeout in this wait that is relatively short, and if it
expires we will run for a while without waiting.

Change-Id: Ife449437746da85958bd447e0a6cf3d2223b398c
es/Resources.java
8cae124af2142687a6833dbaab8a43df6dd67b43 10-Sep-2009 Dianne Hackborn <hackbod@google.com> Various cleanup around resources and nine-patches.

Remove the stuff that doesn't use preloaded drawables when in
compatibility mode, since this works fine ever since we were able
to deal with drawables in a different density than the canvas.

Change the snapshot function on View to return a snapshot at
the same size that will actually be drawn on screen (when in
compatibility mode), to be able to show scaling artifacts and
all.

This change was original an attempt to fix issue #2101917: Text
field edges appears to be improperly rounded. That turns out to
probably be something deeper in the graphics system, but also
included here is the debugging code I did to try to track down the
problem to make it easy to turn on again later.

Change-Id: I34bfca629639c7ff103f3989d88874112ef778d9
es/AssetManager.java
es/Resources.java
b752098e8d12d6e7925d97458078dbb896ca8a05 03-Sep-2009 Costin Manolache <costin@google.com> Sync status was ignoring account - the new UI has specific sync status for each account, so we need to use it.
ontentService.java
yncStorageEngine.java
eb034652c2037a47ebfd99779e8383bb8bb528af 07-Sep-2009 Dianne Hackborn <hackbod@google.com> Implement all of the infrastructure for configuring wallpapers.

Actually being able to configure a wallpaper relies on additional
work in the launcher and wallpapers that will be in another change.
Also note that this breaks all existing wallpapers, since they now
need to include a meta-data item about themselves. This also
will be fixed in another change.

Change-Id: I97d2c2bd07237abc32f92b9147c32530a2f73c71
ntent.java
m/LabeledIntent.java
m/ResolveInfo.java
m/ServiceInfo.java
ff86d9f9dc30d2eebe56af27c8cdb0bcd4227bf4 05-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 24002 into eclair

* changes:
Fix SparseArray accesses
0e3cd546001cb82b8d9c8e910cf751d1d2a584df 04-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 23907 into eclair

* changes:
Add sync_details support.
360e454b2b2f911e9e29268519017cc94ae9d4f4 04-Sep-2009 Costin Manolache <costin@google.com> Fix SparseArray accesses
yncStorageEngine.java
5962d279f9f231add9a2ad436eb432ac95ab0706 04-Sep-2009 Chih-Chung Chang <chihchung@google.com> Add more documents on the ACTION_SEND_MULTIPLE intent.

Change-Id: Ic3d7b74299611158470b729be654fbadde1691ff
ntent.java
6fd7385f56b129b49164f606d23771a39507f772 04-Sep-2009 Ken Shirriff <kens@google.com> Add sync_details support.

This adds sync_details logging to AbstractThreadedSyncAdapter and thus
the new contacts code.
bstractThreadedSyncAdapter.java
dd9b82c283815747b75fe4434c65e4b6c9c9b54f 03-Sep-2009 Dianne Hackborn <hackbod@google.com> Add better service reporting.

This will be used elsewhere.

Change-Id: Id561fa7fed5eb65446312cb697813483903d33a6
ntent.java
yncManager.java
c42c0dd1c4e2f7a4abaac1b2c9a6344448f9db7a 03-Sep-2009 Jeff Hamilton <jham@android.com> Fix the registration of the package changes broadcast receiver.

Change-Id: Ib0b49153a0ec1af7c5a92753860df0f46064a7df
m/RegisteredServicesCache.java
a34f1ad7c3a68d971e6332aa2fb1c16d083920b3 02-Sep-2009 Dianne Hackborn <hackbod@google.com> Fiddle system boot ordering.

This makes the system a little more careful to not start third party
code until it is ready to.

Also fix a little bug in SyncManager that would cause it to crash
during boot if sync was in a failure state.

Change-Id: Ib2d287d8441d155d393fe740a5f98690895fd358
yncManager.java
14de0880dd7b716f39b822917e874ca5e579ff37 03-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 23698 into eclair

* changes:
suppress syncs until boot is complete
32f589046b4105f1a1b7cc2231d334e3971549e6 03-Sep-2009 Suchi Amalapurapu <asuchitra@google.com> Make new attribute EXTRA_CHANGED_COMPONENT_NAME in
broadcast intent ACTION_PACKAGE_CHANGED public so that
apps like launcher can find out the changed component name
when loading changes made in components.
ntent.java
4f9cfc5c52c8b40975c1bc2829efa46b4bddb03f 03-Sep-2009 Fred Quintana <fredq@google.com> suppress syncs until boot is complete
yncManager.java
0214e9475fa3b9aa00a784b5152bf4f1939c941e 02-Sep-2009 Suchi Amalapurapu <asuchitra@google.com> For intent ACTION_PACKAGE_CHANGED, there could be a lot of broadcasts related to enabling/disabling
components by apps which could result in thrashing on the PackageManager. For apps that
do not want to be restarted when such a broadcast is sent, we can just aggregate these broadcasts and
handle them at one go.
Changes include:
New structure to hold pending broadcasts by class name. If a component is enabled or disabled frequently
aggregate component enabled/disabled settings in this structure in a 10 second window and then
send out the accumulated list of broadcasts to the ActivityManager.
A new Handler implementation handles this message
Add new attribute name EXTRA_CHANGED_COMPONENT_NAME in broadcast intent Intent.ACTION_PACKAGE_CHANGED for
additional information for apps like Launcher.
Rename a couple of parameters, the names were too jarring.
ntent.java
5e1ab335e6e8fbfa19c64d53880a22f472010953 02-Sep-2009 Christopher Tate <ctate@android.com> Expand apps' control over the settings restore process

Applications can now specify two more aspects of the restore process: whether
they need to run with their own custom Application subclass rather than being
launched in the usual restricted mode during restore, and whether it's okay for
the backup manager to kill the app process once restore has completed. The new
manifest attributes for these are, respectively, android:restoreNeedsApplication
and android:killAfterRestore.

If unspecified in the manifest, restoreNeedsApplication is false, and
killAfterRestore is true.

In order to support kill-after-restore cleanly, this change also adds a new
system-process-only interface to the Activity Manager, which will schedule a
"commit suicide" event on the target app's main thread looper.

The framework backup agents have been given the appropriate new backup
attributes as well.
m/ApplicationInfo.java
m/PackageParser.java
04f6da353d4e79f49ba1d4897ed617e91acc3f77 02-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 23376 into eclair

* changes:
- don't schedule syncs that we will never dispatch - expedite the INITIALIZATION sync
f892fb3a431e04151382d1bddc4438fd04487a6a 28-Aug-2009 Fred Quintana <fredq@google.com> - don't schedule syncs that we will never dispatch
- expedite the INITIALIZATION sync
yncManager.java
fcb14322f4afaf87b816ee120ad1e2f217b1350e 01-Sep-2009 Fred Quintana <fredq@google.com> re-enable cancelation of the sync thread upon receipt of ISyncAdapter.cancelSync()
bstractThreadedSyncAdapter.java
c58b611652c62b269cdc323ff8285ef789b1853d 01-Sep-2009 Fred Quintana <fredq@google.com> Revert "- don't schedule syncs that we will never dispatch"

This reverts commit fae7ff106b3ed791e324ddcec17226c3fe1cd809.
yncManager.java
7cb08accdd923e05518f4bacd103bfe68d589e5d 01-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 23066 into eclair

* changes:
- don't schedule syncs that we will never dispatch - expedite the INITIALIZATION sync
72b1f379d5c97c8ff31d2201e78215af777d6bda 31-Aug-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
es/AssetManager.java
5ebe32deb5ce9935b9e38eef6105850c4e726083 31-Aug-2009 Fred Quintana <fredq@google.com> disable canceling until the http connection code is understood
bstractThreadedSyncAdapter.java
56f67d21459ad3f136c73c8932904d4a495989c0 28-Aug-2009 Fred Quintana <fredq@google.com> add the ability to specify yieldpoints in a ContentProviderOperation
ontentProviderOperation.java
perationApplicationException.java
49237345d83e62fdb9eb8d50b13ad086636a04fa 28-Aug-2009 Dianne Hackborn <hackbod@google.com> Add platform infrastructure for features.

This introduces a new mechanism to define features associated with
a platform, query the current device for the available features,
and enforce that apps requiring features that aren't available can't
be installed.

Also now allows uses-library to specify that a library is optional,
so the lack of such a library will not prevent the app from being
installed (but if it does exist it will be correctly linked into
the app).

Change-Id: I5b369b46cfa0b3d37c9e08fd14ef1098a978e67b
m/ConfigurationInfo.java
m/FeatureInfo.aidl
m/FeatureInfo.java
m/IPackageManager.aidl
m/PackageInfo.java
m/PackageManager.java
m/PackageParser.java
fae7ff106b3ed791e324ddcec17226c3fe1cd809 28-Aug-2009 Fred Quintana <fredq@google.com> - don't schedule syncs that we will never dispatch
- expedite the INITIALIZATION sync
yncManager.java
c298a8518a8fd73a303132c7db241f10eb46c5b6 28-Aug-2009 Fred Quintana <fredq@google.com> add an accessor for Context for use by subclasses
bstractThreadedSyncAdapter.java
a640c49edafde3d00887d9c099b2d13b71f8b6d6 28-Aug-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 22984 into eclair

* changes:
fix AbstractThreadedSyncAdapter to actually cancel syncs
b19b4c711f51ef63f16727026b31216f9b4d5818 27-Aug-2009 Fred Quintana <fredq@google.com> fix AbstractThreadedSyncAdapter to actually cancel syncs
bstractThreadedSyncAdapter.java
aa52f9a7c63d4fdeba0fa16fe0aba3b47fef3738 26-Aug-2009 Dianne Hackborn <hackbod@google.com> Make SINGLE_TOP work with CLEAR_TOP.

Change-Id: Ie98b491dc4b1a2ae5e8fc8452c6410597bc9676b
ntent.java
b3b1ccfe0e8d9ea6582646a6cedb7f4669e41352 27-Aug-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 22950 into eclair

* changes:
Change these string constants back to match donut.
fe240ecf85ba4b5e95caa602398587d4cce6459b 27-Aug-2009 Dianne Hackborn <hackbod@google.com> Change these string constants back to match donut.

Unfortunately we are stuck with the donut ones, can't change these in Eclair
to be the more correct names.

Change-Id: Id8aaa2e90cd21631b18a36bea3755a63d0e6d577
ntent.java
c748541ca0caffbe33c1d4690773d89c06bb3253 27-Aug-2009 Suchi Amalapurapu <asuchitra@google.com> Add a null check in PackageParser
m/PackageParser.java
3cff76aaa893049d02467a231d477e86a0f80daa 27-Aug-2009 Fred Quintana <fredq@google.com> make sure that the sync thread is protected by a consistent lock
bstractThreadedSyncAdapter.java
c848b7023bcb19d7a392eb9f4669e56906e5382c 26-Aug-2009 Fred Quintana <fredq@google.com> clean up the too many deletes dialog
yncManager.java
16c758fb156cc8184e9c3ace7aa4717af4bb05ea 26-Aug-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 22702 into eclair

* changes:
run the sync thread at background priority
9acc030be474db2bc2371440a12cbdc478238689 25-Aug-2009 Dianne Hackborn <hackbod@google.com> Implement issue #2071750: add a pre-boot upgrade step.

Change-Id: I7133a03a6bf302dbac00c5f8b0420071d2453f89
ntent.java
75d797c2e78d53f49d05b518adb14fd57e0c785c 26-Aug-2009 Fred Quintana <fredq@google.com> run the sync thread at background priority
bstractThreadedSyncAdapter.java
4a51c20ce607c74914f90fd897f04080121ac13b 22-Aug-2009 Dianne Hackborn <hackbod@google.com> I am getting tired of the java doc warnings, so fix them.

Change-Id: I2205eebae419eaf4a0992c9f5b7cd807eb843fe1
ontentResolver.java
ontext.java
m/IPackageManager.aidl
m/ProviderInfo.java
725fcbf5ec0cbbe7fe9b899fe7acd01c9170c290 24-Aug-2009 Mike Lockwood <lockwood@android.com> Fix some Javadoc typos.

Signed-off-by: Mike Lockwood <lockwood@android.com>
ntent.java
77709755b74bcc852cd511ff833c2827c0f0e1aa 21-Aug-2009 Fred Quintana <fredq@google.com> - add a reset to EntityIterator to allow it to go back to the beginning
- clean up the debug printing of SyncResult
bstractCursorEntityIterator.java
ontentProviderNative.java
ontentResolver.java
ntityIterator.java
EntityIterator.java
yncResult.java
yncStats.java
e0616ffb741b64e3bc7a1e3ad9def3d50eee53fd 19-Aug-2009 Fred Quintana <fredq@google.com> add a supportsUploading flag in the SyncAdapter description and honor it in the SyncManager
yncAdapterType.java
yncAdaptersCache.java
yncManager.java
45e2704ff512d41e22af2801d76e96955469ce8d 19-Aug-2009 Nick Pelly <npelly@google.com> API CHANGE

Javadoc, and unhide the first pieces of the Bluetooth API.

With this commit there is enough public API to connect and use an RFCOMM
connection between Bluetooth devices.
ontext.java
b763ab265130b5aa59e4de561ba3836ac294fe62 19-Aug-2009 Fred Quintana <fredq@google.com> clean up some logs and clamp the syncable value
yncStorageEngine.java
4a6679b97e0285c5b65ec5c0d9080ff90d3e9e81 17-Aug-2009 Fred Quintana <fredq@google.com> make syncadapter set whether the account is syncable
bstractThreadedSyncAdapter.java
ontentResolver.java
ontentService.java
yncAdapter.java
yncAdapterType.java
yncAdaptersCache.java
yncManager.java
yncStorageEngine.java
empProviderSyncAdapter.java
bd022f423a33f0794bb53e5b0720da2d67e4631c 15-Aug-2009 Nick Pelly <npelly@google.com> 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
ontext.java
20ea6ce0e8a758cc5c33eb2577495bf9f4dce16e 18-Aug-2009 Jim Miller <jaggies@google.com> Change get/set IsSyncable() methods to static. Add isUserFacing flag to SyncAdapterType. Update api file.
ontentResolver.java
yncAdapterType.java
718671b441c6318276e6d954a41a95db0d7e6c49 17-Aug-2009 Fred Quintana <fredq@google.com> fix build breakage
ontentResolver.java
5e787c42f2a6b3afc8ec8320a08d51b2d44b8614 17-Aug-2009 Fred Quintana <fredq@google.com> - add a "isSyncable" flag to a given account/authority pair that
indicates whether or not syncs should be attempted for it.
- add public methods to get and set this parameter
ontentResolver.java
ontentService.java
ContentService.aidl
yncManager.java
yncStorageEngine.java
921831b4dcad1898c265889430a32367e99ef6c1 17-Aug-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 21522 into eclair

* changes:
Dock changes:Docking station intents
c9f4eaf4388087f23aa97e55349850f0902a19d3 12-Aug-2009 Dan Murphy <D.Murphy@motorola.com> Dock changes:Docking station intents

Docking station intents for dock switch driver.
Add DockObserver and updated Intent.java and systemserver.jave

Signed-off-by: Dan Murphy <D.Murphy@motorola.com>

modified: core/java/android/content/Intent.java
new file: services/java/com/android/server/DockObserver.java
modified: services/java/com/android/server/SystemServer.java

Docking station updates

Add constants for the dock

Signed-off-by: Dan Murphy <D.Murphy@motorola.com>
Signed-off-by: Mike Lockwood <lockwood@android.com>
ntent.java
7341d7a104b47996445d069a695e155a07184606 14-Aug-2009 Dianne Hackborn <hackbod@google.com> More work on wallpapers.

- Do better about figuring out when to stop them and other related window
management.
- Fix problem where we were not redrawing the surface when the orientation
changed. This was the cause of the device hang.
es/Resources.java
ffd0cb04f97e62d286d185c520580d81a9c328b1 16-Aug-2009 Fred Quintana <fredq@google.com> do not merge: cherrypicked 3710f390968e683a0ad3adf0b517dfcade3564ce from master branch
bstractSyncableContentProvider.java
bstractTableMerger.java
yncManager.java
yncStateContentProviderHelper.java
yncStorageEngine.java
25660ec2c8175559d86d50bc2bfdef29589d0813 13-Aug-2009 Joe Onorato <joeo@android.com> Unbreak the sdk build.

I didn't break it, so if this doesn't fix it, somebody else should give
it a shot.
m/PackageManager.java
766cbfe44be3c5013a6a22bd6cd8ad1055a37256 13-Aug-2009 Dianne Hackborn <hackbod@google.com> Add new API to compare certs of two UIDs.
m/IPackageManager.aidl
m/PackageManager.java
a9f1dd021f8f6ee777bc4d27913bd40c42e753af 13-Aug-2009 Eric Fischer <enf@google.com> Make <font size> and <font height> in string resources respect density.

This unfortunately requires API changes because the existing text markup
classes had no access to the screen density.

TextPaint gains a "density" field so that TextView can pass the density
along. AbsoluteSizeSpan gains a new flag to indicate that its argument
is in dip instead of in physical pixels. LineHeightSpan gains an inner
interface whose chooseHeight() method includes a TextPaint argument so
it can get at the density. And when StringBlock creates the markup
objects, it now uses the density-aware versions.

Bug 1976971, Bug 2031746
es/StringBlock.java
a5f743f1fc7c5037ee7ad4ab611115b6d44af5b8 12-Aug-2009 Jeff Sharkey <jsharkey@android.com> Add AsyncQueryHandler helper for queryEntities().

Recently we added queryEntities() to the ContentProvider
interface to read out Entity objects atomically. This
change adds a helper to AsyncQueryHandler to perform these
queries on a background thread, returning the result when
finished.
syncQueryHandler.java
90f77218a24ac66bea52faef79c30d45420ce135 12-Aug-2009 Dianne Hackborn <hackbod@google.com> am b8546001: Merge change 20878 into donut

Merge commit 'b8546001701405a76dad7e6235046e592296fac2'

* commit 'b8546001701405a76dad7e6235046e592296fac2':
Fix issue #2048263: More debugging information
82e1ee93eece8fb0aec6acc3ef4ee7b1c86feec7 12-Aug-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2048263: More debugging information

We now hopefully do better about generating the anr reports, and include
information about the malloc loaded assets in meminfo.
es/AssetManager.java
08b75b1ffb856ab97e1577eb7d20c69a18fcacca 02-Aug-2009 Jeff Sharkey <jsharkey@android.com> New ContentProviderOperation to assert values during batch.

When performing a set of batch operations, some callers need
to enforce that a query has specific values. For example,
when persisting edited Contact values, we need to assert
that the RawContacts.VERSION matches the version we read out
through queryEntities().

This change adds a new TYPE_ASSERT that uses withValues()
and withSelection(), and checks all values when applying the
batch operation, bailing if any values don't match.
ontentProviderOperation.java
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 09-Aug-2009 Dianne Hackborn <hackbod@google.com> Very primitive wallpapers in a surface.

This is all of the basic pieces:

- The WallpaperService now creates a surface with the window manager for its
contents.
- There is a simple service that displays a bitmap.
- The wallpaper manager takes care of starting and stopping the service.
- The window manager knows about wallpaper windows and how to layer them with
the windows that want to be shown on top of wallpaper.

Lots and lots of issues remain, but at this point you can actually write a
wallpaper service, select it in the UI, and see it behind an activity.
ontext.java
3b7c3c6b551b95c58849e40b53b01d38714bb782 07-Aug-2009 Jeff Sharkey <jsharkey@android.com> Added lightweight exception logging to AsyncQueryHandler.

Without this, it's really hard to debug exceptions coming
over from a ContentProvider. This is lightweight logging
that is only triggered by an exception, and doesn't write a
full stacktrace.
syncQueryHandler.java
8851e163fc5bc17d139bf29cd2ec2f3926d342bc 06-Aug-2009 Fred Quintana <fredq@google.com> - add several common kinds and beef up some others
- change the ContentProviderOperation selection backref store the backref as a long instead of as a string
ontentProviderOperation.java
8cc6a5026aeb5cf9cc36529426fe0cc66714f5fb 06-Aug-2009 Dianne Hackborn <hackbod@google.com> First bit of wallpaper work.

This is mostly refactoring, adding a new WallpaperManager class that takes care
of the old wallpaper APIs on Context, so we don't need to pollute Context with
various new wallpaper APIs as they are needed. Also adds the first little
definition of a wallpaper service, which is not yet used or useful.
ontext.java
5c1207be90fdf296c1b83034b7c68915e1749284 01-Aug-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
ontext.java
ontextWrapper.java
ntent.java
ntentSender.java
m/ApplicationInfo.java
m/PackageManager.java
m/PackageParser.java
es/AssetManager.java
es/CompatibilityInfo.java
es/TypedArray.java
afcf686cb070313ae5ce6c54ac381a3a86a60ed2 31-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 25dff70f: Merge change 9039 into donut

Merge commit '25dff70f153529b87f5ad4a92f4de21e8950b1de'

* commit '25dff70f153529b87f5ad4a92f4de21e8950b1de':
Fix #2018814: System cannot correctly render assets with "wrap_content" attribute in QVGA
bad80e0dccdeaeea97991f7d092678ff0df1bc84 30-Jul-2009 Mike Lockwood <lockwood@android.com> Add Activity Intent.ACTION_REQUEST_SHUTDOWN for requesting a system shutdown.

The Intent.EXTRA_KEY_CONFIRM extra can be set to require user confirmation before shutting down.
The ACTION_REQUEST_SHUTDOWN Intent is protected by android.permission.SHUTDOWN.

Signed-off-by: Mike Lockwood <lockwood@android.com>
ntent.java
cdc0d941e8d34e63ef2f4b2eda6e040a7d902792 30-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 2bad713f: Merge change 8860 into donut

Merge commit '2bad713f31d642d5350949b90b3abe00fbd9ca55'

* commit '2bad713f31d642d5350949b90b3abe00fbd9ca55':
Fix bug 2017664
0d221012ff5fd314711c00ed30e9b807b9c454c1 30-Jul-2009 Dianne Hackborn <hackbod@google.com> Fix #2018814: System cannot correctly render assets with "wrap_content" attribute in QVGA

It turns out we were not returning the density for anything retrieved from a
TypedArray... which basically means any bitmap references from a layout or style...!!!

This is now fixed.

Also fiddle with the density compatibility mode to turn on smoothing in certain situations,
helping the look of things when they need to scale and we couldn't do the scaling at
load time.
es/AssetManager.java
es/TypedArray.java
a8675f67e33bc7337d148358783b0fd138b501ff 29-Jul-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
bstractTableMerger.java
ontentProvider.java
ialogInterface.java
ntent.java
yncStorageEngine.java
m/ApplicationInfo.java
m/IPackageManager.aidl
m/PackageParser.java
m/PathPermission.java
m/ProviderInfo.java
es/CompatibilityInfo.java
es/Configuration.java
es/Resources.java
ed06578eddde07abe325fa4c92910bb7246cd49f 28-Jul-2009 Jean-Michel Trivi <jmtrivi@google.com> Fix bug 2017664
Removed the TTS_ prefix in the TextToSpeech class to follow the standard naming convention.
Moved the TTS-related intents from the Intent class to TextToSpeech and TextToSpeech.Engine.
Renamed the TextToSpeech.Engine constants that are used as extras for the
ACTION_TTS_CHECK_TTS_DATA intent to prefix them with EXTRA_.
Cleaned up the other TextToSpeech.Engine constant to remove superfluous mentions of
"TTS" in the name.
ntent.java
bc25407b9299ae433023ddf147fe633f3b3b640c 29-Jul-2009 Jeff Sharkey <jsharkey@android.com> Expose type constants and accessor for unit tests.

Internally, ContentProviderOperation maintains a "type",
which correspond to builder methods, such as "newInsert()".

Unit tests often need to assert which operations are
being built, so this change adds a getType() accessor and
esposes the internal constants used. They are marked with
@hide so they are not exposed in the public API.
ontentProviderOperation.java
02f5228c3c224dc8804cbedd40899fa0c42bfd4a 29-Jul-2009 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of f0d83fd9 to master
7f2054392e9957d3ba8579ef08c29cfb27df564e 28-Jul-2009 Dianne Hackborn <hackbod@google.com> Updates from API review.

* AccessibilityService -- document onBind() to not be implemented.
* GestureLibrary.getLearner() -- needs to be hidden.
* IntentSender -- remove protected constructors, document that it is retrieved from a PendingIntent.
* Hide permissions: SHUTDOWN, STOP_APP_SWITCHES.
* Context -- hide BACKUP_SERVICE.
* ContextWrapper -- hide getSharedPrefs bla h blah
* Intent.parseUri() -- fix docs.
* ApplicationInfo.FLAG_TEST_ONLY?!?
* Hide MockContext.getSharedPrefs blah blah
ontext.java
ontextWrapper.java
ntent.java
ntentSender.java
m/ApplicationInfo.java
30b06eb8b98b6e6dc685cf65ad4faa25a85008c5 24-Jul-2009 Mitsuru Oshima <oshima@google.com> am 589cebe2: * Use the scaled size for surface view instead of native. The surface will be always scaled by surface flinger in compatiblity mode. The original approach confused the app because the surface size and the view size were different. * a few clean up. remo

Merge commit '589cebe2d58591403de4a77077941c0454bc91bc'

* commit '589cebe2d58591403de4a77077941c0454bc91bc':
* Use the scaled size for surface view instead of native. The surface will be always scaled
d4a1d2e14297a3387fdb5761090961e714370492 17-Jul-2009 Fred Quintana <fredq@google.com> add account manager permission checking
m/RegisteredServicesCache.java
589cebe2d58591403de4a77077941c0454bc91bc 23-Jul-2009 Mitsuru Oshima <oshima@google.com> * Use the scaled size for surface view instead of native. The surface will be always scaled
by surface flinger in compatiblity mode. The original approach confused the app because
the surface size and the view size were different.
* a few clean up. removed unsed arguments, obsolete conditions from getTranslator()
(expandable check was a bug)
es/CompatibilityInfo.java
c00c04d7d8758a5ade185d465624e47dcf1bd7c0 22-Jul-2009 Dianne Hackborn <hackbod@google.com> am 11b822d2: Simplify density compatibility to a boolean.

Merge commit '11b822d2a91ea17c34c0cb1c11e80a9a30d72864'

* commit '11b822d2a91ea17c34c0cb1c11e80a9a30d72864':
Simplify density compatibility to a boolean.
11b822d2a91ea17c34c0cb1c11e80a9a30d72864 22-Jul-2009 Dianne Hackborn <hackbod@google.com> Simplify density compatibility to a boolean.

Instead of a list, we now just have a single boolean indicating whether an
application is density aware, and this set set to true by default as of
Donut.
m/ApplicationInfo.java
m/PackageManager.java
m/PackageParser.java
es/CompatibilityInfo.java
a8339dfec9d1b2c6d6fd2f8268f8075d184f64c0 22-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 9fc20b0e: Merge change 8126 into donut

Merge commit '9fc20b0e381b5fe00b7049ef357c839cd05a33bf'

* commit '9fc20b0e381b5fe00b7049ef357c839cd05a33bf':
First pass at reworking screen density/size APIs.
c4db95c077f826585d20be2f3db4043c53d30cf5 22-Jul-2009 Dianne Hackborn <hackbod@google.com> First pass at reworking screen density/size APIs.

This changes the names of the directories in aapt, to what you see
in the list of DpiTest resources. Also adds a new "long" configuration
for wide screens, which the platform sets appropriate, and introduces
a new kind of resizeability for not large but significantly larger
than normal screens which may have compatibility issues.
m/ApplicationInfo.java
m/PackageParser.java
es/CompatibilityInfo.java
es/Configuration.java
fead9b8ad0c6e64066fb73f4285b088ab68f452b 22-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am fe6f45c8: Merge change 8098 into donut

Merge commit 'fe6f45c81463d2d28e11ac6083f2653e1286c5ef'

* commit 'fe6f45c81463d2d28e11ac6083f2653e1286c5ef':
cast is floor. Use round instead.
fe6f45c81463d2d28e11ac6083f2653e1286c5ef 22-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 8098 into donut

* changes:
cast is floor. Use round instead. This fixes a few layout issues (that was due to smaller widnow size)
61324e58c549670c015010d0be14c6af76e3e9f7 22-Jul-2009 Mitsuru Oshima <oshima@google.com> cast is floor. Use round instead.
This fixes a few layout issues (that was due to smaller widnow size)
es/CompatibilityInfo.java
078bc317b741b601b857f64393e639df0e9a7dc4 22-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 43f8d2e5: Merge change 8106 into donut

Merge commit '43f8d2e58ce75d1705ad3ee347ae4eaee5dc9b6a'

* commit '43f8d2e58ce75d1705ad3ee347ae4eaee5dc9b6a':
Add note to Intent.fillIn javadoc to describe component copying behavior.
43f8d2e58ce75d1705ad3ee347ae4eaee5dc9b6a 22-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 8106 into donut

* changes:
Add note to Intent.fillIn javadoc to describe component copying behavior.
3e391759d9e7e99fd5ab2d5400bf5acdd54dc808 22-Jul-2009 Brett Chabot <brettchabot@google.com> Add note to Intent.fillIn javadoc to describe component copying behavior.
ntent.java
fe923cf2d6b5dec2b49370d70689152e0966c40d 21-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 2c25fac2: Merge change 8036 into donut

Merge commit '2c25fac23e5daafd62238f4c3dd031e3f4cd76f1'

* commit '2c25fac23e5daafd62238f4c3dd031e3f4cd76f1':
* Disable compatibility mode for all cases.
69fff4a72d4dfc9208db79d773ef3ca23350287e 21-Jul-2009 Mitsuru Oshima <oshima@google.com> * Disable compatibility mode for all cases.
m/ApplicationInfo.java
m/PackageParser.java
cf4550c3198d6b3d92cdc52707fe70d7cc0caa9f 21-Jul-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
bstractSyncableContentProvider.java
bstractTableMerger.java
ontext.java
ontextWrapper.java
IntentReceiver.aidl
IntentSender.aidl
ntent.java
ntentFilter.java
ntentSender.aidl
ntentSender.java
yncStorageEngine.java
m/ActivityInfo.java
m/ApplicationInfo.java
m/ConfigurationInfo.java
m/IPackageManager.aidl
m/PackageManager.java
m/PackageParser.java
es/AssetFileDescriptor.java
es/AssetManager.java
es/CompatibilityInfo.java
es/Configuration.java
es/Resources.java
87d78b55095312bd7c8c5ce78d7e7bf142a89adb 21-Jul-2009 Ken Shirriff <kens@google.com> resolved conflicts for merge of 732140ce to master
c1f2836796a7dfc679547689ee8124ae0b09b60e 20-Jul-2009 Ken Shirriff <kens@google.com> Fix updates from read-only calendar.

Change 2934 introduced a bug that causes updates to an event on a
read-only shared calendar to be discarded by the device. The
issue is the server version is null for a read-only calendar.

bug=1990826
bstractTableMerger.java
a065b01904d5017232c9b51ccb174412ff57e138 20-Jul-2009 Mitsuru Oshima <oshima@google.com> am 841f13c8: * Reverted the change in PackageParser that I checked by accident * More surface view fix. - correct event translation on surface view. - use compatible window * removed FLAG_NO_COMPATIBILITY_SCALE. It was my misunderstanding of how SurfaceView works,

Merge commit '841f13c8e9ff3f7695b6c18a8abcec3c947983ff'

* commit '841f13c8e9ff3f7695b6c18a8abcec3c947983ff':
* Reverted the change in PackageParser that I checked by accident
bec99bffeecacb1af603966391014895f9a16025 20-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 5c536e91: Merge change 7840 into donut

Merge commit '5c536e9162721c460699a041959a0d67de1d20db'

* commit '5c536e9162721c460699a041959a0d67de1d20db':
Fix issue where scaled bitmap sizes could be wrong.
469b4c67adc77a87eb2c9ed9217edf1778002828 20-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am aad0fcc9: Merge change 7783 into donut

Merge commit 'aad0fcc9619eb72c18a6afff48ebc9d4011f0f54'

* commit 'aad0fcc9619eb72c18a6afff48ebc9d4011f0f54':
Add "nodpi" density, and expose a bunch of density-related APIs.
841f13c8e9ff3f7695b6c18a8abcec3c947983ff 18-Jul-2009 Mitsuru Oshima <oshima@google.com> * Reverted the change in PackageParser that I checked by accident
* More surface view fix.
- correct event translation on surface view.
- use compatible window
* removed FLAG_NO_COMPATIBILITY_SCALE. It was my misunderstanding of how SurfaceView works, and this was not necessary.
* Added compatibility related info to package dumpsys
m/PackageParser.java
es/CompatibilityInfo.java
2784ff0af88128f66ae690b73d48fb7e4a211e68 19-Jul-2009 Dianne Hackborn <hackbod@google.com> Fix issue where scaled bitmap sizes could be wrong.

The Bitmap functions to get the scaled width/height couldn't actually
do the right thing because they didn't know the destination they would
be drawing to. Now there are two forms of them, taking an explicit
parameter specifying the destination.
es/CompatibilityInfo.java
a53b828635fce8b6b2d3e3377d74d72070056623 17-Jul-2009 Dianne Hackborn <hackbod@google.com> Add "nodpi" density, and expose a bunch of density-related APIs.

Also update the DpiTest app to use nodpi images, and try to have a mode
where it turns off compatibility though it's not quite working.
es/CompatibilityInfo.java
es/Resources.java
0fde7de9d660e4acdb8404f954f75d8c331b5d45 17-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 54f09101: Merge change 7613 into donut

Merge commit '54f09101381fa63dca35ae4ea0ba3802ee863236'

* commit '54f09101381fa63dca35ae4ea0ba3802ee863236':
* Use Fede In/Out animation if one of opening/closing apps is in compatibility mode.
54f09101381fa63dca35ae4ea0ba3802ee863236 17-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 7613 into donut

* changes:
* Use Fede In/Out animation if one of opening/closing apps is in compatibility mode. * preserve compatibility window flag when the app updates window's layout params. * Added assertion in DEFAULT_COMPATIBILITY_INFO object to prevent unintentional modification. * A few minor updates * log/dump message improvement * Removed unnecessary method in FadeInOutAnimator * Fixed 100 char issue in WindwoManagerServer.java
5a2b91dc14e4c92e91c6abcc795f54ac98ee5866 17-Jul-2009 Mitsuru Oshima <oshima@google.com> * Use Fede In/Out animation if one of opening/closing apps is in compatibility mode.
* preserve compatibility window flag when the app updates window's layout params.
* Added assertion in DEFAULT_COMPATIBILITY_INFO object to prevent unintentional modification.
* A few minor updates
* log/dump message improvement
* Removed unnecessary method in FadeInOutAnimator
* Fixed 100 char issue in WindwoManagerServer.java
es/CompatibilityInfo.java
bd3e0ce5a288d75e5e420f52da31c34be59063f4 17-Jul-2009 Charles Chen <clchen@google.com> resolved conflicts for merge of 3e522c45 to master
49a60157d1c4b49450410fc30b8fcd8ab0e3480b 16-Jul-2009 Charles Chen <clchen@google.com> Adding public intents for TTS to enable checking for TTS data,
installing TTS data, and finding out when the TTS queue has
finished processing.
ntent.java
6a294263f78ce8177de48cb9480bbe39d9e442cd 16-Jul-2009 Jean-Baptiste Queru <jbq@google.com> Merge commit 'goog/readonly-korg-master' into merge_korg_master

* commit 'goog/readonly-korg-master':
Fixed Android issue #400, where the Intent documentation was inaccurate in a number of places, undoubtedly causing untold grief to innumerable masses.
Bug Fixed for libagl.
8294fadb155a33da8a40d8412afb35e6b424afcb 16-Jul-2009 Joe Onorato <joeo@android.com> Make sync not start until setup wizard is done.
yncManager.java
yncStorageEngine.java
6630e4a1dc40850eb7a4ddc8aaa06479469e8c4d 15-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am b5c735d3: Merge change 7106 into donut

Merge commit 'b5c735d35c8c1d2fb4e4654fbffcdb62d5acab4d'

* commit 'b5c735d35c8c1d2fb4e4654fbffcdb62d5acab4d':
Return adjusted display for WindowManager.getDefaultDisplay()
b5c735d35c8c1d2fb4e4654fbffcdb62d5acab4d 15-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 7106 into donut

* changes:
Return adjusted display for WindowManager.getDefaultDisplay()
c66c0abbb8015c3b9ced5f520a8803d5a8d35cb9 14-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 83a066c6: Merge change 7135 into donut

Merge commit '83a066c6d8ed953c3f5a1a44316509c9a9b0c6c2'

* commit '83a066c6d8ed953c3f5a1a44316509c9a9b0c6c2':
Fixes lock on Home. Adds a new API on Dialog to get a callback when the dialog
83a066c6d8ed953c3f5a1a44316509c9a9b0c6c2 14-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 7135 into donut

* changes:
Fixes lock on Home. Adds a new API on Dialog to get a callback when the dialog shows.
045163ac16d5fba694a3b46d0cecb3d84863eaed 14-Jul-2009 Romain Guy <romainguy@android.com> Fixes lock on Home. Adds a new API on Dialog to get a callback when the dialog
shows.
ialogInterface.java
dace230043314d6fab1c5ced4b031eaccd814c25 14-Jul-2009 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of b06ea706 to master
b06ea706530e6d19eb2a1a9a7ae6c5dd77d80af0 13-Jul-2009 Dianne Hackborn <hackbod@google.com> Add reporting of activity movement for search manager.

This adds a new API with the activity manager to find out about movement between
activities. For my sanity, the old IActivityWatcher is now renamed to
IActivityController, and the new activity movement interface is named
IActivityWatcher.

This changes the search manager itself to use the new API to manage its state.
Note that there are still problems when going back to the search dialog after
it was hidden -- the suggestions window no longer appears until you explicitly
dismiss and re-show it.
yncStorageEngine.java
ddd12535f095d8d056716c3290faf50ec52a538a 14-Jul-2009 Mitsuru Oshima <oshima@google.com> Return adjusted display for WindowManager.getDefaultDisplay()
es/Resources.java
e375fc5cacc187d1ee217a72e31f59a20e129c62 14-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 6787

* changes:
AbstractSyncableContentProvider must only call onAccountsChanged with GAIA accounts
a62e3e4d0f4d18f4b8d31876e035d3ae57f88f40 13-Jul-2009 Mitsuru Oshima <oshima@google.com> am ba3ba579: * Use cached resources for widgets

Merge commit 'ba3ba57921dedaaef669719c0359c0caf60e008b'

* commit 'ba3ba57921dedaaef669719c0359c0caf60e008b':
* Use cached resources for widgets
602bee5bf2a4f688b050077291288b473a7cc6db 13-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am cf29e116: Merge change 6867 into donut

Merge commit 'cf29e116129f38309c18ba14b9893b079a712289'

* commit 'cf29e116129f38309c18ba14b9893b079a712289':
CLOSE_SYSTEM_DIALOGS can't be protected.
ba3ba57921dedaaef669719c0359c0caf60e008b 09-Jul-2009 Mitsuru Oshima <oshima@google.com> * Use cached resources for widgets
m/PackageParser.java
es/Resources.java
4554f30c834723db6946400bf1827be4419a3134 11-Jul-2009 Dianne Hackborn <hackbod@google.com> CLOSE_SYSTEM_DIALOGS can't be protected.
ntent.java
54a26bc85f4fe972e929e42b986c65a710a229b3 11-Jul-2009 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 889c2d37 to master
8ecb36eec61f119f500a805b82438aadb3396a19 10-Jul-2009 Yusuf T. Mobile <yusuf.saib@T-Mobile.com> Fixed Android issue #400, where the Intent documentation was inaccurate in a number of places, undoubtedly causing untold grief to innumerable masses.
ntent.java
45107e0c328dc689effc62b7a5a5afc6f18c94ac 10-Jul-2009 Marc Blank <mblank@google.com> AbstractSyncableContentProvider must only call onAccountsChanged with GAIA accounts

Currently, ASCP calls onAccountsChanged with an array of ALL accounts, but
ContactsProvider and CalendarProvider assume these are all GAIA accounts.
This can cause a looping crash in acore, so the code has been changed to
only pass an array of GAIA accounts...
bstractSyncableContentProvider.java
854060af30f928c0a65591e9c8314ae17056e6b8 10-Jul-2009 Dianne Hackborn <hackbod@google.com> Fix bug #1873249i: Apps can DoS/brick device

This is the problem where various things are listening for broadcasts
(such as battery status, PIN/PUK/Network) that an application can send
to cause harm to the system.

Solving this is tricky because many of these broadcasts are sticky,
and I have never figured out how to do permissions with sticky
broadcasts in a sane way. So instead, I am going to punt on the
general problem and just brute force it:

There is new a way for system components to declare specific
broadcast actions to be protected, which means that only the system
and the phone can send them. This is good enough for now. None
of it is exposed in the public API so we can make something a little
less stupid in the future if we ever need to.
ntent.java
m/IPackageManager.aidl
m/PackageParser.java
e3f054411b9f025848f68389c4e2c325e76b3826 09-Jul-2009 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 2af632f8 to master
2af632f87d487deaa5b2eb71341cfc4f0c0d1173 08-Jul-2009 Dianne Hackborn <hackbod@google.com> Add new <path-permission tag for use by global search.

This adds a new <path-permission> tag you can use inside of a <provide>
to define additional path-based permissions that broaden the global
read and write permissions. The initial use for this will be global
search, so that a content provider that is protected by permissions
can make a part of itself available to global search under another
permission. This addresses the issue with global search not being able
to request permissions it would need of providers it doesn't know
about at build time.
ontentProvider.java
m/PackageParser.java
m/PathPermission.java
m/ProviderInfo.java
c3f60ddaeadb69c1e85198e609e575f55ecc28ac 09-Jul-2009 Mitsuru Oshima <oshima@google.com> am 1ecf5d28: Re-implementation of large screen support using window manager. * added background filler surface to fill the outer rim. Using the same layer as dim surface because they never co-exists (in the same window) * clean up the obsolete code in Compatibilt

Merge commit '1ecf5d28817f0a051e77488380dcd5bc622ea169'

* commit '1ecf5d28817f0a051e77488380dcd5bc622ea169':
Re-implementation of large screen support using window manager.
1ecf5d28817f0a051e77488380dcd5bc622ea169 07-Jul-2009 Mitsuru Oshima <oshima@google.com> Re-implementation of large screen support using window manager.
* added background filler surface to fill the outer rim. Using the same layer as dim surface because
they never co-exists (in the same window)
* clean up the obsolete code in CompatibiltyMode/ViewRoot for support large screen support.
m/ApplicationInfo.java
m/PackageParser.java
es/CompatibilityInfo.java
507f8ed2e05f97b20307b900fbc7308e0f8fdb83 09-Jun-2009 Kenny Root <kenny@the-b.org> Fix Configuration documentation for new constants

* Added KEYBOARD_NOKEYS link to Javadoc for keyboard.
* Added NAVIGATION_NONAV link to Javadoc for navigation.
es/Configuration.java
81a476f654155df27aa564a4aebf931eab588e6d 20-May-2009 Alan Jones <skyphyr@gmail.com> Fixed Issue 2682: ContentProvider query() SDK docs deprecated
ontentProvider.java
ce3082e745144f11239f1263eceeaa40b1c215fa 07-Jul-2009 Mitsuru Oshima <oshima@google.com> am 569076c9: widgets scaling fix. Use container\'s compatibility info and display metrics when container and widgets disagree.

Merge commit '569076c9f6bdadb4d3285a26e069634a839b5b87'

* commit '569076c9f6bdadb4d3285a26e069634a839b5b87':
widgets scaling fix. Use container's compatibility info and display metrics when container and widgets disagree.
569076c9f6bdadb4d3285a26e069634a839b5b87 03-Jul-2009 Mitsuru Oshima <oshima@google.com> widgets scaling fix. Use container's compatibility info and display metrics when container and widgets disagree.
es/CompatibilityInfo.java
es/Resources.java
f6a34dd6ab7f4803a2bbfed1cc8910e879e6a79d 07-Jul-2009 -b master <yamasani@google.com> resolved conflicts for merge of b7195159 to master
b71951591d72cddb4dbc3d39778dfcb5597a5733 07-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 6287 into donut

* changes:
Restore GPS state and ringer/vibrate toggles.
70c874ba20b586712a7550b6c5efeb6dc0fdf9fa 06-Jul-2009 Amith Yamasani <yamasani@google.com> Restore GPS state and ringer/vibrate toggles.

Inform backup manager when sync flags change. Set ringer/vibrate mode.
yncStorageEngine.java
a2b5dab5b7796d3967c73df95154810ae38efd82 07-Jul-2009 Romain Guy <romainguy@android.com> am 870e09fc: Fixes #1963229. Introduces Context#isRestricted().

Merge commit '870e09fcd2dfdc12ac318962efd28b0420c562bb'

* commit '870e09fcd2dfdc12ac318962efd28b0420c562bb':
Fixes #1963229. Introduces Context#isRestricted().
870e09fcd2dfdc12ac318962efd28b0420c562bb 07-Jul-2009 Romain Guy <romainguy@android.com> Fixes #1963229. Introduces Context#isRestricted().

A restricted Context is a special type of Context that prevents specific features
from being used. For instance, android:onClick, used by View, can be dangerous when
used from within apps widgets. By using a restricted Context to inflate apps widgets,
widgets providers are prevented from using android:onClick.
ontext.java
ontextWrapper.java
5d16cd046298ec9e009cfdd2056c64c1a9ac5ba3 03-Jul-2009 Dianne Hackborn <hackbod@google.com> am d7cd29da: Add facility to run setup wizard after an update.

Merge commit 'd7cd29da91ccc0aba1f1097e19366f9ca36c7ce1'

* commit 'd7cd29da91ccc0aba1f1097e19366f9ca36c7ce1':
Add facility to run setup wizard after an update.
8ec5b83fc8f8aa68805c4d5987f8f75bb28250ca 02-Jul-2009 Dianne Hackborn <hackbod@google.com> Merge commit '1dac277f' into manualmerge

Required rewriting the okay battery broadcast stuff.

Conflicts:
services/java/com/android/server/status/StatusBarPolicy.java
d7cd29da91ccc0aba1f1097e19366f9ca36c7ce1 01-Jul-2009 Dianne Hackborn <hackbod@google.com> Add facility to run setup wizard after an update.

The system now keeps a tag of the last version (just an arbitrary string)
that the setup wizard was run for. If this is different than the current
one in the setup wizard, then setup is launched at boot.

This introduces a new intent action for the part of the setup wizard that
gets run for an ungrade, which the system uses to find its current version
tag for comparing against what was last stored. It is up to the launched
setup activity update the stored setting to reflect its current value,
once it is happy.
ntent.java
1dac277f93a80c53a870b8924508dd2af81293de 27-Jun-2009 Dianne Hackborn <hackbod@google.com> Implement issue #1943927 (need notification in status bar when adb is active)

This is a little hacky -- we just assume that if adb is enabled and power
is connected through usb, then it is active.

The icons and text are temporary until final design is provided.
ntent.java
f6ff591decdea6299aab1a5b6f95917800571de4 30-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 72eb0aca: Merge change 5483 into donut

Merge commit '72eb0acad5cffc57ce5006f6deab29ee259e461e'

* commit '72eb0acad5cffc57ce5006f6deab29ee259e461e':
Expand support for different screen sizes.
723738cfaec3dd7b0fe152c872c41bebf94074c4 26-Jun-2009 Dianne Hackborn <hackbod@google.com> Expand support for different screen sizes.

Applications can now declare that they support small, normal, or
large screens. Resource selection can also be done based on these
sizes. By default, pre-Donut apps are false for small and large,
and Donut or later apps are assumed to support all sizes. In either
case they can use <supports-screens> in their manifest to declare
what they actually support.
m/ActivityInfo.java
m/ApplicationInfo.java
m/PackageParser.java
es/AssetManager.java
es/CompatibilityInfo.java
es/Configuration.java
es/Resources.java
ecf2b68d834d334de218dc427615b4ca05c0293a 25-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 7941e903: Merge change 5091 into donut

Merge commit '7941e903c973af66075bbd4fa4bcadf021a61ccc'

* commit '7941e903c973af66075bbd4fa4bcadf021a61ccc':
* new screen resolution support impl.
7941e903c973af66075bbd4fa4bcadf021a61ccc 25-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 5091 into donut

* changes:
* new screen resolution support impl. * use full window for activities, and shift & clip the content * refactored the compatibility code, and introdcued Translator class to handle cooridnate translations. * removed a workaround to handle an activity with configChagne=rotation in old implementation. * I'll fix background issue on rotation in next CL.
69866cea4dff6dfc6ccf36878593ce949faab9ea 25-Jun-2009 Charles Chen <clchen@google.com> resolved conflicts for merge of 5158cc55 to master
0477954a6788138f8224b634fa1955cef56d47bc 24-Jun-2009 Charles Chen <clchen@google.com> Adding TTS_QUEUE_PROCESSING_COMPLETED action to the list of Intents
ntent.java
64f59342d41849bd365cb43fad7505d5e3daa417 21-Jun-2009 Mitsuru Oshima <oshima@google.com> * new screen resolution support impl.
* use full window for activities, and shift & clip the content
* refactored the compatibility code, and introdcued Translator class to handle cooridnate translations.
* removed a workaround to handle an activity with configChagne=rotation in old implementation.
* I'll fix background issue on rotation in next CL.

* removed unnecessary scaling code in SurfaceView, which I forgot to remove when I changed SurfaceView
not to scale the content.
es/CompatibilityInfo.java
es/Resources.java
ac9385ef3105fb7464e1f46049c62755a8b7f0e9 23-Jun-2009 Fred Quintana <fredq@google.com> - clean up the sync settings names to:
(get|set)SyncAutomatically
(get|set)MasterSyncAutomatically
- change SYNC_EXTRAS_FORCE to SYNC_EXTRAS_MANUAL to mace clear that
this overrides the .*SyncAutomatically settings
- make ContentResolver methods that call the sync controls methods
in IContentService so that SDK users can use them
- rename startSync to requestSync to reinforce the fact that a sync
is not immediately or always started when this method is called
- add an Account parameter to all the sync settings and control methods
- change the sync control methods to take a String authority rather than a Uri uri
bstractSyncableContentProvider.java
ontentResolver.java
ontentService.java
ContentService.aidl
yncAdapterType.aidl
yncAdapterType.java
yncManager.java
yncStatusObserver.java
yncStorageEngine.java
empProviderSyncAdapter.java
c13713519dd92f0008415bef8499d85bd7e3edb4 19-Jun-2009 Dianne Hackborn <hackbod@google.com> am 3d74bb4a: Add "why?" button to low battery dialog.

Merge commit '3d74bb4ab27ae9601f5c9c3706fad287845fb672'

* commit '3d74bb4ab27ae9601f5c9c3706fad287845fb672':
Add "why?" button to low battery dialog.
3d74bb4ab27ae9601f5c9c3706fad287845fb672 19-Jun-2009 Dianne Hackborn <hackbod@google.com> Add "why?" button to low battery dialog.

This takes the user to the power usage activity.
ntent.java
c73e9ad55a28f6bec3260e919573e0597fdd23ab 19-Jun-2009 Suchi Amalapurapu <asuchitra@google.com> am bc806f65: Remove deprecated api. Aptly rename freeStorageWithIntent to freeStorage.

Merge commit 'bc806f65edc33f6eda0f475ac84e5e037a013a90'

* commit 'bc806f65edc33f6eda0f475ac84e5e037a013a90':
Remove deprecated api. Aptly rename freeStorageWithIntent to freeStorage.
bc806f65edc33f6eda0f475ac84e5e037a013a90 18-Jun-2009 Suchi Amalapurapu <asuchitra@google.com> Remove deprecated api. Aptly rename freeStorageWithIntent to freeStorage.
m/IPackageManager.aidl
m/PackageManager.java
1e3fc65b1f86bc97f4f375ae747658b555978ca7 19-Jun-2009 Wu-cheng Li <wuchengli@google.com> am 649f99e8: Add Intent.ACTION_SEND_MULTIPLE

Merge commit '649f99e8347984c1e031dae302830f4c9ebd3df4'

* commit '649f99e8347984c1e031dae302830f4c9ebd3df4':
Add Intent.ACTION_SEND_MULTIPLE
649f99e8347984c1e031dae302830f4c9ebd3df4 17-Jun-2009 Wu-cheng Li <wuchengli@google.com> Add Intent.ACTION_SEND_MULTIPLE

Activities can use this intent to send multiple data.
ntent.java
8dbbe3b52f815c49be986814743a521f802b4785 19-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 63e7155c: Merge change 4696 into donut

Merge commit '63e7155c7d1d0c3f0027400aa09e9a45f648a80d'

* commit '63e7155c7d1d0c3f0027400aa09e9a45f648a80d':
Fix targetSdkVersion, make resize mode a flag, delayed dexopt, easy ApplicationInfo.
63e7155c7d1d0c3f0027400aa09e9a45f648a80d 19-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 4696 into donut

* changes:
Fix targetSdkVersion, make resize mode a flag, delayed dexopt, easy ApplicationInfo.
5c1e00b14d2ef10ec76abf3e951fa8003a67f558 19-Jun-2009 Dianne Hackborn <hackbod@google.com> Fix targetSdkVersion, make resize mode a flag, delayed dexopt, easy ApplicationInfo.

- Fix a bug where targetSdkVersion could not be set if minSdkVersion. Stupid, stupid.
Also make sure to fail if minSdkVersion is for a code name. Really stupid.

- Change the API for resize compatibility mode to be a bit in the flags field, instead
of a separate boolean.

- Implement delayed dexopting, to avoid the looong full dexopt during boot. This is
only enabled for "eng" builds. When in this mode, the activity manager will make
sure that a dexopt has been done before loading an .apk into a process, and will
try to avoid displaying ANRs if they are due to the dexopt causing some operation
to take longer than it normally would (though I make no guarantees about this
totally working).

- Add API to Context to get the ApplicationInfo for its package, for easy access to
things like targetSdkVersion.
ontext.java
ontextWrapper.java
m/ApplicationInfo.java
m/IPackageManager.aidl
m/PackageManager.java
m/PackageParser.java
es/CompatibilityInfo.java
351b36c414b31e720532850761d95a9ec12ee8b4 19-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 0bceb77b: Merge change 4669 into donut

Merge commit '0bceb77b004a688ca044b794e0622385c6e2953d'

* commit '0bceb77b004a688ca044b794e0622385c6e2953d':
Fixes #1922373. Resolves a case of keys collision in Resources' cache.
fdbf6a7eac39a23e0e910c29678fe00d4eb56c99 19-Jun-2009 Romain Guy <romainguy@android.com> Fixes #1922373. Resolves a case of keys collision in Resources' cache.

The Resources class keeps a cache of known resources. The keys used by the
cache are stored as int primitives. For any given drawable resource, a key
is built thusly:

TypeValue.assetCookie << 24 | TypedValue.data

In the case of a plain color drawable, assetCookie always equals -1, that
is 0xFF once right-shifted and the data contains the color value. Which
means the key for the following two colors is the same:

0xFF000000
0x00000000

Because of the int storage and the use of the (constant in this case)
asset cookie, the alpha channel of a color is ignored. That means that
if you first load an opaque black color (0xFF000000), subsequent loads
of a totally transparent black color (0x00000000) will give you an
opaque black color.

A workaround is to use a transparent color that is not black,
0x00000001 for instance. Note that this issue would arise with any color
and any opacity level.

The solution to fix this issue is simply to change the cache to use
longs instead of ints to represent the keys. A key thus becomes:

TypedValue.assetCookie << 32 | TypedValue.data

This allows us correct storage of all colors at the cost of a few bytes.
The tradeoff is that we can keep caching ColorDrawable, which is
definitely worth it.
es/Resources.java
abb01dba70fa52b3576fa9f6a175f3840b959fde 18-Jun-2009 Dianne Hackborn <hackbod@google.com> am c14b9ccd: Extend Intent/Uri conversion for use by Browser

Merge commit 'c14b9ccdf13163cae5ce5d21bcf377010b37594b'

* commit 'c14b9ccdf13163cae5ce5d21bcf377010b37594b':
Extend Intent/Uri conversion for use by Browser
c14b9ccdf13163cae5ce5d21bcf377010b37594b 18-Jun-2009 Dianne Hackborn <hackbod@google.com> Extend Intent/Uri conversion for use by Browser

This introduces a new Uri form of Intent with an "intent:" scheme, and a
corresponding update to the parser to handle these, so that the browser
can use this generic facility for starting activities based on the links
that are clicked and allow for web pages to link to arbitrary intents.

There is also a new "package" field on Intent which allows you to limit
the components it finds to a given package. This replaces the new method
that was added to PackageManger for doing this when resolving activities,
and implements it for all Intent queries against the package manager.
ntent.java
m/IPackageManager.aidl
m/PackageManager.java
e1fae30e20b1515eeb036a7c103e1e70de130bdd 18-Jun-2009 Suchi Amalapurapu <asuchitra@google.com> Merge commit '0781df94' into manualmerge

Conflicts:
Android.mk
api/current.xml
31708d464546b0ae7ca147e1d2708b904ab88f32 18-Jun-2009 Romain Guy <romainguy@android.com> resolved conflicts for merge of 3571ff40 to master
0781df943e5a7a72ac82394874b6200d14ddd02c 17-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 4129 into donut

* changes:
Remove circular dependency in PackageManager. api freeStorage uses PendingIntent from android.app Create a new public IntentSender class that can be used by PackageManager instead. This new class uses IIntentSender internally and can only be created by PendingIntent for now. Provide a new getIntentSender api in PendingIntent to create an instance of this class. Move IIntentSender and IIntentReceiver from android.app to android.content Change imports of IIntentSender and IIntentReceiver to reflect the new package name The PackageManager api has been named as freeStorageWithIntent and will be renamed as freeStorage once the older api(which has been deprecated) will be removed shortly.
1ccac75e1f1b97eccb916a8de04fc1012b30f6e5 12-Jun-2009 Suchi Amalapurapu <asuchitra@google.com> Remove circular dependency in PackageManager. api freeStorage uses PendingIntent from android.app
Create a new public IntentSender class that can be used by PackageManager instead.
This new class uses IIntentSender internally and can only be created by PendingIntent for now.
Provide a new getIntentSender api in PendingIntent to create an instance of this class.
Move IIntentSender and IIntentReceiver from android.app to android.content
Change imports of IIntentSender and IIntentReceiver to reflect the new package name
The PackageManager api has been named as freeStorageWithIntent and will be renamed as freeStorage
once the older api(which has been deprecated) will be removed shortly.
IntentReceiver.aidl
IntentSender.aidl
ntentSender.aidl
ntentSender.java
m/IPackageManager.aidl
m/PackageManager.java
4969af7d9f58f8e08b7beca20a87f4da2131f72a 17-Jun-2009 Romain Guy <romainguy@android.com> Fixes #1107690. Updates javadoc for Intent.java, android:value -> android:name.

Also fixes the <type android:value /> tags, they are now <data android:mimeType />
ntent.java
21bb0deb36af32339521038cdbd827f74468df4a 16-Jun-2009 Fred Quintana <fredq@google.com> beef up the syncadapter API
bstractThreadedSyncAdapter.java
SyncAdapter.aidl
yncAdapter.java
yncAdapterNew.java
yncManager.java
ef29379c28596dfa02702fad46bbe2f599e2e073 16-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 4023 into donut

* changes:
Fix IntentFilter constructor to properly process the action parameter.
9788976b1465ce982b5ae7c741345edd0ecd9322 15-Jun-2009 Fred Quintana <fredq@google.com> add icon and label to the authenticator description
yncAdaptersCache.java
yncManager.java
m/RegisteredServicesCache.java
36800d4450233d7729879717be89ce2c6e8effb3 16-Jun-2009 Ken Shirriff <kens@google.com> Fix AbstractTableMerger for new Account format.

eclair has a _SYNC_ACCOUNT_TYPE field that isn't in donut,
so SELECT_UNSYNC needs to be updated with that field.
The lack of it causes a SQLiteException.
bug=1906760
bstractTableMerger.java
bf85d63cb8858432ff845250fdaffdb556d2ef1b 12-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 78f0f8cb: Merge changes 3953,3954 into donut

Merge commit '78f0f8cb2efe9410127c39201e240f6d438eb53c'

* commit '78f0f8cb2efe9410127c39201e240f6d438eb53c':
Make the file backup helper not crash if a file you requested
Fix SharedPrefsBackupHelper so it doesn't hard code the paths to the files.
56e78d9a04dc779d40bd45710b4706f25d841cb5 12-Jun-2009 Phil Dubach <phillipd@google.com> Fix IntentFilter constructor to properly process the action parameter.
ntentFilter.java
c933fb663e4748c4fa3f92fc63649e5199519a86 11-Jun-2009 Fred Quintana <fredq@google.com> add a data_version column to the data table
ontentProviderOperation.java
23ecae3bbb60c5af940f3a22170d75eb6ac05b69 11-Jun-2009 Joe Onorato <joeo@android.com> Fix SharedPrefsBackupHelper so it doesn't hard code the paths to the files.

This took quite a bit of refactoring.
ontext.java
ontextWrapper.java
bd6b11dd582d7c7dde64e355f967f5ed77a9870d 11-Jun-2009 Mitsuru Oshima <oshima@google.com> am e5fb3288: resolution support fix/improvement * adding compatibility menu * backup gravity * set expanable=true if the screen size is hvga * density. * added "supports any density" mode. I\'ll add sdk check later. * disallow to catch orientation c

Merge commit 'e5fb328825995aa33b5b7ecf8b5bee2b17f81715'

* commit 'e5fb328825995aa33b5b7ecf8b5bee2b17f81715':
resolution support fix/improvement
e5fb328825995aa33b5b7ecf8b5bee2b17f81715 10-Jun-2009 Mitsuru Oshima <oshima@google.com> resolution support fix/improvement
* adding compatibility menu
* backup gravity
* set expanable=true if the screen size is hvga * density.
* added "supports any density" mode. I'll add sdk check later.
* disallow to catch orientation change event if the app is not expandable. This
was causing layout problem under non-expandable mode. I discussed this with Mike C
and we agreed to do this approach for now. We'll revisit if this causes problem to
a lot of applications.
m/ApplicationInfo.java
es/CompatibilityInfo.java
es/Resources.java
acc44cce8fad6e6ae1ced85915c129900ad7b890 09-Jun-2009 Kenny Root <kenny@the-b.org> Fix Configuration documentation for new constants

* Added KEYBOARD_NOKEYS link to Javadoc for keyboard.
* Added NAVIGATION_NONAV link to Javadoc for navigation.
es/Configuration.java
793f0ffc238a27f853c84ce3d2838ed33a1c2895 08-Jun-2009 Ken Shirriff <kens@google.com> resolved conflicts for merge of 410ea6 to master
e7eb9662c3f719d50b0e671c05dae174c7f17802 08-Jun-2009 Ken Shirriff <kens@google.com> Fix contact creation.

This was broken by my change 2934.
bug=1903820
bstractTableMerger.java
76ff31b201da1e4b0b9cfe21bf5a877cc9d645fe 06-Jun-2009 Suchi Amalapurapu <asuchitra@google.com> am d299b819: Add a new attribute to android manifest for defining the GLES version number. This attribute is parsed by the PackageParser into ConfigurationInfo. The major and minor version numbers are defined as the higher and lower order bits.

Merge commit 'd299b8194dde8c4875e5f032918ab35ebad8b1f1'

* commit 'd299b8194dde8c4875e5f032918ab35ebad8b1f1':
Add a new attribute to android manifest for defining the GLES version number.
26763754495841294835a635b6ea49335e20821b 06-Jun-2009 Ken Shirriff <kens@google.com> resolved conflicts for merge of 716b56 to master
d299b8194dde8c4875e5f032918ab35ebad8b1f1 05-Jun-2009 Suchi Amalapurapu <asuchitra@google.com> Add a new attribute to android manifest for defining the GLES version number.
This attribute is parsed by the PackageParser into ConfigurationInfo. The major
and minor version numbers are defined as the higher and lower order bits.
m/ConfigurationInfo.java
m/PackageParser.java
716b56817aee1c0b584266a686b18a1c02ea0116 05-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 2934 into donut

* changes:
Don't crash on null edit url.
7805835e0fb58a8f20be37099e8fd3c93631c76f 05-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 7ebda6f1: Merge change 3265 into donut

Merge commit '7ebda6f110708bdb704f8700a6b3473249b12baf'

* commit '7ebda6f110708bdb704f8700a6b3473249b12baf':
A workaround to fix rotation issue. I'm remote now and hard to do troubleshooting (i cannot rotate emulator in nx..)
2f5e6b2d31f445a4e9faf3a7ace94f9ef6948336 05-Jun-2009 Mitsuru Oshima <oshima@google.com> A workaround to fix rotation issue. I'm remote now and hard to do troubleshooting (i cannot rotate emulator in nx..)
es/CompatibilityInfo.java
7a9e348c0776d0d9ad773fbf304bff3fd0de2e7b 22-May-2009 Ken Shirriff <kens@google.com> Don't crash on null edit url.

bug=1568060
bstractTableMerger.java
d8dfeb5ee82d679f491cd20e776907a69fb4f27c 04-Jun-2009 Fred Quintana <fredq@google.com> - make it easier to add content values to the ContentProviderOperation
- add the group membership common kind as well as some IM utilities to the ContactsContract
ontentProviderOperation.java
342d59d3197caa1cd1de7a600c6e0ba4a59883f4 04-Jun-2009 Mitsuru Oshima <oshima@google.com> am 9189cabb: * Moved supports-density tag under manifest * Refactored Compatibility code * Added CompatibilityInfo class * Removed getApplicationScale from Context * Added Resources#getCompatibilityInfo so that RootView can get the compatibility info w/o going through Context * Expandable support * Added expandable tag under manifest * Old application w/o expandable is given the default screen size ([320, 480] x density). * The non-expandable window is centered.

Merge commit '9189cabb0b6c6c28232fe6f412b7ba7a37352a6a'

* commit '9189cabb0b6c6c28232fe6f412b7ba7a37352a6a':
* Moved supports-density tag under manifest
9189cabb0b6c6c28232fe6f412b7ba7a37352a6a 03-Jun-2009 Mitsuru Oshima <oshima@google.com> * Moved supports-density tag under manifest
* Refactored Compatibility code
* Added CompatibilityInfo class
* Removed getApplicationScale from Context
* Added Resources#getCompatibilityInfo so that RootView can get the compatibility info w/o going through Context
* Expandable support
* Added expandable tag under manifest
* Old application w/o expandable is given the default screen size ([320, 480] x density).
* The non-expandable window is centered.
ontext.java
ontextWrapper.java
m/ApplicationInfo.java
m/PackageManager.java
m/PackageParser.java
es/CompatibilityInfo.java
es/Resources.java
c0cbfda0fe0184bbb282bde4d894e2ff210c0e47 03-Jun-2009 Bjorn Bringert <bringert@android.com> am 963cd006: Allow creating AssetFileDescriptors for MemoryFiles.

Merge commit '963cd006c45716b034f656bf7e7179e6476f7e4d'

* commit '963cd006c45716b034f656bf7e7179e6476f7e4d':
Allow creating AssetFileDescriptors for MemoryFiles.
963cd006c45716b034f656bf7e7179e6476f7e4d 29-May-2009 Bjorn Bringert <bringert@android.com> Allow creating AssetFileDescriptors for MemoryFiles.

This allows content providers to use in-memory data to implement
ContentProvider.openAssetFile(), instead of just normal files
and sockets as before.

To test cross-process use of AssetFileDescriptors for MemoryFiles,
a test content provider and a client for it are added to
AndroidTests.

Fixes http://b/issue?id=1871731
es/AssetFileDescriptor.java
ae8c5b868fa518306b50e08da9e5258ad075fa61 03-Jun-2009 Satish Sampath <satish@android.com> am 8dbe612d: Adding internal method replacePreferredActivity.

Merge commit '8dbe612dc60526d635e57257b58627b33a099678'

* commit '8dbe612dc60526d635e57257b58627b33a099678':
Adding internal method replacePreferredActivity.
8dbe612dc60526d635e57257b58627b33a099678 03-Jun-2009 Satish Sampath <satish@android.com> Adding internal method replacePreferredActivity.

This was required because we need a way to set the preferred activity for a
particular intent filter based on user selection (in our case the
ACTION_WEB_SEARCH intent filter for selecting the preferred search engine from
the list of available search engines providers). The current
addPreferredActivity call was not sufficient since it leaves the existing
preferred activities in the list and does not remove them, which this call
does.
m/IPackageManager.aidl
m/PackageManager.java
03d9490758c9318cee6d14d3cc5007556dce92d0 22-May-2009 Fred Quintana <fredq@google.com> - create a new generic ISyncAdapter implementation, SyncAdapterNew
- change the applyBatch to take an ArrayList rather than an []
- change Entity to be a final flass that contains ContentValues
- remove the ability to update/insert Entities by a ContentProviderOperation
bstractSyncableContentProvider.java
ontentProvider.java
ontentProviderClient.java
ontentProviderNative.java
ontentProviderOperation.java
ontentProviderResult.java
ontentResolver.java
ntity.java
ntityIterator.java
ContentProvider.java
EntityIterator.java
yncAdapterNew.java
7c49790cde0acb494b6e8980662842c95dd8859a 01-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> am 162c9d0e: Merge change 2805 into donut

Merge commit '162c9d0e90eaa71adc8c7d1456d1a9a95e638c47'

* commit '162c9d0e90eaa71adc8c7d1456d1a9a95e638c47':
base: Rename WRITE_SDCARD -> WRITE_EXTERNAL_STORAGE
5a3a77dabd744d5be79d7745c2a977c108a9ad98 01-Jun-2009 San Mehat <san@google.com> base: Rename WRITE_SDCARD -> WRITE_EXTERNAL_STORAGE

Signed-off-by: San Mehat <san@google.com>
m/PackageParser.java
ad6042aa2342d0a869f84772774b47ae87346ccf 01-Jun-2009 Christopher Tate <ctate@google.com> am 181fafaf: Retool the backup process to use a new \'BackupAgent\' class

Merge commit '181fafaf48208978b8ba2022683ffa78aaeddde1'

* commit '181fafaf48208978b8ba2022683ffa78aaeddde1':
Retool the backup process to use a new 'BackupAgent' class
181fafaf48208978b8ba2022683ffa78aaeddde1 14-May-2009 Christopher Tate <ctate@google.com> Retool the backup process to use a new 'BackupAgent' class

Backups will be handled by launching the application in a special
mode under which no activities or services will be started, only
the BackupAgent subclass named in the app's android:backupAgent
manifest property. This takes the place of the BackupService class
used earlier during development.

In the cases of *full* backup or restore, an application that does
not supply its own BackupAgent will be launched in a restricted
manner; in particular, it will be using the default Application
class rather than any manifest-declared one. This ensures that the
app is not running any code that may try to manipulate its data
while the backup system reads/writes its data set.
m/ApplicationInfo.java
m/PackageParser.java
8e19b7c0e4c578703a1df0f8346b22b9e7c8a0f7 29-May-2009 Android (Google) Code Review <android-gerrit@google.com> am a3d28bd5: Merge change 520 into donut

Merge commit 'a3d28bd5c278f750c70f2b87fce23df221cd4a01'

* commit 'a3d28bd5c278f750c70f2b87fce23df221cd4a01':
Enforce permissions for PhoneStateListener events.
45515659438964ec47f4feac247f0e9dce587c86 24-Apr-2009 Jaikumar Ganesh <jaikumar@google.com> Enforce permissions for PhoneStateListener events.

PhoneStateListener events like LISTEN_CALL_STATE_CHANGED,
have privacy information like phone numbers and hence,
need to be protected with a permission. The permission
READ_PHONE_STATE is used for this purpose. Use the permission
trick to ensure backward compatability.
m/PackageParser.java
385bb79ebb436e5672915eac2fc1a4fcdedf88b6 23-May-2009 Dianne Hackborn <hackbod@google.com> am b181118b: Define TARGET_CPU_ABI for finding native code in .apks

Merge commit 'b181118b6e58c0014da4e9d52bf38548adc73a8a'

* commit 'b181118b6e58c0014da4e9d52bf38548adc73a8a':
Define TARGET_CPU_ABI for finding native code in .apks
b181118b6e58c0014da4e9d52bf38548adc73a8a 22-May-2009 Dianne Hackborn <hackbod@google.com> Define TARGET_CPU_ABI for finding native code in .apks
m/PackageManager.java
8943737692169f564cd34a9c8d471f3a5d438712 16-May-2009 Fred Quintana <fredq@google.com> add ipc support to batching
ontentProvider.java
ontentProviderClient.java
ontentProviderNative.java
ontentProviderOperation.java
ontentProviderResult.java
ontentResolver.java
ContentProvider.java
EntityIterator.java
9f9cdcfa82d31f3aab97b5b4d789e4866d73b861 20-May-2009 Alan Jones <skyphyr@gmail.com> Fixed Issue 2682: ContentProvider query() SDK docs deprecated
ontentProvider.java
843ef36f7b96cc19ea7d2996b7c8661b41ec3452 20-May-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
ctiveSyncInfo.aidl
ctiveSyncInfo.java
omponentName.java
ontentResolver.java
ontentService.java
ontentServiceNative.java
ontext.java
ontextWrapper.java
ContentService.aidl
ContentService.java
SyncStatusObserver.aidl
ntent.java
ntentFilter.java
yncManager.java
yncProvider.java
yncStatusInfo.aidl
yncStatusInfo.java
yncStorageEngine.java
riMatcher.java
m/ApplicationInfo.java
m/IPackageInstallObserver.aidl
m/IPackageManager.aidl
m/PackageManager.java
m/PackageParser.java
es/Configuration.java
es/Resources.java
72f3aa3762c630e5e4afd731f51e62c821c69c09 19-May-2009 Daisuke Miyakawa <dmiyakawa@google.com> Fix a bug in AbstractSyncableContentProvider.java and modify comments.
bstractSyncableContentProvider.java
7c3e18c558820de543e3aa4fb3a777940106166c 19-May-2009 Daisuke Miyakawa <dmiyakawa@google.com> resolved conflicts w/ 842a1f4b0beaacfaab940318fe19909e087aae81 merge....
bstractSyncableContentProvider.java
841ddefcb5720bcc1925f373b66224411f99a9fa 19-May-2009 Daisuke Miyakawa <dmiyakawa@google.com> Hand merge from cupcake_dcm to donut, part 2.

Modify Contacts-related java files and update vCard importer code to the latest.
bstractSyncableContentProvider.java
62da8461ed5317fe78ae5e3793662694e7fc99a3 14-May-2009 Dianne Hackborn <hackbod@google.com> Implement compatibility support for WRITE_SDCARD permission.

Now old applications will automatically be granted it. Also renamed it from
SDCARD_WRITE to WRITE_SDCARD to be consistent with our other permissions,
and re-arranged how we do targetSdkVersion to actually be usuable for this
kind of stuff.

Note that right now this results in basically all apps being given the
WRITE_SDCARD permission, because their targetSdkVersion is not set. I will
be dealing with that in a future change.
m/ApplicationInfo.java
m/PackageParser.java
a96cbb435d7b2197ab2b61fd98d14cbd6e0c5c3d 14-May-2009 Dianne Hackborn <hackbod@google.com> Implement compatibility support for WRITE_SDCARD permission.

Now old applications will automatically be granted it. Also renamed it from
SDCARD_WRITE to WRITE_SDCARD to be consistent with our other permissions,
and re-arranged how we do targetSdkVersion to actually be usuable for this
kind of stuff.

Note that right now this results in basically all apps being given the
WRITE_SDCARD permission, because their targetSdkVersion is not set. I will
be dealing with that in a future change.
m/ApplicationInfo.java
m/PackageParser.java
ce31b2361db630cf1347fa42dd77e610a4eeb96d 05-May-2009 Fred Quintana <fredq@google.com> enhance ContentProvider with the ability to perform batch operations
bstractSyncableContentProvider.java
ontentProvider.java
ontentProviderOperation.java
ontentProviderResult.java
perationApplicationException.java
dd6face5a66ed6c9ac24b2754ec046b82881182c 15-May-2009 Mihai Preda <preda@google.com> am eae850ce: Allow intent resolution to be constrained by package name.

Merge commit 'eae850cefe7e149f396c9e8ca1f34ec02b20a3f0'

* commit 'eae850cefe7e149f396c9e8ca1f34ec02b20a3f0':
Allow intent resolution to be constrained by package name.
eae850cefe7e149f396c9e8ca1f34ec02b20a3f0 13-May-2009 Mihai Preda <preda@google.com> Allow intent resolution to be constrained by package name.
m/IPackageManager.aidl
m/PackageManager.java
76879bc2343779d4d2a870b7bd46b0544c0cc46c 15-May-2009 svetoslavganov <svetoslavganov@google.com> resolved conflicts w/ 75986cf9bc57ef11ad70f36fb77fbbf5d63af6ec merge....
75986cf9bc57ef11ad70f36fb77fbbf5d63af6ec 15-May-2009 svetoslavganov <svetoslavganov@google.com> Accessibility feature - framework changes (replacing 698, 699, 700, 701 and merging with the latest Donut)
ontext.java
a64b860749ad7e5f9e887013d87b56b928c5d405 14-May-2009 Android (Google) Code Review <android-gerrit@google.com> am aa642c0c: Merge changes 1591,1596 into donut

Merge commit 'aa642c0cc20293137376d44f8221876c121e5be9'

* commit 'aa642c0cc20293137376d44f8221876c121e5be9':
Get the backup calling through to the file backup helper.
Fix typos.
Add a new feature to android.os.Debug to add the ability to inject only specific fields when calling setFieldsOn().
Fixes #1836075. Adds consistency checks for the View hierarchy. To enable them, you need a debug build and ViewDebug.sConsistencyCheckEnabled set to true in debug.prop. This change also lets you easily enable drawing and layout profiling in ViewRoot by setting ViewRoot.sProfileDrawing, ViewRoot.sProfileLayout and ViewRoot.sShowFps in debug.prop with a debug build.
Add Intent.ACTION_APP_ERROR
ec2d74d40f9b7a8bf96feeb45a5d054d8b0ce0dd 14-May-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 1545 into donut

* changes:
Add Intent.ACTION_APP_ERROR
5369ad6f5e4e9f972b30fb8f16e90557ef8431b0 14-May-2009 Android (Google) Code Review <android-gerrit@google.com> am 541ff5d: Merge change 1566 into donut

Merge commit '541ff5df00984580e0245b3ae2c89b93e76b7c08'

* commit '541ff5df00984580e0245b3ae2c89b93e76b7c08':
Fix issue #1838944: Application sync settings cant be changed with auto sync on
541ff5df00984580e0245b3ae2c89b93e76b7c08 14-May-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 1566 into donut

* changes:
Fix issue #1838944: Application sync settings cant be changed with auto sync on
a19fd7a0d604900375a38601821f8c2984e0eced 13-May-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 1466

* changes:
define Intent.ACTION_REMOTE_INTENT, which replaces the old GTalk data messaging intent "android.intent.action.GTALK_DATA_MESSAGE_RECEIVED".
97ecc9cbe7eccafc0923d7655daf07f4c2ea9791 12-May-2009 Wei Huang <weih@google.com> define Intent.ACTION_REMOTE_INTENT, which replaces the old GTalk data messaging intent "android.intent.action.GTALK_DATA_MESSAGE_RECEIVED".

The remote intent concept shouldn't be limited to Google or GTalkService. It should be owned by the Android platform.
ntent.java
271cee6de82749b362c91406d9ad6dbc2fa09d5a 13-May-2009 Dianne Hackborn <hackbod@google.com> Fix issue #1838944: Application sync settings cant be changed with auto sync on
yncStorageEngine.java
a086a973ddc2e1986116a54c284b3e2c71bff297 13-May-2009 Dianne Hackborn <hackbod@google.com> am e7fe35b: Whoops fix installing. I am dumb.

Merge commit 'e7fe35b88aa77766d322b8a683995a2bdae6210d'

* commit 'e7fe35b88aa77766d322b8a683995a2bdae6210d':
Whoops fix installing. I am dumb.
6a8d5332f00bdfade6674b312e7166940aa28348 08-May-2009 Fred Quintana <fredq@google.com> content provider entities
bstractCursorEntityIterator.java
ontentProvider.java
ontentProviderClient.java
ontentProviderNative.java
ontentResolver.java
ntity.aidl
ntity.java
ntityIterator.java
ContentProvider.java
EntityIterator.java
e7fe35b88aa77766d322b8a683995a2bdae6210d 13-May-2009 Dianne Hackborn <hackbod@google.com> Whoops fix installing. I am dumb.
m/PackageParser.java
86b6c530f96360cd13f0011af99d927a6e1f80fe 13-May-2009 Jacek Surazski <jaceks@google.com> Add Intent.ACTION_APP_ERROR

This intent is sent to the installer when an app it installed
crashes/ANRs.
ntent.java
d2b4929ba00939c1aa5037927f27427637cc2f68 13-May-2009 Dianne Hackborn <hackbod@google.com> am ade3eca: Implement issue #1783881 (manifest option for adb-install-on

Merge commit 'ade3ecad94d1f4431576f53bae26c35efbf7a2c9'

* commit 'ade3ecad94d1f4431576f53bae26c35efbf7a2c9':
Implement issue #1783881 (manifest option for adb-install-only apps)
d39afbdc92e95e597c311e78ac32edaad27fcf0d 12-May-2009 Joe Onorato <joeo@android.com> Make android.content.ComponentName implement java.lang.Comparable.
omponentName.java
ade3ecad94d1f4431576f53bae26c35efbf7a2c9 12-May-2009 Dianne Hackborn <hackbod@google.com> Implement issue #1783881 (manifest option for adb-install-only apps)

You can now use android:testOnly="true" to not allow your .apk to be installed
as a normal app. The only way to do so is with the pm command and giving the
-t option, which sets a new INSTALL_ALLOW_TEST flag when installing.

I also used this to clean up the install API... actually, mostly to hide
it, since it is not accessible to apps so shouldn't be in the SDK. We
will be doing some more work on it, so this will prevent adding yet
another backwards-compatibility-for-no-reason version.
m/ApplicationInfo.java
m/IPackageInstallObserver.aidl
m/PackageManager.java
m/PackageParser.java
c64322c35212e919906ffd66118c7d5d3ad36636 28-Apr-2009 Jacek Surazski <jaceks@google.com> PackageManager keeps track of who installed what.

Stores the package name of the installer app in packages.xml
m/IPackageManager.aidl
m/PackageManager.java
6b61d41f72d4613384a78e792ab0e58f038cda65 12-May-2009 Joe Onorato <joeo@android.com> Make android.content.ComponentName implement java.lang.Comparable.
omponentName.java
65e13171e12cb9e9fc2f608d0c8a92cd3c098648 28-Apr-2009 Jacek Surazski <jaceks@google.com> PackageManager keeps track of who installed what.

Stores the package name of the installer app in packages.xml
m/IPackageManager.aidl
m/PackageManager.java
7a6287a077837d41d47c3fbe0f6258c78d5ccbd4 11-May-2009 Android (Google) Code Review <android-gerrit@google.com> am 3b30d80: Merge change 1377 into donut

Merge commit '3b30d80f5ef10a3c5c596283ef1f15e9ff6a3aa4'

* commit '3b30d80f5ef10a3c5c596283ef1f15e9ff6a3aa4':
Fix typo in javadoc
3b30d80f5ef10a3c5c596283ef1f15e9ff6a3aa4 11-May-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 1377 into donut

* changes:
Fix typo in javadoc
c53fc4ec9ec2e808f25738b1bad3a21a87e28651 11-May-2009 Marco Nelissen <marcone@google.com> Fix typo in javadoc
ntent.java
d01547761a8ec4bd1bcc4799a537b6fdcd9d24bc 11-May-2009 Dianne Hackborn <hackbod@google.com> am 1655be4: Fix issue #1837610 and #1753079

Merge commit '1655be46d2b7d45f071a6a1411ac8bd41c749c21'

* commit '1655be46d2b7d45f071a6a1411ac8bd41c749c21':
Fix issue #1837610 and #1753079
1655be46d2b7d45f071a6a1411ac8bd41c749c21 08-May-2009 Dianne Hackborn <hackbod@google.com> Fix issue #1837610 and #1753079

Issue 1837610 Adding a Widget before Running the Associated App Causes a Force Close

We were not retrieving the shared libraries of an application when deliving a
broadcast to an explicit component.

Issue 1753079 loading class path of instrumented app into instrumentation may load wrong path when instrumented app shares process with other apps:

We were using the ApplicationInfo that was used to originally create the process, not the one that the
instrumentation is against.
m/PackageManager.java
849e89c94d206d9723fd5635ed6e7a69814849e3 09-May-2009 Dianne Hackborn <hackbod@google.com> am 851a541: Implement targetSdkVersion and maxSdkVersion, plus version c

Merge commit '851a54143c15a1c33361efae2db3f7f45059b472'

* commit '851a54143c15a1c33361efae2db3f7f45059b472':
Implement targetSdkVersion and maxSdkVersion, plus version code names.
851a54143c15a1c33361efae2db3f7f45059b472 08-May-2009 Dianne Hackborn <hackbod@google.com> Implement targetSdkVersion and maxSdkVersion, plus version code names.

This adds new attributes for specifying a targetSdkVersion and maxSdkVersion.
There is a new ApplicationInfo flag that is set if the application has set
its targetSdkVersion to the current platform or later. Also you can now
use a string for minSdkVersion and targetSdkVerion, to indicate you are
building against a development tree instead of an official platform.
m/ApplicationInfo.java
m/PackageManager.java
m/PackageParser.java
3531fdb1d9a0ca536bd7a7a27d35b3e62c318ad9 08-May-2009 The Android Open Source Project <initial-contribution@android.com> merge 55280a9

Merge commit '55280a9'
55280a91884b9256e8db6af6a09f28b3feeaa9d8 08-May-2009 Dianne Hackborn <hackbod@google.com> Improve shutdown process to send broadcast for applications.

This introduces a new class in the base platform for performing a clean
shutdown (which was copied from the classes in the policies). It
includes new features to send a shutdown broadcast for applications
to do cleanup, and ot have the activity manager pause the current
activity before proceeding with the shutdown. These facilities are
also use to write at the most recent stat files for sync, battery
and user activity.
ntent.java
yncManager.java
yncStorageEngine.java
2d5ed1fa3d29cdf1afb3bdfc3fc6a061f9f3feb3 07-May-2009 Dianne Hackborn <hackbod@google.com> Another fix: look at db version to determine if there is a type column.
yncStorageEngine.java
534032610c6701b63ab94f0336beeb9f4a830f2d 06-May-2009 Dianne Hackborn <hackbod@google.com> Fix [Issue 1835218]

IllegalStateException already initialized in SyncStorageEngine.init
I used the wrong column name for the new account type.
yncStorageEngine.java
7a1355950172b7a549820e9a2cd4a9b2099ec32f 06-May-2009 Dianne Hackborn <hackbod@google.com> merged 231cc608d06ffc31c24bf8aa8c8275bdd2636581
231cc608d06ffc31c24bf8aa8c8275bdd2636581 28-Apr-2009 Dianne Hackborn <hackbod@google.com> Rewrite SyncStorageEngine to use flat files and in-memory data structures.

The previous implementation used a database for storing all of its state, which could cause
a significant amount of IO activity as its tables were updated through the stages of a sync.
This new implementation replaces that in-memory data structures, with hand-written code
for writing them to persistent storage.

There are now 4 files associated with this class, holding various pieces of its state that
should be consistent. These are everything from a main XML file of account information that
must always be retained, to a binary file of per-day statistics that can be thrown away at
any time. Writes of these files as scheduled at various times based on their importance of
the frequency at which they change.

Because the database no longer exists, there needs to be a new explicit interface for
interacting with the sync manager database. This is provided by new APIs on IContentService,
with a hidden method on ContentResolver to retrieve the IContentService so that various
system entities can use it. Other changes in other projects are required to update to the
new API.

The goal here is to have as little an impact on the code and functionality outside of
SyncStorageEngine, though due to the necessary change in API it is still somewhat extensive.
ctiveSyncInfo.aidl
ctiveSyncInfo.java
ontentResolver.java
ontentService.java
ontentServiceNative.java
ContentService.aidl
ContentService.java
SyncStatusObserver.aidl
yncManager.java
yncProvider.java
yncStatusInfo.aidl
yncStatusInfo.java
yncStorageEngine.java
718d8a2d7ff3e864a73879eb646f46c14ab74d07 30-Apr-2009 Fred Quintana <fredq@google.com> decouple SyncAdapter from ContentProvider
bstractSyncableContentProvider.java
ontentProvider.java
ontentProviderClient.java
ontentProviderNative.java
ontentResolver.java
ContentProvider.java
yncAdapter.java
yncAdapterType.java
yncAdaptersCache.java
yncManager.java
yncableContentProvider.java
m/IPackageManager.aidl
m/ProviderInfo.java
m/RegisteredServicesCache.java
f8997690da3790a1ff87f1f96a6e68fbb79b5ddc 30-Apr-2009 Christopher Tate <ctate@google.com> am 487529a: First baby steps towards settings backup

Merge commit '487529a70cd1479ae8d6bbfb356be7e72542c185'

* commit '487529a70cd1479ae8d6bbfb356be7e72542c185':
First baby steps towards settings backup
487529a70cd1479ae8d6bbfb356be7e72542c185 29-Apr-2009 Christopher Tate <ctate@google.com> First baby steps towards settings backup

This change adds a sketched outline of the backup system architecture, with
all of the major pieces represented other than client-side helpers for
specific types of data. IBackupManager and BackupService are public so that
we can write test apps against SDK-domain symbols from the outset.

What code exists in this change hasn't been tested and may crash. It's the
beginnings of the real implementation but of course is barely begun.
ontext.java
c2839e087041b16a1ee7292b85459a396c25c771 29-Apr-2009 Mitsuru Oshima <> am 13735a2: Merge branch \'readonly-p4-donut\' into donut

Merge commit '13735a255dedd2c2e3b0cff66f0be2e17671f553'

* commit '13735a255dedd2c2e3b0cff66f0be2e17671f553':
AI 147976: Compatibility mode support. Part 2.
4cc574be4ee4c20af7c3d1aa901315505efd4e4e 29-Apr-2009 Mitsuru Oshima <> am 257eef3: Merge branch \'readonly-p4-donut\' into donut

Merge commit '257eef353dfc9519b63e3fe2616505c5534b460a'

* commit '257eef353dfc9519b63e3fe2616505c5534b460a':
AI 147845: Compatibility mode support. Part 1
137b0c9d6430ccb519c82a1198048cf413e06c5e 29-Apr-2009 Android (Google) Code Review <android-gerrit@google.com> am 0b8ffd1: Merge change 460 into donut

Merge commit '0b8ffd17bc6641fc522db3e842a868b6cdbf6d82'

* commit '0b8ffd17bc6641fc522db3e842a868b6cdbf6d82':
More optimization of dumpsys output.
13735a255dedd2c2e3b0cff66f0be2e17671f553 29-Apr-2009 Mitsuru Oshima <> Merge branch 'readonly-p4-donut' into donut
8169daed2f7a8731d478b884b1f455c747b88478 29-Apr-2009 Mitsuru Oshima <> AI 147976: Compatibility mode support. Part 2.
* Introduced ApplicationScale (may not be good name. CompatibilityScale? CanvasScale? Pls let me know if you have better idea)
* Changes to RootView / SurfaceView
- Makes the app believe it's running in the supported density/resolution.
- Makes the window manager believe it's running at the right density/resolution.
* Added methods to Rect/Event for scaling up/down.
Known issues:
* certain kind of images (such as nine patch for buttons) seesm to be loaded not by app, thus does not take the scale into account,
which, in turn, is causing layout issue.
* ZoomButton in MapView is rendered in wrong place
* Transparent region on Surface is not correct
* Specifying different densities in one process is not working.
BUG=1770627

Automated import of CL 147976
ontext.java
ontextWrapper.java
es/Resources.java
257eef353dfc9519b63e3fe2616505c5534b460a 27-Apr-2009 Mitsuru Oshima <> Merge branch 'readonly-p4-donut' into donut
8d112675879a2b83197d3b4ae4fb623abd1a1ec3 27-Apr-2009 Mitsuru Oshima <> AI 147845: Compatibility mode support. Part 1
Adding supports-density tag to manifest file/ApplicationInfo.
BUG=1752478

Automated import of CL 147845
m/ApplicationInfo.java
m/PackageManager.java
m/PackageParser.java
d9d2f1140b52fd0c014e9deac59f6000564b7e84 23-Apr-2009 Fred Quintana <fredq@google.com> change the sync framework and users to understand Account
bstractSyncableContentProvider.java
bstractTableMerger.java
ontentResolver.java
SyncAdapter.aidl
yncAdapter.java
yncManager.java
yncStateContentProviderHelper.java
yncStorageEngine.java
yncableContentProvider.java
empProviderSyncAdapter.java
0b8ffd17bc6641fc522db3e842a868b6cdbf6d82 23-Apr-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 460 into donut

* changes:
More optimization of dumpsys output.
1d442e0d990b581357f33f5463c7c5cb49b551e8 21-Apr-2009 Dianne Hackborn <hackbod@google.com> More optimization of dumpsys output.

There are three major classes of changes here:

- Avoid writing lines where their values are often empty, false, or some other typical thing.
- Use partial writes to the PrintWriter to avoid creating temporary strings.
- Use StringBuilder where we need to generate real String objects (and where possible cache the result).
ntent.java
ntentFilter.java
m/PackageParser.java
es/Configuration.java
69c1c4983fc2ebe736838c89aea5748aff21058b 22-Apr-2009 Jeff Hamilton <> Merge branch 'readonly-p4-master'
b0c6dbd53b26b172fe8eb7d117550e4edf7a0c9c 22-Apr-2009 Jeff Hamilton <> AI 147255: am: CL 147253 am: CL 147250 Fix a nasty typo in the docs for ContentResolver.update(). No code changes.
Original author: jham
Merged from: //branches/cupcake/...
Original author: android-build

Automated import of CL 147255
ontentResolver.java
be456ac934c3d9839cdac00bd331fe5d82727246 22-Apr-2009 Jeff Hamilton <> Merge branch 'readonly-p4-donut' into donut
348c1796d460e43e45e582739956c02c5bc8f602 22-Apr-2009 Jeff Hamilton <> AI 147253: am: CL 147250 Fix a nasty typo in the docs for ContentResolver.update(). No code changes.
Original author: jham
Merged from: //branches/cupcake/...

Automated import of CL 147253
ontentResolver.java
5e8c31ac31107c0cbc4a103e4f62342b07b5876b 15-Apr-2009 The Android Open Source Project <initial-contribution@android.com> Merge commit 'korg/cupcake'
81ddb7929fdb824c213509399968b8ddeeea6c74 14-Apr-2009 Dianne Hackborn <> Merge branch 'readonly-p4-master'
b3cddae4994128983b6bf7e808a7670f90cc30e4 14-Apr-2009 Dianne Hackborn <> AI 146011: am: CL 145859 am: CL 145561 Fix issue #1710534 (documentation doesn't mention that activity resolver (and others) handle MIME types as case-sensitive).
Original author: hackbod
Merged from: //branches/cupcake/...
Original author: android-build

Automated import of CL 146011
ntent.java
ntentFilter.java
75534fbe246e5562779500bc7cf7f0ddfe9b8330 14-Apr-2009 Dianne Hackborn <> Merge branch 'readonly-p4-master'
935ae463d495d41155e27feb849768ad2b8b16db 14-Apr-2009 Dianne Hackborn <> AI 145994: Integrate #145778 from Donut.

Automated import of CL 145994
ntent.java
es/Configuration.java
es/Resources.java
1710799c47c02aba18aef7693e38a84cd170560e 13-Apr-2009 Dianne Hackborn <> Merge branch 'readonly-p4-donut' into donut
06f36b401d5020190c3c8662c8ff50a9b7776387 13-Apr-2009 Dianne Hackborn <> AI 145859: am: CL 145561 Fix issue #1710534 (documentation doesn't mention that activity resolver (and others) handle MIME types as case-sensitive).
Original author: hackbod
Merged from: //branches/cupcake/...

Automated import of CL 145859
ntent.java
ntentFilter.java
5f05afeeb6dd88a4f16b0a279afa3b4d0b631213 11-Apr-2009 Andy Stadler <> Merge branch 'readonly-p4-donut' into donut
f8a7ceaef2e7d5cd530c9426bde91b6fa9a40b75 11-Apr-2009 Andy Stadler <> AI 145778: Manual merge changes 145382-145384 from cupcake.

Automated import of CL 145778
ntent.java
es/Configuration.java
es/Resources.java
1c004f0ae1fb2f0c113d7d34f61e3cddabad3815 10-Apr-2009 Dianne Hackborn <> AI 145561: Fix issue #1710534 (documentation doesn't mention that activity resolver (and others) handle MIME types as case-sensitive).
BUG=1710534

Automated import of CL 145561
ntent.java
ntentFilter.java
06ba55476ee9703c876d223cd41bd73c5f85f42d 10-Apr-2009 Christopher Tate <ctate@google.com> Integrate new power connnect/disconnect broadcasts

Two new broadcasts, Intent.ACTION_POWER_CONNECTED and
Intent.ACTION_POWER_CONNECTED, that are issued when the device is plugged
and unplugged from USB or AC power. This pulls two changes from the
open-source Gerrit repo into the internal Donut codeline:

1241 fda6fae Added broadcasts for external power events.
9491 37f8ca1 Fix system service crash when booting while on battery power

The current.xml API description has also been updated to include the
new Intent fields; the new API was approved in the original OSS change.
ntent.java
48276ab989a4d775961ce30a43635a317052672a 09-Apr-2009 Dianne Hackborn <> AI 145383: API review: clean up a bunch of @hides that have been pending API review.
Either expose them, or official hide them with an explanation for why.
BUG=1779439

Automated import of CL 145383
ntent.java
es/Configuration.java
es/Resources.java
93e7e3b6711955cefbf952c754f262c84c8c6dd8 03-Apr-2009 Chris Tate <> Merge branch 'readonly-p4-master'
a34df8a2ba450b2c2ad83ccbbac30b80e2706bb2 03-Apr-2009 Chris Tate <> AI 144405: am: CL 144307 am: CL 144306 Fix SDK issue 1716562 - Broadcast mechanism documentation should be improved.
Original author: ctate
Merged from: //branches/cupcake/...
Original author: android-build

Automated import of CL 144405
roadcastReceiver.java
ontext.java
a919486d934286e81f55917627423daaaa59c8b1 03-Apr-2009 Chris Tate <> AI 144307: am: CL 144306 Fix SDK issue 1716562 - Broadcast mechanism documentation should be improved.
Original author: ctate
Merged from: //branches/cupcake/...

Automated import of CL 144307
roadcastReceiver.java
ontext.java
a48875a7d709b66ebb8a3167e227a4c76065f3f1 02-Apr-2009 Chris Tate <> AI 144306: Fix SDK issue 1716562 - Broadcast mechanism documentation should be improved.
BUG=1716562

Automated import of CL 144306
roadcastReceiver.java
ontext.java
40c970363993c843dc7b92a528b35ab01186f501 02-Apr-2009 Bjorn Bringert <> Merge branch 'readonly-p4-master'
3a184efa127da097d7fa5a37bc944b47a7025858 02-Apr-2009 Bjorn Bringert <> AI 144034: am: CL 144032 Added missing import to fix breakage caused by CL 144008.
Original author: bringert
Merged from: //branches/donutburger/...

Automated import of CL 144034
riMatcher.java
ffe5e108019c13533dda3f89305c6faa331006c8 02-Apr-2009 Bjorn Bringert <> Merge branch 'readonly-p4-master'
5d015d7331923f852a2a8675b4203b29f6c34d96 02-Apr-2009 Bjorn Bringert <> AI 144010: am: CL 144008 UriMatcher: Avoid repeated calls to Uri.getPathSegments()
in UriMatcher.match().
Before, every call to UriMatcher.match() called
Uri.getPathSegments() N + 1 times,
where N is the size of the list returned by
Uri.getPathSegments(). Since some of the implementations
of Uri.getPathSegments() are O(N), UriMatcher.match() was O(N^2).
This CL fixes the problem by calling uri.getPathSegments() once in
the beginning of match(). That should be safe since Uri is
immutable.
Original author: bringert
Merged from: //branches/donutburger/...

Automated import of CL 144010
riMatcher.java
096f41d53909a9ef68cb5d6f06524212e96c43b6 01-Apr-2009 Bjorn Bringert <> AI 144032: Added missing import to fix breakage caused by CL 144008.

Automated import of CL 144032
riMatcher.java
dc0ec1866556c6132c9dd2e6dfaef9306784d955 01-Apr-2009 Bjorn Bringert <> AI 144008: UriMatcher: Avoid repeated calls to Uri.getPathSegments()
in UriMatcher.match().
Before, every call to UriMatcher.match() called
Uri.getPathSegments() N + 1 times,
where N is the size of the list returned by
Uri.getPathSegments(). Since some of the implementations
of Uri.getPathSegments() are O(N), UriMatcher.match() was O(N^2).
This CL fixes the problem by calling uri.getPathSegments() once in
the beginning of match(). That should be safe since Uri is
immutable.
BUG=1751158

Automated import of CL 144008
riMatcher.java
762d30a31365e5cae9ba7c2802de60a2f8c3513d 29-Mar-2009 The Android Open Source Project <initial-contribution@android.com> Merge branch 'open_source' into google_internal

Conflicts:
core/java/android/widget/TwoLineListItem.java
core/res/res/values/public.xml
preloaded-classes
a2debb356d857b2ee1ca26f95ed0136398393acd 28-Mar-2009 Ed Heyl <> AI 143278: Merge 142826: Add tutorial to platform. The tutorial can be launched with the new Intent ACTION_SYSTEM_TUTORIAL and
is available through Settings->About->System Tutorial

Automated import of CL 143278
ntent.java
e1861133d51b9e6a6f658eb366630ad4f4d3ff8f 27-Mar-2009 The Android Open Source Project <initial-contribution@android.com> Merge commit 'korg/cupcake'

Conflicts:
core/java/android/webkit/WebView.java
core/java/android/widget/TwoLineListItem.java
preloaded-classes
303736d17de11dbc0a633cbfc130e9dadd50f6e2 26-Mar-2009 Jim Miller <> Automated import from //branches/donutburger/...@142826,142826
ntent.java
7e4ad355903797983c96f57ddd11bbb73a563b30 26-Mar-2009 Jim Miller <> Automated import from //branches/cupcake/...@142825,142825
ntent.java
603073430bbcb1bd29db7afb9b14e2732ad589fb 25-Mar-2009 Fred Quintana <> Automated import from //branches/master/...@142414,142414
ontext.java
yncManager.java
22f711423e66750cd44a64e75372ea66304fb9a1 25-Mar-2009 Fred Quintana <> Automated import from //branches/master/...@141380,141380
bstractTableMerger.java
f63220f58e29673eba1c6228c04b43fb680af5f2 25-Mar-2009 Dianne Hackborn <> Automated import from //branches/donutburger/...@140828,140828
ntent.java
04750b6b431b8a43c62ae06ec3201fbd30caa178 25-Mar-2009 Dianne Hackborn <> Automated import from //branches/master/...@140830,140830
ntent.java
f64aff1a20c7a8da78fbeaf277bf8b39a5557fc1 25-Mar-2009 Bjorn Bringert <> Automated import from //branches/master/...@140582,140582
ontentProvider.java
9e728e082e6060612691b726e6fe264a0d37276f 25-Mar-2009 Bjorn Bringert <> Automated import from //branches/donutburger/...@140581,140581
ontentProvider.java
c2ad241504fcaa12d4579d3b0b4038d1ca8d08c9 20-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@141571
ontentProvider.java
ntent.java
105925376f8d0f6b318c9938c7b83ef7fef094da 19-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@140373
roadcastReceiver.java
ntent.java
m/PackageManager.java
2a73de7b21a89aa2ba4c254d28658b49793425b2 18-Mar-2009 Jean-Baptiste Queru <jbq@google.com> Merge commit 'remotes/korg/cupcake' into merge

Conflicts:
core/java/android/view/animation/TranslateAnimation.java
core/jni/Android.mk
core/res/res/values-en-rGB/strings.xml
libs/audioflinger/AudioFlinger.cpp
libs/surfaceflinger/LayerScreenshot.cpp
packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
ba87e3e6c985e7175152993b5efcc7dd2f0e1c93 13-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@138607
ntent.java
c39a6e0c51e182338deb8b63d07933b585134929 11-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@137873
ontext.java
ntent.java
es/ColorStateList.java
b2a3dd88a53cc8c6d19f6dc8ec4f3d6c4abd9b54 09-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@137197
ntent.java
m/PackageParser.java
es/AssetManager.java
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
bstractSyncableContentProvider.java
bstractTableMerger.java
ctivityNotFoundException.java
syncQueryHandler.java
roadcastReceiver.java
omponentCallbacks.java
omponentName.aidl
omponentName.java
ontentInsertHandler.java
ontentProvider.java
ontentProviderNative.java
ontentQueryMap.java
ontentResolver.java
ontentService.java
ontentServiceNative.java
ontentUris.java
ontentValues.java
ontext.java
ontextWrapper.java
efaultDataHandler.java
ialogInterface.java
ContentProvider.java
ContentService.java
SyncAdapter.aidl
SyncContext.aidl
ntent.aidl
ntent.java
ntentFilter.aidl
ntentFilter.java
utableContextWrapper.java
eceiverCallNotAllowedException.java
earchRecentSuggestionsProvider.java
erviceConnection.java
haredPreferences.java
yncAdapter.java
yncContext.java
yncManager.java
yncProvider.java
yncResult.aidl
yncResult.java
yncStateContentProviderHelper.java
yncStats.aidl
yncStats.java
yncStorageEngine.java
yncUIContext.java
yncableContentProvider.java
empProviderSyncAdapter.java
empProviderSyncResult.java
riMatcher.java
ackage.html
m/ActivityInfo.aidl
m/ActivityInfo.java
m/ApplicationInfo.aidl
m/ApplicationInfo.java
m/ComponentInfo.java
m/ConfigurationInfo.java
m/IPackageDataObserver.aidl
m/IPackageDeleteObserver.aidl
m/IPackageInstallObserver.aidl
m/IPackageManager.aidl
m/IPackageStatsObserver.aidl
m/InstrumentationInfo.aidl
m/InstrumentationInfo.java
m/PackageInfo.aidl
m/PackageInfo.java
m/PackageItemInfo.java
m/PackageManager.java
m/PackageParser.java
m/PackageStats.aidl
m/PackageStats.java
m/PermissionGroupInfo.aidl
m/PermissionGroupInfo.java
m/PermissionInfo.aidl
m/PermissionInfo.java
m/ProviderInfo.aidl
m/ProviderInfo.java
m/ResolveInfo.aidl
m/ResolveInfo.java
m/ServiceInfo.aidl
m/ServiceInfo.java
m/Signature.aidl
m/Signature.java
m/package.html
es/AssetFileDescriptor.java
es/AssetManager.java
es/ColorStateList.java
es/Configuration.aidl
es/Configuration.java
es/PluralRules.java
es/Resources.java
es/StringBlock.java
es/TypedArray.java
es/XmlBlock.java
es/XmlResourceParser.java
es/package.html
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
bstractSyncableContentProvider.java
bstractTableMerger.java
ctivityNotFoundException.java
syncQueryHandler.java
roadcastReceiver.java
omponentCallbacks.java
omponentName.aidl
omponentName.java
ontentInsertHandler.java
ontentProvider.java
ontentProviderNative.java
ontentQueryMap.java
ontentResolver.java
ontentService.java
ontentServiceNative.java
ontentUris.java
ontentValues.java
ontext.java
ontextWrapper.java
efaultDataHandler.java
ialogInterface.java
ContentProvider.java
ContentService.java
SyncAdapter.aidl
SyncContext.aidl
ntent.aidl
ntent.java
ntentFilter.aidl
ntentFilter.java
utableContextWrapper.java
eceiverCallNotAllowedException.java
earchRecentSuggestionsProvider.java
erviceConnection.java
haredPreferences.java
yncAdapter.java
yncContext.java
yncManager.java
yncProvider.java
yncResult.aidl
yncResult.java
yncStateContentProviderHelper.java
yncStats.aidl
yncStats.java
yncStorageEngine.java
yncUIContext.java
yncableContentProvider.java
empProviderSyncAdapter.java
empProviderSyncResult.java
riMatcher.java
ackage.html
m/ActivityInfo.aidl
m/ActivityInfo.java
m/ApplicationInfo.aidl
m/ApplicationInfo.java
m/ComponentInfo.java
m/ConfigurationInfo.java
m/IPackageDataObserver.aidl
m/IPackageDeleteObserver.aidl
m/IPackageInstallObserver.aidl
m/IPackageManager.aidl
m/IPackageStatsObserver.aidl
m/InstrumentationInfo.aidl
m/InstrumentationInfo.java
m/PackageInfo.aidl
m/PackageInfo.java
m/PackageItemInfo.java
m/PackageManager.java
m/PackageParser.java
m/PackageStats.aidl
m/PackageStats.java
m/PermissionGroupInfo.aidl
m/PermissionGroupInfo.java
m/PermissionInfo.aidl
m/PermissionInfo.java
m/ProviderInfo.aidl
m/ProviderInfo.java
m/ResolveInfo.aidl
m/ResolveInfo.java
m/ServiceInfo.aidl
m/ServiceInfo.java
m/Signature.aidl
m/Signature.java
m/package.html
es/AssetFileDescriptor.java
es/AssetManager.java
es/ColorStateList.java
es/Configuration.aidl
es/Configuration.java
es/PluralRules.java
es/Resources.java
es/StringBlock.java
es/TypedArray.java
es/XmlBlock.java
es/XmlResourceParser.java
es/package.html
076357b8567458d4b6dfdcf839ef751634cd2bfb 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@132589
ontentProvider.java
ontentProviderNative.java
ontentResolver.java
ontentServiceNative.java
ContentProvider.java
ntent.java
m/PackageManager.java
es/AssetFileDescriptor.java
es/ColorStateList.java
es/Resources.java
es/StringBlock.java
es/TypedArray.java
3dec7d563a2f3e1eb967ce2054a00b6620e3558c 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@137055
ontentProvider.java
ontentProviderNative.java
ontentResolver.java
ontentServiceNative.java
ContentProvider.java
ntent.java
m/PackageManager.java
es/AssetFileDescriptor.java
es/ColorStateList.java
es/Resources.java
es/StringBlock.java
es/TypedArray.java
3001a035439d8134a7d70d796376d1dfbff3cdcd 19-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132276
roadcastReceiver.java
ontentProvider.java
ntent.java
ackage.html
m/PackageInfo.java
m/PackageParser.java
da996f390e17e16f2dfa60e972e7ebc4f868f37e 13-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@131421
ntent.java
d24b8183b93e781080b2c16c487e60d51c12da31 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
syncQueryHandler.java
roadcastReceiver.java
ontext.java
ntent.java
yncManager.java
empProviderSyncAdapter.java
m/ConfigurationInfo.java
m/IPackageManager.aidl
m/PackageManager.java
es/ColorStateList.java
es/Resources.java
94cbba0933e50d593c1c462cff698dd3387ba95b 22-Jan-2009 The Android Open Source Project <initial-contribution@android.com> Merge branch 'cupcake'
f1e484acb594a726fb57ad0ae4cfe902c7f35858 22-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127436
ntent.java
m/IPackageManager.aidl
m/PackageManager.java
7547115694ef213f6c4ead3841296370cc07b4af 20-Jan-2009 The Android Open Source Project <initial-contribution@android.com> Merge branch 'cupcake'
22f7dfd23490a3de2f21ff96949ba47003aac8f8 20-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127101
ontext.java
0fda766e53fba7e829fe6e145738f6a94ce48bda 16-Jan-2009 android-build SharedAccount <android-build@undroid16.corp.google.com> Merge branch 'cupcake'
9266c558bf1d21ff647525ff99f7dadbca417309 16-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@126645
bstractSyncableContentProvider.java
bstractTableMerger.java
yncableContentProvider.java
e570a0fa86c2eea2680f07e2c0c546f104bea948 10-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@125939
b798689749c64baba81f02e10cf2157c747d6b46 10-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@125939
bstractTableMerger.java
e1dc1d6dc8064740b78562c3028ccc526a44597e 19-Dec-2008 Jean-Baptiste Queru <jbq@google.com> Merge commit 'remotes/korg/cupcake'

Conflicts:
core/java/com/android/internal/app/AlertController.java
core/res/res/values/strings.xml
media/java/android/media/AudioSystem.java
services/java/com/android/server/LocationManagerService.java
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
bstractTableMerger.java
syncQueryHandler.java
roadcastReceiver.java
ontext.java
efaultDataHandler.java
ialogInterface.java
ormatter.java
ntent.java
yncManager.java
m/ActivityInfo.java
m/ApplicationInfo.java
m/ConfigurationInfo.java
m/IPackageManager.aidl
m/InstrumentationInfo.java
m/PackageInfo.java
m/PackageItemInfo.java
m/PackageManager.java
m/PackageParser.java
es/ColorStateList.java
es/Configuration.java
es/PluralRules.java
es/Resources.java
es/StringBlock.java
24847f35177fd970670aa1ffdfc6639bbd11d1f5 04-Nov-2008 Tom Gibara <tomgibara@googlemail.com> Fix for bug 1185.
The constructor IntentFilter(String action, String dataType) ignores the action parameter.
This change ensures that it is correctly added to the set of actions.
ntentFilter.java
1ef4564d4ad14f2c5dcb162636875ca8aed5e4d9 24-Oct-2008 Jean-Baptiste Queru <jbq@google.com> Change values of ACTION_POWER constants to better match established practice.

Trim code to 100 lines to match style guide.
ntent.java
fda6fae156e31a287e3cfbf66e51ea1405cdf479 23-Oct-2008 Cliff Spradlin <cliff_spradlin@htc.com> Added broadcasts for external power events.
ntent.java
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
bstractTableMerger.java
ctivityNotFoundException.java
syncQueryHandler.java
roadcastReceiver.java
omponentCallbacks.java
omponentName.aidl
omponentName.java
ontentInsertHandler.java
ontentProvider.java
ontentProviderNative.java
ontentQueryMap.java
ontentResolver.java
ontentService.java
ontentServiceNative.java
ontentUris.java
ontentValues.java
ontext.java
ontextWrapper.java
efaultDataHandler.java
ialogInterface.java
ormatter.java
ContentProvider.java
ContentService.java
SyncAdapter.aidl
SyncContext.aidl
ntent.aidl
ntent.java
ntentFilter.aidl
ntentFilter.java
utableContextWrapper.java
eceiverCallNotAllowedException.java
earchRecentSuggestionsProvider.java
erviceConnection.java
haredPreferences.java
yncAdapter.java
yncContext.java
yncManager.java
yncProvider.java
yncResult.aidl
yncResult.java
yncStateContentProviderHelper.java
yncStats.aidl
yncStats.java
yncStorageEngine.java
yncUIContext.java
yncableContentProvider.java
empProviderSyncAdapter.java
empProviderSyncResult.java
riMatcher.java
ackage.html
m/ActivityInfo.aidl
m/ActivityInfo.java
m/ApplicationInfo.aidl
m/ApplicationInfo.java
m/ComponentInfo.java
m/IPackageDataObserver.aidl
m/IPackageDeleteObserver.aidl
m/IPackageInstallObserver.aidl
m/IPackageManager.aidl
m/IPackageStatsObserver.aidl
m/InstrumentationInfo.aidl
m/InstrumentationInfo.java
m/PackageInfo.aidl
m/PackageInfo.java
m/PackageItemInfo.java
m/PackageManager.java
m/PackageParser.java
m/PackageStats.aidl
m/PackageStats.java
m/PermissionGroupInfo.aidl
m/PermissionGroupInfo.java
m/PermissionInfo.aidl
m/PermissionInfo.java
m/ProviderInfo.aidl
m/ProviderInfo.java
m/ResolveInfo.aidl
m/ResolveInfo.java
m/ServiceInfo.aidl
m/ServiceInfo.java
m/Signature.aidl
m/Signature.java
m/package.html
es/AssetFileDescriptor.java
es/AssetManager.java
es/ColorStateList.java
es/Configuration.aidl
es/Configuration.java
es/PluralRules.java
es/Resources.java
es/StringBlock.java
es/TypedArray.java
es/XmlBlock.java
es/XmlResourceParser.java
es/package.html