Avoid synchronous style recalc when mutating a Node inside FrameSelection.
[WebKit-https.git] / LayoutTests / platform / mac-wk2 / accessibility / content-inset-scrollview-frame.html
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
2 <html>
3 <head>
4 <script src="../../../resources/js-test-pre.js"></script>
5 </head>
6 <body id="body">
7
8 <p id="description"></p>
9 <div id="console"></div>
10
11 <script>
12
13     description("This tests that a page with a content inset will not affect the bounds of the main frame scroll view. It will appear as the same as the web area's sbounds");
14
15     if (window.accessibilityController) {
16         var webArea = accessibilityController.rootElement.childAtIndex(0);
17         var webX = webArea.x;
18         var webY = webArea.y - webArea.height;
19
20         var scrollView = webArea.parentElement();
21         var scrollViewX = scrollView.x;
22         // to get what the y that we're expecting, we need to subtract the height, because Cocoa requires the bottom point to be consider the y origin.
23         var scrollViewY = scrollView.y - scrollView.height;
24         var scrollViewHeight = scrollView.height;  
25
26         debug("The position of the web area and the scroll view should be the same when there's no content inset");
27         shouldBeTrue("webX == scrollViewX && webY == scrollViewY");
28         debug("\n");
29  
30         window.internals.setTopContentInset(100);
31
32         var newScrollViewHeight = scrollView.height;
33         var newScrollViewY =  scrollView.y - scrollView.height;
34         debug("After setting the content inset, the new y position should be less than the initial");
35         shouldBe("newScrollViewY - scrollViewY", "100")
36         debug("\n");
37
38         debug("The content inset also reduces the height of the scroll view, which should be reflected here.");
39         shouldBeTrue("scrollViewHeight > newScrollViewHeight");
40         debug("\n");
41     }
42 </script>
43
44 <script src="../../../resources/js-test-post.js"></script>
45 </body>
46 </html>