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 * Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010 Apple Inc. All rights reserv
ed. | 4 * Copyright (C) 2004, 2005, 2006, 2007, 2009, 2010 Apple Inc. All rights reserv
ed. |
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 27 matching lines...) Expand all Loading... |
38 #include "core/frame/LocalFrame.h" | 38 #include "core/frame/LocalFrame.h" |
39 #include "core/frame/Settings.h" | 39 #include "core/frame/Settings.h" |
40 #include "core/frame/UseCounter.h" | 40 #include "core/frame/UseCounter.h" |
41 #include "core/html/HTMLImageElement.h" | 41 #include "core/html/HTMLImageElement.h" |
42 #include "core/html/parser/HTMLParserIdioms.h" | 42 #include "core/html/parser/HTMLParserIdioms.h" |
43 #include "core/layout/LayoutImage.h" | 43 #include "core/layout/LayoutImage.h" |
44 #include "core/layout/LayoutVideo.h" | 44 #include "core/layout/LayoutVideo.h" |
45 #include "core/layout/svg/LayoutSVGImage.h" | 45 #include "core/layout/svg/LayoutSVGImage.h" |
46 #include "core/svg/graphics/SVGImage.h" | 46 #include "core/svg/graphics/SVGImage.h" |
47 #include "platform/Logging.h" | 47 #include "platform/Logging.h" |
| 48 #include "platform/RuntimeEnabledFeatures.h" |
48 #include "platform/weborigin/SecurityOrigin.h" | 49 #include "platform/weborigin/SecurityOrigin.h" |
49 #include "platform/weborigin/SecurityPolicy.h" | 50 #include "platform/weborigin/SecurityPolicy.h" |
50 #include "public/platform/WebURLRequest.h" | 51 #include "public/platform/WebURLRequest.h" |
51 | 52 |
52 namespace blink { | 53 namespace blink { |
53 | 54 |
54 static ImageEventSender& loadEventSender() | 55 static ImageEventSender& loadEventSender() |
55 { | 56 { |
56 DEFINE_STATIC_LOCAL(ImageEventSender, sender, (EventTypeNames::load)); | 57 DEFINE_STATIC_LOCAL(ImageEventSender, sender, (EventTypeNames::load)); |
57 return sender; | 58 return sender; |
(...skipping 253 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
311 // Unlike raw <img>, we block mixed content inside of <picture> or <img
srcset>. | 312 // Unlike raw <img>, we block mixed content inside of <picture> or <img
srcset>. |
312 ResourceLoaderOptions resourceLoaderOptions = ResourceFetcher::defaultRe
sourceOptions(); | 313 ResourceLoaderOptions resourceLoaderOptions = ResourceFetcher::defaultRe
sourceOptions(); |
313 ResourceRequest resourceRequest(url); | 314 ResourceRequest resourceRequest(url); |
314 resourceRequest.setFetchCredentialsMode(WebURLRequest::FetchCredentialsM
odeSameOrigin); | 315 resourceRequest.setFetchCredentialsMode(WebURLRequest::FetchCredentialsM
odeSameOrigin); |
315 if (updateBehavior == UpdateForcedReload) { | 316 if (updateBehavior == UpdateForcedReload) { |
316 resourceRequest.setCachePolicy(ResourceRequestCachePolicy::ReloadByp
assingCache); | 317 resourceRequest.setCachePolicy(ResourceRequestCachePolicy::ReloadByp
assingCache); |
317 // ImageLoader defers the load of images when in an ImageDocument. D
on't defer this load on a forced reload. | 318 // ImageLoader defers the load of images when in an ImageDocument. D
on't defer this load on a forced reload. |
318 m_loadingImageDocument = false; | 319 m_loadingImageDocument = false; |
319 } | 320 } |
320 | 321 |
321 if (referrerPolicy != ReferrerPolicyDefault) | 322 if (RuntimeEnabledFeatures::referrerPolicyAttributeEnabled() && referrer
Policy != ReferrerPolicyDefault) |
322 resourceRequest.setHTTPReferrer(SecurityPolicy::generateReferrer(ref
errerPolicy, url, document.outgoingReferrer())); | 323 resourceRequest.setHTTPReferrer(SecurityPolicy::generateReferrer(ref
errerPolicy, url, document.outgoingReferrer())); |
323 | 324 |
324 if (isHTMLPictureElement(element()->parentNode()) || !element()->fastGet
Attribute(HTMLNames::srcsetAttr).isNull()) | 325 if (isHTMLPictureElement(element()->parentNode()) || !element()->fastGet
Attribute(HTMLNames::srcsetAttr).isNull()) |
325 resourceRequest.setRequestContext(WebURLRequest::RequestContextImage
Set); | 326 resourceRequest.setRequestContext(WebURLRequest::RequestContextImage
Set); |
326 FetchRequest request(resourceRequest, element()->localName(), resourceLo
aderOptions); | 327 FetchRequest request(resourceRequest, element()->localName(), resourceLo
aderOptions); |
327 configureRequest(request, bypassBehavior, *m_element, document.clientHin
tsPreferences()); | 328 configureRequest(request, bypassBehavior, *m_element, document.clientHin
tsPreferences()); |
328 | 329 |
329 // Prevent the immediate creation of a ResourceLoader (and therefore a n
etwork | 330 // Prevent the immediate creation of a ResourceLoader (and therefore a n
etwork |
330 // request) for ImageDocument loads. In this case, the image contents ha
ve already | 331 // request) for ImageDocument loads. In this case, the image contents ha
ve already |
331 // been requested as a main resource and ImageDocumentParser will take c
are of | 332 // been requested as a main resource and ImageDocumentParser will take c
are of |
(...skipping 341 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
673 | 674 |
674 void ImageLoader::sourceImageChanged() | 675 void ImageLoader::sourceImageChanged() |
675 { | 676 { |
676 for (auto& client : m_clients) { | 677 for (auto& client : m_clients) { |
677 ImageLoaderClient* handle = client; | 678 ImageLoaderClient* handle = client; |
678 handle->notifyImageSourceChanged(); | 679 handle->notifyImageSourceChanged(); |
679 } | 680 } |
680 } | 681 } |
681 | 682 |
682 } // namespace blink | 683 } // namespace blink |
OLD | NEW |