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

VERIFIED FIXED in Firefox 66

Status

()

defect
VERIFIED FIXED
9 months ago
2 months ago

People

(Reporter: julien.gribonvald, Assigned: emilio)

Tracking

(Blocks 1 bug)

unspecified
mozilla66
Points:
---
Dependency tree / graph
Bug Flags:
in-testsuite +

Firefox Tracking Flags

(firefox65 wontfix, firefox66 verified)

Details

Attachments

(2 attachments)

Reporter

Description

9 months ago
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 :
https://jsfiddle.net/jgribonvald/ndv60ybj/1/

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 https://github.com/mdn/interactive-examples/issues/1169

ni? Thomas who shared status updates about the web components work (unsure about which engineers own this).
Flags: needinfo?(telin)
Reporter

Comment 2

8 months ago
I can confirm that I reproduce the same things from the issue pointed.

Updated

4 months ago
Blocks: shadowdom
Assignee

Comment 3

4 months ago

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

https://searchfox.org/mozilla-central/rev/78e8de968efd77ef3b30ea081bce07614cd6776b/toolkit/components/satchel/nsFormFillController.cpp#930

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

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

Updated

4 months ago
Assignee: nobody → emilio
Assignee

Comment 5

4 months ago

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

Comment 6

4 months ago
Pushed by ealvarez@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/0d9a334f6ae8
Fix nsFormFillController in presence of Shadow DOM. r=smaug

Comment 7

4 months ago
Pushed by ealvarez@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/605d15524a48
Disable autocomplete in the XUL autocomplete bindings. r=dao

Comment 8

4 months ago
bugherder
Status: NEW → RESOLVED
Last Resolved: 4 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla66
Duplicate of this bug: 1522523

Comment 10

4 months ago

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?

Assignee

Updated

4 months ago
Attachment #9037953 - Flags: approval-mozilla-beta?
Assignee

Comment 11

4 months ago

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-
Status: RESOLVED → VERIFIED
Flags: in-testsuite+

Updated

3 months ago
Duplicate of this bug: 1530180
QA Whiteboard: [qa-triaged]
Whiteboard: [qa-triaged]
Component: DOM → DOM: Core & HTML
Product: Core → Core
You need to log in before you can comment on or make changes to this bug.