OLD | NEW |
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 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
44 } | 44 } |
45 | 45 |
46 void DocumentStyleSheetCollection::collectStyleSheetsFromCandidates(StyleEngine*
engine, DocumentStyleSheetCollector& collector) | 46 void DocumentStyleSheetCollection::collectStyleSheetsFromCandidates(StyleEngine*
engine, DocumentStyleSheetCollector& collector) |
47 { | 47 { |
48 DocumentOrderedList::iterator begin = m_styleSheetCandidateNodes.begin(); | 48 DocumentOrderedList::iterator begin = m_styleSheetCandidateNodes.begin(); |
49 DocumentOrderedList::iterator end = m_styleSheetCandidateNodes.end(); | 49 DocumentOrderedList::iterator end = m_styleSheetCandidateNodes.end(); |
50 for (DocumentOrderedList::iterator it = begin; it != end; ++it) { | 50 for (DocumentOrderedList::iterator it = begin; it != end; ++it) { |
51 Node* n = *it; | 51 Node* n = *it; |
52 StyleSheetCandidate candidate(*n); | 52 StyleSheetCandidate candidate(*n); |
53 | 53 |
54 if (candidate.isXSL()) { | 54 ASSERT(!candidate.isXSL()); |
55 // Processing instruction (XML documents only). | |
56 // We don't support linking to embedded CSS stylesheets, see <https:
//bugs.webkit.org/show_bug.cgi?id=49281> for discussion. | |
57 // Don't apply XSL transforms to already transformed documents -- <r
dar://problem/4132806> | |
58 if (RuntimeEnabledFeatures::xsltEnabled() && !document().transformSo
urceDocument()) { | |
59 ProcessingInstruction* pi = toProcessingInstruction(n); | |
60 // Don't apply XSL transforms until loading is finished. | |
61 if (!document().parsing() && !pi->isLoading()) | |
62 document().applyXSLTransform(pi); | |
63 return; | |
64 } | |
65 | |
66 continue; | |
67 } | |
68 | |
69 if (candidate.isImport()) { | 55 if (candidate.isImport()) { |
70 Document* document = candidate.importedDocument(); | 56 Document* document = candidate.importedDocument(); |
71 if (!document) | 57 if (!document) |
72 continue; | 58 continue; |
73 if (collector.hasVisited(document)) | 59 if (collector.hasVisited(document)) |
74 continue; | 60 continue; |
75 collector.willVisit(document); | 61 collector.willVisit(document); |
76 document->styleEngine()->updateStyleSheetsInImport(collector); | 62 document->styleEngine()->updateStyleSheetsInImport(collector); |
77 continue; | 63 continue; |
78 } | 64 } |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
135 m_scopingNodesForStyleScoped.didRemoveScopingNodes(); | 121 m_scopingNodesForStyleScoped.didRemoveScopingNodes(); |
136 | 122 |
137 collection.swap(*this); | 123 collection.swap(*this); |
138 | 124 |
139 updateUsesRemUnits(); | 125 updateUsesRemUnits(); |
140 | 126 |
141 return change.requiresFullStyleRecalc; | 127 return change.requiresFullStyleRecalc; |
142 } | 128 } |
143 | 129 |
144 } | 130 } |
OLD | NEW |