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

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

Issue 1306283006: BackgroundImage incorrectly returns empty url() when created on-the-fly (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Ensure getComputedStyle returns absolute URLs Created 5 years, 3 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
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 * Copyright (C) 2015 Google Inc. All rights reserved. 7 * Copyright (C) 2015 Google Inc. All rights reserved.
8 * 8 *
9 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Lesser General Public 10 * modify it under the terms of the GNU Lesser General Public
(...skipping 304 matching lines...) Expand 10 before | Expand all | Expand 10 after
315 } 315 }
316 316
317 static PassRefPtrWillBeRawPtr<CSSValue> valueForNinePieceImage(const NinePieceIm age& image, const ComputedStyle& style) 317 static PassRefPtrWillBeRawPtr<CSSValue> valueForNinePieceImage(const NinePieceIm age& image, const ComputedStyle& style)
318 { 318 {
319 if (!image.hasImage()) 319 if (!image.hasImage())
320 return cssValuePool().createIdentifierValue(CSSValueNone); 320 return cssValuePool().createIdentifierValue(CSSValueNone);
321 321
322 // Image first. 322 // Image first.
323 RefPtrWillBeRawPtr<CSSValue> imageValue = nullptr; 323 RefPtrWillBeRawPtr<CSSValue> imageValue = nullptr;
324 if (image.image()) 324 if (image.image())
325 imageValue = image.image()->cssValue(); 325 imageValue = image.image()->computedCSSValue();
326 326
327 // Create the image slice. 327 // Create the image slice.
328 RefPtrWillBeRawPtr<CSSBorderImageSliceValue> imageSlices = valueForNinePiece ImageSlice(image); 328 RefPtrWillBeRawPtr<CSSBorderImageSliceValue> imageSlices = valueForNinePiece ImageSlice(image);
329 329
330 // Create the border area slices. 330 // Create the border area slices.
331 RefPtrWillBeRawPtr<CSSValue> borderSlices = valueForNinePieceImageQuad(image .borderSlices(), style); 331 RefPtrWillBeRawPtr<CSSValue> borderSlices = valueForNinePieceImageQuad(image .borderSlices(), style);
332 332
333 // Create the border outset. 333 // Create the border outset.
334 RefPtrWillBeRawPtr<CSSValue> outset = valueForNinePieceImageQuad(image.outse t(), style); 334 RefPtrWillBeRawPtr<CSSValue> outset = valueForNinePieceImageQuad(image.outse t(), style);
335 335
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
417 RefPtrWillBeRawPtr<CSSValueList> ret = CSSValueList::createCommaSeparated(); 417 RefPtrWillBeRawPtr<CSSValueList> ret = CSSValueList::createCommaSeparated();
418 const FillLayer* currLayer = &style.backgroundLayers(); 418 const FillLayer* currLayer = &style.backgroundLayers();
419 for (; currLayer; currLayer = currLayer->next()) { 419 for (; currLayer; currLayer = currLayer->next()) {
420 RefPtrWillBeRawPtr<CSSValueList> list = CSSValueList::createSlashSeparat ed(); 420 RefPtrWillBeRawPtr<CSSValueList> list = CSSValueList::createSlashSeparat ed();
421 RefPtrWillBeRawPtr<CSSValueList> beforeSlash = CSSValueList::createSpace Separated(); 421 RefPtrWillBeRawPtr<CSSValueList> beforeSlash = CSSValueList::createSpace Separated();
422 if (!currLayer->next()) { // color only for final layer 422 if (!currLayer->next()) { // color only for final layer
423 RefPtrWillBeRawPtr<CSSValue> value = ComputedStyleCSSValueMapping::g et(CSSPropertyBackgroundColor, style, layoutObject, styledNode, allowVisitedStyl e); 423 RefPtrWillBeRawPtr<CSSValue> value = ComputedStyleCSSValueMapping::g et(CSSPropertyBackgroundColor, style, layoutObject, styledNode, allowVisitedStyl e);
424 ASSERT(value); 424 ASSERT(value);
425 beforeSlash->append(value); 425 beforeSlash->append(value);
426 } 426 }
427 beforeSlash->append(currLayer->image() ? currLayer->image()->cssValue() : cssValuePool().createIdentifierValue(CSSValueNone)); 427 beforeSlash->append(currLayer->image() ? currLayer->image()->computedCSS Value() : cssValuePool().createIdentifierValue(CSSValueNone));
428 beforeSlash->append(valueForFillRepeat(currLayer->repeatX(), currLayer-> repeatY())); 428 beforeSlash->append(valueForFillRepeat(currLayer->repeatX(), currLayer-> repeatY()));
429 beforeSlash->append(cssValuePool().createValue(currLayer->attachment())) ; 429 beforeSlash->append(cssValuePool().createValue(currLayer->attachment())) ;
430 beforeSlash->append(createPositionListForLayer(CSSPropertyBackgroundPosi tion, *currLayer, style)); 430 beforeSlash->append(createPositionListForLayer(CSSPropertyBackgroundPosi tion, *currLayer, style));
431 list->append(beforeSlash); 431 list->append(beforeSlash);
432 RefPtrWillBeRawPtr<CSSValueList> afterSlash = CSSValueList::createSpaceS eparated(); 432 RefPtrWillBeRawPtr<CSSValueList> afterSlash = CSSValueList::createSpaceS eparated();
433 afterSlash->append(valueForFillSize(currLayer->size(), style)); 433 afterSlash->append(valueForFillSize(currLayer->size(), style));
434 afterSlash->append(cssValuePool().createValue(currLayer->origin())); 434 afterSlash->append(cssValuePool().createValue(currLayer->origin()));
435 afterSlash->append(cssValuePool().createValue(currLayer->clip())); 435 afterSlash->append(cssValuePool().createValue(currLayer->clip()));
436 list->append(afterSlash); 436 list->append(afterSlash);
437 ret->append(list); 437 ret->append(list);
(...skipping 546 matching lines...) Expand 10 before | Expand all | Expand 10 after
984 RefPtrWillBeRawPtr<CSSPrimitiveValue> identifier = cssValuePool().cr eateValue(counter->identifier(), CSSPrimitiveValue::UnitType::CustomIdentifier); 984 RefPtrWillBeRawPtr<CSSPrimitiveValue> identifier = cssValuePool().cr eateValue(counter->identifier(), CSSPrimitiveValue::UnitType::CustomIdentifier);
985 RefPtrWillBeRawPtr<CSSPrimitiveValue> separator = cssValuePool().cre ateValue(counter->separator(), CSSPrimitiveValue::UnitType::CustomIdentifier); 985 RefPtrWillBeRawPtr<CSSPrimitiveValue> separator = cssValuePool().cre ateValue(counter->separator(), CSSPrimitiveValue::UnitType::CustomIdentifier);
986 CSSValueID listStyleIdent = CSSValueNone; 986 CSSValueID listStyleIdent = CSSValueNone;
987 if (counter->listStyle() != NoneListStyle) 987 if (counter->listStyle() != NoneListStyle)
988 listStyleIdent = static_cast<CSSValueID>(CSSValueDisc + counter- >listStyle()); 988 listStyleIdent = static_cast<CSSValueID>(CSSValueDisc + counter- >listStyle());
989 RefPtrWillBeRawPtr<CSSPrimitiveValue> listStyle = cssValuePool().cre ateIdentifierValue(listStyleIdent); 989 RefPtrWillBeRawPtr<CSSPrimitiveValue> listStyle = cssValuePool().cre ateIdentifierValue(listStyleIdent);
990 list->append(CSSCounterValue::create(identifier.release(), listStyle .release(), separator.release())); 990 list->append(CSSCounterValue::create(identifier.release(), listStyle .release(), separator.release()));
991 } else if (contentData->isImage()) { 991 } else if (contentData->isImage()) {
992 const StyleImage* image = toImageContentData(contentData)->image(); 992 const StyleImage* image = toImageContentData(contentData)->image();
993 ASSERT(image); 993 ASSERT(image);
994 list->append(image->cssValue()); 994 list->append(image->computedCSSValue());
995 } else if (contentData->isText()) { 995 } else if (contentData->isText()) {
996 list->append(cssValuePool().createValue(toTextContentData(contentDat a)->text(), CSSPrimitiveValue::UnitType::String)); 996 list->append(cssValuePool().createValue(toTextContentData(contentDat a)->text(), CSSPrimitiveValue::UnitType::String));
997 } else if (contentData->isQuote()) { 997 } else if (contentData->isQuote()) {
998 const QuoteType quoteType = toQuoteContentData(contentData)->quote() ; 998 const QuoteType quoteType = toQuoteContentData(contentData)->quote() ;
999 list->append(cssValuePool().createIdentifierValue(valueForQuoteType( quoteType))); 999 list->append(cssValuePool().createIdentifierValue(valueForQuoteType( quoteType)));
1000 } else { 1000 } else {
1001 ASSERT_NOT_REACHED(); 1001 ASSERT_NOT_REACHED();
1002 } 1002 }
1003 } 1003 }
1004 return list.release(); 1004 return list.release();
(...skipping 23 matching lines...) Expand all
1028 } 1028 }
1029 1029
1030 static PassRefPtrWillBeRawPtr<CSSValue> valueForShape(const ComputedStyle& style , ShapeValue* shapeValue) 1030 static PassRefPtrWillBeRawPtr<CSSValue> valueForShape(const ComputedStyle& style , ShapeValue* shapeValue)
1031 { 1031 {
1032 if (!shapeValue) 1032 if (!shapeValue)
1033 return cssValuePool().createIdentifierValue(CSSValueNone); 1033 return cssValuePool().createIdentifierValue(CSSValueNone);
1034 if (shapeValue->type() == ShapeValue::Box) 1034 if (shapeValue->type() == ShapeValue::Box)
1035 return cssValuePool().createValue(shapeValue->cssBox()); 1035 return cssValuePool().createValue(shapeValue->cssBox());
1036 if (shapeValue->type() == ShapeValue::Image) { 1036 if (shapeValue->type() == ShapeValue::Image) {
1037 if (shapeValue->image()) 1037 if (shapeValue->image())
1038 return shapeValue->image()->cssValue(); 1038 return shapeValue->image()->computedCSSValue();
1039 return cssValuePool().createIdentifierValue(CSSValueNone); 1039 return cssValuePool().createIdentifierValue(CSSValueNone);
1040 } 1040 }
1041 1041
1042 ASSERT(shapeValue->type() == ShapeValue::Shape); 1042 ASSERT(shapeValue->type() == ShapeValue::Shape);
1043 1043
1044 RefPtrWillBeRawPtr<CSSValueList> list = CSSValueList::createSpaceSeparated() ; 1044 RefPtrWillBeRawPtr<CSSValueList> list = CSSValueList::createSpaceSeparated() ;
1045 list->append(valueForBasicShape(style, shapeValue->shape())); 1045 list->append(valueForBasicShape(style, shapeValue->shape()));
1046 if (shapeValue->cssBox() != BoxMissing) 1046 if (shapeValue->cssBox() != BoxMissing)
1047 list->append(cssValuePool().createValue(shapeValue->cssBox())); 1047 list->append(cssValuePool().createValue(shapeValue->cssBox()));
1048 return list.release(); 1048 return list.release();
(...skipping 301 matching lines...) Expand 10 before | Expand all | Expand 10 after
1350 return nullptr; 1350 return nullptr;
1351 1351
1352 case CSSPropertyBackgroundColor: 1352 case CSSPropertyBackgroundColor:
1353 return allowVisitedStyle ? cssValuePool().createColorValue(style.visited DependentColor(CSSPropertyBackgroundColor).rgb()) : currentColorOrValidColor(sty le, style.backgroundColor()); 1353 return allowVisitedStyle ? cssValuePool().createColorValue(style.visited DependentColor(CSSPropertyBackgroundColor).rgb()) : currentColorOrValidColor(sty le, style.backgroundColor());
1354 case CSSPropertyBackgroundImage: 1354 case CSSPropertyBackgroundImage:
1355 case CSSPropertyWebkitMaskImage: { 1355 case CSSPropertyWebkitMaskImage: {
1356 RefPtrWillBeRawPtr<CSSValueList> list = CSSValueList::createCommaSeparat ed(); 1356 RefPtrWillBeRawPtr<CSSValueList> list = CSSValueList::createCommaSeparat ed();
1357 const FillLayer* currLayer = propertyID == CSSPropertyWebkitMaskImage ? &style.maskLayers() : &style.backgroundLayers(); 1357 const FillLayer* currLayer = propertyID == CSSPropertyWebkitMaskImage ? &style.maskLayers() : &style.backgroundLayers();
1358 for (; currLayer; currLayer = currLayer->next()) { 1358 for (; currLayer; currLayer = currLayer->next()) {
1359 if (currLayer->image()) 1359 if (currLayer->image())
1360 list->append(currLayer->image()->cssValue()); 1360 list->append(currLayer->image()->computedCSSValue());
1361 else 1361 else
1362 list->append(cssValuePool().createIdentifierValue(CSSValueNone)) ; 1362 list->append(cssValuePool().createIdentifierValue(CSSValueNone)) ;
1363 } 1363 }
1364 return list.release(); 1364 return list.release();
1365 } 1365 }
1366 case CSSPropertyBackgroundSize: 1366 case CSSPropertyBackgroundSize:
1367 case CSSPropertyWebkitMaskSize: { 1367 case CSSPropertyWebkitMaskSize: {
1368 RefPtrWillBeRawPtr<CSSValueList> list = CSSValueList::createCommaSeparat ed(); 1368 RefPtrWillBeRawPtr<CSSValueList> list = CSSValueList::createCommaSeparat ed();
1369 const FillLayer* currLayer = propertyID == CSSPropertyWebkitMaskSize ? & style.maskLayers() : &style.backgroundLayers(); 1369 const FillLayer* currLayer = propertyID == CSSPropertyWebkitMaskSize ? & style.maskLayers() : &style.backgroundLayers();
1370 for (; currLayer; currLayer = currLayer->next()) 1370 for (; currLayer; currLayer = currLayer->next())
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
1447 list->append(zoomAdjustedPixelValue(style.horizontalBorderSpacing(), sty le)); 1447 list->append(zoomAdjustedPixelValue(style.horizontalBorderSpacing(), sty le));
1448 list->append(zoomAdjustedPixelValue(style.verticalBorderSpacing(), style )); 1448 list->append(zoomAdjustedPixelValue(style.verticalBorderSpacing(), style ));
1449 return list.release(); 1449 return list.release();
1450 } 1450 }
1451 case CSSPropertyWebkitBorderHorizontalSpacing: 1451 case CSSPropertyWebkitBorderHorizontalSpacing:
1452 return zoomAdjustedPixelValue(style.horizontalBorderSpacing(), style); 1452 return zoomAdjustedPixelValue(style.horizontalBorderSpacing(), style);
1453 case CSSPropertyWebkitBorderVerticalSpacing: 1453 case CSSPropertyWebkitBorderVerticalSpacing:
1454 return zoomAdjustedPixelValue(style.verticalBorderSpacing(), style); 1454 return zoomAdjustedPixelValue(style.verticalBorderSpacing(), style);
1455 case CSSPropertyBorderImageSource: 1455 case CSSPropertyBorderImageSource:
1456 if (style.borderImageSource()) 1456 if (style.borderImageSource())
1457 return style.borderImageSource()->cssValue(); 1457 return style.borderImageSource()->computedCSSValue();
1458 return cssValuePool().createIdentifierValue(CSSValueNone); 1458 return cssValuePool().createIdentifierValue(CSSValueNone);
1459 case CSSPropertyBorderTopColor: 1459 case CSSPropertyBorderTopColor:
1460 return allowVisitedStyle ? cssValuePool().createColorValue(style.visited DependentColor(CSSPropertyBorderTopColor).rgb()) : currentColorOrValidColor(styl e, style.borderTopColor()); 1460 return allowVisitedStyle ? cssValuePool().createColorValue(style.visited DependentColor(CSSPropertyBorderTopColor).rgb()) : currentColorOrValidColor(styl e, style.borderTopColor());
1461 case CSSPropertyBorderRightColor: 1461 case CSSPropertyBorderRightColor:
1462 return allowVisitedStyle ? cssValuePool().createColorValue(style.visited DependentColor(CSSPropertyBorderRightColor).rgb()) : currentColorOrValidColor(st yle, style.borderRightColor()); 1462 return allowVisitedStyle ? cssValuePool().createColorValue(style.visited DependentColor(CSSPropertyBorderRightColor).rgb()) : currentColorOrValidColor(st yle, style.borderRightColor());
1463 case CSSPropertyBorderBottomColor: 1463 case CSSPropertyBorderBottomColor:
1464 return allowVisitedStyle ? cssValuePool().createColorValue(style.visited DependentColor(CSSPropertyBorderBottomColor).rgb()) : currentColorOrValidColor(s tyle, style.borderBottomColor()); 1464 return allowVisitedStyle ? cssValuePool().createColorValue(style.visited DependentColor(CSSPropertyBorderBottomColor).rgb()) : currentColorOrValidColor(s tyle, style.borderBottomColor());
1465 case CSSPropertyBorderLeftColor: 1465 case CSSPropertyBorderLeftColor:
1466 return allowVisitedStyle ? cssValuePool().createColorValue(style.visited DependentColor(CSSPropertyBorderLeftColor).rgb()) : currentColorOrValidColor(sty le, style.borderLeftColor()); 1466 return allowVisitedStyle ? cssValuePool().createColorValue(style.visited DependentColor(CSSPropertyBorderLeftColor).rgb()) : currentColorOrValidColor(sty le, style.borderLeftColor());
1467 case CSSPropertyBorderTopStyle: 1467 case CSSPropertyBorderTopStyle:
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
1546 case CSSPropertyTabSize: 1546 case CSSPropertyTabSize:
1547 return cssValuePool().createValue( 1547 return cssValuePool().createValue(
1548 style.tabSize().getPixelSize(1.0), style.tabSize().isSpaces() ? CSSP rimitiveValue::UnitType::Number : CSSPrimitiveValue::UnitType::Pixels); 1548 style.tabSize().getPixelSize(1.0), style.tabSize().isSpaces() ? CSSP rimitiveValue::UnitType::Number : CSSPrimitiveValue::UnitType::Pixels);
1549 case CSSPropertyCursor: { 1549 case CSSPropertyCursor: {
1550 RefPtrWillBeRawPtr<CSSValueList> list = nullptr; 1550 RefPtrWillBeRawPtr<CSSValueList> list = nullptr;
1551 CursorList* cursors = style.cursors(); 1551 CursorList* cursors = style.cursors();
1552 if (cursors && cursors->size() > 0) { 1552 if (cursors && cursors->size() > 0) {
1553 list = CSSValueList::createCommaSeparated(); 1553 list = CSSValueList::createCommaSeparated();
1554 for (unsigned i = 0; i < cursors->size(); ++i) { 1554 for (unsigned i = 0; i < cursors->size(); ++i) {
1555 if (StyleImage* image = cursors->at(i).image()) 1555 if (StyleImage* image = cursors->at(i).image())
1556 list->append(image->cssValue()); 1556 list->append(image->computedCSSValue());
1557 } 1557 }
1558 } 1558 }
1559 RefPtrWillBeRawPtr<CSSValue> value = cssValuePool().createValue(style.cu rsor()); 1559 RefPtrWillBeRawPtr<CSSValue> value = cssValuePool().createValue(style.cu rsor());
1560 if (list) { 1560 if (list) {
1561 list->append(value.release()); 1561 list->append(value.release());
1562 return list.release(); 1562 return list.release();
1563 } 1563 }
1564 return value.release(); 1564 return value.release();
1565 } 1565 }
1566 case CSSPropertyDirection: 1566 case CSSPropertyDirection:
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after
1731 return cssValuePool().createIdentifierValue(CSSValueNormal); 1731 return cssValuePool().createIdentifierValue(CSSValueNormal);
1732 return zoomAdjustedPixelValue(style.letterSpacing(), style); 1732 return zoomAdjustedPixelValue(style.letterSpacing(), style);
1733 case CSSPropertyWebkitLineClamp: 1733 case CSSPropertyWebkitLineClamp:
1734 if (style.lineClamp().isNone()) 1734 if (style.lineClamp().isNone())
1735 return cssValuePool().createIdentifierValue(CSSValueNone); 1735 return cssValuePool().createIdentifierValue(CSSValueNone);
1736 return cssValuePool().createValue(style.lineClamp().value(), style.lineC lamp().isPercentage() ? CSSPrimitiveValue::UnitType::Percentage : CSSPrimitiveVa lue::UnitType::Number); 1736 return cssValuePool().createValue(style.lineClamp().value(), style.lineC lamp().isPercentage() ? CSSPrimitiveValue::UnitType::Percentage : CSSPrimitiveVa lue::UnitType::Number);
1737 case CSSPropertyLineHeight: 1737 case CSSPropertyLineHeight:
1738 return valueForLineHeight(style); 1738 return valueForLineHeight(style);
1739 case CSSPropertyListStyleImage: 1739 case CSSPropertyListStyleImage:
1740 if (style.listStyleImage()) 1740 if (style.listStyleImage())
1741 return style.listStyleImage()->cssValue(); 1741 return style.listStyleImage()->computedCSSValue();
1742 return cssValuePool().createIdentifierValue(CSSValueNone); 1742 return cssValuePool().createIdentifierValue(CSSValueNone);
1743 case CSSPropertyListStylePosition: 1743 case CSSPropertyListStylePosition:
1744 return cssValuePool().createValue(style.listStylePosition()); 1744 return cssValuePool().createValue(style.listStylePosition());
1745 case CSSPropertyListStyleType: 1745 case CSSPropertyListStyleType:
1746 return cssValuePool().createValue(style.listStyleType()); 1746 return cssValuePool().createValue(style.listStyleType());
1747 case CSSPropertyWebkitLocale: 1747 case CSSPropertyWebkitLocale:
1748 if (style.locale().isNull()) 1748 if (style.locale().isNull())
1749 return cssValuePool().createIdentifierValue(CSSValueAuto); 1749 return cssValuePool().createIdentifierValue(CSSValueAuto);
1750 return cssValuePool().createValue(style.locale(), CSSPrimitiveValue::Uni tType::String); 1750 return cssValuePool().createValue(style.locale(), CSSPrimitiveValue::Uni tType::String);
1751 case CSSPropertyMarginTop: { 1751 case CSSPropertyMarginTop: {
(...skipping 426 matching lines...) Expand 10 before | Expand all | Expand 10 after
2178 case CSSPropertyWebkitMaskBoxImageOutset: 2178 case CSSPropertyWebkitMaskBoxImageOutset:
2179 return valueForNinePieceImageQuad(style.maskBoxImage().outset(), style); 2179 return valueForNinePieceImageQuad(style.maskBoxImage().outset(), style);
2180 case CSSPropertyWebkitMaskBoxImageRepeat: 2180 case CSSPropertyWebkitMaskBoxImageRepeat:
2181 return valueForNinePieceImageRepeat(style.maskBoxImage()); 2181 return valueForNinePieceImageRepeat(style.maskBoxImage());
2182 case CSSPropertyWebkitMaskBoxImageSlice: 2182 case CSSPropertyWebkitMaskBoxImageSlice:
2183 return valueForNinePieceImageSlice(style.maskBoxImage()); 2183 return valueForNinePieceImageSlice(style.maskBoxImage());
2184 case CSSPropertyWebkitMaskBoxImageWidth: 2184 case CSSPropertyWebkitMaskBoxImageWidth:
2185 return valueForNinePieceImageQuad(style.maskBoxImage().borderSlices(), s tyle); 2185 return valueForNinePieceImageQuad(style.maskBoxImage().borderSlices(), s tyle);
2186 case CSSPropertyWebkitMaskBoxImageSource: 2186 case CSSPropertyWebkitMaskBoxImageSource:
2187 if (style.maskBoxImageSource()) 2187 if (style.maskBoxImageSource())
2188 return style.maskBoxImageSource()->cssValue(); 2188 return style.maskBoxImageSource()->computedCSSValue();
2189 return cssValuePool().createIdentifierValue(CSSValueNone); 2189 return cssValuePool().createIdentifierValue(CSSValueNone);
2190 case CSSPropertyWebkitFontSizeDelta: 2190 case CSSPropertyWebkitFontSizeDelta:
2191 // Not a real style property -- used by the editing engine -- so has no computed value. 2191 // Not a real style property -- used by the editing engine -- so has no computed value.
2192 return nullptr; 2192 return nullptr;
2193 case CSSPropertyWebkitMarginBottomCollapse: 2193 case CSSPropertyWebkitMarginBottomCollapse:
2194 case CSSPropertyWebkitMarginAfterCollapse: 2194 case CSSPropertyWebkitMarginAfterCollapse:
2195 return cssValuePool().createValue(style.marginAfterCollapse()); 2195 return cssValuePool().createValue(style.marginAfterCollapse());
2196 case CSSPropertyWebkitMarginTopCollapse: 2196 case CSSPropertyWebkitMarginTopCollapse:
2197 case CSSPropertyWebkitMarginBeforeCollapse: 2197 case CSSPropertyWebkitMarginBeforeCollapse:
2198 return cssValuePool().createValue(style.marginBeforeCollapse()); 2198 return cssValuePool().createValue(style.marginBeforeCollapse());
(...skipping 467 matching lines...) Expand 10 before | Expand all | Expand 10 after
2666 case CSSPropertyAll: 2666 case CSSPropertyAll:
2667 return nullptr; 2667 return nullptr;
2668 default: 2668 default:
2669 break; 2669 break;
2670 } 2670 }
2671 ASSERT_NOT_REACHED(); 2671 ASSERT_NOT_REACHED();
2672 return nullptr; 2672 return nullptr;
2673 } 2673 }
2674 2674
2675 } 2675 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698