[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-core-devel
Subject:    PATCH: KHTML
From:       Martijn Klingens <mklingens () yahoo ! com>
Date:       2001-02-13 21:26:23
[Download RAW message or body]

I found another bug in khtml, but this one seemed easy enough for me to track 
down myself. KHTML has the 'ridge' and 'groove' CSS borderstyles swapped, 
i.e. a groove style came out of the page and the ridge was engraved into it.

According to the specs I have (and even the english dictionary :-) ) and also 
confirmed by all other browsers that support it this should be the other way 
round

Attached diff fixes it, html can be used to see the problem and verify the 
patch.

Please check,

Martijn

["khtml.diff" (text/x-c++)]

Index: khtml/rendering/render_object.cpp
===================================================================
RCS file: /home/kde/kdelibs/khtml/rendering/render_object.cpp,v
retrieving revision 1.90
diff -b -u -p -r1.90 render_object.cpp
--- khtml/rendering/render_object.cpp	2001/02/05 20:55:10	1.90
+++ khtml/rendering/render_object.cpp	2001/02/13 21:21:26
@@ -461,7 +461,7 @@ void RenderObject::drawBorder(QPainter *
 
         break;
     }
-    case GROOVE:
+    case RIDGE:
         // could be more efficient. but maybe current code is already faster than
         // drawing two small rectangles?
         // disadvantage is that current edges doesn't look right because of reverse
@@ -469,7 +469,7 @@ void RenderObject::drawBorder(QPainter *
         drawBorder(p, x1, y1, x2, y2, width, s, c, textcolor, INSET, true, true, adjbw1, adjbw2);
         drawBorder(p, x1, y1, x2, y2, half, s, c, textcolor, OUTSET, true, true, adjbw1/2, adjbw2/2);
         break;
-    case RIDGE:
+    case GROOVE:
         drawBorder(p, x1, y1, x2, y2, width, s, c, textcolor, OUTSET, true, true, adjbw1, adjbw2);
         drawBorder(p, x1, y1, x2, y2, half, s, c, textcolor, INSET, true, true, adjbw1/2, adjbw2/2);
         break;

["css-error.html" (text/html)]

<html>
<head>
<title>Test</title>
<style>
	div {
		padding:			10px;				margin:				10px;
		border-width: 2px;				border-color: #ABCDEF;
	}
	body {
		background:		#89ABCD;		color:				white;
	}
</style>
</head>

<body>
	<div style="border-style: ridge">
		This text has a 'ridge' border, i.e. the border should come out of the
		page.
	</div>
	<div style="border-style: groove">
		This text has a 'groove' border, i.e. the border should be 'engraved' into
		the page.
	</div>
</body>
</html>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic