3537 Commits

Author SHA1 Message Date
Adam Powell
ae4a10c17f Merge "Correctly populate title for ResolverActivity" into lmp-dev 2014-08-19 22:53:25 +00:00
Adam Powell
11f59a0899 Correctly populate title for ResolverActivity
This affects accessibility feedback.

Bug 17147141

Change-Id: I3e90b80c2813e79e0abe1c5ddc6e0c115a6369dd
2014-08-20 13:22:16 -07:00
Jeff Sharkey
bb7b7bea19 More progress towards split APKs in ASECs.
Teach DefaultContainerService to install split APKs, which will be
needed when moving to/from ASECs.  Also support forward locking for
testing purposes, even though its deprecated.

Move native library unpacking code to NativeLibraryHelper location
where it can be shared by both DCS and PMS.  Also update footprint
calculation logic to mirror the later unpack codepaths.

Immediately persist sealed sessions.  When resolving install
locations, prefer location of any existing install of that
package.  Lightweight parse requesting certificates now always
verifies that all contents are signed correctly.

Bug: 16514385
Change-Id: Ida1c4eb0f95b065104dd971e19126d4085ebf1f0
2014-08-20 12:47:27 -07:00
Dianne Hackborn
249a7fdf44 Merge "Temporary: raise overflow limit, print all wake locks." into lmp-dev 2014-08-16 04:32:18 +00:00
Dianne Hackborn
acc4a12074 Temporary: raise overflow limit, print all wake locks.
Change-Id: I02baa775b8e0659bd9cd4547b8671730f056cb86
2014-08-18 16:33:44 -07:00
Michael Wright
468fef6870 Merge "Persist Show IME option." into lmp-dev 2014-08-18 23:27:42 +00:00
Michael Wright
7b5a96ba83 Persist Show IME option.
Add a new setting to persist whether to show the IME when a hard
keyboard is connected.

Bug: 14066881
Change-Id: I2237ded850a0d4ab43ca441d0b7df13e0958e630
2014-08-17 17:51:19 -07:00
Michael Wright
665366a305 Change 'disable hardware keyboard' to 'show input method'
Previously it implied that the hardware keyboard would be disabled,
but really the toggle would just enable showing the IME even if a
hardware keyboard was present. Changed the string and swapped the
semantics to be more clear about the behavior.

Bug: 14066881
Change-Id: I9c8a7eb98b5277f1d09cc19fa7402e9b4cf51d92
2014-08-17 17:51:19 -07:00
Nicolas Prevot
f52233df74 Merge "When forwarding intents, ignoring the package set in the intent." into lmp-dev 2014-08-16 04:29:45 +00:00
Dianne Hackborn
028ceeb472 Fix issue #14617210: Apps can gain access to any ContentProvider...
...with grantUriPermissions (no user interaction required)

Add a new path in to the activity manager to start an activity as
if it was directy started by the original calling activity.  This
is specifically for the resolver activity and chooser activity to
be able to safely launch its data after serving as an intermediary.

Access to the new method is highly restricted -- it can only be
called by an activity that is declared in the framework apk itself,
and the execute-as-the-caller behavior will only happen if the
code is running under the system uid.  (This means we could still
have these run in the client's process in some cases and still work
correctly.)

Note there is some commented out code here half-done about trying
to propagate security exceptions back to the original calling
activity.  This would be really nice, especially now with the
chooser activity running in a system process so any errors made
by the app (bad permission grants, bad intents, etc) no longer
actually appear in the app so are essentially invisible.  I'd
really like to figure out a way to propagate these exceptions back
to the app, but this is hard since the app's process may no
longer even be running at this point.

Also tweak activity manager dump output to split the recents
dump out from activities, since recents can now be super large.

Change-Id: I50410c4783faf9302c69290589a068a846e0973a
2014-08-18 11:35:12 -07:00
Dianne Hackborn
89e4ae2f50 Merge "Work on issue #16629489: Google (Play?) Services eating through battery" into lmp-dev 2014-08-16 03:56:00 +00:00
Dianne Hackborn
d953c53d3b Work on issue #16629489: Google (Play?) Services eating through battery
There is a bug in how we deal with name overflows combined with resetting
the battery stats data.  If we do a reset while a wakelock is being
actively held that has been put into the overflow bucket, then we can
end up reducing the number of known wake locks in the list so when after
that it is released we try to release it under its real name rather than
the overflow name.

This means we need to keep track of which wake locks have been placed
in the overflow bucket while they are actively being used, so we can be
sure to properly handle it as part of that bucket until it is eventually
released.

This makes things...  somewhat more complicated.  So now we have a class
to take care of all these details, and also use it for other places where
we have the same overflow semantics sync and job stats.

Also fix potential deadlock -- BatteryStatsHelper needs to call on to
ConnectivityManager to find out of there is telepohny, however we use
that class when doing a dump while the battery stats lock is held.  To
fix this, we check the connectivity state up in the battery stats service
before acquiring the lock and propagate that information through to the
dump code.

Change-Id: Ib452206af5c36f4b0f03cc94d2845d36613d1ba5
2014-08-17 12:39:36 -07:00
Adam Powell
8f4a21e466 Merge "Fix a bug propagating navigation button events from ToolbarActionBar" into lmp-dev 2014-08-18 21:00:53 +00:00
Adam Powell
14e1afe0d8 Fix a bug propagating navigation button events from ToolbarActionBar
Add a simple internal wrapper for dealing with window callback events.
This should also make working with things like action modes from
ToolbarActionBar significantly easier in later changes.

Bug 16980711

Change-Id: I2c3d7525489a21847f4af9b80f6ebf9b34b4dd58
2014-08-18 15:58:23 -07:00
Jeff Sharkey
742e790294 Progress towards staging ASECs.
Move location selection logic into shared PackageHelper location,
and share it between DCS and PackageInstaller.  Fix bugs related to
installed footprint calculation; always count unpacked native libs.

Have PMS do its own threshold checking, since it's fine to stat
devices.  PMS only ever deleted staging ASECs, so move that logic
into installer and nuke unclaimed staging ASECs.  Allocate legacy
ASEC names using PackageInstaller to make sure they don't conflict
with sessions.

Start wiring up session to allocate ASEC and pass through staged
container for installation.

Fix bug to actually delete invalid cluster-style installs.

Bug: 16514385
Change-Id: I325e0c4422fc128398c921ba45fd73ecf05fc2a9
2014-08-18 15:52:24 -07:00
Nicolas Prevot
376e4ba962 When forwarding intents, ignoring the package set in the intent.
Apps should not be allowed to target a specific package in the target user.

BUG: 17025506

Change-Id: I81afa2f8d0a1114d91c001e357366792c63b6577
2014-08-15 11:57:47 +01:00
Zoltan Szatmary-Ban
9c7ed91d78 Merge "Revert "Revert "Revert "Revert "Revert "Update Trusted Credentials screen in settings"""""" into lmp-dev 2014-08-15 04:38:54 +00:00
Zoltan Szatmary-Ban
3291de8f6c Revert "Revert "Revert "Revert "Revert "Update Trusted Credentials screen in settings"""""
This reverts commit c9249c69813c6fb889d71d84583c67ae2942e6de.

Change-Id: I5504fddaf7b18efb73cd6c76678b3b39ce9b0229
2014-08-15 14:01:14 +00:00
Zoltan Szatmary-Ban
f8d72cc14f Revert "Revert "Revert "Revert "Update Trusted Credentials screen in settings""""
This reverts commit 87efe74e092236c372d3b6909009641123aa416a.

This should be fine now with all the dependency CLs +2-ed


Change-Id: I96ad14ad5ff81e6b5391035cb6c5a62339c6cc40
2014-08-15 12:58:37 +00:00
Narayan Kamath
f75aadc028 Revert "Revert "Revert "Update Trusted Credentials screen in settings"""
This reverts commit 19c8ce291e89a9ef1442a20e1feab421b11536d7.

Change-Id: Ie5a5571127311e0a29f314c0566e779cfe940b53
2014-08-15 12:25:52 +00:00
Zoltan Szatmary-Ban
1e7bc0def8 Revert "Revert "Update Trusted Credentials screen in settings""
This reverts commit 0f0de0bdd021bad5f85fdb0399a4ea91a1611e25.

Change-Id: Ia3d0907e3d7c2ec42d64e45f60e3dfaffb932c3d
2014-08-15 12:55:35 +01:00
Narayan Kamath
35cbf0e450 Merge "Remove system_server classes from the boot image." into lmp-dev 2014-08-15 04:32:23 +00:00
Narayan Kamath
29564cd245 Remove system_server classes from the boot image.
We set the system_server classpath in the environment
(like we do with BOOTCLASSPATH). After the zygote forks
the system_server, we dexopt the classpath (if needed)
and then launch the system server with the correct
PathClassLoader. This needed several small / medium
refactorings :

- The logic for connecting to installd is now in a separate
  class and belongs in the system_server.
- SystemService / SystemServiceManager have now moved to
  classes.jar. They are only used from there, and since they
  use Class.forName, we want them to be loaded by the
  system_server classloader, and not the bootclassloader.
- BootReceiver now moves to frameworks.jar, because it is
  used by ActivityThread and friends.

bug: 16555230

Change-Id: Ic84f0b2baf611eeedff6d123cb7191bb0259e600
2014-08-15 13:37:03 +01:00
Jeff Sharkey
9da2f1e007 Some networks may have null ifaces, I guess?
Seems like a bug further upstream, but guard ourselves against it
for now.

Bug: 17033841
Change-Id: Id0e5895c3389b63d4e34b1fb064efef8b72cd609
2014-08-14 22:42:27 +00:00
Chet Haase
9fde9a250f Merge "ActionBarOverlay needs to be focusable" into lmp-dev 2014-08-14 16:46:52 +00:00
Jose Lima
235510e672 Made AlarmClockInfo a nested class in AlarmManager
Bug: 16959028
Change-Id: I150eaaff765d1e214c3621c1bf50162ec0dac8ec
2014-08-14 02:10:41 +00:00
Chris Craik
1e610d479f Fix action bar background drawing
bug:16940717

Fixes regression from 0de8add60e0d40c59def41663acae4d57d0b4b15

Change-Id: I7ec30a9c0c9422874cad106a2caeb7dcbe75e1b6
2014-08-13 13:44:40 -07:00
Jorim Jaggi
8de4311c51 Lockscreen launch animations
- Get rid of ActivityManager.dismissKeyguardOnNextActivity, which was
  used for two different things: Dismiss keyguard from somewhere else
  (not really necessary anymore), wait to actually dismiss keyguard
  after the window behind is drawn. Instead, introduce
  keyguardWaitingForActivityDrawn(), and change the semantics where
  necessary.
- Make wallpaper_close_enter consistent with task_open_enter and the
  Keyguard launch animation.
- Close the panel even on lockscreen when launching a notification.
- Block notification shade updates during the collapsing motion so
  notification don't play the disappear animation immediately after
  having launched a notification.

Bug: 15991916

Change-Id: I133c177b84e926c87c1a404ba93d633593fec3ab
2014-08-12 22:47:52 +00:00
Chet Haase
90e854ab7b ActionBarOverlay needs to be focusable
Issue #16654827 Settings search does not close all the way.

Change-Id: I6e46ac828a6a5e90e29761c176899b90d32563c5
2014-08-12 22:25:53 +00:00
Jorim Jaggi
c15819748a New lock pattern assets and animations
Also removes the arrows.

Bug: 16196240
Bug: 13735707
Change-Id: I5a6606d916192fff594c7e6211e80b73ccd30456
2014-08-12 19:02:28 +00:00
Jeff Sharkey
eb2c2c790c Hack and ship: NetworkStats edition.
Some devices use clatd for catching raw IPv4 traffic when running on
a pure-IPv6 carrier network.  In those situations, the per-UID
stats are accounted against the clat iface, so framework users need
to combine both the "base" and "stacked" iface usage together.

This also means that policy rules (like restricting background data
or battery saver) need to apply to the stacked ifaces.

Finally, we need to massage stats data slightly:

-- Currently xt_qtaguid double-counts the clatd traffic *leaving*
the device; both against the original UID on the clat iface, and
against UID 0 on the final egress interface.

-- All clatd traffic *arriving* at the device is missing the extra
IPv6 packet header overhead when accounted against the final UID.

Bug: 12249687, 15459248, 16296564
Change-Id: I0ee59d96831f52782de7a980e4cce9b061902fff
2014-08-11 18:40:23 -07:00
Jeff Brown
6d2a9492e2 Eliminate power manager latency for boot completed.
The power manager disables the power button until boot completed
occurs.  If there are many pending broadcasts in the queue, it
may be possible for BOOT_COMPLETED to be delayed for several
seconds after boot.

To avoid the delay, introduced a new boot phase which is
sent to system services immediately when boot completed happens.

Bug: 13398280
Change-Id: I1833d2ffb20305009dd76363b43e534034f1d0a2
2014-08-11 17:13:03 -07:00
Christopher Tate
bf1a4a81eb Start using cancelFullBackup() when appropriate
The API was in place but the framework wasn't yet calling it.

Bug 16524520

Change-Id: Ie368758c830a7d0ad11e7dd3142a0ed896069944
2014-08-09 00:48:47 +00:00
Adam Lesinski
81f6d857c1 Merge "Second iteration of the UsageStats API" into lmp-dev 2014-08-08 18:15:47 +00:00
Adam Lesinski
3516800b61 Second iteration of the UsageStats API
Based on feedback from API council, updated the API.
Also added support for querying the event log.

Change-Id: Ibaa008b9e5bd145acdfe8e20c25c2ed2d96be123
2014-08-08 12:08:15 -07:00
Svetoslav
8e1d299da2 Polish the new cross-profile app widget APIs
bug:14991269

Change-Id: I5996f8c69a3d151ff1ecd8f19403dd606f588150
2014-08-08 20:35:59 +00:00
Dianne Hackborn
cd0e335be3 Fix issues #16655104 and #16875776 in battery stats.
Issue #16655104: Android system used 21% of battery

We weren't clearing the current process state when we now retain
process objects across resets.

Issue #16875776: abnormal outliers in screen-off battery life in go/batterystats

The checkin data since charged was using the since unplugged data
for the amount of drain with the screen on/off.

Also added a new version tag in the checkin output containing
the platform build number and internal version format number, to
start moving away from the wasteful version code on every line.

And fixed a bug in figuring out when things have changed over
discharge levels.

Change-Id: I89b89513a748016aacc848f14bbbc8b2400d92ca
2014-08-07 22:34:27 -07:00
Alan Viverette
1a2aad0abb Fix docs build
Change-Id: Ieaea48c597efd23449615d22969a107e607bbdc2
2014-08-08 01:07:02 +00:00
Christopher Tate
e079264b98 API to tell the transport to cancel a full backup in progress
Bug 16524520

Change-Id: If2cbffd3c8a03bf4eb7b11ff1ae784c437e27e7f
2014-08-07 23:16:19 +00:00
Dianne Hackborn
0068d3dcf1 Fix issue @16555033: Battery history overflowing too much
- No longer track process starts/stops normally.
- Increase buffer size to 256KB.
- Buffer size increase requires reworking how battery stats
  are retrieved, since it is going to be hitting IPC limits.
- Also, store the last full stats after a reset, to be reported
  at the next checkin.
- Also, discharge and charge times are tagged with the screen
  and battery save state during that time.

Change-Id: Ie108ac9b626846108a9bb858101ac2b93276ac16
2014-08-07 12:19:39 -07:00
Zoltan Szatmary-Ban
138b324d5d Merge "Revert "Update Trusted Credentials screen in settings"" into lmp-dev 2014-08-07 12:44:12 +00:00
Zoltan Szatmary-Ban
678e3ecc93 Revert "Update Trusted Credentials screen in settings"
This reverts commit 4fde5aa9fab931d9becfc49f7d7b8526ad5640d9.

Change-Id: I581c38d64e9829b0079bafa42615f2aa0bf64763
2014-08-07 13:41:08 +00:00
Zoltan Szatmary-Ban
0f5efe0b44 Merge "Update Trusted Credentials screen in settings" into lmp-dev 2014-08-05 00:19:02 +00:00
Adam Powell
11a6ddbb6e Merge "Fall-through for ActionModes with ToolbarActionBar" into lmp-dev 2014-08-05 00:15:52 +00:00
Adam Powell
1dcedbac34 Fall-through for ActionModes with ToolbarActionBar
When using ToolbarActionBar simply fall through to the default window
decor behavior for showing action modes.

Bug 16660506

Change-Id: Ib90282287b2af48f39f9d9ace296581565431eed
2014-08-05 16:38:53 -07:00
Winson Chung
cdcd487aba Fixing issue where home was triggered on top of other activities being launched. (Bug 16823617)
- Also fixes issue with the Recents hide message being clobbered
2014-08-06 01:02:15 +00: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
Craig Mautner
1c8eb5e3d0 Use actual number of packages rather than getCount()
The ResolverActivity method getCount() returns the number of
entries below the default entry, not the total number of entries.
But the onCreate() method expected the getCount() method to
return the total number of entries. This change provides the total
to onCreate().

Fixes bug 16800358.

Change-Id: I3915c3d5ad642e31d7248226fc91bd4047f16b2d
2014-08-05 19:11:59 +00:00
John Spurlock
cb566aab57 Doze: Follow the notification light.
- Send the notification light info up to SystemUI from NoMan.
 - Doze mode will now periodically pulse the display (once)
   if the notification light is active.
 - Change "tease" terminology to "pulse", which is the singular.
   Maintain the multi-pulse on buzz-beep-blink for now as extra
   emphasis.
 - Scrim controller now always takes number of pulses as an arg,
   to support a single pulse (used for notification light, and
   eventually pickup once available).
 - Dial down the display brightness when pulsing.

Bug:15863249
Change-Id: Ifb208a27e82b66cff1d0c04e5b7f758098ea29cf
2014-08-04 11:32:18 -04:00
Zoltan Szatmary-Ban
1386627335 Update Trusted Credentials screen in settings
Trusted credentials for both the primary user and its managed profiles are shown
on the Trusted Credentials fragment. All functionalities (e.g. disabling/enabling
of certificates) remain available.

Bug: 16029580

Change-Id: Ia92ae02d8c572bf4a3be172f6c255726cefc0fa1
2014-07-29 16:43:37 +01:00