Diff
Modified: trunk/Source/WebCore/ChangeLog (173463 => 173464)
--- trunk/Source/WebCore/ChangeLog 2014-09-10 15:51:19 UTC (rev 173463)
+++ trunk/Source/WebCore/ChangeLog 2014-09-10 15:54:40 UTC (rev 173464)
@@ -1,3 +1,31 @@
+2014-09-10 Simon Fraser <[email protected]>
+
+ Clean up some ENABLE(PICTURE_SIZES) stuff, don't change function signatures inside #ifdefs
+ https://bugs.webkit.org/show_bug.cgi?id=136654
+
+ Reviewed by Darin Adler.
+
+ Adding parameters inside an #ifdef makes for unreadable code, so remove some
+ #if ENABLE(PICTURE_SIZES) related to the preload scanner and always pass the arguments.
+ Reduced the argument count on some functions by just passing a Document&.
+
+ Also fix a couple of uses of #if ENABLE_PICTURE_SIZES.
+
+ * html/HTMLImageElement.h:
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::pumpTokenizer):
+ (WebCore::HTMLDocumentParser::insert):
+ (WebCore::HTMLDocumentParser::append):
+ (WebCore::HTMLDocumentParser::appendCurrentInputStreamToPreloadScannerAndScan):
+ * html/parser/HTMLPreloadScanner.cpp:
+ (WebCore::TokenPreloadScanner::scan):
+ (WebCore::HTMLPreloadScanner::scan):
+ * html/parser/HTMLPreloadScanner.h:
+ * html/parser/HTMLSrcsetParser.cpp:
+ (WebCore::pickBestImageCandidate):
+ (WebCore::bestFitSourceForImageAttributes):
+ * html/parser/HTMLSrcsetParser.h:
+
2014-09-10 Chris Fleizach <[email protected]>
AX: aria-labelledby is not honoring sub-node text
Modified: trunk/Source/WebCore/html/HTMLImageElement.h (173463 => 173464)
--- trunk/Source/WebCore/html/HTMLImageElement.h 2014-09-10 15:51:19 UTC (rev 173463)
+++ trunk/Source/WebCore/html/HTMLImageElement.h 2014-09-10 15:54:40 UTC (rev 173464)
@@ -48,7 +48,7 @@
int naturalWidth() const;
int naturalHeight() const;
-#if ENABLE_PICTURE_SIZES
+#if ENABLE(PICTURE_SIZES)
const AtomicString& currentSrc() const { return m_currentSrc; }
#endif
@@ -127,7 +127,7 @@
HTMLFormElement* m_form;
CompositeOperator m_compositeOperator;
AtomicString m_bestFitImageURL;
-#if ENABLE_PICTURE_SIZES
+#if ENABLE(PICTURE_SIZES)
AtomicString m_currentSrc;
#endif
AtomicString m_lowercasedUsemap;
Modified: trunk/Source/WebCore/html/parser/HTMLDocumentParser.cpp (173463 => 173464)
--- trunk/Source/WebCore/html/parser/HTMLDocumentParser.cpp 2014-09-10 15:51:19 UTC (rev 173463)
+++ trunk/Source/WebCore/html/parser/HTMLDocumentParser.cpp 2014-09-10 15:54:40 UTC (rev 173464)
@@ -326,11 +326,7 @@
m_preloadScanner = std::make_unique<HTMLPreloadScanner>(m_options, document()->url(), document()->deviceScaleFactor());
m_preloadScanner->appendToEnd(m_input.current());
}
- m_preloadScanner->scan(m_preloader.get(), document()->baseElementURL()
-#if ENABLE(PICTURE_SIZES)
- , document()->renderView(), document()->frame()
-#endif
- );
+ m_preloadScanner->scan(m_preloader.get(), *document());
}
InspectorInstrumentation::didWriteHTML(cookie, m_input.current().currentLine().zeroBasedInt());
@@ -392,11 +388,7 @@
m_insertionPreloadScanner = std::make_unique<HTMLPreloadScanner>(m_options, document()->url(), document()->deviceScaleFactor());
}
m_insertionPreloadScanner->appendToEnd(source);
- m_insertionPreloadScanner->scan(m_preloader.get(), document()->baseElementURL()
-#if ENABLE(PICTURE_SIZES)
- , document()->renderView(), document()->frame()
-#endif
- );
+ m_insertionPreloadScanner->scan(m_preloader.get(), *document());
}
endIfDelayed();
@@ -420,11 +412,7 @@
} else {
m_preloadScanner->appendToEnd(source);
if (isWaitingForScripts())
- m_preloadScanner->scan(m_preloader.get(), document()->baseElementURL()
-#if ENABLE(PICTURE_SIZES)
- , document()->renderView(), document()->frame()
-#endif
- );
+ m_preloadScanner->scan(m_preloader.get(), *document());
}
}
@@ -562,11 +550,7 @@
{
ASSERT(m_preloadScanner);
m_preloadScanner->appendToEnd(m_input.current());
- m_preloadScanner->scan(m_preloader.get(), document()->baseElementURL()
-#if ENABLE(PICTURE_SIZES)
- , document()->renderView(), document()->frame()
-#endif
- );
+ m_preloadScanner->scan(m_preloader.get(), *document());
}
void HTMLDocumentParser::notifyFinished(CachedResource* cachedResource)
Modified: trunk/Source/WebCore/html/parser/HTMLPreloadScanner.cpp (173463 => 173464)
--- trunk/Source/WebCore/html/parser/HTMLPreloadScanner.cpp 2014-09-10 15:51:19 UTC (rev 173463)
+++ trunk/Source/WebCore/html/parser/HTMLPreloadScanner.cpp 2014-09-10 15:54:40 UTC (rev 173464)
@@ -93,15 +93,12 @@
{
}
- void processAttributes(const HTMLToken::AttributeList& attributes
-#if ENABLE(PICTURE_SIZES)
- , RenderView* view, Frame* frame
-#endif
- )
+ void processAttributes(const HTMLToken::AttributeList& attributes, Document& document)
{
ASSERT(isMainThread());
if (m_tagId >= TagId::Unknown)
return;
+
for (HTMLToken::AttributeList::const_iterator iter = attributes.begin(); iter != attributes.end(); ++iter) {
AtomicString attributeName(iter->name);
String attributeValue = StringImpl::create8BitIfPossible(iter->value);
@@ -110,11 +107,11 @@
// Resolve between src and srcSet if we have them.
if (!m_srcSetAttribute.isEmpty()) {
- ImageCandidate imageCandidate = bestFitSourceForImageAttributes(m_deviceScaleFactor, m_urlToLoad, m_srcSetAttribute
+ unsigned sourceSize = 0;
#if ENABLE(PICTURE_SIZES)
- , SourceSizeList::parseSizesAttribute(m_sizesAttribute, view, frame)
+ sourceSize = SourceSizeList::parseSizesAttribute(m_sizesAttribute, document.renderView(), document.frame());
#endif
- );
+ ImageCandidate imageCandidate = bestFitSourceForImageAttributes(m_deviceScaleFactor, m_urlToLoad, m_srcSetAttribute, sourceSize);
setUrlToLoad(imageCandidate.string.toString(), true);
}
}
@@ -279,11 +276,7 @@
m_checkpoints.clear();
}
-void TokenPreloadScanner::scan(const HTMLToken& token, Vector<std::unique_ptr<PreloadRequest>>& requests
-#if ENABLE(PICTURE_SIZES)
- , RenderView* view, Frame* frame
-#endif
- )
+void TokenPreloadScanner::scan(const HTMLToken& token, Vector<std::unique_ptr<PreloadRequest>>& requests, Document& document)
{
switch (token.type()) {
case HTMLToken::Character:
@@ -334,11 +327,7 @@
}
StartTagScanner scanner(tagId, m_deviceScaleFactor);
- scanner.processAttributes(token.attributes()
-#if ENABLE(PICTURE_SIZES)
- , view, frame
-#endif
- );
+ scanner.processAttributes(token.attributes(), document);
if (auto request = scanner.createPreloadRequest(m_predictedBaseElementURL))
requests.append(WTF::move(request));
return;
@@ -372,14 +361,12 @@
m_source.append(source);
}
-void HTMLPreloadScanner::scan(HTMLResourcePreloader* preloader, const URL& startingBaseElementURL
-#if ENABLE(PICTURE_SIZES)
- , RenderView* view, Frame* frame
-#endif
- )
+void HTMLPreloadScanner::scan(HTMLResourcePreloader* preloader, Document& document)
{
ASSERT(isMainThread()); // HTMLTokenizer::updateStateFor only works on the main thread.
+ const URL& startingBaseElementURL = document.baseElementURL();
+
// When we start scanning, our best prediction of the baseElementURL is the real one!
if (!startingBaseElementURL.isEmpty())
m_scanner.setPredictedBaseElementURL(startingBaseElementURL);
@@ -389,11 +376,7 @@
while (m_tokenizer->nextToken(m_source, m_token)) {
if (m_token.type() == HTMLToken::StartTag)
m_tokenizer->updateStateFor(AtomicString(m_token.name()));
- m_scanner.scan(m_token, requests
-#if ENABLE(PICTURE_SIZES)
- , view, frame
-#endif
- );
+ m_scanner.scan(m_token, requests, document);
m_token.clear();
}
Modified: trunk/Source/WebCore/html/parser/HTMLPreloadScanner.h (173463 => 173464)
--- trunk/Source/WebCore/html/parser/HTMLPreloadScanner.h 2014-09-10 15:51:19 UTC (rev 173463)
+++ trunk/Source/WebCore/html/parser/HTMLPreloadScanner.h 2014-09-10 15:54:40 UTC (rev 173464)
@@ -47,11 +47,7 @@
explicit TokenPreloadScanner(const URL& documentURL, float deviceScaleFactor = 1.0);
~TokenPreloadScanner();
- void scan(const HTMLToken&, PreloadRequestStream& requests
-#if ENABLE_PICTURE_SIZES
- , RenderView*, Frame*
-#endif
- );
+ void scan(const HTMLToken&, PreloadRequestStream& requests, Document&);
void setPredictedBaseElementURL(const URL& url) { m_predictedBaseElementURL = url; }
@@ -131,11 +127,7 @@
~HTMLPreloadScanner();
void appendToEnd(const SegmentedString&);
- void scan(HTMLResourcePreloader*, const URL& documentBaseElementURL
-#if ENABLE_PICTURE_SIZES
- , RenderView*, Frame*
-#endif
- );
+ void scan(HTMLResourcePreloader*, Document&);
private:
TokenPreloadScanner m_scanner;
Modified: trunk/Source/WebCore/html/parser/HTMLSrcsetParser.cpp (173463 => 173464)
--- trunk/Source/WebCore/html/parser/HTMLSrcsetParser.cpp 2014-09-10 15:51:19 UTC (rev 173463)
+++ trunk/Source/WebCore/html/parser/HTMLSrcsetParser.cpp 2014-09-10 15:54:40 UTC (rev 173464)
@@ -229,12 +229,12 @@
return parseImageCandidatesFromSrcsetAttribute<UChar>(attribute.characters16(), attribute.length());
}
-static ImageCandidate pickBestImageCandidate(float deviceScaleFactor, Vector<ImageCandidate>& imageCandidates
-#if ENABLE(PICTURE_SIZES)
- , unsigned sourceSize
-#endif
- )
+static ImageCandidate pickBestImageCandidate(float deviceScaleFactor, Vector<ImageCandidate>& imageCandidates, unsigned sourceSize)
{
+#if !ENABLE(PICTURE_SIZES)
+ UNUSED_PARAM(sourceSize);
+#endif
+
bool ignoreSrc = false;
if (imageCandidates.isEmpty())
return ImageCandidate();
@@ -274,11 +274,7 @@
return imageCandidates[winner];
}
-ImageCandidate bestFitSourceForImageAttributes(float deviceScaleFactor, const AtomicString& srcAttribute, const AtomicString& srcsetAttribute
-#if ENABLE(PICTURE_SIZES)
- , unsigned sourceSize
-#endif
- )
+ImageCandidate bestFitSourceForImageAttributes(float deviceScaleFactor, const AtomicString& srcAttribute, const AtomicString& srcsetAttribute, unsigned sourceSize)
{
if (srcsetAttribute.isNull()) {
if (srcAttribute.isNull())
@@ -291,11 +287,7 @@
if (!srcAttribute.isEmpty())
imageCandidates.append(ImageCandidate(StringView(srcAttribute), DescriptorParsingResult(), ImageCandidate::SrcOrigin));
- return pickBestImageCandidate(deviceScaleFactor, imageCandidates
-#if ENABLE(PICTURE_SIZES)
- , sourceSize
-#endif
- );
+ return pickBestImageCandidate(deviceScaleFactor, imageCandidates, sourceSize);
}
} // namespace WebCore
Modified: trunk/Source/WebCore/html/parser/HTMLSrcsetParser.h (173463 => 173464)
--- trunk/Source/WebCore/html/parser/HTMLSrcsetParser.h 2014-09-10 15:51:19 UTC (rev 173463)
+++ trunk/Source/WebCore/html/parser/HTMLSrcsetParser.h 2014-09-10 15:54:40 UTC (rev 173464)
@@ -98,11 +98,7 @@
OriginAttribute originAttribute;
};
-ImageCandidate bestFitSourceForImageAttributes(float deviceScaleFactor, const AtomicString& srcAttribute, const AtomicString& srcsetAttribute
-#if ENABLE(PICTURE_SIZES)
- , unsigned sourceSize
-#endif
- );
+ImageCandidate bestFitSourceForImageAttributes(float deviceScaleFactor, const AtomicString& srcAttribute, const AtomicString& srcsetAttribute, unsigned sourceSize);
Vector<ImageCandidate> parseImageCandidatesFromSrcsetAttribute(StringView attribute);