Commit Graph

258 Commits

Author SHA1 Message Date
csmartdalton
29d871554b Enable threaded SkTaskGroup in Viewer
BUG=skia:

Change-Id: I7f467c094fb0bcb983bd86d07cb9bd7be34666b3
Reviewed-on: https://skia-review.googlesource.com/8332
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-02-10 22:45:08 +00:00
Brian Osman
79086b94ed Integrate the ImGui library with viewer
Code and docs are at: https://github.com/ocornut/imgui

ImGui is an open source immediate mode GUI library that's
lightweight and fairly simply to integrate. Widget functions
return their state, and the library emits vertex and index
data to render everything. It's got a huge set of built-in
widgets and really robust layout control.

For the initial integration, I had to fix up event handling
in the viewer's app framework (to get mouse wheel and more
keys, etc...).

The new viewer 'Debug' window is toggled with the space bar.
For this change, I've added one feature to that window: the
slide picker. It's got a list of all slides, with filtering
support, and the ability to click to switch slides.

I also included the ImGui 'Demo' window (toggled with 'g').
This is nicely laid out, and includes examples of pretty
much everything the library can do. It also serves as good
documentation - find something that looks like what you want,
and then go look at the corresponding code (all of it is in
imgui_demo.cpp).

I have other CLs with other features (like directly editing
the primaries of the working color space), but I wanted to
land this chunk first, then start adding more features.

Other than adding new debugging features, there are few
more outstanding work items:

1) Raster doesn't render the GUI correctly, due to non-
invertible pos -> UV matrices. Florin is working on that.
2) Touch inputs aren't being routed yet, so the GUI isn't
usable on Android yet. Might also be tough to work with,
given the size.
3) ImGui has clipboard integration (that's why it wants
the C, X, and V keys), but we need to wire it up to the
OS' clipboard functions.
4) Draw commands can carry a void* payload to support
drawing images (using whatever mechanism the engine has).
I'd like to set that up (probably using SkImage*), which
makes it really easy to add visualization of off-screen
images in GMs, etc...

BUG=skia:

Change-Id: Iac2a63e37228d33141cb55b7e4d60bf11b7e9ae1
Reviewed-on: https://skia-review.googlesource.com/7702
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-02-10 19:17:03 +00:00
Brian Osman
1df161ab8a Improve viewer stats collection and display
Measure the time taken for animation and flush. Exclude UI and stats logic
from the timing. Use stacked bars to visualize the breakdown of time
within a frame.

BUG=skia:

Change-Id: I7ef84442a68147f02f65b6aa4452768fd3314de2
Reviewed-on: https://skia-review.googlesource.com/8227
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-02-09 17:26:09 +00:00
Brian Osman
462334ebc1 Fix viewer on Android
We need libandroid in all scenarios, not just vulkan.
Also, the logic for making an off-screen surface was
wrong - causing us to try and make one in legacy mode.

BUG=skia:

Change-Id: I5ef2e3e2d46de96e9824f6a12a13f6310ea04f81
Reviewed-on: https://skia-review.googlesource.com/8252
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2017-02-09 17:07:24 +00:00
Brian Osman
f750fbcb69 Simplify viewer's handling of backbuffer surface and color space
WindowContext still supports color spaces, but not other color
types. Any off-screen rendering is the app's responsibility.

This change also adds (working) F16 support to viewer. Note that
the previous 10-bit and FP16 support in WindowContext was broken.
There was no code to push the off-screen canvas to the window.
If you ever made it to the unreachable off-screen code path in
createSurface, it would have simply stopped drawing.

The decision to limit the window's gamut to sRGB is mostly driven
by my desire to add real-time editing of gamut. This design lets
us do that, without tearing down and rebuilding the window for
every change. An application could still supply a different gamut
via setDisplayParams and render directly to the back buffer with
proper color correction.

BUG=skia:

Change-Id: I94df35c7a42faee396009acc83683e40bb3c284d
Reviewed-on: https://skia-review.googlesource.com/8153
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-02-08 17:34:05 +00:00
Matt Sarett
77a7a1b57c SkColorSpace: remove named API, add gamut API
Reland from: https://skia-review.googlesource.com/c/8021/

BUG=skia:

Change-Id: I18985f130587b15fccbc86b76b2bb5c49ba5ba8a
Reviewed-on: https://skia-review.googlesource.com/8136
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-02-07 19:33:37 +00:00
Matt Sarett
1f2fff2544 Revert "SkColorSpace: remove named API, add gamut API"
This reverts commit ecaaf6f1c1.

Reason for revert: Breaks everything

Original change's description:
> SkColorSpace: remove named API, add gamut API
> 
> BUG=skia:
> 
> Change-Id: I01c5e1874c9a034febc64e25b3aaafb5050393a6
> Reviewed-on: https://skia-review.googlesource.com/8021
> Reviewed-by: Brian Osman <brianosman@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
> 

TBR=msarett@google.com,brianosman@google.com,reed@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Change-Id: Ief5a0a4eeabe75a21f7512e23fc15309151066c4
Reviewed-on: https://skia-review.googlesource.com/8127
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Matt Sarett <msarett@google.com>
2017-02-07 17:06:24 +00:00
Matt Sarett
ecaaf6f1c1 SkColorSpace: remove named API, add gamut API
BUG=skia:

Change-Id: I01c5e1874c9a034febc64e25b3aaafb5050393a6
Reviewed-on: https://skia-review.googlesource.com/8021
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-02-07 17:00:58 +00:00
Jim Van Verth
d63c10225c Minor fixes for the Linux viewer
BUG=skia:6091

Change-Id: Ia954c16610634e34f10bfe4273efc6677ca9563e
Reviewed-on: https://skia-review.googlesource.com/6618
Reviewed-by: Greg Daniel <egdaniel@google.com>
2017-01-05 18:51:47 +00:00
Greg Daniel
9fcc743a5c Add support for resources on android Viewer
BUG=skia:

Change-Id: I1acc3e4fe6d0ce8bf29c52dd7280dff029a3abc2
Reviewed-on: https://skia-review.googlesource.com/5322
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2016-11-30 13:53:21 +00:00
Ben Wagner
bf111d7bc9 Move SkOSPath out of include/core.
It is moved to src/utils. It is almost a tool, but has two uses in
src/ports.

The existing SkOSFile.cpp is left empty for the time being since it is
mentioned in Chromium's BUILD.gn for Skia.

Change-Id: I3bb7f7c4214359eb6ab906bfe76737d20bf1d6c7
Reviewed-on: https://skia-review.googlesource.com/4536
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
2016-11-08 20:20:15 +00:00
Ben Wagner
145dbcd165 Remove SkAutoTDelete.
Replace with std::unique_ptr.

Change-Id: I5806cfbb30515fcb20e5e66ce13fb5f3b8728176
Reviewed-on: https://skia-review.googlesource.com/4381
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2016-11-03 19:03:40 +00:00
Brian Osman
526972ecb5 Rename all color space factories from New* to Make*
Matches our naming convention for all other types - factories that
return sk_sp (or any type that intelligently manages its own
lifetime) are named Make.

Previous factories are still around, assuming
SK_SUPPORT_LEGACY_COLOR_SPACE_FACTORIES is defined. Enable that
define for Android, etc.

See also: https://codereview.chromium.org/2442053002/

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3822

Change-Id: Iaea9376490736b494e8ffc820831f052bbe1478d
Reviewed-on: https://skia-review.googlesource.com/3822
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2016-10-24 14:02:27 +00:00
Brian Osman
2dd9693432 GN builds viewer on Linux, too
BUG=skia:

Change-Id: Ia0c10db49905fc5a3bdf424c38576e1a6cf09ecf
Reviewed-on: https://skia-review.googlesource.com/3606
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2016-10-18 19:43:05 +00:00
Brian Osman
16adfa3933 Viewer builds (for Windows) with GN
BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3599

Change-Id: Id6a142f90f544bef266d78e385f22e17288d5064
Reviewed-on: https://skia-review.googlesource.com/3599
Reviewed-by: Mike Klein <mtklein@google.com>
2016-10-18 18:53:30 +00:00
Greg Daniel
285db44562 Add support for Atrace and hook into SkEventTracer framework.
This change is a different version of:
https://skia-review.googlesource.com/c/3269/

BUG=skia:

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=3345

Change-Id: I49d4f2987740d3ad1307f6aba3add0d63a46b22d
Reviewed-on: https://skia-review.googlesource.com/3345
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2016-10-14 13:43:00 +00:00
jvanverth
8c67ebe4c4 Clean up Xlib viewer
* Make event handling closer to GLFW's
* Fix Vulkan refreshing

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2226413002

Review-Url: https://codereview.chromium.org/2226413002
2016-08-11 07:03:04 -07:00
jvanverth
a489e3f1fb Add RasterWindowContext_mac
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2228883003

Review-Url: https://codereview.chromium.org/2228883003
2016-08-09 10:53:11 -07:00
jvanverth
b8794ccea2 Enable backend switching for Windows Viewer
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2184163003

Review-Url: https://codereview.chromium.org/2184163003
2016-07-27 14:29:18 -07:00
bsalomon
6c471f75b2 Add sw support to viewer on Linux.
This doesn't yet do anything with srgb/colorspace.

Replaces the --vulkan flag with --backend which takes 'gl', 'vk', or 'sw'.

GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2165813002

Review-Url: https://codereview.chromium.org/2165813002
2016-07-26 12:56:32 -07:00
brianosman
e1d2007924 Respect --match for samples and jpgs in viewer
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2144643002

Review-Url: https://codereview.chromium.org/2144643002
2016-07-12 09:07:33 -07:00
liyuqian
2edb0f4a02 More accurate render time and continuous fresh
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2129613002

Review-Url: https://codereview.chromium.org/2129613002
2016-07-06 14:11:32 -07:00
jvanverth
063ece7184 Enable viewer in non-Vulkan builds
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2067023002

Committed: https://skia.googlesource.com/skia/+/746b792a9aad1230ab69158a51c49b2e5437d95b
Review-Url: https://codereview.chromium.org/2067023002
2016-06-17 09:29:14 -07:00
liyuqian
ed330c8755 Quickly fix the Compile Problem of Unused kkImageColorXformMetaData
TBR=msarett@google.com

I don't know why the compiler is complaining that since ImageSlide.cpp is still
using it.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2075873003

Review-Url: https://codereview.chromium.org/2075873003
2016-06-16 18:09:12 -07:00
liyuqian
74959a1471 Use Offscreen Surface for Split Screen
A dashed line is also added to split the screen. Currently, drawing
images with sRGB seems to still have bugs.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2069653002

Review-Url: https://codereview.chromium.org/2069653002
2016-06-16 14:10:34 -07:00
brianosman
b109b8c5ec Lots of progress on switching to SkColorSpace rather than SkColorProfileType
Fixed a bunch of code in Ganesh, as well as usage of SkColorProfileType in most of our tools (DM, SampleApp, Viewer, nanobench, skiaserve, HelloWorld).

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2069173002

Committed: https://skia.googlesource.com/skia/+/6a61a875467646f8dbc37cfecf49e12d1f475170
Review-Url: https://codereview.chromium.org/2069173002
2016-06-16 13:03:24 -07:00
brianosman
ab8241880d Revert of Lots of progress switching to SkColorSpace rather than SkColorProfileType (patchset #10 id:180001 of https://codereview.chromium.org/2069173002/ )
Reason for revert:
Mac crashes in GrUploadPixmapToTexture

Original issue's description:
> Lots of progress on switching to SkColorSpace rather than SkColorProfileType
>
> Fixed a bunch of code in Ganesh, as well as usage of SkColorProfileType in most of our tools (DM, SampleApp, Viewer, nanobench, skiaserve, HelloWorld).
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2069173002
>
> Committed: https://skia.googlesource.com/skia/+/6a61a875467646f8dbc37cfecf49e12d1f475170

TBR=reed@google.com,herb@google.com,msarett@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://codereview.chromium.org/2072813002
2016-06-16 11:41:44 -07:00
brianosman
6a61a87546 Lots of progress on switching to SkColorSpace rather than SkColorProfileType
Fixed a bunch of code in Ganesh, as well as usage of SkColorProfileType in most of our tools (DM, SampleApp, Viewer, nanobench, skiaserve, HelloWorld).

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2069173002

Review-Url: https://codereview.chromium.org/2069173002
2016-06-16 11:10:04 -07:00
jvanverth
c7027ab03f Add samples to Viewer.
This adds support with animation, assuming the sample has
implemented onAnimate. Event handling has not been
implemented.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2056343004

Committed: https://skia.googlesource.com/skia/+/76963e73704a42a18c29d6fbdcccb566e5c67658
Review-Url: https://codereview.chromium.org/2056343004
2016-06-16 09:52:35 -07:00
egdaniel
963632f686 Revert of Enable viewer in non-Vulkan builds (patchset #2 id:20001 of https://codereview.chromium.org/2067023002/ )
Reason for revert:
breaking compile bots

Original issue's description:
> Enable viewer in non-Vulkan builds
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2067023002
>
> Committed: https://skia.googlesource.com/skia/+/746b792a9aad1230ab69158a51c49b2e5437d95b

TBR=djsollen@google.com,jvanverth@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://codereview.chromium.org/2072563002
2016-06-15 14:23:40 -07:00
jvanverth
746b792a9a Enable viewer in non-Vulkan builds
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2067023002

Review-Url: https://codereview.chromium.org/2067023002
2016-06-15 13:44:15 -07:00
liyuqian
401cf48631 Quickly fix 0f to 0.0f
TBR=egdaniel@google.com

So Visual Studio won't complain.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2064863002

Review-Url: https://codereview.chromium.org/2064863002
2016-06-13 14:38:35 -07:00
liyuqian
d06693d908 Quickly fix the double to SkScalar issue
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2060823004

Review-Url: https://codereview.chromium.org/2060823004
2016-06-13 13:25:52 -07:00
liyuqian
6f163d2943 Display JPGs in Viewer with Split Screen and ColorSpaceXform
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2058753002

Review-Url: https://codereview.chromium.org/2058753002
2016-06-13 12:26:45 -07:00
egdaniel
f533f116e6 Revert of Add samples to Viewer. (patchset #4 id:60001 of https://codereview.chromium.org/2056343004/ )
Reason for revert:
breaking on android compile

Original issue's description:
> Add samples to Viewer.
>
> This adds support with animation, assuming the sample has
> implemented onAnimate. Event handling has not been
> implemented.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2056343004
>
> Committed: https://skia.googlesource.com/skia/+/76963e73704a42a18c29d6fbdcccb566e5c67658

TBR=bsalomon@google.com,jvanverth@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://codereview.chromium.org/2063883002
2016-06-13 11:30:10 -07:00
jvanverth
76963e7370 Add samples to Viewer.
This adds support with animation, assuming the sample has
implemented onAnimate. Event handling has not been
implemented.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2056343004

Review-Url: https://codereview.chromium.org/2056343004
2016-06-13 09:31:27 -07:00
liyuqian
71491dc14c Support resize in Android Viewer App
Previously, we took out resize because Vulkan didn't support it in
Android. Now Android nyc-dev builds >= 2937079 and nyc-release builds >=
NRD66 supports it so we add it back.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2050613003

Review-Url: https://codereview.chromium.org/2050613003
2016-06-09 12:02:34 -07:00
liyuqian
d94ad5823b Implement Raster Backend on Android Viewer App
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2041193004

Review-Url: https://codereview.chromium.org/2041193004
2016-06-07 14:22:38 -07:00
liyuqian
1f508fd0fe Show FPS in UI state
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2043793002

Review-Url: https://codereview.chromium.org/2043793002
2016-06-07 06:57:40 -07:00
jvanverth
814e38d5c1 Use intptr_t for onTouch argument.
On 64-bit platforms, casting int to void* is not valid.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2047443002

Review-Url: https://codereview.chromium.org/2047443002
2016-06-06 08:48:47 -07:00
liyuqian
b73c24b01a Add Softkey UIState to Viewer
We can use this to simulate any key/command on Android UI.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2035923002

Review-Url: https://codereview.chromium.org/2035923002
2016-06-03 08:47:24 -07:00
liyuqian
6cb7025182 Implement OpenGL backend in Android viewer app
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2032623002

Review-Url: https://codereview.chromium.org/2032623002
2016-06-02 12:16:25 -07:00
jvanverth
1e305ba0d6 Add offset to memory allocations
This is setting up for suballocations within one large
allocation

BUG=skia:5031
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2018933004
TBR=bsalomon@google.com

Review-Url: https://codereview.chromium.org/2018933004
2016-06-01 09:39:15 -07:00
liyuqian
e5a6cd9832 Now we can use drawer to view the state information of the native app, and set its state using the spinner.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2004633002

Committed: https://skia.googlesource.com/skia/+/4e4e30823fba0047b93a56bfcf05c04ca57e82ec

Review-Url: https://codereview.chromium.org/2004633002
2016-05-27 08:52:52 -07:00
jvanverth
85f758c334 Add OpenGL support to Linux viewer
Also adds a command line option (--vulkan) to choose between
Vulkan and OpenGL.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2011473003

Committed: https://skia.googlesource.com/skia/+/10b3815a11c39b154ec7b74a2af43e019b50d48c

Review-Url: https://codereview.chromium.org/2011473003
2016-05-27 06:47:08 -07:00
kjlubick
9ad0949338 Revert of Add drawer with state information (patchset #8 id:140001 of https://codereview.chromium.org/2004633002/ )
Reason for revert:
Broke Build-Ubuntu-GCC-Arm7-Debug-Android_Vulkan.  See https://uberchromegw.corp.google.com/i/client.skia.compile/builders/Build-Ubuntu-GCC-Arm7-Debug-Android_Vulkan/builds/134/steps/compile_skia%20on%20Ubuntu/logs/stdio.

Original issue's description:
> Now we can use drawer to view the state information of the native app, and set its state using the spinner.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2004633002
>
> Committed: https://skia.googlesource.com/skia/+/4e4e30823fba0047b93a56bfcf05c04ca57e82ec

TBR=djsollen@google.com,jvanverth@google.com,liyuqian@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://codereview.chromium.org/2016343002
2016-05-27 06:22:01 -07:00
kjlubick
0248bfd8d2 Revert of Add OpenGL support to Linux viewer (patchset #5 id:80001 of https://codereview.chromium.org/2011473003/ )
Reason for revert:
Build-Ubuntu-GCC-Arm7-Debug-Android_Vulkan is broken and this patch prevents the revert of the culprit

Original issue's description:
> Add OpenGL support to Linux viewer
>
> Also adds a command line option (--vulkan) to choose between
> Vulkan and OpenGL.
> GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2011473003
>
> Committed: https://skia.googlesource.com/skia/+/10b3815a11c39b154ec7b74a2af43e019b50d48c

TBR=egdaniel@google.com,bsalomon@google.com,brianosman@google.com,jvanverth@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review-Url: https://codereview.chromium.org/2015213002
2016-05-27 06:20:10 -07:00
jvanverth
10b3815a11 Add OpenGL support to Linux viewer
Also adds a command line option (--vulkan) to choose between
Vulkan and OpenGL.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2011473003

Review-Url: https://codereview.chromium.org/2011473003
2016-05-27 05:47:00 -07:00
liyuqian
4e4e30823f Now we can use drawer to view the state information of the native app, and set its state using the spinner.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2004633002

Review-Url: https://codereview.chromium.org/2004633002
2016-05-26 12:43:43 -07:00
liyuqian
beb1c67c9d Use SkASSERTResult to avoid unused local variables
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2003653002

Review-Url: https://codereview.chromium.org/2003653002
2016-05-20 11:41:01 -07:00
liyuqian
e46e4f075b Correct gesture scale and translation
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1996613002

Review-Url: https://codereview.chromium.org/1996613002
2016-05-20 07:32:19 -07:00
jvanverth
af236b5aa9 Add OpenGL context to Viewer.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1978573003

Committed: https://skia.googlesource.com/skia/+/56a11e4d6f3d436a3c2497c9c9e71a117d78a93f

Review-Url: https://codereview.chromium.org/1978573003
2016-05-20 06:01:06 -07:00
jvanverth
2884e9c0bd Revert of Add OpenGL context to Viewer. (patchset #7 id:120001 of https://codereview.chromium.org/1978573003/ )
Reason for revert:
sk_app/WindowContext.cpp is missing. Need to add file and resubmit.

Original issue's description:
> Add OpenGL context to Viewer.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1978573003
>
> Committed: https://skia.googlesource.com/skia/+/56a11e4d6f3d436a3c2497c9c9e71a117d78a93f

TBR=brianosman@google.com,bsalomon@google.com,djsollen@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Review-Url: https://codereview.chromium.org/1990893002
2016-05-18 07:01:16 -07:00
liyuqian
d3cdbcad65 Implement touch control
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1982643004

Review-Url: https://codereview.chromium.org/1982643004
2016-05-17 12:44:20 -07:00
jvanverth
56a11e4d6f Add OpenGL context to Viewer.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1978573003

Review-Url: https://codereview.chromium.org/1978573003
2016-05-17 12:15:48 -07:00
brianosman
622c8d5de1 Add flexible keybinding/command system to sk_app.
Viewer demonstrates use: Just create an instance of CommandSet,
register with the window, and add commands. Hopefully, we can keep
all commands in one place, and get some nice side-benefits. With
this framework, if you want to add a new command, you are only
required to add code in ONE place. And you get added to the help
screen, for free.

CommandSet automatically binds 'h' to cycle through the help modes.
(Functional grouping is most useful for general use, but the other
mode is nice to know what a key does, or to find an unused key for
a new feature).

Grouped by function: https://screenshot.googleplex.com/G5h3f52wFKu.png
Alphabetical by key: https://screenshot.googleplex.com/nZiopabLKJ6.png

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1955293002

Review-Url: https://codereview.chromium.org/1955293002
2016-05-10 06:50:49 -07:00
brianosman
05de216ffb Add sRGB mode toggle to Viewer.
Unlike SampleApp, this just switches out the format of the window
surface (and then adjusts the gamma-correct flag on the SkSurfaces).

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1950983007

Review-Url: https://codereview.chromium.org/1950983007
2016-05-06 13:28:57 -07:00
jvanverth
a8d0d6c8ba More refactoring for Viewer
* Move support files into sk_app and main files up to top directory
* Rename VulkanTestContext and create WindowContext parent class
* Place VulkanWindowContext et al. in sk_app namespace.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1944413005

Review-Url: https://codereview.chromium.org/1944413005
2016-05-05 12:32:03 -07:00