diff options
author | Steve Block <steveblock@google.com> | 2010-09-22 14:50:30 +0100 |
---|---|---|
committer | Steve Block <steveblock@google.com> | 2010-09-29 18:32:12 +0100 |
commit | aafdd7e990ceb671441a0799ee1b1c2776de95f8 (patch) | |
tree | 216aa771fbe60f309cec6b1650357649412bb04b /WebCore | |
parent | b4b1148720e724bf404dadaa5443caaa286f5724 (diff) | |
download | external_webkit-aafdd7e990ceb671441a0799ee1b1c2776de95f8.zip external_webkit-aafdd7e990ceb671441a0799ee1b1c2776de95f8.tar.gz external_webkit-aafdd7e990ceb671441a0799ee1b1c2776de95f8.tar.bz2 |
Merge WebKit at r67908: ResourceLoader now makes use of NetworkingContext
See http://trac.webkit.org/changeset/67291
Change-Id: I620cba25ea40451830b86df90631a2c88792ce16
Diffstat (limited to 'WebCore')
-rw-r--r-- | WebCore/platform/network/NetworkingContext.h | 10 | ||||
-rw-r--r-- | WebCore/platform/network/android/ResourceHandleAndroid.cpp | 23 |
2 files changed, 18 insertions, 15 deletions
diff --git a/WebCore/platform/network/NetworkingContext.h b/WebCore/platform/network/NetworkingContext.h index a7d40dc..47ec87a 100644 --- a/WebCore/platform/network/NetworkingContext.h +++ b/WebCore/platform/network/NetworkingContext.h @@ -33,6 +33,10 @@ class QNetworkAccessManager; namespace WebCore { +#if PLATFORM(ANDROID) +class FrameLoaderClient; +class MainResourceLoader; +#endif class ResourceError; class ResourceRequest; @@ -60,6 +64,12 @@ public: virtual ResourceError blockedError(const ResourceRequest&) const = 0; #endif +#if PLATFORM(ANDROID) + virtual MainResourceLoader* mainResourceLoader() const = 0; + virtual bool isPrivateBrowsingEnabled() const = 0; + virtual FrameLoaderClient* frameLoaderClient() const = 0; +#endif + protected: NetworkingContext() { } }; diff --git a/WebCore/platform/network/android/ResourceHandleAndroid.cpp b/WebCore/platform/network/android/ResourceHandleAndroid.cpp index c684da3..8e42643 100644 --- a/WebCore/platform/network/android/ResourceHandleAndroid.cpp +++ b/WebCore/platform/network/android/ResourceHandleAndroid.cpp @@ -49,17 +49,14 @@ ResourceHandle::~ResourceHandle() { } -bool ResourceHandle::start(Frame* frame) +bool ResourceHandle::start(NetworkingContext* context) { - DocumentLoader* docLoader = frame->loader()->activeDocumentLoader(); - MainResourceLoader* mainLoader = docLoader->mainResourceLoader(); + MainResourceLoader* mainLoader = context->mainResourceLoader(); bool isMainResource = static_cast<void*>(mainLoader) == static_cast<void*>(client()); - bool isPrivateBrowsing = false; - if (frame->settings()) - isPrivateBrowsing = frame->settings()->privateBrowsingEnabled(); + bool isPrivateBrowsing = context->isPrivateBrowsingEnabled(); - PassRefPtr<ResourceLoaderAndroid> loader = ResourceLoaderAndroid::start(this, d->m_firstRequest, frame->loader()->client(), isMainResource, false, isPrivateBrowsing); + PassRefPtr<ResourceLoaderAndroid> loader = ResourceLoaderAndroid::start(this, d->m_firstRequest, context->frameLoaderClient(), isMainResource, false, isPrivateBrowsing); if (loader) { d->m_loader = loader; @@ -154,22 +151,18 @@ private: WTF::Vector<char>* m_data; }; -void ResourceHandle::loadResourceSynchronously(const ResourceRequest& request, - StoredCredentials /*storedCredentials*/, - ResourceError& error, ResourceResponse& response, WTF::Vector<char>& data, - Frame* frame) +void ResourceHandle::loadResourceSynchronously(NetworkingContext* context, const ResourceRequest& request, + StoredCredentials, ResourceError& error, ResourceResponse& response, WTF::Vector<char>& data) { SyncLoader s(error, response, data); RefPtr<ResourceHandle> h = adoptRef(new ResourceHandle(request, &s, false, false)); - bool isPrivateBrowsing = false; - if (frame->settings()) - isPrivateBrowsing = frame->settings()->privateBrowsingEnabled(); + bool isPrivateBrowsing = context->isPrivateBrowsingEnabled(); // This blocks until the load is finished. // Use the request owned by the ResourceHandle. This has had the username // and password (if present) stripped from the URL in // ResourceHandleInternal::ResourceHandleInternal(). This matches the // behaviour in the asynchronous case. - ResourceLoaderAndroid::start(h.get(), request, frame->loader()->client(), false, true, isPrivateBrowsing); + ResourceLoaderAndroid::start(h.get(), request, context->frameLoaderClient(), false, true, isPrivateBrowsing); } } // namespace WebCore |