Title: [116978] trunk
Revision
116978
Author
[email protected]
Date
2012-05-14 12:06:54 -0700 (Mon, 14 May 2012)

Log Message

Patch by Swapna P <[email protected]> on 2012-05-14
Reviewed by Eric Seidel.

Bug: Cannot resize frames because frameborder=0
https://bugs.webkit.org/show_bug.cgi?id=23750

Source/WebCore:

Removed check for frameborder, in order to allow resize of frames even in case of frameborder=0.

Test: fast/frames/frames-with-frameborder-zero-can-be-resized.html

* rendering/RenderFrameSet.cpp:
(WebCore::RenderFrameSet::startResizing):
(WebCore::RenderFrameSet::canResizeRow):
(WebCore::RenderFrameSet::canResizeColumn):

LayoutTests:

Added test case to test whether the frame can be resized when frameborder=0.

* fast/frames/frames-with-frameborder-zero-can-be-resized-expected.txt: Added.
* fast/frames/frames-with-frameborder-zero-can-be-resized.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (116977 => 116978)


--- trunk/LayoutTests/ChangeLog	2012-05-14 19:03:42 UTC (rev 116977)
+++ trunk/LayoutTests/ChangeLog	2012-05-14 19:06:54 UTC (rev 116978)
@@ -1,3 +1,15 @@
+2012-05-14  Swapna P  <[email protected]>
+
+        Reviewed by Eric Seidel.
+
+        Bug: Cannot resize frames because frameborder=0
+        https://bugs.webkit.org/show_bug.cgi?id=23750
+
+        Added test case to test whether the frame can be resized when frameborder=0.
+
+        * fast/frames/frames-with-frameborder-zero-can-be-resized-expected.txt: Added.
+        * fast/frames/frames-with-frameborder-zero-can-be-resized.html: Added.
+
 2012-05-14  Julien Chaffraix  <[email protected]>
 
         More gardening after r115846.

Added: trunk/LayoutTests/fast/frames/frames-with-frameborder-zero-can-be-resized-expected.txt (0 => 116978)


--- trunk/LayoutTests/fast/frames/frames-with-frameborder-zero-can-be-resized-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/fast/frames/frames-with-frameborder-zero-can-be-resized-expected.txt	2012-05-14 19:06:54 UTC (rev 116978)
@@ -0,0 +1,21 @@
+
+
+--------
+Frame: 'One'
+--------
+
+
+--------
+Frame: 'Two'
+--------
+
+
+--------
+Frame: 'Three'
+--------
+
+This tests that frames with frameborder=0 can be resized. See WebKit Bug 23750. On success, two 'PASS' messages will be shown below.
+
+PASS: One resized correctly
+PASS: Two resized correctly
+

Added: trunk/LayoutTests/fast/frames/frames-with-frameborder-zero-can-be-resized.html (0 => 116978)


--- trunk/LayoutTests/fast/frames/frames-with-frameborder-zero-can-be-resized.html	                        (rev 0)
+++ trunk/LayoutTests/fast/frames/frames-with-frameborder-zero-can-be-resized.html	2012-05-14 19:06:54 UTC (rev 116978)
@@ -0,0 +1,67 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN">
+<html>
+    <head>
+        <script>
+            function log(frame, success, isWidth, size) {
+                if (window.layoutTestController) {
+                    document.getElementById("results").contentDocument.getElementById("console").appendChild(document.createTextNode((success ? "PASS: " : "FAIL: ") + frame.name + " resized correctly\n"));
+                } else {
+                    frame.document.close();
+                    if (success)
+                        frame.document.write('<p>Success!</p>');
+                    else {
+                        frame.document.write('<p>Resize until ');
+                        frame.document.write(isWidth ? 'width:' : 'height:');
+                        frame.document.write(isWidth ? frame.frameElement.width : frame.frameElement.height);
+                        frame.document.write(' = ' + size + '</p>');
+                    }
+                }
+            }
+
+            function checkProgress() {
+                if (!window.layoutTestController) {
+                    checkSuccess();
+                }
+            }
+
+            function run() {
+                if (window.layoutTestController) {
+                    layoutTestController.dumpAsText();
+                    layoutTestController.dumpChildFramesAsText();
+
+                    document.getElementById("results").contentDocument.getElementById("description").innerText = "\nThis tests that frames with frameborder=0 can be resized. See WebKit Bug 23750. On success, two 'PASS' messages will be shown below.";
+
+                    // Move the One/* vertical resizer ten pixels west.
+                    eventSender.mouseMoveTo(90, 400);
+                    eventSender.mouseDown();
+                    eventSender.mouseMoveTo(100, 400);
+                    eventSender.mouseUp();
+
+                    // Move the Two/Three horizontal resizer ten pixels south.
+                    eventSender.mouseMoveTo(400, 70);
+                    eventSender.mouseDown();
+                    eventSender.mouseMoveTo(400, 80);
+                    eventSender.mouseUp();
+
+                    checkSuccess();
+                } else {
+                    checkProgress();
+                }
+            }
+
+            function checkSuccess() {
+                log(One, One.frameElement.width == 100, true, 100)
+                log(Two, Two.frameElement.height == 80, false, 80)
+            }
+
+            window._onload_ = run;
+        </script>
+    </head>
+        <frameset cols="90,*" _onmousemove_="checkProgress()" _onmouseup_="checkProgress()" _onmousedown_="checkProgress()">
+            <frame frameborder=0 name="One" style="border-right: 2px solid green;"></frame>
+            <frameset rows="70,*" _onmousemove_="checkProgress()" _onmouseup_="checkProgress()" _onmousedown_="checkProgress()">
+                <frame frameborder=0 name="Two" style="border-bottom: 2px solid green;"></frame>
+                <frame id="results" frameborder=0 name="Three" src="" bgcolor='gray'> <p id='description'>To resize frames drag the top or left of this frame </p><pre id='console'></pre></body>"></frame>
+            </frameset>
+        </frameset>
+</html>

Modified: trunk/Source/WebCore/ChangeLog (116977 => 116978)


--- trunk/Source/WebCore/ChangeLog	2012-05-14 19:03:42 UTC (rev 116977)
+++ trunk/Source/WebCore/ChangeLog	2012-05-14 19:06:54 UTC (rev 116978)
@@ -1,3 +1,19 @@
+2012-05-14  Swapna P  <[email protected]>
+
+        Reviewed by Eric Seidel.
+
+        Bug: Cannot resize frames because frameborder=0
+        https://bugs.webkit.org/show_bug.cgi?id=23750
+
+        Removed check for frameborder, in order to allow resize of frames even in case of frameborder=0.
+
+        Test: fast/frames/frames-with-frameborder-zero-can-be-resized.html
+
+        * rendering/RenderFrameSet.cpp:
+        (WebCore::RenderFrameSet::startResizing):
+        (WebCore::RenderFrameSet::canResizeRow):
+        (WebCore::RenderFrameSet::canResizeColumn):
+
 2012-05-14  David Barton  <[email protected]>
 
         Unify RenderMathMLSquareRoot.cpp and RenderMathMLRoot.cpp

Modified: trunk/Source/WebCore/rendering/RenderFrameSet.cpp (116977 => 116978)


--- trunk/Source/WebCore/rendering/RenderFrameSet.cpp	2012-05-14 19:03:42 UTC (rev 116977)
+++ trunk/Source/WebCore/rendering/RenderFrameSet.cpp	2012-05-14 19:06:54 UTC (rev 116978)
@@ -667,7 +667,7 @@
 void RenderFrameSet::startResizing(GridAxis& axis, int position)
 {
     int split = hitTestSplit(axis, position);
-    if (split == noSplit || !axis.m_allowBorder[split] || axis.m_preventResize[split]) {
+    if (split == noSplit || axis.m_preventResize[split]) {
         axis.m_splitBeingResized = noSplit;
         return;
     }
@@ -746,13 +746,13 @@
 bool RenderFrameSet::canResizeRow(const IntPoint& p) const
 {
     int r = hitTestSplit(m_rows, p.y());
-    return r != noSplit && m_rows.m_allowBorder[r] && !m_rows.m_preventResize[r];
+    return r != noSplit && !m_rows.m_preventResize[r];
 }
 
 bool RenderFrameSet::canResizeColumn(const IntPoint& p) const
 {
     int c = hitTestSplit(m_cols, p.x());
-    return c != noSplit && m_cols.m_allowBorder[c] && !m_cols.m_preventResize[c];
+    return c != noSplit && !m_cols.m_preventResize[c];
 }
 
 int RenderFrameSet::splitPosition(const GridAxis& axis, int split) const
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to