Backed out changeset 31ebee098292 (bug 1655398) for wpt failure on client-props-root.html . CLOSED TREE

This commit is contained in:
Narcis Beleuzu 2020-07-28 03:49:28 +03:00
Родитель d2ab5ee1a5
Коммит 6f07a2d9b7
2 изменённых файлов: 2 добавлений и 33 удалений

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

@ -860,10 +860,8 @@ nsRect Element::GetClientAreaRect() {
MOZ_ASSERT(frame);
nsRect scrollPort = sf->GetScrollPortRect();
nsIFrame* scrollableAsFrame = do_QueryFrame(sf);
// We want the offset to be relative to `frame`, not `sf`... Except for the
// root scroll frame, which is an ancestor of frame rather than a descendant
// and thus this wouldn't particularly make sense.
if (frame != scrollableAsFrame && !sf->IsRootScrollFrameOfDocument()) {
if (frame != scrollableAsFrame) {
// We want the offset to be relative to `frame`, not `sf`.
scrollPort.MoveBy(scrollableAsFrame->GetOffsetTo(frame));
}
// The scroll port value might be expanded to the minimum scale size, we

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

@ -1,29 +0,0 @@
<!doctype html>
<title>client* on the scrolling element</title>
<link rel="help" href="https://drafts.csswg.org/cssom-view/#extension-to-the-element-interface">
<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1654769">
<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
<link rel="author" title="Mozilla" href="https://mozilla.org">
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<style>
:root {
/* Ensure the width of the root element's box is smaller than the viewport. */
margin: 5px;
/* Remove the scrollbars so that we can test {Width, Height}. */
scrollbar-width: none;
/* Would love to add a border but https://github.com/w3c/csswg-drafts/issues/5363 */
}
</style>
<div style="height: 200vh; width: 200vw"></div>
<script>
test(function() {
scrollTo(100, 100);
assert_not_equals(window.scrollY, 0, "Should have scrolled vertically");
assert_not_equals(window.scrollX, 0, "Should have scrolled horizontally");
assert_equals(document.documentElement.clientTop, 0, "Client top doesn't depend on scrolling");
assert_equals(document.documentElement.clientLeft, 0, "Client left doesn't depend on scrolling");
assert_equals(document.documentElement.clientWidth, window.innerWidth, "Without scrollbars, client width should match viewport width");
assert_equals(document.documentElement.clientHeight, window.innerHeight, "Without scrollbars, client height should match viewport height");
}, "client* properties on the root element");
</script>