This results in accessibility clients not getting the information they need to make the correct announcement.
<rdar://problem/105501379>
rdar://102025959
Created attachment 465018 [details] Patch
Comment on attachment 465018 [details] Patch Talked with Tyler and given that the new test exercises this code path without causing problems is a good sign that this is correct behavior
For more context, these checks were originally added in: https://github.com/WebKit/WebKit/commit/e55881c553216d5c417ed9ac9dbb48c079e689ec (search for "recalc") That commit added a test called accessibility/heading-crash-after-hidden.html which we still pass in release and debug with this change.
Created attachment 465043 [details] Patch
(In reply to Tyler Wilcock from comment #6) > Created attachment 465043 [details] > Patch diff --git a/LayoutTests/accessibility/empty-text-under-element-cached.html b/LayoutTests/accessibility/empty-text-under-element-cached.html new file mode 100644 index 000000000000..d74525ca8d60 --- /dev/null +++ b/LayoutTests/accessibility/empty-text-under-element-cached.html + finishJSTest(); Do you need this? I didn't see jsTestIsAsync = true; This covers the test case where the iso tree is built for the first time. Should we cover the case where a change happens after the iso tree is built and needs an update? Maybe adding a <l> and a <LI> with some text which was the case in QA's report.
Created attachment 465063 [details] Patch
Created attachment 465066 [details] Patch
(In reply to Andres Gonzalez from comment #7) > This covers the test case where the iso tree is built for the first time. > Should we cover the case where a change happens after the iso tree is built > and needs an update? Maybe adding a <l> and a <LI> with some text which was > the case in QA's report. OK, added this additional testcase in the latest patch.
Committed 260521@main (87adaeb6e078): <https://commits.webkit.org/260521@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 465066 [details].