Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(111)

Side by Side Diff: Source/core/css/CSSComputedStyleDeclaration.cpp

Issue 1150313002: *** NOT FOR LANDING *** Unprefix multicol behind a flag (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « Source/core/animation/css/CSSPropertyEquality.cpp ('k') | Source/core/css/CSSProperties.in » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2004 Zack Rusin <zack@kde.org> 2 * Copyright (C) 2004 Zack Rusin <zack@kde.org>
3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights reserved. 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights reserved.
4 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org> 4 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org>
5 * Copyright (C) 2007 Nicholas Shanks <webkit@nickshanks.com> 5 * Copyright (C) 2007 Nicholas Shanks <webkit@nickshanks.com>
6 * Copyright (C) 2011 Sencha, Inc. All rights reserved. 6 * Copyright (C) 2011 Sencha, Inc. All rights reserved.
7 * 7 *
8 * This library is free software; you can redistribute it and/or 8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public 9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; either 10 * License as published by the Free Software Foundation; either
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
86 CSSPropertyBorderTopRightRadius, 86 CSSPropertyBorderTopRightRadius,
87 CSSPropertyBorderTopStyle, 87 CSSPropertyBorderTopStyle,
88 CSSPropertyBorderTopWidth, 88 CSSPropertyBorderTopWidth,
89 CSSPropertyBottom, 89 CSSPropertyBottom,
90 CSSPropertyBoxShadow, 90 CSSPropertyBoxShadow,
91 CSSPropertyBoxSizing, 91 CSSPropertyBoxSizing,
92 CSSPropertyCaptionSide, 92 CSSPropertyCaptionSide,
93 CSSPropertyClear, 93 CSSPropertyClear,
94 CSSPropertyClip, 94 CSSPropertyClip,
95 CSSPropertyColor, 95 CSSPropertyColor,
96 CSSPropertyColumnCount,
97 CSSPropertyColumnGap,
98 CSSPropertyColumnRuleColor,
99 CSSPropertyColumnRuleStyle,
100 CSSPropertyColumnRuleWidth,
101 CSSPropertyColumnSpan,
102 CSSPropertyColumnWidth,
96 CSSPropertyCursor, 103 CSSPropertyCursor,
97 CSSPropertyDirection, 104 CSSPropertyDirection,
98 CSSPropertyDisplay, 105 CSSPropertyDisplay,
99 CSSPropertyEmptyCells, 106 CSSPropertyEmptyCells,
100 CSSPropertyFloat, 107 CSSPropertyFloat,
101 CSSPropertyFontFamily, 108 CSSPropertyFontFamily,
102 CSSPropertyFontKerning, 109 CSSPropertyFontKerning,
103 CSSPropertyFontSize, 110 CSSPropertyFontSize,
104 CSSPropertyFontSizeAdjust, 111 CSSPropertyFontSizeAdjust,
105 CSSPropertyFontStretch, 112 CSSPropertyFontStretch,
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
201 CSSPropertyWebkitBoxFlexGroup, 208 CSSPropertyWebkitBoxFlexGroup,
202 CSSPropertyWebkitBoxLines, 209 CSSPropertyWebkitBoxLines,
203 CSSPropertyWebkitBoxOrdinalGroup, 210 CSSPropertyWebkitBoxOrdinalGroup,
204 CSSPropertyWebkitBoxOrient, 211 CSSPropertyWebkitBoxOrient,
205 CSSPropertyWebkitBoxPack, 212 CSSPropertyWebkitBoxPack,
206 CSSPropertyWebkitBoxReflect, 213 CSSPropertyWebkitBoxReflect,
207 CSSPropertyWebkitClipPath, 214 CSSPropertyWebkitClipPath,
208 CSSPropertyWebkitColumnBreakAfter, 215 CSSPropertyWebkitColumnBreakAfter,
209 CSSPropertyWebkitColumnBreakBefore, 216 CSSPropertyWebkitColumnBreakBefore,
210 CSSPropertyWebkitColumnBreakInside, 217 CSSPropertyWebkitColumnBreakInside,
211 CSSPropertyWebkitColumnCount,
212 CSSPropertyWebkitColumnGap,
213 CSSPropertyWebkitColumnRuleColor,
214 CSSPropertyWebkitColumnRuleStyle,
215 CSSPropertyWebkitColumnRuleWidth,
216 CSSPropertyWebkitColumnSpan,
217 CSSPropertyWebkitColumnWidth,
218 CSSPropertyWebkitFilter, 218 CSSPropertyWebkitFilter,
219 CSSPropertyAlignContent, 219 CSSPropertyAlignContent,
220 CSSPropertyAlignItems, 220 CSSPropertyAlignItems,
221 CSSPropertyAlignSelf, 221 CSSPropertyAlignSelf,
222 CSSPropertyFlexBasis, 222 CSSPropertyFlexBasis,
223 CSSPropertyFlexGrow, 223 CSSPropertyFlexGrow,
224 CSSPropertyFlexShrink, 224 CSSPropertyFlexShrink,
225 CSSPropertyFlexDirection, 225 CSSPropertyFlexDirection,
226 CSSPropertyFlexWrap, 226 CSSPropertyFlexWrap,
227 CSSPropertyJustifyContent, 227 CSSPropertyJustifyContent,
(...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after
514 { 514 {
515 if (!m_node) 515 if (!m_node)
516 return 0; 516 return 0;
517 if (m_node->isElementNode()) { 517 if (m_node->isElementNode()) {
518 if (PseudoElement* element = toElement(m_node)->pseudoElement(m_pseudoEl ementSpecifier)) 518 if (PseudoElement* element = toElement(m_node)->pseudoElement(m_pseudoEl ementSpecifier))
519 return element; 519 return element;
520 } 520 }
521 return m_node.get(); 521 return m_node.get();
522 } 522 }
523 523
524 PassRefPtrWillBeRawPtr<CSSValue> CSSComputedStyleDeclaration::getPropertyCSSValu e(CSSPropertyID propertyID) const 524 PassRefPtrWillBeRawPtr<CSSValue> CSSComputedStyleDeclaration::getPropertyCSSValu e(CSSPropertyID unresolvedProperty) const
525 { 525 {
526 CSSPropertyID propertyID = resolveCSSPropertyID(unresolvedProperty);
526 Node* styledNode = this->styledNode(); 527 Node* styledNode = this->styledNode();
527 if (!styledNode) 528 if (!styledNode)
528 return nullptr; 529 return nullptr;
529 LayoutObject* layoutObject = styledNode->layoutObject(); 530 LayoutObject* layoutObject = styledNode->layoutObject();
530 const ComputedStyle* style; 531 const ComputedStyle* style;
531 532
532 Document& document = styledNode->document(); 533 Document& document = styledNode->document();
533 534
534 // A timing update may be required if a compositor animation is running. 535 // A timing update may be required if a compositor animation is running.
535 DocumentAnimations::updateAnimationTimingForGetComputedStyle(*styledNode, pr opertyID); 536 DocumentAnimations::updateAnimationTimingForGetComputedStyle(*styledNode, pr opertyID);
(...skipping 14 matching lines...) Expand all
550 if (forceFullLayout) { 551 if (forceFullLayout) {
551 document.updateLayoutIgnorePendingStylesheets(); 552 document.updateLayoutIgnorePendingStylesheets();
552 styledNode = this->styledNode(); 553 styledNode = this->styledNode();
553 style = computeComputedStyle(); 554 style = computeComputedStyle();
554 layoutObject = styledNode->layoutObject(); 555 layoutObject = styledNode->layoutObject();
555 } 556 }
556 557
557 if (!style) 558 if (!style)
558 return nullptr; 559 return nullptr;
559 560
560 RefPtrWillBeRawPtr<CSSValue> value = ComputedStyleCSSValueMapping::get(prope rtyID, *style, layoutObject, styledNode, m_allowVisitedStyle); 561 RefPtrWillBeRawPtr<CSSValue> value = ComputedStyleCSSValueMapping::get(unres olvedProperty, *style, layoutObject, styledNode, ComputedStyleCSSValueMapping::N otDoingShorthand, m_allowVisitedStyle);
561 if (value) 562 if (value)
562 return value; 563 return value;
563 564
564 logUnimplementedPropertyID(propertyID); 565 logUnimplementedPropertyID(propertyID);
565 return nullptr; 566 return nullptr;
566 } 567 }
567 568
568 String CSSComputedStyleDeclaration::getPropertyValue(CSSPropertyID propertyID) c onst 569 String CSSComputedStyleDeclaration::getPropertyValue(CSSPropertyID unresolvedPro perty) const
569 { 570 {
570 RefPtrWillBeRawPtr<CSSValue> value = getPropertyCSSValue(propertyID); 571 RefPtrWillBeRawPtr<CSSValue> value = getPropertyCSSValue(unresolvedProperty) ;
571 if (value) 572 if (value)
572 return value->cssText(); 573 return value->cssText();
573 return ""; 574 return "undefined";
574 } 575 }
575 576
576 577
577 unsigned CSSComputedStyleDeclaration::length() const 578 unsigned CSSComputedStyleDeclaration::length() const
578 { 579 {
579 if (!m_node || !m_node->inActiveDocument()) 580 if (!m_node || !m_node->inActiveDocument())
580 return 0; 581 return 0;
581 return computableProperties().size(); 582 return computableProperties().size();
582 } 583 }
583 584
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
656 { 657 {
657 exceptionState.throwDOMException(NoModificationAllowedError, "These styles a re computed, and therefore the '" + name + "' property is read-only."); 658 exceptionState.throwDOMException(NoModificationAllowedError, "These styles a re computed, and therefore the '" + name + "' property is read-only.");
658 } 659 }
659 660
660 String CSSComputedStyleDeclaration::removeProperty(const String& name, Exception State& exceptionState) 661 String CSSComputedStyleDeclaration::removeProperty(const String& name, Exception State& exceptionState)
661 { 662 {
662 exceptionState.throwDOMException(NoModificationAllowedError, "These styles a re computed, and therefore the '" + name + "' property is read-only."); 663 exceptionState.throwDOMException(NoModificationAllowedError, "These styles a re computed, and therefore the '" + name + "' property is read-only.");
663 return String(); 664 return String();
664 } 665 }
665 666
666 PassRefPtrWillBeRawPtr<CSSValue> CSSComputedStyleDeclaration::getPropertyCSSValu eInternal(CSSPropertyID propertyID) 667 PassRefPtrWillBeRawPtr<CSSValue> CSSComputedStyleDeclaration::getPropertyCSSValu eInternal(CSSPropertyID unresolvedProperty)
667 { 668 {
668 return getPropertyCSSValue(propertyID); 669 return getPropertyCSSValue(unresolvedProperty);
669 } 670 }
670 671
671 String CSSComputedStyleDeclaration::getPropertyValueInternal(CSSPropertyID prope rtyID) 672 String CSSComputedStyleDeclaration::getPropertyValueInternal(CSSPropertyID unres olvedProperty)
672 { 673 {
673 return getPropertyValue(propertyID); 674 return getPropertyValue(unresolvedProperty);
674 } 675 }
675 676
676 void CSSComputedStyleDeclaration::setPropertyInternal(CSSPropertyID id, const St ring&, bool, ExceptionState& exceptionState) 677 void CSSComputedStyleDeclaration::setPropertyInternal(CSSPropertyID id, const St ring&, bool, ExceptionState& exceptionState)
677 { 678 {
678 exceptionState.throwDOMException(NoModificationAllowedError, "These styles a re computed, and therefore the '" + getPropertyNameString(id) + "' property is r ead-only."); 679 exceptionState.throwDOMException(NoModificationAllowedError, "These styles a re computed, and therefore the '" + getPropertyNameString(id) + "' property is r ead-only.");
679 } 680 }
680 681
681 DEFINE_TRACE(CSSComputedStyleDeclaration) 682 DEFINE_TRACE(CSSComputedStyleDeclaration)
682 { 683 {
683 visitor->trace(m_node); 684 visitor->trace(m_node);
684 CSSStyleDeclaration::trace(visitor); 685 CSSStyleDeclaration::trace(visitor);
685 } 686 }
686 687
687 } // namespace blink 688 } // namespace blink
OLDNEW
« no previous file with comments | « Source/core/animation/css/CSSPropertyEquality.cpp ('k') | Source/core/css/CSSProperties.in » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698