Commit Graph

1735 Commits

Author SHA1 Message Date
Jeff Sharkey
bd4f218107 Merge "Defer more Account actions until user starting." into jb-mr1-dev 2012-10-18 00:00:41 -07:00
Justin Ho
871a6d7d4f 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 2012-10-17 15:55:15 -07:00
Justin Ho
4e360f0600 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 f49d835dfe

Change-Id: If0093f23d6458e53619220fbf0aa5f844ad2c790
2012-10-17 15:54:20 -07:00
Justin Ho
4db3165793 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 2012-10-17 15:53:02 -07:00
Justin Ho
f49d835dfe 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 57fca90ac6

Change-Id: I0fe25056cd54b8852b32ae4621e048d3f5c7d555
2012-10-17 15:50:48 -07:00
Jeff Sharkey
e4996bbd51 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
2012-10-17 15:05:52 -07:00
Justin Ho
144d405511 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 2012-10-17 10:50:39 -07:00
Justin Ho
57fca90ac6 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 dcf59629be

Change-Id: I27426a0ffe993973ffb0b05ce1ed3afe73fcd87d
2012-10-17 10:47:39 -07:00
Jim Miller
8e6145013a 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 2012-10-16 19:22:37 -07:00
Jim Miller
dcf59629be 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 6868d6f349

Change-Id: I8843d92dba14c82f06d9ee59517cf11b2abbbf04
2012-10-16 19:01:32 -07:00
Christopher Tate
69b0c974b5 Merge "Fix ApplicationInfo copy ctor" into jb-mr1-dev 2012-10-16 17:33:55 -07:00
Christopher Tate
bcb0255770 Fix ApplicationInfo copy ctor
Need to copy ALL the fields!

Bug 7360899

Change-Id: Ie6ed2d6f41c2efaf793ebf111adc8fa5e8b57d7c
2012-10-16 17:14:34 -07:00
Jeff Sharkey
a706e2fd00 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
2012-10-16 13:27:12 -07:00
Mathias Agopian
6868d6f349 Revert "Revert "Fix for bug 6050753.""
Emergency revert -- fix reboot loop.

This reverts commit 8e63bcc63f.

Change-Id: I4373b867d756de09cdf6aa0aba9e6ff8f47bcdbc
2012-10-15 20:45:01 -07:00
Romain Guy
8e63bcc63f Revert "Fix for bug 6050753."
This reverts commit c29f031598.
2012-10-15 13:24:58 -07:00
Jeff Sharkey
8f55d11298 Database cleanup needs to happen for all users.
Bug: 6970084
Change-Id: I9a6f1cbaf095b245ec9707a90c518256e0aa1f5f
2012-10-11 11:00:28 -07:00
Amith Yamasani
9535c915b6 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
2012-10-10 21:48:33 -07:00
Jeff Sharkey
6eb9620ff2 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
2012-10-10 14:06:23 -07:00
Jeff Sharkey
6ab72d74b8 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
2012-10-09 21:39:19 -07:00
Dianne Hackborn
36d337adff 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
2012-10-08 14:33:47 -07:00
Amith Yamasani
9c2a38ed10 Merge "Fix resource reading for secondary users" into jb-mr1-dev 2012-10-07 22:53:18 -07:00
Amith Yamasani
64442c1155 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
2012-10-07 15:56:34 -07:00
Craig Mautner
5962b12bed 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
2012-10-06 13:09:58 -07:00
Christopher Tate
afccaa84c8 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
2012-10-03 17:41:51 -07:00
Dianne Hackborn
5bc54bf354 Merge "Fix issue #7272775: Auto Start Apps Not Starting" into jb-mr1-dev 2012-10-02 16:25:15 -07:00
Dianne Hackborn
4a9f071f3d Fix issue #7272775: Auto Start Apps Not Starting
Bad defaults were causing stopped state to be set at each
boot.

Change-Id: I49b04e9c62f6ac391054201b508fddb6c7985615
2012-10-02 15:29:06 -07:00
Daniel Sandler
2e7d25b91f 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
2012-10-01 16:43:26 -04:00
Dianne Hackborn
fe37f8f51d 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
2012-09-30 15:06:05 -07:00
Craig Mautner
c36c49ee83 Changing debug for b/7094175.
Fixes bug 7094175 (but not really).

Change-Id: Ice2abb93f479ea0bda931e9643710668c25aa285
2012-09-29 16:02:43 -07:00
Dianne Hackborn
be87e2f588 Fix issue #7255954: API Review: rename Dream to DreamService
Change-Id: I89ecf2c3ec4fef09c0495aa68de11576f9cfd872
2012-09-28 17:42:39 -07:00
Dianne Hackborn
3ff8e1a800 Merge "Fix issue #7211769 and #7244492, thrash around on #7226656." into jb-mr1-dev 2012-09-28 15:54:44 -07:00
Dianne Hackborn
d4ac8d7b3d 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
2012-09-28 15:37:22 -07:00
Ben Gruver
9dbbfcda81 Merge "Pass the originating uid to the package verifier" into jb-mr1-dev 2012-09-28 10:58:19 -07:00
Jeff Sharkey
625239a054 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
2012-09-27 16:22:53 -07:00
Ben Gruver
37d83a3caf Pass the originating uid to the package verifier
Bug: 6923241
Change-Id: I85a3e0d53b469543cb0551d3a440d2663b5d0697
2012-09-27 13:02:06 -07:00
Amith Yamasani
38796fe162 Merge "Fix sync problems when setting up a new user and account" into jb-mr1-dev 2012-09-26 17:46:37 -07:00
Amith Yamasani
d648a605e8 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
2012-09-26 15:06:10 -07:00
Dianne Hackborn
b12e1354f2 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
2012-09-26 14:50:12 -07:00
Amith Yamasani
98edc95171 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
2012-09-25 15:45:27 -07:00
Amith Yamasani
ea7e91514e AppInfo from Notifications for secondary users
Required wiring up startActivitiesAsUser()

Bug: 7224950

Also fix a bug in navigateUp in secondary user

Change-Id: I114ae2de0457362d62e899fdb94b12239a3eb778
2012-09-24 17:19:03 -07:00
Dianne Hackborn
7451f15e74 Merge "Fix issue #6926562: Ensure all multi-user cache files are managed correctly" into jb-mr1-dev 2012-09-24 11:07:26 -07:00
Dianne Hackborn
556b09e184 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
2012-09-24 11:02:45 -07:00
Alon Albert
fcf0061ebf Merge "Skip operations for users who are not running" into jb-mr1-dev 2012-09-24 09:53:33 -07:00
Jeff Sharkey
752cd922f7 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
2012-09-23 16:44:34 -07:00
Jeff Sharkey
11820f7386 Merge "Allow acquiring ContentProviders across users." into jb-mr1-dev 2012-09-23 13:22:27 -07:00
Dianne Hackborn
b939e35274 Merge "Fix issue #7209355, #7214271." into jb-mr1-dev 2012-09-23 12:58:10 -07:00
Dianne Hackborn
8da429e80d 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
2012-09-23 12:53:34 -07:00
Eino-Ville Talvala
a91c9f9f7a Merge "Unhide and document feature android.hardware.camera.any." into jb-mr1-dev 2012-09-23 10:14:22 -07:00
Jeff Sharkey
6d51571835 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
2012-09-21 19:49:43 -07:00
Eino-Ville Talvala
c9108b1856 Merge "Add hardware feature android.hardware.camera.any." into jb-mr1-dev 2012-09-21 17:57:03 -07:00