[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677

kocienda kocienda at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 05:52:38 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 70ad22513ec4979a557bd599a3acdc79031c361c
Author: kocienda <kocienda at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Thu Nov 29 17:31:21 2001 +0000

    Various clean ups to the loader code.
    Added first hacks at the history portion of the framework.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@469 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit/History.subproj/IFBackForwardList.h b/WebKit/History.subproj/IFBackForwardList.h
new file mode 100644
index 0000000..4d77d10
--- /dev/null
+++ b/WebKit/History.subproj/IFBackForwardList.h
@@ -0,0 +1,18 @@
+//
+//  WKBackForwardList.h
+//  WebKit
+//
+//  Created by Kenneth Kocienda on Thu Nov 29 2001.
+//  Copyright (c) 2001 __MyCompanyName__. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import "WKURIList.h"
+
+ at interface WKBackForwardList : NSObject {
+    WKURIList *uriList;
+}
+
+
+
+ at end
diff --git a/WebKit/History.subproj/IFBackForwardList.m b/WebKit/History.subproj/IFBackForwardList.m
new file mode 100644
index 0000000..cf40808
--- /dev/null
+++ b/WebKit/History.subproj/IFBackForwardList.m
@@ -0,0 +1,14 @@
+//
+//  WKBackForwardList.m
+//  WebKit
+//
+//  Created by Kenneth Kocienda on Thu Nov 29 2001.
+//  Copyright (c) 2001 __MyCompanyName__. All rights reserved.
+//
+
+#import "WKBackForwardList.h"
+
+
+ at implementation WKBackForwardList
+
+ at end
diff --git a/WebKit/History.subproj/IFURIEntry.h b/WebKit/History.subproj/IFURIEntry.h
new file mode 100644
index 0000000..b7d63ae
--- /dev/null
+++ b/WebKit/History.subproj/IFURIEntry.h
@@ -0,0 +1,47 @@
+//
+//  WKURIEntry.h
+//  WebKit
+//
+//  Created by Kenneth Kocienda on Thu Nov 29 2001.
+//  Copyright (c) 2001 __MyCompanyName__. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <AppKit/AppKit.h>
+
+
+ at interface WKURIEntry : NSObject 
+{
+    NSURL *_url;
+    NSString *_title;
+    NSImage *_image;
+    NSString *_comment;
+    NSDate *_creationDate;
+    NSDate *_modificationDate;
+    NSDate *_lastVisitedDate;
+}
+
+-(id)initWithURL:(NSURL *)url title:(NSString *)title;
+-(id)initWithURL:(NSURL *)url title:(NSString *)title image:(NSImage *)image;
+-(id)initWithURL:(NSURL *)url title:(NSString *)title image:(NSImage *)image comment:(NSString *)comment;
+
+-(NSURL *)url;
+-(NSString *)title;
+-(NSImage *)image;
+-(NSString *)comment;
+-(NSDate *)creationDate;
+-(NSDate *)modificationDate;
+-(NSDate *)lastVisitedDate;
+
+-(void)setURL:(NSURL *)url;
+-(void)setTitle:(NSString *)title;
+-(void)setImage:(NSImage *)image;
+-(void)setComment:(NSString *)comment;
+-(void)setModificationDate:(NSDate *)date;
+-(void)setLastVisitedDate:(NSDate *)date;
+
+-(unsigned)hash;
+-(BOOL)isEqual:(id)anObject;
+
+ at end
+
diff --git a/WebKit/History.subproj/IFURIEntry.m b/WebKit/History.subproj/IFURIEntry.m
new file mode 100644
index 0000000..dab9c0d
--- /dev/null
+++ b/WebKit/History.subproj/IFURIEntry.m
@@ -0,0 +1,149 @@
+//
+//  WKURIEntry.m
+//  WebKit
+//
+//  Created by Kenneth Kocienda on Thu Nov 29 2001.
+//  Copyright (c) 2001 __MyCompanyName__. All rights reserved.
+//
+
+#import "WKURIEntry.h"
+#import "WebKitReallyPrivate.h"
+
+
+ at implementation WKURIEntry
+
+-(id)initWithURL:(NSURL *)url title:(NSString *)title
+{
+    return [self initWithURL:url title:title image:nil comment:nil];
+}
+
+-(id)initWithURL:(NSURL *)url title:(NSString *)title image:(NSImage *)image
+{
+    return [self initWithURL:url title:title image:image comment:nil];
+}
+
+-(id)initWithURL:(NSURL *)url title:(NSString *)title image:(NSImage *)image comment:(NSString *)comment
+{
+    WEBKIT_ASSERT_NOT_NIL(url);
+    WEBKIT_ASSERT_NOT_NIL(title);
+
+    if (self != [super init])
+    {
+        return nil;
+    }
+    
+    _url = [url retain];
+    _title = [title retain];
+    _image = [image retain];
+    _comment = [comment retain];
+    _creationDate = [[NSDate alloc] init];
+    _modificationDate = [[NSDate alloc] init];
+    _lastVisitedDate = [[NSDate alloc] init];
+    
+    return self;
+}
+
+-(NSURL *)url
+{
+    return _url;
+}
+
+-(NSString *)title
+{
+    return _title;
+}
+
+-(NSImage *)image
+{
+    return _image;
+}
+
+-(NSString *)comment
+{
+    return _comment;
+}
+
+-(NSDate *)creationDate;
+{
+    return _creationDate;
+}
+
+-(NSDate *)modificationDate;
+{
+    return _modificationDate;
+}
+
+-(NSDate *)lastVisitedDate
+{
+    return _lastVisitedDate;
+}
+
+-(void)setURL:(NSURL *)url
+{
+    if (url != _url) {
+        [_url release];
+        _url = [url retain];
+    }
+}
+
+-(void)setTitle:(NSString *)title
+{
+    if (title != _title) {
+        [_title release];
+        _title = [title retain];
+    }
+}
+
+-(void)setImage:(NSImage *)image
+{
+    if (image != _image) {
+        [_image release];
+        _image = [image retain];
+    }
+}
+
+-(void)setComment:(NSString *)comment
+{
+    if (comment != _comment) {
+        [_comment release];
+        _comment = [comment retain];
+    }
+}
+
+-(void)setModificationDate:(NSDate *)date
+{
+    if (date != _modificationDate) {
+        [_modificationDate release];
+        _modificationDate = [date retain];
+    }
+}
+
+-(void)setLastVisitedDate:(NSDate *)date
+{
+    if (date != _lastVisitedDate) {
+        [_lastVisitedDate release];
+        _lastVisitedDate = [date retain];
+    }
+}
+
+-(unsigned)hash
+{
+    return [_url hash];
+}
+
+-(BOOL)isEqual:(id)anObject
+{
+    BOOL result;
+    
+    result = NO;
+
+    if ([anObject isMemberOfClass:[WKURIEntry class]]) {
+        result = [_url isEqual:[((WKURIEntry *)anObject) url]];
+    }
+    
+    return result;
+}
+
+    
+ at end
+
diff --git a/WebKit/History.subproj/IFURIList.h b/WebKit/History.subproj/IFURIList.h
new file mode 100644
index 0000000..9972875
--- /dev/null
+++ b/WebKit/History.subproj/IFURIList.h
@@ -0,0 +1,40 @@
+/*	WKURIList.h
+	Copyright 2001, Apple, Inc. All rights reserved.
+*/
+
+#import <Foundation/Foundation.h>
+
+#import "WKURIEntry.h"
+
+typedef struct WKURIListNode WKURIListNode;
+
+ at interface WKURIList : NSObject 
+{
+    WKURIListNode *_head;
+    WKURIListNode *_tail;
+    int _count;
+    BOOL _allowsDuplicates;
+    int _maximumSize;
+}
+
+-(id)init;
+
+-(BOOL)allowsDuplicates;
+-(void)setAllowsDuplicates:(BOOL)allowsDuplicates;
+
+-(int)count;
+
+-(int)maximumSize;
+-(void)setMaximumSize:(int)size;
+
+-(WKURIEntry *)addURL:(NSURL *)url withTitle:(NSString *)title;
+-(void)addEntry:(WKURIEntry *)entry;
+-(WKURIEntry *)removeURL:(NSURL *)url;
+-(BOOL)removeEntry:(WKURIEntry *)entry;
+
+-(WKURIEntry *)entryForURL:(NSURL *)url;
+-(WKURIEntry *)entryAtIndex:(int)index;
+-(WKURIEntry *)removeEntryAtIndex:(int)index;
+-(void)removeEntriesToIndex:(int)index;
+
+ at end
diff --git a/WebKit/History.subproj/IFURIList.m b/WebKit/History.subproj/IFURIList.m
new file mode 100644
index 0000000..27b50ab
--- /dev/null
+++ b/WebKit/History.subproj/IFURIList.m
@@ -0,0 +1,313 @@
+/*	WKURIList.h
+	Copyright 2001, Apple, Inc. All rights reserved.
+*/
+
+#import "WKURIList.h"
+#import "WebKitReallyPrivate.h"
+
+struct WKURIListNode
+{
+    unsigned hash;
+    WKURIEntry *entry;
+    WKURIListNode *prev;
+    WKURIListNode *next;
+};
+
+static WKURIListNode *newURIListNode(WKURIEntry *entry)
+{
+    WKURIListNode *node;
+    
+    node = malloc(sizeof(WKURIListNode));
+    node->hash = [entry hash];
+    node->entry = entry;
+    node->prev = nil;
+    node->next = nil;
+    
+    return node;    
+}
+
+static void freeNode(WKURIListNode *node)
+{
+    // it is important to autorelase here rather than using 
+    // a straight release since we often return an entry
+    // as a result of an operation that causes a node
+    // to be freed
+    [node->entry autorelease];
+    free(node);    
+}
+
+
+ at implementation WKURIList
+
+-(id)init
+{
+    if (self != [super init])
+    {
+        return nil;
+    }
+    
+    _head = _tail = nil;
+    _count = 0;
+    _maximumSize = -1;
+    _allowsDuplicates = NO;
+    
+    return self;
+}
+
+-(void)dealloc
+{
+    WKURIListNode *curNode;
+    WKURIListNode *delNode;
+
+    curNode = _head;
+
+    while (curNode) {
+        delNode = curNode;
+        curNode = curNode->next;
+        freeNode(delNode);
+    }
+}
+
+-(BOOL)allowsDuplicates
+{
+    return _allowsDuplicates;
+}
+
+-(void)setAllowsDuplicates:(BOOL)allowsDuplicates
+{
+    _allowsDuplicates = allowsDuplicates;
+}
+
+-(int)count
+{
+    return _count;
+}
+
+-(int)maximumSize
+{
+    return _maximumSize;
+}
+
+-(void)setMaximumSize:(int)size
+{
+    _maximumSize = size;
+}
+
+
+
+-(WKURIEntry *)addURL:(NSURL *)url withTitle:(NSString *)title;
+{
+    WKURIEntry *result;
+    
+    result = [[WKURIEntry alloc] initWithURL:url title:title];
+    [self addEntry:result];
+    
+    return result;
+}
+
+-(void)addEntry:(WKURIEntry *)entry
+{
+    WKURIListNode *node;
+    unsigned hash;
+
+    if (!_allowsDuplicates) {
+        // search the list first and remove any entry with the same URL
+        // having the same title does not count
+        // use the hash codes of the urls to speed up the linear search
+        hash = [entry hash];
+        for (node = _head; node != nil; node = node->next) {
+            if (hash == node->hash && [entry isEqual:node->entry]) {
+                _count--;
+                if (node == _head) {
+                    _head = node->next;
+                    _head->prev = nil;
+                }
+                else if (node == _tail) {
+                    _tail = node->prev;
+                    _tail->next = nil;
+                }
+                else {
+                    node->prev->next = node->next;
+                    node->next->prev = node->prev;
+                }
+                freeNode(node);
+                break;
+            }
+        }
+    }
+
+    // make new entry and put it at the head of the list
+    node = newURIListNode(entry);
+    node->next = _head;
+    _head = node;
+    _count++;
+    if (_count == 1) {
+        _tail = _head;
+    }
+    
+    if (_count > _maximumSize) {
+        // drop off the tail
+        node = _tail;
+        _tail = _tail->prev;
+        _tail->next = nil;
+        freeNode(node);
+        _count--;
+    }
+}
+
+-(WKURIEntry *)removeURL:(NSURL *)url
+{
+    WKURIEntry *removedEntry;
+    WKURIListNode *node;
+    unsigned hash;
+    
+    removedEntry = nil;
+    hash = [url hash];
+
+    for (node = _head; node != nil; node = node->next) {
+        if (hash == node->hash && [url isEqual:[node->entry url]]) {
+            _count--;
+            removedEntry = node->entry;
+            if (node == _head) {
+                _head = node->next;
+                _head->prev = nil;
+            }
+            else if (node == _tail) {
+                _tail = node->prev;
+                _tail->next = nil;
+            }
+            else {
+                node->prev->next = node->next;
+                node->next->prev = node->prev;
+            }
+            freeNode(node);
+            break;
+        }
+    }
+    
+    return removedEntry;
+}
+
+-(BOOL)removeEntry:(WKURIEntry *)entry
+{
+    BOOL removed;
+    WKURIListNode *node;
+    unsigned hash;
+    
+    removed = NO;
+    hash = [entry hash];
+
+    for (node = _head; node != nil; node = node->next) {
+        if (hash == node->hash && [entry isEqual:node->entry]) {
+            _count--;
+            removed = YES;
+            if (node == _head) {
+                _head = node->next;
+                _head->prev = nil;
+            }
+            else if (node == _tail) {
+                _tail = node->prev;
+                _tail->next = nil;
+            }
+            else {
+                node->prev->next = node->next;
+                node->next->prev = node->prev;
+            }
+            freeNode(node);
+            break;
+        }
+    }
+    
+    return removed;
+}
+
+-(WKURIEntry *)entryForURL:(NSURL *)url
+{
+    WKURIEntry *foundEntry;
+    WKURIListNode *node;
+    unsigned hash;
+    
+    foundEntry = nil;
+    hash = [url hash];
+
+    for (node = _head; node != nil; node = node->next) {
+        if (hash == node->hash && [url isEqual:[node->entry url]]) {
+            foundEntry = node->entry;
+            break;
+        }
+    }
+    
+    return foundEntry;
+}
+
+-(WKURIEntry *)entryAtIndex:(int)index
+{
+    int i;
+    WKURIListNode *node;
+
+    WEBKIT_ASSERT(index > 0 && index < _count);
+
+    node = _head;
+
+    for (i = 0; i < index; i++) {
+        node = node->next;
+    }
+
+    return node->entry;    
+}
+
+-(WKURIEntry *)removeEntryAtIndex:(int)index
+{
+    WKURIEntry *removedEntry;
+    WKURIListNode *node;
+    int i;
+
+    WEBKIT_ASSERT(index > 0 && index < _count);
+
+    node = _head;
+
+    for (i = 0; i < index; i++) {
+        node = node->next;
+    }
+
+    _count--;
+    removedEntry = node->entry;
+    if (node == _head) {
+        _head = node->next;
+        _head->prev = nil;
+    }
+    else if (node == _tail) {
+        _tail = node->prev;
+        _tail->next = nil;
+    }
+    else {
+        node->prev->next = node->next;
+        node->next->prev = node->prev;
+    }
+    freeNode(node);
+
+    return removedEntry;
+}
+
+-(void)removeEntriesToIndex:(int)index
+{
+    WKURIListNode *node;
+    WKURIListNode *delNode;
+    int i;
+
+    WEBKIT_ASSERT(index > 0 && index < _count);
+
+    node = _head;
+
+    for (i = 0; i < index; i++) {
+        delNode = node;
+        node = node->next;
+        freeNode(delNode);
+    }
+    
+    _head = node;
+}
+
+
+
+ at end
diff --git a/WebKit/History.subproj/WKBackForwardList.h b/WebKit/History.subproj/WKBackForwardList.h
new file mode 100644
index 0000000..4d77d10
--- /dev/null
+++ b/WebKit/History.subproj/WKBackForwardList.h
@@ -0,0 +1,18 @@
+//
+//  WKBackForwardList.h
+//  WebKit
+//
+//  Created by Kenneth Kocienda on Thu Nov 29 2001.
+//  Copyright (c) 2001 __MyCompanyName__. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import "WKURIList.h"
+
+ at interface WKBackForwardList : NSObject {
+    WKURIList *uriList;
+}
+
+
+
+ at end
diff --git a/WebKit/History.subproj/WKBackForwardList.m b/WebKit/History.subproj/WKBackForwardList.m
new file mode 100644
index 0000000..cf40808
--- /dev/null
+++ b/WebKit/History.subproj/WKBackForwardList.m
@@ -0,0 +1,14 @@
+//
+//  WKBackForwardList.m
+//  WebKit
+//
+//  Created by Kenneth Kocienda on Thu Nov 29 2001.
+//  Copyright (c) 2001 __MyCompanyName__. All rights reserved.
+//
+
+#import "WKBackForwardList.h"
+
+
+ at implementation WKBackForwardList
+
+ at end
diff --git a/WebKit/History.subproj/WKURIEntry.h b/WebKit/History.subproj/WKURIEntry.h
new file mode 100644
index 0000000..b7d63ae
--- /dev/null
+++ b/WebKit/History.subproj/WKURIEntry.h
@@ -0,0 +1,47 @@
+//
+//  WKURIEntry.h
+//  WebKit
+//
+//  Created by Kenneth Kocienda on Thu Nov 29 2001.
+//  Copyright (c) 2001 __MyCompanyName__. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <AppKit/AppKit.h>
+
+
+ at interface WKURIEntry : NSObject 
+{
+    NSURL *_url;
+    NSString *_title;
+    NSImage *_image;
+    NSString *_comment;
+    NSDate *_creationDate;
+    NSDate *_modificationDate;
+    NSDate *_lastVisitedDate;
+}
+
+-(id)initWithURL:(NSURL *)url title:(NSString *)title;
+-(id)initWithURL:(NSURL *)url title:(NSString *)title image:(NSImage *)image;
+-(id)initWithURL:(NSURL *)url title:(NSString *)title image:(NSImage *)image comment:(NSString *)comment;
+
+-(NSURL *)url;
+-(NSString *)title;
+-(NSImage *)image;
+-(NSString *)comment;
+-(NSDate *)creationDate;
+-(NSDate *)modificationDate;
+-(NSDate *)lastVisitedDate;
+
+-(void)setURL:(NSURL *)url;
+-(void)setTitle:(NSString *)title;
+-(void)setImage:(NSImage *)image;
+-(void)setComment:(NSString *)comment;
+-(void)setModificationDate:(NSDate *)date;
+-(void)setLastVisitedDate:(NSDate *)date;
+
+-(unsigned)hash;
+-(BOOL)isEqual:(id)anObject;
+
+ at end
+
diff --git a/WebKit/History.subproj/WKURIEntry.m b/WebKit/History.subproj/WKURIEntry.m
new file mode 100644
index 0000000..dab9c0d
--- /dev/null
+++ b/WebKit/History.subproj/WKURIEntry.m
@@ -0,0 +1,149 @@
+//
+//  WKURIEntry.m
+//  WebKit
+//
+//  Created by Kenneth Kocienda on Thu Nov 29 2001.
+//  Copyright (c) 2001 __MyCompanyName__. All rights reserved.
+//
+
+#import "WKURIEntry.h"
+#import "WebKitReallyPrivate.h"
+
+
+ at implementation WKURIEntry
+
+-(id)initWithURL:(NSURL *)url title:(NSString *)title
+{
+    return [self initWithURL:url title:title image:nil comment:nil];
+}
+
+-(id)initWithURL:(NSURL *)url title:(NSString *)title image:(NSImage *)image
+{
+    return [self initWithURL:url title:title image:image comment:nil];
+}
+
+-(id)initWithURL:(NSURL *)url title:(NSString *)title image:(NSImage *)image comment:(NSString *)comment
+{
+    WEBKIT_ASSERT_NOT_NIL(url);
+    WEBKIT_ASSERT_NOT_NIL(title);
+
+    if (self != [super init])
+    {
+        return nil;
+    }
+    
+    _url = [url retain];
+    _title = [title retain];
+    _image = [image retain];
+    _comment = [comment retain];
+    _creationDate = [[NSDate alloc] init];
+    _modificationDate = [[NSDate alloc] init];
+    _lastVisitedDate = [[NSDate alloc] init];
+    
+    return self;
+}
+
+-(NSURL *)url
+{
+    return _url;
+}
+
+-(NSString *)title
+{
+    return _title;
+}
+
+-(NSImage *)image
+{
+    return _image;
+}
+
+-(NSString *)comment
+{
+    return _comment;
+}
+
+-(NSDate *)creationDate;
+{
+    return _creationDate;
+}
+
+-(NSDate *)modificationDate;
+{
+    return _modificationDate;
+}
+
+-(NSDate *)lastVisitedDate
+{
+    return _lastVisitedDate;
+}
+
+-(void)setURL:(NSURL *)url
+{
+    if (url != _url) {
+        [_url release];
+        _url = [url retain];
+    }
+}
+
+-(void)setTitle:(NSString *)title
+{
+    if (title != _title) {
+        [_title release];
+        _title = [title retain];
+    }
+}
+
+-(void)setImage:(NSImage *)image
+{
+    if (image != _image) {
+        [_image release];
+        _image = [image retain];
+    }
+}
+
+-(void)setComment:(NSString *)comment
+{
+    if (comment != _comment) {
+        [_comment release];
+        _comment = [comment retain];
+    }
+}
+
+-(void)setModificationDate:(NSDate *)date
+{
+    if (date != _modificationDate) {
+        [_modificationDate release];
+        _modificationDate = [date retain];
+    }
+}
+
+-(void)setLastVisitedDate:(NSDate *)date
+{
+    if (date != _lastVisitedDate) {
+        [_lastVisitedDate release];
+        _lastVisitedDate = [date retain];
+    }
+}
+
+-(unsigned)hash
+{
+    return [_url hash];
+}
+
+-(BOOL)isEqual:(id)anObject
+{
+    BOOL result;
+    
+    result = NO;
+
+    if ([anObject isMemberOfClass:[WKURIEntry class]]) {
+        result = [_url isEqual:[((WKURIEntry *)anObject) url]];
+    }
+    
+    return result;
+}
+
+    
+ at end
+
diff --git a/WebKit/History.subproj/WKURIList.h b/WebKit/History.subproj/WKURIList.h
new file mode 100644
index 0000000..9972875
--- /dev/null
+++ b/WebKit/History.subproj/WKURIList.h
@@ -0,0 +1,40 @@
+/*	WKURIList.h
+	Copyright 2001, Apple, Inc. All rights reserved.
+*/
+
+#import <Foundation/Foundation.h>
+
+#import "WKURIEntry.h"
+
+typedef struct WKURIListNode WKURIListNode;
+
+ at interface WKURIList : NSObject 
+{
+    WKURIListNode *_head;
+    WKURIListNode *_tail;
+    int _count;
+    BOOL _allowsDuplicates;
+    int _maximumSize;
+}
+
+-(id)init;
+
+-(BOOL)allowsDuplicates;
+-(void)setAllowsDuplicates:(BOOL)allowsDuplicates;
+
+-(int)count;
+
+-(int)maximumSize;
+-(void)setMaximumSize:(int)size;
+
+-(WKURIEntry *)addURL:(NSURL *)url withTitle:(NSString *)title;
+-(void)addEntry:(WKURIEntry *)entry;
+-(WKURIEntry *)removeURL:(NSURL *)url;
+-(BOOL)removeEntry:(WKURIEntry *)entry;
+
+-(WKURIEntry *)entryForURL:(NSURL *)url;
+-(WKURIEntry *)entryAtIndex:(int)index;
+-(WKURIEntry *)removeEntryAtIndex:(int)index;
+-(void)removeEntriesToIndex:(int)index;
+
+ at end
diff --git a/WebKit/History.subproj/WKURIList.m b/WebKit/History.subproj/WKURIList.m
new file mode 100644
index 0000000..27b50ab
--- /dev/null
+++ b/WebKit/History.subproj/WKURIList.m
@@ -0,0 +1,313 @@
+/*	WKURIList.h
+	Copyright 2001, Apple, Inc. All rights reserved.
+*/
+
+#import "WKURIList.h"
+#import "WebKitReallyPrivate.h"
+
+struct WKURIListNode
+{
+    unsigned hash;
+    WKURIEntry *entry;
+    WKURIListNode *prev;
+    WKURIListNode *next;
+};
+
+static WKURIListNode *newURIListNode(WKURIEntry *entry)
+{
+    WKURIListNode *node;
+    
+    node = malloc(sizeof(WKURIListNode));
+    node->hash = [entry hash];
+    node->entry = entry;
+    node->prev = nil;
+    node->next = nil;
+    
+    return node;    
+}
+
+static void freeNode(WKURIListNode *node)
+{
+    // it is important to autorelase here rather than using 
+    // a straight release since we often return an entry
+    // as a result of an operation that causes a node
+    // to be freed
+    [node->entry autorelease];
+    free(node);    
+}
+
+
+ at implementation WKURIList
+
+-(id)init
+{
+    if (self != [super init])
+    {
+        return nil;
+    }
+    
+    _head = _tail = nil;
+    _count = 0;
+    _maximumSize = -1;
+    _allowsDuplicates = NO;
+    
+    return self;
+}
+
+-(void)dealloc
+{
+    WKURIListNode *curNode;
+    WKURIListNode *delNode;
+
+    curNode = _head;
+
+    while (curNode) {
+        delNode = curNode;
+        curNode = curNode->next;
+        freeNode(delNode);
+    }
+}
+
+-(BOOL)allowsDuplicates
+{
+    return _allowsDuplicates;
+}
+
+-(void)setAllowsDuplicates:(BOOL)allowsDuplicates
+{
+    _allowsDuplicates = allowsDuplicates;
+}
+
+-(int)count
+{
+    return _count;
+}
+
+-(int)maximumSize
+{
+    return _maximumSize;
+}
+
+-(void)setMaximumSize:(int)size
+{
+    _maximumSize = size;
+}
+
+
+
+-(WKURIEntry *)addURL:(NSURL *)url withTitle:(NSString *)title;
+{
+    WKURIEntry *result;
+    
+    result = [[WKURIEntry alloc] initWithURL:url title:title];
+    [self addEntry:result];
+    
+    return result;
+}
+
+-(void)addEntry:(WKURIEntry *)entry
+{
+    WKURIListNode *node;
+    unsigned hash;
+
+    if (!_allowsDuplicates) {
+        // search the list first and remove any entry with the same URL
+        // having the same title does not count
+        // use the hash codes of the urls to speed up the linear search
+        hash = [entry hash];
+        for (node = _head; node != nil; node = node->next) {
+            if (hash == node->hash && [entry isEqual:node->entry]) {
+                _count--;
+                if (node == _head) {
+                    _head = node->next;
+                    _head->prev = nil;
+                }
+                else if (node == _tail) {
+                    _tail = node->prev;
+                    _tail->next = nil;
+                }
+                else {
+                    node->prev->next = node->next;
+                    node->next->prev = node->prev;
+                }
+                freeNode(node);
+                break;
+            }
+        }
+    }
+
+    // make new entry and put it at the head of the list
+    node = newURIListNode(entry);
+    node->next = _head;
+    _head = node;
+    _count++;
+    if (_count == 1) {
+        _tail = _head;
+    }
+    
+    if (_count > _maximumSize) {
+        // drop off the tail
+        node = _tail;
+        _tail = _tail->prev;
+        _tail->next = nil;
+        freeNode(node);
+        _count--;
+    }
+}
+
+-(WKURIEntry *)removeURL:(NSURL *)url
+{
+    WKURIEntry *removedEntry;
+    WKURIListNode *node;
+    unsigned hash;
+    
+    removedEntry = nil;
+    hash = [url hash];
+
+    for (node = _head; node != nil; node = node->next) {
+        if (hash == node->hash && [url isEqual:[node->entry url]]) {
+            _count--;
+            removedEntry = node->entry;
+            if (node == _head) {
+                _head = node->next;
+                _head->prev = nil;
+            }
+            else if (node == _tail) {
+                _tail = node->prev;
+                _tail->next = nil;
+            }
+            else {
+                node->prev->next = node->next;
+                node->next->prev = node->prev;
+            }
+            freeNode(node);
+            break;
+        }
+    }
+    
+    return removedEntry;
+}
+
+-(BOOL)removeEntry:(WKURIEntry *)entry
+{
+    BOOL removed;
+    WKURIListNode *node;
+    unsigned hash;
+    
+    removed = NO;
+    hash = [entry hash];
+
+    for (node = _head; node != nil; node = node->next) {
+        if (hash == node->hash && [entry isEqual:node->entry]) {
+            _count--;
+            removed = YES;
+            if (node == _head) {
+                _head = node->next;
+                _head->prev = nil;
+            }
+            else if (node == _tail) {
+                _tail = node->prev;
+                _tail->next = nil;
+            }
+            else {
+                node->prev->next = node->next;
+                node->next->prev = node->prev;
+            }
+            freeNode(node);
+            break;
+        }
+    }
+    
+    return removed;
+}
+
+-(WKURIEntry *)entryForURL:(NSURL *)url
+{
+    WKURIEntry *foundEntry;
+    WKURIListNode *node;
+    unsigned hash;
+    
+    foundEntry = nil;
+    hash = [url hash];
+
+    for (node = _head; node != nil; node = node->next) {
+        if (hash == node->hash && [url isEqual:[node->entry url]]) {
+            foundEntry = node->entry;
+            break;
+        }
+    }
+    
+    return foundEntry;
+}
+
+-(WKURIEntry *)entryAtIndex:(int)index
+{
+    int i;
+    WKURIListNode *node;
+
+    WEBKIT_ASSERT(index > 0 && index < _count);
+
+    node = _head;
+
+    for (i = 0; i < index; i++) {
+        node = node->next;
+    }
+
+    return node->entry;    
+}
+
+-(WKURIEntry *)removeEntryAtIndex:(int)index
+{
+    WKURIEntry *removedEntry;
+    WKURIListNode *node;
+    int i;
+
+    WEBKIT_ASSERT(index > 0 && index < _count);
+
+    node = _head;
+
+    for (i = 0; i < index; i++) {
+        node = node->next;
+    }
+
+    _count--;
+    removedEntry = node->entry;
+    if (node == _head) {
+        _head = node->next;
+        _head->prev = nil;
+    }
+    else if (node == _tail) {
+        _tail = node->prev;
+        _tail->next = nil;
+    }
+    else {
+        node->prev->next = node->next;
+        node->next->prev = node->prev;
+    }
+    freeNode(node);
+
+    return removedEntry;
+}
+
+-(void)removeEntriesToIndex:(int)index
+{
+    WKURIListNode *node;
+    WKURIListNode *delNode;
+    int i;
+
+    WEBKIT_ASSERT(index > 0 && index < _count);
+
+    node = _head;
+
+    for (i = 0; i < index; i++) {
+        delNode = node;
+        node = node->next;
+        freeNode(delNode);
+    }
+    
+    _head = node;
+}
+
+
+
+ at end
diff --git a/WebKit/History.subproj/WebBackForwardList.h b/WebKit/History.subproj/WebBackForwardList.h
new file mode 100644
index 0000000..4d77d10
--- /dev/null
+++ b/WebKit/History.subproj/WebBackForwardList.h
@@ -0,0 +1,18 @@
+//
+//  WKBackForwardList.h
+//  WebKit
+//
+//  Created by Kenneth Kocienda on Thu Nov 29 2001.
+//  Copyright (c) 2001 __MyCompanyName__. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import "WKURIList.h"
+
+ at interface WKBackForwardList : NSObject {
+    WKURIList *uriList;
+}
+
+
+
+ at end
diff --git a/WebKit/History.subproj/WebBackForwardList.m b/WebKit/History.subproj/WebBackForwardList.m
new file mode 100644
index 0000000..cf40808
--- /dev/null
+++ b/WebKit/History.subproj/WebBackForwardList.m
@@ -0,0 +1,14 @@
+//
+//  WKBackForwardList.m
+//  WebKit
+//
+//  Created by Kenneth Kocienda on Thu Nov 29 2001.
+//  Copyright (c) 2001 __MyCompanyName__. All rights reserved.
+//
+
+#import "WKBackForwardList.h"
+
+
+ at implementation WKBackForwardList
+
+ at end
diff --git a/WebKit/History.subproj/WebHistoryItem.h b/WebKit/History.subproj/WebHistoryItem.h
new file mode 100644
index 0000000..b7d63ae
--- /dev/null
+++ b/WebKit/History.subproj/WebHistoryItem.h
@@ -0,0 +1,47 @@
+//
+//  WKURIEntry.h
+//  WebKit
+//
+//  Created by Kenneth Kocienda on Thu Nov 29 2001.
+//  Copyright (c) 2001 __MyCompanyName__. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <AppKit/AppKit.h>
+
+
+ at interface WKURIEntry : NSObject 
+{
+    NSURL *_url;
+    NSString *_title;
+    NSImage *_image;
+    NSString *_comment;
+    NSDate *_creationDate;
+    NSDate *_modificationDate;
+    NSDate *_lastVisitedDate;
+}
+
+-(id)initWithURL:(NSURL *)url title:(NSString *)title;
+-(id)initWithURL:(NSURL *)url title:(NSString *)title image:(NSImage *)image;
+-(id)initWithURL:(NSURL *)url title:(NSString *)title image:(NSImage *)image comment:(NSString *)comment;
+
+-(NSURL *)url;
+-(NSString *)title;
+-(NSImage *)image;
+-(NSString *)comment;
+-(NSDate *)creationDate;
+-(NSDate *)modificationDate;
+-(NSDate *)lastVisitedDate;
+
+-(void)setURL:(NSURL *)url;
+-(void)setTitle:(NSString *)title;
+-(void)setImage:(NSImage *)image;
+-(void)setComment:(NSString *)comment;
+-(void)setModificationDate:(NSDate *)date;
+-(void)setLastVisitedDate:(NSDate *)date;
+
+-(unsigned)hash;
+-(BOOL)isEqual:(id)anObject;
+
+ at end
+
diff --git a/WebKit/History.subproj/WebHistoryItem.m b/WebKit/History.subproj/WebHistoryItem.m
new file mode 100644
index 0000000..dab9c0d
--- /dev/null
+++ b/WebKit/History.subproj/WebHistoryItem.m
@@ -0,0 +1,149 @@
+//
+//  WKURIEntry.m
+//  WebKit
+//
+//  Created by Kenneth Kocienda on Thu Nov 29 2001.
+//  Copyright (c) 2001 __MyCompanyName__. All rights reserved.
+//
+
+#import "WKURIEntry.h"
+#import "WebKitReallyPrivate.h"
+
+
+ at implementation WKURIEntry
+
+-(id)initWithURL:(NSURL *)url title:(NSString *)title
+{
+    return [self initWithURL:url title:title image:nil comment:nil];
+}
+
+-(id)initWithURL:(NSURL *)url title:(NSString *)title image:(NSImage *)image
+{
+    return [self initWithURL:url title:title image:image comment:nil];
+}
+
+-(id)initWithURL:(NSURL *)url title:(NSString *)title image:(NSImage *)image comment:(NSString *)comment
+{
+    WEBKIT_ASSERT_NOT_NIL(url);
+    WEBKIT_ASSERT_NOT_NIL(title);
+
+    if (self != [super init])
+    {
+        return nil;
+    }
+    
+    _url = [url retain];
+    _title = [title retain];
+    _image = [image retain];
+    _comment = [comment retain];
+    _creationDate = [[NSDate alloc] init];
+    _modificationDate = [[NSDate alloc] init];
+    _lastVisitedDate = [[NSDate alloc] init];
+    
+    return self;
+}
+
+-(NSURL *)url
+{
+    return _url;
+}
+
+-(NSString *)title
+{
+    return _title;
+}
+
+-(NSImage *)image
+{
+    return _image;
+}
+
+-(NSString *)comment
+{
+    return _comment;
+}
+
+-(NSDate *)creationDate;
+{
+    return _creationDate;
+}
+
+-(NSDate *)modificationDate;
+{
+    return _modificationDate;
+}
+
+-(NSDate *)lastVisitedDate
+{
+    return _lastVisitedDate;
+}
+
+-(void)setURL:(NSURL *)url
+{
+    if (url != _url) {
+        [_url release];
+        _url = [url retain];
+    }
+}
+
+-(void)setTitle:(NSString *)title
+{
+    if (title != _title) {
+        [_title release];
+        _title = [title retain];
+    }
+}
+
+-(void)setImage:(NSImage *)image
+{
+    if (image != _image) {
+        [_image release];
+        _image = [image retain];
+    }
+}
+
+-(void)setComment:(NSString *)comment
+{
+    if (comment != _comment) {
+        [_comment release];
+        _comment = [comment retain];
+    }
+}
+
+-(void)setModificationDate:(NSDate *)date
+{
+    if (date != _modificationDate) {
+        [_modificationDate release];
+        _modificationDate = [date retain];
+    }
+}
+
+-(void)setLastVisitedDate:(NSDate *)date
+{
+    if (date != _lastVisitedDate) {
+        [_lastVisitedDate release];
+        _lastVisitedDate = [date retain];
+    }
+}
+
+-(unsigned)hash
+{
+    return [_url hash];
+}
+
+-(BOOL)isEqual:(id)anObject
+{
+    BOOL result;
+    
+    result = NO;
+
+    if ([anObject isMemberOfClass:[WKURIEntry class]]) {
+        result = [_url isEqual:[((WKURIEntry *)anObject) url]];
+    }
+    
+    return result;
+}
+
+    
+ at end
+
diff --git a/WebKit/History.subproj/WebHistoryList.h b/WebKit/History.subproj/WebHistoryList.h
new file mode 100644
index 0000000..9972875
--- /dev/null
+++ b/WebKit/History.subproj/WebHistoryList.h
@@ -0,0 +1,40 @@
+/*	WKURIList.h
+	Copyright 2001, Apple, Inc. All rights reserved.
+*/
+
+#import <Foundation/Foundation.h>
+
+#import "WKURIEntry.h"
+
+typedef struct WKURIListNode WKURIListNode;
+
+ at interface WKURIList : NSObject 
+{
+    WKURIListNode *_head;
+    WKURIListNode *_tail;
+    int _count;
+    BOOL _allowsDuplicates;
+    int _maximumSize;
+}
+
+-(id)init;
+
+-(BOOL)allowsDuplicates;
+-(void)setAllowsDuplicates:(BOOL)allowsDuplicates;
+
+-(int)count;
+
+-(int)maximumSize;
+-(void)setMaximumSize:(int)size;
+
+-(WKURIEntry *)addURL:(NSURL *)url withTitle:(NSString *)title;
+-(void)addEntry:(WKURIEntry *)entry;
+-(WKURIEntry *)removeURL:(NSURL *)url;
+-(BOOL)removeEntry:(WKURIEntry *)entry;
+
+-(WKURIEntry *)entryForURL:(NSURL *)url;
+-(WKURIEntry *)entryAtIndex:(int)index;
+-(WKURIEntry *)removeEntryAtIndex:(int)index;
+-(void)removeEntriesToIndex:(int)index;
+
+ at end
diff --git a/WebKit/History.subproj/WebHistoryList.m b/WebKit/History.subproj/WebHistoryList.m
new file mode 100644
index 0000000..27b50ab
--- /dev/null
+++ b/WebKit/History.subproj/WebHistoryList.m
@@ -0,0 +1,313 @@
+/*	WKURIList.h
+	Copyright 2001, Apple, Inc. All rights reserved.
+*/
+
+#import "WKURIList.h"
+#import "WebKitReallyPrivate.h"
+
+struct WKURIListNode
+{
+    unsigned hash;
+    WKURIEntry *entry;
+    WKURIListNode *prev;
+    WKURIListNode *next;
+};
+
+static WKURIListNode *newURIListNode(WKURIEntry *entry)
+{
+    WKURIListNode *node;
+    
+    node = malloc(sizeof(WKURIListNode));
+    node->hash = [entry hash];
+    node->entry = entry;
+    node->prev = nil;
+    node->next = nil;
+    
+    return node;    
+}
+
+static void freeNode(WKURIListNode *node)
+{
+    // it is important to autorelase here rather than using 
+    // a straight release since we often return an entry
+    // as a result of an operation that causes a node
+    // to be freed
+    [node->entry autorelease];
+    free(node);    
+}
+
+
+ at implementation WKURIList
+
+-(id)init
+{
+    if (self != [super init])
+    {
+        return nil;
+    }
+    
+    _head = _tail = nil;
+    _count = 0;
+    _maximumSize = -1;
+    _allowsDuplicates = NO;
+    
+    return self;
+}
+
+-(void)dealloc
+{
+    WKURIListNode *curNode;
+    WKURIListNode *delNode;
+
+    curNode = _head;
+
+    while (curNode) {
+        delNode = curNode;
+        curNode = curNode->next;
+        freeNode(delNode);
+    }
+}
+
+-(BOOL)allowsDuplicates
+{
+    return _allowsDuplicates;
+}
+
+-(void)setAllowsDuplicates:(BOOL)allowsDuplicates
+{
+    _allowsDuplicates = allowsDuplicates;
+}
+
+-(int)count
+{
+    return _count;
+}
+
+-(int)maximumSize
+{
+    return _maximumSize;
+}
+
+-(void)setMaximumSize:(int)size
+{
+    _maximumSize = size;
+}
+
+
+
+-(WKURIEntry *)addURL:(NSURL *)url withTitle:(NSString *)title;
+{
+    WKURIEntry *result;
+    
+    result = [[WKURIEntry alloc] initWithURL:url title:title];
+    [self addEntry:result];
+    
+    return result;
+}
+
+-(void)addEntry:(WKURIEntry *)entry
+{
+    WKURIListNode *node;
+    unsigned hash;
+
+    if (!_allowsDuplicates) {
+        // search the list first and remove any entry with the same URL
+        // having the same title does not count
+        // use the hash codes of the urls to speed up the linear search
+        hash = [entry hash];
+        for (node = _head; node != nil; node = node->next) {
+            if (hash == node->hash && [entry isEqual:node->entry]) {
+                _count--;
+                if (node == _head) {
+                    _head = node->next;
+                    _head->prev = nil;
+                }
+                else if (node == _tail) {
+                    _tail = node->prev;
+                    _tail->next = nil;
+                }
+                else {
+                    node->prev->next = node->next;
+                    node->next->prev = node->prev;
+                }
+                freeNode(node);
+                break;
+            }
+        }
+    }
+
+    // make new entry and put it at the head of the list
+    node = newURIListNode(entry);
+    node->next = _head;
+    _head = node;
+    _count++;
+    if (_count == 1) {
+        _tail = _head;
+    }
+    
+    if (_count > _maximumSize) {
+        // drop off the tail
+        node = _tail;
+        _tail = _tail->prev;
+        _tail->next = nil;
+        freeNode(node);
+        _count--;
+    }
+}
+
+-(WKURIEntry *)removeURL:(NSURL *)url
+{
+    WKURIEntry *removedEntry;
+    WKURIListNode *node;
+    unsigned hash;
+    
+    removedEntry = nil;
+    hash = [url hash];
+
+    for (node = _head; node != nil; node = node->next) {
+        if (hash == node->hash && [url isEqual:[node->entry url]]) {
+            _count--;
+            removedEntry = node->entry;
+            if (node == _head) {
+                _head = node->next;
+                _head->prev = nil;
+            }
+            else if (node == _tail) {
+                _tail = node->prev;
+                _tail->next = nil;
+            }
+            else {
+                node->prev->next = node->next;
+                node->next->prev = node->prev;
+            }
+            freeNode(node);
+            break;
+        }
+    }
+    
+    return removedEntry;
+}
+
+-(BOOL)removeEntry:(WKURIEntry *)entry
+{
+    BOOL removed;
+    WKURIListNode *node;
+    unsigned hash;
+    
+    removed = NO;
+    hash = [entry hash];
+
+    for (node = _head; node != nil; node = node->next) {
+        if (hash == node->hash && [entry isEqual:node->entry]) {
+            _count--;
+            removed = YES;
+            if (node == _head) {
+                _head = node->next;
+                _head->prev = nil;
+            }
+            else if (node == _tail) {
+                _tail = node->prev;
+                _tail->next = nil;
+            }
+            else {
+                node->prev->next = node->next;
+                node->next->prev = node->prev;
+            }
+            freeNode(node);
+            break;
+        }
+    }
+    
+    return removed;
+}
+
+-(WKURIEntry *)entryForURL:(NSURL *)url
+{
+    WKURIEntry *foundEntry;
+    WKURIListNode *node;
+    unsigned hash;
+    
+    foundEntry = nil;
+    hash = [url hash];
+
+    for (node = _head; node != nil; node = node->next) {
+        if (hash == node->hash && [url isEqual:[node->entry url]]) {
+            foundEntry = node->entry;
+            break;
+        }
+    }
+    
+    return foundEntry;
+}
+
+-(WKURIEntry *)entryAtIndex:(int)index
+{
+    int i;
+    WKURIListNode *node;
+
+    WEBKIT_ASSERT(index > 0 && index < _count);
+
+    node = _head;
+
+    for (i = 0; i < index; i++) {
+        node = node->next;
+    }
+
+    return node->entry;    
+}
+
+-(WKURIEntry *)removeEntryAtIndex:(int)index
+{
+    WKURIEntry *removedEntry;
+    WKURIListNode *node;
+    int i;
+
+    WEBKIT_ASSERT(index > 0 && index < _count);
+
+    node = _head;
+
+    for (i = 0; i < index; i++) {
+        node = node->next;
+    }
+
+    _count--;
+    removedEntry = node->entry;
+    if (node == _head) {
+        _head = node->next;
+        _head->prev = nil;
+    }
+    else if (node == _tail) {
+        _tail = node->prev;
+        _tail->next = nil;
+    }
+    else {
+        node->prev->next = node->next;
+        node->next->prev = node->prev;
+    }
+    freeNode(node);
+
+    return removedEntry;
+}
+
+-(void)removeEntriesToIndex:(int)index
+{
+    WKURIListNode *node;
+    WKURIListNode *delNode;
+    int i;
+
+    WEBKIT_ASSERT(index > 0 && index < _count);
+
+    node = _head;
+
+    for (i = 0; i < index; i++) {
+        delNode = node;
+        node = node->next;
+        freeNode(delNode);
+    }
+    
+    _head = node;
+}
+
+
+
+ at end
diff --git a/WebKit/WebKit.pbproj/kocienda.pbxuser b/WebKit/WebKit.pbproj/kocienda.pbxuser
index 04d2752..54b2ec9 100644
--- a/WebKit/WebKit.pbproj/kocienda.pbxuser
+++ b/WebKit/WebKit.pbproj/kocienda.pbxuser
@@ -12,12 +12,13 @@
 			PBXWorkspaceConfiguration = {
 				ContentSize = "{1207, 1028}";
 				LeftSlideOut = {
-					ActiveTab = 3;
+					ActiveTab = 0;
 					Frame = "{{0, 23}, {1207, 1005}}";
 					Split0 = {
-						Frame = "{{224, 0}, {983, 1005}}";
+						ActiveTab = 2;
+						Frame = "{{312, 0}, {895, 1005}}";
 						Split0 = {
-							Frame = "{{0, 24}, {983, 981}}";
+							Frame = "{{0, 1004}, {895, 1}}";
 						};
 						SplitCount = 1;
 						Tab0 = {
@@ -53,9 +54,9 @@
 							};
 						};
 						Tab2 = {
-							BuildMessageFrame = "{{0, 0}, {985, 213}}";
-							BuildTranscriptFrame = "{{0, 222}, {985, 418}}";
-							Frame = "{{0, 0}, {983, 638}}";
+							BuildMessageFrame = "{{0, 0}, {897, 325}}";
+							BuildTranscriptFrame = "{{0, 334}, {897, 648}}";
+							Frame = "{{0, 0}, {895, 980}}";
 						};
 						Tab3 = {
 							Frame = "{{0, 0}, {891, 295}}";
@@ -103,6 +104,16 @@
 			sepNavWindowFrame = "{{38, 650}, {750, 502}}";
 		};
 	};
+	25A8176D01B5B9180ECA149E = {
+		uiCtxt = {
+			sepNavWindowFrame = "{{15, 267}, {853, 906}}";
+		};
+	};
+	25A8176E01B5B9180ECA149E = {
+		uiCtxt = {
+			sepNavWindowFrame = "{{672, 74}, {790, 1081}}";
+		};
+	};
 	25C29825016E29620ECA149E = {
 		uiCtxt = {
 			sepNavWindowFrame = "{{38, 650}, {750, 502}}";
diff --git a/WebKit/WebKit.pbproj/project.pbxproj b/WebKit/WebKit.pbproj/project.pbxproj
index 45893d9..f9961b7 100644
--- a/WebKit/WebKit.pbproj/project.pbxproj
+++ b/WebKit/WebKit.pbproj/project.pbxproj
@@ -83,6 +83,7 @@
 			children = (
 				9C7CABBB0190A37C0ECA16EA,
 				254DC334016E1D3F0ECA149E,
+				25A8176801B5474B0ECA149E,
 				2568C71E017490290ECA149E,
 				089C1665FE841158C02AAC07,
 				0867D69AFE84028FC02AAC07,
@@ -121,9 +122,8 @@
 				FRAMEWORK_SEARCH_PATHS = "";
 				FRAMEWORK_VERSION = A;
 				HEADER_SEARCH_PATHS = ../WebCore/include;
-				INSTALL_PATH = "$(HOME)/Library/Frameworks";
+				INSTALL_PATH = "@executable_path/../Frameworks";
 				LIBRARY_SEARCH_PATHS = "";
-				OTHER_CFLAGS = "";
 				PRODUCT_NAME = WebKit;
 				SECTORDER_FLAGS = "";
 				WARNING_CFLAGS = "-Wmost -Wno-four-char-constants -Wno-unknown-pragmas";
@@ -153,11 +153,13 @@
 	<key>CFBundlePackageType</key>
 	<string>FMWK</string>
 	<key>CFBundleSignature</key>
-	<string>????</string>
+	<string>webk</string>
 	<key>CFBundleVersion</key>
 	<string>0.0.1d1</string>
 	<key>NSPrincipalClass</key>
 	<string></string>
+	<key>SKIP_INSTALL</key>
+	<string>YES</string>
 </dict>
 </plist>
 ";
@@ -179,6 +181,9 @@
 				9C93A48A01920D3D0ECA16EA,
 				251E877A01A1EE570ECA149E,
 				25A5593301A5996D0ECA149E,
+				25A8176F01B5B9180ECA149E,
+				25A8177301B698760ECA149E,
+				25A8177701B6A5240ECA149E,
 			);
 			isa = PBXHeadersBuildPhase;
 			name = Headers;
@@ -204,6 +209,9 @@
 				9C93A48B01920D3D0ECA16EA,
 				251E877B01A1EE570ECA149E,
 				25A5593401A5996D0ECA149E,
+				25A8177001B5B9180ECA149E,
+				25A8177401B698760ECA149E,
+				25A8177801B6A5240ECA149E,
 			);
 			isa = PBXSourcesBuildPhase;
 			name = Sources;
@@ -453,6 +461,9 @@
 			fileRef = 25A5593101A5996D0ECA149E;
 			isa = PBXBuildFile;
 			settings = {
+				ATTRIBUTES = (
+					Private,
+				);
 			};
 		};
 		25A5593401A5996D0ECA149E = {
@@ -461,6 +472,86 @@
 			settings = {
 			};
 		};
+		25A8176801B5474B0ECA149E = {
+			children = (
+				25A8176D01B5B9180ECA149E,
+				25A8176E01B5B9180ECA149E,
+				25A8177101B698760ECA149E,
+				25A8177201B698760ECA149E,
+				25A8177501B6A5240ECA149E,
+				25A8177601B6A5240ECA149E,
+			);
+			isa = PBXGroup;
+			name = History;
+			path = History.subproj;
+			refType = 4;
+		};
+		25A8176D01B5B9180ECA149E = {
+			isa = PBXFileReference;
+			path = WKURIList.h;
+			refType = 4;
+		};
+		25A8176E01B5B9180ECA149E = {
+			isa = PBXFileReference;
+			path = WKURIList.m;
+			refType = 4;
+		};
+		25A8176F01B5B9180ECA149E = {
+			fileRef = 25A8176D01B5B9180ECA149E;
+			isa = PBXBuildFile;
+			settings = {
+			};
+		};
+		25A8177001B5B9180ECA149E = {
+			fileRef = 25A8176E01B5B9180ECA149E;
+			isa = PBXBuildFile;
+			settings = {
+			};
+		};
+		25A8177101B698760ECA149E = {
+			isa = PBXFileReference;
+			path = WKURIEntry.h;
+			refType = 4;
+		};
+		25A8177201B698760ECA149E = {
+			isa = PBXFileReference;
+			path = WKURIEntry.m;
+			refType = 4;
+		};
+		25A8177301B698760ECA149E = {
+			fileRef = 25A8177101B698760ECA149E;
+			isa = PBXBuildFile;
+			settings = {
+			};
+		};
+		25A8177401B698760ECA149E = {
+			fileRef = 25A8177201B698760ECA149E;
+			isa = PBXBuildFile;
+			settings = {
+			};
+		};
+		25A8177501B6A5240ECA149E = {
+			isa = PBXFileReference;
+			path = WKBackForwardList.h;
+			refType = 4;
+		};
+		25A8177601B6A5240ECA149E = {
+			isa = PBXFileReference;
+			path = WKBackForwardList.m;
+			refType = 4;
+		};
+		25A8177701B6A5240ECA149E = {
+			fileRef = 25A8177501B6A5240ECA149E;
+			isa = PBXBuildFile;
+			settings = {
+			};
+		};
+		25A8177801B6A5240ECA149E = {
+			fileRef = 25A8177601B6A5240ECA149E;
+			isa = PBXBuildFile;
+			settings = {
+			};
+		};
 		25BECC93017E0A0D0ECA149E = {
 			isa = PBXFileReference;
 			path = NSURICache.h;

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list