Commit Graph

9952 Commits

Author SHA1 Message Date
Chong Zhang
fea963edee Add new window type TYPE_DRAWN_APPLICATION
This type behaves like a normal TYPE_APPLICATION, except that WM
will always wait for it to be drawn before starting a transition.

WM always waits for TYPE_BASE_APPLICATION (main window), but for
TYPE_APPLICATION, it only waits if the window relayouts to visible
and gets a surface before the main window is drawn. If main window
itself is ready very fast, transition could start without the other
window.

bug: 30830849
Change-Id: Ife71a9812db7c8eba6ee4ead10ce4f31d9e93b40
2016-08-15 17:36:40 -07:00
TreeHugger Robot
5baca59226 Merge "Add View reveal on focus hint" into nyc-mr1-dev 2016-07-21 21:05:36 +00:00
Makoto Onuki
79621c94ce Update current.txt to reflect result type change
Bug 30218829

Change-Id: I5b4788961a5ef4e7d8f396f55a311ec0d174b0f1
2016-07-21 09:49:00 -07:00
Adam Powell
7ec3fb3947 Add View reveal on focus hint
Provide a way for views to signal that they would prefer not
to have their parents scroll or otherwise rearrange when they
request focus to try to show the full focused view to the user.
In some cases this can be disruptive to the UX.

As of now, framework views do not respect this hint and custom
views such as those found in currently deployed support libs
don't either. The policy is left open to ViewParent subclasses
that implement requestChildFocus.

Bug 30256922

Change-Id: I55194de888fe2b8129be9a9aa21aa5e18cbb8296
2016-07-20 17:42:10 -07:00
Makoto Onuki
347a6bd820 Stop adding FLAG_ACTIVITY_RESET_TASK_IF_NEEDED when...
starting a shortcut.

- Also add API surface to support launching multiple intents

- Also add SM.isRateLimitingActive() which was supposed to be
added but was not due to a bad rebase.

Bug 30218829

Change-Id: I82d60ec0df1e2b889538705f9f8870ee727dd55d
2016-07-19 11:17:12 -07:00
Adam Lesinski
aa19d5e49e Deprecate Resources constructor and updateConfiguration() method
These methods were never meant to be public. Instead, developers
can use Context#createConfigurationContext().

Bug:30088019
Bug:29999297
Change-Id: I2b864136163deda0af99fa3bfe9ef4ee1077341a
2016-07-15 18:01:48 -07:00
Eric Laurent
abda9c33e5 Make Dolby TrueHD audio format public
Bug: 30024357
Change-Id: I4e8e8cde6e6c87c96e07e1828da0fad96c0f9e76
2016-07-11 17:08:14 -07:00
Makoto Onuki
f805b43da7 Hide more shortcut APIs
Change-Id: I911b4963b878e67ad2084190ac080e8555ba63c0
2016-07-07 11:56:04 -07:00
Makoto Onuki
598aca4672 Hide APIs that shouldn't have been public
Change-Id: I40f1c8e9c6fe991e782bf3dd772f305df641b267
2016-07-06 16:11:54 -07:00
Michael Wright
863ae3e51a N MR1 is API 25
Also, finalize resource IDs for N MR1

Bug: 29816674
Change-Id: Ie880adb2544f4e2e32b439fe975a68a3928e6fe5
2016-07-01 14:42:46 +01:00
Yohei Yukawa
8acb1a7570 Merge "Revert "Remove InputContentInfo#requestPermission()"" into nyc-mr1-dev 2016-06-30 19:30:21 +00:00
Yohei Yukawa
79d1c75a3f Revert "Remove InputContentInfo#requestPermission()"
This reverts commit c4b8f36de5.

Having InputContentInfo#requestPermission() should not hurt developers,
but we can polish the behavior in a subsequent CL without changing
the API.

Bug: 29450031
Bug: 29892936
Change-Id: I1b43c19417b643d0c269af860db2d309b73a90d5
2016-06-30 19:24:43 +00:00
Yohei Yukawa
c80c64a97b Merge "Remove InputContentInfo#requestPermission()" into nyc-mr1-dev 2016-06-30 18:21:48 +00:00
Tim Murray
5e261441d3 Merge "Add a new API to improve VR thread scheduling." into nyc-mr1-dev 2016-06-30 18:05:57 +00:00
Srinath Sridharan
e535a5827b Add a new API to improve VR thread scheduling.
Adds a new API that enables device-specific scheduler optimizations for
latency-sensitive VR threads.

BUG: 29163534
Change-Id: I58d7be0eb266eca452c804cd07004784fb7daf2b
2016-06-30 10:03:46 -07:00
Yohei Yukawa
c4b8f36de5 Remove InputContentInfo#requestPermission()
It turns out that requiring editor authors to call
InputContentInfo#requestPermission() as needed is just confusing and can
cause compatibility issues, because if an editor author forgot to call
that method then there would be no way for IME developers to prevent
permission denial except for relaxing the default permission of the
ContentProvider just because of such an application. This is not what we
want to see.

My conclusion is that the system should automatically call
InputContentInfo#requestPermission() (or do any equivalent operation)
when InputConnection#INPUT_CONTENT_GRANT_READ_URI_PERMISSION is
specified, like we have done in Context#startActivity().

With this CL, the system automatically grants a temporary URI permission
to the target application when the IME calls
InputConnection#commitContent() with
InputConnection#INPUT_CONTENT_GRANT_READ_URI_PERMISSION, and the
temporary permission will be revoked by any of the following events:
 - InputContentInfo#releasePermission() is explicitly called by the
   target application.
 - The target application returned false in
   InputConnection#commitContent().
 - All the InputContentInfo instances copied from the original one are
   GC-ed.

Bug: 29450031
Bug: 29892936
Change-Id: I37fb744e4d3d1c59177fb0a9be4ef5c325c9a39f
2016-06-30 09:32:54 -07:00
Tyler Gunn
089e99ee4d Merge "Add missing setPulling() method in Connection." into nyc-mr1-dev 2016-06-30 06:20:42 +00:00
Tyler Gunn
c242ceb406 Add missing setPulling() method in Connection.
Change-Id: I89c720b2fa3d3e1304766ba3779410b233a04c6a
2016-06-29 22:35:45 -07:00
Makoto Onuki
01e51e59dd Merge "Address API council feedback (continued)" into nyc-mr1-dev 2016-06-29 23:53:51 +00:00
Tyler Gunn
138a3f3ad4 Merge "API cleanups per API review." into nyc-mr1-dev 2016-06-29 23:42:10 +00:00
Makoto Onuki
d6880797f7 Address API council feedback (continued)
Got a second set of comments.

Bug 29757958

Change-Id: Ib3a3ffd28bc3e35eb0218b0819870eb5c6ebadb5
2016-06-29 15:22:56 -07:00
Daniel Nishi
6401217532 Merge "Use the Deletion Helper when system storage is low." into nyc-mr1-dev 2016-06-29 21:37:07 +00:00
Tyler Gunn
9c0eb0bd46 API cleanups per API review.
1. removing deprecation for setExtras on Connection/Conference as these
have legitimate use-cases going forward.
2. Expanded documentation on Call.Callback class to clarify how it is
expected to be used.
3. Updated Callback#onConnectionEvent callback docs to clarify its usage.
4. Expanded Call#sendCallEvent docs to clarify expected namespacing of
call event keys and extras keys, as well as clarification about backwards
compatibility and expectations of ConnectionServices.
5. Standardized the "invoked" vs "notifies" language in the Conference
docs.
6. Clarified how Connection callbacks from Telecom should be implemented.
7. Added Bundle parameter expectations for pre-defined connection events.
8. Documented capabilities and properties toString methods.
9. Documented expectations for onCallEvent method.
10. Expanded documentation for sendConnectionEvent method to clarify
namespacing, use cases, etc.

Bug: 29759275
Bug: 29759954
Bug: 29759773
Change-Id: Ib8c983af4dbbfee68edb60937b268e2c1a9b5e64
2016-06-29 11:46:40 -07:00
Amith Yamasani
1c41dc8ec5 An API to check if running in a demo user
Add an API to query if the calling app is running
in a demo user sandbox. This allows apps to customize
the starting experience to a potential customer.

Change-Id: I50e40f9a8c66da4b5672c1dc64606d7bedba3f8c
Fixes: 29833923
2016-06-28 17:05:19 -07:00
Hall Liu
10208661cd Add disable add call during video call extra and carrier config key
Bug: 29047863

Change-Id: I977041ec72968bdccc69a706e27dd4b5ec336ba7
2016-06-27 17:19:59 -07:00
Daniel Nishi
690346b145 Use the Deletion Helper when system storage is low.
A notification is posted when the system storage gets too low.
Currently, it redirects into the Storage Settings. Instead,
it should redirect into the Deletion Helper to directly let the
user clear out their storage.

Bug: 29437277
Change-Id: I4e35adf300d5e479d4171f1e6f090f2a757400f2
2016-06-27 15:22:35 -07:00
Tyler Gunn
780648be53 Merge "Add onConferenceSupportedChanged callback, carrier config." into nyc-mr1-dev 2016-06-27 21:35:49 +00:00
Yohei Yukawa
cb56978912 Merge "Use a flag to grant a temporary URI permission." into nyc-mr1-dev 2016-06-27 20:18:51 +00:00
Sanket Padawe
afcc40f818 Merge "Fix documentation of getTelephonyHistogram() api." into nyc-mr1-dev 2016-06-27 19:21:56 +00:00
Sanket Padawe
7f89016579 Fix documentation of getTelephonyHistogram() api.
Bug: 29760459
Change-Id: Ib7c4df81026331f88f6a8776c0042abf4f32c620
2016-06-27 11:57:01 -07:00
Tyler Gunn
7d633d3337 Add onConferenceSupportedChanged callback, carrier config.
Used to inform listeners when a connection can or cannot be part of a
conference.  Used to inform the conference controller so that it can
recalculate the conferencable connections.

Adding carrier config for carrier requirement.

Bug: 29059073
Change-Id: Iab028fd44d87c8dc2bbbe8bba7ba9ccdc223fe51
2016-06-27 10:49:04 -07:00
Dmitri Plotnikov
b1ca092db8 Merge "Unhiding DEVICE_NAME" into nyc-mr1-dev 2016-06-24 00:23:13 +00:00
Yohei Yukawa
45700fa135 Use a flag to grant a temporary URI permission.
It turns out that we can let the system to call
InputMethodService#exposeContent(InputContentInfo, EditorInfo), which
added in my previous CL [1], during the IME is calling
InputConnection#commitContent() as follows.

  [IME]
  InputContentInfo contentInfo = new InputContentInfo(
          contentUri,
          new ClipDescription(description, new String[]{mimeType}),
          linkUrl);
  getCurrentInputConnection().commitContent(
          inputContentInfo,
          InputConnection.INPUT_CONTENT_GRANT_READ_URI_PERMISSION,
          null);

  [App]
  try {
      contentInfo.requestPermission();
      // Load inputContentInfo.getContentUri() here.
  } finally {
      contentInfo.releasePermission();
  }

This gives us flexibility to let InputConnection#commitContent() do all
the magic for IME developers like other APIs such as
Context#startActivity(), rather than asking them to call one more API to
grant a temporary URI permission like a scenario where
Context#grantUriPermission() is used.

 [1]: I2772889ca01f2ecb2cdeed4e04a9319bdf7bc5a6
      25e0813e6e

Bug: 29450031
Change-Id: I99536cd58c9984af30b0bafb4a1dd25a26634a2d
2016-06-23 17:12:59 -07:00
Tyler Gunn
4b6614e576 Add support for dropping fg video call on answer of audio call.
Adding two new carrier config options:
1. treat_downgraded_video_calls_as_video_calls_bool - when there is an ongoing
call which was previously a video call (or is currently video call), some
carriers require that this is treated as if it is a video call for
telephony logic such as in (2).
2. drop_video_call_when_answering_audio_call_bool - if the user is in an
active video call (see (1)) over wifi, and an incoming audio call comes in,
when this carrier config option is "TRUE", the video call will be dropped
when the audio call is answered.

Adding new connection extra to indicate to the dialer app that answering
a ringing call will cause the current active video call to drop.

Bug: 29275420
Change-Id: Ied5dbabc8ff09045ba41c5eba2136adad10db80e
2016-06-23 12:48:43 -07:00
Andrew Sapperstein
ddb980de05 Merge "Add colorSecondary theme attribute." into nyc-mr1-dev 2016-06-23 18:37:42 +00:00
Ta-wei Yen
fbb87a0591 Merge "Add more configuration state for visual voicemail" into nyc-mr1-dev 2016-06-23 02:28:24 +00:00
Yohei Yukawa
dc42d7dd13 Merge "Add InputMethodService#exposeContent()" into nyc-mr1-dev 2016-06-23 01:25:39 +00:00
Ta-wei Yen
1121017213 Add more configuration state for visual voicemail
Bug: 26944391
Change-Id: I7e0c2649097edca96d6a78fe2dc250a4b4855133
2016-06-22 17:48:52 -07:00
Yohei Yukawa
25e0813e6e Add InputMethodService#exposeContent()
This is a follow up CL to my previous CLs [1][2] that introduced
InputConnection#commitContent(InputContentInfo, Bundle) API to enable
IMEs to send a content to the target application.

With this CL, IME developers are able to temporarily expose
InputContentInfo object to the target package without permanently
granting URI permission.  Although calling IMS#exposeContent() is
allowed only for the IME that is currently selected, the client is able
to request a temporary read-only access even after the current IME is
switched to any other IME as long as the client keeps InputContentInfo
object.

Here is a sample code snippet about how to use this mechanism.

  [IME]
  InputContentInfo contentInfo = new InputContentInfo(
          contentUri,
          new ClipDescription(description, new String[]{mimeType}),
          linkUrl);
  exposeContent(contentInfo, getCurrentInputEditorInfo());
  getCurrentInputConnection().commitContent(inputContentInfo, null);

  [App]
  try {
      contentInfo.requestPermission();
      // Load inputContentInfo.getContentUri() here.
  } finally {
      contentInfo.releasePermission();
  }

 [1]: Iaadf934a997ffcd6000a516cc3c1873db56e60ad
      152944f490
 [2]: Ica1ba3154795c1bf44e140dfe639b299f83cd8af
      adebb52588

Bug: 29450031
Change-Id: I2772889ca01f2ecb2cdeed4e04a9319bdf7bc5a6
2016-06-22 16:31:41 -07:00
Jim Miller
07e0384a4e Enable fingerprint sensor navigation to invoke QuickSettings
- rename "FP_NAV" to more generic "SYSTEM_NAVIGATION"

Fixes bug 28869612

Change-Id: I321240ee54506633d63a29e987b8d8638c652391
2016-06-22 15:18:13 -07:00
Android Build Merger (Role)
4d46efc084 Merge "Merge \"Tweaks to DragAndDropPermissions behavior\" into nyc-dev am: 22faa5ddb1" into nyc-mr1-dev 2016-06-21 23:37:00 +00:00
Yorke Lee
d22536666a Merge \"Tweaks to DragAndDropPermissions behavior\" into nyc-dev
am: 22faa5ddb1

Change-Id: Ia37191b026b85773d27b41b7991238a07e141a12
2016-06-21 23:35:09 +00:00
Dmitri Plotnikov
f19b6ec8bb Unhiding DEVICE_NAME
Bug: 28439637
Change-Id: Iea9efbaf18b2110c21f0d27a3e44fd6590f2d372
2016-06-21 16:22:56 -07:00
Makoto Onuki
b5a012fd6f Shortcut Manager: Address API council feedback and fix TODOs
Bug 29515722
Bug 29516909
Bug 29515090
Bug 29516954
Bug 29515088

Change-Id: Ibe1d27033cbd0fd50d37e3d9945b47551211c568
2016-06-21 14:42:48 -07:00
Andrew Sapperstein
c11df2521e Add colorSecondary theme attribute.
Value is defined only for .Settings themes.

Uses new attribute in SystemUI to set the switch bar background in
System UI Tuner and the edit UI background in Quick Settings.

BUG: 28625050
Change-Id: I840597670fb8826c7e2172c933ff618e52fc9ac1
FIXES: 28625105
FIXES: 29003223
2016-06-21 13:41:02 -07:00
Yorke Lee
c8ad0cd316 Tweaks to DragAndDropPermissions behavior
No longer release permissions in finalize(), so that
apps do not have to maintain a reference to the
DragAndDropPermissions object.

Also make it parcelable, so that permission instances can be
retained across activity instances so that they can be
manually released.

Bug: 29162822

Change-Id: Ie604dd3e83ee45a8665d743449b91857dd54e896
2016-06-21 12:57:52 -07:00
Sanket Padawe
0df9721a08 Merge "Unhide Network types in TelephonyManager" into nyc-mr1-dev 2016-06-21 16:56:24 +00:00
Sanket Padawe
4652826d71 Unhide Network types in TelephonyManager
Bug: 29493935
Change-Id: Ib1bef4a68a962b0f473e07415d46ecff6080ea71
2016-06-20 12:40:07 -07:00
Yohei Yukawa
01e7c10d37 Merge "API Rename: IC#inputContent to IC#commitContent." into nyc-mr1-dev 2016-06-17 23:23:59 +00:00
Makoto Onuki
df6da040e0 Update manifest shortcut XML schema
Use the standard <intent> tag instead of custom tags.

- Also fix setDynamicShortcuts(), which was broken in the previous CL.
- Also tolerate runtime exceptions while parsing XMLs
- Also fix b/29422018 while I'm at it

Bug 29390156
Bug 29077932
Bug 29422018

Change-Id: I2756c9d66c6d7b2962a982d9e57a7d84a5755b28
2016-06-17 11:51:20 -07:00