зеркало из https://github.com/mozilla/gecko-dev.git
Backed out changeset 61d064c78aa2 (bug 1311244)
This commit is contained in:
Родитель
5b0976bcc2
Коммит
ee7d4daa84
|
@ -8,9 +8,6 @@
|
|||
|
||||
#include <cstdlib>
|
||||
|
||||
#include "nsCSSRendering.h"
|
||||
#include "nsStyleStruct.h"
|
||||
|
||||
namespace mozilla {
|
||||
|
||||
nscoord
|
||||
|
@ -33,16 +30,4 @@ ShapeUtils::ComputeShapeRadius(const StyleShapeRadius aType,
|
|||
return length;
|
||||
}
|
||||
|
||||
nsPoint
|
||||
ShapeUtils::ComputeCircleOrEllipseCenter(StyleBasicShape* const aBasicShape,
|
||||
const nsRect& aRefBox)
|
||||
{
|
||||
nsPoint topLeft, anchor;
|
||||
nsSize size(aRefBox.Size());
|
||||
nsImageRenderer::ComputeObjectAnchorPoint(aBasicShape->GetPosition(),
|
||||
size, size,
|
||||
&topLeft, &anchor);
|
||||
return nsPoint(anchor.x + aRefBox.x, anchor.y + aRefBox.y);
|
||||
}
|
||||
|
||||
} // namespace mozilla
|
||||
|
|
|
@ -10,11 +10,7 @@
|
|||
#include "nsCoord.h"
|
||||
#include "nsStyleConsts.h"
|
||||
|
||||
struct nsPoint;
|
||||
struct nsRect;
|
||||
|
||||
namespace mozilla {
|
||||
class StyleBasicShape;
|
||||
|
||||
// ShapeUtils is a namespace class containing utility functions related to
|
||||
// processing basic shapes in the CSS Shapes Module.
|
||||
|
@ -32,14 +28,6 @@ struct ShapeUtils final
|
|||
const nscoord aCenter,
|
||||
const nscoord aPosMin,
|
||||
const nscoord aPosMax);
|
||||
|
||||
// Compute the center of a circle or an ellipse.
|
||||
//
|
||||
// @param aRefBox The reference box of the basic shape.
|
||||
// @return The point of the center.
|
||||
static nsPoint ComputeCircleOrEllipseCenter(
|
||||
StyleBasicShape* const aBasicShape,
|
||||
const nsRect& aRefBox);
|
||||
};
|
||||
|
||||
} // namespace mozilla
|
||||
|
|
|
@ -113,8 +113,12 @@ nsCSSClipPathInstance::CreateClipPathCircle(DrawTarget* aDrawTarget,
|
|||
|
||||
RefPtr<PathBuilder> builder = aDrawTarget->CreatePathBuilder();
|
||||
|
||||
nsPoint center =
|
||||
ShapeUtils::ComputeCircleOrEllipseCenter(basicShape, aRefBox);
|
||||
nsPoint topLeft, anchor;
|
||||
nsSize size = nsSize(aRefBox.width, aRefBox.height);
|
||||
nsImageRenderer::ComputeObjectAnchorPoint(basicShape->GetPosition(),
|
||||
size, size,
|
||||
&topLeft, &anchor);
|
||||
nsPoint center(anchor.x + aRefBox.x, anchor.y + aRefBox.y);
|
||||
|
||||
const nsTArray<nsStyleCoord>& coords = basicShape->Coordinates();
|
||||
MOZ_ASSERT(coords.Length() == 1, "wrong number of arguments");
|
||||
|
@ -159,8 +163,12 @@ nsCSSClipPathInstance::CreateClipPathEllipse(DrawTarget* aDrawTarget,
|
|||
|
||||
RefPtr<PathBuilder> builder = aDrawTarget->CreatePathBuilder();
|
||||
|
||||
nsPoint center =
|
||||
ShapeUtils::ComputeCircleOrEllipseCenter(basicShape, aRefBox);
|
||||
nsPoint topLeft, anchor;
|
||||
nsSize size = nsSize(aRefBox.width, aRefBox.height);
|
||||
nsImageRenderer::ComputeObjectAnchorPoint(basicShape->GetPosition(),
|
||||
size, size,
|
||||
&topLeft, &anchor);
|
||||
nsPoint center(anchor.x + aRefBox.x, anchor.y + aRefBox.y);
|
||||
|
||||
const nsTArray<nsStyleCoord>& coords = basicShape->Coordinates();
|
||||
MOZ_ASSERT(coords.Length() == 2, "wrong number of arguments");
|
||||
|
|
Загрузка…
Ссылка в новой задаче