[webkit-changes] [WebKit/WebKit] d68576: AX: Avoid hitting the main thread in [WKAccessibil...

AndresGonzalezApple noreply at github.com
Wed May 3 11:59:52 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d68576bd2062daafae85ba434f9fde14418ba16d
      https://github.com/WebKit/WebKit/commit/d68576bd2062daafae85ba434f9fde14418ba16d
  Author: Andres Gonzalez <andresg_22 at apple.com>
  Date:   2023-05-03 (Wed, 03 May 2023)

  Changed paths:
    M Source/WebKit/WebProcess/WebPage/mac/WKAccessibilityWebPageObjectMac.h
    M Source/WebKit/WebProcess/WebPage/mac/WKAccessibilityWebPageObjectMac.mm

  Log Message:
  -----------
  AX: Avoid hitting the main thread in [WKAccessibilityWebPageObject accessibilityParameterizedAttributeNames] in isolated tree mode.
https://bugs.webkit.org/show_bug.cgi?id=256238
<rdar://problem/108818952>

Reviewed by Tyler Wilcock.

This attribute was being retrieved from the main thread upon request for the first time and cached. The problem was that this first time occurs during page load when the main thread is busy rendering the page and building the isolated tree. This patch avoids hitting the main thread by initializing the cached array of parameterized attribute names when the WebPage is first set for the object. Analogously, the initialization of the array of attribute names is now done on the object init method.

* Source/WebKit/WebProcess/WebPage/mac/WKAccessibilityWebPageObjectMac.h:
* Source/WebKit/WebProcess/WebPage/mac/WKAccessibilityWebPageObjectMac.mm:
(-[WKAccessibilityWebPageObject init]):
(-[WKAccessibilityWebPageObject setWebPage:]):
(-[WKAccessibilityWebPageObject ALLOW_DEPRECATED_IMPLEMENTATIONS_END]):

Canonical link: https://commits.webkit.org/263642@main




More information about the webkit-changes mailing list