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

Issue 701268 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Mac
Pri: 1
Type: Bug-Regression

Blocking:
issue 671375


Show other hotlists

Hotlists containing this issue:
MD-Settings-Launch-Blockers


Sign in to add a comment

Regression: Focus ring is not seen on 'current settings' via tab key navigation after clicking on it

Reported by jshan...@etouch.net, Mar 14 2017

Issue description

Chrome Version: 59.0.3041.0 (Official Build) 0192171168e7afc337edc13c1to 50eca4152185cd5-refs/heads/master@{#456562}(32/64 Bit).
OS: Windows (7,8,8.1,10),Linux (14.04 LTS),Mac OS X(10.11.6,10.12.1)

Steps:
1. Launch Chrome and navigate to chrome://settings, click on Advanced
2. Click on 'Reset', then click on 'current settings' and go to previous tab
3. Now press 'Tab' key and observe

Actual: Focus ring is not seen on 'current settings' via tab key navigation after clicking on it

Expected: Focus ring should be seen on 'current settings' via tab key after clicking on it

This is regression issue broken in 'M 59' and will soon update the bisect info:

Good Build 59.0.3037.0
Bad Build 59.0.3038.0.

 
Actual_video.mp4
643 KB View Download
Expected_video.mp4
384 KB View Download
Cc: rbasuvula@chromium.org
Labels: hasbisect-per-revision
Owner: hua...@chromium.org
Status: Assigned (was: Unconfirmed)
Using the per-revision bisect providing the bisect results,
Good build:59.0.3037.0 (Revision:455955).
Bad build:59.0.3038.0 (Revision:456244).

You are probably looking for a change made after 456158 (known good), but no later than 456159 (first known bad).

CHANGE-LOG URL:
---------------
https://chromium.googlesource.com/chromium/src/+log/0d84b239465f9786e3e79e5b89ac14832b70ca7c..d5fc002027195691680b127e58458d1b2b86d5a1

From the CL above, assigning the issue to the concern owner

@huangs : Could you please look into the issue, pardon me if it has nothing to do with your changes and if possible please assign it to concern owner.

Review-Url:  https://codereview.chromium.org/2744893002
Note :Able to reproduce the issue in Win 10.0,Ubuntu 14.04 & Mac 10.12.3 and Able to reproduce in latest Canary #59.0.3040.0

Comment 2 by huangs@google.com, Mar 20 2017

Sorry for the lateness; just saw this.

This is indeed caused by my CL, and was deliberate to emulate regular behavior of <a>: Focus ring do not appear on links with mouse click, including the case where you leave the tab and return to it.  Please see attached index.html file.
index.html
185 bytes View Download

Comment 3 by hua...@chromium.org, Mar 20 2017

Cc: dbeam@chromium.org
Leaning towards WontFix: Working as Intended.  +dbeam@ to comment.

Comment 4 by dbeam@chromium.org, Mar 21 2017

a focus ring should be shown when a user tabs to an action-link.  the "Actual_video" is NOT working as intended.

Comment 5 by hua...@chromium.org, Mar 21 2017

I see. I tried Shift-TAB and TAB previously and the focus ring appears. But if you keep on tabbing forward then the ring doesn't appear! Investigating.

Comment 6 by hua...@chromium.org, Mar 21 2017

This is happening because the "current settings" link happens to be the last tabbable element in DOM. Bug mechanism (see action_link.js):

- Click on link: '.no-outline' gets applied, and ring is hidden.
- Link navigates: 'blur' event is invoked, and the event has e.sourceCapabilities === null, so '.no-outline' is kept, as intended by my fix.
- Return to tab: No change.
- TAB: 'blur' is invoked, but since this is the last tabbable element and focus goes to some stuff outside page, so e.sourceCapabilities === null, and '.no-outline' is kept. If you keep on tabbing forward, '.no-outline' is kept, and we have the bug.
- Meanwhile, if you Shift-TAB, 'blur' is invoked and we land at an element in DOM, so '.no-outline' gets cleared, and on next focus we see border.

In summary, the current approach of using '.no-outline' is non-robust, and my fix neglected edge case of tabbing away from page.
Labels: Hotlist-MD-Settings-General
@huangs any update on this? MD Settings is launching in M59 and this is currently a launch-blocker.
Blocking: 671375
My proposed fix https://chromiumcodereview.appspot.com/2768673002/ does not handle some edge cases, and I didn't have time to address them.  The lower risk change is to revert https://codereview.chromium.org/2744893002 but this reopens  bug 698270 , which I filed.  I'm going with the latter.
Reverting CL in flight: http://crrev.com/2796663002/
Status: Fixed (was: Assigned)
fix landed, bug wasn't updated

Sign in to add a comment