Changeset 166301 in webkit


Ignore:
Timestamp:
Mar 26, 2014 11:20:15 AM (10 years ago)
Author:
zoltan@webkit.org
Message:

[CSS Shapes] Remove shape-inside support
https://bugs.webkit.org/show_bug.cgi?id=130698

Reviewed by David Hyatt.

.:

  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

CSS Shapes Level 1 (CR) only contains shape-outside. We are focusing our efforts on finalizing
the implementation of shape-outside, it's worth to remove shape-inside code at this point for now.

A list of reasons for the removal:

  • Shape-inside is only part of Shapes Level 2, which needs to be improved on some topics.
  • Shape-inside is lack of new shapes support (e.g. inset).
  • Deprecated shapes (r165472) are removed from the code (e.g. rectangle), which affects shape-inside.
  • The current shape-inside code spreads across the layout code.
  • The current shape-inside implementation is experimental in some areas, and the partially implemented code can have security implications.
  • Removal of shape-inside opens possibilities for code complexity and performance optimizations for shape-outside. (e.g. simpler geometry code)

No new tests are needed.

  • CMakeLists.txt:
  • Configurations/FeatureDefines.xcconfig:
  • GNUmakefile.list.am:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSParser.cpp:

(WebCore::isSimpleLengthPropertyID):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseShapeProperty):

  • css/CSSPropertyNames.in:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):
(WebCore::StyleResolver::loadPendingImages):

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState):

  • rendering/LayoutState.h:

(WebCore::LayoutState::LayoutState):
(WebCore::LayoutState::shapeInsideInfo): Deleted.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::styleDidChange):
(WebCore::RenderBlock::imageChanged):
(WebCore::RenderBlock::preparePaginationBeforeBlockLayout):
(WebCore::RenderBlock::relayoutShapeDescendantIfMoved): Deleted.
(WebCore::RenderBlock::logicalOffsetFromShapeAncestorContainer): Deleted.
(WebCore::RenderBlock::updateShapeInsideInfoAfterStyleChange): Deleted.
(WebCore::RenderBlock::ensureShapeInsideInfo): Deleted.
(WebCore::RenderBlock::shapeInsideInfo): Deleted.
(WebCore::RenderBlock::setShapeInsideInfo): Deleted.
(WebCore::RenderBlock::markShapeInsideDescendantsForLayout): Deleted.
(WebCore::RenderBlock::layoutShapeInsideInfo): Deleted.
(WebCore::shapeInfoRequiresRelayout): Deleted.
(WebCore::RenderBlock::computeShapeSize): Deleted.
(WebCore::RenderBlock::updateShapesBeforeBlockLayout): Deleted.
(WebCore::RenderBlock::updateShapesAfterBlockLayout): Deleted.
(WebCore::RenderBlock::prepareShapesAndPaginationBeforeBlockLayout): Deleted.

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::allowsShapeInsideInfoSharing): Deleted.

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::layoutBlock):
(WebCore::RenderBlockFlow::layoutBlockChild):
(WebCore::RenderBlockFlow::computeLogicalLocationForFloat):

  • rendering/RenderBlockFlow.h:
  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::computeInlineDirectionPositionsForLine):
(WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
(WebCore::constructBidiRunsForLine): Deleted.
(WebCore::pushShapeContentOverflowBelowTheContentBox): Deleted.
(WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLine): Deleted.
(WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread): Deleted.
(WebCore::adjustLogicalLineTop): Deleted.
(WebCore::RenderBlockFlow::adjustLogicalLineTopAndLogicalHeightIfNeeded): Deleted.

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::~RenderElement):
(WebCore::RenderElement::initializeStyle):
(WebCore::RenderElement::setStyle):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock):

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::layoutBlock):

  • rendering/RenderNamedFlowFragment.cpp:

(WebCore::RenderNamedFlowFragment::createStyle):

  • rendering/RenderView.h:
  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::canUseFor):

  • rendering/line/BreakingContextInlineHeaders.h:

(WebCore::BreakingContext::handleText):
(WebCore::BreakingContext::handleEndOfLine):
(WebCore::updateSegmentsForShapes): Deleted.

  • rendering/line/LineBreaker.cpp:

(WebCore::LineBreaker::nextLineBreak):

  • rendering/line/LineWidth.cpp:

(WebCore::LineWidth::LineWidth):
(WebCore::LineWidth::updateAvailableWidth):
(WebCore::LineWidth::wrapNextToShapeOutside):
(WebCore::LineWidth::fitBelowFloats):
(WebCore::LineWidth::updateLineSegment): Deleted.
(WebCore::LineWidth::updateCurrentShapeSegment): Deleted.

  • rendering/line/LineWidth.h:
  • rendering/shapes/ShapeInsideInfo.cpp: Removed.
  • rendering/shapes/ShapeInsideInfo.h: Removed.
  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::changeRequiresLayout):

  • rendering/style/RenderStyle.h:
  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):

  • rendering/style/StyleRareNonInheritedData.h:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Tools:

  • Scripts/webkitperl/FeatureList.pm:

LayoutTests:

  • fast/regions/shape-inside/shape-inside-on-additional-regions-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-additional-regions.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-first-region-block-content-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-first-region-block-content.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-first-region-inline-content-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-first-region-inline-content.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-multiple-autoheight-regions-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-multiple-autoheight-regions.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-multiple-regions-bottom-adjustment-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-multiple-regions-bottom-adjustment.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-basic-overflow-shape-top-offset-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-basic-overflow-shape-top-offset.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-bottom-positioned-multiple-shapes-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-bottom-positioned-multiple-shapes.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-multiple-shapes-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-multiple-shapes.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-polygon-with-adjustment-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-polygon-with-adjustment.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-basic-overflow-shape-top-offset-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-basic-overflow-shape-top-offset.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-bottom-positioned-multiple-shapes-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-bottom-positioned-multiple-shapes.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-multiple-shapes-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-multiple-shapes.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-polygon-with-adjustment-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-polygon-with-adjustment.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-second-region-block-content-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-second-region-block-content.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-second-region-inline-content-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-second-region-inline-content.html: Removed.
  • fast/regions/shape-inside/shape-inside-recursive-layout-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-recursive-layout.html: Removed.
  • fast/regions/shape-inside/shape-inside-with-region-borders-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-with-region-borders.html: Removed.
  • fast/regions/shape-inside/shape-inside-with-region-padding-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-with-region-padding.html: Removed.
  • fast/shapes/css-shapes-disabled-expected.txt:
  • fast/shapes/css-shapes-disabled.html:
  • fast/shapes/css-shapes-enabled-expected.txt:
  • fast/shapes/css-shapes-enabled.html:
  • fast/shapes/parsing/parsing-shape-inside-expected.txt: Removed.
  • fast/shapes/parsing/parsing-shape-inside.html: Removed.
  • fast/shapes/parsing/parsing-shape-lengths-expected.txt:
  • fast/shapes/parsing/parsing-shape-lengths.html:
  • fast/shapes/parsing/parsing-shape-padding-expected.txt: Removed.
  • fast/shapes/parsing/parsing-shape-padding.html: Removed.
  • fast/shapes/parsing/parsing-test-utils.js:
  • fast/shapes/resources/multi-segment-polygon.js: Removed.
  • fast/shapes/resources/simple-polygon.js: Removed.
  • fast/shapes/resources/simple-rectangle.js: Removed.
  • fast/shapes/resources/svg-shape-001.svg: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-floats-simple-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-floats-simple.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-left-triangle-block-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-left-triangle-block-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-left-triangle-inline-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-left-triangle-inline-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-block-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-block-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-inline-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-inline-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-block-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-block-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-inline-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-inline-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-vertical-lr-inline-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-vertical-lr-inline-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-right-triangle-block-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-right-triangle-block-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-right-triangle-inline-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-right-triangle-inline-content.html: Removed.
  • fast/shapes/shape-inside/shape-inside-animation-expected.txt: Removed.
  • fast/shapes/shape-inside/shape-inside-animation.html: Removed.
  • fast/shapes/shape-inside/shape-inside-bottom-edge-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-bottom-edge.html: Removed.
  • fast/shapes/shape-inside/shape-inside-box-sizing-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-box-sizing.html: Removed.
  • fast/shapes/shape-inside/shape-inside-calc-crash-expected.txt: Removed.
  • fast/shapes/shape-inside/shape-inside-calc-crash.html: Removed.
  • fast/shapes/shape-inside/shape-inside-circle-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-circle-padding-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-circle-padding.html: Removed.
  • fast/shapes/shape-inside/shape-inside-circle.html: Removed.
  • fast/shapes/shape-inside/shape-inside-coincident-vertices-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-coincident-vertices.html: Removed.
  • fast/shapes/shape-inside/shape-inside-collinear-vertices-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-collinear-vertices.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-001-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-001.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-002-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-003-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-003.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-004-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-004.html: Removed.
  • fast/shapes/shape-inside/shape-inside-content-box-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-content-box.html: Removed.
  • fast/shapes/shape-inside/shape-inside-counterclockwise-polygon-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-counterclockwise-polygon.html: Removed.
  • fast/shapes/shape-inside/shape-inside-dynamic-nested-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-dynamic-nested.html: Removed.
  • fast/shapes/shape-inside/shape-inside-dynamic-shape-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-dynamic-shape.html: Removed.
  • fast/shapes/shape-inside/shape-inside-dynamic-text-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-dynamic-text.html: Removed.
  • fast/shapes/shape-inside/shape-inside-ellipse-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-ellipse-padding-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-ellipse-padding.html: Removed.
  • fast/shapes/shape-inside/shape-inside-ellipse.html: Removed.
  • fast/shapes/shape-inside/shape-inside-empty-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-empty-polygon-crash-expected.txt: Removed.
  • fast/shapes/shape-inside/shape-inside-empty-polygon-crash.html: Removed.
  • fast/shapes/shape-inside/shape-inside-empty-segments-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-empty-segments.html: Removed.
  • fast/shapes/shape-inside/shape-inside-empty.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-001-horizontal-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-001-horizontal.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-001-vertical-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-001-vertical.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-002-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-003-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-003.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-004-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-004.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-crash-expected.txt: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-crash.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-reflex-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-reflex.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-001-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-001.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-002-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-003-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-003.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-004-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-004.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-005-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-005.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-set-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-set.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks-dynamic-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks-dynamic.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks-vertical-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks-vertical.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-001-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-001.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-002-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-003-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-003.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-004-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-004.html: Removed.
  • fast/shapes/shape-inside/shape-inside-offset-block-children-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-offset-block-children.html: Removed.
  • fast/shapes/shape-inside/shape-inside-on-nested-container-with-unresolved-height-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-on-nested-container-with-unresolved-height.html: Removed.
  • fast/shapes/shape-inside/shape-inside-outside-shape-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-outside-shape.html: Removed.
  • fast/shapes/shape-inside/shape-inside-overflow-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions-block-content-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions-block-content.html: Removed.
  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions.html: Removed.
  • fast/shapes/shape-inside/shape-inside-overflow.html: Removed.
  • fast/shapes/shape-inside/shape-inside-partial-fill-001-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-partial-fill-001.html: Removed.
  • fast/shapes/shape-inside/shape-inside-partial-fill-002-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-partial-fill-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-percentage-auto-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-percentage-auto.html: Removed.
  • fast/shapes/shape-inside/shape-inside-percentage-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-percentage.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-layout-expected.txt: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-layout.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-001-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-001.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-002-expected.txt: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-003-expected.txt: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-003.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-rectangle-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-rectangle.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-rounded-first-fit-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-rounded-first-fit.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-zoom-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-zoom.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-001-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-001.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-002-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-003-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-003.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-004-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-004.html: Removed.
  • fast/shapes/shape-inside/shape-inside-recursive-layout-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-recursive-layout.html: Removed.
  • fast/shapes/shape-inside/shape-inside-regular-polygon16-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-regular-polygon16.html: Removed.
  • fast/shapes/shape-inside/shape-inside-regular-polygon8-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-regular-polygon8.html: Removed.
  • fast/shapes/shape-inside/shape-inside-shape-logical-top-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-shape-logical-top.html: Removed.
  • fast/shapes/shape-inside/shape-inside-sibling-block-dimension-change-needs-relayout-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-sibling-block-dimension-change-needs-relayout.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-001-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-001.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-002-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-003-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-003.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-004-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-004.html: Removed.
  • fast/shapes/shape-inside/shape-inside-subpixel-rectangle-top-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-subpixel-rectangle-top.html: Removed.
  • fast/shapes/shape-inside/shape-inside-subsequent-blocks-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-subsequent-blocks.html: Removed.
  • fast/shapes/shape-inside/shape-inside-subtract-intervals-crash-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-subtract-intervals-crash.html: Removed.
  • fast/shapes/shape-inside/shape-inside-text-align-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-text-align.html: Removed.
  • fast/shapes/shape-inside/shape-inside-text-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-text.html: Removed.
  • fast/shapes/shape-inside/shape-inside-vertical-text-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-vertical-text.html: Removed.
  • platform/gtk/TestExpectations:
  • platform/win/TestExpectations:
Location:
trunk
Files:
12 deleted
54 edited

Legend:

Unmodified
Added
Removed
  • trunk/ChangeLog

    r166239 r166301  
     12014-03-26  Zoltan Horvath  <zoltan@webkit.org>
     2
     3        [CSS Shapes] Remove shape-inside support
     4        https://bugs.webkit.org/show_bug.cgi?id=130698
     5
     6        Reviewed by David Hyatt.
     7
     8        * Source/cmake/WebKitFeatures.cmake:
     9        * Source/cmakeconfig.h.cmake:
     10
    1112014-03-25  Martin Robinson  <mrobinson@igalia.com>
    212
  • trunk/LayoutTests/ChangeLog

    r166299 r166301  
     12014-03-26  Zoltan Horvath  <zoltan@webkit.org>
     2
     3        [CSS Shapes] Remove shape-inside support
     4        https://bugs.webkit.org/show_bug.cgi?id=130698
     5
     6        Reviewed by David Hyatt.
     7
     8        * fast/regions/shape-inside/shape-inside-on-additional-regions-expected.html: Removed.
     9        * fast/regions/shape-inside/shape-inside-on-additional-regions.html: Removed.
     10        * fast/regions/shape-inside/shape-inside-on-first-region-block-content-expected.html: Removed.
     11        * fast/regions/shape-inside/shape-inside-on-first-region-block-content.html: Removed.
     12        * fast/regions/shape-inside/shape-inside-on-first-region-inline-content-expected.html: Removed.
     13        * fast/regions/shape-inside/shape-inside-on-first-region-inline-content.html: Removed.
     14        * fast/regions/shape-inside/shape-inside-on-multiple-autoheight-regions-expected.html: Removed.
     15        * fast/regions/shape-inside/shape-inside-on-multiple-autoheight-regions.html: Removed.
     16        * fast/regions/shape-inside/shape-inside-on-multiple-regions-bottom-adjustment-expected.html: Removed.
     17        * fast/regions/shape-inside/shape-inside-on-multiple-regions-bottom-adjustment.html: Removed.
     18        * fast/regions/shape-inside/shape-inside-on-regions-block-content-basic-overflow-shape-top-offset-expected.html: Removed.
     19        * fast/regions/shape-inside/shape-inside-on-regions-block-content-basic-overflow-shape-top-offset.html: Removed.
     20        * fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-bottom-positioned-multiple-shapes-expected.html: Removed.
     21        * fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-bottom-positioned-multiple-shapes.html: Removed.
     22        * fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-multiple-shapes-expected.html: Removed.
     23        * fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-multiple-shapes.html: Removed.
     24        * fast/regions/shape-inside/shape-inside-on-regions-block-content-polygon-with-adjustment-expected.html: Removed.
     25        * fast/regions/shape-inside/shape-inside-on-regions-block-content-polygon-with-adjustment.html: Removed.
     26        * fast/regions/shape-inside/shape-inside-on-regions-expected.html: Removed.
     27        * fast/regions/shape-inside/shape-inside-on-regions-inline-content-basic-overflow-shape-top-offset-expected.html: Removed.
     28        * fast/regions/shape-inside/shape-inside-on-regions-inline-content-basic-overflow-shape-top-offset.html: Removed.
     29        * fast/regions/shape-inside/shape-inside-on-regions-inline-content-expected.html: Removed.
     30        * fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-bottom-positioned-multiple-shapes-expected.html: Removed.
     31        * fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-bottom-positioned-multiple-shapes.html: Removed.
     32        * fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-multiple-shapes-expected.html: Removed.
     33        * fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-multiple-shapes.html: Removed.
     34        * fast/regions/shape-inside/shape-inside-on-regions-inline-content-polygon-with-adjustment-expected.html: Removed.
     35        * fast/regions/shape-inside/shape-inside-on-regions-inline-content-polygon-with-adjustment.html: Removed.
     36        * fast/regions/shape-inside/shape-inside-on-regions-inline-content.html: Removed.
     37        * fast/regions/shape-inside/shape-inside-on-regions.html: Removed.
     38        * fast/regions/shape-inside/shape-inside-on-second-region-block-content-expected.html: Removed.
     39        * fast/regions/shape-inside/shape-inside-on-second-region-block-content.html: Removed.
     40        * fast/regions/shape-inside/shape-inside-on-second-region-inline-content-expected.html: Removed.
     41        * fast/regions/shape-inside/shape-inside-on-second-region-inline-content.html: Removed.
     42        * fast/regions/shape-inside/shape-inside-recursive-layout-expected.html: Removed.
     43        * fast/regions/shape-inside/shape-inside-recursive-layout.html: Removed.
     44        * fast/regions/shape-inside/shape-inside-with-region-borders-expected.html: Removed.
     45        * fast/regions/shape-inside/shape-inside-with-region-borders.html: Removed.
     46        * fast/regions/shape-inside/shape-inside-with-region-padding-expected.html: Removed.
     47        * fast/regions/shape-inside/shape-inside-with-region-padding.html: Removed.
     48        * fast/shapes/css-shapes-disabled-expected.txt:
     49        * fast/shapes/css-shapes-disabled.html:
     50        * fast/shapes/css-shapes-enabled-expected.txt:
     51        * fast/shapes/css-shapes-enabled.html:
     52        * fast/shapes/parsing/parsing-shape-inside-expected.txt: Removed.
     53        * fast/shapes/parsing/parsing-shape-inside.html: Removed.
     54        * fast/shapes/parsing/parsing-shape-lengths-expected.txt:
     55        * fast/shapes/parsing/parsing-shape-lengths.html:
     56        * fast/shapes/parsing/parsing-shape-padding-expected.txt: Removed.
     57        * fast/shapes/parsing/parsing-shape-padding.html: Removed.
     58        * fast/shapes/parsing/parsing-test-utils.js:
     59        * fast/shapes/resources/multi-segment-polygon.js: Removed.
     60        * fast/shapes/resources/simple-polygon.js: Removed.
     61        * fast/shapes/resources/simple-rectangle.js: Removed.
     62        * fast/shapes/resources/svg-shape-001.svg: Removed.
     63        * fast/shapes/shape-inside/floats/shape-inside-floats-simple-expected.html: Removed.
     64        * fast/shapes/shape-inside/floats/shape-inside-floats-simple.html: Removed.
     65        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-left-triangle-block-content-expected.html: Removed.
     66        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-left-triangle-block-content.html: Removed.
     67        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-left-triangle-inline-content-expected.html: Removed.
     68        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-left-triangle-inline-content.html: Removed.
     69        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-block-content-expected.html: Removed.
     70        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-block-content.html: Removed.
     71        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-expected.html: Removed.
     72        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-inline-content-expected.html: Removed.
     73        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-inline-content.html: Removed.
     74        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle.html: Removed.
     75        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-block-content-expected.html: Removed.
     76        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-block-content.html: Removed.
     77        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-inline-content-expected.html: Removed.
     78        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-inline-content.html: Removed.
     79        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-vertical-lr-inline-content-expected.html: Removed.
     80        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-vertical-lr-inline-content.html: Removed.
     81        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-right-triangle-block-content-expected.html: Removed.
     82        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-right-triangle-block-content.html: Removed.
     83        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-right-triangle-inline-content-expected.html: Removed.
     84        * fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-right-triangle-inline-content.html: Removed.
     85        * fast/shapes/shape-inside/shape-inside-animation-expected.txt: Removed.
     86        * fast/shapes/shape-inside/shape-inside-animation.html: Removed.
     87        * fast/shapes/shape-inside/shape-inside-bottom-edge-expected.html: Removed.
     88        * fast/shapes/shape-inside/shape-inside-bottom-edge.html: Removed.
     89        * fast/shapes/shape-inside/shape-inside-box-sizing-expected.html: Removed.
     90        * fast/shapes/shape-inside/shape-inside-box-sizing.html: Removed.
     91        * fast/shapes/shape-inside/shape-inside-calc-crash-expected.txt: Removed.
     92        * fast/shapes/shape-inside/shape-inside-calc-crash.html: Removed.
     93        * fast/shapes/shape-inside/shape-inside-circle-expected.html: Removed.
     94        * fast/shapes/shape-inside/shape-inside-circle-padding-expected.html: Removed.
     95        * fast/shapes/shape-inside/shape-inside-circle-padding.html: Removed.
     96        * fast/shapes/shape-inside/shape-inside-circle.html: Removed.
     97        * fast/shapes/shape-inside/shape-inside-coincident-vertices-expected.html: Removed.
     98        * fast/shapes/shape-inside/shape-inside-coincident-vertices.html: Removed.
     99        * fast/shapes/shape-inside/shape-inside-collinear-vertices-expected.html: Removed.
     100        * fast/shapes/shape-inside/shape-inside-collinear-vertices.html: Removed.
     101        * fast/shapes/shape-inside/shape-inside-complex-polygon-001-expected.html: Removed.
     102        * fast/shapes/shape-inside/shape-inside-complex-polygon-001.html: Removed.
     103        * fast/shapes/shape-inside/shape-inside-complex-polygon-002-expected.html: Removed.
     104        * fast/shapes/shape-inside/shape-inside-complex-polygon-002.html: Removed.
     105        * fast/shapes/shape-inside/shape-inside-complex-polygon-003-expected.html: Removed.
     106        * fast/shapes/shape-inside/shape-inside-complex-polygon-003.html: Removed.
     107        * fast/shapes/shape-inside/shape-inside-complex-polygon-004-expected.html: Removed.
     108        * fast/shapes/shape-inside/shape-inside-complex-polygon-004.html: Removed.
     109        * fast/shapes/shape-inside/shape-inside-content-box-expected.html: Removed.
     110        * fast/shapes/shape-inside/shape-inside-content-box.html: Removed.
     111        * fast/shapes/shape-inside/shape-inside-counterclockwise-polygon-expected.html: Removed.
     112        * fast/shapes/shape-inside/shape-inside-counterclockwise-polygon.html: Removed.
     113        * fast/shapes/shape-inside/shape-inside-dynamic-nested-expected.html: Removed.
     114        * fast/shapes/shape-inside/shape-inside-dynamic-nested.html: Removed.
     115        * fast/shapes/shape-inside/shape-inside-dynamic-shape-expected.html: Removed.
     116        * fast/shapes/shape-inside/shape-inside-dynamic-shape.html: Removed.
     117        * fast/shapes/shape-inside/shape-inside-dynamic-text-expected.html: Removed.
     118        * fast/shapes/shape-inside/shape-inside-dynamic-text.html: Removed.
     119        * fast/shapes/shape-inside/shape-inside-ellipse-expected.html: Removed.
     120        * fast/shapes/shape-inside/shape-inside-ellipse-padding-expected.html: Removed.
     121        * fast/shapes/shape-inside/shape-inside-ellipse-padding.html: Removed.
     122        * fast/shapes/shape-inside/shape-inside-ellipse.html: Removed.
     123        * fast/shapes/shape-inside/shape-inside-empty-expected.html: Removed.
     124        * fast/shapes/shape-inside/shape-inside-empty-polygon-crash-expected.txt: Removed.
     125        * fast/shapes/shape-inside/shape-inside-empty-polygon-crash.html: Removed.
     126        * fast/shapes/shape-inside/shape-inside-empty-segments-expected.html: Removed.
     127        * fast/shapes/shape-inside/shape-inside-empty-segments.html: Removed.
     128        * fast/shapes/shape-inside/shape-inside-empty.html: Removed.
     129        * fast/shapes/shape-inside/shape-inside-first-fit-001-horizontal-expected.html: Removed.
     130        * fast/shapes/shape-inside/shape-inside-first-fit-001-horizontal.html: Removed.
     131        * fast/shapes/shape-inside/shape-inside-first-fit-001-vertical-expected.html: Removed.
     132        * fast/shapes/shape-inside/shape-inside-first-fit-001-vertical.html: Removed.
     133        * fast/shapes/shape-inside/shape-inside-first-fit-002-expected.html: Removed.
     134        * fast/shapes/shape-inside/shape-inside-first-fit-002.html: Removed.
     135        * fast/shapes/shape-inside/shape-inside-first-fit-003-expected.html: Removed.
     136        * fast/shapes/shape-inside/shape-inside-first-fit-003.html: Removed.
     137        * fast/shapes/shape-inside/shape-inside-first-fit-004-expected.html: Removed.
     138        * fast/shapes/shape-inside/shape-inside-first-fit-004.html: Removed.
     139        * fast/shapes/shape-inside/shape-inside-first-fit-crash-expected.txt: Removed.
     140        * fast/shapes/shape-inside/shape-inside-first-fit-crash.html: Removed.
     141        * fast/shapes/shape-inside/shape-inside-first-fit-reflex-expected.html: Removed.
     142        * fast/shapes/shape-inside/shape-inside-first-fit-reflex.html: Removed.
     143        * fast/shapes/shape-inside/shape-inside-image-001-expected.html: Removed.
     144        * fast/shapes/shape-inside/shape-inside-image-001.html: Removed.
     145        * fast/shapes/shape-inside/shape-inside-image-002-expected.html: Removed.
     146        * fast/shapes/shape-inside/shape-inside-image-002.html: Removed.
     147        * fast/shapes/shape-inside/shape-inside-image-003-expected.html: Removed.
     148        * fast/shapes/shape-inside/shape-inside-image-003.html: Removed.
     149        * fast/shapes/shape-inside/shape-inside-image-004-expected.html: Removed.
     150        * fast/shapes/shape-inside/shape-inside-image-004.html: Removed.
     151        * fast/shapes/shape-inside/shape-inside-image-005-expected.html: Removed.
     152        * fast/shapes/shape-inside/shape-inside-image-005.html: Removed.
     153        * fast/shapes/shape-inside/shape-inside-image-set-expected.html: Removed.
     154        * fast/shapes/shape-inside/shape-inside-image-set.html: Removed.
     155        * fast/shapes/shape-inside/shape-inside-multiple-blocks-dynamic-expected.html: Removed.
     156        * fast/shapes/shape-inside/shape-inside-multiple-blocks-dynamic.html: Removed.
     157        * fast/shapes/shape-inside/shape-inside-multiple-blocks-expected.html: Removed.
     158        * fast/shapes/shape-inside/shape-inside-multiple-blocks-vertical-expected.html: Removed.
     159        * fast/shapes/shape-inside/shape-inside-multiple-blocks-vertical.html: Removed.
     160        * fast/shapes/shape-inside/shape-inside-multiple-blocks.html: Removed.
     161        * fast/shapes/shape-inside/shape-inside-multiple-segments-001-expected.html: Removed.
     162        * fast/shapes/shape-inside/shape-inside-multiple-segments-001.html: Removed.
     163        * fast/shapes/shape-inside/shape-inside-multiple-segments-002-expected.html: Removed.
     164        * fast/shapes/shape-inside/shape-inside-multiple-segments-002.html: Removed.
     165        * fast/shapes/shape-inside/shape-inside-multiple-segments-003-expected.html: Removed.
     166        * fast/shapes/shape-inside/shape-inside-multiple-segments-003.html: Removed.
     167        * fast/shapes/shape-inside/shape-inside-multiple-segments-004-expected.html: Removed.
     168        * fast/shapes/shape-inside/shape-inside-multiple-segments-004.html: Removed.
     169        * fast/shapes/shape-inside/shape-inside-offset-block-children-expected.html: Removed.
     170        * fast/shapes/shape-inside/shape-inside-offset-block-children.html: Removed.
     171        * fast/shapes/shape-inside/shape-inside-on-nested-container-with-unresolved-height-expected.html: Removed.
     172        * fast/shapes/shape-inside/shape-inside-on-nested-container-with-unresolved-height.html: Removed.
     173        * fast/shapes/shape-inside/shape-inside-outside-shape-expected.html: Removed.
     174        * fast/shapes/shape-inside/shape-inside-outside-shape.html: Removed.
     175        * fast/shapes/shape-inside/shape-inside-overflow-expected.html: Removed.
     176        * fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions-block-content-expected.html: Removed.
     177        * fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions-block-content.html: Removed.
     178        * fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions-expected.html: Removed.
     179        * fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions.html: Removed.
     180        * fast/shapes/shape-inside/shape-inside-overflow.html: Removed.
     181        * fast/shapes/shape-inside/shape-inside-partial-fill-001-expected.html: Removed.
     182        * fast/shapes/shape-inside/shape-inside-partial-fill-001.html: Removed.
     183        * fast/shapes/shape-inside/shape-inside-partial-fill-002-expected.html: Removed.
     184        * fast/shapes/shape-inside/shape-inside-partial-fill-002.html: Removed.
     185        * fast/shapes/shape-inside/shape-inside-percentage-auto-expected.html: Removed.
     186        * fast/shapes/shape-inside/shape-inside-percentage-auto.html: Removed.
     187        * fast/shapes/shape-inside/shape-inside-percentage-expected.html: Removed.
     188        * fast/shapes/shape-inside/shape-inside-percentage.html: Removed.
     189        * fast/shapes/shape-inside/shape-inside-polygon-layout-expected.txt: Removed.
     190        * fast/shapes/shape-inside/shape-inside-polygon-layout.html: Removed.
     191        * fast/shapes/shape-inside/shape-inside-polygon-padding-001-expected.html: Removed.
     192        * fast/shapes/shape-inside/shape-inside-polygon-padding-001.html: Removed.
     193        * fast/shapes/shape-inside/shape-inside-polygon-padding-002-expected.txt: Removed.
     194        * fast/shapes/shape-inside/shape-inside-polygon-padding-002.html: Removed.
     195        * fast/shapes/shape-inside/shape-inside-polygon-padding-003-expected.txt: Removed.
     196        * fast/shapes/shape-inside/shape-inside-polygon-padding-003.html: Removed.
     197        * fast/shapes/shape-inside/shape-inside-polygon-rectangle-expected.html: Removed.
     198        * fast/shapes/shape-inside/shape-inside-polygon-rectangle.html: Removed.
     199        * fast/shapes/shape-inside/shape-inside-polygon-rounded-first-fit-expected.html: Removed.
     200        * fast/shapes/shape-inside/shape-inside-polygon-rounded-first-fit.html: Removed.
     201        * fast/shapes/shape-inside/shape-inside-polygon-zoom-expected.html: Removed.
     202        * fast/shapes/shape-inside/shape-inside-polygon-zoom.html: Removed.
     203        * fast/shapes/shape-inside/shape-inside-rectilinear-polygon-001-expected.html: Removed.
     204        * fast/shapes/shape-inside/shape-inside-rectilinear-polygon-001.html: Removed.
     205        * fast/shapes/shape-inside/shape-inside-rectilinear-polygon-002-expected.html: Removed.
     206        * fast/shapes/shape-inside/shape-inside-rectilinear-polygon-002.html: Removed.
     207        * fast/shapes/shape-inside/shape-inside-rectilinear-polygon-003-expected.html: Removed.
     208        * fast/shapes/shape-inside/shape-inside-rectilinear-polygon-003.html: Removed.
     209        * fast/shapes/shape-inside/shape-inside-rectilinear-polygon-004-expected.html: Removed.
     210        * fast/shapes/shape-inside/shape-inside-rectilinear-polygon-004.html: Removed.
     211        * fast/shapes/shape-inside/shape-inside-recursive-layout-expected.html: Removed.
     212        * fast/shapes/shape-inside/shape-inside-recursive-layout.html: Removed.
     213        * fast/shapes/shape-inside/shape-inside-regular-polygon16-expected.html: Removed.
     214        * fast/shapes/shape-inside/shape-inside-regular-polygon16.html: Removed.
     215        * fast/shapes/shape-inside/shape-inside-regular-polygon8-expected.html: Removed.
     216        * fast/shapes/shape-inside/shape-inside-regular-polygon8.html: Removed.
     217        * fast/shapes/shape-inside/shape-inside-shape-logical-top-expected.html: Removed.
     218        * fast/shapes/shape-inside/shape-inside-shape-logical-top.html: Removed.
     219        * fast/shapes/shape-inside/shape-inside-sibling-block-dimension-change-needs-relayout-expected.html: Removed.
     220        * fast/shapes/shape-inside/shape-inside-sibling-block-dimension-change-needs-relayout.html: Removed.
     221        * fast/shapes/shape-inside/shape-inside-simple-polygon-001-expected.html: Removed.
     222        * fast/shapes/shape-inside/shape-inside-simple-polygon-001.html: Removed.
     223        * fast/shapes/shape-inside/shape-inside-simple-polygon-002-expected.html: Removed.
     224        * fast/shapes/shape-inside/shape-inside-simple-polygon-002.html: Removed.
     225        * fast/shapes/shape-inside/shape-inside-simple-polygon-003-expected.html: Removed.
     226        * fast/shapes/shape-inside/shape-inside-simple-polygon-003.html: Removed.
     227        * fast/shapes/shape-inside/shape-inside-simple-polygon-004-expected.html: Removed.
     228        * fast/shapes/shape-inside/shape-inside-simple-polygon-004.html: Removed.
     229        * fast/shapes/shape-inside/shape-inside-subpixel-rectangle-top-expected.html: Removed.
     230        * fast/shapes/shape-inside/shape-inside-subpixel-rectangle-top.html: Removed.
     231        * fast/shapes/shape-inside/shape-inside-subsequent-blocks-expected.html: Removed.
     232        * fast/shapes/shape-inside/shape-inside-subsequent-blocks.html: Removed.
     233        * fast/shapes/shape-inside/shape-inside-subtract-intervals-crash-expected.html: Removed.
     234        * fast/shapes/shape-inside/shape-inside-subtract-intervals-crash.html: Removed.
     235        * fast/shapes/shape-inside/shape-inside-text-align-expected.html: Removed.
     236        * fast/shapes/shape-inside/shape-inside-text-align.html: Removed.
     237        * fast/shapes/shape-inside/shape-inside-text-expected.html: Removed.
     238        * fast/shapes/shape-inside/shape-inside-text.html: Removed.
     239        * fast/shapes/shape-inside/shape-inside-vertical-text-expected.html: Removed.
     240        * fast/shapes/shape-inside/shape-inside-vertical-text.html: Removed.
     241        * platform/gtk/TestExpectations:
     242        * platform/win/TestExpectations:
     243
    12442014-03-26  Sergio Villar Senin  <svillar@igalia.com>
    2245
  • trunk/LayoutTests/fast/shapes/css-shapes-disabled-expected.txt

    r165472 r166301  
    66PASS testInlineStyle("-webkit-shape-margin", "10px") is null
    77PASS testComputedStyle("-webkit-shape-margin", "10px") is "0px"
    8 PASS testInlineStyle("-webkit-shape-padding", "10px") is null
    9 PASS testComputedStyle("-webkit-shape-padding", "10px") is "0px"
    108PASS testInlineStyle("-webkit-shape-outside", "circle(10px at 10px 10px)") is null
    119PASS testComputedStyle("-webkit-shape-outside", "circle(10px at 10px 10px)") is "none"
    12 PASS testInlineStyle("-webkit-shape-inside", "circle(10px at 10px 10px)") is null
    13 PASS testComputedStyle("-webkit-shape-inside", "circle(10px at 10px 10px)") is "none"
    1410PASS successfullyParsed is true
    1511
  • trunk/LayoutTests/fast/shapes/css-shapes-disabled.html

    r165472 r166301  
    3131
    3232testStyle("-webkit-shape-margin", "10px", "0px");
    33 testStyle("-webkit-shape-padding", "10px", "0px");
    34 
    3533testStyle("-webkit-shape-outside", "circle(10px at 10px 10px)", "none");
    36 testStyle("-webkit-shape-inside", "circle(10px at 10px 10px)", "none");
    3734
    3835</script>
  • trunk/LayoutTests/fast/shapes/css-shapes-enabled-expected.txt

    r165472 r166301  
    66PASS testInlineStyle("-webkit-shape-margin", "10px") is "10px"
    77PASS testComputedStyle("-webkit-shape-margin", "10px") is "10px"
    8 PASS testInlineStyle("-webkit-shape-padding", "10px") is "10px"
    9 PASS testComputedStyle("-webkit-shape-padding", "10px") is "10px"
    108PASS testInlineStyle("-webkit-shape-outside", "circle(10px at 10px 10px)") is "circle(10px at 10px 10px)"
    119PASS testComputedStyle("-webkit-shape-outside", "circle(10px at 10px 10px)") is "circle(10px at 10px 10px)"
    12 PASS testInlineStyle("-webkit-shape-inside", "circle(10px at 10px 10px)") is "circle(10px at 10px 10px)"
    13 PASS testComputedStyle("-webkit-shape-inside", "circle(10px at 10px 10px)") is "circle(10px at 10px 10px)"
    1410PASS successfullyParsed is true
    1511
  • trunk/LayoutTests/fast/shapes/css-shapes-enabled.html

    r165472 r166301  
    2828
    2929testStyle("-webkit-shape-margin", "10px", "10px");
    30 testStyle("-webkit-shape-padding", "10px", "10px");
    31 
    3230testStyle("-webkit-shape-outside", "circle(10px at 10px 10px)", "circle(10px at 10px 10px)");
    33 testStyle("-webkit-shape-inside", "circle(10px at 10px 10px)", "circle(10px at 10px 10px)");
    3431
    3532</script>
  • trunk/LayoutTests/fast/shapes/parsing/parsing-shape-lengths-expected.txt

    r165638 r166301  
    44
    55
    6 PASS getStyleValue("-webkit-shape-inside", "circle(0 at 0 0)") is "circle(0px at 0% 0%)"
    7 PASS getStyleValue("-webkit-shape-inside", "circle(1px at +1px -1px)") is "circle(1px at 1px -1px)"
    8 PASS getStyleValue("-webkit-shape-inside", "circle(1.5px at -1.5px +1.5px)") is "circle(1.5px at -1.5px 1.5px)"
    9 PASS getStyleValue("-webkit-shape-inside", "circle(.5px at -.5px +.5px)") is "circle(0.5px at -0.5px 0.5px)"
    10 PASS getStyleValue("-webkit-shape-inside", "inset(1cm 1mm 1in 1px round 1pt 1pc)") is "inset(1cm 1mm 1in 1px round 1pt 1pc 1pt 1pc / 1pt 1pc 1pt 1pc)"
    11 PASS getStyleValue("-webkit-shape-inside", "inset(-1px 1px 1px 1px round 1px 1px 1px 1px)") is "inset(-1px 1px 1px 1px round 1px 1px 1px 1px / 1px 1px 1px 1px)"
    12 PASS getStyleValue("-webkit-shape-inside", "inset(1px -1px 1px 1px round 1px 1px 1px 1px)") is "inset(1px -1px 1px 1px round 1px 1px 1px 1px / 1px 1px 1px 1px)"
    13 PASS getStyleValue("-webkit-shape-inside", "inset(1px 1px -1px 1px round 1px 1px 1px 1px)") is "inset(1px 1px -1px 1px round 1px 1px 1px 1px / 1px 1px 1px 1px)"
    14 PASS getStyleValue("-webkit-shape-inside", "inset(1px 1px 1px -1px round 1px 1px 1px 1px)") is "inset(1px 1px 1px -1px round 1px 1px 1px 1px / 1px 1px 1px 1px)"
    15 PASS getStyleValue("-webkit-shape-inside", "circle(1em at -1em +1em)") is "circle(1em at -1em 1em)"
    16 PASS getStyleValue("-webkit-shape-inside", "circle(1.5em at -1.5em +1.5em)") is "circle(1.5em at -1.5em 1.5em)"
    17 PASS getStyleValue("-webkit-shape-inside", "circle(.5em at -.5em +.5em)") is "circle(0.5em at -0.5em 0.5em)"
    18 PASS getStyleValue("-webkit-shape-inside", "circle(1ex at 1ex 1ex)") is "circle(1ex at 1ex 1ex)"
    19 PASS getStyleValue("-webkit-shape-inside", "circle(1rem at 1rem 1rem)") is "circle(1rem at 1rem 1rem)"
    20 PASS getComputedStyleValue("-webkit-shape-inside", "circle(1.5em at .5em 1em)") is "circle(12px at 4px 8px)"
    21 PASS getComputedStyleValue("-webkit-shape-inside", "circle(1.5rem at .5rem 1rem)") is "circle(24px at 8px 16px)"
    22 PASS getStyleValue("-webkit-shape-inside", "circle(1vw at 1vw 1vw)") is "circle(1vw at 1vw 1vw)"
    23 PASS getStyleValue("-webkit-shape-inside", "circle(1vh at 1vh 1vh)") is "circle(1vh at 1vh 1vh)"
    24 PASS getStyleValue("-webkit-shape-inside", "circle(1vmin at 1vmin 1vmin)") is "circle(1vmin at 1vmin 1vmin)"
    25 PASS getComputedStyleValue("-webkit-shape-inside", "circle(1.5vw at .5vw 1vw)") is "circle(1.5vw at 0.5vw 1vw)"
    26 PASS getComputedStyleValue("-webkit-shape-inside", "circle(1.5vh at .5vh 1vh)") is "circle(1.5vh at 0.5vh 1vh)"
    27 PASS getComputedStyleValue("-webkit-shape-inside", "circle(1.5vmin at .5vmin 1vmin)") is "circle(1.5vmin at 0.5vmin 1vmin)"
    28 PASS getStyleValue("-webkit-shape-inside", "circle(100% at 100% 100%)") is "circle(100% at 100% 100%)"
    29 PASS getStyleValue("-webkit-shape-inside", "inset(45% 45% 90% 60% round 25% 10%)") is "inset(45% 45% 90% 60% round 25% 10% 25% 10% / 25% 10% 25% 10%)"
    30 PASS getStyleValue("-webkit-shape-inside", "ellipse(100% 100% at 100% 100%)") is "ellipse(100% 100% at 100% 100%)"
    31 PASS getStyleValue("-webkit-shape-inside", "polygon(10% 20%, 30% 40%, 40% 50%)") is "polygon(10% 20%, 30% 40%, 40% 50%)"
    32 PASS getComputedStyleValue("-webkit-shape-inside", "circle(150% at 50% 100%)") is "circle(150% at 50% 100%)"
    33 PASS getComputedStyleValue("-webkit-shape-inside", "inset(45% 45% 90% 60% round 25% 10%)") is "inset(45% 45% 90% 60% round 25% 10% 25% 10% / 25% 10% 25% 10%)"
    34 PASS getComputedStyleValue("-webkit-shape-inside", "ellipse(100% 100% at 100% 100%)") is "ellipse(100% 100% at 100% 100%)"
    35 PASS getComputedStyleValue("-webkit-shape-inside", "polygon(10% 20%, 30% 40%, 40% 50%)") is "polygon(10% 20%, 30% 40%, 40% 50%)"
    36 PASS getStyleValue("-webkit-shape-inside", "circle(1 at 1px 1px)") is null
    37 PASS getComputedStyleValue("-webkit-shape-inside", "circle(1 at 1px 1px)") is "none"
    38 PASS getStyleValue("-webkit-shape-inside", "circle(px at 1px 1px)") is null
    39 PASS getComputedStyleValue("-webkit-shape-inside", "circle(px at 1px 1px)") is "none"
    40 PASS getStyleValue("-webkit-shape-inside", "circle(1p at 1px 1px)") is null
    41 PASS getComputedStyleValue("-webkit-shape-inside", "circle(1p at 1px 1px)") is "none"
    42 PASS getStyleValue("-webkit-shape-inside", "circle(calc( at 1px 1px))") is null
    43 PASS getComputedStyleValue("-webkit-shape-inside", "circle(calc( at 1px 1px))") is "none"
    44 PASS getStyleValue("-webkit-shape-inside", "circle(-1.5px at -1.5px +1.5px)") is null
    45 PASS getComputedStyleValue("-webkit-shape-inside", "circle(-1.5px at -1.5px +1.5px)") is "none"
    46 PASS getStyleValue("-webkit-shape-inside", "inset(1cm 1mm 1in 1px round 1pt -1pc)") is null
    47 PASS getComputedStyleValue("-webkit-shape-inside", "inset(1cm 1mm 1in 1px round 1pt -1pc)") is "none"
    48 PASS getStyleValue("-webkit-shape-inside", "ellipse(-1em 1em at 1em 1em)") is null
    49 PASS getComputedStyleValue("-webkit-shape-inside", "ellipse(-1em 1em at 1em 1em)") is "none"
    50 PASS getStyleValue("-webkit-shape-inside", "ellipse(1em -1em at 1em 1em)") is null
    51 PASS getComputedStyleValue("-webkit-shape-inside", "ellipse(1em -1em at 1em 1em)") is "none"
     6PASS getStyleValue("-webkit-shape-outside", "circle(0 at 0 0)") is "circle(0px at 0% 0%)"
     7PASS getStyleValue("-webkit-shape-outside", "circle(1px at +1px -1px)") is "circle(1px at 1px -1px)"
     8PASS getStyleValue("-webkit-shape-outside", "circle(1.5px at -1.5px +1.5px)") is "circle(1.5px at -1.5px 1.5px)"
     9PASS getStyleValue("-webkit-shape-outside", "circle(.5px at -.5px +.5px)") is "circle(0.5px at -0.5px 0.5px)"
     10PASS getStyleValue("-webkit-shape-outside", "inset(1cm 1mm 1in 1px round 1pt 1pc)") is "inset(1cm 1mm 1in 1px round 1pt 1pc 1pt 1pc / 1pt 1pc 1pt 1pc)"
     11PASS getStyleValue("-webkit-shape-outside", "inset(-1px 1px 1px 1px round 1px 1px 1px 1px)") is "inset(-1px 1px 1px 1px round 1px 1px 1px 1px / 1px 1px 1px 1px)"
     12PASS getStyleValue("-webkit-shape-outside", "inset(1px -1px 1px 1px round 1px 1px 1px 1px)") is "inset(1px -1px 1px 1px round 1px 1px 1px 1px / 1px 1px 1px 1px)"
     13PASS getStyleValue("-webkit-shape-outside", "inset(1px 1px -1px 1px round 1px 1px 1px 1px)") is "inset(1px 1px -1px 1px round 1px 1px 1px 1px / 1px 1px 1px 1px)"
     14PASS getStyleValue("-webkit-shape-outside", "inset(1px 1px 1px -1px round 1px 1px 1px 1px)") is "inset(1px 1px 1px -1px round 1px 1px 1px 1px / 1px 1px 1px 1px)"
     15PASS getStyleValue("-webkit-shape-outside", "circle(1em at -1em +1em)") is "circle(1em at -1em 1em)"
     16PASS getStyleValue("-webkit-shape-outside", "circle(1.5em at -1.5em +1.5em)") is "circle(1.5em at -1.5em 1.5em)"
     17PASS getStyleValue("-webkit-shape-outside", "circle(.5em at -.5em +.5em)") is "circle(0.5em at -0.5em 0.5em)"
     18PASS getStyleValue("-webkit-shape-outside", "circle(1ex at 1ex 1ex)") is "circle(1ex at 1ex 1ex)"
     19PASS getStyleValue("-webkit-shape-outside", "circle(1rem at 1rem 1rem)") is "circle(1rem at 1rem 1rem)"
     20PASS getComputedStyleValue("-webkit-shape-outside", "circle(1.5em at .5em 1em)") is "circle(12px at 4px 8px)"
     21PASS getComputedStyleValue("-webkit-shape-outside", "circle(1.5rem at .5rem 1rem)") is "circle(24px at 8px 16px)"
     22PASS getStyleValue("-webkit-shape-outside", "circle(1vw at 1vw 1vw)") is "circle(1vw at 1vw 1vw)"
     23PASS getStyleValue("-webkit-shape-outside", "circle(1vh at 1vh 1vh)") is "circle(1vh at 1vh 1vh)"
     24PASS getStyleValue("-webkit-shape-outside", "circle(1vmin at 1vmin 1vmin)") is "circle(1vmin at 1vmin 1vmin)"
     25PASS getComputedStyleValue("-webkit-shape-outside", "circle(1.5vw at .5vw 1vw)") is "circle(1.5vw at 0.5vw 1vw)"
     26PASS getComputedStyleValue("-webkit-shape-outside", "circle(1.5vh at .5vh 1vh)") is "circle(1.5vh at 0.5vh 1vh)"
     27PASS getComputedStyleValue("-webkit-shape-outside", "circle(1.5vmin at .5vmin 1vmin)") is "circle(1.5vmin at 0.5vmin 1vmin)"
     28PASS getStyleValue("-webkit-shape-outside", "circle(100% at 100% 100%)") is "circle(100% at 100% 100%)"
     29PASS getStyleValue("-webkit-shape-outside", "inset(45% 45% 90% 60% round 25% 10%)") is "inset(45% 45% 90% 60% round 25% 10% 25% 10% / 25% 10% 25% 10%)"
     30PASS getStyleValue("-webkit-shape-outside", "ellipse(100% 100% at 100% 100%)") is "ellipse(100% 100% at 100% 100%)"
     31PASS getStyleValue("-webkit-shape-outside", "polygon(10% 20%, 30% 40%, 40% 50%)") is "polygon(10% 20%, 30% 40%, 40% 50%)"
     32PASS getComputedStyleValue("-webkit-shape-outside", "circle(150% at 50% 100%)") is "circle(150% at 50% 100%)"
     33PASS getComputedStyleValue("-webkit-shape-outside", "inset(45% 45% 90% 60% round 25% 10%)") is "inset(45% 45% 90% 60% round 25% 10% 25% 10% / 25% 10% 25% 10%)"
     34PASS getComputedStyleValue("-webkit-shape-outside", "ellipse(100% 100% at 100% 100%)") is "ellipse(100% 100% at 100% 100%)"
     35PASS getComputedStyleValue("-webkit-shape-outside", "polygon(10% 20%, 30% 40%, 40% 50%)") is "polygon(10% 20%, 30% 40%, 40% 50%)"
     36PASS getStyleValue("-webkit-shape-outside", "circle(1 at 1px 1px)") is null
     37PASS getComputedStyleValue("-webkit-shape-outside", "circle(1 at 1px 1px)") is "none"
     38PASS getStyleValue("-webkit-shape-outside", "circle(px at 1px 1px)") is null
     39PASS getComputedStyleValue("-webkit-shape-outside", "circle(px at 1px 1px)") is "none"
     40PASS getStyleValue("-webkit-shape-outside", "circle(1p at 1px 1px)") is null
     41PASS getComputedStyleValue("-webkit-shape-outside", "circle(1p at 1px 1px)") is "none"
     42PASS getStyleValue("-webkit-shape-outside", "circle(calc( at 1px 1px))") is null
     43PASS getComputedStyleValue("-webkit-shape-outside", "circle(calc( at 1px 1px))") is "none"
     44PASS getStyleValue("-webkit-shape-outside", "circle(-1.5px at -1.5px +1.5px)") is null
     45PASS getComputedStyleValue("-webkit-shape-outside", "circle(-1.5px at -1.5px +1.5px)") is "none"
     46PASS getStyleValue("-webkit-shape-outside", "inset(1cm 1mm 1in 1px round 1pt -1pc)") is null
     47PASS getComputedStyleValue("-webkit-shape-outside", "inset(1cm 1mm 1in 1px round 1pt -1pc)") is "none"
     48PASS getStyleValue("-webkit-shape-outside", "ellipse(-1em 1em at 1em 1em)") is null
     49PASS getComputedStyleValue("-webkit-shape-outside", "ellipse(-1em 1em at 1em 1em)") is "none"
     50PASS getStyleValue("-webkit-shape-outside", "ellipse(1em -1em at 1em 1em)") is null
     51PASS getComputedStyleValue("-webkit-shape-outside", "ellipse(1em -1em at 1em 1em)") is "none"
    5252PASS successfullyParsed is true
    5353
  • trunk/LayoutTests/fast/shapes/parsing/parsing-shape-lengths.html

    r165638 r166301  
    2323function testStyleValue(value, expected) {
    2424    if (expected === null)
    25         shouldBeNull('getStyleValue("-webkit-shape-inside", "' + value + '")');
     25        shouldBeNull('getStyleValue("-webkit-shape-outside", "' + value + '")');
    2626    else
    27         shouldBeEqualToString('getStyleValue("-webkit-shape-inside", "' + value + '")', expected);
     27        shouldBeEqualToString('getStyleValue("-webkit-shape-outside", "' + value + '")', expected);
    2828}
    2929function testComputedStyleValue(value, expected) {
    30     testShapeComputedProperty("-webkit-shape-inside", value, expected);
     30    testShapeComputedProperty("-webkit-shape-outside", value, expected);
    3131}
    3232
  • trunk/LayoutTests/fast/shapes/parsing/parsing-test-utils.js

    r165835 r166301  
    1 // Valid values for both shape-inside and shape-outside. Two values are specified when the shape property value
     1// Valid values for shape-outside. Two values are specified when the shape property value
    22// differs from the specified value. Three values are specified when the computed shape property value differs
    33// from the specified value.
     
    8989];
    9090
    91 // Invalid values for both shape-inside and shape-outside. When an invalid shape value is specified, the
     91// Invalid values for shape-outside. When an invalid shape value is specified, the
    9292// shape property's computed value is the same as its default.
    9393var invalidShapeValues = [
  • trunk/LayoutTests/platform/gtk/TestExpectations

    r166201 r166301  
    14171417webkit.org/b/118665 fast/regions/overflow-not-moving-below-floats-in-variable-width-regions.html [ ImageOnlyFailure Pass ]
    14181418webkit.org/b/118665 fast/regions/overflow-region-transform.html [ ImageOnlyFailure Pass ]
    1419 webkit.org/b/118665 fast/regions/shape-inside/shape-inside-on-multiple-regions-with-negative-shape-top.html [ ImageOnlyFailure Pass ]
    14201419webkit.org/b/118665 fast/regions/top-overflow-out-of-second-region.html [ ImageOnlyFailure Pass Missing ]
    14211420webkit.org/b/118665 fast/regions/webkit-flow-float-unable-to-push.html [ ImageOnlyFailure Pass ]
  • trunk/LayoutTests/platform/win/TestExpectations

    r166221 r166301  
    24262426webkit.org/b/128855 fast/regions/flows-dependency-dynamic-remove.html [ Pass Failure ]
    24272427webkit.org/b/128855 fast/regions/hit-test-float.html [ Pass Timeout ]
    2428 webkit.org/b/128855 fast/regions/shape-inside/shape-inside-on-regions-block-content-basic-overflow-shape-top-offset.html [ Pass Failure ]
    2429 fast/regions/shape-inside/shape-inside-on-additional-regions.html [ Pass Failure ]
    24302428webkit.org/b/128855 fast/regions/hover-and-js-in-visual-overflow.html [ Pass Timeout ImageOnlyFailure Failure ]
    24312429webkit.org/b/128855 fast/regions/hover-single-flow-from-other.html [ Pass ImageOnlyFailure ]
     
    25652563fast/ruby/rubyDOM-insert-rt-block-1.html [ Pass Timeout ]
    25662564fast/scrolling/scrollable-area-overflow-auto-visibility-override.html [ Pass Failure ]
    2567 fast/shapes/shape-inside/shape-inside-offset-block-children.html [ Pass ImageOnlyFailure ]
    2568 fast/shapes/shape-inside/shape-inside-collinear-vertices.html [ Pass ImageOnlyFailure ]
    25692565fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-right.html [ Pass Timeout ]
    25702566fast/shapes/shape-outside-floats/shape-outside-image-fit-002.html [ Pass ImageOnlyFailure ]
  • trunk/Source/JavaScriptCore/ChangeLog

    r166292 r166301  
     12014-03-26  Zoltan Horvath  <zoltan@webkit.org>
     2
     3        [CSS Shapes] Remove shape-inside support
     4        https://bugs.webkit.org/show_bug.cgi?id=130698
     5
     6        Reviewed by David Hyatt.
     7
     8        * Configurations/FeatureDefines.xcconfig:
     9
    1102014-03-26  Dániel Bátyai  <dbatyai.u-szeged@partner.samsung.com>
    211
  • trunk/Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig

    r166201 r166301  
    6060ENABLE_CSS_REGIONS = ENABLE_CSS_REGIONS;
    6161ENABLE_CSS_SHAPES = ENABLE_CSS_SHAPES;
    62 ENABLE_CSS_SHAPE_INSIDE = ENABLE_CSS_SHAPE_INSIDE;
    6362ENABLE_CSS_STICKY_POSITION = ENABLE_CSS_STICKY_POSITION;
    6463ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED = ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED;
     
    226225ENABLE_LLINT_C_LOOP = ;
    227226
    228 FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_BLOB) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_EXCLUSIONS) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS_SHAPE_INSIDE) $(ENABLE_CSS_STICKY_POSITION) $(ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED) $(ENABLE_CSS3_CONDITIONAL_RULES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FILTERS) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING) $(ENABLE_HIGH_DPI_CANVAS) $(ENABLE_ICONDATABASE) $(ENABLE_IMAGE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INSPECTOR) $(ENABLE_IOS_AIRPLAY) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_PLUGIN_PROXY_FOR_VIDEO) $(ENABLE_PROGRESS_ELEMENT) $(ENABLE_PROMISES) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHARED_WORKERS) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_SQL_DATABASE) $(ENABLE_SUBPIXEL_LAYOUT) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBGL) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WEBVTT_REGIONS) $(ENABLE_XHR_TIMEOUT) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_LLINT_C_LOOP) $(FEATURE_DEFINES_$(PLATFORM_NAME));
     227FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_BLOB) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_EXCLUSIONS) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS_STICKY_POSITION) $(ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED) $(ENABLE_CSS3_CONDITIONAL_RULES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FILTERS) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING) $(ENABLE_HIGH_DPI_CANVAS) $(ENABLE_ICONDATABASE) $(ENABLE_IMAGE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INSPECTOR) $(ENABLE_IOS_AIRPLAY) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_PLUGIN_PROXY_FOR_VIDEO) $(ENABLE_PROGRESS_ELEMENT) $(ENABLE_PROMISES) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHARED_WORKERS) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_SQL_DATABASE) $(ENABLE_SUBPIXEL_LAYOUT) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBGL) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WEBVTT_REGIONS) $(ENABLE_XHR_TIMEOUT) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_LLINT_C_LOOP) $(FEATURE_DEFINES_$(PLATFORM_NAME));
  • trunk/Source/WebCore/CMakeLists.txt

    r166261 r166301  
    22242224    rendering/shapes/Shape.cpp
    22252225    rendering/shapes/ShapeInfo.cpp
    2226     rendering/shapes/ShapeInsideInfo.cpp
    22272226    rendering/shapes/ShapeOutsideInfo.cpp
    22282227
  • trunk/Source/WebCore/ChangeLog

    r166300 r166301  
     12014-03-26  Zoltan Horvath  <zoltan@webkit.org>
     2
     3        [CSS Shapes] Remove shape-inside support
     4        https://bugs.webkit.org/show_bug.cgi?id=130698
     5
     6        Reviewed by David Hyatt.
     7
     8        CSS Shapes Level 1 (CR) only contains shape-outside. We are focusing our efforts on finalizing
     9        the implementation of shape-outside, it's worth to remove shape-inside code at this point for now.
     10
     11        A list of reasons for the removal:
     12          - Shape-inside is only part of Shapes Level 2, which needs to be improved on some topics.
     13          - Shape-inside is lack of new shapes support (e.g. inset).
     14          - Deprecated shapes (r165472) are removed from the code (e.g. rectangle), which affects shape-inside.
     15          - The current shape-inside code spreads across the layout code.
     16          - The current shape-inside implementation is experimental in some areas,
     17            and the partially implemented code can have security implications.
     18          - Removal of shape-inside opens possibilities for code complexity and performance
     19            optimizations for shape-outside. (e.g. simpler geometry code)
     20
     21        No new tests are needed.
     22
     23        * CMakeLists.txt:
     24        * Configurations/FeatureDefines.xcconfig:
     25        * GNUmakefile.list.am:
     26        * WebCore.xcodeproj/project.pbxproj:
     27        * css/CSSComputedStyleDeclaration.cpp:
     28        (WebCore::ComputedStyleExtractor::propertyValue):
     29        * css/CSSParser.cpp:
     30        (WebCore::isSimpleLengthPropertyID):
     31        (WebCore::CSSParser::parseValue):
     32        (WebCore::CSSParser::parseShapeProperty):
     33        * css/CSSPropertyNames.in:
     34        * css/DeprecatedStyleBuilder.cpp:
     35        (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
     36        * css/StyleResolver.cpp:
     37        (WebCore::StyleResolver::applyProperty):
     38        (WebCore::StyleResolver::loadPendingImages):
     39        * page/animation/CSSPropertyAnimation.cpp:
     40        (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
     41        * rendering/LayoutState.cpp:
     42        (WebCore::LayoutState::LayoutState):
     43        * rendering/LayoutState.h:
     44        (WebCore::LayoutState::LayoutState):
     45        (WebCore::LayoutState::shapeInsideInfo): Deleted.
     46        * rendering/RenderBlock.cpp:
     47        (WebCore::RenderBlock::styleDidChange):
     48        (WebCore::RenderBlock::imageChanged):
     49        (WebCore::RenderBlock::preparePaginationBeforeBlockLayout):
     50        (WebCore::RenderBlock::relayoutShapeDescendantIfMoved): Deleted.
     51        (WebCore::RenderBlock::logicalOffsetFromShapeAncestorContainer): Deleted.
     52        (WebCore::RenderBlock::updateShapeInsideInfoAfterStyleChange): Deleted.
     53        (WebCore::RenderBlock::ensureShapeInsideInfo): Deleted.
     54        (WebCore::RenderBlock::shapeInsideInfo): Deleted.
     55        (WebCore::RenderBlock::setShapeInsideInfo): Deleted.
     56        (WebCore::RenderBlock::markShapeInsideDescendantsForLayout): Deleted.
     57        (WebCore::RenderBlock::layoutShapeInsideInfo): Deleted.
     58        (WebCore::shapeInfoRequiresRelayout): Deleted.
     59        (WebCore::RenderBlock::computeShapeSize): Deleted.
     60        (WebCore::RenderBlock::updateShapesBeforeBlockLayout): Deleted.
     61        (WebCore::RenderBlock::updateShapesAfterBlockLayout): Deleted.
     62        (WebCore::RenderBlock::prepareShapesAndPaginationBeforeBlockLayout): Deleted.
     63        * rendering/RenderBlock.h:
     64        (WebCore::RenderBlock::allowsShapeInsideInfoSharing): Deleted.
     65        * rendering/RenderBlockFlow.cpp:
     66        (WebCore::RenderBlockFlow::layoutBlock):
     67        (WebCore::RenderBlockFlow::layoutBlockChild):
     68        (WebCore::RenderBlockFlow::computeLogicalLocationForFloat):
     69        * rendering/RenderBlockFlow.h:
     70        * rendering/RenderBlockLineLayout.cpp:
     71        (WebCore::RenderBlockFlow::computeInlineDirectionPositionsForLine):
     72        (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
     73        (WebCore::constructBidiRunsForLine): Deleted.
     74        (WebCore::pushShapeContentOverflowBelowTheContentBox): Deleted.
     75        (WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLine): Deleted.
     76        (WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread): Deleted.
     77        (WebCore::adjustLogicalLineTop): Deleted.
     78        (WebCore::RenderBlockFlow::adjustLogicalLineTopAndLogicalHeightIfNeeded): Deleted.
     79        * rendering/RenderDeprecatedFlexibleBox.cpp:
     80        (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
     81        * rendering/RenderElement.cpp:
     82        (WebCore::RenderElement::~RenderElement):
     83        (WebCore::RenderElement::initializeStyle):
     84        (WebCore::RenderElement::setStyle):
     85        * rendering/RenderFlexibleBox.cpp:
     86        (WebCore::RenderFlexibleBox::layoutBlock):
     87        * rendering/RenderGrid.cpp:
     88        (WebCore::RenderGrid::layoutBlock):
     89        * rendering/RenderNamedFlowFragment.cpp:
     90        (WebCore::RenderNamedFlowFragment::createStyle):
     91        * rendering/RenderView.h:
     92        * rendering/SimpleLineLayout.cpp:
     93        (WebCore::SimpleLineLayout::canUseFor):
     94        * rendering/line/BreakingContextInlineHeaders.h:
     95        (WebCore::BreakingContext::handleText):
     96        (WebCore::BreakingContext::handleEndOfLine):
     97        (WebCore::updateSegmentsForShapes): Deleted.
     98        * rendering/line/LineBreaker.cpp:
     99        (WebCore::LineBreaker::nextLineBreak):
     100        * rendering/line/LineWidth.cpp:
     101        (WebCore::LineWidth::LineWidth):
     102        (WebCore::LineWidth::updateAvailableWidth):
     103        (WebCore::LineWidth::wrapNextToShapeOutside):
     104        (WebCore::LineWidth::fitBelowFloats):
     105        (WebCore::LineWidth::updateLineSegment): Deleted.
     106        (WebCore::LineWidth::updateCurrentShapeSegment): Deleted.
     107        * rendering/line/LineWidth.h:
     108        * rendering/shapes/ShapeInsideInfo.cpp: Removed.
     109        * rendering/shapes/ShapeInsideInfo.h: Removed.
     110        * rendering/style/RenderStyle.cpp:
     111        (WebCore::RenderStyle::changeRequiresLayout):
     112        * rendering/style/RenderStyle.h:
     113        * rendering/style/StyleRareNonInheritedData.cpp:
     114        (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
     115        (WebCore::StyleRareNonInheritedData::operator==):
     116        * rendering/style/StyleRareNonInheritedData.h:
     117
    11182014-03-25  Brent Fulgham  <bfulgham@apple.com>
    2119
  • trunk/Source/WebCore/Configurations/FeatureDefines.xcconfig

    r166201 r166301  
    6060ENABLE_CSS_REGIONS = ENABLE_CSS_REGIONS;
    6161ENABLE_CSS_SHAPES = ENABLE_CSS_SHAPES;
    62 ENABLE_CSS_SHAPE_INSIDE = ENABLE_CSS_SHAPE_INSIDE;
    6362ENABLE_CSS_STICKY_POSITION = ENABLE_CSS_STICKY_POSITION;
    6463ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED = ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED;
     
    226225ENABLE_LLINT_C_LOOP = ;
    227226
    228 FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_BLOB) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_EXCLUSIONS) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS_SHAPE_INSIDE) $(ENABLE_CSS_STICKY_POSITION) $(ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED) $(ENABLE_CSS3_CONDITIONAL_RULES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FILTERS) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING) $(ENABLE_HIGH_DPI_CANVAS) $(ENABLE_ICONDATABASE) $(ENABLE_IMAGE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INSPECTOR) $(ENABLE_IOS_AIRPLAY) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_PLUGIN_PROXY_FOR_VIDEO) $(ENABLE_PROGRESS_ELEMENT) $(ENABLE_PROMISES) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHARED_WORKERS) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_SQL_DATABASE) $(ENABLE_SUBPIXEL_LAYOUT) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBGL) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WEBVTT_REGIONS) $(ENABLE_XHR_TIMEOUT) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_LLINT_C_LOOP) $(FEATURE_DEFINES_$(PLATFORM_NAME));
     227FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_BLOB) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_EXCLUSIONS) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS_STICKY_POSITION) $(ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED) $(ENABLE_CSS3_CONDITIONAL_RULES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FILTERS) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING) $(ENABLE_HIGH_DPI_CANVAS) $(ENABLE_ICONDATABASE) $(ENABLE_IMAGE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INSPECTOR) $(ENABLE_IOS_AIRPLAY) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_PLUGIN_PROXY_FOR_VIDEO) $(ENABLE_PROGRESS_ELEMENT) $(ENABLE_PROMISES) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHARED_WORKERS) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_SQL_DATABASE) $(ENABLE_SUBPIXEL_LAYOUT) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBGL) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WEBVTT_REGIONS) $(ENABLE_XHR_TIMEOUT) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_LLINT_C_LOOP) $(FEATURE_DEFINES_$(PLATFORM_NAME));
  • trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj

    r166261 r166301  
    1127211272    <ClCompile Include="..\rendering\shapes\Shape.cpp" />
    1127311273    <ClCompile Include="..\rendering\shapes\ShapeInfo.cpp" />
    11274     <ClCompile Include="..\rendering\shapes\ShapeInsideInfo.cpp" />
    1127511274    <ClCompile Include="..\rendering\shapes\ShapeOutsideInfo.cpp" />
    1127611275    <ClCompile Include="..\rendering\svg\SVGPathData.cpp">
     
    2003220031    <ClInclude Include="..\rendering\shapes\Shape.h" />
    2003320032    <ClInclude Include="..\rendering\shapes\ShapeInfo.h" />
    20034     <ClInclude Include="..\rendering\shapes\ShapeInsideInfo.h" />
    2003520033    <ClInclude Include="..\rendering\shapes\ShapeInterval.h" />
    2003620034    <ClInclude Include="..\rendering\shapes\ShapeOutsideInfo.h" />
  • trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj

    r166272 r166301  
    63816381                FD45A94F175D3F3E00C21EC8 /* Shape.h in Headers */ = {isa = PBXBuildFile; fileRef = FD08A87F175D3926002CD360 /* Shape.h */; settings = {ATTRIBUTES = (Private, ); }; };
    63826382                FD45A950175D3F3E00C21EC8 /* ShapeInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = FD08A881175D3926002CD360 /* ShapeInfo.h */; settings = {ATTRIBUTES = (Private, ); }; };
    6383                 FD45A951175D3F3E00C21EC8 /* ShapeInsideInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = FD08A883175D3926002CD360 /* ShapeInsideInfo.h */; settings = {ATTRIBUTES = (Private, ); }; };
    63846383                FD45A952175D3F3E00C21EC8 /* ShapeOutsideInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = FD08A887175D3926002CD360 /* ShapeOutsideInfo.h */; settings = {ATTRIBUTES = (Private, ); }; };
    63856384                FD45A953175D3FB800C21EC8 /* Shape.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD08A87E175D3926002CD360 /* Shape.cpp */; };
    63866385                FD45A954175D3FB800C21EC8 /* ShapeInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD08A880175D3926002CD360 /* ShapeInfo.cpp */; };
    6387                 FD45A955175D3FB800C21EC8 /* ShapeInsideInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD08A882175D3926002CD360 /* ShapeInsideInfo.cpp */; };
    63886386                FD45A956175D3FB800C21EC8 /* ShapeOutsideInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD08A886175D3926002CD360 /* ShapeOutsideInfo.cpp */; };
    63896387                FD45A957175D414C00C21EC8 /* PolygonShape.h in Headers */ = {isa = PBXBuildFile; fileRef = FD08A87B175D3926002CD360 /* PolygonShape.h */; settings = {ATTRIBUTES = (Private, ); }; };
     
    1368813686                FD08A880175D3926002CD360 /* ShapeInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ShapeInfo.cpp; sourceTree = "<group>"; };
    1368913687                FD08A881175D3926002CD360 /* ShapeInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ShapeInfo.h; sourceTree = "<group>"; };
    13690                 FD08A882175D3926002CD360 /* ShapeInsideInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ShapeInsideInfo.cpp; sourceTree = "<group>"; };
    13691                 FD08A883175D3926002CD360 /* ShapeInsideInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ShapeInsideInfo.h; sourceTree = "<group>"; };
    1369213688                FD08A885175D3926002CD360 /* ShapeInterval.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ShapeInterval.h; sourceTree = "<group>"; };
    1369313689                FD08A886175D3926002CD360 /* ShapeOutsideInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ShapeOutsideInfo.cpp; sourceTree = "<group>"; };
     
    2251822514                                FD08A880175D3926002CD360 /* ShapeInfo.cpp */,
    2251922515                                FD08A881175D3926002CD360 /* ShapeInfo.h */,
    22520                                 FD08A882175D3926002CD360 /* ShapeInsideInfo.cpp */,
    22521                                 FD08A883175D3926002CD360 /* ShapeInsideInfo.h */,
    2252222516                                FD08A885175D3926002CD360 /* ShapeInterval.h */,
    2252322517                                FD08A886175D3926002CD360 /* ShapeOutsideInfo.cpp */,
     
    2546425458                                FD45A94F175D3F3E00C21EC8 /* Shape.h in Headers */,
    2546525459                                FD45A950175D3F3E00C21EC8 /* ShapeInfo.h in Headers */,
    25466                                 FD45A951175D3F3E00C21EC8 /* ShapeInsideInfo.h in Headers */,
    2546725460                                FD45A95B175D41EE00C21EC8 /* ShapeInterval.h in Headers */,
    2546825461                                FD45A952175D3F3E00C21EC8 /* ShapeOutsideInfo.h in Headers */,
     
    2882828821                                FD45A953175D3FB800C21EC8 /* Shape.cpp in Sources */,
    2882928822                                FD45A954175D3FB800C21EC8 /* ShapeInfo.cpp in Sources */,
    28830                                 FD45A955175D3FB800C21EC8 /* ShapeInsideInfo.cpp in Sources */,
    2883128823                                FD45A956175D3FB800C21EC8 /* ShapeOutsideInfo.cpp in Sources */,
    2883228824                                1A4A954D0B4EDCCB002D8C3C /* SharedBuffer.cpp in Sources */,
  • trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp

    r166157 r166301  
    347347    CSSPropertyWebkitCompositionFillColor,
    348348#endif
    349 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    350     CSSPropertyWebkitShapeInside,
    351 #endif
    352349#if ENABLE(CSS_SHAPES)
    353350    CSSPropertyWebkitShapeOutside,
     
    395392    CSSPropertyWebkitShapeMargin,
    396393    CSSPropertyWebkitShapeImageThreshold,
    397 #if ENABLE(CSS_SHAPE_INSIDE)
    398     CSSPropertyWebkitShapePadding,
    399 #endif
    400394#endif
    401395    CSSPropertyBufferedRendering,
     
    28232817        case CSSPropertyWebkitShapeImageThreshold:
    28242818            return cssValuePool().createValue(style->shapeImageThreshold(), CSSPrimitiveValue::CSS_NUMBER);
    2825 #if ENABLE(CSS_SHAPE_INSIDE)
    2826         case CSSPropertyWebkitShapePadding:
    2827             return cssValuePool().createValue(style->shapePadding());
    2828         case CSSPropertyWebkitShapeInside:
    2829             return shapePropertyValue(style.get(), style->shapeInside());
    2830 #endif
    28312819        case CSSPropertyWebkitShapeOutside:
    28322820            return shapePropertyValue(style.get(), style->shapeOutside());
  • trunk/Source/WebCore/css/CSSParser.cpp

    r166231 r166301  
    563563        acceptsNegativeNumbers = false;
    564564        return true;
    565 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    566     case CSSPropertyWebkitShapePadding:
    567 #endif
    568565#if ENABLE(CSS_SHAPES)
    569566    case CSSPropertyWebkitShapeMargin:
     
    29142911        parsedValue = parseClipPath();
    29152912        break;
    2916 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    2917     case CSSPropertyWebkitShapeInside:
    2918 #endif
    29192913#if ENABLE(CSS_SHAPES)
    29202914    case CSSPropertyWebkitShapeOutside:
     
    29222916        break;
    29232917    case CSSPropertyWebkitShapeMargin:
    2924 #if ENABLE(CSS_SHAPE_INSIDE)
    2925     case CSSPropertyWebkitShapePadding:
    2926 #endif
    29272918        validPrimitive = (RuntimeEnabledFeatures::sharedFeatures().cssShapesEnabled() && !id && validUnit(value, FLength | FNonNeg));
    29282919        break;
     
    57075698    RefPtr<CSSPrimitiveValue> shapeValue;
    57085699
    5709     if (valueId == CSSValueNone
    5710 #if ENABLE(CSS_SHAPE_INSIDE)
    5711         || (valueId == CSSValueOutsideShape
    5712             && propId == CSSPropertyWebkitShapeInside)
    5713 #endif
    5714         ) {
     5700    if (valueId == CSSValueNone) {
    57155701        keywordValue = parseValidPrimitive(valueId, value);
    57165702        m_valueList->next();
  • trunk/Source/WebCore/css/CSSPropertyNames.in

    r165595 r166301  
    436436-webkit-region-break-inside
    437437#endif
    438 #if defined(ENABLE_CSS_SHAPES) && ENABLE_CSS_SHAPES && defined(ENABLE_CSS_SHAPE_INSIDE) && ENABLE_CSS_SHAPE_INSIDE
    439 -webkit-shape-inside
    440 -webkit-shape-padding
    441 #endif
    442438#if defined(ENABLE_CSS_SHAPES) && ENABLE_CSS_SHAPES
    443439-webkit-shape-outside
  • trunk/Source/WebCore/css/DeprecatedStyleBuilder.cpp

    r165843 r166301  
    26152615    setPropertyHandler(CSSPropertyWebkitWrapThrough, ApplyPropertyDefault<WrapThrough, &RenderStyle::wrapThrough, WrapThrough, &RenderStyle::setWrapThrough, WrapThrough, &RenderStyle::initialWrapThrough>::createHandler());
    26162616#endif
    2617 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    2618     setPropertyHandler(CSSPropertyWebkitShapeInside, ApplyPropertyShape<&RenderStyle::shapeInside, &RenderStyle::setShapeInside, &RenderStyle::initialShapeInside>::createHandler());
    2619     setPropertyHandler(CSSPropertyWebkitShapePadding, ApplyPropertyLength<&RenderStyle::shapePadding, &RenderStyle::setShapePadding, &RenderStyle::initialShapePadding>::createHandler());
    2620 #endif
    26212617#if ENABLE(CSS_SHAPES)
    26222618    setPropertyHandler(CSSPropertyWebkitShapeMargin, ApplyPropertyLength<&RenderStyle::shapeMargin, &RenderStyle::setShapeMargin, &RenderStyle::initialShapeMargin>::createHandler());
  • trunk/Source/WebCore/css/StyleResolver.cpp

    r166299 r166301  
    29982998    case CSSPropertyWebkitUserSelect:
    29992999    case CSSPropertyWebkitClipPath:
    3000 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    3001     case CSSPropertyWebkitShapeInside:
    3002     case CSSPropertyWebkitShapePadding:
    3003 #endif
    30043000#if ENABLE(CSS_SHAPES)
    30053001    case CSSPropertyWebkitShapeMargin:
     
    36033599            break;
    36043600        }
    3605 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    3606         case CSSPropertyWebkitShapeInside:
    3607             loadPendingShapeImage(m_state.style()->shapeInside());
    3608             break;
    3609 #endif
    36103601#if ENABLE(CSS_SHAPES)
    36113602        case CSSPropertyWebkitShapeOutside:
  • trunk/Source/WebCore/page/animation/CSSPropertyAnimation.cpp

    r165843 r166301  
    12281228        new PropertyWrapperClipPath(CSSPropertyWebkitClipPath, &RenderStyle::clipPath, &RenderStyle::setClipPath),
    12291229
    1230 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    1231         new PropertyWrapperShape(CSSPropertyWebkitShapeInside, &RenderStyle::shapeInside, &RenderStyle::setShapeInside),
    1232 #endif
    12331230#if ENABLE(CSS_SHAPES)
    12341231        new PropertyWrapperShape(CSSPropertyWebkitShapeOutside, &RenderStyle::shapeOutside, &RenderStyle::setShapeOutside),
  • trunk/Source/WebCore/rendering/LayoutState.cpp

    r163973 r166301  
    3939    , m_lineGrid(0)
    4040    , m_next(std::move(next))
    41 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    42     , m_shapeInsideInfo(nullptr)
    43 #endif
    4441#ifndef NDEBUG
    4542    , m_renderer(renderer)
     
    110107        m_columnInfo = m_next->m_columnInfo;
    111108
    112 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    113     if (renderer->isRenderBlock()) {
    114         const RenderBlock* renderBlock = toRenderBlock(renderer);
    115         m_shapeInsideInfo = renderBlock->shapeInsideInfo();
    116         if (!m_shapeInsideInfo && m_next->m_shapeInsideInfo && renderBlock->allowsShapeInsideInfoSharing())
    117             m_shapeInsideInfo = m_next->m_shapeInsideInfo;
    118     }
    119 #endif
    120 
    121109    m_layoutDelta = m_next->m_layoutDelta;
    122110#if !ASSERT_DISABLED && ENABLE(SATURATED_LAYOUT_ARITHMETIC)
     
    147135    , m_columnInfo(0)
    148136    , m_lineGrid(0)
    149 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    150     , m_shapeInsideInfo(nullptr)
    151 #endif
    152137    , m_pageLogicalHeight(0)
    153138#ifndef NDEBUG
  • trunk/Source/WebCore/rendering/LayoutState.h

    r165991 r166301  
    5656        , m_columnInfo(nullptr)
    5757        , m_lineGrid(nullptr)
    58 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    59         , m_shapeInsideInfo(nullptr)
    60 #endif
    6158        , m_pageLogicalHeight(0)
    6259#ifndef NDEBUG
     
    9289   
    9390    bool needsBlockDirectionLocationSetBeforeLayout() const { return m_lineGrid || (m_isPaginated && m_pageLogicalHeight); }
    94 
    95 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    96     ShapeInsideInfo* shapeInsideInfo() const { return m_shapeInsideInfo; }
    97 #endif
    9891private:
    9992    void propagateLineGridInfo(RenderBox*);
     
    116109    RenderBlockFlow* m_lineGrid;
    117110    std::unique_ptr<LayoutState> m_next;
    118 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    119     ShapeInsideInfo* m_shapeInsideInfo;
    120 #endif
    121111
    122112    // FIXME: Distinguish between the layout clip rect and the paint clip rect which may be larger,
  • trunk/Source/WebCore/rendering/RenderBlock.cpp

    r165890 r166301  
    7070#include <wtf/TemporaryChange.h>
    7171
    72 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    73 #include "ShapeInsideInfo.h"
    74 #endif
    7572#if ENABLE(CSS_SHAPES)
    7673#include "ShapeOutsideInfo.h"
     
    120117    LayoutUnit m_paginationStrut;
    121118    LayoutUnit m_pageLogicalOffset;
    122 
    123 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    124     std::unique_ptr<ShapeInsideInfo> m_shapeInsideInfo;
    125 #endif
    126119};
    127120
     
    308301   
    309302    RenderStyle& newStyle = style();
    310    
    311 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    312     updateShapeInsideInfoAfterStyleChange(newStyle.resolvedShapeInside(), oldStyle ? oldStyle->resolvedShapeInside() : 0);
    313 #endif
    314303
    315304    if (!isAnonymousBlock()) {
     
    13171306    if (!parent() || !everHadLayout())
    13181307        return;
    1319 
    1320 #if ENABLE(CSS_SHAPE_INSIDE)
    1321     ShapeValue* shapeValue = style().shapeInside();
    1322     if (shapeValue && shapeValue->image() && shapeValue->image()->data() == image) {
    1323         ShapeInsideInfo& shapeInsideInfo = ensureShapeInsideInfo();
    1324         shapeInsideInfo.markShapeAsDirty();
    1325         markShapeInsideDescendantsForLayout();
    1326     }
     1308}
    13271309#endif
    1328 }
    1329 #endif
    1330 
    1331 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    1332 void RenderBlock::relayoutShapeDescendantIfMoved(RenderBlock* child, LayoutSize offset)
    1333 {
    1334     LayoutUnit left = isHorizontalWritingMode() ? offset.width() : offset.height();
    1335     if (!left || !child || child->shapeInsideInfo() || !layoutShapeInsideInfo())
    1336         return;
    1337     // Propagate layout markers only up to the child, as we are still in the middle
    1338     // of a layout pass
    1339     child->setNormalChildNeedsLayoutBit(true);
    1340     child->markShapeInsideDescendantsForLayout();
    1341     child->layoutIfNeeded();
    1342 }
    1343 
    1344 LayoutSize RenderBlock::logicalOffsetFromShapeAncestorContainer(const RenderBlock* container) const
    1345 {
    1346     const RenderBlock* currentBlock = this;
    1347     LayoutRect blockRect(currentBlock->borderBoxRect());
    1348     while (currentBlock && !currentBlock->isRenderFlowThread() && currentBlock != container) {
    1349         RenderBlock* containerBlock = currentBlock->containingBlock();
    1350         ASSERT(containerBlock);
    1351         if (!containerBlock)
    1352             return LayoutSize();
    1353 
    1354         if (containerBlock->style().writingMode() != currentBlock->style().writingMode()) {
    1355             // We have to put the block rect in container coordinates
    1356             // and we have to take into account both the container and current block flipping modes
    1357             // Bug 118073: Flipping inline and block directions at the same time will not work,
    1358             // as one of the flipped dimensions will not yet have been set to its final size
    1359             if (containerBlock->style().isFlippedBlocksWritingMode()) {
    1360                 if (containerBlock->isHorizontalWritingMode())
    1361                     blockRect.setY(currentBlock->height() - blockRect.maxY());
    1362                 else
    1363                     blockRect.setX(currentBlock->width() - blockRect.maxX());
    1364             }
    1365             currentBlock->flipForWritingMode(blockRect);
    1366         }
    1367 
    1368         blockRect.moveBy(currentBlock->location());
    1369         currentBlock = containerBlock;
    1370     }
    1371 
    1372     LayoutSize result = isHorizontalWritingMode() ? LayoutSize(blockRect.x(), blockRect.y()) : LayoutSize(blockRect.y(), blockRect.x());
    1373     return result;
    1374 }
    1375 
    1376 void RenderBlock::updateShapeInsideInfoAfterStyleChange(const ShapeValue* shapeInside, const ShapeValue* oldShapeInside)
    1377 {
    1378     // FIXME: A future optimization would do a deep comparison for equality.
    1379     if (shapeInside == oldShapeInside)
    1380         return;
    1381 
    1382     if (shapeInside) {
    1383         ShapeInsideInfo& shapeInsideInfo = ensureShapeInsideInfo();
    1384         shapeInsideInfo.markShapeAsDirty();
    1385     } else
    1386         setShapeInsideInfo(nullptr);
    1387     markShapeInsideDescendantsForLayout();
    1388 }
    1389 
    1390 ShapeInsideInfo& RenderBlock::ensureShapeInsideInfo()
    1391 {
    1392     RenderBlockRareData& rareData = ensureRareData(this);
    1393     if (!rareData.m_shapeInsideInfo)
    1394         setShapeInsideInfo(std::make_unique<ShapeInsideInfo>(*this));
    1395     return *rareData.m_shapeInsideInfo;
    1396 }
    1397 
    1398 ShapeInsideInfo* RenderBlock::shapeInsideInfo() const
    1399 {
    1400     RenderBlockRareData* rareData = getRareData(this);
    1401     if (!rareData || !rareData->m_shapeInsideInfo)
    1402         return nullptr;
    1403     return ShapeInsideInfo::isEnabledFor(*this) ? rareData->m_shapeInsideInfo.get() : nullptr;
    1404 }
    1405 
    1406 void RenderBlock::setShapeInsideInfo(std::unique_ptr<ShapeInsideInfo> value)
    1407 {
    1408     ensureRareData(this).m_shapeInsideInfo = std::move(value);
    1409 }
    1410    
    1411 void RenderBlock::markShapeInsideDescendantsForLayout()
    1412 {
    1413     if (!everHadLayout())
    1414         return;
    1415     if (childrenInline()) {
    1416         setNeedsLayout();
    1417         invalidateLineLayoutPath();
    1418         return;
    1419     }
    1420 
    1421     for (auto& childBlock : childrenOfType<RenderBlock>(*this))
    1422         childBlock.markShapeInsideDescendantsForLayout();
    1423 }
    1424 
    1425 ShapeInsideInfo* RenderBlock::layoutShapeInsideInfo() const
    1426 {
    1427     // This may be called outside layout when switching from SimpleLineLayout to line boxes. This case never has shape info.
    1428     if (!view().layoutState())
    1429         return nullptr;
    1430 
    1431     ShapeInsideInfo* shapeInsideInfo = view().layoutState()->shapeInsideInfo();
    1432 
    1433     if (!shapeInsideInfo && flowThreadContainingBlock() && allowsShapeInsideInfoSharing()) {
    1434         LayoutUnit lineHeight = this->lineHeight(false, isHorizontalWritingMode() ? HorizontalLine : VerticalLine, PositionOfInteriorLineBoxes);
    1435         // regionAtBlockOffset returns regions like an array first={0,N-1}, second={N,M-1}, ...
    1436         LayoutUnit offset = logicalHeight() + lineHeight - LayoutUnit::fromPixel(1);
    1437         RenderRegion* region = regionAtBlockOffset(offset);
    1438         if (region && region->logicalHeight())
    1439             shapeInsideInfo = region->shapeInsideInfo();
    1440     }
    1441 
    1442     return shapeInsideInfo;
    1443 }
    1444 
    1445 static inline bool shapeInfoRequiresRelayout(const RenderBlock* block)
    1446 {
    1447     ShapeInsideInfo* info = block->shapeInsideInfo();
    1448     if (info)
    1449         info->setNeedsLayout(info->isShapeDirty());
    1450     else
    1451         info = block->layoutShapeInsideInfo();
    1452     return info && info->needsLayout();
    1453 }
    1454 
    1455 void RenderBlock::computeShapeSize()
    1456 {
    1457     ShapeInsideInfo* shapeInsideInfo = this->shapeInsideInfo();
    1458     if (!shapeInsideInfo)
    1459         return;
    1460 
    1461     if (isRenderNamedFlowFragment()) {
    1462         ShapeInsideInfo* parentShapeInsideInfo = toRenderBlock(parent())->shapeInsideInfo();
    1463         ASSERT(parentShapeInsideInfo);
    1464         shapeInsideInfo->setReferenceBoxLogicalSize(parentShapeInsideInfo->referenceBoxLogicalSize());
    1465     } else {
    1466         bool percentageLogicalHeightResolvable = percentageLogicalHeightIsResolvableFromBlock(this, false);
    1467         shapeInsideInfo->setReferenceBoxLogicalSize(LayoutSize(logicalWidth(), percentageLogicalHeightResolvable ? logicalHeight() : LayoutUnit()));
    1468     }
    1469 }
    1470 #endif
    1471 
    1472 bool RenderBlock::updateShapesBeforeBlockLayout()
    1473 {
    1474 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    1475     if (!flowThreadContainingBlock() && !shapeInsideInfo())
    1476         return shapeInfoRequiresRelayout(this);
    1477 
    1478     LayoutUnit oldHeight = logicalHeight();
    1479     LayoutUnit oldTop = logicalTop();
    1480 
    1481     // Compute the maximum logical height content may cause this block to expand to
    1482     // FIXME: These should eventually use the const computeLogicalHeight rather than updateLogicalHeight
    1483     setLogicalHeight(RenderFlowThread::maxLogicalHeight());
    1484     updateLogicalHeight();
    1485 
    1486     computeShapeSize();
    1487 
    1488     setLogicalHeight(oldHeight);
    1489     setLogicalTop(oldTop);
    1490 
    1491     return shapeInfoRequiresRelayout(this);
    1492 #else
    1493     return false;
    1494 #endif
    1495 }
    1496 
    1497 void RenderBlock::updateShapesAfterBlockLayout(bool heightChanged)
    1498 {
    1499 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    1500     // A previous sibling has changed dimension, so we need to relayout the shape with the content
    1501     ShapeInsideInfo* shapeInsideInfo = layoutShapeInsideInfo();
    1502     if (heightChanged && shapeInsideInfo)
    1503         shapeInsideInfo->markShapeAsDirty();
    1504 #else
    1505     UNUSED_PARAM(heightChanged);
    1506 #endif
    1507 }
    1508 
    1509 void RenderBlock::prepareShapesAndPaginationBeforeBlockLayout(bool& relayoutChildren)
     1310
     1311void RenderBlock::preparePaginationBeforeBlockLayout(bool& relayoutChildren)
    15101312{
    15111313    // Regions changing widths can force us to relayout our children.
    15121314    RenderFlowThread* flowThread = flowThreadContainingBlock();
    1513     if (updateShapesBeforeBlockLayout())
    1514         relayoutChildren = true;
    15151315    if (flowThread)
    15161316        flowThread->logicalWidthChangedInRegionsForBlock(this, relayoutChildren);
  • trunk/Source/WebCore/rendering/RenderBlock.h

    r165873 r166301  
    3838class RenderInline;
    3939class RenderText;
    40 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    41 class ShapeInsideInfo;
    42 class ShapeValue;
    43 #endif
    4440
    4541struct BidiRun;
     
    352348#endif
    353349
    354 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    355     ShapeInsideInfo& ensureShapeInsideInfo();
    356     ShapeInsideInfo* shapeInsideInfo() const;
    357     void setShapeInsideInfo(std::unique_ptr<ShapeInsideInfo>);
    358    
    359     void markShapeInsideDescendantsForLayout();
    360     ShapeInsideInfo* layoutShapeInsideInfo() const;
    361     bool allowsShapeInsideInfoSharing() const { return !isInline() && !isFloating(); }
    362     LayoutSize logicalOffsetFromShapeAncestorContainer(const RenderBlock* container) const;
    363 #endif
    364 
    365350    virtual void updateHitTestResult(HitTestResult&, const LayoutPoint&) override;
    366351
     
    445430    virtual void addFocusRingRectsForInlineChildren(Vector<IntRect>&, const LayoutPoint& additionalOffset, const RenderLayerModelObject* paintContainer);
    446431
    447     bool updateShapesBeforeBlockLayout();
    448     void updateShapesAfterBlockLayout(bool heightChanged = false);
    449432    void computeRegionRangeForBoxChild(const RenderBox&) const;
    450433
     
    454437    void updateBlockChildDirtyBitsBeforeLayout(bool relayoutChildren, RenderBox&);
    455438
    456     void prepareShapesAndPaginationBeforeBlockLayout(bool&);
     439    void preparePaginationBeforeBlockLayout(bool&);
    457440
    458441private:
     
    463446    LayoutUnit adjustLogicalRightOffsetForLine(LayoutUnit offsetFromFloats, bool applyTextIndent) const;
    464447    LayoutUnit adjustLogicalLeftOffsetForLine(LayoutUnit offsetFromFloats, bool applyTextIndent) const;
    465 
    466 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    467     void computeShapeSize();
    468     void updateShapeInsideInfoAfterStyleChange(const ShapeValue*, const ShapeValue* oldShape);
    469     void relayoutShapeDescendantIfMoved(RenderBlock* child, LayoutSize offset);
    470 #endif
    471448
    472449    virtual const char* renderName() const override;
  • trunk/Source/WebCore/rendering/RenderBlockFlow.cpp

    r166171 r166301  
    4444#include "VerticalPositionCache.h"
    4545#include "VisiblePosition.h"
    46 
    47 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    48 #include "ShapeInsideInfo.h"
    49 #endif
    5046
    5147namespace WebCore {
     
    364360    LayoutStateMaintainer statePusher(view(), *this, locationOffset(), hasColumns() || hasTransform() || hasReflection() || styleToUse.isFlippedBlocksWritingMode(), pageLogicalHeight, pageLogicalHeightChanged, columnInfo());
    365361
    366     prepareShapesAndPaginationBeforeBlockLayout(relayoutChildren);
     362    preparePaginationBeforeBlockLayout(relayoutChildren);
    367363    if (!relayoutChildren)
    368364        relayoutChildren = namedFlowFragmentNeedsUpdate();
     
    435431
    436432    layoutPositionedObjects(relayoutChildren || isRoot());
    437 
    438     updateShapesAfterBlockLayout(heightChanged);
    439433
    440434    // Add overflow from children (unless we're multi-column, since in that case all our child overflow is clipped anyway).
     
    682676    determineLogicalLeftPositionForChild(child, ApplyLayoutDelta);
    683677
    684     LayoutSize childOffset = child.location() - oldRect.location();
    685 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    686     relayoutShapeDescendantIfMoved(child.isRenderBlock() ? toRenderBlock(&child) : nullptr, childOffset);
    687 #endif
    688 
    689678    // Update our height now that the child has been placed in the correct position.
    690679    setLogicalHeight(logicalHeight() + logicalHeightForChild(child));
     
    698687        maxFloatLogicalBottom = std::max(maxFloatLogicalBottom, addOverhangingFloats(*childBlockFlow, !childNeededLayout));
    699688
     689    LayoutSize childOffset = child.location() - oldRect.location();
    700690    if (childOffset.width() || childOffset.height()) {
    701691        view().addLayoutDelta(childOffset);
     
    21552145    RenderBox& childBox = floatingObject->renderer();
    21562146    LayoutUnit logicalLeftOffset = logicalLeftOffsetForContent(logicalTopOffset); // Constant part of left offset.
    2157     LayoutUnit logicalRightOffset; // Constant part of right offset.
    2158 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    2159     // FIXME Bug 102948: This only works for shape outside directly set on this block.
    2160     ShapeInsideInfo* shapeInsideInfo = this->layoutShapeInsideInfo();
    2161     // FIXME: Implement behavior for right floats.
    2162     if (shapeInsideInfo) {
    2163         LayoutSize floatLogicalSize = logicalSizeForFloat(floatingObject);
    2164         // floatingObject's logicalSize doesn't contain the actual height at this point, so we need to calculate it
    2165         floatLogicalSize.setHeight(logicalHeightForChild(childBox) + marginBeforeForChild(childBox) + marginAfterForChild(childBox));
    2166 
    2167         // FIXME: If the float doesn't fit in the shape we should push it under the content box
    2168         logicalTopOffset = shapeInsideInfo->computeFirstFitPositionForFloat(floatLogicalSize);
    2169         if (logicalHeight() > logicalTopOffset)
    2170             logicalTopOffset = logicalHeight();
    2171 
    2172         SegmentList segments = shapeInsideInfo->computeSegmentsForLine(logicalTopOffset, floatLogicalSize.height());
    2173         // FIXME Bug 102949: Add support for shapes with multiple segments.
    2174         if (segments.size() == 1) {
    2175             // The segment offsets are relative to the content box.
    2176             logicalRightOffset = logicalLeftOffset + segments[0].logicalRight;
    2177             logicalLeftOffset += segments[0].logicalLeft;
    2178         }
    2179     } else
    2180 #endif
    2181         logicalRightOffset = logicalRightOffsetForContent(logicalTopOffset);
     2147    LayoutUnit logicalRightOffset = logicalRightOffsetForContent(logicalTopOffset); // Constant part of right offset.
    21822148
    21832149    LayoutUnit floatLogicalWidth = std::min(logicalWidthForFloat(floatingObject), logicalRightOffset - logicalLeftOffset); // The width we look for.
  • trunk/Source/WebCore/rendering/RenderBlockFlow.h

    r166171 r166301  
    540540    const InlineIterator& restartLayoutRunsAndFloatsInRange(LayoutUnit oldLogicalHeight, LayoutUnit newLogicalHeight,  FloatingObject* lastFloatFromPreviousLine, InlineBidiResolver&,  const InlineIterator&);
    541541    void layoutRunsAndFloatsInRange(LineLayoutState&, InlineBidiResolver&, const InlineIterator& cleanLineStart, const BidiStatus& cleanLineBidiStatus, unsigned consecutiveHyphenatedLines);
    542 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    543     void updateShapeAndSegmentsForCurrentLine(ShapeInsideInfo*&, const LayoutSize&, LineLayoutState&);
    544     void updateShapeAndSegmentsForCurrentLineInFlowThread(ShapeInsideInfo*&, LineLayoutState&);
    545     bool adjustLogicalLineTopAndLogicalHeightIfNeeded(ShapeInsideInfo*, LayoutUnit, LineLayoutState&, InlineBidiResolver&, FloatingObject*, InlineIterator&, WordMeasurements&);
    546 #endif
    547542    void linkToEndLineIfNeeded(LineLayoutState&);
    548543    static void repaintDirtyFloats(Vector<FloatWithRect>& floats);
  • trunk/Source/WebCore/rendering/RenderBlockLineLayout.cpp

    r166245 r166301  
    647647    updateLogicalInlinePositions(*this, lineLogicalLeft, lineLogicalRight, availableLogicalWidth, isFirstLine, shouldIndentText, 0);
    648648    bool needsWordSpacing;
    649 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    650     ShapeInsideInfo* shapeInsideInfo = layoutShapeInsideInfo();
    651     if (shapeInsideInfo && shapeInsideInfo->hasSegments()) {
    652         BidiRun* segmentStart = firstRun;
    653         const SegmentList& segments = shapeInsideInfo->segments();
    654         float logicalLeft = std::max<float>(roundToInt(segments[0].logicalLeft), lineLogicalLeft);
    655         float logicalRight = std::min<float>(floorToInt(segments[0].logicalRight), lineLogicalRight);
    656         float startLogicalLeft = logicalLeft;
    657         float endLogicalRight = logicalLeft;
    658         float minLogicalLeft = logicalLeft;
    659         float maxLogicalRight = logicalLeft;
    660         lineBox->beginPlacingBoxRangesInInlineDirection(logicalLeft);
    661         for (size_t i = 0; i < segments.size(); i++) {
    662             if (i) {
    663                 logicalLeft = std::max<float>(roundToInt(segments[i].logicalLeft), lineLogicalLeft);
    664                 logicalRight = std::min<float>(floorToInt(segments[i].logicalRight), lineLogicalRight);
    665             }
    666             availableLogicalWidth = logicalRight - logicalLeft;
    667             BidiRun* newSegmentStart = computeInlineDirectionPositionsForSegment(lineBox, lineInfo, textAlign, logicalLeft, availableLogicalWidth, segmentStart, trailingSpaceRun, textBoxDataMap, verticalPositionCache, wordMeasurements);
    668             needsWordSpacing = false;
    669             endLogicalRight = lineBox->placeBoxRangeInInlineDirection(segmentStart->box(), newSegmentStart ? newSegmentStart->box() : 0, logicalLeft, minLogicalLeft, maxLogicalRight, needsWordSpacing, textBoxDataMap);
    670             if (!newSegmentStart || !newSegmentStart->next())
    671                 break;
    672             ASSERT(newSegmentStart->m_startsSegment);
    673             // Discard the empty segment start marker bidi runs
    674             segmentStart = newSegmentStart->next();
    675         }
    676         lineBox->endPlacingBoxRangesInInlineDirection(startLogicalLeft, endLogicalRight, minLogicalLeft, maxLogicalRight);
    677         return;
    678     }
    679 #endif
    680649
    681650    if (firstRun && firstRun->renderer().isReplaced()) {
     
    949918}
    950919
    951 static inline void constructBidiRunsForLine(const RenderBlockFlow* block, InlineBidiResolver& topResolver, BidiRunList<BidiRun>& bidiRuns, const InlineIterator& endOfLine, VisualDirectionOverride override, bool previousLineBrokeCleanly)
    952 {
    953 #if !ENABLE(CSS_SHAPES) || !ENABLE(CSS_SHAPE_INSIDE)
    954     UNUSED_PARAM(block);
    955     constructBidiRunsForSegment(topResolver, bidiRuns, endOfLine, override, previousLineBrokeCleanly);
    956 #else
    957     ShapeInsideInfo* shapeInsideInfo = block->layoutShapeInsideInfo();
    958     if (!shapeInsideInfo || !shapeInsideInfo->hasSegments()) {
    959         constructBidiRunsForSegment(topResolver, bidiRuns, endOfLine, override, previousLineBrokeCleanly);
    960         return;
    961     }
    962 
    963     const SegmentRangeList& segmentRanges = shapeInsideInfo->segmentRanges();
    964     ASSERT(segmentRanges.size());
    965 
    966     for (size_t i = 0; i < segmentRanges.size(); i++) {
    967         LineSegmentIterator iterator = segmentRanges[i].start;
    968         InlineIterator segmentStart(iterator.root, iterator.object, iterator.offset);
    969         iterator = segmentRanges[i].end;
    970         InlineIterator segmentEnd(iterator.root, iterator.object, iterator.offset);
    971         if (i) {
    972             ASSERT(segmentStart.renderer());
    973             BidiRun* segmentMarker = createRun(segmentStart.offset(), segmentStart.offset(), segmentStart.renderer(), topResolver);
    974             segmentMarker->m_startsSegment = true;
    975             bidiRuns.addRun(segmentMarker);
    976             // Do not collapse midpoints between segments
    977             topResolver.midpointState().setBetweenMidpoints(false);
    978         }
    979         if (segmentStart == segmentEnd)
    980             continue;
    981         topResolver.setPosition(segmentStart, numberOfIsolateAncestors(segmentStart));
    982         constructBidiRunsForSegment(topResolver, bidiRuns, segmentEnd, override, previousLineBrokeCleanly);
    983     }
    984 #endif
    985 }
    986 
    987920// This function constructs line boxes for all of the text runs in the resolver and computes their position.
    988921RootInlineBox* RenderBlockFlow::createLineBoxesFromBidiRuns(unsigned bidiLevel, BidiRunList<BidiRun>& bidiRuns, const InlineIterator& end, LineInfo& lineInfo, VerticalPositionCache& verticalPositionCache, BidiRun* trailingSpaceRun, WordMeasurements& wordMeasurements)
     
    11231056}
    11241057
    1125 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    1126 static inline void pushShapeContentOverflowBelowTheContentBox(RenderBlockFlow* block, ShapeInsideInfo* shapeInsideInfo, LayoutUnit lineTop, LayoutUnit lineHeight)
    1127 {
    1128     ASSERT(shapeInsideInfo);
    1129 
    1130     LayoutUnit logicalLineBottom = lineTop + lineHeight;
    1131     LayoutUnit shapeLogicalBottom = shapeInsideInfo->shapeLogicalBottom();
    1132     LayoutUnit shapeContainingBlockLogicalHeight = shapeInsideInfo->shapeContainingBlockLogicalHeight();
    1133 
    1134     bool isOverflowPositionedAlready = (shapeContainingBlockLogicalHeight - shapeInsideInfo->owner().borderAndPaddingAfter() + lineHeight) <= lineTop;
    1135 
    1136     // If the last line overlaps with the shape, we don't need the segments anymore
    1137     if (lineTop < shapeLogicalBottom && shapeLogicalBottom < logicalLineBottom)
    1138         shapeInsideInfo->clearSegments();
    1139 
    1140     if (logicalLineBottom <= shapeLogicalBottom || !shapeContainingBlockLogicalHeight || isOverflowPositionedAlready)
    1141         return;
    1142 
    1143     LayoutUnit newLogicalHeight = block->logicalHeight() + (shapeContainingBlockLogicalHeight - (lineTop + shapeInsideInfo->owner().borderAndPaddingAfter()));
    1144     block->setLogicalHeight(newLogicalHeight);
    1145 }
    1146 
    1147 void RenderBlockFlow::updateShapeAndSegmentsForCurrentLine(ShapeInsideInfo*& shapeInsideInfo, const LayoutSize& logicalOffsetFromShapeContainer, LineLayoutState& layoutState)
    1148 {
    1149     if (layoutState.flowThread())
    1150         return updateShapeAndSegmentsForCurrentLineInFlowThread(shapeInsideInfo, layoutState);
    1151 
    1152     if (!shapeInsideInfo)
    1153         return;
    1154 
    1155     LayoutUnit lineTop = logicalHeight() + logicalOffsetFromShapeContainer.height();
    1156     LayoutUnit lineLeft = logicalOffsetFromShapeContainer.width();
    1157     LayoutUnit lineHeight = this->lineHeight(layoutState.lineInfo().isFirstLine(), isHorizontalWritingMode() ? HorizontalLine : VerticalLine, PositionOfInteriorLineBoxes);
    1158 
    1159     // FIXME: Bug 95361: It is possible for a line to grow beyond lineHeight, in which case these segments may be incorrect.
    1160     shapeInsideInfo->updateSegmentsForLine(LayoutSize(lineLeft, lineTop), lineHeight);
    1161 
    1162     pushShapeContentOverflowBelowTheContentBox(this, shapeInsideInfo, lineTop, lineHeight);
    1163 }
    1164 
    1165 void RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread(ShapeInsideInfo*& shapeInsideInfo, LineLayoutState& layoutState)
    1166 {
    1167     ASSERT(layoutState.flowThread());
    1168 
    1169     RenderRegion* currentRegion = regionAtBlockOffset(logicalHeight());
    1170     if (!currentRegion || !currentRegion->logicalHeight())
    1171         return;
    1172 
    1173     shapeInsideInfo = currentRegion->shapeInsideInfo();
    1174 
    1175     RenderRegion* nextRegion = 0;
    1176     if (!currentRegion->isLastRegion()) {
    1177         RenderRegionList regionList = layoutState.flowThread()->renderRegionList();
    1178         auto it = regionList.find(currentRegion);
    1179         nextRegion = *(++it);
    1180     }
    1181 
    1182     // We only want to deal regions with shapes, so we check if the next region has a shape
    1183     if (!shapeInsideInfo && nextRegion && !nextRegion->shapeInsideInfo())
    1184         return;
    1185 
    1186     LayoutUnit lineHeight = this->lineHeight(layoutState.lineInfo().isFirstLine(), isHorizontalWritingMode() ? HorizontalLine : VerticalLine, PositionOfInteriorLineBoxes);
    1187     LayoutUnit logicalLineTopInFlowThread = logicalHeight() + offsetFromLogicalTopOfFirstPage();
    1188     LayoutUnit logicalLineBottomInFlowThread = logicalLineTopInFlowThread + lineHeight;
    1189     LayoutUnit logicalRegionTopInFlowThread = currentRegion->logicalTopForFlowThreadContent();
    1190     LayoutUnit logicalRegionBottomInFlowThread = logicalRegionTopInFlowThread + currentRegion->logicalHeight() - currentRegion->borderAndPaddingBefore() - currentRegion->borderAndPaddingAfter();
    1191 
    1192     LayoutUnit shapeBottomInFlowThread = LayoutUnit::max();
    1193     if (shapeInsideInfo)
    1194         shapeBottomInFlowThread = shapeInsideInfo->shapeLogicalBottom() + currentRegion->logicalTopForFlowThreadContent();
    1195 
    1196     bool lineOverLapsWithShapeBottom = shapeBottomInFlowThread < logicalLineBottomInFlowThread;
    1197     bool lineTopAdjustedIntoNextRegion = layoutState.adjustedLogicalLineTop() >= currentRegion->logicalHeight();
    1198     bool lineOverLapsWithRegionBottom = logicalLineBottomInFlowThread > logicalRegionBottomInFlowThread || lineTopAdjustedIntoNextRegion;
    1199     bool overFlowsToNextRegion = nextRegion && (lineOverLapsWithShapeBottom || lineOverLapsWithRegionBottom);
    1200 
    1201     // If the line is between two shapes/regions we position the line to the top of the next shape/region
    1202     if (overFlowsToNextRegion) {
    1203         ASSERT(currentRegion != nextRegion);
    1204         LayoutUnit deltaToNextRegion = logicalRegionBottomInFlowThread - logicalLineTopInFlowThread;
    1205         setLogicalHeight(logicalHeight() + deltaToNextRegion);
    1206 
    1207         currentRegion = nextRegion;
    1208         shapeInsideInfo = currentRegion->shapeInsideInfo();
    1209 
    1210         logicalLineTopInFlowThread = logicalHeight() + offsetFromLogicalTopOfFirstPage();
    1211         logicalLineBottomInFlowThread = logicalLineTopInFlowThread + lineHeight;
    1212         logicalRegionTopInFlowThread = currentRegion->logicalTopForFlowThreadContent();
    1213         logicalRegionBottomInFlowThread = logicalRegionTopInFlowThread + currentRegion->logicalHeight() - currentRegion->borderAndPaddingBefore() - currentRegion->borderAndPaddingAfter();
    1214 
    1215         if (lineTopAdjustedIntoNextRegion)
    1216             layoutState.setAdjustedLogicalLineTop(0);
    1217     }
    1218 
    1219     if (!shapeInsideInfo)
    1220         return;
    1221 
    1222     bool isFirstLineInRegion = logicalLineBottomInFlowThread <= (logicalRegionTopInFlowThread + lineHeight);
    1223     bool isFirstLineAdjusted = (logicalLineTopInFlowThread - logicalRegionTopInFlowThread) < (layoutState.adjustedLogicalLineTop() - currentRegion->borderAndPaddingBefore());
    1224     // We position the first line to the top of the shape in the region or to the previously adjusted position in the shape
    1225     if (isFirstLineInRegion || isFirstLineAdjusted) {
    1226         LayoutUnit shapeTopOffset = layoutState.adjustedLogicalLineTop();
    1227 
    1228         if (!shapeTopOffset && (shapeInsideInfo->shapeLogicalTop() > 0))
    1229             shapeTopOffset = shapeInsideInfo->shapeLogicalTop();
    1230 
    1231         LayoutUnit shapePositionInFlowThread = currentRegion->logicalTopForFlowThreadContent() + shapeTopOffset;
    1232         LayoutUnit shapeTopLineTopDelta = shapePositionInFlowThread - logicalLineTopInFlowThread - currentRegion->borderAndPaddingBefore();
    1233 
    1234         setLogicalHeight(logicalHeight() + shapeTopLineTopDelta);
    1235         logicalLineTopInFlowThread += shapeTopLineTopDelta;
    1236         layoutState.setAdjustedLogicalLineTop(0);
    1237     }
    1238 
    1239     LayoutUnit lineTop = logicalLineTopInFlowThread - currentRegion->logicalTopForFlowThreadContent() + currentRegion->borderAndPaddingBefore();
    1240 
    1241     // FIXME: 118571 - Shape inside on a region does not yet take into account its padding for nested flow blocks
    1242     shapeInsideInfo->updateSegmentsForLine(LayoutSize(0, lineTop), lineHeight);
    1243 
    1244     if (currentRegion->isLastRegion())
    1245         pushShapeContentOverflowBelowTheContentBox(this, shapeInsideInfo, lineTop, lineHeight);
    1246 }
    1247 
    1248 static inline LayoutUnit adjustLogicalLineTop(ShapeInsideInfo* shapeInsideInfo, InlineIterator start, InlineIterator end, const WordMeasurements& wordMeasurements)
    1249 {
    1250     if (!shapeInsideInfo || end != start)
    1251         return 0;
    1252 
    1253     float minWidth = firstPositiveWidth(wordMeasurements);
    1254     ASSERT(minWidth || wordMeasurements.isEmpty());
    1255     if (minWidth > 0 && shapeInsideInfo->adjustLogicalLineTop(minWidth))
    1256         return shapeInsideInfo->logicalLineTop();
    1257 
    1258     return shapeInsideInfo->shapeLogicalBottom();
    1259 }
    1260 
    1261 bool RenderBlockFlow::adjustLogicalLineTopAndLogicalHeightIfNeeded(ShapeInsideInfo* shapeInsideInfo, LayoutUnit absoluteLogicalTop, LineLayoutState& layoutState, InlineBidiResolver& resolver, FloatingObject* lastFloatFromPreviousLine, InlineIterator& end, WordMeasurements& wordMeasurements)
    1262 {
    1263     LayoutUnit adjustedLogicalLineTop = adjustLogicalLineTop(shapeInsideInfo, resolver.position(), end, wordMeasurements);
    1264 
    1265     if (shapeInsideInfo && containsFloats()) {
    1266         lastFloatFromPreviousLine = m_floatingObjects->set().last().get();
    1267         if (!wordMeasurements.size()) {
    1268             LayoutUnit floatLogicalTopOffset = shapeInsideInfo->computeFirstFitPositionForFloat(logicalSizeForFloat(lastFloatFromPreviousLine));
    1269             if (logicalHeight() < floatLogicalTopOffset)
    1270                 adjustedLogicalLineTop = floatLogicalTopOffset;
    1271         }
    1272     }
    1273 
    1274     if (!adjustedLogicalLineTop)
    1275         return false;
    1276 
    1277     LayoutUnit newLogicalHeight = adjustedLogicalLineTop - absoluteLogicalTop;
    1278 
    1279     if (layoutState.flowThread()) {
    1280         layoutState.setAdjustedLogicalLineTop(adjustedLogicalLineTop);
    1281         newLogicalHeight = logicalHeight();
    1282     }
    1283 
    1284     end = restartLayoutRunsAndFloatsInRange(logicalHeight(), newLogicalHeight, lastFloatFromPreviousLine, resolver, end);
    1285     return true;
    1286 }
    1287 #endif
    1288 
    12891058void RenderBlockFlow::layoutRunsAndFloatsInRange(LineLayoutState& layoutState, InlineBidiResolver& resolver, const InlineIterator& cleanLineStart, const BidiStatus& cleanLineBidiStatus, unsigned consecutiveHyphenatedLines)
    12901059{
     
    12991068    LineBreaker lineBreaker(*this);
    13001069
    1301 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    1302     LayoutSize logicalOffsetFromShapeContainer;
    1303     ShapeInsideInfo* shapeInsideInfo = layoutShapeInsideInfo();
    1304     if (shapeInsideInfo) {
    1305         ASSERT(&shapeInsideInfo->owner() == this || allowsShapeInsideInfoSharing());
    1306         if (shapeInsideInfo != this->shapeInsideInfo()) {
    1307             // FIXME Bug 100284: If subsequent LayoutStates are pushed, we will have to add
    1308             // their offsets from the original shape-inside container.
    1309             logicalOffsetFromShapeContainer = logicalOffsetFromShapeAncestorContainer(&shapeInsideInfo->owner());
    1310         }
    1311         // Begin layout at the logical top of our shape inside.
    1312         if (logicalHeight() + logicalOffsetFromShapeContainer.height() < shapeInsideInfo->shapeLogicalTop()) {
    1313             LayoutUnit logicalHeight = shapeInsideInfo->shapeLogicalTop() - logicalOffsetFromShapeContainer.height();
    1314             if (layoutState.flowThread())
    1315                 logicalHeight -= shapeInsideInfo->owner().borderAndPaddingBefore();
    1316             setLogicalHeight(logicalHeight);
    1317         }
    1318     }
    1319 #endif
    1320 
    13211070    while (!end.atEnd()) {
    13221071        // FIXME: Is this check necessary before the first iteration or can it be moved to the end?
     
    13381087        FloatingObject* lastFloatFromPreviousLine = (containsFloats()) ? m_floatingObjects->set().last().get() : 0;
    13391088
    1340 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    1341         updateShapeAndSegmentsForCurrentLine(shapeInsideInfo, logicalOffsetFromShapeContainer, layoutState);
    1342 #endif
    13431089        WordMeasurements wordMeasurements;
    13441090        end = lineBreaker.nextLineBreak(resolver, layoutState.lineInfo(), renderTextInfo, lastFloatFromPreviousLine, consecutiveHyphenatedLines, wordMeasurements);
     
    13541100        }
    13551101
    1356 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    1357         if (adjustLogicalLineTopAndLogicalHeightIfNeeded(shapeInsideInfo, logicalOffsetFromShapeContainer.height(), layoutState, resolver, lastFloatFromPreviousLine, end, wordMeasurements))
    1358             continue;
    1359 #endif
    13601102        ASSERT(end != resolver.position());
    13611103
     
    13741116            // FIXME: This ownership is reversed. We should own the BidiRunList and pass it to createBidiRunsForLine.
    13751117            BidiRunList<BidiRun>& bidiRuns = resolver.runs();
    1376             constructBidiRunsForLine(this, resolver, bidiRuns, end, override, layoutState.lineInfo().previousLineBrokeCleanly());
     1118            constructBidiRunsForSegment(resolver, bidiRuns, end, override, layoutState.lineInfo().previousLineBrokeCleanly());
    13771119            ASSERT(resolver.position() == end);
    13781120
  • trunk/Source/WebCore/rendering/RenderDeprecatedFlexibleBox.cpp

    r165676 r166301  
    283283    LayoutStateMaintainer statePusher(view(), *this, locationOffset(), hasTransform() || hasReflection() || style().isFlippedBlocksWritingMode());
    284284
    285     prepareShapesAndPaginationBeforeBlockLayout(relayoutChildren);
     285    preparePaginationBeforeBlockLayout(relayoutChildren);
    286286
    287287    LayoutSize previousSize = size();
     
    323323
    324324    layoutPositionedObjects(relayoutChildren || isRoot());
    325 
    326     updateShapesAfterBlockLayout();
    327325
    328326    computeOverflow(oldClientAfterEdge);
  • trunk/Source/WebCore/rendering/RenderElement.cpp

    r165699 r166301  
    113113            maskBoxImage->removeClient(this);
    114114
    115 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    116         if (auto shapeValue = m_style->shapeInside()) {
    117             if (auto shapeImage = shapeValue->image())
    118                 shapeImage->removeClient(this);
    119         }
    120 #endif
    121115#if ENABLE(CSS_SHAPES)
    122116        if (auto shapeValue = m_style->shapeOutside()) {
     
    362356    updateImage(nullptr, m_style->maskBoxImage().image());
    363357
    364 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    365     updateShapeImage(nullptr, m_style->shapeInside());
    366 #endif
    367358#if ENABLE(CSS_SHAPES)
    368359    updateShapeImage(nullptr, m_style->shapeOutside());
     
    418409    updateImage(oldStyle.get().maskBoxImage().image(), m_style->maskBoxImage().image());
    419410
    420 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    421     updateShapeImage(oldStyle.get().shapeInside(), m_style->shapeInside());
    422 #endif
    423411#if ENABLE(CSS_SHAPES)
    424412    updateShapeImage(oldStyle.get().shapeOutside(), m_style->shapeOutside());
  • trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp

    r164441 r166301  
    268268    LayoutStateMaintainer statePusher(view(), *this, locationOffset(), hasTransform() || hasReflection() || style().isFlippedBlocksWritingMode());
    269269
    270     prepareShapesAndPaginationBeforeBlockLayout(relayoutChildren);
     270    preparePaginationBeforeBlockLayout(relayoutChildren);
    271271
    272272    m_numberOfInFlowChildrenOnFirstLine = -1;
     
    294294
    295295    layoutPositionedObjects(relayoutChildren || isRoot());
    296 
    297     updateShapesAfterBlockLayout();
    298296
    299297    repaintChildrenDuringLayoutIfMoved(oldChildRects);
  • trunk/Source/WebCore/rendering/RenderGrid.cpp

    r166299 r166301  
    187187    LayoutStateMaintainer statePusher(view(), *this, locationOffset(), hasTransform() || hasReflection() || style().isFlippedBlocksWritingMode());
    188188
    189     prepareShapesAndPaginationBeforeBlockLayout(relayoutChildren);
     189    preparePaginationBeforeBlockLayout(relayoutChildren);
    190190
    191191    LayoutSize previousSize = size();
     
    203203
    204204    layoutPositionedObjects(relayoutChildren || isRoot());
    205 
    206     updateShapesAfterBlockLayout();
    207205
    208206    computeOverflow(oldClientAfterEdge);
  • trunk/Source/WebCore/rendering/RenderNamedFlowFragment.cpp

    r165890 r166301  
    6464    style.get().setRegionThread(parentStyle.regionThread());
    6565    style.get().setRegionFragment(parentStyle.regionFragment());
    66 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    67     style.get().setShapeInside(parentStyle.shapeInside());
    68 #endif
    6966
    7067    return style;
  • trunk/Source/WebCore/rendering/RenderView.h

    r166079 r166301  
    253253        // We push LayoutState even if layoutState is disabled because it stores layoutDelta too.
    254254        if (!doingFullRepaint() || m_layoutState->isPaginated() || renderer.hasColumns() || renderer.flowThreadContainingBlock()
    255             || m_layoutState->lineGrid() || (renderer.style().lineGrid() != RenderStyle::initialLineGrid() && renderer.isRenderBlockFlow())
    256 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    257             || (renderer.isRenderBlock() && toRenderBlock(renderer).shapeInsideInfo())
    258             || (m_layoutState->shapeInsideInfo() && renderer.isRenderBlock() && !toRenderBlock(renderer).allowsShapeInsideInfoSharing())
    259 #endif
    260             ) {
     255            || m_layoutState->lineGrid() || (renderer.style().lineGrid() != RenderStyle::initialLineGrid() && renderer.isRenderBlockFlow())) {
    261256            pushLayoutStateForCurrentFlowThread(renderer);
    262257            m_layoutState = std::make_unique<LayoutState>(std::move(m_layoutState), &renderer, offset, pageHeight, pageHeightChanged, colInfo);
  • trunk/Source/WebCore/rendering/SimpleLineLayout.cpp

    r163537 r166301  
    117117        return false;
    118118    // These tests only works during layout. Outside layout this function may give false positives.
    119     if (flow.view().layoutState()) {
    120 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    121         if (flow.view().layoutState()->shapeInsideInfo())
    122             return false;
    123 #endif
    124         if (flow.view().layoutState()->m_columnInfo)
    125             return false;
    126     }
     119    if (flow.view().layoutState() && flow.view().layoutState()->m_columnInfo)
     120        return false;
    127121    const RenderStyle& style = flow.style();
    128122    if (style.textDecorationsInEffect() != TextDecorationNone)
     
    159153    if (style.textShadow())
    160154        return false;
    161 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    162     if (style.resolvedShapeInside())
    163         return true;
    164 #endif
    165155    if (style.textOverflow() || (flow.isAnonymousBlock() && flow.parent()->style().textOverflow()))
    166156        return false;
  • trunk/Source/WebCore/rendering/line/BreakingContextInlineHeaders.h

    r166245 r166301  
    4040#include <wtf/text/StringView.h>
    4141#include <wtf/unicode/CharacterNames.h>
    42 
    43 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    44 #include "ShapeInsideInfo.h"
    45 #endif
    4642
    4743namespace WebCore {
     
    462458}
    463459
    464 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    465 // FIXME: We can move this function & logic into LineWidth::fitBelowFloats
    466 inline void updateSegmentsForShapes(RenderBlockFlow& block, const FloatingObject* lastFloatFromPreviousLine, const WordMeasurements& wordMeasurements, LineWidth& width, bool isFirstLine)
    467 {
    468     ASSERT(lastFloatFromPreviousLine);
    469 
    470     ShapeInsideInfo* shapeInsideInfo = block.layoutShapeInsideInfo();
    471     if (!lastFloatFromPreviousLine->isPlaced() || !shapeInsideInfo)
    472         return;
    473 
    474     bool isHorizontalWritingMode = block.isHorizontalWritingMode();
    475     LayoutUnit logicalOffsetFromShapeContainer = block.logicalOffsetFromShapeAncestorContainer(&shapeInsideInfo->owner()).height();
    476 
    477     LayoutUnit lineLogicalTop = block.logicalHeight() + logicalOffsetFromShapeContainer;
    478     LayoutUnit lineLogicalHeight = block.lineHeight(isFirstLine, isHorizontalWritingMode ? HorizontalLine : VerticalLine, PositionOfInteriorLineBoxes);
    479     LayoutUnit lineLogicalBottom = lineLogicalTop + lineLogicalHeight;
    480 
    481     LayoutUnit floatLogicalTop = block.logicalTopForFloat(lastFloatFromPreviousLine);
    482     LayoutUnit floatLogicalBottom = block.logicalBottomForFloat(lastFloatFromPreviousLine);
    483 
    484     bool lineOverlapsWithFloat = (floatLogicalTop < lineLogicalBottom) && (lineLogicalTop < floatLogicalBottom);
    485     if (!lineOverlapsWithFloat)
    486         return;
    487 
    488     float minSegmentWidth = firstPositiveWidth(wordMeasurements);
    489 
    490     LayoutUnit floatLogicalWidth = block.logicalWidthForFloat(lastFloatFromPreviousLine);
    491     LayoutUnit availableLogicalWidth = block.logicalWidth() - block.logicalRightForFloat(lastFloatFromPreviousLine);
    492     if (availableLogicalWidth < minSegmentWidth)
    493         block.setLogicalHeight(floatLogicalBottom);
    494 
    495     if (block.logicalHeight() < floatLogicalTop) {
    496         shapeInsideInfo->adjustLogicalLineTop(minSegmentWidth + floatLogicalWidth);
    497         block.setLogicalHeight(shapeInsideInfo->logicalLineTop() - logicalOffsetFromShapeContainer);
    498     }
    499 
    500     width.updateLineSegment(block.logicalHeight());
    501 }
    502 #endif
    503 
    504460inline bool iteratorIsBeyondEndOfRenderCombineText(const InlineIterator& iter, RenderCombineText& renderer)
    505461{
     
    773729            }
    774730
    775 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    776             if (m_lastFloatFromPreviousLine)
    777                 updateSegmentsForShapes(m_block, m_lastFloatFromPreviousLine, wordMeasurements, m_width, m_lineInfo.isFirstLine());
    778 #endif
    779731            applyWordSpacing = wordSpacing && m_currentCharacterIsSpace;
    780732
     
    10731025inline InlineIterator BreakingContext::handleEndOfLine()
    10741026{
    1075 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    1076     ShapeInsideInfo* shapeInfo = m_block.layoutShapeInsideInfo();
    1077     bool segmentAllowsOverflow = !shapeInfo || !shapeInfo->hasSegments();
    1078 #else
    1079     bool segmentAllowsOverflow = true;
    1080 #endif
    1081     if (segmentAllowsOverflow) {
    1082         if (m_lineBreak == m_resolver.position()) {
    1083             if (!m_lineBreak.renderer() || !m_lineBreak.renderer()->isBR()) {
    1084                 // we just add as much as possible
    1085                 if (m_blockStyle.whiteSpace() == PRE && !m_current.offset()) {
    1086                     m_lineBreak.moveTo(m_lastObject, m_lastObject->isText() ? m_lastObject->length() : 0);
    1087                 } else if (m_lineBreak.renderer()) {
    1088                     // Don't ever break in the middle of a word if we can help it.
    1089                     // There's no room at all. We just have to be on this line,
    1090                     // even though we'll spill out.
    1091                     m_lineBreak.moveTo(m_current.renderer(), m_current.offset());
    1092                 }
     1027    if (m_lineBreak == m_resolver.position()) {
     1028        if (!m_lineBreak.renderer() || !m_lineBreak.renderer()->isBR()) {
     1029            // we just add as much as possible
     1030            if (m_blockStyle.whiteSpace() == PRE && !m_current.offset()) {
     1031                m_lineBreak.moveTo(m_lastObject, m_lastObject->isText() ? m_lastObject->length() : 0);
     1032            } else if (m_lineBreak.renderer()) {
     1033                // Don't ever break in the middle of a word if we can help it.
     1034                // There's no room at all. We just have to be on this line,
     1035                // even though we'll spill out.
     1036                m_lineBreak.moveTo(m_current.renderer(), m_current.offset());
    10931037            }
    1094             // make sure we consume at least one char/object.
    1095             if (m_lineBreak == m_resolver.position())
    1096                 m_lineBreak.increment();
    1097         } else if (!m_current.offset() && !m_width.committedWidth() && m_width.uncommittedWidth() && !m_hadUncommittedWidthBeforeCurrent) {
    1098             // Do not push the current object to the next line, when this line has some content, but it is still considered empty.
    1099             // Empty inline elements like <span></span> can produce such lines and now we just ignore these break opportunities
    1100             // at the start of a line, if no width has been committed yet.
    1101             // Behave as if it was actually empty and consume at least one object.
     1038        }
     1039        // make sure we consume at least one char/object.
     1040        if (m_lineBreak == m_resolver.position())
    11021041            m_lineBreak.increment();
    1103         }
     1042    } else if (!m_current.offset() && !m_width.committedWidth() && m_width.uncommittedWidth() && !m_hadUncommittedWidthBeforeCurrent) {
     1043        // Do not push the current object to the next line, when this line has some content, but it is still considered empty.
     1044        // Empty inline elements like <span></span> can produce such lines and now we just ignore these break opportunities
     1045        // at the start of a line, if no width has been committed yet.
     1046        // Behave as if it was actually empty and consume at least one object.
     1047        m_lineBreak.increment();
    11041048    }
    11051049
  • trunk/Source/WebCore/rendering/line/LineBreaker.cpp

    r163333 r166301  
    2828#include "BreakingContextInlineHeaders.h"
    2929#include "RenderCombineText.h"
    30 #include "ShapeInsideInfo.h"
    3130
    3231namespace WebCore {
     
    8180InlineIterator LineBreaker::nextLineBreak(InlineBidiResolver& resolver, LineInfo& lineInfo, RenderTextInfo& renderTextInfo, FloatingObject* lastFloatFromPreviousLine, unsigned consecutiveHyphenatedLines, WordMeasurements& wordMeasurements)
    8281{
    83 #if !ENABLE(CSS_SHAPES) || !ENABLE(CSS_SHAPE_INSIDE)
    8482    return nextSegmentBreak(resolver, lineInfo, renderTextInfo, lastFloatFromPreviousLine, consecutiveHyphenatedLines, wordMeasurements);
    85 #else
    86     ShapeInsideInfo* shapeInsideInfo = m_block.layoutShapeInsideInfo();
    87 
    88     if (!shapeInsideInfo || !shapeInsideInfo->lineOverlapsShapeBounds())
    89         return nextSegmentBreak(resolver, lineInfo, renderTextInfo, lastFloatFromPreviousLine, consecutiveHyphenatedLines, wordMeasurements);
    90 
    91     InlineIterator end = resolver.position();
    92     InlineIterator oldEnd = end;
    93 
    94     if (!shapeInsideInfo->hasSegments()) {
    95         end = nextSegmentBreak(resolver, lineInfo, renderTextInfo, lastFloatFromPreviousLine, consecutiveHyphenatedLines, wordMeasurements);
    96         resolver.setPositionIgnoringNestedIsolates(oldEnd);
    97         return oldEnd;
    98     }
    99 
    100     const SegmentList& segments = shapeInsideInfo->segments();
    101     SegmentRangeList& segmentRanges = shapeInsideInfo->segmentRanges();
    102 
    103     for (unsigned i = 0; i < segments.size() && !end.atEnd(); i++) {
    104         InlineIterator segmentStart = resolver.position();
    105         end = nextSegmentBreak(resolver, lineInfo, renderTextInfo, lastFloatFromPreviousLine, consecutiveHyphenatedLines, wordMeasurements);
    106 
    107         ASSERT(segmentRanges.size() == i);
    108         if (resolver.position().atEnd()) {
    109             segmentRanges.append(LineSegmentRange(segmentStart, end));
    110             break;
    111         }
    112         if (resolver.position() == end) {
    113             // Nothing fit this segment
    114             end = segmentStart;
    115             segmentRanges.append(LineSegmentRange(segmentStart, segmentStart));
    116             resolver.setPositionIgnoringNestedIsolates(segmentStart);
    117         } else {
    118             // Note that resolver.position is already skipping some of the white space at the beginning of the line,
    119             // so that's why segmentStart might be different than resolver.position().
    120             LineSegmentRange range(resolver.position(), end);
    121             segmentRanges.append(range);
    122             resolver.setPosition(end, numberOfIsolateAncestors(end));
    123 
    124             if (lineInfo.previousLineBrokeCleanly()) {
    125                 // If we hit a new line break, just stop adding anything to this line.
    126                 break;
    127             }
    128         }
    129     }
    130     resolver.setPositionIgnoringNestedIsolates(oldEnd);
    131     return end;
    132 #endif
    13383}
    13484
  • trunk/Source/WebCore/rendering/line/LineWidth.cpp

    r164868 r166301  
    3434#include "RenderRubyRun.h"
    3535
    36 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    37 #include "ShapeInsideInfo.h"
    38 #endif
    39 
    4036namespace WebCore {
    4137
     
    5046    , m_right(0)
    5147    , m_availableWidth(0)
    52 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    53     , m_segment(0)
    54 #endif
    5548    , m_isFirstLine(isFirstLine)
    5649    , m_shouldIndentText(shouldIndentText)
    5750{
    58 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    59     updateCurrentShapeSegment();
    60 #endif
    6151    updateAvailableWidth();
    6252}
     
    8373    m_left = m_block.logicalLeftOffsetForLine(height, shouldIndentText(), logicalHeight);
    8474    m_right = m_block.logicalRightOffsetForLine(height, shouldIndentText(), logicalHeight);
    85 
    86 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    87     if (m_segment) {
    88         m_left = std::max<float>(m_segment->logicalLeft, m_left);
    89         m_right = std::min<float>(m_segment->logicalRight, m_right);
    90     }
    91 #endif
    9275
    9376    computeAvailableWidthFromLeftAndRight();
     
    217200    updateLineDimension(newLineTop, newLineWidth, newLineLeft, newLineRight);
    218201}
    219 
    220 #if ENABLE(CSS_SHAPE_INSIDE)
    221 void LineWidth::updateLineSegment(const LayoutUnit& lineTop)
    222 {
    223     ShapeInsideInfo* shapeInsideInfo = m_block.layoutShapeInsideInfo();
    224     if (!shapeInsideInfo)
    225         return;
    226 
    227     LayoutUnit logicalOffsetFromShapeContainer = m_block.logicalOffsetFromShapeAncestorContainer(&shapeInsideInfo->owner()).height();
    228     LayoutUnit lineHeight = m_block.lineHeight(false, m_block.isHorizontalWritingMode() ? HorizontalLine : VerticalLine, PositionOfInteriorLineBoxes);
    229     shapeInsideInfo->updateSegmentsForLine(lineTop + logicalOffsetFromShapeContainer, lineHeight);
    230     updateCurrentShapeSegment();
    231     updateAvailableWidth();
    232 }
    233 #endif
    234202#endif
    235203
     
    263231        lastFloatLogicalBottom = floatLogicalBottom;
    264232
    265         if (newLineWidth >= m_uncommittedWidth) {
    266 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    267             updateLineSegment(lastFloatLogicalBottom);
    268 #endif
    269             break;
    270         }
     233        if (newLineWidth >= m_uncommittedWidth)
     234            break;
    271235    }
    272236
     
    279243    m_trailingWhitespaceWidth = collapsedWhitespace + borderPaddingMargin;
    280244}
    281 
    282 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    283 void LineWidth::updateCurrentShapeSegment()
    284 {
    285     if (ShapeInsideInfo* shapeInsideInfo = m_block.layoutShapeInsideInfo())
    286         m_segment = shapeInsideInfo->currentSegment();
    287 }
    288 #endif
    289245
    290246void LineWidth::computeAvailableWidthFromLeftAndRight()
  • trunk/Source/WebCore/rendering/line/LineWidth.h

    r164868 r166301  
    6868    void setTrailingWhitespaceWidth(float collapsedWhitespace, float borderPaddingMargin = 0);
    6969    bool shouldIndentText() const { return m_shouldIndentText == IndentText; }
    70 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    71     void updateLineSegment(const LayoutUnit&);
    72 #endif
    7370
    7471private:
     
    7875#if ENABLE(CSS_SHAPES)
    7976    void wrapNextToShapeOutside(bool isFirstLine);
    80 #if ENABLE(CSS_SHAPE_INSIDE)
    81     void updateCurrentShapeSegment();
    82 #endif
    8377#endif
    8478
     
    9286    float m_right;
    9387    float m_availableWidth;
    94 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    95     const LineSegment* m_segment;
    96 #endif
    9788    bool m_isFirstLine;
    9889    IndentTextOrNot m_shouldIndentText;
  • trunk/Source/WebCore/rendering/style/RenderStyle.cpp

    r166060 r166301  
    460460        // If regions change, trigger a relayout to re-calc regions.
    461461        if (rareNonInheritedData->m_dashboardRegions != other->rareNonInheritedData->m_dashboardRegions)
    462             return true;
    463 #endif
    464 
    465 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    466         if (rareNonInheritedData->m_shapeInside != other->rareNonInheritedData->m_shapeInside)
    467462            return true;
    468463#endif
  • trunk/Source/WebCore/rendering/style/RenderStyle.h

    r166060 r166301  
    14991499    void setKerning(SVGLength k) { accessSVGStyle().setKerning(k); }
    15001500
    1501 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    1502     void setShapeInside(PassRefPtr<ShapeValue> value)
    1503     {
    1504         if (rareNonInheritedData->m_shapeInside == value)
    1505             return;
    1506         rareNonInheritedData.access()->m_shapeInside = value;
    1507     }
    1508     ShapeValue* shapeInside() const { return rareNonInheritedData->m_shapeInside.get(); }
    1509     ShapeValue* resolvedShapeInside() const
    1510     {
    1511         ShapeValue* shapeInside = this->shapeInside();
    1512         if (shapeInside && shapeInside->type() == ShapeValue::Outside)
    1513             return shapeOutside();
    1514         return shapeInside;
    1515     }
    1516 
    1517     static ShapeValue* initialShapeInside() { return 0; }
    1518 #endif
    15191501#if ENABLE(CSS_SHAPES)
    15201502    void setShapeOutside(PassRefPtr<ShapeValue> value)
  • trunk/Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp

    r164795 r166301  
    5656    , m_mask(FillLayer(MaskFillLayer))
    5757    , m_pageSize()
    58 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    59     , m_shapeInside(RenderStyle::initialShapeInside())
    60 #endif
    6158#if ENABLE(CSS_SHAPES)
    6259    , m_shapeOutside(RenderStyle::initialShapeOutside())
     
    132129    , m_maskBoxImage(o.m_maskBoxImage)
    133130    , m_pageSize(o.m_pageSize)
    134 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    135     , m_shapeInside(o.m_shapeInside)
    136 #endif
    137131#if ENABLE(CSS_SHAPES)
    138132    , m_shapeOutside(o.m_shapeOutside)
     
    226220        && m_maskBoxImage == o.m_maskBoxImage
    227221        && m_pageSize == o.m_pageSize
    228 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    229     && m_shapeInside == o.m_shapeInside
    230 #endif
    231222#if ENABLE(CSS_SHAPES)
    232223        && m_shapeOutside == o.m_shapeOutside
  • trunk/Source/WebCore/rendering/style/StyleRareNonInheritedData.h

    r164795 r166301  
    141141    LengthSize m_pageSize;
    142142
    143 #if ENABLE(CSS_SHAPES) && ENABLE(CSS_SHAPE_INSIDE)
    144     RefPtr<ShapeValue> m_shapeInside;
    145 #endif
    146143#if ENABLE(CSS_SHAPES)
    147144    RefPtr<ShapeValue> m_shapeOutside;
  • trunk/Source/WebKit/mac/ChangeLog

    r166257 r166301  
     12014-03-26  Zoltan Horvath  <zoltan@webkit.org>
     2
     3        [CSS Shapes] Remove shape-inside support
     4        https://bugs.webkit.org/show_bug.cgi?id=130698
     5
     6        Reviewed by David Hyatt.
     7
     8        * Configurations/FeatureDefines.xcconfig:
     9
    1102014-03-25  Joseph Pecoraro  <pecoraro@apple.com>
    211
  • trunk/Source/WebKit/mac/Configurations/FeatureDefines.xcconfig

    r166201 r166301  
    6060ENABLE_CSS_REGIONS = ENABLE_CSS_REGIONS;
    6161ENABLE_CSS_SHAPES = ENABLE_CSS_SHAPES;
    62 ENABLE_CSS_SHAPE_INSIDE = ENABLE_CSS_SHAPE_INSIDE;
    6362ENABLE_CSS_STICKY_POSITION = ENABLE_CSS_STICKY_POSITION;
    6463ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED = ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED;
     
    226225ENABLE_LLINT_C_LOOP = ;
    227226
    228 FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_BLOB) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_EXCLUSIONS) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS_SHAPE_INSIDE) $(ENABLE_CSS_STICKY_POSITION) $(ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED) $(ENABLE_CSS3_CONDITIONAL_RULES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FILTERS) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING) $(ENABLE_HIGH_DPI_CANVAS) $(ENABLE_ICONDATABASE) $(ENABLE_IMAGE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INSPECTOR) $(ENABLE_IOS_AIRPLAY) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_PLUGIN_PROXY_FOR_VIDEO) $(ENABLE_PROGRESS_ELEMENT) $(ENABLE_PROMISES) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHARED_WORKERS) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_SQL_DATABASE) $(ENABLE_SUBPIXEL_LAYOUT) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBGL) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WEBVTT_REGIONS) $(ENABLE_XHR_TIMEOUT) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_LLINT_C_LOOP) $(FEATURE_DEFINES_$(PLATFORM_NAME));
     227FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_BLOB) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_EXCLUSIONS) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS_STICKY_POSITION) $(ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED) $(ENABLE_CSS3_CONDITIONAL_RULES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FILTERS) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING) $(ENABLE_HIGH_DPI_CANVAS) $(ENABLE_ICONDATABASE) $(ENABLE_IMAGE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INSPECTOR) $(ENABLE_IOS_AIRPLAY) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_PLUGIN_PROXY_FOR_VIDEO) $(ENABLE_PROGRESS_ELEMENT) $(ENABLE_PROMISES) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHARED_WORKERS) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_SQL_DATABASE) $(ENABLE_SUBPIXEL_LAYOUT) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBGL) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WEBVTT_REGIONS) $(ENABLE_XHR_TIMEOUT) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_LLINT_C_LOOP) $(FEATURE_DEFINES_$(PLATFORM_NAME));
  • trunk/Source/WebKit2/ChangeLog

    r166296 r166301  
     12014-03-26  Zoltan Horvath  <zoltan@webkit.org>
     2
     3        [CSS Shapes] Remove shape-inside support
     4        https://bugs.webkit.org/show_bug.cgi?id=130698
     5
     6        Reviewed by David Hyatt.
     7
     8        * Configurations/FeatureDefines.xcconfig:
     9
    1102014-03-26  Tim Horton  <timothy_horton@apple.com>
    211
  • trunk/Source/WebKit2/Configurations/FeatureDefines.xcconfig

    r166201 r166301  
    6060ENABLE_CSS_REGIONS = ENABLE_CSS_REGIONS;
    6161ENABLE_CSS_SHAPES = ENABLE_CSS_SHAPES;
    62 ENABLE_CSS_SHAPE_INSIDE = ENABLE_CSS_SHAPE_INSIDE;
    6362ENABLE_CSS_STICKY_POSITION = ENABLE_CSS_STICKY_POSITION;
    6463ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED = ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED;
     
    226225ENABLE_LLINT_C_LOOP = ;
    227226
    228 FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_BLOB) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_EXCLUSIONS) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS_SHAPE_INSIDE) $(ENABLE_CSS_STICKY_POSITION) $(ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED) $(ENABLE_CSS3_CONDITIONAL_RULES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FILTERS) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING) $(ENABLE_HIGH_DPI_CANVAS) $(ENABLE_ICONDATABASE) $(ENABLE_IMAGE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INSPECTOR) $(ENABLE_IOS_AIRPLAY) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_PLUGIN_PROXY_FOR_VIDEO) $(ENABLE_PROGRESS_ELEMENT) $(ENABLE_PROMISES) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHARED_WORKERS) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_SQL_DATABASE) $(ENABLE_SUBPIXEL_LAYOUT) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBGL) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WEBVTT_REGIONS) $(ENABLE_XHR_TIMEOUT) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_LLINT_C_LOOP) $(FEATURE_DEFINES_$(PLATFORM_NAME));
     227FEATURE_DEFINES = $(ENABLE_3D_RENDERING) $(ENABLE_ACCELERATED_2D_CANVAS) $(ENABLE_ACCELERATED_OVERFLOW_SCROLLING) $(ENABLE_AVF_CAPTIONS) $(ENABLE_BLOB) $(ENABLE_CACHE_PARTITIONING) $(ENABLE_CANVAS_PATH) $(ENABLE_CANVAS_PROXY) $(ENABLE_CHANNEL_MESSAGING) $(ENABLE_CSP_NEXT) $(ENABLE_CSS_BOX_DECORATION_BREAK) $(ENABLE_CSS_COMPOSITING) $(ENABLE_CSS_DEVICE_ADAPTATION) $(ENABLE_CSS_EXCLUSIONS) $(ENABLE_CSS_FILTERS) $(ENABLE_CSS_GRID_LAYOUT) $(ENABLE_CSS_IMAGE_ORIENTATION) $(ENABLE_CSS_IMAGE_RESOLUTION) $(ENABLE_CSS_REGIONS) $(ENABLE_CSS_SHAPES) $(ENABLE_CSS_STICKY_POSITION) $(ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED) $(ENABLE_CSS3_CONDITIONAL_RULES) $(ENABLE_CSS3_TEXT) $(ENABLE_CSS3_TEXT_LINE_BREAK) $(ENABLE_CURSOR_VISIBILITY) $(ENABLE_CUSTOM_SCHEME_HANDLER) $(ENABLE_DASHBOARD_SUPPORT) $(ENABLE_DATALIST_ELEMENT) $(ENABLE_DATA_TRANSFER_ITEMS) $(ENABLE_DETAILS_ELEMENT) $(ENABLE_DEVICE_ORIENTATION) $(ENABLE_DOM4_EVENTS_CONSTRUCTOR) $(ENABLE_ENCRYPTED_MEDIA) $(ENABLE_ENCRYPTED_MEDIA_V2) $(ENABLE_FILTERS) $(ENABLE_FONT_LOAD_EVENTS) $(ENABLE_FULLSCREEN_API) $(ENABLE_GAMEPAD) $(ENABLE_GEOLOCATION) $(ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING) $(ENABLE_HIGH_DPI_CANVAS) $(ENABLE_ICONDATABASE) $(ENABLE_IMAGE_CONTROLS) $(ENABLE_INDEXED_DATABASE) $(ENABLE_INDIE_UI) $(ENABLE_INPUT_SPEECH) $(ENABLE_INPUT_TYPE_COLOR) $(ENABLE_INPUT_TYPE_COLOR_POPOVER) $(ENABLE_INPUT_TYPE_DATE) $(ENABLE_INPUT_TYPE_DATETIME_INCOMPLETE) $(ENABLE_INPUT_TYPE_DATETIMELOCAL) $(ENABLE_INPUT_TYPE_MONTH) $(ENABLE_INPUT_TYPE_TIME) $(ENABLE_INPUT_TYPE_WEEK) $(ENABLE_INSPECTOR) $(ENABLE_IOS_AIRPLAY) $(ENABLE_IOS_TEXT_AUTOSIZING) $(ENABLE_LEGACY_CSS_VENDOR_PREFIXES) $(ENABLE_LEGACY_NOTIFICATIONS) $(ENABLE_LEGACY_VENDOR_PREFIXES) $(ENABLE_LEGACY_WEB_AUDIO) $(ENABLE_LETTERPRESS) $(ENABLE_LINK_PREFETCH) $(ENABLE_MATHML) $(ENABLE_MEDIA_CONTROLS_SCRIPT) $(ENABLE_MEDIA_SOURCE) $(ENABLE_MEDIA_STATISTICS) $(ENABLE_METER_ELEMENT) $(ENABLE_MHTML) $(ENABLE_MOUSE_CURSOR_SCALE) $(ENABLE_NAVIGATOR_CONTENT_UTILS) $(ENABLE_NOTIFICATIONS) $(ENABLE_PAGE_VISIBILITY_API) $(ENABLE_PDFKIT_PLUGIN) $(ENABLE_PLUGIN_PROXY_FOR_VIDEO) $(ENABLE_PROGRESS_ELEMENT) $(ENABLE_PROMISES) $(ENABLE_PROXIMITY_EVENTS) $(ENABLE_PUBLIC_SUFFIX_LIST) $(ENABLE_QUOTA) $(ENABLE_REQUEST_ANIMATION_FRAME) $(ENABLE_REMOTE_INSPECTOR) $(ENABLE_RESOLUTION_MEDIA_QUERY) $(ENABLE_SCRIPTED_SPEECH) $(ENABLE_SHARED_WORKERS) $(ENABLE_SPEECH_SYNTHESIS) $(ENABLE_SQL_DATABASE) $(ENABLE_SUBPIXEL_LAYOUT) $(ENABLE_SUBTLE_CRYPTO) $(ENABLE_SVG_FONTS) $(ENABLE_TELEPHONE_NUMBER_DETECTION) $(ENABLE_TEMPLATE_ELEMENT) $(ENABLE_TEXT_AUTOSIZING) $(ENABLE_TOUCH_EVENTS) $(ENABLE_TOUCH_ICON_LOADING) $(ENABLE_USERSELECT_ALL) $(ENABLE_VIDEO) $(ENABLE_VIDEO_TRACK) $(ENABLE_VIEW_MODE_CSS_MEDIA) $(ENABLE_WEBGL) $(ENABLE_WEB_ANIMATIONS) $(ENABLE_WEB_AUDIO) $(ENABLE_WEB_REPLAY) $(ENABLE_WEB_SOCKETS) $(ENABLE_WEB_TIMING) $(ENABLE_WEBVTT_REGIONS) $(ENABLE_XHR_TIMEOUT) $(ENABLE_XSLT) $(ENABLE_FTL_JIT) $(ENABLE_LLINT_C_LOOP) $(FEATURE_DEFINES_$(PLATFORM_NAME));
  • trunk/Source/cmake/WebKitFeatures.cmake

    r164943 r166301  
    3838    WEBKIT_OPTION_DEFINE(ENABLE_CSS_REGIONS "Toggle CSS regions support" OFF)
    3939    WEBKIT_OPTION_DEFINE(ENABLE_CSS_SHAPES "Toggle CSS Shapes support" OFF)
    40     WEBKIT_OPTION_DEFINE(ENABLE_CSS_SHAPE_INSIDE "Toggle CSS Shapes Inside support" OFF)
    4140    WEBKIT_OPTION_DEFINE(ENABLE_CSS_STICKY_POSITION "Toggle CSS sticky position support" OFF)
    4241    WEBKIT_OPTION_DEFINE(ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED "Toggle support for unprefixed CSS animations and transforms" ON)
  • trunk/Source/cmakeconfig.h.cmake

    r165738 r166301  
    2828#cmakedefine01 ENABLE_CSS_REGIONS
    2929#cmakedefine01 ENABLE_CSS_SHAPES
    30 #cmakedefine01 ENABLE_CSS_SHAPE_INSIDE
    3130#cmakedefine01 ENABLE_CSS_STICKY_POSITION
    3231#cmakedefine01 ENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED
  • trunk/Tools/ChangeLog

    r166291 r166301  
     12014-03-26  Zoltan Horvath  <zoltan@webkit.org>
     2
     3        [CSS Shapes] Remove shape-inside support
     4        https://bugs.webkit.org/show_bug.cgi?id=130698
     5
     6        Reviewed by David Hyatt.
     7
     8        * Scripts/webkitperl/FeatureList.pm:
     9
    1102014-02-27  Gurpreet Kaur  <k.gurpreet@samsung.com>
    211
  • trunk/Tools/Scripts/webkitperl/FeatureList.pm

    r165722 r166301  
    6666    $cssShadersSupport,
    6767    $cssShapesSupport,
    68     $cssShapeInsideSupport,
    6968    $cssStickyPositionSupport,
    7069    $cssCompositingSupport,
     
    192191      define => "ENABLE_CSS_SHAPES", default => 1, value => \$cssShapesSupport },
    193192
    194     { option => "css-shape-inside", desc => "Toggle CSS Shapes shape-inside support",
    195       define => "ENABLE_CSS_SHAPE_INSIDE", default => 1, value => \$cssShapeInsideSupport },
    196 
    197193    { option => "css-filters", desc => "Toggle CSS Filters support",
    198194      define => "ENABLE_CSS_FILTERS", default => (isAppleMacWebKit() || isIOSWebKit()), value => \$cssFiltersSupport },
Note: See TracChangeset for help on using the changeset viewer.