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

Side by Side Diff: Source/core/dom/DocumentStyleSheetCollection.cpp

Issue 143463011: [import] support document.stylesheets in imported documents. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 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 | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) 3 * (C) 1999 Antti Koivisto (koivisto@kde.org)
4 * (C) 2001 Dirk Mueller (mueller@kde.org) 4 * (C) 2001 Dirk Mueller (mueller@kde.org)
5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org) 5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org)
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012 Apple Inc. All r ights reserved. 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012 Apple Inc. All r ights reserved.
7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/) 7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/)
8 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) 8 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
9 * Copyright (C) 2013 Google Inc. All rights reserved. 9 * Copyright (C) 2013 Google Inc. All rights reserved.
10 * 10 *
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
94 engine->selectStylesheetSetName(candidate.title()); 94 engine->selectStylesheetSetName(candidate.title());
95 continue; 95 continue;
96 } 96 }
97 97
98 StyleSheet* sheet = candidate.sheet(); 98 StyleSheet* sheet = candidate.sheet();
99 if (!sheet) 99 if (!sheet)
100 continue; 100 continue;
101 101
102 if (candidate.hasPreferrableName(engine->preferredStylesheetSetName())) 102 if (candidate.hasPreferrableName(engine->preferredStylesheetSetName()))
103 engine->selectStylesheetSetName(candidate.title()); 103 engine->selectStylesheetSetName(candidate.title());
104 if (collector.isCollectingForList(m_treeScope)) 104 collector.appendSheetForList(sheet);
105 collector.appendSheetForList(sheet);
106 if (candidate.canBeActivated(engine->preferredStylesheetSetName())) 105 if (candidate.canBeActivated(engine->preferredStylesheetSetName()))
107 collector.appendActiveStyleSheet(toCSSStyleSheet(sheet)); 106 collector.appendActiveStyleSheet(toCSSStyleSheet(sheet));
108 } 107 }
109 } 108 }
110 109
111 static void collectActiveCSSStyleSheetsFromSeamlessParents(StyleSheetCollectionB ase& collection, Document* document) 110 static void collectActiveCSSStyleSheetsFromSeamlessParents(StyleSheetCollectionB ase& collection, Document* document)
112 { 111 {
113 HTMLIFrameElement* seamlessParentIFrame = document->seamlessParentIFrame(); 112 HTMLIFrameElement* seamlessParentIFrame = document->seamlessParentIFrame();
114 if (!seamlessParentIFrame) 113 if (!seamlessParentIFrame)
115 return; 114 return;
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
147 engine->resetFontSelector(); 146 engine->resetFontSelector();
148 styleResolver->removePendingAuthorStyleSheets(m_activeAuthorStyleShe ets); 147 styleResolver->removePendingAuthorStyleSheets(m_activeAuthorStyleShe ets);
149 styleResolver->lazyAppendAuthorStyleSheets(0, collector.collection() .activeAuthorStyleSheets()); 148 styleResolver->lazyAppendAuthorStyleSheets(0, collector.collection() .activeAuthorStyleSheets());
150 } else { 149 } else {
151 styleResolver->lazyAppendAuthorStyleSheets(m_activeAuthorStyleSheets .size(), collector.collection().activeAuthorStyleSheets()); 150 styleResolver->lazyAppendAuthorStyleSheets(m_activeAuthorStyleSheets .size(), collector.collection().activeAuthorStyleSheets());
152 } 151 }
153 } else if (change.styleResolverUpdateType == ResetStyleResolverAndFontSelect or) { 152 } else if (change.styleResolverUpdateType == ResetStyleResolverAndFontSelect or) {
154 engine->resetFontSelector(); 153 engine->resetFontSelector();
155 } 154 }
156 m_scopingNodesForStyleScoped.didRemoveScopingNodes(); 155 m_scopingNodesForStyleScoped.didRemoveScopingNodes();
156
157 collector.setCollectionTo(*this); 157 collector.setCollectionTo(*this);
158 for (DocumentStyleSheetCollector::SheetListMapIteraor i = collector.sheetLis tMap().begin(); i != collector.sheetListMap().end(); ++i)
esprehn 2014/01/23 07:51:03 typo, you want SheetListMapIterator (missing t)
Hajime Morrita 2014/01/24 01:25:51 Done.
159 i->key->styleEngine()->setStyleSheetsForStyleSheetList(i->value);
160
158 updateUsesRemUnits(); 161 updateUsesRemUnits();
159 162
160 return change.requiresFullStyleRecalc; 163 return change.requiresFullStyleRecalc;
161 } 164 }
162 165
163 } 166 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698