void CSSPreloadScanner::emitRule() { if (equalIgnoringCase("import", m_rule.data(), m_rule.size())) { String value = parseCSSStringOrURL(m_ruleValue.data(), m_ruleValue.size()); if (!value.isEmpty()) m_document->cachedResourceLoader()->preload(CachedResource::CSSStyleSheet, value, String(), m_scanningBody); } m_rule.clear(); m_ruleValue.clear(); }
void CSSPreloadScanner::emitRule() { if (equalIgnoringCase("import", m_rule.data(), m_rule.size())) { String value = parseCSSStringOrURL(m_ruleValue.data(), m_ruleValue.size()); // CAPPFIX_WEB_WEBGL if (!value.isEmpty()) { ResourceRequest request(m_document->completeURL(value)); m_document->cachedResourceLoader()->preload(CachedResource::CSSStyleSheet, request, String(), m_scanningBody); } // CAPPFIX_WEB_WEBGL_END m_state = Initial; } else if (equalIgnoringCase("charset", m_rule.data(), m_rule.size())) m_state = Initial; else m_state = DoneParsingImportRules; m_rule.clear(); m_ruleValue.clear(); }
void CSSPreloadScanner::emitRule() { if (ruleEqualIgnoringCase(m_rule, "import")) { String url = parseCSSStringOrURL(m_ruleValue.data(), m_ruleValue.size()); if (!url.isEmpty()) { KURL baseElementURL; // FIXME: This should be passed in from the HTMLPreloadScaner via scan()! OwnPtr<PreloadRequest> request = PreloadRequest::create("css", url, baseElementURL, CachedResource::CSSStyleSheet); // FIXME: Should this be including the charset in the preload request? m_requests->append(request.release()); } m_state = Initial; } else if (ruleEqualIgnoringCase(m_rule, "charset")) m_state = Initial; else m_state = DoneParsingImportRules; m_rule.clear(); m_ruleValue.clear(); }
void CSSPreloadScanner::emitRule() { StringView rule(m_rule.data(), m_rule.size()); if (equalLettersIgnoringASCIICase(rule, "import")) { String url = parseCSSStringOrURL(m_ruleValue.data(), m_ruleValue.size()); if (!url.isEmpty()) { URL baseElementURL; // FIXME: This should be passed in from the HTMLPreloadScanner via scan(): without it we will get relative URLs wrong. // FIXME: Should this be including the charset in the preload request? m_requests->append(std::make_unique<PreloadRequest>("css", url, baseElementURL, CachedResource::CSSStyleSheet, String())); } m_state = Initial; } else if (equalLettersIgnoringASCIICase(rule, "charset")) m_state = Initial; else m_state = DoneParsingImportRules; m_rule.clear(); m_ruleValue.clear(); }
void CSSPreloadScanner::emitRule(const SegmentedString& source) { if (equalIgnoringCase("import", m_rule.characters(), m_rule.length())) { String url = parseCSSStringOrURL(m_ruleValue.characters(), m_ruleValue.length()); if (!url.isEmpty()) { KURL baseElementURL; // FIXME: This should be passed in from the HTMLPreloadScaner via scan()! TextPosition position = TextPosition(source.currentLine(), source.currentColumn()); OwnPtr<PreloadRequest> request = PreloadRequest::create("css", position, url, baseElementURL, CachedResource::CSSStyleSheet); // FIXME: Should this be including the charset in the preload request? m_requests->append(request.release()); } m_state = Initial; } else if (equalIgnoringCase("charset", m_rule.characters(), m_rule.length())) m_state = Initial; else m_state = DoneParsingImportRules; m_rule.clear(); m_ruleValue.clear(); }