New issue
Advanced search Search tips

Issue 917018 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Dec 21
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

'contain: size' not applied to some replaced content

Project Member Reported by f...@opera.com, Dec 20

Issue description

'contain: size' will not have an effect on for instance <object> and <svg>.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Dec 21

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ba6fac3722b2a088fcd4cd293e9ca4a7070ec220

commit ba6fac3722b2a088fcd4cd293e9ca4a7070ec220
Author: Fredrik Söderquist <fs@opera.com>
Date: Fri Dec 21 10:51:52 2018

Move 'contain: size' handling for replaced content

For Legacy layout, hoist the check for size containment out to
ComputeIntrinsicSizingInfoForReplacedContent, since this is the "real"
entrypoint.
For NG, put the check in NGLayoutInputNode::IntrinsicSize.

This also makes ComputeIntrinsicSizingInfo slightly more focused on
computing the intrinsic dimensions, and avoids calling it at all if
the box is subject to size containment.

Bug:  917018 
Change-Id: I0e3fdc48e9c5a104cadaa253cb7cef23fdc42ece
Reviewed-on: https://chromium-review.googlesource.com/c/1386849
Commit-Queue: Fredrik Söderquist <fs@opera.com>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Reviewed-by: Aleks Totic <atotic@chromium.org>
Reviewed-by: Manuel Rego <rego@igalia.com>
Cr-Commit-Position: refs/heads/master@{#618496}
[modify] https://crrev.com/ba6fac3722b2a088fcd4cd293e9ca4a7070ec220/third_party/blink/renderer/core/layout/layout_embedded_object.cc
[modify] https://crrev.com/ba6fac3722b2a088fcd4cd293e9ca4a7070ec220/third_party/blink/renderer/core/layout/layout_image.cc
[modify] https://crrev.com/ba6fac3722b2a088fcd4cd293e9ca4a7070ec220/third_party/blink/renderer/core/layout/layout_replaced.cc
[modify] https://crrev.com/ba6fac3722b2a088fcd4cd293e9ca4a7070ec220/third_party/blink/renderer/core/layout/ng/ng_layout_input_node.cc
[modify] https://crrev.com/ba6fac3722b2a088fcd4cd293e9ca4a7070ec220/third_party/blink/renderer/core/layout/svg/layout_svg_root.cc
[add] https://crrev.com/ba6fac3722b2a088fcd4cd293e9ca4a7070ec220/third_party/blink/web_tests/external/wpt/css/css-contain/contain-size-replaced-001.html
[add] https://crrev.com/ba6fac3722b2a088fcd4cd293e9ca4a7070ec220/third_party/blink/web_tests/external/wpt/css/css-contain/contain-size-replaced-002.html

Status: Fixed (was: Started)

Sign in to add a comment