[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:53:28 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 65b3be084aeabbbd96f530d0ce8a0e36f82890c7
Author: cblu <cblu at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Thu Oct 24 01:30:06 2002 +0000
WebCore:
WebKit now gets called when render_frame subviews are added.
* khtml/rendering/render_frames.cpp:
(RenderPart::setWidget): call didAddWidget on the part
* kwq/KWQKHTMLPartImpl.h:
* kwq/KWQKHTMLPartImpl.mm:
(KWQKHTMLPartImpl::didAddWidget): added, calls didAddSubview on the bridge
WebKit:
Support for new plug-in API. This is about as much as I can do without the new java plug-in and java root.
* Plugins.subproj/WebPluginController.h:
* Plugins.subproj/WebPluginController.m:
(-[WebPluginController initWithWebFrame:]): observe window close changes
(-[WebPluginController dealloc]): remove observer, assert if we're still tracking plug-ins
(-[WebPluginController didAddSubview:]): start the plug-in
(-[WebPluginController stopAllPlugins]): stop and destroy all plug-ins.
(-[WebPluginController windowWillClose:]): call stopAllPlugins if the window in question is closing
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]): call stopAllPlugins on WebPluginController
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2442 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2002-12-03 b/WebCore/ChangeLog-2002-12-03
index eaca298..7369691 100644
--- a/WebCore/ChangeLog-2002-12-03
+++ b/WebCore/ChangeLog-2002-12-03
@@ -1,5 +1,15 @@
2002-10-23 Chris Blumenberg <cblu at apple.com>
+ WebKit now gets called when render_frame subviews are added.
+
+ * khtml/rendering/render_frames.cpp:
+ (RenderPart::setWidget): call didAddWidget on the part
+ * kwq/KWQKHTMLPartImpl.h:
+ * kwq/KWQKHTMLPartImpl.mm:
+ (KWQKHTMLPartImpl::didAddWidget): added, calls didAddSubview on the bridge
+
+2002-10-23 Chris Blumenberg <cblu at apple.com>
+
Change for plug-in package API changes.
* kwq/KWQKConfigBase.mm:
diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index eaca298..7369691 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,5 +1,15 @@
2002-10-23 Chris Blumenberg <cblu at apple.com>
+ WebKit now gets called when render_frame subviews are added.
+
+ * khtml/rendering/render_frames.cpp:
+ (RenderPart::setWidget): call didAddWidget on the part
+ * kwq/KWQKHTMLPartImpl.h:
+ * kwq/KWQKHTMLPartImpl.mm:
+ (KWQKHTMLPartImpl::didAddWidget): added, calls didAddSubview on the bridge
+
+2002-10-23 Chris Blumenberg <cblu at apple.com>
+
Change for plug-in package API changes.
* kwq/KWQKConfigBase.mm:
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index eaca298..7369691 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,5 +1,15 @@
2002-10-23 Chris Blumenberg <cblu at apple.com>
+ WebKit now gets called when render_frame subviews are added.
+
+ * khtml/rendering/render_frames.cpp:
+ (RenderPart::setWidget): call didAddWidget on the part
+ * kwq/KWQKHTMLPartImpl.h:
+ * kwq/KWQKHTMLPartImpl.mm:
+ (KWQKHTMLPartImpl::didAddWidget): added, calls didAddSubview on the bridge
+
+2002-10-23 Chris Blumenberg <cblu at apple.com>
+
Change for plug-in package API changes.
* kwq/KWQKConfigBase.mm:
diff --git a/WebCore/khtml/rendering/render_frames.cpp b/WebCore/khtml/rendering/render_frames.cpp
index 19f0db4..bb93202 100644
--- a/WebCore/khtml/rendering/render_frames.cpp
+++ b/WebCore/khtml/rendering/render_frames.cpp
@@ -575,6 +575,11 @@ void RenderPart::setWidget( QWidget *widget )
// make sure the scrollbars are set correctly for restore
// ### find better fix
slotViewCleared();
+#ifdef APPLE_CHANGES
+ if(widget){
+ static_cast<KHTMLView *>(m_view)->part()->impl->didAddWidget(widget);
+ }
+#endif
}
bool RenderPart::partLoadingErrorNotify(khtml::ChildFrame *, const KURL& , const QString& )
diff --git a/WebCore/kwq/KWQKHTMLPart.h b/WebCore/kwq/KWQKHTMLPart.h
index 2d7c01d..e33a827 100644
--- a/WebCore/kwq/KWQKHTMLPart.h
+++ b/WebCore/kwq/KWQKHTMLPart.h
@@ -136,6 +136,8 @@ public:
int selectionEndOffset() const;
DOM::NodeImpl *selectionStart() const;
DOM::NodeImpl *selectionEnd() const;
+
+ void didAddWidget(QWidget *);
private:
void setPolicyBaseURL(const DOM::DOMString &);
diff --git a/WebCore/kwq/KWQKHTMLPart.mm b/WebCore/kwq/KWQKHTMLPart.mm
index 5c407b0..e053686 100644
--- a/WebCore/kwq/KWQKHTMLPart.mm
+++ b/WebCore/kwq/KWQKHTMLPart.mm
@@ -495,3 +495,8 @@ QString KWQKHTMLPartImpl::referrer() const
{
return d->m_referrer;
}
+
+void KWQKHTMLPartImpl::didAddWidget(QWidget *widget)
+{
+ [_bridge didAddSubview:widget->getView()];
+}
diff --git a/WebCore/kwq/KWQKHTMLPartImpl.h b/WebCore/kwq/KWQKHTMLPartImpl.h
index 2d7c01d..e33a827 100644
--- a/WebCore/kwq/KWQKHTMLPartImpl.h
+++ b/WebCore/kwq/KWQKHTMLPartImpl.h
@@ -136,6 +136,8 @@ public:
int selectionEndOffset() const;
DOM::NodeImpl *selectionStart() const;
DOM::NodeImpl *selectionEnd() const;
+
+ void didAddWidget(QWidget *);
private:
void setPolicyBaseURL(const DOM::DOMString &);
diff --git a/WebCore/kwq/KWQKHTMLPartImpl.mm b/WebCore/kwq/KWQKHTMLPartImpl.mm
index 5c407b0..e053686 100644
--- a/WebCore/kwq/KWQKHTMLPartImpl.mm
+++ b/WebCore/kwq/KWQKHTMLPartImpl.mm
@@ -495,3 +495,8 @@ QString KWQKHTMLPartImpl::referrer() const
{
return d->m_referrer;
}
+
+void KWQKHTMLPartImpl::didAddWidget(QWidget *widget)
+{
+ [_bridge didAddSubview:widget->getView()];
+}
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index 70081cd..e375d59 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,5 +1,19 @@
2002-10-23 Chris Blumenberg <cblu at apple.com>
+ Support for new plug-in API. This is about as much as I can do without the new java plug-in and java root.
+
+ * Plugins.subproj/WebPluginController.h:
+ * Plugins.subproj/WebPluginController.m:
+ (-[WebPluginController initWithWebFrame:]): observe window close changes
+ (-[WebPluginController dealloc]): remove observer, assert if we're still tracking plug-ins
+ (-[WebPluginController didAddSubview:]): start the plug-in
+ (-[WebPluginController stopAllPlugins]): stop and destroy all plug-ins.
+ (-[WebPluginController windowWillClose:]): call stopAllPlugins if the window in question is closing
+ * WebView.subproj/WebFramePrivate.m:
+ (-[WebFrame _transitionToCommitted]): call stopAllPlugins on WebPluginController
+
+2002-10-23 Chris Blumenberg <cblu at apple.com>
+
Changed the plug-in package API to return key enumerators instead dictionaries.
* Plugins.subproj/WebBasePluginPackage.h:
diff --git a/WebKit/ChangeLog-2002-12-03 b/WebKit/ChangeLog-2002-12-03
index 70081cd..e375d59 100644
--- a/WebKit/ChangeLog-2002-12-03
+++ b/WebKit/ChangeLog-2002-12-03
@@ -1,5 +1,19 @@
2002-10-23 Chris Blumenberg <cblu at apple.com>
+ Support for new plug-in API. This is about as much as I can do without the new java plug-in and java root.
+
+ * Plugins.subproj/WebPluginController.h:
+ * Plugins.subproj/WebPluginController.m:
+ (-[WebPluginController initWithWebFrame:]): observe window close changes
+ (-[WebPluginController dealloc]): remove observer, assert if we're still tracking plug-ins
+ (-[WebPluginController didAddSubview:]): start the plug-in
+ (-[WebPluginController stopAllPlugins]): stop and destroy all plug-ins.
+ (-[WebPluginController windowWillClose:]): call stopAllPlugins if the window in question is closing
+ * WebView.subproj/WebFramePrivate.m:
+ (-[WebFrame _transitionToCommitted]): call stopAllPlugins on WebPluginController
+
+2002-10-23 Chris Blumenberg <cblu at apple.com>
+
Changed the plug-in package API to return key enumerators instead dictionaries.
* Plugins.subproj/WebBasePluginPackage.h:
diff --git a/WebKit/Plugins.subproj/WebPluginController.h b/WebKit/Plugins.subproj/WebPluginController.h
index dd218c8..ae3db5c 100644
--- a/WebKit/Plugins.subproj/WebPluginController.h
+++ b/WebKit/Plugins.subproj/WebPluginController.h
@@ -22,9 +22,8 @@
}
- initWithWebFrame:(WebFrame *)theFrame;
-
- (void)addPluginView:(NSView <WebPlugin> *)view;
-
- (void)didAddSubview:(NSView <WebPlugin> *)view;
+- (void)stopAllPlugins;
@end
diff --git a/WebKit/Plugins.subproj/WebPluginController.m b/WebKit/Plugins.subproj/WebPluginController.m
index c696b49..16de0fa 100644
--- a/WebKit/Plugins.subproj/WebPluginController.m
+++ b/WebKit/Plugins.subproj/WebPluginController.m
@@ -12,7 +12,9 @@
#import <WebKit/WebPlugin.h>
#import <WebKit/WebPluginController.h>
#import <WebKit/WebWindowOperationsDelegate.h>
+#import <WebKit/WebView.h>
+#import <WebFoundation/WebAssertions.h>
#import <WebFoundation/WebResourceRequest.h>
@implementation WebPluginController
@@ -25,13 +27,20 @@
frame = theFrame;
views = [[NSMutableArray array] retain];
+
+ [[NSNotificationCenter defaultCenter] addObserver:self
+ selector:@selector(windowWillClose)
+ name:NSWindowWillCloseNotification
+ object:nil];
return self;
}
- (void)dealloc
{
- [views removeAllObjects];
+ [[NSNotificationCenter defaultCenter] removeObserver:self];
+
+ ASSERT([views count] == 0);
[views release];
[super dealloc];
}
@@ -47,6 +56,20 @@
[view pluginStart];
}
+- (void)stopAllPlugins
+{
+ [views makeObjectsPerformSelector:@selector(pluginStop)];
+ [views makeObjectsPerformSelector:@selector(pluginDestroy)];
+ [views removeAllObjects];
+}
+
+- (void)windowWillClose:(NSNotification *)notification
+{
+ if([notification object] == [[frame webView] window]){
+ [self stopAllPlugins];
+ }
+}
+
- (void)showURL:(NSURL *)URL inFrame:(NSString *)target
{
if(!URL || !target){
diff --git a/WebKit/WebView.subproj/WebFramePrivate.m b/WebKit/WebView.subproj/WebFramePrivate.m
index 27c5e19..78e3d1b 100644
--- a/WebKit/WebView.subproj/WebFramePrivate.m
+++ b/WebKit/WebView.subproj/WebFramePrivate.m
@@ -287,6 +287,9 @@ static const char * const stateNames[] = {
documentView = [[self webView] documentView];
+ // Stop plug-ins before blowing away the view.
+ [_private->pluginController stopAllPlugins];
+
switch ([self _state]) {
case WebFrameStateProvisional:
{
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list