Closed Bug 1121272 Opened 11 years ago Closed 11 years ago

[e10s] <select> dropdown list is not shown when redered as XHTML

Categories

(Core :: Layout: Form Controls, defect)

x86_64
Windows 7
defect
Not set
normal

Tracking

()

VERIFIED FIXED
mozilla39
Tracking Status
e10s m6+ ---
firefox39 --- fixed
firefox41 --- verified

People

(Reporter: alice0775, Assigned: gw280)

Details

(Whiteboard: [Testday-20150619])

Attachments

(2 files)

Attached image screenshot
Build Identifier: https://hg.mozilla.org/mozilla-central/rev/3d846527576f Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0 ID:20150113030205 When I test Bug 1121137, I noticed. Steps To Reproduce: 1. Open e10s 2. Open attachment 8548405 [details] 3. Click dropdown marker Actual Results: Small gray rectangle appears instead of dropdown list. See Attached screenshot.
Assignee: nobody → gwright
Flags: needinfo?(gwright)
We should be using firstElementChild and nextElementSibling instead of firstChild and nextSibling to traverse the element tree when building the list of options to network across to the parent process. Also use toUpperCase() as (in this case at least) it appears XHTML element tagnames can be lowercase.
Flags: needinfo?(gwright)
Attachment #8578332 - Flags: review?(mconley)
Comment on attachment 8578332 [details] [diff] [review] 0001-Bug-1121272-Use-firstElementChild-and-nextElementSib.patch Review of attachment 8578332 [details] [diff] [review]: ----------------------------------------------------------------- I've got some minor simplifications for you, but this looks good to me, and fixes the problem for me locally. Great work! ::: toolkit/modules/SelectContentHelper.jsm @@ +88,4 @@ > > function buildOptionListForChildren(node) { > let result = []; > + for (let child = node.firstElementChild; child; child = child.nextElementSibling) { It turns out this can be simplified to: for (let child of node.children) { // ... child will always be an Element node. } oh DOM. @@ +88,5 @@ > > function buildOptionListForChildren(node) { > let result = []; > + for (let child = node.firstElementChild; child; child = child.nextElementSibling) { > + if (child.tagName.toUpperCase() == 'OPTION' || child.tagName.toUpperCase() == 'OPTGROUP') { child.tagName.toUpperCase() is used enough here that we might as well assign it to a variable at the top of this loop.
Attachment #8578332 - Flags: review?(mconley) → review+
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla39
QA Whiteboard: [good first verify][verify in Nightly only]
I have reproduced this bug in Nightly 38.0a1 (2015-01-13) () with instruction from comment 0 and Linux x64. Verified as fixed with latest Nightly 41.0a1 (2015-06-18) (Build ID: 20150618030206), Mozilla/5.0 (X11; Linux x86_64; rv:41.0) Gecko/20100101 Firefox/41.0 [testday-20150619]
Reproduced this bug by following comment 0 on windows 7 64 bit with Firefox 38.0a1 ( 2015-01-13)! Bug is now fixed on Latest Nightly 41.0a1 (2015-06-18)! User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0 Build ID: 20150618030206
Status: RESOLVED → VERIFIED
QA Whiteboard: [good first verify][verify in Nightly only] → [good first verify][verify in Nightly only][Testday-20150619]
Whiteboard: [Testday-20150619]
The bug could be Reproduced on Nightly 38.0a1 with e10s enabled only, User Agent: Mozilla/5.0 (Windows NT 6.1; rv:38.0) Gecko/20100101 Firefox/38.0 Build ID: 20150113030205 And Todays Nightly build has this fixed, User Agent: Mozilla/5.0 (Windows NT 6.1; rv:41.0) Gecko/20100101 Firefox/41.0 Build ID: 20150619030204 Suggesting Status -> VERIFIED FIXED
The flag was mistakenly changed, so recorrecting it now.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: