Pier Angelo Vendrame pushed to branch tor-browser-115.3.1esr-13.0-1 at The Tor Project / Applications / Tor Browser
Commits: 00e9622f by Henry Wilkes at 2023-10-11T11:24:18+01:00 fixup! Bug 41454: Move focus after calling openPreferences for a sub-category. Bug 42167: Make the auto-focus more reliable. No longer use the setTimeout to wait a loop, but instead wait for the "load" event. - - - - - 1 changed file: - browser/components/preferences/preferences.js Changes: ===================================== browser/components/preferences/preferences.js ===================================== @@ -491,14 +491,23 @@ async function scrollAndHighlight(subcategory, category) { // We assign a tabindex=-1 to the element so that we can focus it. This allows // us to move screen reader's focus to an arbitrary position on the page. - // See tor-browser#41454 and bug 1799153. - element.setAttribute("tabindex", "-1"); - // The element is not always immediately focusable, so we wait until the next - // loop. - setTimeout(() => { + // See tor-browser#41454 and mozilla bug 1799153. + const doFocus = () => { + element.setAttribute("tabindex", "-1"); Services.focus.setFocus(element, Services.focus.FLAG_NOSCROLL); + // Immediately remove again now that it has focus. element.removeAttribute("tabindex"); - }); + }; + // The element is not always immediately focusable, so we wait until document + // load. + if (document.readyState === "complete") { + doFocus(); + } else { + // Wait until document load to move focus. + // NOTE: This should be called after DOMContentLoaded, where the searchInput + // is focused. + window.addEventListener("load", doFocus, { once: true }); + } scrollContentTo(header); element.classList.add("spotlight"); View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/00e9622f5d1eb80639c0304625acb89343fe79d5 -- View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/00e9622f5d1eb80639c0304625acb89343fe79d5 You're receiving this email because of your account on gitlab.torproject.org.
_______________________________________________ tor-commits mailing list tor-commits@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits