[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:31:19 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 7643863089190a3273286ca4b7b41348dad2604c
Author: cblu <cblu at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Thu Aug 15 00:48:09 2002 +0000
WebKit:
Support for showing favicons in bookmarks and history.
Renamed "image" to "icon" in all places.
Made history and bookmarks take and save an icon URL
* Bookmarks.subproj/WebBookmark.h:
* Bookmarks.subproj/WebBookmark.m:
(-[WebBookmark icon]):
(-[WebBookmark iconURL]):
(-[WebBookmark setIconURL:]):
* Bookmarks.subproj/WebBookmarkGroup.h:
* Bookmarks.subproj/WebBookmarkGroup.m:
(-[WebBookmarkGroup _setTopBookmark:]):
(-[WebBookmarkGroup addNewBookmarkToBookmark:withTitle:iconURL:URLString:type:]):
(-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:iconURL:URLString:type:]):
* Bookmarks.subproj/WebBookmarkLeaf.h:
* Bookmarks.subproj/WebBookmarkLeaf.m:
(-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
(-[WebBookmarkLeaf dictionaryRepresentation]):
(-[WebBookmarkLeaf copyWithZone:]):
(-[WebBookmarkLeaf icon]):
(-[WebBookmarkLeaf iconURL]):
(-[WebBookmarkLeaf setIconURL:]):
(-[WebBookmarkLeaf setURLString:]):
* Bookmarks.subproj/WebBookmarkList.h:
* Bookmarks.subproj/WebBookmarkList.m:
(-[WebBookmarkList initWithTitle:group:]):
(-[WebBookmarkList dealloc]):
(-[WebBookmarkList copyWithZone:]):
(-[WebBookmarkList icon]):
* Bookmarks.subproj/WebBookmarkSeparator.m:
(-[WebBookmarkSeparator icon]):
* History.subproj/WebHistory.h:
* History.subproj/WebHistory.m:
(-[WebHistory updateURL:title:displayTitle:iconURL:forURL:]):
* History.subproj/WebHistoryItem.h:
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem init]):
(-[WebHistoryItem initWithURL:title:]):
(-[WebHistoryItem initWithURL:target:parent:title:]):
(-[WebHistoryItem dealloc]):
(-[WebHistoryItem iconURL]):
(-[WebHistoryItem icon]):
(-[WebHistoryItem setIconURL:]):
(-[WebHistoryItem dictionaryRepresentation]):
(-[WebHistoryItem initFromDictionaryRepresentation:]):
* History.subproj/WebHistoryPrivate.h:
* History.subproj/WebHistoryPrivate.m:
(-[WebHistoryPrivate updateURL:title:displayTitle:iconURL:forURL:]):
* Misc.subproj/WebIconLoader.h:
* Misc.subproj/WebIconLoader.m:
(+[WebIconLoader iconLoaderWithURL:]):
(-[WebIconLoader initWithURL:]):
(-[WebIconLoader URL]):
(-[WebIconLoader _icons]):
(-[WebIconLoader delegate]):
(-[WebIconLoader iconFromCache]):
(-[WebIconLoader startLoading]):
(-[WebIconLoader WebResourceHandleDidFinishLoading:data:]):
* WebCoreSupport.subproj/WebBridge.m:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _loadIcon]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]):
* WebView.subproj/WebLocationChangeHandler.h:
* WebView.subproj/WebLocationChangeHandler.m:
(-[WebLocationChangeHandler receivedPageIcon:fromURL:forDataSource:]):
WebBrowser:
Support for showing favicons in bookmarks and history.
Renamed "image" to "icon" in all places.
Made history and bookmarks take and save an icon URL
* BookmarksController.h:
* BookmarksController.m:
(-[BookmarksController imageForBookmark:]):
(-[BookmarksController _newItemWithTitle:iconURL:URLString:type:positionIgnoresSelection:]):
(-[BookmarksController _newFolder:]):
(-[BookmarksController _newSeparator:]):
(-[BookmarksController _newBookmark:]):
(-[BookmarksController _blessOrCreateFavoritesRoot]):
(-[BookmarksController _newBookmarkSheetDidEnd:returnCode:contextInfo:]):
(-[BookmarksController displayNewBookmarksSheetForURLs:titles:iconURLs:inWindow:]):
* BrowserDocument.h:
* BrowserDocument.m:
(-[BrowserDocument dealloc]):
(-[BrowserDocument addBookmark:]):
(-[BrowserDocument _setInstantRedirectPending:]):
(-[BrowserDocument setIcon:]):
(-[BrowserDocument iconURL]):
(-[BrowserDocument setIconURL:]):
* BrowserWindow.h:
* BrowserWindowController.m:
(-[BrowserWindowController windowIconURL]):
(-[BrowserWindowController bookmarkIconURLForLocationField:]):
* ContextMenuHandler.m:
(-[ContextMenuHandler addLinkToBookmarks:]):
* FavoriteButton.m:
(-[FavoriteButton initWithBookmark:andFrame:]):
* GlobalHistory.m:
(-[GlobalHistory outlineView:willDisplayCell:forTableColumn:item:]):
(-[GlobalHistory _addHistoryEntry:toMenu:]):
(-[GlobalHistory addSelectedItemsToBookmarks:]):
* LocationChangeHandler.m:
(-[LocationChangeHandler receivedPageTitle:forDataSource:]):
(-[LocationChangeHandler receivedPageIcon:fromURL:forDataSource:]):
* LocationTextField.h:
* LocationTextField.m:
(-[LocationTextField mouseDown:]):
* NewBookmarksController.h:
* NewBookmarksController.m:
(-[NewBookmarksController initWithURLs:titles:iconURLs:]):
* TitleBarButton.m:
(-[TitleBarButton startDragIfNecessaryForEvent:URL:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@1820 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/Bookmarks.subproj/WebBookmark.h b/WebKit/Bookmarks.subproj/WebBookmark.h
index 3c73eb6..bcdf08e 100644
--- a/WebKit/Bookmarks.subproj/WebBookmark.h
+++ b/WebKit/Bookmarks.subproj/WebBookmark.h
@@ -31,8 +31,10 @@ typedef enum {
- (NSString *)title;
- (void)setTitle:(NSString *)title;
-- (NSImage *)image;
-- (void)setImage:(NSImage *)image;
+- (NSImage *)icon;
+
+- (NSURL *)iconURL;
+- (void)setIconURL:(NSURL *)iconURL;
// The type of bookmark
- (WebBookmarkType)bookmarkType;
diff --git a/WebKit/Bookmarks.subproj/WebBookmark.m b/WebKit/Bookmarks.subproj/WebBookmark.m
index 507c892..33aadae 100644
--- a/WebKit/Bookmarks.subproj/WebBookmark.m
+++ b/WebKit/Bookmarks.subproj/WebBookmark.m
@@ -65,13 +65,19 @@ static unsigned _highestUsedID = 0;
NSRequestConcreteImplementation(self, _cmd, [self class]);
}
-- (NSImage *)image
+- (NSImage *)icon
{
NSRequestConcreteImplementation(self, _cmd, [self class]);
return nil;
}
-- (void)setImage:(NSImage *)image
+- (NSURL *)iconURL
+{
+ NSRequestConcreteImplementation(self, _cmd, [self class]);
+ return nil;
+}
+
+- (void)setIconURL:(NSURL *)iconURL
{
NSRequestConcreteImplementation(self, _cmd, [self class]);
}
diff --git a/WebKit/Bookmarks.subproj/WebBookmarkGroup.h b/WebKit/Bookmarks.subproj/WebBookmarkGroup.h
index fffe36a..bb8ebf4 100644
--- a/WebKit/Bookmarks.subproj/WebBookmarkGroup.h
+++ b/WebKit/Bookmarks.subproj/WebBookmarkGroup.h
@@ -42,12 +42,12 @@
- (WebBookmark *)insertNewBookmarkAtIndex:(unsigned)index
ofBookmark:(WebBookmark *)parent
withTitle:(NSString *)newTitle
- image:(NSImage *)newImage
+ iconURL:(NSURL *)iconURL
URLString:(NSString *)newURLString
type:(WebBookmarkType)bookmarkType;
- (WebBookmark *)addNewBookmarkToBookmark:(WebBookmark *)parent
withTitle:(NSString *)newTitle
- image:(NSImage *)newImage
+ iconURL:(NSURL *)iconURL
URLString:(NSString *)newURLString
type:(WebBookmarkType)bookmarkType;
diff --git a/WebKit/Bookmarks.subproj/WebBookmarkGroup.m b/WebKit/Bookmarks.subproj/WebBookmarkGroup.m
index 165868f..7d2e414 100644
--- a/WebKit/Bookmarks.subproj/WebBookmarkGroup.m
+++ b/WebKit/Bookmarks.subproj/WebBookmarkGroup.m
@@ -90,7 +90,7 @@
if (newTopBookmark) {
_topBookmark = newTopBookmark;
} else {
- _topBookmark = [[WebBookmarkList alloc] initWithTitle:nil image:nil group:self];
+ _topBookmark = [[WebBookmarkList alloc] initWithTitle:nil group:self];
}
[self _sendChangeNotificationForBookmark:_topBookmark childrenChanged:YES];
@@ -140,14 +140,14 @@
- (WebBookmark *)addNewBookmarkToBookmark:(WebBookmark *)parent
withTitle:(NSString *)newTitle
- image:(NSImage *)newImage
+ iconURL:(NSURL *)iconURL
URLString:(NSString *)newURLString
type:(WebBookmarkType)bookmarkType
{
return [self insertNewBookmarkAtIndex:[parent numberOfChildren]
ofBookmark:parent
withTitle:newTitle
- image:newImage
+ iconURL:iconURL
URLString:newURLString
type:bookmarkType];
}
@@ -155,7 +155,7 @@
- (WebBookmark *)insertNewBookmarkAtIndex:(unsigned)index
ofBookmark:(WebBookmark *)parent
withTitle:(NSString *)newTitle
- image:(NSImage *)newImage
+ iconURL:(NSURL *)iconURL
URLString:(NSString *)newURLString
type:(WebBookmarkType)bookmarkType
{
@@ -168,14 +168,13 @@
if (bookmarkType == WebBookmarkTypeLeaf) {
bookmark = [[WebBookmarkLeaf alloc] initWithURLString:newURLString
title:newTitle
- image:newImage
+ iconURL:iconURL
group:self];
} else if (bookmarkType == WebBookmarkTypeSeparator) {
bookmark = [[WebBookmarkSeparator alloc] initWithGroup:self];
} else {
WEBKIT_ASSERT (bookmarkType == WebBookmarkTypeList);
bookmark = [[WebBookmarkList alloc] initWithTitle:newTitle
- image:newImage
group:self];
}
diff --git a/WebKit/Bookmarks.subproj/WebBookmarkLeaf.h b/WebKit/Bookmarks.subproj/WebBookmarkLeaf.h
index 4b48605..0e4c684 100644
--- a/WebKit/Bookmarks.subproj/WebBookmarkLeaf.h
+++ b/WebKit/Bookmarks.subproj/WebBookmarkLeaf.h
@@ -17,7 +17,7 @@
- (id)initWithURLString:(NSString *)URLString
title:(NSString *)title
- image:(NSImage *)image
+ iconURL:(NSURL *)iconURL
group:(WebBookmarkGroup *)group;
@end
diff --git a/WebKit/Bookmarks.subproj/WebBookmarkLeaf.m b/WebKit/Bookmarks.subproj/WebBookmarkLeaf.m
index 402cd94..e16122d 100644
--- a/WebKit/Bookmarks.subproj/WebBookmarkLeaf.m
+++ b/WebKit/Bookmarks.subproj/WebBookmarkLeaf.m
@@ -13,8 +13,11 @@
#import <WebKit/WebHistoryItem.h>
#import <WebKit/WebKitDebug.h>
+#import <WebFoundation/WebNSURLExtras.h>
+
#define URIDictionaryKey @"URIDictionary"
#define URLStringKey @"URLString"
+#define IconURLStringKey @"IconURLString"
@implementation WebBookmarkLeaf
@@ -27,7 +30,7 @@
- (id)initWithURLString:(NSString *)URLString
title:(NSString *)title
- image:(NSImage *)image
+ iconURL:(NSURL *)iconURL
group:(WebBookmarkGroup *)group;
{
WEBKIT_ASSERT_VALID_ARG (group, group != nil);
@@ -38,8 +41,8 @@
// just hang onto the string separately and don't bother creating
// an NSURL object for the WebHistoryItem.
[self setTitle:title];
- [self setImage:image];
- _URLString = [URLString retain];
+ [self setIconURL:iconURL];
+ [self setURLString:URLString];
[self _setGroup:group];
return self;
@@ -57,6 +60,10 @@
[dict objectForKey:URIDictionaryKey]] retain];
_URLString = [[dict objectForKey:URLStringKey] retain];
+ NSString *iconURLString = [dict objectForKey:IconURLStringKey];
+ if(iconURLString){
+ [_entry setIconURL:[NSURL _web_URLWithString:iconURLString]];
+ }
return self;
}
@@ -71,7 +78,11 @@
if (_URLString != nil) {
[dict setObject:_URLString forKey:URLStringKey];
}
-
+
+ NSURL *iconURL = [_entry iconURL];
+ if(iconURL) {
+ [dict setObject:[iconURL absoluteString] forKey:IconURLStringKey];
+ }
return dict;
}
@@ -86,7 +97,7 @@
{
return [[WebBookmarkLeaf allocWithZone:zone] initWithURLString:_URLString
title:[self title]
- image:[self image]
+ iconURL:[self iconURL]
group:[self group]];
}
@@ -107,16 +118,20 @@
[[self group] _bookmarkDidChange:self];
}
-- (NSImage *)image
+- (NSImage *)icon
{
- return [_entry image];
+ return [_entry icon];
}
-- (void)setImage:(NSImage *)image
+- (NSURL *)iconURL
{
- [_entry setImage:image];
+ return [_entry iconURL];
+}
- [[self group] _bookmarkDidChange:self];
+- (void)setIconURL:(NSURL *)iconURL
+{
+ [_entry setIconURL:iconURL];
+ [[self group] _bookmarkDidChange:self];
}
- (WebBookmarkType)bookmarkType
@@ -139,6 +154,8 @@
[_URLString release];
_URLString = [URLString copy];
+ [_entry setURL:[NSURL _web_URLWithString:_URLString]];
+
[[self group] _bookmarkDidChange:self];
}
diff --git a/WebKit/Bookmarks.subproj/WebBookmarkList.h b/WebKit/Bookmarks.subproj/WebBookmarkList.h
index 338c097..ebfb0f0 100644
--- a/WebKit/Bookmarks.subproj/WebBookmarkList.h
+++ b/WebKit/Bookmarks.subproj/WebBookmarkList.h
@@ -10,10 +10,10 @@
@interface WebBookmarkList : WebBookmark {
NSString *_title;
- NSImage *_image;
+ NSImage *_icon;
NSMutableArray *_list;
}
-- (id)initWithTitle:(NSString *)title image:(NSImage *)image group:(WebBookmarkGroup *)group;
+- (id)initWithTitle:(NSString *)title group:(WebBookmarkGroup *)group;
@end
diff --git a/WebKit/Bookmarks.subproj/WebBookmarkList.m b/WebKit/Bookmarks.subproj/WebBookmarkList.m
index c4e8971..cf63485 100644
--- a/WebKit/Bookmarks.subproj/WebBookmarkList.m
+++ b/WebKit/Bookmarks.subproj/WebBookmarkList.m
@@ -19,7 +19,6 @@
@implementation WebBookmarkList
- (id)initWithTitle:(NSString *)title
- image:(NSImage *)image
group:(WebBookmarkGroup *)group
{
WEBKIT_ASSERT_VALID_ARG (group, group != nil);
@@ -27,7 +26,6 @@
[super init];
_title = [title copy];
- _image = [image retain];
_list = [[NSMutableArray alloc] init];
[self _setGroup:group];
@@ -101,7 +99,7 @@
- (void)dealloc
{
[_title release];
- [_image release];
+ [_icon release];
[_list release];
[super dealloc];
}
@@ -112,8 +110,7 @@
unsigned index, count;
copy = [[WebBookmarkList alloc] initWithTitle:[self title]
- image:[self image]
- group:[self group]];
+ group:[self group]];
count = [self numberOfChildren];
for (index = 0; index < count; ++index) {
@@ -142,13 +139,13 @@
[[self group] _bookmarkDidChange:self];
}
-- (NSImage *)image
+- (NSImage *)icon
{
static NSImage *defaultImage = nil;
static BOOL loadedDefaultImage = NO;
- if (_image != nil) {
- return _image;
+ if (_icon != nil) {
+ return _icon;
}
// Attempt to load default image only once, to avoid performance penalty of repeatedly
@@ -165,19 +162,6 @@
return defaultImage;
}
-- (void)setImage:(NSImage *)image
-{
- if ([image isEqual:_image]) {
- return;
- }
-
- [image retain];
- [_image release];
- _image = image;
-
- [[self group] _bookmarkDidChange:self];
-}
-
- (WebBookmarkType)bookmarkType
{
return WebBookmarkTypeList;
diff --git a/WebKit/Bookmarks.subproj/WebBookmarkSeparator.m b/WebKit/Bookmarks.subproj/WebBookmarkSeparator.m
index 59bbe30..b41c4e0 100644
--- a/WebKit/Bookmarks.subproj/WebBookmarkSeparator.m
+++ b/WebKit/Bookmarks.subproj/WebBookmarkSeparator.m
@@ -54,7 +54,7 @@
return nil;
}
-- (NSImage *)image
+- (NSImage *)icon
{
return nil;
}
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index fc4fea2..a5eeedb 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,74 @@
+2002-08-14 Chris Blumenberg <cblu at apple.com>
+
+ Support for showing favicons in bookmarks and history.
+
+ Renamed "image" to "icon" in all places.
+
+ Made history and bookmarks take and save an icon URL
+
+ * Bookmarks.subproj/WebBookmark.h:
+ * Bookmarks.subproj/WebBookmark.m:
+ (-[WebBookmark icon]):
+ (-[WebBookmark iconURL]):
+ (-[WebBookmark setIconURL:]):
+ * Bookmarks.subproj/WebBookmarkGroup.h:
+ * Bookmarks.subproj/WebBookmarkGroup.m:
+ (-[WebBookmarkGroup _setTopBookmark:]):
+ (-[WebBookmarkGroup addNewBookmarkToBookmark:withTitle:iconURL:URLString:type:]):
+ (-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:iconURL:URLString:type:]):
+ * Bookmarks.subproj/WebBookmarkLeaf.h:
+ * Bookmarks.subproj/WebBookmarkLeaf.m:
+ (-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
+ (-[WebBookmarkLeaf dictionaryRepresentation]):
+ (-[WebBookmarkLeaf copyWithZone:]):
+ (-[WebBookmarkLeaf icon]):
+ (-[WebBookmarkLeaf iconURL]):
+ (-[WebBookmarkLeaf setIconURL:]):
+ (-[WebBookmarkLeaf setURLString:]):
+ * Bookmarks.subproj/WebBookmarkList.h:
+ * Bookmarks.subproj/WebBookmarkList.m:
+ (-[WebBookmarkList initWithTitle:group:]):
+ (-[WebBookmarkList dealloc]):
+ (-[WebBookmarkList copyWithZone:]):
+ (-[WebBookmarkList icon]):
+ * Bookmarks.subproj/WebBookmarkSeparator.m:
+ (-[WebBookmarkSeparator icon]):
+ * History.subproj/WebHistory.h:
+ * History.subproj/WebHistory.m:
+ (-[WebHistory updateURL:title:displayTitle:iconURL:forURL:]):
+ * History.subproj/WebHistoryItem.h:
+ * History.subproj/WebHistoryItem.m:
+ (-[WebHistoryItem init]):
+ (-[WebHistoryItem initWithURL:title:]):
+ (-[WebHistoryItem initWithURL:target:parent:title:]):
+ (-[WebHistoryItem dealloc]):
+ (-[WebHistoryItem iconURL]):
+ (-[WebHistoryItem icon]):
+ (-[WebHistoryItem setIconURL:]):
+ (-[WebHistoryItem dictionaryRepresentation]):
+ (-[WebHistoryItem initFromDictionaryRepresentation:]):
+ * History.subproj/WebHistoryPrivate.h:
+ * History.subproj/WebHistoryPrivate.m:
+ (-[WebHistoryPrivate updateURL:title:displayTitle:iconURL:forURL:]):
+ * Misc.subproj/WebIconLoader.h:
+ * Misc.subproj/WebIconLoader.m:
+ (+[WebIconLoader iconLoaderWithURL:]):
+ (-[WebIconLoader initWithURL:]):
+ (-[WebIconLoader URL]):
+ (-[WebIconLoader _icons]):
+ (-[WebIconLoader delegate]):
+ (-[WebIconLoader iconFromCache]):
+ (-[WebIconLoader startLoading]):
+ (-[WebIconLoader WebResourceHandleDidFinishLoading:data:]):
+ * WebCoreSupport.subproj/WebBridge.m:
+ * WebView.subproj/WebDataSourcePrivate.m:
+ (-[WebDataSource _loadIcon]):
+ * WebView.subproj/WebFramePrivate.m:
+ (-[WebFrame _transitionToCommitted]):
+ * WebView.subproj/WebLocationChangeHandler.h:
+ * WebView.subproj/WebLocationChangeHandler.m:
+ (-[WebLocationChangeHandler receivedPageIcon:fromURL:forDataSource:]):
+
2002-08-14 Darin Adler <darin at apple.com>
Remove some unused things. Fix minor problems.
diff --git a/WebKit/ChangeLog-2002-12-03 b/WebKit/ChangeLog-2002-12-03
index fc4fea2..a5eeedb 100644
--- a/WebKit/ChangeLog-2002-12-03
+++ b/WebKit/ChangeLog-2002-12-03
@@ -1,3 +1,74 @@
+2002-08-14 Chris Blumenberg <cblu at apple.com>
+
+ Support for showing favicons in bookmarks and history.
+
+ Renamed "image" to "icon" in all places.
+
+ Made history and bookmarks take and save an icon URL
+
+ * Bookmarks.subproj/WebBookmark.h:
+ * Bookmarks.subproj/WebBookmark.m:
+ (-[WebBookmark icon]):
+ (-[WebBookmark iconURL]):
+ (-[WebBookmark setIconURL:]):
+ * Bookmarks.subproj/WebBookmarkGroup.h:
+ * Bookmarks.subproj/WebBookmarkGroup.m:
+ (-[WebBookmarkGroup _setTopBookmark:]):
+ (-[WebBookmarkGroup addNewBookmarkToBookmark:withTitle:iconURL:URLString:type:]):
+ (-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:iconURL:URLString:type:]):
+ * Bookmarks.subproj/WebBookmarkLeaf.h:
+ * Bookmarks.subproj/WebBookmarkLeaf.m:
+ (-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
+ (-[WebBookmarkLeaf dictionaryRepresentation]):
+ (-[WebBookmarkLeaf copyWithZone:]):
+ (-[WebBookmarkLeaf icon]):
+ (-[WebBookmarkLeaf iconURL]):
+ (-[WebBookmarkLeaf setIconURL:]):
+ (-[WebBookmarkLeaf setURLString:]):
+ * Bookmarks.subproj/WebBookmarkList.h:
+ * Bookmarks.subproj/WebBookmarkList.m:
+ (-[WebBookmarkList initWithTitle:group:]):
+ (-[WebBookmarkList dealloc]):
+ (-[WebBookmarkList copyWithZone:]):
+ (-[WebBookmarkList icon]):
+ * Bookmarks.subproj/WebBookmarkSeparator.m:
+ (-[WebBookmarkSeparator icon]):
+ * History.subproj/WebHistory.h:
+ * History.subproj/WebHistory.m:
+ (-[WebHistory updateURL:title:displayTitle:iconURL:forURL:]):
+ * History.subproj/WebHistoryItem.h:
+ * History.subproj/WebHistoryItem.m:
+ (-[WebHistoryItem init]):
+ (-[WebHistoryItem initWithURL:title:]):
+ (-[WebHistoryItem initWithURL:target:parent:title:]):
+ (-[WebHistoryItem dealloc]):
+ (-[WebHistoryItem iconURL]):
+ (-[WebHistoryItem icon]):
+ (-[WebHistoryItem setIconURL:]):
+ (-[WebHistoryItem dictionaryRepresentation]):
+ (-[WebHistoryItem initFromDictionaryRepresentation:]):
+ * History.subproj/WebHistoryPrivate.h:
+ * History.subproj/WebHistoryPrivate.m:
+ (-[WebHistoryPrivate updateURL:title:displayTitle:iconURL:forURL:]):
+ * Misc.subproj/WebIconLoader.h:
+ * Misc.subproj/WebIconLoader.m:
+ (+[WebIconLoader iconLoaderWithURL:]):
+ (-[WebIconLoader initWithURL:]):
+ (-[WebIconLoader URL]):
+ (-[WebIconLoader _icons]):
+ (-[WebIconLoader delegate]):
+ (-[WebIconLoader iconFromCache]):
+ (-[WebIconLoader startLoading]):
+ (-[WebIconLoader WebResourceHandleDidFinishLoading:data:]):
+ * WebCoreSupport.subproj/WebBridge.m:
+ * WebView.subproj/WebDataSourcePrivate.m:
+ (-[WebDataSource _loadIcon]):
+ * WebView.subproj/WebFramePrivate.m:
+ (-[WebFrame _transitionToCommitted]):
+ * WebView.subproj/WebLocationChangeHandler.h:
+ * WebView.subproj/WebLocationChangeHandler.m:
+ (-[WebLocationChangeHandler receivedPageIcon:fromURL:forDataSource:]):
+
2002-08-14 Darin Adler <darin at apple.com>
Remove some unused things. Fix minor problems.
diff --git a/WebKit/History.subproj/WebHistory.h b/WebKit/History.subproj/WebHistory.h
index e298613..efa8d3c 100644
--- a/WebKit/History.subproj/WebHistory.h
+++ b/WebKit/History.subproj/WebHistory.h
@@ -33,6 +33,7 @@
- (void)updateURL:(NSString *)newURLString
title:(NSString *)newTitle
displayTitle:(NSString *)newDisplayTitle
+ iconURL:(NSURL *)iconURL
forURL:(NSString *)oldURLString;
// retrieving contents for date-based presentation
diff --git a/WebKit/History.subproj/WebHistory.m b/WebKit/History.subproj/WebHistory.m
index 29182ef..affe068 100644
--- a/WebKit/History.subproj/WebHistory.m
+++ b/WebKit/History.subproj/WebHistory.m
@@ -76,9 +76,14 @@
- (void)updateURL:(NSString *)newURLString
title:(NSString *)newTitle
displayTitle:(NSString *)newDisplayTitle
+ iconURL:(NSURL *)iconURL
forURL:(NSString *)oldURLString
{
- if ([_historyPrivate updateURL:newURLString title:newTitle displayTitle:newDisplayTitle forURL:oldURLString] != nil) {
+ if ([_historyPrivate updateURL:newURLString
+ title:newTitle
+ displayTitle:newDisplayTitle
+ iconURL:iconURL
+ forURL:oldURLString] != nil) {
// Consider passing changed entry as parameter to notification
[self sendEntriesChangedNotification];
}
diff --git a/WebKit/History.subproj/WebHistoryItem.h b/WebKit/History.subproj/WebHistoryItem.h
index 6acc007..0024af7 100644
--- a/WebKit/History.subproj/WebHistoryItem.h
+++ b/WebKit/History.subproj/WebHistoryItem.h
@@ -8,40 +8,42 @@
@interface WebHistoryItem : NSObject
{
NSURL *_URL;
+ NSURL *_iconURL;
NSString *_target;
NSString *_parent;
NSString *_title;
NSString *_displayTitle;
- NSImage *_image;
+ NSImage *_icon;
NSCalendarDate *_lastVisitedDate;
NSPoint _scrollPoint;
NSString *anchor;
+ BOOL _loadedIcon;
}
+(WebHistoryItem *)entryWithURL:(NSURL *)URL;
- (id)init;
- (id)initWithURL:(NSURL *)URL title:(NSString *)title;
-- (id)initWithURL:(NSURL *)URL title:(NSString *)title image:(NSImage *)image;
-- (id)initWithURL:(NSURL *)URL target: (NSString *)target parent: (NSString *)parent title:(NSString *)title image:(NSImage *)image;
+- (id)initWithURL:(NSURL *)URL target: (NSString *)target parent: (NSString *)parent title:(NSString *)title;
- (NSDictionary *)dictionaryRepresentation;
- (id)initFromDictionaryRepresentation:(NSDictionary *)dict;
- (NSURL *)URL;
+- (NSURL *)iconURL;
- (NSString *)target;
- (NSString *)parent;
- (NSString *)title;
- (NSString *)displayTitle;
-- (NSImage *)image;
+- (NSImage *)icon;
- (NSCalendarDate *)lastVisitedDate;
- (void)setURL:(NSURL *)URL;
+- (void)setIconURL:(NSURL *)iconURL;
- (void)setTarget:(NSString *)target;
- (void)setParent:(NSString *)parent;
- (void)setTitle:(NSString *)title;
- (void)setDisplayTitle:(NSString *)displayTitle;
-- (void)setImage:(NSImage *)image;
- (void)setLastVisitedDate:(NSCalendarDate *)date;
- (void)setScrollPoint: (NSPoint)p;
- (NSPoint)scrollPoint;
diff --git a/WebKit/History.subproj/WebHistoryItem.m b/WebKit/History.subproj/WebHistoryItem.m
index 0d1e8ce..fc37991 100644
--- a/WebKit/History.subproj/WebHistoryItem.m
+++ b/WebKit/History.subproj/WebHistoryItem.m
@@ -18,20 +18,15 @@
-(id)init
{
- return [self initWithURL:nil title:nil image:nil];
+ return [self initWithURL:nil title:nil];
}
-(id)initWithURL:(NSURL *)URL title:(NSString *)title
{
- return [self initWithURL:URL target: nil parent: nil title:title image:nil];
+ return [self initWithURL:URL target: nil parent: nil title:title];
}
--(id)initWithURL:(NSURL *)URL title:(NSString *)title image:(NSImage *)image
-{
- return [self initWithURL:URL target: nil parent: nil title:title image:image];
-}
-
--(id)initWithURL:(NSURL *)URL target: (NSString *)target parent: (NSString *)parent title:(NSString *)title image:(NSImage *)image
+-(id)initWithURL:(NSURL *)URL target: (NSString *)target parent: (NSString *)parent title:(NSString *)title
{
if (self != [super init])
{
@@ -42,7 +37,6 @@
_target = [target retain];
_parent = [parent retain];
_title = [title retain];
- _image = [image retain];
_lastVisitedDate = [[NSCalendarDate alloc] init];
return self;
@@ -55,7 +49,8 @@
[_parent release];
[_title release];
[_displayTitle release];
- [_image release];
+ [_icon release];
+ [_iconURL release];
[_lastVisitedDate release];
[super dealloc];
@@ -66,6 +61,11 @@
return _URL;
}
+- (NSURL *)iconURL
+{
+ return _iconURL;
+}
+
-(NSString *)target
{
return _target;
@@ -86,15 +86,22 @@
return _displayTitle;
}
--(NSImage *)image
-{
- if (_image != nil) {
- return _image;
+-(NSImage *)icon
+{
+ if(!_icon && !_loadedIcon){
+ if(_iconURL){
+ _icon = [[WebIconLoader iconLoaderWithURL:_iconURL] iconFromCache];
+ }else if([_URL isFileURL]){
+ _icon = [WebIconLoader iconForFileAtPath:[_URL path]];
+ }
+ [_icon retain];
+ _loadedIcon = YES;
}
- return [WebIconLoader defaultIcon];
+ return _icon ? _icon : [WebIconLoader defaultIcon];
}
+
-(NSCalendarDate *)lastVisitedDate
{
return _lastVisitedDate;
@@ -108,6 +115,16 @@
}
}
+- (void)setIconURL:(NSURL *)iconURL
+{
+ if (iconURL != _iconURL) {
+ [_iconURL release];
+ _iconURL = [iconURL retain];
+ _loadedIcon = NO;
+ }
+}
+
+
-(void)setTitle:(NSString *)title
{
if (title != _title) {
@@ -140,14 +157,6 @@
}
}
--(void)setImage:(NSImage *)image
-{
- if (image != _image) {
- [_image release];
- _image = [image retain];
- }
-}
-
-(void)setLastVisitedDate:(NSCalendarDate *)date
{
if (date != _lastVisitedDate) {
@@ -207,7 +216,6 @@
{
NSMutableDictionary *dict = [NSMutableDictionary dictionaryWithCapacity: 6];
- // FIXME: doesn't save/restore images yet
if (_URL != nil) {
[dict setObject: [_URL absoluteString] forKey: @""];
}
@@ -221,26 +229,35 @@
[dict setObject: [NSString stringWithFormat:@"%lf", [_lastVisitedDate timeIntervalSinceReferenceDate]]
forKey: @"lastVisitedDate"];
}
+ if (_iconURL != nil) {
+ [dict setObject: [_iconURL absoluteString] forKey: @"iconURL"];
+ }
return dict;
}
- (id)initFromDictionaryRepresentation:(NSDictionary *)dict
{
- NSString *storedURLString;
+ NSString *storedURLString, *iconURLString;
[super init];
- // FIXME: doesn't save/restore images yet
storedURLString = [dict objectForKey: @""];
if (storedURLString != nil) {
_URL = [[NSURL _web_URLWithString:storedURLString] retain];
}
+
+ iconURLString = [dict objectForKey:@"iconURL"];
+ if(iconURLString){
+ _iconURL = [[NSURL _web_URLWithString:iconURLString] retain];
+ }
+
_title = [[dict objectForKey: @"title"] copy];
_displayTitle = [[dict objectForKey: @"displayTitle"] copy];
_lastVisitedDate = [[NSCalendarDate alloc] initWithTimeIntervalSinceReferenceDate:
[[dict objectForKey: @"lastVisitedDate"] doubleValue]];
-
+
+
return self;
}
diff --git a/WebKit/History.subproj/WebHistoryPrivate.h b/WebKit/History.subproj/WebHistoryPrivate.h
index 09bc834..5927fa0 100644
--- a/WebKit/History.subproj/WebHistoryPrivate.h
+++ b/WebKit/History.subproj/WebHistoryPrivate.h
@@ -28,6 +28,7 @@
- (WebHistoryItem *)updateURL:(NSString *)newURLString
title:(NSString *)newTitle
displayTitle:(NSString *)newDisplayTitle
+ iconURL:(NSURL *)iconURL
forURL:(NSString *)oldURLString;
- (NSArray *)orderedLastVisitedDays;
diff --git a/WebKit/History.subproj/WebHistoryPrivate.m b/WebKit/History.subproj/WebHistoryPrivate.m
index daa27a9..cd34699 100644
--- a/WebKit/History.subproj/WebHistoryPrivate.m
+++ b/WebKit/History.subproj/WebHistoryPrivate.m
@@ -223,9 +223,10 @@
}
- (WebHistoryItem *)updateURL:(NSString *)newURLString
- title:(NSString *)newTitle
- displayTitle:(NSString *)newDisplayTitle
- forURL:(NSString *)oldURLString
+ title:(NSString *)newTitle
+ displayTitle:(NSString *)newDisplayTitle
+ iconURL:(NSURL *)iconURL
+ forURL:(NSString *)oldURLString
{
WebHistoryItem *entry;
@@ -247,6 +248,10 @@
if (newDisplayTitle != nil) {
[entry setDisplayTitle:newDisplayTitle];
}
+
+ if(iconURL != nil){
+ [entry setIconURL:iconURL];
+ }
return entry;
}
diff --git a/WebKit/Misc.subproj/WebIconLoader.h b/WebKit/Misc.subproj/WebIconLoader.h
index 9de69b0..372a61d 100644
--- a/WebKit/Misc.subproj/WebIconLoader.h
+++ b/WebKit/Misc.subproj/WebIconLoader.h
@@ -24,10 +24,13 @@
+ (NSImage *)defaultIcon;
+ (NSImage *)iconForFileAtPath:(NSString *)path;
-- initWithURL:(NSURL *)iconURL;
++ iconLoaderWithURL:(NSURL *)URL;
+- initWithURL:(NSURL *)URL;
+- (NSURL *)URL;
+- (id)delegate;
- (void)setDelegate:(id)delegate;
+- (NSImage *)iconFromCache;
- (void)startLoading;
-- (void)startLoadingOnlyFromCache;
- (void)stopLoading;
@end
diff --git a/WebKit/Misc.subproj/WebIconLoader.m b/WebKit/Misc.subproj/WebIconLoader.m
index 3f07305..243daa3 100644
--- a/WebKit/Misc.subproj/WebIconLoader.m
+++ b/WebKit/Misc.subproj/WebIconLoader.m
@@ -10,6 +10,7 @@
#import <WebFoundation/WebFoundation.h>
#import <WebFoundation/WebNSURLExtras.h>
+#import <WebFoundation/WebResourceLoadManager.h>
@interface WebIconLoaderPrivate : NSObject
{
@@ -79,12 +80,16 @@
return icon;
}
++ iconLoaderWithURL:(NSURL *)URL
+{
+ return [[[self alloc] initWithURL:URL] autorelease];
+}
-- initWithURL:(NSURL *)iconURL
+- initWithURL:(NSURL *)URL
{
[super init];
_private = [[WebIconLoaderPrivate alloc] init];
- _private->URL = [iconURL retain];
+ _private->URL = [URL retain];
return self;
}
@@ -94,21 +99,75 @@
[super dealloc];
}
+- (NSURL *)URL
+{
+ return _private->URL;
+}
+
+- (NSMutableDictionary *)_icons{
+ static NSMutableDictionary *icons = nil;
+
+ if(!icons){
+ icons = [[NSMutableDictionary dictionary] retain];
+ }
+
+ return icons;
+}
+
+- (id)delegate
+{
+ return _private->delegate;
+}
+
- (void)setDelegate:(id)delegate
{
_private->delegate = delegate;
}
-- (void)startLoading
+- (NSImage *)iconFromCache
{
- _private->resourceHandle = [[WebResourceHandle alloc] initWithURL:_private->URL];
- [_private->resourceHandle addClient:self];
- [_private->resourceHandle loadInBackground];
+ NSImage *icon=nil;
+
+ icon = [[self _icons] objectForKey:_private->URL];
+
+ if(icon){
+ return icon;
+ }
+
+ NSDictionary *attributes = [NSDictionary dictionaryWithObject:@"" forKey:@"only-if-cached"];
+ _private->resourceHandle = [[WebResourceHandle alloc] initWithURL:_private->URL
+ attributes:attributes
+ flags:WebResourceHandleFlagNone];
+ if(_private->resourceHandle){
+ NSData *data = [_private->resourceHandle loadInForeground];
+ if(data){
+ icon = [[[NSImage alloc] initWithData:data] autorelease];
+ if(icon){
+ [[self class] _resizeImage:icon];
+ [[self _icons] setObject:icon forKey:_private->URL];
+ }
+ }
+ }
+
+ return icon;
}
-- (void)startLoadingOnlyFromCache
+- (void)startLoading
{
- [self startLoading];
+ NSImage *icon=nil;
+
+ icon = [[self _icons] objectForKey:_private->URL];
+
+ if(icon){
+ [_private->delegate iconLoader:self receivedPageIcon:icon];
+ return;
+ }
+
+ _private->resourceHandle = [[WebResourceHandle alloc] initWithURL:_private->URL];
+ if(_private->resourceHandle){
+ [_private->resourceHandle addClient:self];
+ [_private->resourceHandle loadInBackground];
+ }
}
- (void)stopLoading
@@ -128,11 +187,12 @@
- (void)WebResourceHandleDidFinishLoading:(WebResourceHandle *)sender data:(NSData *)data
{
- NSImage *image = [[NSImage alloc] initWithData:data];
- if (image) {
- [[self class] _resizeImage:image];
- [_private->delegate iconLoader:self receivedPageIcon:image];
- [image release];
+ NSImage *icon = [[NSImage alloc] initWithData:data];
+ if (icon) {
+ [[self class] _resizeImage:icon];
+ [[self _icons] setObject:icon forKey:_private->URL];
+ [_private->delegate iconLoader:self receivedPageIcon:icon];
+ [icon release];
}
}
diff --git a/WebKit/WebCoreSupport.subproj/WebBridge.m b/WebKit/WebCoreSupport.subproj/WebBridge.m
index d8afa85..c018fda 100644
--- a/WebKit/WebCoreSupport.subproj/WebBridge.m
+++ b/WebKit/WebCoreSupport.subproj/WebBridge.m
@@ -303,7 +303,7 @@
WebHistoryItem *backForwardItem;
WebFrame *parentFrame = [[frame controller] frameForDataSource:[[frame dataSource] parent]];
- backForwardItem = [[WebHistoryItem alloc] initWithURL:URL target:[frame name] parent:[parentFrame name] title:[[frame dataSource] pageTitle] image:nil];
+ backForwardItem = [[WebHistoryItem alloc] initWithURL:URL target:[frame name] parent:[parentFrame name] title:[[frame dataSource] pageTitle]];
[backForwardItem setAnchor:anchor];
[[[frame controller] backForwardList] addEntry:backForwardItem];
[backForwardItem release];
diff --git a/WebKit/WebView.subproj/WebDataSourcePrivate.m b/WebKit/WebView.subproj/WebDataSourcePrivate.m
index 4977d6c..d032be2 100644
--- a/WebKit/WebView.subproj/WebDataSourcePrivate.m
+++ b/WebKit/WebView.subproj/WebDataSourcePrivate.m
@@ -439,7 +439,7 @@
- (void)iconLoader:(WebIconLoader *)iconLoader receivedPageIcon:(NSImage *)image;
{
- [[_private->controller locationChangeHandler] receivedPageIcon:image forDataSource:self];
+ [[_private->controller locationChangeHandler] receivedPageIcon:image fromURL:[iconLoader URL] forDataSource:self];
}
- (void)_loadIcon
@@ -455,7 +455,7 @@
if([dataSourceURL isFileURL]){
NSImage *icon = [WebIconLoader iconForFileAtPath:[dataSourceURL path]];
- [[_private->controller locationChangeHandler] receivedPageIcon:icon forDataSource:self];
+ [[_private->controller locationChangeHandler] receivedPageIcon:icon fromURL:nil forDataSource:self];
} else {
_private->iconURL = [[NSURL _web_URLWithString:@"/favicon.ico" relativeToURL:dataSourceURL] retain];
}
diff --git a/WebKit/WebView.subproj/WebFrameLoadDelegate.h b/WebKit/WebView.subproj/WebFrameLoadDelegate.h
index 8589124..d6e5880 100644
--- a/WebKit/WebView.subproj/WebFrameLoadDelegate.h
+++ b/WebKit/WebView.subproj/WebFrameLoadDelegate.h
@@ -42,7 +42,7 @@
- (void)locationChangeDone:(WebError *)error forDataSource:(WebDataSource *)dataSource;
- (void)receivedPageTitle:(NSString *)title forDataSource:(WebDataSource *)dataSource;
-- (void)receivedPageIcon:(NSImage *)image forDataSource:(WebDataSource *)dataSource;
+- (void)receivedPageIcon:(NSImage *)image fromURL:(NSURL *)iconURL forDataSource:(WebDataSource *)dataSource;
- (void)serverRedirectTo:(NSURL *)URL forDataSource:(WebDataSource *)dataSource;
diff --git a/WebKit/WebView.subproj/WebFramePrivate.m b/WebKit/WebView.subproj/WebFramePrivate.m
index a7bf6de..df68382 100644
--- a/WebKit/WebView.subproj/WebFramePrivate.m
+++ b/WebKit/WebView.subproj/WebFramePrivate.m
@@ -286,7 +286,10 @@ static const char * const stateNames[] = {
case WebFrameLoadTypeStandard:
parentFrame = [[self controller] frameForDataSource: [[self dataSource] parent]];
- backForwardItem = [[WebHistoryItem alloc] initWithURL:[[self dataSource] originalURL] target: [self name] parent: [parentFrame name] title:[[self dataSource] pageTitle] image: nil];
+ backForwardItem = [[WebHistoryItem alloc] initWithURL:[[self dataSource] originalURL]
+ target:[self name]
+ parent:[parentFrame name]
+ title:[[self dataSource] pageTitle]];
[[[self controller] backForwardList] addEntry: backForwardItem];
[backForwardItem release];
// Scroll to top.
diff --git a/WebKit/WebView.subproj/WebLocationChangeDelegate.h b/WebKit/WebView.subproj/WebLocationChangeDelegate.h
index 8589124..d6e5880 100644
--- a/WebKit/WebView.subproj/WebLocationChangeDelegate.h
+++ b/WebKit/WebView.subproj/WebLocationChangeDelegate.h
@@ -42,7 +42,7 @@
- (void)locationChangeDone:(WebError *)error forDataSource:(WebDataSource *)dataSource;
- (void)receivedPageTitle:(NSString *)title forDataSource:(WebDataSource *)dataSource;
-- (void)receivedPageIcon:(NSImage *)image forDataSource:(WebDataSource *)dataSource;
+- (void)receivedPageIcon:(NSImage *)image fromURL:(NSURL *)iconURL forDataSource:(WebDataSource *)dataSource;
- (void)serverRedirectTo:(NSURL *)URL forDataSource:(WebDataSource *)dataSource;
diff --git a/WebKit/WebView.subproj/WebLocationChangeDelegate.m b/WebKit/WebView.subproj/WebLocationChangeDelegate.m
index 763a911..e7a0b54 100644
--- a/WebKit/WebView.subproj/WebLocationChangeDelegate.m
+++ b/WebKit/WebView.subproj/WebLocationChangeDelegate.m
@@ -12,7 +12,7 @@
- (void)locationChangeDone:(WebError *)error forDataSource:(WebDataSource *)dataSource { }
- (void)receivedPageTitle:(NSString *)title forDataSource:(WebDataSource *)dataSource { }
-- (void)receivedPageIcon:(NSImage *)image forDataSource:(WebDataSource *)dataSource { }
+- (void)receivedPageIcon:(NSImage *)image fromURL:(NSURL *)iconURL forDataSource:(WebDataSource *)dataSource { }
- (void)serverRedirectTo:(NSURL *)URL forDataSource:(WebDataSource *)dataSource { }
diff --git a/WebKit/WebView.subproj/WebLocationChangeHandler.h b/WebKit/WebView.subproj/WebLocationChangeHandler.h
index 8589124..d6e5880 100644
--- a/WebKit/WebView.subproj/WebLocationChangeHandler.h
+++ b/WebKit/WebView.subproj/WebLocationChangeHandler.h
@@ -42,7 +42,7 @@
- (void)locationChangeDone:(WebError *)error forDataSource:(WebDataSource *)dataSource;
- (void)receivedPageTitle:(NSString *)title forDataSource:(WebDataSource *)dataSource;
-- (void)receivedPageIcon:(NSImage *)image forDataSource:(WebDataSource *)dataSource;
+- (void)receivedPageIcon:(NSImage *)image fromURL:(NSURL *)iconURL forDataSource:(WebDataSource *)dataSource;
- (void)serverRedirectTo:(NSURL *)URL forDataSource:(WebDataSource *)dataSource;
diff --git a/WebKit/WebView.subproj/WebLocationChangeHandler.m b/WebKit/WebView.subproj/WebLocationChangeHandler.m
index 763a911..e7a0b54 100644
--- a/WebKit/WebView.subproj/WebLocationChangeHandler.m
+++ b/WebKit/WebView.subproj/WebLocationChangeHandler.m
@@ -12,7 +12,7 @@
- (void)locationChangeDone:(WebError *)error forDataSource:(WebDataSource *)dataSource { }
- (void)receivedPageTitle:(NSString *)title forDataSource:(WebDataSource *)dataSource { }
-- (void)receivedPageIcon:(NSImage *)image forDataSource:(WebDataSource *)dataSource { }
+- (void)receivedPageIcon:(NSImage *)image fromURL:(NSURL *)iconURL forDataSource:(WebDataSource *)dataSource { }
- (void)serverRedirectTo:(NSURL *)URL forDataSource:(WebDataSource *)dataSource { }
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list