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

Side by Side Diff: Source/core/css/resolver/ScopedStyleResolver.h

Issue 843773002: Only match style from element's TreeScope for normal rules. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Fixed custom pseudo and ::cue regressions Created 5 years, 11 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 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved. 3 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.
4 * Copyright (C) 2012 Google Inc. All rights reserved. 4 * Copyright (C) 2012 Google Inc. All rights reserved.
5 * 5 *
6 * Redistribution and use in source and binary forms, with or without 6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions 7 * modification, are permitted provided that the following conditions
8 * are met: 8 * are met:
9 * 1. Redistributions of source code must retain the above copyright 9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 static TreeScope* treeScopeFor(Document&, const CSSStyleSheet*); 54 static TreeScope* treeScopeFor(Document&, const CSSStyleSheet*);
55 55
56 const TreeScope& treeScope() const { return *m_scope; } 56 const TreeScope& treeScope() const { return *m_scope; }
57 ScopedStyleResolver* parent() const; 57 ScopedStyleResolver* parent() const;
58 58
59 public: 59 public:
60 const StyleRuleKeyframes* keyframeStylesForAnimation(const StringImpl* anima tionName); 60 const StyleRuleKeyframes* keyframeStylesForAnimation(const StringImpl* anima tionName);
61 void addKeyframeStyle(PassRefPtrWillBeRawPtr<StyleRuleKeyframes>); 61 void addKeyframeStyle(PassRefPtrWillBeRawPtr<StyleRuleKeyframes>);
62 62
63 unsigned appendCSSStyleSheet(CSSStyleSheet*); 63 unsigned appendCSSStyleSheet(CSSStyleSheet*);
64 void collectMatchingAuthorRules(ElementRuleCollector&, bool includeEmptyRule s, CascadeScope, CascadeOrder = ignoreCascadeOrder); 64 void collectMatchingAuthorRules(ElementRuleCollector&, bool includeEmptyRule s, CascadeOrder = ignoreCascadeOrder);
65 void collectMatchingShadowHostRules(ElementRuleCollector&, bool includeEmpty Rules, CascadeScope, CascadeOrder = ignoreCascadeOrder); 65 void collectMatchingShadowHostRules(ElementRuleCollector&, bool includeEmpty Rules, CascadeOrder = ignoreCascadeOrder);
66 void matchPageRules(PageRuleCollector&); 66 void matchPageRules(PageRuleCollector&);
67 void collectFeaturesTo(RuleFeatureSet&, HashSet<const StyleSheetContents*>& visitedSharedStyleSheetContents) const; 67 void collectFeaturesTo(RuleFeatureSet&, HashSet<const StyleSheetContents*>& visitedSharedStyleSheetContents) const;
68 void resetAuthorStyle(); 68 void resetAuthorStyle();
69 void collectViewportRulesTo(StyleResolver*) const; 69 void collectViewportRulesTo(StyleResolver*) const;
70 70
71 void trace(Visitor*); 71 void trace(Visitor*);
72 72
73 private: 73 private:
74 explicit ScopedStyleResolver(TreeScope& scope) 74 explicit ScopedStyleResolver(TreeScope& scope)
75 : m_scope(scope) 75 : m_scope(scope)
76 { 76 {
77 } 77 }
78 78
79 RawPtrWillBeMember<TreeScope> m_scope; 79 RawPtrWillBeMember<TreeScope> m_scope;
80 80
81 WillBeHeapVector<RawPtrWillBeMember<CSSStyleSheet> > m_authorStyleSheets; 81 WillBeHeapVector<RawPtrWillBeMember<CSSStyleSheet> > m_authorStyleSheets;
82 82
83 typedef WillBeHeapHashMap<const StringImpl*, RefPtrWillBeMember<StyleRuleKey frames> > KeyframesRuleMap; 83 typedef WillBeHeapHashMap<const StringImpl*, RefPtrWillBeMember<StyleRuleKey frames> > KeyframesRuleMap;
84 KeyframesRuleMap m_keyframesRuleMap; 84 KeyframesRuleMap m_keyframesRuleMap;
85 }; 85 };
86 86
87 } // namespace blink 87 } // namespace blink
88 88
89 #endif // ScopedStyleResolver_h 89 #endif // ScopedStyleResolver_h
OLDNEW
« no previous file with comments | « Source/core/css/TreeBoundaryCrossingRules.cpp ('k') | Source/core/css/resolver/ScopedStyleResolver.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698