[webkit-changes] [WebKit/WebKit] 5ca222: Remove RenderFullScreen and RenderTreeBuilderFullS...

Tim Nguyen noreply at github.com
Mon Oct 17 12:32:11 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5ca2229ca6786088cfef0154b43c850d26e8b4c9
      https://github.com/WebKit/WebKit/commit/5ca2229ca6786088cfef0154b43c850d26e8b4c9
  Author: Tim Nguyen <ntim at apple.com>
  Date:   2022-10-17 (Mon, 17 Oct 2022)

  Changed paths:
    M LayoutTests/compositing/no-compositing-when-fulll-screen-is-present-expected.txt
    M LayoutTests/fullscreen/full-screen-layer-dump-expected.txt
    R LayoutTests/fullscreen/full-screen-placeholder-expected.txt
    R LayoutTests/fullscreen/full-screen-placeholder.html
    M LayoutTests/fullscreen/fullscreen-restore-scroll-position.html
    R LayoutTests/platform/glib/fullscreen/full-screen-placeholder-expected.txt
    M LayoutTests/platform/gtk/compositing/no-compositing-when-fulll-screen-is-present-expected.txt
    M Source/WebCore/Sources.txt
    M Source/WebCore/dom/Document.cpp
    M Source/WebCore/dom/FullscreenManager.cpp
    M Source/WebCore/dom/FullscreenManager.h
    M Source/WebCore/page/FrameView.cpp
    R Source/WebCore/rendering/RenderFullScreen.cpp
    R Source/WebCore/rendering/RenderFullScreen.h
    M Source/WebCore/rendering/RenderInline.cpp
    M Source/WebCore/rendering/RenderLayerCompositor.cpp
    M Source/WebCore/rendering/RenderVideo.cpp
    M Source/WebCore/rendering/RenderVideo.h
    M Source/WebCore/rendering/updating/RenderTreeBuilder.cpp
    M Source/WebCore/rendering/updating/RenderTreeBuilder.h
    M Source/WebCore/rendering/updating/RenderTreeBuilderBlock.cpp
    R Source/WebCore/rendering/updating/RenderTreeBuilderFullScreen.cpp
    R Source/WebCore/rendering/updating/RenderTreeBuilderFullScreen.h
    M Source/WebCore/rendering/updating/RenderTreeBuilderInline.cpp
    M Source/WebCore/rendering/updating/RenderTreeUpdater.cpp

  Log Message:
  -----------
  Remove RenderFullScreen and RenderTreeBuilderFullScreen
https://bugs.webkit.org/show_bug.cgi?id=246065
rdar://100793009

Reviewed by Simon Fraser.

RenderFullscreen was added to prevent visible layout shifts while a certain element is being fullscreened. This is now unnecessary with the current CSS for fullscreen elements,
since fullscreen will expand and fixed position the element immeditately. It has no performance benefit given making an element fullscreen already schedules a full style rebuild and changes
layout for the whole ancestor chain for the current fullscreen element.

Remove it since it is not trivial to maintain, makes porting to top layer and future projects like LFC harder.

* LayoutTests/compositing/no-compositing-when-fulll-screen-is-present-expected.txt:
* LayoutTests/fullscreen/full-screen-layer-dump-expected.txt:
* LayoutTests/fullscreen/full-screen-placeholder-expected.txt: Removed.
* LayoutTests/fullscreen/full-screen-placeholder.html: Removed.
* LayoutTests/fullscreen/fullscreen-restore-scroll-position.html:
* LayoutTests/platform/glib/fullscreen/full-screen-placeholder-expected.txt: Removed.
* LayoutTests/platform/gtk/compositing/no-compositing-when-fulll-screen-is-present-expected.txt:
* Source/WebCore/Sources.txt:
* Source/WebCore/dom/Document.cpp:
* Source/WebCore/dom/FullscreenManager.cpp:
(WebCore::FullscreenManager::willEnterFullscreen):
(WebCore::FullscreenManager::didEnterFullscreen):
(WebCore::FullscreenManager::willExitFullscreen):
(WebCore::FullscreenManager::didExitFullscreen):
(WebCore::FullscreenManager::setFullscreenRenderer): Deleted.
(WebCore::FullscreenManager::fullscreenRenderer const): Deleted.
(WebCore::unwrapFullscreenRenderer): Deleted.
* Source/WebCore/dom/FullscreenManager.h:
* Source/WebCore/page/FrameView.cpp:
* Source/WebCore/rendering/RenderFullScreen.cpp: Removed.
* Source/WebCore/rendering/RenderFullScreen.h: Removed.
* Source/WebCore/rendering/RenderLayerCompositor.cpp:
(WebCore::isDescendantOfFullScreenLayer):
* Source/WebCore/rendering/RenderVideo.cpp:
(WebCore::placeholder): Deleted.
(WebCore::RenderVideo::offsetLeft const): Deleted.
(WebCore::RenderVideo::offsetTop const): Deleted.
(WebCore::RenderVideo::offsetWidth const): Deleted.
(WebCore::RenderVideo::offsetHeight const): Deleted.
* Source/WebCore/rendering/RenderVideo.h:
* Source/WebCore/rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::RenderTreeBuilder):
(WebCore::RenderTreeBuilder::destroy):
(WebCore::RenderTreeBuilder::createPlaceholderForFullScreen): Deleted.
* Source/WebCore/rendering/updating/RenderTreeBuilder.h:
(WebCore::RenderTreeBuilder::continuationBuilder):
(WebCore::RenderTreeBuilder::fullScreenBuilder): Deleted.
* Source/WebCore/rendering/updating/RenderTreeBuilderBlock.cpp:
(WebCore::RenderTreeBuilder::Block::attachIgnoringContinuation):
* Source/WebCore/rendering/updating/RenderTreeBuilderFullScreen.cpp: Removed.
* Source/WebCore/rendering/updating/RenderTreeBuilderFullScreen.h: Removed.
* Source/WebCore/rendering/updating/RenderTreeBuilderInline.cpp:
(WebCore::RenderTreeBuilder::Inline::splitInlines):
* Source/WebCore/rendering/updating/RenderTreeUpdater.cpp:
(WebCore::RenderTreeUpdater::createRenderer):

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




More information about the webkit-changes mailing list