[webkit-changes] [WebKit/WebKit] a587bb: AX: Remove unnecessary properties AXPropertyName::...

Tyler Wilcock noreply at github.com
Sun Dec 22 10:54:30 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: a587bbdcbff17f05d8d5a7a5707a0074f513642a
      https://github.com/WebKit/WebKit/commit/a587bbdcbff17f05d8d5a7a5707a0074f513642a
  Author: Tyler Wilcock <tyler_w at apple.com>
  Date:   2024-12-22 (Sun, 22 Dec 2024)

  Changed paths:
    M Source/WebCore/SaferCPPExpectations/UncountedLocalVarsCheckerExpectations
    M Source/WebCore/accessibility/AXCoreObject.cpp
    M Source/WebCore/accessibility/AXCoreObject.h
    M Source/WebCore/accessibility/AXLogger.cpp
    M Source/WebCore/accessibility/AccessibilityObject.h
    M Source/WebCore/accessibility/AccessibilityTableColumn.cpp
    M Source/WebCore/accessibility/AccessibilityTableColumn.h
    M Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp
    M Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h
    M Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h

  Log Message:
  -----------
  AX: Remove unnecessary properties AXPropertyName::ColumnHeader and AXPropertyName::IsTableColumn
https://bugs.webkit.org/show_bug.cgi?id=285075
rdar://141892269

Reviewed by Chris Fleizach.

AXPropertyName::ColumnHeader can be syntheized on-demand with already cached information on the secondary thread, so we shouldn't
eagerly cache it. Removing this property saves memory.

AXPropertyName::IsTableColumn can be expressed in terms of roleValue(), so we don't need to cache it as its own property.
This also lets us make AXCoreObject::isTableColumn() non-virtual, enabling more compiler optimizations.

This patch also stops caching AXPropertyName::IsWidget == true for objects that are isPlugin(), saving a bit of memory.
Plugins are a subclass of widget, so we don't need to cache both. AXIsolatedObject::isWidget() now checks for both
AXPropertyName::IsWidget and AXPropertyName::IsPlugin.

* Source/WebCore/accessibility/AXCoreObject.cpp:
(WebCore::AXCoreObject::columnHeader):
* Source/WebCore/accessibility/AXCoreObject.h:
* Source/WebCore/accessibility/AXLogger.cpp:
(WebCore::operator<<):
* Source/WebCore/accessibility/AccessibilityObject.h:
* Source/WebCore/accessibility/AccessibilityTableColumn.cpp:
(WebCore::AccessibilityTableColumn::columnHeader): Deleted.
* Source/WebCore/accessibility/AccessibilityTableColumn.h:
* Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeProperties):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h:
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.h:

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



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list