Commit Graph

8572 Commits

Author SHA1 Message Date
Tim Murray
aa1735370b Merge changes from topic \\'fifo\\' into nyc-mr1-dev am: a96d445aef
am: 03b34e402c

Change-Id: If3104889f659aef9a6d7035e18ab839544c9ecb3
2016-07-07 20:59:09 +00:00
Tim Murray
03b34e402c Merge changes from topic \'fifo\' into nyc-mr1-dev
am: a96d445aef

Change-Id: If4a5c3f65cb611aecf82ad49ad6d992f098cbfb1
2016-07-07 20:48:27 +00:00
Tim Murray
33eb07f575 Add new mode for SCHED_FIFO on UI and RenderThreads.
Add a new mode, controlled by sys.use_fifo_ui property, that enables the
top app's UI and RenderThread to be SCHED_FIFO. This eliminates almost
all jank due to scheduling competition with non-UI critical
threads. This mode may not be suitable for all devices.

bug 24503801

Change-Id: I7b8a31830ad80f7efa00236928d5476998ed4e00
2016-07-07 12:55:31 -07:00
Andrii Kulian
51fcfe73da Merge \\"Clarify documentation of Display#getSize()\\" into nyc-mr1-dev am: 5552dc341f
am: 1c836639b5

Change-Id: Ic49152a81d35ca860e3e12a08f0bff8ecd9fc857
2016-07-01 23:58:51 +00:00
Andrii Kulian
1c836639b5 Merge \"Clarify documentation of Display#getSize()\" into nyc-mr1-dev
am: 5552dc341f

Change-Id: I6d43f9c0a572307c3e45462e571a319f78c63930
2016-07-01 23:55:32 +00:00
Andrii Kulian
5552dc341f Merge "Clarify documentation of Display#getSize()" into nyc-mr1-dev 2016-07-01 23:49:38 +00:00
Andrii Kulian
5f57a3d6d8 Clarify documentation of Display#getSize()
Bug: 25945436
Change-Id: I8574faf56427f4a6fb7155c08e31ef1e0bdb2cfa
2016-07-01 12:41:39 -07:00
Robert Carr
8942204d93 Merge changes I38cff63b,Id3739bbc,If052cd8c into nyc-mr1-dev am: 30efa24b11
am: 0dbe6db014

Change-Id: I3f0fd113bf9dc063f3bc60301f9a7ddf7d16581d
2016-07-01 19:41:33 +00:00
Robert Carr
0dbe6db014 Merge changes I38cff63b,Id3739bbc,If052cd8c into nyc-mr1-dev
am: 30efa24b11

Change-Id: I9ed6ae1f45221ff702162a1608bb8db7059058f5
2016-07-01 19:38:49 +00:00
TreeHugger Robot
30efa24b11 Merge changes I38cff63b,Id3739bbc,If052cd8c into nyc-mr1-dev
* changes:
  Fix synchronization error for Seamless rotation.
  Disable seamless rotation while animating.
  Force CROSSFADE rotation when launching from double tap gesture.
2016-07-01 19:27:36 +00:00
Robert Carr
fd10cd1989 Force CROSSFADE rotation when launching from double tap gesture.
When activity transition triggers a rotation change, the starting
window will normally be the top window at the time we try
to select the window animation. However, these layout params won't
have the apps rotation animation set (as the client code will set that
on the real window, not the starting window). Eventually we would
like to add API to specify rotation animation via manifest to solve
this problem cleanly. In the mean time, we can force a specific rotation
animation from the double tap gesture, and clean up some camera
ugliness. We accomplish this by attaching an animation hint to
ActivityOptions.

Bug: 28838855
Change-Id: If052cd8cbae76651da43f3b4c590cd9dcc1afc0f
2016-07-01 11:05:40 -07:00
Martijn van Steenbergen
cac99ef166 Fix typos in View.AccessibilityDelegate Javadoc.
Change-Id: I83586da77d9c6d3bdc41188e7e9c671673227e9d
2016-07-01 10:35:24 +01:00
Yohei Yukawa
664e6d18db Merge \\"Automatically grant URI permission as needed.\\" into nyc-mr1-dev am: d2e046a720
am: 1a932852d4

Change-Id: I1b54d8e32c4813d641df66075f3845f94858c63b
2016-07-01 01:28:47 +00:00
Yohei Yukawa
1a932852d4 Merge \"Automatically grant URI permission as needed.\" into nyc-mr1-dev
am: d2e046a720

Change-Id: I376fdeddb57a923fd3a71086ef6f8e6021347cbb
2016-07-01 01:23:27 +00:00
Yohei Yukawa
f3806f57a5 Automatically grant URI permission as needed.
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.  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.

If we do not do this and there is an application that forgot to call
that method then there is no way for IME developers to prevent
permission denial from happening in the application except for relaxing
the default permission of the ContentProvider just because of such an
application.

Although application developers are still expected to explicitly call
InputContentInfo#{request,release}Permission(), forgetting to call
InputContentInfo#requestPermission() does not hurt the user anymore.

With this CL, calling InputContentInfo#requestPermission() after calling
InputContentInfo#releasePermission() is also allowed.

Bug: 29892936
Change-Id: Id955435dd2e72549ee7134f46b3c6951581694ad
2016-06-30 16:27:46 -07:00
Yohei Yukawa
9758d81dbe Merge \\"Revert \\"Remove InputContentInfo#requestPermission()\\"\\" into nyc-mr1-dev am: 8acb1a7570
am: 359acdee5f

Change-Id: Ia55a7e5095f93cb8f37edca65d2206fbf54316f3
2016-06-30 19:41:43 +00:00
Yohei Yukawa
359acdee5f Merge \"Revert \"Remove InputContentInfo#requestPermission()\"\" into nyc-mr1-dev
am: 8acb1a7570

Change-Id: If7fab0527a3d4f671985a663fc6aaf808d527ace
2016-06-30 19:37:35 +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
9047101977 Merge \\"Remove InputContentInfo#requestPermission()\\" into nyc-mr1-dev am: c80c64a97b
am: 854e6f8501

Change-Id: Ia84ebe07d1abf469ed461aa524c38ffa76a5ea53
2016-06-30 18:40:27 +00:00
Yohei Yukawa
854e6f8501 Merge \"Remove InputContentInfo#requestPermission()\" into nyc-mr1-dev
am: c80c64a97b

Change-Id: Iaaf2b610852510e604c482568c0ef1dc6495e179
2016-06-30 18:35:39 +00: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
Derek Sollenberger
f64c34e73f Remove isAvailable() from DisplayListCanvas.
The method has been moved to ThreadedRenderer and the native
implementation has been renamed to better reflect its intent.

Change-Id: I7ee6d578ad0c2ee20111edd424c7560a449f0b39
2016-06-29 08:25:06 -04:00
Stan Iliev
74eb64d37f Merge "Fix wording regarding ThreadedRenderer" 2016-06-28 22:12:31 +00:00
Stan Iliev
45faba516e Fix wording regarding ThreadedRenderer
ThreadedRenderer is not synonymous with hardware rendering, so
remove references to hardware rendering when referring to
ThreadedRenderer.

Change-Id: Ic66a482ccf05f556ebe6ec194ce4f858f75bbb8b
2016-06-28 16:40:05 -04:00
Yohei Yukawa
a3fd8bfdfe Merge \"Merge \\"Use a flag to grant a temporary URI permission.\\" into nyc-mr1-dev am: cb56978912\" into nyc-mr1-dev-plus-aosp
am: c58ffb3f9c

Change-Id: Iddc693412d20b86c3a916dd09764d14d23c4fcf4
2016-06-27 20:34:58 +00:00
Yohei Yukawa
badcecb2aa Merge \"Use a flag to grant a temporary URI permission.\" into nyc-mr1-dev
am: cb56978912

Change-Id: I20e1481c6f68a5af4f33e699f5bc505b3a4c1457
2016-06-27 20:30: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
Phil Weaver
4192eac03a Merge "Behave if the same view gets a11y focus twice." 2016-06-27 17:42:56 +00:00
John Reck
25fb14537c Merge \\\"Add missing null checks\\\" into nyc-dev am: 02e391585d am: 0fc8707e2d
am: bffa989d28

Change-Id: If6fbfc645fefeaec6b82d97f82a7f50a1a0fee35
2016-06-27 17:17:19 +00:00
John Reck
bffa989d28 Merge \\"Add missing null checks\\" into nyc-dev am: 02e391585d
am: 0fc8707e2d

Change-Id: I9b8122c0a67be36b00cae06ce543a9de7aca8d40
2016-06-27 17:12:05 +00:00
John Reck
0fc8707e2d Merge \"Add missing null checks\" into nyc-dev
am: 02e391585d

Change-Id: Idcba5c8393609034b70382844d499b45759b5e6d
2016-06-27 17:06:24 +00:00
John Reck
474659ccc4 Add missing null checks
Bug: 29743482
Change-Id: Ic4bc5b9d5718eabd41e09a108a765b01aef4e3c8
2016-06-27 07:56:37 -07:00
Phil Weaver
da4692774c Behave if the same view gets a11y focus twice.
In some corner cases, ViewRootImpl#setAccessibilityFocus
can be called twice for the same view. Make sure we're
actually changing views before clearing accessibility focus
to avoid inconsistent state.

Bug: 29637593
Change-Id: I5dc6f05bdeaec55c352417bfca92c11bd03c3c10
2016-06-24 18:35:34 -07:00
Adam Powell
dd8490c291 Merge \\\"Fix layout issue after insets changed\\\" into nyc-dev am: 119f1715b3 am: 242a44395e
am: 9a327642df

Change-Id: I064c05ce3f4347ddfc41dceebccb2d8bdc5a845e
2016-06-24 23:39:12 +00:00
TreeHugger Robot
34ccbe035a Merge "Update DisplayMetrics when resizing" into nyc-dev 2016-06-24 23:35:13 +00:00
Adam Powell
9a327642df Merge \\"Fix layout issue after insets changed\\" into nyc-dev am: 119f1715b3
am: 242a44395e

Change-Id: Iab3e11ed6346ed538f3206faa32d15e6e227efef
2016-06-24 23:33:11 +00:00
Adam Powell
c43c9e052e Merge \"Fix layout issue after insets changed\" into nyc-dev
am: 119f1715b3

Change-Id: I343dc8ad193ad83a8c0628c104836bd392cd07d5
2016-06-24 23:28:57 +00:00
Adam Powell
242a44395e Merge \"Fix layout issue after insets changed\" into nyc-dev
am: 119f1715b3

Change-Id: I3dc13e068c258a74acee79e6ab6a75b569c891e8
2016-06-24 23:28:37 +00:00
TreeHugger Robot
119f1715b3 Merge "Fix layout issue after insets changed" into nyc-dev 2016-06-24 23:21:29 +00:00
Yorke Lee
3d2667d676 Merge \\\"Update documentation for View.startDragAndDrop\\\" into nyc-dev am: c63710ea48 am: c9bbca5682
am: 33b289ae3f

Change-Id: Id61a08be190c5d1b61392f5ceea646d7507a8c79
2016-06-24 22:29:03 +00:00
Yorke Lee
33b289ae3f Merge \\"Update documentation for View.startDragAndDrop\\" into nyc-dev am: c63710ea48
am: c9bbca5682

Change-Id: I064b85f0a567978a67ed72a963aea63be9200457
2016-06-24 22:22:02 +00:00
Yorke Lee
d1d3950d94 Merge \"Update documentation for View.startDragAndDrop\" into nyc-dev
am: c63710ea48

Change-Id: Iebdb99f1032fbda52686df9dc02e740b61b7e7eb
2016-06-24 22:21:19 +00:00
Yorke Lee
c9bbca5682 Merge \"Update documentation for View.startDragAndDrop\" into nyc-dev
am: c63710ea48

Change-Id: I47ee9fa89edc5495616393a1c352677c8b990030
2016-06-24 22:18:22 +00:00
Adam Lesinski
3d26f768a2 Merge \\"Update DisplayMetrics when resizing\\" into nyc-mr1-dev am: 038084e61c
am: 89aea239cd

Change-Id: I9cc73d39e690d30c736b705235bb93e92bd029a6
2016-06-24 22:15:56 +00:00
Adam Lesinski
ac3e0e590a Update DisplayMetrics when resizing
Previously the DisplayMetrics passed to a new ResourcesImpl
object would be generated from the default DisplayAdjustments.
We now use the correct DisplayAdjustments for the ResourcesImpl
and make sure to update them for things like rotation changes.

Bug:29619314
Change-Id: If2ba0d7670a4554dcd3fde9766e2337f20a191fd
(cherry picked from commit 8e8d23214a)
2016-06-24 22:11:27 +00:00
Adam Lesinski
89aea239cd Merge \"Update DisplayMetrics when resizing\" into nyc-mr1-dev
am: 038084e61c

Change-Id: I82318bbd8dbf03ab4bc01533b8c5650306cff0aa
2016-06-24 22:11:14 +00:00
Yorke Lee
c63710ea48 Merge "Update documentation for View.startDragAndDrop" into nyc-dev 2016-06-24 22:10:47 +00:00
TreeHugger Robot
038084e61c Merge "Update DisplayMetrics when resizing" into nyc-mr1-dev 2016-06-24 22:04:15 +00:00
Adam Powell
76fdbb72c9 Fix layout issue after insets changed
Fix a regression where a change in insets would forceLayout on the
view hierarchy but not run the measure/layout as a result. This would
cause layout requests to become stalled until a window-level relayout
event.

Bug 29634368

Change-Id: Ia3f32f5891c8b32c06c13f95ebd0572233572b04
2016-06-24 14:47:06 -07:00
Adam Lesinski
8e8d23214a Update DisplayMetrics when resizing
Previously the DisplayMetrics passed to a new ResourcesImpl
object would be generated from the default DisplayAdjustments.
We now use the correct DisplayAdjustments for the ResourcesImpl
and make sure to update them for things like rotation changes.

Bug:29619314
Change-Id: If2ba0d7670a4554dcd3fde9766e2337f20a191fd
2016-06-24 13:13:19 -07:00