Allow embedders to pass a font manager.
In order to avoid excessive factory API clutter, introduce an
Animation::Builder helper to wrap factory options.
Also clean up various bits:
* hoist scene parsing out of the Animation ctor
* store the animation duration explicitly (instead of unused fps)
* plumb const SkFontMgr& internally (instead of a ref)
Change-Id: I3e180dfa85ba18c8462cfeb5a7385bef985ed6c4
Reviewed-on: https://skia-review.googlesource.com/148800
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
Create a new Skottie test app, which plays lottie files using
a TextureView.
Implement SkottieView, which takes a JSON input stream and
plays the animation.
Bug: skia:
Change-Id: Ic62688b91692c28f35b13356d1e99b4d15d3e30f
Reviewed-on: https://skia-review.googlesource.com/130125
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Stan Iliev <stani@google.com>
Main things to look at:
1) onDrawFrame changes + moving many functions as separate helpers
2) SkARFingerPainting changes (name should change too)
Bug: skia:
Change-Id: I5068ce6c416a2f5d6c6c389cd63d08d5350e83e6
Reviewed-on: https://skia-review.googlesource.com/143701
Reviewed-by: Mike Reed <reed@google.com>
Looks like new Gradle (4.1) changed the output location from
build/outputs/apk/{app}-{target_cpu}-{android_buildtype}.apk
to
build/outputs/apk/{target_cpu}/{android_buildtype}/{app}-{target_cpu}-{android_buildtype}.apk
TBR=
Change-Id: I45ed38e1f1655f82ef4a205ef7e8baf3f2da50af
Reviewed-on: https://skia-review.googlesource.com/142806
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
Java-only version of SkAR: drawing on android Canvas
Bug: skia:
Change-Id: I76285aa85c7523ad9ae213d32a159b671d8aa30f
Reviewed-on: https://skia-review.googlesource.com/141048
Reviewed-by: Mike Reed <reed@google.com>
To run this app, you need to create an out directory as such:
bin/gn gen out/arm64 --args='ndk="NDK_PATH" target_cpu="ABI"'
For now, the only supported ABI is arm64
Change-Id: I012f0c6a0550d80a0028f42177d5ca72974d848d
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/130980
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Ziad Ben Hadj-Alouane <ziadb@google.com>
The "/" character is not a valid character for method names in the
CTS testing environment and is causing problems with some of the
tooling so we are replacing the "/" with "_".
Bug: b/80096930
Change-Id: Icdf790b0975f7c4205153887ffabaaaa85f07592
Reviewed-on: https://skia-review.googlesource.com/129581
Reviewed-by: Stephan Altmueller <stephana@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
This reverts commit b5f2897ab5.
Reason for revert: looks like this broke the build for DM in Google3. Need more include dirs there?
Original change's description:
> IWYU for tests starting with 'D'.
>
> Change-Id: I9189e4b56ce1635b627119733447c2ed4220753d
> Reviewed-on: https://skia-review.googlesource.com/129319
> Reviewed-by: Herb Derby <herb@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>
TBR=bsalomon@google.com,bungeman@google.com,herb@google.com
Change-Id: I01aac7dae6114685a0652cbde3defccc8a42caea
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/129443
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Bug: skia:6473
Change-Id: I67b0dbf6dba26233df1d8e44f3e2f69ca0cc9d3e
Reviewed-on: https://skia-review.googlesource.com/128320
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
The reason we push Json updates for every frame is to support the
Android FPS meter - which happens to require the native FPS meter for
updates.
Instead of supporting two meters:
1) scale up the native FPS widget on Android (1.5x)
2) remove the Android widget
3) stop calling updateUIState() from onPaint()
Change-Id: Ica8109869035b2f885743a7e38b50688b69fa5e4
Reviewed-on: https://skia-review.googlesource.com/126621
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
PLEASE NOTE: Instructions for running a single test have changed!
No-Try: true
Change-Id: I1923240e879daa7ff0556737ddd5aa3f58e0097c
Reviewed-on: https://skia-review.googlesource.com/109566
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
PLEASE NOTE: Instructions on running `am instrument` for the
SkQP APK have changed.
To run a single test, see the section "Running a single test"
in `tools/skqp/README.md`.
No-Try: true
Change-Id: I0a2cbc47755929d6c6a927a3591ff98046779c77
Reviewed-on: https://skia-review.googlesource.com/108780
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
- tools/skqp/generate_gn_args.sh - single script to generate
configuration used to build SkQP.
- tools/skqp/make_model.sh - script to execute make_gmkb.go and put
the results in the correct place.
- tools/skqp/{up,down}load_directory_contents.sh - scripts to move
large assets into the cloud and retrieve them.
- tools/skqp/gm_runner.cpp - treat missing text files as empty.
- tools/skqp/make_apk.sh - make use of generate_gn_args.sh.
- tools/skqp/make_{model,known_tests}.sh - better error handling,
and also stop calling `git add`.
Change-Id: Ib1803b4d68e63945f2c47f8eb6cb96375d24e3be
Reviewed-on: https://skia-review.googlesource.com/98842
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
Also clean up some things, fix docs, whitelist.
Change-Id: I2818d973978ffe1b8ce0cc9c69f8d91ab4a0ef22
Reviewed-on: https://skia-review.googlesource.com/91805
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
Switches over to writing output to the sd card.
Change-Id: Ic287a741b9af471f823a7e97eb0c6d3d20f639d6
Reviewed-on: https://skia-review.googlesource.com/96380
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
Adds activities to the skqp app so it can run as an Android
app (as opposed to just instrumentation tests).
A user can trigger the tests via a button.
Adds the an intent receiver so the tests can be triggered on
Firebase Testlab via the gameloop option.
It adds the run_testlab.go script to run an apk across devices
on Firebase Testlab.
Bug: skia:
Change-Id: I3ff5c37d743fa47913a916a0fa1e7db3c2cc79c7
Reviewed-on: https://skia-review.googlesource.com/89163
Commit-Queue: Stephan Altmueller <stephana@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
* Generate report in app after running all tests.
* Add script to unpack backup.ab file.
* Remove unused index file.
* Streamline instructions in README.md.
Change-Id: I44c80b17332eb4496ee31578287b691bd646d71a
Reviewed-on: https://skia-review.googlesource.com/86742
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
Add a real implementation for gm_knowledge.h This depends on
the presence of files in the form $GMK_DIR/foo/{max,min}.png
The implementation also writes out failures in a report directory.
Add a utility: experimental/make_gmkb which is a stand-alone
go executable that generates the foo/{max,min}.png data.
tools/skqp/README.md has instructions on running SkQP.
Also: add SkFontMgrPriv.h
Change-Id: Ibe1e9a7e7de143d14eee3877f5f2d2d8713f7f49
Reviewed-on: https://skia-review.googlesource.com/65380
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>