[webkit-changes] [WebKit/WebKit] f66ead: REGRESSION(253790 at main): Fullscreen animation on N...

Jer Noble noreply at github.com
Tue Oct 11 11:05:30 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f66eadee1b7ac5f0901e1912322b9cf4893a20bb
      https://github.com/WebKit/WebKit/commit/f66eadee1b7ac5f0901e1912322b9cf4893a20bb
  Author: Jer Noble <jer.noble at apple.com>
  Date:   2022-10-11 (Tue, 11 Oct 2022)

  Changed paths:
    M LayoutTests/TestExpectations
    M LayoutTests/fullscreen/full-screen-test.js
    A LayoutTests/fullscreen/fullscreen-enter-bottom-padding-animation-expected.txt
    A LayoutTests/fullscreen/fullscreen-enter-bottom-padding-animation.html
    M LayoutTests/platform/wk2/TestExpectations
    M Source/WebCore/rendering/RenderLayerBacking.h
    M Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.cpp
    M Tools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp

  Log Message:
  -----------
  REGRESSION(253790 at main): Fullscreen animation on NHL.com looks weird
https://bugs.webkit.org/show_bug.cgi?id=246023
<rdar://100463264>

Reviewed by Eric Carlson.

NHL.com vertically centers its video content with a `padding-bottom:56%` rule. This, when combined
with an absolutely positioned child element, causes the RenderLayerBacking::contentsBox() to return
a very small rect, which is used by screenRectOfContents() in WebFullScreenManager in the case
where the fullscreen element is layer-backed to calculate the starting and ending screen location
for the fullscreen animation.

In this layer-backed case, use compositedBounds() rather than contentsBox(), as this more correctly
represents the visual bounds of the element.

* Source/WebCore/rendering/RenderLayerBacking.h:
* Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.cpp:
(WebKit::screenRectOfContents):

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




More information about the webkit-changes mailing list