Changeset 289686 in webkit


Ignore:
Timestamp:
Feb 11, 2022 5:52:57 PM (5 months ago)
Author:
Alan Bujtas
Message:

contain:content breaks fullscreen
https://bugs.webkit.org/show_bug.cgi?id=236470
<rdar://88689388>

Reviewed by Simon Fraser.

Source/WebCore:

Paint/layout containment forms a containing block for fixed positioned block boxes. It makes all fixed
positioned descendants anchored (contained) to this layout container.
This patch enables fullscreen boxes break out of this non-ICB based layout scope (this is similar to what we
do for other, "layout scope changing" properties, see canContainFixedPositionObjects).

Test: fullscreen/fullscreen-prevented-by-containment.html

  • css/fullscreen.css:

(:-webkit-full-screen-ancestor:not(iframe)):

  • css/parser/CSSParserContext.cpp:

(WebCore::CSSParserContext::CSSParserContext):

LayoutTests:

  • fullscreen/fullscreen-prevented-by-containment-expected.txt: Added.
  • fullscreen/fullscreen-prevented-by-containment.html: Added.
Location:
trunk
Files:
2 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r289677 r289686  
     12022-02-11  Alan Bujtas  <zalan@apple.com>
     2
     3        `contain:content` breaks fullscreen
     4        https://bugs.webkit.org/show_bug.cgi?id=236470
     5        <rdar://88689388>
     6
     7        Reviewed by Simon Fraser.
     8
     9        * fullscreen/fullscreen-prevented-by-containment-expected.txt: Added.
     10        * fullscreen/fullscreen-prevented-by-containment.html: Added.
     11
    1122022-02-11  Truitt Savell  <tsavell@apple.com>
    213
  • trunk/Source/WebCore/ChangeLog

    r289682 r289686  
     12022-02-11  Alan Bujtas  <zalan@apple.com>
     2
     3        `contain:content` breaks fullscreen
     4        https://bugs.webkit.org/show_bug.cgi?id=236470
     5        <rdar://88689388>
     6
     7        Reviewed by Simon Fraser.
     8
     9        Paint/layout containment forms a containing block for fixed positioned block boxes. It makes all fixed
     10        positioned descendants anchored (contained) to this layout container.
     11        This patch enables fullscreen boxes break out of this non-ICB based layout scope (this is similar to what we
     12        do for other, "layout scope changing" properties, see canContainFixedPositionObjects).
     13
     14        Test: fullscreen/fullscreen-prevented-by-containment.html
     15
     16        * css/fullscreen.css:
     17        (:-webkit-full-screen-ancestor:not(iframe)):
     18        * css/parser/CSSParserContext.cpp:
     19        (WebCore::CSSParserContext::CSSParserContext):
     20
    1212022-02-11  Commit Queue  <commit-queue@webkit.org>
    222
  • trunk/Source/WebCore/css/fullscreen.css

    r268849 r289686  
    4949    -webkit-transform-style: flat !important;
    5050    overflow: visible !important;
     51    contain: none !important;
    5152}
    5253
  • trunk/Source/WebCore/css/parser/CSSParserContext.cpp

    r288590 r289686  
    5252        focusVisibleEnabled = true;
    5353        inputSecurityEnabled = true;
     54        containmentEnabled = true;
    5455#if ENABLE(CSS_TRANSFORM_STYLE_OPTIMIZED_3D)
    5556        transformStyleOptimized3DEnabled = true;
Note: See TracChangeset for help on using the changeset viewer.