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

Side by Side Diff: Source/core/css/resolver/CSSToStyleMap.cpp

Issue 1306823004: Split out String, URI and CustomIdent from CSSPrimitiveValue (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@split_out_attr_values
Patch Set: Fixing tests 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) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 2004-2005 Allan Sandfeld Jensen (kde@carewolf.com) 3 * (C) 2004-2005 Allan Sandfeld Jensen (kde@carewolf.com)
4 * Copyright (C) 2006, 2007 Nicholas Shanks (webkit@nickshanks.com) 4 * Copyright (C) 2006, 2007 Nicholas Shanks (webkit@nickshanks.com)
5 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All r ights reserved. 5 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All r ights reserved.
6 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org> 6 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org>
7 * Copyright (C) 2007, 2008 Eric Seidel <eric@webkit.org> 7 * Copyright (C) 2007, 2008 Eric Seidel <eric@webkit.org>
8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/) 8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/)
9 * Copyright (c) 2011, Code Aurora Forum. All rights reserved. 9 * Copyright (c) 2011, Code Aurora Forum. All rights reserved.
10 * Copyright (C) Research In Motion Limited 2011. All rights reserved. 10 * Copyright (C) Research In Motion Limited 2011. All rights reserved.
(...skipping 329 matching lines...) Expand 10 before | Expand all | Expand 10 after
340 CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(value); 340 CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(value);
341 if (primitiveValue->getValueID() == CSSValueInfinite) 341 if (primitiveValue->getValueID() == CSSValueInfinite)
342 return std::numeric_limits<double>::infinity(); 342 return std::numeric_limits<double>::infinity();
343 return primitiveValue->getFloatValue(); 343 return primitiveValue->getFloatValue();
344 } 344 }
345 345
346 AtomicString CSSToStyleMap::mapAnimationName(CSSValue* value) 346 AtomicString CSSToStyleMap::mapAnimationName(CSSValue* value)
347 { 347 {
348 if (value->isInitialValue()) 348 if (value->isInitialValue())
349 return CSSAnimationData::initialName(); 349 return CSSAnimationData::initialName();
350 CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(value); 350 if (value->isPrimitiveValue() && toCSSPrimitiveValue(value)->getValueID() == CSSValueNone)
351 if (primitiveValue->getValueID() == CSSValueNone)
352 return CSSAnimationData::initialName(); 351 return CSSAnimationData::initialName();
353 return AtomicString(primitiveValue->getStringValue()); 352 return AtomicString(toCSSCustomIdentValue(value)->value());
354 } 353 }
355 354
356 EAnimPlayState CSSToStyleMap::mapAnimationPlayState(CSSValue* value) 355 EAnimPlayState CSSToStyleMap::mapAnimationPlayState(CSSValue* value)
357 { 356 {
358 if (value->isInitialValue()) 357 if (value->isInitialValue())
359 return CSSAnimationData::initialPlayState(); 358 return CSSAnimationData::initialPlayState();
360 if (toCSSPrimitiveValue(value)->getValueID() == CSSValuePaused) 359 if (toCSSPrimitiveValue(value)->getValueID() == CSSValuePaused)
361 return AnimPlayStatePaused; 360 return AnimPlayStatePaused;
362 ASSERT(toCSSPrimitiveValue(value)->getValueID() == CSSValueRunning); 361 ASSERT(toCSSPrimitiveValue(value)->getValueID() == CSSValueRunning);
363 return AnimPlayStatePlaying; 362 return AnimPlayStatePlaying;
364 } 363 }
365 364
366 CSSTransitionData::TransitionProperty CSSToStyleMap::mapAnimationProperty(CSSVal ue* value) 365 CSSTransitionData::TransitionProperty CSSToStyleMap::mapAnimationProperty(CSSVal ue* value)
367 { 366 {
368 if (value->isInitialValue()) 367 if (value->isInitialValue())
369 return CSSTransitionData::initialProperty(); 368 return CSSTransitionData::initialProperty();
369 if (value->isCustomIdentValue())
370 return CSSTransitionData::TransitionProperty(toCSSCustomIdentValue(value )->value());
370 CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(value); 371 CSSPrimitiveValue* primitiveValue = toCSSPrimitiveValue(value);
371 if (primitiveValue->isCustomIdent())
372 return CSSTransitionData::TransitionProperty(primitiveValue->getStringVa lue());
373 if (primitiveValue->getValueID() == CSSValueNone) 372 if (primitiveValue->getValueID() == CSSValueNone)
374 return CSSTransitionData::TransitionProperty(CSSTransitionData::Transiti onNone); 373 return CSSTransitionData::TransitionProperty(CSSTransitionData::Transiti onNone);
375 return CSSTransitionData::TransitionProperty(primitiveValue->getPropertyID() ); 374 return CSSTransitionData::TransitionProperty(primitiveValue->getPropertyID() );
376 } 375 }
377 376
378 PassRefPtr<TimingFunction> CSSToStyleMap::mapAnimationTimingFunction(CSSValue* v alue, bool allowStepMiddle) 377 PassRefPtr<TimingFunction> CSSToStyleMap::mapAnimationTimingFunction(CSSValue* v alue, bool allowStepMiddle)
379 { 378 {
380 // FIXME: We should probably only call into this function with a valid 379 // FIXME: We should probably only call into this function with a valid
381 // single timing function value which isn't initial or inherit. We can 380 // single timing function value which isn't initial or inherit. We can
382 // currently get into here with initial since the parser expands unset 381 // currently get into here with initial since the parser expands unset
(...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after
580 verticalRule = SpaceImageRule; 579 verticalRule = SpaceImageRule;
581 break; 580 break;
582 default: // CSSValueRepeat 581 default: // CSSValueRepeat
583 verticalRule = RepeatImageRule; 582 verticalRule = RepeatImageRule;
584 break; 583 break;
585 } 584 }
586 image.setVerticalRule(verticalRule); 585 image.setVerticalRule(verticalRule);
587 } 586 }
588 587
589 }; 588 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698