New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 659585 link

Starred by 3 users

Issue metadata

Status: Verified
Owner:
Closed: Nov 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Chrome
Pri: 2
Type: Bug-Regression



Sign in to add a comment

SELECT popup doesn't commit a provisional value on blur

Project Member Reported by mmanchala@chromium.org, Oct 26 2016

Issue description

Version: 56.0.2899.0/8934.0.0 dev  Peach-Pit,Jerry and Spring
OS: Chrome

What steps will reproduce the problem?
(1)Sign into User -> Go to chrome://md-settings
(2) Now under 'Appearance' section click on Page Zoom Drop down and Use Up/Down Arrow Buttons from keyboard to change values(For Ex: Select 50%)
(3)Now open context menu using Two finger tap and observe for page zoom(Please refer video)

Expected: Page should get Zoom to the selected Zoom level
Actual:Instead Page Zoom In/Out is not seen

This is Regression Issue working fine in M-54
Issue is not seen on Linux OS
 
Actual_Zoom.webm
833 KB View Download

Comment 1 by dpa...@chromium.org, Nov 17 2016

Labels: Proj-MaterialDesign-WebUI

Comment 2 by dbeam@chromium.org, Nov 21 2016

Status: WontFix (was: Untriaged)
not repro'ing for me
Labels: -Pri-1 Pri-2
Owner: dbeam@chromium.org
Status: Assigned (was: WontFix)
Able to repro the Issue on latest Build(57.0.2926.0/9014.0.0)
Attaching screencast for reference

Repro steps:
1.Under Appearance' section click on Page Zoom Drop down and Use Up/Down Arrow Buttons from keyboard to select Zoom value(For Ex: Select 33%)
2.Now open context menu using Two finger tap outside the frame and observe
Actual_PageZoom.webm
1.5 MB View Download

Comment 4 by dbeam@chromium.org, Nov 23 2016

Cc: tkent@chromium.org
it's possible that the <select> used to specific page zoom isn't receiving a change event when hidden via right click

Comment 5 by tkent@chromium.org, Nov 24 2016

Components: Blink>Forms>Select
This is a Blink's <select> implementation bug.

Arrow keys in a popup update HTMLSelectElement::m_indexToSelectOnCancel and displayed OPTION value.  Now popup close by right click does nothing.  We should either:

a) Update displayed OPTION value to the selected OPTION before opening a popup, or
b) Commit m_indexToSelectOnCancel, and dispatch 'change' event.

Closing a popup by ESC key and closing a popup by left click do B.  So we should B for right click too.

Firefox on Windows does B. Edge doesn't close a SELECT popup by a right click.

Comment 6 by tkent@chromium.org, Nov 24 2016

Cc: dbeam@chromium.org
Labels: OS-Linux OS-Windows
Owner: tkent@chromium.org
Status: Started (was: Assigned)
Summary: SELECT popup doesn't commit a provisional value on blur (was: Regression: Page Zoom In/Out is seen not changed in chrome://md-settings)
This is a common issue in any operations causing SELECT blur except left click and some gestures.
For example, we can reproduce this by activating a non-Chrome application window instead of two-finger tap.

Project Member

Comment 7 by bugdroid1@chromium.org, Nov 24 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b9ec42c0abbf77c9228f0d97ce261fb16b356094

commit b9ec42c0abbf77c9228f0d97ce261fb16b356094
Author: tkent <tkent@chromium.org>
Date: Thu Nov 24 21:51:32 2016

SELECT element: Commit a provisional OPTION selection on blur.

PopupMenuImpl::hide(), which is called on blur, should have same behavior as
PopupMenuImpl::closePopup(), which is called on canceling a popup.

Also, this CL removes hidePopup() call on 'disabled' attribute change because
enabling 'disabled' attribute will remove the focus, and move blur event handling
from menuListDefaultEventHandler() to dispatchBlurEvent() because
menuListDefaultEventHandler() isn't called if the element is disabled.

BUG= 659585 

Review-Url: https://codereview.chromium.org/2522383002
Cr-Commit-Position: refs/heads/master@{#434395}

[modify] https://crrev.com/b9ec42c0abbf77c9228f0d97ce261fb16b356094/third_party/WebKit/LayoutTests/fast/forms/select-popup/popup-menu-key-operations.html
[modify] https://crrev.com/b9ec42c0abbf77c9228f0d97ce261fb16b356094/third_party/WebKit/LayoutTests/fast/forms/select/select-disabled.html
[modify] https://crrev.com/b9ec42c0abbf77c9228f0d97ce261fb16b356094/third_party/WebKit/LayoutTests/platform/win/fast/forms/select-popup/popup-menu-key-operations-expected.txt
[modify] https://crrev.com/b9ec42c0abbf77c9228f0d97ce261fb16b356094/third_party/WebKit/Source/core/html/HTMLSelectElement.cpp
[modify] https://crrev.com/b9ec42c0abbf77c9228f0d97ce261fb16b356094/third_party/WebKit/Source/web/PopupMenuImpl.cpp

Comment 8 by tkent@chromium.org, Nov 29 2016

Labels: Merge-Request-56
Status: Verified (was: Started)
Verified with 57.0.2934.0 windows.

Comment 9 by dimu@chromium.org, Nov 29 2016

Labels: -Merge-Request-56 Merge-Approved-56 Hotlist-Merge-Approved
Your change meets the bar and is auto-approved for M56 (branch: 2924)
Project Member

Comment 10 by bugdroid1@chromium.org, Nov 29 2016

Labels: -merge-approved-56 merge-merged-2924
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7a2028ca29260a9c87328c9f1b619cad93a2ef1a

commit 7a2028ca29260a9c87328c9f1b619cad93a2ef1a
Author: Kent Tamura <tkent@chromium.org>
Date: Tue Nov 29 01:31:16 2016

Merge "SELECT element: Commit a provisional OPTION selection on blur." to M56

PopupMenuImpl::hide(), which is called on blur, should have same behavior as
PopupMenuImpl::closePopup(), which is called on canceling a popup.

Also, this CL removes hidePopup() call on 'disabled' attribute change because
enabling 'disabled' attribute will remove the focus, and move blur event handling
from menuListDefaultEventHandler() to dispatchBlurEvent() because
menuListDefaultEventHandler() isn't called if the element is disabled.

BUG= 659585 

Review-Url: https://codereview.chromium.org/2522383002
Cr-Commit-Position: refs/heads/master@{#434395}
(cherry picked from commit b9ec42c0abbf77c9228f0d97ce261fb16b356094)

Review URL: https://codereview.chromium.org/2537573003 .

Cr-Commit-Position: refs/branch-heads/2924@{#147}
Cr-Branched-From: 3a87aecc31cd1ffe751dd72c04e5a96a1fc8108a-refs/heads/master@{#433059}

[modify] https://crrev.com/7a2028ca29260a9c87328c9f1b619cad93a2ef1a/third_party/WebKit/LayoutTests/fast/forms/select-popup/popup-menu-key-operations.html
[modify] https://crrev.com/7a2028ca29260a9c87328c9f1b619cad93a2ef1a/third_party/WebKit/LayoutTests/fast/forms/select/select-disabled.html
[modify] https://crrev.com/7a2028ca29260a9c87328c9f1b619cad93a2ef1a/third_party/WebKit/LayoutTests/platform/win/fast/forms/select-popup/popup-menu-key-operations-expected.txt
[modify] https://crrev.com/7a2028ca29260a9c87328c9f1b619cad93a2ef1a/third_party/WebKit/Source/core/html/HTMLSelectElement.cpp
[modify] https://crrev.com/7a2028ca29260a9c87328c9f1b619cad93a2ef1a/third_party/WebKit/Source/web/PopupMenuImpl.cpp

Sign in to add a comment