[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
sullivan
sullivan at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 07:53:38 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 5e386cde0010f9d1e86ce7f90f93e93059a5df23
Author: sullivan <sullivan at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Sat Aug 23 04:09:53 2003 +0000
- fixed 3385837 -- REGRESSION: can't paste link from Safari into
Keynote (paste at top level, not into text)
Reviewed by Darin
The problem was that we were using a single list of pasteboard
types for both "types we can read" and "types we can write", but
NSFilenamesPBoardType wasn't being written to, creating a bad
pasteboard. The fix is to split this list in two. We could do
this a little more elegantly if we weren't paranoid about
last-minute SPI changes breaking compatibility with Sherlock or
some other internal client.
* Misc.subproj/WebNSPasteboardExtras.h:
add new _web_writableDragTypesForURL, commented various methods
better.
* Misc.subproj/WebNSPasteboardExtras.m:
(+[NSPasteboard _web_writableDragTypesForURL]):
implement _web_writableDragTypesForURL; it's just like
_web_dragTypesForURL but without the NSFilenamesPBoardType
(-[NSPasteboard _web_writeURL:andTitle:withOwner:]):
use _web_writableDragTypesForURL
* Misc.subproj/WebNSViewExtras.m:
(-[NSView _web_dragPromisedImage:rect:URL:title:event:]):
use _web_writableDragTypesForURL
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@4882 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index a711e21..0e7830b 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,33 @@
+2003-08-22 John Sullivan <sullivan at apple.com>
+
+ - fixed 3385837 -- REGRESSION: can't paste link from Safari into
+ Keynote (paste at top level, not into text)
+
+ Reviewed by Darin
+
+ The problem was that we were using a single list of pasteboard
+ types for both "types we can read" and "types we can write", but
+ NSFilenamesPBoardType wasn't being written to, creating a bad
+ pasteboard. The fix is to split this list in two. We could do
+ this a little more elegantly if we weren't paranoid about
+ last-minute SPI changes breaking compatibility with Sherlock or
+ some other internal client.
+
+ * Misc.subproj/WebNSPasteboardExtras.h:
+ add new _web_writableDragTypesForURL, commented various methods
+ better.
+
+ * Misc.subproj/WebNSPasteboardExtras.m:
+ (+[NSPasteboard _web_writableDragTypesForURL]):
+ implement _web_writableDragTypesForURL; it's just like
+ _web_dragTypesForURL but without the NSFilenamesPBoardType
+ (-[NSPasteboard _web_writeURL:andTitle:withOwner:]):
+ use _web_writableDragTypesForURL
+
+ * Misc.subproj/WebNSViewExtras.m:
+ (-[NSView _web_dragPromisedImage:rect:URL:title:event:]):
+ use _web_writableDragTypesForURL
+
2003-08-22 Darin Adler <darin at apple.com>
Reviewed by Dave.
diff --git a/WebKit/Misc.subproj/WebNSPasteboardExtras.h b/WebKit/Misc.subproj/WebNSPasteboardExtras.h
index 69d950b..180ca00 100644
--- a/WebKit/Misc.subproj/WebNSPasteboardExtras.h
+++ b/WebKit/Misc.subproj/WebNSPasteboardExtras.h
@@ -13,16 +13,28 @@ extern NSString *WebURLNamePboardType;
@interface NSPasteboard (WebExtras)
+// Returns the array of drag types that _web_writeURL:andTitle:withOwner: handles.
+// FIXME: It would be better to conceal this completely by changing
+// _web_writeURL:andTitle:withOwner:types: to take a list of additional types
+// instead of a complete list of types, but we're afraid to do so at this late
+// stage in Panther just in case some internal client is using _web_writeURL:andTitle:withOwner:types:
+// already and relying on its current behavior.
++ (NSArray *)_web_writableDragTypesForURL;
+
// Returns the array of drag types that _web_bestURL handles; note that the presence
// of one or more of these drag types on the pasteboard is not a guarantee that
// _web_bestURL will return a non-nil result.
+ (NSArray *)_web_dragTypesForURL;
-
// Finds the best URL from the data on the pasteboard, giving priority to http and https URLs
-(NSURL *)_web_bestURL;
+// Writes the URL to the pasteboard in all the types from _web_writableDragTypesForURL
- (void)_web_writeURL:(NSURL *)URL andTitle:(NSString *)title withOwner:(id)owner;
+
+// Writes the URL to the pasteboard in all the types from _web_writableDragTypesForURL,
+// after declaring all the passed-in types. Any passed-in types not in _web_writableDragTypesForURL
+// must be handled by the caller separately.
- (void)_web_writeURL:(NSURL *)URL andTitle:(NSString *)title withOwner:(id)owner types:(NSArray *)types;
// Sets the text on the NSFindPboard. Returns the new changeCount for the NSFindPboard.
diff --git a/WebKit/Misc.subproj/WebNSPasteboardExtras.m b/WebKit/Misc.subproj/WebNSPasteboardExtras.m
index 4c26d29..2e8b348 100644
--- a/WebKit/Misc.subproj/WebNSPasteboardExtras.m
+++ b/WebKit/Misc.subproj/WebNSPasteboardExtras.m
@@ -27,6 +27,17 @@ NSString *WebURLNamePboardType = nil;
CreatePasteboardFlavorTypeName('urln', (CFStringRef*)&WebURLNamePboardType);
}
++ (NSArray *)_web_writableDragTypesForURL
+{
+ return [NSArray arrayWithObjects:
+ WebURLsWithTitlesPboardType,
+ NSURLPboardType,
+ WebURLPboardType,
+ WebURLNamePboardType,
+ NSStringPboardType,
+ nil];
+}
+
+ (NSArray *)_web_dragTypesForURL
{
return [NSArray arrayWithObjects:
@@ -100,7 +111,7 @@ NSString *WebURLNamePboardType = nil;
- (void)_web_writeURL:(NSURL *)URL andTitle:(NSString *)title withOwner:(id)owner
{
- [self _web_writeURL:URL andTitle:title withOwner:owner types:[NSPasteboard _web_dragTypesForURL]];
+ [self _web_writeURL:URL andTitle:title withOwner:owner types:[NSPasteboard _web_writableDragTypesForURL]];
}
+ (int)_web_setFindPasteboardString:(NSString *)string withOwner:(id)owner
diff --git a/WebKit/Misc.subproj/WebNSViewExtras.m b/WebKit/Misc.subproj/WebNSViewExtras.m
index 408dfd4..a04653a 100644
--- a/WebKit/Misc.subproj/WebNSViewExtras.m
+++ b/WebKit/Misc.subproj/WebNSViewExtras.m
@@ -228,7 +228,7 @@
NSPasteboard *pboard = [NSPasteboard pasteboardWithName:NSDragPboard];
NSMutableArray *types = [NSMutableArray arrayWithObjects:NSFilesPromisePboardType, NSTIFFPboardType, nil];
- [types addObjectsFromArray:[NSPasteboard _web_dragTypesForURL]];
+ [types addObjectsFromArray:[NSPasteboard _web_writableDragTypesForURL]];
[pboard _web_writeURL:URL andTitle:title withOwner:self types:types];
[pboard setPropertyList:filesTypes forType:NSFilesPromisePboardType];
[pboard setData:[image TIFFRepresentation] forType:NSTIFFPboardType];
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list