Bug 13837 - Separator in new <select> widget disappears when block element with border is in document.
Summary: Separator in new <select> widget disappears when block element with border is...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: 523.x (Safari 3)
Hardware: Macintosh OS X 10.4
: P2 Normal
Assignee: Nobody
URL:
Keywords: HasReduction
Depends on:
Blocks:
 
Reported: 2007-05-22 21:58 PDT by Elliott Sprehn
Modified: 2007-05-24 11:09 PDT (History)
1 user (show)

See Also:


Attachments
Test Case (574 bytes, text/html)
2007-05-22 21:59 PDT, Elliott Sprehn
no flags Details
Set stroke parameters (12.13 KB, patch)
2007-05-23 04:05 PDT, mitz
no flags Details | Formatted Diff | Diff
Set stroke parameters (12.10 KB, patch)
2007-05-23 04:24 PDT, mitz
no flags Details | Formatted Diff | Diff
Another attempt (11.68 KB, patch)
2007-05-23 09:41 PDT, mitz
darin: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Elliott Sprehn 2007-05-22 21:58:24 PDT
The vertical separator line between the text and the two triangles in the select widget disappears when another block element with a border is in the same document.

The line appears if you select another application instead of Webkit, or if you scroll past it, or interact in some other misc. ways with the page.

Reproducible with latest nightly. (Tue May 22 9:40:54 GMT 2007, r21639).
Comment 1 Elliott Sprehn 2007-05-22 21:59:39 PDT
Created attachment 14676 [details]
Test Case
Comment 2 David Kilzer (:ddkilzer) 2007-05-22 22:50:25 PDT
Wow, that's subtle!

Confirmed with a local debug build of WebKit r21639 with Safari 2.0.4 (419.3) on Mac OS X 10.4.9 (8P135).
Comment 3 David Kilzer (:ddkilzer) 2007-05-22 22:52:21 PDT
Not sure if this is a regression or not since the pop-up in the test case looks different with shipping Safari.

Comment 4 Elliott Sprehn 2007-05-22 22:57:45 PDT
(In reply to comment #3)
> Not sure if this is a regression or not since the pop-up in the test case looks
> different with shipping Safari.
> 

Shipping Safari doesn't allow styling select menus. The test case uses a border on the select widget to specifically get the one you can style because that's where the bug shows up. It doesn't happen with the Aqua widget.
Comment 5 mitz 2007-05-23 01:17:25 PDT
Probably missing explicit setStrokeThickness(). 
Comment 6 mitz 2007-05-23 04:05:28 PDT
Created attachment 14678 [details]
Set stroke parameters
Comment 7 David Kilzer (:ddkilzer) 2007-05-23 04:18:28 PDT
Comment on attachment 14678 [details]
Set stroke parameters

>+    CGMutablePathRef path = CGPathCreateMutable();// CGContextBeginPath(context);

Why the commented-out code?
Comment 8 mitz 2007-05-23 04:23:06 PDT
(In reply to comment #7)
> (From update of attachment 14678 [details] [edit])
> >+    CGMutablePathRef path = CGPathCreateMutable();// CGContextBeginPath(context);
> 
> Why the commented-out code?
> 

Oops. Thanks for noticing!
Comment 9 mitz 2007-05-23 04:24:08 PDT
Created attachment 14679 [details]
Set stroke parameters
Comment 10 Darin Adler 2007-05-23 09:14:00 PDT
Comment on attachment 14679 [details]
Set stroke parameters

r=me

But shouldn't we call CGContextBeginPath before calling CGContextAddPath?
Comment 11 mitz 2007-05-23 09:26:22 PDT
Comment on attachment 14679 [details]
Set stroke parameters

I think I should just use CGContextDrawPath.
Comment 12 mitz 2007-05-23 09:41:44 PDT
Created attachment 14689 [details]
Another attempt
Comment 13 Darin Adler 2007-05-24 09:46:19 PDT
Comment on attachment 14689 [details]
Another attempt

r=me
Comment 14 Adele Peterson 2007-05-24 11:09:42 PDT
Committed revision 21719.