[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.19-706-ge5415e9
dbates at webkit.org
dbates at webkit.org
Thu Feb 4 21:22:33 UTC 2010
The following commit has been merged in the webkit-1.1 branch:
commit 1feb1acb8febcc752edad6af40f72e47971357f8
Author: dbates at webkit.org <dbates at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Thu Jan 21 02:31:21 2010 +0000
2010-01-20 Daniel Bates <dbates at webkit.org>
Reviewed by Tor Arne Vestbø.
https://bugs.webkit.org/show_bug.cgi?id=29564
[Qt] Fixes an issue where the height of <button>- and
<input type="button">- elements are fixed to the height of the
button label font plus padding. That is, the CSS height property
is being ignored.
Instead, we should honor the user-specified height, if appropriate
for the platform and context. Notice, the Mac ports do not honor the
height for <input type="button"> elements unless a border and/or
background is also specified.
Test: fast/css/button-height.html
* platform/qt/RenderThemeQt.cpp:
(WebCore::RenderThemeQt::RenderThemeQt):
(WebCore::RenderThemeQt::adjustButtonStyle):
2010-01-20 Daniel Bates <dbates at webkit.org>
Reviewed by Tor Arne Vestbø.
https://bugs.webkit.org/show_bug.cgi?id=29564
Tests that the user-specified height for <button>- and <input type="button">-
elements are honored, if appropriate for the platform and context.
* fast/css/button-height-expected.txt: Added.
* fast/css/button-height.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@53591 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 654c27c..881a97c 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,15 @@
+2010-01-20 Daniel Bates <dbates at webkit.org>
+
+ Reviewed by Tor Arne Vestbø.
+
+ https://bugs.webkit.org/show_bug.cgi?id=29564
+
+ Tests that the user-specified height for <button>- and <input type="button">-
+ elements are honored, if appropriate for the platform and context.
+
+ * fast/css/button-height-expected.txt: Added.
+ * fast/css/button-height.html: Added.
+
2010-01-20 Brady Eidson <beidson at apple.com>
Reviewed by Sam Weinig.
diff --git a/LayoutTests/fast/css/button-height-expected.txt b/LayoutTests/fast/css/button-height-expected.txt
new file mode 100644
index 0000000..3f3b68e
--- /dev/null
+++ b/LayoutTests/fast/css/button-height-expected.txt
@@ -0,0 +1,13 @@
+This tests that the specified height is honored (*) for <input> and <button> elements.
+(*) The Mac ports ignore the specified height for <input type="button"> elements unless a border and/or background CSS property is also specified (see the fifth button below). Disregarding padding, they render the button with a height equal to the height of the font used for the button label.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS document.getElementById('button1').offsetHeight is document.getElementById('button2').offsetHeight
+PASS document.getElementById('button3').offsetHeight is 40
+PASS document.getElementById('button4').offsetHeight is 40
+PASS document.getElementById('button5').offsetHeight is correct for this platform.
+
+TEST COMPLETE
+
diff --git a/LayoutTests/fast/css/button-height.html b/LayoutTests/fast/css/button-height.html
new file mode 100644
index 0000000..b08d2e0
--- /dev/null
+++ b/LayoutTests/fast/css/button-height.html
@@ -0,0 +1,56 @@
+<html>
+<head>
+<link rel="stylesheet" href="../js/resources/js-test-style.css">
+<script src="../js/resources/js-test-pre.js"></script>
+<style>
+#button3, #button5 { height: 40px; }
+#button4 { height: 40px; background-color: yellow; }
+</style>
+<script>
+if (window.layoutTestController)
+ layoutTestController.dumpAsText();
+
+window.onload = function()
+{
+ shouldBe("document.getElementById('button1').offsetHeight", "document.getElementById('button2').offsetHeight");
+ shouldEvaluateTo("document.getElementById('button3').offsetHeight", 40);
+ shouldEvaluateTo("document.getElementById('button4').offsetHeight", 40);
+
+ // Note, the expected height is the height of button 1 for the Mac ports, and 40 otherwise.
+ var expectedButton5Height = (navigator.platform.indexOf("Mac") !== -1) ? document.getElementById("button1").offsetHeight : 40;
+ if (document.getElementById('button5').offsetHeight == expectedButton5Height)
+ testPassed("document.getElementById('button5').offsetHeight is correct for this platform.");
+ else
+ testFailed("document.getElementById('button5').offsetHeight is incorrect for this platform. Should be the same height as button 1 for the Mac ports and 40 otherwise.");
+
+ if (window.layoutTestController) {
+ var testContainer = document.getElementById("test-container");
+ if (testContainer)
+ document.body.removeChild(testContainer);
+ }
+ debug('<br /><span class="pass">TEST COMPLETE</span>');
+}
+</script>
+</head>
+<body>
+<p id="description"></p>
+<div id="test-container">
+ <ol>
+ <li><input id="button1" type="button" value="unspecified height"/><p><strong>Expected height:</strong> height of button label font.</p></li>
+ <li><button id="button2">unspecified height</button><p><strong>Expected height:</strong> height of button label font.</p></li>
+ <li><button id="button3">height 40 pixels</button><p><strong>Expected height:</strong> 40 pixels.</p></li>
+ <li><input id="button4" type="button" value="height 40 pixels, background yellow"/><p><strong>Expected height:</strong> 40 pixels.</p></li>
+ <li><input id="button5" type="button" value="height 40 pixels (*)"/><p><strong>(*) Expected height:</strong><br/>Mac: height of button label font.<br/>Other: 40 pixels.</p></li>
+ </ol>
+</div>
+<hr/>
+<div id="console"></div>
+<script>
+ description("This tests that the specified height is honored (*) for <input> and <button> elements.<br/>" +
+ "(*) The Mac ports ignore the specified height for <input type="button"> elements unless a " +
+ "border and/or background CSS property is also specified (see the fifth button below). Disregarding " +
+ "padding, they render the button with a height equal to the height of the font used for the button label.");
+ var successfullyParsed = true;
+</script>
+</body>
+</html>
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index cb55f49..759e18c 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,25 @@
+2010-01-20 Daniel Bates <dbates at webkit.org>
+
+ Reviewed by Tor Arne Vestbø.
+
+ https://bugs.webkit.org/show_bug.cgi?id=29564
+
+ [Qt] Fixes an issue where the height of <button>- and
+ <input type="button">- elements are fixed to the height of the
+ button label font plus padding. That is, the CSS height property
+ is being ignored.
+
+ Instead, we should honor the user-specified height, if appropriate
+ for the platform and context. Notice, the Mac ports do not honor the
+ height for <input type="button"> elements unless a border and/or
+ background is also specified.
+
+ Test: fast/css/button-height.html
+
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::RenderThemeQt):
+ (WebCore::RenderThemeQt::adjustButtonStyle):
+
2010-01-20 Brady Eidson <beidson at apple.com>
Reviewed by Sam Weinig.
diff --git a/WebCore/platform/qt/RenderThemeQt.cpp b/WebCore/platform/qt/RenderThemeQt.cpp
index 428dbbc..c8df328 100644
--- a/WebCore/platform/qt/RenderThemeQt.cpp
+++ b/WebCore/platform/qt/RenderThemeQt.cpp
@@ -397,8 +397,13 @@ void RenderThemeQt::adjustButtonStyle(CSSStyleSelector* selector, RenderStyle* s
// Ditch the border.
style->resetBorder();
- // Height is locked to auto.
- style->setHeight(Length(Auto));
+#ifdef Q_WS_MAC
+ if (style->appearance() == PushButtonPart) {
+ // The Mac ports ignore the specified height for <input type="button"> elements
+ // unless a border and/or background CSS property is also specified.
+ style->setHeight(Length(Auto));
+ }
+#endif
// White-space is locked to pre
style->setWhiteSpace(PRE);
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list