[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
cblu
cblu at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 06:17:24 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 93dc811495297caad1064ca28affa9c071d23578
Author: cblu <cblu at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Fri Jun 7 19:49:54 2002 +0000
Summary
Made IFWebController a class.
Fixed all places where IFWebController was referred to as a protocol.
Renamed IFBaseWebController files to IFWebController.
IFWebController.h replaces IFWebBaseController.h.
Added support for IEPL plug-ins.
WebCore:
* kwq/KWQKHTMLPart.mm:
(KWQKHTMLPartImpl::requestFrame):
* kwq/KWQKHTMLPartBrowserExtension.mm:
(KHTMLPartBrowserExtension::createNewWindow):
* kwq/KWQKloader.mm:
(-[URLLoadClient IFURLHandle:resourceDidFailLoadingWithResult:]):
(-[URLLoadClient IFURLHandle:didRedirectToURL:]):
(KWQLoaderImpl::serveRequest):
* kwq/external.h:
WebKit:
* Panels.subproj/IFStandardPanels.m:
(-[IFStandardPanels _didStartLoadingURL:inController:]):
(-[IFStandardPanels _didStopLoadingURL:inController:]):
* Panels.subproj/IFStandardPanelsPrivate.h:
* Plugins.subproj/IFNullPluginView.mm:
(-[IFNullPluginView drawRect:]):
* Plugins.subproj/IFPlugin.h:
* Plugins.subproj/IFPlugin.m:
(-[IFPlugin _getPluginInfoForResourceFile:]):
(-[IFPlugin initWithPath:]):
(-[IFPlugin load]):
(-[IFPlugin description]):
* Plugins.subproj/IFPluginStream.mm:
(-[IFPluginStream IFURLHandleResourceDidBeginLoading:]):
(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
(-[IFPluginStream IFURLHandle:didRedirectToURL:]):
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
(-[IFPluginView webController]):
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFBaseWebController.h: Removed.
* WebView.subproj/IFBaseWebController.mm: Removed.
* WebView.subproj/IFBaseWebControllerPrivate.h: Removed.
* WebView.subproj/IFBaseWebControllerPrivate.mm: Removed.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]):
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebController.mm: Added.
(-[IFWebController init]):
(-[IFWebController initWithView:provisionalDataSource:]):
(-[IFWebController dealloc]):
(-[IFWebController setDirectsAllLinksToSystemBrowser:]):
(-[IFWebController directsAllLinksToSystemBrowser]):
(-[IFWebController createFrameNamed:for:inParent:inScrollView:]):
(-[IFWebController setStatusText:forDataSource:]):
(-[IFWebController statusTextForDataSource:]):
(-[IFWebController openNewWindowWithURL:]):
(-[IFWebController receivedProgress:forResource:fromDataSource:]):
(-[IFWebController receivedError:forResource:partialProgress:fromDataSource:]):
(-[IFWebController provideLocationChangeHandlerForFrame:]):
(-[IFWebController receivedPageTitle:forDataSource:]):
(-[IFWebController serverRedirectTo:forDataSource:]):
(-[IFWebController _frameForDataSource:fromFrame:]):
(-[IFWebController frameForDataSource:]):
(-[IFWebController _frameForView:fromFrame:]):
(-[IFWebController frameForView:]):
(-[IFWebController frameNamed:]):
(-[IFWebController mainFrame]):
(-[IFWebController pluginNotFoundForMIMEType:pluginPageURL:]):
(-[IFWebController provideLocationChangeHandlerForFrame:andURL:]):
(-[IFWebController URLPolicyForURL:]):
(-[IFWebController unableToImplementURLPolicyForURL:error:]):
(-[IFWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
(-[IFWebController stopAnimatedImages]):
(-[IFWebController startAnimatedImages]):
(-[IFWebController stopAnimatedImageLooping]):
(-[IFWebController startAnimatedImageLooping]):
* WebView.subproj/IFWebControllerPrivate.h: Added.
* WebView.subproj/IFWebControllerPrivate.mm: Added.
(-[IFWebControllerPrivate init]):
(-[IFWebControllerPrivate _clearControllerReferences:]):
(-[IFWebControllerPrivate dealloc]):
(-[IFWebController _receivedProgress:forResource:fromDataSource:]):
(-[IFWebController _mainReceivedProgress:forResource:fromDataSource:]):
(-[IFWebController _receivedError:forResource:partialProgress:fromDataSource:]):
(-[IFWebController _mainReceivedError:forResource:partialProgress:fromDataSource:]):
(-[IFWebController _didStartLoading:]):
(-[IFWebController _didStopLoading:]):
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource controller]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSource _setController:]):
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame initWithName:view:provisionalDataSource:controller:]):
(-[IFWebFrame controller]):
(-[IFWebFrame setController:]):
(-[IFWebFrame frameNamed:]):
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFramePrivate setController:]):
(-[IFWebFrame _setController:]):
* WebView.subproj/IFWebView.h:
* WebView.subproj/IFWebView.mm:
(-[IFWebView controller]):
* WebView.subproj/IFWebViewPrivate.h:
* WebView.subproj/IFWebViewPrivate.mm:
(-[IFWebView _setController:]):
WebBrowser:
* BrowserDocument.h:
* WebController.h:
* WebController.m:
(-[WebController openNewWindowWithURL:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@1292 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2002-12-03 b/WebCore/ChangeLog-2002-12-03
index 3ffe006..c73487c 100644
--- a/WebCore/ChangeLog-2002-12-03
+++ b/WebCore/ChangeLog-2002-12-03
@@ -1,3 +1,20 @@
+2002-06-07 Chris Blumenberg <cblu at apple.com>
+
+ Made IFWebController a class.
+ Fixed all places where IFWebController was referred to as a protocol.
+ Renamed IFBaseWebController files to IFWebController.
+ IFWebController.h replaces IFWebBaseController.h.
+
+ * kwq/KWQKHTMLPart.mm:
+ (KWQKHTMLPartImpl::requestFrame):
+ * kwq/KWQKHTMLPartBrowserExtension.mm:
+ (KHTMLPartBrowserExtension::createNewWindow):
+ * kwq/KWQKloader.mm:
+ (-[URLLoadClient IFURLHandle:resourceDidFailLoadingWithResult:]):
+ (-[URLLoadClient IFURLHandle:didRedirectToURL:]):
+ (KWQLoaderImpl::serveRequest):
+ * kwq/external.h:
+
=== Alexander-8 ===
2002-06-07 Darin Adler <darin at apple.com>
diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index 3ffe006..c73487c 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,3 +1,20 @@
+2002-06-07 Chris Blumenberg <cblu at apple.com>
+
+ Made IFWebController a class.
+ Fixed all places where IFWebController was referred to as a protocol.
+ Renamed IFBaseWebController files to IFWebController.
+ IFWebController.h replaces IFWebBaseController.h.
+
+ * kwq/KWQKHTMLPart.mm:
+ (KWQKHTMLPartImpl::requestFrame):
+ * kwq/KWQKHTMLPartBrowserExtension.mm:
+ (KHTMLPartBrowserExtension::createNewWindow):
+ * kwq/KWQKloader.mm:
+ (-[URLLoadClient IFURLHandle:resourceDidFailLoadingWithResult:]):
+ (-[URLLoadClient IFURLHandle:didRedirectToURL:]):
+ (KWQLoaderImpl::serveRequest):
+ * kwq/external.h:
+
=== Alexander-8 ===
2002-06-07 Darin Adler <darin at apple.com>
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 3ffe006..c73487c 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,20 @@
+2002-06-07 Chris Blumenberg <cblu at apple.com>
+
+ Made IFWebController a class.
+ Fixed all places where IFWebController was referred to as a protocol.
+ Renamed IFBaseWebController files to IFWebController.
+ IFWebController.h replaces IFWebBaseController.h.
+
+ * kwq/KWQKHTMLPart.mm:
+ (KWQKHTMLPartImpl::requestFrame):
+ * kwq/KWQKHTMLPartBrowserExtension.mm:
+ (KHTMLPartBrowserExtension::createNewWindow):
+ * kwq/KWQKloader.mm:
+ (-[URLLoadClient IFURLHandle:resourceDidFailLoadingWithResult:]):
+ (-[URLLoadClient IFURLHandle:didRedirectToURL:]):
+ (KWQLoaderImpl::serveRequest):
+ * kwq/external.h:
+
=== Alexander-8 ===
2002-06-07 Darin Adler <darin at apple.com>
diff --git a/WebCore/kwq/KWQKHTMLPart.mm b/WebCore/kwq/KWQKHTMLPart.mm
index bf5d634..adec8dc 100644
--- a/WebCore/kwq/KWQKHTMLPart.mm
+++ b/WebCore/kwq/KWQKHTMLPart.mm
@@ -472,7 +472,7 @@ bool KWQKHTMLPartImpl::requestFrame( khtml::RenderPart *frame, const QString &ur
IFWebDataSource *oldDataSource, *newDataSource;
NSURL *childURL;
IFWebFrame *newFrame;
- id <IFWebController> controller;
+ IFWebController *controller;
HTMLIFrameElementImpl *o = static_cast<HTMLIFrameElementImpl *>(frame->element());
childURL = part->completeURL(url).getNSURL();
diff --git a/WebCore/kwq/KWQKHTMLPartBrowserExtension.mm b/WebCore/kwq/KWQKHTMLPartBrowserExtension.mm
index 3074544..dd861b1 100644
--- a/WebCore/kwq/KWQKHTMLPartBrowserExtension.mm
+++ b/WebCore/kwq/KWQKHTMLPartBrowserExtension.mm
@@ -58,7 +58,7 @@ void KHTMLPartBrowserExtension::createNewWindow(const KURL &url,
const KParts::WindowArgs &winArgs,
KParts::ReadOnlyPart **part)
{
- id<IFWebController> newController = [[m_part->impl->getDataSource() controller] openNewWindowWithURL:url.getNSURL()];
+ IFWebController *newController = [[m_part->impl->getDataSource() controller] openNewWindowWithURL:url.getNSURL()];
if (part != NULL) {
*part = [[[newController mainFrame] provisionalDataSource] _part];
}
diff --git a/WebCore/kwq/KWQKHTMLPartImpl.mm b/WebCore/kwq/KWQKHTMLPartImpl.mm
index bf5d634..adec8dc 100644
--- a/WebCore/kwq/KWQKHTMLPartImpl.mm
+++ b/WebCore/kwq/KWQKHTMLPartImpl.mm
@@ -472,7 +472,7 @@ bool KWQKHTMLPartImpl::requestFrame( khtml::RenderPart *frame, const QString &ur
IFWebDataSource *oldDataSource, *newDataSource;
NSURL *childURL;
IFWebFrame *newFrame;
- id <IFWebController> controller;
+ IFWebController *controller;
HTMLIFrameElementImpl *o = static_cast<HTMLIFrameElementImpl *>(frame->element());
childURL = part->completeURL(url).getNSURL();
diff --git a/WebCore/kwq/KWQKloader.mm b/WebCore/kwq/KWQKloader.mm
index f317341..92a0c55 100644
--- a/WebCore/kwq/KWQKloader.mm
+++ b/WebCore/kwq/KWQKloader.mm
@@ -189,9 +189,9 @@ void WCSetIFLoadProgressMakeFunc(WCIFLoadProgressMakeFunc func)
job->setError(1);
m_loader->slotFinished(job);
- [(IFBaseWebController *)controller _receivedError: result forResource: [job->url() absoluteString] partialProgress: loadProgress fromDataSource: m_dataSource];
+ [(IFWebController *)controller _receivedError: result forResource: [job->url() absoluteString] partialProgress: loadProgress fromDataSource: m_dataSource];
- [(IFBaseWebController *)controller _didStopLoading:job->url()];
+ [(IFWebController *)controller _didStopLoading:job->url()];
delete job;
}
@@ -208,8 +208,8 @@ void WCSetIFLoadProgressMakeFunc(WCIFLoadProgressMakeFunc func)
[m_dataSource _setFinalURL: url];
[(id <IFLocationChangeHandler>)[m_dataSource controller] serverRedirectTo: url forDataSource: m_dataSource];
- [(IFBaseWebController *)[m_dataSource controller] _didStopLoading:oldURL];
- [(IFBaseWebController *)[m_dataSource controller] _didStartLoading:url];
+ [(IFWebController *)[m_dataSource controller] _didStopLoading:oldURL];
+ [(IFWebController *)[m_dataSource controller] _didStartLoading:url];
}
@end
@@ -242,7 +242,7 @@ void KWQLoaderImpl::serveRequest(Request *req, KIO::TransferJob *job)
IFError *error = [IFError errorWithCode:IFURLHandleResultBadURLError inDomain:IFErrorCodeDomainWebFoundation isTerminal:YES];
id <IFLoadHandler> controller = [((URLLoadClient *)req->client)->m_dataSource controller];
- [(IFBaseWebController *)controller _receivedError: error forResource: urlString partialProgress: nil fromDataSource: ((URLLoadClient *)req->client)->m_dataSource];
+ [(IFWebController *)controller _receivedError: error forResource: urlString partialProgress: nil fromDataSource: ((URLLoadClient *)req->client)->m_dataSource];
}
else {
[((URLLoadClient *)req->client)->m_dataSource _addURLHandle: job->handle()];
diff --git a/WebCore/kwq/KWQLoader.mm b/WebCore/kwq/KWQLoader.mm
index f317341..92a0c55 100644
--- a/WebCore/kwq/KWQLoader.mm
+++ b/WebCore/kwq/KWQLoader.mm
@@ -189,9 +189,9 @@ void WCSetIFLoadProgressMakeFunc(WCIFLoadProgressMakeFunc func)
job->setError(1);
m_loader->slotFinished(job);
- [(IFBaseWebController *)controller _receivedError: result forResource: [job->url() absoluteString] partialProgress: loadProgress fromDataSource: m_dataSource];
+ [(IFWebController *)controller _receivedError: result forResource: [job->url() absoluteString] partialProgress: loadProgress fromDataSource: m_dataSource];
- [(IFBaseWebController *)controller _didStopLoading:job->url()];
+ [(IFWebController *)controller _didStopLoading:job->url()];
delete job;
}
@@ -208,8 +208,8 @@ void WCSetIFLoadProgressMakeFunc(WCIFLoadProgressMakeFunc func)
[m_dataSource _setFinalURL: url];
[(id <IFLocationChangeHandler>)[m_dataSource controller] serverRedirectTo: url forDataSource: m_dataSource];
- [(IFBaseWebController *)[m_dataSource controller] _didStopLoading:oldURL];
- [(IFBaseWebController *)[m_dataSource controller] _didStartLoading:url];
+ [(IFWebController *)[m_dataSource controller] _didStopLoading:oldURL];
+ [(IFWebController *)[m_dataSource controller] _didStartLoading:url];
}
@end
@@ -242,7 +242,7 @@ void KWQLoaderImpl::serveRequest(Request *req, KIO::TransferJob *job)
IFError *error = [IFError errorWithCode:IFURLHandleResultBadURLError inDomain:IFErrorCodeDomainWebFoundation isTerminal:YES];
id <IFLoadHandler> controller = [((URLLoadClient *)req->client)->m_dataSource controller];
- [(IFBaseWebController *)controller _receivedError: error forResource: urlString partialProgress: nil fromDataSource: ((URLLoadClient *)req->client)->m_dataSource];
+ [(IFWebController *)controller _receivedError: error forResource: urlString partialProgress: nil fromDataSource: ((URLLoadClient *)req->client)->m_dataSource];
}
else {
[((URLLoadClient *)req->client)->m_dataSource _addURLHandle: job->handle()];
diff --git a/WebCore/kwq/KWQLoaderImpl.mm b/WebCore/kwq/KWQLoaderImpl.mm
index f317341..92a0c55 100644
--- a/WebCore/kwq/KWQLoaderImpl.mm
+++ b/WebCore/kwq/KWQLoaderImpl.mm
@@ -189,9 +189,9 @@ void WCSetIFLoadProgressMakeFunc(WCIFLoadProgressMakeFunc func)
job->setError(1);
m_loader->slotFinished(job);
- [(IFBaseWebController *)controller _receivedError: result forResource: [job->url() absoluteString] partialProgress: loadProgress fromDataSource: m_dataSource];
+ [(IFWebController *)controller _receivedError: result forResource: [job->url() absoluteString] partialProgress: loadProgress fromDataSource: m_dataSource];
- [(IFBaseWebController *)controller _didStopLoading:job->url()];
+ [(IFWebController *)controller _didStopLoading:job->url()];
delete job;
}
@@ -208,8 +208,8 @@ void WCSetIFLoadProgressMakeFunc(WCIFLoadProgressMakeFunc func)
[m_dataSource _setFinalURL: url];
[(id <IFLocationChangeHandler>)[m_dataSource controller] serverRedirectTo: url forDataSource: m_dataSource];
- [(IFBaseWebController *)[m_dataSource controller] _didStopLoading:oldURL];
- [(IFBaseWebController *)[m_dataSource controller] _didStartLoading:url];
+ [(IFWebController *)[m_dataSource controller] _didStopLoading:oldURL];
+ [(IFWebController *)[m_dataSource controller] _didStartLoading:url];
}
@end
@@ -242,7 +242,7 @@ void KWQLoaderImpl::serveRequest(Request *req, KIO::TransferJob *job)
IFError *error = [IFError errorWithCode:IFURLHandleResultBadURLError inDomain:IFErrorCodeDomainWebFoundation isTerminal:YES];
id <IFLoadHandler> controller = [((URLLoadClient *)req->client)->m_dataSource controller];
- [(IFBaseWebController *)controller _receivedError: error forResource: urlString partialProgress: nil fromDataSource: ((URLLoadClient *)req->client)->m_dataSource];
+ [(IFWebController *)controller _receivedError: error forResource: urlString partialProgress: nil fromDataSource: ((URLLoadClient *)req->client)->m_dataSource];
}
else {
[((URLLoadClient *)req->client)->m_dataSource _addURLHandle: job->handle()];
diff --git a/WebCore/kwq/external.h b/WebCore/kwq/external.h
index 91f4072..91e8aee 100644
--- a/WebCore/kwq/external.h
+++ b/WebCore/kwq/external.h
@@ -42,15 +42,14 @@ namespace khtml {
@class IFError;
@class IFURLHandle;
@class IFLoadProgress;
+ at protocol IFLocationChangeHandler;
- at protocol IFWebController
+ at interface IFWebController <IFLocationChangeHandler>
- (IFWebFrame *)createFrameNamed: (NSString *)name for: (IFWebDataSource *)dataSource inParent: (IFWebDataSource *)dataSource inScrollView: (BOOL)inScrollView;
- (IFWebFrame *)frameNamed: (NSString *)name;
- (IFWebFrame *)mainFrame;
-- (id<IFWebController>)openNewWindowWithURL: (NSURL *)url;
- at end
+- (IFWebController *)openNewWindowWithURL: (NSURL *)url;
- at interface IFBaseWebController
- (void)_receivedProgress: (IFLoadProgress *)progress forResource: (NSString *)resourceDescription fromDataSource: (IFWebDataSource *)dataSource;
- (void)_receivedError: (IFError *)error forResource: (NSString *)resourceDescription partialProgress: (IFLoadProgress *)progress fromDataSource: (IFWebDataSource *)dataSource;
- (void)_mainReceivedProgress: (IFLoadProgress *)progress forResource: (NSString *)resourceDescription fromDataSource: (IFWebDataSource *)dataSource;
@@ -67,7 +66,7 @@ namespace khtml {
- initWithURL: (NSURL *)url;
- (void)setFrame: (IFWebFrame *)fName;
- (IFWebFrame *)webFrame;
-- (id <IFWebController>)controller;
+- (IFWebController *)controller;
- frameNamed: (NSString *)f;
- (BOOL)frameExists: (NSString *)f;
- (void)_setParent: (IFWebDataSource *)p;
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index 9cf5233..97c37ae 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,111 @@
+2002-06-07 Chris Blumenberg <cblu at apple.com>
+
+ Made IFWebController a class.
+ Fixed all places where IFWebController was referred to as a protocol.
+ Renamed IFBaseWebController files to IFWebController.
+ IFWebController.h replaces IFWebBaseController.h.
+
+ Added support for IEPL plug-ins.
+
+ * Panels.subproj/IFStandardPanels.m:
+ (-[IFStandardPanels _didStartLoadingURL:inController:]):
+ (-[IFStandardPanels _didStopLoadingURL:inController:]):
+ * Panels.subproj/IFStandardPanelsPrivate.h:
+ * Plugins.subproj/IFNullPluginView.mm:
+ (-[IFNullPluginView drawRect:]):
+ * Plugins.subproj/IFPlugin.h:
+ * Plugins.subproj/IFPlugin.m:
+ (-[IFPlugin _getPluginInfoForResourceFile:]):
+ (-[IFPlugin initWithPath:]):
+ (-[IFPlugin load]):
+ (-[IFPlugin description]):
+ * Plugins.subproj/IFPluginStream.mm:
+ (-[IFPluginStream IFURLHandleResourceDidBeginLoading:]):
+ (-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
+ (-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
+ (-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
+ (-[IFPluginStream IFURLHandle:didRedirectToURL:]):
+ * Plugins.subproj/IFPluginView.h:
+ * Plugins.subproj/IFPluginView.mm:
+ (-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
+ (-[IFPluginView webController]):
+ * WebKit.pbproj/project.pbxproj:
+ * WebView.subproj/IFBaseWebController.h: Removed.
+ * WebView.subproj/IFBaseWebController.mm: Removed.
+ * WebView.subproj/IFBaseWebControllerPrivate.h: Removed.
+ * WebView.subproj/IFBaseWebControllerPrivate.mm: Removed.
+ * WebView.subproj/IFMainURLHandleClient.mm:
+ (-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]):
+ (-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
+ (-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
+ (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
+ (-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
+ (-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
+ * WebView.subproj/IFWebController.h:
+ * WebView.subproj/IFWebController.mm: Added.
+ (-[IFWebController init]):
+ (-[IFWebController initWithView:provisionalDataSource:]):
+ (-[IFWebController dealloc]):
+ (-[IFWebController setDirectsAllLinksToSystemBrowser:]):
+ (-[IFWebController directsAllLinksToSystemBrowser]):
+ (-[IFWebController createFrameNamed:for:inParent:inScrollView:]):
+ (-[IFWebController setStatusText:forDataSource:]):
+ (-[IFWebController statusTextForDataSource:]):
+ (-[IFWebController openNewWindowWithURL:]):
+ (-[IFWebController receivedProgress:forResource:fromDataSource:]):
+ (-[IFWebController receivedError:forResource:partialProgress:fromDataSource:]):
+ (-[IFWebController provideLocationChangeHandlerForFrame:]):
+ (-[IFWebController receivedPageTitle:forDataSource:]):
+ (-[IFWebController serverRedirectTo:forDataSource:]):
+ (-[IFWebController _frameForDataSource:fromFrame:]):
+ (-[IFWebController frameForDataSource:]):
+ (-[IFWebController _frameForView:fromFrame:]):
+ (-[IFWebController frameForView:]):
+ (-[IFWebController frameNamed:]):
+ (-[IFWebController mainFrame]):
+ (-[IFWebController pluginNotFoundForMIMEType:pluginPageURL:]):
+ (-[IFWebController provideLocationChangeHandlerForFrame:andURL:]):
+ (-[IFWebController URLPolicyForURL:]):
+ (-[IFWebController unableToImplementURLPolicyForURL:error:]):
+ (-[IFWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
+ (-[IFWebController stopAnimatedImages]):
+ (-[IFWebController startAnimatedImages]):
+ (-[IFWebController stopAnimatedImageLooping]):
+ (-[IFWebController startAnimatedImageLooping]):
+ * WebView.subproj/IFWebControllerPrivate.h: Added.
+ * WebView.subproj/IFWebControllerPrivate.mm: Added.
+ (-[IFWebControllerPrivate init]):
+ (-[IFWebControllerPrivate _clearControllerReferences:]):
+ (-[IFWebControllerPrivate dealloc]):
+ (-[IFWebController _receivedProgress:forResource:fromDataSource:]):
+ (-[IFWebController _mainReceivedProgress:forResource:fromDataSource:]):
+ (-[IFWebController _receivedError:forResource:partialProgress:fromDataSource:]):
+ (-[IFWebController _mainReceivedError:forResource:partialProgress:fromDataSource:]):
+ (-[IFWebController _didStartLoading:]):
+ (-[IFWebController _didStopLoading:]):
+ * WebView.subproj/IFWebDataSource.h:
+ * WebView.subproj/IFWebDataSource.mm:
+ (-[IFWebDataSource controller]):
+ * WebView.subproj/IFWebDataSourcePrivate.h:
+ * WebView.subproj/IFWebDataSourcePrivate.mm:
+ (-[IFWebDataSource _setController:]):
+ * WebView.subproj/IFWebFrame.h:
+ * WebView.subproj/IFWebFrame.mm:
+ (-[IFWebFrame initWithName:view:provisionalDataSource:controller:]):
+ (-[IFWebFrame controller]):
+ (-[IFWebFrame setController:]):
+ (-[IFWebFrame frameNamed:]):
+ * WebView.subproj/IFWebFramePrivate.h:
+ * WebView.subproj/IFWebFramePrivate.mm:
+ (-[IFWebFramePrivate setController:]):
+ (-[IFWebFrame _setController:]):
+ * WebView.subproj/IFWebView.h:
+ * WebView.subproj/IFWebView.mm:
+ (-[IFWebView controller]):
+ * WebView.subproj/IFWebViewPrivate.h:
+ * WebView.subproj/IFWebViewPrivate.mm:
+ (-[IFWebView _setController:]):
+
=== Alexander-8 ===
2002-06-06 Darin Adler <darin at apple.com>
diff --git a/WebKit/ChangeLog-2002-12-03 b/WebKit/ChangeLog-2002-12-03
index 9cf5233..97c37ae 100644
--- a/WebKit/ChangeLog-2002-12-03
+++ b/WebKit/ChangeLog-2002-12-03
@@ -1,3 +1,111 @@
+2002-06-07 Chris Blumenberg <cblu at apple.com>
+
+ Made IFWebController a class.
+ Fixed all places where IFWebController was referred to as a protocol.
+ Renamed IFBaseWebController files to IFWebController.
+ IFWebController.h replaces IFWebBaseController.h.
+
+ Added support for IEPL plug-ins.
+
+ * Panels.subproj/IFStandardPanels.m:
+ (-[IFStandardPanels _didStartLoadingURL:inController:]):
+ (-[IFStandardPanels _didStopLoadingURL:inController:]):
+ * Panels.subproj/IFStandardPanelsPrivate.h:
+ * Plugins.subproj/IFNullPluginView.mm:
+ (-[IFNullPluginView drawRect:]):
+ * Plugins.subproj/IFPlugin.h:
+ * Plugins.subproj/IFPlugin.m:
+ (-[IFPlugin _getPluginInfoForResourceFile:]):
+ (-[IFPlugin initWithPath:]):
+ (-[IFPlugin load]):
+ (-[IFPlugin description]):
+ * Plugins.subproj/IFPluginStream.mm:
+ (-[IFPluginStream IFURLHandleResourceDidBeginLoading:]):
+ (-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
+ (-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
+ (-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
+ (-[IFPluginStream IFURLHandle:didRedirectToURL:]):
+ * Plugins.subproj/IFPluginView.h:
+ * Plugins.subproj/IFPluginView.mm:
+ (-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
+ (-[IFPluginView webController]):
+ * WebKit.pbproj/project.pbxproj:
+ * WebView.subproj/IFBaseWebController.h: Removed.
+ * WebView.subproj/IFBaseWebController.mm: Removed.
+ * WebView.subproj/IFBaseWebControllerPrivate.h: Removed.
+ * WebView.subproj/IFBaseWebControllerPrivate.mm: Removed.
+ * WebView.subproj/IFMainURLHandleClient.mm:
+ (-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]):
+ (-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
+ (-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
+ (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
+ (-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
+ (-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
+ * WebView.subproj/IFWebController.h:
+ * WebView.subproj/IFWebController.mm: Added.
+ (-[IFWebController init]):
+ (-[IFWebController initWithView:provisionalDataSource:]):
+ (-[IFWebController dealloc]):
+ (-[IFWebController setDirectsAllLinksToSystemBrowser:]):
+ (-[IFWebController directsAllLinksToSystemBrowser]):
+ (-[IFWebController createFrameNamed:for:inParent:inScrollView:]):
+ (-[IFWebController setStatusText:forDataSource:]):
+ (-[IFWebController statusTextForDataSource:]):
+ (-[IFWebController openNewWindowWithURL:]):
+ (-[IFWebController receivedProgress:forResource:fromDataSource:]):
+ (-[IFWebController receivedError:forResource:partialProgress:fromDataSource:]):
+ (-[IFWebController provideLocationChangeHandlerForFrame:]):
+ (-[IFWebController receivedPageTitle:forDataSource:]):
+ (-[IFWebController serverRedirectTo:forDataSource:]):
+ (-[IFWebController _frameForDataSource:fromFrame:]):
+ (-[IFWebController frameForDataSource:]):
+ (-[IFWebController _frameForView:fromFrame:]):
+ (-[IFWebController frameForView:]):
+ (-[IFWebController frameNamed:]):
+ (-[IFWebController mainFrame]):
+ (-[IFWebController pluginNotFoundForMIMEType:pluginPageURL:]):
+ (-[IFWebController provideLocationChangeHandlerForFrame:andURL:]):
+ (-[IFWebController URLPolicyForURL:]):
+ (-[IFWebController unableToImplementURLPolicyForURL:error:]):
+ (-[IFWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
+ (-[IFWebController stopAnimatedImages]):
+ (-[IFWebController startAnimatedImages]):
+ (-[IFWebController stopAnimatedImageLooping]):
+ (-[IFWebController startAnimatedImageLooping]):
+ * WebView.subproj/IFWebControllerPrivate.h: Added.
+ * WebView.subproj/IFWebControllerPrivate.mm: Added.
+ (-[IFWebControllerPrivate init]):
+ (-[IFWebControllerPrivate _clearControllerReferences:]):
+ (-[IFWebControllerPrivate dealloc]):
+ (-[IFWebController _receivedProgress:forResource:fromDataSource:]):
+ (-[IFWebController _mainReceivedProgress:forResource:fromDataSource:]):
+ (-[IFWebController _receivedError:forResource:partialProgress:fromDataSource:]):
+ (-[IFWebController _mainReceivedError:forResource:partialProgress:fromDataSource:]):
+ (-[IFWebController _didStartLoading:]):
+ (-[IFWebController _didStopLoading:]):
+ * WebView.subproj/IFWebDataSource.h:
+ * WebView.subproj/IFWebDataSource.mm:
+ (-[IFWebDataSource controller]):
+ * WebView.subproj/IFWebDataSourcePrivate.h:
+ * WebView.subproj/IFWebDataSourcePrivate.mm:
+ (-[IFWebDataSource _setController:]):
+ * WebView.subproj/IFWebFrame.h:
+ * WebView.subproj/IFWebFrame.mm:
+ (-[IFWebFrame initWithName:view:provisionalDataSource:controller:]):
+ (-[IFWebFrame controller]):
+ (-[IFWebFrame setController:]):
+ (-[IFWebFrame frameNamed:]):
+ * WebView.subproj/IFWebFramePrivate.h:
+ * WebView.subproj/IFWebFramePrivate.mm:
+ (-[IFWebFramePrivate setController:]):
+ (-[IFWebFrame _setController:]):
+ * WebView.subproj/IFWebView.h:
+ * WebView.subproj/IFWebView.mm:
+ (-[IFWebView controller]):
+ * WebView.subproj/IFWebViewPrivate.h:
+ * WebView.subproj/IFWebViewPrivate.mm:
+ (-[IFWebView _setController:]):
+
=== Alexander-8 ===
2002-06-06 Darin Adler <darin at apple.com>
diff --git a/WebKit/Panels.subproj/IFStandardPanels.m b/WebKit/Panels.subproj/IFStandardPanels.m
index 62d06f0..362fb75 100644
--- a/WebKit/Panels.subproj/IFStandardPanels.m
+++ b/WebKit/Panels.subproj/IFStandardPanels.m
@@ -143,7 +143,7 @@ static void initSharedStandardPanels(void)
}
}
--(void)_didStartLoadingURL:(NSURL *)url inController:(id<IFWebController>)controller
+-(void)_didStartLoadingURL:(NSURL *)url inController:(IFWebController *)controller
{
NSCountedSet *set = [_privatePanels->urlContainers objectForKey:url];
@@ -155,7 +155,7 @@ static void initSharedStandardPanels(void)
[set addObject:controller];
}
--(void)_didStopLoadingURL:(NSURL *)url inController:(id<IFWebController>)controller
+-(void)_didStopLoadingURL:(NSURL *)url inController:(IFWebController *)controller
{
NSCountedSet *set = [_privatePanels->urlContainers objectForKey:url];
diff --git a/WebKit/Panels.subproj/IFStandardPanelsPrivate.h b/WebKit/Panels.subproj/IFStandardPanelsPrivate.h
index 9812dec..da97eea 100644
--- a/WebKit/Panels.subproj/IFStandardPanelsPrivate.h
+++ b/WebKit/Panels.subproj/IFStandardPanelsPrivate.h
@@ -9,7 +9,7 @@
@interface IFStandardPanels (Private)
--(void)_didStartLoadingURL:(NSURL *)url inController:(id<IFWebController>)controller;
--(void)_didStopLoadingURL:(NSURL *)url inController:(id<IFWebController>)controller;
+-(void)_didStartLoadingURL:(NSURL *)url inController:(IFWebController *)controller;
+-(void)_didStopLoadingURL:(NSURL *)url inController:(IFWebController *)controller;
@end
diff --git a/WebKit/Panels.subproj/WebStandardPanels.m b/WebKit/Panels.subproj/WebStandardPanels.m
index 62d06f0..362fb75 100644
--- a/WebKit/Panels.subproj/WebStandardPanels.m
+++ b/WebKit/Panels.subproj/WebStandardPanels.m
@@ -143,7 +143,7 @@ static void initSharedStandardPanels(void)
}
}
--(void)_didStartLoadingURL:(NSURL *)url inController:(id<IFWebController>)controller
+-(void)_didStartLoadingURL:(NSURL *)url inController:(IFWebController *)controller
{
NSCountedSet *set = [_privatePanels->urlContainers objectForKey:url];
@@ -155,7 +155,7 @@ static void initSharedStandardPanels(void)
[set addObject:controller];
}
--(void)_didStopLoadingURL:(NSURL *)url inController:(id<IFWebController>)controller
+-(void)_didStopLoadingURL:(NSURL *)url inController:(IFWebController *)controller
{
NSCountedSet *set = [_privatePanels->urlContainers objectForKey:url];
diff --git a/WebKit/Panels.subproj/WebStandardPanelsPrivate.h b/WebKit/Panels.subproj/WebStandardPanelsPrivate.h
index 9812dec..da97eea 100644
--- a/WebKit/Panels.subproj/WebStandardPanelsPrivate.h
+++ b/WebKit/Panels.subproj/WebStandardPanelsPrivate.h
@@ -9,7 +9,7 @@
@interface IFStandardPanels (Private)
--(void)_didStartLoadingURL:(NSURL *)url inController:(id<IFWebController>)controller;
--(void)_didStopLoadingURL:(NSURL *)url inController:(id<IFWebController>)controller;
+-(void)_didStartLoadingURL:(NSURL *)url inController:(IFWebController *)controller;
+-(void)_didStopLoadingURL:(NSURL *)url inController:(IFWebController *)controller;
@end
diff --git a/WebKit/Plugins.subproj/IFNullPluginView.mm b/WebKit/Plugins.subproj/IFNullPluginView.mm
index 5252612..e4d81db 100644
--- a/WebKit/Plugins.subproj/IFNullPluginView.mm
+++ b/WebKit/Plugins.subproj/IFNullPluginView.mm
@@ -6,7 +6,6 @@
#import "IFNullPluginView.h"
#import "WCPluginWidget.h"
#import "IFWebView.h"
-#import "IFBaseWebController.h"
#import "IFWebController.h"
static BOOL imageLoaded = NO;
@@ -58,7 +57,7 @@ static NSImage *image = nil;
- (void)drawRect:(NSRect)rect {
IFWebView *webView;
- IFBaseWebController *webController;
+ IFWebController *webController;
[super drawRect:rect];
if(!errorSent){
diff --git a/WebKit/Plugins.subproj/IFPlugin.h b/WebKit/Plugins.subproj/IFPlugin.h
index 0bfaad3..52a7079 100644
--- a/WebKit/Plugins.subproj/IFPlugin.h
+++ b/WebKit/Plugins.subproj/IFPlugin.h
@@ -56,8 +56,7 @@
}
- initWithPath:(NSString *)pluginPath;
-- (void)getPluginInfoForResourceFile:(SInt16)resRef;
-- (void)load;
+- (BOOL)load;
- (void)unload;
- (NSString *)mimeTypeForURL:(NSString *)URL;
- (NSString *)path;
diff --git a/WebKit/Plugins.subproj/IFPlugin.m b/WebKit/Plugins.subproj/IFPlugin.m
index 676c55f..344304d 100644
--- a/WebKit/Plugins.subproj/IFPlugin.m
+++ b/WebKit/Plugins.subproj/IFPlugin.m
@@ -33,59 +33,7 @@ TransitionVector tVectorForFunctionPointer(FunctionPointer);
@implementation IFPlugin
-- initWithPath:(NSString *)pluginPath
-{
- NSFileManager *fileManager;
- NSDictionary *fileInfo;
- SInt16 resRef;
- FSRef fref;
- OSErr err;
- UInt32 type;
- CFURLRef pluginURL;
-
- fileManager = [NSFileManager defaultManager];
- fileInfo = [fileManager fileAttributesAtPath:pluginPath traverseLink:YES];
- if([[fileInfo objectForKey:@"NSFileType"] isEqualToString:@"NSFileTypeRegular"]){ // plug-in with resource fork
- if([[fileInfo objectForKey:@"NSFileHFSTypeCode"] unsignedLongValue] == 1112690764){ // 1112690764 = 'BRPL'
- err = FSPathMakeRef((UInt8 *)[pluginPath cString], &fref, NULL);
- if(err != noErr){
- WEBKITDEBUG("IFPlugin: FSPathMakeRef failed. Error=%d\n", err);
- return nil;
- }
- resRef = FSOpenResFile(&fref, fsRdPerm);
- if(resRef <= noErr){
- WEBKITDEBUG("IFPlugin: FSOpenResFile failed. Can't open resource file: %s, Error=%d\n", [pluginPath lossyCString], err);
- return nil;
- }
- [self getPluginInfoForResourceFile:resRef];
- isBundle = FALSE;
- }else return nil;
-
- }else if([[fileInfo objectForKey:@"NSFileType"] isEqualToString:@"NSFileTypeDirectory"]){ //bundle plug-in
- pluginURL = CFURLCreateWithFileSystemPath(NULL, (CFStringRef)pluginPath, kCFURLPOSIXPathStyle, TRUE);
- bundle = CFBundleCreate(NULL, pluginURL);
- CFBundleGetPackageInfo(bundle, &type, NULL);
- if(type == 1112690764){ // 1112690764 = 'BRPL'
- resRef = CFBundleOpenBundleResourceMap(bundle);
- [self getPluginInfoForResourceFile:resRef];
- isBundle = TRUE;
- }else{
- return nil;
- }
- CFRelease(pluginURL);
- }else{
- return nil;
- }
-
- filename = [pluginPath lastPathComponent];
- path = pluginPath;
- [path retain];
- [filename retain];
- isLoaded = FALSE;
- return self;
-}
-
-- (void)getPluginInfoForResourceFile:(SInt16)resRef
+- (void)_getPluginInfoForResourceFile:(SInt16)resRef
{
Str255 theString;
char temp[255], description[255];
@@ -101,6 +49,7 @@ TransitionVector tVectorForFunctionPointer(FunctionPointer);
if(!strcmp(temp, "")) break;
mime = [NSMutableArray arrayWithCapacity:3];
[mimeTypes insertObject:mime atIndex:i];
+
//FIXME: Because our JS engine poops on semi-colons, I'm removing ";version=1.3"
//Scott Adler is checking if semi-colons are allowed to be in mime-types
if(!strcmp(temp, "application/x-java-applet;version=1.3")){
@@ -123,17 +72,72 @@ TransitionVector tVectorForFunctionPointer(FunctionPointer);
}
GetIndString(theString, 126, 1);
CopyPascalStringToC(theString, description);
- pluginDescription = [NSString stringWithCString:description];
- [pluginDescription retain];
+ pluginDescription = [[NSString stringWithCString:description] retain];
GetIndString(theString, 126, 2);
CopyPascalStringToC(theString, temp);
- name = [NSString stringWithCString:temp]; // plugin's name
- [name retain];
+ name = [[NSString stringWithCString:temp] retain]; // plugin's name
[mimeTypes retain];
}
-- (void)load
+- initWithPath:(NSString *)pluginPath
+{
+ NSFileManager *fileManager;
+ NSDictionary *fileInfo;
+ SInt16 resRef;
+ FSRef fref;
+ OSErr err;
+ UInt32 type;
+ CFURLRef pluginURL;
+
+ fileManager = [NSFileManager defaultManager];
+ fileInfo = [fileManager fileAttributesAtPath:pluginPath traverseLink:YES];
+
+ // single-file plug-in with resource fork
+ if([[fileInfo objectForKey:@"NSFileType"] isEqualToString:@"NSFileTypeRegular"]){
+ if([[fileInfo objectForKey:@"NSFileHFSTypeCode"] unsignedLongValue] == FOUR_CHAR_CODE('BRPL') ||
+ [[fileInfo objectForKey:@"NSFileHFSTypeCode"] unsignedLongValue] == FOUR_CHAR_CODE('IEPL')){
+
+ err = FSPathMakeRef((UInt8 *)[pluginPath cString], &fref, NULL);
+ if(err != noErr){
+ WEBKITDEBUG("IFPlugin: FSPathMakeRef failed. Error=%d\n", err);
+ return nil;
+ }
+
+ resRef = FSOpenResFile(&fref, fsRdPerm);
+ if(resRef <= noErr){
+ WEBKITDEBUG("IFPlugin: FSOpenResFile failed. Can't open resource file: %s, Error=%d\n", [pluginPath lossyCString], err);
+ return nil;
+ }
+
+ [self _getPluginInfoForResourceFile:resRef];
+ isBundle = NO;
+ }else return nil;
+
+ }else if([[fileInfo objectForKey:@"NSFileType"] isEqualToString:@"NSFileTypeDirectory"]){ //bundle plug-in
+ pluginURL = CFURLCreateWithFileSystemPath(NULL, (CFStringRef)pluginPath, kCFURLPOSIXPathStyle, TRUE);
+ bundle = CFBundleCreate(NULL, pluginURL);
+ CFBundleGetPackageInfo(bundle, &type, NULL);
+
+ if(type == FOUR_CHAR_CODE('BRPL') || type == FOUR_CHAR_CODE('IEPL') ){ // 1112690764 = 'BRPL'
+ resRef = CFBundleOpenBundleResourceMap(bundle);
+ [self _getPluginInfoForResourceFile:resRef];
+ isBundle = YES;
+ }else{
+ return nil;
+ }
+ CFRelease(pluginURL);
+ }else{
+ return nil;
+ }
+
+ filename = [[pluginPath lastPathComponent] retain];
+ path = [pluginPath retain];
+ isLoaded = NO;
+ return self;
+}
+
+- (BOOL)load
{
OSErr err;
FSSpec spec;
@@ -147,9 +151,9 @@ TransitionVector tVectorForFunctionPointer(FunctionPointer);
NSFileHandle *executableFile;
NSData *data;
- if(isLoaded){
- return;
- }
+ if(isLoaded)
+ return YES;
+
if(isBundle){ //CFM or Mach-o bundle
tempBundle = [NSBundle bundleWithPath:path];
executableFile = [NSFileHandle fileHandleForReadingAtPath:[tempBundle executablePath]];
@@ -165,35 +169,44 @@ TransitionVector tVectorForFunctionPointer(FunctionPointer);
}
[executableFile closeFile];
didLoad = CFBundleLoadExecutable(bundle);
- if (!didLoad) {
- return;
- }
+ if (!didLoad)
+ return NO;
+
if(isCFM){
pluginMainFunc = (mainFuncPtr)CFBundleGetFunctionPointerForName(bundle, CFSTR("main") );
+ if(!pluginMainFunc)
+ return NO;
}else{
NP_Initialize = (initializeFuncPtr)CFBundleGetFunctionPointerForName(bundle, CFSTR("NP_Initialize") );
NP_GetEntryPoints = (getEntryPointsFuncPtr)CFBundleGetFunctionPointerForName(bundle, CFSTR("NP_GetEntryPoints") );
NPP_Shutdown = (NPP_ShutdownProcPtr)CFBundleGetFunctionPointerForName(bundle, CFSTR("NP_Shutdown") );
+ if(!NP_Initialize || !NP_GetEntryPoints || !NPP_Shutdown)
+ return NO;
}
}else{ // single CFM file
err = FSPathMakeRef((UInt8 *)[path cString], &fref, NULL);
if(err != noErr){
WEBKITDEBUG("IFPlugin: load: FSPathMakeRef failed. Error=%d\n", err);
- return;
+ return NO;
}
err = FSGetCatalogInfo(&fref, kFSCatInfoNone, NULL, NULL, &spec, NULL);
if(err != noErr){
WEBKITDEBUG("IFPlugin: load: FSGetCatalogInfo failed. Error=%d\n", err);
- return;
+ return NO;
}
err = GetDiskFragment(&spec, 0, kCFragGoesToEOF, nil, kPrivateCFragCopy, &connID, (Ptr *)&pluginMainFunc, nil);
if(err != noErr){
WEBKITDEBUG("IFPlugin: load: GetDiskFragment failed. Error=%d\n", err);
- return;
+ return NO;
}
pluginMainFunc = (mainFuncPtr)functionPointerForTVector((TransitionVector)pluginMainFunc);
+ if(!pluginMainFunc)
+ return NO;
+
isCFM = TRUE;
}
+
+ // swap function table stage
if(isCFM){
browserFuncs.version = 11;
browserFuncs.size = sizeof(NPNetscapeFuncs);
@@ -285,6 +298,7 @@ TransitionVector tVectorForFunctionPointer(FunctionPointer);
}
WEBKITDEBUG("Plugin Loaded\n");
isLoaded = TRUE;
+ return YES;
}
- (void)unload
@@ -390,31 +404,10 @@ TransitionVector tVectorForFunctionPointer(FunctionPointer);
return pluginDescription;
}
- (NSString *)description{
- NSMutableString *desc;
- desc = [NSMutableString stringWithCapacity:100];
- [desc appendString:@"\n"];
- [desc appendString:@"name: "];
- [desc appendString:name];
- [desc appendString:@"\n"];
- [desc appendString:@"path: "];
- [desc appendString:path];
- [desc appendString:@"\n"];
- [desc appendString:@"isLoaded: "];
- if(isLoaded){
- [desc appendString:@"TRUE\n"];
- }else{
- [desc appendString:@"FALSE\n"];
- }
- [desc appendString:@"mimeTypes: "];
- [desc appendString:[mimeTypes description]];
- [desc appendString:@"\n"];
- [desc appendString:@"pluginDescription: "];
- [desc appendString:pluginDescription];
- [desc appendString:@"\n"];
- return desc;
+ return [NSString stringWithFormat:@"name: %@\npath: %@\nisLoaded: %d\nmimeTypes:\n%@\npluginDescription:%@",
+ name, path, isLoaded, [mimeTypes description], pluginDescription];
}
-
@end
diff --git a/WebKit/Plugins.subproj/IFPluginStream.mm b/WebKit/Plugins.subproj/IFPluginStream.mm
index 89e0b46..2dcc1c6 100644
--- a/WebKit/Plugins.subproj/IFPluginStream.mm
+++ b/WebKit/Plugins.subproj/IFPluginStream.mm
@@ -7,8 +7,7 @@
#import <WebFoundation/WebFoundation.h>
#import <WebKitDebug.h>
#import <WebKit/IFLoadProgress.h>
-#import <WebKit/IFBaseWebController.h>
-#import <WebKit/IFBaseWebControllerPrivate.h>
+#import <WebKit/IFWebControllerPrivate.h>
#import <WebKit/IFWebController.h>
static NSString *getCarbonPath(NSString *posixPath);
@@ -91,7 +90,7 @@ static NSString *getCarbonPath(NSString *posixPath);
- (void)IFURLHandleResourceDidBeginLoading:(IFURLHandle *)sender
{
- [(IFBaseWebController *)[view webController] _didStartLoading:URL];
+ [(IFWebController *)[view webController] _didStartLoading:URL];
}
- (void)IFURLHandle:(IFURLHandle *)sender resourceDataDidBecomeAvailable:(NSData *)data
@@ -180,7 +179,7 @@ static NSString *getCarbonPath(NSString *posixPath);
[loadProgress release];
[self stop];
- [(IFBaseWebController *)[view webController] _didStopLoading:URL];
+ [(IFWebController *)[view webController] _didStopLoading:URL];
}
- (void)IFURLHandleResourceDidCancelLoading:(IFURLHandle *)sender
@@ -194,7 +193,7 @@ static NSString *getCarbonPath(NSString *posixPath);
[loadProgress release];
[self stop];
- [(IFBaseWebController *)[view webController] _didStopLoading:URL];
+ [(IFWebController *)[view webController] _didStopLoading:URL];
}
- (void)IFURLHandle:(IFURLHandle *)sender resourceDidFailLoadingWithResult:(IFError *)result
@@ -209,13 +208,13 @@ static NSString *getCarbonPath(NSString *posixPath);
[loadProgress release];
[self stop];
- [(IFBaseWebController *)[view webController] _didStopLoading:URL];
+ [(IFWebController *)[view webController] _didStopLoading:URL];
}
- (void)IFURLHandle:(IFURLHandle *)sender didRedirectToURL:(NSURL *)url
{
- [(IFBaseWebController *)[view webController] _didStopLoading:URL];
- [(IFBaseWebController *)[view webController] _didStartLoading:url];
+ [(IFWebController *)[view webController] _didStopLoading:URL];
+ [(IFWebController *)[view webController] _didStartLoading:url];
}
diff --git a/WebKit/Plugins.subproj/IFPluginView.h b/WebKit/Plugins.subproj/IFPluginView.h
index 4acaa47..f8ea6d7 100644
--- a/WebKit/Plugins.subproj/IFPluginView.h
+++ b/WebKit/Plugins.subproj/IFPluginView.h
@@ -12,7 +12,7 @@
@class IFPluginNullEventSender;
@class IFWebDataSource;
@class IFPlugin;
- at protocol IFWebController;
+ at class IFWebController;
@interface IFPluginView : NSView
{
@@ -20,7 +20,7 @@
unsigned argsCount;
char **cAttributes, **cValues;
- id <IFWebController> webController;
+ IFWebController *webController;
IFWebDataSource *webDataSource;
IFWebFrame *webFrame;
@@ -55,7 +55,7 @@
- (id)initWithFrame:(NSRect)r plugin:(IFPlugin *)plugin url:(NSURL *)theURL mime:(NSString *)mimeType arguments:(NSDictionary *)arguments mode:(uint16)mode;
-(void)stop;
- (IFWebDataSource *)webDataSource;
-- (id <IFWebController>) webController;
+- (IFWebController *)webController;
+(void)getCarbonEvent:(EventRecord *)carbonEvent;
- (NPP_NewStreamProcPtr)NPP_NewStream;
diff --git a/WebKit/Plugins.subproj/IFPluginView.mm b/WebKit/Plugins.subproj/IFPluginView.mm
index 00b8692..f7fc791 100644
--- a/WebKit/Plugins.subproj/IFPluginView.mm
+++ b/WebKit/Plugins.subproj/IFPluginView.mm
@@ -25,7 +25,6 @@
#import <IFPlugin.h>
#import <qwidget.h>
#import <IFWebView.h>
-#import <IFBaseWebController.h>
#import <IFPluginNullEventSender.h>
#import "IFNullPluginView.h"
@@ -282,7 +281,8 @@ static char *newCString(NSString *string)
srcURL = [theURL retain];
// load the plug-in if it is not already loaded
- [plugin load];
+ if(![plugin load])
+ return nil;
// copy function pointers
NPP_New = [plugin NPP_New];
@@ -500,7 +500,7 @@ static char *newCString(NSString *string)
return webDataSource;
}
-- (id <IFWebController>) webController
+- (IFWebController *) webController
{
return webController;
}
diff --git a/WebKit/Plugins.subproj/WebNullPluginView.m b/WebKit/Plugins.subproj/WebNullPluginView.m
index 5252612..e4d81db 100644
--- a/WebKit/Plugins.subproj/WebNullPluginView.m
+++ b/WebKit/Plugins.subproj/WebNullPluginView.m
@@ -6,7 +6,6 @@
#import "IFNullPluginView.h"
#import "WCPluginWidget.h"
#import "IFWebView.h"
-#import "IFBaseWebController.h"
#import "IFWebController.h"
static BOOL imageLoaded = NO;
@@ -58,7 +57,7 @@ static NSImage *image = nil;
- (void)drawRect:(NSRect)rect {
IFWebView *webView;
- IFBaseWebController *webController;
+ IFWebController *webController;
[super drawRect:rect];
if(!errorSent){
diff --git a/WebKit/Plugins.subproj/WebPlugin.h b/WebKit/Plugins.subproj/WebPlugin.h
index 0bfaad3..52a7079 100644
--- a/WebKit/Plugins.subproj/WebPlugin.h
+++ b/WebKit/Plugins.subproj/WebPlugin.h
@@ -56,8 +56,7 @@
}
- initWithPath:(NSString *)pluginPath;
-- (void)getPluginInfoForResourceFile:(SInt16)resRef;
-- (void)load;
+- (BOOL)load;
- (void)unload;
- (NSString *)mimeTypeForURL:(NSString *)URL;
- (NSString *)path;
diff --git a/WebKit/Plugins.subproj/WebPlugin.m b/WebKit/Plugins.subproj/WebPlugin.m
index 676c55f..344304d 100644
--- a/WebKit/Plugins.subproj/WebPlugin.m
+++ b/WebKit/Plugins.subproj/WebPlugin.m
@@ -33,59 +33,7 @@ TransitionVector tVectorForFunctionPointer(FunctionPointer);
@implementation IFPlugin
-- initWithPath:(NSString *)pluginPath
-{
- NSFileManager *fileManager;
- NSDictionary *fileInfo;
- SInt16 resRef;
- FSRef fref;
- OSErr err;
- UInt32 type;
- CFURLRef pluginURL;
-
- fileManager = [NSFileManager defaultManager];
- fileInfo = [fileManager fileAttributesAtPath:pluginPath traverseLink:YES];
- if([[fileInfo objectForKey:@"NSFileType"] isEqualToString:@"NSFileTypeRegular"]){ // plug-in with resource fork
- if([[fileInfo objectForKey:@"NSFileHFSTypeCode"] unsignedLongValue] == 1112690764){ // 1112690764 = 'BRPL'
- err = FSPathMakeRef((UInt8 *)[pluginPath cString], &fref, NULL);
- if(err != noErr){
- WEBKITDEBUG("IFPlugin: FSPathMakeRef failed. Error=%d\n", err);
- return nil;
- }
- resRef = FSOpenResFile(&fref, fsRdPerm);
- if(resRef <= noErr){
- WEBKITDEBUG("IFPlugin: FSOpenResFile failed. Can't open resource file: %s, Error=%d\n", [pluginPath lossyCString], err);
- return nil;
- }
- [self getPluginInfoForResourceFile:resRef];
- isBundle = FALSE;
- }else return nil;
-
- }else if([[fileInfo objectForKey:@"NSFileType"] isEqualToString:@"NSFileTypeDirectory"]){ //bundle plug-in
- pluginURL = CFURLCreateWithFileSystemPath(NULL, (CFStringRef)pluginPath, kCFURLPOSIXPathStyle, TRUE);
- bundle = CFBundleCreate(NULL, pluginURL);
- CFBundleGetPackageInfo(bundle, &type, NULL);
- if(type == 1112690764){ // 1112690764 = 'BRPL'
- resRef = CFBundleOpenBundleResourceMap(bundle);
- [self getPluginInfoForResourceFile:resRef];
- isBundle = TRUE;
- }else{
- return nil;
- }
- CFRelease(pluginURL);
- }else{
- return nil;
- }
-
- filename = [pluginPath lastPathComponent];
- path = pluginPath;
- [path retain];
- [filename retain];
- isLoaded = FALSE;
- return self;
-}
-
-- (void)getPluginInfoForResourceFile:(SInt16)resRef
+- (void)_getPluginInfoForResourceFile:(SInt16)resRef
{
Str255 theString;
char temp[255], description[255];
@@ -101,6 +49,7 @@ TransitionVector tVectorForFunctionPointer(FunctionPointer);
if(!strcmp(temp, "")) break;
mime = [NSMutableArray arrayWithCapacity:3];
[mimeTypes insertObject:mime atIndex:i];
+
//FIXME: Because our JS engine poops on semi-colons, I'm removing ";version=1.3"
//Scott Adler is checking if semi-colons are allowed to be in mime-types
if(!strcmp(temp, "application/x-java-applet;version=1.3")){
@@ -123,17 +72,72 @@ TransitionVector tVectorForFunctionPointer(FunctionPointer);
}
GetIndString(theString, 126, 1);
CopyPascalStringToC(theString, description);
- pluginDescription = [NSString stringWithCString:description];
- [pluginDescription retain];
+ pluginDescription = [[NSString stringWithCString:description] retain];
GetIndString(theString, 126, 2);
CopyPascalStringToC(theString, temp);
- name = [NSString stringWithCString:temp]; // plugin's name
- [name retain];
+ name = [[NSString stringWithCString:temp] retain]; // plugin's name
[mimeTypes retain];
}
-- (void)load
+- initWithPath:(NSString *)pluginPath
+{
+ NSFileManager *fileManager;
+ NSDictionary *fileInfo;
+ SInt16 resRef;
+ FSRef fref;
+ OSErr err;
+ UInt32 type;
+ CFURLRef pluginURL;
+
+ fileManager = [NSFileManager defaultManager];
+ fileInfo = [fileManager fileAttributesAtPath:pluginPath traverseLink:YES];
+
+ // single-file plug-in with resource fork
+ if([[fileInfo objectForKey:@"NSFileType"] isEqualToString:@"NSFileTypeRegular"]){
+ if([[fileInfo objectForKey:@"NSFileHFSTypeCode"] unsignedLongValue] == FOUR_CHAR_CODE('BRPL') ||
+ [[fileInfo objectForKey:@"NSFileHFSTypeCode"] unsignedLongValue] == FOUR_CHAR_CODE('IEPL')){
+
+ err = FSPathMakeRef((UInt8 *)[pluginPath cString], &fref, NULL);
+ if(err != noErr){
+ WEBKITDEBUG("IFPlugin: FSPathMakeRef failed. Error=%d\n", err);
+ return nil;
+ }
+
+ resRef = FSOpenResFile(&fref, fsRdPerm);
+ if(resRef <= noErr){
+ WEBKITDEBUG("IFPlugin: FSOpenResFile failed. Can't open resource file: %s, Error=%d\n", [pluginPath lossyCString], err);
+ return nil;
+ }
+
+ [self _getPluginInfoForResourceFile:resRef];
+ isBundle = NO;
+ }else return nil;
+
+ }else if([[fileInfo objectForKey:@"NSFileType"] isEqualToString:@"NSFileTypeDirectory"]){ //bundle plug-in
+ pluginURL = CFURLCreateWithFileSystemPath(NULL, (CFStringRef)pluginPath, kCFURLPOSIXPathStyle, TRUE);
+ bundle = CFBundleCreate(NULL, pluginURL);
+ CFBundleGetPackageInfo(bundle, &type, NULL);
+
+ if(type == FOUR_CHAR_CODE('BRPL') || type == FOUR_CHAR_CODE('IEPL') ){ // 1112690764 = 'BRPL'
+ resRef = CFBundleOpenBundleResourceMap(bundle);
+ [self _getPluginInfoForResourceFile:resRef];
+ isBundle = YES;
+ }else{
+ return nil;
+ }
+ CFRelease(pluginURL);
+ }else{
+ return nil;
+ }
+
+ filename = [[pluginPath lastPathComponent] retain];
+ path = [pluginPath retain];
+ isLoaded = NO;
+ return self;
+}
+
+- (BOOL)load
{
OSErr err;
FSSpec spec;
@@ -147,9 +151,9 @@ TransitionVector tVectorForFunctionPointer(FunctionPointer);
NSFileHandle *executableFile;
NSData *data;
- if(isLoaded){
- return;
- }
+ if(isLoaded)
+ return YES;
+
if(isBundle){ //CFM or Mach-o bundle
tempBundle = [NSBundle bundleWithPath:path];
executableFile = [NSFileHandle fileHandleForReadingAtPath:[tempBundle executablePath]];
@@ -165,35 +169,44 @@ TransitionVector tVectorForFunctionPointer(FunctionPointer);
}
[executableFile closeFile];
didLoad = CFBundleLoadExecutable(bundle);
- if (!didLoad) {
- return;
- }
+ if (!didLoad)
+ return NO;
+
if(isCFM){
pluginMainFunc = (mainFuncPtr)CFBundleGetFunctionPointerForName(bundle, CFSTR("main") );
+ if(!pluginMainFunc)
+ return NO;
}else{
NP_Initialize = (initializeFuncPtr)CFBundleGetFunctionPointerForName(bundle, CFSTR("NP_Initialize") );
NP_GetEntryPoints = (getEntryPointsFuncPtr)CFBundleGetFunctionPointerForName(bundle, CFSTR("NP_GetEntryPoints") );
NPP_Shutdown = (NPP_ShutdownProcPtr)CFBundleGetFunctionPointerForName(bundle, CFSTR("NP_Shutdown") );
+ if(!NP_Initialize || !NP_GetEntryPoints || !NPP_Shutdown)
+ return NO;
}
}else{ // single CFM file
err = FSPathMakeRef((UInt8 *)[path cString], &fref, NULL);
if(err != noErr){
WEBKITDEBUG("IFPlugin: load: FSPathMakeRef failed. Error=%d\n", err);
- return;
+ return NO;
}
err = FSGetCatalogInfo(&fref, kFSCatInfoNone, NULL, NULL, &spec, NULL);
if(err != noErr){
WEBKITDEBUG("IFPlugin: load: FSGetCatalogInfo failed. Error=%d\n", err);
- return;
+ return NO;
}
err = GetDiskFragment(&spec, 0, kCFragGoesToEOF, nil, kPrivateCFragCopy, &connID, (Ptr *)&pluginMainFunc, nil);
if(err != noErr){
WEBKITDEBUG("IFPlugin: load: GetDiskFragment failed. Error=%d\n", err);
- return;
+ return NO;
}
pluginMainFunc = (mainFuncPtr)functionPointerForTVector((TransitionVector)pluginMainFunc);
+ if(!pluginMainFunc)
+ return NO;
+
isCFM = TRUE;
}
+
+ // swap function table stage
if(isCFM){
browserFuncs.version = 11;
browserFuncs.size = sizeof(NPNetscapeFuncs);
@@ -285,6 +298,7 @@ TransitionVector tVectorForFunctionPointer(FunctionPointer);
}
WEBKITDEBUG("Plugin Loaded\n");
isLoaded = TRUE;
+ return YES;
}
- (void)unload
@@ -390,31 +404,10 @@ TransitionVector tVectorForFunctionPointer(FunctionPointer);
return pluginDescription;
}
- (NSString *)description{
- NSMutableString *desc;
- desc = [NSMutableString stringWithCapacity:100];
- [desc appendString:@"\n"];
- [desc appendString:@"name: "];
- [desc appendString:name];
- [desc appendString:@"\n"];
- [desc appendString:@"path: "];
- [desc appendString:path];
- [desc appendString:@"\n"];
- [desc appendString:@"isLoaded: "];
- if(isLoaded){
- [desc appendString:@"TRUE\n"];
- }else{
- [desc appendString:@"FALSE\n"];
- }
- [desc appendString:@"mimeTypes: "];
- [desc appendString:[mimeTypes description]];
- [desc appendString:@"\n"];
- [desc appendString:@"pluginDescription: "];
- [desc appendString:pluginDescription];
- [desc appendString:@"\n"];
- return desc;
+ return [NSString stringWithFormat:@"name: %@\npath: %@\nisLoaded: %d\nmimeTypes:\n%@\npluginDescription:%@",
+ name, path, isLoaded, [mimeTypes description], pluginDescription];
}
-
@end
diff --git a/WebKit/Plugins.subproj/WebPluginStream.m b/WebKit/Plugins.subproj/WebPluginStream.m
index 89e0b46..2dcc1c6 100644
--- a/WebKit/Plugins.subproj/WebPluginStream.m
+++ b/WebKit/Plugins.subproj/WebPluginStream.m
@@ -7,8 +7,7 @@
#import <WebFoundation/WebFoundation.h>
#import <WebKitDebug.h>
#import <WebKit/IFLoadProgress.h>
-#import <WebKit/IFBaseWebController.h>
-#import <WebKit/IFBaseWebControllerPrivate.h>
+#import <WebKit/IFWebControllerPrivate.h>
#import <WebKit/IFWebController.h>
static NSString *getCarbonPath(NSString *posixPath);
@@ -91,7 +90,7 @@ static NSString *getCarbonPath(NSString *posixPath);
- (void)IFURLHandleResourceDidBeginLoading:(IFURLHandle *)sender
{
- [(IFBaseWebController *)[view webController] _didStartLoading:URL];
+ [(IFWebController *)[view webController] _didStartLoading:URL];
}
- (void)IFURLHandle:(IFURLHandle *)sender resourceDataDidBecomeAvailable:(NSData *)data
@@ -180,7 +179,7 @@ static NSString *getCarbonPath(NSString *posixPath);
[loadProgress release];
[self stop];
- [(IFBaseWebController *)[view webController] _didStopLoading:URL];
+ [(IFWebController *)[view webController] _didStopLoading:URL];
}
- (void)IFURLHandleResourceDidCancelLoading:(IFURLHandle *)sender
@@ -194,7 +193,7 @@ static NSString *getCarbonPath(NSString *posixPath);
[loadProgress release];
[self stop];
- [(IFBaseWebController *)[view webController] _didStopLoading:URL];
+ [(IFWebController *)[view webController] _didStopLoading:URL];
}
- (void)IFURLHandle:(IFURLHandle *)sender resourceDidFailLoadingWithResult:(IFError *)result
@@ -209,13 +208,13 @@ static NSString *getCarbonPath(NSString *posixPath);
[loadProgress release];
[self stop];
- [(IFBaseWebController *)[view webController] _didStopLoading:URL];
+ [(IFWebController *)[view webController] _didStopLoading:URL];
}
- (void)IFURLHandle:(IFURLHandle *)sender didRedirectToURL:(NSURL *)url
{
- [(IFBaseWebController *)[view webController] _didStopLoading:URL];
- [(IFBaseWebController *)[view webController] _didStartLoading:url];
+ [(IFWebController *)[view webController] _didStopLoading:URL];
+ [(IFWebController *)[view webController] _didStartLoading:url];
}
diff --git a/WebKit/Plugins.subproj/WebPluginView.h b/WebKit/Plugins.subproj/WebPluginView.h
index 4acaa47..f8ea6d7 100644
--- a/WebKit/Plugins.subproj/WebPluginView.h
+++ b/WebKit/Plugins.subproj/WebPluginView.h
@@ -12,7 +12,7 @@
@class IFPluginNullEventSender;
@class IFWebDataSource;
@class IFPlugin;
- at protocol IFWebController;
+ at class IFWebController;
@interface IFPluginView : NSView
{
@@ -20,7 +20,7 @@
unsigned argsCount;
char **cAttributes, **cValues;
- id <IFWebController> webController;
+ IFWebController *webController;
IFWebDataSource *webDataSource;
IFWebFrame *webFrame;
@@ -55,7 +55,7 @@
- (id)initWithFrame:(NSRect)r plugin:(IFPlugin *)plugin url:(NSURL *)theURL mime:(NSString *)mimeType arguments:(NSDictionary *)arguments mode:(uint16)mode;
-(void)stop;
- (IFWebDataSource *)webDataSource;
-- (id <IFWebController>) webController;
+- (IFWebController *)webController;
+(void)getCarbonEvent:(EventRecord *)carbonEvent;
- (NPP_NewStreamProcPtr)NPP_NewStream;
diff --git a/WebKit/Plugins.subproj/WebPluginView.m b/WebKit/Plugins.subproj/WebPluginView.m
index 00b8692..f7fc791 100644
--- a/WebKit/Plugins.subproj/WebPluginView.m
+++ b/WebKit/Plugins.subproj/WebPluginView.m
@@ -25,7 +25,6 @@
#import <IFPlugin.h>
#import <qwidget.h>
#import <IFWebView.h>
-#import <IFBaseWebController.h>
#import <IFPluginNullEventSender.h>
#import "IFNullPluginView.h"
@@ -282,7 +281,8 @@ static char *newCString(NSString *string)
srcURL = [theURL retain];
// load the plug-in if it is not already loaded
- [plugin load];
+ if(![plugin load])
+ return nil;
// copy function pointers
NPP_New = [plugin NPP_New];
@@ -500,7 +500,7 @@ static char *newCString(NSString *string)
return webDataSource;
}
-- (id <IFWebController>) webController
+- (IFWebController *) webController
{
return webController;
}
diff --git a/WebKit/WebKit.pbproj/project.pbxproj b/WebKit/WebKit.pbproj/project.pbxproj
index d2e523a..8d76667 100644
--- a/WebKit/WebKit.pbproj/project.pbxproj
+++ b/WebKit/WebKit.pbproj/project.pbxproj
@@ -194,7 +194,6 @@
25C29827016E29620ECA149E,
2568C72D0174912D0ECA149E,
25A5593301A5996D0ECA149E,
- 39446087020F50ED0ECA1767,
39446088020F50ED0ECA1767,
3944608B020F50ED0ECA1767,
3944608C020F50ED0ECA1767,
@@ -630,28 +629,22 @@
//392
//393
//394
- 39446063020F50ED0ECA1767 = {
- isa = PBXFileReference;
- name = IFBaseWebController.h;
- path = WebView.subproj/IFBaseWebController.h;
- refType = 4;
- };
39446064020F50ED0ECA1767 = {
isa = PBXFileReference;
- name = IFBaseWebController.mm;
- path = WebView.subproj/IFBaseWebController.mm;
+ name = IFWebController.mm;
+ path = WebView.subproj/IFWebController.mm;
refType = 4;
};
39446065020F50ED0ECA1767 = {
isa = PBXFileReference;
- name = IFBaseWebControllerPrivate.h;
- path = WebView.subproj/IFBaseWebControllerPrivate.h;
+ name = IFWebControllerPrivate.h;
+ path = WebView.subproj/IFWebControllerPrivate.h;
refType = 4;
};
39446066020F50ED0ECA1767 = {
isa = PBXFileReference;
- name = IFBaseWebControllerPrivate.mm;
- path = WebView.subproj/IFBaseWebControllerPrivate.mm;
+ name = IFWebControllerPrivate.mm;
+ path = WebView.subproj/IFWebControllerPrivate.mm;
refType = 4;
};
3944606B020F50ED0ECA1767 = {
@@ -780,15 +773,6 @@
path = IFURIList.m;
refType = 4;
};
- 39446087020F50ED0ECA1767 = {
- fileRef = 39446063020F50ED0ECA1767;
- isa = PBXBuildFile;
- settings = {
- ATTRIBUTES = (
- Public,
- );
- };
- };
39446088020F50ED0ECA1767 = {
fileRef = 39446065020F50ED0ECA1767;
isa = PBXBuildFile;
@@ -978,10 +962,6 @@
//9C4
9C7CABBB0190A37C0ECA16EA = {
children = (
- 39446063020F50ED0ECA1767,
- 39446064020F50ED0ECA1767,
- 39446065020F50ED0ECA1767,
- 39446066020F50ED0ECA1767,
3944606B020F50ED0ECA1767,
3944606C020F50ED0ECA1767,
3944606D020F50ED0ECA1767,
@@ -990,6 +970,9 @@
3944606E020F50ED0ECA1767,
F5AEBB3D024A527601C1A526,
3944606F020F50ED0ECA1767,
+ 39446064020F50ED0ECA1767,
+ 39446065020F50ED0ECA1767,
+ 39446066020F50ED0ECA1767,
39446070020F50ED0ECA1767,
39446071020F50ED0ECA1767,
39446072020F50ED0ECA1767,
diff --git a/WebKit/WebView.subproj/IFBaseWebController.h b/WebKit/WebView.subproj/IFBaseWebController.h
deleted file mode 100644
index 525bc48..0000000
--- a/WebKit/WebView.subproj/IFBaseWebController.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- IFBaseWebController.h
-
- Copyright 2001, 2002 Apple, Inc. All rights reserved.
-*/
-
-#import <Foundation/Foundation.h>
-
- at class IFWebDataSource;
- at class IFWebView;
- at protocol IFWebController;
-
- at class IFBaseWebControllerPrivate;
-
- at interface IFBaseWebController : NSObject <IFWebController>
-{
- at private
- IFBaseWebControllerPrivate *_private;
-}
-
-// Calls designated initializer with nil arguments.
-- init;
-
-// Designated initializer.
-- initWithView: (IFWebView *)view provisionalDataSource: (IFWebDataSource *)dataSource;
-
-- (void)setDirectsAllLinksToSystemBrowser: (BOOL)flag;
-- (BOOL)directsAllLinksToSystemBrowser;
-
- at end
diff --git a/WebKit/WebView.subproj/IFMainURLHandleClient.mm b/WebKit/WebView.subproj/IFMainURLHandleClient.mm
index e9ffe0c..1956999 100644
--- a/WebKit/WebView.subproj/IFMainURLHandleClient.mm
+++ b/WebKit/WebView.subproj/IFMainURLHandleClient.mm
@@ -9,7 +9,7 @@
#import <pthread.h>
#import <WebKit/IFLoadProgress.h>
-#import <WebKit/IFBaseWebControllerPrivate.h>
+#import <WebKit/IFWebControllerPrivate.h>
#import <WebKit/WebKitDebug.h>
#import <WebKit/IFContentHandler.h>
#import <WebKit/IFDownloadHandler.h>
@@ -70,7 +70,7 @@
{
WEBKITDEBUGLEVEL (WEBKIT_LOG_LOADING, "url = %s\n", [[[sender url] absoluteString] cString]);
url = [[sender url] retain];
- [(IFBaseWebController *)[dataSource controller] _didStartLoading:url];
+ [(IFWebController *)[dataSource controller] _didStartLoading:url];
}
@@ -83,10 +83,10 @@
IFLoadProgress *loadProgress = [[IFLoadProgress alloc] init];
loadProgress->totalToLoad = -1;
loadProgress->bytesSoFar = -1;
- [(IFBaseWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
+ [(IFWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
forResource: [[sender url] absoluteString] fromDataSource: dataSource];
[loadProgress release];
- [(IFBaseWebController *)[dataSource controller] _didStopLoading:url];
+ [(IFWebController *)[dataSource controller] _didStopLoading:url];
}
@@ -107,10 +107,10 @@
IFLoadProgress *loadProgress = [[IFLoadProgress alloc] init];
loadProgress->totalToLoad = [data length];
loadProgress->bytesSoFar = [data length];
- [(IFBaseWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
+ [(IFWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
forResource: [[sender url] absoluteString] fromDataSource: dataSource];
[loadProgress release];
- [(IFBaseWebController *)[dataSource controller] _didStopLoading:url];
+ [(IFWebController *)[dataSource controller] _didStopLoading:url];
}
@@ -162,7 +162,7 @@
IFLoadProgress *loadProgress = [[IFLoadProgress alloc] init];
loadProgress->totalToLoad = contentLength;
loadProgress->bytesSoFar = contentLengthReceived;
- [(IFBaseWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
+ [(IFWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
forResource: [[sender url] absoluteString] fromDataSource: dataSource];
[loadProgress release];
}
@@ -178,8 +178,8 @@
loadProgress->totalToLoad = [sender contentLength];
loadProgress->bytesSoFar = [sender contentLengthReceived];
- [(IFBaseWebController *)[dataSource controller] _mainReceivedError: result forResource: [[sender url] absoluteString] partialProgress: loadProgress fromDataSource: dataSource];
- [(IFBaseWebController *)[dataSource controller] _didStopLoading:url];
+ [(IFWebController *)[dataSource controller] _mainReceivedError: result forResource: [[sender url] absoluteString] partialProgress: loadProgress fromDataSource: dataSource];
+ [(IFWebController *)[dataSource controller] _didStopLoading:url];
}
@@ -191,8 +191,8 @@
[dataSource _setFinalURL: URL];
[[dataSource _locationChangeHandler] serverRedirectTo: URL forDataSource: dataSource];
- [(IFBaseWebController *)[dataSource controller] _didStopLoading: url];
- [(IFBaseWebController *)[dataSource controller] _didStartLoading: URL];
+ [(IFWebController *)[dataSource controller] _didStopLoading: url];
+ [(IFWebController *)[dataSource controller] _didStartLoading: URL];
[url release];
url = [URL retain];
}
diff --git a/WebKit/WebView.subproj/IFWebController.h b/WebKit/WebView.subproj/IFWebController.h
index a4d8a66..e48022f 100644
--- a/WebKit/WebView.subproj/IFWebController.h
+++ b/WebKit/WebView.subproj/IFWebController.h
@@ -22,7 +22,7 @@
alternate views of the web pages described by IFWebDataSources. For example, a web
crawler may implement a IFWebController with no corresponding view.
- IFBaseWebController may be subclassed to modify the behavior of the standard
+ IFWebController may be subclassed to modify the behavior of the standard
IFWebView and IFWebDataSource.
=============================================================================
@@ -33,8 +33,9 @@
@class IFLoadProgress;
@class IFWebDataSource;
@class IFWebFrame;
- at protocol IFWebController;
-
+ at class IFWebView;
+ at class IFWebController;
+ at class IFWebControllerPrivate;
/*
=============================================================================
@@ -80,7 +81,7 @@
// screen goemetry. Essentially all the 'view' items that are
// FIXME: not strictly a scripting issue
-- (id<IFWebController>)openNewWindowWithURL:(NSURL *)url;
+- (IFWebController *)openNewWindowWithURL:(NSURL *)url;
@end
/*
@@ -99,7 +100,28 @@ typedef enum {
IFURLPolicyIgnore
} IFURLPolicy;
- at protocol IFWebController <NSObject, IFResourceProgressHandler, IFScriptContextHandler>
+ at interface IFWebController : NSObject <IFResourceProgressHandler, IFScriptContextHandler>
+{
+ at private
+ IFWebControllerPrivate *_private;
+}
+
+/*
+// Called when the content policy is set to IFContentPolicyShow
++ (id <IFDocumentView>) createViewForMIMEType:(NSString *)MIMEType
+
+// registerClass extends the views that WebKit supports
++ (void) registerClass:(Class)class forMIMEType:(NSString *)MIMEType
+*/
+
+// Calls designated initializer with nil arguments.
+- init;
+
+// Designated initializer.
+- initWithView: (IFWebView *)view provisionalDataSource: (IFWebDataSource *)dataSource;
+
+- (void)setDirectsAllLinksToSystemBrowser: (BOOL)flag;
+- (BOOL)directsAllLinksToSystemBrowser;
// Called when a data source needs to create a frame. This method encapsulates the
// specifics of creating and initializaing a view of the appropriate class.
diff --git a/WebKit/WebView.subproj/IFBaseWebController.mm b/WebKit/WebView.subproj/IFWebController.mm
similarity index 89%
copy from WebKit/WebView.subproj/IFBaseWebController.mm
copy to WebKit/WebView.subproj/IFWebController.mm
index 0fb3d0d..8f01fb4 100644
--- a/WebKit/WebView.subproj/IFBaseWebController.mm
+++ b/WebKit/WebView.subproj/IFWebController.mm
@@ -1,9 +1,10 @@
/*
- IFBaseWebController.mm
+ IFWebController.mm
Copyright 2001, 2002 Apple, Inc. All rights reserved.
*/
-#import <WebKit/IFBaseWebController.h>
-#import <WebKit/IFBaseWebControllerPrivate.h>
+
+#import <WebKit/IFWebController.h>
+#import <WebKit/IFWebControllerPrivate.h>
#import <WebKit/IFWebViewPrivate.h>
#import <WebKit/IFWebDataSourcePrivate.h>
#import <WebKit/IFWebFrame.h>
@@ -15,7 +16,19 @@
#import <WebFoundation/WebFoundation.h>
- at implementation IFBaseWebController
+ at implementation IFWebController
+
+/*
++ (id <IFDocumentView>) createViewForMIMEType:(NSString *)MIMEType
+{
+ return nil;
+}
+
++ (void) registerClass:(Class)class forMIMEType:(NSString *)MIMEType
+{
+
+}
+*/
- init
{
@@ -26,7 +39,7 @@
{
[super init];
- _private = [[IFBaseWebControllerPrivate alloc] init];
+ _private = [[IFWebControllerPrivate alloc] init];
_private->mainFrame = [[IFWebFrame alloc] initWithName: @"_top" view: view provisionalDataSource: dataSource controller: self];
return self;
@@ -40,12 +53,12 @@
- (void)setDirectsAllLinksToSystemBrowser: (BOOL)flag
{
- [NSException raise:IFMethodNotYetImplemented format:@"IFBaseWebController::setDirectsAllLinksToSystemBrowser: is not implemented"];
+ [NSException raise:IFMethodNotYetImplemented format:@"IFWebController::setDirectsAllLinksToSystemBrowser: is not implemented"];
}
- (BOOL)directsAllLinksToSystemBrowser
{
- [NSException raise:IFMethodNotYetImplemented format:@"IFBaseWebController::directsAllLinksToSystemBrowser is not implemented"];
+ [NSException raise:IFMethodNotYetImplemented format:@"IFWebController::directsAllLinksToSystemBrowser is not implemented"];
return NO;
}
@@ -81,18 +94,18 @@
// ---------------------------------------------------------------------
- (void)setStatusText: (NSString *)text forDataSource: (IFWebDataSource *)dataSource
{
- [NSException raise:IFMethodNotYetImplemented format:@"IFBaseWebController::setStatusText:forDataSource: is not implemented"];
+ [NSException raise:IFMethodNotYetImplemented format:@"IFWebController::setStatusText:forDataSource: is not implemented"];
}
- (NSString *)statusTextForDataSource: (IFWebDataSource *)dataSource
{
- [NSException raise:IFMethodNotYetImplemented format:@"IFBaseWebController::statusTextForDataSource: is not implemented"];
+ [NSException raise:IFMethodNotYetImplemented format:@"IFWebController::statusTextForDataSource: is not implemented"];
return nil;
}
-- (id<IFWebController>)openNewWindowWithURL:(NSURL *)url
+- (IFWebController *)openNewWindowWithURL:(NSURL *)url
{
return nil;
}
diff --git a/WebKit/WebView.subproj/IFBaseWebControllerPrivate.h b/WebKit/WebView.subproj/IFWebControllerPrivate.h
similarity index 87%
copy from WebKit/WebView.subproj/IFBaseWebControllerPrivate.h
copy to WebKit/WebView.subproj/IFWebControllerPrivate.h
index d246cc6..a169cee 100644
--- a/WebKit/WebView.subproj/IFBaseWebControllerPrivate.h
+++ b/WebKit/WebView.subproj/IFWebControllerPrivate.h
@@ -3,19 +3,19 @@
Copyright 2001, Apple, Inc. All rights reserved.
*/
-#import <WebKit/IFBaseWebController.h>
+#import <WebKit/IFWebController.h>
@class IFError;
@class IFLoadProgress;
@class IFWebFrame;
- at interface IFBaseWebControllerPrivate : NSObject
+ at interface IFWebControllerPrivate : NSObject
{
IFWebFrame *mainFrame;
}
@end
- at interface IFBaseWebController (IFPrivate);
+ at interface IFWebController (IFPrivate);
- (void)_receivedProgress: (IFLoadProgress *)progress forResource: (NSString *)resourceDescription fromDataSource: (IFWebDataSource *)dataSource;
- (void)_receivedError: (IFError *)error forResource: (NSString *)resourceDescription partialProgress: (IFLoadProgress *)progress fromDataSource: (IFWebDataSource *)dataSource;
- (void)_mainReceivedProgress: (IFLoadProgress *)progress forResource: (NSString *)resourceDescription fromDataSource: (IFWebDataSource *)dataSource;
diff --git a/WebKit/WebView.subproj/IFBaseWebControllerPrivate.mm b/WebKit/WebView.subproj/IFWebControllerPrivate.mm
similarity index 98%
copy from WebKit/WebView.subproj/IFBaseWebControllerPrivate.mm
copy to WebKit/WebView.subproj/IFWebControllerPrivate.mm
index 5a3dc50..cb21f7b 100644
--- a/WebKit/WebView.subproj/IFBaseWebControllerPrivate.mm
+++ b/WebKit/WebView.subproj/IFWebControllerPrivate.mm
@@ -2,7 +2,7 @@
IFWebController.mm
Copyright 2001, Apple, Inc. All rights reserved.
*/
-#import <WebKit/IFBaseWebControllerPrivate.h>
+#import <WebKit/IFWebControllerPrivate.h>
#import <WebKit/IFWebDataSourcePrivate.h>
#import <WebKit/IFWebViewPrivate.h>
#import <WebKit/IFWebFramePrivate.h>
@@ -19,7 +19,7 @@
#import <WebKit/WebKitDebug.h>
- at implementation IFBaseWebControllerPrivate
+ at implementation IFWebControllerPrivate
- init
{
@@ -59,7 +59,7 @@
@end
- at implementation IFBaseWebController (IFPrivate)
+ at implementation IFWebController (IFPrivate)
- (void)_receivedProgress: (IFLoadProgress *)progress forResource: (NSString *)resourceDescription fromDataSource: (IFWebDataSource *)dataSource
{
diff --git a/WebKit/WebView.subproj/IFWebDataSource.h b/WebKit/WebView.subproj/IFWebDataSource.h
index 375f8e9..9d1eca6 100644
--- a/WebKit/WebView.subproj/IFWebDataSource.h
+++ b/WebKit/WebView.subproj/IFWebDataSource.h
@@ -18,7 +18,7 @@
@class IFWebFrame;
@class IFURLHandle;
- at protocol IFWebController;
+ at class IFWebController;
#ifdef TENTATIVE_API
@class IFLoader;
@@ -82,8 +82,8 @@
// data source. Perhaps setController: should be private? Perhaps the back pointers
// can be managed externally, i.e. + controllerForDataSource: as a class method on
// IFDefaultWebController?
-//- (void)setController: (id <IFWebController>)controller;
-- (id <IFWebController>)controller;
+//- (void)setController: (IFWebController *)controller;
+- (IFWebController *)controller;
// May return nil if not initialized with a URL.
- (NSURL *)inputURL;
diff --git a/WebKit/WebView.subproj/IFWebDataSource.mm b/WebKit/WebView.subproj/IFWebDataSource.mm
index 366e8df..ee83e49 100644
--- a/WebKit/WebView.subproj/IFWebDataSource.mm
+++ b/WebKit/WebView.subproj/IFWebDataSource.mm
@@ -145,7 +145,7 @@ static id IFWebDataSourceMake(void *url, void *attributes, unsigned flags)
}
-- (id <IFWebController>)controller
+- (IFWebController *)controller
{
// All data sources used in a document share the same
// controller. A single document may have many datasource corresponding to
diff --git a/WebKit/WebView.subproj/IFWebDataSourcePrivate.h b/WebKit/WebView.subproj/IFWebDataSourcePrivate.h
index 7032112..96690b2 100644
--- a/WebKit/WebView.subproj/IFWebDataSourcePrivate.h
+++ b/WebKit/WebView.subproj/IFWebDataSourcePrivate.h
@@ -20,7 +20,7 @@ class KHTMLPart;
IFWebDataSource *parent;
NSMutableArray *children;
- id <IFWebController>controller;
+ IFWebController *controller;
// The original URL as requested during initialization.
NSURL *inputURL;
@@ -73,7 +73,7 @@ class KHTMLPart;
@end
@interface IFWebDataSource (IFPrivate)
-- (void)_setController: (id <IFWebController>)controller;
+- (void)_setController: (IFWebController *)controller;
- (KHTMLPart *)_part;
- (void)_setParent: (IFWebDataSource *)p;
- (void)_startLoading: (BOOL)forceRefresh;
diff --git a/WebKit/WebView.subproj/IFWebDataSourcePrivate.mm b/WebKit/WebView.subproj/IFWebDataSourcePrivate.mm
index 04c3c08..9dfd5b0 100644
--- a/WebKit/WebView.subproj/IFWebDataSourcePrivate.mm
+++ b/WebKit/WebView.subproj/IFWebDataSourcePrivate.mm
@@ -93,7 +93,7 @@
[self _setLoading: _private->mainHandle || [_private->urlHandles count]];
}
-- (void)_setController: (id <IFWebController>)controller
+- (void)_setController: (IFWebController *)controller
{
WEBKIT_ASSERT(_private->part != nil);
@@ -286,7 +286,7 @@
}
-// This method should only be called by haveContentPolicy in IFBaseWebController
+// This method should only be called by haveContentPolicy in IFWebController
// and should only be called once.
- (void) _setContentPolicy:(IFContentPolicy)policy
{
diff --git a/WebKit/WebView.subproj/IFWebFrame.h b/WebKit/WebView.subproj/IFWebFrame.h
index a141d57..5f920f7 100644
--- a/WebKit/WebView.subproj/IFWebFrame.h
+++ b/WebKit/WebView.subproj/IFWebFrame.h
@@ -10,7 +10,7 @@
@class IFError;
@class IFWebDataSource;
- at protocol IFWebController;
+ at class IFWebController;
@class IFWebFramePrivate;
@@ -20,11 +20,11 @@
IFWebFramePrivate *_private;
}
-- initWithName: (NSString *)name view: view provisionalDataSource: (IFWebDataSource *)dataSource controller: (id <IFWebController>)controller;
+- initWithName: (NSString *)name view: view provisionalDataSource: (IFWebDataSource *)dataSource controller: (IFWebController *)controller;
- (NSString *)name;
-- (void)setController: (id <IFWebController>)controller;
-- (id <IFWebController>)controller;
+- (void)setController: (IFWebController *)controller;
+- (IFWebController *)controller;
- (void)setView: (id)view;
- (id)view;
diff --git a/WebKit/WebView.subproj/IFWebFrame.mm b/WebKit/WebView.subproj/IFWebFrame.mm
index 91eecd4..e953671 100644
--- a/WebKit/WebView.subproj/IFWebFrame.mm
+++ b/WebKit/WebView.subproj/IFWebFrame.mm
@@ -9,7 +9,7 @@
#import <WebKit/IFWebFramePrivate.h>
#import <WebKit/IFWebViewPrivate.h>
#import <WebKit/IFWebDataSourcePrivate.h>
-#import <WebKit/IFBaseWebControllerPrivate.h>
+#import <WebKit/IFWebControllerPrivate.h>
#import <WebKit/IFWebController.h>
#import <WebKit/IFLocationChangeHandler.h>
#import <WebKit/IFDownloadHandler.h>
@@ -27,7 +27,7 @@
return [self initWithName: nil view: nil provisionalDataSource: nil controller: nil];
}
-- initWithName: (NSString *)n view: v provisionalDataSource: (IFWebDataSource *)d controller: (id<IFWebController>)c
+- initWithName: (NSString *)n view: v provisionalDataSource: (IFWebDataSource *)d controller: (IFWebController *)c
{
[super init];
@@ -87,13 +87,13 @@
return [_private view];
}
-- (id <IFWebController>)controller
+- (IFWebController *)controller
{
return [_private controller];
}
-- (void)setController: (id <IFWebController>)controller
+- (void)setController: (IFWebController *)controller
{
[_private setController: controller];
}
@@ -255,7 +255,7 @@
}
else if ([name isEqualToString:@"_blank"]){
- id<IFWebController> newController = [[self controller] openNewWindowWithURL: nil];
+ IFWebController *newController = [[self controller] openNewWindowWithURL: nil];
return [newController mainFrame];
}
diff --git a/WebKit/WebView.subproj/IFWebFramePrivate.h b/WebKit/WebView.subproj/IFWebFramePrivate.h
index 6fd78fe..5177e16 100644
--- a/WebKit/WebView.subproj/IFWebFramePrivate.h
+++ b/WebKit/WebView.subproj/IFWebFramePrivate.h
@@ -42,15 +42,15 @@ typedef enum {
IFWebDataSource *dataSource;
IFWebDataSource *provisionalDataSource;
khtml::RenderPart *renderFramePart;
- id <IFWebController>controller;
+ IFWebController *controller;
IFWebFrameState state;
BOOL scheduledLayoutPending;
}
- (void)setName: (NSString *)n;
- (NSString *)name;
-- (void)setController: (id <IFWebController>)c;
-- (id <IFWebController>)controller;
+- (void)setController: (IFWebController *)c;
+- (IFWebController *)controller;
- (void)setView: v;
- view;
- (void)setDataSource: (IFWebDataSource *)d;
@@ -63,7 +63,7 @@ typedef enum {
@end
@interface IFWebFrame (IFPrivate)
-- (void)_setController: (id <IFWebController>)controller;
+- (void)_setController: (IFWebController *)controller;
- (void)_setRenderFramePart: (khtml::RenderPart *)p;
- (khtml::RenderPart *)_renderFramePart;
- (void)_setDataSource: (IFWebDataSource *)d;
diff --git a/WebKit/WebView.subproj/IFWebFramePrivate.mm b/WebKit/WebView.subproj/IFWebFramePrivate.mm
index 9d40bfc..4364168 100644
--- a/WebKit/WebView.subproj/IFWebFramePrivate.mm
+++ b/WebKit/WebView.subproj/IFWebFramePrivate.mm
@@ -71,8 +71,8 @@ static const char * const stateNames[6] = {
}
}
-- (id <IFWebController>)controller { return controller; }
-- (void)setController: (id <IFWebController>)c
+- (IFWebController *)controller { return controller; }
+- (void)setController: (IFWebController *)c
{
controller = c; // not retained (yet)
}
@@ -100,7 +100,7 @@ static const char * const stateNames[6] = {
@implementation IFWebFrame (IFPrivate)
-- (void)_setController: (id <IFWebController>)controller
+- (void)_setController: (IFWebController *)controller
{
[_private setController: controller];
}
diff --git a/WebKit/WebView.subproj/IFWebView.h b/WebKit/WebView.subproj/IFWebView.h
index 2eecffd..933968c 100644
--- a/WebKit/WebView.subproj/IFWebView.h
+++ b/WebKit/WebView.subproj/IFWebView.h
@@ -12,7 +12,7 @@
*/
@class IFWebDataSource;
- at protocol IFWebController;
+ at class IFWebController;
@class IFWebViewPrivate;
@@ -25,7 +25,7 @@
- initWithFrame: (NSRect)frame;
// Note that the controller is not retained.
-- (id <IFWebController>)controller;
+- (IFWebController *)controller;
// These methods is typically called by the view's controller when
// the data source is changed.
diff --git a/WebKit/WebView.subproj/IFWebView.mm b/WebKit/WebView.subproj/IFWebView.mm
index c25521e..a2b43d7 100644
--- a/WebKit/WebView.subproj/IFWebView.mm
+++ b/WebKit/WebView.subproj/IFWebView.mm
@@ -7,7 +7,6 @@
#import <WebKit/IFWebDataSource.h>
#import <WebKit/IFWebDataSourcePrivate.h>
#import <WebKit/IFWebController.h>
-#import <WebKit/IFBaseWebController.h>
#import <WebKit/IFDynamicScrollBarsView.h>
#import <WebKit/IFException.h>
#import <WebKit/IFWebCoreViewFactory.h>
@@ -72,7 +71,7 @@
// Note that the controller is not retained.
-- (id <IFWebController>)controller
+- (IFWebController *)controller
{
return _private->controller;
}
diff --git a/WebKit/WebView.subproj/IFWebViewPrivate.h b/WebKit/WebView.subproj/IFWebViewPrivate.h
index ed102ee..33764e4 100644
--- a/WebKit/WebView.subproj/IFWebViewPrivate.h
+++ b/WebKit/WebView.subproj/IFWebViewPrivate.h
@@ -14,7 +14,7 @@ class KHTMLView;
@interface IFWebViewPrivate : NSObject
{
- id <IFWebController>controller;
+ IFWebController *controller;
KHTMLView *widget;
KHTMLView *provisionalWidget;
NSScrollView *frameScrollView;
@@ -30,7 +30,7 @@ class KHTMLView;
@end
@interface IFWebView (IFPrivate)
-- (void)_setController: (id <IFWebController>)controller;
+- (void)_setController: (IFWebController *)controller;
- (void)_resetWidget;
- (KHTMLView *)_widget;
- (KHTMLView *)_provisionalWidget;
diff --git a/WebKit/WebView.subproj/IFWebViewPrivate.mm b/WebKit/WebView.subproj/IFWebViewPrivate.mm
index 89f1728..ca8031f 100644
--- a/WebKit/WebView.subproj/IFWebViewPrivate.mm
+++ b/WebKit/WebView.subproj/IFWebViewPrivate.mm
@@ -63,7 +63,7 @@
[subviews release];
}
-- (void)_setController: (id <IFWebController>)controller
+- (void)_setController: (IFWebController *)controller
{
// Not retained; the controller owns the view.
_private->controller = controller;
diff --git a/WebKit/WebView.subproj/WebController.h b/WebKit/WebView.subproj/WebController.h
index a4d8a66..e48022f 100644
--- a/WebKit/WebView.subproj/WebController.h
+++ b/WebKit/WebView.subproj/WebController.h
@@ -22,7 +22,7 @@
alternate views of the web pages described by IFWebDataSources. For example, a web
crawler may implement a IFWebController with no corresponding view.
- IFBaseWebController may be subclassed to modify the behavior of the standard
+ IFWebController may be subclassed to modify the behavior of the standard
IFWebView and IFWebDataSource.
=============================================================================
@@ -33,8 +33,9 @@
@class IFLoadProgress;
@class IFWebDataSource;
@class IFWebFrame;
- at protocol IFWebController;
-
+ at class IFWebView;
+ at class IFWebController;
+ at class IFWebControllerPrivate;
/*
=============================================================================
@@ -80,7 +81,7 @@
// screen goemetry. Essentially all the 'view' items that are
// FIXME: not strictly a scripting issue
-- (id<IFWebController>)openNewWindowWithURL:(NSURL *)url;
+- (IFWebController *)openNewWindowWithURL:(NSURL *)url;
@end
/*
@@ -99,7 +100,28 @@ typedef enum {
IFURLPolicyIgnore
} IFURLPolicy;
- at protocol IFWebController <NSObject, IFResourceProgressHandler, IFScriptContextHandler>
+ at interface IFWebController : NSObject <IFResourceProgressHandler, IFScriptContextHandler>
+{
+ at private
+ IFWebControllerPrivate *_private;
+}
+
+/*
+// Called when the content policy is set to IFContentPolicyShow
++ (id <IFDocumentView>) createViewForMIMEType:(NSString *)MIMEType
+
+// registerClass extends the views that WebKit supports
++ (void) registerClass:(Class)class forMIMEType:(NSString *)MIMEType
+*/
+
+// Calls designated initializer with nil arguments.
+- init;
+
+// Designated initializer.
+- initWithView: (IFWebView *)view provisionalDataSource: (IFWebDataSource *)dataSource;
+
+- (void)setDirectsAllLinksToSystemBrowser: (BOOL)flag;
+- (BOOL)directsAllLinksToSystemBrowser;
// Called when a data source needs to create a frame. This method encapsulates the
// specifics of creating and initializaing a view of the appropriate class.
diff --git a/WebKit/WebView.subproj/IFBaseWebController.mm b/WebKit/WebView.subproj/WebController.m
similarity index 89%
copy from WebKit/WebView.subproj/IFBaseWebController.mm
copy to WebKit/WebView.subproj/WebController.m
index 0fb3d0d..8f01fb4 100644
--- a/WebKit/WebView.subproj/IFBaseWebController.mm
+++ b/WebKit/WebView.subproj/WebController.m
@@ -1,9 +1,10 @@
/*
- IFBaseWebController.mm
+ IFWebController.mm
Copyright 2001, 2002 Apple, Inc. All rights reserved.
*/
-#import <WebKit/IFBaseWebController.h>
-#import <WebKit/IFBaseWebControllerPrivate.h>
+
+#import <WebKit/IFWebController.h>
+#import <WebKit/IFWebControllerPrivate.h>
#import <WebKit/IFWebViewPrivate.h>
#import <WebKit/IFWebDataSourcePrivate.h>
#import <WebKit/IFWebFrame.h>
@@ -15,7 +16,19 @@
#import <WebFoundation/WebFoundation.h>
- at implementation IFBaseWebController
+ at implementation IFWebController
+
+/*
++ (id <IFDocumentView>) createViewForMIMEType:(NSString *)MIMEType
+{
+ return nil;
+}
+
++ (void) registerClass:(Class)class forMIMEType:(NSString *)MIMEType
+{
+
+}
+*/
- init
{
@@ -26,7 +39,7 @@
{
[super init];
- _private = [[IFBaseWebControllerPrivate alloc] init];
+ _private = [[IFWebControllerPrivate alloc] init];
_private->mainFrame = [[IFWebFrame alloc] initWithName: @"_top" view: view provisionalDataSource: dataSource controller: self];
return self;
@@ -40,12 +53,12 @@
- (void)setDirectsAllLinksToSystemBrowser: (BOOL)flag
{
- [NSException raise:IFMethodNotYetImplemented format:@"IFBaseWebController::setDirectsAllLinksToSystemBrowser: is not implemented"];
+ [NSException raise:IFMethodNotYetImplemented format:@"IFWebController::setDirectsAllLinksToSystemBrowser: is not implemented"];
}
- (BOOL)directsAllLinksToSystemBrowser
{
- [NSException raise:IFMethodNotYetImplemented format:@"IFBaseWebController::directsAllLinksToSystemBrowser is not implemented"];
+ [NSException raise:IFMethodNotYetImplemented format:@"IFWebController::directsAllLinksToSystemBrowser is not implemented"];
return NO;
}
@@ -81,18 +94,18 @@
// ---------------------------------------------------------------------
- (void)setStatusText: (NSString *)text forDataSource: (IFWebDataSource *)dataSource
{
- [NSException raise:IFMethodNotYetImplemented format:@"IFBaseWebController::setStatusText:forDataSource: is not implemented"];
+ [NSException raise:IFMethodNotYetImplemented format:@"IFWebController::setStatusText:forDataSource: is not implemented"];
}
- (NSString *)statusTextForDataSource: (IFWebDataSource *)dataSource
{
- [NSException raise:IFMethodNotYetImplemented format:@"IFBaseWebController::statusTextForDataSource: is not implemented"];
+ [NSException raise:IFMethodNotYetImplemented format:@"IFWebController::statusTextForDataSource: is not implemented"];
return nil;
}
-- (id<IFWebController>)openNewWindowWithURL:(NSURL *)url
+- (IFWebController *)openNewWindowWithURL:(NSURL *)url
{
return nil;
}
diff --git a/WebKit/WebView.subproj/IFBaseWebControllerPrivate.h b/WebKit/WebView.subproj/WebControllerPrivate.h
similarity index 87%
copy from WebKit/WebView.subproj/IFBaseWebControllerPrivate.h
copy to WebKit/WebView.subproj/WebControllerPrivate.h
index d246cc6..a169cee 100644
--- a/WebKit/WebView.subproj/IFBaseWebControllerPrivate.h
+++ b/WebKit/WebView.subproj/WebControllerPrivate.h
@@ -3,19 +3,19 @@
Copyright 2001, Apple, Inc. All rights reserved.
*/
-#import <WebKit/IFBaseWebController.h>
+#import <WebKit/IFWebController.h>
@class IFError;
@class IFLoadProgress;
@class IFWebFrame;
- at interface IFBaseWebControllerPrivate : NSObject
+ at interface IFWebControllerPrivate : NSObject
{
IFWebFrame *mainFrame;
}
@end
- at interface IFBaseWebController (IFPrivate);
+ at interface IFWebController (IFPrivate);
- (void)_receivedProgress: (IFLoadProgress *)progress forResource: (NSString *)resourceDescription fromDataSource: (IFWebDataSource *)dataSource;
- (void)_receivedError: (IFError *)error forResource: (NSString *)resourceDescription partialProgress: (IFLoadProgress *)progress fromDataSource: (IFWebDataSource *)dataSource;
- (void)_mainReceivedProgress: (IFLoadProgress *)progress forResource: (NSString *)resourceDescription fromDataSource: (IFWebDataSource *)dataSource;
diff --git a/WebKit/WebView.subproj/IFBaseWebControllerPrivate.mm b/WebKit/WebView.subproj/WebControllerPrivate.m
similarity index 98%
copy from WebKit/WebView.subproj/IFBaseWebControllerPrivate.mm
copy to WebKit/WebView.subproj/WebControllerPrivate.m
index 5a3dc50..cb21f7b 100644
--- a/WebKit/WebView.subproj/IFBaseWebControllerPrivate.mm
+++ b/WebKit/WebView.subproj/WebControllerPrivate.m
@@ -2,7 +2,7 @@
IFWebController.mm
Copyright 2001, Apple, Inc. All rights reserved.
*/
-#import <WebKit/IFBaseWebControllerPrivate.h>
+#import <WebKit/IFWebControllerPrivate.h>
#import <WebKit/IFWebDataSourcePrivate.h>
#import <WebKit/IFWebViewPrivate.h>
#import <WebKit/IFWebFramePrivate.h>
@@ -19,7 +19,7 @@
#import <WebKit/WebKitDebug.h>
- at implementation IFBaseWebControllerPrivate
+ at implementation IFWebControllerPrivate
- init
{
@@ -59,7 +59,7 @@
@end
- at implementation IFBaseWebController (IFPrivate)
+ at implementation IFWebController (IFPrivate)
- (void)_receivedProgress: (IFLoadProgress *)progress forResource: (NSString *)resourceDescription fromDataSource: (IFWebDataSource *)dataSource
{
diff --git a/WebKit/WebView.subproj/WebDataSource.h b/WebKit/WebView.subproj/WebDataSource.h
index 375f8e9..9d1eca6 100644
--- a/WebKit/WebView.subproj/WebDataSource.h
+++ b/WebKit/WebView.subproj/WebDataSource.h
@@ -18,7 +18,7 @@
@class IFWebFrame;
@class IFURLHandle;
- at protocol IFWebController;
+ at class IFWebController;
#ifdef TENTATIVE_API
@class IFLoader;
@@ -82,8 +82,8 @@
// data source. Perhaps setController: should be private? Perhaps the back pointers
// can be managed externally, i.e. + controllerForDataSource: as a class method on
// IFDefaultWebController?
-//- (void)setController: (id <IFWebController>)controller;
-- (id <IFWebController>)controller;
+//- (void)setController: (IFWebController *)controller;
+- (IFWebController *)controller;
// May return nil if not initialized with a URL.
- (NSURL *)inputURL;
diff --git a/WebKit/WebView.subproj/WebDataSource.m b/WebKit/WebView.subproj/WebDataSource.m
index 366e8df..ee83e49 100644
--- a/WebKit/WebView.subproj/WebDataSource.m
+++ b/WebKit/WebView.subproj/WebDataSource.m
@@ -145,7 +145,7 @@ static id IFWebDataSourceMake(void *url, void *attributes, unsigned flags)
}
-- (id <IFWebController>)controller
+- (IFWebController *)controller
{
// All data sources used in a document share the same
// controller. A single document may have many datasource corresponding to
diff --git a/WebKit/WebView.subproj/WebDataSourcePrivate.h b/WebKit/WebView.subproj/WebDataSourcePrivate.h
index 7032112..96690b2 100644
--- a/WebKit/WebView.subproj/WebDataSourcePrivate.h
+++ b/WebKit/WebView.subproj/WebDataSourcePrivate.h
@@ -20,7 +20,7 @@ class KHTMLPart;
IFWebDataSource *parent;
NSMutableArray *children;
- id <IFWebController>controller;
+ IFWebController *controller;
// The original URL as requested during initialization.
NSURL *inputURL;
@@ -73,7 +73,7 @@ class KHTMLPart;
@end
@interface IFWebDataSource (IFPrivate)
-- (void)_setController: (id <IFWebController>)controller;
+- (void)_setController: (IFWebController *)controller;
- (KHTMLPart *)_part;
- (void)_setParent: (IFWebDataSource *)p;
- (void)_startLoading: (BOOL)forceRefresh;
diff --git a/WebKit/WebView.subproj/WebDataSourcePrivate.m b/WebKit/WebView.subproj/WebDataSourcePrivate.m
index 04c3c08..9dfd5b0 100644
--- a/WebKit/WebView.subproj/WebDataSourcePrivate.m
+++ b/WebKit/WebView.subproj/WebDataSourcePrivate.m
@@ -93,7 +93,7 @@
[self _setLoading: _private->mainHandle || [_private->urlHandles count]];
}
-- (void)_setController: (id <IFWebController>)controller
+- (void)_setController: (IFWebController *)controller
{
WEBKIT_ASSERT(_private->part != nil);
@@ -286,7 +286,7 @@
}
-// This method should only be called by haveContentPolicy in IFBaseWebController
+// This method should only be called by haveContentPolicy in IFWebController
// and should only be called once.
- (void) _setContentPolicy:(IFContentPolicy)policy
{
diff --git a/WebKit/WebView.subproj/WebFrame.h b/WebKit/WebView.subproj/WebFrame.h
index a141d57..5f920f7 100644
--- a/WebKit/WebView.subproj/WebFrame.h
+++ b/WebKit/WebView.subproj/WebFrame.h
@@ -10,7 +10,7 @@
@class IFError;
@class IFWebDataSource;
- at protocol IFWebController;
+ at class IFWebController;
@class IFWebFramePrivate;
@@ -20,11 +20,11 @@
IFWebFramePrivate *_private;
}
-- initWithName: (NSString *)name view: view provisionalDataSource: (IFWebDataSource *)dataSource controller: (id <IFWebController>)controller;
+- initWithName: (NSString *)name view: view provisionalDataSource: (IFWebDataSource *)dataSource controller: (IFWebController *)controller;
- (NSString *)name;
-- (void)setController: (id <IFWebController>)controller;
-- (id <IFWebController>)controller;
+- (void)setController: (IFWebController *)controller;
+- (IFWebController *)controller;
- (void)setView: (id)view;
- (id)view;
diff --git a/WebKit/WebView.subproj/WebFrame.m b/WebKit/WebView.subproj/WebFrame.m
index 91eecd4..e953671 100644
--- a/WebKit/WebView.subproj/WebFrame.m
+++ b/WebKit/WebView.subproj/WebFrame.m
@@ -9,7 +9,7 @@
#import <WebKit/IFWebFramePrivate.h>
#import <WebKit/IFWebViewPrivate.h>
#import <WebKit/IFWebDataSourcePrivate.h>
-#import <WebKit/IFBaseWebControllerPrivate.h>
+#import <WebKit/IFWebControllerPrivate.h>
#import <WebKit/IFWebController.h>
#import <WebKit/IFLocationChangeHandler.h>
#import <WebKit/IFDownloadHandler.h>
@@ -27,7 +27,7 @@
return [self initWithName: nil view: nil provisionalDataSource: nil controller: nil];
}
-- initWithName: (NSString *)n view: v provisionalDataSource: (IFWebDataSource *)d controller: (id<IFWebController>)c
+- initWithName: (NSString *)n view: v provisionalDataSource: (IFWebDataSource *)d controller: (IFWebController *)c
{
[super init];
@@ -87,13 +87,13 @@
return [_private view];
}
-- (id <IFWebController>)controller
+- (IFWebController *)controller
{
return [_private controller];
}
-- (void)setController: (id <IFWebController>)controller
+- (void)setController: (IFWebController *)controller
{
[_private setController: controller];
}
@@ -255,7 +255,7 @@
}
else if ([name isEqualToString:@"_blank"]){
- id<IFWebController> newController = [[self controller] openNewWindowWithURL: nil];
+ IFWebController *newController = [[self controller] openNewWindowWithURL: nil];
return [newController mainFrame];
}
diff --git a/WebKit/WebView.subproj/WebFramePrivate.h b/WebKit/WebView.subproj/WebFramePrivate.h
index 6fd78fe..5177e16 100644
--- a/WebKit/WebView.subproj/WebFramePrivate.h
+++ b/WebKit/WebView.subproj/WebFramePrivate.h
@@ -42,15 +42,15 @@ typedef enum {
IFWebDataSource *dataSource;
IFWebDataSource *provisionalDataSource;
khtml::RenderPart *renderFramePart;
- id <IFWebController>controller;
+ IFWebController *controller;
IFWebFrameState state;
BOOL scheduledLayoutPending;
}
- (void)setName: (NSString *)n;
- (NSString *)name;
-- (void)setController: (id <IFWebController>)c;
-- (id <IFWebController>)controller;
+- (void)setController: (IFWebController *)c;
+- (IFWebController *)controller;
- (void)setView: v;
- view;
- (void)setDataSource: (IFWebDataSource *)d;
@@ -63,7 +63,7 @@ typedef enum {
@end
@interface IFWebFrame (IFPrivate)
-- (void)_setController: (id <IFWebController>)controller;
+- (void)_setController: (IFWebController *)controller;
- (void)_setRenderFramePart: (khtml::RenderPart *)p;
- (khtml::RenderPart *)_renderFramePart;
- (void)_setDataSource: (IFWebDataSource *)d;
diff --git a/WebKit/WebView.subproj/WebFramePrivate.m b/WebKit/WebView.subproj/WebFramePrivate.m
index 9d40bfc..4364168 100644
--- a/WebKit/WebView.subproj/WebFramePrivate.m
+++ b/WebKit/WebView.subproj/WebFramePrivate.m
@@ -71,8 +71,8 @@ static const char * const stateNames[6] = {
}
}
-- (id <IFWebController>)controller { return controller; }
-- (void)setController: (id <IFWebController>)c
+- (IFWebController *)controller { return controller; }
+- (void)setController: (IFWebController *)c
{
controller = c; // not retained (yet)
}
@@ -100,7 +100,7 @@ static const char * const stateNames[6] = {
@implementation IFWebFrame (IFPrivate)
-- (void)_setController: (id <IFWebController>)controller
+- (void)_setController: (IFWebController *)controller
{
[_private setController: controller];
}
diff --git a/WebKit/WebView.subproj/WebFrameView.h b/WebKit/WebView.subproj/WebFrameView.h
index 2eecffd..933968c 100644
--- a/WebKit/WebView.subproj/WebFrameView.h
+++ b/WebKit/WebView.subproj/WebFrameView.h
@@ -12,7 +12,7 @@
*/
@class IFWebDataSource;
- at protocol IFWebController;
+ at class IFWebController;
@class IFWebViewPrivate;
@@ -25,7 +25,7 @@
- initWithFrame: (NSRect)frame;
// Note that the controller is not retained.
-- (id <IFWebController>)controller;
+- (IFWebController *)controller;
// These methods is typically called by the view's controller when
// the data source is changed.
diff --git a/WebKit/WebView.subproj/WebFrameView.m b/WebKit/WebView.subproj/WebFrameView.m
index c25521e..a2b43d7 100644
--- a/WebKit/WebView.subproj/WebFrameView.m
+++ b/WebKit/WebView.subproj/WebFrameView.m
@@ -7,7 +7,6 @@
#import <WebKit/IFWebDataSource.h>
#import <WebKit/IFWebDataSourcePrivate.h>
#import <WebKit/IFWebController.h>
-#import <WebKit/IFBaseWebController.h>
#import <WebKit/IFDynamicScrollBarsView.h>
#import <WebKit/IFException.h>
#import <WebKit/IFWebCoreViewFactory.h>
@@ -72,7 +71,7 @@
// Note that the controller is not retained.
-- (id <IFWebController>)controller
+- (IFWebController *)controller
{
return _private->controller;
}
diff --git a/WebKit/WebView.subproj/WebFrameViewInternal.h b/WebKit/WebView.subproj/WebFrameViewInternal.h
index ed102ee..33764e4 100644
--- a/WebKit/WebView.subproj/WebFrameViewInternal.h
+++ b/WebKit/WebView.subproj/WebFrameViewInternal.h
@@ -14,7 +14,7 @@ class KHTMLView;
@interface IFWebViewPrivate : NSObject
{
- id <IFWebController>controller;
+ IFWebController *controller;
KHTMLView *widget;
KHTMLView *provisionalWidget;
NSScrollView *frameScrollView;
@@ -30,7 +30,7 @@ class KHTMLView;
@end
@interface IFWebView (IFPrivate)
-- (void)_setController: (id <IFWebController>)controller;
+- (void)_setController: (IFWebController *)controller;
- (void)_resetWidget;
- (KHTMLView *)_widget;
- (KHTMLView *)_provisionalWidget;
diff --git a/WebKit/WebView.subproj/WebFrameViewPrivate.h b/WebKit/WebView.subproj/WebFrameViewPrivate.h
index ed102ee..33764e4 100644
--- a/WebKit/WebView.subproj/WebFrameViewPrivate.h
+++ b/WebKit/WebView.subproj/WebFrameViewPrivate.h
@@ -14,7 +14,7 @@ class KHTMLView;
@interface IFWebViewPrivate : NSObject
{
- id <IFWebController>controller;
+ IFWebController *controller;
KHTMLView *widget;
KHTMLView *provisionalWidget;
NSScrollView *frameScrollView;
@@ -30,7 +30,7 @@ class KHTMLView;
@end
@interface IFWebView (IFPrivate)
-- (void)_setController: (id <IFWebController>)controller;
+- (void)_setController: (IFWebController *)controller;
- (void)_resetWidget;
- (KHTMLView *)_widget;
- (KHTMLView *)_provisionalWidget;
diff --git a/WebKit/WebView.subproj/WebFrameViewPrivate.m b/WebKit/WebView.subproj/WebFrameViewPrivate.m
index 89f1728..ca8031f 100644
--- a/WebKit/WebView.subproj/WebFrameViewPrivate.m
+++ b/WebKit/WebView.subproj/WebFrameViewPrivate.m
@@ -63,7 +63,7 @@
[subviews release];
}
-- (void)_setController: (id <IFWebController>)controller
+- (void)_setController: (IFWebController *)controller
{
// Not retained; the controller owns the view.
_private->controller = controller;
diff --git a/WebKit/WebView.subproj/WebMainResourceClient.m b/WebKit/WebView.subproj/WebMainResourceClient.m
index e9ffe0c..1956999 100644
--- a/WebKit/WebView.subproj/WebMainResourceClient.m
+++ b/WebKit/WebView.subproj/WebMainResourceClient.m
@@ -9,7 +9,7 @@
#import <pthread.h>
#import <WebKit/IFLoadProgress.h>
-#import <WebKit/IFBaseWebControllerPrivate.h>
+#import <WebKit/IFWebControllerPrivate.h>
#import <WebKit/WebKitDebug.h>
#import <WebKit/IFContentHandler.h>
#import <WebKit/IFDownloadHandler.h>
@@ -70,7 +70,7 @@
{
WEBKITDEBUGLEVEL (WEBKIT_LOG_LOADING, "url = %s\n", [[[sender url] absoluteString] cString]);
url = [[sender url] retain];
- [(IFBaseWebController *)[dataSource controller] _didStartLoading:url];
+ [(IFWebController *)[dataSource controller] _didStartLoading:url];
}
@@ -83,10 +83,10 @@
IFLoadProgress *loadProgress = [[IFLoadProgress alloc] init];
loadProgress->totalToLoad = -1;
loadProgress->bytesSoFar = -1;
- [(IFBaseWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
+ [(IFWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
forResource: [[sender url] absoluteString] fromDataSource: dataSource];
[loadProgress release];
- [(IFBaseWebController *)[dataSource controller] _didStopLoading:url];
+ [(IFWebController *)[dataSource controller] _didStopLoading:url];
}
@@ -107,10 +107,10 @@
IFLoadProgress *loadProgress = [[IFLoadProgress alloc] init];
loadProgress->totalToLoad = [data length];
loadProgress->bytesSoFar = [data length];
- [(IFBaseWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
+ [(IFWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
forResource: [[sender url] absoluteString] fromDataSource: dataSource];
[loadProgress release];
- [(IFBaseWebController *)[dataSource controller] _didStopLoading:url];
+ [(IFWebController *)[dataSource controller] _didStopLoading:url];
}
@@ -162,7 +162,7 @@
IFLoadProgress *loadProgress = [[IFLoadProgress alloc] init];
loadProgress->totalToLoad = contentLength;
loadProgress->bytesSoFar = contentLengthReceived;
- [(IFBaseWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
+ [(IFWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
forResource: [[sender url] absoluteString] fromDataSource: dataSource];
[loadProgress release];
}
@@ -178,8 +178,8 @@
loadProgress->totalToLoad = [sender contentLength];
loadProgress->bytesSoFar = [sender contentLengthReceived];
- [(IFBaseWebController *)[dataSource controller] _mainReceivedError: result forResource: [[sender url] absoluteString] partialProgress: loadProgress fromDataSource: dataSource];
- [(IFBaseWebController *)[dataSource controller] _didStopLoading:url];
+ [(IFWebController *)[dataSource controller] _mainReceivedError: result forResource: [[sender url] absoluteString] partialProgress: loadProgress fromDataSource: dataSource];
+ [(IFWebController *)[dataSource controller] _didStopLoading:url];
}
@@ -191,8 +191,8 @@
[dataSource _setFinalURL: URL];
[[dataSource _locationChangeHandler] serverRedirectTo: URL forDataSource: dataSource];
- [(IFBaseWebController *)[dataSource controller] _didStopLoading: url];
- [(IFBaseWebController *)[dataSource controller] _didStartLoading: URL];
+ [(IFWebController *)[dataSource controller] _didStopLoading: url];
+ [(IFWebController *)[dataSource controller] _didStartLoading: URL];
[url release];
url = [URL retain];
}
diff --git a/WebKit/WebView.subproj/WebMainResourceLoader.m b/WebKit/WebView.subproj/WebMainResourceLoader.m
index e9ffe0c..1956999 100644
--- a/WebKit/WebView.subproj/WebMainResourceLoader.m
+++ b/WebKit/WebView.subproj/WebMainResourceLoader.m
@@ -9,7 +9,7 @@
#import <pthread.h>
#import <WebKit/IFLoadProgress.h>
-#import <WebKit/IFBaseWebControllerPrivate.h>
+#import <WebKit/IFWebControllerPrivate.h>
#import <WebKit/WebKitDebug.h>
#import <WebKit/IFContentHandler.h>
#import <WebKit/IFDownloadHandler.h>
@@ -70,7 +70,7 @@
{
WEBKITDEBUGLEVEL (WEBKIT_LOG_LOADING, "url = %s\n", [[[sender url] absoluteString] cString]);
url = [[sender url] retain];
- [(IFBaseWebController *)[dataSource controller] _didStartLoading:url];
+ [(IFWebController *)[dataSource controller] _didStartLoading:url];
}
@@ -83,10 +83,10 @@
IFLoadProgress *loadProgress = [[IFLoadProgress alloc] init];
loadProgress->totalToLoad = -1;
loadProgress->bytesSoFar = -1;
- [(IFBaseWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
+ [(IFWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
forResource: [[sender url] absoluteString] fromDataSource: dataSource];
[loadProgress release];
- [(IFBaseWebController *)[dataSource controller] _didStopLoading:url];
+ [(IFWebController *)[dataSource controller] _didStopLoading:url];
}
@@ -107,10 +107,10 @@
IFLoadProgress *loadProgress = [[IFLoadProgress alloc] init];
loadProgress->totalToLoad = [data length];
loadProgress->bytesSoFar = [data length];
- [(IFBaseWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
+ [(IFWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
forResource: [[sender url] absoluteString] fromDataSource: dataSource];
[loadProgress release];
- [(IFBaseWebController *)[dataSource controller] _didStopLoading:url];
+ [(IFWebController *)[dataSource controller] _didStopLoading:url];
}
@@ -162,7 +162,7 @@
IFLoadProgress *loadProgress = [[IFLoadProgress alloc] init];
loadProgress->totalToLoad = contentLength;
loadProgress->bytesSoFar = contentLengthReceived;
- [(IFBaseWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
+ [(IFWebController *)[dataSource controller] _mainReceivedProgress: (IFLoadProgress *)loadProgress
forResource: [[sender url] absoluteString] fromDataSource: dataSource];
[loadProgress release];
}
@@ -178,8 +178,8 @@
loadProgress->totalToLoad = [sender contentLength];
loadProgress->bytesSoFar = [sender contentLengthReceived];
- [(IFBaseWebController *)[dataSource controller] _mainReceivedError: result forResource: [[sender url] absoluteString] partialProgress: loadProgress fromDataSource: dataSource];
- [(IFBaseWebController *)[dataSource controller] _didStopLoading:url];
+ [(IFWebController *)[dataSource controller] _mainReceivedError: result forResource: [[sender url] absoluteString] partialProgress: loadProgress fromDataSource: dataSource];
+ [(IFWebController *)[dataSource controller] _didStopLoading:url];
}
@@ -191,8 +191,8 @@
[dataSource _setFinalURL: URL];
[[dataSource _locationChangeHandler] serverRedirectTo: URL forDataSource: dataSource];
- [(IFBaseWebController *)[dataSource controller] _didStopLoading: url];
- [(IFBaseWebController *)[dataSource controller] _didStartLoading: URL];
+ [(IFWebController *)[dataSource controller] _didStopLoading: url];
+ [(IFWebController *)[dataSource controller] _didStartLoading: URL];
[url release];
url = [URL retain];
}
diff --git a/WebKit/WebView.subproj/WebView.h b/WebKit/WebView.subproj/WebView.h
index a4d8a66..e48022f 100644
--- a/WebKit/WebView.subproj/WebView.h
+++ b/WebKit/WebView.subproj/WebView.h
@@ -22,7 +22,7 @@
alternate views of the web pages described by IFWebDataSources. For example, a web
crawler may implement a IFWebController with no corresponding view.
- IFBaseWebController may be subclassed to modify the behavior of the standard
+ IFWebController may be subclassed to modify the behavior of the standard
IFWebView and IFWebDataSource.
=============================================================================
@@ -33,8 +33,9 @@
@class IFLoadProgress;
@class IFWebDataSource;
@class IFWebFrame;
- at protocol IFWebController;
-
+ at class IFWebView;
+ at class IFWebController;
+ at class IFWebControllerPrivate;
/*
=============================================================================
@@ -80,7 +81,7 @@
// screen goemetry. Essentially all the 'view' items that are
// FIXME: not strictly a scripting issue
-- (id<IFWebController>)openNewWindowWithURL:(NSURL *)url;
+- (IFWebController *)openNewWindowWithURL:(NSURL *)url;
@end
/*
@@ -99,7 +100,28 @@ typedef enum {
IFURLPolicyIgnore
} IFURLPolicy;
- at protocol IFWebController <NSObject, IFResourceProgressHandler, IFScriptContextHandler>
+ at interface IFWebController : NSObject <IFResourceProgressHandler, IFScriptContextHandler>
+{
+ at private
+ IFWebControllerPrivate *_private;
+}
+
+/*
+// Called when the content policy is set to IFContentPolicyShow
++ (id <IFDocumentView>) createViewForMIMEType:(NSString *)MIMEType
+
+// registerClass extends the views that WebKit supports
++ (void) registerClass:(Class)class forMIMEType:(NSString *)MIMEType
+*/
+
+// Calls designated initializer with nil arguments.
+- init;
+
+// Designated initializer.
+- initWithView: (IFWebView *)view provisionalDataSource: (IFWebDataSource *)dataSource;
+
+- (void)setDirectsAllLinksToSystemBrowser: (BOOL)flag;
+- (BOOL)directsAllLinksToSystemBrowser;
// Called when a data source needs to create a frame. This method encapsulates the
// specifics of creating and initializaing a view of the appropriate class.
diff --git a/WebKit/WebView.subproj/IFBaseWebController.mm b/WebKit/WebView.subproj/WebView.m
similarity index 89%
rename from WebKit/WebView.subproj/IFBaseWebController.mm
rename to WebKit/WebView.subproj/WebView.m
index 0fb3d0d..8f01fb4 100644
--- a/WebKit/WebView.subproj/IFBaseWebController.mm
+++ b/WebKit/WebView.subproj/WebView.m
@@ -1,9 +1,10 @@
/*
- IFBaseWebController.mm
+ IFWebController.mm
Copyright 2001, 2002 Apple, Inc. All rights reserved.
*/
-#import <WebKit/IFBaseWebController.h>
-#import <WebKit/IFBaseWebControllerPrivate.h>
+
+#import <WebKit/IFWebController.h>
+#import <WebKit/IFWebControllerPrivate.h>
#import <WebKit/IFWebViewPrivate.h>
#import <WebKit/IFWebDataSourcePrivate.h>
#import <WebKit/IFWebFrame.h>
@@ -15,7 +16,19 @@
#import <WebFoundation/WebFoundation.h>
- at implementation IFBaseWebController
+ at implementation IFWebController
+
+/*
++ (id <IFDocumentView>) createViewForMIMEType:(NSString *)MIMEType
+{
+ return nil;
+}
+
++ (void) registerClass:(Class)class forMIMEType:(NSString *)MIMEType
+{
+
+}
+*/
- init
{
@@ -26,7 +39,7 @@
{
[super init];
- _private = [[IFBaseWebControllerPrivate alloc] init];
+ _private = [[IFWebControllerPrivate alloc] init];
_private->mainFrame = [[IFWebFrame alloc] initWithName: @"_top" view: view provisionalDataSource: dataSource controller: self];
return self;
@@ -40,12 +53,12 @@
- (void)setDirectsAllLinksToSystemBrowser: (BOOL)flag
{
- [NSException raise:IFMethodNotYetImplemented format:@"IFBaseWebController::setDirectsAllLinksToSystemBrowser: is not implemented"];
+ [NSException raise:IFMethodNotYetImplemented format:@"IFWebController::setDirectsAllLinksToSystemBrowser: is not implemented"];
}
- (BOOL)directsAllLinksToSystemBrowser
{
- [NSException raise:IFMethodNotYetImplemented format:@"IFBaseWebController::directsAllLinksToSystemBrowser is not implemented"];
+ [NSException raise:IFMethodNotYetImplemented format:@"IFWebController::directsAllLinksToSystemBrowser is not implemented"];
return NO;
}
@@ -81,18 +94,18 @@
// ---------------------------------------------------------------------
- (void)setStatusText: (NSString *)text forDataSource: (IFWebDataSource *)dataSource
{
- [NSException raise:IFMethodNotYetImplemented format:@"IFBaseWebController::setStatusText:forDataSource: is not implemented"];
+ [NSException raise:IFMethodNotYetImplemented format:@"IFWebController::setStatusText:forDataSource: is not implemented"];
}
- (NSString *)statusTextForDataSource: (IFWebDataSource *)dataSource
{
- [NSException raise:IFMethodNotYetImplemented format:@"IFBaseWebController::statusTextForDataSource: is not implemented"];
+ [NSException raise:IFMethodNotYetImplemented format:@"IFWebController::statusTextForDataSource: is not implemented"];
return nil;
}
-- (id<IFWebController>)openNewWindowWithURL:(NSURL *)url
+- (IFWebController *)openNewWindowWithURL:(NSURL *)url
{
return nil;
}
diff --git a/WebKit/WebView.subproj/IFBaseWebControllerPrivate.h b/WebKit/WebView.subproj/WebViewPrivate.h
similarity index 87%
rename from WebKit/WebView.subproj/IFBaseWebControllerPrivate.h
rename to WebKit/WebView.subproj/WebViewPrivate.h
index d246cc6..a169cee 100644
--- a/WebKit/WebView.subproj/IFBaseWebControllerPrivate.h
+++ b/WebKit/WebView.subproj/WebViewPrivate.h
@@ -3,19 +3,19 @@
Copyright 2001, Apple, Inc. All rights reserved.
*/
-#import <WebKit/IFBaseWebController.h>
+#import <WebKit/IFWebController.h>
@class IFError;
@class IFLoadProgress;
@class IFWebFrame;
- at interface IFBaseWebControllerPrivate : NSObject
+ at interface IFWebControllerPrivate : NSObject
{
IFWebFrame *mainFrame;
}
@end
- at interface IFBaseWebController (IFPrivate);
+ at interface IFWebController (IFPrivate);
- (void)_receivedProgress: (IFLoadProgress *)progress forResource: (NSString *)resourceDescription fromDataSource: (IFWebDataSource *)dataSource;
- (void)_receivedError: (IFError *)error forResource: (NSString *)resourceDescription partialProgress: (IFLoadProgress *)progress fromDataSource: (IFWebDataSource *)dataSource;
- (void)_mainReceivedProgress: (IFLoadProgress *)progress forResource: (NSString *)resourceDescription fromDataSource: (IFWebDataSource *)dataSource;
diff --git a/WebKit/WebView.subproj/IFBaseWebControllerPrivate.mm b/WebKit/WebView.subproj/WebViewPrivate.m
similarity index 98%
rename from WebKit/WebView.subproj/IFBaseWebControllerPrivate.mm
rename to WebKit/WebView.subproj/WebViewPrivate.m
index 5a3dc50..cb21f7b 100644
--- a/WebKit/WebView.subproj/IFBaseWebControllerPrivate.mm
+++ b/WebKit/WebView.subproj/WebViewPrivate.m
@@ -2,7 +2,7 @@
IFWebController.mm
Copyright 2001, Apple, Inc. All rights reserved.
*/
-#import <WebKit/IFBaseWebControllerPrivate.h>
+#import <WebKit/IFWebControllerPrivate.h>
#import <WebKit/IFWebDataSourcePrivate.h>
#import <WebKit/IFWebViewPrivate.h>
#import <WebKit/IFWebFramePrivate.h>
@@ -19,7 +19,7 @@
#import <WebKit/WebKitDebug.h>
- at implementation IFBaseWebControllerPrivate
+ at implementation IFWebControllerPrivate
- init
{
@@ -59,7 +59,7 @@
@end
- at implementation IFBaseWebController (IFPrivate)
+ at implementation IFWebController (IFPrivate)
- (void)_receivedProgress: (IFLoadProgress *)progress forResource: (NSString *)resourceDescription fromDataSource: (IFWebDataSource *)dataSource
{
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list