[webkit-changes] cvs commit: WebKit/WebView.subproj WebHTMLView.m
WebView.m
Darin
darin at opensource.apple.com
Sat Dec 10 12:40:38 PST 2005
darin 05/12/10 12:40:37
Modified: . ChangeLog WebCore.exp
kwq WebCoreBridge.h WebCoreBridge.mm
. ChangeLog
WebView.subproj WebHTMLView.m WebView.m
Log:
WebCore:
Reviewed by John Sullivan.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6032
REGRESSION: Uncaught exception when image is dragged out of webpage
* WebCore.exp: Export the new WebCoreElementImageRendererKey and remove the old
WebCoreElementImageKey.
* kwq/WebCoreBridge.h: Add WebCoreElementImageRendererKey, remove WebCoreElementImageKey.
* kwq/WebCoreBridge.mm: (-[WebCoreBridge elementAtPoint:]): Pass the image renderer in the
dictionary, but not the NSImage.
WebKit:
Reviewed by John Sullivan.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6032
REGRESSION: Uncaught exception when image is dragged out of webpage
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
Pass the image renderer, not the NSImage.
(-[WebHTMLView elementAtPoint:]): Add an NSImage to the dictionary, which now comes from
WebCore with only an image renderer.
* WebView.subproj/WebView.m: (-[WebView _writeImageElement:withPasteboardTypes:toPasteboard:]):
Pass the image renderer, not the NSImage.
Revision Changes Path
1.503 +13 -0 WebCore/ChangeLog
Index: ChangeLog
===================================================================
RCS file: /cvs/root/WebCore/ChangeLog,v
retrieving revision 1.502
retrieving revision 1.503
diff -u -r1.502 -r1.503
--- ChangeLog 10 Dec 2005 20:34:34 -0000 1.502
+++ ChangeLog 10 Dec 2005 20:40:09 -0000 1.503
@@ -1,3 +1,16 @@
+2005-12-10 Darin Adler <darin at apple.com>
+
+ Reviewed by John Sullivan.
+
+ - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6032
+ REGRESSION: Uncaught exception when image is dragged out of webpage
+
+ * WebCore.exp: Export the new WebCoreElementImageRendererKey and remove the old
+ WebCoreElementImageKey.
+ * kwq/WebCoreBridge.h: Add WebCoreElementImageRendererKey, remove WebCoreElementImageKey.
+ * kwq/WebCoreBridge.mm: (-[WebCoreBridge elementAtPoint:]): Pass the image renderer in the
+ dictionary, but not the NSImage.
+
2005-12-10 Mitz Pettel <opendarwin.org at mitzpettel.com>
Reviewed and landed by Darin.
1.47 +1 -1 WebCore/WebCore.exp
Index: WebCore.exp
===================================================================
RCS file: /cvs/root/WebCore/WebCore.exp,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -r1.46 -r1.47
--- WebCore.exp 9 Oct 2005 04:17:31 -0000 1.46
+++ WebCore.exp 10 Dec 2005 20:40:13 -0000 1.47
@@ -121,8 +121,8 @@
_WebCoreElementDOMNodeKey
_WebCoreElementFrameKey
_WebCoreElementImageAltStringKey
-_WebCoreElementImageKey
_WebCoreElementImageRectKey
+_WebCoreElementImageRendererKey
_WebCoreElementImageURLKey
_WebCoreElementIsSelectedKey
_WebCoreElementLinkLabelKey
1.354 +1 -1 WebCore/kwq/WebCoreBridge.h
Index: WebCoreBridge.h
===================================================================
RCS file: /cvs/root/WebCore/kwq/WebCoreBridge.h,v
retrieving revision 1.353
retrieving revision 1.354
diff -u -r1.353 -r1.354
--- WebCoreBridge.h 6 Dec 2005 00:23:49 -0000 1.353
+++ WebCoreBridge.h 10 Dec 2005 20:40:18 -0000 1.354
@@ -73,7 +73,7 @@
extern NSString *WebCoreElementDOMNodeKey;
extern NSString *WebCoreElementFrameKey;
extern NSString *WebCoreElementImageAltStringKey;
-extern NSString *WebCoreElementImageKey;
+extern NSString *WebCoreElementImageRendererKey;
extern NSString *WebCoreElementImageRectKey;
extern NSString *WebCoreElementImageURLKey;
extern NSString *WebCoreElementIsSelectedKey;
1.441 +4 -5 WebCore/kwq/WebCoreBridge.mm
Index: WebCoreBridge.mm
===================================================================
RCS file: /cvs/root/WebCore/kwq/WebCoreBridge.mm,v
retrieving revision 1.440
retrieving revision 1.441
diff -u -r1.440 -r1.441
--- WebCoreBridge.mm 10 Dec 2005 17:14:38 -0000 1.440
+++ WebCoreBridge.mm 10 Dec 2005 20:40:19 -0000 1.441
@@ -147,7 +147,7 @@
NSString *WebCoreElementDOMNodeKey = @"WebElementDOMNode";
NSString *WebCoreElementFrameKey = @"WebElementFrame";
NSString *WebCoreElementImageAltStringKey = @"WebElementImageAltString";
-NSString *WebCoreElementImageKey = @"WebElementImage";
+NSString *WebCoreElementImageRendererKey = @"WebCoreElementImageRenderer";
NSString *WebCoreElementImageRectKey = @"WebElementImageRect";
NSString *WebCoreElementImageURLKey = @"WebElementImageURL";
NSString *WebCoreElementIsSelectedKey = @"WebElementIsSelected";
@@ -1117,9 +1117,8 @@
RenderImage *r = static_cast<RenderImage *>(node->renderer());
if (!r->isDisplayingError()) {
QPixmap p = r->pixmap();
- NSImage *image = [p.imageRenderer() image];
- if (image)
- [element setObject:image forKey:WebCoreElementImageKey];
+ if (p.imageRenderer())
+ [element setObject:p.imageRenderer() forKey:WebCoreElementImageRendererKey];
}
int x, y;
@@ -1801,7 +1800,7 @@
}
// Determines whether whitespace needs to be added around aString to preserve proper spacing and
-// punctuation when itÕs inserted into the receiverÕs text over charRange. Returns by reference
+// punctuation when itâs inserted into the receiverâs text over charRange. Returns by reference
// in beforeString and afterString any whitespace that should be added, unless either or both are
// nil. Both are returned as nil if aString is nil or if smart insertion and deletion are disabled.
- (void)smartInsertForString:(NSString *)pasteString replacingRange:(DOMRange *)rangeToReplace beforeString:(NSString **)beforeString afterString:(NSString **)afterString
1.3397 +15 -0 WebKit/ChangeLog
Index: ChangeLog
===================================================================
RCS file: /cvs/root/WebKit/ChangeLog,v
retrieving revision 1.3396
retrieving revision 1.3397
diff -u -r1.3396 -r1.3397
--- ChangeLog 10 Dec 2005 15:27:50 -0000 1.3396
+++ ChangeLog 10 Dec 2005 20:40:21 -0000 1.3397
@@ -1,5 +1,20 @@
2005-12-10 Darin Adler <darin at apple.com>
+ Reviewed by John Sullivan.
+
+ - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6032
+ REGRESSION: Uncaught exception when image is dragged out of webpage
+
+ * WebView.subproj/WebHTMLView.m:
+ (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
+ Pass the image renderer, not the NSImage.
+ (-[WebHTMLView elementAtPoint:]): Add an NSImage to the dictionary, which now comes from
+ WebCore with only an image renderer.
+ * WebView.subproj/WebView.m: (-[WebView _writeImageElement:withPasteboardTypes:toPasteboard:]):
+ Pass the image renderer, not the NSImage.
+
+2005-12-10 Darin Adler <darin at apple.com>
+
Was getting build failures related to "count" methods.
Made Tim's build fix Leopard-only.
1.489 +6 -3 WebKit/WebView.subproj/WebHTMLView.m
Index: WebHTMLView.m
===================================================================
RCS file: /cvs/root/WebKit/WebView.subproj/WebHTMLView.m,v
retrieving revision 1.488
retrieving revision 1.489
diff -u -r1.488 -r1.489
--- WebHTMLView.m 9 Dec 2005 02:12:34 -0000 1.488
+++ WebHTMLView.m 10 Dec 2005 20:40:34 -0000 1.489
@@ -1260,7 +1260,7 @@
WebView *webView = [self _webView];
NSPasteboard *pasteboard = [NSPasteboard pasteboardWithName:NSDragPboard];
- WebImageRenderer *image = [element objectForKey:WebElementImageKey];
+ WebImageRenderer *image = [element objectForKey:WebCoreElementImageRendererKey];
BOOL startedDrag = YES; // optimism - we almost always manage to start the drag
// note per kwebster, the offset arg below is always ignored in positioning the image
@@ -1280,7 +1280,7 @@
}
[[webView _UIDelegateForwarder] webView:webView willPerformDragSourceAction:WebDragSourceActionImage fromPoint:mouseDownPoint withPasteboard:pasteboard];
if (dragImage == nil) {
- [self _web_dragImage:[element objectForKey:WebElementImageKey]
+ [self _web_dragImage:[element objectForKey:WebCoreElementImageRendererKey]
rect:[[element objectForKey:WebElementImageRectKey] rectValue]
event:_private->mouseDownEvent
pasteboard:pasteboard
@@ -2862,9 +2862,12 @@
NSDictionary *elementInfoWC = [[self _bridge] elementAtPoint:point];
NSMutableDictionary *elementInfo = [elementInfoWC mutableCopy];
- // Convert URL strings to NSURLs
+ // Convert URL strings to NSURLs.
[elementInfo _web_setObjectIfNotNil:[NSURL _web_URLWithDataAsString:[elementInfoWC objectForKey:WebElementLinkURLKey]] forKey:WebElementLinkURLKey];
[elementInfo _web_setObjectIfNotNil:[NSURL _web_URLWithDataAsString:[elementInfoWC objectForKey:WebElementImageURLKey]] forKey:WebElementImageURLKey];
+
+ // Convert image renderer to NSImage.
+ [elementInfo _web_setObjectIfNotNil:[[elementInfoWC objectForKey:WebCoreElementImageRendererKey] image] forKey:WebElementImageKey];
WebFrameView *webFrameView = [self _web_parentWebFrameView];
ASSERT(webFrameView);
1.316 +1 -1 WebKit/WebView.subproj/WebView.m
Index: WebView.m
===================================================================
RCS file: /cvs/root/WebKit/WebView.subproj/WebView.m,v
retrieving revision 1.315
retrieving revision 1.316
diff -u -r1.315 -r1.316
--- WebView.m 10 Dec 2005 04:52:03 -0000 1.315
+++ WebView.m 10 Dec 2005 20:40:35 -0000 1.316
@@ -1309,7 +1309,7 @@
- (void)_writeImageElement:(NSDictionary *)element withPasteboardTypes:(NSArray *)types toPasteboard:(NSPasteboard *)pasteboard
{
NSURL *linkURL = [element objectForKey:WebElementLinkURLKey];
- [pasteboard _web_writeImage:[element objectForKey:WebElementImageKey]
+ [pasteboard _web_writeImage:[element objectForKey:WebCoreElementImageRendererKey]
URL:linkURL ? linkURL : (NSURL *)[element objectForKey:WebElementImageURLKey]
title:[element objectForKey:WebElementImageAltStringKey]
archive:[[element objectForKey:WebElementDOMNodeKey] webArchive]
More information about the webkit-changes
mailing list