Commit Graph

4243 Commits

Author SHA1 Message Date
Svet Ganov
0da85b6c90 Fix regression in remote views.
Now remote views contain the application info for the app on whose
behalf they should show content. The application info contains the
user id and the package name which makes it unique in the multi
user environment. If the app which creates the remote views does
not have the same package as the one passed in the contructor of
the remote views, we lookup the app info for the target package.
There is a special hidden overload that allows creating a remote
views instance that represents an app in given package and user
(requires interact across users) permission. The latter is used
by SystemUi when creating remote views for apps that posted a
notification.

bug:16838651

Change-Id: I2daa974629f89a2446848e59300d994dadcf4439
2014-08-07 00:30:44 +00:00
Jeff Sharkey
fbd0e9fa37 Surface user action events when un/installing.
This will be used shortly to connect up with permissions
confirmation UI.

Bug: 16515814
Change-Id: If28cecc28549900d960ac107a1fba0b10ce5bd7b
2014-08-07 00:23:54 +00:00
Svetoslav
c71c42fdb2 Polish of the app widgets cross-profiles feature.
1. Added API for badging an arbitrary drawable at a given location.

2. Updated the icon and previewImage deprecation as they are no longer
   returning a badged drawable. The methods to load the icon and the
   preview are now just making it easier for a developer to get the
   drawables.

3. Fixed a bug in AppWidgetServiceImpl leading to a crash when a user
   is removed.

4. Fixed a bug in AppWidgetHost which was unnecessarily caching its
   package name and having code paths where the cached value was not
   populated when calling into the system.

bug:14991269

Change-Id: I50d011a6597d88814715d5ec04ee67815e8ce0bd
2014-08-07 00:12:27 +00:00
Alexandra Gherghina
e41ce995a0 Add hidden API for removing cross-profile package filters
Bug: 16646591
Change-Id: Iaf6837fe4390ac1018c49df366ea434776ed7244
2014-08-06 14:52:50 +00:00
Amith Yamasani
f17e498fea Merge "Allow phone UID to export singleton providers" into lmp-dev 2014-08-05 00:19:02 +00:00
Amith Yamasani
41c1ded7f0 Allow phone UID to export singleton providers
Also add a user variant of replacePreferredActivity for use
by SmsApplication.

Map user restrictions for SMS/MMS to AppOps perms.

Bug: 16681533
Change-Id: I3dfed5fc754e33bb51c6f571851653a7c2770e46
2014-08-05 14:37:27 -07:00
Svetoslav
976e8bd201 Allow adding widgets from user profiles.
The goal of this change is to enable support for appwidget from
user profiles to the user main profile. A user profile is a user
which is associated as a child of the main user profile. For example,
a user may have a personal (parent) and corporate (child) profile.
The device policy should be able to control whether adding a widget
from a child profile and given packages is allowed. This change
assumes that all packages from managed profiles are white listed.
Another change will add the device policy changes.

Change-Id: I267260b55d74c48b112a29979a9f59eef7a8194e
2014-08-05 20:57:20 +00:00
Christoph Studer
7ac80e630d NoMan: Optimize profile badge retrieval
Instead of stuffing the profile badge into extras, store the
originating user and read the badge via UserManager.

Bug: 16735645
Change-Id: Ia5f9b6f113dcbc88581af5308585edcf9b92b88d
2014-08-04 16:27:54 +02:00
Christoph Studer
943aa6778f Notif: Fix profile badge for stripped RemoteViews
Stash the profile badge into the extras such that rebuild() can read
it back.

Bug: 16735645
Change-Id: I620da121615a01c27fb31ee292088701e364d223
2014-08-04 12:26:18 +02:00
Christoph Studer
1cda67f8b3 Notification: Only post-process legacy notifications
Bug: 16522199
Change-Id: I20330f946cee6569c249be1800c3a0e814d79efc
2014-08-03 18:22:46 +00:00
Dake Gu
fc0fc0e341 ActivityTransitionCoordinator: Fix memory leak of ResultReceiver
The ActivityTransitionCoordinator is retained by reference from native code.
The coordinator refers to a app's listener which can cause leak.

b/16737906

Change-Id: Ibbb85480b852442f95b00a8d3beff0161bdadb47
2014-08-01 22:53:14 +00:00
Primiano Tucci
810c052d9b Cherry pick Introduce startIsolatedProcess private API in ActivityManager DO NOT MERGE
The new API spawns a isolated process, using a custom uid, entrypoint and
abi. Such API is used by the WebViewFactory to spawn its unpriviledged
but trusted process (hence the fixed uid) which rewrites the rerlo file
on boot / when an update occurs.
Since both the ActivityManager service and the WebViewUpdate service
live in the SystemServer their calls be dispatched locally and no
binder interface needs to be exposed for the new startIsolatedProcess API.

Original BUG:16403706
Original Change-Id: I327b59735c12698595e0dbcc4da5d759c9103b0a

Bug: 16723226
Change-Id: Iecb49888e11eec9d302d9712953fd498db5821af
2014-08-01 14:24:09 +01:00
Chris Wren
97c0b90f89 Expose headsUpContentView so developers can customize it.
Bug: 13510114
Change-Id: I645c204e366fefab58224d2e67d00e701dc661aa
2014-08-01 10:57:05 +00:00
Zoltan Szatmary-Ban
3f1ddf83a4 Add AsUser versions of existing DevicePolicyManager methods
Some API methods on DevicePolicyManager call underlying IDevicePolicyManager methods
that can be parameterised with a user id. DPM however only exposed methods for the current user.
This CL makes it possible to call them with any user id by introducing hidden methods on
DevicePolicyManager.

Bug: 15558397
Change-Id: I1786a64fa7cf5f6590ddd04cbf4527bb159f8795
2014-08-01 09:27:19 +00:00
Evan Charlton
b8d0717934 Fix a small typo in javadocs
Service#START_FLAG_RETRY has an extra word; remove it.

Change-Id: I4743e2ea474c70fe5d31f1a4ef257f9752f8e823
2014-07-31 16:14:22 +00:00
Alexandra Gherghina
a709314537 Use the appropriate default icon
ComponentInfo subclasses and ApplicationInfo have different ways to retrieving
the default icon. Previously, in CL I2db300a69a08030eacc245ee91556f0443ba5878
we defaulted everything to the green Android. This makes sure that they get the
right default.

Bug: 16630068
Change-Id: Ifa499eac6f1543523d6ecf0831175bfd6b772edb
2014-07-31 15:43:11 +00:00
keunyoung
1d0a7ccd00 add UiModeManager.ENABLE_CAR_MODE_NO_WAKE_LOCK flag for enableCarMode
- When this flag is set, system no longer keeps the display on while in car mode.

bug: 15472822
Change-Id: I277368be5227eaf96213684598f278c39e4c34db
2014-07-30 14:12:34 -07:00
Christoph Studer
c8db24bc32 SysUI: Display group children when no summary is present
Also move common notification filtering into NotificationData
such that clients won't have to do it themselves anymore.

Probably also fixes a couple of multi-user issues.

Bug: 16302692
Bug: 16224431
Change-Id: Ic3c11cd1a224044486f5544e068ca5297d30c521
2014-07-30 21:43:17 +02:00
George Mount
68f96d8db5 Add differentiating transitions for returning/reentering.
Bug 16550363

Change-Id: I85f9a8bcbc92ce048d06b36579bb05893534f7f8
2014-07-31 21:58:06 +00:00
Christoph Studer
4600f9b607 Strip RemoteViews from Notifications, re-create them in SysUI
Bug: 16329721
Change-Id: Ic0bea763ffaec4c5644ca78705007211ac6b4b88
2014-07-30 20:17:12 +02:00
Nicolas Prevot
4d4920ad81 Merge "Fixing a NullPointerException in isProfileOwnerApp." into lmp-dev 2014-07-24 15:36:05 +00:00
Nicolas Prevot
90af6d7365 Fixing a NullPointerException in isProfileOwnerApp.
Fixing a NullPointerException in isProfileOwnerApp of DevicePolicyManager
if there is no profile owner.

BUG: 16673376
Change-Id: I912fcd38343d3c1893313e6335802d26014a2e9d
2014-07-30 15:02:57 +01:00
Jae Seo
783645e99f TIF: Merge TvParentalControlManager into TvInputManager
This change addresses the following API council feedback.

TvParentalControlManager:
-- Replace the listener interface with a broadcast Intent with well-known
   action, something like ACTION_BLOCKED_RATINGS_CHANGED.
-- TvParentalControlManager goes away, and two remaining methods move to
   TvInputManager.

== Implementation changes ==
-- The user-selected rating preferences should be stored in an XML file, and
   loaded at boot by your internal system service.  It should _not_ be stored in
   a Secure/Global setting.

Bug: 16542165
Change-Id: I278df963576652ec9163a66c1ef99419fcdb36c2
2014-07-30 15:39:39 +09:00
Alan Viverette
5e1565ead6 Enable hardware rendering for system process
Also enables hardware rendering by default on windows created
without a parent activity (e.g. by services).

BUG: 16240470
Change-Id: I906d48cb07af50fa02dae4f4ecdb5e65211fc6ef
2014-07-29 23:56:52 +00:00
Amith Yamasani
bf3a946548 Set profile owner via an intent
priv apps can request to become a profile owner after setup has
completed. This will pop up a consent dialog (in Settings).

Also, clean up profile owner concept to be a component name.

Change-Id: I5e8532866e8018f61836c4e84fbbadb6150218ae
2014-07-29 23:43:32 +00:00
Adrian Roos
489d2dfc29 Fix checkbuild
Change-Id: I9c3de31af792863b93a29ef81b50e2149b0a2184
2014-07-29 20:30:50 +00:00
Alan Viverette
4d193bdbe7 Merge "Clean up TimePicker and DatePicker styling" into lmp-dev 2014-07-28 22:45:16 +00:00
Alan Viverette
60727e07c6 Clean up TimePicker and DatePicker styling
Removes the time and date picker specific themes and defaults their
theme attributes to use the alert dialog theme attribute's value.

BUG: 14973897
Change-Id: Id5cc74ea0c1a379fc1ee76b354a1bb5ba329585a
2014-07-29 12:49:50 -07:00
Dake Gu
09d9c3be8a Transition: Don't suppressLayout(false) for returning activity
Change-Id: I7be8a779ab8996809b36baa107acd55ab872580c
2014-07-29 11:34:35 -07:00
Matthew Williams
ee410da42b remove possible JobScheduler race in cancel()
Client can jobFinished() before getting a cancel msg.
1) Do better clean up of JobServiceContext after client jobFinished()
to remove superfluous MSG_CANCELs
2) When processing MSG_CANCEL check whether the context is still active
3) Do JobServiceContext cleanup before calling back to JobSchedulerService
Client can get a cancel msg even after calling jobFinished() (opposite to above)
1) explicitly check whether there are any MSG_CALLBACKs in the queue before
processing a MSG_CANCEL. If there are we can throw away the cancel.

Bug: 16547638
Change-Id: I90644586c7895a9ce97de752a5d657faf7f74b78
2014-07-29 11:11:41 -07:00
Jason Monk
9a090e6ded Merge "Fix incorrect Activity#startLockTask doc" into lmp-dev 2014-07-25 23:00:08 +00:00
Jason Monk
8863b57e89 Fix incorrect Activity#startLockTask doc
It referenced a swipe down gesture that doesn't exist.  This should
be more safe, and cover other devices as well.

Bug: 16626273
Change-Id: I907b25a00d903f9f36ca335d3a75c1f8f931d50e
2014-07-29 13:49:32 -04:00
Christoph Studer
fd19326c6b Notification: Forward setUser() call to publicVersion
Change-Id: I82715d69664fcbf57ca0599994004a8630f8587c
2014-07-30 13:16:57 +00:00
Adrian Roos
7861c663fd Add setManagingTrust and expose it on lockscreen
Adds a facility for trust agents to indicate if they
are ready to manage trust. Also adds an indication to
the lock icon on the lockscreen to show whether trust is
being managed.

Bug: 15518469
Bug: 16123013

Change-Id: Ie17f588aebeafe66c81dea4a69c733b0d2c72fd4
2014-07-30 12:33:33 +00:00
Adrian Roos
a06d5ca1d9 Make TrustAgentService a SystemApi
Bug: 16401527
Change-Id: I6d19281600bacac7c8a29afc07c39ca1d461d23c
2014-07-29 12:54:49 +02:00
Jim Miller
604e7558ef Add new DevicePolicyManager API to allow fine-grained TrustAgent management
This adds a new feature that allows a device admin to specify a
whitelist of features that are allowed for the given admin.

Change-Id: I83f853318efbcf72308532d0a997374f73fa9c10
2014-07-28 21:32:01 -07:00
Christopher Tate
c17739d112 Provide outside-facing API for data management intent+label
Bug 16346320

Change-Id: I3f4c2f4b700c77880ba3d8db7c92cdb404763d0d
2014-07-28 23:13:06 +00:00
Christopher Tate
9679410db5 Add data-management intent + label to BackupTransport API
Bug 16346320

Change-Id: Id9e855a1d3cebbf801c27a21e1edc3ffcccfd2e9
2014-07-28 21:33:15 +00:00
Craig Mautner
22132d7950 Make affiliatedTaskId public and unhidden.
Allow apps to see which of their tasks are affiliated in the
RecentTaskInfo returned by getAppTasks().

Fixes bug 16546323.

Change-Id: I54d75c02c194f58fb6513fa91c312289460f56b4
2014-07-28 21:10:16 +00:00
Alexandra Gherghina
a71e3903e5 Return a default icon from the package manager directly
Bug: 16369104
Change-Id: I2db300a69a08030eacc245ee91556f0443ba5878
2014-07-28 17:30:56 +00:00
Nicolas Prevot
d1c99b1fe8 Migrate extras to ClipData for image/video capture intents.
The intents ACTION_IMAGE_CAPTURE, ACTION_IMAGE_CAPTURE_SECURE and ACTION_VIDEO_CAPTURE are now handled in a way
similar to ACTION_SEND and ACTION_SEND_MULTIPLE.
Migrate the uri in the EXTRA_OUTPUT extra to clipData, and add the flag GRANT_WRITE_URI_PERMISSION.

The userIds are now added to extra uris in the process receiving the intent, (not in the system process), because the
system process may not be able to parcel/unparcel the extras.

BUG: 15534203

Change-Id: I8f79666b726bc6d7745bf777ad3c7518945c5cc3
2014-07-25 10:22:19 +01:00
Craig Mautner
8746a478ab Create end of animation callback for Activity
Activities cannot draw while their entering animations are active.
This change introduces a callback, onEnterAnimationComplete() so
that activities can know when their draws will be effective.

Fixes bug 13658460.

Change-Id: Ic48540cd4c7e37538f10cb2dc0852aa3f55d11e1
2014-07-25 01:35:02 +00:00
George Mount
b4c5d7bf21 Fix no transition when only shared element exists.
Bug 16245703

Change-Id: Ie31baaf7f58038fc79ffca0206ce3bec0ef64cb4
2014-07-24 13:19:51 -07:00
Justin Morey
b5deda7382 Fix build
Change-Id: I8790b274864610b7e00d7ea12efe96b3b826301f
2014-07-24 10:53:40 -05:00
Nicolas Prevot
ddbce32632 Merge "Storing the app who sets a CrossProfileIntentFilter." into lmp-dev 2014-07-24 15:35:58 +00:00
Nicolas Prevot
3f7777fa4f Storing the app who sets a CrossProfileIntentFilter.
When we add a CrossProfileIntentFilter, we store the package and userId of the calling app
inside the CrossProfileIntentFilter.
When an app calls clearCrossProfileIntentFilters, we only remove the filters that the calling app
has set itself.

BUG: 16537557

Change-Id: I6e7bc859383ea66553d9f4230365df8ba27525f3
2014-07-28 10:47:12 +01:00
Dake Gu
f03c139018 fix ArrayIndexOutOfBoundException of ExitTransitionCoordinator
b/16575308

Change-Id: Ieb4f15a8ead7da9682c97d4d342cd77e0b85e5f8
2014-07-25 23:10:51 +00:00
Michael Wright
5438e4e173 Add missing documentation for createVirtualDisplay
Fix incorrect access modifier in Activity documentation.

Change-Id: Id41da6ccbdfa8b53c89360c899f3a43aec899982
2014-07-25 23:01:32 +00:00
Dake Gu
f7ff2205d9 ExitTransitionCoordinator: suppressLayout during running transition
b/16570734

Change-Id: I52d7132b91256085aa9e535575e978a6031fb276
2014-07-25 22:18:57 +00:00
Sander Alewijnse
af9f8aed7d Merge "Add http cookie header key as a provisioning extra." into lmp-dev 2014-07-24 15:36:04 +00:00