#include "third_party/blink/renderer/core/svg/svg_resource_document_content.h"
#include "base/task/single_thread_task_runner.h"
#include "third_party/blink/renderer/core/frame/local_frame.h"
#include "third_party/blink/renderer/core/loader/resource/svg_document_resource.h"
#include "third_party/blink/renderer/core/page/page.h"
#include "third_party/blink/renderer/core/svg/graphics/isolated_svg_document_host.h"
#include "third_party/blink/renderer/core/svg/graphics/svg_image_chrome_client.h"
#include "third_party/blink/renderer/core/svg/svg_element.h"
#include "third_party/blink/renderer/core/svg/svg_resource_document_cache.h"
#include "third_party/blink/renderer/core/svg/svg_resource_document_observer.h"
#include "third_party/blink/renderer/platform/loader/fetch/fetch_parameters.h"
#include "third_party/blink/renderer/platform/supplementable.h"
namespace blink {
namespace {
bool CanReuseContent(const SVGResourceDocumentContent& content) { … }
bool AllowedRequestMode(const ResourceRequest& request) { … }
}
class SVGResourceDocumentContent::ChromeClient final
: public IsolatedSVGChromeClient { … };
SVGResourceDocumentContent::SVGResourceDocumentContent(
AgentGroupScheduler& agent_group_scheduler,
scoped_refptr<base::SingleThreadTaskRunner> task_runner)
: … { … }
SVGResourceDocumentContent::~SVGResourceDocumentContent() = default;
void SVGResourceDocumentContent::NotifyStartLoad() { … }
void SVGResourceDocumentContent::UpdateStatus(ResourceStatus new_status) { … }
SVGResourceDocumentContent::UpdateResult
SVGResourceDocumentContent::UpdateDocument(scoped_refptr<SharedBuffer> data,
const KURL& request_url) { … }
void SVGResourceDocumentContent::LoadingFinished() { … }
void SVGResourceDocumentContent::AsyncLoadingFinished() { … }
void SVGResourceDocumentContent::Dispose() { … }
void SVGResourceDocumentContent::ClearDocument() { … }
Document* SVGResourceDocumentContent::GetDocument() const { … }
const KURL& SVGResourceDocumentContent::Url() const { … }
void SVGResourceDocumentContent::AddObserver(
SVGResourceDocumentObserver* observer) { … }
void SVGResourceDocumentContent::RemoveObserver(
SVGResourceDocumentObserver* observer) { … }
void SVGResourceDocumentContent::NotifyObserver(
SVGResourceDocumentObserver* observer) { … }
void SVGResourceDocumentContent::NotifyObservers() { … }
SVGResourceTarget* SVGResourceDocumentContent::GetResourceTarget(
const AtomicString& element_id) { … }
void SVGResourceDocumentContent::ContentChanged() { … }
bool SVGResourceDocumentContent::IsLoaded() const { … }
bool SVGResourceDocumentContent::IsLoading() const { … }
bool SVGResourceDocumentContent::ErrorOccurred() const { … }
void SVGResourceDocumentContent::Trace(Visitor* visitor) const { … }
SVGResourceDocumentContent* SVGResourceDocumentContent::Fetch(
FetchParameters& params,
Document& document) { … }
}