WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
28900
<select> controls doesn't render size=2 or size=3 properly
https://bugs.webkit.org/show_bug.cgi?id=28900
Summary
<select> controls doesn't render size=2 or size=3 properly
Dirk Pranke
Reported
2009-09-01 18:35:05 PDT
Created
attachment 38907
[details]
test case <select> controls seem to have a minimum size of 4 (or either 1 or 4 if it is not a multi-select). FF 3.5, IE 8, and Opera 10 all support sizes of 2 and 3, but no WebKit-based browser (Safari 4, Chrome nightlies) seem to.
Attachments
test case
(1.53 KB, text/html)
2009-09-01 18:35 PDT
,
Dirk Pranke
no flags
Details
Patch
(18.98 KB, patch)
2011-08-06 16:04 PDT
,
Naoki Takano
no flags
Details
Formatted Diff
Diff
screenshot on mavericks
(53.21 KB, image/png)
2014-01-09 10:36 PST
,
ChangSeok Oh
no flags
Details
Proposed patch
(1.39 MB, patch)
2014-01-09 12:10 PST
,
ChangSeok Oh
changseok
: review-
changseok
: commit-queue-
Details
Formatted Diff
Diff
Updated patch
(1.39 MB, patch)
2014-01-10 07:14 PST
,
ChangSeok Oh
no flags
Details
Formatted Diff
Diff
Updated patch
(
deleted
)
2014-01-12 09:44 PST
,
ChangSeok Oh
no flags
Details
Formatted Diff
Diff
Updated patch
(1.39 MB, patch)
2014-01-15 01:47 PST
,
ChangSeok Oh
no flags
Details
Formatted Diff
Diff
Update patch
(1.31 MB, patch)
2014-01-17 08:48 PST
,
ChangSeok Oh
no flags
Details
Formatted Diff
Diff
Updated patch
(1.31 MB, patch)
2014-01-23 11:24 PST
,
ChangSeok Oh
no flags
Details
Formatted Diff
Diff
Updated patch
(1.33 MB, patch)
2014-01-24 11:18 PST
,
ChangSeok Oh
no flags
Details
Formatted Diff
Diff
Updated patch
(1.33 MB, patch)
2014-01-24 11:28 PST
,
ChangSeok Oh
no flags
Details
Formatted Diff
Diff
Updated patch
(1.31 MB, patch)
2014-01-24 23:26 PST
,
ChangSeok Oh
no flags
Details
Formatted Diff
Diff
Updated patch
(1.31 MB, patch)
2014-01-25 04:11 PST
,
ChangSeok Oh
no flags
Details
Formatted Diff
Diff
Updated patch
(1.31 MB, patch)
2014-01-27 08:01 PST
,
ChangSeok Oh
no flags
Details
Formatted Diff
Diff
Show Obsolete
(11)
View All
Add attachment
proposed patch, testcase, etc.
Dirk Pranke
Comment 1
2010-04-06 16:37:09 PDT
I'm not working on this now nor do I expect to be in the near future, so I am disclaiming ownership in case someone else wants to pick this up.
Gérard Talbot (no longer involved)
Comment 2
2010-05-12 14:49:59 PDT
Dirk, I confirm your finding and your bug report. Additional testcase coming from HTML 4 test suite conformance: HTML4 Test Suite on select and size attribute
http://www.w3.org/MarkUp/Test/HTML401/current/tests/sec17_6-BF-01.html
This bug has also been reported at KDE: Size attribute for select incorrectly rendered [HTML 4 conformance, HTML form]
https://bugs.kde.org/show_bug.cgi?id=237438
regards, Gérard
Naoki Takano
Comment 3
2011-08-06 16:04:29 PDT
Created
attachment 103169
[details]
Patch
Naoki Takano
Comment 4
2011-08-06 16:06:06 PDT
Uploaded the patch. Please review it. The change is very small but I wonder if the test is OK. If it's Ok, I'll make win, mac version.
Alexey Proskuryakov
Comment 5
2011-08-06 18:04:17 PDT
***
Bug 17648
has been marked as a duplicate of this bug. ***
Alexey Proskuryakov
Comment 6
2011-08-06 18:08:44 PDT
http://code.google.com/p/chromium/issues/detail?id=4579
Alexey Proskuryakov
Comment 7
2011-08-06 18:08:50 PDT
As it's apparent from the code code being changed, this was an intentional choice at some point. Could you please find out what the original reasons for this choice were using svn annotate? I'd like to see screenshots of how short selects look on other platforms. I suspect that some may be broken, making this change infeasible.
Naoki Takano
Comment 8
2011-08-06 21:24:59 PDT
According to git blame, the following change added minSize=4. commit a9b3e5324c977c9838694d5761d8b8051d8220d1 Author: darin <darin@268f45cc-cd09-0410-ab3c-d52691b4dbfc> Date: Fri Jan 19 23:12:20 2007 +0000 LayoutTests: Reviewed by Adele. - test for html4.css problem where we had a missing semicolon and thus missed parsing a style rule Now I'm trying to make image on Win/Mac. (In reply to
comment #7
)
> As it's apparent from the code code being changed, this was an intentional choice at some point. Could you please find out what the original reasons for this choice were using svn annotate? > > I'd like to see screenshots of how short selects look on other platforms. I suspect that some may be broken, making this change infeasible.
Alexey Proskuryakov
Comment 9
2011-08-06 22:34:21 PDT
> - test for html4.css problem where we had a missing semicolon and thus missed > parsing a style rule
This is surprising, I suspect that this is not the right change. What's the svn revision number?
Naoki Takano
Comment 10
2011-08-06 22:47:56 PDT
It looks
r18989
. (In reply to
comment #9
)
> > - test for html4.css problem where we had a missing semicolon and thus missed > > parsing a style rule > > This is surprising, I suspect that this is not the right change. What's the svn revision number?
Naoki Takano
Comment 11
2011-08-06 22:56:34 PDT
Hmm... The fix affects Mac result. I'm looking into it... (In reply to
comment #10
)
> It looks
r18989
. > > (In reply to
comment #9
) > > > - test for html4.css problem where we had a missing semicolon and thus missed > > > parsing a style rule > > > > This is surprising, I suspect that this is not the right change. What's the svn revision number?
Alexey Proskuryakov
Comment 12
2011-08-06 23:13:06 PDT
> It looks
r18989
.
The constant was moved in this revision, but it already existed. I tracked it down to
r16663
(Initial implementation of engine-based list box control), but it might have been taken from earlier Cocoa-based version. This is likely related to
bug 5005
.
Naoki Takano
Comment 13
2011-08-14 23:41:31 PDT
I was looking into the source code, and I found where I should change the code. But I'm not sure how to fix it yet. Because that part is using HIThemeTrackDrawInfo which is Carbon API. I cannot find the doc even in Apple site, but do you know where we can get it? Thanks, (In reply to
comment #12
)
> > It looks
r18989
. > > The constant was moved in this revision, but it already existed. I tracked it down to
r16663
(Initial implementation of engine-based list box control), but it might have been taken from earlier Cocoa-based version. > > This is likely related to
bug 5005
.
Alexey Proskuryakov
Comment 14
2011-08-15 00:40:07 PDT
Could you tell me what specifically you are looking for? I don't know if there is any documentation besides what is in header file, but I can try to find an answer for a specific question.
Naoki Takano
Comment 15
2011-08-15 21:30:40 PDT
I see. I want to know how we can set the up/down arrow buttons and thumb. I believe we can specify the height with HIThemeTrackDrawInfo in ScrollbarThemeChromiumMac::paint(). So I want to know which member can change the height in the struct. Do you have the idea? Thanks, (In reply to
comment #14
)
> Could you tell me what specifically you are looking for? I don't know if there is any documentation besides what is in header file, but I can try to find an answer for a specific question.
Alexey Proskuryakov
Comment 16
2011-08-16 16:24:40 PDT
I don't think that it's possible to change the size of up/down buttons - how would they be rendered if resized? And the size of thumb is controlled by WebKit, so there should be code showing ho to do that. See also:
bug 66311
.
Naoki Takano
Comment 17
2011-08-17 22:12:54 PDT
Sorry, my explanation was confusing. And thank you for your suggestion. I know we cannot change the size of up/down buttons. As you pointed out, I think wkScrollbarMinimumThumbLength() returns too big number. That is the problem. But I also use to change it like
Bug 66311
, still the minimum size is too big. Can we shrink the minimum size of thumb? It looks the thumb size is completely controlled by Cocoa(or Carbon?) API. Also I looked into WebKit side and they also do the same thing. Please see
http://www.google.com/codesearch#OAMlx_jo-ck/src/third_party/WebKit/Source/WebCore/platform/mac/ScrollbarThemeMac.mm&type=cs&q=minimumThumbLength&exact_package=chromium&l=419
Thanks, (In reply to
comment #16
)
> I don't think that it's possible to change the size of up/down buttons - how would they be rendered if resized? And the size of thumb is controlled by WebKit, so there should be code showing ho to do that. > > See also:
bug 66311
.
Alexey Proskuryakov
Comment 18
2011-08-17 22:28:50 PDT
wkScrollbarMinimumThumbLength() returns the minimum thumb height that can possibly be drawn with the system theme. Are you saying that its result is incorrect? Why?
Eric Seidel (no email)
Comment 19
2012-01-09 14:04:32 PST
Comment on
attachment 103169
[details]
Patch Seems reasonable. WHy was this 4 in teh first place? Do other ports want this minimum of 4?
Eric Seidel (no email)
Comment 20
2012-01-09 14:05:36 PST
I'm not seeking to override ap here. If ap has objections to this patch he should feel encouraged to r- it.
Darin Adler
Comment 21
2012-01-09 14:12:41 PST
The minimum of 4 was to make Mac scroll bars work properly. To preserve that we probably need to allow themes to supply a minimum height, or continue to do so if they are already.
Alexey Proskuryakov
Comment 22
2012-01-09 14:33:30 PST
Comment on
attachment 103169
[details]
Patch Since the question in
comment 18
hasn't been answered at all, r- seems appropriate. Changing to that until there is an understanding why this change is OK.
Alexey Proskuryakov
Comment 23
2014-01-06 09:40:50 PST
***
Bug 126515
has been marked as a duplicate of this bug. ***
ChangSeok Oh
Comment 24
2014-01-09 02:28:33 PST
(In reply to
comment #23
)
> ***
Bug 126515
has been marked as a duplicate of this bug. ***
I'd like to continue this bug. As I said in 126515, current situation is changed. I doubt if we should continuously stick 4 for the minSize . I couldn't find any problem for Macport running on Marvericks and Lion. The scrollbar shows up and automatically hide after few seconds on the platforms. And also I don't think GTK port has any problem for size=2/3, though GTK+ 3.0 doesn't paint scrollbar for such a short list, but it presents more lists remained by using up/down arrow indicators. I propose to change minSize from 4 to 2. Updated change is coming.
Alexey Proskuryakov
Comment 25
2014-01-09 09:33:08 PST
(In reply to
comment #24
)
> The scrollbar shows up and automatically hide after few seconds on the platforms.
This is the behavior with a trackpad. When using a mouse, a different scroll bar style is used by default, does that look right too? You can test both scroll bar styles by changing system preferences (General preference pane).
ChangSeok Oh
Comment 26
2014-01-09 10:34:58 PST
(In reply to
comment #25
)
> (In reply to
comment #24
) > > The scrollbar shows up and automatically hide after few seconds on the platforms. > > This is the behavior with a trackpad. When using a mouse, a different scroll bar style is used by default, does that look right too? > > You can test both scroll bar styles by changing system preferences (General preference pane).
Well. I'm using a magic mouse. I re-tested the scroll bar with the option "Preference>General>Show scroll bars>Always" on Mavericks. I think no problem there. Is there another option to change scrollbar style except that? ''a
ChangSeok Oh
Comment 27
2014-01-09 10:36:09 PST
Created
attachment 220749
[details]
screenshot on mavericks I attached test result on mavericks.
ChangSeok Oh
Comment 28
2014-01-09 12:10:50 PST
Created
attachment 220756
[details]
Proposed patch
Radar WebKit Bug Importer
Comment 29
2014-01-09 14:32:24 PST
<
rdar://problem/15786308
>
ChangSeok Oh
Comment 30
2014-01-10 00:03:40 PST
I don't know why the bots don't stop running tests. :(
ChangSeok Oh
Comment 31
2014-01-10 07:14:41 PST
Created
attachment 220841
[details]
Updated patch expected png results for mac are updated.
Darin Adler
Comment 32
2014-01-10 13:02:58 PST
Comment on
attachment 220841
[details]
Updated patch View in context:
https://bugs.webkit.org/attachment.cgi?id=220841&action=review
> Source/WebCore/rendering/RenderListBox.cpp:72 > -// The minSize constant was originally defined to render scrollbars correctly. > -// This might vary for different platforms. > -const int minSize = 4; > +const int minSize = 2;
Why 2 rather than 3 or 1?
Alexey Proskuryakov
Comment 33
2014-01-11 20:32:05 PST
(In reply to
comment #30
)
> I don't know why the bots don't stop running tests. :(
It's hitting errors like this: Use of uninitialized value $ENV{"PLATFORM_NAME"} in string eq at WebCore/bindings/scripts/CodeGeneratorObjC.pm line 114. WebCore/bindings/objc/PublicDOMInterfaces.h:29:10: fatal error: 'wtf/Platform.h' file not found #include <wtf/Platform.h>
ChangSeok Oh
Comment 34
2014-01-12 08:10:59 PST
(In reply to
comment #32
)
> (From update of
attachment 220841
[details]
) > View in context:
https://bugs.webkit.org/attachment.cgi?id=220841&action=review
> > > Source/WebCore/rendering/RenderListBox.cpp:72 > > -// The minSize constant was originally defined to render scrollbars correctly. > > -// This might vary for different platforms. > > -const int minSize = 4; > > +const int minSize = 2; > > Why 2 rather than 3 or 1?
Good point. I missed the case multiple=true so I thought RenderListBox couldn't have size=1. But it's not true. If select have multiple=true, RenderListBox can have the size=1. Theoretically RenderListBox should manage all positive integers for the size attribute. Both FireFox and IE allow the case, size=1 & multiple=true.
ChangSeok Oh
Comment 35
2014-01-12 08:15:39 PST
(In reply to
comment #33
)
> (In reply to
comment #30
) > > I don't know why the bots don't stop running tests. :( > > It's hitting errors like this: > > Use of uninitialized value $ENV{"PLATFORM_NAME"} in string eq at WebCore/bindings/scripts/CodeGeneratorObjC.pm line 114. > WebCore/bindings/objc/PublicDOMInterfaces.h:29:10: fatal error: 'wtf/Platform.h' file not found > #include <wtf/Platform.h>
Hrm.. I've never seen this errors before. Is this really related with this patch?
ChangSeok Oh
Comment 36
2014-01-12 09:44:51 PST
Created
attachment 220974
[details]
Updated patch RenderListBox should manage positive integers for its size.
Alexey Proskuryakov
Comment 37
2014-01-13 00:24:36 PST
> Hrm.. I've never seen this errors before. Is this really related with this patch?
Indeed, this error is not caused by this patch. Filed
bug 126873
about it. I'm not sure why EWS fails to report the results. It sees these regressions from this patch: Regressions: Unexpected text-only failures (2) fast/forms/listbox-bidi-align.html [ Failure ] fast/replaced/replaced-breaking.html [ Failure ] Also, style bot hits
bug 126702
.
ChangSeok Oh
Comment 38
2014-01-15 01:47:35 PST
Created
attachment 221243
[details]
Updated patch update expected results for mac port.
ChangSeok Oh
Comment 39
2014-01-17 08:48:54 PST
Created
attachment 221469
[details]
Update patch Updated listbox-bidi-align-expected.txt for mac-mountainlion
ChangSeok Oh
Comment 40
2014-01-17 10:48:54 PST
>Sharding tests ... >Starting 1 worker ... > fast/replaced/replaced-breaking.html -> pixel hash failed (but diff passed) >[1/1] fast/replaced/replaced-breaking.html failed unexpectedly (text diff)
Weird. the test passed on my marvericks.. pixel hash failed, but diff passed?? What does this mean..? sigh.
Alexey Proskuryakov
Comment 41
2014-01-20 09:06:11 PST
Comment on
attachment 221469
[details]
Update patch This still makes fast/replaced/replaced-breaking.html fail on Mac.
ChangSeok Oh
Comment 42
2014-01-23 11:24:24 PST
Created
attachment 222007
[details]
Updated patch Resolved hash mismatch. Hope this to be final..
Alexey Proskuryakov
Comment 43
2014-01-23 12:11:26 PST
Still failing: Regressions: Unexpected text-only failures (1) fast/replaced/replaced-breaking.html [ Failure ]
ChangSeok Oh
Comment 44
2014-01-23 23:57:01 PST
(In reply to
comment #43
)
> Still failing: > > Regressions: Unexpected text-only failures (1) > fast/replaced/replaced-breaking.html [ Failure ]
:( Is there any to see or download actual test results?
ChangSeok Oh
Comment 45
2014-01-23 23:57:35 PST
(In reply to
comment #43
)
> Still failing: > > Regressions: Unexpected text-only failures (1) > fast/replaced/replaced-breaking.html [ Failure ]
:( Is there any way to see or download actual test results?
ChangSeok Oh
Comment 46
2014-01-24 11:18:49 PST
Created
attachment 222125
[details]
Updated patch
ChangSeok Oh
Comment 47
2014-01-24 11:28:08 PST
Created
attachment 222126
[details]
Updated patch
ChangSeok Oh
Comment 48
2014-01-24 23:26:31 PST
Created
attachment 222194
[details]
Updated patch Update the mountainlion result
ChangSeok Oh
Comment 49
2014-01-25 04:11:31 PST
Created
attachment 222206
[details]
Updated patch Rebased the patch
ChangSeok Oh
Comment 50
2014-01-27 08:01:15 PST
Created
attachment 222327
[details]
Updated patch Rebase EFL & GTK results.
ChangSeok Oh
Comment 51
2014-01-28 01:42:08 PST
Comment on
attachment 222327
[details]
Updated patch All greens!
ChangSeok Oh
Comment 52
2014-02-06 01:59:41 PST
Review please? or any concern?
Michael Catanzaro
Comment 53
2016-09-17 07:18:52 PDT
Comment on
attachment 222327
[details]
Updated patch Hi, Apologies that your patch was not reviewed in a timely manner. Since it's now quite old, I am removing it from the review request queue. Please consider rebasing it on trunk and resubmitting. To increase the chances of getting a review, consider using 'Tools/Scripts/webkit-patch upload --suggest-reviewers' to CC reviewers who might be interested in this bug.
Ahmad Saleem
Comment 54
2022-09-17 16:53:59 PDT
https://github.com/WebKit/WebKit/pull/4450
EWS
Comment 55
2022-09-20 16:19:20 PDT
Committed
254698@main
(bef8deafdcd3): <
https://commits.webkit.org/254698@main
> Reviewed commits have been landed. Closing PR #4450 and removing active labels.
Ahmad Saleem
Comment 56
2022-12-06 14:17:34 PST
***
Bug 21871
has been marked as a duplicate of this bug. ***
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug