Index: LayoutTests/fast/regions/regions-widows-and-orphans.html |
diff --git a/LayoutTests/fast/regions/regions-widows-and-orphans.html b/LayoutTests/fast/regions/regions-widows-and-orphans.html |
deleted file mode 100644 |
index b54afa535f9dc1c25a2ddf8556d70717d99b66f3..0000000000000000000000000000000000000000 |
--- a/LayoutTests/fast/regions/regions-widows-and-orphans.html |
+++ /dev/null |
@@ -1,210 +0,0 @@ |
-<!DOCTYPE html> |
-<html> |
-<head> |
-<title>Testing Widows and Orphans</title> |
-<script src="../../resources/js-test.js"></script> |
-<style> |
-body.hide-containers .container, body.hide-containers h3 { |
- display: none; |
-} |
- |
-.region { |
- height: 200px; |
- -webkit-region-fragment: break; |
- display: inline-block; |
-} |
- |
-.region0 { |
- width: 150px; |
-} |
- |
-.region1 { |
- width: 200px; |
-} |
- |
-.region2 { |
- width: 150px; |
-} |
- |
-.container { |
- width: 600px; |
- height: 200px; |
- line-height: 20px; /* 10 lines per page */ |
- font-size: 16px; |
- margin: 0 0 20px 0; |
- padding: 0; |
- overflow: hidden; |
-} |
- |
-.block { |
- margin: 0 0 15px 0; |
- padding: 0; |
-} |
- |
-.top { |
- color: red; |
-} |
- |
-.bottom { |
- color: green; |
-} |
-</style> |
-<script> |
- |
-description("Testing widows and orphans. Any green lines should be at the bottom of regions, and any red lines should be at the top of regions."); |
- |
-if (window.testRunner) |
- testRunner.dumpAsText(); |
- |
-function createRegions(id, container) |
-{ |
- for (var i = 0; i < 3; ++i) { |
- var element = document.createElement("div"); |
- element.className = "region region" + i; |
- element.style.webkitFlowFrom = id; |
- |
- container.appendChild(element); |
- } |
-} |
- |
-function createTestContainer(id, description, blocks) |
-{ |
- var label = document.createElement("h3"); |
- label.textContent = id + " - " + description; |
- document.body.appendChild(label); |
- var element = document.createElement("div"); |
- element.className = "container"; |
- element.id = id; |
- |
- createRegions(id, element); |
- |
- for (var i = 1; i <= blocks.length; ++i) { |
- var block = document.createElement("div"); |
- block.className = "block"; |
- var numLines = blocks[i-1]; |
- for (var j = 1; j <= numLines; ++j) { |
- var line = document.createElement("span"); |
- line.id = id + "-block-" + i + "-line-" + j; |
- line.textContent = "Block " + i + " Line " + j; |
- block.appendChild(line); |
- block.appendChild(document.createElement("br")); |
- } |
- block.style.webkitFlowInto = id; |
- element.appendChild(block); |
- } |
- document.body.appendChild(element); |
- return element; |
-} |
- |
-function markTopLine(containerId, blockNumber, lineNumber) |
-{ |
- var element = document.getElementById(containerId + "-block-" + blockNumber + "-line-" + lineNumber); |
- element.className = "top"; |
-} |
- |
-function markBottomLine(containerId, blockNumber, lineNumber) |
-{ |
- var element = document.getElementById(containerId + "-block-" + blockNumber + "-line-" + lineNumber); |
- element.className = "bottom"; |
-} |
- |
-function testIsFirstInRegion(containerId, blockNumber, lineNumber) |
-{ |
- var topOfContainer = document.getElementById(containerId).getBoundingClientRect().top; |
- var topOfLine = document.getElementById(containerId + "-block-" + blockNumber + "-line-" + lineNumber).getBoundingClientRect().top; |
- |
- if (Math.abs(topOfContainer - topOfLine) < 5) // Give 5 pixels to account for subpixel layout. |
- testPassed(containerId + " Block " + blockNumber + " Line " + lineNumber + " is correct."); |
- else |
- testFailed(containerId + " Block " + blockNumber + " Line " + lineNumber + " wasn't at the top of the region."); |
-} |
- |
-function runTest() |
-{ |
- var container; |
- |
- createTestContainer("test1", "Normal breaking", [5, 6, 5, 5]); |
- |
- markTopLine("test1", 1, 1); |
- markBottomLine("test1", 2, 4); |
- markTopLine("test1", 2, 5); |
- markBottomLine("test1", 4, 1); |
- markTopLine("test1", 4, 2); |
- |
- testIsFirstInRegion("test1", 1, 1); |
- testIsFirstInRegion("test1", 2, 5); |
- testIsFirstInRegion("test1", 4, 2); |
- |
- container = createTestContainer("test2", "Basic Orphan", [8, 6]); |
- container.style.orphans = 2; |
- |
- markTopLine("test2", 1, 1); |
- markBottomLine("test2", 1, 8); // Orphan break happens here. |
- markTopLine("test2", 2, 1); |
- |
- testIsFirstInRegion("test2", 1, 1); |
- testIsFirstInRegion("test2", 2, 1); |
- |
- container = createTestContainer("test3", "Basic Widow", [4, 6, 3]); |
- container.style.widows = 2; |
- |
- markTopLine("test3", 1, 1); |
- markBottomLine("test3", 2, 4); // Widow break happens here. |
- markTopLine("test3", 2, 5); |
- |
- testIsFirstInRegion("test3", 1, 1); |
- testIsFirstInRegion("test3", 2, 5); |
- |
- container = createTestContainer("test4", "Orphans causing Widows", [8, 6, 4, 4]); |
- container.style.orphans = 2; |
- container.style.widows = 2; |
- |
- markTopLine("test4", 1, 1); |
- markBottomLine("test4", 1, 8); // Orphan break happens here. |
- markTopLine("test4", 2, 1); |
- markBottomLine("test4", 3, 2); // And that creates a widow forcing a break here. |
- markTopLine("test4", 3, 3); |
- |
- testIsFirstInRegion("test4", 1, 1); |
- testIsFirstInRegion("test4", 2, 1); |
- testIsFirstInRegion("test4", 3, 3); |
- |
- container = createTestContainer("test5", "Widows blocked by Orphan rule", [7, 3, 4]); |
- container.style.orphans = 2; |
- container.style.widows = 2; |
- |
- markTopLine("test5", 1, 1); |
- markBottomLine("test5", 2, 2); // This line should not move - protected by orphaning. |
- markTopLine("test5", 2, 3); // This line won't be un-widowed - blocked by orphaning. |
- |
- testIsFirstInRegion("test5", 1, 1); |
- testIsFirstInRegion("test5", 2, 3); |
- |
- container = createTestContainer("test6", "Ridiculous values", [7, 7, 7, 7]); |
- container.style.orphans = 100; |
- container.style.widows = 100; |
- |
- markTopLine("test6", 1, 1); |
- markBottomLine("test6", 1, 7); // Orphan break happens here. |
- markTopLine("test6", 2, 1); // Adopted. |
- markBottomLine("test6", 2, 7); // Orphan break. |
- markTopLine("test6", 3, 1); // Adopted. |
- |
- testIsFirstInRegion("test6", 1, 1); |
- testIsFirstInRegion("test6", 2, 1); |
- testIsFirstInRegion("test6", 3, 1); |
- |
- if (window.testRunner) { |
- // Hide all the containers and leave just the test results for text output. |
- document.body.className = "hide-containers"; |
- } |
- |
- isSuccessfullyParsed(); |
-} |
- |
-window.addEventListener("load", runTest, false); |
-</script> |
-</head> |
-<body> |
-</body> |
-</html> |