Branch: refs/heads/webkitglib/2.42
  Home:   https://github.com/WebKit/WebKit
  Commit: 2725c3d1aec9a9030841ec7e3cad9fcac11e2c57
      
https://github.com/WebKit/WebKit/commit/2725c3d1aec9a9030841ec7e3cad9fcac11e2c57
  Author: Simon Fraser <[email protected]>
  Date:   2023-10-19 (Thu, 19 Oct 2023)

  Changed paths:
    A 
LayoutTests/fast/scrolling/mac/scrollbars/overflow-overlay-scrollbar-hit-test-expected.txt
    A 
LayoutTests/fast/scrolling/mac/scrollbars/overflow-overlay-scrollbar-hit-test.html
    M Source/WebCore/rendering/RenderLayer.cpp

  Log Message:
  -----------
  Cherry-pick 269255@main (db2f6b2a047a). 
https://bugs.webkit.org/show_bug.cgi?id=237308

    Unable to scroll results.webkit.org results using the scrollbars
    https://bugs.webkit.org/show_bug.cgi?id=237308
    rdar://89598421

    Reviewed by Dan Glastonbury and Richard Robinson.

    If an overflow:scroll contained a composited, positioned descendant, then 
trying to click and drag an
    overlay scrollbar that overlapped that descendant would fail to work. This 
affected results.webkit.org,
    where the canvas elements caused the bug.

    This happened because when the hit-testing code tested whether the 
composited layer contained the
    point, it would use a backgroundClipRect that was not shrunk for the 
scrollbar. There was already
    a "FIXME" comment on a line of code that explicitly removed the 
`IncludeOverlayScrollbarSize` option,
    and removing this line fixes the bug. The code dates from when composited 
overflow scrolling was
    first implemented (112856@main). `IncludeOverlayScrollbarSize` is only ever 
specified when requesting
    clip rects for hit-testing, so it seems reasonable to assume the code was 
wrong.

    Do other whitespace cleanup in the hit-testing code, including fixing a 
line with bad indentation.

    * 
LayoutTests/fast/scrolling/mac/scrollbars/overflow-overlay-scrollbar-hit-test-expected.txt:
 Added.
    * 
LayoutTests/fast/scrolling/mac/scrollbars/overflow-overlay-scrollbar-hit-test.html:
 Added.
    * Source/WebCore/rendering/RenderLayer.cpp:
    (WebCore::RenderLayer::hitTest):
    (WebCore::RenderLayer::hitTestLayer):
    (WebCore::RenderLayer::hitTestContentsForFragments const):
    (WebCore::RenderLayer::calculateClipRects const):

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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to