date input month year section will not show correct pick while fast scrolling

VERIFIED FIXED in Firefox 57

Status

()

defect
P2
normal
VERIFIED FIXED
2 years ago
2 years ago

People

(Reporter: pyang, Assigned: scwu)

Tracking

(Blocks 1 bug)

57 Branch
mozilla58
Points:
---

Firefox Tracking Flags

(firefox57 verified, firefox58 verified)

Details

Attachments

(2 attachments)

(Reporter)

Description

2 years ago
Posted image error_picker.png
STR:
1. input url = data:text/html, <input type="date">
2. choose MONTH YEAR section
3. scrolling very fast for one direction
4. pick or scroll month

EXPECT:
blue selection on year is the same as year showed on upper section

ACTUAL:
See attachment picture.

Updated

2 years ago
Assignee: nobody → scwwu
Status: NEW → ASSIGNED
Assignee: scwwu → nobody
Blocks: 1323674
Status: ASSIGNED → NEW
Assignee: nobody → scwu
Status: NEW → ASSIGNED
Priority: -- → P2
This issue is caused by the isScrolling state on spinner instance. It was introduced to prevent setting values before a scroll reaches its destination, but if one scrolls in rapid succession, it may cause the spinner never reaching the expected destinations, thus never calls the setValue function.

One solution is to remove the isScrolling check, and not use smooth scrolling when an input value has changed. This would fix the problem, with the downside that when spinners are visible, changes coming from input box would cause the spinners to change abruptly. But I feel it's better than leaving the spinners as is.

Updated

2 years ago
Attachment #8910213 - Flags: review?(mconley)

Comment 3

2 years ago
mozreview-review
Comment on attachment 8910213 [details]
Bug 1397114 - Disable smooth scrolling when value changes come from input box

https://reviewboard.mozilla.org/r/181702/#review189360

I agree, this seems like a fine compromise. Thanks!
Attachment #8910213 - Flags: review?(mconley) → review+
Thanks!
Keywords: checkin-needed

Comment 5

2 years ago
Pushed by ryanvm@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/f215f88437f1
Disable smooth scrolling when value changes come from input box r=mconley
Keywords: checkin-needed

Comment 6

2 years ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/f215f88437f1
Status: ASSIGNED → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla58
I guess we can let this ride the train, right?
Just had a discussion about this with :wesley_huang, and I'm inclined to uplift this because it could be reproduced quite easily, and the fix is rather low risk. Does it require QA verification if we were to uplift?

Wesley, you mentioned someone who might be able to help us with QA work, can we ping him/her?
Flags: needinfo?(whuang)
If I understand correctly, Emil will be covering 'date time input types' feature from Release QA.
This bug fix seems to be a high-want for uplifting. 
Emil, are you able to verify this bug fix on current Nightly(58) so that we can assess whether to uplift it or not?
Flags: needinfo?(whuang) → needinfo?(emil.ghitta)
Hi Wesley,

That is correct.

I have managed to reproduce this issue by following the steps mentioned in comment 0 with Firefox 57.0a1 (BuildId:20170905220108). 

This issue is verified fixed using Firefox 58.0a1 (BuildId:20171004220309) on Windows 10 64bit, macOS 10.11.6 and Ubuntu 16.04 64bit.

I will leave my needinfo as a reminder to verify this again for when the fix gets uplifted.
Status: RESOLVED → VERIFIED
OS: Mac OS X → All
Hardware: Unspecified → All
Comment on attachment 8910213 [details]
Bug 1397114 - Disable smooth scrolling when value changes come from input box

Approval Request Comment
[Feature/Bug causing the regression]:
Not a regression. Bug filed by QA. 
[User impact if declined]:
User might break the spinners if scroll rapidly, which isn't hard to reproduce.
[Is this code covered by automated tests?]:
No. 
[Has the fix been verified in Nightly?]:
Yes.
[Needs manual test from QE? If yes, steps to reproduce]: 
Yes. STR as listed in comment 1.
[List of other uplifts needed for the feature/fix]:
No.
[Is the change risky?]:
No.
[Why is the change risky/not risky?]:
Changes only occur in the widget level, on how scrolling is called in JS.
[String changes made/needed]:
No.
Attachment #8910213 - Flags: approval-mozilla-beta?
Comment on attachment 8910213 [details]
Bug 1397114 - Disable smooth scrolling when value changes come from input box

Regression due to recent changes in Date/Time input types, verified fix, Beta57+
Attachment #8910213 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
This issue is verified fixed using Firefox 57.0b7 (BuildId:20171009192146) on Windows 10 64bit, macOS 10.11.6 and Ubuntu 16.04 64bit.
Flags: needinfo?(emil.ghitta)
You need to log in before you can comment on or make changes to this bug.