[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
darin
darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 07:37:31 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 2875fe23a4ad52bfc50181cba5c0ad29eae56e1f
Author: darin <darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Apr 16 17:21:32 2003 +0000
Reviewed by John.
- fixed 3226281 -- REGRESSION: crash in WebHTMLView removeMouseMovedObserver closing gist.com
* Plugins.subproj/WebPluginController.m: (-[WebPluginController showStatus:]):
Use _webView instead of _controller.
* WebCoreSupport.subproj/WebTextRendererFactory.m: Remove stray semicolon.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView removeMouseMovedObserver]): Use _webView instead of _controller.
(-[WebHTMLView menuForEvent:]): Ditto.
(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto.
* WebView.subproj/WebHTMLViewPrivate.h: Rename _controller to _webView.
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _webView]): Use _web_superviewOfClass to find the WebView. This dodges possible
stale unretained pointer issues with getting the WebView through the WebFrame, which is what
fixes the bug.
(-[WebHTMLView _updateMouseoverWithEvent:]): Use _webView instead of _controller.
(+[WebHTMLView _pasteboardTypes]): Put the types in order from most preferred to least.
(-[WebHTMLView _writeSelectionToPasteboard:]): Ditto.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@4121 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index dbb1522..3535c2e 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,27 @@
+2003-04-16 Darin Adler <darin at apple.com>
+
+ Reviewed by John.
+
+ - fixed 3226281 -- REGRESSION: crash in WebHTMLView removeMouseMovedObserver closing gist.com
+
+ * Plugins.subproj/WebPluginController.m: (-[WebPluginController showStatus:]):
+ Use _webView instead of _controller.
+
+ * WebCoreSupport.subproj/WebTextRendererFactory.m: Remove stray semicolon.
+
+ * WebView.subproj/WebHTMLView.m:
+ (-[WebHTMLView removeMouseMovedObserver]): Use _webView instead of _controller.
+ (-[WebHTMLView menuForEvent:]): Ditto.
+ (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto.
+ * WebView.subproj/WebHTMLViewPrivate.h: Rename _controller to _webView.
+ * WebView.subproj/WebHTMLViewPrivate.m:
+ (-[WebHTMLView _webView]): Use _web_superviewOfClass to find the WebView. This dodges possible
+ stale unretained pointer issues with getting the WebView through the WebFrame, which is what
+ fixes the bug.
+ (-[WebHTMLView _updateMouseoverWithEvent:]): Use _webView instead of _controller.
+ (+[WebHTMLView _pasteboardTypes]): Put the types in order from most preferred to least.
+ (-[WebHTMLView _writeSelectionToPasteboard:]): Ditto.
+
2003-04-15 Richard Williamson <rjw at apple.com>
Create the dictionary for volatile values. Without this fix
diff --git a/WebKit/Plugins.subproj/WebPluginController.m b/WebKit/Plugins.subproj/WebPluginController.m
index 9c4f8d9..8ecd338 100644
--- a/WebKit/Plugins.subproj/WebPluginController.m
+++ b/WebKit/Plugins.subproj/WebPluginController.m
@@ -130,8 +130,8 @@
ERROR("could not show status message (%@) because plug-in has already been destroyed", message);
return;
}
- WebView *c = [_HTMLView _controller];
- [[c _windowOperationsDelegateForwarder] webView:c setStatusText:message];
+ WebView *v = [_HTMLView _webView];
+ [[v _windowOperationsDelegateForwarder] webView:v setStatusText:message];
}
@end
diff --git a/WebKit/WebCoreSupport.subproj/WebTextRendererFactory.m b/WebKit/WebCoreSupport.subproj/WebTextRendererFactory.m
index c6f427f..076f2ed 100644
--- a/WebKit/WebCoreSupport.subproj/WebTextRendererFactory.m
+++ b/WebKit/WebCoreSupport.subproj/WebTextRendererFactory.m
@@ -225,7 +225,7 @@ static int getLCDScaleParameters(void)
#define MINIMUM_GLYPH_CACHE_SIZE 1536 * 1024
-+ (void)createSharedFactory;
++ (void)createSharedFactory
{
if (![self sharedFactory]) {
[[[self alloc] init] release];
diff --git a/WebKit/WebView.subproj/WebHTMLView.m b/WebKit/WebView.subproj/WebHTMLView.m
index 7411511..afc8045 100644
--- a/WebKit/WebView.subproj/WebHTMLView.m
+++ b/WebKit/WebView.subproj/WebHTMLView.m
@@ -146,7 +146,7 @@
- (void)removeMouseMovedObserver
{
- [[self _controller] _mouseDidMoveOverElement:nil modifierFlags:0];
+ [[self _webView] _mouseDidMoveOverElement:nil modifierFlags:0];
[[NSNotificationCenter defaultCenter] removeObserver:self
name:NSMouseMovedNotification object:nil];
}
@@ -336,7 +336,7 @@
NSPoint point = [self convertPoint:[theEvent locationInWindow] fromView:nil];
NSDictionary *element = [self _elementAtPoint:point];
- return [[self _controller] _menuForElement:element];
+ return [[self _webView] _menuForElement:element];
}
// Search from the end of the currently selected location, or from the beginning of the
@@ -682,7 +682,7 @@
return nil;
}
- [[self _controller] _downloadURL:_private->draggingImageURL toDirectory:[dropDestination path]];
+ [[self _webView] _downloadURL:_private->draggingImageURL toDirectory:[dropDestination path]];
// FIXME: The file is supposed to be created at this point so the Finder places the file
// where the drag ended. Since we can't create the file until the download starts,
diff --git a/WebKit/WebView.subproj/WebHTMLViewPrivate.h b/WebKit/WebView.subproj/WebHTMLViewPrivate.h
index 009cb48..9601781 100644
--- a/WebKit/WebView.subproj/WebHTMLViewPrivate.h
+++ b/WebKit/WebView.subproj/WebHTMLViewPrivate.h
@@ -40,7 +40,7 @@
@interface WebHTMLView (WebPrivate)
- (void)_reset;
-- (WebView *)_controller;
+- (WebView *)_webView;
- (WebFrame *)_frame;
- (WebBridge *)_bridge;
- (void)_adjustFrames;
diff --git a/WebKit/WebView.subproj/WebHTMLViewPrivate.m b/WebKit/WebView.subproj/WebHTMLViewPrivate.m
index 35c041f..2a13ce6 100644
--- a/WebKit/WebView.subproj/WebHTMLViewPrivate.m
+++ b/WebKit/WebView.subproj/WebHTMLViewPrivate.m
@@ -136,9 +136,9 @@ static BOOL forceRealHitTest = NO;
[WebImageRenderer stopAnimationsInView:self];
}
-- (WebView *)_controller
+- (WebView *)_webView
{
- return [[self _web_parentWebFrameView] _controller];
+ return (WebView *)[self _web_superviewOfClass:[WebView class]];
}
- (WebFrame *)_frame
@@ -370,11 +370,11 @@ static WebHTMLView *lastHitView = nil;
lastHitView = view;
if (view == nil) {
- [[self _controller] _mouseDidMoveOverElement:nil modifierFlags:0];
+ [[self _webView] _mouseDidMoveOverElement:nil modifierFlags:0];
} else {
[[view _bridge] mouseMoved:event];
NSPoint point = [view convertPoint:[event locationInWindow] fromView:nil];
- [[self _controller] _mouseDidMoveOverElement:[view _elementAtPoint:point] modifierFlags:[event modifierFlags]];
+ [[self _webView] _mouseDidMoveOverElement:[view _elementAtPoint:point] modifierFlags:[event modifierFlags]];
}
}
@@ -386,26 +386,29 @@ static WebHTMLView *lastHitView = nil;
+ (NSArray *)_pasteboardTypes
{
- return [NSArray arrayWithObjects:NSStringPboardType,
+ return [NSArray arrayWithObjects:
#if SUPPORT_HTML_PBOARD
NSHTMLPboardType,
#endif
- NSRTFPboardType, nil];
+ NSRTFPboardType, NSStringPboardType, nil];
}
- (void)_writeSelectionToPasteboard:(NSPasteboard *)pasteboard
{
[pasteboard declareTypes:[[self class] _pasteboardTypes] owner:nil];
- [pasteboard setString:[self selectedString] forType:NSStringPboardType];
- // Put attributed string on the pasteboard.
+#if SUPPORT_HTML_PBOARD
+ // Put HTML on the pasteboard.
+ [pasteboard setData:??? forType:NSHTMLPboardType];
+#endif
+
+ // Put attributed string on the pasteboard (RTF format).
NSAttributedString *attributedString = [self selectedAttributedString];
NSData *attributedData = [attributedString RTFFromRange:NSMakeRange(0, [attributedString length]) documentAttributes:nil];
[pasteboard setData:attributedData forType:NSRTFPboardType];
-#if SUPPORT_HTML_PBOARD
- // Put HTML on the pasteboard.
-#endif
+ // Put plain string on the pasteboard.
+ [pasteboard setString:[self selectedString] forType:NSStringPboardType];
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list