wasm: Honor invisible and disabled when setting visibility for a11y

Task-number: QTBUG-115926
Change-Id: I04ccf9371af4eb4890a9cfe21cc6d8f005a3cc44
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
This commit is contained in:
Even Oscar Andersen 2025-03-07 07:38:47 +01:00
parent c1fba2d4ee
commit 53bfe72967

View File

@ -330,6 +330,7 @@ void QWasmAccessibility::setHtmlElementVisibility(QAccessibleInterface *iface, b
container.call<void>("appendChild", element);
visible = visible && !iface->state().invisible && !iface->state().disabled;
element.set("ariaHidden", !visible); // ariaHidden mean completely hidden; maybe some sort of soft-hidden should be used.
}
@ -549,8 +550,7 @@ void QWasmAccessibility::populateAccessibilityTree(QAccessibleInterface *iface)
// Create html element for the interface, sync up properties.
ensureHtmlElement(iface);
const bool visible = !iface->state().invisible;
setHtmlElementVisibility(iface, visible);
setHtmlElementVisibility(iface, true);
setHtmlElementGeometry(iface);
setHtmlElementTextName(iface);
setHtmlElementDescription(iface);