зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1058040, part 14 - Have nsImageBoxFrame pass context paint to VectorImage. r=dholbert
This commit is contained in:
Родитель
6bb704eb39
Коммит
33ff412f21
|
@ -52,6 +52,7 @@
|
||||||
#include "mozilla/EventDispatcher.h"
|
#include "mozilla/EventDispatcher.h"
|
||||||
#include "mozilla/Maybe.h"
|
#include "mozilla/Maybe.h"
|
||||||
#include "SVGImageContext.h"
|
#include "SVGImageContext.h"
|
||||||
|
#include "Units.h"
|
||||||
|
|
||||||
#define ONLOAD_CALLED_TOO_EARLY 1
|
#define ONLOAD_CALLED_TOO_EARLY 1
|
||||||
|
|
||||||
|
@ -404,13 +405,19 @@ nsImageBoxFrame::PaintImage(nsRenderingContext& aRenderingContext,
|
||||||
anchorPoint.ptr());
|
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(
|
return nsLayoutUtils::DrawSingleImage(
|
||||||
*aRenderingContext.ThebesContext(),
|
*aRenderingContext.ThebesContext(),
|
||||||
PresContext(), imgCon,
|
PresContext(), imgCon,
|
||||||
nsLayoutUtils::GetSamplingFilterForFrame(this),
|
nsLayoutUtils::GetSamplingFilterForFrame(this),
|
||||||
dest, dirty,
|
dest, dirty,
|
||||||
/* no SVGImageContext */ Nothing(), aFlags,
|
svgContext, aFlags,
|
||||||
anchorPoint.ptrOr(nullptr),
|
anchorPoint.ptrOr(nullptr),
|
||||||
hasSubRect ? &mSubRect : nullptr);
|
hasSubRect ? &mSubRect : nullptr);
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче