OLD | NEW |
1 /* | 1 /* |
2 * (C) 1999-2003 Lars Knoll (knoll@kde.org) | 2 * (C) 1999-2003 Lars Knoll (knoll@kde.org) |
3 * (C) 2002-2003 Dirk Mueller (mueller@kde.org) | 3 * (C) 2002-2003 Dirk Mueller (mueller@kde.org) |
4 * Copyright (C) 2002, 2005, 2006, 2008, 2009, 2010, 2012 Apple Inc. All rights
reserved. | 4 * Copyright (C) 2002, 2005, 2006, 2008, 2009, 2010, 2012 Apple Inc. All rights
reserved. |
5 * | 5 * |
6 * This library is free software; you can redistribute it and/or | 6 * This library is free software; you can redistribute it and/or |
7 * modify it under the terms of the GNU Library General Public | 7 * modify it under the terms of the GNU Library General Public |
8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
9 * version 2 of the License, or (at your option) any later version. | 9 * version 2 of the License, or (at your option) any later version. |
10 * | 10 * |
(...skipping 13 matching lines...) Expand all Loading... |
24 | 24 |
25 #include "FetchInitiatorTypeNames.h" | 25 #include "FetchInitiatorTypeNames.h" |
26 #include "core/css/StyleSheetContents.h" | 26 #include "core/css/StyleSheetContents.h" |
27 #include "core/dom/Document.h" | 27 #include "core/dom/Document.h" |
28 #include "core/fetch/CSSStyleSheetResource.h" | 28 #include "core/fetch/CSSStyleSheetResource.h" |
29 #include "core/fetch/FetchRequest.h" | 29 #include "core/fetch/FetchRequest.h" |
30 #include "core/fetch/ResourceFetcher.h" | 30 #include "core/fetch/ResourceFetcher.h" |
31 | 31 |
32 namespace WebCore { | 32 namespace WebCore { |
33 | 33 |
34 PassRefPtrWillBeRawPtr<StyleRuleImport> StyleRuleImport::create(const String& hr
ef, PassRefPtr<MediaQuerySet> media) | 34 PassRefPtrWillBeRawPtr<StyleRuleImport> StyleRuleImport::create(const String& hr
ef, PassRefPtrWillBeRawPtr<MediaQuerySet> media) |
35 { | 35 { |
36 return adoptRefCountedWillBeRefCountedGarbageCollected(new StyleRuleImport(h
ref, media)); | 36 return adoptRefCountedWillBeRefCountedGarbageCollected(new StyleRuleImport(h
ref, media)); |
37 } | 37 } |
38 | 38 |
39 StyleRuleImport::StyleRuleImport(const String& href, PassRefPtr<MediaQuerySet> m
edia) | 39 StyleRuleImport::StyleRuleImport(const String& href, PassRefPtrWillBeRawPtr<Medi
aQuerySet> media) |
40 : StyleRuleBase(Import) | 40 : StyleRuleBase(Import) |
41 , m_parentStyleSheet(0) | 41 , m_parentStyleSheet(0) |
42 , m_styleSheetClient(this) | 42 , m_styleSheetClient(this) |
43 , m_strHref(href) | 43 , m_strHref(href) |
44 , m_mediaQueries(media) | 44 , m_mediaQueries(media) |
45 , m_resource(0) | 45 , m_resource(0) |
46 , m_loading(false) | 46 , m_loading(false) |
47 { | 47 { |
48 if (!m_mediaQueries) | 48 if (!m_mediaQueries) |
49 m_mediaQueries = MediaQuerySet::create(String()); | 49 m_mediaQueries = MediaQuerySet::create(String()); |
50 } | 50 } |
51 | 51 |
52 StyleRuleImport::~StyleRuleImport() | 52 StyleRuleImport::~StyleRuleImport() |
53 { | 53 { |
54 if (m_styleSheet) | 54 if (m_styleSheet) |
55 m_styleSheet->clearOwnerRule(); | 55 m_styleSheet->clearOwnerRule(); |
56 if (m_resource) | 56 if (m_resource) |
57 m_resource->removeClient(&m_styleSheetClient); | 57 m_resource->removeClient(&m_styleSheetClient); |
58 } | 58 } |
59 | 59 |
60 void StyleRuleImport::traceAfterDispatch(Visitor* visitor) | 60 void StyleRuleImport::traceAfterDispatch(Visitor* visitor) |
61 { | 61 { |
62 visitor->trace(m_parentStyleSheet); | 62 visitor->trace(m_parentStyleSheet); |
| 63 visitor->trace(m_mediaQueries); |
63 visitor->trace(m_styleSheet); | 64 visitor->trace(m_styleSheet); |
64 StyleRuleBase::traceAfterDispatch(visitor); | 65 StyleRuleBase::traceAfterDispatch(visitor); |
65 } | 66 } |
66 | 67 |
67 void StyleRuleImport::setCSSStyleSheet(const String& href, const KURL& baseURL,
const String& charset, const CSSStyleSheetResource* cachedStyleSheet) | 68 void StyleRuleImport::setCSSStyleSheet(const String& href, const KURL& baseURL,
const String& charset, const CSSStyleSheetResource* cachedStyleSheet) |
68 { | 69 { |
69 if (m_styleSheet) | 70 if (m_styleSheet) |
70 m_styleSheet->clearOwnerRule(); | 71 m_styleSheet->clearOwnerRule(); |
71 | 72 |
72 CSSParserContext context = m_parentStyleSheet ? m_parentStyleSheet->parserCo
ntext() : strictCSSParserContext(); | 73 CSSParserContext context = m_parentStyleSheet ? m_parentStyleSheet->parserCo
ntext() : strictCSSParserContext(); |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
128 // removed from the pending sheet count, so let the doc know | 129 // removed from the pending sheet count, so let the doc know |
129 // the sheet being imported is pending. | 130 // the sheet being imported is pending. |
130 if (m_parentStyleSheet && m_parentStyleSheet->loadCompleted() && rootShe
et == m_parentStyleSheet) | 131 if (m_parentStyleSheet && m_parentStyleSheet->loadCompleted() && rootShe
et == m_parentStyleSheet) |
131 m_parentStyleSheet->startLoadingDynamicSheet(); | 132 m_parentStyleSheet->startLoadingDynamicSheet(); |
132 m_loading = true; | 133 m_loading = true; |
133 m_resource->addClient(&m_styleSheetClient); | 134 m_resource->addClient(&m_styleSheetClient); |
134 } | 135 } |
135 } | 136 } |
136 | 137 |
137 } // namespace WebCore | 138 } // namespace WebCore |
OLD | NEW |