| Index: chrome/browser/resources/settings/settings_page/settings_animated_pages.js
|
| diff --git a/chrome/browser/resources/settings/settings_page/settings_animated_pages.js b/chrome/browser/resources/settings/settings_page/settings_animated_pages.js
|
| index 3da7e7a3771d95773f3b294bd853e65a5d137363..b50d4fc6d0680c27ed6700cc9be789ca19d15000 100644
|
| --- a/chrome/browser/resources/settings/settings_page/settings_animated_pages.js
|
| +++ b/chrome/browser/resources/settings/settings_page/settings_animated_pages.js
|
| @@ -51,6 +51,11 @@ Polymer({
|
| this.lightDomChanged_.bind(this));
|
| },
|
|
|
| + /** @override */
|
| + attached: function() {
|
| + this.outline_ = cr.ui.FocusOutlineManager.forDocument(document);
|
| + },
|
| +
|
| /**
|
| * @param {!Event} e
|
| * @private
|
| @@ -82,7 +87,19 @@ Polymer({
|
| // the currentRouteChanged callback. Using 'iron-select' listener which
|
| // fires after the animation has finished allows focus() to work as
|
| // expected.
|
| - this.querySelector(selector).focus();
|
| + var toFocus = this.querySelector(selector);
|
| + var suppressInk = !this.outline_.visible;
|
| + var origNoInk;
|
| +
|
| + if (suppressInk) {
|
| + origNoInk = toFocus.noink;
|
| + toFocus.noink = true;
|
| + }
|
| +
|
| + toFocus.focus();
|
| +
|
| + if (suppressInk)
|
| + toFocus.noink = origNoInk;
|
| }
|
| },
|
|
|
|
|