add SAL_LOG area vcl.skia.trace
So that Skia tracing debug output can be disabled selectively (e.g. SAL_LOG=+INFO.vcl.skia-INFO.vcl.skia.trace). Change-Id: Id90c77d90ce871b958429d0fe3e59c9da97b0307 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91469 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
This commit is contained in:
parent
8d27d495a7
commit
462381602f
4 changed files with 45 additions and 43 deletions
|
@ -498,7 +498,8 @@ certain functionality.
|
|||
@li @c vcl.scrollbar - Scroll Bars
|
||||
@li @c vcl.se - VCL Session Manager
|
||||
@li @c vcl.se.debug
|
||||
@li @c vcl.skia - drawing using the Skia library
|
||||
@li @c vcl.skia - VCL Skia-based code
|
||||
@li @c vcl.skia.trace - tracing drawing in VCL Skia-based code
|
||||
@li @c vcl.sm - Session Manager Client
|
||||
@li @c vcl.sm.debug
|
||||
@li @c vcl.uitest - The UI testing framework code
|
||||
|
|
|
@ -326,10 +326,10 @@ void SkiaSalGraphicsImpl::postDraw()
|
|||
mXorExtents.outset(2, 2);
|
||||
mXorExtents.intersect(SkRect::MakeXYWH(0, 0, mSurface->width(), mSurface->height()));
|
||||
}
|
||||
SAL_INFO("vcl.skia", "applyxor("
|
||||
<< this << "): "
|
||||
<< tools::Rectangle(mXorExtents.left(), mXorExtents.top(),
|
||||
mXorExtents.right(), mXorExtents.bottom()));
|
||||
SAL_INFO("vcl.skia.trace",
|
||||
"applyxor(" << this << "): "
|
||||
<< tools::Rectangle(mXorExtents.left(), mXorExtents.top(),
|
||||
mXorExtents.right(), mXorExtents.bottom()));
|
||||
// Copy the surface contents to another pixmap.
|
||||
SkBitmap surfaceBitmap;
|
||||
// Use unpremultiplied alpha format, so that we do not have to do the conversions to get
|
||||
|
@ -398,7 +398,7 @@ void SkiaSalGraphicsImpl::checkSurface()
|
|||
if (!mSurface)
|
||||
{
|
||||
recreateSurface();
|
||||
SAL_INFO("vcl.skia",
|
||||
SAL_INFO("vcl.skia.trace",
|
||||
"create(" << this << "): " << Size(mSurface->width(), mSurface->height()));
|
||||
}
|
||||
else if (GetWidth() != mSurface->width() || GetHeight() != mSurface->height())
|
||||
|
@ -407,9 +407,10 @@ void SkiaSalGraphicsImpl::checkSurface()
|
|||
{
|
||||
Size oldSize(mSurface->width(), mSurface->height());
|
||||
recreateSurface();
|
||||
SAL_INFO("vcl.skia", "recreate(" << this << "): old " << oldSize << " new "
|
||||
<< Size(mSurface->width(), mSurface->height())
|
||||
<< " requested " << Size(GetWidth(), GetHeight()));
|
||||
SAL_INFO("vcl.skia.trace", "recreate(" << this << "): old " << oldSize << " new "
|
||||
<< Size(mSurface->width(), mSurface->height())
|
||||
<< " requested "
|
||||
<< Size(GetWidth(), GetHeight()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -421,7 +422,7 @@ bool SkiaSalGraphicsImpl::setClipRegion(const vcl::Region& region)
|
|||
SkiaZone zone;
|
||||
mClipRegion = region;
|
||||
checkSurface();
|
||||
SAL_INFO("vcl.skia", "setclipregion(" << this << "): " << region);
|
||||
SAL_INFO("vcl.skia.trace", "setclipregion(" << this << "): " << region);
|
||||
SkCanvas* canvas = mSurface->getCanvas();
|
||||
// SkCanvas::clipRegion() can only further reduce the clip region,
|
||||
// but we need to set the given region, which may extend it.
|
||||
|
@ -541,7 +542,7 @@ void SkiaSalGraphicsImpl::drawPixel(long nX, long nY, Color nColor)
|
|||
if (nColor == SALCOLOR_NONE)
|
||||
return;
|
||||
preDraw();
|
||||
SAL_INFO("vcl.skia", "drawpixel(" << this << "): " << Point(nX, nY) << ":" << nColor);
|
||||
SAL_INFO("vcl.skia.trace", "drawpixel(" << this << "): " << Point(nX, nY) << ":" << nColor);
|
||||
SkPaint paint;
|
||||
paint.setColor(toSkColor(nColor));
|
||||
// Apparently drawPixel() is actually expected to set the pixel and not draw it.
|
||||
|
@ -557,8 +558,8 @@ void SkiaSalGraphicsImpl::drawLine(long nX1, long nY1, long nX2, long nY2)
|
|||
if (mLineColor == SALCOLOR_NONE)
|
||||
return;
|
||||
preDraw();
|
||||
SAL_INFO("vcl.skia", "drawline(" << this << "): " << Point(nX1, nY1) << "->" << Point(nX2, nY2)
|
||||
<< ":" << mLineColor);
|
||||
SAL_INFO("vcl.skia.trace", "drawline(" << this << "): " << Point(nX1, nY1) << "->"
|
||||
<< Point(nX2, nY2) << ":" << mLineColor);
|
||||
SkPaint paint;
|
||||
paint.setColor(toSkColor(mLineColor));
|
||||
paint.setAntiAlias(mParent.getAntiAliasB2DDraw());
|
||||
|
@ -576,9 +577,9 @@ void SkiaSalGraphicsImpl::privateDrawAlphaRect(long nX, long nY, long nWidth, lo
|
|||
double fTransparency, bool blockAA)
|
||||
{
|
||||
preDraw();
|
||||
SAL_INFO("vcl.skia", "privatedrawrect(" << this << "): " << Point(nX, nY) << "/"
|
||||
<< Size(nWidth, nHeight) << ":" << mLineColor << ":"
|
||||
<< mFillColor << ":" << fTransparency);
|
||||
SAL_INFO("vcl.skia.trace", "privatedrawrect(" << this << "): " << Point(nX, nY) << "/"
|
||||
<< Size(nWidth, nHeight) << ":" << mLineColor
|
||||
<< ":" << mFillColor << ":" << fTransparency);
|
||||
SkCanvas* canvas = getDrawCanvas();
|
||||
SkPaint paint;
|
||||
paint.setAntiAlias(!blockAA && mParent.getAntiAliasB2DDraw());
|
||||
|
@ -666,8 +667,8 @@ bool SkiaSalGraphicsImpl::drawPolyPolygon(const basegfx::B2DHomMatrix& rObjectTo
|
|||
SkPath aPath;
|
||||
basegfx::B2DPolyPolygon aPolyPolygon(rPolyPolygon);
|
||||
aPolyPolygon.transform(rObjectToDevice);
|
||||
SAL_INFO("vcl.skia", "drawpolypolygon(" << this << "): " << aPolyPolygon << ":" << mLineColor
|
||||
<< ":" << mFillColor);
|
||||
SAL_INFO("vcl.skia.trace", "drawpolypolygon(" << this << "): " << aPolyPolygon << ":"
|
||||
<< mLineColor << ":" << mFillColor);
|
||||
addPolyPolygonToPath(aPolyPolygon, aPath);
|
||||
aPath.setFillType(SkPathFillType::kEvenOdd);
|
||||
|
||||
|
@ -719,7 +720,7 @@ bool SkiaSalGraphicsImpl::drawPolyLine(const basegfx::B2DHomMatrix& rObjectToDev
|
|||
}
|
||||
|
||||
preDraw();
|
||||
SAL_INFO("vcl.skia", "drawpolyline(" << this << "): " << rPolyLine << ":" << mLineColor);
|
||||
SAL_INFO("vcl.skia.trace", "drawpolyline(" << this << "): " << rPolyLine << ":" << mLineColor);
|
||||
|
||||
// tdf#124848 get correct LineWidth in discrete coordinates,
|
||||
// take hairline case into account
|
||||
|
@ -851,9 +852,9 @@ void SkiaSalGraphicsImpl::copyArea(long nDestX, long nDestY, long nSrcX, long nS
|
|||
if (nDestX == nSrcX && nDestY == nSrcY)
|
||||
return;
|
||||
preDraw();
|
||||
SAL_INFO("vcl.skia", "copyarea(" << this << "): " << Point(nSrcX, nSrcY) << "->"
|
||||
<< Point(nDestX, nDestY) << "/"
|
||||
<< Size(nSrcWidth, nSrcHeight));
|
||||
SAL_INFO("vcl.skia.trace", "copyarea(" << this << "): " << Point(nSrcX, nSrcY) << "->"
|
||||
<< Point(nDestX, nDestY) << "/"
|
||||
<< Size(nSrcWidth, nSrcHeight));
|
||||
// Do not use makeImageSnapshot(rect), as that one may make a needless data copy.
|
||||
sk_sp<SkImage> image = mSurface->makeImageSnapshot();
|
||||
SkPaint paint;
|
||||
|
@ -877,7 +878,7 @@ void SkiaSalGraphicsImpl::copyBits(const SalTwoRect& rPosAry, SalGraphics* pSrcG
|
|||
}
|
||||
else
|
||||
src = this;
|
||||
SAL_INFO("vcl.skia", "copybits(" << this << "): (" << src << "):" << rPosAry);
|
||||
SAL_INFO("vcl.skia.trace", "copybits(" << this << "): (" << src << "):" << rPosAry);
|
||||
// Do not use makeImageSnapshot(rect), as that one may make a needless data copy.
|
||||
sk_sp<SkImage> image = src->mSurface->makeImageSnapshot();
|
||||
SkPaint paint;
|
||||
|
@ -986,7 +987,7 @@ void SkiaSalGraphicsImpl::drawMask(const SalTwoRect& rPosAry, const SalBitmap& r
|
|||
void SkiaSalGraphicsImpl::drawMask(const SalTwoRect& rPosAry, const sk_sp<SkImage>& rImage,
|
||||
Color nMaskColor)
|
||||
{
|
||||
SAL_INFO("vcl.skia", "drawmask(" << this << "): " << rPosAry << ":" << nMaskColor);
|
||||
SAL_INFO("vcl.skia.trace", "drawmask(" << this << "): " << rPosAry << ":" << nMaskColor);
|
||||
sk_sp<SkSurface> tmpSurface = SkiaHelper::createSkSurface(rImage->width(), rImage->height());
|
||||
assert(tmpSurface);
|
||||
SkCanvas* canvas = tmpSurface->getCanvas();
|
||||
|
@ -1005,7 +1006,7 @@ std::shared_ptr<SalBitmap> SkiaSalGraphicsImpl::getBitmap(long nX, long nY, long
|
|||
{
|
||||
SkiaZone zone;
|
||||
checkSurface();
|
||||
SAL_INFO("vcl.skia",
|
||||
SAL_INFO("vcl.skia.trace",
|
||||
"getbitmap(" << this << "): " << Point(nX, nY) << "/" << Size(nWidth, nHeight));
|
||||
mSurface->getCanvas()->flush();
|
||||
// TODO makeImageSnapshot(rect) may copy the data, which may be a waste if this is used
|
||||
|
@ -1019,7 +1020,7 @@ Color SkiaSalGraphicsImpl::getPixel(long nX, long nY)
|
|||
{
|
||||
SkiaZone zone;
|
||||
checkSurface();
|
||||
SAL_INFO("vcl.skia", "getpixel(" << this << "): " << Point(nX, nY));
|
||||
SAL_INFO("vcl.skia.trace", "getpixel(" << this << "): " << Point(nX, nY));
|
||||
mSurface->getCanvas()->flush();
|
||||
// This is presumably slow, but getPixel() should be generally used only by unit tests.
|
||||
SkBitmap bitmap;
|
||||
|
@ -1033,7 +1034,7 @@ Color SkiaSalGraphicsImpl::getPixel(long nX, long nY)
|
|||
void SkiaSalGraphicsImpl::invert(basegfx::B2DPolygon const& rPoly, SalInvert eFlags)
|
||||
{
|
||||
preDraw();
|
||||
SAL_INFO("vcl.skia", "invert(" << this << "): " << rPoly << ":" << int(eFlags));
|
||||
SAL_INFO("vcl.skia.trace", "invert(" << this << "): " << rPoly << ":" << int(eFlags));
|
||||
// TrackFrame just inverts a dashed path around the polygon
|
||||
if (eFlags == SalInvert::TrackFrame)
|
||||
{
|
||||
|
@ -1153,7 +1154,7 @@ void SkiaSalGraphicsImpl::drawImage(const SalTwoRect& rPosAry, const sk_sp<SkIma
|
|||
aPaint.setBlendMode(eBlendMode);
|
||||
|
||||
preDraw();
|
||||
SAL_INFO("vcl.skia", "drawimage(" << this << "): " << rPosAry << ":" << int(eBlendMode));
|
||||
SAL_INFO("vcl.skia.trace", "drawimage(" << this << "): " << rPosAry << ":" << int(eBlendMode));
|
||||
getDrawCanvas()->drawImageRect(aImage, aSourceRect, aDestinationRect, &aPaint);
|
||||
if (mXorMode) // limit xor area update
|
||||
mXorExtents = aDestinationRect;
|
||||
|
@ -1172,7 +1173,7 @@ void SkiaSalGraphicsImpl::drawBitmap(const SalTwoRect& rPosAry, const SkBitmap&
|
|||
aPaint.setBlendMode(eBlendMode);
|
||||
|
||||
preDraw();
|
||||
SAL_INFO("vcl.skia", "drawbitmap(" << this << "): " << rPosAry << ":" << int(eBlendMode));
|
||||
SAL_INFO("vcl.skia.trace", "drawbitmap(" << this << "): " << rPosAry << ":" << int(eBlendMode));
|
||||
getDrawCanvas()->drawBitmapRect(aBitmap, aSourceRect, aDestinationRect, &aPaint);
|
||||
if (mXorMode) // limit xor area update
|
||||
mXorExtents = aDestinationRect;
|
||||
|
@ -1222,7 +1223,7 @@ bool SkiaSalGraphicsImpl::drawTransformedBitmap(const basegfx::B2DPoint& rNull,
|
|||
aMatrix.set(SkMatrix::kMTransY, rNull.getY());
|
||||
|
||||
preDraw();
|
||||
SAL_INFO("vcl.skia",
|
||||
SAL_INFO("vcl.skia.trace",
|
||||
"drawtransformedbitmap(" << this << "): " << rNull << ":" << rX << ":" << rY);
|
||||
{
|
||||
SkAutoCanvasRestore autoRestore(getDrawCanvas(), true);
|
||||
|
@ -1280,8 +1281,8 @@ void SkiaSalGraphicsImpl::drawGenericLayout(const GenericSalLayout& layout, Colo
|
|||
= SkTextBlob::MakeFromRSXform(glyphIds.data(), glyphIds.size() * sizeof(SkGlyphID),
|
||||
glyphForms.data(), font, SkTextEncoding::kGlyphID);
|
||||
preDraw();
|
||||
SAL_INFO("vcl.skia", "drawtextblob("
|
||||
<< this << "): "
|
||||
SAL_INFO("vcl.skia.trace",
|
||||
"drawtextblob(" << this << "): "
|
||||
<< tools::Rectangle(textBlob->bounds().x(), textBlob->bounds().y(),
|
||||
textBlob->bounds().width(),
|
||||
textBlob->bounds().height())
|
||||
|
|
|
@ -137,7 +137,7 @@ void SkiaPackedSurfaceAtlasManager::CreateNewSurface()
|
|||
std::unique_ptr<PackedSurface> pPackedSurface(
|
||||
new PackedSurface(mnSurfaceWidth, mnSurfaceHeight));
|
||||
maPackedSurfaces.push_back(std::move(pPackedSurface));
|
||||
SAL_INFO("vcl.skia",
|
||||
SAL_INFO("vcl.skia.trace",
|
||||
"SkiaPackedSurfaceAtlas adding surface, count: " << maPackedSurfaces.size());
|
||||
}
|
||||
|
||||
|
@ -166,7 +166,7 @@ SkiaPackedSurfaceAtlasManager::ReduceSurfaceNumber(int nMaxNumberOfSurfaces)
|
|||
// Remove oldest created surface
|
||||
aSurfaces.push_back(maPackedSurfaces[0]->mpSurface);
|
||||
maPackedSurfaces.erase(maPackedSurfaces.begin());
|
||||
SAL_INFO("vcl.skia",
|
||||
SAL_INFO("vcl.skia.trace",
|
||||
"PackedSurfaceAtlas removing surface, count: " << maPackedSurfaces.size());
|
||||
}
|
||||
return aSurfaces;
|
||||
|
|
|
@ -62,7 +62,7 @@ SkiaSalBitmap::SkiaSalBitmap(const sk_sp<SkImage>& image)
|
|||
#ifdef DBG_UTIL
|
||||
mWriteAccessCount = 0;
|
||||
#endif
|
||||
SAL_INFO("vcl.skia", "bitmapfromimage(" << this << ")");
|
||||
SAL_INFO("vcl.skia.trace", "bitmapfromimage(" << this << ")");
|
||||
}
|
||||
|
||||
bool SkiaSalBitmap::Create(const Size& rSize, sal_uInt16 nBitCount, const BitmapPalette& rPal)
|
||||
|
@ -84,7 +84,7 @@ bool SkiaSalBitmap::Create(const Size& rSize, sal_uInt16 nBitCount, const Bitmap
|
|||
mPalette = BitmapPalette();
|
||||
return false;
|
||||
}
|
||||
SAL_INFO("vcl.skia", "create(" << this << ")");
|
||||
SAL_INFO("vcl.skia.trace", "create(" << this << ")");
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -160,7 +160,7 @@ bool SkiaSalBitmap::Create(const SalBitmap& rSalBmp, sal_uInt16 nNewBitCount)
|
|||
mBitmap.reset();
|
||||
mBuffer.reset();
|
||||
}
|
||||
SAL_INFO("vcl.skia", "create(" << this << "): (" << &src << ")");
|
||||
SAL_INFO("vcl.skia.trace", "create(" << this << "): (" << &src << ")");
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -172,7 +172,7 @@ bool SkiaSalBitmap::Create(const css::uno::Reference<css::rendering::XBitmapCanv
|
|||
|
||||
void SkiaSalBitmap::Destroy()
|
||||
{
|
||||
SAL_INFO("vcl.skia", "destroy(" << this << ")");
|
||||
SAL_INFO("vcl.skia.trace", "destroy(" << this << ")");
|
||||
#ifdef DBG_UTIL
|
||||
assert(mWriteAccessCount == 0);
|
||||
#endif
|
||||
|
@ -294,8 +294,8 @@ bool SkiaSalBitmap::Scale(const double& rScaleX, const double& rScaleY, BmpScale
|
|||
if (mSize == newSize)
|
||||
return true;
|
||||
|
||||
SAL_INFO("vcl.skia", "scale(" << this << "): " << mSize << "->" << newSize << ":"
|
||||
<< static_cast<int>(nScaleFlag));
|
||||
SAL_INFO("vcl.skia.trace", "scale(" << this << "): " << mSize << "->" << newSize << ":"
|
||||
<< static_cast<int>(nScaleFlag));
|
||||
|
||||
SkPaint paint;
|
||||
switch (nScaleFlag)
|
||||
|
@ -437,7 +437,7 @@ const sk_sp<SkImage>& SkiaSalBitmap::GetSkImage() const
|
|||
paint.setBlendMode(SkBlendMode::kSrc); // set as is, including alpha
|
||||
surface->getCanvas()->drawBitmap(GetAsSkBitmap(), 0, 0, &paint);
|
||||
const_cast<sk_sp<SkImage>&>(mImage) = surface->makeImageSnapshot();
|
||||
SAL_INFO("vcl.skia", "getskimage(" << this << ")");
|
||||
SAL_INFO("vcl.skia.trace", "getskimage(" << this << ")");
|
||||
return mImage;
|
||||
}
|
||||
|
||||
|
@ -505,7 +505,7 @@ const sk_sp<SkImage>& SkiaSalBitmap::GetAlphaSkImage() const
|
|||
paint.setBlendMode(SkBlendMode::kSrc); // set as is, including alpha
|
||||
surface->getCanvas()->drawBitmap(alphaBitmap, 0, 0, &paint);
|
||||
const_cast<sk_sp<SkImage>&>(mAlphaImage) = surface->makeImageSnapshot();
|
||||
SAL_INFO("vcl.skia", "getalphaskbitmap(" << this << ")");
|
||||
SAL_INFO("vcl.skia.trace", "getalphaskbitmap(" << this << ")");
|
||||
return mAlphaImage;
|
||||
}
|
||||
|
||||
|
@ -577,7 +577,7 @@ void SkiaSalBitmap::EnsureBitmapData()
|
|||
}
|
||||
}
|
||||
verify();
|
||||
SAL_INFO("vcl.skia", "ensurebitmapdata(" << this << ")");
|
||||
SAL_INFO("vcl.skia.trace", "ensurebitmapdata(" << this << ")");
|
||||
}
|
||||
|
||||
void SkiaSalBitmap::EnsureBitmapUniqueData()
|
||||
|
|
Loading…
Reference in a new issue