Rollup merge of #107042 - notriddle:notriddle/rustdoc-js-question, r=GuillaumeGomez
rustdoc: fix corner cases with "?" JS keyboard command
This commit is contained in:
commit
6595127e66
@ -390,7 +390,8 @@ function loadCss(cssUrl) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (document.activeElement.tagName === "INPUT" &&
|
if (document.activeElement.tagName === "INPUT" &&
|
||||||
document.activeElement.type !== "checkbox") {
|
document.activeElement.type !== "checkbox" &&
|
||||||
|
document.activeElement.type !== "radio") {
|
||||||
switch (getVirtualKey(ev)) {
|
switch (getVirtualKey(ev)) {
|
||||||
case "Escape":
|
case "Escape":
|
||||||
handleEscape(ev);
|
handleEscape(ev);
|
||||||
@ -1082,6 +1083,9 @@ function loadCss(cssUrl) {
|
|||||||
* Show the help popup menu.
|
* Show the help popup menu.
|
||||||
*/
|
*/
|
||||||
function showHelp() {
|
function showHelp() {
|
||||||
|
// Prevent `blur` events from being dispatched as a result of closing
|
||||||
|
// other modals.
|
||||||
|
getHelpButton().querySelector("a").focus();
|
||||||
const menu = getHelpMenu(true);
|
const menu = getHelpMenu(true);
|
||||||
if (menu.style.display === "none") {
|
if (menu.style.display === "none") {
|
||||||
window.hideAllModals();
|
window.hideAllModals();
|
||||||
|
@ -203,6 +203,25 @@ press-key: "?"
|
|||||||
wait-for-css: ("#help-button .popover", {"display": "block"})
|
wait-for-css: ("#help-button .popover", {"display": "block"})
|
||||||
assert-css: ("#settings-menu .popover", {"display": "none"})
|
assert-css: ("#settings-menu .popover", {"display": "none"})
|
||||||
|
|
||||||
|
// Now switch back to the settings popover, and make sure the keyboard
|
||||||
|
// shortcut works when a check box is selected.
|
||||||
|
click: "#settings-menu > a"
|
||||||
|
wait-for-css: ("#settings-menu .popover", {"display": "block"})
|
||||||
|
focus: "#auto-hide-large-items"
|
||||||
|
press-key: "?"
|
||||||
|
wait-for-css: ("#settings-menu .popover", {"display": "none"})
|
||||||
|
wait-for-css: ("#help-button .popover", {"display": "block"})
|
||||||
|
|
||||||
|
// Now switch back to the settings popover, and make sure the keyboard
|
||||||
|
// shortcut works when a check box is selected.
|
||||||
|
click: "#settings-menu > a"
|
||||||
|
wait-for-css: ("#settings-menu .popover", {"display": "block"})
|
||||||
|
wait-for-css: ("#help-button .popover", {"display": "none"})
|
||||||
|
focus: "#theme-system-preference"
|
||||||
|
press-key: "?"
|
||||||
|
wait-for-css: ("#settings-menu .popover", {"display": "none"})
|
||||||
|
wait-for-css: ("#help-button .popover", {"display": "block"})
|
||||||
|
|
||||||
// Now we go to the settings page to check that the CSS is loaded as expected.
|
// Now we go to the settings page to check that the CSS is loaded as expected.
|
||||||
goto: "file://" + |DOC_PATH| + "/settings.html"
|
goto: "file://" + |DOC_PATH| + "/settings.html"
|
||||||
wait-for: "#settings"
|
wait-for: "#settings"
|
||||||
|
Loading…
Reference in New Issue
Block a user