From da4c7e7ed675c3bf405668739c3012d140856109 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 15 May 2024 05:34:42 +0200 Subject: Adding upstream version 126.0. Signed-off-by: Daniel Baumann --- .../tests/SimpleTest/AccessibilityUtils.js | 27 ++++++++++++++++++---- 1 file changed, 22 insertions(+), 5 deletions(-) (limited to 'testing/mochitest/tests/SimpleTest/AccessibilityUtils.js') diff --git a/testing/mochitest/tests/SimpleTest/AccessibilityUtils.js b/testing/mochitest/tests/SimpleTest/AccessibilityUtils.js index cf4daaf416..27a0bdf1f5 100644 --- a/testing/mochitest/tests/SimpleTest/AccessibilityUtils.js +++ b/testing/mochitest/tests/SimpleTest/AccessibilityUtils.js @@ -614,12 +614,13 @@ this.AccessibilityUtils = (function () { (node.tagName == "menuitem" && node.classList.contains("urlbarView-result-menuitem")); + let parentNode = node.getRootNode().host ?? node.parentNode; const isParentMenu = - node.parentNode.getAttribute("role") == "menu" || - (node.parentNode.tagName == "richlistbox" && - node.parentNode.classList.contains("autocomplete-richlistbox")) || - (node.parentNode.tagName == "menupopup" && - node.parentNode.classList.contains("urlbarView-result-menu")); + parentNode.getAttribute("role") == "menu" || + (parentNode.tagName == "richlistbox" && + parentNode.classList.contains("autocomplete-richlistbox")) || + (parentNode.tagName == "menupopup" && + parentNode.classList.contains("urlbarView-result-menu")); return ( isMenuItem && isParentMenu && @@ -1078,6 +1079,22 @@ this.AccessibilityUtils = (function () { } // Walk a11y ancestors until we find one which is interactive. for (; acc; acc = acc.parent) { + const relation = acc.getRelationByType( + Ci.nsIAccessibleRelation.RELATION_LABEL_FOR + ); + if ( + acc.role === Ci.nsIAccessibleRole.ROLE_LABEL && + relation.targetsCount > 0 + ) { + // If a