30599 Commits

Author SHA1 Message Date
Dianne Hackborn
57a7f5954c Add "adb shell am restart" command.
So you can restart the system without being root.

Change-Id: I89770f497833ecbe2b69e3a0cfafae7ef472a9f5
2013-07-23 11:51:22 -07:00
Dianne Hackborn
5cf6663c80 Merge "Add new facility for apps to declared their preferred intents." 2013-07-23 18:30:18 +00:00
Geremy Condra
5830e07521 Merge "Fix supplimentary network connections with VPNs" 2013-07-23 17:58:33 +00:00
Geremy Condra
1b6868cc4b Merge "Support multiple Vpn ManageDialogs" 2013-07-23 17:55:45 +00:00
Amith Yamasani
9dade39ec3 Merge "User restriction API to disable single-user restrictions feature." 2013-07-23 16:21:48 +00:00
Amith Yamasani
0343ec3abb User restriction API to disable single-user restrictions feature.
Change-Id: I80e08b38b5e32f3cb1af51398907510508ec199f
2013-07-23 09:17:21 -07:00
Romain Guy
d1233575b5 Merge "Use the parameter type as part of the methods cache key" 2013-07-23 00:03:51 +00:00
Romain Guy
484f4d6282 Use the parameter type as part of the methods cache key
Change-Id: Ie204d16b62028fc1eb35cc7cb3244654e1360a37
2013-07-22 16:59:31 -07:00
Martijn Coenen
fd23eca5ba Merge "First shot at (host-based) card emulation APIs." 2013-07-22 23:20:01 +00:00
Jean-Michel Trivi
2342543328 Merge "Refactor for audio focus, remote control, media button handling" 2013-07-22 23:14:26 +00:00
Jean-Michel Trivi
fa9a69805b Refactor for audio focus, remote control, media button handling
Extract audio focus, remote control and media button handling
 outside of AudioService without any changes in functionality.
 Moving logic to new class, MediaFocusControl.
Introduce interface for managing volum control logic, VolumeController.
 The VolumePanel class implements this interface.

Change-Id: I72bda2e0670c26e61ff076fd729c15f9f1156dc5
2013-07-22 16:09:15 -07:00
Dianne Hackborn
b09491f271 Add new facility for apps to declared their preferred intents.
This is an extension from the existing data/etc/perferred-apps
facility.  Now applications pre-installed on the system image
can declare which intents they would like to be considered the
preferred app for.  When the system firsts initializes, or the
application settings are reset, these are used to configured
the current preferred app settings appropriately.

You use this with a new <preferred> tag under your activity,
which indicates which intents you would like to be the preferred
handler for.  The syntax for this is written much like an
intent filter, however semantically it is not really an intent
filter and so has some important differences:

- You can not use globbing patterns (for SSPs or paths).
- You can use only one action (if you use more than one it
  will only use the first one, so be careful).

Semantically what this is actually used for is a template
from which to generate a set of Intent objects, which are used
to probe the current environment in order to see if there are
multiple activities that can handle the Intent and, if so,
generate a new preferred setting for that pointing to your app.

As an example, here is how the preferred tag might be written
for the Maps application:

            <preferred>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="http" />
                <data android:scheme="https" />
                <data android:host="maps.google.com" />
                <data android:path="/" />
                <data android:pathPrefix="/maps" />
            </preferred>
            <preferred>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="geo" />
            </preferred>

From this, we generate the following set of potential Intents
to be matched, all with ACTION_VIEW, CATEGORY_DEFAULT+CATEGORY_BROWSABLE:

Change-Id: I7fd42aec8b6109c7dd20012529662362f1b7437a
http://maps.google.com/
http://maps.google.com/maps
https://maps.google.com/
https://maps.google.com/maps
geo:
2013-07-22 15:30:11 -07:00
Martijn Coenen
ce1279686b Merge "Add host-based card emu feature to PackageManager." 2013-07-22 22:29:21 +00:00
Igor Murashkin
6944165014 Merge "camera2 api: marshal rect, size, string for metadata" 2013-07-22 21:38:55 +00:00
Michael Wright
0f80f4b584 Merge "Take advantage of KeyEvent.isConfirmKey" 2013-07-22 21:30:02 +00:00
Romain Guy
5ab9ece899 Merge "Cache reflection lookups" 2013-07-22 20:57:10 +00:00
Svetoslav Ganov
26bd5f1d3a Merge "Implement persistence/restoring of print spooler state." 2013-07-22 20:08:16 +00:00
Svetoslav Ganov
88d199130d Implement persistence/restoring of print spooler state.
1. Implemented the persistence and restoring of the print spooler state.
   The print spooler state is saved as an XML on every print job change
   and is restored when we bind to the spooler. The system does not
   unbind from the spooler until the state persistence completes. We
   are now storing the entire state, i.e. all print jobs, when a single
   one changes. This is not optimal but we are not expecting to have
   many such at the same time, so for now we err for simplicity of
   implementation.

2. Enforcing a non-empty print job name.

3. Hidden the STATE_CREATED print job state which should never be visible to a
   client since this is the state of a print job during construction, i.e. the
   print dialog is up and we are doing back and forth with the app.

4. Fixed some PrintAttributes APIs that were incorrectly taking in a PackageManager
   instance.

5. Updated the PrintSpooler build file due to splitting the framework into multiple
   jars.

Change-Id: I52c88eaa1ec9c64920359cc143c79832a4c3d25b
2013-07-22 13:07:09 -07:00
Romain Guy
e4d4e20e8f Cache reflection lookups
This change also cleanups the code a little bit. Caching lookups
not only speed things up but it also avoids unnecessary allocations.

Change-Id: Ie3d1ae106d32b3b5f2c5d33b6318ed93cd9e27f9
2013-07-22 13:02:02 -07:00
Martijn Coenen
f4bf158328 Add host-based card emu feature to PackageManager.
Change-Id: Id55025e5ab8443be1e6ac23ac5d9ab93565a53f0
2013-07-22 12:10:18 -07:00
Martijn Coenen
5eaa8970aa First shot at (host-based) card emulation APIs.
HostApduService: convenience service class for implementing
a service that registers a set of ISO7816-4 AIDs and emulates
the corresponding application inside the service itself.

SeApduService: convenience service class for implementing
a service that registers a set of ISO7816-4 AIDs that reflect
applications installed on an embedded secure element or UICC. Contains
event hooks to allow the service to handle eSE/UICC events that
correspond to those AIDs.

Change-Id: I44191bd4abcbbe4f1fd36a9fd42639fe5c0cf496
2013-07-22 10:20:49 -07:00
Christopher Tate
d55e18ecea Merge "Add AlarmManager.setWindow(...) for supplying an explicit delivery window" 2013-07-20 01:56:17 +00:00
Christopher Tate
57ceaaa0aa Add AlarmManager.setWindow(...) for supplying an explicit delivery window
Bug 9532215

Change-Id: I0efe32cbaaae8ce6ab223041eed116c3470a7326
2013-07-19 18:11:45 -07:00
Mathias Agopian
d84feebba4 Merge "update to new Consumer APIs" 2013-07-20 01:03:22 +00:00
Dianne Hackborn
450d8c5b7c Fix issue #9940105: IllegalArgumentException in ArrayMap
Try to deal with unmarshalling old parcels.  Turns out someone
was writing a parcel to disk storing a Bundle.  Naughty, naughty.
This helps us not completely keel over.

Change-Id: Id343da2690b7bab89f6c3cb6fad1b92f270dad03
2013-07-19 17:05:30 -07:00
Svetoslav
597945fd3a First pass of the print dialog UX
Change-Id: I315a16d7f68c73ca180c76e722847b4b1bdea55b
2013-07-19 16:23:12 -07:00
Michael Wright
24d36f5922 Take advantage of KeyEvent.isConfirmKey
Change-Id: I2925c624338a5c622a7b3fef05b62099465b6389
2013-07-19 16:15:19 -07:00
Michael Wright
7a5480d6d7 Merge "Debounce touch navigation taps and button presses" 2013-07-19 23:15:05 +00:00
Craig Mautner
acb837fe63 Merge "Fix home activity and user switch interactions." 2013-07-19 23:07:51 +00:00
Craig Mautner
ac6f843c91 Fix home activity and user switch interactions.
- Make sure Home activity goes in the correct task and on the correct
stack.
- Do not allow different users to be in the same task.
- Do not set stacks aside for each user.

Fixes bug 9775492.

Change-Id: I0e7954e917aac8482a1015a36923e02914e2b692
2013-07-19 16:05:59 -07:00
Chad Brubaker
f336d722c7 Fix supplimentary network connections with VPNs
Enables the use of supplimentary mobile networks like MMS, and HIPRI
while VPNs are running.

Change-Id: I313f57a905b4e16bd4322c68687cbff1cfbe9d3e
2013-07-19 15:57:05 -07:00
Michael Wright
7caaeeb6a8 Merge "Add input device property for buttons under touchpads" 2013-07-19 22:45:51 +00:00
Robert Greenwalt
538cdb98ef resolved conflicts for merge of 85b5e4c4 to master
Change-Id: Idd0ad9b1504fddf68c4c4cc04731de1eddd204b3
2013-07-19 14:09:30 -07:00
Robert Greenwalt
85b5e4c48f am b5bf655c: am e874bd35: Merge "Add gservices updater for carrier provisioning url" into jb-mr2-dev
* commit 'b5bf655cc6cc9128aec99958cce3b054348c9273':
  Add gservices updater for carrier provisioning url
2013-07-19 13:37:41 -07:00
Eric Laurent
c1167a93dd Merge "VolumePreference: fix audio sample playback" 2013-07-19 19:50:31 +00:00
Amith Yamasani
7e81dd274f Merge "Have UserManagerService clear the restrictions and unblock apps" 2013-07-19 19:48:21 +00:00
Eric Laurent
aca105cfb4 VolumePreference: fix audio sample playback
Handle audio sample start/stop request in a handler
to avoid race conditions.

If a sample is active, do not ignore playback requests but
schedule a second attempt one second later. This is to avoid
ignoring a playback request if a sample is short or about to finish.

Bug: 8176776.

Change-Id: If2d5f7d469eba345af3f4771067a076a56f4bfed
2013-07-19 19:48:02 +00:00
Igor Murashkin
194ea7d9a3 Merge "camera2 api: Output classes for key types where it makes sense" 2013-07-19 19:16:06 +00:00
Igor Murashkin
3710db80d4 camera2 api: marshal rect, size, string for metadata
Change-Id: Iec2fd823bc92394da44abb32ca38a625d7638e3d
2013-07-19 12:04:48 -07:00
Mike Lockwood
757ec7837d Merge "LocalSocket: Add support for SOCK_DGRAM and SOCK_SEQPACKET" 2013-07-19 17:39:28 +00:00
Ben Murdoch
a5cdd51cb7 Add WebView.evaluateJavaScript(String, ValueCallback) API.
This API is intended to replace the "WebView.loadUrl("javascript:...")
pattern that is the current mechanism for executing JavaScript in the
context of the current page displayed in the WebView.

The new API is more convenient - it doesn't trigger the normal URL
loading path - and so does not have side effects such as hiding
the keyboard - and allows the caller to specify a callback that will
be invoked once the script execution is complete.

BUG=9814043

Change-Id: I3f27e8ff5371077d9265430090d61381a3a86e76
2013-07-19 10:24:05 +01:00
Kenny Root
4231185a2e Merge "KeySets: better rejection for badly-formed manifest" 2013-07-19 01:43:40 +00:00
Christopher Tate
3e07a89b2c Fix build & preserve DHCP scheduling as-is
Change-Id: I4063b18532c476280f343658bf3641495e526ed4
2013-07-18 18:23:57 -07:00
Dianne Hackborn
c0dfee29a8 Merge "Fix issue #9925269: Naver app crashes on launch" 2013-07-19 00:46:40 +00:00
Christopher Tate
eeda23d2e1 Merge "Make more calendar alarms exact" 2013-07-19 00:42:38 +00:00
Christopher Tate
9e4b6f5a69 Make more calendar alarms exact
Change-Id: I5ef72268b0605ba5a635b70d2b521533d3bd3ef0
2013-07-18 17:41:32 -07:00
Dianne Hackborn
ff32f353f8 Fix issue #9925269: Naver app crashes on launch
No comment.

Change-Id: I084cbbf21cacdce179c11528b7217fdc6006dceb
2013-07-18 17:31:13 -07:00
Christopher Tate
1a80cfe968 Merge "Batch alarms to reduce device wakeups" 2013-07-19 00:22:59 +00:00
Dianne Hackborn
059bf080fb Merge "Fix crash." 2013-07-18 23:53:33 +00:00
Dianne Hackborn
127c5ef5d7 Fix crash.
Change-Id: I0b5d846d5a9e6b1c7c3756b653833c263634270b
2013-07-18 16:51:04 -07:00