[webkit-changes] [WebKit/WebKit] f51974: Change InteracitonRegion to hold an IntRect instea...

megangardner noreply at github.com
Tue Mar 28 16:10:22 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f51974aa4007bbd070c94d507d472bddd1e95745
      https://github.com/WebKit/WebKit/commit/f51974aa4007bbd070c94d507d472bddd1e95745
  Author: Megan Gardner <megan_gardner at apple.com>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M LayoutTests/interaction-region/aria-roles-expected.txt
    M LayoutTests/interaction-region/click-handler-dynamically-added-expected.txt
    M LayoutTests/interaction-region/click-handler-expected.txt
    M LayoutTests/interaction-region/click-handler-in-shadowed-layer-expected.txt
    M LayoutTests/interaction-region/consolidated-nested-regions-expected.txt
    M LayoutTests/interaction-region/event-region-overflow-expected.txt
    M LayoutTests/interaction-region/full-page-overlay-expected.txt
    M LayoutTests/interaction-region/icon-inside-button-single-region-expected.txt
    M LayoutTests/interaction-region/inline-link-dark-background-expected.txt
    M LayoutTests/interaction-region/inline-link-expected.txt
    M LayoutTests/interaction-region/inline-link-in-composited-iframe-expected.txt
    M LayoutTests/interaction-region/inline-link-in-layer-expected.txt
    M LayoutTests/interaction-region/inline-link-in-non-composited-iframe-expected.txt
    M LayoutTests/interaction-region/inline-link-with-pointer-events-none-content-expected.txt
    M LayoutTests/interaction-region/input-type-file-region-expected.txt
    M LayoutTests/interaction-region/input-type-range-region-expected.txt
    M LayoutTests/interaction-region/nested-composited-text-painter-expected.txt
    M LayoutTests/interaction-region/overlap-expected.txt
    M LayoutTests/interaction-region/overlap-same-group-expected.txt
    M LayoutTests/interaction-region/overlay-expected.txt
    M LayoutTests/interaction-region/paused-video-regions-expected.txt
    M LayoutTests/interaction-region/pseudo-element-expected.txt
    M LayoutTests/interaction-region/split-inline-link-expected.txt
    M LayoutTests/interaction-region/wrapped-inline-link-expected.txt
    M Source/WebCore/page/DebugPageOverlays.cpp
    M Source/WebCore/page/InteractionRegion.cpp
    M Source/WebCore/page/InteractionRegion.h
    M Source/WebCore/rendering/EventRegion.cpp
    M Source/WebCore/rendering/EventRegion.h
    M Source/WebCore/rendering/RenderLayerBacking.cpp
    M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
    M Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.mm

  Log Message:
  -----------
  Change InteracitonRegion to hold an IntRect instead of a Region
https://bugs.webkit.org/show_bug.cgi?id=254456
rdar://107216144

Reviewed by Tim Horton.

InteractionRegion currently has a Region as the way that it holds
the data about the interaction. However, Region is a large
data structure, and we only ever put a single Rect into it,
so to save space and performance, we should switch to just using a
Rect instead of a Region.

* LayoutTests/interaction-region/aria-roles-expected.txt:
* LayoutTests/interaction-region/click-handler-dynamically-added-expected.txt:
* LayoutTests/interaction-region/click-handler-expected.txt:
* LayoutTests/interaction-region/click-handler-in-shadowed-layer-expected.txt:
* LayoutTests/interaction-region/consolidated-nested-regions-expected.txt:
* LayoutTests/interaction-region/event-region-overflow-expected.txt:
* LayoutTests/interaction-region/full-page-overlay-expected.txt:
* LayoutTests/interaction-region/icon-inside-button-single-region-expected.txt:
* LayoutTests/interaction-region/inline-link-dark-background-expected.txt:
* LayoutTests/interaction-region/inline-link-expected.txt:
* LayoutTests/interaction-region/inline-link-in-composited-iframe-expected.txt:
* LayoutTests/interaction-region/inline-link-in-layer-expected.txt:
* LayoutTests/interaction-region/inline-link-in-non-composited-iframe-expected.txt:
* LayoutTests/interaction-region/inline-link-with-pointer-events-none-content-expected.txt:
* LayoutTests/interaction-region/input-type-file-region-expected.txt:
* LayoutTests/interaction-region/input-type-range-region-expected.txt:
* LayoutTests/interaction-region/nested-composited-text-painter-expected.txt:
* LayoutTests/interaction-region/overlap-expected.txt:
* LayoutTests/interaction-region/overlay-expected.txt:
* LayoutTests/interaction-region/paused-video-regions-expected.txt:
* LayoutTests/interaction-region/pseudo-element-expected.txt:
* LayoutTests/interaction-region/split-inline-link-expected.txt:
* LayoutTests/interaction-region/wrapped-inline-link-expected.txt:
* Source/WebCore/page/DebugPageOverlays.cpp:
(WebCore::pathsForRect):
(WebCore::InteractionRegionOverlay::activeRegion const):
(WebCore::InteractionRegionOverlay::drawRect):
(WebCore::pathsForRegion): Deleted.
* Source/WebCore/page/InteractionRegion.cpp:
(WebCore::interactionRegionForRenderedRegion):
(WebCore::operator<<):
* Source/WebCore/page/InteractionRegion.h:
(WebCore::operator==):
* Source/WebCore/rendering/EventRegion.cpp:
(WebCore::EventRegionContext::uniteInteractionRegions):
(WebCore::EventRegionContext::copyInteractionRegionsToEventRegion):
(WebCore::EventRegion::translate):
(WebCore::EventRegion::appendInteractionRegions):
(WebCore::EventRegion::uniteInteractionRegions): Deleted.
* Source/WebCore/rendering/EventRegion.h:
* Source/WebCore/rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::paintDebugOverlays):
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.mm:
(WebKit::updateLayersForInteractionRegions):

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




More information about the webkit-changes mailing list