haikuwebkit/Source/WebCore/rendering/line/LineWidth.cpp

251 lines
10 KiB
C++
Raw Permalink Normal View History

/*
* Copyright (C) 2013 Adobe Systems Incorporated. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above
* copyright notice, this list of conditions and the following
* disclaimer.
* 2. Redistributions in binary form must reproduce the above
* copyright notice, this list of conditions and the following
* disclaimer in the documentation and/or other materials
* provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
* OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include "config.h"
#include "LineWidth.h"
Move m_floatingObjects to RenderBlockFlow from RenderBlock https://bugs.webkit.org/show_bug.cgi?id=122512 Reviewed by David Hyatt. Floats are part of block flow, not every RenderBlock can contain floars. This change makes it so that RenderBlock no longer can contain floats, only RenderBlockFlow can. This also moves a bunch of line layout stuff over to RenderBlockFlow, but makes no effort to move all of line layout, as all of that is destined to move out of both RenderBlockFlow and RenderBlock into its own class. No new tests, no behavior change. * rendering/InlineIterator.h: (WebCore::InlineBidiResolver::appendRun): * rendering/LineWidth.cpp: (WebCore::LineWidth::LineWidth): * rendering/LineWidth.h: * rendering/RenderBlock.cpp: (WebCore::RenderBlock::styleWillChange): (WebCore::RenderBlock::styleDidChange): (WebCore::RenderBlock::splitFlow): (WebCore::RenderBlock::deleteLineBoxTree): (WebCore::RenderBlock::removeChild): (WebCore::RenderBlock::computeOverflow): (WebCore::RenderBlock::selectionGaps): (WebCore::RenderBlock::adjustForBorderFit): * rendering/RenderBlock.h: (WebCore::RenderBlock::containsFloats): (WebCore::RenderBlock::shouldSkipCreatingRunsForObject): (WebCore::RenderBlock::addOverflowFromFloats): (WebCore::RenderBlock::logicalRightFloatOffsetForLine): (WebCore::RenderBlock::logicalLeftFloatOffsetForLine): (WebCore::RenderBlock::moveAllChildrenOnRemovalTo): (WebCore::RenderBlock::paintFloats): (WebCore::RenderBlock::hitTestFloats): (WebCore::RenderBlock::clipOutFloatingObjects): * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::clearFloats): (WebCore::RenderBlockFlow::layoutBlock): (WebCore::RenderBlockFlow::layoutBlockChild): (WebCore::RenderBlockFlow::collapseMargins): (WebCore::RenderBlockFlow::clearFloatsIfNeeded): (WebCore::RenderBlockFlow::adjustBlockChildForPagination): (WebCore::RenderBlockFlow::containsFloat): (WebCore::RenderBlockFlow::styleDidChange): (WebCore::RenderBlockFlow::styleWillChange): (WebCore::RenderBlockFlow::deleteLineBoxTree): (WebCore::RenderBlockFlow::moveAllChildrenOnRemovalTo): (WebCore::RenderBlockFlow::addOverflowFromFloats): (WebCore::RenderBlockFlow::computeOverflow): (WebCore::RenderBlockFlow::repaintOverhangingFloats): (WebCore::RenderBlockFlow::paintFloats): (WebCore::RenderBlockFlow::clipOutFloatingObjects): (WebCore::RenderBlockFlow::createFloatingObjects): (WebCore::RenderBlockFlow::removeFloatingObjects): (WebCore::RenderBlockFlow::insertFloatingObject): (WebCore::RenderBlockFlow::removeFloatingObject): (WebCore::RenderBlockFlow::removeFloatingObjectsBelow): (WebCore::RenderBlockFlow::computeLogicalLocationForFloat): (WebCore::RenderBlockFlow::positionNewFloats): (WebCore::RenderBlockFlow::newLine): (WebCore::RenderBlockFlow::logicalLeftFloatOffsetForLine): (WebCore::RenderBlockFlow::logicalRightFloatOffsetForLine): (WebCore::RenderBlockFlow::nextFloatLogicalBottomBelow): (WebCore::RenderBlockFlow::lowestFloatLogicalBottom): (WebCore::RenderBlockFlow::addOverhangingFloats): (WebCore::RenderBlockFlow::hasOverhangingFloat): (WebCore::RenderBlockFlow::addIntrudingFloats): (WebCore::RenderBlockFlow::markAllDescendantsWithFloatsForLayout): (WebCore::RenderBlockFlow::markSiblingsWithFloatsForLayout): (WebCore::RenderBlockFlow::getClearDelta): (WebCore::RenderBlockFlow::hitTestFloats): (WebCore::RenderBlockFlow::adjustForBorderFit): * rendering/RenderBlockFlow.h: (WebCore::RenderBlockFlow::hasOverhangingFloats): * rendering/RenderBlockLineLayout.cpp: (WebCore::LineBreaker::LineBreaker): (WebCore::RenderBlockFlow::appendRunsForObject): (WebCore::RenderBlockFlow::createLineBoxes): (WebCore::RenderBlockFlow::constructLine): (WebCore::RenderBlockFlow::setMarginsForRubyRun): (WebCore::updateLogicalInlinePositions): (WebCore::RenderBlockFlow::computeInlineDirectionPositionsForLine): (WebCore::RenderBlockFlow::computeInlineDirectionPositionsForSegment): (WebCore::RenderBlockFlow::computeBlockDirectionPositionsForLine): (WebCore::setStaticPositions): (WebCore::RenderBlockFlow::handleTrailingSpaces): (WebCore::RenderBlockFlow::appendFloatingObjectToLastLine): (WebCore::constructBidiRunsForLine): (WebCore::RenderBlockFlow::createLineBoxesFromBidiRuns): (WebCore::RenderBlockFlow::layoutRunsAndFloats): (WebCore::RenderBlockFlow::restartLayoutRunsAndFloatsInRange): (WebCore::pushShapeContentOverflowBelowTheContentBox): (WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLine): (WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread): (WebCore::RenderBlockFlow::adjustLogicalLineTopAndLogicalHeightIfNeeded): (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange): (WebCore::RenderBlockFlow::linkToEndLineIfNeeded): (WebCore::RenderBlockFlow::repaintDirtyFloats): (WebCore::RenderBlockFlow::checkFloatsInCleanLine): (WebCore::RenderBlockFlow::determineStartPosition): (WebCore::RenderBlockFlow::determineEndPosition): (WebCore::RenderBlockFlow::checkPaginationAndFloatsAtEndLine): (WebCore::RenderBlockFlow::matchedEndLine): (WebCore::shouldSkipWhitespaceAfterStartObject): (WebCore::updateSegmentsForShapes): (WebCore::RenderBlockFlow::deleteEllipsisLineBoxes): (WebCore::RenderBlockFlow::checkLinesForTextOverflow): (WebCore::RenderBlockFlow::positionNewFloatOnLine): * rendering/RenderBox.cpp: (WebCore::RenderBox::outermostBlockContainingFloatingObject): (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists): * rendering/RenderBox.h: * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::moveChildrenTo): * rendering/RenderInline.cpp: (WebCore::RenderInline::splitFlow): Canonical link: https://commits.webkit.org/140613@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157144 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2013-10-08 23:20:42 +00:00
#include "RenderBlockFlow.h"
#include "RenderRubyRun.h"
namespace WebCore {
Move m_floatingObjects to RenderBlockFlow from RenderBlock https://bugs.webkit.org/show_bug.cgi?id=122512 Reviewed by David Hyatt. Floats are part of block flow, not every RenderBlock can contain floars. This change makes it so that RenderBlock no longer can contain floats, only RenderBlockFlow can. This also moves a bunch of line layout stuff over to RenderBlockFlow, but makes no effort to move all of line layout, as all of that is destined to move out of both RenderBlockFlow and RenderBlock into its own class. No new tests, no behavior change. * rendering/InlineIterator.h: (WebCore::InlineBidiResolver::appendRun): * rendering/LineWidth.cpp: (WebCore::LineWidth::LineWidth): * rendering/LineWidth.h: * rendering/RenderBlock.cpp: (WebCore::RenderBlock::styleWillChange): (WebCore::RenderBlock::styleDidChange): (WebCore::RenderBlock::splitFlow): (WebCore::RenderBlock::deleteLineBoxTree): (WebCore::RenderBlock::removeChild): (WebCore::RenderBlock::computeOverflow): (WebCore::RenderBlock::selectionGaps): (WebCore::RenderBlock::adjustForBorderFit): * rendering/RenderBlock.h: (WebCore::RenderBlock::containsFloats): (WebCore::RenderBlock::shouldSkipCreatingRunsForObject): (WebCore::RenderBlock::addOverflowFromFloats): (WebCore::RenderBlock::logicalRightFloatOffsetForLine): (WebCore::RenderBlock::logicalLeftFloatOffsetForLine): (WebCore::RenderBlock::moveAllChildrenOnRemovalTo): (WebCore::RenderBlock::paintFloats): (WebCore::RenderBlock::hitTestFloats): (WebCore::RenderBlock::clipOutFloatingObjects): * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::clearFloats): (WebCore::RenderBlockFlow::layoutBlock): (WebCore::RenderBlockFlow::layoutBlockChild): (WebCore::RenderBlockFlow::collapseMargins): (WebCore::RenderBlockFlow::clearFloatsIfNeeded): (WebCore::RenderBlockFlow::adjustBlockChildForPagination): (WebCore::RenderBlockFlow::containsFloat): (WebCore::RenderBlockFlow::styleDidChange): (WebCore::RenderBlockFlow::styleWillChange): (WebCore::RenderBlockFlow::deleteLineBoxTree): (WebCore::RenderBlockFlow::moveAllChildrenOnRemovalTo): (WebCore::RenderBlockFlow::addOverflowFromFloats): (WebCore::RenderBlockFlow::computeOverflow): (WebCore::RenderBlockFlow::repaintOverhangingFloats): (WebCore::RenderBlockFlow::paintFloats): (WebCore::RenderBlockFlow::clipOutFloatingObjects): (WebCore::RenderBlockFlow::createFloatingObjects): (WebCore::RenderBlockFlow::removeFloatingObjects): (WebCore::RenderBlockFlow::insertFloatingObject): (WebCore::RenderBlockFlow::removeFloatingObject): (WebCore::RenderBlockFlow::removeFloatingObjectsBelow): (WebCore::RenderBlockFlow::computeLogicalLocationForFloat): (WebCore::RenderBlockFlow::positionNewFloats): (WebCore::RenderBlockFlow::newLine): (WebCore::RenderBlockFlow::logicalLeftFloatOffsetForLine): (WebCore::RenderBlockFlow::logicalRightFloatOffsetForLine): (WebCore::RenderBlockFlow::nextFloatLogicalBottomBelow): (WebCore::RenderBlockFlow::lowestFloatLogicalBottom): (WebCore::RenderBlockFlow::addOverhangingFloats): (WebCore::RenderBlockFlow::hasOverhangingFloat): (WebCore::RenderBlockFlow::addIntrudingFloats): (WebCore::RenderBlockFlow::markAllDescendantsWithFloatsForLayout): (WebCore::RenderBlockFlow::markSiblingsWithFloatsForLayout): (WebCore::RenderBlockFlow::getClearDelta): (WebCore::RenderBlockFlow::hitTestFloats): (WebCore::RenderBlockFlow::adjustForBorderFit): * rendering/RenderBlockFlow.h: (WebCore::RenderBlockFlow::hasOverhangingFloats): * rendering/RenderBlockLineLayout.cpp: (WebCore::LineBreaker::LineBreaker): (WebCore::RenderBlockFlow::appendRunsForObject): (WebCore::RenderBlockFlow::createLineBoxes): (WebCore::RenderBlockFlow::constructLine): (WebCore::RenderBlockFlow::setMarginsForRubyRun): (WebCore::updateLogicalInlinePositions): (WebCore::RenderBlockFlow::computeInlineDirectionPositionsForLine): (WebCore::RenderBlockFlow::computeInlineDirectionPositionsForSegment): (WebCore::RenderBlockFlow::computeBlockDirectionPositionsForLine): (WebCore::setStaticPositions): (WebCore::RenderBlockFlow::handleTrailingSpaces): (WebCore::RenderBlockFlow::appendFloatingObjectToLastLine): (WebCore::constructBidiRunsForLine): (WebCore::RenderBlockFlow::createLineBoxesFromBidiRuns): (WebCore::RenderBlockFlow::layoutRunsAndFloats): (WebCore::RenderBlockFlow::restartLayoutRunsAndFloatsInRange): (WebCore::pushShapeContentOverflowBelowTheContentBox): (WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLine): (WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread): (WebCore::RenderBlockFlow::adjustLogicalLineTopAndLogicalHeightIfNeeded): (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange): (WebCore::RenderBlockFlow::linkToEndLineIfNeeded): (WebCore::RenderBlockFlow::repaintDirtyFloats): (WebCore::RenderBlockFlow::checkFloatsInCleanLine): (WebCore::RenderBlockFlow::determineStartPosition): (WebCore::RenderBlockFlow::determineEndPosition): (WebCore::RenderBlockFlow::checkPaginationAndFloatsAtEndLine): (WebCore::RenderBlockFlow::matchedEndLine): (WebCore::shouldSkipWhitespaceAfterStartObject): (WebCore::updateSegmentsForShapes): (WebCore::RenderBlockFlow::deleteEllipsisLineBoxes): (WebCore::RenderBlockFlow::checkLinesForTextOverflow): (WebCore::RenderBlockFlow::positionNewFloatOnLine): * rendering/RenderBox.cpp: (WebCore::RenderBox::outermostBlockContainingFloatingObject): (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists): * rendering/RenderBox.h: * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::moveChildrenTo): * rendering/RenderInline.cpp: (WebCore::RenderInline::splitFlow): Canonical link: https://commits.webkit.org/140613@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157144 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2013-10-08 23:20:42 +00:00
LineWidth::LineWidth(RenderBlockFlow& block, bool isFirstLine, IndentTextOrNot shouldIndentText)
: m_block(block)
, m_isFirstLine(isFirstLine)
, m_shouldIndentText(shouldIndentText)
{
updateAvailableWidth();
}
bool LineWidth::fitsOnLine(bool ignoringTrailingSpace) const
{
return ignoringTrailingSpace ? fitsOnLineExcludingTrailingCollapsedWhitespace() : fitsOnLineIncludingExtraWidth(0);
}
bool LineWidth::fitsOnLineIncludingExtraWidth(float extra) const
{
auto adjustedCurrentWidth = currentWidth() + extra;
return adjustedCurrentWidth < m_availableWidth || WTF::areEssentiallyEqual(adjustedCurrentWidth, m_availableWidth);
}
bool LineWidth::fitsOnLineExcludingTrailingWhitespace(float extra) const
{
auto adjustedCurrentWidth = currentWidth() - m_trailingWhitespaceWidth + extra;
return adjustedCurrentWidth < m_availableWidth || WTF::areEssentiallyEqual(adjustedCurrentWidth, m_availableWidth);
}
bool LineWidth::fitsOnLineExcludingTrailingCollapsedWhitespace() const
{
auto adjustedCurrentWidth = currentWidth() - m_trailingCollapsedWhitespaceWidth;
return adjustedCurrentWidth < m_availableWidth || WTF::areEssentiallyEqual(adjustedCurrentWidth, m_availableWidth);
}
void LineWidth::updateAvailableWidth(LayoutUnit replacedHeight)
{
LayoutUnit height = m_block.logicalHeight();
LayoutUnit logicalHeight = m_block.minLineHeightForReplacedRenderer(m_isFirstLine, replacedHeight);
m_left = m_block.logicalLeftOffsetForLine(height, shouldIndentText(), logicalHeight);
m_right = m_block.logicalRightOffsetForLine(height, shouldIndentText(), logicalHeight);
computeAvailableWidthFromLeftAndRight();
}
static bool newFloatShrinksLine(const FloatingObject& newFloat, const RenderBlockFlow& block, bool isFirstLine)
{
LayoutUnit blockOffset = block.logicalHeight();
RenderBlockFlow::*logical*ForFloat should take FloatingObject reference. https://bugs.webkit.org/show_bug.cgi?id=150266 Reviewed by Simon Fraser. No change in behaviour. * rendering/FloatingObjects.cpp: (WebCore::FindNextFloatLogicalBottomAdapter::collectIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatTypeValue>::heightRemaining): (WebCore::ComputeFloatOffsetAdapter<FloatTypeValue>::collectIfNeeded): (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::rebuildFloatingObjectSetFromIntrudingFloats): (WebCore::RenderBlockFlow::repaintOverhangingFloats): (WebCore::RenderBlockFlow::insertFloatingObject): (WebCore::RenderBlockFlow::removeFloatingObject): (WebCore::RenderBlockFlow::removeFloatingObjectsBelow): (WebCore::RenderBlockFlow::computeLogicalLocationForFloat): (WebCore::RenderBlockFlow::positionNewFloats): (WebCore::RenderBlockFlow::lowestFloatLogicalBottom): (WebCore::RenderBlockFlow::lowestInitialLetterLogicalBottom): (WebCore::RenderBlockFlow::addOverhangingFloats): (WebCore::RenderBlockFlow::hasOverhangingFloat): (WebCore::RenderBlockFlow::addIntrudingFloats): * rendering/RenderBlockFlow.h: (WebCore::RenderBlockFlow::logicalTopForFloat): (WebCore::RenderBlockFlow::logicalBottomForFloat): (WebCore::RenderBlockFlow::logicalLeftForFloat): (WebCore::RenderBlockFlow::logicalRightForFloat): (WebCore::RenderBlockFlow::logicalWidthForFloat): (WebCore::RenderBlockFlow::logicalHeightForFloat): (WebCore::RenderBlockFlow::setLogicalTopForFloat): (WebCore::RenderBlockFlow::setLogicalLeftForFloat): (WebCore::RenderBlockFlow::setLogicalHeightForFloat): (WebCore::RenderBlockFlow::setLogicalWidthForFloat): (WebCore::RenderBlockFlow::logicalSizeForFloat): Deleted. * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange): (WebCore::RenderBlockFlow::checkPaginationAndFloatsAtEndLine): (WebCore::RenderBlockFlow::positionNewFloatOnLine): * rendering/RenderBox.cpp: (WebCore::RenderBox::addOverflowFromChild): * rendering/RenderBox.h: (WebCore::RenderBox::addOverflowFromChild): * rendering/line/BreakingContext.h: (WebCore::BreakingContext::handleFloat): * rendering/line/LineWidth.cpp: (WebCore::newFloatShrinksLine): (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): * rendering/shapes/ShapeOutsideInfo.cpp: (WebCore::ShapeOutsideInfo::computeDeltasForContainingBlockLine): Canonical link: https://commits.webkit.org/168404@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191234 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2015-10-17 03:36:56 +00:00
if (blockOffset >= block.logicalTopForFloat(newFloat) && blockOffset < block.logicalBottomForFloat(newFloat))
return true;
// initial-letter float always shrinks the first line.
const auto& style = newFloat.renderer().style();
Modernize RenderStyleConstants.h - Part 2 https://bugs.webkit.org/show_bug.cgi?id=185901 Patch by Sam Weinig <sam@webkit.org> on 2018-05-24 Reviewed by Simon Fraser. Source/WebCore: Modernized the second set of enums in RenderStyleConstants.h by: - Converting them to enum classes - Renaming them to remove unnecessary prefix 'E's - Renaming values to take advantage of enum class scoping (e.g. StyleDifferenceEqual -> StyleDifference::Equal) - Renaming to match modern conventions (e.g BNONE -> None) - Reformatting them so that each value is on its own line. Modernizes the following enums: PseudoId ListStyleType (renamed from EListStyleType) BorderFit (renamed from EBorderFit) AnimationFillMode (renamed from EAnimationFillMode) AnimationPlayState (renamed from EAnimPlayState) WhiteSpace (renamed from EWhiteSpace) TextAlignMode (renamed from ETextAlign) TextTransform (renamed from ETextTransform) TextDecorationStyle TextAlignLast TextJustify TextZoom BreakBetween BreakInside EmptyCell (renamed from EEmptyCell) CaptionSide (renamed from ECaptionSide) ListStylePosition (renamed from EListStylePosition) Visibility (renamed from EVisibility) CursorType (renamed from ECursor) CursorVisibility DisplayType (renamed from EDisplay) InsideLink (renamed from EInsideLink) PointerEvents (renamed from EPointerEvents) Hyphens TextEmphasisFill TextEmphasisMark ImageResolutionSource ImageResolutionSnap Order ColumnAxis ColumnProgression LineSnap LineAlign RubyPosition AutoRepeatType CSSBoxType * accessibility/AXObjectCache.cpp: (WebCore::AXObjectCache::isNodeVisible const): * accessibility/AccessibilityList.cpp: (WebCore::AccessibilityList::determineAccessibilityRole): * accessibility/AccessibilityMediaControls.cpp: (WebCore::AccessibilityMediaControl::computeAccessibilityIsIgnored const): (WebCore::AccessibilityMediaTimeDisplay::computeAccessibilityIsIgnored const): * accessibility/AccessibilityObject.cpp: (WebCore::AccessibilityObject::isDOMHidden const): * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::defaultObjectInclusion const): (WebCore::AccessibilityRenderObject::isUnvisited const): (WebCore::AccessibilityRenderObject::isVisited const): (WebCore::AccessibilityRenderObject::setValue): * accessibility/AccessibilityTable.cpp: (WebCore::AccessibilityTable::isDataTable const): * accessibility/atk/WebKitAccessibleInterfaceText.cpp: (getAttributeSetForAccessibilityObject): * animation/AnimationTimeline.cpp: (WebCore::AnimationTimeline::updateCSSAnimationsForElement): (WebCore::AnimationTimeline::updateCSSTransitionsForElement): * animation/CSSAnimation.cpp: (WebCore::CSSAnimation::syncPropertiesWithBackingAnimation): * animation/DeclarativeAnimation.cpp: (WebCore::DeclarativeAnimation::initialize): * animation/KeyframeEffectReadOnly.cpp: (WebCore::KeyframeEffectReadOnly::backingAnimationForCompositedRenderer const): * css/CSSComputedStyleDeclaration.cpp: (WebCore::renderTextDecorationStyleFlagsToCSSValue): (WebCore::convertToPageBreak): (WebCore::convertToColumnBreak): (WebCore::ComputedStyleExtractor::styledElement const): (WebCore::ComputedStyleExtractor::styledRenderer const): (WebCore::computeRenderStyleForProperty): (WebCore::shapePropertyValue): (WebCore::ComputedStyleExtractor::valueForPropertyinStyle): * css/CSSComputedStyleDeclaration.h: * css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::operator CaptionSide const): (WebCore::CSSPrimitiveValue::operator CursorType const): (WebCore::CSSPrimitiveValue::operator CursorVisibility const): (WebCore::CSSPrimitiveValue::operator DisplayType const): (WebCore::CSSPrimitiveValue::operator EmptyCell const): (WebCore::CSSPrimitiveValue::operator ListStylePosition const): (WebCore::CSSPrimitiveValue::operator ListStyleType const): (WebCore::CSSPrimitiveValue::operator BreakBetween const): (WebCore::CSSPrimitiveValue::operator BreakInside const): (WebCore::CSSPrimitiveValue::operator TextAlignMode const): (WebCore::CSSPrimitiveValue::operator TextAlignLast const): (WebCore::CSSPrimitiveValue::operator TextJustify const): (WebCore::CSSPrimitiveValue::operator TextDecorationStyle const): (WebCore::CSSPrimitiveValue::operator TextTransform const): (WebCore::CSSPrimitiveValue::operator Visibility const): (WebCore::CSSPrimitiveValue::operator WhiteSpace const): (WebCore::CSSPrimitiveValue::operator RubyPosition const): (WebCore::CSSPrimitiveValue::operator TextEmphasisFill const): (WebCore::CSSPrimitiveValue::operator TextEmphasisMark const): (WebCore::CSSPrimitiveValue::operator PointerEvents const): (WebCore::CSSPrimitiveValue::operator Hyphens const): (WebCore::CSSPrimitiveValue::operator LineSnap const): (WebCore::CSSPrimitiveValue::operator LineAlign const): (WebCore::CSSPrimitiveValue::operator Order const): (WebCore::CSSPrimitiveValue::operator BorderFit const): (WebCore::CSSPrimitiveValue::operator ColumnAxis const): (WebCore::CSSPrimitiveValue::operator ColumnProgression const): (WebCore::CSSPrimitiveValue::operator CSSBoxType const): (WebCore::CSSPrimitiveValue::operator TextZoom const): (WebCore::CSSPrimitiveValue::operator ECaptionSide const): Deleted. (WebCore::CSSPrimitiveValue::operator ECursor const): Deleted. (WebCore::CSSPrimitiveValue::operator EDisplay const): Deleted. (WebCore::CSSPrimitiveValue::operator EEmptyCell const): Deleted. (WebCore::CSSPrimitiveValue::operator EListStylePosition const): Deleted. (WebCore::CSSPrimitiveValue::operator EListStyleType const): Deleted. (WebCore::CSSPrimitiveValue::operator ETextAlign const): Deleted. (WebCore::CSSPrimitiveValue::operator ETextTransform const): Deleted. (WebCore::CSSPrimitiveValue::operator EVisibility const): Deleted. (WebCore::CSSPrimitiveValue::operator EWhiteSpace const): Deleted. (WebCore::CSSPrimitiveValue::operator EPointerEvents const): Deleted. (WebCore::CSSPrimitiveValue::operator EBorderFit const): Deleted. * css/CSSSelector.cpp: (WebCore::CSSSelector::pseudoId): * css/CSSToStyleMap.cpp: (WebCore::CSSToStyleMap::mapAnimationFillMode): (WebCore::CSSToStyleMap::mapAnimationPlayState): * css/CSSValueKeywords.in: * css/ElementRuleCollector.cpp: (WebCore::ElementRuleCollector::collectMatchingRules): (WebCore::ElementRuleCollector::ruleMatches): (WebCore::ElementRuleCollector::collectMatchingRulesForList): * css/ElementRuleCollector.h: * css/SelectorChecker.cpp: (WebCore::SelectorChecker::match const): (WebCore::SelectorChecker::matchHostPseudoClass const): (WebCore::hasScrollbarPseudoElement): (WebCore::SelectorChecker::matchRecursively const): * css/SelectorChecker.h: * css/StyleBuilderConverter.h: (WebCore::StyleBuilderConverter::convertTextAlign): (WebCore::StyleBuilderConverter::convertClipPath): (WebCore::StyleBuilderConverter::convertShapeValue): (WebCore::StyleBuilderConverter::createGridTrackList): (WebCore::StyleBuilderConverter::csstoLengthConversionDataWithTextZoomFactor): (WebCore::StyleBuilderConverter::convertPageBreakBetween): (WebCore::StyleBuilderConverter::convertPageBreakInside): (WebCore::StyleBuilderConverter::convertColumnBreakBetween): (WebCore::StyleBuilderConverter::convertColumnBreakInside): * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueImageResolution): (WebCore::computeBaseSpecifiedFontSize): (WebCore::StyleBuilderCustom::applyValueWebkitTextZoom): (WebCore::StyleBuilderCustom::isValidDisplayValue): (WebCore::StyleBuilderCustom::applyInheritDisplay): (WebCore::StyleBuilderCustom::applyValueDisplay): (WebCore::StyleBuilderCustom::applyValueWebkitTextEmphasisStyle): (WebCore::StyleBuilderCustom::applyValueCursor): (WebCore::StyleBuilderCustom::applyValueContent): (WebCore::StyleBuilderCustom::determineRubyTextSizeMultiplier): (WebCore::StyleBuilderCustom::applyValueAlt): * css/StyleResolver.cpp: (WebCore::StyleResolver::styleForElement): (WebCore::equivalentBlockDisplay): (WebCore::doesNotInheritTextDecoration): (WebCore::StyleResolver::adjustStyleForInterCharacterRuby): (WebCore::adjustDisplayContentsStyle): (WebCore::StyleResolver::adjustSVGElementStyle): (WebCore::StyleResolver::adjustRenderStyle): (WebCore::StyleResolver::styleRulesForElement): (WebCore::isCacheableInMatchedPropertiesCache): (WebCore::StyleResolver::applyMatchedProperties): (WebCore::StyleResolver::CascadedProperties::Property::apply): * css/StyleResolver.h: (WebCore::StyleResolver::State::elementLinkState const): * cssjit/SelectorCompiler.cpp: (WebCore::SelectorCompiler::constructFragmentsInternal): (WebCore::SelectorCompiler::SelectorCodeGenerator::generateRequestedPseudoElementEqualsToSelectorPseudoElement): (WebCore::SelectorCompiler::SelectorCodeGenerator::generateMarkPseudoStyleForPseudoElement): * dom/Document.cpp: (WebCore::Document::styleForElementIgnoringPendingStylesheets): (WebCore::Document::isPageBoxVisible): (WebCore::Document::setVisuallyOrdered): * dom/Document.h: * dom/Element.cpp: (WebCore::Element::isFocusable const): (WebCore::Element::hasDisplayContents const): (WebCore::Element::storeDisplayContentsStyle): (WebCore::Element::rendererIsNeeded): (WebCore::beforeOrAfterPseudoElement): (WebCore::Element::computedStyle): * dom/Element.h: * dom/Node.cpp: (WebCore::computeEditabilityFromComputedStyle): * dom/Node.h: (WebCore::Node::isPseudoElement const): (WebCore::Node::isBeforePseudoElement const): (WebCore::Node::isAfterPseudoElement const): (WebCore::Node::pseudoId const): (WebCore::Node::customPseudoId const): * dom/Position.cpp: (WebCore::Position::upstream const): (WebCore::Position::downstream const): (WebCore::Position::isCandidate const): (WebCore::Position::rendersInDifferentPosition const): * dom/PositionIterator.cpp: (WebCore::PositionIterator::isCandidate const): * dom/PseudoElement.cpp: (WebCore::PseudoElement::pseudoElementNameForEvents): (WebCore::PseudoElement::PseudoElement): * dom/VisitedLinkState.cpp: (WebCore::VisitedLinkState::determineLinkStateSlowCase): * dom/VisitedLinkState.h: (WebCore::VisitedLinkState::determineLinkState): * editing/Editing.cpp: (WebCore::isSpecialHTMLElement): (WebCore::isNodeRendered): * editing/TextIterator.cpp: (WebCore::hasVisibleTextNode): (WebCore::TextIterator::handleTextNode): (WebCore::TextIterator::handleTextBox): (WebCore::TextIterator::handleTextNodeFirstLetter): (WebCore::TextIterator::handleReplacedElement): (WebCore::TextIterator::shouldRepresentNodeOffsetZero): (WebCore::SimplifiedBackwardsTextIterator::advance): * editing/VisibleUnits.cpp: (WebCore::findStartOfParagraph): (WebCore::findEndOfParagraph): * editing/ios/EditorIOS.mm: (WebCore::Editor::setTextAlignmentForChangedBaseWritingDirection): * html/HTMLAreaElement.cpp: (WebCore::HTMLAreaElement::isFocusable const): * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::rendererIsNeeded): * html/HTMLIFrameElement.cpp: (WebCore::HTMLIFrameElement::rendererIsNeeded): * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::createInnerTextStyle): * html/HTMLOptGroupElement.cpp: (WebCore::HTMLOptGroupElement::isFocusable const): * html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::isFocusable const): * html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::createInnerTextStyle): * html/HTMLTextFormControlElement.cpp: (WebCore::HTMLTextFormControlElement::setSelectionRange): (WebCore::HTMLTextFormControlElement::adjustInnerTextStyle const): * html/MediaElementSession.cpp: (WebCore::MediaElementSession::autoplayPermitted const): (WebCore::isMainContentForPurposesOfAutoplay): * html/RubyElement.cpp: (WebCore::RubyElement::createElementRenderer): * html/RubyTextElement.cpp: (WebCore::RubyTextElement::createElementRenderer): * html/shadow/TextControlInnerElements.cpp: (WebCore::TextControlInnerElement::resolveCustomStyle): (WebCore::TextControlPlaceholderElement::resolveCustomStyle): * inspector/InspectorOverlay.cpp: (WebCore::buildObjectForElementData): * inspector/agents/InspectorCSSAgent.cpp: (WebCore::InspectorCSSAgent::getMatchedStylesForNode): (WebCore::InspectorCSSAgent::buildArrayForMatchedRuleList): * inspector/agents/InspectorDOMAgent.cpp: (WebCore::pseudoElementType): (WebCore::InspectorDOMAgent::buildObjectForNode): * inspector/agents/InspectorLayerTreeAgent.cpp: (WebCore::InspectorLayerTreeAgent::buildObjectForLayer): * layout/layouttree/LayoutBox.cpp: (WebCore::Layout::Box::isInlineBlockBox const): (WebCore::Layout::Box::isBlockLevelBox const): (WebCore::Layout::Box::isInlineLevelBox const): (WebCore::Layout::Box::isBlockContainerBox const): * page/EventHandler.cpp: (WebCore::EventHandler::selectCursor): * page/Frame.cpp: (WebCore::Frame::searchForLabelsAboveCell): (WebCore::Frame::searchForLabelsBeforeElement): * page/FrameView.cpp: (WebCore::FrameView::createScrollbar): (WebCore::FrameView::adjustScrollStepForFixedContent): (WebCore::FrameView::updateScrollCorner): * page/animation/AnimationBase.cpp: (WebCore::AnimationBase::playStatePlaying const): (WebCore::AnimationBase::updatePlayState): * page/animation/AnimationBase.h: * page/animation/CSSPropertyAnimation.cpp: (WebCore::blendFunc): (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): * page/animation/CompositeAnimation.cpp: (WebCore::CompositeAnimation::updateTransitions): (WebCore::CompositeAnimation::updateKeyframeAnimations): (WebCore::CompositeAnimation::suspendAnimations): (WebCore::CompositeAnimation::resumeAnimations): * page/animation/KeyframeAnimation.cpp: (WebCore::KeyframeAnimation::animate): * page/ios/FrameIOS.mm: (WebCore::Frame::nodeRespondingToClickEvents): * platform/animation/Animation.cpp: (WebCore::Animation::Animation): * platform/animation/Animation.h: (WebCore::Animation::clearPlayState): (WebCore::Animation::fillMode const): (WebCore::Animation::playState const): (WebCore::Animation::setFillMode): (WebCore::Animation::setPlayState): (WebCore::Animation::fillsBackwards const): (WebCore::Animation::fillsForwards const): (WebCore::Animation::initialFillMode): (WebCore::Animation::initialPlayState): * platform/graphics/GraphicsTypes.h: * platform/graphics/ca/GraphicsLayerCA.cpp: (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes): * platform/ios/wak/WAKWindow.mm: (-[WAKWindow dumpTiles]): * platform/mac/WebCoreNSURLExtras.mm: (WebCore::isLookalikeCharacter): * rendering/ClipPathOperation.h: * rendering/InlineBox.h: (WebCore::InlineBox::visibleToHitTesting const): * rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::addToLine): (WebCore::InlineFlowBox::placeBoxesInBlockDirection): (WebCore::InlineFlowBox::addTextBoxVisualOverflow): (WebCore::InlineFlowBox::paint): (WebCore::InlineFlowBox::paintBoxDecorations): (WebCore::InlineFlowBox::paintMask): (WebCore::InlineFlowBox::computeOverAnnotationAdjustment const): (WebCore::InlineFlowBox::computeUnderAnnotationAdjustment const): (WebCore::InlineFlowBox::collectLeafBoxesInLogicalOrder const): * rendering/InlineFlowBox.h: (WebCore::InlineFlowBox::InlineFlowBox): * rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::emphasisMarkExistsAndIsAbove const): (WebCore::InlineTextBox::paint): (WebCore::InlineTextBox::createTextRun const): * rendering/PointerEventsHitRules.cpp: (WebCore::PointerEventsHitRules::PointerEventsHitRules): * rendering/PointerEventsHitRules.h: * rendering/RenderBlock.cpp: (WebCore::RenderBlock::computeStartPositionDeltaForChildAvoidingFloats): (WebCore::RenderBlock::paint): (WebCore::RenderBlock::paintObject): (WebCore::RenderBlock::shouldPaintSelectionGaps const): (WebCore::RenderBlock::adjustLogicalLeftOffsetForLine const): (WebCore::RenderBlock::adjustLogicalRightOffsetForLine const): (WebCore::isChildHitTestCandidate): (WebCore::RenderBlock::computeBlockPreferredLogicalWidths const): (WebCore::RenderBlock::firstLineBlock const): (WebCore::findFirstLetterBlock): (WebCore::RenderBlock::getFirstLetter): (WebCore::RenderBlock::createAnonymousBlockWithStyleAndDisplay): (WebCore::RenderBlock::childBoxIsUnsplittableForFragmentation const): (WebCore::RenderBlock::constructTextRun): (WebCore::RenderBlock::layoutExcludedChildren): * rendering/RenderBlock.h: (WebCore::RenderBlock::createAnonymousWithParentRendererAndDisplay): (WebCore::RenderBlock::createAnonymousBlock const): * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::willCreateColumns const): (WebCore::RenderBlockFlow::layoutBlock): (WebCore::RenderBlockFlow::applyBeforeBreak): (WebCore::RenderBlockFlow::applyAfterBreak): (WebCore::RenderBlockFlow::adjustForUnsplittableChild): (WebCore::RenderBlockFlow::updateStylesForColumnChildren): (WebCore::RenderBlockFlow::computeLogicalLocationForFloat): (WebCore::RenderBlockFlow::lowestInitialLetterLogicalBottom const): (WebCore::RenderBlockFlow::adjustForBorderFit const): (WebCore::RenderBlockFlow::fitBorderToLinesIfNeeded): (WebCore::RenderBlockFlow::lineAtIndex const): (WebCore::RenderBlockFlow::lineCount const): (WebCore::getHeightForLineCount): (WebCore::RenderBlockFlow::clearTruncation): (WebCore::RenderBlockFlow::findClosestTextAtAbsolutePoint): (WebCore::RenderBlockFlow::lineCountForTextAutosizing): (WebCore::RenderBlockFlow::setComputedColumnCountAndWidth): (WebCore::RenderBlockFlow::updateColumnProgressionFromStyle): (WebCore::RenderBlockFlow::isTopLayoutOverflowAllowed const): (WebCore::RenderBlockFlow::isLeftLayoutOverflowAllowed const): * rendering/RenderBlockFlow.h: * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlockFlow::constructLine): (WebCore::RenderBlockFlow::textAlignmentForLine const): (WebCore::RenderBlockFlow::updateLogicalWidthForAlignment): (WebCore::RenderBlockFlow::computeInlineDirectionPositionsForLine): (WebCore::expansionBehaviorForInlineTextBox): (WebCore::RenderBlockFlow::computeInlineDirectionPositionsForSegment): (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange): (WebCore::RenderBlockFlow::checkFloatInCleanLine): (WebCore::RenderBlockFlow::deleteEllipsisLineBoxes): (WebCore::RenderBlockFlow::checkLinesForTextOverflow): (WebCore::RenderBlockFlow::startAlignedOffsetForLine): * rendering/RenderBox.cpp: (WebCore::RenderBox::hasVerticalScrollbarWithAutoBehavior const): (WebCore::RenderBox::hasHorizontalScrollbarWithAutoBehavior const): (WebCore::isCandidateForOpaquenessTest): (WebCore::RenderBox::paintMask): (WebCore::RenderBox::paintClippingMask): (WebCore::RenderBox::positionLineBox): (WebCore::RenderBox::clippedOverflowRectForRepaint const): (WebCore::RenderBox::computeLogicalWidthInFragment const): (WebCore::RenderBox::computeInlineDirectionMargins const): (WebCore::RenderBox::skipContainingBlockForPercentHeightCalculation const): (WebCore::RenderBox::positionForPoint): (WebCore::RenderBox::isUnsplittableForPagination const): * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::localCaretRectForEmptyElement): * rendering/RenderBoxModelObject.h: * rendering/RenderCounter.cpp: (WebCore::planCounter): (WebCore::RenderCounter::originalText const): * rendering/RenderDeprecatedFlexibleBox.cpp: (WebCore::childDoesNotAffectWidthOrFlexing): (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox): (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox): * rendering/RenderDetailsMarker.cpp: (WebCore::RenderDetailsMarker::paint): * rendering/RenderElement.cpp: (WebCore::RenderElement::createFor): (WebCore::RenderElement::computeFirstLineStyle const): (WebCore::RenderElement::propagateStyleToAnonymousChildren): (WebCore::RenderElement::styleWillChange): (WebCore::RenderElement::insertedIntoTree): (WebCore::RenderElement::willBeRemovedFromTree): (WebCore::RenderElement::repaintAfterLayoutIfNeeded): (WebCore::RenderElement::isVisibleInDocumentRect const): (WebCore::RenderElement::getCachedPseudoStyle const): (WebCore::RenderElement::getUncachedPseudoStyle const): (WebCore::RenderElement::selectionPseudoStyle const): * rendering/RenderElement.h: (WebCore::RenderElement::visibleToHitTesting const): * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::paintObject): * rendering/RenderFullScreen.cpp: (WebCore::createFullScreenStyle): * rendering/RenderGrid.cpp: (WebCore::RenderGrid::computeEmptyTracksForAutoRepeat const): * rendering/RenderImage.cpp: (WebCore::RenderImage::repaintOrMarkForLayout): * rendering/RenderInline.cpp: (WebCore::RenderInline::willBeDestroyed): (WebCore::updateStyleOfAnonymousBlockContinuations): (WebCore::RenderInline::updateAlwaysCreateLineBoxes): (WebCore::RenderInline::clippedOverflowRectForRepaint const): (WebCore::RenderInline::addAnnotatedRegions): * rendering/RenderLayer.cpp: (WebCore::RenderLayer::RenderLayer): (WebCore::RenderLayer::updateDescendantDependentFlags): (WebCore::RenderLayer::createScrollbar): (WebCore::styleRequiresScrollbar): (WebCore::styleDefinesAutomaticScrollbar): (WebCore::computeReferenceBox): (WebCore::RenderLayer::calculateClipRects const): * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::updateAfterDescendants): * rendering/RenderLayerCompositor.cpp: (WebCore::scrollbarHasDisplayNone): (WebCore::RenderLayerCompositor::requiresCompositingForPlugin const): (WebCore::RenderLayerCompositor::requiresCompositingForFrame const): * rendering/RenderListBox.cpp: (WebCore::RenderListBox::paintObject): (WebCore::itemOffsetForAlignment): (WebCore::RenderListBox::paintItemForeground): (WebCore::RenderListBox::paintItemBackground): (WebCore::RenderListBox::createScrollbar): * rendering/RenderListItem.cpp: (WebCore::RenderListItem::computeMarkerStyle const): * rendering/RenderListMarker.cpp: (WebCore::effectiveListMarkerType): (WebCore::listMarkerSuffix): (WebCore::listMarkerText): (WebCore::RenderListMarker::paint): (WebCore::RenderListMarker::updateContent): (WebCore::RenderListMarker::computePreferredLogicalWidths): (WebCore::RenderListMarker::updateMargins): (WebCore::RenderListMarker::suffix const): (WebCore::RenderListMarker::isInside const): (WebCore::RenderListMarker::getRelativeMarkerRect): * rendering/RenderListMarker.h: * rendering/RenderMediaControlElements.cpp: (WebCore::RenderMediaVolumeSliderContainer::layout): (WebCore::RenderTextTrackContainerElement::layout): * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::adjustInnerStyle): (WebCore::if): (RenderMenuList::itemStyle const): (RenderMenuList::menuStyle const): (RenderMenuList::createScrollbar): * rendering/RenderMultiColumnSpannerPlaceholder.cpp: (WebCore::RenderMultiColumnSpannerPlaceholder::createAnonymous): * rendering/RenderObject.cpp: (WebCore::RenderObject::addAnnotatedRegions): * rendering/RenderObject.h: (WebCore::RenderObject::isAnonymousBlock const): (WebCore::RenderObject::isBeforeContent const): (WebCore::RenderObject::isAfterContent const): * rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::shouldPaint): (WebCore::RenderReplaced::clippedOverflowRectForRepaint const): * rendering/RenderRubyBase.cpp: (WebCore::RenderRubyBase::textAlignmentForLine const): * rendering/RenderRubyBase.h: * rendering/RenderRubyRun.cpp: (WebCore::RenderRubyRun::createRubyBase const): (WebCore::RenderRubyRun::staticCreateRubyRun): (WebCore::RenderRubyRun::layoutBlock): * rendering/RenderRubyText.cpp: (WebCore::RenderRubyText::textAlignmentForLine const): (WebCore::RenderRubyText::adjustInlineDirectionLineBounds const): * rendering/RenderRubyText.h: * rendering/RenderScrollbar.cpp: (WebCore::pseudoForScrollbarPart): (WebCore::RenderScrollbar::updateScrollbarPart): * rendering/RenderSearchField.cpp: (WebCore::RenderSearchField::updateCancelButtonVisibility const): (WebCore::RenderSearchField::visibilityForCancelButton const): (WebCore::RenderSearchField::menuStyle const): (WebCore::RenderSearchField::createScrollbar): * rendering/RenderSearchField.h: * rendering/RenderTable.cpp: (WebCore::RenderTable::willInsertTableSection): (WebCore::RenderTable::layoutCaptions): (WebCore::RenderTable::layout): (WebCore::RenderTable::paintObject): (WebCore::RenderTable::adjustBorderBoxRectForPainting): (WebCore::RenderTable::paintMask): (WebCore::RenderTable::recalcSections const): (WebCore::RenderTable::createTableWithStyle): * rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::styleDidChange): (WebCore::RenderTableCell::paintCollapsedBorders): (WebCore::RenderTableCell::paintBackgroundsBehindCell): (WebCore::RenderTableCell::paintBoxDecorations): (WebCore::RenderTableCell::paintMask): (WebCore::RenderTableCell::createTableCellWithStyle): * rendering/RenderTableCol.cpp: (WebCore::RenderTableCol::updateFromElement): (WebCore::RenderTableCol::isChildAllowed const): * rendering/RenderTableCol.h: * rendering/RenderTableRow.cpp: (WebCore::RenderTableRow::styleDidChange): (WebCore::RenderTableRow::paintOutlineForRowIfNeeded): (WebCore::RenderTableRow::createTableRowWithStyle): * rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::addCell): (WebCore::RenderTableSection::paint): (WebCore::RenderTableSection::createTableSectionWithStyle): * rendering/RenderText.cpp: (WebCore::RenderText::styleDidChange): (WebCore::RenderText::computePreferredLogicalWidths): (WebCore::applyTextTransform): * rendering/RenderTextFragment.cpp: (WebCore::RenderTextFragment::styleDidChange): (WebCore::RenderTextFragment::blockForAccompanyingFirstLetter): * rendering/RenderTheme.cpp: (WebCore::RenderTheme::adjustStyle): * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::adjustMenuListStyle const): * rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::adjustMenuListButtonStyle const): * rendering/RenderView.cpp: (WebCore::rendererObscuresBackground): * rendering/RenderWidget.cpp: (WebCore::RenderWidget::setWidget): (WebCore::RenderWidget::styleDidChange): * rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::paintEllipsisBox const): (WebCore::RootInlineBox::lineSnapAdjustment const): (WebCore::RootInlineBox::lineSelectionGap): (WebCore::RootInlineBox::computeCaretRect const): * rendering/SimpleLineLayout.cpp: (WebCore::SimpleLineLayout::canUseForFontAndText): (WebCore::SimpleLineLayout::canUseForStyle): (WebCore::SimpleLineLayout::computeLineLeft): (WebCore::SimpleLineLayout::updateLineConstrains): (WebCore::SimpleLineLayout::createLineRuns): (WebCore::SimpleLineLayout::textAlignForLine): (WebCore::SimpleLineLayout::closeLineEndingAndAdjustRuns): * rendering/SimpleLineLayoutFunctions.cpp: (WebCore::SimpleLineLayout::paintFlow): (WebCore::SimpleLineLayout::hitTestFlow): * rendering/SimpleLineLayoutTextFragmentIterator.cpp: (WebCore::SimpleLineLayout::TextFragmentIterator::Style::Style): * rendering/SimpleLineLayoutTextFragmentIterator.h: * rendering/TextDecorationPainter.cpp: (WebCore::textDecorationStyleToStrokeStyle): (WebCore::TextDecorationPainter::paintTextDecoration): (WebCore::collectStylesForRenderer): * rendering/TextDecorationPainter.h: * rendering/line/BreakingContext.h: (WebCore::BreakingContext::BreakingContext): (WebCore::BreakingContext::clearLineBreakIfFitsOnLine): (WebCore::BreakingContext::handleBR): (WebCore::BreakingContext::handleOutOfFlowPositioned): (WebCore::BreakingContext::handleText): (WebCore::BreakingContext::canBreakAtThisPosition): (WebCore::BreakingContext::handleEndOfLine): * rendering/line/LineInlineHeaders.h: (WebCore::shouldCollapseWhiteSpace): * rendering/line/LineWidth.cpp: (WebCore::newFloatShrinksLine): * rendering/mathml/MathOperator.cpp: (WebCore::MathOperator::paint): * rendering/mathml/RenderMathMLFraction.cpp: (WebCore::RenderMathMLFraction::paint): * rendering/mathml/RenderMathMLMath.cpp: (WebCore::RenderMathMLMath::layoutBlock): * rendering/mathml/RenderMathMLMenclose.cpp: (WebCore::RenderMathMLMenclose::paint): * rendering/mathml/RenderMathMLRoot.cpp: (WebCore::RenderMathMLRoot::paint): * rendering/mathml/RenderMathMLToken.cpp: (WebCore::RenderMathMLToken::paint): * rendering/shapes/BoxShape.cpp: (WebCore::computeRoundedRectForBoxShape): * rendering/shapes/ShapeOutsideInfo.cpp: (WebCore::referenceBox): (WebCore::ShapeOutsideInfo::setReferenceBoxLogicalSize): (WebCore::ShapeOutsideInfo::logicalTopOffset const): (WebCore::ShapeOutsideInfo::logicalLeftOffset const): * rendering/style/CounterContent.h: (WebCore::CounterContent::CounterContent): (WebCore::CounterContent::listStyle const): * rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::createAnonymousStyleWithDisplay): (WebCore::RenderStyle::createStyleInheritingFromPseudoStyle): (WebCore::RenderStyle::RenderStyle): (WebCore::RenderStyle::hasUniquePseudoStyle const): (WebCore::RenderStyle::getCachedPseudoStyle const): (WebCore::RenderStyle::addCachedPseudoStyle): (WebCore::RenderStyle::changeRequiresLayout const): (WebCore::requiresPainting): (WebCore::RenderStyle::hyphenString const): (WebCore::RenderStyle::textEmphasisMarkString const): (WebCore::RenderStyle::visitedDependentColor const): (WebCore::RenderStyle::textEmphasisMark const): (WebCore::RenderStyle::setColumnStylesFromPaginationMode): * rendering/style/RenderStyle.h: (WebCore::RenderStyle::setStyleType): (WebCore::RenderStyle::setRTLOrdering): (WebCore::RenderStyle::display const): (WebCore::RenderStyle::visibility const): (WebCore::RenderStyle::textAlign const): (WebCore::RenderStyle::textTransform const): (WebCore::RenderStyle::whiteSpace const): (WebCore::RenderStyle::emptyCells const): (WebCore::RenderStyle::captionSide const): (WebCore::RenderStyle::listStyleType const): (WebCore::RenderStyle::listStylePosition const): (WebCore::RenderStyle::cursor const): (WebCore::RenderStyle::insideLink const): (WebCore::RenderStyle::borderFit const): (WebCore::RenderStyle::pointerEvents const): (WebCore::RenderStyle::setDisplay): (WebCore::RenderStyle::setOriginalDisplay): (WebCore::RenderStyle::setVisibility): (WebCore::RenderStyle::setTextAlign): (WebCore::RenderStyle::setTextTransform): (WebCore::RenderStyle::setTextDecorationStyle): (WebCore::RenderStyle::setTextDecorationSkip): (WebCore::RenderStyle::setTextUnderlinePosition): (WebCore::RenderStyle::setDirection): (WebCore::RenderStyle::setTextZoom): (WebCore::RenderStyle::setWhiteSpace): (WebCore::RenderStyle::setEmptyCells): (WebCore::RenderStyle::setCaptionSide): (WebCore::RenderStyle::setListStyleType): (WebCore::RenderStyle::setListStylePosition): (WebCore::RenderStyle::setCursor): (WebCore::RenderStyle::setCursorVisibility): (WebCore::RenderStyle::setInsideLink): (WebCore::RenderStyle::setHyphens): (WebCore::RenderStyle::setBorderFit): (WebCore::RenderStyle::setColumnAxis): (WebCore::RenderStyle::setColumnProgression): (WebCore::RenderStyle::setTextEmphasisFill): (WebCore::RenderStyle::setTextEmphasisMark): (WebCore::RenderStyle::setRubyPosition): (WebCore::RenderStyle::setBreakBefore): (WebCore::RenderStyle::setBreakAfter): (WebCore::RenderStyle::setBreakInside): (WebCore::RenderStyle::setHangingPunctuation): (WebCore::RenderStyle::setLineSnap): (WebCore::RenderStyle::setLineAlign): (WebCore::RenderStyle::setPointerEvents): (WebCore::RenderStyle::initialDisplay): (WebCore::RenderStyle::initialBreakBetween): (WebCore::RenderStyle::initialBreakInside): (WebCore::RenderStyle::initialCaptionSide): (WebCore::RenderStyle::initialColumnAxis): (WebCore::RenderStyle::initialColumnProgression): (WebCore::RenderStyle::initialEmptyCells): (WebCore::RenderStyle::initialListStylePosition): (WebCore::RenderStyle::initialListStyleType): (WebCore::RenderStyle::initialTextTransform): (WebCore::RenderStyle::initialVisibility): (WebCore::RenderStyle::initialWhiteSpace): (WebCore::RenderStyle::initialCursor): (WebCore::RenderStyle::initialTextAlign): (WebCore::RenderStyle::initialTextDecorationStyle): (WebCore::RenderStyle::initialTextZoom): (WebCore::RenderStyle::initialHyphens): (WebCore::RenderStyle::initialBorderFit): (WebCore::RenderStyle::initialRTLOrdering): (WebCore::RenderStyle::initialPointerEvents): (WebCore::RenderStyle::initialTextEmphasisColor): (WebCore::RenderStyle::initialTextEmphasisFill): (WebCore::RenderStyle::initialTextEmphasisMark): (WebCore::RenderStyle::initialRubyPosition): (WebCore::RenderStyle::initialImageResolutionSource): (WebCore::RenderStyle::initialImageResolutionSnap): (WebCore::RenderStyle::initialTextAlignLast): (WebCore::RenderStyle::initialTextJustify): (WebCore::RenderStyle::initialCursorVisibility): (WebCore::RenderStyle::initialGridAutoRepeatType): (WebCore::RenderStyle::initialLineSnap): (WebCore::RenderStyle::initialLineAlign): (WebCore::RenderStyle::NonInheritedFlags::hasAnyPublicPseudoStyles const): (WebCore::RenderStyle::originalDisplay const): (WebCore::RenderStyle::NonInheritedFlags::hasPseudoStyle const): (WebCore::RenderStyle::NonInheritedFlags::setHasPseudoStyle): (WebCore::RenderStyle::NonInheritedFlags::setHasPseudoStyles): (WebCore::RenderStyle::autoWrap): (WebCore::RenderStyle::preserveNewline): (WebCore::RenderStyle::collapseWhiteSpace): (WebCore::RenderStyle::breakOnlyAfterWhiteSpace const): (WebCore::RenderStyle::hasInlineColumnAxis const): (WebCore::RenderStyle::isDisplayRegionType const): (WebCore::RenderStyle::isDisplayReplacedType): (WebCore::RenderStyle::isDisplayInlineType): (WebCore::RenderStyle::isDisplayFlexibleBox): (WebCore::RenderStyle::isDisplayGridBox): (WebCore::RenderStyle::isDisplayFlexibleOrGridBox): (WebCore::pseudoElementRendererIsNeeded): * rendering/style/RenderStyleConstants.cpp: (WebCore::operator<<): (WebCore::alwaysPageBreak): * rendering/style/RenderStyleConstants.h: (WebCore::PseudoIdSet::has const): (WebCore::PseudoIdSet::add): * rendering/style/ShapeValue.h: * rendering/style/StyleMultiColData.cpp: (WebCore::StyleMultiColData::StyleMultiColData): * rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): * rendering/style/StyleRareNonInheritedData.cpp: (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): * rendering/style/StyleRareNonInheritedData.h: * rendering/svg/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::paint): * rendering/svg/RenderSVGImage.cpp: (WebCore::RenderSVGImage::paint): (WebCore::RenderSVGImage::nodeAtFloatPoint): * rendering/svg/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::styleDidChange): * rendering/svg/RenderSVGModelObject.cpp: (WebCore::RenderSVGModelObject::checkIntersection): (WebCore::RenderSVGModelObject::checkEnclosure): * rendering/svg/RenderSVGResource.cpp: (WebCore::requestPaintingResource): * rendering/svg/RenderSVGResourceClipper.cpp: (WebCore::RenderSVGResourceClipper::pathOnlyClipping): (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage): (WebCore::RenderSVGResourceClipper::calculateClipContentRepaintRect): * rendering/svg/RenderSVGResourceMasker.cpp: (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage): (WebCore::RenderSVGResourceMasker::calculateMaskContentRepaintRect): * rendering/svg/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::clippedOverflowRectForRepaint const): * rendering/svg/RenderSVGShape.cpp: (WebCore::RenderSVGShape::paint): (WebCore::RenderSVGShape::nodeAtFloatPoint): * rendering/svg/RenderSVGText.cpp: (WebCore::RenderSVGText::nodeAtFloatPoint): * rendering/svg/SVGInlineTextBox.cpp: (WebCore::SVGInlineTextBox::paintSelectionBackground): (WebCore::SVGInlineTextBox::paint): (WebCore::SVGInlineTextBox::constructTextRun const): (WebCore::SVGInlineTextBox::paintDecoration): (WebCore::SVGInlineTextBox::nodeAtPoint): * rendering/svg/SVGRenderSupport.cpp: (WebCore::SVGRenderSupport::clippedOverflowRectForRepaint): * rendering/svg/SVGRenderingContext.cpp: (WebCore::SVGRenderingContext::prepareToRenderSVGContent): * rendering/svg/SVGTextLayoutAttributesBuilder.cpp: (WebCore::processRenderSVGInlineText): * rendering/svg/SVGTextMetricsBuilder.cpp: (WebCore::SVGTextMetricsBuilder::measureTextRenderer): * rendering/updating/RenderTreeBuilderBlock.cpp: (WebCore::RenderTreeBuilder::Block::detach): * rendering/updating/RenderTreeBuilderFirstLetter.cpp: (WebCore::styleForFirstLetter): (WebCore::RenderTreeBuilder::FirstLetter::updateAfterDescendants): (WebCore::RenderTreeBuilder::FirstLetter::updateStyle): (WebCore::RenderTreeBuilder::FirstLetter::createRenderers): * rendering/updating/RenderTreeBuilderInline.cpp: (WebCore::RenderTreeBuilder::Inline::attachIgnoringContinuation): (WebCore::RenderTreeBuilder::Inline::newChildIsInline): * rendering/updating/RenderTreeBuilderList.cpp: (WebCore::RenderTreeBuilder::List::updateItemMarker): * rendering/updating/RenderTreeBuilderMathML.cpp: (WebCore::RenderTreeBuilder::MathML::createMathMLOperator): * rendering/updating/RenderTreeBuilderMultiColumn.cpp: (WebCore::RenderTreeBuilder::MultiColumn::createFragmentedFlow): (WebCore::RenderTreeBuilder::MultiColumn::processPossibleSpannerDescendant): * rendering/updating/RenderTreeBuilderRuby.cpp: (WebCore::isAnonymousRubyInlineBlock): (WebCore::isRubyBeforeBlock): (WebCore::isRubyAfterBlock): (WebCore::createAnonymousRubyInlineBlock): * rendering/updating/RenderTreeBuilderTable.cpp: (WebCore::RenderTreeBuilder::Table::findOrCreateParentForChild): * rendering/updating/RenderTreeUpdater.cpp: (WebCore::RenderTreeUpdater::updateBeforeDescendants): (WebCore::RenderTreeUpdater::updateAfterDescendants): (WebCore::RenderTreeUpdater::updateElementRenderer): (WebCore::elementImplicitVisibility): (WebCore::CheckForVisibilityChange::CheckForVisibilityChange): (WebCore::CheckForVisibilityChange::~CheckForVisibilityChange): * rendering/updating/RenderTreeUpdaterGeneratedContent.cpp: (WebCore::RenderTreeUpdater::GeneratedContent::updatePseudoElement): * style/InlineTextBoxStyle.cpp: (WebCore::visualOverflowForDecorations): * style/StyleChange.cpp: (WebCore::Style::determineChange): * style/StyleFontSizeFunctions.cpp: (WebCore::Style::computedFontSizeFromSpecifiedSize): * style/StyleResolveForDocument.cpp: (WebCore::Style::resolveForDocument): * style/StyleSharingResolver.cpp: * style/StyleTreeResolver.cpp: (WebCore::Style::affectsRenderedSubtree): (WebCore::Style::TreeResolver::resolveElement): (WebCore::Style::TreeResolver::resolvePseudoStyle): (WebCore::Style::TreeResolver::parentBoxStyle const): (WebCore::Style::createInheritedDisplayContentsStyleIfNeeded): (WebCore::Style::TreeResolver::resolveComposedTree): * svg/SVGElement.h: * svg/SVGGElement.cpp: (WebCore::SVGGElement::createElementRenderer): Source/WebKitLegacy/mac: * WebView/WebHTMLRepresentation.mm: (searchForLabelsBeforeElement): * WebView/WebView.mm: (nsTextAlignmentFromRenderStyle): Update for new enum names. Canonical link: https://commits.webkit.org/201406@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@232178 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-05-25 01:42:36 +00:00
if (isFirstLine && style.styleType() == PseudoId::FirstLetter && !style.initialLetter().isEmpty())
return true;
return false;
}
void LineWidth::shrinkAvailableWidthForNewFloatIfNeeded(const FloatingObject& newFloat)
{
if (!newFloatShrinksLine(newFloat, m_block, m_isFirstLine))
return;
Refactor ShapeOutsideInfo so it isn't mutated for each line https://bugs.webkit.org/show_bug.cgi?id=135781 Reviewed by Zoltan Horvath. Encapsulate the per line state into a ShapeOutsideDeltas object. updateDeltasForContainingBlockLine has been renamed to computeDeltasForContainingBlockLine, and it returns an instance of the ShapeOutsideDeltas object for that line. This object is cached, but none of the functionality of ShapeOutsideInfo is dependant on any line specific data anymore. No new tests, no behavior change. * rendering/FloatingObjects.cpp: (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): Update to take a FloatingObject reference because the FloatingObject cannot be null. (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): Ditto. (WebCore::ComputeFloatOffsetAdapter<FloatTypeValue>::collectIfNeeded): Pass FloatingObject to updateOffsetIfNeeded as a reference, since it cannot be null. (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): Use ShapeOutsideDeltas object to calculate the offset and take the FloatingObject as a reference. (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): Ditto. (WebCore::shapeInfoForFloat): Deleted. * rendering/line/LineWidth.cpp: (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): Update to use ShapeOutsideDeltas object. * rendering/shapes/ShapeOutsideInfo.cpp: (WebCore::ShapeOutsideInfo::computeDeltasForContainingBlockLine): Return a ShaoeOutsideDeltas object instead of storing line specific data in instance variables. (WebCore::ShapeOutsideInfo::updateDeltasForContainingBlockLine): Deleted. * rendering/shapes/ShapeOutsideInfo.h: Canonical link: https://commits.webkit.org/153762@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@172529 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-08-13 19:05:21 +00:00
ShapeOutsideDeltas shapeDeltas;
if (ShapeOutsideInfo* shapeOutsideInfo = newFloat.renderer().shapeOutsideInfo()) {
[CSS Shapes] Stacked floats with shape-outside should allow inline content to interact with the non-outermost float https://bugs.webkit.org/show_bug.cgi?id=122576 Reviewed by David Hyatt. Source/WebCore: Make inline content interact with stacked floats with shape-outside per the spec. This means that content can interact with floats on the line that are not the outermost float. This refactors ComputeFloatOffsetAdapter into a superclass and two subclasses: one adaptor for determining the offset for float layout, and one for determining the offset for inline layout. The logic in LineWidth::shrinkAvailableWidthForNewFloatIfNeeded has been updated to handle stacked floats with shape-outside properly and has been considerably simplified in the process. It was previously doing a whole bunch of unnecessary work. Tests: fast/shapes/shape-outside-floats/shape-outside-floats-stacked-000.html fast/shapes/shape-outside-floats/shape-outside-floats-stacked-001.html fast/shapes/shape-outside-floats/shape-outside-floats-stacked-002.html * rendering/FloatingObjects.cpp: (WebCore::ComputeFloatOffsetAdapter::~ComputeFloatOffsetAdapter): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter::ComputeFloatOffsetForFloatLayoutAdapter): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter::~ComputeFloatOffsetForFloatLayoutAdapter): (WebCore::ComputeFloatOffsetForLineLayoutAdapter::ComputeFloatOffsetForLineLayoutAdapter): (WebCore::ComputeFloatOffsetForLineLayoutAdapter::~ComputeFloatOffsetForLineLayoutAdapter): (WebCore::FloatingObjects::logicalLeftOffsetForPositioningFloat): (WebCore::FloatingObjects::logicalRightOffsetForPositioningFloat): (WebCore::FloatingObjects::logicalLeftOffset): (WebCore::FloatingObjects::logicalRightOffset): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatTypeValue>::heightRemaining): (WebCore::shapeInfoForFloat): (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): * rendering/line/LineWidth.cpp: (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): * rendering/shapes/ShapeOutsideInfo.cpp: (WebCore::ShapeOutsideInfo::updateDeltasForContainingBlockLine): * rendering/shapes/ShapeOutsideInfo.h: LayoutTests: Tests for shape-outside on stacked floats and interaction with inline content. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-000-expected.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-000.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-001-expected.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-001.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-002-expected.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-002.html: Added. Canonical link: https://commits.webkit.org/145183@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@162217 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-01-17 21:11:49 +00:00
LayoutUnit lineHeight = m_block.lineHeight(m_isFirstLine, m_block.isHorizontalWritingMode() ? HorizontalLine : VerticalLine, PositionOfInteriorLineBoxes);
shapeDeltas = shapeOutsideInfo->computeDeltasForContainingBlockLine(m_block, newFloat, m_block.logicalHeight(), lineHeight);
[CSS Shapes] Stacked floats with shape-outside should allow inline content to interact with the non-outermost float https://bugs.webkit.org/show_bug.cgi?id=122576 Reviewed by David Hyatt. Source/WebCore: Make inline content interact with stacked floats with shape-outside per the spec. This means that content can interact with floats on the line that are not the outermost float. This refactors ComputeFloatOffsetAdapter into a superclass and two subclasses: one adaptor for determining the offset for float layout, and one for determining the offset for inline layout. The logic in LineWidth::shrinkAvailableWidthForNewFloatIfNeeded has been updated to handle stacked floats with shape-outside properly and has been considerably simplified in the process. It was previously doing a whole bunch of unnecessary work. Tests: fast/shapes/shape-outside-floats/shape-outside-floats-stacked-000.html fast/shapes/shape-outside-floats/shape-outside-floats-stacked-001.html fast/shapes/shape-outside-floats/shape-outside-floats-stacked-002.html * rendering/FloatingObjects.cpp: (WebCore::ComputeFloatOffsetAdapter::~ComputeFloatOffsetAdapter): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter::ComputeFloatOffsetForFloatLayoutAdapter): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter::~ComputeFloatOffsetForFloatLayoutAdapter): (WebCore::ComputeFloatOffsetForLineLayoutAdapter::ComputeFloatOffsetForLineLayoutAdapter): (WebCore::ComputeFloatOffsetForLineLayoutAdapter::~ComputeFloatOffsetForLineLayoutAdapter): (WebCore::FloatingObjects::logicalLeftOffsetForPositioningFloat): (WebCore::FloatingObjects::logicalRightOffsetForPositioningFloat): (WebCore::FloatingObjects::logicalLeftOffset): (WebCore::FloatingObjects::logicalRightOffset): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatTypeValue>::heightRemaining): (WebCore::shapeInfoForFloat): (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): * rendering/line/LineWidth.cpp: (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): * rendering/shapes/ShapeOutsideInfo.cpp: (WebCore::ShapeOutsideInfo::updateDeltasForContainingBlockLine): * rendering/shapes/ShapeOutsideInfo.h: LayoutTests: Tests for shape-outside on stacked floats and interaction with inline content. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-000-expected.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-000.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-001-expected.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-001.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-002-expected.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-002.html: Added. Canonical link: https://commits.webkit.org/145183@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@162217 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-01-17 21:11:49 +00:00
}
if (newFloat.type() == FloatingObject::FloatLeft) {
RenderBlockFlow::*logical*ForFloat should take FloatingObject reference. https://bugs.webkit.org/show_bug.cgi?id=150266 Reviewed by Simon Fraser. No change in behaviour. * rendering/FloatingObjects.cpp: (WebCore::FindNextFloatLogicalBottomAdapter::collectIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatTypeValue>::heightRemaining): (WebCore::ComputeFloatOffsetAdapter<FloatTypeValue>::collectIfNeeded): (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::rebuildFloatingObjectSetFromIntrudingFloats): (WebCore::RenderBlockFlow::repaintOverhangingFloats): (WebCore::RenderBlockFlow::insertFloatingObject): (WebCore::RenderBlockFlow::removeFloatingObject): (WebCore::RenderBlockFlow::removeFloatingObjectsBelow): (WebCore::RenderBlockFlow::computeLogicalLocationForFloat): (WebCore::RenderBlockFlow::positionNewFloats): (WebCore::RenderBlockFlow::lowestFloatLogicalBottom): (WebCore::RenderBlockFlow::lowestInitialLetterLogicalBottom): (WebCore::RenderBlockFlow::addOverhangingFloats): (WebCore::RenderBlockFlow::hasOverhangingFloat): (WebCore::RenderBlockFlow::addIntrudingFloats): * rendering/RenderBlockFlow.h: (WebCore::RenderBlockFlow::logicalTopForFloat): (WebCore::RenderBlockFlow::logicalBottomForFloat): (WebCore::RenderBlockFlow::logicalLeftForFloat): (WebCore::RenderBlockFlow::logicalRightForFloat): (WebCore::RenderBlockFlow::logicalWidthForFloat): (WebCore::RenderBlockFlow::logicalHeightForFloat): (WebCore::RenderBlockFlow::setLogicalTopForFloat): (WebCore::RenderBlockFlow::setLogicalLeftForFloat): (WebCore::RenderBlockFlow::setLogicalHeightForFloat): (WebCore::RenderBlockFlow::setLogicalWidthForFloat): (WebCore::RenderBlockFlow::logicalSizeForFloat): Deleted. * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange): (WebCore::RenderBlockFlow::checkPaginationAndFloatsAtEndLine): (WebCore::RenderBlockFlow::positionNewFloatOnLine): * rendering/RenderBox.cpp: (WebCore::RenderBox::addOverflowFromChild): * rendering/RenderBox.h: (WebCore::RenderBox::addOverflowFromChild): * rendering/line/BreakingContext.h: (WebCore::BreakingContext::handleFloat): * rendering/line/LineWidth.cpp: (WebCore::newFloatShrinksLine): (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): * rendering/shapes/ShapeOutsideInfo.cpp: (WebCore::ShapeOutsideInfo::computeDeltasForContainingBlockLine): Canonical link: https://commits.webkit.org/168404@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191234 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2015-10-17 03:36:56 +00:00
float newLeft = m_block.logicalRightForFloat(newFloat);
Use IndentTextOrNot instead of passing isFirstLine/shouldIndentText as bool. https://bugs.webkit.org/show_bug.cgi?id=154628 Reviewed by Simon Fraser. No change in behaviour. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::computeStartPositionDeltaForChildAvoidingFloats): (WebCore::RenderBlock::logicalLeftSelectionOffset): (WebCore::RenderBlock::logicalRightSelectionOffset): * rendering/RenderBlock.h: (WebCore::RenderBlock::availableLogicalWidthForLineInRegion): (WebCore::RenderBlock::logicalRightOffsetForLineInRegion): (WebCore::RenderBlock::logicalLeftOffsetForLineInRegion): (WebCore::RenderBlock::startOffsetForLineInRegion): (WebCore::RenderBlock::endOffsetForLineInRegion): (WebCore::RenderBlock::availableLogicalWidthForLine): (WebCore::RenderBlock::logicalRightOffsetForLine): (WebCore::RenderBlock::logicalLeftOffsetForLine): (WebCore::RenderBlock::startOffsetForLine): (WebCore::RenderBlock::endOffsetForLine): * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::getClearDelta): * rendering/RenderBlockLineLayout.cpp: (WebCore::updateLogicalInlinePositions): (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange): (WebCore::RenderBlockFlow::deleteEllipsisLineBoxes): (WebCore::RenderBlockFlow::checkLinesForTextOverflow): (WebCore::RenderBlockFlow::startAlignedOffsetForLine): * rendering/RenderBox.cpp: (WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats): (WebCore::RenderBox::containingBlockAvailableLineWidthInRegion): * rendering/RenderDeprecatedFlexibleBox.cpp: (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp): * rendering/RenderListItem.cpp: (WebCore::RenderListItem::positionListMarker): * rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::selectionTop): (WebCore::RootInlineBox::selectionBottom): * rendering/SimpleLineLayout.cpp: (WebCore::SimpleLineLayout::canUseForWithReason): (WebCore::SimpleLineLayout::updateLineConstrains): * rendering/line/LineBreaker.cpp: (WebCore::LineBreaker::skipLeadingWhitespace): * rendering/line/LineWidth.cpp: (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): (WebCore::availableWidthAtOffset): * rendering/line/LineWidth.h: (WebCore::LineWidth::shouldIndentText): Canonical link: https://commits.webkit.org/173012@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@197462 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2016-03-02 21:42:22 +00:00
if (shouldIndentText() == IndentText && m_block.style().isLeftToRightDirection())
newLeft += floorToInt(m_block.textIndentOffset());
Refactor ShapeOutsideInfo so it isn't mutated for each line https://bugs.webkit.org/show_bug.cgi?id=135781 Reviewed by Zoltan Horvath. Encapsulate the per line state into a ShapeOutsideDeltas object. updateDeltasForContainingBlockLine has been renamed to computeDeltasForContainingBlockLine, and it returns an instance of the ShapeOutsideDeltas object for that line. This object is cached, but none of the functionality of ShapeOutsideInfo is dependant on any line specific data anymore. No new tests, no behavior change. * rendering/FloatingObjects.cpp: (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): Update to take a FloatingObject reference because the FloatingObject cannot be null. (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): Ditto. (WebCore::ComputeFloatOffsetAdapter<FloatTypeValue>::collectIfNeeded): Pass FloatingObject to updateOffsetIfNeeded as a reference, since it cannot be null. (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): Use ShapeOutsideDeltas object to calculate the offset and take the FloatingObject as a reference. (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): Ditto. (WebCore::shapeInfoForFloat): Deleted. * rendering/line/LineWidth.cpp: (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): Update to use ShapeOutsideDeltas object. * rendering/shapes/ShapeOutsideInfo.cpp: (WebCore::ShapeOutsideInfo::computeDeltasForContainingBlockLine): Return a ShaoeOutsideDeltas object instead of storing line specific data in instance variables. (WebCore::ShapeOutsideInfo::updateDeltasForContainingBlockLine): Deleted. * rendering/shapes/ShapeOutsideInfo.h: Canonical link: https://commits.webkit.org/153762@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@172529 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-08-13 19:05:21 +00:00
if (shapeDeltas.isValid()) {
if (shapeDeltas.lineOverlapsShape())
newLeft += shapeDeltas.rightMarginBoxDelta();
[CSS Shapes] Stacked floats with shape-outside should allow inline content to interact with the non-outermost float https://bugs.webkit.org/show_bug.cgi?id=122576 Reviewed by David Hyatt. Source/WebCore: Make inline content interact with stacked floats with shape-outside per the spec. This means that content can interact with floats on the line that are not the outermost float. This refactors ComputeFloatOffsetAdapter into a superclass and two subclasses: one adaptor for determining the offset for float layout, and one for determining the offset for inline layout. The logic in LineWidth::shrinkAvailableWidthForNewFloatIfNeeded has been updated to handle stacked floats with shape-outside properly and has been considerably simplified in the process. It was previously doing a whole bunch of unnecessary work. Tests: fast/shapes/shape-outside-floats/shape-outside-floats-stacked-000.html fast/shapes/shape-outside-floats/shape-outside-floats-stacked-001.html fast/shapes/shape-outside-floats/shape-outside-floats-stacked-002.html * rendering/FloatingObjects.cpp: (WebCore::ComputeFloatOffsetAdapter::~ComputeFloatOffsetAdapter): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter::ComputeFloatOffsetForFloatLayoutAdapter): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter::~ComputeFloatOffsetForFloatLayoutAdapter): (WebCore::ComputeFloatOffsetForLineLayoutAdapter::ComputeFloatOffsetForLineLayoutAdapter): (WebCore::ComputeFloatOffsetForLineLayoutAdapter::~ComputeFloatOffsetForLineLayoutAdapter): (WebCore::FloatingObjects::logicalLeftOffsetForPositioningFloat): (WebCore::FloatingObjects::logicalRightOffsetForPositioningFloat): (WebCore::FloatingObjects::logicalLeftOffset): (WebCore::FloatingObjects::logicalRightOffset): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatTypeValue>::heightRemaining): (WebCore::shapeInfoForFloat): (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): * rendering/line/LineWidth.cpp: (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): * rendering/shapes/ShapeOutsideInfo.cpp: (WebCore::ShapeOutsideInfo::updateDeltasForContainingBlockLine): * rendering/shapes/ShapeOutsideInfo.h: LayoutTests: Tests for shape-outside on stacked floats and interaction with inline content. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-000-expected.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-000.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-001-expected.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-001.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-002-expected.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-002.html: Added. Canonical link: https://commits.webkit.org/145183@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@162217 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-01-17 21:11:49 +00:00
else // If the line doesn't overlap the shape, then we need to act as if this float didn't exist.
newLeft = m_left;
}
m_left = std::max<float>(m_left, newLeft);
} else {
RenderBlockFlow::*logical*ForFloat should take FloatingObject reference. https://bugs.webkit.org/show_bug.cgi?id=150266 Reviewed by Simon Fraser. No change in behaviour. * rendering/FloatingObjects.cpp: (WebCore::FindNextFloatLogicalBottomAdapter::collectIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatTypeValue>::heightRemaining): (WebCore::ComputeFloatOffsetAdapter<FloatTypeValue>::collectIfNeeded): (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::rebuildFloatingObjectSetFromIntrudingFloats): (WebCore::RenderBlockFlow::repaintOverhangingFloats): (WebCore::RenderBlockFlow::insertFloatingObject): (WebCore::RenderBlockFlow::removeFloatingObject): (WebCore::RenderBlockFlow::removeFloatingObjectsBelow): (WebCore::RenderBlockFlow::computeLogicalLocationForFloat): (WebCore::RenderBlockFlow::positionNewFloats): (WebCore::RenderBlockFlow::lowestFloatLogicalBottom): (WebCore::RenderBlockFlow::lowestInitialLetterLogicalBottom): (WebCore::RenderBlockFlow::addOverhangingFloats): (WebCore::RenderBlockFlow::hasOverhangingFloat): (WebCore::RenderBlockFlow::addIntrudingFloats): * rendering/RenderBlockFlow.h: (WebCore::RenderBlockFlow::logicalTopForFloat): (WebCore::RenderBlockFlow::logicalBottomForFloat): (WebCore::RenderBlockFlow::logicalLeftForFloat): (WebCore::RenderBlockFlow::logicalRightForFloat): (WebCore::RenderBlockFlow::logicalWidthForFloat): (WebCore::RenderBlockFlow::logicalHeightForFloat): (WebCore::RenderBlockFlow::setLogicalTopForFloat): (WebCore::RenderBlockFlow::setLogicalLeftForFloat): (WebCore::RenderBlockFlow::setLogicalHeightForFloat): (WebCore::RenderBlockFlow::setLogicalWidthForFloat): (WebCore::RenderBlockFlow::logicalSizeForFloat): Deleted. * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange): (WebCore::RenderBlockFlow::checkPaginationAndFloatsAtEndLine): (WebCore::RenderBlockFlow::positionNewFloatOnLine): * rendering/RenderBox.cpp: (WebCore::RenderBox::addOverflowFromChild): * rendering/RenderBox.h: (WebCore::RenderBox::addOverflowFromChild): * rendering/line/BreakingContext.h: (WebCore::BreakingContext::handleFloat): * rendering/line/LineWidth.cpp: (WebCore::newFloatShrinksLine): (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): * rendering/shapes/ShapeOutsideInfo.cpp: (WebCore::ShapeOutsideInfo::computeDeltasForContainingBlockLine): Canonical link: https://commits.webkit.org/168404@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@191234 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2015-10-17 03:36:56 +00:00
float newRight = m_block.logicalLeftForFloat(newFloat);
Use IndentTextOrNot instead of passing isFirstLine/shouldIndentText as bool. https://bugs.webkit.org/show_bug.cgi?id=154628 Reviewed by Simon Fraser. No change in behaviour. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::computeStartPositionDeltaForChildAvoidingFloats): (WebCore::RenderBlock::logicalLeftSelectionOffset): (WebCore::RenderBlock::logicalRightSelectionOffset): * rendering/RenderBlock.h: (WebCore::RenderBlock::availableLogicalWidthForLineInRegion): (WebCore::RenderBlock::logicalRightOffsetForLineInRegion): (WebCore::RenderBlock::logicalLeftOffsetForLineInRegion): (WebCore::RenderBlock::startOffsetForLineInRegion): (WebCore::RenderBlock::endOffsetForLineInRegion): (WebCore::RenderBlock::availableLogicalWidthForLine): (WebCore::RenderBlock::logicalRightOffsetForLine): (WebCore::RenderBlock::logicalLeftOffsetForLine): (WebCore::RenderBlock::startOffsetForLine): (WebCore::RenderBlock::endOffsetForLine): * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::getClearDelta): * rendering/RenderBlockLineLayout.cpp: (WebCore::updateLogicalInlinePositions): (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange): (WebCore::RenderBlockFlow::deleteEllipsisLineBoxes): (WebCore::RenderBlockFlow::checkLinesForTextOverflow): (WebCore::RenderBlockFlow::startAlignedOffsetForLine): * rendering/RenderBox.cpp: (WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats): (WebCore::RenderBox::containingBlockAvailableLineWidthInRegion): * rendering/RenderDeprecatedFlexibleBox.cpp: (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp): * rendering/RenderListItem.cpp: (WebCore::RenderListItem::positionListMarker): * rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::selectionTop): (WebCore::RootInlineBox::selectionBottom): * rendering/SimpleLineLayout.cpp: (WebCore::SimpleLineLayout::canUseForWithReason): (WebCore::SimpleLineLayout::updateLineConstrains): * rendering/line/LineBreaker.cpp: (WebCore::LineBreaker::skipLeadingWhitespace): * rendering/line/LineWidth.cpp: (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): (WebCore::availableWidthAtOffset): * rendering/line/LineWidth.h: (WebCore::LineWidth::shouldIndentText): Canonical link: https://commits.webkit.org/173012@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@197462 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2016-03-02 21:42:22 +00:00
if (shouldIndentText() == IndentText && !m_block.style().isLeftToRightDirection())
newRight -= floorToInt(m_block.textIndentOffset());
Refactor ShapeOutsideInfo so it isn't mutated for each line https://bugs.webkit.org/show_bug.cgi?id=135781 Reviewed by Zoltan Horvath. Encapsulate the per line state into a ShapeOutsideDeltas object. updateDeltasForContainingBlockLine has been renamed to computeDeltasForContainingBlockLine, and it returns an instance of the ShapeOutsideDeltas object for that line. This object is cached, but none of the functionality of ShapeOutsideInfo is dependant on any line specific data anymore. No new tests, no behavior change. * rendering/FloatingObjects.cpp: (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): Update to take a FloatingObject reference because the FloatingObject cannot be null. (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): Ditto. (WebCore::ComputeFloatOffsetAdapter<FloatTypeValue>::collectIfNeeded): Pass FloatingObject to updateOffsetIfNeeded as a reference, since it cannot be null. (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): Use ShapeOutsideDeltas object to calculate the offset and take the FloatingObject as a reference. (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): Ditto. (WebCore::shapeInfoForFloat): Deleted. * rendering/line/LineWidth.cpp: (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): Update to use ShapeOutsideDeltas object. * rendering/shapes/ShapeOutsideInfo.cpp: (WebCore::ShapeOutsideInfo::computeDeltasForContainingBlockLine): Return a ShaoeOutsideDeltas object instead of storing line specific data in instance variables. (WebCore::ShapeOutsideInfo::updateDeltasForContainingBlockLine): Deleted. * rendering/shapes/ShapeOutsideInfo.h: Canonical link: https://commits.webkit.org/153762@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@172529 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-08-13 19:05:21 +00:00
if (shapeDeltas.isValid()) {
if (shapeDeltas.lineOverlapsShape())
newRight += shapeDeltas.leftMarginBoxDelta();
[CSS Shapes] Stacked floats with shape-outside should allow inline content to interact with the non-outermost float https://bugs.webkit.org/show_bug.cgi?id=122576 Reviewed by David Hyatt. Source/WebCore: Make inline content interact with stacked floats with shape-outside per the spec. This means that content can interact with floats on the line that are not the outermost float. This refactors ComputeFloatOffsetAdapter into a superclass and two subclasses: one adaptor for determining the offset for float layout, and one for determining the offset for inline layout. The logic in LineWidth::shrinkAvailableWidthForNewFloatIfNeeded has been updated to handle stacked floats with shape-outside properly and has been considerably simplified in the process. It was previously doing a whole bunch of unnecessary work. Tests: fast/shapes/shape-outside-floats/shape-outside-floats-stacked-000.html fast/shapes/shape-outside-floats/shape-outside-floats-stacked-001.html fast/shapes/shape-outside-floats/shape-outside-floats-stacked-002.html * rendering/FloatingObjects.cpp: (WebCore::ComputeFloatOffsetAdapter::~ComputeFloatOffsetAdapter): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter::ComputeFloatOffsetForFloatLayoutAdapter): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter::~ComputeFloatOffsetForFloatLayoutAdapter): (WebCore::ComputeFloatOffsetForLineLayoutAdapter::ComputeFloatOffsetForLineLayoutAdapter): (WebCore::ComputeFloatOffsetForLineLayoutAdapter::~ComputeFloatOffsetForLineLayoutAdapter): (WebCore::FloatingObjects::logicalLeftOffsetForPositioningFloat): (WebCore::FloatingObjects::logicalRightOffsetForPositioningFloat): (WebCore::FloatingObjects::logicalLeftOffset): (WebCore::FloatingObjects::logicalRightOffset): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatTypeValue>::heightRemaining): (WebCore::shapeInfoForFloat): (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded): (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded): * rendering/line/LineWidth.cpp: (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): * rendering/shapes/ShapeOutsideInfo.cpp: (WebCore::ShapeOutsideInfo::updateDeltasForContainingBlockLine): * rendering/shapes/ShapeOutsideInfo.h: LayoutTests: Tests for shape-outside on stacked floats and interaction with inline content. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-000-expected.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-000.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-001-expected.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-001.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-002-expected.html: Added. * fast/shapes/shape-outside-floats/shape-outside-floats-stacked-002.html: Added. Canonical link: https://commits.webkit.org/145183@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@162217 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-01-17 21:11:49 +00:00
else // If the line doesn't overlap the shape, then we need to act as if this float didn't exist.
newRight = m_right;
}
m_right = std::min<float>(m_right, newRight);
}
computeAvailableWidthFromLeftAndRight();
}
void LineWidth::commit()
{
m_committedWidth += m_uncommittedWidth;
m_uncommittedWidth = 0;
2017-04-22 02:01:55 +00:00
if (m_hasUncommittedReplaced) {
m_hasCommittedReplaced = true;
m_hasUncommittedReplaced = false;
}
m_hasCommitted = true;
}
void LineWidth::applyOverhang(const RenderRubyRun& rubyRun, RenderObject* startRenderer, RenderObject* endRenderer)
{
Ruby overhang uses ints instead of floats https://bugs.webkit.org/show_bug.cgi?id=139624 Reviewed by Dave Hyatt. Source/WebCore: Simply change the type. Updated existing tests. * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlockFlow::setMarginsForRubyRun): * rendering/RenderRubyRun.cpp: (WebCore::RenderRubyRun::getOverhang): * rendering/RenderRubyRun.h: * rendering/line/LineWidth.cpp: (WebCore::LineWidth::applyOverhang): LayoutTests: Updating tests. * fast/ruby/overhang-horizontal-expected.png: * fast/ruby/overhang-horizontal-expected.txt: * fast/ruby/overhang-vertical-expected.png: * fast/ruby/overhang-vertical-expected.txt: * platform/mac/fast/ruby/ruby-beforeafter-expected.png: * platform/mac/fast/ruby/ruby-beforeafter-expected.txt: * platform/mac/fast/ruby/ruby-length-expected.png: * platform/mac/fast/ruby/ruby-length-expected.txt: * platform/mac/fast/ruby/ruby-run-break-expected.png: * platform/mac/fast/ruby/ruby-run-break-expected.txt: * platform/mac/fast/ruby/ruby-runs-expected.png: * platform/mac/fast/ruby/ruby-runs-expected.txt: * platform/mac/fast/ruby/ruby-runs-spans-expected.png: * platform/mac/fast/ruby/ruby-runs-spans-expected.txt: * platform/mac/fast/ruby/ruby-trailing-expected.png: * platform/mac/fast/ruby/ruby-trailing-expected.txt: * platform/mac/fast/ruby/rubyDOM-insert-rt-expected.png: * platform/mac/fast/ruby/rubyDOM-insert-rt-expected.txt: * platform/mac/fast/ruby/rubyDOM-insert-text1-expected.png: * platform/mac/fast/ruby/rubyDOM-insert-text1-expected.txt: * platform/mac/fast/ruby/rubyDOM-insert-text2-expected.png: * platform/mac/fast/ruby/rubyDOM-insert-text2-expected.txt: * platform/mac/fast/ruby/rubyDOM-insert-text3-expected.png: * platform/mac/fast/ruby/rubyDOM-insert-text3-expected.txt: * platform/mac/fast/ruby/rubyDOM-remove-rt1-expected.png: * platform/mac/fast/ruby/rubyDOM-remove-rt1-expected.txt: * platform/mac/fast/ruby/rubyDOM-remove-rt2-expected.png: * platform/mac/fast/ruby/rubyDOM-remove-rt2-expected.txt: * platform/mac/fast/ruby/rubyDOM-remove-text1-expected.png: * platform/mac/fast/ruby/rubyDOM-remove-text1-expected.txt: * platform/mac/fast/writing-mode/Kusa-Makura-background-canvas-expected.png: * platform/mac/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt: Canonical link: https://commits.webkit.org/157600@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177398 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-12-16 22:53:19 +00:00
float startOverhang;
float endOverhang;
rubyRun.getOverhang(m_isFirstLine, startRenderer, endRenderer, startOverhang, endOverhang);
Ruby overhang uses ints instead of floats https://bugs.webkit.org/show_bug.cgi?id=139624 Reviewed by Dave Hyatt. Source/WebCore: Simply change the type. Updated existing tests. * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlockFlow::setMarginsForRubyRun): * rendering/RenderRubyRun.cpp: (WebCore::RenderRubyRun::getOverhang): * rendering/RenderRubyRun.h: * rendering/line/LineWidth.cpp: (WebCore::LineWidth::applyOverhang): LayoutTests: Updating tests. * fast/ruby/overhang-horizontal-expected.png: * fast/ruby/overhang-horizontal-expected.txt: * fast/ruby/overhang-vertical-expected.png: * fast/ruby/overhang-vertical-expected.txt: * platform/mac/fast/ruby/ruby-beforeafter-expected.png: * platform/mac/fast/ruby/ruby-beforeafter-expected.txt: * platform/mac/fast/ruby/ruby-length-expected.png: * platform/mac/fast/ruby/ruby-length-expected.txt: * platform/mac/fast/ruby/ruby-run-break-expected.png: * platform/mac/fast/ruby/ruby-run-break-expected.txt: * platform/mac/fast/ruby/ruby-runs-expected.png: * platform/mac/fast/ruby/ruby-runs-expected.txt: * platform/mac/fast/ruby/ruby-runs-spans-expected.png: * platform/mac/fast/ruby/ruby-runs-spans-expected.txt: * platform/mac/fast/ruby/ruby-trailing-expected.png: * platform/mac/fast/ruby/ruby-trailing-expected.txt: * platform/mac/fast/ruby/rubyDOM-insert-rt-expected.png: * platform/mac/fast/ruby/rubyDOM-insert-rt-expected.txt: * platform/mac/fast/ruby/rubyDOM-insert-text1-expected.png: * platform/mac/fast/ruby/rubyDOM-insert-text1-expected.txt: * platform/mac/fast/ruby/rubyDOM-insert-text2-expected.png: * platform/mac/fast/ruby/rubyDOM-insert-text2-expected.txt: * platform/mac/fast/ruby/rubyDOM-insert-text3-expected.png: * platform/mac/fast/ruby/rubyDOM-insert-text3-expected.txt: * platform/mac/fast/ruby/rubyDOM-remove-rt1-expected.png: * platform/mac/fast/ruby/rubyDOM-remove-rt1-expected.txt: * platform/mac/fast/ruby/rubyDOM-remove-rt2-expected.png: * platform/mac/fast/ruby/rubyDOM-remove-rt2-expected.txt: * platform/mac/fast/ruby/rubyDOM-remove-text1-expected.png: * platform/mac/fast/ruby/rubyDOM-remove-text1-expected.txt: * platform/mac/fast/writing-mode/Kusa-Makura-background-canvas-expected.png: * platform/mac/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt: Canonical link: https://commits.webkit.org/157600@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177398 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-12-16 22:53:19 +00:00
startOverhang = std::min(startOverhang, m_committedWidth);
m_availableWidth += startOverhang;
Ruby overhang uses ints instead of floats https://bugs.webkit.org/show_bug.cgi?id=139624 Reviewed by Dave Hyatt. Source/WebCore: Simply change the type. Updated existing tests. * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlockFlow::setMarginsForRubyRun): * rendering/RenderRubyRun.cpp: (WebCore::RenderRubyRun::getOverhang): * rendering/RenderRubyRun.h: * rendering/line/LineWidth.cpp: (WebCore::LineWidth::applyOverhang): LayoutTests: Updating tests. * fast/ruby/overhang-horizontal-expected.png: * fast/ruby/overhang-horizontal-expected.txt: * fast/ruby/overhang-vertical-expected.png: * fast/ruby/overhang-vertical-expected.txt: * platform/mac/fast/ruby/ruby-beforeafter-expected.png: * platform/mac/fast/ruby/ruby-beforeafter-expected.txt: * platform/mac/fast/ruby/ruby-length-expected.png: * platform/mac/fast/ruby/ruby-length-expected.txt: * platform/mac/fast/ruby/ruby-run-break-expected.png: * platform/mac/fast/ruby/ruby-run-break-expected.txt: * platform/mac/fast/ruby/ruby-runs-expected.png: * platform/mac/fast/ruby/ruby-runs-expected.txt: * platform/mac/fast/ruby/ruby-runs-spans-expected.png: * platform/mac/fast/ruby/ruby-runs-spans-expected.txt: * platform/mac/fast/ruby/ruby-trailing-expected.png: * platform/mac/fast/ruby/ruby-trailing-expected.txt: * platform/mac/fast/ruby/rubyDOM-insert-rt-expected.png: * platform/mac/fast/ruby/rubyDOM-insert-rt-expected.txt: * platform/mac/fast/ruby/rubyDOM-insert-text1-expected.png: * platform/mac/fast/ruby/rubyDOM-insert-text1-expected.txt: * platform/mac/fast/ruby/rubyDOM-insert-text2-expected.png: * platform/mac/fast/ruby/rubyDOM-insert-text2-expected.txt: * platform/mac/fast/ruby/rubyDOM-insert-text3-expected.png: * platform/mac/fast/ruby/rubyDOM-insert-text3-expected.txt: * platform/mac/fast/ruby/rubyDOM-remove-rt1-expected.png: * platform/mac/fast/ruby/rubyDOM-remove-rt1-expected.txt: * platform/mac/fast/ruby/rubyDOM-remove-rt2-expected.png: * platform/mac/fast/ruby/rubyDOM-remove-rt2-expected.txt: * platform/mac/fast/ruby/rubyDOM-remove-text1-expected.png: * platform/mac/fast/ruby/rubyDOM-remove-text1-expected.txt: * platform/mac/fast/writing-mode/Kusa-Makura-background-canvas-expected.png: * platform/mac/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt: Canonical link: https://commits.webkit.org/157600@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177398 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-12-16 22:53:19 +00:00
endOverhang = std::max(std::min(endOverhang, m_availableWidth - currentWidth()), 0.0f);
m_availableWidth += endOverhang;
m_overhangWidth += startOverhang + endOverhang;
}
Use IndentTextOrNot instead of passing isFirstLine/shouldIndentText as bool. https://bugs.webkit.org/show_bug.cgi?id=154628 Reviewed by Simon Fraser. No change in behaviour. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::computeStartPositionDeltaForChildAvoidingFloats): (WebCore::RenderBlock::logicalLeftSelectionOffset): (WebCore::RenderBlock::logicalRightSelectionOffset): * rendering/RenderBlock.h: (WebCore::RenderBlock::availableLogicalWidthForLineInRegion): (WebCore::RenderBlock::logicalRightOffsetForLineInRegion): (WebCore::RenderBlock::logicalLeftOffsetForLineInRegion): (WebCore::RenderBlock::startOffsetForLineInRegion): (WebCore::RenderBlock::endOffsetForLineInRegion): (WebCore::RenderBlock::availableLogicalWidthForLine): (WebCore::RenderBlock::logicalRightOffsetForLine): (WebCore::RenderBlock::logicalLeftOffsetForLine): (WebCore::RenderBlock::startOffsetForLine): (WebCore::RenderBlock::endOffsetForLine): * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::getClearDelta): * rendering/RenderBlockLineLayout.cpp: (WebCore::updateLogicalInlinePositions): (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange): (WebCore::RenderBlockFlow::deleteEllipsisLineBoxes): (WebCore::RenderBlockFlow::checkLinesForTextOverflow): (WebCore::RenderBlockFlow::startAlignedOffsetForLine): * rendering/RenderBox.cpp: (WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats): (WebCore::RenderBox::containingBlockAvailableLineWidthInRegion): * rendering/RenderDeprecatedFlexibleBox.cpp: (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp): * rendering/RenderListItem.cpp: (WebCore::RenderListItem::positionListMarker): * rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::selectionTop): (WebCore::RootInlineBox::selectionBottom): * rendering/SimpleLineLayout.cpp: (WebCore::SimpleLineLayout::canUseForWithReason): (WebCore::SimpleLineLayout::updateLineConstrains): * rendering/line/LineBreaker.cpp: (WebCore::LineBreaker::skipLeadingWhitespace): * rendering/line/LineWidth.cpp: (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): (WebCore::availableWidthAtOffset): * rendering/line/LineWidth.h: (WebCore::LineWidth::shouldIndentText): Canonical link: https://commits.webkit.org/173012@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@197462 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2016-03-02 21:42:22 +00:00
inline static float availableWidthAtOffset(const RenderBlockFlow& block, const LayoutUnit& offset, IndentTextOrNot shouldIndentText,
float& newLineLeft, float& newLineRight, const LayoutUnit& lineHeight = 0)
{
newLineLeft = block.logicalLeftOffsetForLine(offset, shouldIndentText, lineHeight);
newLineRight = block.logicalRightOffsetForLine(offset, shouldIndentText, lineHeight);
return std::max(0.0f, newLineRight - newLineLeft);
}
void LineWidth::updateLineDimension(LayoutUnit newLineTop, LayoutUnit newLineWidth, float newLineLeft, float newLineRight)
{
if (newLineWidth <= m_availableWidth)
return;
m_block.setLogicalHeight(newLineTop);
m_availableWidth = newLineWidth + m_overhangWidth;
m_left = newLineLeft;
m_right = newLineRight;
}
void LineWidth::wrapNextToShapeOutside(bool isFirstLine)
{
LayoutUnit lineHeight = m_block.lineHeight(isFirstLine, m_block.isHorizontalWritingMode() ? HorizontalLine : VerticalLine, PositionOfInteriorLineBoxes);
LayoutUnit lineLogicalTop = m_block.logicalHeight();
LayoutUnit newLineTop = lineLogicalTop;
LayoutUnit floatLogicalBottom = m_block.nextFloatLogicalBottomBelow(lineLogicalTop);
float newLineWidth;
float newLineLeft = m_left;
float newLineRight = m_right;
while (true) {
newLineWidth = availableWidthAtOffset(m_block, newLineTop, shouldIndentText(), newLineLeft, newLineRight, lineHeight);
if (newLineWidth >= m_uncommittedWidth)
break;
if (newLineTop >= floatLogicalBottom)
break;
++newLineTop;
}
Make lossy LayoutUnit constructors explicit https://bugs.webkit.org/show_bug.cgi?id=191811 Reviewed by Antti Koivisto. Source/WebCore: * platform/LayoutUnit.h: Make lossy unary constructors explicit. For ergonomics, give float overloads to copy constructor and round/floor/ceil functions. * css/LengthFunctions.h: * platform/graphics/LayoutPoint.h: * platform/graphics/LayoutRect.h: * platform/graphics/LayoutSize.h: * rendering/RenderBox.h: * rendering/RenderElement.h: Templatize common functions to allow LayoutUnit itself to dictate which types it allows. * html/shadow/SliderThumbElement.cpp: * page/FrameView.cpp: * page/Page.cpp: * page/SpatialNavigation.cpp: * page/scrolling/AxisScrollSnapOffsets.cpp: * page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm: * layout/FormattingContextGeometry.cpp: * layout/FormattingContextQuirks.cpp: * layout/LayoutState.cpp: * layout/displaytree/DisplayBox.h: * layout/inlineformatting/InlineFormattingContextLineLayout.cpp: * layout/layouttree/LayoutReplaced.cpp: * platform/animation/AnimationUtilities.h: * platform/cocoa/ScrollSnapAnimatorState.mm: * rendering/BorderEdge.cpp: * rendering/EllipsisBox.cpp: * rendering/FixedTableLayout.cpp: * rendering/InlineBox.cpp: * rendering/InlineFlowBox.cpp: * rendering/InlineFlowBox.h: * rendering/InlineTextBox.cpp: * rendering/RenderBlock.cpp: * rendering/RenderBlockFlow.cpp: * rendering/RenderBlockLineLayout.cpp: * rendering/RenderBox.cpp: * rendering/RenderBoxModelObject.cpp: * rendering/RenderBoxModelObject.h: * rendering/RenderDeprecatedFlexibleBox.cpp: * rendering/RenderElement.cpp: * rendering/RenderImage.cpp: * rendering/RenderInline.cpp: * rendering/RenderLineBreak.cpp: * rendering/RenderListMarker.cpp: * rendering/RenderMultiColumnSet.cpp: * rendering/RenderMultiColumnSet.h: * rendering/RenderObject.cpp: * rendering/RenderReplaced.cpp: * rendering/RenderTable.cpp: * rendering/RenderTableCell.cpp: * rendering/RenderTableSection.cpp: * rendering/RenderText.cpp: * rendering/RenderTextControlMultiLine.cpp: * rendering/RenderThemeMac.mm: * rendering/RenderVTTCue.cpp: * rendering/RenderView.cpp: * rendering/RootInlineBox.cpp: * rendering/SimpleLineLayoutFunctions.cpp: * rendering/SimpleLineLayoutPagination.cpp: * rendering/SimpleLineLayoutResolver.cpp: * rendering/line/LineWidth.cpp: * rendering/mathml/MathOperator.cpp: * rendering/mathml/RenderMathMLBlock.cpp: * rendering/mathml/RenderMathMLBlock.h: * rendering/mathml/RenderMathMLFencedOperator.h: * rendering/mathml/RenderMathMLFraction.cpp: * rendering/mathml/RenderMathMLMenclose.cpp: * rendering/mathml/RenderMathMLOperator.cpp: * rendering/mathml/RenderMathMLRoot.cpp: * rendering/mathml/RenderMathMLScripts.cpp: * rendering/mathml/RenderMathMLToken.cpp: * rendering/shapes/BoxShape.cpp: * rendering/shapes/ShapeOutsideInfo.cpp: * rendering/style/CollapsedBorderValue.h: * rendering/style/NinePieceImage.cpp: * rendering/style/NinePieceImage.h: * rendering/style/RenderStyle.cpp: * rendering/style/RenderStyle.h: * rendering/svg/RenderSVGText.cpp: * rendering/svg/SVGInlineTextBox.cpp: Make usage of LayoutUnit(float) and LayoutUnit(double) explicit where needed. Source/WebKit: * WebProcess/WebPage/WebPage.cpp: * WebProcess/WebPage/ios/WebPageIOS.mm: Make usage of LayoutUnit(float) explicit. Canonical link: https://commits.webkit.org/212151@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@245543 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2019-05-21 01:36:11 +00:00
updateLineDimension(newLineTop, LayoutUnit(newLineWidth), LayoutUnit(newLineLeft), LayoutUnit(newLineRight));
}
void LineWidth::fitBelowFloats(bool isFirstLine)
{
ASSERT(!m_committedWidth);
ASSERT(!fitsOnLine());
LayoutUnit floatLogicalBottom;
LayoutUnit lastFloatLogicalBottom = m_block.logicalHeight();
float newLineWidth = m_availableWidth;
float newLineLeft = m_left;
float newLineRight = m_right;
FloatingObject* lastFloatFromPreviousLine = (m_block.containsFloats() ? m_block.m_floatingObjects->set().last().get() : 0);
if (lastFloatFromPreviousLine && lastFloatFromPreviousLine->renderer().shapeOutsideInfo())
return wrapNextToShapeOutside(isFirstLine);
while (true) {
RenderBlockFlow::nextFloatLogicalBottomBelow should not use ShapeOutsideFloatOffsetMode https://bugs.webkit.org/show_bug.cgi?id=123931 Reviewed by Sam Weinig. Rewrite nextFloatLogicalBottomBelow to use the placed floats tree for the search and to not need ShapeOutsideFloatOffsetMode anymore. This moves almost all of the logic into FloatingObjects, making a small reduction in the amount that RenderBlockFlow needs to know about the implementation of FloatingObjects. In addition, change ComputeFloatOffsetAdapter to take in LayoutUnits and roundToInt itself so that all of it's callers can be simplified. No new tests, no new behavior. * rendering/FloatingObjects.cpp: (WebCore::rangesIntersect): (WebCore::ComputeFloatOffsetAdapter::ComputeFloatOffsetAdapter): (WebCore::FindNextFloatLogicalBottomAdapter::FindNextFloatLogicalBottomAdapter): (WebCore::FindNextFloatLogicalBottomAdapter::lowValue): (WebCore::FindNextFloatLogicalBottomAdapter::highValue): (WebCore::FindNextFloatLogicalBottomAdapter::nextLogicalBottom): (WebCore::FindNextFloatLogicalBottomAdapter::nextShapeLogicalBottom): (WebCore::FindNextFloatLogicalBottomAdapter::collectIfNeeded): (WebCore::FloatingObjects::findNextFloatLogicalBottomBelow): (WebCore::FloatingObjects::findNextFloatLogicalBottomBelowForBlock): (WebCore::FloatingObjects::logicalLeftOffsetForPositioningFloat): (WebCore::FloatingObjects::logicalRightOffsetForPositioningFloat): (WebCore::FloatingObjects::logicalLeftOffset): (WebCore::FloatingObjects::logicalRightOffset): * rendering/FloatingObjects.h: * rendering/LineWidth.cpp: (WebCore::LineWidth::fitBelowFloats): * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::nextFloatLogicalBottomBelow): (WebCore::RenderBlockFlow::nextFloatLogicalBottomBelowForBlock): (WebCore::RenderBlockFlow::getClearDelta): * rendering/RenderBlockFlow.h: Canonical link: https://commits.webkit.org/142255@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@158954 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2013-11-08 22:01:33 +00:00
floatLogicalBottom = m_block.nextFloatLogicalBottomBelow(lastFloatLogicalBottom);
if (floatLogicalBottom <= lastFloatLogicalBottom)
break;
newLineWidth = availableWidthAtOffset(m_block, floatLogicalBottom, shouldIndentText(), newLineLeft, newLineRight);
lastFloatLogicalBottom = floatLogicalBottom;
[CSS Shapes] Support block content with inline content around floats in shape-inside https://bugs.webkit.org/show_bug.cgi?id=121616 Reviewed by David Hyatt. In r156022 and r156364, I added support for floats inside shape-inside with inline content. This change extends the existing implementation to support block content with inline content (paragraphs). I added an extra text for positioning a float inside shape-inside without text content around it. Source/WebCore: Tests: fast/shapes/shape-inside/shape-inside-left-float-in-lower-left-triangle-block-content.html fast/shapes/shape-inside/shape-inside-left-float-in-lower-right-triangle-block-content.html fast/shapes/shape-inside/shape-inside-left-float-in-lower-right-triangle.html fast/shapes/shape-inside/shape-inside-left-float-in-upper-left-triangle-block-content.html fast/shapes/shape-inside/shape-inside-left-float-in-upper-right-triangle-block-content.html * rendering/FloatingObjects.h: (WebCore::FloatingObject::logicalSize): Add new function to return the FloatingObject logical size. * rendering/LineWidth.cpp: (WebCore::LineWidth::fitBelowFloats): When the lineBreaker code pushes down the content below the floating object, we need to update the segments if we are in a shape-inside. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::computeLogicalLocationForFloat): Do the positioning based on the float actual size, and use the recent shapeInsideInfo. (Calling layoutShapeInsideInfo which deals with the layoutStates also instead of shapeInsideInfo.) * rendering/RenderBlock.h: * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlock::adjustLogicalLineTopAndLogicalHeightIfNeeded): If we don't have inline content we still need to positionize our float content in a shape-inside. (WebCore::updateSegmentsForShapes): Use the right coordinates for block content with inline content. LayoutTests: * fast/shapes/shape-inside/shape-inside-left-float-in-lower-left-triangle-block-content-expected.html: Added. * fast/shapes/shape-inside/shape-inside-left-float-in-lower-left-triangle-block-content.html: Added. * fast/shapes/shape-inside/shape-inside-left-float-in-lower-right-triangle-block-content-expected.html: Added. * fast/shapes/shape-inside/shape-inside-left-float-in-lower-right-triangle-block-content.html: Added. * fast/shapes/shape-inside/shape-inside-left-float-in-lower-right-triangle-expected.html: Added. * fast/shapes/shape-inside/shape-inside-left-float-in-lower-right-triangle.html: Added. * fast/shapes/shape-inside/shape-inside-left-float-in-upper-left-triangle-block-content-expected.html: Added. * fast/shapes/shape-inside/shape-inside-left-float-in-upper-left-triangle-block-content.html: Added. * fast/shapes/shape-inside/shape-inside-left-float-in-upper-right-triangle-block-content-expected.html: Added. * fast/shapes/shape-inside/shape-inside-left-float-in-upper-right-triangle-block-content.html: Added. Canonical link: https://commits.webkit.org/140328@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@156846 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2013-10-03 18:24:59 +00:00
[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: Canonical link: https://commits.webkit.org/148823@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166301 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-03-26 18:20:15 +00:00
if (newLineWidth >= m_uncommittedWidth)
break;
}
Make lossy LayoutUnit constructors explicit https://bugs.webkit.org/show_bug.cgi?id=191811 Reviewed by Antti Koivisto. Source/WebCore: * platform/LayoutUnit.h: Make lossy unary constructors explicit. For ergonomics, give float overloads to copy constructor and round/floor/ceil functions. * css/LengthFunctions.h: * platform/graphics/LayoutPoint.h: * platform/graphics/LayoutRect.h: * platform/graphics/LayoutSize.h: * rendering/RenderBox.h: * rendering/RenderElement.h: Templatize common functions to allow LayoutUnit itself to dictate which types it allows. * html/shadow/SliderThumbElement.cpp: * page/FrameView.cpp: * page/Page.cpp: * page/SpatialNavigation.cpp: * page/scrolling/AxisScrollSnapOffsets.cpp: * page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm: * layout/FormattingContextGeometry.cpp: * layout/FormattingContextQuirks.cpp: * layout/LayoutState.cpp: * layout/displaytree/DisplayBox.h: * layout/inlineformatting/InlineFormattingContextLineLayout.cpp: * layout/layouttree/LayoutReplaced.cpp: * platform/animation/AnimationUtilities.h: * platform/cocoa/ScrollSnapAnimatorState.mm: * rendering/BorderEdge.cpp: * rendering/EllipsisBox.cpp: * rendering/FixedTableLayout.cpp: * rendering/InlineBox.cpp: * rendering/InlineFlowBox.cpp: * rendering/InlineFlowBox.h: * rendering/InlineTextBox.cpp: * rendering/RenderBlock.cpp: * rendering/RenderBlockFlow.cpp: * rendering/RenderBlockLineLayout.cpp: * rendering/RenderBox.cpp: * rendering/RenderBoxModelObject.cpp: * rendering/RenderBoxModelObject.h: * rendering/RenderDeprecatedFlexibleBox.cpp: * rendering/RenderElement.cpp: * rendering/RenderImage.cpp: * rendering/RenderInline.cpp: * rendering/RenderLineBreak.cpp: * rendering/RenderListMarker.cpp: * rendering/RenderMultiColumnSet.cpp: * rendering/RenderMultiColumnSet.h: * rendering/RenderObject.cpp: * rendering/RenderReplaced.cpp: * rendering/RenderTable.cpp: * rendering/RenderTableCell.cpp: * rendering/RenderTableSection.cpp: * rendering/RenderText.cpp: * rendering/RenderTextControlMultiLine.cpp: * rendering/RenderThemeMac.mm: * rendering/RenderVTTCue.cpp: * rendering/RenderView.cpp: * rendering/RootInlineBox.cpp: * rendering/SimpleLineLayoutFunctions.cpp: * rendering/SimpleLineLayoutPagination.cpp: * rendering/SimpleLineLayoutResolver.cpp: * rendering/line/LineWidth.cpp: * rendering/mathml/MathOperator.cpp: * rendering/mathml/RenderMathMLBlock.cpp: * rendering/mathml/RenderMathMLBlock.h: * rendering/mathml/RenderMathMLFencedOperator.h: * rendering/mathml/RenderMathMLFraction.cpp: * rendering/mathml/RenderMathMLMenclose.cpp: * rendering/mathml/RenderMathMLOperator.cpp: * rendering/mathml/RenderMathMLRoot.cpp: * rendering/mathml/RenderMathMLScripts.cpp: * rendering/mathml/RenderMathMLToken.cpp: * rendering/shapes/BoxShape.cpp: * rendering/shapes/ShapeOutsideInfo.cpp: * rendering/style/CollapsedBorderValue.h: * rendering/style/NinePieceImage.cpp: * rendering/style/NinePieceImage.h: * rendering/style/RenderStyle.cpp: * rendering/style/RenderStyle.h: * rendering/svg/RenderSVGText.cpp: * rendering/svg/SVGInlineTextBox.cpp: Make usage of LayoutUnit(float) and LayoutUnit(double) explicit where needed. Source/WebKit: * WebProcess/WebPage/WebPage.cpp: * WebProcess/WebPage/ios/WebPageIOS.mm: Make usage of LayoutUnit(float) explicit. Canonical link: https://commits.webkit.org/212151@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@245543 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2019-05-21 01:36:11 +00:00
updateLineDimension(lastFloatLogicalBottom, LayoutUnit(newLineWidth), LayoutUnit(newLineLeft), LayoutUnit(newLineRight));
}
void LineWidth::setTrailingWhitespaceWidth(float collapsedWhitespace, float borderPaddingMargin)
{
m_trailingCollapsedWhitespaceWidth = collapsedWhitespace;
m_trailingWhitespaceWidth = collapsedWhitespace + borderPaddingMargin;
}
void LineWidth::computeAvailableWidthFromLeftAndRight()
{
Stop bringing in the std namespace https://bugs.webkit.org/show_bug.cgi?id=123273 Reviewed by Andreas Kling. Source/WebCore: * Modules/webaudio/AudioBufferSourceNode.cpp: (WebCore::AudioBufferSourceNode::renderFromBuffer): (WebCore::AudioBufferSourceNode::startGrain): (WebCore::AudioBufferSourceNode::totalPitchRate): * Modules/webaudio/AudioNodeInput.cpp: (WebCore::AudioNodeInput::numberOfChannels): * Modules/webaudio/AudioParamTimeline.cpp: (WebCore::AudioParamTimeline::valuesForTimeRangeImpl): * Modules/webaudio/AudioScheduledSourceNode.cpp: (WebCore::AudioScheduledSourceNode::updateSchedulingInfo): (WebCore::AudioScheduledSourceNode::stop): * Modules/webaudio/AudioSummingJunction.cpp: * Modules/webaudio/DelayDSPKernel.cpp: (WebCore::DelayDSPKernel::process): * Modules/webaudio/OfflineAudioDestinationNode.cpp: (WebCore::OfflineAudioDestinationNode::offlineRender): * Modules/webaudio/OscillatorNode.cpp: * Modules/webaudio/PannerNode.cpp: (WebCore::PannerNode::dopplerRate): * Modules/webaudio/WaveShaperDSPKernel.cpp: (WebCore::WaveShaperDSPKernel::processCurve): * Modules/webdatabase/DatabaseTracker.cpp: (WebCore::DatabaseTracker::hasAdequateQuotaForOrigin): * Modules/websockets/WebSocket.cpp: (WebCore::saturateAdd): * Modules/websockets/WebSocketChannel.cpp: * Modules/websockets/WebSocketFrame.cpp: (WebCore::WebSocketFrame::parseFrame): * accessibility/AccessibilityARIAGrid.cpp: * accessibility/AccessibilityARIAGridCell.cpp: * accessibility/AccessibilityARIAGridRow.cpp: * accessibility/AccessibilityList.cpp: * accessibility/AccessibilityListBox.cpp: * accessibility/AccessibilityListBoxOption.cpp: * accessibility/AccessibilityNodeObject.cpp: * accessibility/AccessibilityObject.cpp: * accessibility/AccessibilityRenderObject.cpp: * accessibility/AccessibilityTable.cpp: (WebCore::AccessibilityTable::addChildren): * accessibility/AccessibilityTableCell.cpp: * accessibility/AccessibilityTableColumn.cpp: * accessibility/AccessibilityTableHeaderContainer.cpp: * accessibility/AccessibilityTableRow.cpp: * accessibility/mac/WebAccessibilityObjectWrapperBase.mm: * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (-[WebAccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]): * bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::JSCSSStyleDeclaration::getOwnPropertyNames): * bindings/js/JSGeolocationCustom.cpp: (WebCore::setTimeout): (WebCore::setMaximumAge): * bindings/js/ScriptController.cpp: * bindings/js/SerializedScriptValue.cpp: (WebCore::writeLittleEndian): (WebCore::CloneSerializer::write): (WebCore::CloneDeserializer::deserialize): (WebCore::CloneDeserializer::readString): * css/CSSComputedStyleDeclaration.cpp: (WebCore::ComputedStyleExtractor::propertyValue): * css/CSSFontSelector.cpp: (WebCore::CSSFontSelector::getFontFace): * css/CSSGradientValue.cpp: (WebCore::CSSRadialGradientValue::createGradient): * css/CSSParser.cpp: (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseColorParameters): (WebCore::CSSParser::parseHSLParameters): * css/CSSReflectValue.cpp: * css/DeprecatedStyleBuilder.cpp: (WebCore::ApplyPropertyFontSize::applyValue): * css/PropertySetCSSStyleDeclaration.cpp: * css/SVGCSSParser.cpp: * css/StylePropertySet.cpp: (WebCore::StylePropertySet::getLayeredShorthandValue): * css/StyleResolver.cpp: (WebCore::StyleResolver::viewportPercentageValue): * dom/CharacterData.cpp: (WebCore::CharacterData::parserAppendData): * dom/ContainerNode.cpp: * dom/Document.cpp: (WebCore::Document::minimumLayoutDelay): * dom/Node.cpp: (WebCore::Node::compareDocumentPosition): * dom/Range.cpp: (WebCore::Range::toString): (WebCore::Range::textRects): (WebCore::Range::textQuads): * dom/ScriptedAnimationController.cpp: (WebCore::ScriptedAnimationController::scheduleAnimation): * dom/StyledElement.cpp: (WebCore::StyledElement::makePresentationAttributeCacheKey): * dom/Text.cpp: * dom/ViewportArguments.cpp: (WebCore::clampLengthValue): (WebCore::clampScaleValue): (WebCore::ViewportArguments::resolve): (WebCore::computeMinimumScaleFactorForContentContained): (WebCore::restrictMinimumScaleFactorToViewportSize): * editing/AlternativeTextController.cpp: * editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): * editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::deleteInsignificantText): * editing/Editor.cpp: (WebCore::Editor::setComposition): (WebCore::Editor::compositionRange): * editing/EditorCommand.cpp: (WebCore::verticalScrollDistance): * editing/TextIterator.cpp: (WebCore::TextIterator::handleTextNode): (WebCore::TextIterator::handleTextBox): (WebCore::CharacterIterator::string): (WebCore::SearchBuffer::SearchBuffer): (WebCore::SearchBuffer::append): (WebCore::SearchBuffer::prependContext): (WebCore::SearchBuffer::search): * editing/VisibleUnits.cpp: (WebCore::startOfParagraph): * editing/htmlediting.cpp: * editing/markup.cpp: * fileapi/FileReaderLoader.cpp: (WebCore::FileReaderLoader::didReceiveResponse): (WebCore::FileReaderLoader::didReceiveData): * history/BackForwardList.cpp: (WebCore::BackForwardList::backListWithLimit): (WebCore::BackForwardList::forwardListWithLimit): * history/PageCache.cpp: (WebCore::PageCache::setCapacity): * html/BaseDateAndTimeInputType.cpp: * html/FTPDirectoryDocument.cpp: * html/HTMLAreaElement.cpp: (WebCore::HTMLAreaElement::getRegion): * html/HTMLElement.cpp: (WebCore::HTMLElement::parseAttribute): (WebCore::parseColorStringWithCrazyLegacyRules): * html/HTMLFormControlElement.cpp: * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::getTextFieldValues): * html/HTMLImageElement.cpp: * html/HTMLInputElement.cpp: * html/HTMLMapElement.cpp: * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::HTMLMediaElement): (WebCore::HTMLMediaElement::updateActiveTextTrackCues): (WebCore::HTMLMediaElement::textTrackAddCue): (WebCore::HTMLMediaElement::textTrackRemoveCue): (WebCore::HTMLMediaElement::rewind): (WebCore::HTMLMediaElement::seek): (WebCore::HTMLMediaElement::duration): * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::parseAttribute): (WebCore::HTMLSelectElement::updateListBoxSelection): * html/HTMLSourceElement.cpp: * html/HTMLTableCellElement.cpp: (WebCore::HTMLTableCellElement::colSpan): (WebCore::HTMLTableCellElement::rowSpan): * html/HTMLTableElement.cpp: (WebCore::HTMLTableElement::parseAttribute): * html/HTMLTextFormControlElement.cpp: (WebCore::HTMLTextFormControlElement::setSelectionStart): (WebCore::HTMLTextFormControlElement::setSelectionEnd): (WebCore::HTMLTextFormControlElement::select): (WebCore::HTMLTextFormControlElement::setSelectionRange): * html/HTMLTrackElement.cpp: * html/ImageDocument.cpp: (WebCore::ImageDocument::scale): * html/InputType.cpp: (WebCore::InputType::valueAsDouble): * html/MediaController.cpp: (MediaController::duration): (MediaController::currentTime): (MediaController::setCurrentTime): (MediaController::updateReadyState): * html/NumberInputType.cpp: (WebCore::NumberInputType::setValueAsDouble): (WebCore::NumberInputType::setValueAsDecimal): (WebCore::NumberInputType::createStepRange): * html/RangeInputType.cpp: (WebCore::RangeInputType::handleKeydownEvent): * html/SearchInputType.cpp: (WebCore::SearchInputType::startSearchEventTimer): * html/StepRange.cpp: (WebCore::StepRange::clampValue): (WebCore::StepRange::parseStep): * html/TimeRanges.cpp: * html/ValidationMessage.cpp: (WebCore::ValidationMessage::setMessageDOMAndStartTimer): (WebCore::adjustBubblePosition): * html/canvas/CanvasRenderingContext2D.cpp: (WebCore::normalizeRect): * html/canvas/WebGLRenderingContext.cpp: (WebCore::WebGLRenderingContext::validateIndexArrayConservative): (WebCore::WebGLRenderingContext::validateCompressedTexFuncData): * html/shadow/MediaControlElements.cpp: (WebCore::MediaControlRewindButtonElement::defaultEventHandler): * html/shadow/MediaControlsApple.cpp: * html/shadow/SliderThumbElement.cpp: (WebCore::SliderThumbElement::setPositionFromPoint): * inspector/ContentSearchUtils.cpp: * inspector/DOMEditor.cpp: * inspector/DOMPatchSupport.cpp: (WebCore::DOMPatchSupport::diff): * inspector/InjectedScriptHost.cpp: * loader/ProgressTracker.cpp: (WebCore::ProgressTracker::incrementProgress): * loader/cache/CachedImage.cpp: * page/DOMWindow.cpp: (WebCore::DOMWindow::adjustWindowRect): * page/EventHandler.cpp: (WebCore::MaximumDurationTracker::~MaximumDurationTracker): * page/FrameTree.cpp: * page/FrameView.cpp: (WebCore::FrameView::adjustedDeferredRepaintDelay): (WebCore::FrameView::autoSizeIfEnabled): * page/PrintContext.cpp: (WebCore::PrintContext::computeAutomaticScaleFactor): * page/SpatialNavigation.cpp: (WebCore::entryAndExitPointsForDirection): * page/animation/CSSPropertyAnimation.cpp: (WebCore::blendFilterOperations): (WebCore::PropertyWrapperShadow::blendMismatchedShadowLists): * platform/graphics/FloatRect.cpp: (WebCore::FloatRect::FloatRect): (WebCore::FloatRect::intersect): (WebCore::FloatRect::uniteEvenIfEmpty): (WebCore::FloatRect::extend): (WebCore::FloatRect::fitToPoints): * platform/graphics/GlyphPageTreeNode.cpp: (WebCore::GlyphPageTreeNode::initializePage): (WebCore::GlyphPageTreeNode::getChild): * platform/graphics/IntRect.cpp: (WebCore::IntRect::intersect): (WebCore::IntRect::unite): (WebCore::IntRect::uniteIfNonZero): * platform/graphics/LayoutRect.cpp: (WebCore::LayoutRect::intersect): (WebCore::LayoutRect::unite): (WebCore::LayoutRect::uniteIfNonZero): * platform/graphics/filters/FEMorphology.cpp: (WebCore::FEMorphology::platformApplyGeneric): (WebCore::FEMorphology::platformApplySoftware): * platform/mac/MemoryPressureHandlerMac.mm: (WebCore::MemoryPressureHandler::respondToMemoryPressure): * platform/text/TextCodecICU.cpp: * rendering/LineWidth.cpp: (WebCore::LineWidth::fitBelowFloats): (WebCore::LineWidth::computeAvailableWidthFromLeftAndRight): * rendering/RenderBlock.h: (WebCore::RenderBlock::availableLogicalWidthForLine): (WebCore::RenderBlock::availableLogicalWidthForContent): * rendering/RenderFieldset.cpp: (WebCore::RenderFieldset::computePreferredLogicalWidths): (WebCore::RenderFieldset::layoutSpecialExcludedChild): (WebCore::RenderFieldset::paintBoxDecorations): * rendering/RenderFlowThread.cpp: (WebCore::RenderFlowThread::updateLogicalWidth): (WebCore::RenderFlowThread::addForcedRegionBreak): * rendering/RenderFrameBase.cpp: (WebCore::RenderFrameBase::layoutWithFlattening): * rendering/RenderFrameSet.cpp: (WebCore::RenderFrameSet::layOutAxis): * rendering/RenderSlider.cpp: (WebCore::RenderSlider::computePreferredLogicalWidths): * rendering/RenderTableCell.h: * rendering/RenderTreeAsText.cpp: (WebCore::writeLayers): * rendering/RootInlineBox.h: (WebCore::RootInlineBox::selectionHeight): (WebCore::RootInlineBox::selectionHeightAdjustedForPrecedingBlock): * rendering/mathml/RenderMathMLRow.cpp: (WebCore::RenderMathMLRow::layout): * rendering/mathml/RenderMathMLScripts.cpp: (WebCore::RenderMathMLScripts::layout): * rendering/style/RenderStyle.h: * rendering/style/StyleGeneratedImage.cpp: (WebCore::StyleGeneratedImage::imageSize): * style/StyleFontSizeFunctions.cpp: (WebCore::Style::fontSizeForKeyword): * svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::setCurrentTime): Source/WebKit/mac: * WebView/WebFrameView.mm: (-[WebFrameView _verticalPageScrollDistance]): (-[WebFrameView _horizontalPageScrollDistance]): * WebView/WebHTMLView.mm: (-[WebHTMLView _scaleFactorForPrintOperation:]): * WebView/WebView.mm: (+[WebView _setCacheModel:]): (+[WebView _maxCacheModelInAnyInstance]): (+[WebView _cacheModelChangedNotification:]): (+[WebView _preferencesRemovedNotification:]): Source/WebKit2: * WebProcess/mac/WebProcessMac.mm: (WebKit::WebProcess::platformSetCacheModel): Canonical link: https://commits.webkit.org/141406@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157971 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2013-10-25 01:15:36 +00:00
m_availableWidth = std::max<float>(0, m_right - m_left) + m_overhangWidth;
}
IndentTextOrNot requiresIndent(bool isFirstLine, bool isAfterHardLineBreak, const RenderStyle& style)
{
IndentTextOrNot shouldIndentText = DoNotIndentText;
if (isFirstLine)
shouldIndentText = IndentText;
Modernize RenderStyleConstants.h - Part 1 https://bugs.webkit.org/show_bug.cgi?id=185809 Patch by Sam Weinig <sam@webkit.org> on 2018-05-21 Reviewed by Yusuke Suzuki. Source/WebCore: Modernized the first set of enums in RenderStyleConstants.h by: - Converting them to enum classes - Renaming them to remove unnecessary prefix 'E's - Renaming values to take advantage of enum class scoping (e.g. StyleDifferenceEqual -> StyleDifference::Equal) - Renaming to match modern conventions (e.g BNONE -> None) - Reformatting them so that each value is on its own line. Modernizes the following enums: PrintColorAdjust StyleDifference StyleDifferenceContextSensitiveProperty ColumnFill ColumnSpan BorderCollapse (renamed from EBorderCollapse) BorderStyle (renamed from EBorderStyle) BorderPrecedence (renamed from EBorderPrecedence) OutlineIsAuto PositionType (renamed from EPosition) Float (renamed from EFloat) MarginCollapse (renamed from EMarginCollapse) BoxDecorationBreak (renamed from EBoxDecorationBreak) BoxSizing (renamed from EBoxSizing) Overflow (renamed from EOverflow) VerticalAlign (renamed from EVerticalAlign) Clear (renamed from EClear) TableLayoutType (renamed from ETableLayout) TextCombine FillAttachment (renamed from EFillAttachment) FillBox (renamed from EFillBox) FillRepeat (renamed from EFillRepeat) FillLayerType (renamed from EFillLayerType) FillSizeType (renamed from EFillSizeType) MaskSourceType (renamed from EMaskSourceType) BoxPack (renamed from EBoxPack) BoxAlignment (renamed from EBoxAlignment) BoxOrient (renamed from EBoxOrient) BoxLines (renamed from EBoxLines) BoxDirection (renamed from EBoxDirection) AlignContent (renamed from EAlignContent) FlexDirection (renamed from EFlexDirection) FlexWrap (renamed from EFlexWrap) ItemPosition OverflowAlignment ItemPositionType ContentPosition ContentDistribution (renamed from ContentDistributionType) TextSecurity (renamed from ETextSecurity) UserModify (renamed from EUserModify) UserDrag (renamed from EUserDrag) UserSelect (renamed from EUserSelect) ObjectFit AspectRatioType WordBreak (renamed from EWordBreak) OverflowWrap (renamed from EOverflowWrap) NBSPMode (renamed from ENBSPMode) LineBreak Resize (renamed from EResize) QuoteType TransformStyle3D (renamed from ETransformStyle3D) BackfaceVisibility (renamed from EBackfaceVisibility) LineClamp (renamed from ELineClamp) TextOverflow ImageRendering (renamed from EImageRendering) TextIndentLine TextIndentType Isolation * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (AXAttributeStringSetStyle): * css/BasicShapeFunctions.cpp: (WebCore::valueForCenterCoordinate): (WebCore::valueForBasicShape): * css/CSSComputedStyleDeclaration.cpp: (WebCore::sizingBox): (WebCore::fillRepeatToCSSValue): (WebCore::fillSourceTypeToCSSValue): (WebCore::fillSizeToCSSValue): (WebCore::valueForItemPositionWithOverflowAlignment): (WebCore::valueForContentPositionAndDistributionWithOverflowAlignment): (WebCore::ComputedStyleExtractor::valueForPropertyinStyle): * css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::operator LineClampValue const): (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::operator ColumnFill const): (WebCore::CSSPrimitiveValue::operator ColumnSpan const): (WebCore::CSSPrimitiveValue::operator PrintColorAdjust const): (WebCore::CSSPrimitiveValue::operator BorderStyle const): (WebCore::CSSPrimitiveValue::operator OutlineIsAuto const): (WebCore::CSSPrimitiveValue::operator BackfaceVisibility const): (WebCore::CSSPrimitiveValue::operator FillAttachment const): (WebCore::CSSPrimitiveValue::operator FillBox const): (WebCore::CSSPrimitiveValue::operator FillRepeat const): (WebCore::CSSPrimitiveValue::operator BoxPack const): (WebCore::CSSPrimitiveValue::operator BoxAlignment const): (WebCore::CSSPrimitiveValue::operator BoxDecorationBreak const): (WebCore::CSSPrimitiveValue::operator BoxSizing const): (WebCore::CSSPrimitiveValue::operator BoxDirection const): (WebCore::CSSPrimitiveValue::operator BoxLines const): (WebCore::CSSPrimitiveValue::operator BoxOrient const): (WebCore::CSSPrimitiveValue::operator Clear const): (WebCore::CSSPrimitiveValue::operator FlexDirection const): (WebCore::CSSPrimitiveValue::operator AlignContent const): (WebCore::CSSPrimitiveValue::operator FlexWrap const): (WebCore::CSSPrimitiveValue::operator Float const): (WebCore::CSSPrimitiveValue::operator LineBreak const): (WebCore::CSSPrimitiveValue::operator MarginCollapse const): (WebCore::CSSPrimitiveValue::operator NBSPMode const): (WebCore::CSSPrimitiveValue::operator Overflow const): (WebCore::CSSPrimitiveValue::operator PositionType const): (WebCore::CSSPrimitiveValue::operator Resize const): (WebCore::CSSPrimitiveValue::operator TableLayoutType const): (WebCore::CSSPrimitiveValue::operator TextSecurity const): (WebCore::CSSPrimitiveValue::operator UserDrag const): (WebCore::CSSPrimitiveValue::operator UserModify const): (WebCore::CSSPrimitiveValue::operator UserSelect const): (WebCore::CSSPrimitiveValue::operator VerticalAlign const): (WebCore::CSSPrimitiveValue::operator WordBreak const): (WebCore::CSSPrimitiveValue::operator OverflowWrap const): (WebCore::CSSPrimitiveValue::operator TextCombine const): (WebCore::CSSPrimitiveValue::operator TextOverflow const): (WebCore::CSSPrimitiveValue::operator ObjectFit const): (WebCore::CSSPrimitiveValue::operator Isolation const): (WebCore::CSSPrimitiveValue::operator BorderCollapse const): (WebCore::CSSPrimitiveValue::operator ImageRendering const): (WebCore::CSSPrimitiveValue::operator TransformStyle3D const): (WebCore::CSSPrimitiveValue::operator ItemPosition const): (WebCore::CSSPrimitiveValue::operator OverflowAlignment const): (WebCore::CSSPrimitiveValue::operator ContentPosition const): (WebCore::CSSPrimitiveValue::operator ContentDistribution const): (WebCore::CSSPrimitiveValue::operator EBorderStyle const): Deleted. (WebCore::CSSPrimitiveValue::operator EBackfaceVisibility const): Deleted. (WebCore::CSSPrimitiveValue::operator EFillAttachment const): Deleted. (WebCore::CSSPrimitiveValue::operator EFillBox const): Deleted. (WebCore::CSSPrimitiveValue::operator EFillRepeat const): Deleted. (WebCore::CSSPrimitiveValue::operator EBoxPack const): Deleted. (WebCore::CSSPrimitiveValue::operator EBoxAlignment const): Deleted. (WebCore::CSSPrimitiveValue::operator EBoxDecorationBreak const): Deleted. (WebCore::CSSPrimitiveValue::operator EBoxSizing const): Deleted. (WebCore::CSSPrimitiveValue::operator EBoxDirection const): Deleted. (WebCore::CSSPrimitiveValue::operator EBoxLines const): Deleted. (WebCore::CSSPrimitiveValue::operator EBoxOrient const): Deleted. (WebCore::CSSPrimitiveValue::operator EClear const): Deleted. (WebCore::CSSPrimitiveValue::operator EFlexDirection const): Deleted. (WebCore::CSSPrimitiveValue::operator EAlignContent const): Deleted. (WebCore::CSSPrimitiveValue::operator EFlexWrap const): Deleted. (WebCore::CSSPrimitiveValue::operator EFloat const): Deleted. (WebCore::CSSPrimitiveValue::operator EMarginCollapse const): Deleted. (WebCore::CSSPrimitiveValue::operator ENBSPMode const): Deleted. (WebCore::CSSPrimitiveValue::operator EOverflow const): Deleted. (WebCore::CSSPrimitiveValue::operator EPosition const): Deleted. (WebCore::CSSPrimitiveValue::operator EResize const): Deleted. (WebCore::CSSPrimitiveValue::operator ETableLayout const): Deleted. (WebCore::CSSPrimitiveValue::operator ETextSecurity const): Deleted. (WebCore::CSSPrimitiveValue::operator EUserDrag const): Deleted. (WebCore::CSSPrimitiveValue::operator EUserModify const): Deleted. (WebCore::CSSPrimitiveValue::operator EUserSelect const): Deleted. (WebCore::CSSPrimitiveValue::operator EVerticalAlign const): Deleted. (WebCore::CSSPrimitiveValue::operator EWordBreak const): Deleted. (WebCore::CSSPrimitiveValue::operator EOverflowWrap const): Deleted. (WebCore::CSSPrimitiveValue::operator EBorderCollapse const): Deleted. (WebCore::CSSPrimitiveValue::operator EImageRendering const): Deleted. (WebCore::CSSPrimitiveValue::operator ETransformStyle3D const): Deleted. (WebCore::CSSPrimitiveValue::operator ContentDistributionType const): Deleted. * css/CSSProperties.json: * css/CSSToStyleMap.cpp: (WebCore::CSSToStyleMap::mapFillAttachment): (WebCore::CSSToStyleMap::mapFillSize): (WebCore::CSSToStyleMap::mapFillMaskSourceType): * css/CSSValueKeywords.in: * css/StyleBuilderConverter.h: (WebCore::StyleBuilderConverter::convertResize): (WebCore::StyleBuilderConverter::convertSelfOrDefaultAlignmentData): * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueTextIndent): (WebCore::StyleBuilderCustom::applyInheritWebkitAspectRatio): (WebCore::StyleBuilderCustom::applyValueWebkitAspectRatio): (WebCore::StyleBuilderCustom::applyValueContent): * css/StyleResolver.cpp: (WebCore::isScrollableOverflow): (WebCore::StyleResolver::adjustRenderStyle): * css/StyleResolver.h: * css/makeprop.pl: (getFillLayerType): * dom/Element.h: * dom/Node.cpp: (WebCore::computeEditabilityFromComputedStyle): (WebCore::Node::canStartSelection const): * dom/Position.cpp: (WebCore::Position::nodeIsUserSelectNone): (WebCore::Position::nodeIsUserSelectAll): * dom/Range.cpp: (WebCore::Range::collectSelectionRectsWithoutUnionInteriorLines const): * editing/ApplyBlockElementCommand.cpp: (WebCore::ApplyBlockElementCommand::rangeForParagraphSplittingTextNodesIfNeeded): * editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::doApply): * editing/Editing.cpp: (WebCore::isSpecialHTMLElement): * editing/EditorCommand.cpp: (WebCore::verticalScrollDistance): * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): * editing/SimplifyMarkupCommand.cpp: (WebCore::SimplifyMarkupCommand::doApply): * editing/VisibleUnits.cpp: (WebCore::backwardSearchForBoundaryWithTextIterator): (WebCore::forwardSearchForBoundaryWithTextIterator): * editing/cocoa/EditorCocoa.mm: (WebCore::Editor::fontAttributesForSelectionStart const): * editing/cocoa/HTMLConverter.mm: (WebCore::editingAttributedStringFromRange): * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::shouldTruncateText const): (WebCore::HTMLInputElement::createInnerTextStyle): * html/HTMLTextFormControlElement.cpp: (WebCore::HTMLTextFormControlElement::adjustInnerTextStyle const): * html/shadow/SliderThumbElement.cpp: (WebCore::RenderSliderContainer::layout): * html/shadow/TextControlInnerElements.cpp: (WebCore::TextControlInnerContainer::resolveCustomStyle): (WebCore::TextControlInnerElement::resolveCustomStyle): (WebCore::TextControlPlaceholderElement::resolveCustomStyle): * layout/displaytree/DisplayBox.cpp: (WebCore::Display::Box::borderBox const): (WebCore::Display::Box::contentBox const): * layout/displaytree/DisplayBox.h: * layout/layouttree/LayoutBox.cpp: (WebCore::Layout::Box::isRelativelyPositioned const): (WebCore::Layout::Box::isStickyPositioned const): (WebCore::Layout::Box::isAbsolutelyPositioned const): (WebCore::Layout::Box::isFixedPositioned const): (WebCore::Layout::Box::isFloatingPositioned const): (WebCore::Layout::Box::isOverflowVisible const): * page/DragController.cpp: (WebCore::DragController::draggableElement const): * page/Frame.cpp: (WebCore::Frame::rangeForPoint): * page/FrameView.cpp: (WebCore::paginationModeForRenderStyle): (WebCore::FrameView::applyOverflowToViewport): (WebCore::FrameView::applyPaginationToViewport): (WebCore::FrameView::calculateScrollbarModesForLayout): (WebCore::FrameView::calculateExtendedBackgroundMode const): (WebCore::FrameView::adjustScrollStepForFixedContent): * page/SpatialNavigation.cpp: (WebCore::canScrollInDirection): (WebCore::canBeScrolledIntoView): * page/ios/FrameIOS.mm: (WebCore::Frame::nodeRespondingToScrollWheelEvents): * page/mac/EventHandlerMac.mm: (WebCore::scrolledToEdgeInDominantDirection): * rendering/BorderEdge.cpp: (WebCore::BorderEdge::BorderEdge): (WebCore::BorderEdge::obscuresBackgroundEdge const): (WebCore::BorderEdge::obscuresBackground const): * rendering/BorderEdge.h: (WebCore::BorderEdge::style const): (WebCore::BorderEdge::hasVisibleColorAndStyle const): * rendering/FlexibleBoxAlgorithm.h: (WebCore::FlexLayoutAlgorithm::isMultiline const): * rendering/FloatingObjects.cpp: (WebCore::FloatingObject::FloatingObject): * rendering/GridTrackSizingAlgorithm.cpp: (WebCore::GridTrackSizingAlgorithmStrategy::minSizeForChild const): (WebCore::GridTrackSizingAlgorithm::stretchAutoTracks): * rendering/HitTestResult.cpp: (WebCore::HitTestResult::innerTextIfTruncated const): * rendering/ImageQualityController.cpp: (WebCore::ImageQualityController::interpolationQualityFromStyle): * rendering/InlineBox.h: (WebCore::InlineBox::verticalAlign const): * rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::addToLine): (WebCore::InlineFlowBox::determineSpacingForFlowBoxes): (WebCore::InlineFlowBox::adjustMaxAscentAndDescent): (WebCore::InlineFlowBox::computeLogicalBoxHeights): (WebCore::InlineFlowBox::placeBoxesInBlockDirection): (WebCore::InlineFlowBox::paintFillLayer): * rendering/LogicalSelectionOffsetCaches.h: (WebCore::LogicalSelectionOffsetCaches::containingBlockInfo const): * rendering/RenderBlock.cpp: (WebCore::RenderBlock::removePositionedObjectsIfNeeded): (WebCore::RenderBlock::styleDidChange): (WebCore::RenderBlock::isSelfCollapsingBlock const): (WebCore::RenderBlock::addOverflowFromPositionedObjects): (WebCore::RenderBlock::markFixedPositionObjectForLayoutIfNeeded): (WebCore::RenderBlock::isSelectionRoot const): (WebCore::RenderBlock::selectionGaps): (WebCore::RenderBlock::computeBlockPreferredLogicalWidths const): (WebCore::RenderBlock::adjustBorderBoxLogicalHeightForBoxSizing const): (WebCore::RenderBlock::adjustContentBoxLogicalHeightForBoxSizing const): * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::MarginInfo::MarginInfo): (WebCore::RenderBlockFlow::willCreateColumns const): (WebCore::RenderBlockFlow::marginOffsetForSelfCollapsingBlock): (WebCore::RenderBlockFlow::clearFloatsIfNeeded): (WebCore::RenderBlockFlow::marginBeforeEstimateForChild const): (WebCore::RenderBlockFlow::setMustDiscardMarginBefore): (WebCore::RenderBlockFlow::setMustDiscardMarginAfter): (WebCore::RenderBlockFlow::mustDiscardMarginBefore const): (WebCore::RenderBlockFlow::mustDiscardMarginAfter const): (WebCore::RenderBlockFlow::mustDiscardMarginBeforeForChild const): (WebCore::RenderBlockFlow::mustDiscardMarginAfterForChild const): (WebCore::RenderBlockFlow::mustSeparateMarginBeforeForChild const): (WebCore::RenderBlockFlow::mustSeparateMarginAfterForChild const): (WebCore::RenderBlockFlow::styleDidChange): (WebCore::RenderBlockFlow::styleWillChange): (WebCore::RenderBlockFlow::computeLogicalLocationForFloat): (WebCore::RenderBlockFlow::positionNewFloats): (WebCore::RenderBlockFlow::clearFloats): (WebCore::RenderBlockFlow::getClearDelta): (WebCore::RenderBlockFlow::inlineBlockBaseline const): (WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths const): * rendering/RenderBlockFlow.h: * rendering/RenderBlockLineLayout.cpp: (WebCore::expansionBehaviorForInlineTextBox): (WebCore::isCollapsibleSpace): (WebCore::RenderBlockFlow::layoutRunsAndFloats): (WebCore::RenderBlockFlow::layoutLineBoxes): * rendering/RenderBox.cpp: (WebCore::RenderBox::styleWillChange): (WebCore::RenderBox::styleDidChange): (WebCore::RenderBox::updateFromStyle): (WebCore::RenderBox::includeVerticalScrollbarSize const): (WebCore::RenderBox::includeHorizontalScrollbarSize const): (WebCore::RenderBox::intrinsicScrollbarLogicalWidth const): (WebCore::RenderBox::hasVerticalScrollbarWithAutoBehavior const): (WebCore::RenderBox::hasHorizontalScrollbarWithAutoBehavior const): (WebCore::RenderBox::adjustBorderBoxLogicalWidthForBoxSizing const): (WebCore::RenderBox::adjustBorderBoxLogicalHeightForBoxSizing const): (WebCore::RenderBox::adjustContentBoxLogicalWidthForBoxSizing const): (WebCore::RenderBox::adjustContentBoxLogicalHeightForBoxSizing const): (WebCore::RenderBox::backgroundIsKnownToBeOpaqueInRect const): (WebCore::isCandidateForOpaquenessTest): (WebCore::RenderBox::foregroundIsKnownToBeOpaqueInRect const): (WebCore::RenderBox::backgroundHasOpaqueTopLayer const): (WebCore::RenderBox::computeRectForRepaint const): (WebCore::RenderBox::computeLogicalWidthInFragment const): (WebCore::RenderBox::columnFlexItemHasStretchAlignment const): (WebCore::RenderBox::isStretchingColumnFlexItem const): (WebCore::RenderBox::hasStretchedLogicalWidth const): (WebCore::RenderBox::sizesLogicalWidthToFitContent const): (WebCore::RenderBox::computeLogicalHeight const): (WebCore::RenderBox::computeIntrinsicLogicalContentHeightUsing const): (WebCore::RenderBox::createsNewFormattingContext const): * rendering/RenderBox.h: (WebCore::RenderBox::scrollsOverflowX const): (WebCore::RenderBox::scrollsOverflowY const): (WebCore::RenderBox::selfAlignmentNormalBehavior const): * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::paintFillLayerExtended): (WebCore::RenderBoxModelObject::calculateFillTileSize const): (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry const): (WebCore::styleRequiresClipPolygon): (WebCore::borderStyleFillsBorderArea): (WebCore::borderStyleHasInnerDetail): (WebCore::borderStyleIsDottedOrDashed): (WebCore::borderStyleHasUnmatchedColorsAtCorner): (WebCore::borderStylesRequireMitre): (WebCore::RenderBoxModelObject::paintBorder): (WebCore::RenderBoxModelObject::drawBoxSideFromPath): (WebCore::RenderBoxModelObject::boxShadowShouldBeAppliedToBackground const): * rendering/RenderBoxModelObject.h: * rendering/RenderDeprecatedFlexibleBox.cpp: (WebCore::FlexBoxIterator::FlexBoxIterator): (WebCore::RenderDeprecatedFlexibleBox::layoutBlock): (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox): (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox): * rendering/RenderDeprecatedFlexibleBox.h: * rendering/RenderElement.cpp: (WebCore::RenderElement::adjustStyleDifference const): (WebCore::RenderElement::shouldRepaintForStyleDifference const): (WebCore::RenderElement::initializeStyle): (WebCore::RenderElement::setStyle): (WebCore::RenderElement::didAttachChild): (WebCore::RenderElement::propagateStyleToAnonymousChildren): (WebCore::RenderElement::styleWillChange): (WebCore::RenderElement::styleDidChange): (WebCore::mustRepaintFillLayers): (WebCore::RenderElement::selectionColor const): (WebCore::RenderElement::selectionBackgroundColor const): (WebCore::RenderElement::drawLineForBoxSide const): (WebCore::RenderElement::paintFocusRing): (WebCore::RenderElement::paintOutline): (WebCore::RenderElement::updateOutlineAutoAncestor): (WebCore::includeNonFixedHeight): * rendering/RenderElement.h: (WebCore::RenderElement::hasHiddenBackface const): (WebCore::RenderElement::canContainAbsolutelyPositionedObjects const): * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::firstLineBaseline const): (WebCore::contentAlignmentNormalBehavior): (WebCore::RenderFlexibleBox::styleDidChange): (WebCore::RenderFlexibleBox::repositionLogicalHeightDependentFlexItems): (WebCore::RenderFlexibleBox::isLeftToRightFlow const): (WebCore::RenderFlexibleBox::isMultiline const): (WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax): (WebCore::RenderFlexibleBox::crossSizeForPercentageResolution): (WebCore::initialJustifyContentOffset): (WebCore::justifyContentSpaceBetweenChildren): (WebCore::alignmentOffset): (WebCore::RenderFlexibleBox::staticMainAxisPositionForPositionedChild): (WebCore::RenderFlexibleBox::staticCrossAxisPositionForPositionedChild): (WebCore::RenderFlexibleBox::alignmentForChild const): (WebCore::RenderFlexibleBox::needToStretchChildLogicalHeight const): (WebCore::RenderFlexibleBox::mainAxisOverflowForChild const): (WebCore::RenderFlexibleBox::crossAxisOverflowForChild const): (WebCore::RenderFlexibleBox::layoutAndPlaceChildren): (WebCore::RenderFlexibleBox::layoutColumnReverse): (WebCore::initialAlignContentOffset): (WebCore::alignContentSpaceBetweenChildren): (WebCore::RenderFlexibleBox::alignFlexLines): (WebCore::RenderFlexibleBox::alignChildren): * rendering/RenderFlexibleBox.h: * rendering/RenderFragmentContainer.cpp: (WebCore::RenderFragmentContainer::overflowRectForFragmentedFlowPortion): * rendering/RenderFullScreen.cpp: (WebCore::createFullScreenStyle): * rendering/RenderFullScreen.h: * rendering/RenderGrid.cpp: (WebCore::RenderGrid::selfAlignmentChangedToStretch const): (WebCore::RenderGrid::selfAlignmentChangedFromStretch const): (WebCore::RenderGrid::styleDidChange): (WebCore::contentAlignmentNormalBehaviorGrid): (WebCore::computeOverflowAlignmentOffset): (WebCore::RenderGrid::isInlineBaselineAlignedChild const): (WebCore::RenderGrid::columnAxisPositionForChild const): (WebCore::RenderGrid::rowAxisPositionForChild const): (WebCore::RenderGrid::resolveAutoStartGridPosition const): (WebCore::RenderGrid::resolveAutoEndGridPosition const): (WebCore::resolveContentDistributionFallback): (WebCore::contentDistributionOffset): (WebCore::RenderGrid::computeContentPositionAndDistributionOffset const): * rendering/RenderGrid.h: * rendering/RenderIFrame.cpp: (WebCore::RenderIFrame::requiresLayer const): * rendering/RenderImage.cpp: (WebCore::RenderImage::styleDidChange): (WebCore::RenderImage::foregroundIsKnownToBeOpaqueInRect const): * rendering/RenderInline.cpp: (WebCore::RenderInline::styleWillChange): (WebCore::RenderInline::updateAlwaysCreateLineBoxes): (WebCore::RenderInline::paintOutline): (WebCore::RenderInline::paintOutlineForLine): * rendering/RenderLayer.cpp: (WebCore::isContainerForPositioned): (WebCore::RenderLayer::enclosingAncestorForPosition const): (WebCore::accumulateOffsetTowardsAncestor): (WebCore::RenderLayer::canResize const): (WebCore::RenderLayer::resize): (WebCore::RenderLayer::scrollCornerRect const): (WebCore::resizerCornerRect): (WebCore::RenderLayer::hasOverflowControls const): (WebCore::styleRequiresScrollbar): (WebCore::styleDefinesAutomaticScrollbar): (WebCore::RenderLayer::updateScrollbarsAfterLayout): (WebCore::RenderLayer::paintResizer): (WebCore::RenderLayer::hitTestOverflowControls): (WebCore::RenderLayer::hitTestLayer): (WebCore::RenderLayer::calculateClipRects const): * rendering/RenderLayer.h: * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::updateGeometry): (WebCore::canDirectlyCompositeBackgroundBackgroundImage): (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer const): (WebCore::backgroundRectForBox): * rendering/RenderLayerCompositor.cpp: (WebCore::isScrollableOverflow): (WebCore::styleChangeRequiresLayerRebuild): (WebCore::RenderLayerCompositor::layerStyleChanged): (WebCore::RenderLayerCompositor::reasonsForCompositing const): (WebCore::RenderLayerCompositor::requiresCompositingForBackfaceVisibility const): (WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason const): (WebCore::RenderLayerCompositor::isViewportConstrainedFixedOrStickyLayer const): (WebCore::RenderLayerCompositor::requiresCompositingForPosition const): (WebCore::RenderLayerCompositor::layerHas3DContent const): (WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer): * rendering/RenderLayerModelObject.cpp: (WebCore::RenderLayerModelObject::styleWillChange): * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::adjustInnerStyle): * rendering/RenderMultiColumnFlow.cpp: (WebCore::RenderMultiColumnFlow::isColumnSpanningDescendant const): * rendering/RenderMultiColumnSet.cpp: (WebCore::RenderMultiColumnSet::requiresBalancing const): (WebCore::RenderMultiColumnSet::paintColumnRules): * rendering/RenderMultiColumnSpannerPlaceholder.cpp: (WebCore::RenderMultiColumnSpannerPlaceholder::createAnonymous): * rendering/RenderObject.cpp: (WebCore::RenderObject::propagateRepaintToParentWithOutlineAutoIfNeeded const): (WebCore::containerForElement): (WebCore::RenderObject::calculateBorderStyleColor): * rendering/RenderObject.h: (WebCore::RenderObject::isFixedPositioned const): (WebCore::RenderObject::isAbsolutelyPositioned const): (WebCore::RenderObject::setPositionState): (WebCore::RenderObject::RenderObjectBitfields::setPositionedState): (WebCore::RenderObject::RenderObjectBitfields::clearPositionedState): * rendering/RenderQuote.cpp: (WebCore::RenderQuote::styleDidChange): (WebCore::RenderQuote::computeText const): (WebCore::RenderQuote::isOpen const): * rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::layout): (WebCore::RenderReplaced::setNeedsLayoutIfNeededAfterIntrinsicSizeChange): (WebCore::RenderReplaced::replacedContentRect const): * rendering/RenderScrollbarPart.cpp: (WebCore::RenderScrollbarPart::styleDidChange): * rendering/RenderTable.cpp: (WebCore::RenderTable::styleDidChange): (WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth): (WebCore::RenderTable::convertStyleLogicalHeightToComputedHeight): (WebCore::RenderTable::calcBorderStart const): (WebCore::RenderTable::calcBorderEnd const): (WebCore::RenderTable::outerBorderBefore const): (WebCore::RenderTable::outerBorderAfter const): (WebCore::RenderTable::outerBorderStart const): (WebCore::RenderTable::outerBorderEnd const): * rendering/RenderTable.h: (WebCore::RenderTable::collapseBorders const): * rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::computeIntrinsicPadding): (WebCore::RenderTableCell::styleDidChange): (WebCore::compareBorders): (WebCore::chooseBorder): (WebCore::emptyBorder): (WebCore::RenderTableCell::computeCollapsedStartBorder const): (WebCore::RenderTableCell::computeCollapsedEndBorder const): (WebCore::RenderTableCell::computeCollapsedBeforeBorder const): (WebCore::RenderTableCell::computeCollapsedAfterBorder const): (WebCore::CollapsedBorders::addBorder): (WebCore::RenderTableCell::paintCollapsedBorders): (WebCore::RenderTableCell::scrollbarsChanged): * rendering/RenderTableCell.h: (WebCore::RenderTableCell::logicalHeightForRowSizing const): (WebCore::RenderTableCell::isBaselineAligned const): * rendering/RenderTableRow.cpp: (WebCore::RenderTableRow::styleDidChange): * rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::calcOuterBorderBefore const): (WebCore::RenderTableSection::calcOuterBorderAfter const): (WebCore::RenderTableSection::calcOuterBorderStart const): (WebCore::RenderTableSection::calcOuterBorderEnd const): (WebCore::RenderTableSection::paintRowGroupBorder): (WebCore::RenderTableSection::paintRowGroupBorderIfRequired): (WebCore::RenderTableSection::cachedCollapsedBorder): * rendering/RenderTableSection.h: * rendering/RenderText.cpp: (WebCore::RenderText::styleDidChange): (WebCore::RenderText::absoluteQuadsClippedToEllipsis const): (WebCore::isSpaceAccordingToStyle): (WebCore::mapLineBreakToIteratorMode): (WebCore::RenderText::computePreferredLogicalWidths): (WebCore::RenderText::setRenderedText): (WebCore::RenderText::textWithoutConvertingBackslashToYenSymbol const): (WebCore::RenderText::momentarilyRevealLastTypedCharacter): * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::computeLogicalHeight const): * rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::styleDidChange): * rendering/RenderTheme.cpp: (WebCore::RenderTheme::extractControlStatesForRenderer const): * rendering/RenderThemeIOS.mm: (WebCore::adjustInputElementButtonStyle): * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::updateFocusedState): (WebCore::RenderThemeMac::paintCellAndSetFocusedElementNeedsRepaintIfNecessary): (WebCore::RenderThemeMac::adjustSearchFieldStyle const): * rendering/RenderTreeAsText.cpp: (WebCore::printBorderStyle): * rendering/RenderVideo.cpp: (WebCore::RenderVideo::updatePlayer): * rendering/RenderView.cpp: (WebCore::RenderView::RenderView): (WebCore::rendererObscuresBackground): * rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::verticalPositionForBox): * rendering/SimpleLineLayout.cpp: (WebCore::SimpleLineLayout::canUseForStyle): (WebCore::SimpleLineLayout::canUseForWithReason): * rendering/SimpleLineLayoutTextFragmentIterator.cpp: (WebCore::SimpleLineLayout::TextFragmentIterator::Style::Style): * rendering/TextPaintStyle.cpp: (WebCore::computeTextPaintStyle): * rendering/line/BreakingContext.h: (WebCore::BreakingContext::handleBR): (WebCore::shouldAddBorderPaddingMargin): (WebCore::BreakingContext::handleText): (WebCore::BreakingContext::optimalLineBreakLocationForTrailingWord): * rendering/line/LineBreaker.cpp: (WebCore::LineBreaker::reset): * rendering/line/LineBreaker.h: (WebCore::LineBreaker::clear): * rendering/line/LineInlineHeaders.h: (WebCore::skipNonBreakingSpace): * rendering/line/LineWidth.cpp: (WebCore::requiresIndent): * rendering/style/BorderData.h: (WebCore::BorderData::borderLeftWidth const): (WebCore::BorderData::borderRightWidth const): (WebCore::BorderData::borderTopWidth const): (WebCore::BorderData::borderBottomWidth const): * rendering/style/BorderValue.h: (WebCore::BorderValue::BorderValue): (WebCore::BorderValue::nonZero const): (WebCore::BorderValue::isVisible const): (WebCore::BorderValue::style const): * rendering/style/CollapsedBorderValue.h: (WebCore::CollapsedBorderValue::CollapsedBorderValue): (WebCore::CollapsedBorderValue::width const): (WebCore::CollapsedBorderValue::style const): (WebCore::CollapsedBorderValue::exists const): (WebCore::CollapsedBorderValue::precedence const): * rendering/style/FillLayer.cpp: (WebCore::FillLayer::FillLayer): (WebCore::clipMax): (WebCore::FillLayer::computeClipMax const): (WebCore::FillLayer::hasRepeatXY const): (WebCore::FillLayer::hasFixedImage const): * rendering/style/FillLayer.h: (WebCore::FillSize::FillSize): (WebCore::FillLayer::attachment const): (WebCore::FillLayer::clip const): (WebCore::FillLayer::origin const): (WebCore::FillLayer::repeatX const): (WebCore::FillLayer::repeatY const): (WebCore::FillLayer::sizeType const): (WebCore::FillLayer::size const): (WebCore::FillLayer::maskSourceType const): (WebCore::FillLayer::isSizeSet const): (WebCore::FillLayer::setAttachment): (WebCore::FillLayer::setClip): (WebCore::FillLayer::setOrigin): (WebCore::FillLayer::setRepeatX): (WebCore::FillLayer::setRepeatY): (WebCore::FillLayer::setComposite): (WebCore::FillLayer::setBlendMode): (WebCore::FillLayer::setSizeType): (WebCore::FillLayer::setSize): (WebCore::FillLayer::setMaskSourceType): (WebCore::FillLayer::clearSize): (WebCore::FillLayer::type const): (WebCore::FillLayer::initialFillAttachment): (WebCore::FillLayer::initialFillClip): (WebCore::FillLayer::initialFillOrigin): (WebCore::FillLayer::initialFillRepeatX): (WebCore::FillLayer::initialFillRepeatY): (WebCore::FillLayer::initialFillComposite): (WebCore::FillLayer::initialFillBlendMode): (WebCore::FillLayer::initialFillSize): (WebCore::FillLayer::initialFillXPosition): (WebCore::FillLayer::initialFillYPosition): (WebCore::FillLayer::initialFillImage): (WebCore::FillLayer::initialFillMaskSourceType): * rendering/style/LineClampValue.h: (WebCore::LineClampValue::LineClampValue): (WebCore::LineClampValue::isPercentage const): * rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::RenderStyle): (WebCore::resolvedSelfAlignment): (WebCore::RenderStyle::resolvedAlignSelf const): (WebCore::RenderStyle::resolvedJustifySelf const): (WebCore::resolvedContentAlignment): (WebCore::resolvedContentAlignmentPosition): (WebCore::resolvedContentAlignmentDistribution): (WebCore::RenderStyle::resolvedJustifyContentDistribution const): (WebCore::RenderStyle::resolvedAlignContentDistribution const): (WebCore::RenderStyle::changeRequiresLayout const): (WebCore::RenderStyle::changeRequiresPositionedLayoutOnly const): (WebCore::RenderStyle::changeRequiresLayerRepaint const): (WebCore::RenderStyle::changeRequiresRepaint const): (WebCore::RenderStyle::changeRequiresRepaintIfTextOrBorderOrOutline const): (WebCore::RenderStyle::changeRequiresRecompositeLayer const): (WebCore::RenderStyle::diff const): (WebCore::RenderStyle::diffRequiresLayerRepaint const): (WebCore::allLayersAreFixed): (WebCore::RenderStyle::colorIncludingFallback const): (WebCore::RenderStyle::setColumnStylesFromPaginationMode): (WebCore::RenderStyle::outlineWidth const): (WebCore::RenderStyle::outlineOffset const): * rendering/style/RenderStyle.h: (WebCore::RenderStyle::isFloating const): (WebCore::RenderStyle::position const): (WebCore::RenderStyle::hasOutOfFlowPosition const): (WebCore::RenderStyle::hasInFlowPosition const): (WebCore::RenderStyle::hasViewportConstrainedPosition const): (WebCore::RenderStyle::floating const): (WebCore::RenderStyle::borderLeftStyle const): (WebCore::RenderStyle::borderRightStyle const): (WebCore::RenderStyle::borderTopStyle const): (WebCore::RenderStyle::borderBottomStyle const): (WebCore::RenderStyle::hasOutline const): (WebCore::RenderStyle::outlineStyle const): (WebCore::RenderStyle::overflowX const): (WebCore::RenderStyle::overflowY const): (WebCore::RenderStyle::overflowInlineDirection const): (WebCore::RenderStyle::overflowBlockDirection const): (WebCore::RenderStyle::verticalAlign const): (WebCore::RenderStyle::clear const): (WebCore::RenderStyle::tableLayout const): (WebCore::RenderStyle::backgroundRepeatX const): (WebCore::RenderStyle::backgroundRepeatY const): (WebCore::RenderStyle::backgroundAttachment const): (WebCore::RenderStyle::backgroundClip const): (WebCore::RenderStyle::backgroundOrigin const): (WebCore::RenderStyle::backgroundSizeType const): (WebCore::RenderStyle::maskRepeatX const): (WebCore::RenderStyle::maskRepeatY const): (WebCore::RenderStyle::maskClip const): (WebCore::RenderStyle::maskOrigin const): (WebCore::RenderStyle::maskSizeType const): (WebCore::RenderStyle::borderCollapse const): (WebCore::RenderStyle::boxAlign const): (WebCore::RenderStyle::boxDirection const): (WebCore::RenderStyle::boxLines const): (WebCore::RenderStyle::boxOrient const): (WebCore::RenderStyle::boxPack const): (WebCore::RenderStyle::flexDirection const): (WebCore::RenderStyle::isColumnFlexDirection const): (WebCore::RenderStyle::isReverseFlexDirection const): (WebCore::RenderStyle::flexWrap const): (WebCore::RenderStyle::boxDecorationBreak const): (WebCore::RenderStyle::boxSizing const): (WebCore::RenderStyle::userModify const): (WebCore::RenderStyle::userDrag const): (WebCore::RenderStyle::userSelect const): (WebCore::RenderStyle::marginBeforeCollapse const): (WebCore::RenderStyle::marginAfterCollapse const): (WebCore::RenderStyle::wordBreak const): (WebCore::RenderStyle::overflowWrap const): (WebCore::RenderStyle::nbspMode const): (WebCore::RenderStyle::resize const): (WebCore::RenderStyle::columnRuleStyle const): (WebCore::RenderStyle::hasTextCombine const): (WebCore::RenderStyle::transformStyle3D const): (WebCore::RenderStyle::preserves3D const): (WebCore::RenderStyle::backfaceVisibility const): (WebCore::RenderStyle::textSecurity const): (WebCore::RenderStyle::imageRendering const): (WebCore::RenderStyle::setIsolation): (WebCore::RenderStyle::hasIsolation const): (WebCore::RenderStyle::isolation const): (WebCore::RenderStyle::setPosition): (WebCore::RenderStyle::setFloating): (WebCore::RenderStyle::setBackgroundSize): (WebCore::RenderStyle::setBorderLeftStyle): (WebCore::RenderStyle::setBorderRightStyle): (WebCore::RenderStyle::setBorderTopStyle): (WebCore::RenderStyle::setBorderBottomStyle): (WebCore::RenderStyle::setOutlineStyleIsAuto): (WebCore::RenderStyle::setOutlineStyle): (WebCore::RenderStyle::setOverflowX): (WebCore::RenderStyle::setOverflowY): (WebCore::RenderStyle::setVerticalAlign): (WebCore::RenderStyle::setVerticalAlignLength): (WebCore::RenderStyle::setClear): (WebCore::RenderStyle::setTableLayout): (WebCore::RenderStyle::setImageRendering): (WebCore::RenderStyle::clearBackgroundLayers): (WebCore::RenderStyle::clearMaskLayers): (WebCore::RenderStyle::setBorderCollapse): (WebCore::RenderStyle::setAspectRatioType): (WebCore::RenderStyle::setPrintColorAdjust): (WebCore::RenderStyle::setBoxAlign): (WebCore::RenderStyle::setBoxDirection): (WebCore::RenderStyle::setBoxLines): (WebCore::RenderStyle::setBoxOrient): (WebCore::RenderStyle::setBoxPack): (WebCore::RenderStyle::setBoxSizing): (WebCore::RenderStyle::setFlexDirection): (WebCore::RenderStyle::setFlexWrap): (WebCore::RenderStyle::setBoxDecorationBreak): (WebCore::RenderStyle::setUserModify): (WebCore::RenderStyle::setUserDrag): (WebCore::RenderStyle::setUserSelect): (WebCore::RenderStyle::setTextOverflow): (WebCore::RenderStyle::setMarginBeforeCollapse): (WebCore::RenderStyle::setMarginAfterCollapse): (WebCore::RenderStyle::setWordBreak): (WebCore::RenderStyle::setOverflowWrap): (WebCore::RenderStyle::setNBSPMode): (WebCore::RenderStyle::setLineBreak): (WebCore::RenderStyle::setResize): (WebCore::RenderStyle::setColumnFill): (WebCore::RenderStyle::setColumnRuleStyle): (WebCore::RenderStyle::setColumnSpan): (WebCore::RenderStyle::setTextCombine): (WebCore::RenderStyle::setObjectFit): (WebCore::RenderStyle::setTransformStyle3D): (WebCore::RenderStyle::setBackfaceVisibility): (WebCore::RenderStyle::setTextSecurity): (WebCore::RenderStyle::initialOverflowX): (WebCore::RenderStyle::initialOverflowY): (WebCore::RenderStyle::initialClear): (WebCore::RenderStyle::initialPosition): (WebCore::RenderStyle::initialVerticalAlign): (WebCore::RenderStyle::initialFloating): (WebCore::RenderStyle::initialTableLayout): (WebCore::RenderStyle::initialBorderCollapse): (WebCore::RenderStyle::initialBorderStyle): (WebCore::RenderStyle::initialOutlineStyleIsAuto): (WebCore::RenderStyle::initialTextCombine): (WebCore::RenderStyle::initialObjectFit): (WebCore::RenderStyle::initialBoxAlign): (WebCore::RenderStyle::initialBoxDecorationBreak): (WebCore::RenderStyle::initialBoxDirection): (WebCore::RenderStyle::initialBoxLines): (WebCore::RenderStyle::initialBoxOrient): (WebCore::RenderStyle::initialBoxPack): (WebCore::RenderStyle::initialBoxSizing): (WebCore::RenderStyle::initialJustifyItems): (WebCore::RenderStyle::initialSelfAlignment): (WebCore::RenderStyle::initialDefaultAlignment): (WebCore::RenderStyle::initialContentAlignment): (WebCore::RenderStyle::initialFlexDirection): (WebCore::RenderStyle::initialFlexWrap): (WebCore::RenderStyle::initialUserModify): (WebCore::RenderStyle::initialUserDrag): (WebCore::RenderStyle::initialUserSelect): (WebCore::RenderStyle::initialTextOverflow): (WebCore::RenderStyle::initialMarginBeforeCollapse): (WebCore::RenderStyle::initialMarginAfterCollapse): (WebCore::RenderStyle::initialWordBreak): (WebCore::RenderStyle::initialOverflowWrap): (WebCore::RenderStyle::initialNBSPMode): (WebCore::RenderStyle::initialLineBreak): (WebCore::RenderStyle::initialResize): (WebCore::RenderStyle::initialAspectRatioType): (WebCore::RenderStyle::initialColumnFill): (WebCore::RenderStyle::initialColumnSpan): (WebCore::RenderStyle::initialTransformStyle3D): (WebCore::RenderStyle::initialBackfaceVisibility): (WebCore::RenderStyle::initialImageRendering): (WebCore::RenderStyle::initialPrintColorAdjust): (WebCore::RenderStyle::initialTextIndentLine): (WebCore::RenderStyle::initialTextIndentType): (WebCore::RenderStyle::initialTextSecurity): (WebCore::RenderStyle::initialIsolation): (WebCore::collapsedBorderStyle): (WebCore::RenderStyle::breakOnlyAfterWhiteSpace const): (WebCore::RenderStyle::breakWords const): (WebCore::RenderStyle::setTextOrientation): * rendering/style/RenderStyleConstants.cpp: (WebCore::operator<<): * rendering/style/RenderStyleConstants.h: (WebCore::operator|): (WebCore::operator|=): (WebCore::operator| ): Deleted. (WebCore::operator|= ): Deleted. * rendering/style/SVGRenderStyle.cpp: (WebCore::SVGRenderStyle::diff const): * rendering/style/StyleBackgroundData.cpp: (WebCore::StyleBackgroundData::StyleBackgroundData): * rendering/style/StyleBoxData.cpp: (WebCore::StyleBoxData::StyleBoxData): * rendering/style/StyleBoxData.h: (WebCore::StyleBoxData::boxSizing const): (WebCore::StyleBoxData::boxDecorationBreak const): * rendering/style/StyleContentAlignmentData.h: (WebCore::StyleContentAlignmentData::StyleContentAlignmentData): (WebCore::StyleContentAlignmentData::setPosition): (WebCore::StyleContentAlignmentData::setDistribution): (WebCore::StyleContentAlignmentData::setOverflow): (WebCore::StyleContentAlignmentData::distribution const): * rendering/style/StyleDeprecatedFlexibleBoxData.cpp: (WebCore::StyleDeprecatedFlexibleBoxData::StyleDeprecatedFlexibleBoxData): * rendering/style/StyleDeprecatedFlexibleBoxData.h: * rendering/style/StyleFlexibleBoxData.cpp: (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData): * rendering/style/StyleFlexibleBoxData.h: * rendering/style/StyleMultiColData.cpp: (WebCore::StyleMultiColData::StyleMultiColData): * rendering/style/StyleMultiColData.h: (WebCore::StyleMultiColData::ruleWidth const): * rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): * rendering/style/StyleRareInheritedData.h: * rendering/style/StyleRareNonInheritedData.cpp: (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): * rendering/style/StyleRareNonInheritedData.h: * rendering/style/StyleSelfAlignmentData.h: (WebCore::StyleSelfAlignmentData::StyleSelfAlignmentData): (WebCore::StyleSelfAlignmentData::setPosition): (WebCore::StyleSelfAlignmentData::setPositionType): (WebCore::StyleSelfAlignmentData::setOverflow): * rendering/svg/RenderSVGBlock.cpp: (WebCore::RenderSVGBlock::styleDidChange): * rendering/svg/RenderSVGGradientStop.cpp: (WebCore::RenderSVGGradientStop::styleDidChange): * rendering/svg/RenderSVGInline.cpp: (WebCore::RenderSVGInline::styleDidChange): * rendering/svg/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::styleDidChange): * rendering/svg/RenderSVGModelObject.cpp: (WebCore::RenderSVGModelObject::styleDidChange): * rendering/svg/RenderSVGResourceContainer.cpp: (WebCore::RenderSVGResourceContainer::registerResource): * rendering/svg/RenderSVGResourceFilterPrimitive.cpp: (WebCore::RenderSVGResourceFilterPrimitive::styleDidChange): * rendering/svg/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::layout): (WebCore::RenderSVGRoot::shouldApplyViewportClip const): (WebCore::RenderSVGRoot::styleDidChange): * rendering/svg/SVGInlineTextBox.cpp: (WebCore::SVGInlineTextBox::paintText): * rendering/svg/SVGRenderSupport.cpp: (WebCore::SVGRenderSupport::isOverflowHidden): * rendering/svg/SVGResourcesCache.cpp: (WebCore::SVGResourcesCache::clientStyleChanged): * rendering/updating/RenderTreeBuilder.cpp: (WebCore::RenderTreeBuilder::attachToRenderElementInternal): * rendering/updating/RenderTreeBuilderBlock.cpp: (WebCore::RenderTreeBuilder::Block::insertChildToContinuation): * rendering/updating/RenderTreeBuilderFirstLetter.cpp: (WebCore::styleForFirstLetter): * rendering/updating/RenderTreeBuilderMultiColumn.cpp: (WebCore::isValidColumnSpanner): (WebCore::RenderTreeBuilder::MultiColumn::resolveMovedChild): (WebCore::RenderTreeBuilder::MultiColumn::multiColumnRelativeWillBeRemoved): * rendering/updating/RenderTreeUpdater.cpp: (WebCore::RenderTreeUpdater::updateElementRenderer): * style/StyleResolveForDocument.cpp: (WebCore::Style::resolveForDocument): Source/WebKit: * WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::rangeForWebSelectionAtPosition): (WebKit::WebPage::getPositionInformation): Update for new enum names. Canonical link: https://commits.webkit.org/201277@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@232018 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-05-21 16:55:45 +00:00
else if (isAfterHardLineBreak && style.textIndentLine() == TextIndentLine::EachLine)
shouldIndentText = IndentText;
Modernize RenderStyleConstants.h - Part 1 https://bugs.webkit.org/show_bug.cgi?id=185809 Patch by Sam Weinig <sam@webkit.org> on 2018-05-21 Reviewed by Yusuke Suzuki. Source/WebCore: Modernized the first set of enums in RenderStyleConstants.h by: - Converting them to enum classes - Renaming them to remove unnecessary prefix 'E's - Renaming values to take advantage of enum class scoping (e.g. StyleDifferenceEqual -> StyleDifference::Equal) - Renaming to match modern conventions (e.g BNONE -> None) - Reformatting them so that each value is on its own line. Modernizes the following enums: PrintColorAdjust StyleDifference StyleDifferenceContextSensitiveProperty ColumnFill ColumnSpan BorderCollapse (renamed from EBorderCollapse) BorderStyle (renamed from EBorderStyle) BorderPrecedence (renamed from EBorderPrecedence) OutlineIsAuto PositionType (renamed from EPosition) Float (renamed from EFloat) MarginCollapse (renamed from EMarginCollapse) BoxDecorationBreak (renamed from EBoxDecorationBreak) BoxSizing (renamed from EBoxSizing) Overflow (renamed from EOverflow) VerticalAlign (renamed from EVerticalAlign) Clear (renamed from EClear) TableLayoutType (renamed from ETableLayout) TextCombine FillAttachment (renamed from EFillAttachment) FillBox (renamed from EFillBox) FillRepeat (renamed from EFillRepeat) FillLayerType (renamed from EFillLayerType) FillSizeType (renamed from EFillSizeType) MaskSourceType (renamed from EMaskSourceType) BoxPack (renamed from EBoxPack) BoxAlignment (renamed from EBoxAlignment) BoxOrient (renamed from EBoxOrient) BoxLines (renamed from EBoxLines) BoxDirection (renamed from EBoxDirection) AlignContent (renamed from EAlignContent) FlexDirection (renamed from EFlexDirection) FlexWrap (renamed from EFlexWrap) ItemPosition OverflowAlignment ItemPositionType ContentPosition ContentDistribution (renamed from ContentDistributionType) TextSecurity (renamed from ETextSecurity) UserModify (renamed from EUserModify) UserDrag (renamed from EUserDrag) UserSelect (renamed from EUserSelect) ObjectFit AspectRatioType WordBreak (renamed from EWordBreak) OverflowWrap (renamed from EOverflowWrap) NBSPMode (renamed from ENBSPMode) LineBreak Resize (renamed from EResize) QuoteType TransformStyle3D (renamed from ETransformStyle3D) BackfaceVisibility (renamed from EBackfaceVisibility) LineClamp (renamed from ELineClamp) TextOverflow ImageRendering (renamed from EImageRendering) TextIndentLine TextIndentType Isolation * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (AXAttributeStringSetStyle): * css/BasicShapeFunctions.cpp: (WebCore::valueForCenterCoordinate): (WebCore::valueForBasicShape): * css/CSSComputedStyleDeclaration.cpp: (WebCore::sizingBox): (WebCore::fillRepeatToCSSValue): (WebCore::fillSourceTypeToCSSValue): (WebCore::fillSizeToCSSValue): (WebCore::valueForItemPositionWithOverflowAlignment): (WebCore::valueForContentPositionAndDistributionWithOverflowAlignment): (WebCore::ComputedStyleExtractor::valueForPropertyinStyle): * css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::operator LineClampValue const): (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::operator ColumnFill const): (WebCore::CSSPrimitiveValue::operator ColumnSpan const): (WebCore::CSSPrimitiveValue::operator PrintColorAdjust const): (WebCore::CSSPrimitiveValue::operator BorderStyle const): (WebCore::CSSPrimitiveValue::operator OutlineIsAuto const): (WebCore::CSSPrimitiveValue::operator BackfaceVisibility const): (WebCore::CSSPrimitiveValue::operator FillAttachment const): (WebCore::CSSPrimitiveValue::operator FillBox const): (WebCore::CSSPrimitiveValue::operator FillRepeat const): (WebCore::CSSPrimitiveValue::operator BoxPack const): (WebCore::CSSPrimitiveValue::operator BoxAlignment const): (WebCore::CSSPrimitiveValue::operator BoxDecorationBreak const): (WebCore::CSSPrimitiveValue::operator BoxSizing const): (WebCore::CSSPrimitiveValue::operator BoxDirection const): (WebCore::CSSPrimitiveValue::operator BoxLines const): (WebCore::CSSPrimitiveValue::operator BoxOrient const): (WebCore::CSSPrimitiveValue::operator Clear const): (WebCore::CSSPrimitiveValue::operator FlexDirection const): (WebCore::CSSPrimitiveValue::operator AlignContent const): (WebCore::CSSPrimitiveValue::operator FlexWrap const): (WebCore::CSSPrimitiveValue::operator Float const): (WebCore::CSSPrimitiveValue::operator LineBreak const): (WebCore::CSSPrimitiveValue::operator MarginCollapse const): (WebCore::CSSPrimitiveValue::operator NBSPMode const): (WebCore::CSSPrimitiveValue::operator Overflow const): (WebCore::CSSPrimitiveValue::operator PositionType const): (WebCore::CSSPrimitiveValue::operator Resize const): (WebCore::CSSPrimitiveValue::operator TableLayoutType const): (WebCore::CSSPrimitiveValue::operator TextSecurity const): (WebCore::CSSPrimitiveValue::operator UserDrag const): (WebCore::CSSPrimitiveValue::operator UserModify const): (WebCore::CSSPrimitiveValue::operator UserSelect const): (WebCore::CSSPrimitiveValue::operator VerticalAlign const): (WebCore::CSSPrimitiveValue::operator WordBreak const): (WebCore::CSSPrimitiveValue::operator OverflowWrap const): (WebCore::CSSPrimitiveValue::operator TextCombine const): (WebCore::CSSPrimitiveValue::operator TextOverflow const): (WebCore::CSSPrimitiveValue::operator ObjectFit const): (WebCore::CSSPrimitiveValue::operator Isolation const): (WebCore::CSSPrimitiveValue::operator BorderCollapse const): (WebCore::CSSPrimitiveValue::operator ImageRendering const): (WebCore::CSSPrimitiveValue::operator TransformStyle3D const): (WebCore::CSSPrimitiveValue::operator ItemPosition const): (WebCore::CSSPrimitiveValue::operator OverflowAlignment const): (WebCore::CSSPrimitiveValue::operator ContentPosition const): (WebCore::CSSPrimitiveValue::operator ContentDistribution const): (WebCore::CSSPrimitiveValue::operator EBorderStyle const): Deleted. (WebCore::CSSPrimitiveValue::operator EBackfaceVisibility const): Deleted. (WebCore::CSSPrimitiveValue::operator EFillAttachment const): Deleted. (WebCore::CSSPrimitiveValue::operator EFillBox const): Deleted. (WebCore::CSSPrimitiveValue::operator EFillRepeat const): Deleted. (WebCore::CSSPrimitiveValue::operator EBoxPack const): Deleted. (WebCore::CSSPrimitiveValue::operator EBoxAlignment const): Deleted. (WebCore::CSSPrimitiveValue::operator EBoxDecorationBreak const): Deleted. (WebCore::CSSPrimitiveValue::operator EBoxSizing const): Deleted. (WebCore::CSSPrimitiveValue::operator EBoxDirection const): Deleted. (WebCore::CSSPrimitiveValue::operator EBoxLines const): Deleted. (WebCore::CSSPrimitiveValue::operator EBoxOrient const): Deleted. (WebCore::CSSPrimitiveValue::operator EClear const): Deleted. (WebCore::CSSPrimitiveValue::operator EFlexDirection const): Deleted. (WebCore::CSSPrimitiveValue::operator EAlignContent const): Deleted. (WebCore::CSSPrimitiveValue::operator EFlexWrap const): Deleted. (WebCore::CSSPrimitiveValue::operator EFloat const): Deleted. (WebCore::CSSPrimitiveValue::operator EMarginCollapse const): Deleted. (WebCore::CSSPrimitiveValue::operator ENBSPMode const): Deleted. (WebCore::CSSPrimitiveValue::operator EOverflow const): Deleted. (WebCore::CSSPrimitiveValue::operator EPosition const): Deleted. (WebCore::CSSPrimitiveValue::operator EResize const): Deleted. (WebCore::CSSPrimitiveValue::operator ETableLayout const): Deleted. (WebCore::CSSPrimitiveValue::operator ETextSecurity const): Deleted. (WebCore::CSSPrimitiveValue::operator EUserDrag const): Deleted. (WebCore::CSSPrimitiveValue::operator EUserModify const): Deleted. (WebCore::CSSPrimitiveValue::operator EUserSelect const): Deleted. (WebCore::CSSPrimitiveValue::operator EVerticalAlign const): Deleted. (WebCore::CSSPrimitiveValue::operator EWordBreak const): Deleted. (WebCore::CSSPrimitiveValue::operator EOverflowWrap const): Deleted. (WebCore::CSSPrimitiveValue::operator EBorderCollapse const): Deleted. (WebCore::CSSPrimitiveValue::operator EImageRendering const): Deleted. (WebCore::CSSPrimitiveValue::operator ETransformStyle3D const): Deleted. (WebCore::CSSPrimitiveValue::operator ContentDistributionType const): Deleted. * css/CSSProperties.json: * css/CSSToStyleMap.cpp: (WebCore::CSSToStyleMap::mapFillAttachment): (WebCore::CSSToStyleMap::mapFillSize): (WebCore::CSSToStyleMap::mapFillMaskSourceType): * css/CSSValueKeywords.in: * css/StyleBuilderConverter.h: (WebCore::StyleBuilderConverter::convertResize): (WebCore::StyleBuilderConverter::convertSelfOrDefaultAlignmentData): * css/StyleBuilderCustom.h: (WebCore::StyleBuilderCustom::applyValueTextIndent): (WebCore::StyleBuilderCustom::applyInheritWebkitAspectRatio): (WebCore::StyleBuilderCustom::applyValueWebkitAspectRatio): (WebCore::StyleBuilderCustom::applyValueContent): * css/StyleResolver.cpp: (WebCore::isScrollableOverflow): (WebCore::StyleResolver::adjustRenderStyle): * css/StyleResolver.h: * css/makeprop.pl: (getFillLayerType): * dom/Element.h: * dom/Node.cpp: (WebCore::computeEditabilityFromComputedStyle): (WebCore::Node::canStartSelection const): * dom/Position.cpp: (WebCore::Position::nodeIsUserSelectNone): (WebCore::Position::nodeIsUserSelectAll): * dom/Range.cpp: (WebCore::Range::collectSelectionRectsWithoutUnionInteriorLines const): * editing/ApplyBlockElementCommand.cpp: (WebCore::ApplyBlockElementCommand::rangeForParagraphSplittingTextNodesIfNeeded): * editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::doApply): * editing/Editing.cpp: (WebCore::isSpecialHTMLElement): * editing/EditorCommand.cpp: (WebCore::verticalScrollDistance): * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): * editing/SimplifyMarkupCommand.cpp: (WebCore::SimplifyMarkupCommand::doApply): * editing/VisibleUnits.cpp: (WebCore::backwardSearchForBoundaryWithTextIterator): (WebCore::forwardSearchForBoundaryWithTextIterator): * editing/cocoa/EditorCocoa.mm: (WebCore::Editor::fontAttributesForSelectionStart const): * editing/cocoa/HTMLConverter.mm: (WebCore::editingAttributedStringFromRange): * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::shouldTruncateText const): (WebCore::HTMLInputElement::createInnerTextStyle): * html/HTMLTextFormControlElement.cpp: (WebCore::HTMLTextFormControlElement::adjustInnerTextStyle const): * html/shadow/SliderThumbElement.cpp: (WebCore::RenderSliderContainer::layout): * html/shadow/TextControlInnerElements.cpp: (WebCore::TextControlInnerContainer::resolveCustomStyle): (WebCore::TextControlInnerElement::resolveCustomStyle): (WebCore::TextControlPlaceholderElement::resolveCustomStyle): * layout/displaytree/DisplayBox.cpp: (WebCore::Display::Box::borderBox const): (WebCore::Display::Box::contentBox const): * layout/displaytree/DisplayBox.h: * layout/layouttree/LayoutBox.cpp: (WebCore::Layout::Box::isRelativelyPositioned const): (WebCore::Layout::Box::isStickyPositioned const): (WebCore::Layout::Box::isAbsolutelyPositioned const): (WebCore::Layout::Box::isFixedPositioned const): (WebCore::Layout::Box::isFloatingPositioned const): (WebCore::Layout::Box::isOverflowVisible const): * page/DragController.cpp: (WebCore::DragController::draggableElement const): * page/Frame.cpp: (WebCore::Frame::rangeForPoint): * page/FrameView.cpp: (WebCore::paginationModeForRenderStyle): (WebCore::FrameView::applyOverflowToViewport): (WebCore::FrameView::applyPaginationToViewport): (WebCore::FrameView::calculateScrollbarModesForLayout): (WebCore::FrameView::calculateExtendedBackgroundMode const): (WebCore::FrameView::adjustScrollStepForFixedContent): * page/SpatialNavigation.cpp: (WebCore::canScrollInDirection): (WebCore::canBeScrolledIntoView): * page/ios/FrameIOS.mm: (WebCore::Frame::nodeRespondingToScrollWheelEvents): * page/mac/EventHandlerMac.mm: (WebCore::scrolledToEdgeInDominantDirection): * rendering/BorderEdge.cpp: (WebCore::BorderEdge::BorderEdge): (WebCore::BorderEdge::obscuresBackgroundEdge const): (WebCore::BorderEdge::obscuresBackground const): * rendering/BorderEdge.h: (WebCore::BorderEdge::style const): (WebCore::BorderEdge::hasVisibleColorAndStyle const): * rendering/FlexibleBoxAlgorithm.h: (WebCore::FlexLayoutAlgorithm::isMultiline const): * rendering/FloatingObjects.cpp: (WebCore::FloatingObject::FloatingObject): * rendering/GridTrackSizingAlgorithm.cpp: (WebCore::GridTrackSizingAlgorithmStrategy::minSizeForChild const): (WebCore::GridTrackSizingAlgorithm::stretchAutoTracks): * rendering/HitTestResult.cpp: (WebCore::HitTestResult::innerTextIfTruncated const): * rendering/ImageQualityController.cpp: (WebCore::ImageQualityController::interpolationQualityFromStyle): * rendering/InlineBox.h: (WebCore::InlineBox::verticalAlign const): * rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::addToLine): (WebCore::InlineFlowBox::determineSpacingForFlowBoxes): (WebCore::InlineFlowBox::adjustMaxAscentAndDescent): (WebCore::InlineFlowBox::computeLogicalBoxHeights): (WebCore::InlineFlowBox::placeBoxesInBlockDirection): (WebCore::InlineFlowBox::paintFillLayer): * rendering/LogicalSelectionOffsetCaches.h: (WebCore::LogicalSelectionOffsetCaches::containingBlockInfo const): * rendering/RenderBlock.cpp: (WebCore::RenderBlock::removePositionedObjectsIfNeeded): (WebCore::RenderBlock::styleDidChange): (WebCore::RenderBlock::isSelfCollapsingBlock const): (WebCore::RenderBlock::addOverflowFromPositionedObjects): (WebCore::RenderBlock::markFixedPositionObjectForLayoutIfNeeded): (WebCore::RenderBlock::isSelectionRoot const): (WebCore::RenderBlock::selectionGaps): (WebCore::RenderBlock::computeBlockPreferredLogicalWidths const): (WebCore::RenderBlock::adjustBorderBoxLogicalHeightForBoxSizing const): (WebCore::RenderBlock::adjustContentBoxLogicalHeightForBoxSizing const): * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::MarginInfo::MarginInfo): (WebCore::RenderBlockFlow::willCreateColumns const): (WebCore::RenderBlockFlow::marginOffsetForSelfCollapsingBlock): (WebCore::RenderBlockFlow::clearFloatsIfNeeded): (WebCore::RenderBlockFlow::marginBeforeEstimateForChild const): (WebCore::RenderBlockFlow::setMustDiscardMarginBefore): (WebCore::RenderBlockFlow::setMustDiscardMarginAfter): (WebCore::RenderBlockFlow::mustDiscardMarginBefore const): (WebCore::RenderBlockFlow::mustDiscardMarginAfter const): (WebCore::RenderBlockFlow::mustDiscardMarginBeforeForChild const): (WebCore::RenderBlockFlow::mustDiscardMarginAfterForChild const): (WebCore::RenderBlockFlow::mustSeparateMarginBeforeForChild const): (WebCore::RenderBlockFlow::mustSeparateMarginAfterForChild const): (WebCore::RenderBlockFlow::styleDidChange): (WebCore::RenderBlockFlow::styleWillChange): (WebCore::RenderBlockFlow::computeLogicalLocationForFloat): (WebCore::RenderBlockFlow::positionNewFloats): (WebCore::RenderBlockFlow::clearFloats): (WebCore::RenderBlockFlow::getClearDelta): (WebCore::RenderBlockFlow::inlineBlockBaseline const): (WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths const): * rendering/RenderBlockFlow.h: * rendering/RenderBlockLineLayout.cpp: (WebCore::expansionBehaviorForInlineTextBox): (WebCore::isCollapsibleSpace): (WebCore::RenderBlockFlow::layoutRunsAndFloats): (WebCore::RenderBlockFlow::layoutLineBoxes): * rendering/RenderBox.cpp: (WebCore::RenderBox::styleWillChange): (WebCore::RenderBox::styleDidChange): (WebCore::RenderBox::updateFromStyle): (WebCore::RenderBox::includeVerticalScrollbarSize const): (WebCore::RenderBox::includeHorizontalScrollbarSize const): (WebCore::RenderBox::intrinsicScrollbarLogicalWidth const): (WebCore::RenderBox::hasVerticalScrollbarWithAutoBehavior const): (WebCore::RenderBox::hasHorizontalScrollbarWithAutoBehavior const): (WebCore::RenderBox::adjustBorderBoxLogicalWidthForBoxSizing const): (WebCore::RenderBox::adjustBorderBoxLogicalHeightForBoxSizing const): (WebCore::RenderBox::adjustContentBoxLogicalWidthForBoxSizing const): (WebCore::RenderBox::adjustContentBoxLogicalHeightForBoxSizing const): (WebCore::RenderBox::backgroundIsKnownToBeOpaqueInRect const): (WebCore::isCandidateForOpaquenessTest): (WebCore::RenderBox::foregroundIsKnownToBeOpaqueInRect const): (WebCore::RenderBox::backgroundHasOpaqueTopLayer const): (WebCore::RenderBox::computeRectForRepaint const): (WebCore::RenderBox::computeLogicalWidthInFragment const): (WebCore::RenderBox::columnFlexItemHasStretchAlignment const): (WebCore::RenderBox::isStretchingColumnFlexItem const): (WebCore::RenderBox::hasStretchedLogicalWidth const): (WebCore::RenderBox::sizesLogicalWidthToFitContent const): (WebCore::RenderBox::computeLogicalHeight const): (WebCore::RenderBox::computeIntrinsicLogicalContentHeightUsing const): (WebCore::RenderBox::createsNewFormattingContext const): * rendering/RenderBox.h: (WebCore::RenderBox::scrollsOverflowX const): (WebCore::RenderBox::scrollsOverflowY const): (WebCore::RenderBox::selfAlignmentNormalBehavior const): * rendering/RenderBoxModelObject.cpp: (WebCore::RenderBoxModelObject::paintFillLayerExtended): (WebCore::RenderBoxModelObject::calculateFillTileSize const): (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry const): (WebCore::styleRequiresClipPolygon): (WebCore::borderStyleFillsBorderArea): (WebCore::borderStyleHasInnerDetail): (WebCore::borderStyleIsDottedOrDashed): (WebCore::borderStyleHasUnmatchedColorsAtCorner): (WebCore::borderStylesRequireMitre): (WebCore::RenderBoxModelObject::paintBorder): (WebCore::RenderBoxModelObject::drawBoxSideFromPath): (WebCore::RenderBoxModelObject::boxShadowShouldBeAppliedToBackground const): * rendering/RenderBoxModelObject.h: * rendering/RenderDeprecatedFlexibleBox.cpp: (WebCore::FlexBoxIterator::FlexBoxIterator): (WebCore::RenderDeprecatedFlexibleBox::layoutBlock): (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox): (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox): * rendering/RenderDeprecatedFlexibleBox.h: * rendering/RenderElement.cpp: (WebCore::RenderElement::adjustStyleDifference const): (WebCore::RenderElement::shouldRepaintForStyleDifference const): (WebCore::RenderElement::initializeStyle): (WebCore::RenderElement::setStyle): (WebCore::RenderElement::didAttachChild): (WebCore::RenderElement::propagateStyleToAnonymousChildren): (WebCore::RenderElement::styleWillChange): (WebCore::RenderElement::styleDidChange): (WebCore::mustRepaintFillLayers): (WebCore::RenderElement::selectionColor const): (WebCore::RenderElement::selectionBackgroundColor const): (WebCore::RenderElement::drawLineForBoxSide const): (WebCore::RenderElement::paintFocusRing): (WebCore::RenderElement::paintOutline): (WebCore::RenderElement::updateOutlineAutoAncestor): (WebCore::includeNonFixedHeight): * rendering/RenderElement.h: (WebCore::RenderElement::hasHiddenBackface const): (WebCore::RenderElement::canContainAbsolutelyPositionedObjects const): * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::firstLineBaseline const): (WebCore::contentAlignmentNormalBehavior): (WebCore::RenderFlexibleBox::styleDidChange): (WebCore::RenderFlexibleBox::repositionLogicalHeightDependentFlexItems): (WebCore::RenderFlexibleBox::isLeftToRightFlow const): (WebCore::RenderFlexibleBox::isMultiline const): (WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax): (WebCore::RenderFlexibleBox::crossSizeForPercentageResolution): (WebCore::initialJustifyContentOffset): (WebCore::justifyContentSpaceBetweenChildren): (WebCore::alignmentOffset): (WebCore::RenderFlexibleBox::staticMainAxisPositionForPositionedChild): (WebCore::RenderFlexibleBox::staticCrossAxisPositionForPositionedChild): (WebCore::RenderFlexibleBox::alignmentForChild const): (WebCore::RenderFlexibleBox::needToStretchChildLogicalHeight const): (WebCore::RenderFlexibleBox::mainAxisOverflowForChild const): (WebCore::RenderFlexibleBox::crossAxisOverflowForChild const): (WebCore::RenderFlexibleBox::layoutAndPlaceChildren): (WebCore::RenderFlexibleBox::layoutColumnReverse): (WebCore::initialAlignContentOffset): (WebCore::alignContentSpaceBetweenChildren): (WebCore::RenderFlexibleBox::alignFlexLines): (WebCore::RenderFlexibleBox::alignChildren): * rendering/RenderFlexibleBox.h: * rendering/RenderFragmentContainer.cpp: (WebCore::RenderFragmentContainer::overflowRectForFragmentedFlowPortion): * rendering/RenderFullScreen.cpp: (WebCore::createFullScreenStyle): * rendering/RenderFullScreen.h: * rendering/RenderGrid.cpp: (WebCore::RenderGrid::selfAlignmentChangedToStretch const): (WebCore::RenderGrid::selfAlignmentChangedFromStretch const): (WebCore::RenderGrid::styleDidChange): (WebCore::contentAlignmentNormalBehaviorGrid): (WebCore::computeOverflowAlignmentOffset): (WebCore::RenderGrid::isInlineBaselineAlignedChild const): (WebCore::RenderGrid::columnAxisPositionForChild const): (WebCore::RenderGrid::rowAxisPositionForChild const): (WebCore::RenderGrid::resolveAutoStartGridPosition const): (WebCore::RenderGrid::resolveAutoEndGridPosition const): (WebCore::resolveContentDistributionFallback): (WebCore::contentDistributionOffset): (WebCore::RenderGrid::computeContentPositionAndDistributionOffset const): * rendering/RenderGrid.h: * rendering/RenderIFrame.cpp: (WebCore::RenderIFrame::requiresLayer const): * rendering/RenderImage.cpp: (WebCore::RenderImage::styleDidChange): (WebCore::RenderImage::foregroundIsKnownToBeOpaqueInRect const): * rendering/RenderInline.cpp: (WebCore::RenderInline::styleWillChange): (WebCore::RenderInline::updateAlwaysCreateLineBoxes): (WebCore::RenderInline::paintOutline): (WebCore::RenderInline::paintOutlineForLine): * rendering/RenderLayer.cpp: (WebCore::isContainerForPositioned): (WebCore::RenderLayer::enclosingAncestorForPosition const): (WebCore::accumulateOffsetTowardsAncestor): (WebCore::RenderLayer::canResize const): (WebCore::RenderLayer::resize): (WebCore::RenderLayer::scrollCornerRect const): (WebCore::resizerCornerRect): (WebCore::RenderLayer::hasOverflowControls const): (WebCore::styleRequiresScrollbar): (WebCore::styleDefinesAutomaticScrollbar): (WebCore::RenderLayer::updateScrollbarsAfterLayout): (WebCore::RenderLayer::paintResizer): (WebCore::RenderLayer::hitTestOverflowControls): (WebCore::RenderLayer::hitTestLayer): (WebCore::RenderLayer::calculateClipRects const): * rendering/RenderLayer.h: * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::updateGeometry): (WebCore::canDirectlyCompositeBackgroundBackgroundImage): (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer const): (WebCore::backgroundRectForBox): * rendering/RenderLayerCompositor.cpp: (WebCore::isScrollableOverflow): (WebCore::styleChangeRequiresLayerRebuild): (WebCore::RenderLayerCompositor::layerStyleChanged): (WebCore::RenderLayerCompositor::reasonsForCompositing const): (WebCore::RenderLayerCompositor::requiresCompositingForBackfaceVisibility const): (WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason const): (WebCore::RenderLayerCompositor::isViewportConstrainedFixedOrStickyLayer const): (WebCore::RenderLayerCompositor::requiresCompositingForPosition const): (WebCore::RenderLayerCompositor::layerHas3DContent const): (WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer): * rendering/RenderLayerModelObject.cpp: (WebCore::RenderLayerModelObject::styleWillChange): * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::adjustInnerStyle): * rendering/RenderMultiColumnFlow.cpp: (WebCore::RenderMultiColumnFlow::isColumnSpanningDescendant const): * rendering/RenderMultiColumnSet.cpp: (WebCore::RenderMultiColumnSet::requiresBalancing const): (WebCore::RenderMultiColumnSet::paintColumnRules): * rendering/RenderMultiColumnSpannerPlaceholder.cpp: (WebCore::RenderMultiColumnSpannerPlaceholder::createAnonymous): * rendering/RenderObject.cpp: (WebCore::RenderObject::propagateRepaintToParentWithOutlineAutoIfNeeded const): (WebCore::containerForElement): (WebCore::RenderObject::calculateBorderStyleColor): * rendering/RenderObject.h: (WebCore::RenderObject::isFixedPositioned const): (WebCore::RenderObject::isAbsolutelyPositioned const): (WebCore::RenderObject::setPositionState): (WebCore::RenderObject::RenderObjectBitfields::setPositionedState): (WebCore::RenderObject::RenderObjectBitfields::clearPositionedState): * rendering/RenderQuote.cpp: (WebCore::RenderQuote::styleDidChange): (WebCore::RenderQuote::computeText const): (WebCore::RenderQuote::isOpen const): * rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::layout): (WebCore::RenderReplaced::setNeedsLayoutIfNeededAfterIntrinsicSizeChange): (WebCore::RenderReplaced::replacedContentRect const): * rendering/RenderScrollbarPart.cpp: (WebCore::RenderScrollbarPart::styleDidChange): * rendering/RenderTable.cpp: (WebCore::RenderTable::styleDidChange): (WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth): (WebCore::RenderTable::convertStyleLogicalHeightToComputedHeight): (WebCore::RenderTable::calcBorderStart const): (WebCore::RenderTable::calcBorderEnd const): (WebCore::RenderTable::outerBorderBefore const): (WebCore::RenderTable::outerBorderAfter const): (WebCore::RenderTable::outerBorderStart const): (WebCore::RenderTable::outerBorderEnd const): * rendering/RenderTable.h: (WebCore::RenderTable::collapseBorders const): * rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::computeIntrinsicPadding): (WebCore::RenderTableCell::styleDidChange): (WebCore::compareBorders): (WebCore::chooseBorder): (WebCore::emptyBorder): (WebCore::RenderTableCell::computeCollapsedStartBorder const): (WebCore::RenderTableCell::computeCollapsedEndBorder const): (WebCore::RenderTableCell::computeCollapsedBeforeBorder const): (WebCore::RenderTableCell::computeCollapsedAfterBorder const): (WebCore::CollapsedBorders::addBorder): (WebCore::RenderTableCell::paintCollapsedBorders): (WebCore::RenderTableCell::scrollbarsChanged): * rendering/RenderTableCell.h: (WebCore::RenderTableCell::logicalHeightForRowSizing const): (WebCore::RenderTableCell::isBaselineAligned const): * rendering/RenderTableRow.cpp: (WebCore::RenderTableRow::styleDidChange): * rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::calcOuterBorderBefore const): (WebCore::RenderTableSection::calcOuterBorderAfter const): (WebCore::RenderTableSection::calcOuterBorderStart const): (WebCore::RenderTableSection::calcOuterBorderEnd const): (WebCore::RenderTableSection::paintRowGroupBorder): (WebCore::RenderTableSection::paintRowGroupBorderIfRequired): (WebCore::RenderTableSection::cachedCollapsedBorder): * rendering/RenderTableSection.h: * rendering/RenderText.cpp: (WebCore::RenderText::styleDidChange): (WebCore::RenderText::absoluteQuadsClippedToEllipsis const): (WebCore::isSpaceAccordingToStyle): (WebCore::mapLineBreakToIteratorMode): (WebCore::RenderText::computePreferredLogicalWidths): (WebCore::RenderText::setRenderedText): (WebCore::RenderText::textWithoutConvertingBackslashToYenSymbol const): (WebCore::RenderText::momentarilyRevealLastTypedCharacter): * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::computeLogicalHeight const): * rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::styleDidChange): * rendering/RenderTheme.cpp: (WebCore::RenderTheme::extractControlStatesForRenderer const): * rendering/RenderThemeIOS.mm: (WebCore::adjustInputElementButtonStyle): * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::updateFocusedState): (WebCore::RenderThemeMac::paintCellAndSetFocusedElementNeedsRepaintIfNecessary): (WebCore::RenderThemeMac::adjustSearchFieldStyle const): * rendering/RenderTreeAsText.cpp: (WebCore::printBorderStyle): * rendering/RenderVideo.cpp: (WebCore::RenderVideo::updatePlayer): * rendering/RenderView.cpp: (WebCore::RenderView::RenderView): (WebCore::rendererObscuresBackground): * rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::verticalPositionForBox): * rendering/SimpleLineLayout.cpp: (WebCore::SimpleLineLayout::canUseForStyle): (WebCore::SimpleLineLayout::canUseForWithReason): * rendering/SimpleLineLayoutTextFragmentIterator.cpp: (WebCore::SimpleLineLayout::TextFragmentIterator::Style::Style): * rendering/TextPaintStyle.cpp: (WebCore::computeTextPaintStyle): * rendering/line/BreakingContext.h: (WebCore::BreakingContext::handleBR): (WebCore::shouldAddBorderPaddingMargin): (WebCore::BreakingContext::handleText): (WebCore::BreakingContext::optimalLineBreakLocationForTrailingWord): * rendering/line/LineBreaker.cpp: (WebCore::LineBreaker::reset): * rendering/line/LineBreaker.h: (WebCore::LineBreaker::clear): * rendering/line/LineInlineHeaders.h: (WebCore::skipNonBreakingSpace): * rendering/line/LineWidth.cpp: (WebCore::requiresIndent): * rendering/style/BorderData.h: (WebCore::BorderData::borderLeftWidth const): (WebCore::BorderData::borderRightWidth const): (WebCore::BorderData::borderTopWidth const): (WebCore::BorderData::borderBottomWidth const): * rendering/style/BorderValue.h: (WebCore::BorderValue::BorderValue): (WebCore::BorderValue::nonZero const): (WebCore::BorderValue::isVisible const): (WebCore::BorderValue::style const): * rendering/style/CollapsedBorderValue.h: (WebCore::CollapsedBorderValue::CollapsedBorderValue): (WebCore::CollapsedBorderValue::width const): (WebCore::CollapsedBorderValue::style const): (WebCore::CollapsedBorderValue::exists const): (WebCore::CollapsedBorderValue::precedence const): * rendering/style/FillLayer.cpp: (WebCore::FillLayer::FillLayer): (WebCore::clipMax): (WebCore::FillLayer::computeClipMax const): (WebCore::FillLayer::hasRepeatXY const): (WebCore::FillLayer::hasFixedImage const): * rendering/style/FillLayer.h: (WebCore::FillSize::FillSize): (WebCore::FillLayer::attachment const): (WebCore::FillLayer::clip const): (WebCore::FillLayer::origin const): (WebCore::FillLayer::repeatX const): (WebCore::FillLayer::repeatY const): (WebCore::FillLayer::sizeType const): (WebCore::FillLayer::size const): (WebCore::FillLayer::maskSourceType const): (WebCore::FillLayer::isSizeSet const): (WebCore::FillLayer::setAttachment): (WebCore::FillLayer::setClip): (WebCore::FillLayer::setOrigin): (WebCore::FillLayer::setRepeatX): (WebCore::FillLayer::setRepeatY): (WebCore::FillLayer::setComposite): (WebCore::FillLayer::setBlendMode): (WebCore::FillLayer::setSizeType): (WebCore::FillLayer::setSize): (WebCore::FillLayer::setMaskSourceType): (WebCore::FillLayer::clearSize): (WebCore::FillLayer::type const): (WebCore::FillLayer::initialFillAttachment): (WebCore::FillLayer::initialFillClip): (WebCore::FillLayer::initialFillOrigin): (WebCore::FillLayer::initialFillRepeatX): (WebCore::FillLayer::initialFillRepeatY): (WebCore::FillLayer::initialFillComposite): (WebCore::FillLayer::initialFillBlendMode): (WebCore::FillLayer::initialFillSize): (WebCore::FillLayer::initialFillXPosition): (WebCore::FillLayer::initialFillYPosition): (WebCore::FillLayer::initialFillImage): (WebCore::FillLayer::initialFillMaskSourceType): * rendering/style/LineClampValue.h: (WebCore::LineClampValue::LineClampValue): (WebCore::LineClampValue::isPercentage const): * rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::RenderStyle): (WebCore::resolvedSelfAlignment): (WebCore::RenderStyle::resolvedAlignSelf const): (WebCore::RenderStyle::resolvedJustifySelf const): (WebCore::resolvedContentAlignment): (WebCore::resolvedContentAlignmentPosition): (WebCore::resolvedContentAlignmentDistribution): (WebCore::RenderStyle::resolvedJustifyContentDistribution const): (WebCore::RenderStyle::resolvedAlignContentDistribution const): (WebCore::RenderStyle::changeRequiresLayout const): (WebCore::RenderStyle::changeRequiresPositionedLayoutOnly const): (WebCore::RenderStyle::changeRequiresLayerRepaint const): (WebCore::RenderStyle::changeRequiresRepaint const): (WebCore::RenderStyle::changeRequiresRepaintIfTextOrBorderOrOutline const): (WebCore::RenderStyle::changeRequiresRecompositeLayer const): (WebCore::RenderStyle::diff const): (WebCore::RenderStyle::diffRequiresLayerRepaint const): (WebCore::allLayersAreFixed): (WebCore::RenderStyle::colorIncludingFallback const): (WebCore::RenderStyle::setColumnStylesFromPaginationMode): (WebCore::RenderStyle::outlineWidth const): (WebCore::RenderStyle::outlineOffset const): * rendering/style/RenderStyle.h: (WebCore::RenderStyle::isFloating const): (WebCore::RenderStyle::position const): (WebCore::RenderStyle::hasOutOfFlowPosition const): (WebCore::RenderStyle::hasInFlowPosition const): (WebCore::RenderStyle::hasViewportConstrainedPosition const): (WebCore::RenderStyle::floating const): (WebCore::RenderStyle::borderLeftStyle const): (WebCore::RenderStyle::borderRightStyle const): (WebCore::RenderStyle::borderTopStyle const): (WebCore::RenderStyle::borderBottomStyle const): (WebCore::RenderStyle::hasOutline const): (WebCore::RenderStyle::outlineStyle const): (WebCore::RenderStyle::overflowX const): (WebCore::RenderStyle::overflowY const): (WebCore::RenderStyle::overflowInlineDirection const): (WebCore::RenderStyle::overflowBlockDirection const): (WebCore::RenderStyle::verticalAlign const): (WebCore::RenderStyle::clear const): (WebCore::RenderStyle::tableLayout const): (WebCore::RenderStyle::backgroundRepeatX const): (WebCore::RenderStyle::backgroundRepeatY const): (WebCore::RenderStyle::backgroundAttachment const): (WebCore::RenderStyle::backgroundClip const): (WebCore::RenderStyle::backgroundOrigin const): (WebCore::RenderStyle::backgroundSizeType const): (WebCore::RenderStyle::maskRepeatX const): (WebCore::RenderStyle::maskRepeatY const): (WebCore::RenderStyle::maskClip const): (WebCore::RenderStyle::maskOrigin const): (WebCore::RenderStyle::maskSizeType const): (WebCore::RenderStyle::borderCollapse const): (WebCore::RenderStyle::boxAlign const): (WebCore::RenderStyle::boxDirection const): (WebCore::RenderStyle::boxLines const): (WebCore::RenderStyle::boxOrient const): (WebCore::RenderStyle::boxPack const): (WebCore::RenderStyle::flexDirection const): (WebCore::RenderStyle::isColumnFlexDirection const): (WebCore::RenderStyle::isReverseFlexDirection const): (WebCore::RenderStyle::flexWrap const): (WebCore::RenderStyle::boxDecorationBreak const): (WebCore::RenderStyle::boxSizing const): (WebCore::RenderStyle::userModify const): (WebCore::RenderStyle::userDrag const): (WebCore::RenderStyle::userSelect const): (WebCore::RenderStyle::marginBeforeCollapse const): (WebCore::RenderStyle::marginAfterCollapse const): (WebCore::RenderStyle::wordBreak const): (WebCore::RenderStyle::overflowWrap const): (WebCore::RenderStyle::nbspMode const): (WebCore::RenderStyle::resize const): (WebCore::RenderStyle::columnRuleStyle const): (WebCore::RenderStyle::hasTextCombine const): (WebCore::RenderStyle::transformStyle3D const): (WebCore::RenderStyle::preserves3D const): (WebCore::RenderStyle::backfaceVisibility const): (WebCore::RenderStyle::textSecurity const): (WebCore::RenderStyle::imageRendering const): (WebCore::RenderStyle::setIsolation): (WebCore::RenderStyle::hasIsolation const): (WebCore::RenderStyle::isolation const): (WebCore::RenderStyle::setPosition): (WebCore::RenderStyle::setFloating): (WebCore::RenderStyle::setBackgroundSize): (WebCore::RenderStyle::setBorderLeftStyle): (WebCore::RenderStyle::setBorderRightStyle): (WebCore::RenderStyle::setBorderTopStyle): (WebCore::RenderStyle::setBorderBottomStyle): (WebCore::RenderStyle::setOutlineStyleIsAuto): (WebCore::RenderStyle::setOutlineStyle): (WebCore::RenderStyle::setOverflowX): (WebCore::RenderStyle::setOverflowY): (WebCore::RenderStyle::setVerticalAlign): (WebCore::RenderStyle::setVerticalAlignLength): (WebCore::RenderStyle::setClear): (WebCore::RenderStyle::setTableLayout): (WebCore::RenderStyle::setImageRendering): (WebCore::RenderStyle::clearBackgroundLayers): (WebCore::RenderStyle::clearMaskLayers): (WebCore::RenderStyle::setBorderCollapse): (WebCore::RenderStyle::setAspectRatioType): (WebCore::RenderStyle::setPrintColorAdjust): (WebCore::RenderStyle::setBoxAlign): (WebCore::RenderStyle::setBoxDirection): (WebCore::RenderStyle::setBoxLines): (WebCore::RenderStyle::setBoxOrient): (WebCore::RenderStyle::setBoxPack): (WebCore::RenderStyle::setBoxSizing): (WebCore::RenderStyle::setFlexDirection): (WebCore::RenderStyle::setFlexWrap): (WebCore::RenderStyle::setBoxDecorationBreak): (WebCore::RenderStyle::setUserModify): (WebCore::RenderStyle::setUserDrag): (WebCore::RenderStyle::setUserSelect): (WebCore::RenderStyle::setTextOverflow): (WebCore::RenderStyle::setMarginBeforeCollapse): (WebCore::RenderStyle::setMarginAfterCollapse): (WebCore::RenderStyle::setWordBreak): (WebCore::RenderStyle::setOverflowWrap): (WebCore::RenderStyle::setNBSPMode): (WebCore::RenderStyle::setLineBreak): (WebCore::RenderStyle::setResize): (WebCore::RenderStyle::setColumnFill): (WebCore::RenderStyle::setColumnRuleStyle): (WebCore::RenderStyle::setColumnSpan): (WebCore::RenderStyle::setTextCombine): (WebCore::RenderStyle::setObjectFit): (WebCore::RenderStyle::setTransformStyle3D): (WebCore::RenderStyle::setBackfaceVisibility): (WebCore::RenderStyle::setTextSecurity): (WebCore::RenderStyle::initialOverflowX): (WebCore::RenderStyle::initialOverflowY): (WebCore::RenderStyle::initialClear): (WebCore::RenderStyle::initialPosition): (WebCore::RenderStyle::initialVerticalAlign): (WebCore::RenderStyle::initialFloating): (WebCore::RenderStyle::initialTableLayout): (WebCore::RenderStyle::initialBorderCollapse): (WebCore::RenderStyle::initialBorderStyle): (WebCore::RenderStyle::initialOutlineStyleIsAuto): (WebCore::RenderStyle::initialTextCombine): (WebCore::RenderStyle::initialObjectFit): (WebCore::RenderStyle::initialBoxAlign): (WebCore::RenderStyle::initialBoxDecorationBreak): (WebCore::RenderStyle::initialBoxDirection): (WebCore::RenderStyle::initialBoxLines): (WebCore::RenderStyle::initialBoxOrient): (WebCore::RenderStyle::initialBoxPack): (WebCore::RenderStyle::initialBoxSizing): (WebCore::RenderStyle::initialJustifyItems): (WebCore::RenderStyle::initialSelfAlignment): (WebCore::RenderStyle::initialDefaultAlignment): (WebCore::RenderStyle::initialContentAlignment): (WebCore::RenderStyle::initialFlexDirection): (WebCore::RenderStyle::initialFlexWrap): (WebCore::RenderStyle::initialUserModify): (WebCore::RenderStyle::initialUserDrag): (WebCore::RenderStyle::initialUserSelect): (WebCore::RenderStyle::initialTextOverflow): (WebCore::RenderStyle::initialMarginBeforeCollapse): (WebCore::RenderStyle::initialMarginAfterCollapse): (WebCore::RenderStyle::initialWordBreak): (WebCore::RenderStyle::initialOverflowWrap): (WebCore::RenderStyle::initialNBSPMode): (WebCore::RenderStyle::initialLineBreak): (WebCore::RenderStyle::initialResize): (WebCore::RenderStyle::initialAspectRatioType): (WebCore::RenderStyle::initialColumnFill): (WebCore::RenderStyle::initialColumnSpan): (WebCore::RenderStyle::initialTransformStyle3D): (WebCore::RenderStyle::initialBackfaceVisibility): (WebCore::RenderStyle::initialImageRendering): (WebCore::RenderStyle::initialPrintColorAdjust): (WebCore::RenderStyle::initialTextIndentLine): (WebCore::RenderStyle::initialTextIndentType): (WebCore::RenderStyle::initialTextSecurity): (WebCore::RenderStyle::initialIsolation): (WebCore::collapsedBorderStyle): (WebCore::RenderStyle::breakOnlyAfterWhiteSpace const): (WebCore::RenderStyle::breakWords const): (WebCore::RenderStyle::setTextOrientation): * rendering/style/RenderStyleConstants.cpp: (WebCore::operator<<): * rendering/style/RenderStyleConstants.h: (WebCore::operator|): (WebCore::operator|=): (WebCore::operator| ): Deleted. (WebCore::operator|= ): Deleted. * rendering/style/SVGRenderStyle.cpp: (WebCore::SVGRenderStyle::diff const): * rendering/style/StyleBackgroundData.cpp: (WebCore::StyleBackgroundData::StyleBackgroundData): * rendering/style/StyleBoxData.cpp: (WebCore::StyleBoxData::StyleBoxData): * rendering/style/StyleBoxData.h: (WebCore::StyleBoxData::boxSizing const): (WebCore::StyleBoxData::boxDecorationBreak const): * rendering/style/StyleContentAlignmentData.h: (WebCore::StyleContentAlignmentData::StyleContentAlignmentData): (WebCore::StyleContentAlignmentData::setPosition): (WebCore::StyleContentAlignmentData::setDistribution): (WebCore::StyleContentAlignmentData::setOverflow): (WebCore::StyleContentAlignmentData::distribution const): * rendering/style/StyleDeprecatedFlexibleBoxData.cpp: (WebCore::StyleDeprecatedFlexibleBoxData::StyleDeprecatedFlexibleBoxData): * rendering/style/StyleDeprecatedFlexibleBoxData.h: * rendering/style/StyleFlexibleBoxData.cpp: (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData): * rendering/style/StyleFlexibleBoxData.h: * rendering/style/StyleMultiColData.cpp: (WebCore::StyleMultiColData::StyleMultiColData): * rendering/style/StyleMultiColData.h: (WebCore::StyleMultiColData::ruleWidth const): * rendering/style/StyleRareInheritedData.cpp: (WebCore::StyleRareInheritedData::StyleRareInheritedData): * rendering/style/StyleRareInheritedData.h: * rendering/style/StyleRareNonInheritedData.cpp: (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): * rendering/style/StyleRareNonInheritedData.h: * rendering/style/StyleSelfAlignmentData.h: (WebCore::StyleSelfAlignmentData::StyleSelfAlignmentData): (WebCore::StyleSelfAlignmentData::setPosition): (WebCore::StyleSelfAlignmentData::setPositionType): (WebCore::StyleSelfAlignmentData::setOverflow): * rendering/svg/RenderSVGBlock.cpp: (WebCore::RenderSVGBlock::styleDidChange): * rendering/svg/RenderSVGGradientStop.cpp: (WebCore::RenderSVGGradientStop::styleDidChange): * rendering/svg/RenderSVGInline.cpp: (WebCore::RenderSVGInline::styleDidChange): * rendering/svg/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::styleDidChange): * rendering/svg/RenderSVGModelObject.cpp: (WebCore::RenderSVGModelObject::styleDidChange): * rendering/svg/RenderSVGResourceContainer.cpp: (WebCore::RenderSVGResourceContainer::registerResource): * rendering/svg/RenderSVGResourceFilterPrimitive.cpp: (WebCore::RenderSVGResourceFilterPrimitive::styleDidChange): * rendering/svg/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::layout): (WebCore::RenderSVGRoot::shouldApplyViewportClip const): (WebCore::RenderSVGRoot::styleDidChange): * rendering/svg/SVGInlineTextBox.cpp: (WebCore::SVGInlineTextBox::paintText): * rendering/svg/SVGRenderSupport.cpp: (WebCore::SVGRenderSupport::isOverflowHidden): * rendering/svg/SVGResourcesCache.cpp: (WebCore::SVGResourcesCache::clientStyleChanged): * rendering/updating/RenderTreeBuilder.cpp: (WebCore::RenderTreeBuilder::attachToRenderElementInternal): * rendering/updating/RenderTreeBuilderBlock.cpp: (WebCore::RenderTreeBuilder::Block::insertChildToContinuation): * rendering/updating/RenderTreeBuilderFirstLetter.cpp: (WebCore::styleForFirstLetter): * rendering/updating/RenderTreeBuilderMultiColumn.cpp: (WebCore::isValidColumnSpanner): (WebCore::RenderTreeBuilder::MultiColumn::resolveMovedChild): (WebCore::RenderTreeBuilder::MultiColumn::multiColumnRelativeWillBeRemoved): * rendering/updating/RenderTreeUpdater.cpp: (WebCore::RenderTreeUpdater::updateElementRenderer): * style/StyleResolveForDocument.cpp: (WebCore::Style::resolveForDocument): Source/WebKit: * WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::rangeForWebSelectionAtPosition): (WebKit::WebPage::getPositionInformation): Update for new enum names. Canonical link: https://commits.webkit.org/201277@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@232018 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-05-21 16:55:45 +00:00
if (style.textIndentType() == TextIndentType::Hanging)
shouldIndentText = shouldIndentText == IndentText ? DoNotIndentText : IndentText;
return shouldIndentText;
}
}