Closed Bug 1172450 Opened 10 years ago Closed 10 years ago

No dropdown arrow of <select> element in vertical layout

Categories

(Core :: Layout: Form Controls, defect)

Unspecified
All
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla42
Tracking Status
firefox40 --- unaffected
firefox41 --- affected
firefox42 --- fixed

People

(Reporter: alice0775, Assigned: jfkthame)

References

Details

Attachments

(2 files)

Attached image screenshot
After landing Bug 1113206, No dropdown arrow of <select> element in vertical layout. Steps To Reproduce: 1. Enable vertical layout 2. Open Bug 1113206 attachment 8538586 [details] 3. Check Vertical-LR or Vertical-RL Actual results: No dropdown arrow display See attached screenshot Expected results: dropdown arrow should display
I can reproduce on windows7 and ubunto14.04. I did not test on the other os.
OS: Windows 7 → All
Flags: needinfo?(smontagu)
Sorry I did not see this before. I have access only to OSX until the end of August, passing to jfkthame.
Flags: needinfo?(smontagu) → needinfo?(jfkthame)
There are two parts to this, it appears. First, there's a Core:Layout problem: the dropdown arrow button ends up with its isize set to zero, because GetNondisappearingScrollbarWidth returns the wrong thing for vertical writing modes; and it is also mispositioned in the vertical-rl case due to using a bad containerSize in Reflow(). Fixing those problems will make the button appear where expected. The other problem is that for vertical modes, we presumably want the arrow to point left- or right-wards according to the block direction, instead of downwards. This will require selecting different graphical assets in the relevant CSS (or perhaps applying a transform). I propose to file a followup Toolkit bug on that aspect.
Flags: needinfo?(jfkthame)
Assignee: nobody → jfkthame
Status: NEW → ASSIGNED
Blocks: 1187605
Comment on attachment 8638925 [details] [diff] [review] Size and position the dropdown arrow properly in vertical writing modes This makes the dropdown arrow appear in vertical-mode <select> elements (checked on Linux, Windows and OS X), though it still points downwards; filed bug 1187605 for the CSS/theme work needed there.
Attachment #8638925 - Flags: review?(smontagu)
Comment on attachment 8638925 [details] [diff] [review] Size and position the dropdown arrow properly in vertical writing modes Review of attachment 8638925 [details] [diff] [review]: ----------------------------------------------------------------- ::: layout/generic/nsIScrollableFrame.h @@ +109,5 @@ > */ > + virtual nscoord > + GetNondisappearingScrollbarWidth(nsPresContext* aPresContext, > + nsRenderingContext* aRC, > + bool aVerticalWM = false) = 0; dholbert and others have been telling me not to use boolean args, so I suppose I should say the same to you. We could either use one of the enums defined in WritingModes.h, or just pass in the writing mode.
Attachment #8638925 - Flags: review?(smontagu) → review+
Fair enough. I'll just have it pass in the WritingMode value.
url: https://hg.mozilla.org/integration/mozilla-inbound/rev/34ade6cc41e13782ff04460b45a2755c83d88446 changeset: 34ade6cc41e13782ff04460b45a2755c83d88446 user: Jonathan Kew <jkew@mozilla.com> date: Mon Jul 27 16:52:12 2015 +0100 description: Bug 1172450 - Size and position the dropdown arrow properly in vertical writing modes. r=smontagu
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla42
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: