summaryrefslogtreecommitdiffstats
path: root/WebCore
diff options
context:
space:
mode:
authorSteve Block <steveblock@google.com>2010-09-22 14:50:30 +0100
committerSteve Block <steveblock@google.com>2010-09-29 18:32:12 +0100
commitaafdd7e990ceb671441a0799ee1b1c2776de95f8 (patch)
tree216aa771fbe60f309cec6b1650357649412bb04b /WebCore
parentb4b1148720e724bf404dadaa5443caaa286f5724 (diff)
downloadexternal_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.h10
-rw-r--r--WebCore/platform/network/android/ResourceHandleAndroid.cpp23
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