Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b0c474278a21a86b9016c195b12a99c53bd6c45f
      
https://github.com/WebKit/WebKit/commit/b0c474278a21a86b9016c195b12a99c53bd6c45f
  Author: Luming Yin <[email protected]>
  Date:   2023-08-09 (Wed, 09 Aug 2023)

  Changed paths:
    M Source/WebCore/platform/ScrollbarTheme.h
    M Source/WebCore/platform/graphics/GraphicsLayer.cpp
    M Source/WebCore/platform/graphics/GraphicsLayer.h
    M Source/WebCore/platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm
    M Source/WebCore/platform/mac/ScrollbarThemeMac.h
    M Source/WebCore/platform/mac/ScrollbarThemeMac.mm
    M Source/WebCore/rendering/RenderLayerCompositor.cpp
    M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.mm

  Log Message:
  -----------
  [macOS] Remove linen texture when zoomed or rubber banding
https://bugs.webkit.org/show_bug.cgi?id=260002
rdar://113648503

Reviewed by Simon Fraser.

When running on OS X Mavericks 10.9 and earlier, web views used to draw a gray 
linen texture when zoomed out or
rubber banding. This design has been replaced with a flat color since the OS X 
Yosemite 10.10, but we continue
to draw the linen texture, only to have it covered by an opaque foreground 
layer.

In popup windows, this linen texture may unexpectedly become visible in some 
circumstances on macOS Sonoma. To
reduce resource usage and remove a source of layout bugs, drop the linen 
texture implementation completely.

* Source/WebCore/platform/ScrollbarTheme.h:
(WebCore::ScrollbarTheme::setUpOverhangAreasLayerContents): Deleted.
(WebCore::ScrollbarTheme::setUpContentShadowLayer): Deleted.
Removed since these are no longer used on supported versions of macOS.

* Source/WebCore/platform/graphics/GraphicsLayer.cpp:
(WebCore::operator<<):
Remove the ScrollingOverhang appearance since we no longer need to draw any 
linen.

* Source/WebCore/platform/graphics/GraphicsLayer.h:
Same as above.

* Source/WebCore/platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm:
(WebCore::PlatformCALayerCocoa::updateCustomAppearance):
Do not set up or remove the linen overhang area background.

* Source/WebCore/platform/mac/ScrollbarThemeMac.h:
* Source/WebCore/platform/mac/ScrollbarThemeMac.mm:
(WebCore::linenBackgroundColor): Deleted.
(WebCore::ScrollbarThemeMac::setUpOverhangAreaBackground): Deleted.
(WebCore::ScrollbarThemeMac::removeOverhangAreaBackground): Deleted.
(WebCore::ScrollbarThemeMac::setUpOverhangAreasLayerContents): Deleted.
(WebCore::ScrollbarThemeMac::setUpContentShadowLayer): Deleted.
Remove code to set up and update the linen overhang area background.

* Source/WebCore/rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateLayerForOverhangAreasBackgroundColor):
Stop setting a custom linen appearance for the overhang area.

* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.mm:
(WebKit::updateCustomAppearance):
Do not set up or remove the linen overhang area background.

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


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

Reply via email to