Closed Bug 1489440 Opened 6 years ago Closed 5 years ago

<input list=""> doesn't work inside Shadow DOM.


(Core :: DOM: Core & HTML, defect)

Not set



Tracking Status
firefox65 --- wontfix
firefox66 --- verified


(Reporter: julien.gribonvald, Assigned: emilio)


(Blocks 1 open bug)



(2 files)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:63.0) Gecko/20100101 Firefox/63.0
Build ID: 20180904170936

Steps to reproduce:

I've created a web component containing into the template an innput text with datalist (that work outside of web component)

To reproduce the problem go here :

It's a vuejs builded script that work on all browser expect firefox since webcomponent is enable (63.0b3)

Actual results:

not event is mapping, it can't open the datalist

Expected results:

the datalist should work as normal inside a webcomponent
Possibly related

ni? Thomas who shared status updates about the web components work (unsure about which engineers own this).
Flags: needinfo?(telin)
I can confirm that I reproduce the same things from the issue pointed.
Blocks: shadowdom

This is the same root cause as bug 1496769, this works with focus events, and we use the wrong target in:

Even with that, moving focus to the datalist if there are multiple focusable elements inside the shadow root wouldn't work...

Component: Web Components → DOM
Ever confirmed: true
Flags: needinfo?(telin)
Product: Developer Ecosystem → Core
Summary: broken datalist into webcomponents → <input list=""> doesn't work inside Shadow DOM.
Assignee: nobody → emilio

With the patch above we do find the input element, and try to autocomplete it
normally, which confuses some tests.

Pushed by
Fix nsFormFillController in presence of Shadow DOM. r=smaug
Pushed by
Disable autocomplete in the XUL autocomplete bindings. r=dao
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla66

I reported Bug 1522523 it is a duplicate of this bug.

The fix is applied on Firefox66 which will be released on 19 March 2019 that is 53 days from today and that is a lot for Firefox users, i think this is a critical functional bug(degree of critical) because the data list is not doing what it is supposed to do, so can the developer uplift this fix to Firefox65 because the release date is 4 days from today?

Attachment #9037953 - Flags: approval-mozilla-beta?

Filling manually since the form is not working at all. Note that the request is for both patches.

Feature/Bug causing the regression: Shadow DOM
User impact if declined: <input list=""> is broken in Shadow DOM.
Covered by automated tests: Yes
Verified in Nightly: Just did
Needs manual test from QE: No
Risk of taking this patch: Low
Why is the change risky/not risky? Simple change that makes <datalist> work on Shadow DOM.

Comment on attachment 9037953 [details]
Bug 1489440 - Fix nsFormFillController in presence of Shadow DOM.

The request is for 65, moving to release.

Attachment #9037953 - Flags: approval-mozilla-beta? → approval-mozilla-release?
Flags: qe-verify+

Comment on attachment 9037953 [details]
Bug 1489440 - Fix nsFormFillController in presence of Shadow DOM.

[Triage Comment]
Improves <datalist> support with Shadow DOM, including on the MDN demo for the feature. Thanks for adding an automated test as well. Approved for 65.0.1.

Attachment #9037953 - Flags: approval-mozilla-release? → approval-mozilla-release+
Whiteboard: [qa-triaged]

I have reproduced this issue using Firefox 64.0a1 (2018.09.07) on Win 10 x64.
I can confirm this issue is fixed, I verified using Firefox 66.0b6 on Win 10 x64, Ubuntu 18.04 x64 and macOS 10.13. I will verify on 65.0.1 too.

Comment on attachment 9037953 [details]
Bug 1489440 - Fix nsFormFillController in presence of Shadow DOM.

Sorry, but after some further discussion, we decided not to take this patch after all for the 65.0.1 release. The fix will still be included in next month's Fx66 release. I apologize for the inconvenience.

Attachment #9037953 - Flags: approval-mozilla-release+ → approval-mozilla-release-
Flags: in-testsuite+
Flags: in-testsuite+
QA Whiteboard: [qa-triaged]
Whiteboard: [qa-triaged]
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.