12132 Commits

Author SHA1 Message Date
Roozbeh Pournader
dad100699a Negotiate locales during Resources contruction and updates
This also adds a new API to Resources, to get the resolved locale
from the Resources.

Bug: 25800576
Change-Id: I431f1c1b4b6775fcbc097936d0d607400db47f7d
2015-12-14 17:20:47 -08:00
Ta-wei Yen
a07707a899 Add field QUOTA_OCCUPIED and QUOTA_TOTAL to VoicemailContract.Status
Fields to track how much visual voicemail quota is used.

Add field LAST_MODIFIED to VoicemailContract.Voicemails.
Add field LAST_MODIFIED to CallLog.Calls.

Timestamp field for the last time the row is inserted/updated.

+ VoicemailContract.Status.setQuota() helper method to set the quota.

Bug:25197644
Bug:22013880

Change-Id: Icb250203971df1f4ae4e1cbc9dbefeec9ad3282e
2015-12-14 12:59:05 -08:00
Jun Mukai
80fdc1bd36 Allow specifying pointer shape from xml resource.
Bug: 25777986
Change-Id: I8be5d2cb130299b0ea8f4f4d3dc582143f7ff553
2015-12-14 12:09:27 -08:00
Gustav Sennton
88b3b57341 Merge "Add functionality for changing WebView provider." 2015-12-14 14:33:56 +00:00
Tyler Gunn
6baa707133 Merge "Add PhoneAccount capability to indicate if VT uses presence." 2015-12-12 00:38:12 +00:00
Julia Reynolds
41c264bae1 Merge "Add importance to notification guts." 2015-12-11 21:41:32 +00:00
Julia Reynolds
ead00aac15 Add importance to notification guts.
Note: the guts are still trucated to the height of the notification.
The slider initially shows the importance of the individual notification,
but changing the slider changes the importance for the whole group
of notifications.

Bug: 22451710

Change-Id: Id6de3aaace2bdb88a8cc5db517002dc7f0e349ae
2015-12-11 14:57:47 -05:00
Jeff Sharkey
b642387b43 Cleaner API for requesting locked status.
Change-Id: I1a5a6703737fb838347eaa292004430f2b9d29c3
2015-12-11 11:15:37 -07:00
Ronghua Wu
31788966a8 Merge "media: Add MIMETYPE_VIDEO_DOLBY_AVC and MIMETYPE_VIDEO_DOLBY_HEVC." 2015-12-11 17:47:43 +00:00
Gustav Sennton
6258dcd7ea Add functionality for changing WebView provider.
Make it possible to change WebView provider (through a Developer
setting) and kill all apps using the old provider.
This includes checking the signatures of the WebView providers to make
sure they are valid.

Now that we can change WebView provider through a setting it is possible
to change provider while some provider is being updated. Because of this
we now keep track of which provider should be in use in
WebViewUpdateService to make sure we use the correct provider at all
times.

We now also read WebView package meta data (name, package name, and
signature) from a separate xml file.

Main bug: crbug.com/546185

Bug: 25338573

Change-Id: I660fd1a40a5388f6569a06a7f0d029e8ff65945a
2015-12-11 14:29:44 +00:00
Tyler Gunn
1c61043876 Merge commit 'bc4da97ce0fcd0ddef228048bc663e383776c323' into mncvtdev-to-mmwirelessdev-merge-2015-12-10 2015-12-10 20:03:24 -08:00
Tyler Gunn
fb21fb73e9 Merge commit '024557b2afdbe2e946d2cc557cb71492d87b0f62' into mncvtdev-to-mmwirelessdev-merge-2015-12-10
Change-Id: I44853f0e2f56d33c8126de0799bd5129799592bd
2015-12-10 20:02:16 -08:00
Jack Yu
a11d3ac4c2 Merge "merge from master" into mm-wireless-dev 2015-12-11 01:07:24 +00:00
Christopher Tate
4aa47e58c4 DO NOT MERGE Introduce direct listener API for alarm delivery
The Alarm Manager now supports a set() variant that takes a listener
callback to invoke at alarm trigger time rather than a PendingIntent.
This is much lower overhead and has guaranteed low delivery latency
from the trigger time.  The tradeoff is that the app must be running
*continuously* from the time the alarm is set to the time it is
delivered.  If the app exits for any reason before the alarm fires,
the listener becomes invalid and the alarm will be dropped.  This is
more or less equivalent to setting an alarm with a broadcast
PendingIntent that matches only a runtime-registered receiver.

The app's alarm listener can be any object that implements the new
AlarmManager.OnAlarmListener interface and implements its onAlarm()
method.  There is no data delivered at alarm trigger time: whatever
state needs to be associated with the specific alarm instance should
simply be packaged inside the OnAlarmListener instance.

An alarm using OnAlarmListener can request that the onAlarm() method
be called on an arbitrary handler.  If the program passes 'null' for
this parameter when setting the alarm, the callback occurs on the
application's main Looper thread.

Cherry-picked from 14a7bb0d370fffdf902a4e2345f46754ed2d7684
Bug 20157436

Change-Id: I2eb030a24efdd466a2eee1666c5231201b43684b
2015-12-10 16:06:50 -08:00
Mitchell Wills
075698c35f DO NOT MERGE Expose gscan exponential backoff API
Will be ignored until scan scheduling supports it

Cherry-picked from 2564d9a4efb2f3a44dac5ae1e5e437e5355d19cf
Change-Id: I9d392080e6ec8dfa9a998f6c04ec37f9c6dad0b2
2015-12-10 16:06:50 -08:00
Mitchell Wills
a23840e7a4 DO NOT MERGE Remove old APIs that are no longer used/implemented
All of these APIs were hidden and are no longer used by anyone. The scan
APIs are being replaced by the new WifiScanner API

Cherry-picked from 88d93cd68a32e7110f9328ff522226126c7e493e
Change-Id: I36ffef137d0620263278e5ef46bbc498a39c588f
2015-12-10 16:06:50 -08:00
Jan Nordqvist
255d41dce1 DO NOT MERGE Hotspot 2.0 relase 2 first cut.
CP mods to take a URL as a parameter, and new ScanInfo object.

Cherry-picked from 52eb29f0822f129f2b14bacec23dd492f2260ac0
Change-Id: Idbb2d4751c575ba07a56942771e2b2955b624635
2015-12-10 16:06:50 -08:00
Prashant Malani
04b4819fcf Remove hide annotation from AXIS_SCROLL
Bug: 22836852
Bug: 18707397
Change-Id: I77ec72cf577cb68782b9954f4d40845d723a7685
2015-12-10 15:09:45 -08:00
Ronghua Wu
58a30f1cf6 media: Add MIMETYPE_VIDEO_DOLBY_AVC and MIMETYPE_VIDEO_DOLBY_HEVC.
Bug: 25684127
Change-Id: I535b1971e0fe6b19e5182b09ca04b69b337a8474
2015-12-10 12:36:14 -08:00
Jack Yu
6714030083 merge from master
Change-Id: Ic03669db3f4595336a7dbc13ffc77d055d11acf9
2015-12-10 12:27:58 -08:00
Yohei Yukawa
ac0ec1b020 Merge "Use BCP-47 LanguageTag in IME/Spell-Checker." 2015-12-10 17:45:18 +00:00
Insun Kang
880677bdda Merge "MediaRouter: Add getDeviceType() to RouteInfo" 2015-12-10 02:57:29 +00:00
Filip Gruszczynski
ac7518854e Merge "Remaining APIs for freeform window caption." 2015-12-10 01:57:10 +00:00
Tyler Gunn
9a365756b3 Add PhoneAccount capability to indicate if VT uses presence.
Added new PhoneAccount capability used to indicate whether the dialer
should use the presence bit in the contacts provider to determine when
the video call icon is shown or not.

Bug: 20257833
Change-Id: Ifb3cc5b7ff1090d539dfb925dce9f6327de15c46
2015-12-09 15:00:18 -08:00
Jeff Sharkey
98cb23dccf Merge "Slight API renaming, better behavior." 2015-12-09 22:51:43 +00:00
Jeff Sharkey
e13529a4ad Slight API renaming, better behavior.
Rename APIs to reflect that they're storage-related.  Also move
credential-storage APIs to be system API.

Return a null Context when device-encrypted storage isn't
supported.  This is the easiest way to keep legacy apps working when
upgrading from M to N.

Reduce strictness of path checking so we don't crash when working
with special packages like "android".

Bug: 22358539, 26104027
Change-Id: I38c24fc003488186210a6ae3b64270f86e1efe56
2015-12-09 15:22:54 -07:00
Filip Gruszczynski
3dec081967 Remaining APIs for freeform window caption.
The APIs are:
* setting a listener for the area of the caption where we display
control buttons; this is intended for apps that overlay the caption on
their content, so they don't display the content in that area and clash
with the buttons;
* specifying the color pallete of controls in the caption; by default we
try to infer the best color from the theme (dark buttons for light theme
and vice versa), but in case we get it wrong, we allow the developer to
overwrite it;
* specifying the caption background during the resizing; by default we
try to infer a good color from the theme, but in case we do it wrong, we
allow the developer to overwrite this.

The CL also includes merging of layouts decor_caption_dark and
decor_caption_light into a single one. Not only it reduces code
duplication, but also is necessary for allowing adjustment of the
controls color pallete after the layout was created.

Bug: 25486369
Bug: 25818398

Change-Id: Ib87fe849b07df341893ec7873982bf7ab932f6d5
2015-12-09 13:46:30 -08:00
Yin-Chia Yeh
5e7033702a Merge "Camera: add RAW_PRIVATE format" 2015-12-09 20:40:39 +00:00
Ta-wei Yen
6b733f61e9 Merge "Add KEY_VVM_CELLULAR_DATA_REQUIRED_BOOLEAN to CarrierConfigManager" 2015-12-09 20:18:01 +00:00
Yin-Chia Yeh
44581ff4db Camera: add RAW_PRIVATE format
Also add necessary plumbing for RAW_PRIVATE to work for ImageReader.

Bug: 25596619
Change-Id: Ic90f3f44264ac46fae1fafbc27ac64b5319f0970
2015-12-09 11:20:32 -08:00
Chet Haase
709bf2a37c Merge "Revert "Add support for partial view layouts"" 2015-12-09 18:40:06 +00:00
Jeff Tinker
67b39bfa08 Merge "Remove unused MediaDrm.unprovisionDevice" 2015-12-09 17:07:35 +00:00
Roozbeh Pournader
3f74371155 Merge "Revert "Fix Build: Revert "Implement locale matching in LocalesList.""" 2015-12-09 17:06:10 +00:00
Jeff Tinker
dade24c12a Remove unused MediaDrm.unprovisionDevice
bug:25726218
Change-Id: Ibbd51aaa1ee4c21c9ec8b162fc6e378ab7ba6e7b
2015-12-09 09:02:31 -08:00
Narayan Kamath
6f775a8d0f Merge "Track API changes to java.lang.ref.Reference." 2015-12-09 16:19:39 +00:00
Narayan Kamath
12f62b7ec1 Track API changes to java.lang.ref.Reference.
Change-Id: Iea25e3e0efec56106f44d42232e772cf36f76e68
2015-12-09 15:59:03 +00:00
Roozbeh Pournader
2591cc8630 Revert "Fix Build: Revert "Implement locale matching in LocalesList.""
This reverts commit 9c2f0d751d16360a2cd857b1db752f0009481b21.

The original commit, 17b2b2d45854b56de7aa6d1581526e45991274d4, had
missed adding api/test-current.txt.

Change-Id: I26a6325b3cee4c2412ee599f002cc6addb35d36f
2015-12-08 22:28:30 -08:00
Insun Kang
9dd66417ea MediaRouter: Add getDeviceType() to RouteInfo
Bug: 24777080
Change-Id: I5d7b44ec84371fbb9560578ece439e1a00dcdd50
2015-12-09 14:04:09 +09:00
Ian Pedowitz
adf2b4d669 Merge "Fix Build: Revert "Implement locale matching in LocalesList."" 2015-12-09 02:36:29 +00:00
Ian Pedowitz
9c2f0d751d Fix Build: Revert "Implement locale matching in LocalesList."
This reverts commit 17b2b2d45854b56de7aa6d1581526e45991274d4.

Change-Id: I93c010054648a7127172a16c6ef3eb5f13604fd7
2015-12-09 02:17:32 +00:00
Roozbeh Pournader
7ed26b10e7 Merge "Implement locale matching in LocalesList." 2015-12-09 01:03:31 +00:00
Chet Haase
4610eeff9c Revert "Add support for partial view layouts"
This reverts commit c55d5072ac52cee1811b52406419228fa81119ce.

There were several bugs related to incorrect handling of various
layout issues (layout not being run on containers/views that needed
it), reverting to take another run at it outside of master.

Issue #25980198  requestLayout() sometimes doesn't result in measure/layout for view

Change-Id: Ic0e159cbcf6171652d8fd1bee9ae44a3977cea04
2015-12-08 16:45:23 -08:00
Filip Gruszczynski
d427047d98 Merge "Remove Window.setDecorView API." 2015-12-09 00:13:42 +00:00
Tony Mak
4b97eecf11 Merge "Add Email.ENTEPRISE_CONTENT_FILTER_URI" 2015-12-09 00:11:53 +00:00
Filip Gruszczynski
9b81e406b0 Remove Window.setDecorView API.
We currently don't have a strong use case for this.

Change-Id: I106aaf1224d7934964d9b92628fd3cdd42507c46
2015-12-08 16:07:02 -08:00
Roozbeh Pournader
17b2b2d458 Implement locale matching in LocalesList.
The algorithm tries to find the first locale in the locale list
(usually from the user preference) that somewhat matches one of the
locales supported (usually from the list of locales supported by the
system or an app).

Locales match if both their language and their likely script is the
same. Otherwise they don't.

Bug: 25800576
Change-Id: I4fbc3f44ab16d41efebbf941e94a0bb30d598f82
2015-12-08 15:03:39 -08:00
Jeff Sharkey
103d61b9f7 Merge "Shift around encryption public APIs." 2015-12-08 22:29:52 +00:00
Jeff Sharkey
7a30a30ebe Shift around encryption public APIs.
There are far too many Context APIs with special directory paths
to replicate device-encryption versions of them all.  Instead, add
methods to clone a Context that explicitly stores its data in either
credential- or device-encrypted storage.

Methods to test the behavior of a given Context.

Bug: 22358539
Change-Id: I6a6290a9b282605ce9a1f82742fc2c4c50536754
2015-12-08 15:24:29 -07:00
Yohei Yukawa
868d19b93b Use BCP-47 LanguageTag in IME/Spell-Checker.
The primary goal of this CL is to make it clear that BCP-47 is the
expected format to annotate locale information for each
{InputMethod, SpellCkecker}Subtype.  In order to avoid possible
compatibility issues, this CL introduce a new "languageTag" attribute
instead of reusing existing "imeSubtypeMode" and "subtypeLocale"
attributes.

For IME developers, this CL changes nothing unless "languageTag"
attribute is specified.  To summarize:

  A: If only legacy locale-string is specified
     (existing IMEs/Spell-Checkers fall into this category):
    -> The system uses locale-string.

  B: If only LanguageTag is specified:
    -> The system uses LanguageTag.

  C: If both locale-string and languageTag are specified:
    -> The system uses LanguageTag.  Legacy locale-string is ignored.

For application developers, there should be some follow-ups CLs because
even with this CL most likely they would still have to take care of
previous versions of Android where:
  - Locale#forLanguageTag()              (N/A in API Level 20 and prior)
  - Locale#toLanguageTag()               (N/A in API Level 20 and prior)
  - InputMethodSubtype#getLocale()       (Deprecated in N)
  - SpellCheckerSubtype#getLocale()      (Deprecated in N)
  - InputMethodSubtype#getLanguageTag()  (N/A in M and prior)
  - SpellCheckerSubtype#getLanguageTag() (N/A in M and prior)
One idea would be is in the official support library to provide a utility
method that takes care of above tasks and just returns a Locale object.
If we had a utility method in the support library, probably not
returning a Locale object from #getLanguageTag() would make sense.

From performance point of view both existing legacy locale-string
attribute and new LanguageTag attribute are just String objects that
travel from XML manifest to system services to applications via IPCs.
Hence there are no performance implications except for having one more
String objects.

Bug: 22858221
Change-Id: I6db107ad2afc7709167f7c4e5d24bd589ac8bd70
2015-12-08 12:27:55 -08:00
Svet Ganov
2acf063da0 Ephemeral cookie API
Add APIs for an ephemeral app to set a cookie which is a small
peice of data cached longer than the app itself. This is useful
for avoiding the user to login every time they use the ephemeral
app. The cookie is stored after an ephemeral app is uninstalled.
Normal apps or ephemeral apps upgraded to full apps can also use
these APIs with the difference that once they are uninstalled
the cookie is deleted.

The cookie size defaults to 16KB and is configurable by a global
settings which can be adjusted via gservices. Also eviction policy
is time based with a default of one month and is configurable by
a global setting which can be adjusted via gservices. If the cert
of the app cahnges (when ephemeral is installed, uninstalled and
installed again) the cooke is wiped to prevent data leaks.

This cahange also adds an API for apps to know whether they run in
an ephemeral mode since it this mode some APIs will not be available.
Another API exposed by this change is private for the system and
exposes all ephemeral apps - installed and uninstalled. Only the
system can call this API. When an ephemeral app is uninstalled the
system stores its name, icon, and permissions. When the app is
reinstalled or a full version is installed the permissions are
propagated.

Change-Id: Id4a73a7750bfbabda0bfcb9bf9018d2062e94367
2015-12-08 19:17:15 +00:00