[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677

kocienda kocienda at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 05:54:37 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 437bc00b3dd710b4baf0e47059edaf031209c519
Author: kocienda <kocienda at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Tue Jan 29 16:20:20 2002 +0000

    2002-01-29  Kenneth Kocienda  <kocienda at apple.com>
    
            These now link with WebFoundation, or contain directives
            for linking with WebFoundation.
    
            * Tests/draw/drawApp/drawApp.pbproj/project.pbxproj:
            * Tests/khtmlview/WebViewTest/WebViewTest.pbproj/project.pbxproj:
            * Tests/qt/Makefile.am:
    
            WebBrowser now links with WebFoundation
    
            * WebBrowser.pbproj/project.pbxproj:
    
            Changed over to the new cache loader in WebFoundation
    
            * src/kwq/KWQKHTMLPart.h:
            * src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient init]), (-[KHTMLPartLoadClient
            WCURLHandleResourceDidBeginLoading:userData:]), (-[KHTMLPartLoadClient
            WCURLHandleResourceDidCancelLoading:userData:]), (-[KHTMLPartLoadClient
            WCURLHandleResourceDidFinishLoading:userData:]), (-[KHTMLPartLoadClient
            WCURLHandle:resourceDataDidBecomeAvailable:offset:length:userData:]),
            (-[KHTMLPartLoadClient WCURLHandle:resourceDidFailLoadingWithResult:userData:]),
            (-[KHTMLPartLoadClient dealloc]), (KHTMLPart::slotData), (KHTMLPart::openURL):
            * src/kwq/KWQKjobclasses.mm:
            * src/kwq/KWQKloader.mm: (-[URLLoadClient initWithLoader:]), (-[URLLoadClient
            WCURLHandleResourceDidBeginLoading:userData:]), (-[URLLoadClient
            WCURLHandleResourceDidCancelLoading:userData:]), (-[URLLoadClient
            WCURLHandleResourceDidFinishLoading:userData:]), (-[URLLoadClient
            WCURLHandle:resourceDataDidBecomeAvailable:offset:length:userData:]),
            (-[URLLoadClient WCURLHandle:resourceDidFailLoadingWithResult:userData:]),
            (-[URLLoadClient dealloc]):
            * src/kwq/kio/jobclasses.h:
    
            Many cleanups and changes that resulted from integrating the
            cache/loader into WebViewTest and Alexander.
    
            * CacheLoader.subproj/WKHTTPURLHandle.m: (-[WKHTTPURLHandle
            initWithURL:flags:group:requestMethod:requestData:]), (-[WKHTTPURLHandle
            dealloc]):
            * CacheLoader.subproj/WKHTTPURLProtocolHandler.m: (-[WKHTTPURLProtocolHandler
            initWithURLLoad:]):
            * CacheLoader.subproj/WKURLData.m:
            * CacheLoader.subproj/WKURLHandle.m: (-[WKURLHandle dealloc]):
            * CacheLoader.subproj/WKURLHandleClient.h:
            * CacheLoader.subproj/WKURLLoad.h:
            * CacheLoader.subproj/WKURLLoad.m: (+[WKURLLoad initialize]), (-[WKURLLoad
            initWithURL:flags:]), (-[WKURLLoad schedule]), (-[WKURLLoad lock]), (-[WKURLLoad
            unlock]), (-[WKURLLoad dealloc]), (-[WKURLLoad beginOriginLoad]), (-[WKURLLoad
            timedOut]), (+[WKURLLoad WKURLLoadCacheCheckerRun:]), (+[WKURLLoad
            WKURLLoadThrottlerRun:]), (+[WKURLLoad WKURLLoadSweeperRun:]), (+[WKURLLoad
            WKURLLoadCFStreamHandlerRun:]):
            * CacheLoader.subproj/WKURLLoadManager.m: (-[WKURLLoadManager
            initWithDefaultStack]), (-[WKURLLoadManager cancelRequestWithURLHandle:]),
            (-[WKURLLoadManager cancelAllRequestsWithURL:]), (-[WKURLLoadManager
            cacheObject:forURL:]), (-[WKURLLoadManager handleURLLoadDone:]),
            (-[WKURLLoadManager handleURLLoadedResourceData:]):
            * CacheLoader.subproj/WKURLMemoryCache.m: (-[WKURLMemoryCache
            truncateToSizeLimit]), (-[WKURLMemoryCache cacheObject:forURL:untilDate:]):
            * WebFoundation.pbproj/project.pbxproj:
    
            WebKit now links with WebFoundation
    
            * WebKit.pbproj/kocienda.pbxuser:
            * WebKit.pbproj/project.pbxproj:
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@557 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog-2002-12-03 b/WebCore/ChangeLog-2002-12-03
index 7f1361b..7bee588 100644
--- a/WebCore/ChangeLog-2002-12-03
+++ b/WebCore/ChangeLog-2002-12-03
@@ -1,3 +1,25 @@
+2002-01-29  Kenneth Kocienda  <kocienda at apple.com>
+
+        Changed over to the new cache loader in WebFoundation
+        
+	* src/kwq/KWQKHTMLPart.h:
+	* src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient init]), (-[KHTMLPartLoadClient
+	WCURLHandleResourceDidBeginLoading:userData:]), (-[KHTMLPartLoadClient
+	WCURLHandleResourceDidCancelLoading:userData:]), (-[KHTMLPartLoadClient
+	WCURLHandleResourceDidFinishLoading:userData:]), (-[KHTMLPartLoadClient
+	WCURLHandle:resourceDataDidBecomeAvailable:offset:length:userData:]),
+	(-[KHTMLPartLoadClient WCURLHandle:resourceDidFailLoadingWithResult:userData:]),
+	(-[KHTMLPartLoadClient dealloc]), (KHTMLPart::slotData), (KHTMLPart::openURL):
+	* src/kwq/KWQKjobclasses.mm:
+	* src/kwq/KWQKloader.mm: (-[URLLoadClient initWithLoader:]), (-[URLLoadClient
+	WCURLHandleResourceDidBeginLoading:userData:]), (-[URLLoadClient
+	WCURLHandleResourceDidCancelLoading:userData:]), (-[URLLoadClient
+	WCURLHandleResourceDidFinishLoading:userData:]), (-[URLLoadClient
+	WCURLHandle:resourceDataDidBecomeAvailable:offset:length:userData:]),
+	(-[URLLoadClient WCURLHandle:resourceDidFailLoadingWithResult:userData:]),
+	(-[URLLoadClient dealloc]):
+	* src/kwq/kio/jobclasses.h:
+
 2002-01-29  Maciej Stachowiak  <mjs at apple.com>
 
 	Reimplement QDict, QMap, QPtrDict and QSortedList.
diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index 7f1361b..7bee588 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,3 +1,25 @@
+2002-01-29  Kenneth Kocienda  <kocienda at apple.com>
+
+        Changed over to the new cache loader in WebFoundation
+        
+	* src/kwq/KWQKHTMLPart.h:
+	* src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient init]), (-[KHTMLPartLoadClient
+	WCURLHandleResourceDidBeginLoading:userData:]), (-[KHTMLPartLoadClient
+	WCURLHandleResourceDidCancelLoading:userData:]), (-[KHTMLPartLoadClient
+	WCURLHandleResourceDidFinishLoading:userData:]), (-[KHTMLPartLoadClient
+	WCURLHandle:resourceDataDidBecomeAvailable:offset:length:userData:]),
+	(-[KHTMLPartLoadClient WCURLHandle:resourceDidFailLoadingWithResult:userData:]),
+	(-[KHTMLPartLoadClient dealloc]), (KHTMLPart::slotData), (KHTMLPart::openURL):
+	* src/kwq/KWQKjobclasses.mm:
+	* src/kwq/KWQKloader.mm: (-[URLLoadClient initWithLoader:]), (-[URLLoadClient
+	WCURLHandleResourceDidBeginLoading:userData:]), (-[URLLoadClient
+	WCURLHandleResourceDidCancelLoading:userData:]), (-[URLLoadClient
+	WCURLHandleResourceDidFinishLoading:userData:]), (-[URLLoadClient
+	WCURLHandle:resourceDataDidBecomeAvailable:offset:length:userData:]),
+	(-[URLLoadClient WCURLHandle:resourceDidFailLoadingWithResult:userData:]),
+	(-[URLLoadClient dealloc]):
+	* src/kwq/kio/jobclasses.h:
+
 2002-01-29  Maciej Stachowiak  <mjs at apple.com>
 
 	Reimplement QDict, QMap, QPtrDict and QSortedList.
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 7f1361b..7bee588 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,25 @@
+2002-01-29  Kenneth Kocienda  <kocienda at apple.com>
+
+        Changed over to the new cache loader in WebFoundation
+        
+	* src/kwq/KWQKHTMLPart.h:
+	* src/kwq/KWQKHTMLPart.mm: (-[KHTMLPartLoadClient init]), (-[KHTMLPartLoadClient
+	WCURLHandleResourceDidBeginLoading:userData:]), (-[KHTMLPartLoadClient
+	WCURLHandleResourceDidCancelLoading:userData:]), (-[KHTMLPartLoadClient
+	WCURLHandleResourceDidFinishLoading:userData:]), (-[KHTMLPartLoadClient
+	WCURLHandle:resourceDataDidBecomeAvailable:offset:length:userData:]),
+	(-[KHTMLPartLoadClient WCURLHandle:resourceDidFailLoadingWithResult:userData:]),
+	(-[KHTMLPartLoadClient dealloc]), (KHTMLPart::slotData), (KHTMLPart::openURL):
+	* src/kwq/KWQKjobclasses.mm:
+	* src/kwq/KWQKloader.mm: (-[URLLoadClient initWithLoader:]), (-[URLLoadClient
+	WCURLHandleResourceDidBeginLoading:userData:]), (-[URLLoadClient
+	WCURLHandleResourceDidCancelLoading:userData:]), (-[URLLoadClient
+	WCURLHandleResourceDidFinishLoading:userData:]), (-[URLLoadClient
+	WCURLHandle:resourceDataDidBecomeAvailable:offset:length:userData:]),
+	(-[URLLoadClient WCURLHandle:resourceDidFailLoadingWithResult:userData:]),
+	(-[URLLoadClient dealloc]):
+	* src/kwq/kio/jobclasses.h:
+
 2002-01-29  Maciej Stachowiak  <mjs at apple.com>
 
 	Reimplement QDict, QMap, QPtrDict and QSortedList.
diff --git a/WebCore/kwq/KWQKHTMLPart.mm b/WebCore/kwq/KWQKHTMLPart.mm
index c8cb400..9d1993d 100644
--- a/WebCore/kwq/KWQKHTMLPart.mm
+++ b/WebCore/kwq/KWQKHTMLPart.mm
@@ -49,8 +49,7 @@
 
 #include <KWQKHTMLPart.h>
 
-#import <WCURICache.h>
-#import <WCURICacheData.h>
+#import <WCURLHandle.h>
 
 #include <WKPluginWidget.h>
 #include <rendering/render_frames.h>
@@ -72,33 +71,72 @@ static void recursive(const DOM::Node &pNode, const DOM::Node &node)
     }
 }
 
-// Class KHTMLPartNotificationReceiver ==============================================================
+// Class KHTMLPartLoadClient ==============================================================
 
- at interface KHTMLPartNotificationReceiver : NSObject
+ at interface KHTMLPartLoadClient : NSObject <WCURLHandleClient>
 {
     @public
     KHTMLPart *m_part;
+    NSData *m_data;
 }
 @end
 
- at implementation KHTMLPartNotificationReceiver
+ at implementation KHTMLPartLoadClient
 
--(void)cacheDataAvailable:(NSNotification *)notification
+-(id)init
+{
+    if ((self = [super init])) {
+        m_data = nil;
+    
+        return self;
+    }
+
+    return nil;
+}
+
+- (void)WCURLHandleResourceDidBeginLoading:(id)sender userData:(void *)userData
+{
+}
+
+- (void)WCURLHandleResourceDidCancelLoading:(id)sender userData:(void *)userData
 {
-    m_part->slotData([notification object]);
 }
 
--(void)cacheFinished:(NSNotification *)notification
+- (void)WCURLHandleResourceDidFinishLoading:(id)sender userData:(void *)userData
 {
-    // FIXME: need an implementation for this
     m_part->closeURL();
 }
 
+- (void)WCURLHandle:(id)sender resourceDataDidBecomeAvailable:(NSData *)data offset:(int)offset length:(int)length userData:(void *)userData
+{
+    char *bytes;
+
+    if (!m_data) {
+        m_data = [data retain];
+    }
+    
+    bytes = ((char *)[data bytes]) + offset;    
+    
+    m_part->slotData(sender, (const char *)bytes, length);
+}
+
+- (void)WCURLHandle:(id)sender resourceDidFailLoadingWithResult:(int)result userData:(void *)userData
+{
+}
+
+
 -(void)checkCompleted:(NSNotification *)notification
 {
     m_part->checkCompleted();
 }
 
+-(void)dealloc
+{
+    [m_data release];
+    
+    [super dealloc];
+}
+
 @end
 
 
@@ -121,7 +159,7 @@ public:
     KURL m_baseURL;
     
     KHTMLPart *m_part;
-    KHTMLPartNotificationReceiver *m_recv;
+    KHTMLPartLoadClient *m_recv;
 
     bool m_bFirstData:1;
     bool m_haveEncoding:1;
@@ -162,7 +200,7 @@ public:
         //m_settings = new KHTMLSettings(*KHTMLFactory::defaultHTMLSettings());
         m_settings = new KHTMLSettings();
         m_haveEncoding = false;
-        m_recv = [[KHTMLPartNotificationReceiver alloc] init];
+        m_recv = [[KHTMLPartLoadClient alloc] init];
         m_recv->m_part = part;
         
         m_jscript = 0L;
@@ -172,7 +210,7 @@ public:
 
     ~KHTMLPartPrivate()
     {
-        [m_recv autorelease];   
+        [m_recv release];   
     }
 
 };
@@ -204,6 +242,7 @@ KHTMLPart::~KHTMLPart()
     NSLog(@"destructing KHTMLPart");
 }
 
+#if 0
 static NSString *
 encodingFromContentType (NSString *contentType)
 {
@@ -224,11 +263,12 @@ encodingFromContentType (NSString *contentType)
 
     return result;
 }
+#endif
 
 // NOTE: This code emulates the interface used by the original khtml part  
-void KHTMLPart::slotData(id <WCURICacheData> data) 
+void KHTMLPart::slotData(id handle, const char *bytes, int length)
 {
-    NSString *encoding;
+    //NSString *encoding;
     QString enc;
 
     if (!d->m_workingURL.isEmpty()) {
@@ -236,15 +276,18 @@ void KHTMLPart::slotData(id <WCURICacheData> data)
         begin(d->m_workingURL, 0, 0);
         d->m_workingURL = KURL();
     }
-
+    
+    // FIXME: need to turn this back on
+    #if 0
     encoding = encodingFromContentType ([[data headers] objectForKey:@"Content-Type"]);
     if (encoding != NULL) {
         enc = QString::fromCFString((CFStringRef) encoding);
 
         setEncoding (enc, true);
     }
-
-    write((const char *)[data cacheData], [data cacheDataSize]);    
+    #endif
+    
+    write(bytes, length);
 }
 
 bool KHTMLPart::openURL( const KURL &url )
@@ -275,19 +318,19 @@ bool KHTMLPart::openURL( const KURL &url )
     d->m_workingURL = url;
     d->m_url = url;
 
-    id <WCURICache> cache;
-
-    cache = WCGetDefaultURICache();
-
+    id handle;
     NSString *urlString;
+    NSURL *theURL;
     
     urlString = [NSString stringWithCString:d->m_workingURL.url().latin1()];
     if ([urlString hasSuffix:@"/"]) {
         urlString = [urlString substringToIndex:([urlString length] - 1)];
     }
+    theURL = [NSURL URLWithString:urlString];
+    
+    handle = WCURLHandleCreate(theURL, d->m_recv, NULL);
+    [handle loadInBackground];
     
-    [cache requestWithString:urlString requestor:d->m_recv userData:nil];
-
     [[NSNotificationCenter defaultCenter] addObserver:d->m_recv
         selector:@selector(checkCompleted:) name:urlString object:nil];
     
diff --git a/WebCore/kwq/KWQKHTMLPartImpl.mm b/WebCore/kwq/KWQKHTMLPartImpl.mm
index c8cb400..9d1993d 100644
--- a/WebCore/kwq/KWQKHTMLPartImpl.mm
+++ b/WebCore/kwq/KWQKHTMLPartImpl.mm
@@ -49,8 +49,7 @@
 
 #include <KWQKHTMLPart.h>
 
-#import <WCURICache.h>
-#import <WCURICacheData.h>
+#import <WCURLHandle.h>
 
 #include <WKPluginWidget.h>
 #include <rendering/render_frames.h>
@@ -72,33 +71,72 @@ static void recursive(const DOM::Node &pNode, const DOM::Node &node)
     }
 }
 
-// Class KHTMLPartNotificationReceiver ==============================================================
+// Class KHTMLPartLoadClient ==============================================================
 
- at interface KHTMLPartNotificationReceiver : NSObject
+ at interface KHTMLPartLoadClient : NSObject <WCURLHandleClient>
 {
     @public
     KHTMLPart *m_part;
+    NSData *m_data;
 }
 @end
 
- at implementation KHTMLPartNotificationReceiver
+ at implementation KHTMLPartLoadClient
 
--(void)cacheDataAvailable:(NSNotification *)notification
+-(id)init
+{
+    if ((self = [super init])) {
+        m_data = nil;
+    
+        return self;
+    }
+
+    return nil;
+}
+
+- (void)WCURLHandleResourceDidBeginLoading:(id)sender userData:(void *)userData
+{
+}
+
+- (void)WCURLHandleResourceDidCancelLoading:(id)sender userData:(void *)userData
 {
-    m_part->slotData([notification object]);
 }
 
--(void)cacheFinished:(NSNotification *)notification
+- (void)WCURLHandleResourceDidFinishLoading:(id)sender userData:(void *)userData
 {
-    // FIXME: need an implementation for this
     m_part->closeURL();
 }
 
+- (void)WCURLHandle:(id)sender resourceDataDidBecomeAvailable:(NSData *)data offset:(int)offset length:(int)length userData:(void *)userData
+{
+    char *bytes;
+
+    if (!m_data) {
+        m_data = [data retain];
+    }
+    
+    bytes = ((char *)[data bytes]) + offset;    
+    
+    m_part->slotData(sender, (const char *)bytes, length);
+}
+
+- (void)WCURLHandle:(id)sender resourceDidFailLoadingWithResult:(int)result userData:(void *)userData
+{
+}
+
+
 -(void)checkCompleted:(NSNotification *)notification
 {
     m_part->checkCompleted();
 }
 
+-(void)dealloc
+{
+    [m_data release];
+    
+    [super dealloc];
+}
+
 @end
 
 
@@ -121,7 +159,7 @@ public:
     KURL m_baseURL;
     
     KHTMLPart *m_part;
-    KHTMLPartNotificationReceiver *m_recv;
+    KHTMLPartLoadClient *m_recv;
 
     bool m_bFirstData:1;
     bool m_haveEncoding:1;
@@ -162,7 +200,7 @@ public:
         //m_settings = new KHTMLSettings(*KHTMLFactory::defaultHTMLSettings());
         m_settings = new KHTMLSettings();
         m_haveEncoding = false;
-        m_recv = [[KHTMLPartNotificationReceiver alloc] init];
+        m_recv = [[KHTMLPartLoadClient alloc] init];
         m_recv->m_part = part;
         
         m_jscript = 0L;
@@ -172,7 +210,7 @@ public:
 
     ~KHTMLPartPrivate()
     {
-        [m_recv autorelease];   
+        [m_recv release];   
     }
 
 };
@@ -204,6 +242,7 @@ KHTMLPart::~KHTMLPart()
     NSLog(@"destructing KHTMLPart");
 }
 
+#if 0
 static NSString *
 encodingFromContentType (NSString *contentType)
 {
@@ -224,11 +263,12 @@ encodingFromContentType (NSString *contentType)
 
     return result;
 }
+#endif
 
 // NOTE: This code emulates the interface used by the original khtml part  
-void KHTMLPart::slotData(id <WCURICacheData> data) 
+void KHTMLPart::slotData(id handle, const char *bytes, int length)
 {
-    NSString *encoding;
+    //NSString *encoding;
     QString enc;
 
     if (!d->m_workingURL.isEmpty()) {
@@ -236,15 +276,18 @@ void KHTMLPart::slotData(id <WCURICacheData> data)
         begin(d->m_workingURL, 0, 0);
         d->m_workingURL = KURL();
     }
-
+    
+    // FIXME: need to turn this back on
+    #if 0
     encoding = encodingFromContentType ([[data headers] objectForKey:@"Content-Type"]);
     if (encoding != NULL) {
         enc = QString::fromCFString((CFStringRef) encoding);
 
         setEncoding (enc, true);
     }
-
-    write((const char *)[data cacheData], [data cacheDataSize]);    
+    #endif
+    
+    write(bytes, length);
 }
 
 bool KHTMLPart::openURL( const KURL &url )
@@ -275,19 +318,19 @@ bool KHTMLPart::openURL( const KURL &url )
     d->m_workingURL = url;
     d->m_url = url;
 
-    id <WCURICache> cache;
-
-    cache = WCGetDefaultURICache();
-
+    id handle;
     NSString *urlString;
+    NSURL *theURL;
     
     urlString = [NSString stringWithCString:d->m_workingURL.url().latin1()];
     if ([urlString hasSuffix:@"/"]) {
         urlString = [urlString substringToIndex:([urlString length] - 1)];
     }
+    theURL = [NSURL URLWithString:urlString];
+    
+    handle = WCURLHandleCreate(theURL, d->m_recv, NULL);
+    [handle loadInBackground];
     
-    [cache requestWithString:urlString requestor:d->m_recv userData:nil];
-
     [[NSNotificationCenter defaultCenter] addObserver:d->m_recv
         selector:@selector(checkCompleted:) name:urlString object:nil];
     
diff --git a/WebCore/kwq/KWQKJobClasses.h b/WebCore/kwq/KWQKJobClasses.h
index 6a56efc..169bee3 100644
--- a/WebCore/kwq/KWQKJobClasses.h
+++ b/WebCore/kwq/KWQKJobClasses.h
@@ -34,6 +34,13 @@
 #include <qobject.h>
 #include <qstring.h>
 
+#ifdef _KWQ_
+#if (defined(__APPLE__) && defined(__OBJC__) && defined(__cplusplus))
+#include <WCURLHandle.h>
+#endif
+#endif
+
+
 namespace KIO {
 
 class TransferJobPrivate;
@@ -161,7 +168,7 @@ public:
 
 #ifdef _KWQ_
 #if (defined(__APPLE__) && defined(__OBJC__) && defined(__cplusplus))
-    void begin(id requestor, void *userData);
+    void begin(id <WCURLHandleClient> client, void *userData);
 #else
     void begin(void *requestor, void *userData);
 #endif
diff --git a/WebCore/kwq/KWQKJobClasses.mm b/WebCore/kwq/KWQKJobClasses.mm
index df23749..1be01ee 100644
--- a/WebCore/kwq/KWQKJobClasses.mm
+++ b/WebCore/kwq/KWQKJobClasses.mm
@@ -30,6 +30,7 @@
 
 #include <Foundation/Foundation.h>
 #include <WCURICache.h>
+#include <WCURLHandle.h>
 
 static const QString *DEFAULT_ERROR_TEXT = NULL;
 
@@ -99,13 +100,15 @@ public:
     ~TransferJobPrivate() {
         [metaData autorelease];
         [url autorelease];
+        [handle autorelease];
     }
 
 private:
     TransferJob *parent;
     NSMutableDictionary *metaData;
     NSURL *url;
-    id requestor;
+    id handle;
+    id <WCURLHandleClient> client;
 };
 
 // class TransferJob ===========================================================
@@ -160,14 +163,16 @@ void TransferJob::addMetaData(const QString &key, const QString &value)
 
 void TransferJob::kill(bool quietly=TRUE)
 {
+#if 0
     [WCGetDefaultURICache() cancelRequestWithURL:d->url requestor:d->requestor];
+#endif
 }
 
-void TransferJob::begin(id requestor, void *userData)
+void TransferJob::begin(id <WCURLHandleClient> client, void *userData)
 {
-    //FIXME: load uri
-    d->requestor = requestor;
-    [WCGetDefaultURICache() requestWithURL:d->url requestor:requestor userData:userData];
+    d->client = client;
+    d->handle = WCURLHandleCreate(d->url, client, userData);
+    [d->handle loadInBackground];
 }
 
 } // namespace KIO
diff --git a/WebCore/kwq/KWQKloader.mm b/WebCore/kwq/KWQKloader.mm
index 4f15b2d..6e111ad 100644
--- a/WebCore/kwq/KWQKloader.mm
+++ b/WebCore/kwq/KWQKloader.mm
@@ -898,53 +898,70 @@ void DocLoader::removeCachedObject( CachedObject* o ) const
 
 // ------------------------------------------------------------------------------------------
 
-// Class LoaderNotificationReceiver ==============================================================
+// Class URLLoadClient ======================================================================
 
- at interface LoaderNotificationReceiver : NSObject
+ at interface URLLoadClient : NSObject <WCURLHandleClient>
 {
     @public
     Loader *m_loader;
+    NSData *m_data;
 }
 
 -(id)initWithLoader:(Loader *)loader;
 
 @end
 
- at implementation LoaderNotificationReceiver
+ at implementation URLLoadClient
 
 -(id)initWithLoader:(Loader *)loader
 {
-    m_loader = loader;
-    return self;
+    if ((self = [super init])) {
+        m_loader = loader;
+        m_data = nil;
+    
+        return self;
+    }
+    
+    return nil;
 }
 
--(void)cacheDataAvailable:(NSNotification *)notification
+- (void)WCURLHandleResourceDidBeginLoading:(id)sender userData:(void *)userData
 {
-    NSString *notificationName = [notification name];
-    if ([notificationName rangeOfString: @"uri"].location != 0){
-        KWQDEBUG1("cacheDataAvailable: Received invalid notication, %s\n", DEBUG_OBJECT(notificationName));
-    }
-    else {
-        KWQDEBUG1("cacheDataAvailable: Received notication, %s\n", DEBUG_OBJECT(notificationName));
-        id <WCURICacheData> data = [notification object];
-        KIO::Job *job = static_cast<KIO::Job *>([data userData]);
-        m_loader->slotData(job, (const char *)[data cacheData], [data cacheDataSize]);
-    }
 }
 
--(void)cacheFinished:(NSNotification *)notification
+- (void)WCURLHandleResourceDidCancelLoading:(id)sender userData:(void *)userData
 {
-    NSString *notificationName = [notification name];
-    if ([notificationName rangeOfString: @"uri"].location != 0){
-        KWQDEBUG1 ("cacheFinished: Received invalid notication, %s\n", DEBUG_OBJECT(notificationName));
-    }
-    else {
-        KWQDEBUG1 ("cacheFinished: Received notication, %s\n", DEBUG_OBJECT(notificationName));
-        // FIXME: need an implementation for this
-        id <WCURICacheData> data = [notification object];
-        KIO::Job *job = static_cast<KIO::Job *>([data userData]);
-        m_loader->slotFinished(job);
+}
+
+- (void)WCURLHandleResourceDidFinishLoading:(id)sender userData:(void *)userData
+{
+    KIO::Job *job = static_cast<KIO::Job *>(userData);
+    m_loader->slotFinished(job);
+}
+
+- (void)WCURLHandle:(id)sender resourceDataDidBecomeAvailable:(NSData *)data offset:(int)offset length:(int)length userData:(void *)userData
+{
+    char *bytes;
+
+    if (!m_data) {
+        m_data = [data retain];
     }
+    
+    bytes = ((char *)[data bytes]) + offset;    
+    
+    KIO::Job *job = static_cast<KIO::Job *>(userData);
+    m_loader->slotData(job, (const char *)bytes, length);
+}
+
+- (void)WCURLHandle:(id)sender resourceDidFailLoadingWithResult:(int)result userData:(void *)userData
+{
+}
+
+-(void)dealloc
+{
+    [m_data release];
+    
+    [super dealloc];
 }
 
 @end
@@ -958,7 +975,7 @@ public:
     LoaderPrivate(Loader *parent)
     {
         _parent = parent;
-        m_recv = [[LoaderNotificationReceiver alloc] initWithLoader:parent];
+        m_recv = [[URLLoadClient alloc] initWithLoader:parent];
     } 
     
     ~LoaderPrivate()
@@ -968,7 +985,7 @@ public:
 
 private:
     Loader *_parent;
-    LoaderNotificationReceiver *m_recv;
+    URLLoadClient *m_recv;
 };
 
 } // namespace khtml
diff --git a/WebCore/kwq/KWQLoader.mm b/WebCore/kwq/KWQLoader.mm
index 4f15b2d..6e111ad 100644
--- a/WebCore/kwq/KWQLoader.mm
+++ b/WebCore/kwq/KWQLoader.mm
@@ -898,53 +898,70 @@ void DocLoader::removeCachedObject( CachedObject* o ) const
 
 // ------------------------------------------------------------------------------------------
 
-// Class LoaderNotificationReceiver ==============================================================
+// Class URLLoadClient ======================================================================
 
- at interface LoaderNotificationReceiver : NSObject
+ at interface URLLoadClient : NSObject <WCURLHandleClient>
 {
     @public
     Loader *m_loader;
+    NSData *m_data;
 }
 
 -(id)initWithLoader:(Loader *)loader;
 
 @end
 
- at implementation LoaderNotificationReceiver
+ at implementation URLLoadClient
 
 -(id)initWithLoader:(Loader *)loader
 {
-    m_loader = loader;
-    return self;
+    if ((self = [super init])) {
+        m_loader = loader;
+        m_data = nil;
+    
+        return self;
+    }
+    
+    return nil;
 }
 
--(void)cacheDataAvailable:(NSNotification *)notification
+- (void)WCURLHandleResourceDidBeginLoading:(id)sender userData:(void *)userData
 {
-    NSString *notificationName = [notification name];
-    if ([notificationName rangeOfString: @"uri"].location != 0){
-        KWQDEBUG1("cacheDataAvailable: Received invalid notication, %s\n", DEBUG_OBJECT(notificationName));
-    }
-    else {
-        KWQDEBUG1("cacheDataAvailable: Received notication, %s\n", DEBUG_OBJECT(notificationName));
-        id <WCURICacheData> data = [notification object];
-        KIO::Job *job = static_cast<KIO::Job *>([data userData]);
-        m_loader->slotData(job, (const char *)[data cacheData], [data cacheDataSize]);
-    }
 }
 
--(void)cacheFinished:(NSNotification *)notification
+- (void)WCURLHandleResourceDidCancelLoading:(id)sender userData:(void *)userData
 {
-    NSString *notificationName = [notification name];
-    if ([notificationName rangeOfString: @"uri"].location != 0){
-        KWQDEBUG1 ("cacheFinished: Received invalid notication, %s\n", DEBUG_OBJECT(notificationName));
-    }
-    else {
-        KWQDEBUG1 ("cacheFinished: Received notication, %s\n", DEBUG_OBJECT(notificationName));
-        // FIXME: need an implementation for this
-        id <WCURICacheData> data = [notification object];
-        KIO::Job *job = static_cast<KIO::Job *>([data userData]);
-        m_loader->slotFinished(job);
+}
+
+- (void)WCURLHandleResourceDidFinishLoading:(id)sender userData:(void *)userData
+{
+    KIO::Job *job = static_cast<KIO::Job *>(userData);
+    m_loader->slotFinished(job);
+}
+
+- (void)WCURLHandle:(id)sender resourceDataDidBecomeAvailable:(NSData *)data offset:(int)offset length:(int)length userData:(void *)userData
+{
+    char *bytes;
+
+    if (!m_data) {
+        m_data = [data retain];
     }
+    
+    bytes = ((char *)[data bytes]) + offset;    
+    
+    KIO::Job *job = static_cast<KIO::Job *>(userData);
+    m_loader->slotData(job, (const char *)bytes, length);
+}
+
+- (void)WCURLHandle:(id)sender resourceDidFailLoadingWithResult:(int)result userData:(void *)userData
+{
+}
+
+-(void)dealloc
+{
+    [m_data release];
+    
+    [super dealloc];
 }
 
 @end
@@ -958,7 +975,7 @@ public:
     LoaderPrivate(Loader *parent)
     {
         _parent = parent;
-        m_recv = [[LoaderNotificationReceiver alloc] initWithLoader:parent];
+        m_recv = [[URLLoadClient alloc] initWithLoader:parent];
     } 
     
     ~LoaderPrivate()
@@ -968,7 +985,7 @@ public:
 
 private:
     Loader *_parent;
-    LoaderNotificationReceiver *m_recv;
+    URLLoadClient *m_recv;
 };
 
 } // namespace khtml
diff --git a/WebCore/kwq/KWQLoaderImpl.mm b/WebCore/kwq/KWQLoaderImpl.mm
index 4f15b2d..6e111ad 100644
--- a/WebCore/kwq/KWQLoaderImpl.mm
+++ b/WebCore/kwq/KWQLoaderImpl.mm
@@ -898,53 +898,70 @@ void DocLoader::removeCachedObject( CachedObject* o ) const
 
 // ------------------------------------------------------------------------------------------
 
-// Class LoaderNotificationReceiver ==============================================================
+// Class URLLoadClient ======================================================================
 
- at interface LoaderNotificationReceiver : NSObject
+ at interface URLLoadClient : NSObject <WCURLHandleClient>
 {
     @public
     Loader *m_loader;
+    NSData *m_data;
 }
 
 -(id)initWithLoader:(Loader *)loader;
 
 @end
 
- at implementation LoaderNotificationReceiver
+ at implementation URLLoadClient
 
 -(id)initWithLoader:(Loader *)loader
 {
-    m_loader = loader;
-    return self;
+    if ((self = [super init])) {
+        m_loader = loader;
+        m_data = nil;
+    
+        return self;
+    }
+    
+    return nil;
 }
 
--(void)cacheDataAvailable:(NSNotification *)notification
+- (void)WCURLHandleResourceDidBeginLoading:(id)sender userData:(void *)userData
 {
-    NSString *notificationName = [notification name];
-    if ([notificationName rangeOfString: @"uri"].location != 0){
-        KWQDEBUG1("cacheDataAvailable: Received invalid notication, %s\n", DEBUG_OBJECT(notificationName));
-    }
-    else {
-        KWQDEBUG1("cacheDataAvailable: Received notication, %s\n", DEBUG_OBJECT(notificationName));
-        id <WCURICacheData> data = [notification object];
-        KIO::Job *job = static_cast<KIO::Job *>([data userData]);
-        m_loader->slotData(job, (const char *)[data cacheData], [data cacheDataSize]);
-    }
 }
 
--(void)cacheFinished:(NSNotification *)notification
+- (void)WCURLHandleResourceDidCancelLoading:(id)sender userData:(void *)userData
 {
-    NSString *notificationName = [notification name];
-    if ([notificationName rangeOfString: @"uri"].location != 0){
-        KWQDEBUG1 ("cacheFinished: Received invalid notication, %s\n", DEBUG_OBJECT(notificationName));
-    }
-    else {
-        KWQDEBUG1 ("cacheFinished: Received notication, %s\n", DEBUG_OBJECT(notificationName));
-        // FIXME: need an implementation for this
-        id <WCURICacheData> data = [notification object];
-        KIO::Job *job = static_cast<KIO::Job *>([data userData]);
-        m_loader->slotFinished(job);
+}
+
+- (void)WCURLHandleResourceDidFinishLoading:(id)sender userData:(void *)userData
+{
+    KIO::Job *job = static_cast<KIO::Job *>(userData);
+    m_loader->slotFinished(job);
+}
+
+- (void)WCURLHandle:(id)sender resourceDataDidBecomeAvailable:(NSData *)data offset:(int)offset length:(int)length userData:(void *)userData
+{
+    char *bytes;
+
+    if (!m_data) {
+        m_data = [data retain];
     }
+    
+    bytes = ((char *)[data bytes]) + offset;    
+    
+    KIO::Job *job = static_cast<KIO::Job *>(userData);
+    m_loader->slotData(job, (const char *)bytes, length);
+}
+
+- (void)WCURLHandle:(id)sender resourceDidFailLoadingWithResult:(int)result userData:(void *)userData
+{
+}
+
+-(void)dealloc
+{
+    [m_data release];
+    
+    [super dealloc];
 }
 
 @end
@@ -958,7 +975,7 @@ public:
     LoaderPrivate(Loader *parent)
     {
         _parent = parent;
-        m_recv = [[LoaderNotificationReceiver alloc] initWithLoader:parent];
+        m_recv = [[URLLoadClient alloc] initWithLoader:parent];
     } 
     
     ~LoaderPrivate()
@@ -968,7 +985,7 @@ public:
 
 private:
     Loader *_parent;
-    LoaderNotificationReceiver *m_recv;
+    URLLoadClient *m_recv;
 };
 
 } // namespace khtml
diff --git a/WebCore/kwq/kio/jobclasses.h b/WebCore/kwq/kio/jobclasses.h
index 6a56efc..169bee3 100644
--- a/WebCore/kwq/kio/jobclasses.h
+++ b/WebCore/kwq/kio/jobclasses.h
@@ -34,6 +34,13 @@
 #include <qobject.h>
 #include <qstring.h>
 
+#ifdef _KWQ_
+#if (defined(__APPLE__) && defined(__OBJC__) && defined(__cplusplus))
+#include <WCURLHandle.h>
+#endif
+#endif
+
+
 namespace KIO {
 
 class TransferJobPrivate;
@@ -161,7 +168,7 @@ public:
 
 #ifdef _KWQ_
 #if (defined(__APPLE__) && defined(__OBJC__) && defined(__cplusplus))
-    void begin(id requestor, void *userData);
+    void begin(id <WCURLHandleClient> client, void *userData);
 #else
     void begin(void *requestor, void *userData);
 #endif
diff --git a/WebCore/src/kwq/KWQKHTMLPart.h b/WebCore/src/kwq/KWQKHTMLPart.h
index 7967a3b..cfa0a63 100644
--- a/WebCore/src/kwq/KWQKHTMLPart.h
+++ b/WebCore/src/kwq/KWQKHTMLPart.h
@@ -576,9 +576,9 @@ public:
 #ifdef _KWQ_
     void init();
 #if (defined(__APPLE__) && defined(__OBJC__) && defined(__cplusplus))
-    void slotData(id <WCURICacheData> data);  
+    void slotData(id handle, const char *bytes, int length);  
 #else
-    void slotData(void *data);  
+    void slotData(void *handle, const char *bytes, int length);  
 #endif
 #endif
 
diff --git a/WebCore/src/kwq/KWQKHTMLPart.mm b/WebCore/src/kwq/KWQKHTMLPart.mm
index c8cb400..9d1993d 100644
--- a/WebCore/src/kwq/KWQKHTMLPart.mm
+++ b/WebCore/src/kwq/KWQKHTMLPart.mm
@@ -49,8 +49,7 @@
 
 #include <KWQKHTMLPart.h>
 
-#import <WCURICache.h>
-#import <WCURICacheData.h>
+#import <WCURLHandle.h>
 
 #include <WKPluginWidget.h>
 #include <rendering/render_frames.h>
@@ -72,33 +71,72 @@ static void recursive(const DOM::Node &pNode, const DOM::Node &node)
     }
 }
 
-// Class KHTMLPartNotificationReceiver ==============================================================
+// Class KHTMLPartLoadClient ==============================================================
 
- at interface KHTMLPartNotificationReceiver : NSObject
+ at interface KHTMLPartLoadClient : NSObject <WCURLHandleClient>
 {
     @public
     KHTMLPart *m_part;
+    NSData *m_data;
 }
 @end
 
- at implementation KHTMLPartNotificationReceiver
+ at implementation KHTMLPartLoadClient
 
--(void)cacheDataAvailable:(NSNotification *)notification
+-(id)init
+{
+    if ((self = [super init])) {
+        m_data = nil;
+    
+        return self;
+    }
+
+    return nil;
+}
+
+- (void)WCURLHandleResourceDidBeginLoading:(id)sender userData:(void *)userData
+{
+}
+
+- (void)WCURLHandleResourceDidCancelLoading:(id)sender userData:(void *)userData
 {
-    m_part->slotData([notification object]);
 }
 
--(void)cacheFinished:(NSNotification *)notification
+- (void)WCURLHandleResourceDidFinishLoading:(id)sender userData:(void *)userData
 {
-    // FIXME: need an implementation for this
     m_part->closeURL();
 }
 
+- (void)WCURLHandle:(id)sender resourceDataDidBecomeAvailable:(NSData *)data offset:(int)offset length:(int)length userData:(void *)userData
+{
+    char *bytes;
+
+    if (!m_data) {
+        m_data = [data retain];
+    }
+    
+    bytes = ((char *)[data bytes]) + offset;    
+    
+    m_part->slotData(sender, (const char *)bytes, length);
+}
+
+- (void)WCURLHandle:(id)sender resourceDidFailLoadingWithResult:(int)result userData:(void *)userData
+{
+}
+
+
 -(void)checkCompleted:(NSNotification *)notification
 {
     m_part->checkCompleted();
 }
 
+-(void)dealloc
+{
+    [m_data release];
+    
+    [super dealloc];
+}
+
 @end
 
 
@@ -121,7 +159,7 @@ public:
     KURL m_baseURL;
     
     KHTMLPart *m_part;
-    KHTMLPartNotificationReceiver *m_recv;
+    KHTMLPartLoadClient *m_recv;
 
     bool m_bFirstData:1;
     bool m_haveEncoding:1;
@@ -162,7 +200,7 @@ public:
         //m_settings = new KHTMLSettings(*KHTMLFactory::defaultHTMLSettings());
         m_settings = new KHTMLSettings();
         m_haveEncoding = false;
-        m_recv = [[KHTMLPartNotificationReceiver alloc] init];
+        m_recv = [[KHTMLPartLoadClient alloc] init];
         m_recv->m_part = part;
         
         m_jscript = 0L;
@@ -172,7 +210,7 @@ public:
 
     ~KHTMLPartPrivate()
     {
-        [m_recv autorelease];   
+        [m_recv release];   
     }
 
 };
@@ -204,6 +242,7 @@ KHTMLPart::~KHTMLPart()
     NSLog(@"destructing KHTMLPart");
 }
 
+#if 0
 static NSString *
 encodingFromContentType (NSString *contentType)
 {
@@ -224,11 +263,12 @@ encodingFromContentType (NSString *contentType)
 
     return result;
 }
+#endif
 
 // NOTE: This code emulates the interface used by the original khtml part  
-void KHTMLPart::slotData(id <WCURICacheData> data) 
+void KHTMLPart::slotData(id handle, const char *bytes, int length)
 {
-    NSString *encoding;
+    //NSString *encoding;
     QString enc;
 
     if (!d->m_workingURL.isEmpty()) {
@@ -236,15 +276,18 @@ void KHTMLPart::slotData(id <WCURICacheData> data)
         begin(d->m_workingURL, 0, 0);
         d->m_workingURL = KURL();
     }
-
+    
+    // FIXME: need to turn this back on
+    #if 0
     encoding = encodingFromContentType ([[data headers] objectForKey:@"Content-Type"]);
     if (encoding != NULL) {
         enc = QString::fromCFString((CFStringRef) encoding);
 
         setEncoding (enc, true);
     }
-
-    write((const char *)[data cacheData], [data cacheDataSize]);    
+    #endif
+    
+    write(bytes, length);
 }
 
 bool KHTMLPart::openURL( const KURL &url )
@@ -275,19 +318,19 @@ bool KHTMLPart::openURL( const KURL &url )
     d->m_workingURL = url;
     d->m_url = url;
 
-    id <WCURICache> cache;
-
-    cache = WCGetDefaultURICache();
-
+    id handle;
     NSString *urlString;
+    NSURL *theURL;
     
     urlString = [NSString stringWithCString:d->m_workingURL.url().latin1()];
     if ([urlString hasSuffix:@"/"]) {
         urlString = [urlString substringToIndex:([urlString length] - 1)];
     }
+    theURL = [NSURL URLWithString:urlString];
+    
+    handle = WCURLHandleCreate(theURL, d->m_recv, NULL);
+    [handle loadInBackground];
     
-    [cache requestWithString:urlString requestor:d->m_recv userData:nil];
-
     [[NSNotificationCenter defaultCenter] addObserver:d->m_recv
         selector:@selector(checkCompleted:) name:urlString object:nil];
     
diff --git a/WebCore/src/kwq/KWQKjobclasses.mm b/WebCore/src/kwq/KWQKjobclasses.mm
index df23749..1be01ee 100644
--- a/WebCore/src/kwq/KWQKjobclasses.mm
+++ b/WebCore/src/kwq/KWQKjobclasses.mm
@@ -30,6 +30,7 @@
 
 #include <Foundation/Foundation.h>
 #include <WCURICache.h>
+#include <WCURLHandle.h>
 
 static const QString *DEFAULT_ERROR_TEXT = NULL;
 
@@ -99,13 +100,15 @@ public:
     ~TransferJobPrivate() {
         [metaData autorelease];
         [url autorelease];
+        [handle autorelease];
     }
 
 private:
     TransferJob *parent;
     NSMutableDictionary *metaData;
     NSURL *url;
-    id requestor;
+    id handle;
+    id <WCURLHandleClient> client;
 };
 
 // class TransferJob ===========================================================
@@ -160,14 +163,16 @@ void TransferJob::addMetaData(const QString &key, const QString &value)
 
 void TransferJob::kill(bool quietly=TRUE)
 {
+#if 0
     [WCGetDefaultURICache() cancelRequestWithURL:d->url requestor:d->requestor];
+#endif
 }
 
-void TransferJob::begin(id requestor, void *userData)
+void TransferJob::begin(id <WCURLHandleClient> client, void *userData)
 {
-    //FIXME: load uri
-    d->requestor = requestor;
-    [WCGetDefaultURICache() requestWithURL:d->url requestor:requestor userData:userData];
+    d->client = client;
+    d->handle = WCURLHandleCreate(d->url, client, userData);
+    [d->handle loadInBackground];
 }
 
 } // namespace KIO
diff --git a/WebCore/src/kwq/KWQKloader.mm b/WebCore/src/kwq/KWQKloader.mm
index 4f15b2d..6e111ad 100644
--- a/WebCore/src/kwq/KWQKloader.mm
+++ b/WebCore/src/kwq/KWQKloader.mm
@@ -898,53 +898,70 @@ void DocLoader::removeCachedObject( CachedObject* o ) const
 
 // ------------------------------------------------------------------------------------------
 
-// Class LoaderNotificationReceiver ==============================================================
+// Class URLLoadClient ======================================================================
 
- at interface LoaderNotificationReceiver : NSObject
+ at interface URLLoadClient : NSObject <WCURLHandleClient>
 {
     @public
     Loader *m_loader;
+    NSData *m_data;
 }
 
 -(id)initWithLoader:(Loader *)loader;
 
 @end
 
- at implementation LoaderNotificationReceiver
+ at implementation URLLoadClient
 
 -(id)initWithLoader:(Loader *)loader
 {
-    m_loader = loader;
-    return self;
+    if ((self = [super init])) {
+        m_loader = loader;
+        m_data = nil;
+    
+        return self;
+    }
+    
+    return nil;
 }
 
--(void)cacheDataAvailable:(NSNotification *)notification
+- (void)WCURLHandleResourceDidBeginLoading:(id)sender userData:(void *)userData
 {
-    NSString *notificationName = [notification name];
-    if ([notificationName rangeOfString: @"uri"].location != 0){
-        KWQDEBUG1("cacheDataAvailable: Received invalid notication, %s\n", DEBUG_OBJECT(notificationName));
-    }
-    else {
-        KWQDEBUG1("cacheDataAvailable: Received notication, %s\n", DEBUG_OBJECT(notificationName));
-        id <WCURICacheData> data = [notification object];
-        KIO::Job *job = static_cast<KIO::Job *>([data userData]);
-        m_loader->slotData(job, (const char *)[data cacheData], [data cacheDataSize]);
-    }
 }
 
--(void)cacheFinished:(NSNotification *)notification
+- (void)WCURLHandleResourceDidCancelLoading:(id)sender userData:(void *)userData
 {
-    NSString *notificationName = [notification name];
-    if ([notificationName rangeOfString: @"uri"].location != 0){
-        KWQDEBUG1 ("cacheFinished: Received invalid notication, %s\n", DEBUG_OBJECT(notificationName));
-    }
-    else {
-        KWQDEBUG1 ("cacheFinished: Received notication, %s\n", DEBUG_OBJECT(notificationName));
-        // FIXME: need an implementation for this
-        id <WCURICacheData> data = [notification object];
-        KIO::Job *job = static_cast<KIO::Job *>([data userData]);
-        m_loader->slotFinished(job);
+}
+
+- (void)WCURLHandleResourceDidFinishLoading:(id)sender userData:(void *)userData
+{
+    KIO::Job *job = static_cast<KIO::Job *>(userData);
+    m_loader->slotFinished(job);
+}
+
+- (void)WCURLHandle:(id)sender resourceDataDidBecomeAvailable:(NSData *)data offset:(int)offset length:(int)length userData:(void *)userData
+{
+    char *bytes;
+
+    if (!m_data) {
+        m_data = [data retain];
     }
+    
+    bytes = ((char *)[data bytes]) + offset;    
+    
+    KIO::Job *job = static_cast<KIO::Job *>(userData);
+    m_loader->slotData(job, (const char *)bytes, length);
+}
+
+- (void)WCURLHandle:(id)sender resourceDidFailLoadingWithResult:(int)result userData:(void *)userData
+{
+}
+
+-(void)dealloc
+{
+    [m_data release];
+    
+    [super dealloc];
 }
 
 @end
@@ -958,7 +975,7 @@ public:
     LoaderPrivate(Loader *parent)
     {
         _parent = parent;
-        m_recv = [[LoaderNotificationReceiver alloc] initWithLoader:parent];
+        m_recv = [[URLLoadClient alloc] initWithLoader:parent];
     } 
     
     ~LoaderPrivate()
@@ -968,7 +985,7 @@ public:
 
 private:
     Loader *_parent;
-    LoaderNotificationReceiver *m_recv;
+    URLLoadClient *m_recv;
 };
 
 } // namespace khtml
diff --git a/WebCore/src/kwq/kio/jobclasses.h b/WebCore/src/kwq/kio/jobclasses.h
index 6a56efc..169bee3 100644
--- a/WebCore/src/kwq/kio/jobclasses.h
+++ b/WebCore/src/kwq/kio/jobclasses.h
@@ -34,6 +34,13 @@
 #include <qobject.h>
 #include <qstring.h>
 
+#ifdef _KWQ_
+#if (defined(__APPLE__) && defined(__OBJC__) && defined(__cplusplus))
+#include <WCURLHandle.h>
+#endif
+#endif
+
+
 namespace KIO {
 
 class TransferJobPrivate;
@@ -161,7 +168,7 @@ public:
 
 #ifdef _KWQ_
 #if (defined(__APPLE__) && defined(__OBJC__) && defined(__cplusplus))
-    void begin(id requestor, void *userData);
+    void begin(id <WCURLHandleClient> client, void *userData);
 #else
     void begin(void *requestor, void *userData);
 #endif
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index 3294f06..2be5388 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,10 @@
+2002-01-29  Kenneth Kocienda  <kocienda at apple.com>
+
+        WebKit now links with WebFoundation
+        
+	* WebKit.pbproj/kocienda.pbxuser:
+	* WebKit.pbproj/project.pbxproj:
+
 2002-01-23  Ken Kocienda  <kocienda at apple.com>
 
 	Took out @executable_path hack added for Alexander demo.
diff --git a/WebKit/ChangeLog-2002-12-03 b/WebKit/ChangeLog-2002-12-03
index 3294f06..2be5388 100644
--- a/WebKit/ChangeLog-2002-12-03
+++ b/WebKit/ChangeLog-2002-12-03
@@ -1,3 +1,10 @@
+2002-01-29  Kenneth Kocienda  <kocienda at apple.com>
+
+        WebKit now links with WebFoundation
+        
+	* WebKit.pbproj/kocienda.pbxuser:
+	* WebKit.pbproj/project.pbxproj:
+
 2002-01-23  Ken Kocienda  <kocienda at apple.com>
 
 	Took out @executable_path hack added for Alexander demo.
diff --git a/WebKit/WebKit.pbproj/kocienda.pbxuser b/WebKit/WebKit.pbproj/kocienda.pbxuser
index ccb226f..74fcdc1 100644
--- a/WebKit/WebKit.pbproj/kocienda.pbxuser
+++ b/WebKit/WebKit.pbproj/kocienda.pbxuser
@@ -58,7 +58,7 @@
 							Frame = "{{0, 0}, {895, 980}}";
 						};
 						Tab3 = {
-							Frame = "{{0, 0}, {983, 295}}";
+							Frame = "{{0, 0}, {895, 548}}";
 						};
 						TabCount = 4;
 					};
diff --git a/WebKit/WebKit.pbproj/project.pbxproj b/WebKit/WebKit.pbproj/project.pbxproj
index 689a1ea..fea5554 100644
--- a/WebKit/WebKit.pbproj/project.pbxproj
+++ b/WebKit/WebKit.pbproj/project.pbxproj
@@ -125,7 +125,7 @@
 				INSTALL_PATH = "";
 				LIBRARY_SEARCH_PATHS = "";
 				OTHER_CFLAGS = "-Wall -Werror -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wsign-compare -DHAVE_CONFIG_H -DQT_NO_DATASTREAM -D_KWQ_  -I.. -I../WebCore/src/kdelibs/khtml -I../WebCore/src/kwq -I../WebCore/src/kwq/kparts -I../WebCore/include -I../WebCore/include/private";
-				OTHER_LDFLAGS = "-lwebcore";
+				OTHER_LDFLAGS = "-lwebcore -framework WebFoundation";
 				PRODUCT_NAME = WebKit;
 				SECTORDER_FLAGS = "";
 				WARNING_CFLAGS = "-Wmost -Wno-four-char-constants -Wno-unknown-pragmas";

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list