Bug 718809 - Use TransformBounds in TransformGfxRectToAncestor. r=roc

This commit is contained in:
Matt Woodrow 2012-01-23 14:07:37 +13:00
Родитель 847cb9dd49
Коммит a087a69f77
3 изменённых файлов: 30 добавлений и 1 удалений

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

@ -1245,7 +1245,7 @@ TransformGfxRectToAncestor(nsIFrame *aFrame,
nsIFrame *aAncestor)
{
gfx3DMatrix ctm = nsLayoutUtils::GetTransformToAncestor(aFrame, aAncestor);
return ctm.ProjectRectBounds(aRect);
return ctm.TransformBounds(aRect);
}
nsPoint

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

@ -181,6 +181,7 @@ _TEST_FILES = \
test_bug603550.html \
test_bug629838.html \
test_bug646757.html \
test_bug718809.html \
test_font_inflation_reftests.html \
$(NULL)

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

@ -0,0 +1,28 @@
<!DOCTYPE HTML>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=718809
-->
<head>
<title>Test for Bug 718809</title>
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
</head>
<body style=margin:0>
<div style="background:blue;height:50px;width:100px; -moz-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 10, 1); -moz-transform-origin:0 0"></div>
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=718809">Mozilla Bug 718809</a>
</div>
<pre id="test">
<script class="testbody" type="text/javascript">
var rect = document.querySelector("div").getBoundingClientRect();
is(rect.top, 0, "Incorrect bounding rect");
is(rect.left, 0, "Incorrect bounding rect");
is(rect.right, 100, "Incorrect bounding rect");
is(rect.bottom, 50, "Incorrect bounding rect");
</script>
</pre>
</body>
</html>