[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:46:00 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit d5af88087724df5c41d69088f8a9f6a94b99f0c0
Author: cblu <cblu at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Tue Oct 1 05:30:30 2002 +0000
A ton o' plugin view clean-up and arch changes. Turned WebPluginView into WebBaseNetscapePluginView. New classes WebNetscapePluginEmbeddedView and WebNetscapePluginDocumentView are subclasses of WebBaseNetscapePluginView. WebNetscapePluginDocumentView handles non-HTML plug-in content and WebNetscapePluginEmbeddedView is the WebHTMLView subview.
Found that we leak the world on complex pages with plug-ins such as macromedia.com and marvel.com when closing the window. Still need to figure this out.
* Plugins.subproj/WebBaseNetscapePluginView.h: Added.
* Plugins.subproj/WebBaseNetscapePluginView.m: Added.
(+[WebBaseNetscapePluginView getCarbonEvent:]):
(-[WebBaseNetscapePluginView getCarbonEvent:]):
(-[WebBaseNetscapePluginView modifiersForEvent:]):
(-[WebBaseNetscapePluginView getCarbonEvent:withEvent:]):
(-[WebBaseNetscapePluginView keyMessageForEvent:]):
(-[WebBaseNetscapePluginView sendEvent:]):
(-[WebBaseNetscapePluginView sendActivateEvent:]):
(-[WebBaseNetscapePluginView sendUpdateEvent]):
(-[WebBaseNetscapePluginView acceptsFirstResponder]):
(-[WebBaseNetscapePluginView becomeFirstResponder]):
(-[WebBaseNetscapePluginView resignFirstResponder]):
(-[WebBaseNetscapePluginView mouseDown:]):
(-[WebBaseNetscapePluginView mouseUp:]):
(-[WebBaseNetscapePluginView mouseEntered:]):
(-[WebBaseNetscapePluginView mouseExited:]):
(-[WebBaseNetscapePluginView keyUp:]):
(-[WebBaseNetscapePluginView keyDown:]):
(-[WebBaseNetscapePluginView isInResponderChain]):
(-[WebBaseNetscapePluginView performKeyEquivalent:]):
(-[WebBaseNetscapePluginView menuForEvent:]):
(-[WebBaseNetscapePluginView setUpWindowAndPort]):
(-[WebBaseNetscapePluginView setWindow]):
(-[WebBaseNetscapePluginView removeTrackingRect]):
(-[WebBaseNetscapePluginView resetTrackingRect]):
(-[WebBaseNetscapePluginView start]):
(-[WebBaseNetscapePluginView stop]):
(-[WebBaseNetscapePluginView dataSource]):
(-[WebBaseNetscapePluginView webFrame]):
(-[WebBaseNetscapePluginView controller]):
(-[WebBaseNetscapePluginView plugin]):
(-[WebBaseNetscapePluginView setMIMEType:]):
(-[WebBaseNetscapePluginView setBaseURL:]):
(-[WebBaseNetscapePluginView setArguments:]):
(-[WebBaseNetscapePluginView setMode:]):
(-[WebBaseNetscapePluginView initWithFrame:]):
(-[WebBaseNetscapePluginView dealloc]):
(-[WebBaseNetscapePluginView drawRect:]):
(-[WebBaseNetscapePluginView isFlipped]):
(-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
(-[WebBaseNetscapePluginView viewDidMoveToWindow]):
(-[WebBaseNetscapePluginView viewHasMoved:]):
(-[WebBaseNetscapePluginView windowWillClose:]):
(-[WebBaseNetscapePluginView windowBecameKey:]):
(-[WebBaseNetscapePluginView windowResignedKey:]):
(-[WebBaseNetscapePluginView defaultsHaveChanged:]):
(-[WebBaseNetscapePluginView frameStateChanged:]):
(-[WebBaseNetscapePluginView pluginInstance]):
(-[WebBaseNetscapePluginView pluginURLFromCString:]):
(-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
(-[WebBaseNetscapePluginView getURLNotify:target:notifyData:]):
(-[WebBaseNetscapePluginView getURL:target:]):
(-[WebBaseNetscapePluginView postURLNotify:target:len:buf:file:notifyData:]):
(-[WebBaseNetscapePluginView postURL:target:len:buf:file:]):
(-[WebBaseNetscapePluginView newStream:target:stream:]):
(-[WebBaseNetscapePluginView write:len:buffer:]):
(-[WebBaseNetscapePluginView destroyStream:reason:]):
(-[WebBaseNetscapePluginView status:]):
(-[WebBaseNetscapePluginView invalidateRect:]):
(-[WebBaseNetscapePluginView invalidateRegion:]):
(-[WebBaseNetscapePluginView forceRedraw]):
* Plugins.subproj/WebBaseNetscapePluginViewPrivate.h: Added.
* Plugins.subproj/WebNetscapePluginDocumentView.h: Added.
* Plugins.subproj/WebNetscapePluginDocumentView.m: Added.
(-[WebNetscapePluginDocumentView initWithFrame:]):
(-[WebNetscapePluginDocumentView dealloc]):
(-[WebNetscapePluginDocumentView drawRect:]):
(-[WebNetscapePluginDocumentView dataSource]):
(-[WebNetscapePluginDocumentView setDataSource:]):
(-[WebNetscapePluginDocumentView dataSourceUpdated:]):
(-[WebNetscapePluginDocumentView setNeedsLayout:]):
(-[WebNetscapePluginDocumentView layout]):
* Plugins.subproj/WebNetscapePluginEmbeddedView.h: Added.
* Plugins.subproj/WebNetscapePluginEmbeddedView.m: Added.
(-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:mime:arguments:]):
(-[WebNetscapePluginEmbeddedView dealloc]):
(-[WebNetscapePluginEmbeddedView viewDidMoveToWindow]):
(-[WebNetscapePluginEmbeddedView start]):
(-[WebNetscapePluginEmbeddedView dataSource]):
* Plugins.subproj/WebNetscapePluginViewPrivate.h: Removed.
* Plugins.subproj/WebPluginDatabase.m:
(-[WebNetscapePluginDatabase init]):
* Plugins.subproj/WebPluginNullEventSender.h:
* Plugins.subproj/WebPluginNullEventSender.m:
(-[WebNetscapePluginNullEventSender initWithPluginView:]):
(-[WebNetscapePluginNullEventSender sendNullEvents]):
* Plugins.subproj/WebPluginStream.h:
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream getFunctionPointersFromPluginView:]):
(-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:]):
(-[WebNetscapePluginStream dealloc]):
(-[WebNetscapePluginStream startLoad]):
(-[WebNetscapePluginStream receivedData:withDataSource:]):
(-[WebNetscapePluginStream handleWillUseUserAgent:forURL:]):
(-[WebNetscapePluginStream handle:didReceiveData:]):
(-[WebNetscapePluginStream handleDidFinishLoading:]):
(-[WebNetscapePluginStream cancel]):
(-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
(-[WebNetscapePluginStream handleDidRedirect:toURL:]):
* Plugins.subproj/WebPluginView.h: Removed.
* Plugins.subproj/WebPluginView.m: Removed.
* Plugins.subproj/npapi.m:
(NPN_GetURLNotify):
(NPN_GetURL):
(NPN_PostURLNotify):
(NPN_PostURL):
(NPN_NewStream):
(NPN_Write):
(NPN_DestroyStream):
(NPN_Status):
(NPN_InvalidateRect):
(NPN_InvalidateRegion):
(NPN_ForceRedraw):
* WebCoreSupport.subproj/WebViewFactory.m:
(-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
(-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebHTMLViewPrivate.m:
(-[NSView _web_stopIfPluginView]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2212 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index 4ef35e2..b32d0f6 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,131 @@
+
+2002-09-30 Chris Blumenberg <cblu at apple.com>
+
+ A ton o' plugin view clean-up and arch changes. Turned WebPluginView into WebBaseNetscapePluginView. New classes WebNetscapePluginEmbeddedView and WebNetscapePluginDocumentView are subclasses of WebBaseNetscapePluginView. WebNetscapePluginDocumentView handles non-HTML plug-in content and WebNetscapePluginEmbeddedView is the WebHTMLView subview.
+
+ Found that we leak the world on complex pages with plug-ins such as macromedia.com and marvel.com when closing the window. Still need to figure this out.
+
+ * Plugins.subproj/WebBaseNetscapePluginView.h: Added.
+ * Plugins.subproj/WebBaseNetscapePluginView.m: Added.
+ (+[WebBaseNetscapePluginView getCarbonEvent:]):
+ (-[WebBaseNetscapePluginView getCarbonEvent:]):
+ (-[WebBaseNetscapePluginView modifiersForEvent:]):
+ (-[WebBaseNetscapePluginView getCarbonEvent:withEvent:]):
+ (-[WebBaseNetscapePluginView keyMessageForEvent:]):
+ (-[WebBaseNetscapePluginView sendEvent:]):
+ (-[WebBaseNetscapePluginView sendActivateEvent:]):
+ (-[WebBaseNetscapePluginView sendUpdateEvent]):
+ (-[WebBaseNetscapePluginView acceptsFirstResponder]):
+ (-[WebBaseNetscapePluginView becomeFirstResponder]):
+ (-[WebBaseNetscapePluginView resignFirstResponder]):
+ (-[WebBaseNetscapePluginView mouseDown:]):
+ (-[WebBaseNetscapePluginView mouseUp:]):
+ (-[WebBaseNetscapePluginView mouseEntered:]):
+ (-[WebBaseNetscapePluginView mouseExited:]):
+ (-[WebBaseNetscapePluginView keyUp:]):
+ (-[WebBaseNetscapePluginView keyDown:]):
+ (-[WebBaseNetscapePluginView isInResponderChain]):
+ (-[WebBaseNetscapePluginView performKeyEquivalent:]):
+ (-[WebBaseNetscapePluginView menuForEvent:]):
+ (-[WebBaseNetscapePluginView setUpWindowAndPort]):
+ (-[WebBaseNetscapePluginView setWindow]):
+ (-[WebBaseNetscapePluginView removeTrackingRect]):
+ (-[WebBaseNetscapePluginView resetTrackingRect]):
+ (-[WebBaseNetscapePluginView start]):
+ (-[WebBaseNetscapePluginView stop]):
+ (-[WebBaseNetscapePluginView dataSource]):
+ (-[WebBaseNetscapePluginView webFrame]):
+ (-[WebBaseNetscapePluginView controller]):
+ (-[WebBaseNetscapePluginView plugin]):
+ (-[WebBaseNetscapePluginView setMIMEType:]):
+ (-[WebBaseNetscapePluginView setBaseURL:]):
+ (-[WebBaseNetscapePluginView setArguments:]):
+ (-[WebBaseNetscapePluginView setMode:]):
+ (-[WebBaseNetscapePluginView initWithFrame:]):
+ (-[WebBaseNetscapePluginView dealloc]):
+ (-[WebBaseNetscapePluginView drawRect:]):
+ (-[WebBaseNetscapePluginView isFlipped]):
+ (-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
+ (-[WebBaseNetscapePluginView viewDidMoveToWindow]):
+ (-[WebBaseNetscapePluginView viewHasMoved:]):
+ (-[WebBaseNetscapePluginView windowWillClose:]):
+ (-[WebBaseNetscapePluginView windowBecameKey:]):
+ (-[WebBaseNetscapePluginView windowResignedKey:]):
+ (-[WebBaseNetscapePluginView defaultsHaveChanged:]):
+ (-[WebBaseNetscapePluginView frameStateChanged:]):
+ (-[WebBaseNetscapePluginView pluginInstance]):
+ (-[WebBaseNetscapePluginView pluginURLFromCString:]):
+ (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
+ (-[WebBaseNetscapePluginView getURLNotify:target:notifyData:]):
+ (-[WebBaseNetscapePluginView getURL:target:]):
+ (-[WebBaseNetscapePluginView postURLNotify:target:len:buf:file:notifyData:]):
+ (-[WebBaseNetscapePluginView postURL:target:len:buf:file:]):
+ (-[WebBaseNetscapePluginView newStream:target:stream:]):
+ (-[WebBaseNetscapePluginView write:len:buffer:]):
+ (-[WebBaseNetscapePluginView destroyStream:reason:]):
+ (-[WebBaseNetscapePluginView status:]):
+ (-[WebBaseNetscapePluginView invalidateRect:]):
+ (-[WebBaseNetscapePluginView invalidateRegion:]):
+ (-[WebBaseNetscapePluginView forceRedraw]):
+ * Plugins.subproj/WebBaseNetscapePluginViewPrivate.h: Added.
+ * Plugins.subproj/WebNetscapePluginDocumentView.h: Added.
+ * Plugins.subproj/WebNetscapePluginDocumentView.m: Added.
+ (-[WebNetscapePluginDocumentView initWithFrame:]):
+ (-[WebNetscapePluginDocumentView dealloc]):
+ (-[WebNetscapePluginDocumentView drawRect:]):
+ (-[WebNetscapePluginDocumentView dataSource]):
+ (-[WebNetscapePluginDocumentView setDataSource:]):
+ (-[WebNetscapePluginDocumentView dataSourceUpdated:]):
+ (-[WebNetscapePluginDocumentView setNeedsLayout:]):
+ (-[WebNetscapePluginDocumentView layout]):
+ * Plugins.subproj/WebNetscapePluginEmbeddedView.h: Added.
+ * Plugins.subproj/WebNetscapePluginEmbeddedView.m: Added.
+ (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:mime:arguments:]):
+ (-[WebNetscapePluginEmbeddedView dealloc]):
+ (-[WebNetscapePluginEmbeddedView viewDidMoveToWindow]):
+ (-[WebNetscapePluginEmbeddedView start]):
+ (-[WebNetscapePluginEmbeddedView dataSource]):
+ * Plugins.subproj/WebNetscapePluginViewPrivate.h: Removed.
+ * Plugins.subproj/WebPluginDatabase.m:
+ (-[WebNetscapePluginDatabase init]):
+ * Plugins.subproj/WebPluginNullEventSender.h:
+ * Plugins.subproj/WebPluginNullEventSender.m:
+ (-[WebNetscapePluginNullEventSender initWithPluginView:]):
+ (-[WebNetscapePluginNullEventSender sendNullEvents]):
+ * Plugins.subproj/WebPluginStream.h:
+ * Plugins.subproj/WebPluginStream.m:
+ (-[WebNetscapePluginStream getFunctionPointersFromPluginView:]):
+ (-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:]):
+ (-[WebNetscapePluginStream dealloc]):
+ (-[WebNetscapePluginStream startLoad]):
+ (-[WebNetscapePluginStream receivedData:withDataSource:]):
+ (-[WebNetscapePluginStream handleWillUseUserAgent:forURL:]):
+ (-[WebNetscapePluginStream handle:didReceiveData:]):
+ (-[WebNetscapePluginStream handleDidFinishLoading:]):
+ (-[WebNetscapePluginStream cancel]):
+ (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
+ (-[WebNetscapePluginStream handleDidRedirect:toURL:]):
+ * Plugins.subproj/WebPluginView.h: Removed.
+ * Plugins.subproj/WebPluginView.m: Removed.
+ * Plugins.subproj/npapi.m:
+ (NPN_GetURLNotify):
+ (NPN_GetURL):
+ (NPN_PostURLNotify):
+ (NPN_PostURL):
+ (NPN_NewStream):
+ (NPN_Write):
+ (NPN_DestroyStream):
+ (NPN_Status):
+ (NPN_InvalidateRect):
+ (NPN_InvalidateRegion):
+ (NPN_ForceRedraw):
+ * WebCoreSupport.subproj/WebViewFactory.m:
+ (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
+ (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
+ * WebKit.pbproj/project.pbxproj:
+ * WebView.subproj/WebHTMLViewPrivate.m:
+ (-[NSView _web_stopIfPluginView]):
+
2002-09-30 Darin Adler <darin at apple.com>
* WebView.subproj/WebDataSource.m: (-[WebDataSource initWithRequest:]):
diff --git a/WebKit/ChangeLog-2002-12-03 b/WebKit/ChangeLog-2002-12-03
index 4ef35e2..b32d0f6 100644
--- a/WebKit/ChangeLog-2002-12-03
+++ b/WebKit/ChangeLog-2002-12-03
@@ -1,3 +1,131 @@
+
+2002-09-30 Chris Blumenberg <cblu at apple.com>
+
+ A ton o' plugin view clean-up and arch changes. Turned WebPluginView into WebBaseNetscapePluginView. New classes WebNetscapePluginEmbeddedView and WebNetscapePluginDocumentView are subclasses of WebBaseNetscapePluginView. WebNetscapePluginDocumentView handles non-HTML plug-in content and WebNetscapePluginEmbeddedView is the WebHTMLView subview.
+
+ Found that we leak the world on complex pages with plug-ins such as macromedia.com and marvel.com when closing the window. Still need to figure this out.
+
+ * Plugins.subproj/WebBaseNetscapePluginView.h: Added.
+ * Plugins.subproj/WebBaseNetscapePluginView.m: Added.
+ (+[WebBaseNetscapePluginView getCarbonEvent:]):
+ (-[WebBaseNetscapePluginView getCarbonEvent:]):
+ (-[WebBaseNetscapePluginView modifiersForEvent:]):
+ (-[WebBaseNetscapePluginView getCarbonEvent:withEvent:]):
+ (-[WebBaseNetscapePluginView keyMessageForEvent:]):
+ (-[WebBaseNetscapePluginView sendEvent:]):
+ (-[WebBaseNetscapePluginView sendActivateEvent:]):
+ (-[WebBaseNetscapePluginView sendUpdateEvent]):
+ (-[WebBaseNetscapePluginView acceptsFirstResponder]):
+ (-[WebBaseNetscapePluginView becomeFirstResponder]):
+ (-[WebBaseNetscapePluginView resignFirstResponder]):
+ (-[WebBaseNetscapePluginView mouseDown:]):
+ (-[WebBaseNetscapePluginView mouseUp:]):
+ (-[WebBaseNetscapePluginView mouseEntered:]):
+ (-[WebBaseNetscapePluginView mouseExited:]):
+ (-[WebBaseNetscapePluginView keyUp:]):
+ (-[WebBaseNetscapePluginView keyDown:]):
+ (-[WebBaseNetscapePluginView isInResponderChain]):
+ (-[WebBaseNetscapePluginView performKeyEquivalent:]):
+ (-[WebBaseNetscapePluginView menuForEvent:]):
+ (-[WebBaseNetscapePluginView setUpWindowAndPort]):
+ (-[WebBaseNetscapePluginView setWindow]):
+ (-[WebBaseNetscapePluginView removeTrackingRect]):
+ (-[WebBaseNetscapePluginView resetTrackingRect]):
+ (-[WebBaseNetscapePluginView start]):
+ (-[WebBaseNetscapePluginView stop]):
+ (-[WebBaseNetscapePluginView dataSource]):
+ (-[WebBaseNetscapePluginView webFrame]):
+ (-[WebBaseNetscapePluginView controller]):
+ (-[WebBaseNetscapePluginView plugin]):
+ (-[WebBaseNetscapePluginView setMIMEType:]):
+ (-[WebBaseNetscapePluginView setBaseURL:]):
+ (-[WebBaseNetscapePluginView setArguments:]):
+ (-[WebBaseNetscapePluginView setMode:]):
+ (-[WebBaseNetscapePluginView initWithFrame:]):
+ (-[WebBaseNetscapePluginView dealloc]):
+ (-[WebBaseNetscapePluginView drawRect:]):
+ (-[WebBaseNetscapePluginView isFlipped]):
+ (-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
+ (-[WebBaseNetscapePluginView viewDidMoveToWindow]):
+ (-[WebBaseNetscapePluginView viewHasMoved:]):
+ (-[WebBaseNetscapePluginView windowWillClose:]):
+ (-[WebBaseNetscapePluginView windowBecameKey:]):
+ (-[WebBaseNetscapePluginView windowResignedKey:]):
+ (-[WebBaseNetscapePluginView defaultsHaveChanged:]):
+ (-[WebBaseNetscapePluginView frameStateChanged:]):
+ (-[WebBaseNetscapePluginView pluginInstance]):
+ (-[WebBaseNetscapePluginView pluginURLFromCString:]):
+ (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
+ (-[WebBaseNetscapePluginView getURLNotify:target:notifyData:]):
+ (-[WebBaseNetscapePluginView getURL:target:]):
+ (-[WebBaseNetscapePluginView postURLNotify:target:len:buf:file:notifyData:]):
+ (-[WebBaseNetscapePluginView postURL:target:len:buf:file:]):
+ (-[WebBaseNetscapePluginView newStream:target:stream:]):
+ (-[WebBaseNetscapePluginView write:len:buffer:]):
+ (-[WebBaseNetscapePluginView destroyStream:reason:]):
+ (-[WebBaseNetscapePluginView status:]):
+ (-[WebBaseNetscapePluginView invalidateRect:]):
+ (-[WebBaseNetscapePluginView invalidateRegion:]):
+ (-[WebBaseNetscapePluginView forceRedraw]):
+ * Plugins.subproj/WebBaseNetscapePluginViewPrivate.h: Added.
+ * Plugins.subproj/WebNetscapePluginDocumentView.h: Added.
+ * Plugins.subproj/WebNetscapePluginDocumentView.m: Added.
+ (-[WebNetscapePluginDocumentView initWithFrame:]):
+ (-[WebNetscapePluginDocumentView dealloc]):
+ (-[WebNetscapePluginDocumentView drawRect:]):
+ (-[WebNetscapePluginDocumentView dataSource]):
+ (-[WebNetscapePluginDocumentView setDataSource:]):
+ (-[WebNetscapePluginDocumentView dataSourceUpdated:]):
+ (-[WebNetscapePluginDocumentView setNeedsLayout:]):
+ (-[WebNetscapePluginDocumentView layout]):
+ * Plugins.subproj/WebNetscapePluginEmbeddedView.h: Added.
+ * Plugins.subproj/WebNetscapePluginEmbeddedView.m: Added.
+ (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:mime:arguments:]):
+ (-[WebNetscapePluginEmbeddedView dealloc]):
+ (-[WebNetscapePluginEmbeddedView viewDidMoveToWindow]):
+ (-[WebNetscapePluginEmbeddedView start]):
+ (-[WebNetscapePluginEmbeddedView dataSource]):
+ * Plugins.subproj/WebNetscapePluginViewPrivate.h: Removed.
+ * Plugins.subproj/WebPluginDatabase.m:
+ (-[WebNetscapePluginDatabase init]):
+ * Plugins.subproj/WebPluginNullEventSender.h:
+ * Plugins.subproj/WebPluginNullEventSender.m:
+ (-[WebNetscapePluginNullEventSender initWithPluginView:]):
+ (-[WebNetscapePluginNullEventSender sendNullEvents]):
+ * Plugins.subproj/WebPluginStream.h:
+ * Plugins.subproj/WebPluginStream.m:
+ (-[WebNetscapePluginStream getFunctionPointersFromPluginView:]):
+ (-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:]):
+ (-[WebNetscapePluginStream dealloc]):
+ (-[WebNetscapePluginStream startLoad]):
+ (-[WebNetscapePluginStream receivedData:withDataSource:]):
+ (-[WebNetscapePluginStream handleWillUseUserAgent:forURL:]):
+ (-[WebNetscapePluginStream handle:didReceiveData:]):
+ (-[WebNetscapePluginStream handleDidFinishLoading:]):
+ (-[WebNetscapePluginStream cancel]):
+ (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
+ (-[WebNetscapePluginStream handleDidRedirect:toURL:]):
+ * Plugins.subproj/WebPluginView.h: Removed.
+ * Plugins.subproj/WebPluginView.m: Removed.
+ * Plugins.subproj/npapi.m:
+ (NPN_GetURLNotify):
+ (NPN_GetURL):
+ (NPN_PostURLNotify):
+ (NPN_PostURL):
+ (NPN_NewStream):
+ (NPN_Write):
+ (NPN_DestroyStream):
+ (NPN_Status):
+ (NPN_InvalidateRect):
+ (NPN_InvalidateRegion):
+ (NPN_ForceRedraw):
+ * WebCoreSupport.subproj/WebViewFactory.m:
+ (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
+ (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
+ * WebKit.pbproj/project.pbxproj:
+ * WebView.subproj/WebHTMLViewPrivate.m:
+ (-[NSView _web_stopIfPluginView]):
+
2002-09-30 Darin Adler <darin at apple.com>
* WebView.subproj/WebDataSource.m: (-[WebDataSource initWithRequest:]):
diff --git a/WebKit/Plugins.subproj/WebPluginView.h b/WebKit/Plugins.subproj/WebBaseNetscapePluginView.h
similarity index 57%
rename from WebKit/Plugins.subproj/WebPluginView.h
rename to WebKit/Plugins.subproj/WebBaseNetscapePluginView.h
index 6d71d19..504f285 100644
--- a/WebKit/Plugins.subproj/WebPluginView.h
+++ b/WebKit/Plugins.subproj/WebBaseNetscapePluginView.h
@@ -1,39 +1,42 @@
/*
- WebPluginView.h
+ WebBaseNetscapePluginView.h
Copyright 2002, Apple, Inc. All rights reserved.
*/
-#import <WebKit/WebKit.h>
-#import <WebKit/WebFrame.h>
-
#import <Cocoa/Cocoa.h>
+
#import <npapi.h>
- at class WebNetscapePluginNullEventSender;
+ at class WebController;
@class WebDataSource;
+ at class WebFrame;
@class WebNetscapePlugin;
- at class WebController;
- at protocol WebDocumentView;
+ at class WebNetscapePluginNullEventSender;
- at interface WebNetscapePluginView : NSView <WebDocumentView>
+
+ at interface WebBaseNetscapePluginView : NSView
{
WebNetscapePluginNullEventSender *eventSender;
- unsigned argsCount;
- char **cAttributes, **cValues;
+
+ WebNetscapePlugin *plugin;
- WebController *webController;
- WebDataSource *webDataSource;
- WebFrame *webFrame;
+ int mode;
+ unsigned argsCount;
+ char **cAttributes;
+ char **cValues;
+
NPP instance;
NPWindow window;
NP_Port nPort;
NPP_t instanceStruct;
-
- BOOL canRestart, isHidden, isStarted, fullMode, needsLayout;
+
+ BOOL canRestart;
+ BOOL isHidden;
+ BOOL isStarted;
- NSString *mime;
- NSURL *srcURL, *baseURL;
+ NSString *MIMEType;
+ NSURL *baseURL;
NSTrackingRectTag trackingTag;
NSMutableArray *streams;
NSMutableDictionary *notificationData;
@@ -53,22 +56,26 @@
NPP_SetValueProcPtr NPP_SetValue;
}
-- (id)initWithFrame:(NSRect)r plugin:(WebNetscapePlugin *)plugin URL:(NSURL *)URL baseURL:(NSURL *)baseURL mime:(NSString *)mimeType arguments:(NSDictionary *)arguments;
+- (void)start;
- (void)stop;
-- (WebDataSource *)webDataSource;
-- (WebController *)webController;
+- (WebFrame *)webFrame;
+- (WebDataSource *)dataSource;
+- (WebController *)controller;
+ (void)getCarbonEvent:(EventRecord *)carbonEvent;
- (BOOL)sendEvent:(EventRecord *)event;
- (BOOL)sendUpdateEvent;
- (NPP)pluginInstance;
-- (NPP_NewStreamProcPtr)NPP_NewStream;
-- (NPP_WriteReadyProcPtr)NPP_WriteReady;
-- (NPP_WriteProcPtr)NPP_Write;
-- (NPP_StreamAsFileProcPtr)NPP_StreamAsFile;
-- (NPP_DestroyStreamProcPtr)NPP_DestroyStream;
-- (NPP_URLNotifyProcPtr)NPP_URLNotify;
+
+- (void)setUpWindowAndPort;
+
+- (WebNetscapePlugin *)plugin;
+- (void)setPlugin:(WebNetscapePlugin *)thePlugin;
+- (void)setMIMEType:(NSString *)theMIMEType;
+- (void)setBaseURL:(NSURL *)theBaseURL;
+- (void)setArguments:(NSDictionary *)theArguments;
+- (void)setMode:(int)theMode;
@end
diff --git a/WebKit/Plugins.subproj/WebPluginView.m b/WebKit/Plugins.subproj/WebBaseNetscapePluginView.m
similarity index 84%
rename from WebKit/Plugins.subproj/WebPluginView.m
rename to WebKit/Plugins.subproj/WebBaseNetscapePluginView.m
index bcdd3a0..e535756 100644
--- a/WebKit/Plugins.subproj/WebPluginView.m
+++ b/WebKit/Plugins.subproj/WebBaseNetscapePluginView.m
@@ -1,10 +1,11 @@
/*
- WebPluginView.mm
+ WebBaseNetscapePluginView.m
Copyright 2002, Apple, Inc. All rights reserved.
*/
#define USE_CARBON 1
+#import <WebKit/WebBaseNetscapePluginView.h>
#import <WebKit/WebController.h>
#import <WebKit/WebControllerPrivate.h>
#import <WebKit/WebDataSource.h>
@@ -13,25 +14,23 @@
#import <WebKit/WebKitLogging.h>
#import <WebKit/WebNullPluginView.h>
#import <WebKit/WebNSViewExtras.h>
-#import <WebKit/WebPluginDatabase.h>
+
#import <WebKit/WebPluginStream.h>
#import <WebKit/WebPluginNullEventSender.h>
-#import <WebKit/WebPluginView.h>
#import <WebKit/WebPlugin.h>
#import <WebKit/WebView.h>
#import <WebKit/WebWindowOperationsDelegate.h>
-#import <WebFoundation/WebAssertions.h>
-#import <WebFoundation/WebError.h>
+//#import <WebFoundation/WebAssertions.h>
+#import <WebFoundation/WebFoundation.h>
#import <WebFoundation/WebNSStringExtras.h>
#import <WebFoundation/WebNSURLExtras.h>
-#import <WebFoundation/WebResourceRequest.h>
#import <AppKit/NSEvent_Private.h>
#import <AppKit/NSWindow_Private.h>
#import <Carbon/Carbon.h>
- at implementation WebNetscapePluginView
+ at implementation WebBaseNetscapePluginView
#pragma mark EVENTS
@@ -116,15 +115,15 @@
- (BOOL)sendEvent:(EventRecord *)event
{
- BOOL defers = [webController _defersCallbacks];
+ BOOL defers = [[self controller] _defersCallbacks];
if (!defers) {
- [webController _setDefersCallbacks:YES];
+ [[self controller] _setDefersCallbacks:YES];
}
BOOL acceptedEvent = NPP_HandleEvent(instance, event);
if (!defers) {
- [webController _setDefersCallbacks:NO];
+ [[self controller] _setDefersCallbacks:NO];
}
return acceptedEvent;
@@ -370,92 +369,7 @@
return nil;
}
-#pragma mark WEB_PLUGIN_VIEW
-
-- (id)initWithFrame:(NSRect)r plugin:(WebNetscapePlugin *)plugin URL:(NSURL *)theURL baseURL:(NSURL *)theBaseURL mime:(NSString *)mimeType arguments:(NSDictionary *)arguments
-{
- [super initWithFrame:r];
-
- instance = &instanceStruct;
- instance->ndata = self;
-
- canRestart = YES;
-
- mime = [mimeType retain];
- srcURL = [theURL retain];
- baseURL = [theBaseURL retain];
-
- // load the plug-in if it is not already loaded
- if (![plugin load])
- return nil;
-
- // copy function pointers
- NPP_New = [plugin NPP_New];
- NPP_Destroy = [plugin NPP_Destroy];
- NPP_SetWindow = [plugin NPP_SetWindow];
- NPP_NewStream = [plugin NPP_NewStream];
- NPP_WriteReady = [plugin NPP_WriteReady];
- NPP_Write = [plugin NPP_Write];
- NPP_StreamAsFile = [plugin NPP_StreamAsFile];
- NPP_DestroyStream = [plugin NPP_DestroyStream];
- NPP_HandleEvent = [plugin NPP_HandleEvent];
- NPP_URLNotify = [plugin NPP_URLNotify];
- NPP_GetValue = [plugin NPP_GetValue];
- NPP_SetValue = [plugin NPP_SetValue];
- NPP_Print = [plugin NPP_Print];
-
- LOG(Plugins, "%@", arguments);
-
- // Convert arguments dictionary to 2 string arrays.
- // These arrays are passed to NPP_New, but the strings need to be
- // modifiable and live the entire life of the plugin.
-
- // The Java plug-in requires the first argument to be the base URL
- if ([mime isEqualToString:@"application/x-java-applet"]) {
- cAttributes = (char **)malloc(([arguments count] + 1) * sizeof(char *));
- cValues = (char **)malloc(([arguments count] + 1) * sizeof(char *));
- cAttributes[0] = strdup("DOCBASE");
- cValues[0] = strdup([[baseURL absoluteString] UTF8String]);
- argsCount++;
- } else {
- cAttributes = (char **)malloc([arguments count] * sizeof(char *));
- cValues = (char **)malloc([arguments count] * sizeof(char *));
- }
-
- NSEnumerator *e = [arguments keyEnumerator];
- NSString *key;
- while ((key = [e nextObject])) {
- cAttributes[argsCount] = strdup([key UTF8String]);
- cValues[argsCount] = strdup([[arguments objectForKey:key] UTF8String]);
- argsCount++;
- }
-
- streams = [[NSMutableArray alloc] init];
- notificationData = [[NSMutableDictionary alloc] init];
-
- return self;
-}
-
--(void)dealloc
-{
- unsigned i;
-
- [self stop];
-
- for (i = 0; i < argsCount; i++) {
- free(cAttributes[i]);
- free(cValues[i]);
- }
- [streams removeAllObjects];
- [streams release];
- [mime release];
- [srcURL release];
- [baseURL release];
- [notificationData release];
- free(cAttributes);
- free(cValues);
- [super dealloc];
-}
+#pragma mark WEB_NETSCAPE_PLUGIN
- (void)setUpWindowAndPort
{
@@ -533,15 +447,16 @@
-(void)start
{
- if (isStarted || !canRestart || NPP_New == 0)
+ if (isStarted || !canRestart || NPP_New == 0){
return;
+ }
isStarted = YES;
#if !LOG_DISABLED
NPError npErr =
#endif
- NPP_New((char *)[mime cString], instance, fullMode ? NP_FULL : NP_EMBED, argsCount, cAttributes, cValues, NULL);
+ NPP_New((char *)[MIMEType cString], instance, mode, argsCount, cAttributes, cValues, NULL);
LOG(Plugins, "NPP_New: %d", npErr);
// Create a WindowRef is one doesn't already exist
@@ -566,22 +481,9 @@
name:NSWindowDidResignKeyNotification object:theWindow];
[notificationCenter addObserver:self selector:@selector(defaultsHaveChanged:)
name:NSUserDefaultsDidChangeNotification object:nil];
-
- if ([theWindow isKeyWindow])
- [self sendActivateEvent:YES];
- WebView *webView = (WebView *)[self _web_superviewOfClass:[WebView class]];
- webController = [[webView controller] retain];
- webFrame = [[webController frameForView:webView] retain];
- webDataSource = [[webFrame dataSource] retain];
-
- if(srcURL){
- WebNetscapePluginStream *stream = [[WebNetscapePluginStream alloc] initWithURL:srcURL pluginPointer:instance];
- if(stream){
- [stream startLoad];
- [streams addObject:stream];
- [stream release];
- }
+ if ([theWindow isKeyWindow]){
+ [self sendActivateEvent:YES];
}
eventSender = [[WebNetscapePluginNullEventSender alloc] initWithPluginView:self];
@@ -592,9 +494,11 @@
- (void)stop
{
[self removeTrackingRect];
-
- if (!isStarted)
+
+ if (!isStarted){
return;
+ }
+
isStarted = NO;
// Stop any active streams
@@ -610,57 +514,36 @@
// Stop notifications
[[NSNotificationCenter defaultCenter] removeObserver:self];
- // Release web objects here to avoid circular retain
- [webController release];
- [webFrame release];
- [webDataSource release];
-
-#if !LOG_DISABLED
- NPError npErr =
-#endif
- NPP_Destroy(instance, NULL);
+ NPError npErr = NPP_Destroy(instance, NULL);
LOG(Plugins, "NPP_Destroy: %d", npErr);
}
-- (WebDataSource *)webDataSource
+- (WebDataSource *)dataSource
{
- return webDataSource;
+ // Do nothing. Overridden by subclasses.
+ return nil;
}
-- (WebController *)webController
+- (WebFrame *)webFrame
{
- return webController;
+ return [[self dataSource] webFrame];
}
-#pragma mark WEB_DOCUMENT_VIEW
+- (WebController *)controller
+{
+ return [[self webFrame] controller];
+}
-- initWithFrame:(NSRect)frame
+- (WebNetscapePlugin *)plugin
{
- [super initWithFrame:frame];
-
- instance = &instanceStruct;
- instance->ndata = self;
-
- canRestart = YES;
- fullMode = YES;
-
- [self setFrame:NSMakeRect(0, 0, 1, 1)];
-
- return self;
+ return plugin;
}
-- (void)setDataSource:(WebDataSource *)dataSource
+- (void)setPlugin:(WebNetscapePlugin *)thePlugin;
{
- [webDataSource release];
- webDataSource = [dataSource retain];
-
- mime = [[dataSource contentType] retain];
- WebNetscapePlugin *plugin = [[WebNetscapePluginDatabase installedPlugins] pluginForMIMEType:mime];
-
- if (![plugin load])
- return;
-
- // copy function pointers
+ [plugin release];
+ plugin = [thePlugin retain];
+
NPP_New = [plugin NPP_New];
NPP_Destroy = [plugin NPP_Destroy];
NPP_SetWindow = [plugin NPP_SetWindow];
@@ -674,38 +557,93 @@
NPP_GetValue = [plugin NPP_GetValue];
NPP_SetValue = [plugin NPP_SetValue];
NPP_Print = [plugin NPP_Print];
-
- [self start];
}
-- (void)dataSourceUpdated:(WebDataSource *)dataSource
+- (void)setMIMEType:(NSString *)theMIMEType
{
+ [MIMEType release];
+ MIMEType = [theMIMEType retain];
}
-
-- (void)setNeedsLayout:(BOOL)flag
+
+- (void)setBaseURL:(NSURL *)theBaseURL
{
- needsLayout = flag;
+ [baseURL release];
+ baseURL = [theBaseURL retain];
}
-- (void)layout
+- (void)setArguments:(NSDictionary *)arguments
{
- NSRect superFrame = [[self _web_superviewOfClass:[WebView class]] frame];
-
- [self setFrame:NSMakeRect(0, 0, superFrame.size.width, superFrame.size.height)];
- [self setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable];
- [self setUpWindowAndPort];
+ LOG(Plugins, "%@", arguments);
- needsLayout = NO;
+ // Convert arguments dictionary to 2 string arrays.
+ // These arrays are passed to NPP_New, but the strings need to be
+ // modifiable and live the entire life of the plugin.
+
+ // The Java plug-in requires the first argument to be the base URL
+ if ([MIMEType isEqualToString:@"application/x-java-applet"]) {
+ cAttributes = (char **)malloc(([arguments count] + 1) * sizeof(char *));
+ cValues = (char **)malloc(([arguments count] + 1) * sizeof(char *));
+ cAttributes[0] = strdup("DOCBASE");
+ cValues[0] = strdup([[baseURL absoluteString] UTF8String]);
+ argsCount++;
+ } else {
+ cAttributes = (char **)malloc([arguments count] * sizeof(char *));
+ cValues = (char **)malloc([arguments count] * sizeof(char *));
+ }
+
+ NSEnumerator *e = [arguments keyEnumerator];
+ NSString *key;
+ while ((key = [e nextObject])) {
+ cAttributes[argsCount] = strdup([key UTF8String]);
+ cValues[argsCount] = strdup([[arguments objectForKey:key] UTF8String]);
+ argsCount++;
+ }
+}
+
+- (void)setMode:(int)theMode
+{
+ mode = theMode;
}
#pragma mark NSVIEW
-- (void)drawRect:(NSRect)rect
+- initWithFrame:(NSRect)frame
+{
+ [super initWithFrame:frame];
+
+ instance = &instanceStruct;
+ instance->ndata = self;
+
+ canRestart = YES;
+
+ streams = [[NSMutableArray alloc] init];
+ notificationData = [[NSMutableDictionary alloc] init];
+
+ return self;
+}
+
+-(void)dealloc
{
- if(needsLayout){
- [self layout];
+ unsigned i;
+
+ [self stop];
+
+ for (i = 0; i < argsCount; i++) {
+ free(cAttributes[i]);
+ free(cValues[i]);
}
+ [streams removeAllObjects];
+ [streams release];
+ [MIMEType release];
+ [baseURL release];
+ [notificationData release];
+ free(cAttributes);
+ free(cValues);
+ [super dealloc];
+}
+- (void)drawRect:(NSRect)rect
+{
if(isStarted){
[self sendUpdateEvent];
}
@@ -728,8 +666,6 @@
{
if (![self window]){
[self stop];
- }else{
- [self start];
}
[self resetTrackingRect];
@@ -786,9 +722,10 @@
frame = [notification object];
URL = [[[frame dataSource] request] URL];
notifyDataValue = [notificationData objectForKey:URL];
-
- if(!notifyDataValue)
+
+ if(!notifyDataValue){
return;
+ }
notifyData = [notifyDataValue pointerValue];
frameState = [[[notification userInfo] objectForKey:WebCurrentFrameState] intValue];
@@ -798,51 +735,15 @@
//FIXME: Need to send other NPReasons
}
-#pragma mark PLUGIN-TO-BROWSER
-
- (NPP)pluginInstance
{
return instance;
}
-- (NPP_NewStreamProcPtr)NPP_NewStream
-{
- return NPP_NewStream;
-}
-
-- (NPP_WriteReadyProcPtr)NPP_WriteReady
-{
- return NPP_WriteReady;
-}
-
-- (NPP_WriteProcPtr)NPP_Write
-{
- return NPP_Write;
-}
-
-- (NPP_StreamAsFileProcPtr)NPP_StreamAsFile
-{
- return NPP_StreamAsFile;
-}
-
-- (NPP_DestroyStreamProcPtr)NPP_DestroyStream
-{
- return NPP_DestroyStream;
-}
-
-- (NPP_URLNotifyProcPtr)NPP_URLNotify
-{
- return NPP_URLNotify;
-}
-
-- (NPP_HandleEventProcPtr)NPP_HandleEvent
-{
- return NPP_HandleEvent;
-}
@end
- at implementation WebNetscapePluginView (WebNPPCallbacks)
+ at implementation WebBaseNetscapePluginView (WebNPPCallbacks)
- (NSURL *)pluginURLFromCString:(const char *)URLCString
{
@@ -869,28 +770,30 @@
NSURL *URL;
URL = [request URL];
-
- if(!URL)
+
+ if(!URL){
return NPERR_INVALID_URL;
+ }
if(!target){
stream = [[WebNetscapePluginStream alloc] initWithURL:URL pluginPointer:instance notifyData:notifyData];
if(stream){
- [stream startLoad];
[streams addObject:stream];
+ [stream startLoad];
[stream release];
}else{
return NPERR_INVALID_URL;
}
}else{
- frame = [webFrame frameNamed:target];
+ frame = [[self webFrame] frameNamed:target];
if(!frame){
// FIXME: Why is it OK to just discard all the attributes in this case?
- [[webController windowOperationsDelegate] openNewWindowWithURL:URL referrer:nil];
+ [[[self controller] windowOperationsDelegate] openNewWindowWithURL:URL referrer:nil];
// FIXME: Need to send NPP_URLNotify at the right time.
// FIXME: Need to name new frame
- if(notifyData)
+ if(notifyData){
NPP_URLNotify(instance, [[URL absoluteString] cString], NPRES_DONE, notifyData);
+ }
}else{
if(notifyData){
if(![target isEqualToString:@"_self"] && ![target isEqualToString:@"_current"] &&
@@ -1042,8 +945,8 @@
-(void)status:(const char *)message
{
LOG(Plugins, "NPN_Status: %s", message);
- if(webController){
- [[webController windowOperationsDelegate] setStatusText:[NSString stringWithCString:message]];
+ if([self controller]){
+ [[[self controller] windowOperationsDelegate] setStatusText:[NSString stringWithCString:message]];
}
}
diff --git a/WebKit/Plugins.subproj/WebNetscapePluginViewPrivate.h b/WebKit/Plugins.subproj/WebBaseNetscapePluginViewPrivate.h
similarity index 82%
rename from WebKit/Plugins.subproj/WebNetscapePluginViewPrivate.h
rename to WebKit/Plugins.subproj/WebBaseNetscapePluginViewPrivate.h
index 3f5e2ab..b780c84 100644
--- a/WebKit/Plugins.subproj/WebNetscapePluginViewPrivate.h
+++ b/WebKit/Plugins.subproj/WebBaseNetscapePluginViewPrivate.h
@@ -6,10 +6,13 @@
// Copyright (c) 2002 Apple Computer, Inc. All rights reserved.
//
-#import <WebPluginView.h>
+#import <WebBaseNetscapePluginView.h>
- at interface WebNetscapePluginView (WebNPPCallbacks)
+ at class WebResourceRequest;
+ at interface WebBaseNetscapePluginView (WebNPPCallbacks)
+
+- (NPError)loadRequest:(WebResourceRequest *)request inTarget:(NSString *)target withNotifyData:(void *)notifyData;
- (NPError)getURLNotify:(const char *)URL target:(const char *)target notifyData:(void *)notifyData;
- (NPError)getURL:(const char *)URL target:(const char *)target;
- (NPError)postURLNotify:(const char *)URL target:(const char *)target len:(UInt32)len buf:(const char *)buf file:(NPBool)file notifyData:(void *)notifyData;
diff --git a/WebKit/Plugins.subproj/WebNetscapePluginDocumentView.h b/WebKit/Plugins.subproj/WebNetscapePluginDocumentView.h
new file mode 100644
index 0000000..6792d28
--- /dev/null
+++ b/WebKit/Plugins.subproj/WebNetscapePluginDocumentView.h
@@ -0,0 +1,22 @@
+//
+// WebNetscapePluginDocumentView.h
+// WebKit
+//
+// Created by Administrator on Mon Sep 30 2002.
+// Copyright (c) 2002 __MyCompanyName__. All rights reserved.
+//
+
+#import <AppKit/AppKit.h>
+
+#import <WebKit/WebBaseNetscapePluginView.h>
+
+ at protocol WebDocumentView;
+
+ at interface WebNetscapePluginDocumentView : WebBaseNetscapePluginView <WebDocumentView>
+{
+ WebDataSource *dataSource;
+
+ BOOL needsLayout;
+}
+
+ at end
diff --git a/WebKit/Plugins.subproj/WebNetscapePluginDocumentView.m b/WebKit/Plugins.subproj/WebNetscapePluginDocumentView.m
new file mode 100644
index 0000000..b4b7bf5
--- /dev/null
+++ b/WebKit/Plugins.subproj/WebNetscapePluginDocumentView.m
@@ -0,0 +1,95 @@
+//
+// WebNetscapePluginDocumentView.m
+// WebKit
+//
+// Created by Administrator on Mon Sep 30 2002.
+// Copyright (c) 2002 __MyCompanyName__. All rights reserved.
+//
+
+#import <WebKit/WebController.h>
+#import <WebKit/WebDataSource.h>
+#import <WebKit/WebDocument.h>
+#import <WebKit/WebFrame.h>
+#import <WebKit/WebNetscapePluginDocumentView.h>
+#import <WebKit/WebNSViewExtras.h>
+#import <WebKit/WebPlugin.h>
+#import <WebKit/WebPluginDatabase.h>
+#import <WebKit/WebView.h>
+
+ at implementation WebNetscapePluginDocumentView
+
+- initWithFrame:(NSRect)frame
+{
+ [super initWithFrame:frame];
+
+ [self setFrame:NSMakeRect(0, 0, 1, 1)];
+
+ [self setMode:NP_FULL];
+
+ needsLayout = YES;
+
+ return self;
+}
+
+- (void)dealloc
+{
+ [dataSource release];
+ [super dealloc];
+}
+
+- (void)drawRect:(NSRect)rect
+{
+ if(needsLayout){
+ [self layout];
+ }
+
+ [super drawRect:rect];
+}
+
+- (WebDataSource *)dataSource
+{
+ return dataSource;
+}
+
+- (void)setDataSource:(WebDataSource *)theDataSource
+{
+ [dataSource release];
+ dataSource = [theDataSource retain];
+
+ NSString *MIME = [dataSource contentType];
+
+ [self setMIMEType:MIME];
+ [self setBaseURL:[dataSource URL]];
+
+ WebNetscapePlugin *thePlugin = [[WebNetscapePluginDatabase installedPlugins] pluginForMIMEType:MIME];
+
+ if (![thePlugin load]){
+ return;
+ }
+
+ [self setPlugin:thePlugin];
+
+ [self start];
+}
+
+- (void)dataSourceUpdated:(WebDataSource *)dataSource
+{
+}
+
+- (void)setNeedsLayout:(BOOL)flag
+{
+ needsLayout = flag;
+}
+
+- (void)layout
+{
+ NSRect superFrame = [[self _web_superviewOfClass:[WebView class]] frame];
+
+ [self setFrame:NSMakeRect(0, 0, superFrame.size.width, superFrame.size.height)];
+ [self setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable];
+ [self setUpWindowAndPort];
+
+ needsLayout = NO;
+}
+
+ at end
diff --git a/WebKit/Plugins.subproj/WebNetscapePluginEmbeddedView.h b/WebKit/Plugins.subproj/WebNetscapePluginEmbeddedView.h
new file mode 100644
index 0000000..24bffa8
--- /dev/null
+++ b/WebKit/Plugins.subproj/WebNetscapePluginEmbeddedView.h
@@ -0,0 +1,25 @@
+//
+// WebNetscapePluginEmbeddedView.h
+// WebKit
+//
+// Created by Administrator on Mon Sep 30 2002.
+// Copyright (c) 2002 __MyCompanyName__. All rights reserved.
+//
+
+#import <AppKit/AppKit.h>
+
+#import <WebKit/WebBaseNetscapePluginView.h>
+
+ at interface WebNetscapePluginEmbeddedView : WebBaseNetscapePluginView
+{
+ NSURL *URL;
+}
+
+- (id)initWithFrame:(NSRect)r
+ plugin:(WebNetscapePlugin *)plugin
+ URL:(NSURL *)URL
+ baseURL:(NSURL *)baseURL
+ mime:(NSString *)mimeType
+ arguments:(NSDictionary *)arguments;
+
+ at end
diff --git a/WebKit/Plugins.subproj/WebNetscapePluginEmbeddedView.m b/WebKit/Plugins.subproj/WebNetscapePluginEmbeddedView.m
new file mode 100644
index 0000000..8dd9b50
--- /dev/null
+++ b/WebKit/Plugins.subproj/WebNetscapePluginEmbeddedView.m
@@ -0,0 +1,80 @@
+//
+// WebNetscapePluginEmbeddedView.m
+// WebKit
+//
+// Created by Administrator on Mon Sep 30 2002.
+// Copyright (c) 2002 __MyCompanyName__. All rights reserved.
+//
+
+#import <WebKit/WebBaseNetscapePluginViewPrivate.h>
+#import <WebKit/WebController.h>
+#import <WebKit/WebFrame.h>
+#import <WebKit/WebNetscapePluginEmbeddedView.h>
+#import <WebKit/WebNSViewExtras.h>
+#import <WebKit/WebPlugin.h>
+#import <WebKit/WebView.h>
+
+#import <WebFoundation/WebFoundation.h>
+
+ at implementation WebNetscapePluginEmbeddedView
+
+- (id)initWithFrame:(NSRect)frame
+ plugin:(WebNetscapePlugin *)thePlugin
+ URL:(NSURL *)theURL
+ baseURL:(NSURL *)theBaseURL
+ mime:(NSString *)mimeType
+ arguments:(NSDictionary *)arguments
+{
+ [super initWithFrame:frame];
+
+ URL = [theURL retain];
+
+ [self setMIMEType:mimeType];
+ [self setBaseURL:theBaseURL];
+ [self setArguments:arguments];
+ [self setMode:NP_EMBED];
+
+ // load the plug-in if it is not already loaded
+ if (![thePlugin load]){
+ return nil;
+ }
+
+ [self setPlugin:thePlugin];
+
+ return self;
+}
+
+- (void)dealloc
+{
+ [URL release];
+ [super dealloc];
+}
+
+- (void)viewDidMoveToWindow
+{
+ [super viewDidMoveToWindow];
+
+ if ([self window]){
+ [self start];
+ }
+}
+
+- (void)start
+{
+ [super start];
+
+ if(URL){
+ WebResourceRequest *request = [WebResourceRequest requestWithURL:URL];
+ [self loadRequest:request inTarget:nil withNotifyData:nil];
+ }
+}
+
+- (WebDataSource *)dataSource
+{
+ WebView *webView = (WebView *)[self _web_superviewOfClass:[WebView class]];
+ WebFrame *webFrame = [[webView controller] frameForView:webView];
+
+ return [webFrame dataSource];
+}
+
+ at end
diff --git a/WebKit/Plugins.subproj/WebPluginDatabase.m b/WebKit/Plugins.subproj/WebPluginDatabase.m
index 1b461b4..b0d6fd4 100644
--- a/WebKit/Plugins.subproj/WebPluginDatabase.m
+++ b/WebKit/Plugins.subproj/WebPluginDatabase.m
@@ -23,14 +23,14 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#import <WebKit/WebPluginDatabase.h>
-
+#import <WebKit/WebDataSource.h>
+#import <WebKit/WebKitLogging.h>
+#import <WebKit/WebNetscapePluginDocumentView.h>
#import <WebKit/WebPlugin.h>
+#import <WebKit/WebPluginDatabase.h>
#import <WebKit/WebPluginStream.h>
-#import <WebKit/WebPluginView.h>
#import <WebKit/WebView.h>
-#import <WebKit/WebDataSource.h>
-#import <WebKit/WebKitLogging.h>
+
@implementation WebNetscapePluginDatabase
@@ -172,7 +172,7 @@ static NSArray *pluginLocations(void)
// register plug-in WebDocumentViews and WebDocumentRepresentations
NSArray *mimes = [self MIMETypes];
for (i = 0; i < [mimes count]; i++) {
- [WebView registerViewClass:[WebNetscapePluginView class] forMIMEType:[mimes objectAtIndex:i]];
+ [WebView registerViewClass:[WebNetscapePluginDocumentView class] forMIMEType:[mimes objectAtIndex:i]];
[WebDataSource registerRepresentationClass:[WebNetscapePluginStream class] forMIMEType:[mimes objectAtIndex:i]];
}
diff --git a/WebKit/Plugins.subproj/WebPluginNullEventSender.h b/WebKit/Plugins.subproj/WebPluginNullEventSender.h
index 1b516ea..c851359 100644
--- a/WebKit/Plugins.subproj/WebPluginNullEventSender.h
+++ b/WebKit/Plugins.subproj/WebPluginNullEventSender.h
@@ -5,14 +5,14 @@
#import <Foundation/Foundation.h>
- at class WebNetscapePluginView;
+ at class WebBaseNetscapePluginView;
@interface WebNetscapePluginNullEventSender : NSObject
{
- WebNetscapePluginView *view;
+ WebBaseNetscapePluginView *view;
}
--(id)initWithPluginView:(WebNetscapePluginView *)pluginView;
+-(id)initWithPluginView:(WebBaseNetscapePluginView *)pluginView;
-(void)sendNullEvents;
-(void)stop;
diff --git a/WebKit/Plugins.subproj/WebPluginNullEventSender.m b/WebKit/Plugins.subproj/WebPluginNullEventSender.m
index ac6f992..cdec999 100644
--- a/WebKit/Plugins.subproj/WebPluginNullEventSender.m
+++ b/WebKit/Plugins.subproj/WebPluginNullEventSender.m
@@ -3,15 +3,17 @@
Copyright 2002, Apple, Inc. All rights reserved.
*/
-#import "WebPluginNullEventSender.h"
-#import <Carbon/Carbon.h>
-#import <WebFoundation/WebAssertions.h>
+#import <WebKit/WebBaseNetscapePluginView.h>
#import <WebKit/WebKitLogging.h>
-#import <WebKit/WebPluginView.h>
+#import <WebKit/WebPluginNullEventSender.h>
+
+#import <WebFoundation/WebAssertions.h>
+
+#import <Carbon/Carbon.h>
@implementation WebNetscapePluginNullEventSender
--(id)initWithPluginView:(WebNetscapePluginView *)pluginView
+-(id)initWithPluginView:(WebBaseNetscapePluginView *)pluginView
{
[super init];
view = [pluginView retain];
@@ -28,7 +30,7 @@
{
EventRecord event;
- [WebNetscapePluginView getCarbonEvent:&event];
+ [WebBaseNetscapePluginView getCarbonEvent:&event];
// plug-in should not react to cursor position when not active.
// FIXME: How does passing a v and h of 0 prevent it from reacting to the cursor position?
diff --git a/WebKit/Plugins.subproj/WebPluginStream.h b/WebKit/Plugins.subproj/WebPluginStream.h
index 198d058..0d590fb 100644
--- a/WebKit/Plugins.subproj/WebPluginStream.h
+++ b/WebKit/Plugins.subproj/WebPluginStream.h
@@ -7,16 +7,16 @@
#import <WebKit/npapi.h>
+ at class WebBaseNetscapePluginView;
@class WebDataSource;
@class WebResourceHandle;
@class WebResourceRequest;
- at class WebNetscapePluginView;
@protocol WebDocumentRepresentation;
@interface WebNetscapePluginStream : NSObject <WebDocumentRepresentation>
{
- WebNetscapePluginView *view;
+ WebBaseNetscapePluginView *view;
NSURL *URL;
NPP instance;
uint16 transferMode;
@@ -40,7 +40,6 @@
NPP_URLNotifyProcPtr NPP_URLNotify;
}
-- initWithURL:(NSURL *)theURL pluginPointer:(NPP)thePluginPointer;
- initWithURL:(NSURL *)theURL pluginPointer:(NPP)thePluginPointer notifyData:(void *)theNotifyData;
- (void)startLoad;
diff --git a/WebKit/Plugins.subproj/WebPluginStream.m b/WebKit/Plugins.subproj/WebPluginStream.m
index dea40f2..eb4e179 100644
--- a/WebKit/Plugins.subproj/WebPluginStream.m
+++ b/WebKit/Plugins.subproj/WebPluginStream.m
@@ -3,15 +3,18 @@
Copyright (c) 2002, Apple, Inc. All rights reserved.
*/
-#import <WebKit/WebPluginStream.h>
-#import <WebKit/WebPluginView.h>
-#import <WebKit/WebLoadProgress.h>
-#import <WebKit/WebView.h>
+
+#import <WebKit/WebBaseNetscapePluginView.h>
+#import <WebKit/WebControllerPrivate.h>
#import <WebKit/WebDataSource.h>
#import <WebKit/WebDataSourcePrivate.h>
-#import <WebKit/WebControllerPrivate.h>
+#import <WebKit/WebFrame.h>
#import <WebKit/WebKitLogging.h>
+#import <WebKit/WebLoadProgress.h>
+#import <WebKit/WebPlugin.h>
+#import <WebKit/WebPluginStream.h>
+#import <WebKit/WebView.h>
#import <WebFoundation/WebError.h>
#import <WebFoundation/WebNSFileManagerExtras.h>
@@ -31,16 +34,18 @@
@implementation WebNetscapePluginStream
-- (void) getFunctionPointersFromPluginView:(WebNetscapePluginView *)pluginView
+- (void) getFunctionPointersFromPluginView:(WebBaseNetscapePluginView *)pluginView
{
ASSERT(pluginView);
- NPP_NewStream = [pluginView NPP_NewStream];
- NPP_WriteReady = [pluginView NPP_WriteReady];
- NPP_Write = [pluginView NPP_Write];
- NPP_StreamAsFile = [pluginView NPP_StreamAsFile];
- NPP_DestroyStream = [pluginView NPP_DestroyStream];
- NPP_URLNotify = [pluginView NPP_URLNotify];
+ WebNetscapePlugin *plugin = [pluginView plugin];
+
+ NPP_NewStream = [plugin NPP_NewStream];
+ NPP_WriteReady = [plugin NPP_WriteReady];
+ NPP_Write = [plugin NPP_Write];
+ NPP_StreamAsFile = [plugin NPP_StreamAsFile];
+ NPP_DestroyStream = [plugin NPP_DestroyStream];
+ NPP_URLNotify = [plugin NPP_URLNotify];
}
- init
@@ -52,11 +57,6 @@
return self;
}
-- initWithURL:(NSURL *)theURL pluginPointer:(NPP)thePluginPointer
-{
- return [self initWithURL:theURL pluginPointer:thePluginPointer notifyData:nil];
-}
-
- initWithURL:(NSURL *)theURL pluginPointer:(NPP)thePluginPointer notifyData:(void *)theNotifyData
{
[super init];
@@ -71,7 +71,7 @@
return nil;
}
- view = [(WebNetscapePluginView *)thePluginPointer->ndata retain];
+ view = [(WebBaseNetscapePluginView *)thePluginPointer->ndata retain];
ASSERT(view);
URL = [theURL retain];
instance = thePluginPointer;
@@ -89,9 +89,8 @@
{
[self stop];
- NSFileManager *fileManager = [NSFileManager defaultManager];
if(path){
- [fileManager removeFileAtPath:path handler:nil];
+ [[NSFileManager defaultManager] removeFileAtPath:path handler:nil];
[path release];
}
free((void *)npStream.URL);
@@ -104,7 +103,7 @@
- (void)startLoad
{
resource = [[WebResourceHandle alloc] initWithRequest:request delegate:self];
- [[view webController] _didStartLoading:[resource URL]];
+ [[view controller] _didStartLoading:[resource URL]];
}
- (void)stop
@@ -242,7 +241,7 @@
ASSERT([dataSource webFrame]);
ASSERT([[dataSource webFrame] webView]);
ASSERT([[[dataSource webFrame] webView] documentView]);
- ASSERT([(WebNetscapePluginView *)[[[dataSource webFrame] webView] documentView] pluginInstance]);
+ ASSERT([(WebBaseNetscapePluginView *)[[[dataSource webFrame] webView] documentView] pluginInstance]);
if(isFirstChunk){
WebFrame *frame = [dataSource webFrame];
@@ -278,19 +277,17 @@
- (NSString *)handleWillUseUserAgent:(WebResourceHandle *)handle forURL:(NSURL *)theURL
{
- return [[view webController] userAgentForURL:theURL];
+ return [[view controller] userAgentForURL:theURL];
}
- (void)handle:(WebResourceHandle *)handle didReceiveData:(NSData *)data
{
ASSERT(resource == handle);
- WebController *webController = [view webController];
-
[self receivedData:data withHandle:handle];
- [webController _receivedProgress:[WebLoadProgress progressWithResourceHandle:handle]
- forResourceHandle: handle fromDataSource: [view webDataSource] complete: NO];
+ [[view controller] _receivedProgress:[WebLoadProgress progressWithResourceHandle:handle]
+ forResourceHandle: handle fromDataSource: [view dataSource] complete: NO];
}
- (void)handleDidFinishLoading:(WebResourceHandle *)handle
@@ -300,14 +297,14 @@
[resource release];
resource = nil;
- WebController *webController = [view webController];
+ WebController *controller = [view controller];
- [webController _receivedProgress:[WebLoadProgress progressWithResourceHandle:handle]
- forResourceHandle: handle fromDataSource: [view webDataSource] complete: YES];
+ [controller _receivedProgress:[WebLoadProgress progressWithResourceHandle:handle]
+ forResourceHandle: handle fromDataSource: [view dataSource] complete: YES];
[self finishedLoadingWithData:resourceData];
- [webController _didStopLoading:URL];
+ [controller _didStopLoading:URL];
}
- (void)cancel
@@ -318,21 +315,21 @@
[resource cancel];
- WebController *webController = [view webController];
+ WebController *controller = [view controller];
WebError *cancelError = [[WebError alloc] initWithErrorCode:WebErrorCodeCancelled
inDomain:WebErrorDomainWebFoundation
failingURL:nil];
WebLoadProgress *loadProgress = [[WebLoadProgress alloc] initWithResourceHandle:resource];
- [webController _receivedError: cancelError forResourceHandle: resource
- partialProgress: loadProgress fromDataSource: [view webDataSource]];
+ [controller _receivedError: cancelError forResourceHandle: resource
+ partialProgress: loadProgress fromDataSource: [view dataSource]];
[loadProgress release];
[cancelError release];
[self receivedError:NPRES_USER_BREAK];
- [webController _didStopLoading:URL];
+ [controller _didStopLoading:URL];
[resource release];
resource = nil;
@@ -345,26 +342,26 @@
[resource release];
resource = nil;
- WebController *webController = [view webController];
+ WebController *controller = [view controller];
WebLoadProgress *loadProgress = [[WebLoadProgress alloc] initWithResourceHandle:handle];
- [webController _receivedError: result forResourceHandle: handle
- partialProgress: loadProgress fromDataSource: [view webDataSource]];
+ [controller _receivedError: result forResourceHandle: handle
+ partialProgress: loadProgress fromDataSource: [view dataSource]];
[loadProgress release];
[self receivedError:NPRES_NETWORK_ERR];
- [webController _didStopLoading:URL];
+ [controller _didStopLoading:URL];
}
- (void)handleDidRedirect:(WebResourceHandle *)handle toURL:(NSURL *)toURL
{
- WebController *webController = [view webController];
+ WebController *controller = [view controller];
- [webController _didStopLoading:URL];
+ [controller _didStopLoading:URL];
// FIXME: This next line is not sufficient. We don't do anything to remember the new URL.
- [webController _didStartLoading:toURL];
+ [controller _didStartLoading:toURL];
}
@end
diff --git a/WebKit/Plugins.subproj/npapi.m b/WebKit/Plugins.subproj/npapi.m
index cbb721b..029cf4a 100644
--- a/WebKit/Plugins.subproj/npapi.m
+++ b/WebKit/Plugins.subproj/npapi.m
@@ -26,7 +26,7 @@
#import "npapi.h"
#import <WebKit/WebKitLogging.h>
-#import "WebNetscapePluginViewPrivate.h"
+#import "WebBaseNetscapePluginViewPrivate.h"
// general plug-in to browser functions
@@ -71,49 +71,49 @@ NPError NPN_RequestRead(NPStream* stream, NPByteRange* rangeList)
NPError NPN_GetURLNotify(NPP instance, const char* URL, const char* target, void* notifyData)
{
- WebNetscapePluginView *plugin = (WebNetscapePluginView *)instance->ndata;
+ WebBaseNetscapePluginView *plugin = (WebBaseNetscapePluginView *)instance->ndata;
return [plugin getURLNotify:URL target:target notifyData:notifyData];
}
NPError NPN_GetURL(NPP instance, const char* URL, const char* target)
{
- WebNetscapePluginView *plugin = (WebNetscapePluginView *)instance->ndata;
+ WebBaseNetscapePluginView *plugin = (WebBaseNetscapePluginView *)instance->ndata;
return [plugin getURL:URL target:target];
}
NPError NPN_PostURLNotify(NPP instance, const char* URL, const char* target, UInt32 len, const char* buf, NPBool file, void* notifyData)
{
- WebNetscapePluginView *plugin = (WebNetscapePluginView *)instance->ndata;
+ WebBaseNetscapePluginView *plugin = (WebBaseNetscapePluginView *)instance->ndata;
return [plugin postURLNotify:URL target:target len:len buf:buf file:file notifyData:notifyData];
}
NPError NPN_PostURL(NPP instance, const char* URL, const char* target, UInt32 len, const char* buf, NPBool file)
{
- WebNetscapePluginView *plugin = (WebNetscapePluginView *)instance->ndata;
+ WebBaseNetscapePluginView *plugin = (WebBaseNetscapePluginView *)instance->ndata;
return [plugin postURL:URL target:target len:len buf:buf file:file];
}
NPError NPN_NewStream(NPP instance, NPMIMEType type, const char* target, NPStream** stream)
{
- WebNetscapePluginView *plugin = (WebNetscapePluginView *)instance->ndata;
+ WebBaseNetscapePluginView *plugin = (WebBaseNetscapePluginView *)instance->ndata;
return [plugin newStream:type target:target stream:stream];
}
SInt32 NPN_Write(NPP instance, NPStream* stream, SInt32 len, void* buffer)
{
- WebNetscapePluginView *plugin = (WebNetscapePluginView *)instance->ndata;
+ WebBaseNetscapePluginView *plugin = (WebBaseNetscapePluginView *)instance->ndata;
return [plugin write:stream len:len buffer:buffer];
}
NPError NPN_DestroyStream(NPP instance, NPStream* stream, NPReason reason)
{
- WebNetscapePluginView *plugin = (WebNetscapePluginView *)instance->ndata;
+ WebBaseNetscapePluginView *plugin = (WebBaseNetscapePluginView *)instance->ndata;
return [plugin destroyStream:stream reason:reason];
}
void NPN_Status(NPP instance, const char* message)
{
- WebNetscapePluginView *plugin = (WebNetscapePluginView *)instance->ndata;
+ WebBaseNetscapePluginView *plugin = (WebBaseNetscapePluginView *)instance->ndata;
[plugin status:message];
}
@@ -132,19 +132,19 @@ NPError NPN_SetValue(NPP instance, NPPVariable variable, void *value)
void NPN_InvalidateRect(NPP instance, NPRect *invalidRect)
{
- WebNetscapePluginView *plugin = (WebNetscapePluginView *)instance->ndata;
+ WebBaseNetscapePluginView *plugin = (WebBaseNetscapePluginView *)instance->ndata;
[plugin invalidateRect:invalidRect];
}
void NPN_InvalidateRegion(NPP instance, NPRegion invalidRegion)
{
- WebNetscapePluginView *plugin = (WebNetscapePluginView *)instance->ndata;
+ WebBaseNetscapePluginView *plugin = (WebBaseNetscapePluginView *)instance->ndata;
[plugin invalidateRegion:invalidRegion];
}
void NPN_ForceRedraw(NPP instance)
{
- WebNetscapePluginView *plugin = (WebNetscapePluginView *)instance->ndata;
+ WebBaseNetscapePluginView *plugin = (WebBaseNetscapePluginView *)instance->ndata;
[plugin forceRedraw];
}
diff --git a/WebKit/WebCoreSupport.subproj/WebViewFactory.m b/WebKit/WebCoreSupport.subproj/WebViewFactory.m
index 7b44e5d..7d09751 100644
--- a/WebKit/WebCoreSupport.subproj/WebViewFactory.m
+++ b/WebKit/WebCoreSupport.subproj/WebViewFactory.m
@@ -6,11 +6,11 @@
// Copyright (c) 2002 Apple Computer, Inc. All rights reserved.
//
-
+#import <WebKit/WebBaseNetscapePluginView.h>
+#import <WebKit/WebNetscapePluginEmbeddedView.h>
#import <WebKit/WebNullPluginView.h>
#import <WebKit/WebPlugin.h>
#import <WebKit/WebPluginDatabase.h>
-#import <WebKit/WebPluginView.h>
#import <WebKit/WebViewFactory.h>
#import <WebFoundation/WebAssertions.h>
@@ -58,7 +58,12 @@
if (plugin == nil) {
return [[[WebNullPluginView alloc] initWithFrame:NSMakeRect(0,0,0,0) mimeType:mimeType arguments:arguments] autorelease];
}
- return [[[WebNetscapePluginView alloc] initWithFrame:NSMakeRect(0,0,0,0) plugin:plugin URL:pluginURL baseURL:baseURL mime:mimeType arguments:arguments] autorelease];
+ return [[[WebNetscapePluginEmbeddedView alloc] initWithFrame:NSMakeRect(0,0,0,0)
+ plugin:plugin
+ URL:pluginURL
+ baseURL:baseURL
+ mime:mimeType
+ arguments:arguments] autorelease];
}
- (NSArray *)pluginsInfo
@@ -75,7 +80,12 @@
return nil;
}
- return [[[WebNetscapePluginView alloc] initWithFrame:frame plugin:plugin URL:nil baseURL:baseURL mime:@"application/x-java-applet" arguments:parameters] autorelease];
+ return [[[WebNetscapePluginEmbeddedView alloc] initWithFrame:frame
+ plugin:plugin
+ URL:nil
+ baseURL:baseURL
+ mime:@"application/x-java-applet"
+ arguments:parameters] autorelease];
}
@end
diff --git a/WebKit/WebKit.pbproj/project.pbxproj b/WebKit/WebKit.pbproj/project.pbxproj
index 84bbdc1..5478257 100644
--- a/WebKit/WebKit.pbproj/project.pbxproj
+++ b/WebKit/WebKit.pbproj/project.pbxproj
@@ -95,8 +95,8 @@
9C7CABBB0190A37C0ECA16EA,
F5B36B400281DE87018635CB,
F8CA15B4029A399401000122,
- 25A8176801B5474B0ECA149E,
F5065217027F555001C1A526,
+ 25A8176801B5474B0ECA149E,
F5EBC45202134BB601CA1520,
F52CA6C002DF9D78018635CA,
254DC334016E1D3F0ECA149E,
@@ -278,6 +278,8 @@
511D5554033FD51000CA2ACD,
933D659B03413FF2008635CE,
8398847C03426FB000BC5F5E,
+ 84D4BFF90348EF7600CA2ACA,
+ 84D4BFFD0348EF9D00CA2ACA,
);
isa = PBXHeadersBuildPhase;
runOnlyForDeploymentPostprocessing = 0;
@@ -368,6 +370,8 @@
5152FAE8033FC52200CA2ACD,
933D659C03413FF2008635CE,
8398847D03426FB000BC5F5E,
+ 84D4BFFA0348EF7600CA2ACA,
+ 84D4BFFE0348EF9D00CA2ACA,
);
isa = PBXSourcesBuildPhase;
runOnlyForDeploymentPostprocessing = 0;
@@ -1321,6 +1325,64 @@
//832
//833
//834
+//840
+//841
+//842
+//843
+//844
+ 84D4BFF70348EF7600CA2ACA = {
+ fileEncoding = 4;
+ isa = PBXFileReference;
+ path = WebNetscapePluginEmbeddedView.h;
+ refType = 4;
+ };
+ 84D4BFF80348EF7600CA2ACA = {
+ fileEncoding = 4;
+ isa = PBXFileReference;
+ path = WebNetscapePluginEmbeddedView.m;
+ refType = 4;
+ };
+ 84D4BFF90348EF7600CA2ACA = {
+ fileRef = 84D4BFF70348EF7600CA2ACA;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ 84D4BFFA0348EF7600CA2ACA = {
+ fileRef = 84D4BFF80348EF7600CA2ACA;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ 84D4BFFB0348EF9D00CA2ACA = {
+ fileEncoding = 4;
+ isa = PBXFileReference;
+ path = WebNetscapePluginDocumentView.h;
+ refType = 4;
+ };
+ 84D4BFFC0348EF9D00CA2ACA = {
+ fileEncoding = 4;
+ isa = PBXFileReference;
+ path = WebNetscapePluginDocumentView.m;
+ refType = 4;
+ };
+ 84D4BFFD0348EF9D00CA2ACA = {
+ fileRef = 84D4BFFB0348EF9D00CA2ACA;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+ 84D4BFFE0348EF9D00CA2ACA = {
+ fileRef = 84D4BFFC0348EF9D00CA2ACA;
+ isa = PBXBuildFile;
+ settings = {
+ };
+ };
+//840
+//841
+//842
+//843
+//844
//930
//931
//932
@@ -1329,7 +1391,7 @@
931A72D203265920008635CE = {
fileEncoding = 30;
isa = PBXFileReference;
- path = WebNetscapePluginViewPrivate.h;
+ path = WebBaseNetscapePluginViewPrivate.h;
refType = 4;
};
931A72D303265920008635CE = {
@@ -1630,7 +1692,7 @@
isa = PBXGroup;
name = Bookmarks;
path = Bookmarks.subproj;
- refType = 4;
+ refType = 2;
};
F5065218027F557E01C1A526 = {
fileEncoding = 30;
@@ -2589,6 +2651,10 @@
F5EBC45502134BC301CA1520,
931A72D203265920008635CE,
F5EBC45602134BC301CA1520,
+ 84D4BFFB0348EF9D00CA2ACA,
+ 84D4BFFC0348EF9D00CA2ACA,
+ 84D4BFF70348EF7600CA2ACA,
+ 84D4BFF80348EF7600CA2ACA,
F5883BE0025E5E9D01000102,
F5883BE1025E5E9D01000102,
F5A672B70263866E01000102,
@@ -2610,13 +2676,13 @@
F5EBC45502134BC301CA1520 = {
fileEncoding = 30;
isa = PBXFileReference;
- path = WebPluginView.h;
+ path = WebBaseNetscapePluginView.h;
refType = 4;
};
F5EBC45602134BC301CA1520 = {
fileEncoding = 30;
isa = PBXFileReference;
- path = WebPluginView.m;
+ path = WebBaseNetscapePluginView.m;
refType = 4;
};
F5EBC45802134BC301CA1520 = {
diff --git a/WebKit/WebView.subproj/WebHTMLViewPrivate.m b/WebKit/WebView.subproj/WebHTMLViewPrivate.m
index d850ce1..fccb662 100644
--- a/WebKit/WebView.subproj/WebHTMLViewPrivate.m
+++ b/WebKit/WebView.subproj/WebHTMLViewPrivate.m
@@ -20,8 +20,8 @@
#import <WebKit/WebDataSourcePrivate.h>
#import <WebKit/WebFramePrivate.h>
#import <WebKit/WebImageRenderer.h>
+#import <WebKit/WebNetscapePluginEmbeddedView.h>
#import <WebKit/WebNSViewExtras.h>
-#import <WebKit/WebPluginView.h>
#import <WebKit/WebViewPrivate.h>
#import <WebKit/WebWindowOperationsDelegate.h>
@@ -218,8 +218,8 @@ BOOL _modifierTrackingEnabled = FALSE;
- (void)_web_stopIfPluginView
{
- if ([self isKindOfClass:[WebNetscapePluginView class]]) {
- WebNetscapePluginView *pluginView = (WebNetscapePluginView *)self;
+ if ([self isKindOfClass:[WebNetscapePluginEmbeddedView class]]) {
+ WebNetscapePluginEmbeddedView *pluginView = (WebNetscapePluginEmbeddedView *)self;
[pluginView stop];
}
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list