Commit Graph

34 Commits

Author SHA1 Message Date
Mike Reed
6c67f1d045 SkClipOp is now an enum class
Change-Id: If423dd013a264162ae0b7674a0eeef34bc2cdaae
2016-12-14 10:29:54 -05:00
Mike Reed
6e49c9f007 switch over clip calls to use SkClipOp instead of SkRegion::Op
Change-Id: I67d23c487b5249bc31d96e3b2393f693c0b2bcff
2016-12-07 10:34:39 -05:00
Martijn Coenen
7b4d850187 Fix call to deprecated range_x().
Test: master builds again.
Change-Id: I0fa7627c7ec28317dd7e37cca93d2b2c90e6d1ea
2016-11-16 11:33:37 +01:00
Martijn Coenen
bbec302fcf Merge "Fix deprecated range_x calls." am: 87cafe8f33 am: d03b17c29a am: 6e2c276c78
am: f4a0f12eb7

Change-Id: Ifdec08542102cf4eba2aa9baf206272523b56894
2016-11-16 10:30:15 +00:00
Martijn Coenen
90213f341d Fix deprecated range_x calls.
Test: builds
Change-Id: I98412e51a54ef9f9e26c72ecd810dcea77aefdbb
2016-11-15 09:07:12 +01:00
Seigo Nonaka
b6e2013975 Move test only initialization to each test setup.
Global default typeface initialization is only used by test code.
It is good to do in test and remove from production.

Test: ran hwuimicro hwui_unit_tests hwuimacro
Change-Id: I7090b1794828072112540b4e357a6d24bf8f664a
2016-11-15 10:45:01 +09:00
John Reck
3acf0382da Add benchmarks for View inflation
Also speed up RenderNode creation:

Use finalizer() instead of NativeAllocationRegistry, this
shaves ~3us off of creation currently

Avoid instanceof, instead have SurfaceView explicitly ask
for updates.

Remove unused method call.

Test: ran benchmarks
Change-Id: I3117fdf72313a4e6a9965baca9f2a8b855c19b34
2016-11-02 14:49:51 -07:00
sergeyv
aed7f58fb0 Pass Bitmap instead of SkBitmap in canvas.drawBitmap(Bitmap, float,float,Paint)
Test: refactoring cl.
bug:32216791

Change-Id: If9f9fbc19e683b14cce6c3c268258bd832d495d2
2016-10-20 09:50:49 -07:00
Mike Reed
260ab72648 use SkBlendMode instead of SkXfermode
use sk_sp versions of paint setters/getters

Change-Id: I86591a0a8ec92e6039776cbf00424ea24f585b28
2016-10-13 17:14:52 -04:00
Stan Iliev
06152cdd06 Use Canvas::create_recording_canvas instead of RecordingCanvas ctor
Modify HWUI tests to support different recording canvases. Delete
TestCanvas class and use base Canvas class instead. Use
Canvas::create_recording_canvas to create recording canvas instances
instead of RecordingCanvas constructor.

Change-Id: I651fb9bb4add0874d7110bac467a2eb1012357fc
2016-07-28 18:23:36 -04:00
Chris Craik
5e00c7ce06 Delete old rendering pipeline
fixes: 30002246

Change-Id: I45df0e924708526cee045b14c291bd23aa1a92db
2016-07-07 15:53:50 -07:00
sergeyv
422e2b4829 HWUI: move microbench to APCT infrastructure
bug:29515780
Change-Id: I06f0518e2948d4268a1fa8ec99e08b5fcaaa3afd
2016-06-20 22:39:26 +00:00
Sergei Vasilinetc
0353c378ba Merge "Add gmock to hwui library" 2016-05-17 21:00:02 +00:00
sergeyv
8bd5edf804 Add gmock to hwui library
Change-Id: I1dec4cd234e5ee8bb01140b969d0cf817a849047
2016-05-17 12:22:55 -07:00
John Reck
dcf3203ca6 Add a benchmark
Change-Id: I0238d79372bc4b2d2f265c026d172b37e3e38c0f
2016-05-12 15:11:51 -07:00
Chih-Hung Hsieh
d53e3bed1c Fix google-explicit-constructor warnings.
Bug: 28341362
Change-Id: I080090d50f1a368a4e7c1a0732297bb6a295e34f
2016-05-03 10:02:51 -07:00
Chris Craik
c79c3246c9 Merge "Improve multi-window render clipping logic" into nyc-dev 2016-04-18 19:40:50 +00:00
Chris Craik
9cd1bbe5c9 Improve multi-window render clipping logic
Fixes: 28125010

Restructures 'scene defer', to implement window backdrop overdraw
avoidance in new render pipeline, and disable clipping to content draw
bounds.

Also restructures FrameBuilder's constructors, to separate out into
multiple defer methods.

Change-Id: I53facb904c1a4a4acc493d8a489921a79a50494e
2016-04-18 10:39:02 -07:00
Doris Liu
b35da39060 Allow leading spaces in path string (to keep behavior consistent)
Bug: 28132454
Change-Id: Iee799c13a85738db3d6940aca0fe917f284fa651
2016-04-12 21:38:07 +00:00
John Reck
2c0f93798b Add a font microbench
Also remove a low-signal high-frequency trace mark

Fixes: 27894187

Change-Id: I090122a0db8e455eaa9dbce2b0f5b6778a218188
2016-03-29 09:55:13 -07:00
Chris Craik
3a5811b501 Precache/early kick off of op work for non-shadow ops.
bug:26562703
bug:27052145

Change-Id: Ic452bfe75da849ffdd47fecdd6eb1472fd0c806e
2016-03-23 12:55:12 -07:00
John Reck
0418afa362 Switch hwui to google-benchmark
Change-Id: Ia2b24b8288cb8dc4f9176f4132a24ddcae9b6edd
2016-03-07 13:42:11 -08:00
Chris Craik
b251a2f51e Revert "Revert "TaskManager bench""
This reverts commit 9640477e3c.

Change-Id: I3aa8f2830b43b9c7b211c5792a311d0bc698c51a
2016-02-08 23:28:28 +00:00
Daniel Chapin
9640477e3c Revert "TaskManager bench"
This reverts commit 02db03ca05.

Change-Id: I86bdf5e6774e99f9add59a657bfc50d45ebfda1d
2016-02-05 05:42:16 +00:00
Chris Craik
02db03ca05 TaskManager bench
bug:26964750

Change-Id: Ibda0cd2e5e64331a4367d4985d6acfd6f3baeda1
2016-02-04 14:42:43 -08:00
Derek Sollenberger
6f485569fa Update Canvas API with view system calls.
Refactor DisplayListCanvas, RecordingCanvas, and SkiaCanvas
to share a common API.

Change-Id: I0268ec2749ea5d13a3a72bb2784ed6a9911383d9
2016-02-03 09:13:04 -05:00
Chris Craik
6e068c0182 Early kickoff of shadow tasks
bug:26562703

Change-Id: I7cdf18f2c662380bd31c7ffeefd5c3f569e5c1c6
2016-02-02 17:10:25 -08:00
Florin Malita
eecff56fed Add internal Canvas save flags
Skia's SkCanvas::SaveFlags are being deprecated.  This CL introduces
the equivalent android::SaveFlags, converts all internal clients to
the new enum, and switches the saveLayer glue to the
SaveLayerRec-based API.

Change-Id: Icb1785f4e7c0f652b1f04b34a1e3ccb063c408f3
2016-01-25 15:48:00 -05:00
Chris Craik
f158b49c88 Rename Reorderers to Builders
Change-Id: I9bb5a2e70055e2f6d14912fbd86ab72ac0d6e20c
2016-01-12 14:45:08 -08: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
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
27e58b4f54 Build hwui test scenes as common test code
And start using them in other non-macrobench tests

Change-Id: If155b531f3c89f97491001c06d1996df527b9f85
2015-12-07 16:41:35 -08:00
Chris Craik
15c3f19a44 Merged op dispatch in OpReorderer
bug:22480459

Also switches std::functions to function pointers on OpReorderer, and
switches AssetAtlas' entry getter methods to using pixelRef pointers,
so it's clear they're the keys.

Change-Id: I3040ce5ff4e178a8364e0fd7ab0876ada7d4de05
2015-12-07 12:34:46 -08:00
Chris Craik
8160f20b0a Reorganize hwui test directories
Now test-only common files reside in tests/common, and each test
executable type (macrobench, microbench, and unit) has a subdir there.

This change means the shared lib no longer has test code in it, and
sets up a means for scenes to be shared between tests.

Change-Id: I37b081f6977300e03fdd961b8e6439fde730605e
2015-12-02 15:25:10 -08:00