Bug 1058040, part 14 - Have nsImageBoxFrame pass context paint to VectorImage. r=dholbert

This commit is contained in:
Jonathan Watt 2017-02-03 22:21:29 +00:00
Родитель 6bb704eb39
Коммит 33ff412f21
1 изменённых файлов: 8 добавлений и 1 удалений

Просмотреть файл

@ -52,6 +52,7 @@
#include "mozilla/EventDispatcher.h"
#include "mozilla/Maybe.h"
#include "SVGImageContext.h"
#include "Units.h"
#define ONLOAD_CALLED_TOO_EARLY 1
@ -404,13 +405,19 @@ nsImageBoxFrame::PaintImage(nsRenderingContext& aRenderingContext,
anchorPoint.ptr());
}
Maybe<SVGImageContext> svgContext;
if (imgCon->GetType() == imgIContainer::TYPE_VECTOR) {
// We avoid this overhead for raster images.
svgContext.emplace();
svgContext->MaybeStoreContextPaint(this);
}
return nsLayoutUtils::DrawSingleImage(
*aRenderingContext.ThebesContext(),
PresContext(), imgCon,
nsLayoutUtils::GetSamplingFilterForFrame(this),
dest, dirty,
/* no SVGImageContext */ Nothing(), aFlags,
svgContext, aFlags,
anchorPoint.ptrOr(nullptr),
hasSubRect ? &mSubRect : nullptr);
}