| OLD | NEW |
| 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, 2013 Apple Inc.
All rights reserved. | 5 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Apple Inc.
All rights 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 747 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 758 } | 758 } |
| 759 KeyframeValue keyframeValue(1, 0); | 759 KeyframeValue keyframeValue(1, 0); |
| 760 keyframeValue.setStyle(styleForKeyframe(e, elementStyle, hundredPercentK
eyframe)); | 760 keyframeValue.setStyle(styleForKeyframe(e, elementStyle, hundredPercentK
eyframe)); |
| 761 keyframeValue.addProperties(hundredPercentKeyframe->properties()); | 761 keyframeValue.addProperties(hundredPercentKeyframe->properties()); |
| 762 list.insert(keyframeValue); | 762 list.insert(keyframeValue); |
| 763 } | 763 } |
| 764 } | 764 } |
| 765 | 765 |
| 766 void StyleResolver::resolveKeyframes(Element* element, const RenderStyle* style,
const StringImpl* name, KeyframeAnimationEffect::KeyframeVector& keyframes) | 766 void StyleResolver::resolveKeyframes(Element* element, const RenderStyle* style,
const StringImpl* name, KeyframeAnimationEffect::KeyframeVector& keyframes) |
| 767 { | 767 { |
| 768 ASSERT(RuntimeEnabledFeatures::webAnimationsCSSEnabled()); |
| 768 const StyleRuleKeyframes* keyframesRule = matchScopedKeyframesRule(element,
name); | 769 const StyleRuleKeyframes* keyframesRule = matchScopedKeyframesRule(element,
name); |
| 769 if (!keyframesRule) | 770 if (!keyframesRule) |
| 770 return; | 771 return; |
| 771 | 772 |
| 772 // Construct and populate the style for each keyframe | 773 // Construct and populate the style for each keyframe |
| 773 const Vector<RefPtr<StyleKeyframe> >& styleKeyframes = keyframesRule->keyfra
mes(); | 774 const Vector<RefPtr<StyleKeyframe> >& styleKeyframes = keyframesRule->keyfra
mes(); |
| 774 for (unsigned i = 0; i < styleKeyframes.size(); ++i) { | 775 for (unsigned i = 0; i < styleKeyframes.size(); ++i) { |
| 775 const StyleKeyframe* styleKeyframe = styleKeyframes[i].get(); | 776 const StyleKeyframe* styleKeyframe = styleKeyframes[i].get(); |
| 776 RefPtr<RenderStyle> keyframeStyle = styleForKeyframe(element, style, sty
leKeyframe); | 777 RefPtr<RenderStyle> keyframeStyle = styleForKeyframe(element, style, sty
leKeyframe); |
| 777 | 778 |
| (...skipping 12 matching lines...) Expand all Loading... |
| 790 keyframes.append(keyframe); | 791 keyframes.append(keyframe); |
| 791 } | 792 } |
| 792 } | 793 } |
| 793 | 794 |
| 794 // FIXME: If the 0% keyframe is missing, create it (but only if there is at
least one other keyframe) | 795 // FIXME: If the 0% keyframe is missing, create it (but only if there is at
least one other keyframe) |
| 795 // FIXME: If the 100% keyframe is missing, create it (but only if there is a
t least one other keyframe) | 796 // FIXME: If the 100% keyframe is missing, create it (but only if there is a
t least one other keyframe) |
| 796 } | 797 } |
| 797 | 798 |
| 798 const StylePropertySet* StyleResolver::firstKeyframeStyles(const Element* elemen
t, const StringImpl* animationName) | 799 const StylePropertySet* StyleResolver::firstKeyframeStyles(const Element* elemen
t, const StringImpl* animationName) |
| 799 { | 800 { |
| 801 ASSERT(RuntimeEnabledFeatures::webAnimationsCSSEnabled()); |
| 800 const StyleRuleKeyframes* keyframesRule = matchScopedKeyframesRule(element,
animationName); | 802 const StyleRuleKeyframes* keyframesRule = matchScopedKeyframesRule(element,
animationName); |
| 801 if (!keyframesRule) | 803 if (!keyframesRule) |
| 802 return 0; | 804 return 0; |
| 803 | 805 |
| 804 // Find the last keyframe at offset 0 | 806 // Find the last keyframe at offset 0 |
| 805 const StyleKeyframe* firstKeyframe = 0; | 807 const StyleKeyframe* firstKeyframe = 0; |
| 806 const Vector<RefPtr<StyleKeyframe> >& styleKeyframes = keyframesRule->keyfra
mes(); | 808 const Vector<RefPtr<StyleKeyframe> >& styleKeyframes = keyframesRule->keyfra
mes(); |
| 807 for (unsigned i = 0; i < styleKeyframes.size(); ++i) { | 809 for (unsigned i = 0; i < styleKeyframes.size(); ++i) { |
| 808 const StyleKeyframe* styleKeyframe = styleKeyframes[i].get(); | 810 const StyleKeyframe* styleKeyframe = styleKeyframes[i].get(); |
| 809 | 811 |
| (...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1037 | 1039 |
| 1038 return collector.matchedRuleList(); | 1040 return collector.matchedRuleList(); |
| 1039 } | 1041 } |
| 1040 | 1042 |
| 1041 // -----------------------------------------------------------------------------
-------- | 1043 // -----------------------------------------------------------------------------
-------- |
| 1042 // this is mostly boring stuff on how to apply a certain rule to the renderstyle
... | 1044 // this is mostly boring stuff on how to apply a certain rule to the renderstyle
... |
| 1043 | 1045 |
| 1044 template <StyleResolver::StyleApplicationPass pass> | 1046 template <StyleResolver::StyleApplicationPass pass> |
| 1045 void StyleResolver::applyAnimatedProperties(StyleResolverState& state, const Ele
ment* target, const DocumentTimeline* timeline, const CSSAnimationUpdate* update
) | 1047 void StyleResolver::applyAnimatedProperties(StyleResolverState& state, const Ele
ment* target, const DocumentTimeline* timeline, const CSSAnimationUpdate* update
) |
| 1046 { | 1048 { |
| 1049 ASSERT(RuntimeEnabledFeatures::webAnimationsCSSEnabled()); |
| 1047 ASSERT(pass != VariableDefinitions); | 1050 ASSERT(pass != VariableDefinitions); |
| 1048 ASSERT(pass != AnimationProperties); | 1051 ASSERT(pass != AnimationProperties); |
| 1049 if (update && update->styles()) { | 1052 if (update && update->styles()) { |
| 1050 bool applyInheritedOnly = false; | 1053 bool applyInheritedOnly = false; |
| 1051 bool isImportant = false; | 1054 bool isImportant = false; |
| 1052 StyleRule* rule = 0; | 1055 StyleRule* rule = 0; |
| 1053 applyProperties<pass>(state, update->styles(), rule, isImportant, applyI
nheritedOnly, PropertyWhitelistNone); | 1056 applyProperties<pass>(state, update->styles(), rule, isImportant, applyI
nheritedOnly, PropertyWhitelistNone); |
| 1054 isImportant = true; | 1057 isImportant = true; |
| 1055 applyProperties<pass>(state, update->styles(), rule, isImportant, applyI
nheritedOnly, PropertyWhitelistNone); | 1058 applyProperties<pass>(state, update->styles(), rule, isImportant, applyI
nheritedOnly, PropertyWhitelistNone); |
| 1056 } | 1059 } |
| (...skipping 375 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1432 m_matchedPropertiesSearches, m_matchedPropertiesHit, m_matchedProperties
SharedInheritedHit, m_matchedPropertiesToCache, m_matchedPropertiesEnteredIntoCa
che); | 1435 m_matchedPropertiesSearches, m_matchedPropertiesHit, m_matchedProperties
SharedInheritedHit, m_matchedPropertiesToCache, m_matchedPropertiesEnteredIntoCa
che); |
| 1433 | 1436 |
| 1434 fprintf(stderr, "Total:\n"); | 1437 fprintf(stderr, "Total:\n"); |
| 1435 printStyleStats(m_totalSearches, m_totalElementsEligibleForSharing, m_totalS
tylesShared, m_totalSearchFoundSiblingForSharing, m_totalSearchesMissedSharing, | 1438 printStyleStats(m_totalSearches, m_totalElementsEligibleForSharing, m_totalS
tylesShared, m_totalSearchFoundSiblingForSharing, m_totalSearchesMissedSharing, |
| 1436 m_totalMatchedPropertiesSearches, m_totalMatchedPropertiesHit, m_totalMa
tchedPropertiesSharedInheritedHit, m_totalMatchedPropertiesToCache, m_totalMatch
edPropertiesEnteredIntoCache); | 1439 m_totalMatchedPropertiesSearches, m_totalMatchedPropertiesHit, m_totalMa
tchedPropertiesSharedInheritedHit, m_totalMatchedPropertiesToCache, m_totalMatch
edPropertiesEnteredIntoCache); |
| 1437 fprintf(stderr, "-----------------------------------------------------------
---------------------\n"); | 1440 fprintf(stderr, "-----------------------------------------------------------
---------------------\n"); |
| 1438 } | 1441 } |
| 1439 #endif | 1442 #endif |
| 1440 | 1443 |
| 1441 } // namespace WebCore | 1444 } // namespace WebCore |
| OLD | NEW |