Commit Graph

2622 Commits

Author SHA1 Message Date
Scott Main
7c6863be50 am 44c4bba2: Merge "docs: fix markup error bug: 7456071" into jb-mr1-dev
* commit '44c4bba2530b430895ef1c72e8ce2712e8ca9f6e':
  docs: fix markup error bug: 7456071
2012-11-05 11:38:10 -08:00
Scott Main
44c4bba253 Merge "docs: fix markup error bug: 7456071" into jb-mr1-dev 2012-11-05 11:35:24 -08:00
Scott Main
9cc531cc26 docs: fix markup error
bug: 7456071

Change-Id: I3d34a2d6741784d9b33af54afd6d97803720264d
2012-11-05 11:25:17 -08:00
Jim Miller
81e77360b2 Merge "Update DevicePolicyManager documentation with new keyguard flags" into jb-mr1-lockscreen-dev 2012-11-02 16:20:52 -07:00
Jim Miller
3520774a91 Update DevicePolicyManager documentation with new keyguard flags
Change-Id: Idb1fa306a5706ba5b9543d7dff5450a4af5c394f
2012-11-02 15:33:20 -07:00
Amith Yamasani
ecbd68b0de Resolve USER_ALL when inflating notification views.
Fixes the OTA icon display when the OTA is to be shown to all users.

Bug: 7462511
Change-Id: I185d9d5340d866d0a4b0ae273a361e8db160e33b
2012-11-02 12:17:19 -07:00
Jeff Brown
92130f6407 Add MediaRouter API to get presentation display.
This new API makes it possible for an application to ask on
which Display it should show a Presentation based on the currently
selected media route.

Also added a new API on DisplayManager to query displays that
support a certain category of uses.

Improved the documentation of the Presentation class to explain
how to choose an appropriate Display for presentation.

Bug: 7409073
Change-Id: Iab451215e570ae55f3718fc228303143c800fe51
2012-10-25 20:31:21 -07:00
Craig Mautner
6018aeec27 Add throwing InvalidDisplayException from addView.
Throw an InvalidDisplayException to addView if the display being
added to has been removed. Handle this exception in Dialog.show()
by removing the view after it has been added and rethrow the
exception from there.

Add javadoc to ViewManager.addView and Presentation.show explaining
the new exception and how best to handle it.

Bug: 7368565 partially fixed. It remains for the Videos app to
handle Presentation.show throwing the InvalidDisplayException.

Change-Id: Ib4303c9b3f7bf7a0cfa95d19bd60a0c128658c48
2012-10-23 15:34:29 -07:00
Amith Yamasani
cd75706117 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
2012-10-22 12:38:53 -07:00
Daniel Sandler
2dd0c3a576 Merge "New lockscreen: allow search gesture from nav bar." into jb-mr1-dev 2012-10-22 07:59:18 -07:00
Christopher Tate
935415a050 Merge "Document immutable requirement of SharedPreferences return objects" into jb-mr1-dev 2012-10-19 14:38:05 -07:00
Daniel Sandler
d5483c3157 New lockscreen: allow search gesture from nav bar.
Show a lights-out pip if home is invisible but search is
still OK.

Change-Id: Ifc69c12296cc8e8cf7c89dd06173d7abf499a878
2012-10-19 16:48:12 -04:00
Christopher Tate
01ed79c578 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
2012-10-19 13:43:52 -07:00
Christopher Tate
346acb123d Sanity-check erroneous backup agent instantiations
Two distinct changes:

Fix a bug seen in the wild where a newly-launched application will be
spuriously asked to instantiate a backup agent.  What was happening
there is that some Activity Manager state was being left stale in certain
circumstances, and then in combination with app uninstall / install, there
could be a case where uid reuse wound up looking like an app identity
match.

We now positively verify before instantiating the agent that the intended
backup target package is uid-compatible with the app process that the
instantiation was requested of.  The incomplete bookkeeping in the
Activity Manager has also been tightened up, and the Backup Manager is
more aggressive about cleaning up pending operations pertaining to
apps being uninstalled.

Bug 5874010

Change-Id: Ic389f4a96c9dcd0ba6b3962b579084033d8ae9f8
2012-10-17 13:36:15 -07:00
Fabrice Di Meglio
6ffbe60069 Merge "Fix bug #7325609 FragmentBreadCrumbs should be RTL-aware" into jb-mr1-dev 2012-10-12 11:39:23 -07:00
Fabrice Di Meglio
3cc10f420f Fix bug #7325609 FragmentBreadCrumbs should be RTL-aware
- add horizontal gravity support
- use gravity for doing layout depending on layout direction

Change-Id: I562e824d15da9b00e1392f125b293aee21f8ee16
2012-10-11 19:17:39 -07:00
Dianne Hackborn
8d866e52b2 More on issue #7318666: hide developer options from user build
The action to launch the developer settings panel is now required
by the platform.

Add a new hidden API to LauncherActivity so I can better integrate
these into the existing Dev Tools app.

Change-Id: I9c082622fd4c8f4a5be51cabb664741a3782ece1
2012-10-10 18:39:45 -07:00
Dianne Hackborn
c0bd747b06 Further work on issue #7307399: Framework needs a new pre-user-shutdown...
...phase & callback API

I realized there were a few things wrong with what was there.  The new
ACTION_USER_STARTING was not being sent for the first user at boot, and
there was an existing problem where ACTION_USER_STARTED was sent every
time there was a user switch.

Also improved some debug output of broadcasts to make it easier to see
what is going on in this stuff, and better reporting of why a service
couldn't be started.

Change-Id: Id8a536defbbad1f73d94a37d13762436b822fbe3
2012-10-09 17:57:14 -07:00
Dianne Hackborn
a8a9bd65bf Fix issue #7311376: Add API to allow apps to know if they are...
...running as the foreground user

Add UserManager.isUserRunning() which is the public version of the
existing method on ActivityManager.

Also add UserManager.isUserRunningOrStopping() since that seems like
it will be useful.

And fix the internal function that returns the array of currently
running users to not include stopped users.

Change-Id: I84672fa8748fc027fd402729586b5603f640e498
2012-10-09 17:00:31 -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
Adam Powell
6f2a3d2982 Quick settings user display and switching
Load user information for the current user and display in quick
settings tile. Name is pulled from the contacts DB from the "Me"
profile, which will override the raw name on the system user if
needed.

Open the user switcher on the lock screen if this tile is clicked and
there is more than one user registered on the system. If there is only
one user, show the "Me" quick contact card.

Darken the background protection behind the user's name on the QS tile
layout so that it's readable against very light profile pic
backgrounds.

Bug 7175023
Bug 7257997

Change-Id: Ia1e7dd7af72dbd49113a827f9228e0a32e20a0dc
2012-10-05 22:36:13 -07:00
Dianne Hackborn
5fe7e2a304 Fix issue #6968859: home not exiting an ANR'd dream
Add a new call to the activity manager for the input dispatcher
to report about any pid having an ANR.  This has a new feature
where it can also tell the activity manager that it is above the
system alert layer, so the activity manager can pop its ANR dialog
on top of everything if it needs to.  (Normally we don't want
these dialogs appearing on top of the lock screen.)

Also fixed some debugging stuff here and there that was useful
as I was working on this -- windows now very clearly include
their uid, various system dialogs now have titles so you know
what they are in the window manager, etc.

Change-Id: Ib8f5d29a5572542cc506e6d338599ab64088ce4e
2012-10-04 12:04:58 -07:00
Dianne Hackborn
c428aae642 Fix issue #7267494, issue #7212347
7267494 Calendar is not syncing
Check for whether a content provider is dead before returning
it.  This is kind-of a band-aid, but probably the right thing
to do; I'm just not sure exactly the full details of why this
problem is happening.  Hopefully this "fixes" it, though I don't
have a way to repro to tell.

7212347 System power off dialog is only visible to user 0
Make it visible.  Also turn on some battery debugging stuff and
clean it up so we can just keep it.

Change-Id: I5add25bf2a763c8dfe1df23bc5c753a9ea5d157a
2012-10-03 18:07:23 -07:00
Dianne Hackborn
720d14db87 Merge "Fix issue #7273573: Need API to find out if activity is destroyed" into jb-mr1-dev 2012-10-02 18:58:31 -07:00
Jeff Sharkey
fc3f24b4b6 Make USB services multi-user aware.
USB settings are now isolated per-user, since they revolve around
installed packages.  User-specific settings are returned based on
calling user, or referenced by UserHandle passed to SystemUI.  Each
settings Context is wrapped as a specific user, so all broadcasts are
sent correctly.  Upgrades any existing USB settings to OWNER.

Physical events, like new devices, are routed to the currently active
user.  Switch to using AtomicFile when persisting settings.

Bug: 7244888
Change-Id: I8a723ad3d55ac1bff99276c5f3a3f5e8f013432f
2012-10-02 18:09:10 -07:00
Dianne Hackborn
6d9dcbccec Fix issue #7273573: Need API to find out if activity is destroyed
Also update 17.txt with all of the recent API additions.

Change-Id: I21fc669267935261a741c19e22b0bf35c3a76b81
2012-10-02 17:51:13 -07:00
Dianne Hackborn
11d8481f10 Merge "Fix framework side of #7132432 com.android.vending:..." into jb-mr1-dev 2012-10-02 09:22:12 -07:00
Dianne Hackborn
689586d067 Fix framework side of #7132432 com.android.vending:...
...java.lang.IllegalStateException: Can not perform this action
after onSaveInstanceStateat android.support.v4.app.FragmentManagerImpl
.checkStateLoss(FragmentManager.java:1300)

Framework fragment manager also needs to be told its state is not
saved earlier.

Change-Id: Ie5bb327fca6208f7eea6146a1b3223c61c9ecef6
2012-10-01 18:23:04 -07:00
Adam Powell
2ee6a2a832 MediaRouter/Wifi Display improvements
* Don't select the default route on initialization in a process

* Add "connecting" state to MediaRouteButton

Bug 7258981
Bug 7262522

Change-Id: I5cd39b09843783b7e1e17620ca33193f0f3b8fca
2012-10-01 14:05:32 -07:00
Adam Powell
c56e560050 Merge "Construct a task stack for picking a wifi network from notification" into jb-mr1-dev 2012-10-01 10:32:35 -07:00
Adam Powell
d56b4d1db3 Construct a task stack for picking a wifi network from notification
Bug 7001327

Change-Id: I5a79e6933cd33386cd0aa4df626f15902deedd67
2012-09-30 18:30:42 -07: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
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
Adam Powell
705ab808cf Add wireless display selection support to MediaRouter.
* Adds the new route type LIVE_VIDEO

* Wireless displays support both LIVE_VIDEO and LIVE_AUDIO, making
  wireless display routes valid selections in when apps make selecting
  live audio routes available.

* MediaRouter will only report/manipulate wireless displays that have
  already been paired at the system level.

Bug 7177920

Change-Id: Ic221b8687d77b4c0df9801c396b74870e86206e9
2012-09-28 11:46:40 -07:00
Daniel Sandler
0dc2b81ce1 Merge "Cleanup internal status bar APIs." into jb-mr1-dev 2012-09-28 10:07:16 -07:00
Jeff Sharkey
5e9187a3cf Merge "Fix "system" resources; more context user work." into jb-mr1-dev 2012-09-27 20:26:00 -07:00
Jeff Sharkey
ded653b168 Fix "system" resources; more context user work.
Special-case "system" resources, since it doesn't have an
ApplicationInfo.  Also switch Context and PackageManager to using
the wrapped UserHandle for outgoing calls.

Bug: 7242361
Change-Id: I1ecd2a4752399a6dce2de97c59bd5545996c9a99
2012-09-27 19:50:23 -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
Christopher Tate
3f91e43eb0 Merge "Full (local) restore security changes" into jb-mr1-dev 2012-09-27 14:58:47 -07:00
Christopher Tate
f6d6fa8cbc Full (local) restore security changes
(1) Prevent full restore from creating files/directories that are
    accessible by other applications

(2) Don't restore filesets from "system" packages; i.e. any that runs
    as a special uid, unless they define their own agent for handling
    the restore process.

Bug 7168284

Change-Id: Id6a0cb4c113c2e4a8c4605252cffa41bea22d8a3
2012-09-27 12:54:37 -07:00
Daniel Sandler
11cf178100 Cleanup internal status bar APIs.
IStatusBarService.collapseQuickSettings is gone;
collapseNotifications is now collapsePanels, which does what
collapse() used to do. Similarly,
IStatusBar.animateCollapseQuickSettings is now simply
IStatusBar.animateCollapse().

Bug: 7245229
Change-Id: Id157d2fdf34926d3c85ffa8b81c741a5359aede4
2012-09-27 14:03:08 -04:00
Dianne Hackborn
f43a33c5ea Work on issue #7232641: ISE crash when rotating phone in label list mode
This doesn't fix the problem; I think it is an app problem.  It does
improve a bunch of the debugging to help better identify what is going
on, and introduces some checks when adding a fragment to fail
immediately if we are getting into a state when a fragment is going to
be in the added list multiple times (which is pretty much guaranteed
to lead to a failure at some point in the future).

Change-Id: If3a8700763facd61c4505c6ff872ae66875afc8d
2012-09-27 00:51:56 -07:00
Dianne Hackborn
e521573097 Merge "Maybe fix issue #7211766: bindService() to User u0 While u10 is..." into jb-mr1-dev 2012-09-26 14:55:19 -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
Jeff Sharkey
1951db86f5 Merge "Multi-user ringtone playback." into jb-mr1-dev 2012-09-26 13:38:22 -07:00
Jeff Sharkey
65c4a2b26c Multi-user ringtone playback.
Change RingtonePlayer to open content:// Uris based on requesting
UserHandle.  Grant SystemUI visibility to all emulated storage so
it can play ringtones for apps without READ_EXTERNAL_STORAGE.

Resolve canonical file:// Uris before passing out of source app,
replacing any /emulated_legacy/-style paths with user-specific
variant so they can be opened by SystemUI.  Calling for RemoteViews,
Ringtones, and Notifications.

Bug: 7202982
Change-Id: Ibf0eca8df80c1486711144a7b648f464aadfe099
2012-09-26 10:49:35 -07:00
Jeff Brown
b32e221699 Merge changes I332f020f,I632648ac into jb-mr1-dev
* changes:
  Update references to migrated global settings.
  Handle user switched for settings changes.
2012-09-25 17:03:11 -07:00
Dianne Hackborn
61ad1bacf8 Merge "Fix AbsListView to correctly retain its state if not layed out." into jb-mr1-dev 2012-09-25 16:49:05 -07:00