aboutsummaryrefslogtreecommitdiffhomepage
path: root/debugger
Commit message (Collapse)AuthorAge
* Fix debugger w.r.t. sk_sp changesGravatar robertphillips2016-03-24
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1828273002 Review URL: https://codereview.chromium.org/1828273002
* return pictures as sk_spGravatar reed2016-03-18
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1811703002 Review URL: https://codereview.chromium.org/1811703002
* Update debugger to use SkPixmapGravatar robertphillips2016-03-10
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1782673003 Review URL: https://codereview.chromium.org/1782673003
* Unbust the old debuggerGravatar robertphillips2016-03-01
| | | | | | | | AFAICT the recent STL changes have introduced some QT conflicts. GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1753813002 Review URL: https://codereview.chromium.org/1753813002
* Add gpu implementation of OverdrawXfermodeGravatar robertphillips2016-01-27
| | | | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1607253002 Committed: https://skia.googlesource.com/skia/+/8bc3cf88bbf5e5d5724356f076931bb70a6117ba Review URL: https://codereview.chromium.org/1607253002
* Revert of Add gpu implementation of OverdrawXfermode (patchset #6 id:100001 ↵Gravatar robertphillips2016-01-22
| | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/1607253002/ ) Reason for revert: Overdraw Xfer mode using new fangled glsl features Original issue's description: > Add gpu implementation of OverdrawXfermode > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1607253002 > > Committed: https://skia.googlesource.com/skia/+/8bc3cf88bbf5e5d5724356f076931bb70a6117ba TBR=egdaniel@google.com # Not skipping CQ checks because original CL landed more than 1 days ago. Review URL: https://codereview.chromium.org/1626443002
* Add gpu implementation of OverdrawXfermodeGravatar robertphillips2016-01-20
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1607253002 Review URL: https://codereview.chromium.org/1607253002
* default SkPixelSerializerGravatar halcanary2015-12-10
| | | | | | | | | | | | | | | Add SkImageEncoder::EncodeData(const SkPixmap&, ...) function. Add SkImageEncoder::CreatePixelSerializer() to return a PixelSerializer that calls into SkImageEncoder::EncodeData. SkImage::encode() make use of SkImageEncoder::CreatePixelSerializer. Committed: https://skia.googlesource.com/skia/+/b0bd1516bff3f5afcbfd615e805867531657811b Committed: https://skia.googlesource.com/skia/+/808ce2886d732b1055f89c8fb0f1b11b47fcb0ce Review URL: https://codereview.chromium.org/1507123002
* Revert of default SkPixelSerializer (patchset #2 id:20001 of ↵Gravatar halcanary2015-12-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1507123002/ ) Reason for revert: I was overconfident. Original issue's description: > default SkPixelSerializer > > Add SkImageEncoder::EncodeData(const SkPixmap&, ...) function. > > Add SkImageEncoder::CreatePixelSerializer() to return a > PixelSerializer that calls into SkImageEncoder::EncodeData. > > SkImage::encode() make use of SkImageEncoder::CreatePixelSerializer. > > Committed: https://skia.googlesource.com/skia/+/b0bd1516bff3f5afcbfd615e805867531657811b > > Committed: https://skia.googlesource.com/skia/+/808ce2886d732b1055f89c8fb0f1b11b47fcb0ce TBR=reed@google.com,scroggo@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1511183002
* default SkPixelSerializerGravatar halcanary2015-12-08
| | | | | | | | | | | | | Add SkImageEncoder::EncodeData(const SkPixmap&, ...) function. Add SkImageEncoder::CreatePixelSerializer() to return a PixelSerializer that calls into SkImageEncoder::EncodeData. SkImage::encode() make use of SkImageEncoder::CreatePixelSerializer. Committed: https://skia.googlesource.com/skia/+/b0bd1516bff3f5afcbfd615e805867531657811b Review URL: https://codereview.chromium.org/1507123002
* Revert of default SkPixelSerializer (patchset #1 id:1 of ↵Gravatar reed2015-12-08
| | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1507123002/ ) Reason for revert: Breaking DEPS roll (linker error) Original issue's description: > default SkPixelSerializer > > Add SkImageEncoder::EncodeData(const SkPixmap&, ...) function. > > Add SkImageEncoder::CreatePixelSerializer() to return a > PixelSerializer that calls into SkImageEncoder::EncodeData. > > SkImage::encode() make use of SkImageEncoder::CreatePixelSerializer. > > Committed: https://skia.googlesource.com/skia/+/b0bd1516bff3f5afcbfd615e805867531657811b TBR=scroggo@google.com,halcanary@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1505203003
* default SkPixelSerializerGravatar halcanary2015-12-08
| | | | | | | | | | | Add SkImageEncoder::EncodeData(const SkPixmap&, ...) function. Add SkImageEncoder::CreatePixelSerializer() to return a PixelSerializer that calls into SkImageEncoder::EncodeData. SkImage::encode() make use of SkImageEncoder::CreatePixelSerializer. Review URL: https://codereview.chromium.org/1507123002
* Update debugger UI to auto-refresh the directory listingGravatar djsollen2015-11-18
| | | | Review URL: https://codereview.chromium.org/1462633002
* Clean up dead code: PictureRendererGravatar mtklein2015-11-18
| | | | | | | | Doesn't appear to actually be used by anything. BUG=skia: Review URL: https://codereview.chromium.org/1457753002
* [SkDebugger] Remove unneeded SkDebuggerGUI includesGravatar fmalita2015-11-02
| | | | | | R=robertphillips@google.com,mtklein@google.com Review URL: https://codereview.chromium.org/1411963006
* Get debugger compiling againGravatar robertphillips2015-10-26
| | | | | | Recent house cleaning has broken the debugger - mainly around the defunct profiling feature. This makes CL it even more defunct. Review URL: https://codereview.chromium.org/1416723006
* Make SkGraphics::Term a no-op, stop calling it.Gravatar mtklein2015-09-09
| | | | | | | | | | I'd remove it entirely but Android is calling it explicitly. BUG=skia:4259 Committed: https://skia.googlesource.com/skia/+/925979f733fe8e70d84627147dee04d030423349 Review URL: https://codereview.chromium.org/1329853005
* Revert of Make SkGraphics::Term a no-op, stop calling it. (patchset #2 ↵Gravatar mtklein2015-09-09
| | | | | | | | | | | | | | | | | | | | | | | | id:20001 of https://codereview.chromium.org/1329853005/ ) Reason for revert: SK_ATTR_DEPRECATED is meaningful to Android. Don't use it. Original issue's description: > Make SkGraphics::Term a no-op, stop calling it. > > I'd remove it entirely but Android is calling it explicitly. > > BUG=skia:4259 > > Committed: https://skia.googlesource.com/skia/+/925979f733fe8e70d84627147dee04d030423349 TBR=reed@google.com,scroggo@google.com,mtklein@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:4259 Review URL: https://codereview.chromium.org/1314483006
* Make SkGraphics::Term a no-op, stop calling it.Gravatar mtklein2015-09-08
| | | | | | | | I'd remove it entirely but Android is calling it explicitly. BUG=skia:4259 Review URL: https://codereview.chromium.org/1329853005
* Style Change: NULL->nullptrGravatar halcanary2015-08-27
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316233002 Review URL: https://codereview.chromium.org/1316233002
* Style Change: SkNEW->new; SkDELETE->deleteGravatar halcanary2015-08-26
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316123003 Review URL: https://codereview.chromium.org/1316123003
* Fix no-gpu debugger.Gravatar bungeman2015-07-31
| | | | Review URL: https://codereview.chromium.org/1262723005
* Fix debugger compilationGravatar robertphillips2015-06-24
| | | | | | TBR=bsalomon@google.com Review URL: https://codereview.chromium.org/1205933002
* Remove the SkCanvas comment APIGravatar fmalita2015-06-15
| | | | | | | | No longer used in Chromium/Blink. R=reed@google.com,robertphillips@google.com,mtklein@google.com Review URL: https://codereview.chromium.org/1153593003
* Get debugger compiling againGravatar robertphillips2015-05-04
| | | | Review URL: https://codereview.chromium.org/1125543003
* [SkDebugger] Flatten drawPicture opsGravatar fmalita2015-04-01
| | | | | | | Add two drawPicture bracketing ops (BeginDrawPicture, EndDrawPicture) to replace the current DrawPicture op, and flatten picture contents. Review URL: https://codereview.chromium.org/1048383002
* Debugger: remove dead feature (SkPicture offset display) & fix bug ↵Gravatar robertphillips2015-03-26
| | | | | | | | | (unbalanced indents) Displaying the offset into an SkPicture hasn't worked for a while so this CL deletes the feature. When "Save Layer" was renamed to "SaveLayer" the code that computes the indent in the list view was broken. This CL patches the problem. Review URL: https://codereview.chromium.org/1034733004
* Preserve texture compression when saving a revised skp from debuggerGravatar robertphillips2015-03-23
| | | | | | Without this CL, saving a revised skp out the debugger can greatly expand the memory it requires. Review URL: https://codereview.chromium.org/1020103005
* FilterLevel -> SkFilterQualityGravatar reed2015-03-16
| | | | | | | | | BUG=skia: TBR= NOTREECHECKS=True NOTRY=True Review URL: https://codereview.chromium.org/1010023002
* SkPaint::FilterLevel -> SkFilterQualityGravatar reed2015-03-16
| | | | | | | | | clone (+rebase) of https://codereview.chromium.org/1009183002/ BUG=skia: TBR=scroggo@google.com Review URL: https://codereview.chromium.org/1014533004
* Remove SkPictureFlat.h include from SkDrawCommands.hGravatar robertphillips2015-02-13
| | | | | | | | | | This cannot land until https://codereview.chromium.org/909353004/ (Prepare SkiaBenchmarkingExtensionTest for upcoming Skia changes) lands in Chromium Committed: https://skia.googlesource.com/skia/+/5a4c233a3657d12d836de388b41e30405b4ab976 Committed: https://skia.googlesource.com/skia/+/fa3a83d0fe53907e618346d3f1c17a95da1a9d22 Review URL: https://codereview.chromium.org/912403004
* Revert of Remove SkPictureFlat.h include from SkDrawCommands.h (patchset #3 ↵Gravatar robertphillips2015-02-12
| | | | | | | | | | | | | | | | | | | | | | | id:40001 of https://codereview.chromium.org/912403004/) Reason for revert: Erm - Chrome. Original issue's description: > Remove SkPictureFlat.h include from SkDrawCommands.h > > This cannot land until https://codereview.chromium.org/909353004/ (Prepare SkiaBenchmarkingExtensionTest for upcoming Skia changes) lands in Chromium > > Committed: https://skia.googlesource.com/skia/+/5a4c233a3657d12d836de388b41e30405b4ab976 > > Committed: https://skia.googlesource.com/skia/+/fa3a83d0fe53907e618346d3f1c17a95da1a9d22 TBR=reed@google.com,fmalita@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/923753002
* Remove SkPictureFlat.h include from SkDrawCommands.hGravatar robertphillips2015-02-12
| | | | | | | | This cannot land until https://codereview.chromium.org/909353004/ (Prepare SkiaBenchmarkingExtensionTest for upcoming Skia changes) lands in Chromium Committed: https://skia.googlesource.com/skia/+/5a4c233a3657d12d836de388b41e30405b4ab976 Review URL: https://codereview.chromium.org/912403004
* Revert of Fix Chromium build (patchset #2 id:20001 of ↵Gravatar robertphillips2015-02-11
| | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/916763003/) Reason for revert: Chrome Original issue's description: > Fix Chromium build > > TBR=jvanverth@google.com > > Committed: https://skia.googlesource.com/skia/+/f5e89c8f685ac8a5c4d117e087b4111d613106db TBR=jvanverth@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/916963002
* Revert of Remove SkPictureFlat.h include from SkDrawCommands.h (patchset #2 ↵Gravatar robertphillips2015-02-11
| | | | | | | | | | | | | | | | | | | id:20001 of https://codereview.chromium.org/912403004/) Reason for revert: Chrome Original issue's description: > Remove SkPictureFlat.h include from SkDrawCommands.h > > Committed: https://skia.googlesource.com/skia/+/5a4c233a3657d12d836de388b41e30405b4ab976 TBR=reed@google.com,fmalita@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/917933002
* Fix Chromium buildGravatar robertphillips2015-02-11
| | | | | | TBR=jvanverth@google.com Review URL: https://codereview.chromium.org/916763003
* Remove SkPictureFlat.h include from SkDrawCommands.hGravatar robertphillips2015-02-11
| | | | Review URL: https://codereview.chromium.org/912403004
* debugger: Abandon context when Qt changes it without noticeGravatar kkinnunen2015-02-10
| | | | | | | | | | | | | Qt changes the context on many conditions. Abandon GrContext in these cases. Also call GrContext::resetContext during Qt GL paint callback, the GL state may be touched by Qt. Fixes the bug where changing between gpu and msaa would start erroring in framebuffer binds, if the .skp had many layers. Review URL: https://codereview.chromium.org/915573002
* Make SkStream *not* ref counted.Gravatar scroggo2015-01-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SkStream is a stateful object, so it does not make sense for it to have multiple owners. Make SkStream inherit directly from SkNoncopyable. Update methods which previously called SkStream::ref() (e.g. SkImageDecoder::buildTileIndex() and SkFrontBufferedStream::Create(), which required the existing owners to call SkStream::unref()) to take ownership of their SkStream parameters and delete when done (including on failure). Switch all SkAutoTUnref<SkStream>s to SkAutoTDelete<SkStream>s. In some cases this means heap allocating streams that were previously stack allocated. Respect ownership rules of SkTypeface::CreateFromStream() and SkImageDecoder::buildTileIndex(). Update the comments for exceptional methods which do not affect the ownership of their SkStream parameters (e.g. SkPicture::CreateFromStream() and SkTypeface::Deserialize()) to be explicit about ownership. Remove test_stream_life, which tested that buildTileIndex() behaved correctly when SkStream was a ref counted object. The test does not make sense now that it is not. In SkPDFStream, remove the SkMemoryStream member. Instead of using it, create a new SkMemoryStream to pass to fDataStream (which is now an SkAutoTDelete). Make other pdf rasterizers behave like SkPDFDocumentToBitmap. SkPDFDocumentToBitmap delete the SkStream, so do the same in the following pdf rasterizers: SkPopplerRasterizePDF SkNativeRasterizePDF SkNoRasterizePDF Requires a change to Android, which currently treats SkStreams as ref counted objects. Review URL: https://codereview.chromium.org/849103004
* Fix debugger wrt to new SkGpuDevice factory signature'Gravatar Brian Salomon2015-01-16
| | | | Review URL: https://codereview.chromium.org/855083003
* Remove incremental draw optimization from SkDebugCanvasGravatar kkinnunen2015-01-13
| | | | | | | | | | | | | | | | | | | | | | | The SkDebugCanvas can be (or is currently) being used to draw to multiple different canvases. If this use-case is intended, then storing draw -related state in the canvas causes bugs. Remove incremental draw from SkDebugCanvas. It can only optimize the case where draw command index is advanced, no other changes are done and no visualization is used. This case is not that critical, as it happens only once per new frame at most. It causes bugs, because one SkDebugCanvas is used to draw to multiple canvases. Leave the draw to canvas in same state as it was passed in. This fixes the debugger bugs where: * Old, stale image would stay on the raster canvas when a new image is loaded. Also happened with resizes. * Proper image for overdraw filter would be visible only for the first frame Review URL: https://codereview.chromium.org/844493003
* debugger: SW rasterize the picture only when it changesGravatar kkinnunen2015-01-13
| | | | | | | | | | | | | | Rasterize the picture only when it changes, not every time raster widget paints itself. Removes include SkForceLinking.h while organizing the SkDebuggerGUI.cpp includes. This is part of the work trying to remove bugs that come from SkDebugCanvas stateful draw. Part of the state comes from some optimization that this tries to reproduce in a different way. Review URL: https://codereview.chromium.org/839743003
* debugger: Update inspector view data consistently while pausedGravatar kkinnunen2015-01-07
| | | | | | | | | | | | Make all fields of inspector view (details tab, clipstack tab, geometry view) update the correct info when user selects a draw command. Also update the info regardless if the painting is paused or not. Current clip and matrix will not update consistently even after this patch, as they depend on stateful debug canvas draw (may be fixed later). Review URL: https://codereview.chromium.org/835903002
* Remove draw window size state from SkDebugCanvasGravatar kkinnunen2015-01-05
| | | | | | | | | | | | | | | | | The SkDebugCanvas can be (or is currently) being used to draw to multiple different canvases. If this use-case is intended, then storing draw -related state in the canvas causes bugs. Remove draw window size state form SkDebugCanvas. Instead, use the canvas base layer size as the window size to clip to. This is consistent with the current use in debugger. This is part of work trying to remove bugs in debugger that result from replaying one SkDrawCanvas to two different canvases. Currently the SkDrawCanvas stores state that can only be valid if it is used for one canvas. Review URL: https://codereview.chromium.org/835113002
* debugger: Update the picture view when the first command is selectedGravatar kkinnunen2015-01-05
| | | | | | | Update the picture view in the debugger when the first command is selected. DebugCanvas::drawTo(index) draws up to and including the index. Review URL: https://codereview.chromium.org/837483002
* debugger: Remove few redundant variablesGravatar kkinnunen2015-01-05
| | | | | | | | | | | Use the GUI widget states instead of instance variables reflecting the widget state. Fixes the case where pause state would be left on when switching files, but the image would change to the last frame of newly loaded image. Review URL: https://codereview.chromium.org/810033004
* debugger: Move Skia initialization out of the GUI widget classGravatar kkinnunen2015-01-02
| | | | | | | | | | Move Skia initialization out of the GUI widget class to the main function. Before, Skia may have been already called before the SkGraphics::Init was run. Review URL: https://codereview.chromium.org/822583003
* debugger: Make inspector widget smallerGravatar kkinnunen2015-01-02
| | | | | | | | | | | | | | | | Make inspector widget a bit smaller by letting the Qt widget system layout the widgets. Let the inspector widget calculate its own smallest size. Use stretch factor of 0 for inspector, 1 for picture canvas. Group the matrix and clip widgets in groups. Put the text edits in a grid layout instead of a handwritted column layout containing row layouts. This commit is part of work that tries to make the debugger window to be a bit more resizeable, so that it would fit 1900x1200 screen. Review URL: https://codereview.chromium.org/830743002
* debugger: Make draw command image widget resizeGravatar kkinnunen2014-12-30
| | | | | | | | | | | | | | | | | | | | | | | | | | Make draw command image widget resize. The widget was not resizing, effectively preventing the window from being resized smaller. Make the rasterized draw command image be proportional to the widget size. The draw rasterization canvas is still an equilateral rectangle with dimensions of the smaller side of the widget. Makes the widget re-rasterize the image only when the draw command changes, not for each widget paint. Renames the widget from "image widget" to "draw command geometry widget". Makes the background of the image black, similar to the raster widget background. Adds a tooltip saying "Command geometry" for the widget, so that user might understand what the contents should be. This commit is part of work that tries to make the debugger window to be a bit more resizeable, so that it would fit 1900x1200 screen. Review URL: https://codereview.chromium.org/787143004
* debugger: Make settings widget resizeableGravatar kkinnunen2014-12-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The settings widget was laid out by hand, eg. the widths of most elements were hardcoded. This prevented it from being laid out by the Qt widget system. This in turn prevents the widget from shrinking to its optimal size. This in turn causes cascading effect where the geometry of many of the UI widgets has to be hard-coded. This in turn prevents proper resizing of the UI. Make Qt layout the settings widget by following changes: a) Group settings in QGroupBox groups instead of hand-written layouts and labels hardcoded in certain places. b) Remove "Expanding" size policy from settings widget. The widget calculates its own size based on the widgets inside. Thus "Preferred" is the correct policy to use, as expanding the widget will not bring any new content visible. c) Remove maximum width 250 from Settings widget d) Make "canvas settings and image layout", eg. the horizontal layout holding the settings widget divide the space between the picture and settings like so: settings uses up only as much as it needs (stretch factor 0), while picture uses up everything else (stretch factor 1). In order to do a) reasonably, reorganize the UI and the code a bit: a1) Rename settings group "visual filter" to "Visualizations". a2) Make "visual filter: on/off" combo box a checkbox in "Visualizations". a3) Move "Mega viz" setting checkbox from "raster" (or "render targets") section to "Visualizations" a4) Move "PathOps" setting checkbox from "raster" to "Visualizations" a5) Make Raster and GL checkboxes use QGroupBox checkbox feature a6) Move "current command", "command hitbox" and "zoom level" from "Settings" widget to part of "Inspector" concept. These pieces of information are now visualized as their own box in the right-hand bar, below settings. a7) Do not expose settings user selects through the UI widgets state that record the user interacts with. Instead, expose it as state of the "settings widget". Thus settings widget provides "raster settings changed" signal, which the client hook to and then query the state through the object API. This makes the full window a bit shorter. This commit is part of work that tries to make the debugger window to be a bit more resizeable, so that it would fit 1900x1200 screen. Review URL: https://codereview.chromium.org/829933002