| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
| 3 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 3 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 4 * (C) 2004-2005 Allan Sandfeld Jensen (kde@carewolf.com) | 4 * (C) 2004-2005 Allan Sandfeld Jensen (kde@carewolf.com) |
| 5 * Copyright (C) 2006, 2007 Nicholas Shanks (webkit@nickshanks.com) | 5 * Copyright (C) 2006, 2007 Nicholas Shanks (webkit@nickshanks.com) |
| 6 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Apple Inc.
All rights reserved. | 6 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Apple Inc.
All rights reserved. |
| 7 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org> | 7 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org> |
| 8 * Copyright (C) 2007, 2008 Eric Seidel <eric@webkit.org> | 8 * Copyright (C) 2007, 2008 Eric Seidel <eric@webkit.org> |
| 9 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) | 9 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) |
| 10 * Copyright (c) 2011, Code Aurora Forum. All rights reserved. | 10 * Copyright (c) 2011, Code Aurora Forum. All rights reserved. |
| (...skipping 533 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 544 CSSValue* item = i.value(); | 544 CSSValue* item = i.value(); |
| 545 t |= *toCSSPrimitiveValue(item); | 545 t |= *toCSSPrimitiveValue(item); |
| 546 } | 546 } |
| 547 state.style()->setTextDecoration(t); | 547 state.style()->setTextDecoration(t); |
| 548 } | 548 } |
| 549 | 549 |
| 550 void StyleBuilderFunctions::applyInheritCSSPropertyTextIndent(StyleResolverState
& state) | 550 void StyleBuilderFunctions::applyInheritCSSPropertyTextIndent(StyleResolverState
& state) |
| 551 { | 551 { |
| 552 state.style()->setTextIndent(state.parentStyle()->textIndent()); | 552 state.style()->setTextIndent(state.parentStyle()->textIndent()); |
| 553 state.style()->setTextIndentLine(state.parentStyle()->textIndentLine()); | 553 state.style()->setTextIndentLine(state.parentStyle()->textIndentLine()); |
| 554 state.style()->setTextIndentType(state.parentStyle()->textIndentType()); |
| 554 } | 555 } |
| 555 | 556 |
| 556 void StyleBuilderFunctions::applyInitialCSSPropertyTextIndent(StyleResolverState
& state) | 557 void StyleBuilderFunctions::applyInitialCSSPropertyTextIndent(StyleResolverState
& state) |
| 557 { | 558 { |
| 558 state.style()->setTextIndent(RenderStyle::initialTextIndent()); | 559 state.style()->setTextIndent(RenderStyle::initialTextIndent()); |
| 559 state.style()->setTextIndentLine(RenderStyle::initialTextIndentLine()); | 560 state.style()->setTextIndentLine(RenderStyle::initialTextIndentLine()); |
| 561 state.style()->setTextIndentType(RenderStyle::initialTextIndentType()); |
| 560 } | 562 } |
| 561 | 563 |
| 562 void StyleBuilderFunctions::applyValueCSSPropertyTextIndent(StyleResolverState&
state, CSSValue* value) | 564 void StyleBuilderFunctions::applyValueCSSPropertyTextIndent(StyleResolverState&
state, CSSValue* value) |
| 563 { | 565 { |
| 564 if (!value->isValueList()) | 566 if (!value->isValueList()) |
| 565 return; | 567 return; |
| 566 | 568 |
| 567 // [ <length> | <percentage> ] each-line | 569 Length lengthOrPercentageValue; |
| 568 // The order is guaranteed. See BisonCSSParser::parseTextIndent. | 570 TextIndentLine textIndentLineValue = RenderStyle::initialTextIndentLine(); |
| 569 // The second value, each-line is handled only when css3TextEnabled() return
s true. | 571 TextIndentType textIndentTypeValue = RenderStyle::initialTextIndentType(); |
| 570 | 572 |
| 571 CSSValueList* valueList = toCSSValueList(value); | 573 for (CSSValueListIterator i(value); i.hasMore(); i.advance()) { |
| 572 CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(valueList->itemWitho
utBoundsCheck(0)); | 574 CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(i.value()); |
| 573 Length lengthOrPercentageValue = primitiveValue->convertToLength<FixedConver
sion | PercentConversion>(state.cssToLengthConversionData()); | 575 if (!primitiveValue->getValueID()) |
| 576 lengthOrPercentageValue = primitiveValue->convertToLength<FixedConve
rsion | PercentConversion>(state.cssToLengthConversionData()); |
| 577 else if (primitiveValue->getValueID() == CSSValueEachLine) |
| 578 textIndentLineValue = TextIndentEachLine; |
| 579 else if (primitiveValue->getValueID() == CSSValueHanging) |
| 580 textIndentTypeValue = TextIndentHanging; |
| 581 else |
| 582 ASSERT_NOT_REACHED(); |
| 583 } |
| 584 |
| 574 state.style()->setTextIndent(lengthOrPercentageValue); | 585 state.style()->setTextIndent(lengthOrPercentageValue); |
| 575 | 586 state.style()->setTextIndentLine(textIndentLineValue); |
| 576 ASSERT(valueList->length() <= 2); | 587 state.style()->setTextIndentType(textIndentTypeValue); |
| 577 CSSPrimitiveValue* eachLineValue = toCSSPrimitiveValue(valueList->item(1)); | |
| 578 if (eachLineValue) { | |
| 579 ASSERT(eachLineValue->getValueID() == CSSValueEachLine); | |
| 580 state.style()->setTextIndentLine(TextIndentEachLine); | |
| 581 } else | |
| 582 state.style()->setTextIndentLine(TextIndentFirstLine); | |
| 583 } | 588 } |
| 584 | 589 |
| 585 void StyleBuilderFunctions::applyInitialCSSPropertyTransformOrigin(StyleResolver
State& state) | 590 void StyleBuilderFunctions::applyInitialCSSPropertyTransformOrigin(StyleResolver
State& state) |
| 586 { | 591 { |
| 587 applyInitialCSSPropertyWebkitTransformOriginX(state); | 592 applyInitialCSSPropertyWebkitTransformOriginX(state); |
| 588 applyInitialCSSPropertyWebkitTransformOriginY(state); | 593 applyInitialCSSPropertyWebkitTransformOriginY(state); |
| 589 applyInitialCSSPropertyWebkitTransformOriginZ(state); | 594 applyInitialCSSPropertyWebkitTransformOriginZ(state); |
| 590 } | 595 } |
| 591 | 596 |
| 592 void StyleBuilderFunctions::applyInheritCSSPropertyTransformOrigin(StyleResolver
State& state) | 597 void StyleBuilderFunctions::applyInheritCSSPropertyTransformOrigin(StyleResolver
State& state) |
| (...skipping 1697 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2290 break; | 2295 break; |
| 2291 } | 2296 } |
| 2292 case CSSPropertyEnableBackground: | 2297 case CSSPropertyEnableBackground: |
| 2293 // Silently ignoring this property for now | 2298 // Silently ignoring this property for now |
| 2294 // http://bugs.webkit.org/show_bug.cgi?id=6022 | 2299 // http://bugs.webkit.org/show_bug.cgi?id=6022 |
| 2295 break; | 2300 break; |
| 2296 } | 2301 } |
| 2297 } | 2302 } |
| 2298 | 2303 |
| 2299 } // namespace WebCore | 2304 } // namespace WebCore |
| OLD | NEW |