2572 Commits

Author SHA1 Message Date
Doris Liu
e410a357f5 Properly handle the negative scaling factor of canvas in VectorDrawable
Bug: 26489687
Change-Id: I91cce34759fbbac206cd59f4636fd92194396c87
2016-01-13 17:23:33 -08:00
Chris Craik
3cfc373127 Merge "Skip layer updates for layerless nodes" 2016-01-13 19:16:16 +00:00
Chris Craik
e9c5fd888b Skip layer updates for layerless nodes
bug:26535405

Change-Id: I4d5ea8401f59815715c5b51f88d549474876160c
2016-01-13 11:13:01 -08:00
Matthew Bouyack
b79151759a Merge "In CanvasContext::doFrame, make a separate call to computeFrameTimeNanos and save the result. Then pass that value to UiFrameInfoBuilder::setVsync as both arguments." into cw-e-dev am: eebf168e43 am: e0845e8629 am: 6222bb0f6a
am: 099bd9ca8f

* commit '099bd9ca8fea02795424d62c05c723290d68ae14':
  In CanvasContext::doFrame, make a separate call to computeFrameTimeNanos and save the result. Then pass that value to UiFrameInfoBuilder::setVsync as both arguments.
2016-01-13 19:00:07 +00:00
Chris Craik
8e77ff5eff Merge "Disable buildLayer crash" 2016-01-13 18:50:56 +00:00
Chris Craik
3145247b3e Disable buildLayer crash
Change-Id: Ia51e8da01d5c694fb1a084cea8dfce865c56a456
2016-01-12 18:55:15 -08:00
Chris Craik
48cb62018c Fix the build
Change-Id: I11aaa6dabdc3998155ee7f1ee58083bb88f19aad
2016-01-12 18:26:55 -08:00
Chris Craik
477e26cf93 Merge "Switch to new rendering pipeline" 2016-01-13 01:13:32 +00:00
Chris Craik
3daf4d3272 Switch to new rendering pipeline
bug:22480459

Change-Id: I3ca94c4b6c556ba6d133e2314ac0307e874651fa
2016-01-12 16:11:06 -08:00
Chris Craik
27182321dc Merge "Fix shadow bounds calculation" 2016-01-12 23:44:02 +00:00
Chris Craik
420d655950 Fix shadow bounds calculation
Change-Id: I78b6aa91d62c3c4838ffc80b380604c7863e8467
2016-01-12 15:38:14 -08:00
Chris Craik
d0eb180923 Merge "Rename Reorderers to Builders" 2016-01-12 23:00:50 +00:00
Matthew Bouyack
099bd9ca8f Merge "In CanvasContext::doFrame, make a separate call to computeFrameTimeNanos and save the result. Then pass that value to UiFrameInfoBuilder::setVsync as both arguments." into cw-e-dev am: eebf168e43 am: e0845e8629
am: 6222bb0f6a

* commit '6222bb0f6a772c8fa1dc402740399b0ad1017520':
  In CanvasContext::doFrame, make a separate call to computeFrameTimeNanos and save the result. Then pass that value to UiFrameInfoBuilder::setVsync as both arguments.
2016-01-12 22:45:49 +00:00
Chris Craik
f158b49c88 Rename Reorderers to Builders
Change-Id: I9bb5a2e70055e2f6d14912fbd86ab72ac0d6e20c
2016-01-12 14:45:08 -08:00
Chris Craik
bc9029f1db Merge "Fix 9 patch mesh usage" 2016-01-12 22:10:19 +00:00
Chris Craik
89ceb5c977 Fix 9 patch mesh usage
Change-Id: I638fd5816d68a9ecd7f1709624fde2f372de5fa7
2016-01-12 13:45:34 -08:00
Chris Craik
f2c4be292d Merge "Fix a couple crashes in the new reorderer" 2016-01-12 20:31:17 +00:00
Chris Craik
84ad6149db Fix a couple crashes in the new reorderer
Also fixes the layer clear scissor logic in BakedOpRenderer, fixing a
flicker.

Change-Id: I61106a18938ea35e31f0a0b585b5743544245773
2016-01-12 12:19:51 -08:00
Chris Craik
67031a12f3 Merge "Fix deep copy of entry queue" 2016-01-12 20:03:48 +00:00
Matthew Bouyack
7f667e7a08 In CanvasContext::doFrame, make a separate call to computeFrameTimeNanos
and save the result. Then pass that value to
UiFrameInfoBuilder::setVsync as both arguments.

The order of function argument evaluation is undefined in C++. Because
the value returned from TimeLord::latestVsync may be changed by
the preceding call to TimeLord::computeFrameTimeNanos the values of the
arguments passed to UiFrameInfoBuilder::setVsync is also undefined. This
change removes any ambiguity.

Change-Id: Ie71ee453f9ccc725edfe5f7cc9b277f2a809dfdc
2016-01-12 12:01:48 -08:00
Leon Scroggins III
5518e7cbd4 Override getSaveLayerStrategy instead of willSaveLayer
willSaveLayer was removed in https://codereview.chromium.org/1537193002

Requires SkCanvas::SaveLayerFlagsToSaveFlags, added in ag/839104
(Ic78acd6d780245bd30b891e7dcabe29daacc17f4)

Change-Id: Idc49b38fc7939620267b4402ff3846b29f27c81a
(cherry picked from commit e208643a6f9d076274dd683c51a086b1e3679896)
2016-01-12 18:20:38 +00:00
Chris Craik
b250a834e4 Fix deep copy of entry queue
also fixes several 64 bit compilation issues

Change-Id: I1825f822d02be72c21bdcd07cefa68217856ddc2
2016-01-11 19:28:19 -08:00
Chris Craik
ae10e1368c Merge "Fix clip serialization crash" 2016-01-12 02:14:29 +00:00
Chris Craik
15f046866c Fix clip serialization crash
Can't safely rewind clip allocations, since those pointers are cached by
ClipArea. Instead add early rejection to handle most cases, and update
tests.

Change-Id: Ic32f95cf95602f427f25761a8da1583c4495f36d
2016-01-11 17:54:49 -08:00
Chris Craik
e3dc1fe215 Merge "Rename OpReorderer to FrameReorderer" 2016-01-11 23:44:17 +00:00
Chris Craik
5ea1724be4 Rename OpReorderer to FrameReorderer
Also separate LayerReorderer into its own files.

Change-Id: Iafb6a156f760f62f831f6288fd0dadf1db25da24
2016-01-11 15:35:52 -08:00
Chris Craik
f9b3678534 Fix path position in BakedOpDispatcher
Change-Id: I73f4bbcf3fe6f5d3fbdf8058b598bb8f1622097c
2016-01-11 13:26:58 -08:00
Chris Craik
7435eb148e Unclipped savelayer support in new renderer
bug:22480459

Change-Id: I89dd5de8d7d008a1e298d227d767aabff5c96e27
2016-01-08 16:05:35 -08:00
Chris Craik
b87eadda18 Partial unclipped save layer support
Not yet implemented in renderer.

Change-Id: I491ec6e7886bfa313d1db71dd5981690d45b78a9
2016-01-07 15:42:45 -08:00
Chris Craik
7cbf63da4f Rework op macros
Makes it simpler to add defer-only or render-only opps.

Change-Id: I6c8ec64e76d419635429055cff6d96360d21706d
2016-01-06 14:04:22 -08:00
Chris Craik
982dcf3eff Merge "Support for stencil clipping in layers" 2016-01-05 18:33:54 +00:00
Chris Craik
e5b50197e8 Support for stencil clipping in layers
bug:22480459

Change-Id: Ic9e8652379524ccc46d8722ce49f9190b08a2abc
2016-01-05 10:18:35 -08:00
Chris Craik
f5baedb000 Merge "Stencil support in new recorder/reorderer" 2016-01-05 17:54:47 +00:00
Chris Craik
e4db79de12 Stencil support in new recorder/reorderer
bug:22480459
bug:26358504

Adds complex (non-rectangular) clipping support, and overdraw
visualization. Doesn't support stencil clipping in layers.

Change-Id: I8d10c7f1d2769ab5756774ca672344cc09901f87
2016-01-04 17:00:03 -08:00
John Reck
f43f627fc9 Merge "Add some options to macrobench" 2016-01-04 15:26:18 +00:00
Doris Liu
a0e61572ab VectorDrawable: Use the matrix scale only if the matrix has no rotation or skew.
When canvas is rotated or skewed, the scale factor is affected.
Conservatively reset the scale used to modify path stroke size to 1 in these
cases, since the image will be somewhat blurry anyway with rotation / skew..

b/25418943

Change-Id: I6dff1bca5fac5500fa688c68f8b81b6212526b6b
2015-12-30 10:57:15 -08:00
Doris Liu
4bbc293126 VectorDrawable native rendering - Step 3 of MANY
- Refactored VPathRenderer & VectorDrawableState
- Moved all the VD rendering into native
- Set up hooks for VD's property changes in JNI for animated VD

TODO: JNI calls can be further reduced when we convert the animation
in AVD to use RenderNodeAnimator, in which case animation will be
driven from native and therefore most of the JNI hooks for changing
VD's properties during animation will no longer be needed.

Change-Id: I52021f4d7bea057b83ace54085d870dd45acae0f
2015-12-28 16:08:38 -08:00
Chris Craik
33e9b426da Merge "Fix merged op clipping issue" 2015-12-18 18:07:50 +00:00
Chris Craik
93e53e09dd Fix merged op clipping issue
Change-Id: I48cd5e92f3e62dcd189a4411a71aa7a40ce5498c
2015-12-18 10:07:16 -08:00
Chris Craik
a2a70723b8 Simplify ClipArea to prefer Rect args
Change-Id: I8af83d01dc5dd8009a0cd235dd8b59dab61d8560
2015-12-17 23:31:44 +00:00
Chris Craik
15d556e5d3 Add temporary switch for new renderer in JNI
bug:22480459

Change-Id: I6cb19332cb09650f20b1cc2da3473a2618a50b1e
2015-12-17 13:24:08 -08:00
John Reck
682573c84b Add some options to macrobench
Change-Id: If8d5f5d3ace050577986a554182b2b66fd2257e1
2015-12-16 16:40:02 -08:00
Chris Craik
e60a52a236 Fix build
Change-Id: I1fc72636afc070257526ce1500e96e9b39089640
2015-12-16 16:05:49 -08:00
Chris Craik
031eaedef8 Merge "Add TextureView support to new renderer/reorderer" 2015-12-16 23:48:27 +00:00
Chris Craik
d2dfd8f128 Add TextureView support to new renderer/reorderer
bug:22480459

Change-Id: I2e4c0bc6b904706132f3f5087ededc9cac9b40fb
2015-12-16 15:35:40 -08:00
Chris Craik
09d7a93bed Merge "Add TextOnPath support to new reorderer/renderer" 2015-12-16 22:35:45 +00:00
John Reck
bf4b31f7b2 resolve merge conflicts of 04ce46db64 to master.
Change-Id: I935bb47718f0e7d5fb48945dd8de6e28dac136e5
2015-12-16 11:07:53 -08:00
John Reck
04ce46db64 Merge "libhwui: make setSurface asynchronous"
am: 738a5d4f18

* commit '738a5d4f18e69c03700b77af0ea7e2a101da2c34':
  libhwui: make setSurface asynchronous
2015-12-16 18:44:57 +00:00
Derek Sollenberger
24fa70c2ac Merge "Remove onDrawSprite API as it is no longer exposed via SkCanvas" 2015-12-16 18:32:39 +00:00
John Reck
738a5d4f18 Merge "libhwui: make setSurface asynchronous" 2015-12-16 18:27:24 +00:00