Skip to content

Commit

Permalink
Bug 1562278. Forward more methods of DrawTargetOffset. r=mstange
Browse files Browse the repository at this point in the history
This lets us avoid falling back to the generic implementations
unnecessarily.

Differential Revision: https://phabricator.services.mozilla.com/D36357
  • Loading branch information
jrmuizel committed Jun 28, 2019
1 parent fdde4fd commit c4663ab
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 0 deletions.
10 changes: 10 additions & 0 deletions gfx/2d/DrawTargetOffset.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,16 @@ OFFSET_COMMAND4(MaskSurface, const Pattern&, SourceSurface*, Point,
const DrawOptions&)
OFFSET_COMMAND4(FillGlyphs, ScaledFont*, const GlyphBuffer&, const Pattern&,
const DrawOptions&)
OFFSET_COMMAND5(StrokeGlyphs, ScaledFont*, const GlyphBuffer&, const Pattern&,
const StrokeOptions&, const DrawOptions&)
OFFSET_COMMAND3(FillRoundedRect, const RoundedRect&, const Pattern&,
const DrawOptions&)

bool DrawTargetOffset::Draw3DTransformedSurface(SourceSurface *aSrc,
const Matrix4x4& aMatrix) {
return mDrawTarget->Draw3DTransformedSurface(aSrc, aMatrix);
}

OFFSET_COMMAND3(Mask, const Pattern&, const Pattern&, const DrawOptions&)

void DrawTargetOffset::DrawFilter(FilterNode* aNode, const Rect& aSourceRect,
Expand Down
9 changes: 9 additions & 0 deletions gfx/2d/DrawTargetOffset.h
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,9 @@ class DrawTargetOffset : public DrawTarget {

virtual void FillRect(const Rect& aRect, const Pattern& aPattern,
const DrawOptions& aOptions = DrawOptions()) override;
virtual void FillRoundedRect(const RoundedRect& aRect,
const Pattern& aPattern,
const DrawOptions& aOptions = DrawOptions()) override;
virtual void StrokeRect(const Rect& aRect, const Pattern& aPattern,
const StrokeOptions& aStrokeOptions = StrokeOptions(),
const DrawOptions& aOptions = DrawOptions()) override;
Expand All @@ -110,6 +113,10 @@ class DrawTargetOffset : public DrawTarget {
virtual void FillGlyphs(ScaledFont* aFont, const GlyphBuffer& aBuffer,
const Pattern& aPattern,
const DrawOptions& aOptions = DrawOptions()) override;
virtual void StrokeGlyphs(ScaledFont* aFont, const GlyphBuffer& aBuffer,
const Pattern& aPattern,
const StrokeOptions& aStrokeOptions = StrokeOptions(),
const DrawOptions& aOptions = DrawOptions()) override;
virtual void Mask(const Pattern& aSource, const Pattern& aMask,
const DrawOptions& aOptions = DrawOptions()) override;
virtual void PushClip(const Path* aPath) override;
Expand All @@ -124,6 +131,8 @@ class DrawTargetOffset : public DrawTarget {
const Matrix& aMaskTransform, const IntRect& aBounds = IntRect(),
bool aCopyBackground = false,
CompositionOp = CompositionOp::OP_OVER) override;
virtual bool Draw3DTransformedSurface(SourceSurface* aSurface,
const Matrix4x4& aMatrix) override;
virtual void PopLayer() override;

virtual void SetTransform(const Matrix& aTransform) override;
Expand Down

0 comments on commit c4663ab

Please sign in to comment.