On Thu, 23 Feb 2023 03:22:19 GMT, Abhishek Kumar <abhis...@openjdk.org> wrote:
>> JAccessWalker was not able to show component tree correctly if we switch >> pages for HTML content. >> >> Observation: >> The issue observed is that the children are not reported correct for root >> element when switching of pages happened. The reason behind it is that the >> `getAccessibleChildrenCount` API is called on the old `accessibleContext` >> object which return the children count as 0. Whenever we switch the page the >> children count is recalculated based on the root element but the >> `accessibleContext `object used to retrieve the child remains unchanged and >> due to that it return the children count 0. >> >> Solution: >> >> Added a condition check to create a new `accessibleContext `object to find >> out the children count correctly whenever we switch the pages in >> JEditorPane. >> >> Checked with the SwingSet2 JEditorPane demo and it reports well the >> component tree in JAccessWalker. >> >> Steps to verify: >> >> JBS contains the steps to reproduce the scenario. > > Abhishek Kumar has updated the pull request incrementally with one additional > commit since the last revision: > > Copyright year update src/java.desktop/share/classes/javax/swing/text/html/HTMLEditorKit.java line 690: > 688: if (accessibleContext == null > 689: || doc != theEditor.getDocument()) { > 690: AccessibleHTML a = new AccessibleHTML(theEditor); The "AccessibleHTML" internally registers the listener on the editor to update the state/doc. Why that notification does not work and it is necessary to recreate the "AccessibleHTML" here? ------------- PR: https://git.openjdk.org/jdk/pull/12707