Closed Bug 1411396 Opened 6 years ago Closed 6 years ago

[e10s] Form control required popup doesn't follow input when scrolling


(Firefox :: General, defect, P3)




Tracking Status
firefox-esr52 --- wontfix
firefox56 --- wontfix
firefox57 --- wontfix
firefox58 --- wontfix
firefox59 --- wontfix
firefox60 --- fix-optional


(Reporter: emilio, Unassigned)



(Keywords: regression)


(3 files, 1 obsolete file)

Not sure if this is the right component...

A friend of mine reported this to me today.

It seems that in other browsers, when you try to submit the form pressing enter, and then scroll, the "Please fill out this field" popup follows the input.

So, STR:

 * Open attached test-case.
 * Focus the text input, then press enter. A "Please fill out this field" popup appears.
 * Scroll down the page, without unfocusing the field.


 * The popup remains under the form input.


 * The popup stays in the same position, which hides other elements of the page, and is ugly.
Attached file testcase.html
Attached image screenshot.png
So when looking at it, this is all handled by FormSubmitObserver / FormValidationHandler, so this seems to be a Firefox bug, not a Core bug.
Component: Layout: Form Controls → General
Product: Core → Firefox
Version: unspecified → Trunk
Matt, is this a known bug?
Flags: needinfo?(MattN+bmo)
I shall point out that this works fine in Chrome and Edge, fwiw.
I've never worked on this code before (felipe has) but I see that it's an e10s regression. The "scroll" event doesn't fire on a <browser> with e10s on:
Assignee: nobody → MattN+bmo
Blocks: 691601
Flags: needinfo?(MattN+bmo)
Keywords: regression
Priority: -- → P3
Summary: Form control required popup doesn't follow input when scrolling → [e10s] Form control required popup doesn't follow input when scrolling
Great… in case it wasn't obvious that this feature isn't really maintained… I found out that two of three tests which references this popup were disabled in bug 1057615.
Comment on attachment 8923654 [details]
Bug 1411396 - Cleanup and move formValidation b-c tests.

::: browser/modules/test/browser/formValidation/browser.ini:3
(Diff revision 1)
> +[browser_form_validation.js]
> +skip-if = true # bug 1057615
> +[browser_validation_iframe.js]

I enabled this test since I think it should pass with the iframe height change that was caused by scroll in non-e10s closing the popup.
Depends on: 1413092
Attachment #8923654 - Attachment is obsolete: true
Attachment #8923654 - Flags: review?(felipc)
I thought this was going to be trivial but the with the tests being broken and the fact that we need to handle a scroll caused by a validation message, I don't have time to look at this now. I've attached my WIP patch with the TODO of what needs to be fixed. 

We really should have a module to handle laying out UI in the parent process that is supposed to be attached to content elements. We would use that module for autocomplete, <select> popups, and form validation rather than each implementing it differently and with potential security bugs. I'll file a separate bug for this.
Assignee: MattN+bmo → nobody
Closed: 6 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.