2002-12-03  Trey Matteson  <trey@apple.com>

	Re-fix of 3113393 - Clients side redirects shouldn't always add item to back/forward list
	Fix 3116980 - REGRESSION: Back button goes back twice
	Fix 3099631 - assertion failure at http://www.calendarlive.com/ when pop-up blocking is off

	The earlier fix for the first bug was to consider any redirect happening within one
	second as a continuation of the previous load.  To fix the regressions I re-cast that
	fix using a similar, pre-existing mechanism.

        Reviewed by: Richwill

        * WebView.subproj/WebFramePrivate.h:  Nuke shortRedirectComing, rename
	instantRedirectComing to quickRedirectComing.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _createOrUpdateItem]):  Remove code related to shortRedirectComing,
	the fix that brought the regressions.
        (-[WebFrame _setState:]):  Don't cache the page we're leaving if we're doing
	a redirect (since we don't want the redirecting page in the cache).
        (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]):  Above rename.
        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):  Above rename.
        (-[WebFrame _loadURL:intoChild:]):  Comment fix.
        (-[WebFrame _clientRedirectedTo:delay:fireDate:]):  Use 1 second instead of 0
	seconds as the metric of a client redirect.  Do not consider whether the frame
	state is completed as part of the decision.
        (-[WebFrame _clientRedirectCancelled]):  Above rename.

2002-12-03  John Sullivan  <sullivan@apple.com>

        Reviewed by: Darin

	- REALLY changed the default state for block pop-ups to be off.

        * WebView.subproj/WebPreferences.m:
        (+[WebPreferences load]):
	change default for letting JavaScript open windows automatically
	to YES

2002-12-03  Darin Adler  <darin@apple.com>

	- fixed 3117135 -- world leak: drag any image, get a leak of 1 WebFrame

        Reviewed by John.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]): Retain the URL of the dragged image, not the entire
	element dictionary. The element dictionary creates a reference cycle since it includes
	a reference to the WebFrame.
        (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Use the URL rather than
	extracting it from the dictionary with a WebElementImageURLKey.

        * WebView.subproj/WebHTMLViewPrivate.h: URL, not element dictionary.
        * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLViewPrivate dealloc]): Release the
	URL, not the element dictionary.

2002-12-03  Richard Williamson   <rjw@apple.com>

        Added a preference to change the page cache size, i.e.:
        Alexander.app/Contents/MacOS/Alexander -WebKitPageCacheSizePreferenceKey 4
        
        Reviewed by: hyatt

        * History.subproj/WebBackForwardList.m:
        (+[WebBackForwardList setPageCacheSize:]):
        (+[WebBackForwardList pageCacheSize]):
        * WebView.subproj/WebPreferences.m:
        (+[WebPreferences load]):
        (-[WebPreferences _initialTimedLayoutSize]):
        (-[WebPreferences _pageCacheSize]):
        * WebView.subproj/WebPreferencesPrivate.h:

2002-12-03  Richard Williamson   <rjw@apple.com>

        Fixed 3019986.  Use an array of font families instead of a single
        font family to support CSS family lists.
        r=hyatt
        
        * Misc.subproj/WebKitNSStringExtras.m:
        (-[NSString _web_widthForString:font:]):
        * Misc.subproj/WebStringTruncator.m:
        (+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
        (+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
        * WebCoreSupport.subproj/WebTextRenderer.h:
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer substituteFontForString:families:]):
        (-[WebTextRenderer substituteFontForCharacters:length:families:]):
        (-[WebTextRenderer widthForCharacters:length:]):
        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:letterSpacing:wordSpacing:fontFamilies:]):
        (-[WebTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:letterSpacing:wordSpacing:fontFamilies:]):
        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:fontFamilies:]):
        * WebCoreSupport.subproj/WebTextRendererFactory.h:
        * WebCoreSupport.subproj/WebTextRendererFactory.m:
        (-[WebTextRendererFactory fontWithFamilies:traits:size:]):
        (-[WebTextRendererFactory fontWithFamily:traits:size:]):
        (+[WebTextRendererFactory fallbackFontWithTraits:size:]):
        (-[WebTextRendererFactory cachedFontFromFamily:traits:size:]):
        (-[WebTextRendererFactory cachedFontFromFamilies:traits:size:]):
        (-[WebTextRendererFactory rendererWithFamilies:traits:size:]):

2002-12-03  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3115073 - REGRESSION: plants.com is crashing in WebIconDB with bad retain count

	The plants.com favicon was marked to be removed from disk and thus it had no retain count. The problem was that it was still on disk and _hasIconForIconURL would return YES. If hasIconForIconURL returns YES, its is ok to call  _setIconURL:forSiteURL:. Since there was no retain count, the assert in _setIconURL:forSiteURL: would be hit.

	We now consider icons without retain counts to not exist even if they're on disk.

        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase _updateFileDatabase]):
        (-[WebIconDatabase _setIconURL:forSiteURL:]):

2002-12-03  Chris Blumenberg  <cblu@apple.com>

	Fixed:
	3112477 - REGRESSION: dropping image within window loads image in current window
	Fix: Unregister the parent webview for dragging when the drag starts, reregister after the drag ends.

	3116423 - Dragged images sometimes have the wrong promised-file file type
	Fix: Make the - [NSView_web_dragPromisedImage...] method take a file type rather than deriving the file type from the URL

	3115768 - REGRESSION: contextual menu item "copy url to clipboard" doesn't work
	Fix: In [NSPastboard _web_writeURL:andTitle:withOwner:] adding pboard types  doesn't work for the general pasteboard, have to redeclare.

	3116594 - Image on the drag pasteboard shouldn't have applied transparency and scaling
	Fix: In - [NSView_web_dragPromisedImage...] put the original image on the pboard

	Reviewed by John.

        * Misc.subproj/WebNSPasteboardExtras.m:
        (-[NSPasteboard _web_writeURL:andTitle:withOwner:]): don't use addTypes as it doesn't work as I expected
        * Misc.subproj/WebNSViewExtras.h:
        * Misc.subproj/WebNSViewExtras.m:
        (-[NSView _web_dragPromisedImage:origin:URL:fileType:title:event:]): put the original image on the pboard, not the drag image
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]):
        (-[WebHTMLView mouseDragged:]): call _web_dragPromisedImage
        (-[WebHTMLView draggedImage:endedAt:operation:]): call -[WebView _reregisterDraggedTypes]
        * WebView.subproj/WebImageView.m:
        (-[WebImageView mouseDragged:]): call _web_dragPromisedImage
        (-[WebImageView draggedImage:endedAt:operation:]): call -[WebView _reregisterDraggedTypes]
        * WebView.subproj/WebView.m:
        (-[WebView initWithFrame:]): call _reregisterDraggedTypes
        (-[WebView draggingEntered:]): simplified, don't need to check drag source
        * WebView.subproj/WebViewPrivate.h:
        * WebView.subproj/WebViewPrivate.m:
        (-[WebView _reregisterDraggedTypes]):

2002-12-03  Darin Adler  <darin@apple.com>

	- fixed 3114796 -- WORLD LEAKS: 1 WebFrame leaked on trivial source file with <html> tag only
	(probably fixed a ton of other bugs too, since this always leaks)

	Reviewed by Chris.

        * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _elementAtPoint:]):
	Added a missing autorelease.

2002-12-03  Darin Adler  <darin@apple.com>

	Reviewed by Maciej.

        * WebView.subproj/WebView.m: Fixed a pair of strings that conflict.
        * English.lproj/Localizable.strings: Regenerated.
        * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.

2002-12-02  Trey Matteson  <trey@apple.com>

	Refined bookmark notifications to be more detailed.  We now have added, removed,
	willChange and didChange.

        * Bookmarks.subproj/WebBookmarkGroup.h:   New API.
        * Bookmarks.subproj/WebBookmarkGroup.m:
        (-[WebBookmarkGroup _sendNotification:forBookmark:children:]):
        (-[WebBookmarkGroup _setTopBookmark:]):
        (-[WebBookmarkGroup _bookmarkWillChange:]):
        (-[WebBookmarkGroup _bookmarkDidChange:]):
        (-[WebBookmarkGroup _bookmarkChildren:wereAddedToParent:]):
        (-[WebBookmarkGroup _bookmarkChildren:wereRemovedToParent:]):
	All just small pieces of flow control for posting the notes.
        * Bookmarks.subproj/WebBookmarkGroupPrivate.h:  Internal methods for posting the notes.
        * Bookmarks.subproj/WebBookmarkLeaf.m:
        (-[WebBookmarkLeaf setTitle:]):  Post da note
        (-[WebBookmarkLeaf setURLString:]):  Post da note
        (-[WebBookmarkLeaf description]):  Added for debugging.
        * Bookmarks.subproj/WebBookmarkList.m:
        (-[WebBookmarkList setTitle:]):  Post da note
        (-[WebBookmarkList removeChild:]):  Post da note
        (-[WebBookmarkList insertChild:atIndex:]):  Post da note
        * Bookmarks.subproj/WebBookmarkProxy.m:
        (-[WebBookmarkProxy setTitle:]):  Post da note
        * English.lproj/StringsNotToBeLocalized.txt:  New strings.
        * WebKit.exp:   New strings.

2002-12-02  Maciej Stachowiak  <mjs@apple.com>

	- added original URL field to action dictionary so that policy delegates
	can avoid prompting over and over on redirects.
	
        * WebKit.exp:
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebControllerPolicyDelegate.m:
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource initWithRequest:]):
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _startLoading:]):
        * WebView.subproj/WebFrame.m:
        (-[WebFrame loadRequest:]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _actionInformationForNavigationType:event:originalURL:]):
        (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
        (-[WebFrame _addExtraFieldsToRequest:]):
        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
        (-[WebFrame _postWithURL:data:contentType:triggeringEvent:]):

2002-11-28  Darin Adler  <darin@apple.com>

        * Downloads.subproj/WebDownloadHandler.m:
        (-[WebDownloadHandler createFileIfNecessary]): Add a FIXME.
        (-[WebDownloadHandler writeDataForkData:resourceForkData:]): Notify that the file system has
	changed so the Finder can respond to the size change.
        (-[WebDownloadHandler finishedLoading]): Notify that the file system has changed now that the
	download has completed and the files are closed (may be redundant now that we have the above,
	but will do no harm).

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
	Use _web_isCaseInsensitiveEqualToString instead of lowercaseString.

        * Misc.subproj/WebNSViewExtras.m: Tweak formatting.
	
2002-11-27  Richard Williamson   <rjw@apple.com>

        Fixed 3113393.  Client side redirects that happen <= 1 second
        update the current back/forward item, rather than creating
        a new one.

        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _addBackForwardItemClippedAtTarget:]):
        (-[WebFrame _createOrUpdateItem]):
        (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]):
        (-[WebFrame _transitionToCommitted:]):
        (-[WebFrame _clientRedirectedTo:delay:fireDate:]):
        (-[WebFrame _clientRedirectCancelled]):

2002-11-27  Richard Williamson   <rjw@apple.com>

        Fixed measurement error for Ahem font (and any font that
        has a tiny fractional value). 3112745, 3112742
         
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer initWithFont:]):

2002-11-26  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3090834 - Launch WMP (Window Media Player) when encountering WMP content

	Added contentURL to WebPluginError. 

        * Plugins.subproj/WebNetscapePluginDocumentView.m:
        (-[WebNetscapePluginDocumentView setDataSource:]):
        * Plugins.subproj/WebNetscapePluginPackage.m:
        (-[WebNetscapePluginPackage initWithPath:]):
        * Plugins.subproj/WebNullPluginView.m:
        (-[WebNullPluginView viewDidMoveToWindow]):
        * Plugins.subproj/WebPluginError.h:
        * Plugins.subproj/WebPluginError.m:
        (-[WebPluginErrorPrivate dealloc]):
        (-[WebPluginError dealloc]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]):
        (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):

=== Alexander-34 ===

2002-11-26  Richard Williamson   <rjw@apple.com>

        Only cache page if the load has completed.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _setState:]):

2002-11-26  Chris Blumenberg  <cblu@apple.com>

	Removed some logging.

        * WebView.subproj/WebControllerPrivate.m:
        (+[WebController _supportedImageMIMETypes]):

2002-11-26  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3112003 - Show standalone tiffs using AppKit not QT plug-in

	We now dynamically check NSImage for supported image types when registering WebImageView's and WebImageRepresentation's supported MIME types. 

        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (+[WebController _supportedImageMIMETypes]): convert NSImage types to mime types
        * WebView.subproj/WebDataSourcePrivate.m:
        (+[WebDataSource _repTypes]): use _supportedImageMIMETypes to register mime types of WebImageRepresentation
        * WebView.subproj/WebViewPrivate.m:
        (+[WebView _viewTypes]): use _supportedImageMIMETypes to register mime types of WebImageView

2002-11-26  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3061174 - javascript: URLs sent by plugins don't work

	For "Javascript:" URLs. 

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): lowercase the scheme

2002-11-26  Richard Williamson   <rjw@apple.com>

        More work on back/forward cache.  It's ready for
        more general testing.  Although, to be safe I've
        left it disabled by default for tomorrow's release.
        It will log when a page is save and restored from
        the page cache.
                
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge saveDocumentToPageCache:]):
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _startLoading:]):
        (-[WebDataSource _commitIfReady:]):
        (-[WebDataSource _loadIcon]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted:]):
        (-[WebFrame _setState:]):
        (-[WebFrame _loadItem:fromItem:withLoadType:]):
        (-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):
        (-[WebFrame _setProvisionalDataSource:]):

2002-11-25  Richard Williamson   <rjw@apple.com>

        Cleanup leaking objects in page cache.
        Cleaned up API a bit.
        
        * History.subproj/WebBackForwardList.h:
        * History.subproj/WebBackForwardList.m:
        (-[WebBackForwardList dealloc]):
        (+[WebBackForwardList setUsesPageCache:]):
        (+[WebBackForwardList usesPageCache]):
        (+[WebBackForwardList setPageCacheSize:]):
        (+[WebBackForwardList pageCacheSize]):
        * History.subproj/WebHistoryItem.h:
        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem setHasPageCache:]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge saveDocumentToPageCache:]):
        * WebKit.exp:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _canCachePage]):
        (-[WebFrame _purgePageCache]):
        (-[WebFrame _setState:]):
        (-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):

2002-11-25  Richard Williamson   <rjw@apple.com>

        Changed ordering of cachability check.
        
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _setState:]):

2002-11-25  Richard Williamson   <rjw@apple.com>

        Changes fro back/forward cache.
        
        * History.subproj/WebHistoryItem.h:
        * History.subproj/WebHistoryItem.m:
        (+[WebHistoryItem setUsePageCache:]):
        (+[WebHistoryItem usePageCache]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge saveDocumentToPageCache:]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _detachFromParent]):
        (-[WebFrame _canCachePage]):
        (-[WebFrame _setState:]):

2002-11-25  Chris Blumenberg  <cblu@apple.com>

	Fixed 2 drag-related crashes. Oops.

        * Misc.subproj/WebNSViewExtras.m:
        (-[NSView _web_dragPromisedImage:fromOrigin:withURL:title:event:]): put nil at the end of the array list.
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]): retain self before drag

2002-11-25  Chris Blumenberg  <cblu@apple.com>

	- Allow missing icons to be restored when going to the page of the missing icon.

        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase _setIconURL:forSiteURL:]):

2002-11-25  Richard Williamson   <rjw@apple.com>

        Changes for back/forward.  Currently disabled.

        * History.subproj/WebHistoryItem.h:
        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem dealloc]):
        (-[WebHistoryItem setPageCacheEnabled:]):
        (-[WebHistoryItem pageCache]):
        * Misc.subproj/WebKitLogging.h:
        * Misc.subproj/WebKitLogging.m:
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge saveDocumentToPageCache:]):
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource startLoading]):
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _startLoading:]):
        (-[WebDataSource _startLoading]):
        (-[WebDataSource _commitIfReady:]):
        (-[WebDataSource _commitIfReady]):
        (-[WebDataSource _setStoredInPageCache:]):
        (-[WebDataSource _storedInPageCache]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted:]):
        (-[WebFrame _canCachePage]):
        (-[WebFrame _purgePageCache]):
        (-[WebFrame _setState:]):
        (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]):
        (-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):

2002-11-25  Richard Williamson   <rjw@apple.com>

        Fixed exception thrown often when creating mouseover status text (3110186).
        
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _elementAtPoint:]):

2002-11-25  Darin Adler  <darin@apple.com>

	- fixed a problem I discovered in testing where multiple identical bookmarks confuse us

        * Bookmarks.subproj/WebBookmarkList.m:
        (-[WebBookmarkList removeChild:]): Use indexOfObjectIdenticalTo: and removeObjectIdenticalTo:
	instead of containsObject: and removeObject:.
        (-[WebBookmarkList insertChild:atIndex:]): Use indexOfObjectIdenticalTo: instead of
	containsObject: in the assertion.

2002-11-25  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3084350 - No URL flavors provided for images

        * Misc.subproj/WebNSViewExtras.h:
        * Misc.subproj/WebNSViewExtras.m:
        (-[NSView _web_dragPromisedImage:fromOrigin:withURL:title:event:]): renamed, simplifies dragging an image
        (-[WebFilePromiseDragSource initWithSource:]): subclass of NSFilePromiseDragSource, to be used later
        (-[WebFilePromiseDragSource draggingSource]):
        (-[WebFilePromiseDragSource dealloc]):
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]): call _web_dragPromisedImage:fromOrigin:withURL:title:event:, retain self
        (-[WebHTMLView draggedImage:endedAt:operation:]): added, release self
        * WebView.subproj/WebImageView.m:
        (-[WebImageView mouseDragged:]): call _web_dragPromisedImage:fromOrigin:withURL:title:event:, retain self
        (-[WebImageView draggedImage:endedAt:operation:]): added, release self
        * WebView.subproj/WebView.m:
        (-[WebView isDocumentHTML]): call isKindOfClass instead of className
        (-[WebView draggingEntered:]): check for WebFilePromiseDragSource

2002-11-24  Trey Matteson  <trey@apple.com>

	Added URLString method to WebHistoryItem to avoid silly conversions between
	NSURL and NSString.  When the dust settles with our plans for NSURL we can
	rationalize this API with the rest of WebKit.

        * History.subproj/WebHistoryItem.h:
        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem URLString]):

2002-11-24  Chris Blumenberg  <cblu@apple.com>

	Added element keys for the image ALT and link TITLE attributes. This will eventually be used to fix other bugs. Also made WebKit and WebCore use the same element keys to simplify the conversion of the element dictionary.

        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _elementAtPoint:]):

2002-11-24  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3109945 - Assertion failure in -[WebIconDatabase_largestIconFromDictionary:]
	Added error strings for download decoding errors.

        * English.lproj/Localizable.strings: Added error strings for download decoding errors
        * English.lproj/StringsNotToBeLocalized.txt:
        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase _loadIconDictionaries]): tweak
        (-[WebIconDatabase _updateFileDatabase]): more error checking to prevent assert
        (-[WebIconDatabase _setIconURL:forSiteURL:]): added asserts to prevent a site URL <-> icon URL mapping without a icon URL -> icon mapping
        (-[WebIconDatabase _largestIconFromDictionary:]): tweak
        * Misc.subproj/WebNSPasteboardExtras.m:
        (-[NSPasteboard _web_writeURL:andTitle:withOwner:]): declare pboard types if none have been declared, else append types
        * WebView.subproj/WebView.m:
        (+[WebView initialize]): Added error strings for download decoding errors

2002-11-24  Maciej Stachowiak  <mjs@apple.com>

	- fixed 3067939 - no support for window.document.lastModified

        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _commitIfReady]): Pass last modified date to WebCore.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]): Pass
	nil last modified date.

2002-11-23  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3109835 - Download errors aren't communicated to client

	Cleaned-up WebMainResourceClient and WebBaseResourceHandleDelegate a little.

        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase defaultIconWithSize:]): tweak
        (-[WebIconDatabase releaseIconForSiteURL:]): don't retain site URL here 
        (-[WebIconDatabase _setIcon:forIconURL:]): tweak
        (-[WebIconDatabase _setIconURL:forSiteURL:]): tweak
        (-[WebIconDatabase _releaseIconForIconURLString:]): retain site URL here 
        (-[WebIconDatabase _releaseFutureIconForSiteURL:]): tweak
        (-[WebIconDatabase _sendNotificationForSiteURL:]): tweak
        * WebView.subproj/WebBaseResourceHandleDelegate.h:
        * WebView.subproj/WebBaseResourceHandleDelegate.m:
        (-[WebBaseResourceHandleDelegate cancelWithError:]): made public
        (-[WebBaseResourceHandleDelegate cancel]): cancel downloads too, call cancelWithError
        (-[WebBaseResourceHandleDelegate cancelQuietly]): call cancelWithError
        (-[WebBaseResourceHandleDelegate cancelledError]): tweak
        (-[WebBaseResourceHandleDelegate notifyDelegatesOfInterruptionByPolicyChange]): tweak
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient receivedError:]): stop downloadHandler if downloading, else notify controller
        (-[WebMainResourceClient cancel]): call receivedError
        (-[WebMainResourceClient checkContentPolicyForResponse:andCallSelector:]): tweak
        (-[WebMainResourceClient handle:didReceiveData:]): stop load for download errors, report error
        (-[WebMainResourceClient handleDidFinishLoading:]): call didFailLoadingWithError is download error
        (-[WebMainResourceClient handle:didFailLoadingWithError:]): call receivedError

2002-11-22  Darin Adler  <darin@apple.com>

        * Misc.subproj/WebCoreStatistics.h:
        * Misc.subproj/WebCoreStatistics.m:
        (+[WebCoreStatistics javaScriptRootObjectClasses]):
	Update for name change -- root object classes, not all live object classes.

2002-11-22  Chris Blumenberg  <cblu@apple.com>

	Fixed assertion while loading local files.

        * Misc.subproj/WebIconDatabase.m: we don't have icon URLs for files
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _loadIcon]): Only try loading favicon as the root of server if scheme is http or https. This isn't really a feature of other protocols.

2002-11-22  Chris Blumenberg  <cblu@apple.com>

        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient continueAfterContentPolicy:response:]): Added a FIXME around saveFilenameForResponse:andRequest: because the API expects a path but is asking for a filename.

2002-11-22  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3104693 - QT movie doesn't show video while still downloading

	The initial size of plug-in should be 0,0 instead of 1,1 or else we don't get the layout

        * Plugins.subproj/WebNetscapePluginDocumentView.m:
        (-[WebNetscapePluginDocumentView initWithFrame:]):

2002-11-22  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3078737 - Crash in -[WebHistoryItem dealloc] after closing last window

        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase releaseIconForSiteURL:]): retain the site URL string because it may get released from beneath
        (-[WebIconDatabase _updateFileDatabase]): tweak
        (-[WebIconDatabase _iconsForIconURLString:]): disable timings for deployment build
        (-[WebIconDatabase _setIconURL:forSiteURL:]): tweak
        (-[WebIconDatabase _releaseIconForIconURLString:]): tweak
        (-[WebIconDatabase _scaleIcon:toSize:]): disable timings for deployment build
        * Misc.subproj/WebIconDatabasePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _updateIconDatabaseWithURL:]): new, does the db binding
        (-[WebDataSource _loadIcon]): call _updateIconDatabaseWithURL

2002-11-22  Chris Blumenberg  <cblu@apple.com>

	Attempt to fix: 3078737 - Crash in -[WebHistoryItem dealloc] after closing last window
	I haven't found anything that would cause the crash. I did some clean-up, added asserts and error messages in hopes that this help me track this down.

        * Misc.subproj/WebIconDatabase.h:
        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase init]):
        (-[WebIconDatabase iconForSiteURL:withSize:cache:]):
        (-[WebIconDatabase iconForSiteURL:withSize:]):
        (-[WebIconDatabase retainIconForSiteURL:]):
        (-[WebIconDatabase releaseIconForSiteURL:]):
        (-[WebIconDatabase delayDatabaseCleanup]):
        (-[WebIconDatabase allowDatabaseCleanup]):
        (-[WebIconDatabase _iconDictionariesAreGood]):
        (-[WebIconDatabase _loadIconDictionaries]):
        (-[WebIconDatabase _updateFileDatabase]):
        (-[WebIconDatabase _hasIconForSiteURL:]):
        (-[WebIconDatabase _iconsForIconURLString:]):
        (-[WebIconDatabase _iconForFileURL:withSize:]):
        (-[WebIconDatabase _setIcon:forIconURL:]):
        (-[WebIconDatabase _setIconURL:forSiteURL:]):
        (-[WebIconDatabase _retainIconForIconURLString:]):
        (-[WebIconDatabase _releaseIconForIconURLString:]):
        (-[WebIconDatabase _retainFutureIconForSiteURL:]):
        (-[WebIconDatabase _releaseFutureIconForSiteURL:]):
        (-[WebIconDatabase _releaseOriginalIconsOnDisk]):
        (-[WebIconDatabase _sendNotificationForSiteURL:]):
        (-[WebIconDatabase _addObject:toSetForKey:inDictionary:]):
        (-[WebIconDatabase _largestIconFromDictionary:]):
        (-[WebIconDatabase _iconsBySplittingRepresentationsOfIcon:]):
        (-[WebIconDatabase _iconFromDictionary:forSize:cache:]):
        (-[WebIconDatabase _scaleIcon:toSize:]):
        * Misc.subproj/WebIconDatabasePrivate.h:
        * WebKit.exp:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _loadIcon]):

2002-11-22  Richard Williamson   <rjw@apple.com>

        Fixed rendering issues associated with 3100120.
        We now correctly map surrogate pairs in UTF-16.  khtml still has
        issues dealing with characters outside BMP.  These are tracked
        with 3109251 and 3109258.
        
        Surrogate pairs are treated as exceptions and have their own character
        to glyph map.
        
        * Misc.subproj/WebUnicode.h:
        * Misc.subproj/WebUnicode.m:
        (shapedString):
        * WebCoreSupport.subproj/WebTextRenderer.h:
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (glyphForUnicodeCharacter):
        (findLengthOfCharacterCluster):
        (-[WebTextRenderer substituteFontForString:]):
        (-[WebTextRenderer convertUnicodeCharacters:length:toGlyphs:]):
        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):
        (-[WebTextRenderer extendUnicodeCharacterToGlyphMapToInclude:]):
        (-[WebTextRenderer extendCharacterToGlyphMapToInclude:]):

2002-11-22  John Sullivan  <sullivan@apple.com>

        * Resources/url_icon.tiff:
	new generic URL icon -- little blue globe, pretty nice

        * WebKit.exp:
	removed symbol for WebTextRendererFactory which was in here
	to support an obsolete SPI hack

2002-11-22  Trey Matteson  <trey@apple.com>

	Added more detailed notifications on history changes.
	All changes below are just posting the new notes at the right time.

        * English.lproj/StringsNotToBeLocalized.txt:
        * History.subproj/WebHistory.h:
        * History.subproj/WebHistory.m:
        (-[WebHistory _sendNotification:entries:]):
        (-[WebHistory addEntry:]):
        (-[WebHistory removeEntry:]):
        (-[WebHistory removeEntries:]):
        (-[WebHistory removeAllEntries]):
        (-[WebHistory addEntries:]):
        (-[WebHistory loadHistory]):
        * WebKit.exp:

2002-11-22  Richard Williamson   <rjw@apple.com>

        Changed NSString category methods to include _web_ prefix.

        * Misc.subproj/WebKitNSStringExtras.h:
        * Misc.subproj/WebKitNSStringExtras.m:
        (-[NSString _web_widthForString:font:]):

2002-11-22  Richard Williamson   <rjw@apple.com>

        Simplified drawing and measuring SPI for use by Alex.

        * Misc.subproj/WebKitNSStringExtras.h: Added.
        * Misc.subproj/WebKitNSStringExtras.m: Added.
        (-[NSString widthForString:font:]):
        * WebKit.pbproj/project.pbxproj:

2002-11-21  Chris Blumenberg  <cblu@apple.com>

	Removed workaround for: 3093170 - Handle clients receive data with length 0

	as it's now fixed.

        * Downloads.subproj/WebDownloadHandler.m:
        (-[WebDownloadHandler receivedData:]): remove workaround
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:didReceiveData:]): added asserts

2002-11-21  Richard Williamson   <rjw@apple.com>

        A different fix to 3078065 that doesn't depend on the appkit's idea of
        fixed pitch font.
        
        The fix is to adjust the width of all characters that have the same width
        as the space character to match the adjustment of the space character.
        This has the slight downside that non-monospace fonts that contain glyphs
        with the same width as the space character will have an extra adjustment.
        In practice this is not noticeable as the adjustment is always sub-pixel.
        Nor of course does this cause any mislayout, as it's done at the lowest
        level for both measurement and drawing.
        
        Until we move kthml internals to floats this will be just fine.
        
        * WebCoreSupport.subproj/WebTextRenderer.h:
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (widthForGlyph):
        (-[WebTextRenderer initWithFont:]):
        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):
tAfterNavigationPolicy:request:]):

2002-11-21  Maciej Stachowiak  <mjs@apple.com>

        * Makefile.am: Pass symroots for this tree to pbxbuild.

2002-11-21  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3009881 - plugins get mouse-overs even when mouse is in menus
	Fixed: 3108240 - Loading datasource sometimes doesn't have cancelled error when cancelled

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView sendNullEvent]): check if menus are showing
        (-[WebBaseNetscapePluginView restartNullEvents]): tweak
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _stopLoading]): set cancelled error if main handle is gone

=== Alexander-33 ===

2002-11-20  Darin Adler  <darin@apple.com>

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
	Unescape the string before executing it, so we don't suffer from bug 3083043
	here in the javascript: URLs that come from plug-ins.

        * English.lproj/StringsNotToBeLocalized.txt: Update.

2002-11-20  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3079134 - Throttle plug-ins while in background

        * Plugins.subproj/WebBaseNetscapePluginView.h:
        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView sendNullEvent]): new
        (-[WebBaseNetscapePluginView stopNullEvents]): stops timer
        (-[WebBaseNetscapePluginView restartNullEvents]): stops timer if there is one, and starts a new one based on window activation state
        (-[WebBaseNetscapePluginView start]): call restartNullEvents
        (-[WebBaseNetscapePluginView stop]): call stopNullEvents
        (-[WebBaseNetscapePluginView windowBecameKey:]): call restartNullEvents
        (-[WebBaseNetscapePluginView windowResignedKey:]): call restartNullEvents
        (-[WebBaseNetscapePluginView windowDidMiniaturize:]): call stopNullEvents
        (-[WebBaseNetscapePluginView windowDidDeminiaturize:]): call restartNullEvents
        * Plugins.subproj/WebNetscapePluginNullEventSender.h: Removed. No need for another class, use a timer.
        * Plugins.subproj/WebNetscapePluginNullEventSender.m: Removed. No need for another class, use a timer.
        * WebKit.pbproj/project.pbxproj:

2002-11-20  Richard Williamson   <rjw@apple.com>

        Fixed 3107007.  Letter-spacing is causing width to be miscalculated.
        This also fixed some selection problems.
        
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):

2002-11-20  Richard Williamson   <rjw@apple.com>

        Fixed mono spaced fonts to always render with mono spacing! (3078065)
        
        * WebCoreSupport.subproj/WebTextRenderer.h:
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (widthForGlyph):
        (-[WebTextRenderer initWithFont:]):

2002-11-20  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3074926 - crash in BitsToPix() trying to print cnet page

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView drawRect:]): disable experimental plug-in printing code.

2002-11-20  Chris Blumenberg  <cblu@apple.com>

	Minor clean-up, logging and more error checking in plug-in code.

        * Plugins.subproj/WebBaseNetscapePluginStream.m:
        (-[WebBaseNetscapePluginStream setResponse:]):
        (-[WebBaseNetscapePluginStream receivedData:]):
        (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
        * Plugins.subproj/npapi.m:
        (NPN_UserAgent):
        (NPN_MemFree):
        (NPN_MemFlush):
        (NPN_ReloadPlugins):

2002-11-20  Chris Blumenberg  <cblu@apple.com>
	
	Fixed: 3061174 - javascript: URLs sent by plugins don't work

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):

2002-11-20  Darin Adler  <darin@apple.com>

        * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.

2002-11-19  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3106061 - REGRESSION: Copy in text view copies all text not just selection

        * Misc.subproj/WebSearchableTextView.m:
        (-[WebSearchableTextView copy:]):

2002-11-19  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3092588 - redraw errors in QT controller if window is in background

	We need to send update events after we activate/deactivate after all.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView windowBecameKey:]):
        (-[WebBaseNetscapePluginView windowResignedKey:]):

2002-11-19  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3020720 - dropping a folder in the page address makes the folder open in Finder, empties the field

        * Misc.subproj/WebNSPasteboardExtras.m:
        (-[NSPasteboard _web_bestURL]): Don't accept directories.

2002-11-19  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3068112 - extra line breaks when copying from source window

        * Misc.subproj/WebSearchableTextView.m:
        (-[WebSearchableTextView copy:]): Convert CRLF to LF

2002-11-19  David Hyatt  <hyatt@apple.com>

	Make sure that if the scrollers are shown/hidden that we
	force an immediate layout, since if we don't, an intervening
	display can cause us to show scrollbars when they really
	shouldn't be there.
	
        * WebView.subproj/WebDynamicScrollBarsView.m:
        (-[WebDynamicScrollBarsView updateScrollers]):

2002-11-19  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3100597 - repro NSArray exception using contextual menu

        * Misc.subproj/WebNSPasteboardExtras.m:
        (-[NSPasteboard _web_writeURL:andTitle:withOwner:]): more error checking

2002-11-19  Trey Matteson  <trey@apple.com>

	Just a tweak to the description printout.

        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem description]):

2002-11-18  Chris Blumenberg  <cblu@apple.com>

	Real fix for: 3104183 - Assert loading www.louisvuitton.com

	Since we don't consider plug-in content as a subresource, attaching plug-in streams to the datasource has no affect on the loading state of the datasource. Both stopLoading on WebFrame and _stopLoading datasource, would not stop plug-ins streams after th
e data source was done loading. Because of this, I've decided to not keep a list of plug-in streams attached to the data source and pulled my previous change. To fix this bug, WebBaseResourceHandleDelegate now retains the controller.

        * Plugins.subproj/WebNetscapePluginStream.m:
        (-[WebNetscapePluginStream start]):
        (-[WebNetscapePluginStream cancel]):
        (-[WebNetscapePluginStream handleDidFinishLoading:]):
        (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
        * WebView.subproj/WebBaseResourceHandleDelegate.h:
        * WebView.subproj/WebBaseResourceHandleDelegate.m:
        (-[WebBaseResourceHandleDelegate _releaseResources]):
        (-[WebBaseResourceHandleDelegate setDataSource:]):
        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
        (-[WebBaseResourceHandleDelegate handleDidFinishLoading:]):
        (-[WebBaseResourceHandleDelegate handle:didFailLoadingWithError:]):
        (-[WebBaseResourceHandleDelegate _cancelWithError:]):
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]):
        (-[WebDataSource _stopLoading]):
        (-[WebDataSource _makeHandleDelegates:deferCallbacks:]):
        (-[WebDataSource _defersCallbacksChanged]):

2002-11-18  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3104183 - Assert loading www.louisvuitton.com

	We need to treat plug-in streams like subresources except they don't change the loading state of the data source.

        * Plugins.subproj/WebNetscapePluginStream.m:
        (-[WebNetscapePluginStream start]): call _addPluginStream
        (-[WebNetscapePluginStream cancel]): call _removePluginStream
        (-[WebNetscapePluginStream handleDidFinishLoading:]): call _removePluginStream
        (-[WebNetscapePluginStream handle:didFailLoadingWithError:]): call _removePluginStream
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]): release pluginStreams
        (-[WebDataSource _addPluginStream:]): just like addSubresourceClient except don't change the loading state.
        (-[WebDataSource _removePluginStream:]): just like removeSubresourceClient except don't change the loading state.
        (-[WebDataSource _stopLoading]): stop plug-ins streams
        (-[WebDataSource _makeHandleDelegates:deferCallbacks:]): 
        (-[WebDataSource _defersCallbacksChanged]): call _makeHandleDelegates:deferCallbacks: for subresources and plug-in streams.

2002-11-18  Richard Williamson   <rjw@apple.com>

        Check for usesBackForwardList was excluding all load types.
        
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]):

2002-11-18  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3098767 - REGRESSION: standalone quicktime content just shows blank window

	Check the instance not the class for the class type.

        * Plugins.subproj/WebNetscapePluginRepresentation.m:
        (-[WebNetscapePluginRepresentation receivedData:withDataSource:]):

2002-11-18  Ken Kocienda  <kocienda@apple.com>

	Added feature to import bookmarks/favorites from MSIE. This
	fixes Radar 2961230 (import Mac IE bookmarks).

        * Bookmarks.subproj/WebBookmarkImporter.h: Added.
        * Bookmarks.subproj/WebBookmarkImporter.m: Added.
        (_breakStringIntoLines):
        (_HREFRangeFromSpec):
        (_HREFTextFromSpec):
        (_linkTextRangeFromSpec):
        (_linkTextFromSpec):
        (-[WebBookmarkImporter initWithPath:group:]):
        (-[WebBookmarkImporter topBookmark]):
        (-[WebBookmarkImporter error]):
        (-[WebBookmarkImporter dealloc]):
        * Bookmarks.subproj/WebBookmarkList.m:
        (-[WebBookmarkList init]): Create the bookmark list object. This
	was not created with the -init initializer, causing bookmark lists
	to fail.
        * English.lproj/Localizable.strings:
        * English.lproj/StringsNotToBeLocalized.txt:
        * WebKit.exp:
        * WebKit.pbproj/project.pbxproj:

2002-11-17  Trey Matteson  <trey@apple.com>

	Code cleanup to make some internal methods return autoreleased objects.

        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _addBackForwardItemClippedAtTarget:]):
        (-[WebFrame _createItem]):
        (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]):
        (-[WebFrame _transitionToCommitted]):

2002-11-17  Trey Matteson  <trey@apple.com>

	Fixed 3102076 - REGRESSION: infinite recursion involving bridge end
	Fixed 3100929 - REGRESSION: serverRedirectedForDataSource: not sent on server redirects
	Fixed 3103381 - REGRESSION: Going back from anchor doesn't restore scroll position

        * WebView.subproj/WebBaseResourceHandleDelegate.m:
        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):  Return the copy of the
	request that we make instead of the original.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:willSendRequest:]):  Call super after we make our mods
	to the request, so the copy that super makes for us includes those mods.

        * WebView.subproj/WebFramePrivate.h:  Added new state, WebFrameStateCompleting.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToLayoutAcceptable]):  Completing state is a NOP.
        (-[WebFrame _transitionToCommitted]):  Completing state is a NOP.
        (-[WebFrame _isLoadComplete]):  Go to Completing state before calling [bridge end].
	Go to Completed state afterwards, only if no new loads started in the meantime.
        (-[WebFrame _loadItem:fromItem:withLoadType:]):  When doing anchor nav to get to the
	item, save and restore scroll state, and set the current item.
        (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]):
	Reorder the steps so the right scroll state gets saved to the right place.  Also, don't
	add a backForward item if we're doing a client redirect to an anchor.

2002-11-17  David Hyatt  <hyatt@apple.com>

	Back out my previous fix.  I have a better one that is
	confined to WebCore.
	
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _isLoadComplete]):

2002-11-17  David Hyatt  <hyatt@apple.com>

	The needsdisplay is necessary even for HTML documents.
	I over-optimized here.  Fixes the directory.apple.com
	regression and the santa clara library regression.
	
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _isLoadComplete]):

2002-11-17  Darin Adler  <darin@apple.com>

	- update for change to WebCore API so it never uses NSURL

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge createWindowWithURL:frameName:]): Take NSString instead of NSURL.
        (-[WebBridge startLoadingResource:withURL:]): Ditto.
        (-[WebBridge objectLoadedFromCacheWithURL:response:size:]): Ditto.
        (-[WebBridge reportClientRedirectToURL:delay:fireDate:]): Ditto.
        (-[WebBridge setIconURL:]): Ditto.
        (-[WebBridge setIconURL:withType:]): Ditto.
        (-[WebBridge loadURL:reload:triggeringEvent:isFormSubmission:]): Ditto.
        (-[WebBridge postWithURL:data:contentType:triggeringEvent:]): Ditto.
        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]): Ditto.
        (-[WebBridge userAgentForURL:]): Ditto.
        (-[WebBridge requestedURL]): Return NSString instead of NSURL.
        (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]): Take NSString instead of NSURL.
        (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]): Take NSString instead of NSURL.

        * WebCoreSupport.subproj/WebCookieAdapter.m:
        (-[WebCookieAdapter cookiesForURL:]): Take NSString instead of NSURL.
        (-[WebCookieAdapter setCookies:forURL:policyBaseURL:]): Ditto.

        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _commitIfReady]): Pass NSString instead of NSURL.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]): Pass NSString instead of NSURL
        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]): Turn bridge URL into NSURL so we
	can call _web_URLByRemovingFragment on it.
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _elementAtPoint:]): Convert NSString to NSURL when making the WebKit element dictionary.

2002-11-17  Maciej Stachowiak  <mjs@apple.com>

	- fixed 2949193 - implement onKeyDown, onKeyPress, and onKeyUp event handlers
	
        * WebView.subproj/WebHTMLViewPrivate.h:
        * WebView.subproj/WebHTMLViewPrivate.m:
        (+[WebHTMLView load]): Pose as NSWindow too now.
        (-[WebHTMLView _interceptKeyEvent:toView:]): Pass event to WebCore and
	see if WebCore wants to block it.
        (-[WebNSWindow sendEvent:]): For all key events that would go to a
	subview of a WebHTMLView, let the WebHTMLView take a first crack
	at it.

2002-11-15  Darin Adler  <darin@apple.com>

	- fixed 3079214 -- text/plain page shows up slowly, a few pages at a time

        * WebView.subproj/WebTextView.m:
        (-[WebTextView initWithFrame:]): Remove unneeded setWidthTracksTextView:, because
	that's the default.
        (-[WebTextView dataSourceUpdated:]): Replace the thing each time in the RTF case.
        (-[WebTextView viewDidMoveToSuperview]): Here's where we resize, but only the width.
	Resizing the height was causing the bug.
        (-[WebTextView layout]): Do nothing.
        (-[WebTextView setAcceptsDrags:]): Update to new name. Since we weren't
	importing WebDocument.h, we never noticed that this file got out of sync.
        (-[WebTextView acceptsDrags]): Ditto.
        (-[WebTextView setAcceptsDrops:]): Ditto.
        (-[WebTextView acceptsDrops]): Ditto.

        * WebView.subproj/WebDocument.h: Fix typo. It said setAcceptsDrags: twice.

2002-11-15  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebFramePrivate.m: Removed a bunch of tabs and fixed indenting.

2002-11-15  Maciej Stachowiak  <mjs@apple.com>

	- fixed 3102016 - REGRESSION: Command-clicking on a link can open _two_ windows.
	
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _setJustOpenedForTargetedLink:]):
        (-[WebDataSource _justOpenedForTargetedLink]):
        * WebView.subproj/WebFrame.m:
        (-[WebFrame findOrCreateFramedNamed:]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _continueAfterNavigationPolicy:]):
        (-[WebFrame _loadDataSource:withLoadType:]):
        (-[WebFrame _downloadRequest:toPath:]):
        (-[WebFrame _setJustOpenedForTargetedLink:]):

2002-11-15  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
	Give the listener a slightly longer lifetime, to make this API a bit more foolproof.

2002-11-15  Maciej Stachowiak  <mjs@apple.com>

	Fix world leak I introduced, and also add an early return when needed.
	
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]):
        (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):

2002-11-15  Maciej Stachowiak  <mjs@apple.com>

	Make navigation policy asynchronous for real.
	
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebControllerPolicyDelegate.m:
        (-[WebPolicyDecisionListenerPrivate initWithTarget:action:]):
        (-[WebPolicyDecisionListenerPrivate dealloc]):
        (-[WebPolicyDecisionListener usePolicy:]):
        (-[WebPolicyDecisionListener _initWithTarget:action:]):
        (-[WebPolicyDecisionListener dealloc]):
        (-[WebPolicyDecisionListener _invalidate]):
        * WebView.subproj/WebControllerPolicyDelegatePrivate.h: Added.
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        (-[WebDefaultPolicyDelegate decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
        * WebView.subproj/WebFrame.m:
        (-[WebFrame stopLoading]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFramePrivate dealloc]):
        (-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]):
        (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
        (-[WebFrame _continueAfterNavigationPolicy:]):
        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
        (-[WebFrame _loadDataSource:withLoadType:]):

2002-11-15  Maciej Stachowiak  <mjs@apple.com>

	Wrap content policy invocation to look asynchronous.
	
        * WebView.subproj/WebBaseResourceHandleDelegate.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient continueAfterContentPolicy:response:]):
        (-[WebMainResourceClient checkContentPolicyForResponse:andCallSelector:]):
        (-[WebMainResourceClient handle:didReceiveResponse:]):

2002-11-15  Maciej Stachowiak  <mjs@apple.com>

	Refactor so that all invocations of navigation policy are set up
	to be asynchronous. However, the actually delegate method is not
	async yet.
	
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
        (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]):
        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
        (-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):
        (-[WebFrame _loadDataSource:withLoadType:]):
        * WebView.subproj/WebMainResourceClient.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient stopLoadingForPolicyChange]):
        (-[WebMainResourceClient continueAfterNavigationPolicy:request:]):
        (-[WebMainResourceClient handle:willSendRequest:]):
        (-[WebMainResourceClient handle:didReceiveResponse:]):

2002-11-14  Maciej Stachowiak  <mjs@apple.com>

	Refactor things a bit so all loads bottleneck through a single
	method (_loadDataSource:withLoadType:).
	
        * WebView.subproj/WebFrame.m:
        (-[WebFrame loadRequest:]):
        (-[WebFrame reload]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _loadItem:fromItem:withLoadType:]):
        (-[WebFrame _loadRequest:triggeringAction:loadType:]):
        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
        (-[WebFrame _postWithURL:data:contentType:triggeringEvent:]):
        (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]):
        (-[WebFrame _loadDataSource:withLoadType:]):
        (-[WebFrame _downloadRequest:toPath:]):

2002-11-14  Maciej Stachowiak  <mjs@apple.com>

	Change things so the public interface to loading is loadRequest:
	and everything else is private.
	
        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
        * Plugins.subproj/WebPluginController.m:
        (-[WebPluginController showURL:inFrame:]):
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (-[WebController init]):
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _createFrameNamed:inParent:allowsScrolling:]):
        (-[WebController _downloadURL:toPath:]):
        * WebView.subproj/WebFrame.h:
        * WebView.subproj/WebFrame.m:
        (-[WebFrame init]):
        (-[WebFrame initWithName:webView:controller:]):
        (-[WebFrame loadRequest:]):
        (-[WebFrame reload]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _timedLayout:]):
        (-[WebFrame _clearProvisionalDataSource]):
        (-[WebFrame _loadItem:fromItem:withLoadType:]):
        (-[WebFrame _loadRequest:triggeringAction:]):
        (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]):
        (-[WebFrame _itemForRestoringDocState]):
        (-[WebFrame _setProvisionalDataSource:]):
        (-[WebFrame _startLoading]):
        (-[WebFrame _downloadRequest:toPath:]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:willSendRequest:]):
        (-[WebMainResourceClient stopLoadingAfterContentPolicy]):
        (-[WebMainResourceClient handle:didReceiveResponse:]):
        * WebView.subproj/WebView.m:
        (-[WebView concludeDragOperation:]):

2002-11-14  David Hyatt  <hyatt@apple.com>

	Move text measurement and layout beyond onload.  This
	shoudl speed up i-bench substantially and morrison's
	PLT test slightly.  Note that the adjustFrames layout
	stuff has been removed from isLoadComplete.
	
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _timedLayout:]):
        (-[WebFrame _isLoadComplete]):

2002-11-14  Darin Adler  <darin@apple.com>

        * English.lproj/Localizable.strings: Updated to include the new
	error messages that Maciej just added. I wonder what effect this
	will have if we see those errors in Alex-32?

=== Alexander-32 ===

2002-11-14  Don Melton  <gramps@apple.com>

        * WebView.subproj/WebControllerPolicyDelegate.h:

	Added missing semi-colon in definition of WebPolicyDecisionListener to
	fix build error.

2002-11-14  Maciej Stachowiak  <mjs@apple.com>

	Combined file URL policy with content policy. We don't actually
	bother to ask earlier for file URLs yet, since that will make
	things more complicated.
	
        * Misc.subproj/WebKitErrors.h:
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _handleUnimplementablePolicy:errorCode:forURL:]):
        (-[WebFrame _continueAfterNavigationPolicyForRequest:dataSource:]):
        * WebView.subproj/WebMainResourceClient.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient stopLoadingAfterContentPolicy]):
        (-[WebMainResourceClient handle:didReceiveResponse:]):
        * WebView.subproj/WebView.m:
        (+[WebView initialize]):

2002-11-14  Darin Adler  <darin@apple.com>

	- fixed 3099240 -- REGRESSION: repro assert d->m_doc->parsing

	Make the reload flag pass across the bridge.

        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _commitIfReady]):
	Pass a reload flag, based on the load type, to the bridge.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]): Pass a
	reload flag of NO in the anchor case. Preserve reload load types even when
	doing client redirects (have to talk with Trey about this tomorrow).

2002-11-14  Darin Adler  <darin@apple.com>

	- fixed 3100235 -- nil-deference in khtml::RenderTable at money.cnn.com

        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]):
	If the WebCore side needs layout, then do layout before trying to draw.

2002-11-13  Trey Matteson  <trey@apple.com>

	Fixed client redirects, some more.  The upshot is that they do not
	generate two items in the back-forward list.  iBench still works.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge reportClientRedirectTo:delay:fireDate:]):  Call straight to the frame for all impl.
        (-[WebBridge reportClientRedirectCancelled]):  Call straight to the frame for all impl.
        (-[WebBridge loadURL:reload:triggeringEvent:isFormSubmission:]):
	clientRedirect param removed when sending _loadURL: to frame.
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
	clientRedirect param  removed. Check our own ivar to know if we are in client redirect case.
        (-[WebFrame _loadURL:intoChild:]):
	clientRedirect param removed when sending _loadURL: .
        (-[WebFrame _clientRedirectedTo:delay:fireDate:]):
	Note that we are doing a redirect if time=0 and we're not completed.  Also includes
	previous impl moved from Bridge.
        (-[WebFrame _clientRedirectCancelled]):  Previous impl moved from Bridge.


2002-11-13  Maciej Stachowiak  <mjs@apple.com>

	Pass mime type instead of full response to content policy delegate
	method, in preparation for merging it with the file URL policy.
	
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:didReceiveResponse:]):

2002-11-13  Darin Adler  <darin@apple.com>

	- fixed 3083982 -- Logging into AOL gives null view

	Turns out AOL was using a refresh header, which we were not supporting.

        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _commitIfReady]):
	Call openURL: and pass headers in.

        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:isFormSubmission:]):
	Pass nil for headers in this case, since we know it's just an anchor change.

	- other things

        * WebCoreSupport.subproj/WebBridge.h: Remove dataSourceChanged and dataSource
	methods. We try to keep the bridge methods down to actual bridging.
        * WebCoreSupport.subproj/WebBridge.m: Remove dataSourceChanged altogether,
	and move dataSource up in the file.

        * WebView.subproj/WebHTMLRepresentation.m:
        (-[WebHTMLRepresentation setDataSource:]): Keep the data source around, so we
	don't need to ask the bridge for it.
        (-[WebHTMLRepresentation documentSource]): Use it here.

2002-11-13  Trey Matteson  <trey@apple.com>

	Fixed 3100084 - REGRESSION: web page is not first responder after visiting web page

        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _commitIfReady]):  Make the rep before _transitionToCommitted.  This is the way it used to be.
        (-[WebDataSource _makeRepresentation]):  Don't make the docView here.

        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]):  Make the docView here, after we save the scroll state but before notifying the delegate.

2002-11-13  Darin Adler  <darin@apple.com>

	- fixed 3100013 -- REGRESSION: Can't get results from i-Bench anymore

        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _isLoadComplete]):
	Don't set the state to WebFrameStateComplete if it has already been set
	to WebFrameStateProvisional. If it has, that means we already began a new
	load; that one is not yet complete.

2002-11-13  John Sullivan  <sullivan@apple.com>

	- fixed 3099922 -- REGRESSION: Back button always pops up menu

        * Misc.subproj/WebNSViewExtras.h:
        * Misc.subproj/WebNSViewExtras.m:
        (-[NSView _web_dragShouldBeginFromMouseDown:withExpiration:xHysteresis:yHysteresis:]:
	Fixed a copy/paste error I made yesterday -- this method was never
	noticing the mouse-up events because it was checking the event type
	against the wrong number. Also changed the hysteresis values from
	unsigneds to floats (unsigned was just wrong).

2002-11-13  Maciej Stachowiak  <mjs@apple.com>

	- fixed 3050447 - Policy handlers have no way of telling client
	that the proposed navigation is a form post

	Now we pass form submissions through all the normal policy steps.
	
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge loadURL:reload:triggeringEvent:isFormSubmission:]):
        (-[WebBridge postWithURL:data:contentType:triggeringEvent:]):
        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]):
        (-[WebDataSource _setTriggeringAction:]):
        (-[WebDataSource _triggeringAction]):
        (-[WebDataSource _lastCheckedRequest]):
        (-[WebDataSource _setLastCheckedRequest:]):
        * WebView.subproj/WebFrame.m:
        (-[WebFrame setProvisionalDataSource:]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _shouldShowRequest:]):
        (-[WebFrame _loadRequest:triggeringAction:]):
        (-[WebFrame _actionInformationForNavigationType:event:]):
        (-[WebFrame _continueAfterNavigationPolicyForRequest:dataSource:]):
        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:isFormSubmission:]):
        (-[WebFrame _loadURL:intoChild:]):
        (-[WebFrame _postWithURL:data:contentType:triggeringEvent:]):

2002-11-12  Maciej Stachowiak  <mjs@apple.com>

	Combine click policy and URL policy into navigation policy.
	
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebDefaultPolicyDelegate.h:
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        (-[WebDefaultPolicyDelegate navigationPolicyForAction:andRequest:inFrame:]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _shouldShowRequest:]):
        (-[WebFrame _actionInformationForNavigationType:event:]):
        (-[WebFrame _continueAfterFileURLPolicyForRequest:]):
        (-[WebFrame _continueAfterNavigationPolicyForRequest:event:]):
        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):

2002-11-12  Trey Matteson  <trey@apple.com>

	fixed 3096030 - Crash in -[WebBackForwardList goToEntry:] when playing with SnapBack and dictionary.com

        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _isLoadComplete]):  Set state=completed only after we tell the bridge to
	end the load.  This allows client redirects to be processed before we think we're complete.
        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
	Only process client redirects as such if we are not already complete.  This makes JS driven
	navigations after load-time work like the user would expect, as normal navigations.

2002-11-12  Maciej Stachowiak  <mjs@apple.com>

	- fixed 3099487 - REGRESSION: dragging an image always puts it in
	the download directory
	
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _downloadURL:]): Call _downloadURL:toPath: with nil path.
	(-[WebController _downloadURL:toPath:]): New method that
	predetermines the path to download to (needed for DnD).
        * WebView.subproj/WebHTMLView.m:
	(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Use
	_downloadURL:toPath:
        * WebView.subproj/WebImageView.m:
	(-[WebImageView namesOfPromisedFilesDroppedAtDestination:]): Use
	_downloadURL:toPath:
        * WebView.subproj/WebMainResourceClient.m:
	(-[WebMainResourceClient handle:didReceiveResponse:]): Don't ask
	delegate for download path if we already have one.

2002-11-12  Richard Williamson  <rjw@apple.com>

        Fixed likely cause of 3099047 (and others).  Width buffer could underrun in
        some situations.
        
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):

2002-11-12  John Sullivan  <sullivan@apple.com>

        * Misc.subproj/WebNSViewExtras.h:
        * Misc.subproj/WebNSViewExtras.m:
        (-[NSView _web_dragShouldBeginFromMouseDown:withExpiration:xHysteresis:yHysteresis:]):
	new method
        (-[NSView _web_dragShouldBeginFromMouseDown:withExpiration:]):
	now calls the new method, passing the default hysteresis values

2002-11-12  Richard Williamson  <rjw@apple.com>

        Implemented letter-spacing and word-spacing CSS properties.

        * Misc.subproj/WebStringTruncator.m:
        (+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
        (+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
        * WebCoreSupport.subproj/WebTextRenderer.h:
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer widthForCharacters:length:]):
        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:letterSpacing:wordSpacing:]):
        (-[WebTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:letterSpacing:wordSpacing:]):
        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):

2002-11-12  Maciej Stachowiak  <mjs@apple.com>

	Removed policy classes and instead use the policy enums directly,
	since we no longer hold the path in the enum.
	
        * Downloads.subproj/WebDownloadHandler.m:
        * WebKit.exp:
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebControllerPolicyDelegate.m:
        * WebView.subproj/WebControllerPolicyDelegatePrivate.h: Removed.
        * WebView.subproj/WebControllerPrivate.m:
        * WebView.subproj/WebDefaultPolicyDelegate.h:
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        (+[WebDefaultPolicyDelegate defaultURLPolicyForRequest:]):
        (-[WebDefaultPolicyDelegate URLPolicyForRequest:inFrame:]):
        (-[WebDefaultPolicyDelegate fileURLPolicyForMIMEType:andRequest:inFrame:]):
        (-[WebDefaultPolicyDelegate unableToImplementPolicy:error:forURL:inFrame:]):
        (-[WebDefaultPolicyDelegate clickPolicyForAction:andRequest:inFrame:]):
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame handleUnimplementablePolicy:errorCode:forURL:]):
        (-[WebFrame _shouldShowRequest:]):
        (-[WebFrame _continueAfterClickPolicyForEvent:request:]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:didReceiveResponse:]):

2002-11-12  Maciej Stachowiak  <mjs@apple.com>

	Keep the triggering event around on the data source, so it can be
	used with redirects.

        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _loadRequest:triggeringEvent:]):
        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
        (-[WebFrame _postWithURL:data:contentType:]):

2002-11-12  Darin Adler  <darin@apple.com>

	- improved the code that manages observing the window and superview

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView addSuperviewObservers]): Added.
        (-[WebHTMLView removeSuperviewObservers]): Added.
        (-[WebHTMLView addWindowObservers]): Added.
        (-[WebHTMLView removeWindowObservers]): Added.
        (-[WebHTMLView viewWillMoveToSuperview:]): Call removeSuperviewObservers.
        (-[WebHTMLView viewDidMoveToSuperview]): Call addSuperviewObservers.
        (-[WebHTMLView viewWillMoveToWindow:]): Call removeWindowObservers and
	removeSuperviewObservers.
        (-[WebHTMLView viewDidMoveToWindow]): Call addWindowObservers and
	addSuperviewObservers.

2002-11-11  Maciej Stachowiak  <mjs@apple.com>

	Remove contentPolicy parameter from _downloadURL, and remove
	remaining traces of path from policy object.

        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebControllerPolicyDelegate.m:
        (-[WebPolicyPrivate dealloc]):
        (+[WebURLPolicy webPolicyWithURLAction:]):
        (+[WebFileURLPolicy webPolicyWithFileAction:]):
        (+[WebContentPolicy webPolicyWithContentAction:]):
        (+[WebClickPolicy webPolicyWithClickAction:]):
        * WebView.subproj/WebControllerPolicyDelegatePrivate.h:
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _downloadURL:]):
        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultContextMenuDelegate downloadURL:]):
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        (-[WebDefaultPolicyDelegate clickPolicyForAction:andRequest:inFrame:]):
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _continueAfterClickPolicyForEvent:request:]):
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
        * WebView.subproj/WebImageView.m:
        (-[WebImageView namesOfPromisedFilesDroppedAtDestination:]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:didReceiveResponse:]):

2002-11-11  Darin Adler  <darin@apple.com>

        * Plugins.subproj/WebNetscapePluginPackage.m: (-[WebNetscapePluginPackage load]):
        Use fileSystemRepresentationWithPath, not cString, to turn a path into something
        to pass to FSPathMakeRef.

        * English.lproj/StringsNotToBeLocalized.txt: Update.

2002-11-11  Darin Adler  <darin@apple.com>

	- tighten up cursor handling a bit more

        * WebView.subproj/WebDynamicScrollBarsView.m:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView addMouseMovedObserver]): Call _frameOrBoundsChanged
	so we emit a mouse moved event right away.
        (-[WebHTMLView viewWillMoveToSuperview:]): Remove the colon since I
	removed the parameter from _frameOrBoundsChanged.

        * WebView.subproj/WebHTMLViewPrivate.h: Declare _frameOrBoundsChanged.
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _frameOrBoundsChanged]): Remove parameter.

2002-11-11  Trey Matteson  <trey@apple.com>

        Fixed 3015884 - Reloading a page should remember the scroll position

        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]):  Save scroll position on reload
        (-[WebFrame _isLoadComplete]):  Restore position on reload

2002-11-11  Trey Matteson  <trey@apple.com>

        * History.subproj/WebBackForwardList.m:
        (-[WebBackForwardList addEntry:]):  Yank code to avoid adding a duplicate entry, to catch the
	refresh case.  That's dealt with in WebFramePrivate now.
        (-[WebBackForwardList description]):  Enhanced to print more info.

        * History.subproj/WebHistoryItem.h:
	History items now hold an array of subitems to mirror the frame tree.  One item in the tree
	is designated the target of the navigation.
        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem dealloc]):  Release new ivars.
        (-[WebHistoryItem isTargetItem]):
        (-[WebHistoryItem setIsTargetItem:]):
	New setter and setter.
        (-[WebHistoryItem _recurseToFindTargetItem]):
        (-[WebHistoryItem targetItem]):
	Search the tree to find the target item.
        (-[WebHistoryItem children]):
        (-[WebHistoryItem addChildItem:]):
        (-[WebHistoryItem childItemWithName:]):
	Maintain and search new child item list.
        (-[WebHistoryItem description]):
	Enhanced to print out the tree of items.
        (-[WebHistoryItem dictionaryRepresentation]):
        (-[WebHistoryItem initFromDictionaryRepresentation:]):
	Save and load the new state.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge generateFrameName]):  New call from KWQ, just forwards to Frame.
        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
	Call new frame method dedicated to this case.
        (-[WebBridge saveDocumentState:]):
        (-[WebBridge documentState]):
	Call frame methods to get the right item to save/restore to/from.

        * WebView.subproj/WebController.m:
        (-[WebController _goToItem:withLoadType:]):  Stop any current loading before going to a new item.
        (-[WebController goBack]):
        (-[WebController goForward]):
        (-[WebController goBackOrForwardToItem:]):  Name change of private method (for consistency)

        * WebView.subproj/WebDataSourcePrivate.h:
	ProvisionalItem and PreviousItem are moved back up to WebFrame, where we know more about the
	state transitions that happen during loading.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]): Don't release removed ivars.
        (-[WebDataSource _commitIfReady]): Make the view representations -after- the transition to committed.
	This allows us to save away the scroll location successfully, since making the view was resetting it.
        * WebView.subproj/WebFrame.h:
        * WebView.subproj/WebFrame.m:
        (-[WebFrame setProvisionalDataSource:]):  Saving the scroll location has moved elsewhere to handle frames.
        (-[WebFrame stopLoading]):  Skip all the work if we're already state=complete.

        * WebView.subproj/WebFramePrivate.h:
	The frame now holds a ref to the current, previous and provisional back-forward items.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFramePrivate dealloc]):  Release new state.
        (-[WebFramePrivate setProvisionalItem:]):
        (-[WebFramePrivate setPreviousItem:]):
        (-[WebFramePrivate setCurrentItem:]):	New setters (1 line getters were missed by script)
        (-[WebFrame _addBackForwardItemClippedAtTarget:]):  Adds a BF item to the top of the BF list.
        (-[WebFrame _createItem]):  Create a single BF item.
        (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]):  Create a tree of BF items, which
	mirror the frame tree.
        (-[WebFrame _immediateChildFrameNamed:]):  New frame search utility (doesn't recurse)
        (-[WebFrame _detachFromParent]):  Save the scroll position when detaching a frame.
        (-[WebFrame _transitionToCommitted]):  Maintain new item ivars.  Save scroll position when
	appropriate.  Hook up items for child frames to their parent, as they are created.
        (-[WebFrame _setState:]):  Clear previousItem whenever we reach committed.
        (-[WebFrame _isLoadComplete]):  Clear previousItem if we are committed.
        (-[WebFrame _childFramesMatchItem:]):  Does the frame's frame tree match the one held by the item?
        (-[WebFrame _loadItem:fromItem:withLoadType:]):  Only do simple anchor navigation if the frame
	has no children (fixes oddball corner case with a frame reloading itself).  Set provisional item.
        (-[WebFrame _recursiveGoToItem:fromItem:withLoadType:]):  Heart of returning to an item that had
	frames.  We either find that the existing content is good, or initiate a load.
        (-[WebFrame _goToItem:withLoadType:]):  Adjust the BF list cursor, and recurse to do the work.
        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):  Only do anchor-style nav if
	the destination URL has a fragment.  Save scroll position.
        (-[WebFrame _loadURL:intoChild:]):  If returning to an item with frames, possibly replace the
	new content with the stuff that was there at the time, substituting the URL.
        (-[WebFrame _saveScrollPositionToItem:]):  Don't croak on nil item or view.
        (-[WebFrame _restoreScrollPosition]):  Do croak (ASSERT) on nil item.
        (-[WebFrame _scrollToTop]):  Nit cleanup.
        (-[WebFrame _addFramePathToString:]):  Add a component for our frame to the frame name we're generating.
        (-[WebFrame _generateFrameName]):  Generate a frame name that is repeatable.
        (-[WebFrame _itemForSavingDocState]):  Returns correct item to use for formstate save.
        (-[WebFrame _itemForRestoringDocState]):  Returns correct item to use for formstate restore

2002-11-11  Maciej Stachowiak  <mjs@apple.com>

	Store path and the fact that we're downloading in the data source,
	instead of storing the content policy.
	
        * Downloads.subproj/WebDownloadHandler.m:
        (-[WebDownloadHandler cleanUpAfterFailure]):
        (-[WebDownloadHandler createFileIfNecessary]):
        (-[WebDownloadHandler finishedLoading]):
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _downloadURL:withContentPolicy:]):
        * WebView.subproj/WebDataSource.h:
        * WebView.subproj/WebDataSource.m:
        (+[WebDataSource registerRepresentationClass:forMIMEType:]):
        (-[WebDataSource isDownloading]):
        (-[WebDataSource downloadPath]):
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]):
        (-[WebDataSource _commitIfReady]):
        (-[WebDataSource _setIsDownloading:]):
        (-[WebDataSource _setDownloadPath:]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient receivedError:]):
        (-[WebMainResourceClient handle:didReceiveResponse:]):
        (-[WebMainResourceClient handleDidFinishLoading:]):

2002-11-11  Maciej Stachowiak  <mjs@apple.com>

	Don't ask for the content policy any more if the previous policies
	said to save - in effect this means to ask only if the previous
	policies said to use the content policy. Also, remove now-useless
	previous content policy parameter from content policy delegate.
	
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
	(-[WebDataSource _setContentPolicy:]): Retain new policy before
	releasing the old one.
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        * WebView.subproj/WebMainResourceClient.m:
	(-[WebMainResourceClient handle:didReceiveResponse:]): Don't ask
	for content policy if the delegate already decided to save.

2002-11-11  Maciej Stachowiak  <mjs@apple.com>

	Added new policy delegate callback to get the filename - this
	won't be up to the content policy any more.
	
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        (-[WebDefaultPolicyDelegate saveFilenameForResponse:andRequest:]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:didReceiveResponse:]):

2002-11-11  Darin Adler  <darin@apple.com>

	- made some improvements to cursor setting for greater speed and correctness

        * WebView.subproj/WebDynamicScrollBarsView.m:
        (-[WebDynamicScrollBarsView setCursor:]): Just use setDocumentCursor: instead of
	our own logic. This allows us to remove code and may fix some bugs or anomalies as well.
        (-[WebDynamicScrollBarsView dealloc]): Release the cursor. I think we were leaking before.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView viewWillMoveToSuperview:]): Use _frameOrBoundsChanged: method now, which
	has been moved into the private file.
        (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): Don't bother finding
	topmost WebHTMLView to call _updateMouseoverWithEvent: on; now it works fine no matter
	which level it's called at.

        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _frameOrBoundsChanged:]): Moved the code here that was formerly in the
	_setNeedsLayoutIfSizeChanged method, also added code that does _updateMouseoverWithEvent:
	so that we get properly updated cursor when we scroll.
        (-[WebHTMLView _updateMouseoverWithEvent:]): Remove unneeded assert. This method works
	equally well no matter which WebHTMLView calls it; everything is done at the window and
	controller level.

        * WebView.subproj/WebControllerPrivate.h: Added lastElementWasNotNil field and
	_mouseDidMoveOverElement:modifierFlags: method.
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _mouseDidMoveOverElement:modifierFlags:]): Call through to the delegate,
	but don't do multiple calls if they are all nil.

        * WebCoreSupport.subproj/WebBridge.m: Remove unused modifierTrackingEnabled method.
        * WebView.subproj/WebHTMLViewPrivate.h: Remove unused _setModifierTrackingEnabled and
	_modifierTrackingEnabled methods.

2002-11-10  Darin Adler  <darin@apple.com>

        * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.

2002-11-10  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3021681 - downloaded files' creation and modification dates are not set

        * Downloads.subproj/WebDownloadHandler.m:
        (-[WebDownloadHandler createFileIfNecessary]): call [response creationDate] and [response lastModifiedDate] when setting file attributes.
        * Plugins.subproj/WebBaseNetscapePluginStream.m:
        (-[WebBaseNetscapePluginStream setResponse:]): call [response lastModifiedDate] when giving content to plug-ins.

2002-11-10  Darin Adler  <darin@apple.com>

        * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.

2002-11-09  Darin Adler  <darin@apple.com>

	- fixed 3095156 -- reproducible leak of WebDataSource due to bad URL in stylesheet

        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
	Check for errors by looking at the return value from loadWithRequest: rather than
	making a separate call to canInitWithRequest.

        * WebView.subproj/WebBaseResourceHandleDelegate.h: Add boolean success/failure result
	loadWithRequest:.
        * WebView.subproj/WebBaseResourceHandleDelegate.m:
        (-[WebBaseResourceHandleDelegate loadWithRequest:]): Return NO if we fail to make a handle.

        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading]):
	Check result of loadWithRequest: and complain if it's NO.

        * WebView.subproj/WebMainResourceClient.m: Tweak whitespace.

2002-11-09  Chris Blumenberg  <cblu@apple.com>

	Fixed: 2991610 - Alexander should support services, including Speech

        * WebView.subproj/WebHTMLView.m:
        (+[WebHTMLView initialize]): register for service types
        (-[WebHTMLView dealloc]): moved to top of file
        (-[WebHTMLView copy:]): call _writeSelectionToPasteboard
        (-[WebHTMLView writeSelectionToPasteboard:types:]): call _writeSelectionToPasteboard
        (-[WebHTMLView validRequestorForSendType:returnType:]): return self for our pboard types
        * WebView.subproj/WebHTMLViewPrivate.h:
        * WebView.subproj/WebHTMLViewPrivate.m:
        (+[WebHTMLView _pasteboardTypes]): new, returns the array of supported pboard types 
        (-[WebHTMLView _writeSelectionToPasteboard:]): new, adds data to pboard
        * WebView.subproj/WebImageView.m:
        (-[WebImageView initialize]): register for service types
        (-[WebImageView validateUserInterfaceItem:]): respond to copy
        (-[WebImageView validRequestorForSendType:returnType:]): return self for images
        (-[WebImageView writeImageToPasteboard:]): writes image data to pboard
        (-[WebImageView copy:]): calls writeImageToPasteboard
        (-[WebImageView writeSelectionToPasteboard:types:]): calls writeImageToPasteboard

2002-11-08  Darin Adler  <darin@apple.com>

        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem setTitle:]): Use display title if it matches, so
	we don't end up with two identical strings, as when reading from
	the property list.
        (-[WebHistoryItem setDisplayTitle:]): The same thing, the other way round.

2002-11-08  Darin Adler  <darin@apple.com>

	- fixed 3095078 -- image loop counts still not handled right

        * WebCoreSupport.subproj/WebImageRenderer.m:
        (-[WebImageRenderer blockHasGIFExtensionSignature:length:]): Look for the tag
	"NETSCAPE2.0", not "NETSCAPE1.0".
        (-[WebImageRenderer nextFrame:]): Remove special handling for last frames with
	a duration of 0. That was just a misunderstanding.

2002-11-08  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setRequest:]):
	Slightly better fix. Essentially just take out the assert.

2002-11-08  Darin Adler  <darin@apple.com>

	- fixed an assert I am seeing a lot

        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setRequest:]): Oops.

2002-11-08  Richard Williamson   <rjw@apple.com>

        Solved missing glyph problem, but it's very slow, so
        it's disabled for now.  I'll turn back on after extending
        the character to glyph map in each renderer to include
        substituted font.
        
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer substituteFontForString:]):
        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):

2002-11-08  Darin Adler  <darin@apple.com>

	- separate WebBaseNetscapePluginStream more cleanly from its subclasses
	by making most fields private

        * Plugins.subproj/WebBaseNetscapePluginStream.m:
        (-[WebBaseNetscapePluginStream setResponse:]):
        * Plugins.subproj/WebNetscapePluginStream.h:
        * Plugins.subproj/WebNetscapePluginStream.m:
        (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
        (-[WebNetscapePluginStream dealloc]):
        (-[WebNetscapePluginStream start]):
        (-[WebNetscapePluginStream handle:didReceiveData:]):
        (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient handle:didReceiveResponse:]):
        (-[WebSubresourceClient handle:didReceiveData:]):
        (-[WebSubresourceClient handleDidFinishLoading:]):
        (-[WebSubresourceClient handle:didFailLoadingWithError:]):
        (-[WebSubresourceClient cancel]):
        * WebView.subproj/WebBaseResourceHandleDelegate.h:
        * WebView.subproj/WebBaseResourceHandleDelegate.m:
        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
        (-[WebBaseResourceHandleDelegate handle:didFailLoadingWithError:]):
        (-[WebBaseResourceHandleDelegate _cancelWithError:]):
        (-[WebBaseResourceHandleDelegate cancel]):
        (-[WebBaseResourceHandleDelegate cancelQuietly]):
        (-[WebBaseResourceHandleDelegate cancelledError]):
        (-[WebBaseResourceHandleDelegate notifyDelegatesOfInterruptionByPolicyChange]):
        * WebView.subproj/WebMainResourceClient.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient cancel]):
        (-[WebMainResourceClient handle:willSendRequest:]):
        (-[WebMainResourceClient notifyDelegatesOfInterruptionByPolicyChange]):
        (-[WebMainResourceClient handle:didReceiveResponse:]):
        (-[WebMainResourceClient handle:didReceiveData:]):
        (-[WebMainResourceClient handleDidFinishLoading:]):

2002-11-08  Darin Adler  <darin@apple.com>

	- changed persistent dictionaries to use NSString instead of NSURL
	because of impact on memory footprint

	Also changed WebIconDatabase code to verify what it reads from disk,
	and ignore it if it can't verify the format.

        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase iconForSiteURL:withSize:cache:]):
        (-[WebIconDatabase retainIconForSiteURL:]):
        (-[WebIconDatabase releaseIconForSiteURL:]):
        (-[WebIconDatabase _iconDictionariesAreGood]):
        (-[WebIconDatabase _loadIconDictionaries]):
        (-[WebIconDatabase _updateFileDatabase]):
        (-[WebIconDatabase _hasIconForSiteURL:]):
        (-[WebIconDatabase _iconsForIconURLString:]):
        (-[WebIconDatabase _setIcon:forIconURL:]):
        (-[WebIconDatabase _setIconURL:forSiteURL:]):
        (-[WebIconDatabase _setBuiltInIconAtPath:forHost:]):
        (-[WebIconDatabase _retainIconForIconURLString:]):
        (-[WebIconDatabase _releaseIconForIconURLString:]):
        (-[WebIconDatabase _retainFutureIconForSiteURL:]):
        (-[WebIconDatabase _releaseFutureIconForSiteURL:]):
        (-[WebIconDatabase _retainOriginalIconsOnDisk]):
        (-[WebIconDatabase _releaseOriginalIconsOnDisk]):
        (-[NSEnumerator _web_isAllStrings]):
        * Panels.subproj/WebStandardPanels.m:
        (-[WebStandardPanels didStartLoadingURL:inWindow:]):
        (-[WebStandardPanels didStopLoadingURL:inWindow:]):
        (-[WebStandardPanels _didStartLoadingURL:inController:]):
        (-[WebStandardPanels _didStopLoadingURL:inController:]):
        (-[WebStandardPanels frontmostWindowLoadingURL:]):

2002-11-08  Darin Adler  <darin@apple.com>

	- fixed crash on boot that Don was seeing

        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem URL]): Make this work when _URLString is nil.
        (-[WebHistoryItem initFromDictionaryRepresentation:]): Make this work for nil URL.

	- my own private war on the cString method

        * Downloads.subproj/WebDownloadHandler.m:
        (-[WebDownloadHandler initWithDataSource:]): Use %@ in LOG to avoid cString.
        (-[WebDownloadHandler finishedLoading]): Ditto.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _commitIfReady]): Ditto.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _timedLayout:]): Ditto.
        (-[WebFrame _setState:]): More of the same.
        (-[WebFrame _isLoadComplete]): Ditto.

2002-11-08  Ken Kocienda  <kocienda@apple.com>

	Fix deployment build breaker: a variable was used only in a 
	LOG statement, causing the variable to become usused when
	building with the Deployment build style. 

        * Downloads.subproj/WebDownloadHandler.m:
        (-[WebDownloadHandler finishedLoading])

2002-11-07  Darin Adler  <darin@apple.com>

        * History.subproj/WebHistoryItem.h: Replace _URL with _URLString.

        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem _retainIconInDatabase:]): Get the URL with [self URL].
        (-[WebHistoryItem initWithURL:target:parent:title:]): Set up _URLString.
        (-[WebHistoryItem dealloc]): Release _URLString.
        (-[WebHistoryItem URL]): Make a URL from _URLString.
        (-[WebHistoryItem icon]): Use [self URL] instead of _URL.
        (-[WebHistoryItem setURL:]): Store a URL string.
        (-[WebHistoryItem hash]): Use the URL string's hash.
        (-[WebHistoryItem isEqual:]): Compare the URL strings.
        (-[WebHistoryItem description]): Use _URLString.
        (-[WebHistoryItem dictionaryRepresentation]): Use _URLString.
        (-[WebHistoryItem initFromDictionaryRepresentation:]): Call through to
	the other init functions so we have only one designated initializer.
	Leave the date as nil if there's no date in the dictionary instead of
	setting the date to 0.

2002-11-07  Maciej Stachowiak  <mjs@apple.com>

	Removed SaveAndOpenExternally policy.
	
        * Downloads.subproj/WebDownloadHandler.m:
        (-[WebDownloadHandler finishedLoading]):
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _continueAfterClickPolicyForEvent:request:]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient receivedError:]):
        (-[WebMainResourceClient handle:didReceiveResponse:]):
        (-[WebMainResourceClient handleDidFinishLoading:]):

2002-11-07  Chris Blumenberg  <cblu@apple.com>

        * WebKit.pbproj/project.pbxproj:

2002-11-07  Richard Williamson  <rjw@apple.com>

        * WebCoreSupport.subproj/WebImageRenderer.m:
        (-[WebImageRenderer stopAnimation]):

2002-11-07  Maciej Stachowiak  <mjs@apple.com>

	- fixed 3095628 - REGRESSION: exception when clicking on link to load content into iframe
	
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _actionInformationForNavigationType:event:]): Get the
	element info from the HTML view where the click originally
	happened, not the current document view. Add some asserts to make
	sure this is working.


2002-11-07  Richard Williamson  <rjw@apple.com>

        Tweaks
        
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer convertCharacters:length:toGlyphs:skipControlCharacters:]):
        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):

=== Alexander-31 ===

2002-11-07  Maciej Stachowiak  <mjs@apple.com>

	- fixed 3094778 - REGRESSION: Assert on logout from schwab.com

	(probably fixed it anyway - I'm flying blind on this one)
	
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge createWindowWithURL:frameName:]): Use a nil request
	if the URL was nil, instead of making a request that contains a
	nil URL.

2002-11-07  Maciej Stachowiak  <mjs@apple.com>

	Changed things so that creating a window takes a request rather
	than a URL and referrer.
	
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge createWindowWithURL:frameName:]):
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _openNewWindowWithRequest:behind:]):
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]):
        (-[WebDataSource _setTriggeringEvent:]):
        (-[WebDataSource _triggeringEvent]):
        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultContextMenuDelegate openNewWindowWithURL:]):
        * WebView.subproj/WebFrame.m:
        (-[WebFrame setProvisionalDataSource:]):
        (-[WebFrame findOrCreateFramedNamed:]):
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _continueAfterClickPolicyForEvent:request:]):
        * WebView.subproj/WebWindowOperationsDelegate.h:

2002-11-06  Darin Adler  <darin@apple.com>

	- fixed problem where files small enough to fit entirely in the buffer
	(8K or less) would not be decoded

        * Downloads.subproj/WebDownloadHandler.m:
        (-[WebDownloadHandler decodeData:]): Added. Moved most of the code from
	receivedData into here.
        (-[WebDownloadHandler receivedData:]): Changed to call decodeData.
        (-[WebDownloadHandler finishedLoading]): Call decodeData on any remaining
	bytes rather than writing them straight out to the data fork.

2002-11-06  Richard Williamson  <rjw@apple.com>

        More work on rendering scripts. Now most complex scripts render correctly.
        Working new features include:
        bidi, diacriticals, cursive forms, and arabic ligatures.
        Selection of text rendered in these scripts, is however, not working. 
        Also, line height is incorrect when renderering combined below glyphs.
        ajami is, sadly, horrendously broken.

        * Misc.subproj/WebUnicode.m:
        (glyphVariantLogical):
        (shapedString):
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:]):
        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):

2002-11-06  John Sullivan  <sullivan@apple.com>

        * Bookmarks.subproj/WebBookmark.m:
        (+[WebBookmark bookmarkOfType:]):
	made this handle WebBookmarkTypeProxy

2002-11-06  Darin Adler  <darin@apple.com>

	- fixed bug that affected BinHex-encoded files with no resource fork

        * Downloads.subproj/WebBinHexDecoder.m:
        (-[WebBinHexDecoder decodeData:dataForkData:resourceForkData:]):
	Don't decode the resource fork unless done with the data fork.

        * Downloads.subproj/WebDownloadHandler.m: (-[WebDownloadHandler receivedData:]):
	Set the forks to nil before calling through.

2002-11-06  Darin Adler  <darin@apple.com>

        * Downloads.subproj/WebMacBinaryDecoder.m: (+[WebMacBinaryDecoder canDecodeHeaderData:]):
	Fix == 129 check that was supposed to be <= 129.

        * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.

2002-11-06  Darin Adler  <darin@apple.com>

        * Downloads.subproj/WebBinHexDecoder.m: (-[WebBinHexDecoder decodeIntoBuffer:size:]):
	Fix an off-by-one error handling repeat counts.

        * WebKit.pbproj/project.pbxproj: Fix group name I accidentally mangled.

2002-11-06  Darin Adler  <darin@apple.com>

	- added a BinHex decoder and did a little work on the MacBinary decoder
        
        I'm not supposed to be working on this, but I didn't feel like doing "real" work.

        * Downloads.subproj/WebBinHexDecoder.h: Added.
        * Downloads.subproj/WebBinHexDecoder.m: Added.
        * WebKit.pbproj/project.pbxproj: Added WebBinHexDecoder.

        * Downloads.subproj/WebDownloadDecoder.h: Added WEB_DOWNLOAD_DECODER_MINIMUM_HEADER_LENGTH.
        * Downloads.subproj/WebDownloadHandler.m:
        (-[WebDownloadHandler closeFile]): Check to be sure we don't close the same file twice.

        * Downloads.subproj/WebMacBinaryDecoder.h: Added _scriptCode.
        * Downloads.subproj/WebMacBinaryDecoder.m:
        (+[WebMacBinaryDecoder canDecodeHeaderData:]): Added check of MacBinary version field.
        (-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]): Added MacBinary III
	part that gets the script code.
        (-[WebMacBinaryDecoder filename]): Use the script code.

2002-11-06  Maciej Stachowiak  <mjs@apple.com>

	Took URL field out of click policy - open in new window policy
	will always open the request URL.
	
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebControllerPolicyDelegate.m:
        (-[WebPolicyPrivate dealloc]):
        (+[WebURLPolicy webPolicyWithURLAction:]):
        (+[WebFileURLPolicy webPolicyWithFileAction:]):
        (+[WebContentPolicy webPolicyWithContentAction:andPath:]):
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        (-[WebDefaultPolicyDelegate clickPolicyForAction:andRequest:inFrame:]):
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _continueAfterClickPolicyForEvent:request:]):

2002-11-06  Chris Blumenberg  <cblu@apple.com>

	Support MacBinary I by checking that bytes 99-127 are 0. Also check byte 82 for all formats.

        * Downloads.subproj/WebMacBinaryDecoder.m:
        (+[WebMacBinaryDecoder canDecodeHeaderData:]):

2002-11-06  Ken Kocienda  <kocienda@apple.com>

	Call new WebHTTPResourceRequest method to set the amount of time
	to cache a 404 response when trying to fetch a favicon.

	This change helps to fix this bug:

	Radar 3004422 (Loader should cache misses)

        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader startLoading])

2002-11-05  Maciej Stachowiak  <mjs@apple.com>

	Reworked clickPolicy arguments to be closer to proposed version.
	
        * WebKit.exp:
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebControllerPolicyDelegate.m:
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        (-[WebDefaultPolicyDelegate clickPolicyForAction:andRequest:inFrame:]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _actionInformationForNavigationType:event:]):
        (-[WebFrame _continueAfterClickPolicyForEvent:request:]):

2002-11-05  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebTextRenderer.m: Made a slightly simpler and faster
	version of the new "lose precision" CEIL_TO_INT macro.

2002-11-05  Richard Williamson  <rjw@apple.com>

        Fixed a couple of issues that Dave highlighted w/ his whitespace
        fixes.  CG sometimes introduces very small 'error' in metrics, specifically
        we saw character widths of 20.0000019 that should have been 20.  As a 
        work-around we loose precision beyond the 1000th place.  Also, always
        ceil spaces.
                
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):

2002-11-05  Darin Adler  <darin@apple.com>

	- fixed 3084704 -- crash in HTMLTokenizer on page with JavaScript
	HTMLDocument::Close inside a <script>

        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _detachFromParent]):
	We need to stop loading here. Otherwise we might do loading after closeURL,
	which could lead to a problem like the one above.

2002-11-05  Darin Adler  <darin@apple.com>

	- changed our MacBinary decoding to not pay any attention to the comment

	Before we would "fail to decode" if the comment was truncated, now we just
	don't worry about it.

        * Downloads.subproj/WebMacBinaryDecoder.h: Remove _commentLength and _commentEnd.
        * Downloads.subproj/WebMacBinaryDecoder.m:
        (-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]): Remove code
	to get _commentLength and code to compute _commentEnd.
        (-[WebMacBinaryDecoder finishDecoding]): Check offset against the resource fork
	end rather than the comment end to see if we got enough data.

2002-11-05  John Sullivan  <sullivan@apple.com>

        * Resources/url_icon.tiff:
	reverted generic URL icon back to the one that
	looks like a document until we get something from
	HI that SJ likes

2002-11-05  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3074108 - Decode macbinary files during download

        * Downloads.subproj/WebDownloadDecoder.h:
        * Downloads.subproj/WebDownloadHandler.h:
        * Downloads.subproj/WebDownloadHandler.m:
        (-[WebDownloadHandler initWithDataSource:]):
        (-[WebDownloadHandler dealloc]):
        (-[WebDownloadHandler decodeHeaderData:dataForkData:resourceForkData:]):
        (-[WebDownloadHandler decodeData:dataForkData:resourceForkData:]):
        (-[WebDownloadHandler closeFile]):
        (-[WebDownloadHandler cleanUpAfterFailure]):
        (-[WebDownloadHandler createFileIfNecessary]):
        (-[WebDownloadHandler writeData:toFork:]):
        (-[WebDownloadHandler writeDataForkData:resourceForkData:]):
        (-[WebDownloadHandler dataIfDoneBufferingData:]):
        (-[WebDownloadHandler receivedData:]):
        (-[WebDownloadHandler finishDecoding]):
        (-[WebDownloadHandler finishedLoading]):
        (-[WebDownloadHandler cancel]):
        * Downloads.subproj/WebMacBinaryDecoder.h:
        * Downloads.subproj/WebMacBinaryDecoder.m:
        (-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]):
        (-[WebMacBinaryDecoder fileAttributes]):
        (-[WebMacBinaryDecoder filename]):
        * Misc.subproj/WebKitErrors.h: added new errors
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:didReceiveResponse:]): don't send response to download handler
        (-[WebMainResourceClient handle:didReceiveData:]): watch for decoding errors

2002-11-05  Ken Kocienda  <kocienda@apple.com>

	Fix for this bug:

	Radar 3092747 (javascript cookieEnabled property returns incorrect value)

	Now, we return "true" for navigator.cookieEnabled when 
	"Only accept cookies from the same domain as the current page" option
	is selected is user preferences.

        * WebCoreSupport.subproj/WebCookieAdapter.m:
        (-[WebCookieAdapter cookiesEnabled])

2002-11-05  John Sullivan  <sullivan@apple.com>

	- fixed 3091271 -- missing plug-in icon is on white
	background, not transparent.

        * Resources/nullplugin.tiff: Photoshopped the white away. It's
	still ugly, but that's a separate bug (3091274)

2002-11-05  Maciej Stachowiak  <mjs@apple.com>

	- fixed 3083732 - SJ: window comes out blank on samsung site
	
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
	Don't start loading if the URL is exactly the same as the parent
	URL. We may need a more stringent check, but this seems to match
	the tolerance of other browsers OK.

2002-11-05  Maciej Stachowiak  <mjs@apple.com>

	Added request and frame to click policy callback.
	
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        (-[WebDefaultPolicyDelegate clickPolicyForElement:button:modifierFlags:request:inFrame:]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _continueAfterClickPolicyForEvent:request:]):
        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):

2002-11-04  Richard Williamson  <rjw@apple.com>

        Changes to support cursive letter forms.  It works, but I've
        disabled it for now.  It's buggy and needs cleanup.
        Arabic now renders correctly except for ligature substitution.
        
        * Misc.subproj/WebUnicode.h:
        * Misc.subproj/WebUnicode.m:
        (_unicodeIsMark):
        (getShape):
        (prevChar):
        (nextChar):
        (prevLogicalCharJoins):
        (nextLogicalCharJoins):
        (glyphVariantLogical):
        (shapedString):
        * Misc.subproj/WebUnicodeTables.m:
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:]):
        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
        * WebKitPrefix.h:

2002-11-04  Maciej Stachowiak  <mjs@apple.com>

	Changes to send NSEvents all the way through WebCore and then pass
	them back out to WebKit, so that click policy can have a
	WebResourceRequest added.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge loadURL:reload:triggeringEvent:]):
        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _continueAfterClickPolicyForEvent:]):
        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseUp:]):
        * WebView.subproj/WebHTMLViewPrivate.h:
        * WebView.subproj/WebHTMLViewPrivate.m:

2002-11-04  Chris Blumenberg  <cblu@apple.com>

	Fixed - 3091658: REGRESSION: cmd-left for back doesn't work in plain-text viewer

	We now pass text field key events to the next responder which would be WebView in this case.

        * WebView.subproj/WebTextView.m:
        (-[WebTextView keyDown:]):
        (-[WebTextView keyUp:]):

2002-11-04  Darin Adler  <darin@apple.com>

	- fixed 3090257 -- "leak the world" using the Wallace and Gromit "console"

        * Plugins.subproj/WebNetscapePluginStream.m: Update for changes to the base delegate.
        (-[WebNetscapePluginStream start]): Use loadWithRequest:.
        (-[WebNetscapePluginStream stop]): Call cancel instead of just canceling the handle
	directly. This fixes the world leak.
        (-[WebNetscapePluginStream cancel]): Do some of the work that was formerly in "stop".

        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:willSendRequest:]): Call the "stop loading URL" whenever
	we cancel I/O, so we don't leak the world.
        (-[WebMainResourceClient handle:didReceiveResponse:]): Ditto.

        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge objectLoadedFromCache:response:size:]):
        * WebCoreSupport.subproj/WebSubresourceClient.m: (-[WebSubresourceClient handleDidFinishLoading:]):
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _finishedLoadingResourceFromDataSource:]):
	Fix a typo in the word "finished".

        * WebView.subproj/WebBaseResourceHandleDelegate.m:
        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]): Tweak.
        (-[WebBaseResourceHandleDelegate cancel]): Tweak.

        * Panels.subproj/WebStandardPanels.m:
        (-[WebStandardPanels didStartLoadingURL:inWindow:]): Add assertions.
        (-[WebStandardPanels didStopLoadingURL:inWindow:]): Ditto.
        (-[WebStandardPanels _didStartLoadingURL:inController:]): Ditto.
        (-[WebStandardPanels _didStopLoadingURL:inController:]): Ditto.

2002-11-04  Darin Adler  <darin@apple.com>

        * Downloads.subproj/WebMacBinaryDecoder.h: Removed many unneeded fields.
        * Downloads.subproj/WebMacBinaryDecoder.m:
        (+[WebMacBinaryDecoder canDecodeHeaderData:]): Added comments. Changed maximum filename
	length to 63 as the format supports, rather than the 31 that's based on historical
	HFS limitations. Fix endian dependency in CRC check.
        (-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]): Simplified this,
	and removed the state machine and the accumulator. Also added some asserts. Fixed endian
	dependency in the code to extract the header.
        (-[WebMacBinaryDecoder finishDecoding]): New simpler check now that we don't have a
	_streamComplete boolean.
        (-[WebMacBinaryDecoder fileAttributes]): Rewrote to take advantage of the above changes,
	and also to use kCFAbsoluteTimeIntervalSince1904 rather than parsing a date string.

        * Downloads.subproj/crc16.h: Tweaks.
        * Downloads.subproj/crc16.m: Tweaks.

2002-11-04  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebImageRenderer.m: (-[WebImageRenderer dealloc]):
	Replaced a useless call to stopAnimation with a couple of asserts.

2002-11-04  John Sullivan  <sullivan@apple.com>

        * Resources/url_icon.tiff:
	new "generic URL" icon from HI -- this one looks like
	a red ribbon (!)

2002-11-03  Darin Adler  <darin@apple.com>

        * Plugins.subproj/WebPluginError.h:
        * Plugins.subproj/WebPluginError.m:
	Not __MyCompanyName__, but rather Apple Computer.

2002-11-03  Darin Adler  <darin@apple.com>

        * Plugins.subproj/WebPlugin.h: Fix comment.

        * Plugins.subproj/WebPluginError.m: (-[WebPluginErrorPrivate dealloc]):
	Fix leak by calling [super dealloc].

        * WebView.subproj/WebFramePrivate.m: (-[WebFramePrivate dealloc]): Remove the
	timer invalidate since, as Trey pointed out, it's pointless to invalidate a
	timer in dealloc if it's retaining this object while valid.

2002-11-03  Chris Blumenberg  <cblu@apple.com>

	- Added MacBinary decoding code. Not yet used.

        * Downloads.subproj/WebMacBinaryDecoder.h: Added.
        * Downloads.subproj/WebMacBinaryDecoder.m: Added.
        (+[WebMacBinaryDecoder canDecodeHeaderData:]):
        (-[WebMacBinaryDecoder init]):
        (-[WebMacBinaryDecoder dealloc]):
        (-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]):
        (-[WebMacBinaryDecoder finishDecoding]):
        (-[WebMacBinaryDecoder fileAttributes]):
        * Downloads.subproj/crc16.h: Added.
        * Downloads.subproj/crc16.m: Added.
        (CRC16):
        * Plugins.subproj/WebPluginPackage.m:
        (-[WebPluginPackage isLoaded]): 
        * WebKit.pbproj/project.pbxproj:

2002-11-03  Darin Adler  <darin@apple.com>

        * English.lproj/StringsNotToBeLocalized.txt: Update for recent
	changes both to the code here and to the extract script.

2002-11-03  Darin Adler  <darin@apple.com>

	- fixed 3091300 -- "prelighting" on local page is still slow, despite recent bug fix

	Turns out all updating would be slow if any resources on the page failed to load.

        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
	Call the new reportError instead of cancel.
        (-[WebSubresourceClient handle:didFailLoadingWithError:]): Ditto.

2002-11-02  Darin Adler  <darin@apple.com>

        * Panels.subproj/WebAuthenticationPanel.m: (-[WebAuthenticationPanel setUpForRequest:]):
	Do the previous fix one better by using _web_hostWithPort.

2002-11-02  Darin Adler  <darin@apple.com>

	- fixed bug where the address of an NSNumber object would be used for the port number

        * Panels.subproj/WebAuthenticationPanel.m: (-[WebAuthenticationPanel setUpForRequest:]):
	Call intValue on the object returned from [NSURL port].

2002-11-01  Darin Adler  <darin@apple.com>

        * Plugins.subproj/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView sendEvent:]):
	Fixed uninitialized variable problem.

2002-11-01  Darin Adler  <darin@apple.com>

	- fixed 3090239 -- crash on window close

        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _detachFromParent]): Nil out the bridge and
	release it so we don't close the URL twice.

	- fixed 3058598 -- animated gif animates repeatedly in Alex, but only once in other browsers

        * WebCoreSupport.subproj/WebImageRenderer.h: Added fields used by bug workaround.
        * WebCoreSupport.subproj/WebImageRenderer.m:
        (-[WebImageRenderer blockHasGIFExtensionSignature:length:]): Helper method for bug workaround.
        (-[WebImageRenderer checkDataForGIFExtensionSignature:]): Checks incoming data for the GIF
	extension signatures.
        (-[WebImageRenderer initWithData:]): Override to call checkDataForGIFExtensionSignature.
        (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]): Call checkDataForGIFExtensionSignature.
        (-[WebImageRenderer repetitionCount]): Return 1 if we were going to return 0, but we didn't see a
	GIF extension signature. This workaround can be removed once we require a system new enough to have
	the bug fix for bug 3090341.
        (-[WebImageRenderer nextFrame:]): Stop on last frame, don't wrap around to first.

        * WebCoreSupport.subproj/WebImageRendererFactory.h: Update for changes to WebCore.
        * WebCoreSupport.subproj/WebImageRendererFactory.m: Tweaks.

        * WebView.subproj/WebImageRepresentation.m: Update imports.
        * WebView.subproj/WebImageView.m: Update imports.

2002-11-01  Richard Williamson   <rjw@apple.com>

        Implemented rendering of diacriticals.
        
        * Misc.subproj/WebUnicode.h:
        * Misc.subproj/WebUnicode.m:
        (_unicodeDigitValue):
        (_unicodeCategory):
        (_unicodeDirection):
        (_unicodeJoining):
        (_unicodeDecompositionTag):
        (_unicodeMirrored):
        (_unicodeCombiningClass):
        (_unicodeLower):
        (_unicodeUpper):
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:]):
        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
        (-[WebTextRenderer extendCharacterToGlyphMapToInclude:]):

2002-11-01  Darin Adler  <darin@apple.com>

        * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.

2002-11-01  Chris Blumenberg  <cblu@apple.com>

	Check that the plug-in is loaded before calling it.

        * Plugins.subproj/WebBaseNetscapePluginStream.h:
        * Plugins.subproj/WebBaseNetscapePluginStream.m:
        (-[WebBaseNetscapePluginStream dealloc]):
        (-[WebBaseNetscapePluginStream setPluginPointer:]):
        (-[WebBaseNetscapePluginStream setResponse:]):
        (-[WebBaseNetscapePluginStream receivedData:]):
        (-[WebBaseNetscapePluginStream destroyStreamWithReason:]):
        (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
        * Plugins.subproj/WebBasePluginPackage.h:
        * Plugins.subproj/WebBasePluginPackage.m:
        (-[WebBasePluginPackage isLoaded]):
        * Plugins.subproj/WebNetscapePluginDocumentView.m:
        (-[WebNetscapePluginDocumentView setDataSource:]):
        * Plugins.subproj/WebNetscapePluginPackage.m:
        (-[WebNetscapePluginPackage isLoaded]):
        * Plugins.subproj/WebNetscapePluginRepresentation.m:
        (-[WebNetscapePluginRepresentation receivedData:withDataSource:]):

2002-11-01  Chris Blumenberg  <cblu@apple.com>

	- Moved plug-in error handling to WebResourceLoadDelegate
	- Report plug-in load failure, java load failure, and plug-in not found errors.
	- Added WebPluginError, subclass of WebError.
	- Attempted fix: 3090675 - Standalone WMP (Window Media Player) content crashes Alexander

        * English.lproj/Localizable.strings:
        * Misc.subproj/WebKitErrors.h:
        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView sendEvent:]): don't send event to null function
        * Plugins.subproj/WebNetscapePluginDocumentView.m:
        (-[WebNetscapePluginDocumentView setDataSource:]): report plug-in load failure
        * Plugins.subproj/WebNullPluginView.h:
        * Plugins.subproj/WebNullPluginView.m: take a WebPluginError
        (-[WebNullPluginView dealloc]):
        (-[WebNullPluginView viewDidMoveToWindow]):
        * Plugins.subproj/WebPluginError.h: Added.
        * Plugins.subproj/WebPluginError.m: Added.
        (-[WebPluginErrorPrivate dealloc]):
        (-[WebPluginError dealloc]):
        (-[WebPluginError pluginPageURL]):
        (-[WebPluginError pluginName]):
        (-[WebPluginError MIMEType]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]): report plug-in load failure
        (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]): report plug-in load failure
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebController.m:
        (-[WebResourceLoadDelegate pluginFailedWithError:dataSource:]): added, does nothing
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebResourceLoadDelegate.h:
        * WebView.subproj/WebView.m:
        (+[WebView initialize]): added new error strings

2002-11-01  John Sullivan  <sullivan@apple.com>

	- some weaning of WebBookmark API from WebBookmarkGroup

        * Bookmarks.subproj/WebBookmark.m:
        (-[WebBookmark dealloc]):
	set group to nil instead of asserting that it's non-nil

        * Bookmarks.subproj/WebBookmarkGroup.h:
	removed obsolete ivar _bookmarksByID
        * Bookmarks.subproj/WebBookmarkGroup.m:
        (-[WebBookmarkGroup initWithFile:]):
	removed obsolete ivar _bookmarksByID
        (-[WebBookmarkGroup dealloc]):
	removed obsolete ivar _bookmarksByID
        (-[WebBookmarkGroup removeBookmark:]):
	removed this unnecessary method; callers need to use
	[[bookmark parent] removeChild:bookmark] instead

2002-11-01  Trey Matteson  <trey@apple.com>

	Moved involved code for loading URLs from WebBridge up to WebFrame, with a little
	consolidation along the way.  I need to get all this stuff in one place in prep
	for doing back-forward properly with frames.  There should be no change in
	functionality as a result of these changes.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge loadURL:reload:]):
        (-[WebBridge postWithURL:data:contentType:]):
        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
	Much of the guts of these is moved to WebFramePrivate.
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _setIsClientRedirect:]):
        (-[WebDataSource _isClientRedirect]):
	Keep state of whether we're processing a redirect in DataSource.  I had previously
	to do this with a loadType, but that failed because cliRedir is orthogonal.
        * WebView.subproj/WebFramePrivate.h:
	WebFrameLoadTypeClientRedirect is gone.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFramePrivate init]):
	Initialize loadType explicitly.
        (-[WebFrame _transitionToCommitted]):
	Test [dataSource _isClientRedirect] instead of looking at loadType.
        (-[WebFrame _isLoadComplete]):
	Nuke WebFrameLoadTypeClientRedirect
        (-[WebFrame _goToItem:withFrameLoadType:]):
	Nuke WebFrameLoadTypeClientRedirect.
        (-[WebFrame _loadRequest:]):
	Helper method moved from WebBridge.
        (-[WebFrame _loadURL:loadType:clientRedirect:]):
	Core impl moved up from WebBridge.
        (-[WebFrame _postWithURL:data:contentType:]):
	Core impl moved up from WebBridge.

2002-11-01  Darin Adler  <darin@apple.com>

	- implemented loop counts

        * WebCoreSupport.subproj/WebImageRenderer.h: Added repetitionsComplete field.
        * WebCoreSupport.subproj/WebImageRenderer.m:
        (-[WebImageRenderer repetitionCount]): Get NSImageLoopCount.
        (-[WebImageRenderer nextFrame:]): Check repetitionCount and stop once we hit it.

2002-10-31  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebFrame.m: (-[WebFrame setController:]): Add an assert,
	hoping to catch a reported bug earlier or disprove one theory.

2002-10-31  Trey Matteson  <trey@apple.com>

	Added API to support 3072505 - SnapBack for user-entered page address
	Refixed 3041616 - Extra page added in back button history
	Previous fix was stepped on by a later checkin.  Re-established that fix, then
	went on to make sure we have the final URL and title in the BF item in the
	case of a client redirect.  Also handles redirects that happen within frames.
	Fixed 3078560 - div added to "back" list

        * History.subproj/WebBackForwardList.h:
        * History.subproj/WebBackForwardList.m:
        (-[WebBackForwardList containsEntry:]):
	Added new API for 3072505.
        * WebCoreSupport.subproj/WebBridge.h:
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge reportClientRedirectTo:delay:fireDate:]):
        (-[WebBridge reportClientRedirectCancelled]):
        (-[WebBridge loadURL:reload:]):
	Added logging.  Renamed flag.  Establish the right loadtype and set BF items
	from the old dataSource onto the new dataSource in the case of a client redirect.
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _setRequest:]):
	Add logging.
        (-[WebDataSource _addBackForwardItem:]):
        (-[WebDataSource _addBackForwardItems:]):
        (-[WebDataSource _backForwardItems]):
	New setters/getters to support setting up the new dataSource of a client redirect.
        * WebView.subproj/WebFramePrivate.h:
	New loadType WebFrameLoadTypeClientRedirect.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]):
	Update the URL in the BF list in the client redirect case.
        (-[WebFrame _isLoadComplete]):
	NOP case for WebFrameLoadTypeClientRedirect
        (-[WebFrame _goToItem:withFrameLoadType:]):
	ASSERT_NOT_REACHED case for WebFrameLoadTypeClientRedirect

2002-10-31  Richard Williamson  <rjw@apple.com>

        Corrected extern definitions of lookup tables.
        
        * Misc.subproj/WebUnicode.h:
        * Misc.subproj/WebUnicode.m:
        (_unicodeDirection):
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (+[WebTextRenderer initialize]):

=== Alexander-30 ===

2002-10-30  Richard Williamson  <rjw@apple.com>

        More work on bidi and contextual forms.
        Table lookup code for unicode characters attributes.

        * Misc.subproj/WebUnicode.h: Added.
        * Misc.subproj/WebUnicode.m: Added.
        (_unicodeDigitValue):
        (_unicodeCategory):
        (_unicodeDirection):
        (_unicodeJoining):
        (_unicodeDecompositionTag):
        (_unicodeMirrored):
        (_unicodeMirroredChar):
        (_unicodeCombiningClass):
        (_unicodeLower):
        (_unicodeUpper):
        (WebKitInitializeUnicode):
        * Misc.subproj/WebUnicodeTables.m: Added.
        * WebKit.pbproj/project.pbxproj:

        Additional logging parameter.
        
        * Misc.subproj/WebKitLogging.h:
        * Misc.subproj/WebKitLogging.m:

2002-10-30  Maciej Stachowiak  <mjs@apple.com>

	Pass WebResourceRequest rather than just NSURL to URL policy
	delegate method.
	
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebDefaultPolicyDelegate.h:
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        (+[WebDefaultPolicyDelegate defaultURLPolicyForRequest:]):
        (-[WebDefaultPolicyDelegate URLPolicyForRequest:inFrame:]):
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _shouldShowRequest:]):

2002-10-30  Darin Adler  <darin@apple.com>

        * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.

2002-10-30  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3088122 - Assertion failure/crash closing window with QuickTime streaming in

        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _setMainDocumentError:]): call receivedError on the representation.

2002-10-30  Darin Adler  <darin@apple.com>

	- fixed memory leaks in plugin package creation code

        * Plugins.subproj/WebNetscapePluginPackage.m:
        (-[WebNetscapePluginPackage initWithPath:]): Rearrange this code, and make sure
	that it does a [self release] if it's going to return nil instead of self.
        (-[WebNetscapePluginPackage unload]): Set bundle to 0 when we release it.
        (-[WebNetscapePluginPackage dealloc]): Release the bundle if it's not 0.

        * Plugins.subproj/WebPluginPackage.m:
        (-[WebPluginPackage initWithPath:]): Rearrange this code, and make sure
	that it does a [self release] if it's going to return nil instead of self.

2002-10-30  Darin Adler  <darin@apple.com>

	- fixed 3086564 -- REGRESSION: meta-refresh to the same page doesn't refresh

	The key is to respect the new reload: parameter from the bridge.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge loadURL:reload:]): Don't ever treat a reload as a redirect.
	Set the cache policy to WebRequestCachePolicyLoadFromOrigin if it's a reload.

	- fixed 3087214 -- REGRESSION: <WebKit/WebKit.h> contains #import of non-existent header

        * Misc.subproj/WebKit.h: Removed import of WebControllerSets.h, which is private.

2002-10-30  Maciej Stachowiak  <mjs@apple.com>

	Another step towards the policy API change - add request argument
	to file URL policy and remove isDirectory argument.
	
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        (-[WebDefaultPolicyDelegate fileURLPolicyForMIMEType:andRequest:inFrame:]):
        * WebView.subproj/WebFrame.m:
        (-[WebFrame setProvisionalDataSource:]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _shouldShowRequest:]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:willSendRequest:]):

2002-10-29  Maciej Stachowiak  <mjs@apple.com>

	First step towards policy API change. Pass request instead of URL
	to content policy delegate method.
	
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:didReceiveResponse:]):

2002-10-29  Maciej Stachowiak  <mjs@apple.com>

	- fixed 3087548 - REGRESSION: two windows open for netflix confirmation
	
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _findFrameInThisWindowNamed:]): Added this function back,
	and added check for top-level frame name.
        (-[WebController _findFrameNamed:]): Use
	_findFrameInThisWindowNamed: to make sure top-level frame names
	get checked.

2002-10-29  Chris Blumenberg  <cblu@apple.com>

	Created Downloads.subproj to hold the to-be-implemented download decoders.

        * Downloads.subproj/WebDownloadDecoder.h: Added.
        * Downloads.subproj/WebDownloadHandler.h: Added.
        * Downloads.subproj/WebDownloadHandler.m: Added.
        (-[WebDownloadHandler initWithDataSource:]):
        (-[WebDownloadHandler dealloc]):
        (-[WebDownloadHandler errorWithCode:]):
        (-[WebDownloadHandler receivedResponse:]):
        (-[WebDownloadHandler receivedData:]):
        (-[WebDownloadHandler finishedLoading]):
        (-[WebDownloadHandler cancel]):
        * Misc.subproj/WebDownloadHandler.h: Removed.
        * Misc.subproj/WebDownloadHandler.m: Removed.
        * WebKit.pbproj/project.pbxproj:

2002-10-28  Darin Adler  <darin@apple.com>

	- fixed crash I just introduced

        * Plugins.subproj/WebPluginDatabase.m: (-[WebPluginDatabase init]):
	Remove the release call here. When I added the autorelease, I didn't realize that
	the caller was doing a release.

2002-10-28  Trey Matteson  <trey@apple.com>

	Fixed 3041616 - Extra page added in back button history

	Client-side redirects would always put an extra item in the backforward list.
	According to Darin this is a regression all the way back from functionality moving
	from WebBrowser to WebKit.	

        * WebCoreSupport.subproj/WebBridge.h:
	Added state to know if we're doing an "internal" type of load
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge reportClientRedirectTo:delay:fireDate:]):
	Set internalLoad bit if delay==0
        (-[WebBridge reportClientRedirectCancelled]):
	Clear internalLoad
        (-[WebBridge loadURL:]):
	Set frame's loadType if doing an internal load (similar to what we do when loading
	child frames)

2002-10-28  Darin Adler  <darin@apple.com>

	- fixed storage leak of WebNetscapePluginPackage objects

        * Plugins.subproj/WebBasePluginPackage.m:
        (+[WebBasePluginPackage pluginWithPath:]): Add missing autorelease.

        * Plugins.subproj/WebBasePluginPackage.h:
        * Plugins.subproj/WebPluginController.h:
        * Plugins.subproj/WebPluginController.m:
        * Plugins.subproj/WebPluginPackage.h:
        * Plugins.subproj/WebPluginPackage.m:
	Not __MyCompanyName__, but rather Apple Computer.

2002-10-28  Darin Adler  <darin@apple.com>

	- fixed bug that caused us to leak all WebResourceHandles used for subresources

        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient dealloc]): Remove bogus "currentURL == nil" assert.
        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
	Use the new loadWithRequest: call instead of making handle and doing loadWithDelegate:.
	This is where the leak was, because no one ever released the handle, but releasing it
	right away would be too soon.

        * WebView.subproj/WebBaseResourceHandleDelegate.h: Added defersCallbacks field,
	loadWithRequest: method, and setDefersCallbacks: method. Removed handle method.
        * WebView.subproj/WebBaseResourceHandleDelegate.m:
        (-[WebBaseResourceHandleDelegate loadWithRequest:]): New method. Sets up the handle,
	set the defersCallbacks state on it, and calls loadWithDelegate:.
        (-[WebBaseResourceHandleDelegate setDefersCallbacks:]): Stores defersCallbacks state,
	and also sets it on the handle, if any.
        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]): Remove code to set up
	the handle, since we now do that at loadWithRequest: time.

        * WebView.subproj/WebDataSourcePrivate.h: Remove mainHandle field.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]): Don't release mainHandle.
        (-[WebDataSource _setPrimaryLoadComplete:]): Ditto.
        (-[WebDataSource _startLoading]): Use loadWithRequest: on the client, no need to deal
	with the handle directly at all.
        (-[WebDataSource _addSubresourceClient:]): Call setDefersCallbacks: on the client.
        (-[WebDataSource _defersCallbacksChanged]): Ditto.

        * WebView.subproj/WebControllerPrivate.m: Remove unneeded include.
        * WebView.subproj/WebMainResourceClient.m: Ditto.

2002-10-28  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3056726 - View Source window always displays the source in current system encoding
	Fixed: 3019352 - Text encoding is not handled when viewing plain text

        * WebView.subproj/WebDataSource.h:
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource stringWithData:]): added, creates a string using the specified encoding.
        * WebView.subproj/WebHTMLRepresentation.m:
        (-[WebHTMLRepresentation documentSource]): uses the bridge specified encoding when creating the string
        * WebView.subproj/WebTextView.h:
        * WebView.subproj/WebTextView.m:
        (-[WebTextView dataSourceUpdated:]): use stringWithData: 
        (-[WebTextView supportsTextEncoding]): Yup

2002-10-28  Richard Williamson   <rjw@apple.com>

        Fixed crasher.
        
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):

2002-10-28  John Sullivan  <sullivan@apple.com>

        * Bookmarks.subproj/WebBookmark.h:
        * Bookmarks.subproj/WebBookmark.m:
        (-[WebBookmark contentMatches:]): new method, returns YES if
	two bookmarks are the same, ignoring group and parent.

2002-10-28  Trey Matteson  <trey@apple.com>

	Finished 2998200 - access to most-recent in submenu of back & forward buttons

        * WebView.subproj/WebDataSourcePrivate.h:
	The BF items we are going to and from were moved here from
	WebFrame because of timing problems among multiple data sources
	when using the BF buttons during a load.
	In addition, the datasource has a list of relevant BF items for
	which it keeps their titles up to date.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]):
	Free new state.
        (-[WebDataSource _setTitle:]):
	Update titles of BF items.
        (-[WebDataSource _provisionalBackForwardItem]):
        (-[WebDataSource _setProvisionalBackForwardItem:]):
        (-[WebDataSource _previousBackForwardItem]):
        (-[WebDataSource _setPreviousBackForwardItem:]):
        (-[WebDataSource _addBackForwardItem:]):
	Maintain new state.
        (-[WebDataSource _commitIfReady]):
	Free up previous and provisional BF items after commit.
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge loadURL:]):
	Add the new BF item to the datasource.
        (-[WebBridge saveDocumentState:]):
	Use the right BF item to save the doc state.
        * WebView.subproj/WebFramePrivate.h:
	Previous and provisional BF are moved to datasource.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]):
	Use provisional BF from datasource to set position in BF list.
	Add new BF item to datasource.
        (-[WebFrame _isLoadComplete]):
        (-[WebFrame _checkLoadComplete]):
	Comments, whitespace.
        (-[WebFrame _goToItem:withFrameLoadType:]):
	Set item we will use to saveDocState at commit time.

2002-10-27  Darin Adler  <darin@apple.com>

	- WebKit part of filename width fix

        * WebCoreSupport.subproj/WebFileButton.m:
        (-[WebFileButton drawRect:]): Compute left position by starting at
	the right side of the button frame rather than by starting at the right
	side of the overall bounds. Removes dependency on fixed-width filename area.
        (-[WebFileButton updateLabel]): Added. Computes ellipsized filename.
        (-[WebFileButton setFilename:]): Use updateLabel instead of code in line here.
        (-[WebFileButton setFrameSize:]): Call updateLabel.
        (-[WebFileButton bestVisualFrameSizeForCharacterCount:]): Compute a width based
	on the count passed in rather than a hardcoded 200-pixel constant.

2002-10-27  Darin Adler  <darin@apple.com>

	- fixed 3037369 -- Status text not cleared after start of drag from page

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]):
	Find the highest-level enclosing WebHTMLView, and call _updateMouseoverWithEvent:
	with the mouseUp event after the drag is done.
        (-[WebHTMLView mouseMovedNotification:]): Just call _updateMouseoverWithEvent:,
	the code from here was moved into there.

        * WebView.subproj/WebHTMLViewPrivate.h: Declare _updateMouseoverWithEvent.
        * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _updateMouseoverWithEvent:]):
	Moved all the code from mouseMovedNotification: in here so it could be used twice.

2002-10-27  Don Melton  <gramps@apple.com>

        * WebView.subproj/WebController.m:
        (-[WebController userAgentForURL:]):

	Changed default user agent to Mozilla 1.1.

2002-10-27  Darin Adler  <darin@apple.com>

        * Bookmarks.subproj/WebBookmarkProxy.m: (-[WebBookmarkProxy dealloc]):
	Added, so we don't leak the title.

        * Bookmarks.subproj/WebBookmarkGroup.m: (-[WebBookmarkGroup removeBookmark:]):
        * Bookmarks.subproj/WebBookmarkList.m: (-[WebBookmarkList removeChild:]):
	Added retain/release pairs so we don't use an object after it's deallocated.
	In practice this doesn't happen the way these are used by Alex since they are
	in an array, but they have windows of vulnerability depending on exactly how
	they are used.

2002-10-26  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebViewFactory.m:
        (-[WebViewFactory inputElementAltText]): Added.
        (-[WebViewFactory resetButtonDefaultLabel]): Added.
        (-[WebViewFactory searchableIndexIntroduction]): Added.
        (-[WebViewFactory submitButtonDefaultLabel]): Added.
        (-[WebViewFactory defaultLanguageCode]): Added.

        * English.lproj/Localizable.strings: Update.
        * English.lproj/StringsNotToBeLocalized.txt: Update.

2002-10-25  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebViewFactory.m:
        (-[WebViewFactory runJavaScriptAlertPanelWithMessage:]): Added.
        (-[WebViewFactory runJavaScriptConfirmPanelWithMessage:]): Added.

        * English.lproj/Localizable.strings: Update.
        * English.lproj/StringsNotToBeLocalized.txt: Update.

2002-10-25  Richard Williamson   <rjw@apple.com>

        Implemented support for bidi text layout.
        
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (_drawGlyphs):
        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:]):

2002-10-25  Chris Blumenberg  <cblu@apple.com>

	Made frameNamed private in WebController and renamed it to _findFrameNamed. Got rid of _frameInThisWindowNamed in WebController because it isn't needed anymore.

        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (-[WebController _goToItem:withFrameLoadType:]): call _findFrameNamed
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _findFrameNamed:]): renamed, made private, got rid of call to _frameInThisWindowNamed as it is not needed
        * WebView.subproj/WebFrame.m:
        (-[WebFrame findFrameNamed:]): call [WebController _findFrameNamed:]

2002-10-25  Chris Blumenberg  <cblu@apple.com>

	- Fix case where we would name a new window _blank
	- If a data source can't be created for a plug-in request, don't create the frame or open a window.
	- cleaned up plug-in stream notifications

        * Plugins.subproj/WebBaseNetscapePluginView.h:
        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView initWithFrame:]): create streamNotifications dict
        (-[WebBaseNetscapePluginView dealloc]): release streamNotifications dict
        (-[WebBaseNetscapePluginView frameStateChanged:]): cleaned up
        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): create data source before frame
        * Plugins.subproj/WebPluginController.m:
        (-[WebPluginController showURL:inFrame:]): create data source before frame
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _setTopLevelFrameName:]): don't allow _blank frames
        * WebView.subproj/WebFrame.m:
        (-[WebFrame findOrCreateFramedNamed:]): no need to check for _blank

2002-10-25  Darin Adler  <darin@apple.com>

        Tighten up the code that observes mouse moved events.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView initWithFrame:]): Don't set up observers here.
        (-[WebHTMLView addMouseMovedObserver]): Added some assertions.
        (-[WebHTMLView viewWillMoveToWindow:]): Stop observing the "become main" and "resign main"
	notifications here.
        (-[WebHTMLView viewDidMoveToWindow]): Start observing them here.
        (-[WebHTMLView windowDidBecomeMain:]): Assert that the notification is for this window,
	instead of checking with if.
        (-[WebHTMLView windowDidResignMain:]): Assert that the notification is for this window.

2002-10-25  Chris Blumenberg  <cblu@apple.com>

	Cleaned up the frame searching shenanigans. Things are much cleaner and clearer now.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): call findOrCreateFramedNamed
        * Plugins.subproj/WebPluginController.m:
        (-[WebPluginController showURL:inFrame:]): call findOrCreateFramedNamed
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge childFrames]): moved
        (-[WebBridge mainFrame]): moved
        (-[WebBridge findOrCreateFramedNamed:]): call findOrCreateFramedNamed on the frame
        (-[WebBridge pluginViewWithPackage:attributes:baseURL:]): call _pluginController
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _frameInThisWindowNamed:]): call _descendantFrameNamed
        * WebView.subproj/WebFrame.h:
        * WebView.subproj/WebFrame.m:
        (-[WebFrame findFrameNamed:]): was frameNamed. First checks special-case frame names, descendant frames, then the whole controller, then other controllers.
        (-[WebFrame findOrCreateFramedNamed:]): calls findFrameNamed, opens new window if necessary 
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _descendantFrameNamed:]): searches children, children's children etc.
        (-[WebFrame _pluginController]): this method needed an "_"
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView addSubview:]): call _pluginController
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _elementAtPoint:]): no need to special case for "_blank" since findFrameNamed will return nil for that name

2002-10-25  Trey Matteson  <trey@apple.com>
	
	2919039 - Implement limit on back/forward history list
	2998200 - access to most-recent in submenu of back & forward buttons
	3022566 - need WebKit API for accessing and visiting back/forward list items
	3084051 - forward button incorrectly enabled after going forward all the way

	Remaining issues at this point are getting the title of the pages
	into the menu items (instead of the URL), and saving document
	state properly when you jump around in the list.  Solutions are
	known and coming soon.

        * History.subproj/WebBackForwardList.h:
	Added doc comments to API.  Made ivars private.  Replaced index-
	based API with item-based API.  Added a sizelimit to the overall
	list.  Tweaked API to get back and forward lists.
        * History.subproj/WebBackForwardList.m:
	Straightforward impl of the above, with the note that I dumped
	WebHistoryList from the API and impl in favor of an NSArray,
	which is efficient for this sort of use (queue, stack).
        (-[WebBackForwardList init]):
        (-[WebBackForwardList dealloc]):
        (-[WebBackForwardList goBack]):
        (-[WebBackForwardList goForward]):
        (-[WebBackForwardList goToEntry:]):
        (-[WebBackForwardList backEntry]):
        (-[WebBackForwardList forwardEntry]):
        (-[WebBackForwardList maximumSize]):
        (-[WebBackForwardList setMaximumSize:]):
        (-[WebBackForwardList description]):
        * History.subproj/WebHistoryList.h: Removed.
	Nuked from API, per above.
        * History.subproj/WebHistoryList.m: Removed.
        * Misc.subproj/WebKit.h:
	WebHistoryList gone from API.
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge loadURL:]):
	Use if/else instead of buried "return;", so next person doesn;t
	make the same mis-read I did.
        (-[WebBridge saveDocumentState:]):
	Site of future work.
        * WebKit.pbproj/project.pbxproj:
	Nuked WebHistoryList.
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (-[WebController goBackOrForwardToItem:]):
	New method to support random access nav in backforward list.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _setTitle:]):
	Site of future work (fixing title in items)
        * WebView.subproj/WebFramePrivate.h:
	WebFrameLoadTypeIndexedBack/WebFrameLoadTypeIndexedForward are
	collapsed into WebFrameLoadTypeIndexedBackForward.  Vestigial
	WebFrameLoadTypeIntermediateBack is nuked.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFramePrivate setBackForwardItem:]):
        (-[WebFrame _setBackForwardItem:]):
        (-[WebFrame _backForwardItem]):
	Must remember the BF item we're going to so we can update the
	BF list on commit.
        (-[WebFrame _transitionToCommitted]):
	Update the BF list on commit.
        (-[WebFrame _isLoadComplete]):
        (-[WebFrame _goToItem:withFrameLoadType:]):
	Update BF list on within-page nav.
	Remember BF item we are going to for later update on commit.

2002-10-25  Chris Blumenberg  <cblu@apple.com>

	Minor non-mentionable clean-up.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]):

2002-10-25  Chris Blumenberg  <cblu@apple.com>

	Cleaned up the plug-in API headers so they can be sent to other groups.

        * Plugins.subproj/WebPlugin.h:
        * Plugins.subproj/WebPluginContainer.h:
        * Plugins.subproj/WebPluginViewFactory.h:

2002-10-24  Richard Williamson   <rjw@apple.com>

        Fixed many font substitution related bugs, at least including:
        3006966, 3026675, 3071106, and more... (each of these bugs
        has a list of related bugs). 
        
        Needs little more cleanup to correctly deal with non base characters.
        
        * WebCoreSupport.subproj/WebTextRenderer.h:
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:]):
        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
        
        Against Darin's better judgement prevent extra layout when not in live resize.  If
        this introduces any regressions I owe darin a good bottle of wine.
        
        * WebView.subproj/WebDynamicScrollBarsView.m:
        (-[WebDynamicScrollBarsView updateScrollers]):

2002-10-24  Chris Blumenberg  <cblu@apple.com>

	New Java plug-in works! Much faster to load and no spinny cursor! Unfortunately, it very unstable.

        * Plugins.subproj/WebPluginController.m: cleaned-up the logging messages.
        (-[WebPluginController addPluginView:]):
        (-[WebPluginController didAddPluginView:]):
        (-[WebPluginController startAllPlugins]):
        (-[WebPluginController stopAllPlugins]):
        (-[WebPluginController destroyAllPlugins]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]): make height and width an attribute.

2002-10-24  Chris Blumenberg  <cblu@apple.com>

	Some clean-up and bug fixes for new plug-in support.

        * Plugins.subproj/WebPluginController.m:
        (-[WebPluginController initWithWebFrame:]): need a colon after windowWillClose
        (-[WebPluginController addPluginView:]): added logging
        (-[WebPluginController didAddPluginView:]): added logging
        (-[WebPluginController startAllPlugins]): added logging
        (-[WebPluginController stopAllPlugins]): added logging
        (-[WebPluginController destroyAllPlugins]): added logging
        * Plugins.subproj/WebPluginPackage.m:
        (-[WebPluginPackage getMIMEInformation]): use correct dict key for getting MIME descriptions
        * WebCoreSupport.subproj/WebBridge.m: no more didAddSubview
        * WebView.subproj/WebFramePrivate.h: no more didAddSubview
        * WebView.subproj/WebFramePrivate.m: no more didAddSubview
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView addSubview:]): call didAddPluginView on WebPluginController

2002-10-24  John Sullivan  <sullivan@apple.com>

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge objectLoadedFromCache:response:size:]):
	added ASSERT(response != nil), leftover from debugging
	session on Tuesday, seems worth leaving in.

2002-10-24  Darin Adler  <darin@apple.com>

        * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.

2002-10-24  Chris Blumenberg  <cblu@apple.com>

	Changed some method names in WebPluginController.

        * Plugins.subproj/WebPluginController.h:
        * Plugins.subproj/WebPluginController.m:
        (-[WebPluginController didAddPluginView:]):
        (-[WebPluginController startAllPlugins]):
        (-[WebPluginController stopAllPlugins]):
        (-[WebPluginController destroyAllPlugins]):
        (-[WebPluginController windowWillClose:]):
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]):
        (-[WebFrame _didAddSubview:]):

=== Alexander-29 ===

2002-10-24  Richard Williamson   <rjw@apple.com>

        Don't leak request.
        
        * WebView.subproj/WebBaseResourceHandleDelegate.m:
        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):

2002-10-24  Richard Williamson   <rjw@apple.com>

        Always copy request, we can't count on it being immutable.
        This was the cause of the ASSERT from last night's checkin.
        
        * WebView.subproj/WebBaseResourceHandleDelegate.m:
        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
        
        Only send serverRedirectedForDataSource: if URL changed.
        
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _setRequest:]):

2002-10-24  Chris Blumenberg  <cblu@apple.com>
	
	- Use "MIMEType" instead of "serviceType".

        * Plugins.subproj/WebBasePluginPackage.h:
        * Plugins.subproj/WebBasePluginPackage.m:
        (-[WebBasePluginPackage load]):
        (-[WebBasePluginPackage dealloc]):
        (-[WebBasePluginPackage filename]):
        (-[WebBasePluginPackage setPath:]):
        * Plugins.subproj/WebNetscapePluginEmbeddedView.h:
        * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
        (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:MIMEType:attributes:]):
        * Plugins.subproj/WebNetscapePluginPackage.m:
        (-[WebNetscapePluginPackage getMIMEInformation]): changed name.
        (-[WebNetscapePluginPackage initWithPath:]):
        * Plugins.subproj/WebNullPluginView.h:
        * Plugins.subproj/WebNullPluginView.m:
        (-[WebNullPluginView initWithFrame:MIMEType:attributes:]):
        (-[WebNullPluginView dealloc]):
        (-[WebNullPluginView viewDidMoveToWindow]): send missing plug-ins notification here
        * Plugins.subproj/WebPluginPackage.m:
        (-[WebPluginPackage getMIMEInformation]): new, gets MIME info from plist
        (-[WebPluginPackage initWithPath:]):
        (-[WebPluginPackage dealloc]):
        (-[WebPluginPackage viewFactory]):
        (-[WebPluginPackage load]):
        (-[WebPluginPackage unload]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]):
        (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):

2002-10-24  Richard Williamson   <rjw@apple.com>

        Flag error instead of ASSERTing as a result of fix to 3083013.
        Not clear why this condition occurs, but better than ASSERTing
        for Alex 29.
        
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _setRequest:]):

2002-10-24  Darin Adler  <darin@apple.com>

	- fixed a crash I ran into in the new delegate code

        * WebView.subproj/WebBaseResourceHandleDelegate.m:
        (-[WebBaseResourceHandleDelegate _releaseResources]): Retain self across this
	deallocation to avoid reentering and being deallocated midstream. This happens
	because the handle holds the only reference to us, and we may be releasing the
	last reference to it.
        (-[WebBaseResourceHandleDelegate dealloc]): Add call to [super dealloc].

        * Plugins.subproj/WebBasePluginPackage.m: (-[WebBasePluginPackage dealloc]):
	Add call to [super dealloc].

        * WebView.subproj/WebMainResourceClient.m: Tweak.

2002-10-23  Darin Adler  <darin@apple.com>

	- fixed 3083013 -- REGRESSION: Cookie refused at http://directory/ even on reload

	Restore a bit of the cruft.

        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:willSendRequest:]):
	We need to change the request on the data source when a redirect happens,
	because the data source goes on to ultimately communicate this to WebCore.
	Restored the code that did that, with some changes to fit into the new regime.

2002-10-23  Richard Williamson  <rjw@apple.com>

        Cleaned up months of accumulated cruft.
        Added base class to the three WebResourceHandleDelegate implementors.
        Removed superfluous handle references to controller callbacks.
        More can still be done.
        All in the name of fixing 3076050.
        
        * Misc.subproj/WebKitErrors.h:
        * Plugins.subproj/WebBaseNetscapePluginStream.m:
        (-[WebBaseNetscapePluginStream setResponse:]):
        * Plugins.subproj/WebNetscapePluginRepresentation.m:
        (-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
        (-[WebNetscapePluginRepresentation receivedError:withDataSource:]):
        (-[WebNetscapePluginRepresentation finishedLoadingWithDataSource:]):
        * Plugins.subproj/WebNetscapePluginStream.h:
        * Plugins.subproj/WebNetscapePluginStream.m:
        (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
        (-[WebNetscapePluginStream dealloc]):
        (-[WebNetscapePluginStream start]):
        (-[WebNetscapePluginStream stop]):
        (-[WebNetscapePluginStream handle:willSendRequest:]):
        (-[WebNetscapePluginStream handle:didReceiveResponse:]):
        (-[WebNetscapePluginStream handle:didReceiveData:]):
        (-[WebNetscapePluginStream handleDidFinishLoading:]):
        (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge reportBadURL:]):
        * WebCoreSupport.subproj/WebSubresourceClient.h:
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient initWithLoader:dataSource:]):
        (-[WebSubresourceClient dealloc]):
        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
        (-[WebSubresourceClient receivedError:]):
        (-[WebSubresourceClient handle:willSendRequest:]):
        (-[WebSubresourceClient handle:didReceiveResponse:]):
        (-[WebSubresourceClient handle:didReceiveData:]):
        (-[WebSubresourceClient handleDidFinishLoading:]):
        (-[WebSubresourceClient handle:didFailLoadingWithError:]):
        (-[WebSubresourceClient cancel]):
        * WebView.subproj/WebBaseResourceHandleDelegate.h:
        * WebView.subproj/WebBaseResourceHandleDelegate.m:
        (-[WebBaseResourceHandleDelegate init]):
        (-[WebBaseResourceHandleDelegate _releaseResources]):
        (-[WebBaseResourceHandleDelegate dealloc]):
        (-[WebBaseResourceHandleDelegate setDataSource:]):
        (-[WebBaseResourceHandleDelegate dataSource]):
        (-[WebBaseResourceHandleDelegate resourceLoadDelegate]):
        (-[WebBaseResourceHandleDelegate downloadDelegate]):
        (-[WebBaseResourceHandleDelegate setIsDownload:]):
        (-[WebBaseResourceHandleDelegate isDownload]):
        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
        (-[WebBaseResourceHandleDelegate handle:didReceiveResponse:]):
        (-[WebBaseResourceHandleDelegate handle:didReceiveData:]):
        (-[WebBaseResourceHandleDelegate handleDidFinishLoading:]):
        (-[WebBaseResourceHandleDelegate handle:didFailLoadingWithError:]):
        (-[WebBaseResourceHandleDelegate cancel]):
        (-[WebBaseResourceHandleDelegate handle]):
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _mainReceivedBytesSoFar:fromDataSource:complete:]):
        (-[WebController _receivedError:fromDataSource:]):
        (-[WebController _mainReceivedError:fromDataSource:]):
        * WebView.subproj/WebDataSource.h:
        * WebView.subproj/WebDataSource.m:
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]):
        (-[WebDataSource _startLoading]):
        (-[WebDataSource _stopLoading]):
        (-[WebDataSource _clearErrors]):
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _isLoadComplete]):
        * WebView.subproj/WebMainResourceClient.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient initWithDataSource:]):
        (-[WebMainResourceClient dealloc]):
        (-[WebMainResourceClient receivedError:]):
        (-[WebMainResourceClient cancel]):
        (-[WebMainResourceClient handle:willSendRequest:]):
        (-[WebMainResourceClient _notifyDelegatesOfInterruptionByPolicyChange]):
        (-[WebMainResourceClient handle:didReceiveResponse:]):
        (-[WebMainResourceClient handle:didReceiveData:]):
        (-[WebMainResourceClient handleDidFinishLoading:]):
        (-[WebMainResourceClient handle:didFailLoadingWithError:]):
        * WebView.subproj/WebResourceLoadDelegate.h:

2002-10-23  Chris Blumenberg  <cblu@apple.com>

	Support for new plug-in API. This is about as much as I can do without the new java plug-in and java root.

        * Plugins.subproj/WebPluginController.h:
        * Plugins.subproj/WebPluginController.m:
        (-[WebPluginController initWithWebFrame:]): observe window close changes
        (-[WebPluginController dealloc]): remove observer, assert if we're still tracking plug-ins
        (-[WebPluginController didAddSubview:]): start the plug-in
        (-[WebPluginController stopAllPlugins]): stop and destroy all plug-ins.
        (-[WebPluginController windowWillClose:]): call stopAllPlugins if the window in question is closing
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]): call stopAllPlugins on WebPluginController

2002-10-23  Chris Blumenberg  <cblu@apple.com>

	Changed the plug-in package API to return key enumerators instead dictionaries.

        * Plugins.subproj/WebBasePluginPackage.h:
        * Plugins.subproj/WebBasePluginPackage.m:
        (-[WebBasePluginPackage initWithPath:]):
        (-[WebBasePluginPackage load]):
        (-[WebBasePluginPackage unload]):
        (-[WebBasePluginPackage dealloc]):
        (-[WebBasePluginPackage extensionEnumerator]):
        (-[WebBasePluginPackage MIMETypeEnumerator]):
        (-[WebBasePluginPackage descriptionForMIMEType:]):
        (-[WebBasePluginPackage MIMETypeForExtension:]):
        (-[WebBasePluginPackage extensionsForMIMEType:]):
        (-[WebBasePluginPackage setName:]):
        (-[WebBasePluginPackage setPath:]):
        (-[WebBasePluginPackage setFilename:]):
        (-[WebBasePluginPackage setPluginDescription:]):
        (-[WebBasePluginPackage setMIMEToDescriptionDictionary:]):
        (-[WebBasePluginPackage setMIMEToExtensionsDictionary:]):
        * Plugins.subproj/WebNetscapePluginPackage.h:
        * Plugins.subproj/WebNetscapePluginPackage.m:
        (-[WebNetscapePluginPackage getPluginInfo]):
        (-[WebNetscapePluginPackage pathByResolvingSymlinksAndAliasesInPath:]):
        (-[WebNetscapePluginPackage initWithPath:]):
        (-[WebNetscapePluginPackage executableType]):
        * Plugins.subproj/WebPluginController.h:
        * Plugins.subproj/WebPluginController.m:
        (-[WebPluginController didAddSubview:]):
        * Plugins.subproj/WebPluginDatabase.h:
        * Plugins.subproj/WebPluginDatabase.m:
        (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
        (-[WebPluginDatabase pluginForMIMEType:]):
        (-[WebPluginDatabase pluginForExtension:]):
        (-[WebPluginDatabase MIMETypes]):
        (-[WebPluginDatabase init]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge viewForPluginWithURL:attributes:baseURL:serviceType:]):
        (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):
        (-[WebBridge didAddSubview:]): new
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _didAddSubview:]): new 

2002-10-23  Darin Adler  <darin@apple.com>

	- finished up the job of moving the file button here from WebCore.

	I did this mainly for localization reasons.

        * WebCoreSupport.subproj/WebFileButton.m:
        (-[WebFileButton initWithFrame:]): Set up button control size, font, bezel style,
	target, and action. Also add it as a subview.
        (-[WebFileButton drawRect:]): Center icon in the "visual frame" part of the view,
	not the entire bounds.
        (-[WebFileButton setFilename:]): Don't show any icon when the filename is empty.
        (-[WebFileButton bestVisualFrameSize]): Implemented this.
        (-[WebFileButton visualFrame]): Ditto.
        (-[WebFileButton setVisualFrame:]): Ditto.
        (-[WebFileButton baseline]): Ditto.
        (-[WebFileButton beginSheet]): Added. Shared between button presses and other clicks.
        (-[WebFileButton chooseButtonPressed:]): Call beginSheet.
        (-[WebFileButton mouseDown:]): Ditto.
        (-[WebFileButton openPanelDidEnd:returnCode:contextInfo:]): Send the notification,
	WebCoreFileButtonFilenameChanged, when the filename is changed.

        * WebView.subproj/WebController.m: (-[WebController policyDelegate]):
	Add a FIXME about the leak I found here.

2002-10-23  Chris Blumenberg  <cblu@apple.com>

	Call the arguments for plug-ins "attributes" everywhere.

        * Plugins.subproj/WebBaseNetscapePluginView.h:
        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView setAttributes:]):
        * Plugins.subproj/WebNetscapePluginEmbeddedView.h:
        * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
        (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:mime:attributes:]):
        * Plugins.subproj/WebNullPluginView.h:
        * Plugins.subproj/WebNullPluginView.m:
        (-[WebNullPluginView initWithFrame:mimeType:attributes:]):
        (-[WebNullPluginView drawRect:]):
        * Plugins.subproj/WebPluginController.h:
        * Plugins.subproj/WebPluginController.m:
        (-[WebPluginController initWithWebFrame:]):
        (-[WebPluginController dealloc]):
        (-[WebPluginController addPluginView:]):
        * Plugins.subproj/WebPluginPackage.h:
        * Plugins.subproj/WebPluginPackage.m:
        (-[WebPluginPackage viewFactory]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge pluginViewWithPackage:attributes:baseURL:]):
        (-[WebBridge viewForPluginWithURL:attributes:baseURL:serviceType:]):
        (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):

2002-10-23  Chris Blumenberg  <cblu@apple.com>

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge requestedURL]):
        (-[WebBridge viewForPluginWithURL:serviceType:arguments:baseURL:]):
        (-[WebBridge viewForJavaAppletWithFrame:baseURL:parameters:]):
        * WebCoreSupport.subproj/WebViewFactory.m:
        (-[WebViewFactory fileButton]):
        (-[WebViewFactory pluginsInfo]):

2002-10-23  Darin Adler  <darin@apple.com>

	- fix bug where plugins crashed closing a stream that was never opened

        * Plugins.subproj/WebBaseNetscapePluginStream.h: Change type for parameter of
	receivedError: to NPReason. It's not NPError.
        * Plugins.subproj/WebBaseNetscapePluginStream.m:
        (-[WebBaseNetscapePluginStream dealloc]): Assert that stream is destroyed by
	checking stream.ndata.
        (-[WebBaseNetscapePluginStream setResponse:]): Set stream.ndata to nil if the
	stream is not successfully created by NPP_NewStream.
        (-[WebBaseNetscapePluginStream destroyStreamWithReason:]): Added. Destroys the
	stream, but only if it's present. Also set stream.ndata to nil. This was the bug fix.
        (-[WebBaseNetscapePluginStream receivedError:]): Call destroyStreamWithReason:.
        (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): Call destroyStreamWithReason:.

        * English.lproj/Localizable.strings: Update.
        * English.lproj/StringsNotToBeLocalized.txt: Update.

2002-10-23  Chris Blumenberg  <cblu@apple.com>

	Forgot to add WebPluginController back to the project after I had a project conflict.

        * WebKit.pbproj/project.pbxproj:

2002-10-23  Chris Blumenberg  <cblu@apple.com>

	Added WebPluginController which controls and reacts to plug-in requests. Its owned by the WebFrame.

        * Plugins.subproj/WebPluginController.h: Added.
        * Plugins.subproj/WebPluginController.m: Added.
        (-[WebPluginController initWithWebFrame:]):
        (-[WebPluginController showURL:inFrame:]):
        (-[WebPluginController showStatus:]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFramePrivate dealloc]):
        (-[WebFrame pluginController]):

2002-10-23  Darin Adler  <darin@apple.com>

	Add WebFileButton, to be used by WebCore soon. It's about 1/2
	done right now. Compiles but not used yet.

        * WebCoreSupport.subproj/WebViewFactory.m: (-[WebViewFactory fileButton]): Added.

        * WebCoreSupport.subproj/WebFileButton.h: Added.
        * WebCoreSupport.subproj/WebFileButton.m: Added.
        * WebKit.pbproj/project.pbxproj: Added WebFileButton files.

        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient handle:didReceiveResponse:]): Add an assertion.

2002-10-23  Maciej Stachowiak  <mjs@apple.com>

        - fixed 2876448 - The authentication panel should give a note when
	the user tried to log in and failed

	Also, made the message different (and more helpful) when the
	authentication is for a proxy server.
	
        * Panels.subproj/WebAuthenticationPanel.m:
        (-[WebAuthenticationPanel setUpForRequest:]): Use different
	messages depending on proxy and previous failure count.

	Updated localized strings:
	
	* English.lproj/Localizable.strings:
        * English.lproj/StringsNotToBeLocalized.txt:

2002-10-23  Maciej Stachowiak  <mjs@apple.com>

	- fixed 2876446 - The label in the authentication panel needs to
	adjust its height depending on content

	Also improved [NSControl sizeToFitAndAdjustWindowHeight] method.
	
        * Panels.subproj/English.lproj/WebAuthenticationPanel.nib: Adjusted
	springs.
        * Panels.subproj/WebAuthenticationPanel.m:
	(-[WebAuthenticationPanel setUpForRequest:]): Use
	sizeToFitAndAdjustWindowHeight on main label.
	
        * Misc.subproj/WebNSControlExtras.m:
        (-[NSControl sizeToFitAndAdjustWindowHeight]): Improved the logic
	so the best height is picked while leaving the width
	alone. Before, the label would always come out to be a very wide
	single line.

2002-10-22  Maciej Stachowiak  <mjs@apple.com>

        * WebKit.pbproj/project.pbxproj: Made WebControllerSets.h
	private. Also alphabetized headers in target pane and subproject
	folders.

2002-10-22  Chris Blumenberg  <cblu@apple.com>

	load and unload is only a WebNetscapePluginPackage thing since you can't unload an NSBundle.

        * Plugins.subproj/WebBasePluginPackage.h:
        * Plugins.subproj/WebBasePluginPackage.m:
        * Plugins.subproj/WebNetscapePluginPackage.h:

2002-10-22  Chris Blumenberg  <cblu@apple.com>

	More moving stuff around for the new plug-in API. Added WebBasePluginPackage and added subclass WebPluginPackage. Also made WebNetscapePluginPackage a subclass of WebBasePluginPackage. 

        * Plugins.subproj/WebBasePluginPackage.h: Added.
        * Plugins.subproj/WebBasePluginPackage.m: Added.
        (+[WebBasePluginPackage pluginWithPath:]): creates a WebPluginPackage or WebNetscapePluginPackage
        (-[WebBasePluginPackage initWithPath:]):
        (-[WebBasePluginPackage name]):
        (-[WebBasePluginPackage path]):
        (-[WebBasePluginPackage filename]):
        (-[WebBasePluginPackage pluginDescription]):
        (-[WebBasePluginPackage extensionToMIMEDictionary]):
        (-[WebBasePluginPackage MIMEToExtensionsDictionary]):
        (-[WebBasePluginPackage MIMEToDescriptionDictionary]):
        (-[WebBasePluginPackage load]):
        (-[WebBasePluginPackage unload]):
        (-[WebBasePluginPackage isLoaded]):
        (-[WebBasePluginPackage description]):
        * Plugins.subproj/WebNetscapePluginDocumentView.m:
        (-[WebNetscapePluginDocumentView setDataSource:]):
        * Plugins.subproj/WebNetscapePluginPackage.h:
        * Plugins.subproj/WebNetscapePluginPackage.m:
        (-[WebNetscapePluginPackage initWithPath:]):
        * Plugins.subproj/WebPluginDatabase.h:
        * Plugins.subproj/WebPluginDatabase.m:
        (-[WebPluginDatabase pluginForMIMEType:]):
        (-[WebPluginDatabase pluginForExtension:]):
        (-[WebPluginDatabase pluginForFilename:]):
        (-[WebPluginDatabase MIMETypes]):
        (-[WebPluginDatabase init]):
        * Plugins.subproj/WebPluginPackage.h: Added.
        * Plugins.subproj/WebPluginPackage.m: Added.
        (-[WebPluginPackage initWithPath:]):
        * WebCoreSupport.subproj/WebViewFactory.m:
        (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]): check the class of the plug-in when deciding which view to create.
        (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]): same here.
        * WebKit.pbproj/project.pbxproj:

2002-10-22  David Hyatt  <hyatt@apple.com>

	Getting XML docs at least made for XML files...
	
        * WebView.subproj/WebHTMLRepresentation.m:
        (-[WebHTMLRepresentation setDataSource:]):

2002-10-22  Chris Blumenberg  <cblu@apple.com>

	Made new plug-in API headers private.

        * WebKit.pbproj/project.pbxproj:

2002-10-22  Darin Adler  <darin@apple.com>

        * Misc.subproj/WebKitErrors.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:willSendRequest:]):
        (-[WebMainResourceClient handle:didReceiveResponse:]):
	Rename WebErrorLocationChangeInterruptedByURLPolicyChange to
	WebErrorLocationChangeInterruptedByPolicyChange.

2002-10-22  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:didReceiveResponse:]):
	Send the new error whenever a policy change happens. The old code was
	sending a successful completion in the download and ignore cases.

2002-10-22  John Sullivan  <sullivan@apple.com>

	- fixed 3080873 -- Error in console when no bookmark file 
	found -[WebBookmarkGroup _loadBookmarkGroupGuts]

        * Bookmarks.subproj/WebBookmarkGroup.m:
        (-[WebBookmarkGroup _loadBookmarkGroupGuts]):
	removed ERROR that was useful only long ago.

2002-10-22  Richard Williamson  <rjw@apple.com>

        Added stubs from common WebResourceHandleDelegate base
        class.
        
        * Plugins.subproj/WebBaseNetscapePluginStream.h:
        * Plugins.subproj/WebNetscapePluginStream.h:
        * WebCoreSupport.subproj/WebSubresourceClient.h:
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebBaseResourceHandleDelegate.h: Added.
        * WebView.subproj/WebBaseResourceHandleDelegate.m: Added.
        * WebView.subproj/WebMainResourceClient.h:

2002-10-22  Darin Adler  <darin@apple.com>

	Make the panel position itself above the main window.
	Too bad we can't use a sheet, but this is better than a random position.

        * WebCoreSupport.subproj/WebJavaScriptTextInputPanel.m:
        (-[WebJavaScriptTextInputPanel initWithPrompt:text:]):
	Use the new [NSWindow sizeToFitAndAdjustWindowHeight]
	and [NSControl sizeToFitAndAdjustWindowHeight].

        * Misc.subproj/WebNSControlExtras.h: Added.
        * Misc.subproj/WebNSControlExtras.m: Added.
        * Misc.subproj/WebNSWindowExtras.h: Added.
        * Misc.subproj/WebNSWindowExtras.m: Added.
        * WebKit.pbproj/project.pbxproj: Added above files.

        * English.lproj/StringsNotToBeLocalized.txt: Update.

2002-10-22  Ken Kocienda  <kocienda@apple.com>

        * Misc.subproj/WebKitErrors.h: Add new error code to signify that a location
	change has been interrupted by a change in the URLPolicy governing the load.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:willSendRequest:]): Add code to check the URLPolicy
	for the URL in the request that is submitted to us in this delegate method. Send
	a locationChangeDone:forDataSource: message with an error using the newly-defined
	code in cases where the location change should be cancelled.

2002-10-22  Chris Blumenberg  <cblu@apple.com>

	Added protocol headers for new plug-in API.

        * Plugins.subproj/WebPlugin.h: Added.
        * Plugins.subproj/WebPluginContainer.h: Added.
        * Plugins.subproj/WebPluginViewFactory.h: Added.
        * WebKit.pbproj/project.pbxproj:

2002-10-22  Chris Blumenberg  <cblu@apple.com>

	- Moved things around to make room for new plug-in API.
	- Renamed WebNetscapePlugin to WebNetscapePluginPackage.
	- Renamed WebNetscapePluginDatabase to WebPluginDatabase.

        * Plugins.subproj/WebBaseNetscapePluginStream.m:
        (-[WebBaseNetscapePluginStream setPluginPointer:]):
        * Plugins.subproj/WebBaseNetscapePluginView.h:
        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView plugin]):
        * Plugins.subproj/WebNetscapePluginDocumentView.m:
        (-[WebNetscapePluginDocumentView setDataSource:]):
        * Plugins.subproj/WebNetscapePluginEmbeddedView.h:
        * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
        (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:mime:arguments:]):
        * Plugins.subproj/WebNetscapePluginNullEventSender.h: Added.
        * Plugins.subproj/WebNetscapePluginNullEventSender.m: Added.
        (-[WebNetscapePluginNullEventSender initWithPluginView:]):
        (-[WebNetscapePluginNullEventSender dealloc]):
        (-[WebNetscapePluginNullEventSender sendNullEvents]):
        (-[WebNetscapePluginNullEventSender stop]):
        * Plugins.subproj/WebNetscapePluginPackage.h: Added.
        * Plugins.subproj/WebNetscapePluginPackage.m: Added.
        (-[WebNetscapePluginPackage openResourceFile]):
        (-[WebNetscapePluginPackage closeResourceFile:]):
        (-[WebNetscapePluginPackage stringForStringListID:andIndex:]):
        (-[WebNetscapePluginPackage getPluginInfo]):
        (-[WebNetscapePluginPackage stringByResolvingSymlinksAndAliasesInPath:]):
        (-[WebNetscapePluginPackage initWithPath:]):
        (-[WebNetscapePluginPackage load]):
        (-[WebNetscapePluginPackage unload]):
        (-[WebNetscapePluginPackage NPP_SetWindow]):
        (-[WebNetscapePluginPackage NPP_New]):
        (-[WebNetscapePluginPackage NPP_Destroy]):
        (-[WebNetscapePluginPackage NPP_NewStream]):
        (-[WebNetscapePluginPackage NPP_StreamAsFile]):
        (-[WebNetscapePluginPackage NPP_DestroyStream]):
        (-[WebNetscapePluginPackage NPP_WriteReady]):
        (-[WebNetscapePluginPackage NPP_Write]):
        (-[WebNetscapePluginPackage NPP_HandleEvent]):
        (-[WebNetscapePluginPackage NPP_URLNotify]):
        (-[WebNetscapePluginPackage NPP_GetValue]):
        (-[WebNetscapePluginPackage NPP_SetValue]):
        (-[WebNetscapePluginPackage NPP_Print]):
        (-[WebNetscapePluginPackage MIMEToExtensionsDictionary]):
        (-[WebNetscapePluginPackage extensionToMIMEDictionary]):
        (-[WebNetscapePluginPackage MIMEToDescriptionDictionary]):
        (-[WebNetscapePluginPackage name]):
        (-[WebNetscapePluginPackage filename]):
        (-[WebNetscapePluginPackage path]):
        (-[WebNetscapePluginPackage isLoaded]):
        (-[WebNetscapePluginPackage pluginDescription]):
        (-[WebNetscapePluginPackage description]):
        (functionPointerForTVector):
        (tVectorForFunctionPointer):
        * Plugins.subproj/WebPlugin.h: Removed.
        * Plugins.subproj/WebPlugin.m: Removed.
        * Plugins.subproj/WebPluginDatabase.h:
        * Plugins.subproj/WebPluginDatabase.m:
        (+[WebPluginDatabase installedPlugins]):
        (-[WebPluginDatabase pluginForMIMEType:]):
        (-[WebPluginDatabase pluginForExtension:]):
        (-[WebPluginDatabase pluginForFilename:]):
        (-[WebPluginDatabase MIMETypes]):
        (-[WebPluginDatabase init]):
        * Plugins.subproj/WebPluginNullEventSender.h: Removed.
        * Plugins.subproj/WebPluginNullEventSender.m: Removed.
        * WebCoreSupport.subproj/WebViewFactory.m:
        (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
        (-[WebViewFactory pluginsInfo]):
        (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebController.m:
        (+[WebController canShowMIMEType:]):

2002-10-22  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebJavaScriptTextInputPanel.m: Added missing import.

2002-10-22  Darin Adler  <darin@apple.com>

	- fixed 3077305 -- js dialog not yet implemented - crash (fatal error)

        * WebCoreSupport.subproj/WebViewFactory.m:
        (-[WebViewFactory runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]):
	Create a WebJavaScriptTextInputPanel and run it.

        * English.lproj/WebJavaScriptTextInputPanel.nib: Added.
        * WebCoreSupport.subproj/WebJavaScriptTextInputPanel.h: Added.
        * WebCoreSupport.subproj/WebJavaScriptTextInputPanel.m: Added.
        * WebKit.pbproj/project.pbxproj: Added 

2002-10-22  Chris Blumenberg  <cblu@apple.com>

	Use the mouseDown point instead of the mouseDragged point to determine the mouseOffset when dragging images. When you drag an image now, the point where you clicked is the point where the cursor is in relation to the drag image.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDown:]): retain the mouse down event
        (-[WebHTMLView mouseDragged:]): use the mouse down event
        * WebView.subproj/WebHTMLViewPrivate.h:
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLViewPrivate dealloc]): release the mouse down event

2002-10-21  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebViewFactory.h: Changed to use new protocol scheme so we
	get an error if we forget to implement something.
        * WebCoreSupport.subproj/WebViewFactory.m:
        (-[WebViewFactory runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]): Stub.

2002-10-21  Richard Williamson   <rjw@apple.com>

        More incremental tweaks.  Will be factoring common
        handle delegate behavior into base class.
        
        * Plugins.subproj/WebNetscapePluginStream.m:
        (-[WebNetscapePluginStream handle:didReceiveData:]):
        (-[WebNetscapePluginStream handleDidFinishLoading:]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge objectLoadedFromCache:response:size:]):
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
        (-[WebSubresourceClient handle:didReceiveData:]):
        (-[WebSubresourceClient handleDidFinishLoading:]):
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _finsishedLoadingResourceFromDataSource:]):

2002-10-21  Trey Matteson  trey@apple.com

	Fixed typos and other doc comment errors found during API review.

        * WebView.subproj/WebController.h:

2002-10-21  Richard Williamson   <rjw@apple.com>

        Changed WebResourceLoadDelegate methods to include an identifier
        as first parameter.  This will help clients track callbacks relating
        to a particular resource.  Added identifierForInitialRequest:fromDataSource:
        so clients can create their own identifier.
        
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge objectLoadedFromCache:response:size:]):
        * WebCoreSupport.subproj/WebSubresourceClient.h:
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient handle:willSendRequest:]):
        (-[WebSubresourceClient handle:didReceiveResponse:]):
        (-[WebSubresourceClient handle:didReceiveData:]):
        (-[WebSubresourceClient handleDidFinishLoading:]):
        (-[WebSubresourceClient handle:didFailLoadingWithError:]):
        * WebView.subproj/WebController.m:
        (-[WebResourceLoadDelegate identifierForInitialRequest:fromDataSource:]):
        (-[WebResourceLoadDelegate resource:willSendRequest:fromDataSource:]):
        (-[WebResourceLoadDelegate resource:didReceiveResponse:fromDataSource:]):
        (-[WebResourceLoadDelegate resource:didReceiveContentLength:fromDataSource:]):
        (-[WebResourceLoadDelegate resource:didFinishLoadingFromDataSource:]):
        (-[WebResourceLoadDelegate resource:didFailLoadingWithError:fromDataSource:]):
        * WebView.subproj/WebMainResourceClient.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient receivedError:forHandle:]):
        (-[WebMainResourceClient handleDidFinishLoading:]):
        (-[WebMainResourceClient handle:willSendRequest:]):
        (-[WebMainResourceClient handle:didReceiveResponse:]):
        (-[WebMainResourceClient handle:didReceiveData:]):
        (-[WebMainResourceClient handle:didFailLoadingWithError:]):
        * WebView.subproj/WebResourceLoadDelegate.h:

2002-10-21  Chris Blumenberg  <cblu@apple.com>

	Changed content policy API to pass a response instead of MIME type so client can get the mime type and filename from one class.

        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:didReceiveResponse:]):

2002-10-21  Darin Adler  <darin@apple.com>

	- fixed 3080512 -- REGRESSION: moving from old page to new one, we get blank white
	before the new one is ready

	Roll out a bunch of my changes, because they weren't complete. Added FIXMEs for the
	problems I was unsuccessfully trying to fix.

        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _setState:]):
        * WebView.subproj/WebView.m:
        (-[WebView initWithFrame:]), (-[WebView isOpaque]), (-[WebView drawRect:]):
	Roll back.

2002-10-21  Darin Adler  <darin@apple.com>

	- fixed 3080246 -- REGRESSION: Animated GIFs sometimes disappear after drag or scroll

	Once more, with feeling.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _setNeedsLayoutIfSizeChanged:]): Added setNeedsDisplay:YES here. The lack
	of this is what caused the bug. But also don't do any work when the size doesn't change.
	This prevents this from being called at all in the scrolling case, which is what we want.
        (-[WebHTMLView viewWillMoveToSuperview:]): Just the name change.
        (-[WebHTMLView layout]): Store the layout size for the above methods.
        * WebView.subproj/WebHTMLViewPrivate.h: Add a place to store the size.

        * WebView.subproj/WebImageView.m: (-[WebImageView layout]):
	Roll this change back in.

2002-10-21  Darin Adler  <darin@apple.com>

	- fixed 3080246 -- REGRESSION: Animated GIFs sometimes disappear after drag or scroll

        * WebView.subproj/WebImageView.m: (-[WebImageView layout]):
	My change to this caused the regression. Not sure why, but I'll just back out
	because the change wasn't important.

2002-10-20  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3025847 - Can't use any menu command keys after clicking on a plugin

	Don't give plug-ins command-modified keys anymore because the ability wasn't worth the annoyance. If only plug-ins truthfully responded t  events! Anyway, filed 3080103 so that I can look into a way to make this work for everybody.

        * Plugins.subproj/WebBaseNetscapePluginView.m:

2002-10-20  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3025868 - Plugin context menu disappears then reappears if you click off of it

	Also fixed some rare dragging weirdness in WebHTMLView. If you attempted to drag a plug-in after dragging an image, the image would drag again.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView mouseDragged:]): subclass and do nothing to prevent calling mouseDragged in WebHTMLView
        (-[WebBaseNetscapePluginView performKeyEquivalent:]): no changes to this method, removed menuForEvent, wasn't needed after all
        * Plugins.subproj/WebNetscapePluginStream.m:
        (-[WebNetscapePluginStream stop]): minor clean-up

2002-10-20  Darin Adler  <darin@apple.com>

	- fixed a minor problem with autorelease I just ran into

        * WebView.subproj/WebHTMLViewPrivate.m: (+[WebHTMLView load]):
	Create an autorelease pool for the benefit of the class initialize
	functions that will be called.

2002-10-20  Chris Blumenberg  <cblu@apple.com>

	Fixed 3050010: Should show contextual menu for WebImageView
	Also made drags from WebImageView work.

        * Misc.subproj/WebNSViewExtras.h:
        * Misc.subproj/WebNSViewExtras.m: added _web_setPromisedImageDragImage which does the hackery to extend the promised file drag for images
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _menuForElement:]): added, gets menu items from delegate and creates menu
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView menuForEvent:]): simplified, gets element and calls -[WebController _menuForElement:]
        (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): call _web_setPromisedImageDragImage: when dragging image
        * WebView.subproj/WebImageRepresentation.h:
        * WebView.subproj/WebImageRepresentation.m:
        (-[WebImageRepresentation dealloc]): release the URL
        (-[WebImageRepresentation URL]): added so WebImageView can get the URL
        (-[WebImageRepresentation setDataSource:]): retain the URL
        * WebView.subproj/WebImageView.h: use new drag bools
        * WebView.subproj/WebImageView.m:
        (-[WebImageView initWithFrame:]): ditto
        (-[WebImageView setAcceptsDrags:]): ditto
        (-[WebImageView acceptsDrags]): ditto
        (-[WebImageView setAcceptsDrops:]): ditto
        (-[WebImageView acceptsDrops]): ditto
        (-[WebImageView controller]): new
        (-[WebImageView menuForEvent:]): new, creates element and calls -[WebController _menuForElement:]
        (-[WebImageView mouseDragged:]): drag promised file
        (-[WebImageView dragImage:at:offset:event:pasteboard:source:slideBack:]): call _web_setPromisedImageDragImage:
        (-[WebImageView namesOfPromisedFilesDroppedAtDestination:]): new

2002-10-20  Darin Adler  <darin@apple.com>

	- fixed a problem where you would get garbage bits when resizing while loading a standalone image

	Cleaned up some of the complexity of how we were handling resizing.

        * WebView.subproj/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView updateScrollers]):
	Do the update twice to properly handle the case where a disappearing scroller makes a second
	scroller appear or vice versa.

        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _setState:]): Remove the code that was trying
	to set the setDrawsBackground flag on the scroll view. It was doing it wrong, causing bugs with
	drawing non-HTML views while loading. Also, it wasn't working as an optimization, since the
	window was still drawing the metallic background behind. We can revisit adding an optimization
	at the WebHTMLView level if it creates a measurable speed increase, but we must be careful to
	test loading with non-HTML views along with the HTML cases.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _setNeedsLayoutToYes:]): Added. Calls setNeedsLayout:YES.
        (-[WebHTMLView viewWillMoveToSuperview:]): Added. Registers so we get _setNeedsLayoutToYes:
	calls when the superview's size changes. This allows us to do a layout at all the right times.
        (-[WebHTMLView layout]): Call setNeedsDisplay:YES, because if we do a layout without a complete
	display the screen will look bad. Also do a reapplyStyles, because if there are pending style
	changes we want to apply them before doing a layout since they could affect the layout.
        (-[WebHTMLView drawRect:]): Remove the special case that says to always relayout during live
	resize, because it works without a special case now. For the other live resize case, turn it from
	a special case into a general one. Any time layout is done, make sure to draw the entire view,
	not just the passed-in rectangle, and call setNeedsDisplay:NO so we don't do it all over again.

        * WebView.subproj/WebImageView.m: (-[WebImageView layout]): Explicitly set frame size to
	0,0 when there is no image.

        * WebView.subproj/WebView.m: Remove now-unnecessary viewWillStartLiveResize, setFrame:,
	viewDidEndLiveResize, isOpaque, and drawRect overrides.
        (-[WebView initWithFrame:]): Don't call setDrawsBackground:NO for the reasons above.
	Don't set scroll bar visibility because the dynamic scroll bars view handles that already.

2002-10-19  Darin Adler  <darin@apple.com>

	- fixed 3073693 -- flash drawn to screen even when window minimized

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView start]): Set up additional notifications.
	Don't start the null event sender if the window is miniaturized.
        (-[WebBaseNetscapePluginView windowDidMiniaturize:]): Stop the null event sender.
        (-[WebBaseNetscapePluginView windowDidDeminiaturize:]): Start the null event sender.

2002-10-19  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _transitionToCommitted]):
	Removed stray printf.

2002-10-18  Richard Williamson   <rjw@apple.com>

        Changed name to setUsesBackForwardList: from
        setUseBackForwardList.  ditto for useBackForwardList
        
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (-[WebController setUsesBackForwardList:]):
        (-[WebController usesBackForwardList]):
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]):
        (-[WebFrame _isLoadComplete]):

        Fixed history items that have "untitled" title after
        redirect. (3078577).
        
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _setTitle:]):

2002-10-18  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (-[WebController stringByEvaluatingJavaScriptFromString:]):
	Changed to return a string and changed name.

2002-10-18  Darin Adler  <darin@apple.com>

        * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.

2002-10-18  Ken Kocienda  <kocienda@apple.com>

	Removed unneeded import of WebFoundation/WebResourceLoadManager.h

        * Misc.subproj/WebIconLoader.m

2002-10-18  Darin Adler  <darin@apple.com>

        * Makefile.am: Move dependency so clean happens before build.

2002-10-18  Darin Adler  <darin@apple.com>

        * force-clean-timestamp: Dependencies don't work well enough, so
	we need a clean build here after the WebFoundation domain change.

2002-10-18  Darin Adler  <darin@apple.com>

	Update for WebFoundation error domain changes.

        * Misc.subproj/WebKitErrors.h: Put WebErrorDomainWebKit in here.
	Also remove WebErrorNoError and the WebErrorCode name for the enum.
        * WebKit.exp: Export the WebErrorDomainWebKit constant.
        * WebView.subproj/WebView.m: Define the WebErrorDomainWebKit.

        * WebKit.pbproj/project.pbxproj: Always use WebKit.exp.
        * Makefile.am: Don't generate WebKit-combined.exp any more.
        * WebKit-tests.exp: Removed.

2002-10-17  Darin Adler  <darin@apple.com>

	- fixed 3078644 -- Odd clipping in frame

        * WebView.subproj/WebClipView.h: Add hasAdditionalClip and additionalClip methods.
        * WebView.subproj/WebClipView.m:
        (-[WebClipView resetAdditionalClip]): Add an assertion.
        (-[WebClipView setAdditionalClip:]): Ditto.
        (-[WebClipView hasAdditionalClip]): Added.
        (-[WebClipView additionalClip]): Added.

        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView visibleRect]):
	Turn off the additional clip while computing our visibleRect. This way, the additional
	clip only affects people who ask for the clip view's visibleRect directly, which basically
	means just the focus rectangle drawing code we are trying to influence.

2002-10-17  Richard Williamson  <rjw@apple.com>

        Support for drawing frame borders (fixes 2982466).
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _drawBorder:]):
        (-[WebHTMLView drawRect:]):

2002-10-17  John Sullivan  <sullivan@apple.com>

	- added support for bookmark identifiers, to be used for marking
	bookmark proxies uniquely (independent of localized title). This
	is not the old unique-identifier scheme; now identifiers are optional,
	and initially nil, but the client can use them for its own purposes.

        * Bookmarks.subproj/WebBookmark.h:
        * Bookmarks.subproj/WebBookmark.m:
        (-[WebBookmark dealloc]): release identifier
        (-[WebBookmark identifier]): return identifier
        (-[WebBookmark setIdentifier:]): set identifier
        * Bookmarks.subproj/WebBookmarkLeaf.m:
        (-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
	restore identifier
        (-[WebBookmarkLeaf dictionaryRepresentation]):
	save identifier
        (-[WebBookmarkLeaf copyWithZone:]):
	copy identifier
        * Bookmarks.subproj/WebBookmarkList.m:
        (-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]):
	restore identifier
        (-[WebBookmarkList dictionaryRepresentation]):
	save identifier
        (-[WebBookmarkList copyWithZone:]):
	copy identifier
        * Bookmarks.subproj/WebBookmarkPrivate.h:
        * Bookmarks.subproj/WebBookmarkProxy.m:
        (-[WebBookmarkProxy initFromDictionaryRepresentation:withGroup:]):
	restore identifier
        (-[WebBookmarkProxy dictionaryRepresentation]):
	save identifier
        (-[WebBookmarkProxy copyWithZone:]):
	copy identifier

=== Alexander-28 ===

2002-10-17  Darin Adler  <darin@apple.com>

	- fixed 3062613 -- too many redirects at nytimes.com and apple

	Our cookie policy was rejecting the cookies from nytimes.com -- the policy base
	URL was still the news.com URL from before the redirect.

        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:willSendRequest:]):
	Update the cookie policy URL when a redirect changes the data source's URL.

2002-10-17  Darin Adler  <darin@apple.com>

	- fixed 3077910 -- REGRESSION: download window open at startup time -> no scrollbars

        * WebView.subproj/WebDynamicScrollBarsView.m:
        (-[WebDynamicScrollBarsView updateScrollers]):
	Check for WebDocumentView protocol before making the layout method
	call. Prevents exception when WebDynamicScrollBarsView is used with
	a document that is not a WebDocumentView.

2002-10-16  Richard Williamson  <rjw@apple.com>

        Added some drawing debug code (ifdef excluded).
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView drawRect:]):

2002-10-16  Darin Adler  <darin@apple.com>

	Fixed anomalies with plugin positioning caused by my switch to
	NSViewFocusDidChangeNotification. Turns out that is not sent during
	live resize, but we need things to work during live resize.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView start]): Register for changes in the
	bounds and frame of all superviews again, instead of using
	NSViewFocusDidChangeNotification.

2002-10-16  Richard Williamson  <rjw@apple.com>

        Fixed 2969367.  Ensure layout happens before doing check
        to determine if scrollbars are needed.  Ahhh, dynamic
        scrollbars work so much better now.
        
        * WebView.subproj/WebDynamicScrollBarsView.m:
        (-[WebDynamicScrollBarsView updateScrollers]):

2002-10-16  Darin Adler  <darin@apple.com>

	Fixed the problem where we would leave white bits when making the window larger.

        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]): During live resize,
	use the visible rectangle after doing layout, not before.

2002-10-16  Richard Williamson  <rjw@apple.com>

        Fixed regression in visited links due to change is semantics of
        [dataSource request], added [dataSource _originalRequest].  Items
        always need to be added to history with the original request.
        
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource initWithRequest:]):
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]):
        (-[WebDataSource _defersCallbacksChanged]):
        (-[WebDataSource _originalRequest]):
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]):

2002-10-16  Darin Adler  <darin@apple.com>

	- fixed 3017152 -- intra-page anchors not updating page address field

        * WebView.subproj/WebLocationChangeDelegate.h: Rearrange methods so they are
	in the order they are delivered. Add locationChangedWithinPageForDataSource method.
	Renamed the redirect methods to match the verb tenses used in the others.
	Removed the URL parameter from the server redirect method.
        * WebView.subproj/WebLocationChangeDelegate.m: Update the class to match the
	changes to the protocol.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge reportClientRedirectTo:delay:fireDate:]):
	Update for change to clientWillRedirectTo method name.
        (-[WebBridge loadURL:]): Call locationChangedWithinPageForDataSource:.

        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setRequest:]):
	Update for change to serverRedirectedForDataSource method name.

        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView mouseMovedNotification:]):
	Remove overzealous assert that was firing for me.

        * WebCoreSupport.subproj/WebSubresourceClient.m: Update comment.
        * WebView.subproj/WebDataSource.h: Fix comment.

2002-10-15  Darin Adler  <darin@apple.com>

	- fixed 3062393 -- need to send proper referrer for "open in new window" menu items and keyboard shortcuts

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge createWindowWithURL:frameName:]): Don't take a referrer parameter any more.
	Get the referrer by calling to the other side of the bridge, instead.
        (-[WebBridge startLoadingResource:withURL:]): Ditto.
        (-[WebBridge loadURL:]): Ditto.
        (-[WebBridge postWithURL:data:contentType:]): Ditto.
        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
	Ditto.

        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultContextMenuDelegate openNewWindowWithURL:]): Don't take a referrer parameter,
	which was always nil anyway. Instead, get the referrer from the bridge.
        (-[WebDefaultContextMenuDelegate openLinkInNewWindow:]): Don't pass nil for referrer.
        (-[WebDefaultContextMenuDelegate openImageInNewWindow:]): Ditto.
        (-[WebDefaultContextMenuDelegate openFrameInNewWindow:]): Ditto.

        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _continueAfterClickPolicyForEvent:]): Pass a referrer from the bridge, rather
	than nil, for both WebClickPolicyOpenNewWindow and WebClickPolicyOpenNewWindowBehind.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): Add a FIXME.

2002-10-15  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebDataSourcePrivate.h: Remove unused stuff.
        * WebView.subproj/WebDataSourcePrivate.m: Ditto.

2002-10-15  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge loadURL:referrer:]): Add a special case for when the URL is the
	same as the previous URL for the same frame. This relies on some logic in
	KHTML's openURL method that handles this case too.

        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource initWithRequest:]): Don't bother keeping an inputURL.
        (-[WebDataSource URL]): Just return [[self request] URL]. Maybe we can
	remove this altogether.
        * WebView.subproj/WebDataSourcePrivate.h: Remove inputURL, finalURL.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]): No need to release inputURL, finalURL.
        (-[WebDataSource _setURL:]): Used only by the new code above. Makes a copy
	of the request, changes the URL, and then drops the old request.
        (-[WebDataSource _setRequest:]): Changed to no longer call _setURL. Now
	does much of the work that _setURL used to do.

2002-10-15  Darin Adler  <darin@apple.com>

	WebKit part of improved frame name support.

        * WebView.subproj/WebFrame.m:
        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
	Call setName on the newly created part.

2002-10-15  John Sullivan  <sullivan@apple.com>

	- fixed 3075777 -- hysteresis for dragging links on web pages
	is still too large

        * WebView.subproj/WebHTMLView.m: changed hysteresis constants;
	added comment.

2002-10-15  Darin Adler  <darin@apple.com>

	Fix problem where timer was lasting after window was closed.

        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _detachFromParent]):
	Add a call to [_private->bridge closeURL].

2002-10-15  Richard Williamson  <rjw@apple.com>

        Added attributed string to pasteboard.  Fixes 3006760.
        We may want to scale back the content that is included in the
        attributed string.  Currently all text nodes in the selection
        are converted.  This include text nodes for non-visible content,
        i.e. scripts.
        [Note we may also want to put HTML snippet on the pboard.  The appkit
        does support reading text using htmldisplay today.  Of course this should
        eventually migrate to use WebView.]
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView copy:]):

2002-10-15  Darin Adler  <darin@apple.com>

	Fixed bug where URLs dragged to the content area were not made canonical
	the way URLs dragged to the page address field are.

        * Misc.subproj/WebNSPasteboardExtras.m: (-[NSPasteboard _web_bestURL]):
	Make URLs canonical before returning them.

2002-10-15  Chris Blumenberg  <cblu@apple.com>

	If a file is renamed during download because a file of the same name already exists, show this in the UI.

        * Misc.subproj/WebDownloadHandler.h:
        * Misc.subproj/WebDownloadHandler.m:
        (-[WebDownloadHandler receivedResponse:]): added, create file here
        (-[WebDownloadHandler receivedData:]): don't create file here
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handleDidFinishLoading:]): call [dataSource _setPrimaryLoadComplete:YES] for downloads
        (-[WebMainResourceClient handle:didReceiveResponse:]): call [WebDownloadHandler receivedResponse:]
        (-[WebMainResourceClient handle:didReceiveData:]): no download error to handle

2002-10-14  Chris Blumenberg  <cblu@apple.com>

	- Made all downloads no matter how prompted, pass through the content policy API so the client can properly choose the file name and correct the extension if necessary. We now ask for the content policy even if one has been predetermined. 

        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _downloadURL:withContentPolicy:]): Renamed, set the predetermined content policy.
        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultContextMenuDelegate downloadURL:]): call [WebController _downloadURL:withContentPolicy:]
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): call [WebController _downloadURL:withContentPolicy:]
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _continueAfterClickPolicyForEvent:]): call [WebController _downloadURL:withContentPolicy:]
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:didReceiveResponse:]): ask for content policy even if one is predetermined

2002-10-14  Chris Blumenberg  <cblu@apple.com>

	- Cleaned up download handler and download progress delegate interactions.
	- Got rid of error suppression junk.
	- Only send 1 final message to the download progress delegate

        * WebView.subproj/WebMainResourceClient.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient receivedError:forHandle:]): no error suppression
        (-[WebMainResourceClient didCancelWithHandle:]): ignore cancel errors because 1 download error is enough
        (-[WebMainResourceClient handleDidFinishLoading:]): don't send the special and odd final message to the download progress delegate
        (-[WebMainResourceClient handle:didReceiveData:]): no error suppression
        (-[WebMainResourceClient handle:didFailLoadingWithError:]): ignore cancel errors because 1 download error is enough

2002-10-14  Darin Adler  <darin@apple.com>

        * Bookmarks.subproj/WebBookmark.m:
        (+[WebBookmark bookmarkFromDictionaryRepresentation:withGroup:]):
        * Bookmarks.subproj/WebBookmarkLeaf.m:
        (-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
        * Bookmarks.subproj/WebBookmarkList.m:
        (-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]):
        * Bookmarks.subproj/WebBookmarkProxy.m:
        (-[WebBookmarkProxy initFromDictionaryRepresentation:withGroup:]):
	Add checking since we don't "trust" the dictionary passed in.

        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem initFromDictionaryRepresentation:]):
	Add FIXME about adding the checking.

        * Bookmarks.subproj/WebBookmarkGroup.m:
        (-[WebBookmarkGroup initWithFile:]): Use copy, not retain.

        * WebView.subproj/WebControllerPrivate.m:
        (-[WebControllerPrivate dealloc]): Fix storage leak by releasing
	the default context menu delegate.

        * WebView.subproj/WebControllerPrivate.h: Tweak.

2002-10-14  Chris Blumenberg  <cblu@apple.com>

	Made WebNetscapePluginStream retain a WebNetscapePluginEmbeddedView not a WebBaseNetscapePluginView.

        * Plugins.subproj/WebNetscapePluginStream.h:
        * Plugins.subproj/WebNetscapePluginStream.m:
        (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):

2002-10-13  Darin Adler  <darin@apple.com>

        * English.lproj/StringsNotToBeLocalized.txt: Added strings from WebBookmarkProxy.m.

2002-10-13  Chris Blumenberg  <cblu@apple.com>

	- Eliminated the dual-role behavior of WebPluginStream.

	Renamed WebPluginStream to WebBaseNetscapePluginStream.
	WebNetscapePluginRepresentation, a subclass of WebBaseNetscapePluginStream,
	is the document representation for standalone plug-ins.
	WebNetscapePluginStream, also a subclass of WebBaseNetscapePluginStream,
	is the general plug-in stream loader for embedded plug-ins or plug-in requested streams.

	23 plug-in source files with more likely to come!

        * Plugins.subproj/WebBaseNetscapePluginStream.h: Added.
        * Plugins.subproj/WebBaseNetscapePluginStream.m: Added.
        (-[WebBaseNetscapePluginStream dealloc]):
        (-[WebBaseNetscapePluginStream setPluginPointer:]):
        (-[WebBaseNetscapePluginStream setResponse:]):
        (-[WebBaseNetscapePluginStream receivedData:]):
        (-[WebBaseNetscapePluginStream receivedError:]):
        (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
        * Plugins.subproj/WebBaseNetscapePluginView.h:
        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView setWindow]):
        (-[WebBaseNetscapePluginView pluginPointer]):
        (-[WebBaseNetscapePluginView drawRect:]):
        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
        * Plugins.subproj/WebNetscapePluginDocumentView.m:
        * Plugins.subproj/WebNetscapePluginRepresentation.h: Added.
        * Plugins.subproj/WebNetscapePluginRepresentation.m: Added.
        (-[WebNetscapePluginRepresentation setDataSource:]):
        (-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
        (-[WebNetscapePluginRepresentation receivedError:withDataSource:]):
        (-[WebNetscapePluginRepresentation finishedLoadingWithDataSource:]):
        * Plugins.subproj/WebNetscapePluginStream.h: Added.
        * Plugins.subproj/WebNetscapePluginStream.m: Added.
        (-[WebNetscapePluginStream setCurrentURL:]):
        (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
        (-[WebNetscapePluginStream dealloc]):
        (-[WebNetscapePluginStream start]):
        (-[WebNetscapePluginStream stop]):
        (-[WebNetscapePluginStream loadEnded]):
        (-[WebNetscapePluginStream handle:willSendRequest:]):
        (-[WebNetscapePluginStream handle:didReceiveResponse:]):
        (-[WebNetscapePluginStream handle:didReceiveData:]):
        (-[WebNetscapePluginStream handleDidFinishLoading:]):
        (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
        * Plugins.subproj/WebPluginDatabase.m:
        (-[WebNetscapePluginDatabase init]):
        * Plugins.subproj/WebPluginStream.h: Removed.
        * Plugins.subproj/WebPluginStream.m: Removed.
        * WebKit.pbproj/project.pbxproj:

2002-10-11  Richard Williamson   <rjw@apple.com>

        More DOM/attributed string work.
        
        * WebView.subproj/WebHTMLRepresentation.h:
        * WebView.subproj/WebHTMLRepresentation.m:
        (-[WebHTMLRepresentation attributedStringFrom:startOffset:to:endOffset:]):
        * WebView.subproj/WebHTMLRepresentationPrivate.h:

2002-10-11  Richard Williamson   <rjw@apple.com>

        * WebView.subproj/WebHTMLRepresentation.m:
        * WebView.subproj/WebHTMLRepresentationPrivate.h:

2002-10-11  Ken Kocienda  <kocienda@apple.com>

	Fixed uninitialized variable build breaker I got when
	doing a Deployment build.

        * Bookmarks.subproj/WebBookmarkGroup.m:
        (-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:URLString:type:]):

2002-10-11  John Sullivan  <sullivan@apple.com>

	Added the concept of bookmark proxies; items that can be
	stored and displayed with other bookmarks but represent
	a source of bookmark-like items (e.g. Rendezvous, History)

        * Bookmarks.subproj/WebBookmarkProxy.h: Added.
        * Bookmarks.subproj/WebBookmarkProxy.m: Added.
        (-[WebBookmarkProxy initFromDictionaryRepresentation:withGroup:]):
        (-[WebBookmarkProxy dictionaryRepresentation]):
        (-[WebBookmarkProxy bookmarkType]):
        (-[WebBookmarkProxy copyWithZone:]):
        (-[WebBookmarkProxy title]):
        (-[WebBookmarkProxy setTitle:]):
        (-[WebBookmarkProxy icon]):
	New class, has a title and that's about it

        * Bookmarks.subproj/WebBookmark.h:
        * Bookmarks.subproj/WebBookmark.m:
        (+[WebBookmark bookmarkFromDictionaryRepresentation:withGroup:]):
	Handle proxy case

        * Bookmarks.subproj/WebBookmarkGroup.m:
        (-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:URLString:type:]):
	Handle proxy case

        * Bookmarks.subproj/WebBookmarkList.m:
        (-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]),
        (-[WebBookmarkList dictionaryRepresentation]):
	Handle proxy case

        * Bookmarks.subproj/WebBookmarkPrivate.h:
	Add #define for proxy

        * WebKit.pbproj/project.pbxproj: updated for new files

2002-10-11  Chris Blumenberg  <cblu@apple.com>

	Thought I has checking for nil enough, but not enough as I raised an exception on Avie's machine.

        * Plugins.subproj/WebPlugin.m:
        (-[WebNetscapePlugin getPluginInfo]): check for the nil extension case

2002-10-11  Darin Adler  <darin@apple.com>

	Apply a simplified technique I learned while working on the Favorites button
	class in the browser code.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView start]): Use the NSViewFocusDidChangeNotification
	to track the plugin rectangles instead of the NSViewFrameDidChangeNotification
	and NSViewBoundsDidChangeNotification on all the superviews.

2002-10-11  John Sullivan  <sullivan@apple.com>

        * Resources/url_icon.tiff: new generic URL icon -- no more @!

2002-10-10  Darin Adler  <darin@apple.com>

	- fixed 3069366 -- REGRESSION: no pop-up window at inkfinder.com

	The window now pops up, but it doesn't seem to work right. But I
	think the window working right is a separate issue.

        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:willSendRequest:]): Make sure we
	use the copy of the request that we're keeping around when we call
	_setRequest on the data source, rather than the copy we're returning
	which can be modified by WebFoundation. Also rearrange things so we're
	more likely to get things right when the delegate changes the URL on
	the request.

2002-10-10  Chris Blumenberg  <cblu@apple.com>

	No need to send update event when activating/deactivating.
	This was as old workaround for the plug-in drawing problems.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView windowBecameKey:]):
        (-[WebBaseNetscapePluginView windowResignedKey:]):

=== Alexander-27 ===

2002-10-10  Darin Adler  <darin@apple.com>

	- fixed 3071799 -- REGRESSION: hang and strange download loading about:blank

	Chris fixed the strange download earlier. This fixes the "hang' by making sure
	we commit even if we receive 0 bytes of data.

        * WebView.subproj/WebDataSourcePrivate.h: Added a _finishedLoading method.
        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _finishedLoading]):
	Added. Sets the "first byte of data received" flag, and calls _commitIfReady.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handleDidFinishLoading:]): Call _finishedLoading.

2002-10-10  Darin Adler  <darin@apple.com>

	- fixed 3072015 -- REGRESSION: frames multiply endlessly

        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge setFrame:]):
	Remove code that sets the parent from here, because it's too early, always nil.
        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _addChild:]):
	Do it here instead.

2002-10-09  Richard Williamson   <rjw@apple.com>

        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient handleDidFinishLoading:]):
        * WebKit.exp:
        * WebView.subproj/WebController.m:
        (-[WebResourceLoadDelegate resourceRequest:willSendRequest:fromDataSource:]):
        (-[WebResourceLoadDelegate resourceRequest:didReceiveResponse:fromDataSource:]):
        (-[WebResourceLoadDelegate resourceRequest:didReceiveContentLength:fromDataSource:]):
        (-[WebResourceLoadDelegate resourceRequest:didFinishLoadingFromDataSource:]):
        (-[WebResourceLoadDelegate resourceRequest:didFailLoadingWithError:fromDataSource:]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handleDidFinishLoading:]):
        * WebView.subproj/WebResourceLoadDelegate.h:

2002-10-09  John Sullivan  <sullivan@apple.com>

	- removed unnecessary concept of unique identifiers for bookmarks

        * Bookmarks.subproj/WebBookmark.h:
        * Bookmarks.subproj/WebBookmark.m:
        (-[WebBookmark dealloc]):
        (-[WebBookmark _setGroup:]):
        * Bookmarks.subproj/WebBookmarkGroup.h:
        * Bookmarks.subproj/WebBookmarkGroup.m:
        * Bookmarks.subproj/WebBookmarkGroupPrivate.h:
	removed all references to unique identifiers

2002-10-09  Darin Adler  <darin@apple.com>

	WebKit support for creating windows and then showing them later
	after setting them up.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge createWindowWithURL:referrer:frameName:]): Replaced the old
	openNewWindowWithURL with this. It calls the new window operations delegate
	method.
        (-[WebBridge showWindow]): Added. Calls the window operations delegate showWindow method.
        (-[WebBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
	Call _createFrameNamed instead of createFrameNamed.

        * WebView.subproj/WebWindowOperationsDelegate.h: Replaced the openNewWindowWithURL
	method with a new method named createWindowWithURL. Added showWindow and showWindowBehindFrontmost.

        * WebView.subproj/WebControllerPrivate.h: Renamed createFrameNamed to _createFrameNamed
	and removed the data source parameter. Added _openNewWindowWithURL:referrer:behind:
	for the convenience of those who used to call the window operations delegate directly
	to open the window.
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _createFrameNamed:inParent:allowsScrolling:]): Renamed, and removed
	the data source parameter.
        (-[WebController _openNewWindowWithURL:referrer:behind:]): Added.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultContextMenuDelegate openNewWindowWithURL:referrer:]):
        * WebView.subproj/WebFrame.m: (-[WebFrame frameNamed:]):
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _continueAfterClickPolicyForEvent:]):
	Use a private WebController method instead of calling the delegate directly,
	because it now takes two method calls to create and display a new window.

        * Misc.subproj/WebNSViewExtras.m:
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        * WebView.subproj/WebController.m:
        * WebView.subproj/WebDataSource.m:
        * WebView.subproj/WebFramePrivate.m:
        * WebView.subproj/WebHTMLView.m:
        * WebView.subproj/WebMainResourceClient.m:
        * WebView.subproj/WebPreferences.m:
        * WebView.subproj/WebView.m:
        * WebView.subproj/WebViewPrivate.m:
	Tweaked comments.

2002-10-09  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebImageRenderer.m:
        (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
	Fix positioning of progressively loading images that are flipped.

2002-10-09  Darin Adler  <darin@apple.com>

	- fixed 3069764 -- REGRESSION: Plug-ins sometimes don't respond to
	update events, causes disappearing

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView drawRect:]): Set the visible region of the port to the
	port bounds to work around the fact that NSWindow tries to help us by doing a
	BeginUpdate call. This ensures we can draw where we think we are dirty, not just
	where Carbon thinks we are dirty.

        * Plugins.subproj/WebNetscapePluginDocumentView.m: Tweak includes.
        * Plugins.subproj/WebNetscapePluginEmbeddedView.m: Tweak includes.
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge openNewWindowWithURL:referrer:frameName:]): Tweak.

        * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.

2002-10-08  Darin Adler  <darin@apple.com>

	Make WebFrame do the entire frame hierarchy, instead of having the
	parent and child pointers in the data source.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge childFrames]): Get children from the frame, not the data source.
        (-[WebBridge setFrame:]): Do the setParent: call on the bridge here, instead of
	in dataSourceChanged, since the parent relationship is now established even without
	having the data source.
        (-[WebBridge dataSourceChanged]): Remove the setParent: call.
        (-[WebBridge loadRequest:]): Remove the parent parameter. It's already set up at
	this point so we don't need to set it.
        (-[WebBridge loadURL:referrer:]): Don't pass a parent.
        (-[WebBridge postWithURL:referrer:data:contentType:]): Don't pass a parent.
        (-[WebBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
	Don't pass a parent.
	(-[WebBridge addBackForwardItemWithURL:anchor:]): Get the parent frame by just calling
	the parent method instead of the more roundabout way that it was doing it before.

        * WebView.subproj/WebController.m:
        (-[WebController _frameForDataSource:fromFrame:]): Get the children list from the frame,
	no need to ask the data source. And no need to deal with the provisional data source, since
	those can't have children any more.
        (-[WebController _frameForView:fromFrame:]): Ditto.

        * WebView.subproj/WebControllerPrivate.h: Change parent parameter when creating a new
	frame to be a frame, not a data source.
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebControllerPrivate _clearControllerReferences:]): Get the children list from the frame.
        (-[WebControllerPrivate dealloc]): Rename the _reset method _controllerWillBeDeallocated
	to be more concrete. More simplification can happen here later.
        (-[WebController createFrameNamed:for:inParent:allowsScrolling:]): Call _addChild on the
	parent frame rather than calling addFrame on the parent data source.

        * WebView.subproj/WebDataSource.h: Remove the parent, children, frameNamed, frameNames, and
	frameExists methods.
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource controller]): Remove the assertion here about parents, since we don't have
	a parent pointer any more.
        (-[WebDataSource isLoading]): Get the list of children from the frame.

        * WebView.subproj/WebDataSourcePrivate.h: Remove the parent pointer and the frames dictionary,
	also remove the _setParent: and addFrame: methods.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]): Don't release the frames list.
        (-[WebDataSource _recursiveStopLoading]): Get the frames list from the frame.
        (-[WebDataSource _layoutChildren]): Ditto.
        (-[WebDataSource _defersCallbacksChanged]): Ditto.

        * WebView.subproj/WebFrame.h: Add parent and children methods.
        * WebView.subproj/WebFrame.m:
        (-[WebFrame dealloc]): Call _detachFromParent.
        (-[WebFrame setProvisionalDataSource:]): Set the encoding of the data source to match
	the encoding of the parent's data source. This used to be done in [WebDataSource _setParent:].
	Further simplification can probably be done here.
        (-[WebFrame reload]): Remove the call to [WebDataSource _setParent:].
        (+[WebFrame _frameNamed:fromFrame:]): Get the children from the frame.
        (-[WebFrame frameNamed:]): Get the parent from the frame.
        (-[WebFrame parent]): Added.
        (-[WebFrame children]): Added.

        * WebView.subproj/WebFramePrivate.h: Added parent and children fields, changed reset to
	_controllerWillBeDeallocated, changed _parentDataSourceWillBeDeallocated to _detachFromParent,
	added _addChild method. Further simplification can probably be done here.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFramePrivate dealloc]): Release the children array.
        (-[WebFrame _controllerWillBeDeallocated]): Renamed from reset. Now just calls _detachFromParent.
        (-[WebFrame _detachFromParent]): Does all the work that reset and _parentDataSourceWillBeDeallocated
	used to do.
        (-[WebFrame _setDataSource:]): Call _detachFromParent on all the children and release them
	before setting up the new data source.
        (-[WebFrame _transitionToCommitted]): Get the parent from self instead of the data source.
        (-[WebFrame _isLoadComplete]): Ditto.
        (+[WebFrame _recursiveCheckCompleteFromFrame:]): Get the children from self instead of the data source.
        (-[WebFrame _textSizeMultiplierChanged]): Ditto.
        (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]): Remove the call to [WebDataSource _setParent:].
        (-[WebFrame _addChild:]): Added. Puts the child in a children list, and also sets the override
	encoding of the child based on our data source's override encoding.

2002-10-08  John Sullivan  <sullivan@apple.com>

        * WebKit.pbproj/project.pbxproj:
	Project Builder says I changed it only by setting
	"hasScannedForEncodings" to 1 -- version wars again?

2002-10-08  Richard Williamson   <rjw@apple.com>

        Removed unnecessary (and incorrect) include.
        The *.m files in DOM.subproj might be removed,
        they are empty now.
        
        * DOM.subproj/WebDOMDocument.m:

2002-10-08  Richard Williamson   <rjw@apple.com>

        Added selection API.
        
        * WebView.subproj/WebHTMLRepresentation.h:
        * WebView.subproj/WebHTMLRepresentation.m:
        (-[WebHTMLRepresentation setSelectionFrom:startOffset:to:endOffset:]):

2002-10-08  Richard Williamson   <rjw@apple.com>

        Add accessor for DOM document.
        
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebHTMLRepresentation.h:
        * WebView.subproj/WebHTMLRepresentation.m:
        (-[WebHTMLRepresentation DOMDocument]):

2002-10-08  Richard Williamson   <rjw@apple.com>

        Made getAttributeNodeNamed match spec, changed
        to getAttributeNode.
         
        * DOM.subproj/WebDOMElement.h:

2002-10-08  John Sullivan  <sullivan@apple.com>

	- WebKit part of fix for 3069150 -- eliminate "separator"
	feature from Bookmarks

        * Bookmarks.subproj/WebBookmarkSeparator.h: Removed.
        * Bookmarks.subproj/WebBookmarkSeparator.m: Removed.
	Removed class

        * Bookmarks.subproj/WebBookmark.h:
        * Bookmarks.subproj/WebBookmark.m:
        (+[WebBookmark bookmarkOfType:]):
        (+[WebBookmark bookmarkFromDictionaryRepresentation:withGroup:]):
        * Bookmarks.subproj/WebBookmarkGroup.m:
        (-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:URLString:type:]):
        * Bookmarks.subproj/WebBookmarkList.m:
        (-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]):
        * Bookmarks.subproj/WebBookmarkPrivate.h:
        * English.lproj/StringsNotToBeLocalized.txt:
	Removed all references to class.

        * WebKit.pbproj/project.pbxproj: Updated for removed files.

2002-10-08  Richard Williamson   <rjw@apple.com>

        Fixes to the DOM API.
        
        * DOM.subproj/WebDOMDocument.h:
        * DOM.subproj/WebDOMDocument.m:
        * DOM.subproj/WebDOMNode.h:
        * DOM.subproj/WebDOMNode.m:
        * DOM.subproj/WebDOMNamedNodeMap.h: Removed.
        * DOM.subproj/WebDOMNamedNodeMap.m: Removed.
        * WebKit.pbproj/project.pbxproj:

2002-10-08  Ken Kocienda  <kocienda@apple.com>

	Use WebFrameLoadType variable to set the request cache policy for the WebResourceRequest.
	This will help us to provide cached results for POST requests when the user navigates
	using the back/forward list or history for navigation, while making sure we do not
	use cached results when the user pokes the submit button for a form they have
	submitted previously.

        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _goToItem:withFrameLoadType:])

2002-10-08  Chris Blumenberg  <cblu@apple.com>

	Moved assumption that a resource without a content type or extension is HTML to WebFoundation.

        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:didReceiveResponse:]):

2002-10-08  Chris Blumenberg  <cblu@apple.com>

	Minor plug-in code clean-up.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView sendActivateEvent:]):
        (-[WebBaseNetscapePluginView sendUpdateEvent]):
        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream receivedData:]):

2002-10-08  Chris Blumenberg  <cblu@apple.com>

	Partial fix for 2967073 - should open all TEXT type files, at least

        * WebView.subproj/WebControllerPrivate.m:
        (+[WebController _MIMETypeForFile:]): Sniff for HTML in the fail case.

2002-10-07  Darin Adler  <darin@apple.com>

	WebKit part of implementation of multipart forms posting.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge postWithURL:referrer:data:contentType:]):
	Add a contentType parameter to match change in WebCore API.
	Put the contentType value into the request.

2002-10-07  Chris Blumenberg  <cblu@apple.com>

	Icing fix for: 3063517 - crash loading .png in separate window
	
        * Plugins.subproj/WebPluginDatabase.m:
        (-[WebNetscapePluginDatabase init]): Don't override document view and rep
	types for types that have already been registered. 

2002-10-07  Darin Adler  <darin@apple.com>

	WebKit part of the page up/down fix.

        * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView scrollPoint:]):
	If we are called from the handling of a page up or page down keyboard
	event, then ignore the specific scrolling requested, and do our idea of
	page up and page down. This guarantees that we will get the smarter
	idea of how to page from WebView instead of the one that's hardcoded
	into NSTextView.

        * WebView.subproj/WebView.m: (-[WebView keyDown:]): Use scrollPageUp:,
	scrollPageDown:, scrollLineUp:, and scrollLineDown: instead of _pageUp,
	_pageDown, _lineUp, and _lineDown. This lets other classes see and use
	these selectors, which is useful when passing calls up the responder chain.
        * WebView.subproj/WebViewPrivate.h: Remove the private methods that are
	being changed to match the NSResponder keyboard methods.
        * WebView.subproj/WebViewPrivate.m:
        (-[WebView scrollPageUp:]): Rename from _pageUp, and also pass a scrollPageUp:
	selector along the responder chain if we are already scrolled to the top.
        (-[WebView scrollPageDown:]): Ditto.
        (-[WebView scrollLineUp:]): Rename from _lineUp.
        (-[WebView scrollLineDown:]): Rename from _lineDown.

2002-10-07  Richard Williamson   <rjw@apple.com>

        'Re'play the delegate messages when an item is loaded from
        the WebCore cache.

        Note that the client will NOT receive a willSendRequest: message.  The client
        presumably already did any request substitution before the object was loaded 
        into the cache.  Allowing the delegate to override the request and replace
        the object in the WebCore cache would introduce significant complexity.
        
        Fixes 3069138.
        
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge objectLoadedFromCache:response:size:]):
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient handle:didReceiveResponse:]):

2002-10-05  Darin Adler  <darin@apple.com>

	- fixed 3068323 -- nil object inserted in dictionary exception on mouse move

        * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _elementAtPoint:]):
	Add some assertions in the hope of finding if my assumptions about this are
	wrong, and use the version of the dictionary setter that does nothing if it's
	passed nil when putting in the frame found by name.

2002-10-04  Darin Adler  <darin@apple.com>

        * English.lproj/StringsNotToBeLocalized.txt: Add a localization
	exception for the WebKit bundle identifier.

2002-10-04  Darin Adler  <darin@apple.com>

        * Misc.subproj/WebKitLocalizableStrings.m: Added.
	Contains the definition of the WebKitLocalizableStringsBundle.
        * WebKit.pbproj/project.pbxproj: Add -DFRAMEWORK_NAME=WebKit.

2002-10-04  Richard Williamson   <rjw@apple.com>

        Stubs for DOM level 2 core API.
        
        * DOM.subproj/WebDOMDocument.h: Added.
        * DOM.subproj/WebDOMDocument.m: Added.
        * DOM.subproj/WebDOMElement.h: Added.
        * DOM.subproj/WebDOMElement.m: Added.
        * DOM.subproj/WebDOMNamedNodeMap.h: Added.
        * DOM.subproj/WebDOMNamedNodeMap.m: Added.
        * DOM.subproj/WebDOMNode.h: Added.
        * DOM.subproj/WebDOMNode.m: Added.
        * WebKit.pbproj/project.pbxproj:
        
        * WebView.subproj/WebHTMLViewPrivate.m: tweak.

2002-10-04  Darin Adler  <darin@apple.com>

        * English.lproj/StringsNotToBeLocalized.txt: Add the last few exceptions.
	We now have a completely-clean run of extract-localizable-strings in WebKit!

2002-10-04  Darin Adler  <darin@apple.com>

	- fixed 3060140 -- REGRESSION: frames of animated gif drawn in wrong position.

	I got the "fromRect" and "toRect" parameters backwards when I made the changes
	to fix bug 3050810.

        * WebCoreSupport.subproj/WebImageRenderer.m: (-[WebImageRenderer nextFrame:]):
	Reverse targetRect and imageRect.

        * WebKit.pbproj/project.pbxproj: Mark some new files as UTF-8 because Project
	Builder asked me to.

2002-10-04  Darin Adler  <darin@apple.com>

        * Panels.subproj/WebPanelCookieAcceptHandler.h: Removed.
        * Panels.subproj/WebPanelCookieAcceptHandler.m: Removed.

2002-10-04  Richard Williamson   <rjw@apple.com>

        Danger Will Robinson.  We have to poseAsClass: as early as possible
        so that any NSViews will be created with the appropriate poser.
        This problem manifested itself with SimpleViewer failing
        immediately.  NSViews were created by loading a nib before
        WebHTMLView class initialization occured.  After posing the
        already instantiated instances of NSView had a %NSView class,
        causing many things to break.
        
        * WebView.subproj/WebHTMLViewPrivate.m:
        (+[WebHTMLView load]):

2002-10-04  Richard Williamson   <rjw@apple.com>

        Ensure that we return non-nil request  from handle:willSendRequest:
        even when WK's laod delegate is nil.
        
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient handle:willSendRequest:]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:willSendRequest:]):

2002-10-04  Darin Adler  <darin@apple.com>

        * Panels.subproj/WebAuthenticationPanel.m:
        (-[WebAuthenticationPanel loadNib]): Use ERROR instead of NSLog here.
        (-[WebAuthenticationPanel setUpForRequest:]): Mark some strings for localization.

        * WebKit.pbproj/project.pbxproj: Change the encoding on a lot more files to UTF-8.

        * English.lproj/StringsNotToBeLocalized.txt: Added some new exceptions.
        * English.lproj/Localizable.strings: Re-generated.

2002-10-04  Richard Williamson   <rjw@apple.com>

        Changed WebDOMNode name to WebDebugDOMNode to make room for
        real node.
        
        * WebKit.exp:
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebDOMNode.h: Removed.
        * WebView.subproj/WebDOMNode.m: Removed.

2002-10-04  Richard Williamson   <rjw@apple.com>

        * WebKit.pbproj/project.pbxproj:

2002-10-03  Richard Williamson   <rjw@apple.com>

        Changed name of controller's resourceProgressDelegate methods to resourceLoadDelegate.

        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient initWithLoader:dataSource:]):
        (-[WebSubresourceClient handle:didReceiveResponse:]):
        (-[WebSubresourceClient handle:didReceiveData:]):
        (-[WebSubresourceClient handleDidFinishLoading:]):
        (-[WebSubresourceClient handle:didFailLoadingWithError:]):
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (-[WebController setResourceLoadDelegate:]):
        (-[WebController resourceLoadDelegate]):
        (-[WebController setDownloadDelegate:]):
        (-[WebController downloadDelegate]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient initWithDataSource:]):
        (-[WebMainResourceClient handle:didReceiveResponse:]):

2002-10-03  Richard Williamson   <rjw@apple.com>

        Always call resourceRequest:willSendRequest: on resourceProgressDelegate.
         
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:willSendRequest:]):

2002-10-03  Richard Williamson   <rjw@apple.com>

        Add calls to downloadProgressDelegate.
        
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:willSendRequest:]):
        (-[WebMainResourceClient handle:didReceiveResponse:]):
        (-[WebMainResourceClient handle:didReceiveData:]):
        (-[WebMainResourceClient handle:didFailLoadingWithError:]):

2002-10-03  Richard Williamson   <rjw@apple.com>

        
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge objectLoadedFromCache:size:]):
        Hack to prevent handle creation with nil delegate,
        still perform frame complete check.
        
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient initWithDataSource:]):
        Removed unused code.
        
        (-[WebMainResourceClient handle:willSendRequest:]):
        Copy the request, ugh.

2002-10-03  Darin Adler  <darin@apple.com>

	Add API for executing JavaScript.

        * WebView.subproj/WebController.h: Add method.
        * WebView.subproj/WebController.m:
        (-[WebController executeJavaScriptFromString:]): Call through to
	WebCore to do the heavy lifting.

2002-10-03  Darin Adler  <darin@apple.com>

        * English.lproj/Localizable.strings: Generated by the script.
        * English.lproj/StringsNotToBeLocalized.txt: Added many more strings to ignore.
        * English.lproj/WebError.strings: Removed.

        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        * WebView.subproj/WebView.m:
	Use UI_STRING instead of NSLocalizedString.

        * WebKit.pbproj/project.pbxproj: Changed encodings of some files to UTF-8.
	Removed WebError.strings.

2002-10-03  Richard Williamson   <rjw@apple.com>

        Renamed WebResourceProgressDelegate.h to WebResourceLoadDelegate.h

        * Misc.subproj/WebKit.h:
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebController.m:
        * WebView.subproj/WebControllerPrivate.m:
        * WebView.subproj/WebMainResourceClient.m:
        * WebView.subproj/WebResourceLoadDelegate.h:
        * WebView.subproj/WebResourceProgressDelegate.h: Removed.

2002-10-03  Richard Williamson   <rjw@apple.com>

        Changed to reflect new WebResourceLoadDelegate API.

        * Misc.subproj/WebIconLoader.m:
        * Misc.subproj/WebKit.h:
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream handle:didReceiveData:]):
        (-[WebNetscapePluginStream handleDidFinishLoading:]):
        (-[WebNetscapePluginStream cancel]):
        (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge objectLoadedFromCache:size:]):
        (-[WebBridge reportBadURL:]):
        * WebCoreSupport.subproj/WebSubresourceClient.h:
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient initWithLoader:dataSource:]):
        (-[WebSubresourceClient dealloc]):
        (-[WebSubresourceClient receivedProgressWithComplete:]):
        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
        (-[WebSubresourceClient receivedError:]):
        (-[WebSubresourceClient handle:willSendRequest:]):
        (-[WebSubresourceClient handle:didReceiveResponse:]):
        (-[WebSubresourceClient handle:didReceiveData:]):
        (-[WebSubresourceClient handleDidFinishLoading:]):
        (-[WebSubresourceClient handle:didFailLoadingWithError:]):
        (-[WebSubresourceClient cancel]):
        * WebKit.exp:
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (-[WebController setResourceProgressDelegate:]):
        (-[WebController resourceProgressDelegate]):
        (-[WebController setDownloadProgressDelegate:]):
        (-[WebController downloadProgressDelegate]):
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _receivedProgressForResourceHandle:fromDataSource:complete:]):
        (-[WebController _mainReceivedProgressForResourceHandle:bytesSoFar:fromDataSource:complete:]):
        (-[WebController _receivedError:forResourceHandle:fromDataSource:]):
        (-[WebController _mainReceivedError:forResourceHandle:fromDataSource:]):
        * WebView.subproj/WebLoadProgress.h: Removed.
        * WebView.subproj/WebLoadProgress.m: Removed.
        * WebView.subproj/WebMainResourceClient.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient initWithDataSource:]):
        (-[WebMainResourceClient dealloc]):
        (-[WebMainResourceClient receivedProgressWithHandle:complete:]):
        (-[WebMainResourceClient receivedError:forHandle:]):
        (-[WebMainResourceClient handleDidFinishLoading:]):
        (-[WebMainResourceClient handle:willSendRequest:]):
        (-[WebMainResourceClient handle:didReceiveResponse:]):
        (-[WebMainResourceClient handle:didReceiveData:]):
        (-[WebMainResourceClient handle:didFailLoadingWithError:]):
        * WebView.subproj/WebResourceProgressDelegate.h:

=== Alexander-26 ===

2002-10-02  Maciej Stachowiak  <mjs@apple.com>

	- Added "remember my password" checkbox (underlying feature not
	yet implemented).

	- Fixed a bug that caused a crash when cancelling the auth sheet.
	
        * Panels.subproj/English.lproj/WebAuthenticationPanel.nib: Added
	"remember this password" checkbox.
        * Panels.subproj/WebAuthenticationPanel.h:
        * Panels.subproj/WebAuthenticationPanel.m:
	(-[WebAuthenticationPanel cancel:]): Make sure the panel gets
	retained a bit longer, so the cleanup that happens after this
	message is sent can use the panel object.
        (-[WebAuthenticationPanel logIn:]): Make sure the panel gets
	retained a bit longer, so the cleanup that happens after this
	message is sent can use the panel object.
        (-[WebAuthenticationPanel runAsModalDialogWithRequest:]): Pass
	proper remembered value with credential.
        (-[WebAuthenticationPanel sheetDidEnd:returnCode:contextInfo:]):
	Pass proper remembered value with credential.
        * WebKit.pbproj/project.pbxproj: Project Builder had its way with
	this file.

2002-10-02  Darin Adler  <darin@apple.com>

	Machinery so we can handle mouseover feedback at the browser level.

        * WebView.subproj/WebWindowOperationsDelegate.h: Added mouseDidMoveOverElement:modifierFlags:.

        * WebKit.exp: Export WebElementLinkTargetFrameKey.
        * WebView.subproj/WebController.h: Add WebElementLinkTargetFrameKey.
        * WebView.subproj/WebController.m: Ditto.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView removeMouseMovedObserver]): Send a callback when we
	stop tracking the mouse altogether.
        (-[WebHTMLView viewDidMoveToWindow]): Only set up the mouse moved
	observer if we are the top-level HTML view.
        (-[WebHTMLView windowDidBecomeMain:]): Ditto.
        (-[WebHTMLView mouseMovedNotification:]): Handle mouse over if we are
	over any subview of the HTML view. Also send the callback.

        * WebView.subproj/WebHTMLViewPrivate.h: Added lastMouseOverElementWasNotNil,
	_mouseOverElement:modifierFlags: and _insideAnotherHTMLView.
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _elementAtPoint:]): Copy over each element separately so
	we don't rely on keys matching. Find the target frame given the target string,
	and include it in the dictionary.
        (-[WebHTMLView _mouseOverElement:modifierFlags]): Added. Calls the window
	operations delegate method, but doesn't call it over and over again if the
	information is still "nil".
        (-[WebHTMLView _insideAnotherHTMLView]): Added.
        (-[NSMutableDictionary _web_setObjectIfNotNil:forKey:]): Added. Helper for
	the _elementAtPoint method which could be moved to WebNSDictionaryExtras some day.

2002-10-02  Ken Kocienda  <kocienda@apple.com>

	Implemented HTTP-specific subclass for WebResourceResponse.

        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream receivedData:]): Add import for WebHTTPResourceResponse.

2002-10-02  Darin Adler  <darin@apple.com>

	Add return value to willSendRequest callback.

        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader handle:willSendRequest:]):
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream handle:willSendRequest:]):
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient handle:willSendRequest:]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:willSendRequest:]):
	Update to return the request.

2002-10-02  Darin Adler  <darin@apple.com>

	Use the text encoding name from the response and got rid of
	[WebDataSource encoding]. Also remove the "first chunk" logic since we
	now get a separate callback for the response.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge receivedData:withDataSource:]): Get the encoding name
	from the response, or fall back on the default.

        * WebView.subproj/WebDataSource.h: Removed encoding.
        * WebView.subproj/WebDataSource.m: Ditto.

        * WebView.subproj/WebDataSourcePrivate.h: Removed _setEncoding.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]): No need to release encoding any more.

        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient initWithDataSource:]): No isFirstChunk to initialize.
        (-[WebMainResourceClient handle:didReceiveResponse:]): Moved the response handling
	in here, including the policy logic.
        (-[WebMainResourceClient handle:didReceiveData:]): This has only what's left.

2002-10-02  Chris Blumenberg  <cblu@apple.com>

	Replaced contentType on WebDataSource to response.

        * Plugins.subproj/WebNetscapePluginDocumentView.m:
        (-[WebNetscapePluginDocumentView setDataSource:]):
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream receivedData:]):
        (-[WebNetscapePluginStream setResponse:]):
        (-[WebNetscapePluginStream setDataSource:]):
        (-[WebNetscapePluginStream receivedData:withDataSource:]):
        (-[WebNetscapePluginStream handle:didReceiveResponse:]):
        (-[WebNetscapePluginStream handle:didReceiveData:]):
        * WebView.subproj/WebDataSource.h:
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource response]):
        (-[WebDataSource fileType]):
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]):
        (-[WebDataSource _representationClass]):
        (-[WebDataSource _setResponse:]):
        (-[WebDataSource _setContentPolicy:]):
        * WebView.subproj/WebMainResourceClient.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient dealloc]):
        (-[WebMainResourceClient handleDidFinishLoading:]):
        (-[WebMainResourceClient handle:didReceiveResponse:]):
        (-[WebMainResourceClient handle:didReceiveData:]):
        * WebView.subproj/WebTextView.m:
        (-[WebTextView dataSourceUpdated:]):
        * WebView.subproj/WebViewPrivate.m:
        (-[WebView _makeDocumentViewForDataSource:]):

2002-10-02  Darin Adler  <darin@apple.com>

	More work on "open window behind".

        * WebView.subproj/WebControllerPolicyDelegate.h: Add new OpenNewWindowBehind
	constants to the enums.

        * WebView.subproj/WebWindowOperationsDelegate.h: Add a behind: parameter to
	the openNewWindowWithURL method.

        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _continueAfterClickPolicyForEvent:]): In the new
	WebClickPolicyOpenNewWindowBehind case, pass YES for behind.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge openNewWindowWithURL:referrer:frameName:]):
        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultContextMenuDelegate openNewWindowWithURL:referrer:]):
        * WebView.subproj/WebFrame.m:
        (-[WebFrame frameNamed:]):
	Pass NO for behind.

2002-10-02  Darin Adler  <darin@apple.com>

	Cut down on unnecessary use of WebFoundation private stuff.

        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream startLoad]): Remove unnecessary use of
	[WebResourceHandle _request].
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient handleDidFinishLoading:]): Remove assert about
	status code, since status codes are going away.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient didCancelWithHandle:]): Use currentURL for logging.
        (-[WebMainResourceClient handleDidFinishLoading:]): Ditto.
        (-[WebMainResourceClient handle:didReceiveData:]): Ditto.

2002-10-02  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebControllerPolicyDelegate.h: Change modifierMask to
	modifierFlags to match NSEvent.
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        (-[WebDefaultPolicyDelegate clickPolicyForElement:button:modifierFlags:]): Ditto.
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _continueAfterClickPolicyForEvent:]): Ditto.

2002-10-02  Darin Adler  <darin@apple.com>

	Get rid of uses of canonicalURL.

        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
	Start with normal URL. The change to the canonical URL will come in as a redirect.
        (-[WebSubresourceClient handle:didReceiveData:]): Remove assert.
        (-[WebSubresourceClient handleDidFinishLoading:]): Ditto.
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource initWithRequest:]):Start with normal URL. The change to the
	canonical URL will come in as a redirect.

2002-10-02  Ken Kocienda  <kocienda@apple.com>

	Added import of WebHTTPResourceRequest.h to get access to methods
	which have moved to the HTTP-sepcific request category.

        * WebView.subproj/WebDataSourcePrivate.m

2002-10-01  John Sullivan  <sullivan@apple.com>

        * WebKit.exp: added .objc_class_name_WebTextRendererFactory
	so I could use it from WebBrowser.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge startLoadingResource:withURL:referrer:]):
	Just changed whitespace so the .exp change would be built.

2002-10-01  Chris Blumenberg  <cblu@apple.com>

	Fixed build breakage.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView setWindow]):

2002-10-01  Ken Kocienda  <kocienda@apple.com>

        Implemented WebResourceRequest "category" design for extending a
        request with protocol-specific data.

        * WebCoreSupport.subproj/WebBridge.m: Now imports WebHTTPResourceRequest.h.
        * WebCoreSupport.subproj/WebSubresourceClient.m: Ditto.
        * WebView.subproj/WebMainResourceClient.m: Ditto.

2002-10-01  Chris Blumenberg  <cblu@apple.com>

	- Added debug drawing
	- removed unnecessary ifdef'ing.

        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView sendActivateEvent:]):
        (-[WebBaseNetscapePluginView becomeFirstResponder]):
        (-[WebBaseNetscapePluginView resignFirstResponder]):
        (-[WebBaseNetscapePluginView mouseDown:]):
        (-[WebBaseNetscapePluginView mouseUp:]):
        (-[WebBaseNetscapePluginView mouseEntered:]):
        (-[WebBaseNetscapePluginView mouseExited:]):
        (-[WebBaseNetscapePluginView menuForEvent:]):
        (-[WebBaseNetscapePluginView setWindow]):
        (-[WebBaseNetscapePluginView start]):
        (-[WebBaseNetscapePluginView drawRect:]):

2002-10-01  Ken Kocienda  <kocienda@apple.com>

        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient handleDidFinishLoading:]): Fixed Development build breakage. Call to [response statusCode] 
	now calls the handle's private method to get the status code.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handleDidFinishLoading:]): Ditto.
        (-[WebMainResourceClient handle:didReceiveData:]): Calls new textEncodingName method, replacing call to characterSet.

2002-10-01  Ken Kocienda  <kocienda@apple.com>

        * WebView.subproj/WebLoadProgress.m:
        (-[WebLoadProgress initWithResourceHandle:]): Status code moved from WebResourceResponse
	to WebResourceHandle private API.

2002-10-01  Ken Kocienda  <kocienda@apple.com>

        Changed WebResourceHandle so that the init method no longer starts the
        loading of the request to begin. Added new loadWithDelegate: method which
        is called separatetly from the init method, to start loads.

	All of the changes here update code that depends on WebResourceHandle. The
	changes move the code to the modified API.

        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader startLoading])
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream startLoad])
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge objectLoadedFromCache:size:])
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:])
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _startLoading])

2002-10-01  Chris Blumenberg  <cblu@apple.com>

	Fixed copyright comments.

        * Plugins.subproj/WebBaseNetscapePluginView.h:
        * Plugins.subproj/WebBaseNetscapePluginViewPrivate.h:
        * Plugins.subproj/WebNetscapePluginDocumentView.h:
        * Plugins.subproj/WebNetscapePluginDocumentView.m:
        * Plugins.subproj/WebNetscapePluginEmbeddedView.h:
        * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
        * Plugins.subproj/WebNullPluginView.h:
        * Plugins.subproj/WebNullPluginView.m:
        * Plugins.subproj/WebPlugin.h:
        * Plugins.subproj/WebPlugin.m:
        * Plugins.subproj/WebPluginDatabase.h:
        * Plugins.subproj/WebPluginDatabase.m:
        * Plugins.subproj/WebPluginNullEventSender.h:
        * Plugins.subproj/WebPluginNullEventSender.m:
        * Plugins.subproj/WebPluginStream.h:
        * Plugins.subproj/WebPluginStream.m:
        * Plugins.subproj/npapi.h:
        * Plugins.subproj/npapi.m:

2002-10-01  Ken Kocienda  <kocienda@apple.com>

	Many changes to coincide with API work in WebFoundation. Most of the modifications
	here have to do with changes for the new callback scheme.

        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader handleDidFinishLoading:])
        (-[WebIconLoader handle:willSendRequest:]): New method. A no-op here.
        (-[WebIconLoader handle:didReceiveResponse:]): Ditto.
        * Plugins.subproj/WebBaseNetscapePluginView.m:
        (-[WebBaseNetscapePluginView stop]): Fix for Deployment build breakage. 
        * Plugins.subproj/WebPluginStream.h: Add response ivar.
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream startLoad]): Tweak method name for new API.
        (-[WebNetscapePluginStream receivedData:withHandle:]):
        (-[WebNetscapePluginStream handle:willSendRequest:]): New method. Replaces old redirect callback.
        (-[WebNetscapePluginStream handle:didReceiveResponse:]): New method. Set the response ivar.
        * WebCoreSupport.subproj/WebSubresourceClient.h: Add response ivar.
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient dealloc]): Release response ivar.
        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]): Set the request user agent here.
        (-[WebSubresourceClient handle:willSendRequest:]): New method. Handle like a redirect.
        (-[WebSubresourceClient handle:didReceiveResponse:]): New method. Set the response ivar.
        (-[WebSubresourceClient handle:didReceiveData:]): Tweaks for new WebFoundation API and method names.
        (-[WebSubresourceClient handleDidFinishLoading:]): Ditto.
        (-[WebSubresourceClient handle:didFailLoadingWithError:]): Ditto.
        * WebView.subproj/WebControllerPrivate.m: 
        (-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]): Ditto.
        * WebView.subproj/WebDataSourcePrivate.h: Add _setRequest method.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _startLoading]): Call didStartLoadingWithURL with request URL instead of handle URL.
        (-[WebDataSource _setRequest:]): Add implementation.
        * WebView.subproj/WebLoadProgress.m:
        (-[WebLoadProgress initWithResourceHandle:]): Tweaks for new WebFoundation API and method names.
        * WebView.subproj/WebMainResourceClient.h: Add response ivar.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient initWithDataSource:]): Set user agent on request here.
        (-[WebMainResourceClient dealloc]): Release response ivar.
        (-[WebMainResourceClient didCancelWithHandle:]): Tweaks for new WebFoundation API and method names.
        (-[WebMainResourceClient handleDidFinishLoading:]): Tweaks for new WebFoundation API and method names.
        (-[WebMainResourceClient handle:willSendRequest:]): New method. Handle like a redirect.
        (-[WebMainResourceClient handle:didReceiveResponse:]): New method. Set the response ivar.
        (-[WebMainResourceClient handle:didReceiveData:]): Tweaks for new WebFoundation API and method names.
        (-[WebMainResourceClient handle:didFailLoadingWithError:]): Ditto.


2002-09-30  Chris Blumenberg  <cblu@apple.com>

	A ton o' plugin view clean-up and arch changes. Turned WebPluginView into WebBaseNetscapePluginView. New classes WebNetscapePluginEmbeddedView and WebNetscapePluginDocumentView are subclasses of WebBaseNetscapePluginView. WebNetscapePluginDocumentView ha
ndles non-HTML plug-in content and WebNetscapePluginEmbeddedView is the WebHTMLView subview.

	Found that we leak the world on complex pages with plug-ins such as macromedia.com and marvel.com when closing the window. Still need to figure this out.

        * Plugins.subproj/WebBaseNetscapePluginView.h: Added.
        * Plugins.subproj/WebBaseNetscapePluginView.m: Added.
        (+[WebBaseNetscapePluginView getCarbonEvent:]):
        (-[WebBaseNetscapePluginView getCarbonEvent:]):
        (-[WebBaseNetscapePluginView modifiersForEvent:]):
        (-[WebBaseNetscapePluginView getCarbonEvent:withEvent:]):
        (-[WebBaseNetscapePluginView keyMessageForEvent:]):
        (-[WebBaseNetscapePluginView sendEvent:]):
        (-[WebBaseNetscapePluginView sendActivateEvent:]):
        (-[WebBaseNetscapePluginView sendUpdateEvent]):
        (-[WebBaseNetscapePluginView acceptsFirstResponder]):
        (-[WebBaseNetscapePluginView becomeFirstResponder]):
        (-[WebBaseNetscapePluginView resignFirstResponder]):
        (-[WebBaseNetscapePluginView mouseDown:]):
        (-[WebBaseNetscapePluginView mouseUp:]):
        (-[WebBaseNetscapePluginView mouseEntered:]):
        (-[WebBaseNetscapePluginView mouseExited:]):
        (-[WebBaseNetscapePluginView keyUp:]):
        (-[WebBaseNetscapePluginView keyDown:]):
        (-[WebBaseNetscapePluginView isInResponderChain]):
        (-[WebBaseNetscapePluginView performKeyEquivalent:]):
        (-[WebBaseNetscapePluginView menuForEvent:]):
        (-[WebBaseNetscapePluginView setUpWindowAndPort]):
        (-[WebBaseNetscapePluginView setWindow]):
        (-[WebBaseNetscapePluginView removeTrackingRect]):
        (-[WebBaseNetscapePluginView resetTrackingRect]):
        (-[WebBaseNetscapePluginView start]):
        (-[WebBaseNetscapePluginView stop]):
        (-[WebBaseNetscapePluginView dataSource]):
        (-[WebBaseNetscapePluginView webFrame]):
        (-[WebBaseNetscapePluginView controller]):
        (-[WebBaseNetscapePluginView plugin]):
        (-[WebBaseNetscapePluginView setMIMEType:]):
        (-[WebBaseNetscapePluginView setBaseURL:]):
        (-[WebBaseNetscapePluginView setArguments:]):
        (-[WebBaseNetscapePluginView setMode:]):
        (-[WebBaseNetscapePluginView initWithFrame:]):
        (-[WebBaseNetscapePluginView dealloc]):
        (-[WebBaseNetscapePluginView drawRect:]):
        (-[WebBaseNetscapePluginView isFlipped]):
        (-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
        (-[WebBaseNetscapePluginView viewDidMoveToWindow]):
        (-[WebBaseNetscapePluginView viewHasMoved:]):
        (-[WebBaseNetscapePluginView windowWillClose:]):
        (-[WebBaseNetscapePluginView windowBecameKey:]):
        (-[WebBaseNetscapePluginView windowResignedKey:]):
        (-[WebBaseNetscapePluginView defaultsHaveChanged:]):
        (-[WebBaseNetscapePluginView frameStateChanged:]):
        (-[WebBaseNetscapePluginView pluginInstance]):
        (-[WebBaseNetscapePluginView pluginURLFromCString:]):
        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
        (-[WebBaseNetscapePluginView getURLNotify:target:notifyData:]):
        (-[WebBaseNetscapePluginView getURL:target:]):
        (-[WebBaseNetscapePluginView postURLNotify:target:len:buf:file:notifyData:]):
        (-[WebBaseNetscapePluginView postURL:target:len:buf:file:]):
        (-[WebBaseNetscapePluginView newStream:target:stream:]):
        (-[WebBaseNetscapePluginView write:len:buffer:]):
        (-[WebBaseNetscapePluginView destroyStream:reason:]):
        (-[WebBaseNetscapePluginView status:]):
        (-[WebBaseNetscapePluginView invalidateRect:]):
        (-[WebBaseNetscapePluginView invalidateRegion:]):
        (-[WebBaseNetscapePluginView forceRedraw]):
        * Plugins.subproj/WebBaseNetscapePluginViewPrivate.h: Added.
        * Plugins.subproj/WebNetscapePluginDocumentView.h: Added.
        * Plugins.subproj/WebNetscapePluginDocumentView.m: Added.
        (-[WebNetscapePluginDocumentView initWithFrame:]):
        (-[WebNetscapePluginDocumentView dealloc]):
        (-[WebNetscapePluginDocumentView drawRect:]):
        (-[WebNetscapePluginDocumentView dataSource]):
        (-[WebNetscapePluginDocumentView setDataSource:]):
        (-[WebNetscapePluginDocumentView dataSourceUpdated:]):
        (-[WebNetscapePluginDocumentView setNeedsLayout:]):
        (-[WebNetscapePluginDocumentView layout]):
        * Plugins.subproj/WebNetscapePluginEmbeddedView.h: Added.
        * Plugins.subproj/WebNetscapePluginEmbeddedView.m: Added.
        (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:mime:arguments:]):
        (-[WebNetscapePluginEmbeddedView dealloc]):
        (-[WebNetscapePluginEmbeddedView viewDidMoveToWindow]):
        (-[WebNetscapePluginEmbeddedView start]):
        (-[WebNetscapePluginEmbeddedView dataSource]):
        * Plugins.subproj/WebNetscapePluginViewPrivate.h: Removed.
        * Plugins.subproj/WebPluginDatabase.m:
        (-[WebNetscapePluginDatabase init]):
        * Plugins.subproj/WebPluginNullEventSender.h:
        * Plugins.subproj/WebPluginNullEventSender.m:
        (-[WebNetscapePluginNullEventSender initWithPluginView:]):
        (-[WebNetscapePluginNullEventSender sendNullEvents]):
        * Plugins.subproj/WebPluginStream.h:
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream getFunctionPointersFromPluginView:]):
        (-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:]):
        (-[WebNetscapePluginStream dealloc]):
        (-[WebNetscapePluginStream startLoad]):
        (-[WebNetscapePluginStream receivedData:withDataSource:]):
        (-[WebNetscapePluginStream handleWillUseUserAgent:forURL:]):
        (-[WebNetscapePluginStream handle:didReceiveData:]):
        (-[WebNetscapePluginStream handleDidFinishLoading:]):
        (-[WebNetscapePluginStream cancel]):
        (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
        (-[WebNetscapePluginStream handleDidRedirect:toURL:]):
        * Plugins.subproj/WebPluginView.h: Removed.
        * Plugins.subproj/WebPluginView.m: Removed.
        * Plugins.subproj/npapi.m:
        (NPN_GetURLNotify):
        (NPN_GetURL):
        (NPN_PostURLNotify):
        (NPN_PostURL):
        (NPN_NewStream):
        (NPN_Write):
        (NPN_DestroyStream):
        (NPN_Status):
        (NPN_InvalidateRect):
        (NPN_InvalidateRegion):
        (NPN_ForceRedraw):
        * WebCoreSupport.subproj/WebViewFactory.m:
        (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
        (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[NSView _web_stopIfPluginView]):

2002-09-30  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebDataSource.m: (-[WebDataSource initWithRequest:]):
	Remove the ill-advised "don't even create a WebDataSource if WebResourceHandle
	can't handle this request" code.

        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading]):
	Rearrange checks so we won't get confused if we can't create a handle.

2002-09-30  Darin Adler  <darin@apple.com>

        * English.lproj/StringsNotToBeLocalized.txt: Added.

2002-09-30  Darin Adler  <darin@apple.com>

	- fixed crashing part of 3063517 -- crash loading .png in separate window

        * Plugins.subproj/WebPluginView.m:
        (-[WebNetscapePluginView start]): Don't try to start if the NPP_New is 0.
	This indicates the the plugin hasn't been loaded.

2002-09-30  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setLoading:]):
	Remove extra quotes in use of ASSERT_ARG.

2002-09-29  Darin Adler  <darin@apple.com>

        * Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase _iconForFileURL:withSize:]):
	Don't be case sensitive about filename extensions.

        * Misc.subproj/WebDownloadHandler.m:
        * Misc.subproj/WebIconLoader.m:
        * Plugins.subproj/WebPluginStream.m:
        * WebView.subproj/WebDataSource.m:
        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        * WebView.subproj/WebFrame.m:
        * WebView.subproj/WebFramePrivate.m:
        * WebView.subproj/WebView.m:
	Don't use WebFoundation.h -- faster building to just import what we really use.

2002-09-29  Chris Blumenberg  <cblu@apple.com>

	Fixed: 2978258 - quake3arena.com sends me to the flash=false site
	The page has a flash plugin that once loaded, requests the flash=true page. If the plugin doesn't load, the meta refresh tag to the flash=false page fires after 3 seconds. This is how this site's flash detection works.

	The reason this doesn't work for us is because the flash movie is at the bottom of the page. Plugins don't start until the initial drawRect. Since the movie is at the bottom of the page and out of site, the plugin never gets the drawRect and thus, never 
starts. We now start plug-ins when they are added to the window.

	Fixed: 3062224 - context menu includes "Download Item to Disk" for mailto links

	- Fixed click then click and drag causes crash.

        * Plugins.subproj/WebPluginView.m:
        (-[WebNetscapePluginView drawRect:]): don't start plug-in here
        (-[WebNetscapePluginView viewDidMoveToWindow]): start it here
        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultContextMenuDelegate contextMenuItemsForElement:defaultMenuItems:]): don't provide "Download Link To Disk" and "Open Link In New Window" items for URLs we cant handle.
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): clean-up
        (-[WebHTMLView mouseDragged:]): Don't allow drag if the frame has a provisional data source because this view may be released and the drag callbacks might reference this released view.

2002-09-28  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebDataSource.m: (-[WebDataSource initWithRequest:]):
	Catch a request that we can't use here instead of failing later.

        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading]):
	Added an assert so the failure was less confusing; good idea to leave it in.

2002-09-28  Chris Blumenberg  <cblu@apple.com>

	Support for latest Flash plug-in. It requests a javascript URL for every plug-in instance.
	Until javascript URLs work, we return an error to the plug-in. 

	Fixed: 3035582 - flash animations don't work after upgrading flash
	Fixed: 3021936 - links in flash at foggypetronasracing.com doesn't work

        * Plugins.subproj/WebPluginStream.h:
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:]):
	Make the request here and return nil if we can't create a handle with it.
        (-[WebNetscapePluginStream dealloc]): release the request
        (-[WebNetscapePluginStream startLoad]): use the request when creating the handle

2002-09-28  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge setNeedsLayout]): Added.

2002-09-27  Chris Blumenberg  <cblu@apple.com>

	Fixed KJS crasher caused by nil plug-in returned from WebPlugin.
	Got the RealPlayer plug-in loaded, nothing playing yet.

        * Plugins.subproj/WebPlugin.m:
        (-[WebNetscapePlugin getPluginInfo]): check for nil plug-in names/descriptions
        (-[WebNetscapePlugin stringByResolvingSymlinksAndAliasesInPath:]): new, resolves old-style aliases
        (-[WebNetscapePlugin initWithPath:]): call stringByResolvingSymlinksAndAliasesInPath

2002-09-27  Richard Williamson   <rjw@apple.com>

        Fix 3058315:  crash in WebHTMLRepresentation receivedData:withDataSource
        http://www.u2.com/lite/ does some whacky things with its framset's onLoad
        handler.  The fix ensures that data isn't sent to the bridge once
        the bridge has been dealloced.
        
        * WebKit.pbproj/project.pbxproj: Nothing changed.  PB dorkiness.
        * WebView.subproj/WebHTMLRepresentation.m:
        (-[WebHTMLRepresentation receivedData:withDataSource:]):

2002-09-27  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3056559 - QT plugin doesn't load
	Fixed: 3042850 - Enable Java by default

	Cleaned up WebPlugin and WebPluginDatabase.

        * Plugins.subproj/WebPlugin.h:
        * Plugins.subproj/WebPlugin.m:
        (-[WebNetscapePlugin openResourceFile]):
        (-[WebNetscapePlugin closeResourceFile:]):
        (-[WebNetscapePlugin stringForStringListID:andIndex:]):
        (-[WebNetscapePlugin getPluginInfo]):
        (-[WebNetscapePlugin initWithPath:]):
        (-[WebNetscapePlugin load]):
        (-[WebNetscapePlugin unload]):
        (-[WebNetscapePlugin MIMEToExtensionsDictionary]):
        (-[WebNetscapePlugin extensionToMIMEDictionary]):
        (-[WebNetscapePlugin MIMEToDescriptionDictionary]):
        (-[WebNetscapePlugin description]):
        * Plugins.subproj/WebPluginDatabase.h:
        * Plugins.subproj/WebPluginDatabase.m:
        (-[WebNetscapePluginDatabase pluginForMIMEType:]):
        (-[WebNetscapePluginDatabase pluginForExtension:]):
        (-[WebNetscapePluginDatabase pluginForFilename:]):
        (-[WebNetscapePluginDatabase MIMETypes]):
        (-[WebNetscapePluginDatabase init]):
        * Plugins.subproj/WebPluginView.m:
        (-[WebNetscapePluginView setDataSource:]):
        * WebCoreSupport.subproj/WebViewFactory.m:
        (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
        (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
        * WebView.subproj/WebPreferences.m:
        (+[WebPreferences load]): Enable Java by default

2002-09-27  Richard Williamson   <rjw@apple.com>

        Fixed 3060158:  REGRESSION: iframes added to session history
        Also moved setting title in history to WebKit.
        
        * History.subproj/WebHistory.h:
        * History.subproj/WebHistory.m:
        (+[WebHistory sharedHistory]):
        (+[WebHistory webHistoryWithFile:]):
        (-[WebHistory addEntryForURL:]):
        (-[WebHistory addEntries:]):
        * History.subproj/WebHistoryPrivate.h:
        * History.subproj/WebHistoryPrivate.m:
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge requestedURL]):
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _setTitle:]):
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]):
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]):

2002-09-26  Richard Williamson   <rjw@apple.com>

        More twiddling.  Changed the color of the drag labels to
        match the favorites bar.
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]):

2002-09-27  Chris Blumenberg  <cblu@apple.com>

	Added support for dragging links the the dock.
	Created new pasteboard types WebURLPboardType WebURLNamePboardType that the dock requires.

        * Misc.subproj/WebNSPasteboardExtras.h:
        * Misc.subproj/WebNSPasteboardExtras.m:
        (+[NSPasteboard initialize]): set WebURLPboardType and WebURLNamePboardType
        (-[NSPasteboard _web_writeURL:andTitle:withOwner:]): use WebURLPboardType and WebURLNamePboardType
        * WebKit.exp: export WebURLPboardType and WebURLNamePboardType

2002-09-27  Maciej Stachowiak  <mjs@apple.com>

        * Panels.subproj/WebAuthenticationPanel.m:
        (-[WebAuthenticationPanel setUpForRequest:]):
        (-[WebAuthenticationPanel runAsModalDialogWithRequest:]):
        (-[WebAuthenticationPanel sheetDidEnd:returnCode:contextInfo:]):
        * Panels.subproj/WebPanelAuthenticationHandler.h:
        * Panels.subproj/WebPanelAuthenticationHandler.m:
        (-[WebPanelAuthenticationHandler isReadyToStartAuthentication:]):
        (-[WebPanelAuthenticationHandler startAuthentication:]):
        (-[WebPanelAuthenticationHandler _authenticationDoneWithRequest:result:]):

2002-09-26  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge receivedData:withDataSource:]): Use NSString for encoding.
        * WebView.subproj/WebController.h: Update names to use separate boolean
	for user agent and strings for text encodings instead of CFStringEncoding.
        * WebView.subproj/WebController.m:
        (-[WebController setCustomUserAgent:]): Name change.
        (-[WebController resetUserAgent]): Added.
        (-[WebController hasCustomUserAgent]): Added.
        (-[WebController customUserAgent]): Name change.
        (-[WebController setCustomTextEncodingName:]): Take NSString.
        (-[WebController resetTextEncoding]): Update for NSString.
        (-[WebController _mainFrameOverrideEncoding]): Ditto.
        (-[WebController hasCustomTextEncoding]): Ditto.
        (-[WebController customTextEncodingName]): Return NSString.

        * WebView.subproj/WebDataSourcePrivate.h: Use NSString instead of
	CFStringEncoding.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate init]): No need to init.
        (-[WebDataSource _setContentType:]): Copy, don't retain.
        (-[WebDataSource _setEncoding:]): Copy, don't retain.
        (-[WebDataSource _setOverrideEncoding:]): Use NSString.
        (-[WebDataSource _overrideEncoding]): Use NSString.

        * WebView.subproj/WebFramePrivate.h: Use NSString.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]): Use NSString.

        * WebView.subproj/WebPreferences.h: Use NSString instead of
	CFStringEncoding.
        * WebView.subproj/WebPreferences.m:
        (+[WebPreferences load]): Use NSString.
        (-[WebPreferences defaultTextEncodingName]): Use NSString.
        (-[WebPreferences setDefaultTextEncodingName:]): Use NSString.

2002-09-26  Chris Blumenberg  <cblu@apple.com>

	Made WebTextView super-private.

        * WebKit.pbproj/project.pbxproj:

2002-09-26  Richard Williamson   <rjw@apple.com>

        Use a rectangle with rounded corners for dragged label.
        Put a subtle shadow behind text in label.
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]):

2002-09-26  Chris Blumenberg  <cblu@apple.com>

	- When dragging an image, use the image itself for the drag image
	- Support promised file and image data drag types for dragged images.

        * Misc.subproj/WebNSImageExtras.h: Added.
        * Misc.subproj/WebNSImageExtras.m: Added.
        (-[NSImage _web_scaleToMaxSize:]): new, scales an image is greater than max
        (-[NSImage _web_dissolveToFraction:]): new, dissolves image in place
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebController.h: Added WebElementImageLocationKey to the element dictionary
        * WebView.subproj/WebController.m: ditto
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): subclassed for only for image drags
        (-[WebHTMLView mouseDragged:]): use the promised file api again.
        (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): use the retained element dictionary instead of the dragged URL which I deleted.
        * WebView.subproj/WebHTMLViewPrivate.h:

=== Alexander-25 ===

2002-09-25  Richard Williamson   <rjw@apple.com>

        API tweaks.
        * Misc.subproj/WebKit.h:
        Added headers.
        
        * Misc.subproj/WebKitErrors.h:
        Removed #defines.
        
        * WebView.subproj/WebDataSource.h:
        * WebView.subproj/WebDataSource.m:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _startLoading]):
        (-[WebDataSource _loadIcon]):
        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultContextMenuDelegate contextMenuItemsForElement:defaultMenuItems:]):
        Removed isMainDocument.
        
        Moved errors string #defines here.
        * WebView.subproj/WebView.m:

2002-09-25  John Sullivan  <sullivan@apple.com>

	- fixed 3060773 -- Wrong title proposed when image link 
	dropped on favorites bar

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]): Claim the pasteboard (via
	declareTypes:) before putting data on it.

2002-09-25  Richard Williamson   <rjw@apple.com>

        API and documentation tweaks.
        
        WebDocumentDragSettings:  canDrag -> acceptsDrag
        WebDataSource:  removed originalURL
        WebStandardPanels:  use -> uses
        
        * History.subproj/WebBackForwardList.h:
        * Misc.subproj/WebDownloadHandler.m:
        (-[WebDownloadHandler initWithDataSource:]):
        * Panels.subproj/WebStandardPanels.h:
        * Panels.subproj/WebStandardPanels.m:
        (-[WebStandardPanels setUsesStandardAuthenticationPanel:]):
        (-[WebStandardPanels usesStandardAuthenticationPanel]):
        * Plugins.subproj/WebPluginView.m:
        (-[WebNetscapePluginView frameStateChanged:]):
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient cancel]):
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebDataSource.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _commitIfReady]):
        * WebView.subproj/WebDocument.h:
        * WebView.subproj/WebFrame.m:
        (-[WebFrame setProvisionalDataSource:]):
        (-[WebFrame startLoading]):
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]):
        (-[WebFrame _setState:]):
        (-[WebFrame _goToItem:withFrameLoadType:]):
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView setAcceptsDrags:]):
        (-[WebHTMLView acceptsDrags]):
        (-[WebHTMLView setAcceptsDrops:]):
        (-[WebHTMLView acceptsDrops]):
        * WebView.subproj/WebImageView.m:
        (-[WebImageView setAcceptsDrags:]):
        (-[WebImageView acceptsDrags]):
        (-[WebImageView setAcceptsDrops:]):
        (-[WebImageView acceptsDrops]):
        * WebView.subproj/WebLoadProgress.h:
        * WebView.subproj/WebLocationChangeDelegate.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient didCancelWithHandle:]):
        * WebView.subproj/WebView.h:

2002-09-25  Ken Kocienda  <kocienda@apple.com>

        Changes to move the WebResourceHandle API closer to the
        specified design. This includes:

        - Removed loadInBackground method from the public interface.
        - Start asynchronous loading in WebResourceHandle init method. This required some
	  code reorganization in callers.
        - Remove loadInForeground: from WebResourceHandle interface.
        - Move WebResourceHandle callback deferral methods to SPI header file.
        - Change name of WebResourceHandle cancelLoadInBackground method to cancel.

        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader startLoading])
        (-[WebIconLoader stopLoading])
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream startLoad])
        (-[WebNetscapePluginStream cancel])
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:])
        (-[WebSubresourceClient cancel])
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _startLoading])
        (-[WebDataSource _addSubresourceClient:])
        (-[WebDataSource _stopLoading])
        (-[WebDataSource _defersCallbacksChanged])
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:didReceiveData:])

2002-09-25  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3050665 - REGRESSION: mp3 audio loads and plays, but no progress or play control is visible

        * Plugins.subproj/WebPluginView.h:
        * Plugins.subproj/WebPluginView.m:
        (-[WebNetscapePluginView setNeedsLayout:]):
        (-[WebNetscapePluginView layout]):
        (-[WebNetscapePluginView drawRect:]):

2002-09-25  Darin Adler  <darin@apple.com>

	Make the "set aside subviews" logic stronger so it can handle a display
	while inside drawRect. But note, this recursive display is most likely
	the cause of the redrawing problems we have while resizing, like bug 2969367.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView drawRect:]): Restore views and then set them aside again, but don't
	leave the "views set aside" boolean set.
        * WebView.subproj/WebHTMLViewPrivate.h: Add private _setAsideSubviews and _restoreSubviews methods.
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _setAsideSubviews]): Added.
        (-[WebHTMLView _restoreSubviews]): Added.
        (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
	Use the new _setAsideSubviews and _restoreSubviews methods.
        (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]): Ditto.

2002-09-25  Ken Kocienda  <kocienda@apple.com>

        Removed this method from WebResourceHandle:

        +(BOOL)canInitWithURL:(NSURL *)theURL;

        replaced with:

        +(BOOL)canInitWithRequest:(WebResourceRequest *)request;

	Callers have been updated to reflect the change.

        * WebView.subproj/WebDefaultPolicyDelegate.m:
        (+[WebDefaultPolicyDelegate defaultURLPolicyForURL:])
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _shouldShowURL:])

2002-09-25  Ken Kocienda  <kocienda@apple.com>

        More moves to the new WebResourceHandleDelegate API.   

        This change moves all WebResourceHandleDelegate implementors to:

        -(void)handle:(WebResourceHandle *)handle didReceiveData:(NSData *)data;

        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader handle:didReceiveData:])
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream handle:didReceiveData:])
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient handle:didReceiveData:])
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:didReceiveData:])

2002-09-25  Ken Kocienda  <kocienda@apple.com>

        Moving to the new WebResourceHandleDelegate API.

        This change moves all WebResourceHandleDelegate implementors to:

        - (void)handle:(WebResourceHandle *)handle didFailLoadingWithError:(WebError *)result;

        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader handle:didFailLoadingWithError:])
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream handle:didFailLoadingWithError:])
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient handle:didFailLoadingWithError:])
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handle:didFailLoadingWithError:])

2002-09-25  Ken Kocienda  <kocienda@apple.com>

        Begin change from WebResourceClient to WebResourceHandleDelegate.
        In this step, I have just changed the name of the protocol; the
        protocol interface is the same. 

	I made other cosmetic changes to variable names and such.

        * Misc.subproj/WebIconLoader.h:
        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader startLoading])
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream startLoad])
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge objectLoadedFromCache:size:])
        * WebCoreSupport.subproj/WebSubresourceClient.h:
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:])
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _startLoading])
        * WebView.subproj/WebMainResourceClient.h:

2002-09-25  Maciej Stachowiak  <mjs@apple.com>

	- fixed 2854536 - New cookie policy: "accept cookies only from the
	same domain as the main page"
	
        * WebCoreSupport.subproj/WebCookieAdapter.h:
        * WebCoreSupport.subproj/WebCookieAdapter.m:
        (-[WebCookieAdapter setCookies:forURL:policyBaseURL:]):
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
        (-[WebSubresourceClient handleDidRedirect:toURL:]):
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _startLoading]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handleDidRedirect:toURL:]):

2002-09-24  Richard Williamson   <rjw@apple.com>

        More documentation tweaks.
        
        * History.subproj/WebHistory.h:
        * History.subproj/WebHistoryItem.h:
        * WebView.subproj/WebContextMenuDelegate.h:
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebLocationChangeDelegate.h:
        * WebView.subproj/WebResourceProgressDelegate.h:

2002-09-24  Darin Adler  <darin@apple.com>

	- fixed 3059513 -- REGRESSION: Scrolling to fragment doesn't work

	Turns out it was better to just put the extra smarts into the clip view
	that we are already creating. Making WebHTMLView be a second clip view
	was silly and broke things.

        * WebView.subproj/WebView.m: (-[WebView initWithFrame:]): Create a WebClipView
	and use it as the content view rather than the NSClipView created by default.

        * WebKit.pbproj/project.pbxproj: Added WebClipView.
        * WebView.subproj/WebClipView.h: Added.
        * WebView.subproj/WebClipView.m: Added.

        * WebView.subproj/WebHTMLView.h: Don't be a subclass of NSClipView any more.
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView drawRect:]): Call setAdditionalClip and resetAdditionalClip on
	the clip view.

        * WebView.subproj/WebHTMLViewPrivate.h: Remove inDrawRect and drawRect.
        * WebView.subproj/WebHTMLViewPrivate.m: Remove visibleRect override. This is
	now in WebClipView.

2002-09-24  Chris Blumenberg  <cblu@apple.com>

	More documentation changes.

        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebDefaultContextMenuDelegate.h:
        * WebView.subproj/WebDocument.h:

2002-09-24  Richard Williamson   <rjw@apple.com>

        Added FIXME note about unresolved issue with CFStringEncoding/NSStringEncoding.
        
        * WebView.subproj/WebController.h:

2002-09-24  Richard Williamson   <rjw@apple.com>

        Documentation for WebDataSource and WebFrame.
        
        * WebView.subproj/WebDataSource.h:
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource frameExists:]):
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource addFrame:]):
        * WebView.subproj/WebFrame.h:

2002-09-24  Darin Adler  <darin@apple.com>

	- fixed 3059266 -- REGRESSION: clicking in web view when location field is
	focused does not focus web view

        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView needsPanelToBecomeKey]):
	Must override this to return YES, because NSClipView makes it return NO
	even though we accept the first responder.

2002-09-24  John Sullivan  <sullivan@apple.com>

	- fixed 3056158 -- REGRESSION: Page up/down should scroll one 
	whole contentView minus at least one readable line of text

	This was broken a while back when the keyboard scrolling code
	migrated into WebKit.

        * WebView.subproj/WebViewPrivate.m:
        (-[WebView _verticalKeyboardScrollAmount]),
        (-[WebView _horizontalKeyboardScrollAmount]):
	New private methods, return one arrow key's worth of scrolling.
        (-[WebView _scrollLineVertically:]),
        (-[WebView _scrollLineHorizontally:]):
	Now use the broken-out methods.
        (-[WebView _pageVertically:]),
        (-[WebView _pageHorizontally:]):
	overlap by one arrow key's worth of scrolling instead of the
	teensy-weensy one click's worth.

2002-09-24  Chris Blumenberg  <cblu@apple.com>

	Documentation for WebHTMLView

        * WebView.subproj/WebHTMLView.h:

2002-09-24  Richard Williamson   <rjw@apple.com>

        Documentation changes.  Removal of imports from
        some headers required modification of .m.
        
        * Plugins.subproj/WebNullPluginView.m:
        * WebCoreSupport.subproj/WebBridge.m:
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        * WebView.subproj/WebDataSource.h:
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        * WebView.subproj/WebDefaultPolicyDelegate.h:
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        (+[WebDefaultPolicyDelegate defaultURLPolicyForURL:]):
        (-[WebDefaultPolicyDelegate URLPolicyForURL:inFrame:]):
        * WebView.subproj/WebFramePrivate.m:
        * WebView.subproj/WebHTMLViewPrivate.m:

2002-09-24  Chris Blumenberg  <cblu@apple.com>

	Renamed element info keys to WebElement* instead of WebContextMenuElement*
	Added WebKit API documentation

        * Plugins.subproj/WebPlugin.m:	
        (-[WebNetscapePlugin load]): clean-up
        * WebKit.exp:
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebContextMenuDelegate.h:
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        * WebView.subproj/WebControllerPolicyDelegate.h:
        * WebView.subproj/WebDefaultContextMenuDelegate.h:
        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultContextMenuDelegate contextMenuItemsForElement:defaultMenuItems:]):
        (-[WebDefaultContextMenuDelegate openNewWindowWithURL:referrer:]):
        (-[WebDefaultContextMenuDelegate downloadURL:]):
        (-[WebDefaultContextMenuDelegate openLinkInNewWindow:]):
        (-[WebDefaultContextMenuDelegate downloadLinkToDisk:]):
        (-[WebDefaultContextMenuDelegate copyLinkToClipboard:]):
        (-[WebDefaultContextMenuDelegate openImageInNewWindow:]):
        (-[WebDefaultContextMenuDelegate downloadImageToDisk:]):
        (-[WebDefaultContextMenuDelegate copyImageToClipboard:]):
        (-[WebDefaultContextMenuDelegate openFrameInNewWindow:]):
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]):
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _elementAtPoint:]):

2002-09-24  Darin Adler  <darin@apple.com>

	Cleaned up some loose ends from adding setNeedsLayout to the WebDocumentView
	protocol. Was causing exceptions.

        * Plugins.subproj/WebPluginView.m: (-[WebNetscapePluginView setNeedsLayout:]):
        * WebView.subproj/WebTextView.m: (-[WebTextView setNeedsLayout:]):
	Added missing stubs.

        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge setNeedsReapplyStyles]):
	Removed unneeded cast.
        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _isLoadComplete]): Remove an
	unneeded cast and call to isDocumentHTML.
        * WebView.subproj/WebHTMLView.h: No need to re-declare setNeedsLayout.
        * WebView.subproj/WebView.m: (-[WebView setFrame:]): Get rid of unneeded check
	of isDocumentHTML.

2002-09-24  Darin Adler  <darin@apple.com>

	- fixed 3057383 -- focus rectangles are being drawn multiple times
	- fixed 3051025 -- focus ring on password field gets darker and darker

	To make focus rings clip too, we have to do more than just set the clip.
	We also have to set the visible rectangle to make clipping happen, and we
	need to be a subclass of NSClipView so that the focus ring drawing code will
	consult us rather than one of our superviews.

        * WebView.subproj/WebHTMLView.h: Be a subclass of NSClipView.
        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]): Set a inDrawRect
	flag, and a drawRect rectangle. This tells us to clip to this rectangle.
	what we need to clip to.
        * WebView.subproj/WebHTMLViewPrivate.h: Added inDrawRect and drawRect.
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView visibleRect]): Clip the visible rect based on the drawRect while
	inDrawRect is set.

2002-09-23  Chris Blumenberg  <cblu@apple.com>

	Factored URL pasteboard initialization to 1 place.
	Fixed: 3048924 - regression: drag & drop broken for initial empty page
	Fixed: 3045997 - Dragging a link from one Alex window to another one doesn't work

        * Misc.subproj/WebNSPasteboardExtras.h:
        * Misc.subproj/WebNSPasteboardExtras.m:
        (-[NSPasteboard _web_writeURL:andTitle:withOwner:]): new
        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultContextMenuDelegate copyLinkToClipboard:]): call -[NSPasteboard _web_writeURL:andTitle:withOwner:]
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]): call -[NSPasteboard _web_writeURL:andTitle:withOwner:]
        * WebView.subproj/WebView.m:
        (-[WebView draggingEntered:]): handle nil cases

2002-09-23  Maciej Stachowiak  <mjs@apple.com>

	Added documentation for these two delegate protocols.
	
        * WebView.subproj/WebLocationChangeDelegate.h:
        * WebView.subproj/WebResourceProgressDelegate.h:

2002-09-23  Richard Williamson   <rjw@apple.com>

        Made WebIconLoader and WebIconDatabase SPI.
        
        * WebKit.pbproj/project.pbxproj:

2002-09-23  Richard Williamson   <rjw@apple.com>

        WebContextMenuHandler becomes WebContextMenuDelegate
        WebControllerPolicyHandler becomes WebControllerPolicyDelegate
        WebLocationChangeHandler becomes WebLocationChangeDelegate
        WebResourceProgressHandler becomes WebResourceProgressDelegate
        WebWindowContext becomes WebWindowOperationsDelegate

        * Misc.subproj/WebDownloadHandler.m:
        * Plugins.subproj/WebNullPluginView.m:
        (-[WebNullPluginView drawRect:]):
        * Plugins.subproj/WebPluginView.m:
        (-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:]):
        (-[WebNetscapePluginView status:]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge openNewWindowWithURL:referrer:frameName:]):
        (-[WebBridge areToolbarsVisible]):
        (-[WebBridge setToolbarsVisible:]):
        (-[WebBridge isStatusBarVisible]):
        (-[WebBridge setStatusBarVisible:]):
        (-[WebBridge setWindowFrame:]):
        (-[WebBridge window]):
        (-[WebBridge setStatusText:]):
        (-[WebBridge reportClientRedirectTo:delay:fireDate:]):
        (-[WebBridge reportClientRedirectCancelled]):
        * WebKit.exp:
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebContextMenuDelegate.h:
        * WebView.subproj/WebContextMenuHandler.h: Removed.
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (-[WebController setWindowOperationsDelegate:]):
        (-[WebController windowOperationsDelegate]):
        (-[WebController setResourceProgressDelegate:]):
        (-[WebController resourceProgressDelegate]):
        (-[WebController setDownloadProgressDelegate:]):
        (-[WebController downloadProgressDelegate]):
        (-[WebController setContextMenuDelegate:]):
        (-[WebController contextMenuDelegate]):
        (-[WebController setPolicyDelegate:]):
        (-[WebController policyDelegate]):
        (-[WebController setLocationChangeDelegate:]):
        (-[WebController locationChangeDelegate]):
        * WebView.subproj/WebControllerPolicyDelegate.m: Added.
        (-[WebPolicyPrivate dealloc]):
        (-[WebPolicy _setPolicyAction:]):
        (-[WebPolicy policyAction]):
        (-[WebPolicy path]):
        (-[WebPolicy URL]):
        (-[WebPolicy _setPath:]):
        (-[WebPolicy dealloc]):
        (+[WebURLPolicy webPolicyWithURLAction:]):
        (+[WebFileURLPolicy webPolicyWithFileAction:]):
        (+[WebContentPolicy webPolicyWithContentAction:andPath:]):
        * WebView.subproj/WebControllerPolicyDelegatePrivate.h:
        * WebView.subproj/WebControllerPolicyHandler.h: Removed.
        * WebView.subproj/WebControllerPolicyHandler.m: Removed.
        * WebView.subproj/WebControllerPolicyHandlerPrivate.h: Removed.
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebControllerPrivate init]):
        (-[WebControllerPrivate dealloc]):
        (-[WebController _defaultContextMenuDelegate]):
        (-[WebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
        (-[WebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
        (-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
        (-[WebController _mainReceivedError:forResourceHandle:partialProgress:fromDataSource:]):
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _startLoading]):
        (-[WebDataSource _setTitle:]):
        (-[WebDataSource _setURL:]):
        (-[WebDataSource _loadIcon]):
        * WebView.subproj/WebDefaultContextMenuDelegate.h:
        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultContextMenuDelegate openNewWindowWithURL:referrer:]):
        (-[WebDefaultContextMenuDelegate downloadURL:]):
        * WebView.subproj/WebDefaultContextMenuHandler.h: Removed.
        * WebView.subproj/WebDefaultContextMenuHandler.m: Removed.
        * WebView.subproj/WebDefaultPolicyDelegate.h:
        * WebView.subproj/WebDefaultPolicyDelegate.m:
        * WebView.subproj/WebDefaultPolicyHandler.h: Removed.
        * WebView.subproj/WebDefaultPolicyHandler.m: Removed.
        * WebView.subproj/WebDocument.h:
        * WebView.subproj/WebFrame.m:
        (-[WebFrame setProvisionalDataSource:]):
        (-[WebFrame frameNamed:]):
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _timedLayout:]):
        (-[WebFrame _transitionToCommitted]):
        (-[WebFrame _isLoadComplete]):
        (-[WebFrame handleUnimplementablePolicy:errorCode:forURL:]):
        (-[WebFrame _shouldShowURL:]):
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView menuForEvent:]):
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _continueAfterClickPolicyForEvent:]):
        * WebView.subproj/WebImageView.m:
        (-[WebImageView setNeedsLayout:]):
        * WebView.subproj/WebLocationChangeDelegate.h:
        * WebView.subproj/WebLocationChangeDelegate.m:
        * WebView.subproj/WebLocationChangeHandler.h: Removed.
        * WebView.subproj/WebLocationChangeHandler.m: Removed.
        * WebView.subproj/WebMainResourceClient.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient dealloc]):
        (-[WebMainResourceClient receivedProgressWithHandle:complete:]):
        (-[WebMainResourceClient receivedError:forHandle:]):
        (-[WebMainResourceClient handleDidReceiveData:data:]):
        * WebView.subproj/WebResourceProgressDelegate.h:
        * WebView.subproj/WebResourceProgressHandler.h: Removed.
        * WebView.subproj/WebView.m:
        (-[WebView window]):
        * WebView.subproj/WebWindowContext.h: Removed.
        * WebView.subproj/WebWindowOperationsDelegate.h:

2002-09-23  Darin Adler  <darin@apple.com>

	- fixed 3052543 -- iframes don't work with z-index
	- fixed 3057382 -- code to prevent subviews from drawing not working
	perfectly for subframes

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView isOpaque]): Change this back to always return YES. We handle
	this issue at another level now.
        (-[WebHTMLView drawRect:]): Clip to the passed-in rect. This was the big change
	that fixed most of the trouble.

        * WebView.subproj/WebHTMLViewPrivate.h: Remove _isMainFrame.
        * WebView.subproj/WebHTMLViewPrivate.m:
        (+[WebHTMLView initialize]): Add an imposter for NSView too, so we can make opaqueAncestor
	do what we need it to do. This will only work if the application doesn't also poseAsClass
	NSView, but it does work.
        (-[WebNSView opaqueAncestor]): Always return the topmost WebHTMLView if the object is
	inside one, even if there is an intervening opaque object.

        * WebView.subproj/WebView.m:
        (-[WebView setFrame:]): Do the display call at the window level so the topmost WebHTMLView
	always gets involved.
        * WebView.subproj/WebViewPrivate.h: Remove _controller, since we already have a public
	controller method. Add _isMainFrame.
        * WebView.subproj/WebViewPrivate.m: (-[WebView _isMainFrame]): Added.

2002-09-23  Maciej Stachowiak  <mjs@apple.com>

        * Panels.subproj/WebStandardPanels.h: Added inline header docs.

2002-09-23  Maciej Stachowiak  <mjs@apple.com>

        * WebView.subproj/WebWindowContext.h: Added inline header docs.

2002-09-23  Ken Kocienda  <kocienda@apple.com>

	Fixes for some build problems I missed earlier due to the fact that PB can't handle header dependencies,
	and I did not do a clean build of WebKit.

        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream receivedError:withDataSource:]): WebFoundation error constant name change.
        (-[WebNetscapePluginStream cancel]): Ditto.
        * WebCoreSupport.subproj/WebCookieAdapter.m:
        (-[WebCookieAdapter cookiesEnabled]): Modified to use [[WebCookieManager sharedCookieManager] acceptPolicy]
	rather than reaching down into CFPreferences directly.
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]): WebFoundation error constant name change.
        (-[WebSubresourceClient cancel]): Ditto.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient didCancelWithHandle:]): Ditto.

2002-09-23  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
	Don't special case the top level frame's view so much.
        (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]): Ditto.
        (-[NSView _web_propagateDirtyRectToAncestor]): Use public method here instead of private.

2002-09-23  Ken Kocienda  <kocienda@apple.com>

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge reportBadURL:]): WebFoundation error code constant name change
        * WebView.subproj/WebView.m:
        (+[WebView initialize]): WebError addErrorsFromDictionary changed to addErrorsWithCodesAndDescriptions

2002-09-22  Darin Adler  <darin@apple.com>

	- fixed 3057380 -- insertion point shows through elements in front of text fields

        * WebView.subproj/WebHTMLViewPrivate.m:
        (+[WebHTMLView initialize]): Make WebNSTextView pose as NSTextView.
        (-[WebNSTextView _web_inHTMLView]): Helper method.
        (-[WebNSTextView isOpaque]): Override to return NO for all text views that are inside
	an WebHTMLView, so they don't try to do insertion point caching.
        (-[WebNSTextView drawInsertionPointInRect:color:turnedOn:]): Use setNeedsDisplayInRect
	to trigger insertion point drawing outside drawRect instead of drawing right away.
        (-[WebNSTextView _drawRect:clip:]): Set flag so the above can know when it's inside
	drawRect and when it's not.

2002-09-21  Darin Adler  <darin@apple.com>

	WebKit part of the new approach to AppKit drawing control.
	Works better than the previous try. Once we fix anomalies with focus rectangles
	and a some remaining problems with subframes this should work perfectly.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView isOpaque]): Return NO for frames other than the main frame.
        (-[WebHTMLView drawRect:]): Restore the subviews that were set aside.
        * WebView.subproj/WebHTMLViewPrivate.h: Add _isMainFrame. Add savedSubviews and subviewsSetAside.
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _isMainFrame]): Added.
        (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
	Added. If this is the main frame, get all the dirty rects from the subviews and then set
	them aside so the AppKit machinery won't draw them.
        (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]): Ditto.
        (-[NSView _web_propagateDirtyRectToAncestor]): Added. Propagates dirty rects the same
	way that AppKit does, but always does it, ignoring the value of isOpaque.

2002-09-20  Darin Adler  <darin@apple.com>

        * History.subproj/WebHistory.m: (-[WebHistory addEntryForURLString:]):
	Use _web_URLWithString so we can handle unusual characters.

        * WebView.subproj/WebDefaultPolicyHandler.m: Remove stray semicolon.

2002-09-20  Chris Blumenberg  <cblu@apple.com>

	Fixed wasteful memory usage in the WebIconDatabase:
	- Rather than have multiple NSImages with multiple representations at multiple sizes, have 1 NSImage per size
	- Added API to allow client to control memory caching

        * Misc.subproj/WebIconDatabase.h:
        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase iconForSiteURL:withSize:]): call iconForSiteURL:withSize:cache:YES
        (-[WebIconDatabase iconForSiteURL:withSize:cache:]): new, was iconForSiteURL:withSize:
        (-[WebIconDatabase defaultIconWithSize:]): call _iconFromDictionary:forSize:cache:
        (-[WebIconDatabase _updateFileDatabase]): write the largest icon to disk
        (-[WebIconDatabase _hasIconForSiteURL:]): cleaned-up 
        (-[WebIconDatabase _iconsForIconURL:]): call _iconFromDictionary:forSize:cache:
        (-[WebIconDatabase _iconForFileURL:withSize:]): call _iconFromDictionary:forSize:cache:
        (-[WebIconDatabase _builtInIconsForHost:]): call _iconFromDictionary:forSize:cache:
        (-[WebIconDatabase _setIcon:forIconURL:]): _iconsBySplittingRepresentationsOfIcon:
        (-[WebIconDatabase _releaseIconForIconURL:]): icons at different sizes are now stored in dictionaries
        (-[WebIconDatabase _largestIconFromDictionary:]): new, scans the icon dictionary
        (-[WebIconDatabase _iconsBySplittingRepresentationsOfIcon:]): creates the icon dictionary
        (-[WebIconDatabase _iconFromDictionary:forSize:cache:]): returns icon from dict, resizes if necessary
        (-[WebIconDatabase _iconByScalingIcon:toSize:]): tweak
        * Misc.subproj/WebIconDatabasePrivate.h:
        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader startLoading]): don't call _iconsForIconURL: because it doesn't exist.

2002-09-19  Maciej Stachowiak  <mjs@apple.com>

        * Makefile.am: Make `doc' target depend on `all'.
        * WebView.subproj/WebContextMenuHandler.h: Fix typo found by `make doc'.
        * WebView.subproj/WebLocationChangeHandler.h: Likewise.

2002-09-19  Maciej Stachowiak  <mjs@apple.com>

        * Makefile.am: Added `make doc' target.

2002-09-19  John Sullivan  <sullivan@apple.com>

	- cleaned up some SPI for handling URLs on pasteboard

        * Misc.subproj/WebNSPasteboardExtras.h: Added.
        * Misc.subproj/WebNSPasteboardExtras.m: Added.
        (+[NSPasteboard _web_dragTypesForURL]): Moved this here; was
	-[NSView _web_acceptableDragTypes]
        (-[NSPasteboard _web_bestURL]): Moved this here; was
	+[NSView _web_bestURLFromPasteboard:]

        * WebView.subproj/WebView.m:
        (-[WebView initWithFrame:]),
        (-[WebView draggingEntered:]),
        (-[WebView concludeDragOperation:]):
	Updated for SPI change; also removed methods now in NSPasteboard.

        * Misc.subproj/WebNSViewExtras.h:
        * Misc.subproj/WebNSViewExtras.m:
        (-[NSView _web_dragOperationForDraggingInfo:]):
	Updated for SPI change.

        * WebKit.pbproj/project.pbxproj: Updated for new files.

=== Alexander-24 ===

2002-09-18  Darin Adler  <darin@apple.com>

	Fix two problems that led to an assertion now that a bogus
	load progress doesn't pass the "bytesReceived == total" test.

        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream handleDidFinishLoading:]): Nil out the
	resource at the start of the function so that a cancel doesn't
	do anything if called in the middle when we stop.
        (-[WebNetscapePluginStream cancel]): Send a cancel error instead
	of a _receivedProgress. And make a partial progress rather than
	sending an empty progress.
        (-[WebNetscapePluginStream handleDidFailLoading:withError:]):
	Same as handleDidFinishLoading.

2002-09-18  Richard Williamson   <rjw@apple.com>

        More documentation stuff.
        Added attributed text API as requested (yuck!).
        Add reconstructedDocumentSource API as requested.
        Removed cruft (stale API, bogus comments).
         
        * WebView.subproj/WebDataSource.h:
        * WebView.subproj/WebDataSource.m:
        * WebView.subproj/WebHTMLRepresentation.h:
        * WebView.subproj/WebHTMLRepresentation.m:
        (-[WebHTMLRepresentation reconstructedDocumentSource]):
        (-[WebHTMLRepresentation attributedText]):
        * WebView.subproj/WebHTMLRepresentationPrivate.h:
        * WebView.subproj/WebHTMLView.h:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView selectedAttributedText]):
        (-[WebHTMLView selectedText]):
        * WebView.subproj/WebView.h:

2002-09-18  Richard Williamson   <rjw@apple.com>

        Added document keywords to headers.
        Made bookmark related APIs private (for now).
        * Misc.subproj/WebIconDatabase.h:
        * Misc.subproj/WebIconLoader.h:
        * Misc.subproj/WebKitErrors.h:
        * Panels.subproj/WebStandardPanels.h:
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebDefaultContextMenuHandler.h:
        * WebView.subproj/WebLoadProgress.h:
        * WebView.subproj/WebLocationChangeHandler.h:
        * WebView.subproj/WebPreferences.h:

        Made public 
        * WebHTMLRepresentation.h
        * WebHTMLRepresentation.m

2002-09-18  John Sullivan  <sullivan@apple.com>

	WebKit part of fix for 
	
	- 3000823 -- special-case drag of webloc file to bookmarks
	- 3004466 -- favorites bar doesn't accept drops of URL strings
	or webloc files

        * Misc.subproj/WebNSViewExtras.h:
	- make _web_bestURLForDraggingInfo: a class method and have it
	take an NSPasteboard * instead of an NSDraggingInfo *; change
	name to _web_bestURLFromPasteboard:
        * Misc.subproj/WebNSViewExtras.m:
        (+[NSView _web_bestURLFromPasteboard:]):
	- make this a class method and have it take an NSPasteboard * 
	instead of an NSDraggingInfo *
        (-[NSView _web_dragOperationForDraggingInfo:]): Updated for
	SPI change.

        * WebView.subproj/WebView.m:
        (-[WebView draggingEntered:]),
        (-[WebView concludeDragOperation:]): Updated for SPI change.

2002-09-18  Richard Williamson   <rjw@apple.com>

        Added documentation keywords to headers.
        Create seperate files for the protocols
        that were defined in WebController.h.
        Made -[WebController createFrameNamed:for:inParent:allowsScrolling:]):
        private.
        
        * Plugins.subproj/WebPluginView.m:
        * WebCoreSupport.subproj/WebBridge.m:
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebContextMenuHandler.h: Added.
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        * WebView.subproj/WebDefaultContextMenuHandler.m:
        * WebView.subproj/WebFrame.m:
        * WebView.subproj/WebHTMLView.m:
        * WebView.subproj/WebHTMLViewPrivate.m:
        * WebView.subproj/WebMainResourceClient.m:
        * WebView.subproj/WebResourceProgressHandler.h: Added.
        * WebView.subproj/WebView.m:
        * WebView.subproj/WebWindowContext.h: Added.

2002-09-18  Richard Williamson  <rjw@apple.com>

        Added documentation keywords to header.
        
        * WebView.subproj/WebControllerPolicyHandler.h:
        
        Made WebDynamicScrollBarsView private
        
        * WebKit.pbproj/project.pbxproj:

2002-09-18  Darin Adler  <darin@apple.com>

	- fixed 3053155 -- REGRESSION: Activity Window thinks 0-byte
	images are "complete"

	I thought I had fixed it before, but this is needed too.

        * WebView.subproj/WebLoadProgress.m:
        (-[WebLoadProgress init]): Set "bytes so far" to 0, not -1.
        (-[WebLoadProgress initWithResourceHandle:]): Make sure we set total
	to -1, not 0, when the response is nil.

2002-09-18  Richard Williamson  <rjw@apple.com>

        Added documentation keywords to header.
        
        * WebView.subproj/WebDocument.h:

2002-09-18  Richard Williamson  <rjw@apple.com>

        Added documentation keywords to headers.
        Made reset a private method.
        
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebFrame.h:
        * WebView.subproj/WebFrame.m:
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame reset]):

2002-09-18  Richard Williamson  <rjw@apple.com>
    
        Added documentation keywords to headers.
    
        * WebView.subproj/WebView.h:

2002-09-18  Richard Williamson  <rjw@apple.com>

        Added documentation keywords to headers.
        
        * WebView.subproj/WebDataSource.h:

2002-09-18  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebController.h: Fix typo.

2002-09-18  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebController.h: Add getters.
        * WebView.subproj/WebController.m:
        (-[WebController applicationNameForUserAgent]): Added.
        (-[WebController userAgent]): Added.

2002-09-17  Darin Adler  <darin@apple.com>

	Fix bug where image documents were broken.

        * WebCoreSupport.subproj/WebImageRenderer.m:
        (-[WebImageRenderer drawClippedToValidInRect:fromRect:]): loadStatus of 0
	means the whole image is ready, not 0 scan lines; so check > 0, not >= 0.

        * WebKit.pbproj/project.pbxproj: Let Project Builder be the boss of me.

2002-09-17  Richard Williamson   <rjw@apple.com>

        * History.subproj/WebHistory.h:
        * History.subproj/WebHistory.m:
        (-[WebHistory addEntryForURLString:]):
        (-[WebHistory containsEntryForURLString:]):
        Added URL string API.  We should remove use of
        NSURL from this API.
        
        * History.subproj/WebHistoryPrivate.h:
        * History.subproj/WebHistoryPrivate.m:
        (-[WebHistoryPrivate _entryForURLString:]):
        (-[WebHistoryPrivate containsEntryForURLString:]):
        Implementation of above.
        
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
        (-[WebTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]):
        Use ((int)(x + (1.0 - FLT_EPSILON))) instead of ceil().

2002-09-16  Darin Adler  <darin@apple.com>

        * History.subproj/WebHistoryPrivate.m: Do that for real.

2002-09-16  Richard Williamson   <rjw@apple.com>

        Remove fix (according to John, partial fix) for 3051288.
        Canonicalizing the URL strings used in the history db
        is very slow!  ~8% slower.
        
        * History.subproj/WebHistoryPrivate.m:
        (-[WebHistoryPrivate addEntry:]):
        (-[WebHistoryPrivate removeEntry:]):
        (-[WebHistoryPrivate containsURL:]):
        (-[WebHistoryPrivate entryForURL:]):
        
        * WebView.subproj/WebHTMLView.h:
        Removed cruft from header.

2002-09-16  Darin Adler  <darin@apple.com>

	- fixed 3050810 -- while an image is loading progressively, it draws
	white rather then page background	

        * WebCoreSupport.subproj/WebImageRenderer.m:
        (-[WebImageRenderer drawClippedToValidInRect:fromRect:]): Added. Used instead
	of a direct call to drawInRect:fromRect:operation:fraction:, this only draws
	the part of the image that is valid according to loadStatus.
        (-[WebImageRenderer nextFrame:]): Use drawClippedToValidInRect:fromRect:.
        (-[WebImageRenderer beginAnimationInRect:fromRect:]): Ditto.
        (-[WebImageRenderer tileInRect:fromPoint:]): Ditto.

2002-09-13  Richard Williamson (Home)  <rjw@apple.com>

       Fixed 3051288.  URLs were not being canonicalized, so matching failed.
        
        * History.subproj/WebHistoryPrivate.m:
        (-[WebHistoryPrivate addEntry:]):
        (-[WebHistoryPrivate removeEntry:]):
        (-[WebHistoryPrivate containsURL:]):
        (-[WebHistoryPrivate entryForURL:]):

2002-09-13  Richard Williamson (Home)  <rjw@apple.com>

        Fixed 3050636.  90% solution.  The "Display Images Automatically"
        preference will be used to disallow image draggging.  So if this
        is set after pages have loaded, their images will not be draggable,
        and vice-versa.  Not disastrous as dragging in either case has little
        or no negative consequences.
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]):

2002-09-13  Maciej Stachowiak  <mjs@apple.com>

	WebKit changes for:
	
	- fixed 3032238 - Eliminate "Ask each time" choice for cookies
	
        * Panels.subproj/WebStandardPanels.h:
        * Panels.subproj/WebStandardPanels.m:
        (-[WebStandardPanels useStandardAuthenticationPanel]):
        * WebCoreSupport.subproj/WebCookieAdapter.m:
        (-[WebCookieAdapter cookiesEnabled]):
        * WebKit.pbproj/project.pbxproj:

2002-09-13  Darin Adler  <darin@apple.com>

	Added assertions, and dealt with some breakage I created while
	trying to fix, here, what I broke in WebCore.

        * Plugins.subproj/WebPluginView.m: (-[WebNetscapePluginView start]):
	Do get the dataSource from our parent when we are being used as an
	object in a view rather than a document view.

        * Plugins.subproj/WebPluginStream.m:
        * WebView.subproj/WebDataSource.m:
        * WebView.subproj/WebFrame.m:
	Leave in the assertions I used to debug.

2002-09-13  Darin Adler  <darin@apple.com>

	- fixed 3031685 -- The text encoding setting is not propagated to subframes

        * WebView.subproj/WebDocument.h: Remove old WebDocumentTextEncoding methods,
	add supportsTextEncoding.
        * WebView.subproj/WebController.m:
        (-[WebController supportsTextEncoding]): Check the document view to see if
	it supports WebDocumentTextEncoding and returns YES.
        (-[WebController setCustomTextEncoding:]): Call _reloadAllowingStaleDataWithOverrideEncoding.
        (-[WebController resetTextEncoding]): Ditto.
        (-[WebController _mainFrameOverrideEncoding]): Added. Gets encoding from the data source
	of the main frame; provisional if there, main if not.
        (-[WebController hasCustomTextEncoding]): Call _mainFrameOverrideEncoding.
        (-[WebController customTextEncoding]): Ditto.

        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _setParent:]): Set the override encoding to the parent's.

        * WebView.subproj/WebFrame.m:
        (-[WebFrame reload]): Release request to fix storage leak. Set the override encoding
	on the new data source to match the old.

        * WebView.subproj/WebFramePrivate.h: New name for stale data reload method.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]): Do pretty much the
	same thing reload does with a few differences. Get the encoding from the parameter
	rather than the old data source, and set the policy to the one that uses data from
	the cache, even stale data, if present

        * WebView.subproj/WebHTMLView.m:  (-[WebHTMLView supportsTextEncoding]): Return YES.

2002-09-13  Richard Williamson (Home)  <rjw@apple.com>

        Adding padding and widths buffer to our canonical measurement
        method.  The padding argument is used to 'pad' measurements in
        that same way that drawing is padded.  The widths parameter
        allows a caller to pass a buffer to get all the individual
        character widths for the run of characters in the string.
        
        * Misc.subproj/WebStringTruncator.m:
        (+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
        (+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
        * WebCoreSupport.subproj/WebTextRenderer.h:
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer widthForCharacters:length:]):
        (-[WebTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
        (-[WebTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):

2002-09-13  Darin Adler  <darin@apple.com>

	Fix dataSource-related plugin crash.

        * Plugins.subproj/WebPluginView.m:
        (-[WebNetscapePluginView start]): Don't grab dataSource here.
	It's too early.
        (-[WebNetscapePluginView setDataSource:]): Grab it here.

        * Plugins.subproj/WebPluginStream.h:
        * Plugins.subproj/WebPluginStream.m:
	Simplified includes and added asserts while debugging.

2002-09-13  Richard Williamson (Home)  <rjw@apple.com>

        Changed drag hysteresis to 5 and disallow selection initiation within
        a link.
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]):

2002-09-12  Darin Adler  <darin@apple.com>

	Prep work for fixes to the text encoding for subframes.

        * WebCoreSupport.subproj/WebBridge.h: Remove [loadURL:withParent:].
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
	Added referrer parameter.

        * WebView.subproj/WebController.h: Add new methods, not implemented yet.
        * WebView.subproj/WebController.m:
        (-[WebController supportsTextEncoding]): Here is one.
        (-[WebController setCustomTextEncoding:]): Another.
        (-[WebController resetTextEncoding]): Etc.
        (-[WebController hasCustomTextEncoding]): Etc.
        (-[WebController customTextEncoding]): Etc.

        * WebView.subproj/WebDataSource.h:
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource startLoading]): Remove the forceRefresh flag.
	This is now controlled by the WebResourceRequest.
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _startLoading]): Same for this private version.
        * WebView.subproj/WebFrame.h:
        * WebView.subproj/WebFrame.m:
        (-[WebFrame startLoading]): Remove the forceRefresh flag.
        (-[WebFrame reload]): Remove the forceRefresh flag.
	A reload without a forceRefresh is only used internally, not requested
	by the caller.

        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]): Add handling for the case where we
	reload, but allow stale data.
        (-[WebFrame _isLoadComplete]): Ditto.
        (-[WebFrame _reloadAllowingStaleData]): Placeholder, not implemented yet.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView setTextEncoding:]): Update for new API, but this is going away.
        (-[WebHTMLView setDefaultTextEncoding]): Ditto.

2002-09-12  Richard Williamson  <rjw@apple.com>

        Don't initiate a drag if an autoscroll happened.
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]):

2002-09-12  Richard Williamson  <rjw@apple.com>

        Added absolute position column to render node for 
        render tree view.
        
        * WebView.subproj/WebRenderNode.h:
        * WebView.subproj/WebRenderNode.m:
        (-[WebRenderNode initWithName:position:rect:view:children:]):
        (-[WebRenderNode absolutePositionString]):
        (-[WebKitRenderTreeCopier nodeWithName:position:rect:view:children:]):

2002-09-12  David Hyatt  <hyatt@apple.com>

	Add text/xml to our list of MIME types that should use the
	Web view.  With this fix we now render XML and XHTML
	correctly!
	
        * WebView.subproj/WebDataSourcePrivate.m:
        (+[WebDataSource _repTypes]):
        * WebView.subproj/WebViewPrivate.m:
        (+[WebView _viewTypes]):

2002-09-12  Ken Kocienda  <kocienda@apple.com>

        Removed load flags as a design concept. Replaced with new "caching policy" concept 
        which are set on a WebResourceRequest. These policies determine how a load will
        be processed with regards to the cache.

        * WebCoreSupport.subproj/WebBridge.h: Removed flags from loadURL method.
        * WebCoreSupport.subproj/WebBridge.m: Removed calls to load flags and replaced with calls to new request policies.
        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
        (-[WebBridge isReloading]): Ditto.
        (-[WebBridge loadURL:referrer:]): Ditto.
        (-[WebBridge loadURL:withParent:]): Removed flags from loadURL method.
        (-[WebBridge postWithURL:referrer:data:]): Removed calls to load flags and replaced with calls to new request policies.
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]): Ditto.
        * WebView.subproj/WebDataSource.h: Removed flags from init method.
        * WebView.subproj/WebDataSource.m: 
        (-[WebDataSource initWithURL:]): Ditto.
        (-[WebDataSource initWithRequest:]): Ditto.
        * WebView.subproj/WebDataSourcePrivate.h: Removed flags ivar, and dangling attributes ivar.
        * WebView.subproj/WebDataSourcePrivate.m: 
        (-[WebDataSourcePrivate dealloc]): Ditto.
        * WebView.subproj/WebFrame.m:
        (-[WebFrame reload:]): Removed calls to load flags and replaced with calls to new request policies.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _goToItem:withFrameLoadType:]): Ditto.

2002-09-12  Chris Blumenberg  <cblu@apple.com>
	
	Make WebTextView private and exported.

        * WebKit.exp:
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebTextView.h:

2002-09-11  Maciej Stachowiak  <mjs@apple.com>

	Combined provisionalDataSourceChanged: and
	provisionalDataSourceCommitted: methods into a single
	setDataSource:, since they are always called one immediately after
	the other.
	
        * Plugins.subproj/WebPluginView.m:
        (-[WebNetscapePluginView setDataSource:]):
        (-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:]):
        * WebView.subproj/WebDocument.h:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView setDataSource:]):
        * WebView.subproj/WebImageView.m:
        (-[WebImageView setDataSource:]):
        * WebView.subproj/WebTextView.m:
        (-[WebTextView setDataSource:]):
        * WebView.subproj/WebViewPrivate.m:
        (-[WebView _makeDocumentViewForDataSource:]):

2002-09-11  Richard Williamson  <rjw@apple.com>

        Better fix for previous problem.
        
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):

2002-09-11  Richard Williamson (Local)  <rjw@apple.com>

        Remove ceiling of text width at end of fragment.  This was screwing up
        intra fragment text measurements.
        
        Selection of justified text is still screwed up.  This is a fundamental problem
        in khtml and will require  a rewrite of their justification code.  Konq has the
        same problems selecting justified text.  The drawing of code applies the justification
        factor, but checking the selection doesn't add the justification factor, so selection
        will be incorrect by the justification amount.
        
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):

2002-09-11  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebFrame.m: (-[WebFrame reload:]): Use the current
	URL, not the original URL, when doing a reload. This prevents the URL from
	changing back and forth when you reload on a page that involved a redirect.

2002-09-11  Darin Adler  <darin@apple.com>

	Add machinery needed for fix to 3021137, changing font prefs
	doesn't redraw frames other than the main frame.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge setNeedsReapplyStyles]): Added. Lets the web views know that they
	need to reapply styles. If we did this over on the WebCore side, we'd have to do
	it right away. Maybe that would be OK; we can move that that later.

        * WebView.subproj/WebTextView.m: (-[WebTextView setFixedWidthFont]): Use the
	fixed-width size, rather than using the other size with the fixed-width family.

2002-09-11  Ken Kocienda  <kocienda@apple.com>

        Major change to the API and design of WebFoundation. WebKit has been modified
	to use the new API.

        WebFoundation attributes, as a design concept, are now completely gone. The old usages of
        attributes have been replaced with new API on the WebResourceRequest
        and WebResourceResponse classes.

        * Plugins.subproj/WebPluginStream.h: Removed attribute usage in init API. No need for replacement.
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream initWithURL:pluginPointer:]): Removed attribute usage in init API.
        (-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:]): Ditto.
        (-[WebNetscapePluginStream dealloc]): Remove attribute release.
        (-[WebNetscapePluginStream startLoad]): Removed attribute usage. Replace with calls to new API.
        (-[WebNetscapePluginStream receivedData:withHandle:]): Ditto.
        * Plugins.subproj/WebPluginView.m:
        (-[WebNetscapePluginView pluginURLFromCString:]): Added this helper method.
        (-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:]): Added.
        (-[WebNetscapePluginView getURLNotify:target:notifyData:]): Modified to call new loadRequest:inTarget:withNotifyData: method.
        (-[WebNetscapePluginView getURL:target:]): Ditto.
        (-[WebNetscapePluginView postURLNotify:target:len:buf:file:notifyData:]): Ditto.
        * WebCoreSupport.subproj/WebBridge.h: Removed attribute usage in loadURL API. No need for replacement.
        * WebCoreSupport.subproj/WebBridge.m: Added loadRequest:withParent:
        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
        (-[WebBridge startLoadingResource:withURL:referrer:]): Removed attribute usage. Replace with calls to new API.
        (-[WebBridge isReloading]): Ditto.
        (-[WebBridge loadRequest:withParent:]): Added.
        (-[WebBridge loadURL:]): Modified to use new loadRequest:withParent: API
        (-[WebBridge loadURL:referrer:]): Ditto.
        (-[WebBridge loadURL:flags:withParent:]): Ditto.
        (-[WebBridge postWithURL:data:]): Ditto.
        * WebCoreSupport.subproj/WebSubresourceClient.h: Changed API to use an NSString referrer instead of an attributes dictionary.
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]): Removed attribute usage. Replace with calls to new API.
        * WebView.subproj/WebDataSource.h: Added initWithRequest: method.
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource initWithURL:]): Removed attribute usage in init API.
        (-[WebDataSource initWithURL:flags:]): Ditto.
        (-[WebDataSource initWithRequest:]): Added.
        (-[WebDataSource request]): Added.
        * WebView.subproj/WebDataSourcePrivate.h: Added WebResourceRequest ivar.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]): Added WebResourceRequest ivar.
        (-[WebDataSource _startLoading:]): Removed attribute usage. Replace with calls to new API.
        * WebView.subproj/WebFrame.m:
        (-[WebFrame reload:]): Removed attribute usage. Replace with calls to new API.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _goToItem:withFrameLoadType:]): Use new WebDataSource init API.

2002-09-10  Darin Adler  <darin@apple.com>

	WebKit part of support for the "Referer" header.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge openNewWindowWithURL:referrer:frameName:]): Add referrer parameter,
	and pass it on to the window context method.
        (-[WebBridge addAttributeForReferrer:toDictionary:]): Added.
        (-[WebBridge attributesForReferrer:]): Added.
        (-[WebBridge startLoadingResource:withURL:referrer:]): Put the referrer into an
	attributes dictionary and pass it to the WebSubresourceClient method.
        (-[WebBridge loadURL:referrer:]): Put the referrer into an attributes dictionary
	and pass it along.
        (-[WebBridge postWithURL:referrer:data:]): Put the referrer into an attributes
	dictionary and pass it along.

        * WebCoreSupport.subproj/WebSubresourceClient.h: Add an attributes parameter to
	the method that starts loading.
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:attributes:forDataSource:]):
	Put the attributes into the WebResourceRequest.

        * WebView.subproj/WebController.h: Add a referrer parameter to the WebWindowContext
	openNewWindowWithURL method.
        * WebView.subproj/WebDefaultContextMenuHandler.m:
        (-[WebDefaultContextMenuHandler openNewWindowWithURL:referrer:]): Pass the referrer
	on to the window context.
        (-[WebDefaultContextMenuHandler openLinkInNewWindow:]): Pass nil for the referrer
	for now. Not sure if this is best.
        (-[WebDefaultContextMenuHandler openImageInNewWindow:]): Ditto.
        (-[WebDefaultContextMenuHandler openFrameInNewWindow:]): Ditto.

        * WebView.subproj/WebFrame.m: (-[WebFrame frameNamed:]): Pass nil for the referrer
	here where we are creating a new empty window.

        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _continueAfterClickPolicyForEvent:]): Pass nil for the referrer here
	in the WebClickPolicyOpenNewWindow. The policy API doesn't provide a way for the
	policy handler to specify the referrer; we might want to change that later.

        * Plugins.subproj/WebPluginView.m:
        (-[WebNetscapePluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
	Pass nil for the referrer here. But it seems wrong that this function discards
	the handle attributes that are passed in for the case where it opens a new window.

2002-09-11  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3048158 - Crash at google in _destroyInitializingClassList

        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient didCancelWithHandle:]):

2002-09-10  Richard Williamson (Local)  <rjw@apple.com>

        Renamed method.
        
        * WebView.subproj/WebPreferences.h:
        * WebView.subproj/WebPreferences.m:
        (-[WebPreferences _updateWebCoreSettings]):
        (-[WebPreferences setWillLoadImagesAutomatically:]):
        (-[WebPreferences willLoadImagesAutomatically]):

2002-09-10  Chris Blumenberg  <cblu@apple.com>

	Report download handler errors
	Renamed error constants
	Added new errors

        * Misc.subproj/WebDownloadHandler.h:
        * Misc.subproj/WebDownloadHandler.m:
        (-[WebDownloadHandler errorWithCode:]): added
        (-[WebDownloadHandler receivedData:]): return an error
        (-[WebDownloadHandler finishedLoading]): return an error
        (-[WebDownloadHandler cancel]): return an error
        * Misc.subproj/WebKitErrors.h: added new errors
        * WebView.subproj/WebFramePrivate.m: 
        (-[WebFrame _shouldShowURL:]): use renamed error constants
        * WebView.subproj/WebMainResourceClient.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient receivedError:forHandle:]): don't send an error when errors are suppressed
        (-[WebMainResourceClient didCancelWithHandle:]): report download handler errors
        (-[WebMainResourceClient handleDidFinishLoading:]): report download handler errors
        (-[WebMainResourceClient handleDidReceiveData:data:]): report download handler errors
        (-[WebMainResourceClient handleDidFailLoading:withError:]): report download handler errors
        * WebView.subproj/WebView.m:
        (+[WebView initialize]): add new errors to WebError

2002-09-10  John Sullivan  <sullivan@apple.com>

        * History.subproj/WebHistoryPrivate.m:
        (-[WebHistoryPrivate _loadHistoryGuts:]):
	removed the ERROR message in the case where the history file was
	not found, as this is normal initial-state behavior.

2002-09-10  Maciej Stachowiak  <mjs@apple.com>

	WebKit part of fix for:

	2952837 - Slide shows on homepage.mac.com don't show pictures, captions
	2942073 - Deferring [BrowserDocument goToInitialURL] can cause problems
	3021360 - second window pops up on 'Search' at chrysler.com
	3030485 - Unexpected new window created with no scroll bars at sony.com

	This is done by adding a concept of named controller sets, so that
	less browser-like uses of WebKit won't be affected.

        * WebCoreSupport.subproj/WebBridge.m:
	(-[WebBridge openNewWindowWithURL:frameName:]): Pass frameName
	parameter to controller initializer.
	
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (-[WebController init]): Pass nil for controllerSetName.
	
        (-[WebController dealloc]):
        (-[WebController frameNamed:]): Check other windows in the same set too.
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebControllerPrivate dealloc]):
        (-[WebController _setDefersCallbacks:]):
        (-[WebController _setTopLevelFrameName:]):
        (-[WebController _frameInThisWindowNamed:]):
        * WebView.subproj/WebControllerSets.h: Added.
        * WebView.subproj/WebControllerSets.m: Added.
	(+[WebControllerSets addController:toSetNamed:]): Method to
	maintain controller sets.
        (+[WebControllerSets removeController:fromSetNamed:]): Likewise.
        * WebKit.pbproj/project.pbxproj: Add new files.

2002-09-10  Ken Kocienda  <kocienda@apple.com>

        Changed API for setting the WebResourceClient for a request/load.

        This has been removed from WebResourceRequest, and has been moved to 
        WebResourceHandle. The result is that the init method for a WebResourceHandle
        now takes a WebResourceRequest and a WebResourceClient.

        All of the changes below are simple code modifications to use the new API.

        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader startLoading])
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream startLoad])
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge objectLoadedFromCache:size:])
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:])
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _startLoading:])

2002-09-10  Chris Blumenberg  <cblu@apple.com>

        * History.subproj/WebHistory.h:
        * History.subproj/WebHistory.m:
        (-[WebHistory entryForURL:]): added
        * History.subproj/WebHistoryPrivate.h:
        * History.subproj/WebHistoryPrivate.m:
        (-[WebHistoryPrivate entryForURL:]): added
        * Misc.subproj/WebIconDatabase.h: added WebIconLargeSize
        * Misc.subproj/WebIconDatabase.m: added WebIconLargeSize
        * WebKit.exp: export link label key and WebIconLargeSize

2002-09-10  Darin Adler  <darin@apple.com>

	WebKit part of weaning WebCore from getting directly at WebKit defaults.

        * WebView.subproj/WebPreferences.h:
        * WebView.subproj/WebPreferences.m:
        (-[WebPreferences _updateWebCoreSettings]): Added. Propagates all preferences
	to WebCore. This way WebCore doesn't have to actively ask for the values
	of preferences using defaults keys that are WebKit secrets.
        (+[WebPreferences load]): Set up an observer that calls _updateWebCoreSettings
	whenever NSUserDefaultsDidChangeNotification is posted.
        (-[WebPreferences setStandardFontFamily:]): Call _updateWebCoreSettings right
	away, don't wait for NSUserDefaultsDidChangeNotification.
        (-[WebPreferences setFixedFontFamily:]): Ditto.
        (-[WebPreferences setSerifFontFamily:]): Ditto.
        (-[WebPreferences setSansSerifFontFamily:]): Ditto.
        (-[WebPreferences setCursiveFontFamily:]): Ditto.
        (-[WebPreferences setFantasyFontFamily:]): Ditto.
        (-[WebPreferences setDefaultFontSize:]): Ditto.
        (-[WebPreferences setDefaultFixedFontSize:]): Ditto.
        (-[WebPreferences setMinimumFontSize:]): Ditto.
        (-[WebPreferences setUserStyleSheetEnabled:]): Ditto.
        (-[WebPreferences setUserStyleSheetLocation:]): Ditto.
        (-[WebPreferences setJavaEnabled:]): Ditto.
        (-[WebPreferences setJavaScriptEnabled:]): Ditto.
        (-[WebPreferences setJavaScriptCanOpenWindowsAutomatically:]): Ditto.
        (-[WebPreferences setPluginsEnabled:]): Ditto.
        (-[WebPreferences setDisplayImages:]): Ditto.

        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge reportBadURL:]):
	Add this method, which replaces reportError. Now WebCore doesn't use
	WebFoundation directly at all! Pretty neat.

2002-09-09  Richard Williamson (Home)  <rjw@apple.com>

        Implemented  disable images automatically (2896319).

        * WebView.subproj/WebPreferences.h:
        * WebView.subproj/WebPreferences.m:
        (+[WebPreferences load]):
        (-[WebPreferences setDisplayImages:]):
        (-[WebPreferences displayImages]):

2002-09-09  Darin Adler  <darin@apple.com>

	- fixed 3003605 -- Leaking 1 WebView after second run of static PLT

	Fixing this should also help with footprint.

        * WebView.subproj/WebFrame.m:
        (-[WebFrame dealloc]): Remove old workaround for problem where we
	always deallocated the frames from timer cleanup. I found a better
	fix for this.
        (-[WebFrame stopLoading]): Explicitly fire the scheduled layout
	timer if any when we stop loading, rather than leaving it hanging.

        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _setState:]):
	Explicitly fire the scheduled layout timer if any.

        * WebView.subproj/WebDataSource.m: (-[WebDataSource isLoading]):
	Use an autorelease pool here so we don't end up putting all the
	frames in the main event loop's autorelease pool.

        * Bookmarks.subproj/WebBookmark.m:
        (-[WebBookmark init]): Use copy instead of retain.
        (-[WebBookmark identifier]): Use copy instead of retain.

2002-09-09  ken  <kocienda@apple.com>

	Missed one call through asking WebResourceHandle for contentLength
	instead of WebResourceResponse.

        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream receivedData:withHandle:]):

2002-09-09  ken  <kocienda@apple.com>

	Content length information now accessible via WebResourceResponse object,
        rather than from WebResourceHandle.

        * WebView.subproj/WebLoadProgress.m:
        (-[WebLoadProgress initWithResourceHandle:]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handleDidReceiveData:data:]):

2002-09-09  Richard Williamson  <rjw@apple.com>

        Make both calls to adjust CG font cache dynamic.
        The new CGFontCacheSetMaxSize() adds a font cache
        parameter.  Ugh!  This is needed so we can compile
        w/o warnings on stock Jag.
        
        * WebCoreSupport.subproj/WebTextRendererFactory.m:

2002-09-09  Ken Kocienda  <kocienda@apple.com>

	Character set information now accessible via WebResourceResponse object,
	rather than from WebResourceHandle.

        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handleDidReceiveData:data:]):

2002-09-09  Chris Blumenberg  <cblu@apple.com>

	Re-enable wizzy scaling.
	
        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase _iconByScalingIcon:toSize:]):

2002-09-09  Ken Kocienda  <kocienda@apple.com>

	WebResourcehandle no longer has a contentType method.
	Call through to WebResourceResponse object to get content type.

        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream receivedData:withHandle:]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handleDidReceiveData:data:]):

2002-09-09  Darin Adler  <darin@apple.com>

	Fixed lifetime problems happening due to new cancel mechanism.

        * WebCoreSupport.subproj/WebSubresourceClient.m: Add comments explaining why
	retain/release is needed.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _recursiveStopLoading]): Add a retain/release so that we don't
	run into problems if _stopLoading causes the data source to go away.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient didCancelWithHandle:]): Add retain/release for similar reasons,
	with comment explaining why.
        (-[WebMainResourceClient handleDidFinishLoading:]): Ditto.
        (-[WebMainResourceClient handleDidFailLoading:withError:]): Ditto.

	Fixed the problem that was leading to the NSImage exception, but didn't turn on
	the whizzy scaling -- leaving that to Chris.

        * Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase iconForSiteURL:withSize:]):
	Eliminate the "size 0x0" feature. It was only implemented in one place, and tons
	of other places would actually make a size 0x0 icon. But also, we don't need it any more.
        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource iconLoader: receivedPageIcon:),
	(-[WebDataSource _loadIcon]): Don't bother actually passing the icon to
	[WebLocationChangeHandler receivedPageIcon:forDataSource:]. We should probably eventually
	either just get rid of this method, or remove the icon parameter.

2002-09-09  Chris Blumenberg  <cblu@apple.com>


        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase _iconByScalingIcon:toSize:]): Commented out wizzy scaling as it was causing an NSImage exception to be raised.
        * Plugins.subproj/WebPlugin.m:
        (-[WebNetscapePlugin _getPluginInfo]): Check Resource Manager errors

2002-09-08  Darin Adler  <darin@apple.com>

        * Plugins.subproj/WebPluginStream.m:
        * Plugins.subproj/WebPluginView.m:
	Use #if ! rather than #ifndef with LOG_DISABLED, since it
	is set to 0 rather than not defined when LOG is enabled.

2002-09-08  Darin Adler  <darin@apple.com>

        * Bookmarks.subproj/WebBookmarkGroup.m:
        * History.subproj/WebHistoryPrivate.m:
        * History.subproj/WebURLsWithTitles.m:
        * Misc.subproj/WebDownloadHandler.m:
        * Misc.subproj/WebIconDatabase.m:
        * Misc.subproj/WebIconLoader.m:
        * WebView.subproj/WebController.m:
        * WebView.subproj/WebDataSourcePrivate.m:
        * WebView.subproj/WebFrame.m:
        * WebView.subproj/WebFramePrivate.m:
        * WebView.subproj/WebHTMLView.m:
        * WebView.subproj/WebHTMLViewPrivate.m:
        * WebView.subproj/WebMainResourceClient.m:
        * WebView.subproj/WebPreferences.m:
        * WebView.subproj/WebViewPrivate.m:
	Remove unnecessary includes.

2002-09-08  Darin Adler  <darin@apple.com>

	Update logging to use new implementation. Remove old.

        * Misc.subproj/WebKitDebug.h: Removed.
        * Misc.subproj/WebKitDebug.m: Removed.
        * Misc.subproj/WebKitLogging.h: Added.
        * Misc.subproj/WebKitLogging.m: Added.
        * Misc.subproj/WebKitReallyPrivate.h: Removed.
        * WebKit.pbproj/project.pbxproj: Update for above changes.

        * WebKit-tests.exp: Now empty.

        * History.subproj/WebHistoryItem.m: Remove unneeded include.

        * Bookmarks.subproj/WebBookmarkGroup.m:
        * History.subproj/WebHistoryPrivate.m:
        * Misc.subproj/WebDownloadHandler.m:
        * Misc.subproj/WebIconDatabase.m:
        * Plugins.subproj/WebPlugin.m:
        * Plugins.subproj/WebPluginDatabase.m:
        * Plugins.subproj/WebPluginNullEventSender.m:
        * Plugins.subproj/WebPluginStream.m:
        * Plugins.subproj/WebPluginView.m:
        * Plugins.subproj/npapi.m:
        * WebCoreSupport.subproj/WebTextRenderer.m:
        * WebView.subproj/WebDataSourcePrivate.m:
        * WebView.subproj/WebFrame.m:
        * WebView.subproj/WebFramePrivate.m:
        * WebView.subproj/WebHTMLView.m:
        * WebView.subproj/WebMainResourceClient.m:
	Change to use new log channels.

2002-09-08  Darin Adler  <darin@apple.com>

	Remove empty handleDidBeginLoading and handleDidCancelLoading
	methods, now that they will never be called.

        * Misc.subproj/WebIconLoader.m:
        * Plugins.subproj/WebPluginStream.m:
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        * WebView.subproj/WebMainResourceClient.m:

2002-09-08  Darin Adler  <darin@apple.com>

	Forgot to save out files from the editor in my last change.

        * WebView.subproj/WebDataSource.m:
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
	Oops.

2002-09-08  Darin Adler  <darin@apple.com>

	Finished weaning us from handleDidCancelLoading. Now I will remove both
	handleDidBeginLoading and handleDidCancelLoading.

        * WebCoreSupport.subproj/WebSubresourceClient.h: Add a handle method.
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient handleDidCancelLoading:]): Remove guts, move to cancel.
        (-[WebSubresourceClient handleDidFinishLoading:]): Remove the client from the
	data source now, not the handle.
        (-[WebSubresourceClient handleDidFailLoading:withError:]): Ditto.
        (-[WebSubresourceClient cancel]): Move guts here, also make the above change.
        (-[WebSubresourceClient handle]): Added.

        * WebView.subproj/WebDataSource.m: Use clients list, not handles list.
        * WebView.subproj/WebDataSourcePrivate.h: Keep a list of subresource clients rather
	than a list of handles for the subresources.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]): Update to match new field names.
        (-[WebDataSource _updateLoading]): Use clients, not handles.
        (-[WebDataSource _startLoading:]): Move line about starting loading out of the if
	statement. I suspect the if statement is always true, though.
        (-[WebDataSource _addSubresourceClient:]): New name. Keep client pointer instead of
	handle now.
        (-[WebDataSource _removeSubresourceClient:]): Ditto.
        (-[WebDataSource _stopLoading]): Move download handler line into WebMainResourceClient
	since the "not sent when application is quitting" issue is gone now. Stop the subresource
	clients using the cancel call, not by cancelling the handle directly.
        (-[WebDataSource _defersCallbacksChanged]): Update for clients list, not handles list.

        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient didCancelWithHandle:]): Cancel the download handler here.
        (-[WebMainResourceClient handleDidReceiveData:data:]): Call didCancelWithHandle here.
	A loose end from the previous change.

2002-09-07  Chris Blumenberg  <cblu@apple.com>

	Made the wizzy scaling an experiment.

        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase _iconByScalingIcon:toSize:]):

2002-09-06  Darin Adler  <darin@apple.com>

	Almost weaned WebKit entirely from the handleDidBeginLoading and handleDidCancelLoading
	loading callbacks. We are planning to remove both of them.

        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream startLoad]): Call _didStartLoading here so we don't need
	to rely on handleDidBeginLoading any more.
        (-[WebNetscapePluginStream stop]): Call cancel here so we don't need to rely on
	handleDidCancelLoading any more.
        (-[WebNetscapePluginStream handleDidBeginLoading:]): Empty out.
        (-[WebNetscapePluginStream handleDidFinishLoading:]): Nil out resource here.
        (-[WebNetscapePluginStream handleDidCancelLoading:]): Empty out.
        (-[WebNetscapePluginStream cancel]): Put cancel code here.
        (-[WebNetscapePluginStream handleDidFailLoading:withError:]): Nil out resource here.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge startLoadingResource:withURL:]): Change to use WebCoreResourceHandle.

        * WebCoreSupport.subproj/WebSubresourceClient.h: Change to use WebCoreResourceHandle.
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient dealloc]): Release handle too, now that we have it.
        (-[WebSubresourceClient receivedProgressWithComplete:]): Moved up here and removed handle
	parameter.
        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:]): Do work here so
	we don't need to rely on handleDidBeginLoading any more.
        (-[WebSubresourceClient receivedError:]): Removed handle parameter.
        (-[WebSubresourceClient handleWillUseUserAgent:forURL:]):
        (-[WebSubresourceClient handleDidBeginLoading:]): Emptied out.
        (-[WebSubresourceClient handleDidCancelLoading:]): Updated, still needs to be emptied out.
        (-[WebSubresourceClient handleDidFinishLoading:]): Nil out handle.
        (-[WebSubresourceClient handleDidFailLoading:withError:]): Nil out handle.
        (-[WebSubresourceClient cancel]): New method, used by WebCore.

        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer widthForCharacters:length:]): Moved up in the file to fix build failure.

        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _startLoading:]): Call didStartLoadingWithURL so we don't have to
	rely on handleDidBeginLoading.
        (-[WebDataSource _stopLoading]): Call didCancelWithHandle so we don't have to rely
	on handleDidCancelLoading.

        * WebView.subproj/WebMainResourceClient.h: Add didStartLoadingWithURL and
	didCancelWithHandle to the public methods.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient initWithDataSource:]):
        (-[WebMainResourceClient handleDidBeginLoading:]): Empty out.
        (-[WebMainResourceClient didCancelWithHandle:]): Move the bulk of handleDidCancelLoading here.
        (-[WebMainResourceClient handleDidCancelLoading:]): Empty out.

        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView mouseDragged:]): Move the mouse up a little
	bit so it's "on" the dragged area, but not over the text.

2002-09-06  Richard Williamson  <rjw@apple.com>

        Added support for khtml's justified text drawing.  Additional padding is distributed
        to space widths.  (Sites like www.osnews.com now render correctly.)
        
        Change word end rounding hack to use ceil of word width.  I'm still noticing a spacing anomaly
        that is fixed by a reload.  Occasionally text runs are still crammed together, but a reload uses
        correct spacing.  This anomaly is often visible on www.arstechnica.com.  Still investigating.
        
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
        (-[WebTextRenderer slowDrawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:attemptFontSubstitution:]):
        (-[WebTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
        (-[WebTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]):
        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
        
        Tweaks to dragged image.
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]):

2002-09-06  Richard Williamson (Home)  <rjw@apple.com>

        Fixed symbol lookup problem.  NSLookupAndBindSymbol() dies horribly
        if symbol is missing.  Use NSIsSymbolNameDefined() first to check if
        symbol is present.
        
        * WebCoreSupport.subproj/WebTextRendererFactory.m:

2002-09-06  Darin Adler  <darin@apple.com>

	Fix some minor anomalies and leaks.

        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem initWithURL:target:parent:title:]): Use copy, not retain.
        (-[WebHistoryItem dealloc]): Release the anchor, fix leak.
        (-[WebHistoryItem setURL:]): Check for URLs that are equal, not just ==.
        (-[WebHistoryItem setTitle:]): Copy, not retain.
        (-[WebHistoryItem setTarget:]): Copy, not retain.
        (-[WebHistoryItem setParent:]): Copy, not retain.
        (-[WebHistoryItem setDisplayTitle:]): Copy, not retain.
        (-[WebHistoryItem setAnchor:]): Copy, not retain.
        * WebView.subproj/WebControllerPolicyHandler.m:
        (-[WebPolicyPrivate dealloc]): Release the URL, call super, fix leaks.
        (-[WebPolicy _setPath:]): Use copy, not retain.
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebControllerPrivate dealloc]): Release downloadProgressHandler,
	contextMenuHandler, locationChangeHandler, fix leaks.

	Some fun with Richard's new code.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]): Center image around mouse instead of
	putting it up and to the right. Add more X space than Y space.

2002-09-06  Richard Williamson (Home)  <rjw@apple.com>
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]):

        More fun and games with dragged links.
        Draw both a label and url (in a smaller font)
        into the dragged image.

        * Misc.subproj/WebStringTruncator.h:
        * Misc.subproj/WebStringTruncator.m:
        (+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
        
        Added right string truncator.  Not optimized, but not used
        very often.  Currently just for dragged link experiment.
        
=== Alexander-22 ===

2002-09-06  Ken Kocienda  <kocienda@apple.com>

	Declaration and initialization of variable on one line caused unused variable
	warning when building under deployment since the only use of the variable was
	in a debug statement.

        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream receivedError:])

2002-09-05  Richard Williamson (Local)  <rjw@apple.com>

        Experiment w/ dragging link label as drag image.
        Needs some visual tweaking, but good concept, I think.
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]):

2002-09-05  Richard Williamson (Local)  <rjw@apple.com>

        Use the first text child node of the link element
        as the title for a dragged link.  We'll use this for
        the dragged image later too.
        
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]):
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _elementAtPoint:]):

2002-09-05  Richard Williamson (Local)  <rjw@apple.com>

        Correctly save of document state in current
        document when going back.
        
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge saveDocumentState:]):
        (-[WebBridge documentState]):

2002-09-05  Richard Williamson (Local)  <rjw@apple.com>

        Fixed 3043505.  Disallows drag drops on originating view.
        
        * WebView.subproj/WebView.m:
        (-[WebView draggingEntered:]):

2002-09-05  Darin Adler  <darin@apple.com>

	Update to use the new style of assertions.
	A few places still use the WebKitDebug.h, for logging.

        * Bookmarks.subproj/WebBookmark.m:
        * Bookmarks.subproj/WebBookmarkGroup.m:
        * Bookmarks.subproj/WebBookmarkLeaf.m:
        * Bookmarks.subproj/WebBookmarkList.m:
        * Bookmarks.subproj/WebBookmarkSeparator.m:
        * History.subproj/WebHistory.m:
        * History.subproj/WebHistoryList.m:
        * History.subproj/WebHistoryPrivate.m:
        * History.subproj/WebURLsWithTitles.m:
        * Misc.subproj/WebDownloadHandler.m:
        * Misc.subproj/WebIconDatabase.m:
        * Misc.subproj/WebIconLoader.m:
        * Misc.subproj/WebKitDebug.h:
        * Misc.subproj/WebStringTruncator.m:
        * Panels.subproj/WebAuthenticationPanel.m:
        * Plugins.subproj/WebPlugin.m:
        * Plugins.subproj/WebPluginDatabase.m:
        * Plugins.subproj/WebPluginNullEventSender.m:
        * Plugins.subproj/WebPluginStream.m:
        * Plugins.subproj/WebPluginView.m:
        * Plugins.subproj/npapi.m:
        * WebCoreSupport.subproj/WebBridge.m:
        * WebCoreSupport.subproj/WebCookieAdapter.m:
        * WebCoreSupport.subproj/WebImageRenderer.m:
        * WebCoreSupport.subproj/WebImageRendererFactory.m:
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        * WebCoreSupport.subproj/WebTextRenderer.m:
        * WebCoreSupport.subproj/WebTextRendererFactory.m:
        * WebCoreSupport.subproj/WebViewFactory.m:
        * WebView.subproj/WebController.m:
        * WebView.subproj/WebControllerPrivate.m:
        * WebView.subproj/WebDataSource.m:
        * WebView.subproj/WebDataSourcePrivate.m:
        * WebView.subproj/WebDefaultPolicyHandler.m:
        * WebView.subproj/WebFrame.m:
        * WebView.subproj/WebFramePrivate.m:
        * WebView.subproj/WebHTMLView.m:
        * WebView.subproj/WebHTMLViewPrivate.m:
        * WebView.subproj/WebMainResourceClient.m:
        * WebView.subproj/WebPreferences.m:
        * WebView.subproj/WebViewPrivate.m:
	Use new assertions.

2002-09-05  Richard Williamson (Local)  <rjw@apple.com>

        Removed debugging.
        
        * History.subproj/WebBackForwardList.m:
        (-[WebBackForwardList addEntry:]):

2002-09-05  Richard Williamson (Local)  <rjw@apple.com>

        Added support for saving/restoring document state
        in back/forward list.
        
        * History.subproj/WebBackForwardList.m:
        (-[WebBackForwardList addEntry:]):
        * History.subproj/WebHistoryItem.h:
        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem dealloc]):
        (-[WebHistoryItem setLastVisitedDate:]):
        (-[WebHistoryItem documentState]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge saveDocumentState:]):
        (-[WebBridge documentState]):
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _startLoading:]):
        
        Lookup post Jaguar CG SPI.  Can now run and build
        w/o patched CG.
        
        * WebCoreSupport.subproj/WebTextRendererFactory.m:
            
        Changed image links to drag file contents.
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]):

2002-09-05  Ken Kocienda  <kocienda@apple.com>

	The WebError object has been removed from WebResourceHandle.
        Objects of that class now rely on the WebError object in WebResourceResponse. 

	This code has been updated to ask WebResourceResponse for it WebError object,
	rather than asking WebResourceHandle.

        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient handleDidFinishLoading:])
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handleDidFinishLoading:])

2002-09-05  Chris Blumenberg  <cblu@apple.com>

	Fixed 3021365 - Crash failing to load plugin from local file

        * Plugins.subproj/WebPluginStream.h:
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream receivedData:withHandle:]):
        (-[WebNetscapePluginStream receivedError:]):
        (-[WebNetscapePluginStream receivedData:withDataSource:]):
        (-[WebNetscapePluginStream handleDidReceiveData:data:]):

2002-09-05  Ken Kocienda  <kocienda@apple.com>

        The first use of the WebResourceResponse object. This is just a baby step, though.
        I only use one variable in the new class, the statusCode, but all the code in
        the framework has been updated to use the statusCode from the response object.

	Each of these methods was modified to call through to a WebResourceResponse to get 
	the status code.

        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient handleDidFinishLoading:])
        * WebView.subproj/WebLoadProgress.m:
        (-[WebLoadProgress initWithResourceHandle:])
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handleDidFinishLoading:])

2002-09-05  Richard Williamson (Local)  <rjw@apple.com>
        
        Only disable timed expiration of CG glyph cache if SPI is available.
        (per Bertrand's request)
        
        * WebCoreSupport.subproj/WebTextRendererFactory.m:

2002-09-05  John Sullivan  <sullivan@apple.com>

        * Resources/url_icon.tiff: New generic icon from Steve Lemay.
	The @ sign lives, but does not spring.

2002-09-04  Darin Adler  <darin@apple.com>

	One more pass of refinement on that last change.

        * History.subproj/WebBackForwardList.m: (-[WebBackForwardList addEntry:]):
	Replace the last entry instead of just ignoring if this one matches.

        * History.subproj/WebHistoryList.h: Add replaceEntryAtIndex. Remove addURL: and removeURL:.

        * History.subproj/WebHistoryList.m:
        (-[WebHistoryList addEntry:]): Call removeEntry: rather than using an entire pasted copy here.
        (-[WebHistoryList removeEntry:]): Use a hash of the URL and the URL rather than relying on the
	fact that WebHistoryItem hashes and does isEqual based on the URL only.
        (-[WebHistoryList replaceEntryAtIndex:withEntry:]): Added. Used by the code above.

2002-09-04  Darin Adler  <darin@apple.com>

	Fix bug where doing a reload adds an entry to the back/forward list.

        * History.subproj/WebBackForwardList.m: (-[WebBackForwardList addEntry:]):
	If URL, target, and parent all match, then don't add an entry.

        * WebKit.pbproj/project.pbxproj: Let Project Builder be the boss; I guess
	this means Chris is still using the old version.

2002-09-04  Chris Blumenberg  <cblu@apple.com>

	- don't set nil data on the web file db
	- store absolute URLs in the db, not base URL/path combination URLs
	- support for multiple hosts with the same built-in icon

        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase init]): renamed some dictionaries
        (-[WebIconDatabase iconForSiteURL:withSize:]): call _builtInIconsForHost
        (-[WebIconDatabase _updateFileDatabase]): check for nil
        (-[WebIconDatabase _hasIconForSiteURL:]): call _pathForBuiltInIconForHost
        (-[WebIconDatabase _pathForBuiltInIconForHost:]): new
        (-[WebIconDatabase _builtInIconsForHost:]): call _pathForBuiltInIconForHost
        * Misc.subproj/WebIconDatabasePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _loadIcon]): use absolute URL

2002-09-04  Chris Blumenberg  <cblu@apple.com>

	Made the icon DB take a a path for built-in icons so that we only load them when necessary.

        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase init]):
        (-[WebIconDatabase iconForSiteURL:withSize:]):
        (-[WebIconDatabase _hasIconForSiteURL:]):
        (-[WebIconDatabase _builtInIconsForHost:]):
        (-[WebIconDatabase _setBuiltInIconAtPath:forHost:]):
        * Misc.subproj/WebIconDatabasePrivate.h:
        * WebKit.pbproj/project.pbxproj:

2002-09-04  Darin Adler  <darin@apple.com>

	Fix unused variable warnings for deployment builds.

        * Plugins.subproj/WebPluginView.m: Add ifndef NDEBUG around variable
	used only in log statements.

2002-09-04  Darin Adler  <darin@apple.com>

	Removed the now-unnecessary iconURL from bookmarks and history.

        * Bookmarks.subproj/WebBookmark.h:
        * Bookmarks.subproj/WebBookmark.m:
        * Bookmarks.subproj/WebBookmarkGroup.h:
        * Bookmarks.subproj/WebBookmarkGroup.m:
        * Bookmarks.subproj/WebBookmarkLeaf.h:
        * Bookmarks.subproj/WebBookmarkLeaf.m:
        * History.subproj/WebHistory.h:
        * History.subproj/WebHistory.m:
        * History.subproj/WebHistoryItem.h:
        * History.subproj/WebHistoryItem.m:
        * History.subproj/WebHistoryPrivate.h:
        * History.subproj/WebHistoryPrivate.m:
	Removed iconURL instance variables, methods, and parameters.

2002-09-04  Darin Adler  <darin@apple.com>

	Did some minor plugin cleanup, mostly to make sure we don't
	change pages while a plugin is tracking.

        * Plugins.subproj/WebPluginView.h: Add sendEvent and sendUpdateEvent.
	Remove the NPP_HandleEvent method.
        * Plugins.subproj/WebPluginView.m:
        (-[WebNetscapePluginView sendEvent:]): Sets up the "defersCallbacks"
	state, then sends the event.

        * Plugins.subproj/WebNetscapePluginViewPrivate.h: Added.
	This stuff was shared in a different way before, and it
	hadn't even been renamed.
        * WebKit.pbproj/project.pbxproj: Added file.
        * Plugins.subproj/npapi.m: Use the new private header.

        * Plugins.subproj/WebPluginNullEventSender.h: Hold a reference
	to the view.
        * Plugins.subproj/WebPluginNullEventSender.m:
        (-[WebNetscapePluginNullEventSender initWithPluginView:]):
	Retain the view.
        (-[WebNetscapePluginNullEventSender dealloc]): Release the view.
        (-[WebNetscapePluginNullEventSender sendNullEvents]): Use sendEvent:.
        (-[WebNetscapePluginNullEventSender stop]): No need for shouldStop.

        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate init]): Don't set contentPolicy to an enum value,
	when it's an object reference.
        (-[WebDataSourcePrivate dealloc]): Release contentPolicy to fix a leak.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]): Set draggedURL to nil in the else case,
	it was uninitialized before. Also center the icon better when dragging,
	but shouldn't we be dragging something more than the icon here?

        * Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase defaultIconWithSize:]):
	Add a call to release. Doesn't really plug a leak, but cleaner this way.

        * Plugins.subproj/WebPlugin.m: Tweaks.
        * WebView.subproj/WebMainResourceClient.m: Tweaks only.

2002-09-04  Ken Kocienda  <kocienda@apple.com>

	Made more adjustments for API and behavior change that occurred in WebFoundation, 
	now that WebResourceHandle objects no buffer resource data as it is loaded. Where
	necessary, the WebKit objects now do their own buffering, however, in many cases,
	buffering is not necessary to maintain correct behavior.

        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoaderPrivate dealloc]): Release new buffered resource data object.
        (-[WebIconLoader initWithURL:]): Allocate new buffered resource data object.
        (-[WebIconLoader handleDidFinishLoading:]): Modify API to remove data parameter.
        (-[WebIconLoader handleDidReceiveData:data:]): Buffer data as it is received.
        * Plugins.subproj/WebPluginStream.h: Added new buffered resource data object.
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:attributes:]): Allocate new buffered resource data object.
        (-[WebNetscapePluginStream dealloc]): Release new buffered resource data object.
        (-[WebNetscapePluginStream receivedData:]): Buffer data as it is received (when necessary maintain correct behavior).
        (-[WebNetscapePluginStream handleDidFinishLoading:]): Modify API to remove data parameter.
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient handleDidFinishLoading:]): Modify API to remove data parameter.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handleDidFinishLoading:]): Modify API to remove data parameter.
        (-[WebMainResourceClient handleDidReceiveData:data:]): Buffer data as it is received (when necessary maintain correct behavior).

2002-09-04  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3043024 - Built-in icons should match on *whatever.com or *whatever.whatever
	implemented wizzy scaling, but ifdef'd it out

        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase iconForSiteURL:withSize:]): call _builtItIconsForHost
        (-[WebIconDatabase _hasIconForSiteURL:]): call _builtItIconsForHost
        (-[WebIconDatabase _iconForFileURL:withSize:]): call _iconByScalingIcon:toSize:
        (-[WebIconDatabase _builtItIconsForHost:]): use better host matching
        (-[WebIconDatabase _cachedIconFromArray:withSize:]): call _iconByScalingIcon:toSize:
        (-[WebIconDatabase _iconByScalingIcon:toSize:]): renamed, ifdef'd out wizzy scaling

2002-09-04  Ken Kocienda  <kocienda@apple.com>

	Changed WebKit so that it no longer relies on WebResourceHandle to buffer
	resource data as it is loaded. Instead, this buffering task has been moved
	out to the WebResourceClient, WebMainResourceClient in this case. This
	change is a "proof of concept" for the upcoming change where the API in
	WebFoundation for buffering resource data in WebResourceHandle will be
	removed altogether.

        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource data]): Changed to call WebMainResourceClient when resource data is needed.
        * WebView.subproj/WebMainResourceClient.h: Added mutable data ivar.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient initWithDataSource:]): Added mutable data ivar.
        (-[WebMainResourceClient dealloc]): Release new mutable data ivar.
        (-[WebMainResourceClient resourceData]): Added accessor method.
        (-[WebMainResourceClient handleDidReceiveData:data:]): Append received data to the new mutable data object.

2002-09-03  John Sullivan  <sullivan@apple.com>

        * Resources/url_icon.tiff: New image (still a placeholder)
	from HI. For the moment the default page icon is the legendary
	@-sign-on-a-spring. I've been promised a replacement by
	tomorrow sometime.

2002-09-03  John Sullivan  <sullivan@apple.com>

	- removed small folder image used for bookmark lists; it is now
	up to clients to display an icon for bookmark lists.

        * Bookmarks.subproj/WebBookmarkList.h: Removed _icon ivar
        * Bookmarks.subproj/WebBookmarkList.m:
        (-[WebBookmarkList dealloc]): Don't release _icon
        (-[WebBookmarkList icon]): just return nil
        * Resources/bookmark_folder.tiff: Removed.
        * WebKit.pbproj/project.pbxproj: Updated for removed file.

2002-09-03  Chris Blumenberg  <cblu@apple.com>

	- Moved the default icon method to WebIconDatabase
	- Removed "icon URL" from the location change handler API

        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem icon]): don't worry about iconForSiteURL:withSize: returning nil
        * Misc.subproj/WebIconDatabase.h:
        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase iconForSiteURL:withSize:]): return defaultIconWithSize if none found
        (-[WebIconDatabase defaultIconWithSize:]): added, loads, caches default icon
        (-[WebIconDatabase _hasIconForSiteURL:]): added, called by webdatasource to determine if icon is necessary
        * Misc.subproj/WebIconDatabasePrivate.h: added _hasIconForSiteURL
        * Misc.subproj/WebIconLoader.h: removed default icon method
        * Misc.subproj/WebIconLoader.m: removed default icon method
        * Resources/url_icon.tiff: resized to 32 x 32
        * WebKit.exp: export symbol for a dictionary key
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebDataSourcePrivate.m: 
        (-[WebDataSource _loadIcon]): call _hasIconForSiteURL
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]): call defaultIconWithSize
        * WebView.subproj/WebLocationChangeHandler.h:
        * WebView.subproj/WebLocationChangeHandler.m:
        (-[WebLocationChangeHandler receivedPageIcon:forDataSource:]): renamed

2002-09-03  Ken Kocienda  <kocienda@apple.com>

	Modify calls into WebFoundation to use the new WebResourceRequest class,
	and the modified API that kicks off load requests using WebResourceHandle. 
	More changes are planned for this code as the WebFoundation API modifications 
	progress.

        * Misc.subproj/WebIconDatabase.m:
        (-[WebIconDatabase _iconForFileURL:withSize:])
        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader startLoading])
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream startLoad])
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge objectLoadedFromCache:size:])
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:])
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:])
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _startLoading:])

2002-09-03  Darin Adler  <darin@apple.com>

	Fix a reproducible crash pulling down the Go menu.

        * Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase _iconForFileURL:withSize:]):
	Add a missing retain.

        * WebKit.pbproj/project.pbxproj: Project Builder wants what it wants.

2002-09-02  Chris Blumenberg  <cblu@apple.com>

	Icon DB.

        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem _retainIconInDatabase:]): calls retainIconForSiteURL: or releaseIconForSiteURL:
        (-[WebHistoryItem initWithURL:target:parent:title:]): call _retainIconInDatabase:
        (-[WebHistoryItem dealloc]): call _retainIconInDatabase:
        (-[WebHistoryItem icon]): call iconForSiteURL:withSize:
        (-[WebHistoryItem setURL:]): call _retainIconInDatabase:
        (-[WebHistoryItem initFromDictionaryRepresentation:]): call _retainIconInDatabase:
        * Misc.subproj/WebIconDatabase.h: Added.
        * Misc.subproj/WebIconDatabase.m: Added.
        (+[WebIconDatabase sharedIconDatabase]):
        (-[WebIconDatabase init]):
        (-[WebIconDatabase iconForSiteURL:withSize:]):
        (-[WebIconDatabase setIcon:forSiteURL:]):
        (-[WebIconDatabase setIcon:forHost:]):
        (-[WebIconDatabase retainIconForSiteURL:]):
        (-[WebIconDatabase releaseIconForSiteURL:]):
        (-[WebIconDatabase delayDatabaseCleanup]):
        (-[WebIconDatabase allowDatabaseCleanup]):
        (-[WebIconDatabase applicationWillTerminate:]):
        (-[WebIconDatabase _createFileDatabase]):
        (-[WebIconDatabase _loadIconDictionaries]):
        (-[WebIconDatabase _updateFileDatabase]):
        (-[WebIconDatabase _iconForIconURL:]):
        (-[WebIconDatabase _iconsForIconURL:]):
        (-[WebIconDatabase _iconForFileURL:withSize:]):
        (-[WebIconDatabase _setIcon:forIconURL:]):
        (-[WebIconDatabase _setIconURL:forSiteURL:]):
        (-[WebIconDatabase _setBuiltInIcon:forHost:]):
        (-[WebIconDatabase _retainIconForIconURL:]):
        (-[WebIconDatabase _releaseIconForIconURL:]):
        (-[WebIconDatabase _retainFutureIconForSiteURL:]):
        (-[WebIconDatabase _releaseFutureIconForSiteURL:]):
        (-[WebIconDatabase _retainOriginalIconsOnDisk]):
        (-[WebIconDatabase _releaseOriginalIconsOnDisk]):
        (-[WebIconDatabase _sendNotificationForSiteURL:]):
        (-[WebIconDatabase _addObject:toSetForKey:inDictionary:]):
        (-[WebIconDatabase _uniqueIconURL]):
        (-[WebIconDatabase _cachedIconFromArray:withSize:]):
        (-[WebIconDatabase _scaleIcon:toSize:]):
        * Misc.subproj/WebIconDatabasePrivate.h: Added.
        * Misc.subproj/WebIconLoader.h:
        * Misc.subproj/WebIconLoader.m:
        (+[WebIconLoader iconForFileAtPath:]):
        (-[WebIconLoader startLoading]):
        (-[WebIconLoader handleDidFinishLoading:data:]):
        * WebKit.exp:
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _loadIcon]):

2002-08-30  Ken Kocienda  <kocienda@apple.com>

	Removed one last reference to the now-removed WebDefaultMIMEType symbol.
	I missed it earlier.

        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handleDidReceiveData:data:])

2002-08-30  Ken Kocienda  <kocienda@apple.com>

	Failed to remove debugging spam before my last checkin. Sorry.

        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebControllerPrivate.m:
        (+[WebController _MIMETypeForFile:])

2002-08-30  Ken Kocienda  <kocienda@apple.com>

        * WebView.subproj/WebControllerPrivate.m:
        (+[WebController _MIMETypeForFile:]): Small tweak to account for change
	in behavior of a WebFoundation method upon which this method depends.
	The WebFoundation now returns nil when it cannot find a suitable mime
	type rather than returning a default. This function now checks for a nil
	return value and sets @"application/octet-stream" in that case.

2002-08-30  Richard Williamson (Home)  <rjw@apple.com>

        Change link dragging behavior.  Drags URL, not URL contents.
        Still need to generate better image for dragging, will copy OmniWeb
        and drag link text.
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]):

2002-08-30  Darin Adler  <darin@apple.com>

        * WebKit.pbproj/project.pbxproj: Allowed the new Project Builder to put in
	encodings for each file.

=== Alexander-21 ===

2002-08-28  Darin Adler  <darin@apple.com>

	- fixed 3036440 -- Crash running PLT with "Check for 'world leaks'" enabled

        * WebView.subproj/WebDataSourcePrivate.h: Add defersCallbacks boolean.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _setController:]): Don't try to look at the controller before,
	it might already be deallocated.
        (-[WebDataSource _defersCallbacksChanged]): Use a boolean to record whether the
	"defers callbacks" state changed since last time and do no work if it didn't.
	This replaces the check in _setController:.

2002-08-28  Richard Williamson (Local)  <rjw@apple.com>

        Tell CG to not use time expiration of glyph cache and increase it's
        size.
        
        THIS CHANGE REQUIRES THAT YOU INSTALL THE CG ROOT.
        
        * WebCoreSupport.subproj/WebTextRendererFactory.m:

2002-08-28  Richard Williamson (Home)  <rjw@apple.com>

        Fixed selection horkage I introduced with drag
        fix yesterday.
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDragged:]):

2002-08-27  Richard Williamson (Local)  <rjw@apple.com>

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDown:]):
        (-[WebHTMLView mouseDragged:]):
        (-[WebHTMLView mouseMovedNotification:]):
        * WebView.subproj/WebHTMLViewPrivate.h:
        * WebView.subproj/WebHTMLViewPrivate.m:

        Fixed active link style.  Cleaned up and fixed drag initiation
        for links and images.  Dotted lines not drawing correcly, but
        other styles are applied correctly.
        
        * WebKit.exp:
        * History.subproj/WebHistory.h:
        * History.subproj/WebHistory.m:
        
        Added some constants.

        * WebCoreSupport.subproj/WebTextRendererFactory.m:

        Code to change CG caching policy.  Not enabled until
        we receive a root from CG team.
        
2002-08-27  Darin Adler  <darin@apple.com>

	- fixed 3031583 -- directory.apple.com now gives "unsupported" redirect

        * WebView.subproj/WebDataSource.m: (-[WebDataSource initWithURL:attributes:flags:]):
	Don't create the resource handle here. It's a bit too early.
        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading:]):
	Create the resource handle here, now that we have a controller to get a user agent from.

        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handleWillUseUserAgent:forURL:]): Add an assert that will catch
	any future problems of this kind.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge defersLoading]): Added. New call for use in WebCore.
        (-[WebBridge setDefersLoading:]): Added. New call for use in WebCore.

2002-08-26  Darin Adler  <darin@apple.com>

	Add machinery for deferring callbacks. Not used yet.

        * WebView.subproj/WebControllerPrivate.h: Add methods.
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _defersCallbacks]): Returns old state.
        (-[WebController _setDefersCallbacks:]): Changes state and calls _defersCallbacksChanged
	on the main frame.

        * WebView.subproj/WebFramePrivate.h: Add _defersCallbacksChanged.
        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _defersCallbacksChanged]):
	Calls _defersCallbacksChanged on both data sources.

        * WebView.subproj/WebDataSourcePrivate.h: Add _defersCallbacksChanged.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _setController:]): Call _defersCallbacksChanged if changing the controller
	changes the state.
        (-[WebDataSource _addResourceHandle:]): Call setDefersCallbacks:YES on the new handle if
	we are already attached to a controller that defers callbacks.
        (-[WebDataSource _defersCallbacksChanged]): Call setDefersCallbacks on all the handles, and
	call _defersCallbacksChanged on the child frames as well.

        * WebView.subproj/WebDataSource.m: (-[WebDataSource controller]):
	We need to know about all controller changes, so it's unacceptable to consult our
	parent about the controller. But we already do know about it and this code was unnecessary.
	Leave the old code around as an assert only.

2002-08-26  Richard Williamson  <rjw@apple.com>

        * History.subproj/WebHistory.h:
        * History.subproj/WebHistory.m:
        (+[WebHistory webHistoryWithFile:]):
        Stage 1, set the shared history instance.  This'll move to
        WebKit soon.
        
        * WebView.subproj/WebView.m:
        (-[WebView setFrame:]):
        Only force display if in live resize.

2002-08-26  John Sullivan  <sullivan@apple.com>
	
	- fixed bug where dragging a separator in the Bookmarks window
	would hit an assertion.

        * Bookmarks.subproj/WebBookmarkSeparator.m:
        (-[WebBookmarkSeparator initWithGroup:]): Removed obsolete
	assertion that group is not nil.
        * Bookmarks.subproj/WebBookmarkLeaf.m:
        (-[WebBookmarkLeaf initWithTitle:group:]):
	Removed a similar obsolete assertion here.
        * Bookmarks.subproj/WebBookmarkList.m:
        (-[WebBookmarkList initWithTitle:group:]):
	Removed a similar obsolete assertion here.

2002-08-23  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebFrame.m: (-[WebFrame reset]): Remove unneeded call to _reset.

        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _setDataSource:]): Add code that
	removes the KHTML stuff from the frame when switching to another type of view.
	It would be better to do this at some other level, but without this code, we end
	up leaving the entire KHTMLView behind when we switch to a non-HTML page.

2002-08-22  Richard Williamson  <rjw@apple.com>

        Changed public string from #define to extern NSString.
        
        * WebKit.exp:
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        * WebView.subproj/WebDefaultContextMenuHandler.m:
        (-[WebDefaultContextMenuHandler contextMenuItemsForElement:defaultMenuItems:]):
        (-[WebDefaultContextMenuHandler openNewWindowWithURL:]):
        (-[WebDefaultContextMenuHandler downloadURL:]):
        (-[WebDefaultContextMenuHandler openLinkInNewWindow:]):
        (-[WebDefaultContextMenuHandler downloadLinkToDisk:]):
        (-[WebDefaultContextMenuHandler copyLinkToClipboard:]):
        (-[WebDefaultContextMenuHandler openImageInNewWindow:]):
        (-[WebDefaultContextMenuHandler downloadImageToDisk:]):
        (-[WebDefaultContextMenuHandler copyImageToClipboard:]):
        (-[WebDefaultContextMenuHandler openFrameInNewWindow:]):
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _elementAtPoint:]):
        (-[WebHTMLView _continueAfterCheckingDragForEvent:]):

2002-08-22  Ken Kocienda  <kocienda@apple.com>

	Passing the main load's attributes to the subresource loads causes 
	breakage (most visible when we POST).
	
	Right now, we just rely on flags to handle "back/forward" loads, so
	the attributes were not actually being used.

	A better fix needs to be put in place when the soon-to-be-done 
	attributes/flags rework is done.

        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:]):

=== Alexander-20 ===

2002-08-21  Richard Williamson  <rjw@apple.com>

        Simple name change.  Plugin -> NetscapePlugin in anticipation
        of other plugin related API.
        
        Removed vestigal WebDocumentLoading.
        
        * Plugins.subproj/WebPlugin.h:
        * Plugins.subproj/WebPlugin.m:
        (-[WebNetscapePlugin load]):
        * Plugins.subproj/WebPluginDatabase.h:
        * Plugins.subproj/WebPluginDatabase.m:
        (+[WebNetscapePluginDatabase installedPlugins]):
        (-[WebNetscapePluginDatabase pluginForMimeType:]):
        (-[WebNetscapePluginDatabase pluginForExtension:]):
        (-[WebNetscapePluginDatabase pluginWithFilename:]):
        (-[WebNetscapePluginDatabase MIMETypes]):
        (-[WebNetscapePluginDatabase init]):
        * Plugins.subproj/WebPluginNullEventSender.h:
        * Plugins.subproj/WebPluginNullEventSender.m:
        (-[WebNetscapePluginNullEventSender initWithPluginView:]):
        (-[WebNetscapePluginNullEventSender sendNullEvents]):
        * Plugins.subproj/WebPluginStream.h:
        * Plugins.subproj/WebPluginStream.m:
        (-[WebNetscapePluginStream getFunctionPointersFromPluginView:]):
        (-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:attributes:]):
        * Plugins.subproj/WebPluginView.h:
        * Plugins.subproj/WebPluginView.m:
        (-[WebNetscapePluginView initWithFrame:plugin:URL:baseURL:mime:arguments:]):
        (-[WebNetscapePluginView start]):
        (-[WebNetscapePluginView provisionalDataSourceChanged:]):
        (-[WebNetscapePluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
        (-[WebNetscapePluginView destroyStream:reason:]):
        * WebCoreSupport.subproj/WebViewFactory.m:
        (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
        (-[WebViewFactory pluginsInfo]):
        (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (+[WebController canShowMIMEType:]):
        * WebView.subproj/WebDocument.h:
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView provisionalDataSourceChanged:]):
        (-[WebHTMLView provisionalDataSourceCommitted:]):
        (-[WebHTMLView dataSourceUpdated:]):
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[NSView _web_stopIfPluginView]):
        * WebView.subproj/WebImageView.h:
        * WebView.subproj/WebTextView.h:
        * WebView.subproj/WebView.h:
        * WebView.subproj/WebViewPrivate.h:
        * WebView.subproj/WebViewPrivate.m:
        (-[WebView _makeDocumentViewForDataSource:]):

        Still need to muck with cvs server to change file names.
        
2002-08-20  David Hyatt  <hyatt@apple.com>

	Raising the layout delay from 0.75 to 1.00.  This should be
	a little more conservative and matches the value used by Gecko.
	
        * WebView.subproj/WebPreferences.m:
        (+[WebPreferences load]):

2002-08-20  David Hyatt  <hyatt@apple.com>

	Lower the paint/layout delay from 1.85 to 0.75, since we've
	gotten a lot faster.
	
        * WebView.subproj/WebPreferences.m:
        (+[WebPreferences load]):

2002-08-20  John Sullivan  <sullivan@apple.com>

        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handleDidReceiveData:data:]):
	Fixed uninitialized variable that Maciej's deployment build found.

2002-08-20  John Sullivan  <sullivan@apple.com>

	Fixed problem with previous checkin that was causing
	drag-and-drop for files to fail (at least).

        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _shouldShowURL:]): pass isDirectory, not YES,
	to fileURLPolicyForMIMEType:inFrame:isDirectory:

2002-08-20  John Sullivan  <sullivan@apple.com>

	WebKit part of fixes for:
	- 3027491 -- failure loading frame's resource leads to misbehaving panel
	- 3027494 -- failure loading frame's resource leads to error message in Alex, silence in IE
	- 3027697 -- alert box for missing file covered by browser window; should be a sheet
	- 3014123 -- error sheet when iframe has URL with bad path

	Cleaned up the WebPolicy APIs to pass frames and URLs consistently. Also cleaned
	up _shouldShowURL: (formerly _shouldShowDataSource:) method quite a bit.

        * WebView.subproj/WebControllerPolicyHandler.h:
        * WebView.subproj/WebDefaultContextMenuHandler.m:
        (-[WebDefaultContextMenuHandler downloadURL:]):
        * WebView.subproj/WebDefaultPolicyHandler.m:
        (-[WebDefaultPolicyHandler URLPolicyForURL:inFrame:]):
        (-[WebDefaultPolicyHandler fileURLPolicyForMIMEType:inFrame:isDirectory:]):
        (-[WebDefaultPolicyHandler unableToImplementPolicy:error:forURL:inFrame:]):
        * WebView.subproj/WebFrame.m:
        (-[WebFrame setProvisionalDataSource:]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient handleDidReceiveData:data:]):
	Made various Policy-related methods pass the frame and when necessary the
	URL instead of the dataSource (or not even that in some broken cases).
	Collapsed the three unableToImplementXXXPolicy: methods into one.

        * WebView.subproj/WebFramePrivate.h: Change _shouldShowDataSource: to
	_shouldShowURL:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame handleUnimplementablePolicy:errorCode:forURL:]): New helper method.
        (-[WebFrame _shouldShowURL:]): use case statements instead of nested ifs;
	use handleUnimplementablePolicy: to reduce duplicated code; update for API
	changes; eliminate non-useful local variables.

2002-08-20  Darin Adler  <darin@apple.com>

	- fixed 3023076 -- Strange font chosen, widths screwed up, when text includes 007F characters

        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer convertCharacters:length:toGlyphs:skipControlCharacters:]):
        (-[WebTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]):
        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
	Treat 007F as a control character, skipping it just as we do other control characters.

2002-08-20  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebController.m:
        (-[WebController setApplicationNameForUserAgent:]):
	Lock in here, in anticipation of actually using the name in the
	user agent string.

2002-08-20  Darin Adler  <darin@apple.com>

	WebKit part of support for tabbing into and out of the toolbar.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge nextKeyViewOutsideWebViews]): Ask the main WebView for its
	nextKeyView on behalf of WebCore.
        (-[WebBridge previousKeyViewOutsideWebViews]): Ask the main WebView for its
	previousKeyView on behalf of WebCore.

        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView becomeFirstResponder]):
	When we are being tabbed-into, make the first or last view in the bridge
	first responder, instead of taking it ourselves.

        * WebView.subproj/WebView.m: (-[WebView becomeFirstResponder]):
	Always make the document view the first responder instead of taking it
	ourselves.

2002-08-19  Chris Blumenberg  <cblu@apple.com>

	Fixed 3025019: "only-if-cached" attribute fetches data from network if cached but expired

        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader iconFromCache]):

2002-08-19  Darin Adler  <darin@apple.com>

	- fixed 2863025 -- Need to implement TABing between widgets in forms

	Implemented tabbing into a web view's fields. I now consider the task of
	tabbing between widgets done. But there are many loose ends, each with its
	own bug report.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView dealloc]): Set _private to nil so we can properly handle calls
	that come from NSView dealloc.
        (-[WebHTMLView provisionalDataSourceChanged:]): No need to pass width and height
	to createKHTMLViewWithNSView any more. Also, just pass self rather than making
	the roung trip to the WebFrame and the WebView back here.
        (-[WebHTMLView nextKeyView]): Added. Calls the bridge version when we are called
	from nextValidKeyView, the normal version the rest of the time.
        (-[WebHTMLView previousKeyView]): Added. Calls the bridge version when we are called
	from nextValidKeyView, the normal version the rest of the time.
        (-[WebHTMLView nextValidKeyView]): Set inNextValidKeyView and call super.
        (-[WebHTMLView previousValidKeyView]): Set inNextValidKeyView and call super.
        * WebView.subproj/WebHTMLViewPrivate.h: Add inNextValidKeyView flag.

2002-08-18  Darin Adler  <darin@apple.com>

	Update WebResourceClient instances for new API, including adding
	the handleWillUseUserAgent:forURL: method.

        * Misc.subproj/WebIconLoader.m:
        * Plugins.subproj/WebPluginStream.m:
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        * WebView.subproj/WebMainResourceClient.m:
	These were all the clients that needed updating.

        * WebView.subproj/WebController.m:
        (-[WebController setUserAgent:]): Lock so that we can set the user agent
	even though another thread could be calling userAgentForURL:.
        (-[WebController userAgentForURL:]): Ditto.

        * WebView.subproj/WebControllerPrivate.h: Add lock.
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebControllerPrivate init]): Create lock.
        (-[WebControllerPrivate dealloc]): Release lock.

        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _stopLoading]): Improve comment.

2002-08-18  Darin Adler  <darin@apple.com>

        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader iconFromCache]):
        (-[WebIconLoader WebResourceHandleDidFinishLoading:data:]):
	Don't process each icon twice. We need to have the loader as a client even for the
	synchronous case because of the user agent issue, but that causes double work.

2002-08-16  Darin Adler  <darin@apple.com>

	Step 3 in adding user agent API to WebKit and WebFoundation.
	Add the calls to WebKit to configure the user-agent string.
	Change WebCore to get the user-agent from WebKit via the bridge.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge userAgentForURL:]): Added. Calls [WebController userAgentForURL:].

        * WebView.subproj/WebController.h: Add three new methods.
        * WebView.subproj/WebController.m:
        (-[WebController setApplicationNameForUserAgent:]): Store an application name that
	will be used to build up the user-agent string.
        (-[WebController setUserAgent:]): Set an override user agent; mainly useful for
	testing user-agent strings different from the one WebKit supplies.
        (-[WebController userAgentForURL:]): Public API for getting the user agent string
	that the WebController will use for a particular URL.

        * WebView.subproj/WebControllerPrivate.h: Add fields for the user-agent parameters.
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebControllerPrivate dealloc]): Release both strings when the controller goes away.

2002-08-16  Darin Adler  <darin@apple.com>

	Missed one call to [WebResourceHandle initWithURL:].
        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge objectLoadedFromCache:size:]):
        Change to call [WebResourceHandle initWithClient:URL:] with nil for the client.

2002-08-16  Darin Adler  <darin@apple.com>

	Oops. Forgot to save in Project Builder before committing.

        * Plugins.subproj/WebPluginStream.m:
        * WebView.subproj/WebDataSource.m:
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:

2002-08-16  Darin Adler  <darin@apple.com>

	Update for change to the WebResourceHandle API where the client is
	passed in at init time.

        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader iconFromCache]): Pass self as client when creating handle for
	foreground "only if cached" load. Also don't put the handle into the class's
	data structure in this case.
        (-[WebIconLoader startLoading]): Pass self as client when creating handle
	instead of making a separate addClient call. Also fix potential leak if this
	is called when we are already loading.
        (-[WebIconLoader stopLoading]): Release the handle and nil it out right here.
        * Plugins.subproj/WebPluginStream.m:
        (-[WebPluginStream startLoad]): Pass client when creating handle rather than
	doing an addClient afterward.
        (-[WebPluginStream stop]): Don't do a removeClient.
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:]):
        * WebView.subproj/WebDataSource.m:
	(-[WebDataSource initWithURL:attributes:flags:]): Pass client when creating handle.
        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading:]):
	Since client is not created in init, don't bother creating it here.

2002-08-16  John Sullivan  <sullivan@apple.com>

	Split searchability out from WebTextView so it could be used
	elsewhere (specifically, in DOM window).

        * Misc.subproj/WebSearchableTextView.h: Added.
        * Misc.subproj/WebSearchableTextView.m: Added.
        (-[WebSearchableTextView searchFor:direction:caseSensitive:]):
        (-[NSString findString:selectedRange:options:wrap:]):
	New class, split out from WebTextView, which now inherits from it.

        * WebView.subproj/WebTextView.h:
        * WebView.subproj/WebTextView.m:
	Took out the searching stuff and put it in WebSearchableTextView;
	made WebTextView inherit from WebSearchableTextView.

        * WebKit.pbproj/project.pbxproj: Added new files, made
	WebSearchableTextView.h be Private.

2002-08-16  John Sullivan  <sullivan@apple.com>

	- fixed 3025394 -- Bookmarks & History items do not remember their icons
	across launches
	- fixed 3025421 -- Dragging from location field proxy icon to favorites bar 
	loses page icon
	- part of fix for 3026279 -- Bookmarks should lose their favIcons when the
	URL is edited

        * Bookmarks.subproj/WebBookmarkLeaf.m:
        (-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
        (-[WebBookmarkLeaf dictionaryRepresentation]):
	Removed the #ifdeffed-out code for storing iconURL in dictionary; this was
	unnecessary because it is also done by the lower-level WebHistoryItem.

        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem _setIcon:]): New method, extracted from -icon for clarity.
        (-[WebHistoryItem icon]): Fixed problem where once an icon was set it would
	never be changed, even if the iconURL is changed. Also, use _setIcon for
	clarity and to fix retainCount bugs.
        (-[WebHistoryItem dictionaryRepresentation]):
	Removed the #ifdef around the line that stores the URL in the dictionary.
	Gramps decided that this architecture is OK after all.

2002-08-16  Darin Adler  <darin@apple.com>

	Fixed broken build.

        * Misc.subproj/WebTestController.m: Added empty placeholder methods.

2002-08-15  John Sullivan  <sullivan@apple.com>

	- fixed 3025770 -- "New Bookmark" button hits assertion and crashes

        * Bookmarks.subproj/WebBookmarkLeaf.m:
        (-[WebBookmarkLeaf setURLString:]): Instead of asserting that parameter
	is not nil, handle the nil case by converting to empty string. This was
	another regression from yesterday's favIcon changes.

=== Alexander-19 ===

2002-08-15  John Sullivan  <sullivan@apple.com>

	Disabled support for storing favIcon URLs in bookmarks; Gramps realized
	this is an architecture problem that needs a better solution, and he
	didn't want to ship Alex-18 with this problem.

        * Bookmarks.subproj/WebBookmarkLeaf.m:
        (-[WebBookmarkLeaf dictionaryRepresentation]):
        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem dictionaryRepresentation]):
	Commented out the code that added the iconURLString in the dictionary used
	for writing out file. This dictionary is also used on the pasteboard, so this
	change causes the favIcon not to be remembered when you drag from proxy icon
	to favorites bar.

=== Alexander-18 ===

2002-08-14  Chris Blumenberg  <cblu@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@apple.com>

	Remove some unused things. Fix minor problems.

        * Plugins.subproj/WebPluginNullEventSender.m:
        * Plugins.subproj/WebPluginView.m:
        * WebCoreSupport.subproj/WebTextRenderer.m:
	Fixed places that were using the C++ bool instead of
	the Objective C BOOL.

        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _receivedData:]):
	Remove old code related to the dummy data source.

        * WebView.subproj/WebFrame.m:
        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
	Remove _changeBridge, since we don't any more. Hoist the creation of the
	bridge up here.
        * WebView.subproj/WebFramePrivate.h: Remove _changeBridge.
        * WebView.subproj/WebFramePrivate.m: Remove _changeBridge.

        * WebView.subproj/WebHTMLRepresentation.h:
        * WebView.subproj/WebHTMLView.h:
        * WebView.subproj/WebImageRepresentation.h:
        * WebView.subproj/WebTextRepresentation.h:
        * WebView.subproj/WebTextView.h:
	Don't re-declare methods that are part of protocols we implement.

        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView initWithFrame:]): Don't add the mouse moved observer until
	the view gets put into a window.
        (-[WebHTMLView addMouseMovedObserver]): Added.
        (-[WebHTMLView removeMouseMovedObserver]): Added.
        (-[WebHTMLView viewWillMoveToWindow:]): Remove observer if we were in the
	main window.
        (-[WebHTMLView viewDidMoveToWindow]): Add observer if we are now in the main
	window.
        * WebView.subproj/WebHTMLViewPrivate.h: Add _frame method. Remove unused
	controller and cursor instance variables.
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _frame]): Added.
        (-[WebHTMLView _bridge]): Call _frame.

        * WebView.subproj/WebTextRepresentation.m: Add now-needed import.

        * WebView.subproj/WebHTMLRepresentation.m: Tweak.

2002-08-13  Maciej Stachowiak  <mjs@apple.com>

	Add the ability to determine the classes of live JavaScript
	objects, to help with leak fixing.

        * Misc.subproj/WebCoreStatistics.h:
        * Misc.subproj/WebCoreStatistics.m:
        (+[WebCoreStatistics javaScriptLiveObjectClasses]):

2002-08-12  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge isReloading]):
	Change dataSourceIsReloading to isReloading.

2002-08-12  Maciej Stachowiak  <mjs@apple.com>

        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m: Remove private _flags
	and _attributes accessors, now that Ken added public versions.
        * WebView.subproj/WebFrame.m:
        (-[WebFrame reload:]): Remove sole use thereof.

=== Alexander-17 ===

2002-08-10  Ken Kocienda  <kocienda@apple.com>

	Added support for "stale mode" (loads triggered by use of back/forward), and
	added support for reload.

	Also added a bridge function so the WebCore cache can tell if a load is a reload.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge dataSourceIsReloading]): New method.
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:]): Use same flags that were used for main resource load.
        * WebView.subproj/WebDataSource.h:
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource attributes]): New accessor.
        (-[WebDataSource flags]): New accessor.
        * WebView.subproj/WebFrame.m:
        (-[WebFrame reload:]): Reload adds WebResourceHandleFlagLoadFromOrigin flag to load.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _goToItem:withFrameLoadType:]): Adds flags so that WebFoundation can tell when back/forward
	has been used.

=== milestone 0.5 ===

=== Alexander-16 ===

2002-08-09  Chris Blumenberg  <cblu@apple.com>

	- Cache icon image for HTML files
	- resize the icon in WebIconLoader instead of in multiple places elsewhere

        * Misc.subproj/WebIconLoader.h:
        * Misc.subproj/WebIconLoader.m:
        (+[WebIconLoader _resizeImage:]):
        (+[WebIconLoader defaultIcon]): call _resizeImage
        (+[WebIconLoader iconForFileAtPath:]): added, caches html icon
        (-[WebIconLoader WebResourceHandleDidFinishLoading:data:]): call _resizeImage
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _loadIcon]): call iconForFileAtPath

2002-08-08  Maciej Stachowiak  <mjs@apple.com>

	Fix to get onLoad to fire, so the iBench test works.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
        Return the bridge for the new child frame.

2002-08-08  Darin Adler  <darin@apple.com>

        * WebKit.pbproj/project.pbxproj: Change the group name back to Debug.

2002-08-08  Richard Williamson  <rjw@apple.com>

        Added flag to turn on/off buffered text drawing to help
        determine if we get any speed boost.  Run from console
        with "-BufferTextDrawing YES" to enable buffered text
        drawing.
        
        Moved buffered text drawing out of web core.
        
        * WebCoreSupport.subproj/WebTextRenderer.h:
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (+[WebTextRenderer shouldBufferTextDrawing]):
        (+[WebTextRenderer initialize]):
        (-[WebTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withTextColor:backgroundColor:]):
        * WebCoreSupport.subproj/WebTextRendererFactory.h:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView drawRect:]):

2002-08-08  Darin Adler  <darin@apple.com>

	Placeholders for the "drawing observer" method that I'll be using
	to implement the "dump page as diffable text" feature.

        * Misc.subproj/WebTestController.h: Added.
        * Misc.subproj/WebTestController.m: Added.
        * WebKit.pbproj/project.pbxproj: Mention new files.
	* WebKit.exp: Mention new class.

        * WebView.subproj/WebPreferences.h:
        * WebView.subproj/WebPreferences.m:
        Changed "fixed font size" to "default fixed font size".

2002-08-08  Chris Blumenberg  <cblu@apple.com>

        * Plugins.subproj/WebPluginStream.m:
        (-[WebPluginStream finishedLoadingWithData:]): call [NSFileManager _web_carbonPathForPath:]

2002-08-08  Maciej Stachowiak  <mjs@apple.com>

	- fixed 2957197 - Need API for getting/setting default text encoding
	
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate init]): Set default encoding if no other is set.
        * WebView.subproj/WebPreferences.h:
        * WebView.subproj/WebPreferences.m:
        (+[WebPreferences load]): Added support for default text encoding pref.
        (-[WebPreferences defaultTextEncoding]): Likewise.
        (-[WebPreferences setDefaultTextEncoding:]): Likewise.

2002-08-08  Richard Williamson  <rjw@apple.com>

        Changes to coalesce all drawing calls of the same text
        style and color into one call to CG.  Significantly
        improves drawing time.  My tests should about 7-8% on 
        ALL pages.  Disabled the code for now until I can verify
        on speed improvements on Ken's test rig.
        
        * WebCoreSupport.subproj/WebGlyphBuffer.h: Added.
        * WebCoreSupport.subproj/WebGlyphBuffer.m: Added.
        (-[WebGlyphBuffer initWithFont:color:]):
        (-[WebGlyphBuffer font]):
        (-[WebGlyphBuffer color]):
        (-[WebGlyphBuffer reset]):
        (-[WebGlyphBuffer dealloc]):
        (-[WebGlyphBuffer drawInView:]):
        (-[WebGlyphBuffer addGlyphs:advances:count:at::]):
        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withTextColor:backgroundColor:]):
        * WebCoreSupport.subproj/WebTextRendererFactory.h:
        * WebCoreSupport.subproj/WebTextRendererFactory.m:
        (-[WebTextRendererFactory coalesceTextDrawing]):
        (-[WebTextRendererFactory startCoalesceTextDrawing]):
        (-[WebTextRendererFactory endCoalesceTextDrawing]):
        (-[WebTextRendererFactory glyphBufferForFont:andColor:]):
        (-[WebTextRendererFactory dealloc]):
        * WebKit.pbproj/project.pbxproj:

2002-08-07  Maciej Stachowiak  <mjs@apple.com>

	WebKit work for:

	- fixed 2956008 - Need API for getting/setting text encoding for current page
	
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge receivedData:withDataSource:]): Handle override encoding,
	if any.
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource initWithURL:attributes:flags:]): Remember the flags and
	attributes.
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate init]): Initialize overrideEncoding
        (-[WebDataSourcePrivate dealloc]): Release attributes
        (-[WebDataSource _setOverrideEncoding:]): Added.
        (-[WebDataSource _overrideEncoding]): Added.
        (-[WebDataSource _flags]): Added.
        (-[WebDataSource _attributes]): Added.
        * WebView.subproj/WebFrame.m:
        (-[WebFrame startLoading]): Pass proper forceRefresh value to data source
	based on load type (but the data source will ignore it).
	(-[WebFrame reload:]): Made this work a bit better. Now instead of
	crashing, it will actually reload, but it won't force a refresh
	(and may not handle the back/forward issues properly).
        * WebView.subproj/WebDocument.h: Defined new WebDocumentTextEncoding protocol.
        * WebView.subproj/WebHTMLView.h:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView textEncoding]): Implemented WebDocumentTextEncoding
	protocol.
        (-[WebHTMLView setTextEncoding:]): Implemented WebDocumentTextEncoding 
	protocol.
        (-[WebHTMLView setDefaultTextEncoding]): Implemented WebDocumentTextEncoding
	protocol.
        (-[WebHTMLView usingDefaultTextEncoding]): Implemented
	WebDocumentTextEncoding protocol.

2002-08-07  John Sullivan  <sullivan@apple.com>

	- fixed 3017245 -- Shift-Delete should go forward

        * WebView.subproj/WebView.m:
        (-[WebView keyDown:]): Check for shift-delete.

2002-08-07  Richard Williamson  <rjw@apple.com>

        Fixed scrollview related drawing turd problems.
        (3000844 and 2896459).
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView drawRect:]):
        * WebView.subproj/WebView.m:
        (-[WebView setFrame:]):

2002-08-07  Darin Adler  <darin@apple.com>

        * WebView.subproj/WebFrame.m: (-[WebFrame setProvisionalDataSource:]):
        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _goToItem:withFrameLoadType:]):
	Call _web_URLWithoutFragment by its new name _web_URLByRemovingFragment.

2002-08-07  Chris Blumenberg  <cblu@apple.com>

	Fixed: 3018632 - the show javascript files inline bug

        * WebView.subproj/WebDataSourcePrivate.m:
        (+[WebDataSource _repTypes]): support application/x-javascript
        * WebView.subproj/WebViewPrivate.m:
        (+[WebView _viewTypes]): support application/x-javascript

2002-08-07  John Sullivan  <sullivan@apple.com>

        * Misc.subproj/WebNSViewExtras.h:
        * Misc.subproj/WebNSViewExtras.m:
        (-[NSView _web_superviewOfClass:]): Changed name from
	_web_superviewWithName: and made it take a Class object
	instead of a string.

        * Plugins.subproj/WebNullPluginView.m:
        (-[WebNullPluginView drawRect:]):
        * Plugins.subproj/WebPluginView.m:
        (-[WebPluginView start]):
        (-[WebPluginView layout]):
	Updated callers of _web_superviewWithName:

        * WebKit.pbproj/project.pbxproj: Changed WebNSViewExtras.h from
	Public to Private

2002-08-06  Darin Adler  <darin@apple.com>

	Fix assert I saw while fixing bug 2965321.

        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
	Create a suitable resource identifier from the failing URL in the WebError for cases
	where we fail before we are able to construct a resource handle.

2002-08-06  Darin Adler  <darin@apple.com>

	- fixed 2970516 -- Activate Events don't appear to be coming in to the
	Java Applet.plugin correctly.

        * Plugins.subproj/WebPluginView.m: (-[WebPluginView sendActivateEvent:]):
	Use activeFlag to set modifiers, not activMask, which is an event mask.

2002-08-06  John Sullivan  <sullivan@apple.com>

	Add mechanism to store userStyleSheet preferences in WebKit in
	preparation for Dave wiring up the implementation.

        * WebView.subproj/WebPreferences.h:
        * WebView.subproj/WebPreferences.m:
        (-[WebPreferences userStyleSheetEnabled]),
        (-[WebPreferences setUserStyleSheetEnabled:]),
        (-[WebPreferences userStyleSheetLocation]),
        (-[WebPreferences setUserStyleSheetLocation:]):
	New methods, read and write UserDefaults values.

        (+[WebPreferences load]): Set initial values for
	userStyleSheetEnabled and userStyleSheetLocation

2002-08-06  Maciej Stachowiak  <mjs@apple.com>

	Removed some APPLE_CHANGES no longer needed after the part change.

        * WebCoreSupport.subproj/WebBridge.m: Remove setOpenedByScript: and
	openedByScript methods now that they are not needed.
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m: Remove setOpenedByScript: and
	openedByScript methods now that they are not needed.

2002-08-06  Darin Adler  <darin@apple.com>

	- fixed 3017761 -- dataSource != nil assertion navigating at yahoo.com

        * WebView.subproj/WebLocationChangeHandler.h:
        * WebView.subproj/WebLocationChangeHandler.m:
	Change client redirect calls to pass the frame, not the data source.
	At the time a client redirect is requested, it's not even clear yet
	which data source will be involved. We may want to make some of the
	other calls pass frames, also, aside from the "start", "committed", "done",
	calls, which must specify the data source.
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge reportClientRedirectTo:delay:fireDate:]): Pass frame, not data source.
        (-[WebBridge reportClientRedirectCancelled]): Pass frame, not data source.

2002-08-06  Darin Adler  <darin@apple.com>

        * lots of files: Changed url to URL in many places and renamed URL-related methods.

2002-08-06  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge dataSourceChanged]): Call setParent:.
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebControllerPrivate init]): Initialize the text size multiplier to 1.
        * WebView.subproj/WebDataSource.h: Removed [redirectedURL], deprecated [inputURL], added [URL].
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource URL]): Added. Returns current URL, without requiring separate logic for the
	redirected and not-yet-redirected cases.
        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _loadIcon]): Use [WebDataSource URL].
        * WebView.subproj/WebDefaultContextMenuHandler.m:
        (-[WebDefaultContextMenuHandler openFrameInNewWindow:]): Use [WebDataSource URL].

2002-08-06  John Sullivan  <sullivan@apple.com>

	WebKit part of fix for 3017539 -- Replace Serif and Sans-serif
	font preferences with Default preference; let fixed width font
	size be independent.


        * WebView.subproj/WebPreferences.h:
        * WebView.subproj/WebPreferences.m:
        (+[WebPreferences load]): Add default value for fixed width size
        (-[WebPreferences fixedFontSize]),
        (-[WebPreferences setFixedFontSize:]): New methods.

2002-08-06  Darin Adler  <darin@apple.com>

	- fixed 3017536 -- Change default font to Lucida Grande 14 pt.

        * WebView.subproj/WebPreferences.m: (+[WebPreferences load]):
	Changed default font and sans serif font family names to Lucida Grande.
	Changed default font size to 14 point.

2002-08-05  Maciej Stachowiak  <mjs@apple.com>

	fixed 2974993 - window.open does not return the right window object
	fixed 3017140 - WebKit creates a new KHTMLPart per page; should
	reuse it like KHTML does
	
        * WebView.subproj/WebHTMLRepresentation.m:
        (-[WebHTMLRepresentation setDataSource:]): Don't swap the part at
	this point. Now it gets reused.

2002-08-05  Maciej Stachowiak  <mjs@apple.com>

        * WebKit.pbproj/project.pbxproj: Fix tyops that broke Development
	build.

2002-08-05  Darin Adler  <darin@apple.com>

        * .cvsignore: Ignore WebCore-combined.exp.

2002-08-05  Maciej Stachowiak  <mjs@apple.com>

	- fixed 3007072 - need to be able to build fat
	
        * WebKit.pbproj/project.pbxproj: Fixed DeploymentFat build.
        * Makefile.am: Build WebCore-combined.exp for Development and
	Mixed build.
        * WebKit-tests.exp: Added.
        * WebKit.exp: Remove test-only function.

2002-08-05  Darin Adler  <darin@apple.com>

	Do the wiring for the "text size multiplier" feature. The rest of the work will probably be done
	at the WebCore level.

        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge setFrame:]): Set the text size multiplier.
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (-[WebController setTextSizeMultiplier:]): Added. Calls _textSizeMultiplierChanged on the main frame.
        (-[WebController textSizeMultiplier]): Added.
        * WebView.subproj/WebControllerPrivate.h: Added textSizeMultiplier instance variable.
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _textSizeMultiplierChanged]): Added. Calls setTextSizeMultiplier: on the bridge,
	and _textSizeMultiplierChanged on all the child frames.

2002-08-05  Chris Blumenberg  <cblu@apple.com>

	Renamed icon loader delegate method to include the icon loader.

        * Misc.subproj/WebIconLoader.h:
        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader WebResourceHandleDidFinishLoading:data:]):
        * WebView.subproj/WebDataSourcePrivate.m:

2002-08-05  Richard Williamson  <rjw@apple.com>

        Added additional check to find appropriate fonts with available
        weight, rather than always using a weight of 5.
        
        Regarding "kCGErrorFailure : can't find name id 4 for font id 8395" errors:
        CG appears to be lying to us about some fonts, Verdana in particular.
        It claims to have an available Verdana font w/ the correct traits, but spits errors
        when we request that font.  Further, the Font Panel behaves oddly when you request
        Verdana.  The panel displays the font but if you select the font it doesn't
        'stick'.  A mystery.
        
        * WebCoreSupport.subproj/WebTextRendererFactory.m:
        (-[WebTextRendererFactory fontWithFamily:traits:size:]):

2002-08-05  Darin Adler  <darin@apple.com>

	- fixed 2986567 -- suppress return characters from title in title bar, status bar, menu items

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge setTitle:]): Call _web_stringByCollapsingNonPrintingCharacters.

2002-08-05  Richard Williamson  <rjw@apple.com>

        Added exported symbols file.
        
        * WebKit.exp: Added.
        * WebKit.pbproj/project.pbxproj:

2002-08-05  Darin Adler  <darin@apple.com>

	- fixed 3014122 -- spinner never stops spinning when iframe has URL with bad path

        * WebView.subproj/WebFrame.m:
        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]): Initialize the
	state in WebFramePrivate init instead.
        * WebView.subproj/WebFramePrivate.h: Remove WebFrameStateUninitialized.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFramePrivate init]): Set initial state to WebFrameStateComplete.
        (-[WebFrame _transitionToLayoutAcceptable]): Remove WebFrameStateUninitialized case.
        (-[WebFrame _transitionToCommitted]): Remove WebFrameStateUninitialized case.
        (-[WebFrame _isLoadComplete]): Remove WebFrameStateUninitialized case.

        * WebView.subproj/WebDataSource.h: Tweak.
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource stopLoading]): Move downloadHandler logic from here into _stopLoading.
        (-[WebDataSource isLoading]): Rewrite for simplicity.

        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _stopLoading]): Move downloadHandler logic here from stopLoading.
	Also make this work even if handles are removed from the list during the stop process.
        (-[WebDataSource _recursiveStopLoading]): Simplify a lot by using WebFrame's stopLoading.
        (-[WebDataSource _setTitle:]): Use the committed boolean rather than the state to check
	if the title change should be sent to the location change handler.

2002-08-05  Maciej Stachowiak  <mjs@apple.com>

        * Misc.subproj/WebKitDebug.h: Put WEBKIT_ASSERT_NOT_REACHED()
	inside the appropriate #ifdef, and remove the various _log macros,
	which are onsolete in WebKit.

2002-08-05  Maciej Stachowiak  <mjs@apple.com>

        Some changes related to re-merging the KHTMLPart end() method:

	* Misc.subproj/WebKitDebug.h: Added WEBKIT_ASSERT_NOT_REACHED().
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToLayoutAcceptable]): Replace NSException with
	ASSERT_NOT_REACHED (this is an internal consistency check, not an
	argument check on a public API, so an assert is more appropriate than
	an exception).
        (-[WebFrame _transitionToCommitted]): Likewise.
        (-[WebFrame _isLoadComplete]): Likewise; also, remove bridge call
	to scrollToBaseAnchor:, since that will now happen automatically
	when calling end.

2002-08-02  Darin Adler  <darin@apple.com>

	WebKit support for feature where client redirects are treated as if the
	page was continuing to load.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge reportClientRedirectTo:delay:fireDate:]): Added. Passes the client
	redirect along to the location change handler.
        (-[WebBridge reportClientRedirectCancelled]): Passes client redirect cancel along
	to the location change handler.
        (-[WebBridge dataSourceChanged]): Remove hack related to dummy data source.
        (-[WebBridge dataSource]): Remove hack related to dummy data source.

        * WebView.subproj/WebLocationChangeHandler.h: Added client redirect methods.
	Added class for base implementation of protocol. Updated stale comment.
        * WebView.subproj/WebLocationChangeHandler.m: Added. Provides base implementation
	of the WebLocationChangeHandler protocol so that clients don't need to implement
	all the methods if they are only interested in some of them.
        * WebKit.pbproj/project.pbxproj: Added WebLocationChangeHandler.m.

        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _goToItem:withFrameLoadType:]): Call scrollToAnchor under its new name.

        * Misc.subproj/WebIconLoader.h:
        * Misc.subproj/WebIconLoader.m:
        * WebView.subproj/WebControllerPolicyHandler.m:
        * WebView.subproj/WebControllerPolicyHandlerPrivate.h:
	Replaced __MyCompanyName__ with the actual name of our company.

2002-08-02  John Sullivan  <sullivan@apple.com>

	- fixed 3015705 -- Command-up-arrow and -down-arrow should go to
	beginning and end of web page

        * WebView.subproj/WebView.m:
        (-[WebView keyDown:]):
	Added checks for command key.

2002-08-01  Richard Williamson  <rjw@apple.com>

        Effort towards 3014555 (going back to frame), but not fixed.  
        Need to think more about appropriate solution and compromises.
        
        * History.subproj/WebBackForwardList.h:
        * History.subproj/WebBackForwardList.m:
        (-[WebBackForwardList backEntryAtIndex:]):
        * History.subproj/WebHistoryItem.h:
        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem initWithURL:title:]):
        (-[WebHistoryItem initWithURL:title:image:]):
        (-[WebHistoryItem initWithURL:target:parent:title:image:]):
        (-[WebHistoryItem dealloc]):
        (-[WebHistoryItem parent]):
        (-[WebHistoryItem setTitle:]):
        (-[WebHistoryItem setTarget:]):
        (-[WebHistoryItem setParent:]):
        (-[WebHistoryItem setDisplayTitle:]):
        * WebCoreSupport.subproj/WebBridge.m:
        * WebView.subproj/WebController.m:
        (-[WebController _goToItem:withFrameLoadType:]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]):
        (-[WebFrame _isLoadComplete]):
        (-[WebFrame _scrollToTop]):

2002-08-01  Chris Blumenberg  <cblu@apple.com>

	Only send command key events if the plug-in is in the responder chain.

        * Plugins.subproj/WebPluginView.m:
        (-[WebPluginView isInResponderChain]):
        (-[WebPluginView performKeyEquivalent:]):
        (-[WebPluginView setWindow]): added some more logging

2002-08-01  Chris Blumenberg  <cblu@apple.com>

	Only send command keyDown once by ignoring the keyDown that comes after performKeyEquivalent.

        * Plugins.subproj/WebPluginView.m:
        (-[WebPluginView keyDown:]):

2002-08-01  Chris Blumenberg  <cblu@apple.com>

	Fixed: 2970530 - Command keys are not getting passed in to plugins

        * Plugins.subproj/WebPluginView.m:
        (-[WebPluginView performKeyEquivalent:]):

2002-08-01  Richard Williamson  <rjw@apple.com>

        More back/forward work.  Support for restoring scroll position.
        We still have a big remaining issue.  We don't record the entire
        frame tree in back/forward items.  This means going back or forward
        to a frame will looose the context of the containing frameset,
        see 3014555.
        
        * History.subproj/WebBackForwardList.m:
        (-[WebBackForwardList currentEntry]):
        * History.subproj/WebHistoryItem.h:
        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem anchor]):
        (-[WebHistoryItem setAnchor:]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge reportError:]):
        * WebView.subproj/WebController.m:
        (-[WebController _goToItem:withFrameLoadType:]):
        (-[WebController goBack]):
        (-[WebController goForward]):
        * WebView.subproj/WebFrame.m:
        (-[WebFrame setProvisionalDataSource:]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]):
        (-[WebFrame _isLoadComplete]):
        (-[WebFrame _goToItem:withFrameLoadType:]):
        (-[WebFrame _restoreScrollPosition]):
        (-[WebFrame _scrollToTop]):

2002-08-01  Chris Blumenberg  <cblu@apple.com>

	Fixed:
	2938010 - PLUGINS: right-click support
	2938011 - PLUGINS: extended key events support
	2970523 - Arrow key events not correctly passed to applets

        * Plugins.subproj/WebPluginView.m:
        (-[WebPluginView modifiersForEvent:]):
        (-[WebPluginView getCarbonEvent:withEvent:]):
        (-[WebPluginView mouseDown:]):
        (-[WebPluginView keyUp:]):
        (-[WebPluginView keyDown:]):
        (-[WebPluginView menuForEvent:]):

=== Alexander-15 ===

2002-08-01  Don Melton  <gramps@apple.com>

	Fixed deployment build compile problem.

        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]):

2002-08-01  Maciej Stachowiak  <mjs@apple.com>

        Remove stuff formerly useful for "View Reconstructed Source"
	feature but now useless.
	
        * WebView.subproj/WebDataSource.h:
        * WebView.subproj/WebDataSource.m:
	(-[WebDataSource documentTextFromDOM]): Removed.
	
2002-07-31  Maciej Stachowiak  <mjs@apple.com>

	Changed things around so that WebFrame, not WebDataSource, owns
	WebBridge. This allows us to remove the dummy data source.
	
        * WebView.subproj/WebFrame.m:
        (-[WebFrame
	initWithName:webView:provisionalDataSource:controller:]): Remove
	all dummy data source-related crud, but call _changeBridge to
	create the initial bridge.
        (-[WebFrame setProvisionalDataSource:]): Remove dummy data
	source-related epicycles.
        * WebView.subproj/WebFramePrivate.h: Add bridge member to private class.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFramePrivate setDataSource:]): Don't remove old data source from frame,
	this is no longer needed and may even be harmful.
        (-[WebFrame _transitionToCommitted]): Remove much now-unneeded code.
        (-[WebFrame _isLoadComplete]): Get location change handler from controller.
	Don't call end on the bridge if the document is not html.
        (-[WebFrame _changeBridge]): Free the old bridge and make a new one.
        (-[WebFrame _bridge]): Get it directly, not from the data source.
        
	* WebView.subproj/WebDataSourcePrivate.h: Remove everything related to the
	`dummy' concept.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _setFinalURL:]): Reorder code a bit.
        (-[WebDataSource _bridge]): Get bridge from frame.
        (-[WebDataSource _commitIfReady]): No more need to set the bridge's frame.
        (-[WebDataSource _makeRepresentation]): Set data source on the rep.
        (-[WebDataSource _startLoading:]): Get location change handler from controller.
        (-[WebDataSource _setTitle:]): Likewise.
        (-[WebDataSource receivedPageIcon:]): Likewise.
        (-[WebDataSource _loadIcon]): Likewise.
        
	* WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient
	WebResourceHandle:dataDidBecomeAvailable:]): Get location change
	handler from the controller.

        * WebView.subproj/WebViewPrivate.m:
        (-[WebView _makeDocumentViewForDataSource:]): Change *and* commit
	the data source. This could probably be collapsed down to one
	method now.

        * WebView.subproj/WebDocument.h: Added setDataSource: method to
	the WebDocumentRepresenation protocol. For now it is only useful
	for the HTML representation, but could potentially be useful for
	other representation classes. It should also allow the data source
	to be removed as a parameter from other methods, but I have not
	done that yet. It may be even better still to pass the data source
	as a paremeter to the init method.

        * WebView.subproj/WebHTMLRepresentation.m:
        (-[WebHTMLRepresentation init]): Remove allocation of bridge.
        (-[WebHTMLRepresentation dealloc]): Remove release of bridge.
        (-[WebHTMLRepresentation setDataSource:]): Store unretained reference
	to the data source's frame's bridge.
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _bridge]): Fetch the bridge from the frame, not the
	data source.
        * WebView.subproj/WebImageRepresentation.m:
        (-[WebImageRepresentation setDataSource:]): Added empty
	implementation.
        * WebView.subproj/WebTextRepresentation.m:
        (-[WebTextRepresentation setDataSource:]): Added empty
	implementation.
        * Plugins.subproj/WebPluginStream.m:
        (-[WebPluginStream setDataSource:]): Added empty implementation.

2002-07-30  Maciej Stachowiak  <mjs@apple.com>

	Fixes of various bugs that prevented Alexander from running the
	Mozilla page load test.

	- fixed 3008682 - Alexander cannot run Mozilla-PLT
	
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge dataSourceChanged]): Don't call setURL: to set a URL
	that we got from a redirect; just pass it directly to
	openURL:. The inputURL is irrelevant.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _setFinalURL:]): Don't call setURL: on the
	bridge; instead, assert that the data source is committed, because
	it would be a mistake to get a redirect after having received
	data.

2002-07-30  Richard Williamson  <rjw@apple.com>

        Remove annoying log, it's really annoying.  Added FIX ME
        comment instead.
        
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]):

2002-07-30  John Sullivan  <sullivan@apple.com>

	- fixed 3012083 "Looked for URLs on the pasteboard, but found
	none" spam dragging nil-target bookmark

        * Misc.subproj/WebNSViewExtras.m:
        (-[NSView _web_bestURLForDraggingInfo:]):
	This method was getting data for types on the pasteboard without
	first checking whether the types were on the pasteboard, a no-no.
	Restructured this method and tweaked it here and there also.

        (-[NSView _web_dragOperationForDraggingInfo:]): moved a fast
	test in front of a slow test

2002-07-29  Richard Williamson  <rjw@apple.com>

        Removed setDirectsAllLinksToSystemBrowser: method, not needed
        and antiquated by the policy APIs.
        
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:

2002-07-29  Richard Williamson  <rjw@apple.com>

        Changes to support the migration of back/forward list to WebKit.
        Back/forward in frames now works (2946164), still not done w/
        restoring scroll positions (2927633).
        
        * History.subproj/WebHistoryItem.h:
        * History.subproj/WebHistoryItem.m:
        (+[WebHistoryItem entryWithURL:]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (-[WebController initWithView:provisionalDataSource:]):
        (-[WebController setUseBackForwardList:]):
        (-[WebController useBackForwardList]):
        (-[WebController goBack]):
        (-[WebController goForward]):
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebFrame.m:
        (-[WebFrame setProvisionalDataSource:]):
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]):
        (-[WebFrame _setProvisionalDataSource:]):
        (-[WebFrame _goToURL:withFrameLoadType:]):
        * WebView.subproj/WebViewPrivate.m:
        (-[WebView _goBack]):
        (-[WebView _goForward]):

2002-07-29  Richard Williamson  <rjw@apple.com>

        Fixed 3009074.  Added [WebHTMLView jumpToSelection:] and related user interface
        item validation.
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView jumpToSelection:]):
        (-[WebHTMLView validateUserInterfaceItem:]):

2002-07-29  Richard Williamson  <rjw@apple.com>

        Fixed 3009085.  Implemented takeFindStringFromSelection: on WebHTMLView and WebTextView.
        Also added user interface item validation for that method.
        
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView hasSelection]):
        (-[WebHTMLView takeFindStringFromSelection:]):
        (-[WebHTMLView validateUserInterfaceItem:]):
        * WebView.subproj/WebTextView.m:
        (-[WebTextView canTakeFindStringFromSelection]):
        (-[WebTextView takeFindStringFromSelection:]):

2002-07-29  Chris Blumenberg  <cblu@apple.com>

	Fixed:
	2971845 - text view uses default "user font" (Helvetica), not fonts chosen in Alexander preferences

        * WebView.subproj/WebTextView.m:
        (-[WebTextView initWithFrame:]): add observer
        (-[WebTextView dealloc]): remove observer
        (-[WebTextView setFixedWidthFont]): added, checks defaults
        (-[WebTextView dataSourceUpdated:]): calls setFixedWidthFont
        (-[WebTextView searchFor:direction:caseSensitive:]): no changes
        (-[WebTextView defaultsChanged:]): calls setFixedWidthFont

2002-07-27  Chris Blumenberg  <cblu@apple.com>

	Implemented click policy, support for option-click
	Implemented dragging of links and images from WebHTMLView	

        * Misc.subproj/WebNSViewExtras.h:
        * Misc.subproj/WebNSViewExtras.m:
        (-[NSView _web_dragShouldBeginFromMouseDown:withExpiration:]): added, moved from WebBrowser
        (-[NSView _web_dragOperationForDraggingInfo:]): don't accept drag if source == destination
        * WebView.subproj/WebControllerPolicyHandler.h:
        * WebView.subproj/WebControllerPolicyHandler.m:
        (-[WebPolicy URL]): needed for click policy
        (+[WebURLPolicy webPolicyWithURLAction:]):
        (+[WebFileURLPolicy webPolicyWithFileAction:]):
        (+[WebContentPolicy webPolicyWithContentAction:andPath:]):
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _downloadURL:toPath:]): added, simply downloads a URL
        * WebView.subproj/WebDefaultContextMenuHandler.m:
        (-[WebDefaultContextMenuHandler downloadURL:]): calls [WebController _downloadURL:toPath:]
        * WebView.subproj/WebDefaultPolicyHandler.m:
        (-[WebDefaultPolicyHandler clickPolicyForElement:button:modifierMask:]):
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView mouseDown:]): calls _continueAfterCheckingDragForEvent
        (-[WebHTMLView mouseUp:]): calls _continueAfterClickPolicyForEvent
        (-[WebHTMLView draggingSourceOperationMaskForLocal:]): added
        (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): added, starts download
        * WebView.subproj/WebHTMLViewPrivate.h:
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLViewPrivate dealloc]):
        (-[WebHTMLView _elementAtPoint:]):
        (-[WebHTMLView _continueAfterClickPolicyForEvent:]): added, implements click policy
        (-[WebHTMLView _continueAfterCheckingDragForEvent:]): added, checks if mouse event is a drag

2002-07-26  Richard Williamson  <rjw@apple.com>

        WebframeLoadType enum first value wasn't explicitly set, so 0 was used.  
        I assumed 0 was unitialized, and depended on that to not execute some 'transitional'
        back/forward.  This problem broke back/forward.

        * WebView.subproj/WebFramePrivate.h:

2002-07-26  John Sullivan  <sullivan@apple.com>

	WebKit part of fix for 3009404 -- Back/Forward menu items should use [ and ],
	but command-arrows should still work too. 

        * WebView.subproj/WebController.h:
	- added goForward to windowContext protocol. This is temporary, just like goBack
	here is temporary; they can be migrated into the new back-forward-in-WebKit design
	together.
        * WebView.subproj/WebView.m:
        (-[WebView keyDown:]): call _goBack and _goForward for command-arrow keys

        * WebView.subproj/WebViewPrivate.h,
        * WebView.subproj/WebViewPrivate.m:
        (-[WebView _goForward]): add _goForward, parallel to _existing goBack.

2002-07-26  Chris Blumenberg  <cblu@apple.com>

	Fixed crash in unknown_text
	Fixed full-window plug-ins. I think darin broken this :)
	Cleaned up WebPluginStream a bit

        * Plugins.subproj/WebPluginDatabase.m:
        (-[WebPluginDatabase init]):
        * Plugins.subproj/WebPluginStream.m:
        (-[WebPluginStream getFunctionPointersFromPluginView:]):
        (-[WebPluginStream initWithURL:pluginPointer:notifyData:attributes:]):
        (-[WebPluginStream startLoad]):
        (-[WebPluginStream stop]):
        (-[WebPluginStream setUpGlobalsWithHandle:]):
        (-[WebPluginStream receivedError:]):
        (-[WebPluginStream receivedData:withDataSource:]):
        (-[WebPluginStream receivedError:withDataSource:]):
        (-[WebPluginStream WebResourceHandle:dataDidBecomeAvailable:]):
        (-[WebPluginStream WebResourceHandleDidCancelLoading:]):
        (-[WebPluginStream WebResourceHandle:didFailLoadingWithResult:]):
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _mainHandle]): added, WebPluginStream needs this

2002-07-25  Richard Williamson  <rjw@apple.com>

        More incremental changes for back/forward migration.

        * History.subproj/WebBackForwardList.h:
        * History.subproj/WebBackForwardList.m:
        (-[WebBackForwardList init]):
        (-[WebBackForwardList dealloc]):
        (-[WebBackForwardList addEntry:]):
        (-[WebBackForwardList goBack]):
        (-[WebBackForwardList goBackToIndex:]):
        (-[WebBackForwardList backEntry]):
        (-[WebBackForwardList currentEntry]):
        (-[WebBackForwardList forwardEntry]):
        (-[WebBackForwardList goForward]):
        (-[WebBackForwardList goForwardToIndex:]):
        (-[WebBackForwardList canGoBack]):
        (-[WebBackForwardList canGoForward]):
        (-[WebBackForwardList description]):
        * History.subproj/WebHistoryItem.h:
        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem initWithURL:title:]):
        (-[WebHistoryItem initWithURL:title:image:]):
        (-[WebHistoryItem initWithURL:target:title:image:]):
        (-[WebHistoryItem dealloc]):
        (-[WebHistoryItem target]):
        (-[WebHistoryItem setTarget:]):
        (-[WebHistoryItem setLastVisitedDate:]):
        (-[WebHistoryItem scrollPoint]):
        (-[WebHistoryItem setScrollPoint:]):
        * History.subproj/WebHistoryList.m:
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFramePrivate setLoadType:]):
        (-[WebFrame _setLoadType:]):
        (-[WebFrame _loadType]):
        (-[WebFrame _transitionToCommitted]):

2002-07-25  Chris Blumenberg  <cblu@apple.com>

	Made some WebPolicy API's private
	Added support for download link/image to disk

        * Misc.subproj/WebDownloadHandler.m:
        (-[WebDownloadHandler receivedData:]):
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebControllerPolicyHandler.h:
        * WebView.subproj/WebControllerPolicyHandler.m:
        (-[WebPolicyPrivate dealloc]):
        (-[WebPolicy _setPolicyAction:]):
        (-[WebPolicy policyAction]):
        (-[WebPolicy path]):
        (-[WebPolicy _setPath:]):
        (-[WebPolicy dealloc]):
        (+[WebURLPolicy webPolicyWithURLAction:]):
        (+[WebFileURLPolicy webPolicyWithFileAction:]):
        (+[WebContentPolicy webPolicyWithContentAction:andPath:]):
        (+[WebClickPolicy webPolicyWithClickAction:andPath:]):
        * WebView.subproj/WebControllerPolicyHandlerPrivate.h: Added.
        * WebView.subproj/WebDefaultContextMenuHandler.m:
        (-[WebDefaultContextMenuHandler downloadURL:]):
        (-[WebDefaultContextMenuHandler downloadLinkToDisk:]):
        (-[WebDefaultContextMenuHandler openImageInNewWindow:]):
        (-[WebDefaultContextMenuHandler downloadImageToDisk:]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient WebResourceHandle:dataDidBecomeAvailable:]):

2002-07-25  Chris Blumenberg  <cblu@apple.com>

	Fixed crasher caused by not retaining the content policy.

        * WebView.subproj/WebControllerPolicyHandler.h:
        * WebView.subproj/WebMainResourceClient.h:
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient WebResourceHandle:dataDidBecomeAvailable:]):

2002-07-25  Chris Blumenberg  <cblu@apple.com>

	Made policy APIs return a WebPolicy object.
	Added click policy.

        * Misc.subproj/WebDownloadHandler.m:
        (-[WebDownloadHandler receivedData:]):
        (-[WebDownloadHandler finishedLoading]):
        (-[WebDownloadHandler cancel]):
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (+[WebController defaultURLPolicyForURL:]):
        * WebView.subproj/WebControllerPolicyHandler.h:
        * WebView.subproj/WebControllerPolicyHandler.m: Added.
        (-[WebPolicy initWithPolicyAction:]):
        (-[WebPolicy policyAction]):
        (+[WebURLPolicy webPolicyWithURLAction:]):
        (+[WebFileURLPolicy webPolicyWithFileAction:]):
        (+[WebContentPolicy webPolicyWithContentAction:andPath:]):
        (-[WebContentPolicy initWithContentPolicyAction:andPath:]):
        (-[WebContentPolicy dealloc]):
        (-[WebContentPolicy path]):
        (-[WebClickPolicy initWithClickPolicyAction:andPath:]):
        (+[WebClickPolicy webPolicyWithClickAction:andPath:]):
        (-[WebClickPolicy dealloc]):
        (-[WebClickPolicy path]):
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
        * WebView.subproj/WebDataSource.h:
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource contentPolicy]):
        (-[WebDataSource fileType]):
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]):
        (-[WebDataSource _setContentPolicy:]):
        (-[WebDataSource _commitIfReady]):
        (-[WebDataSource _isReadyForData]):
        * WebView.subproj/WebDefaultPolicyHandler.m:
        (-[WebDefaultPolicyHandler URLPolicyForURL:]):
        (-[WebDefaultPolicyHandler fileURLPolicyForMIMEType:dataSource:isDirectory:]):
        (-[WebDefaultPolicyHandler unableToImplementFileURLPolicy:error:forDataSource:]):
        (-[WebDefaultPolicyHandler unableToImplementURLPolicy:error:forURL:]):
        (-[WebDefaultPolicyHandler pluginNotFoundForMIMEType:pluginPageURL:]):
        (-[WebDefaultPolicyHandler clickPolicyForElement:button:modifierMask:]):
        * WebView.subproj/WebFrame.m:
        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _shouldShowDataSource:]):
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient receivedProgressWithHandle:complete:]):
        (-[WebMainResourceClient receivedError:forHandle:]):
        (-[WebMainResourceClient WebResourceHandleDidFinishLoading:data:]):
        (-[WebMainResourceClient WebResourceHandle:dataDidBecomeAvailable:]):

2002-07-25  Darin Adler  <darin@apple.com>

        * WebKit.pbproj/project.pbxproj: Add DeploymentFat build style.

2002-07-25  Darin Adler  <darin@apple.com>

	WebKit part of fix for 3006054 -- assert error failingURL != nil

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge reportError:]): New. Passes the error to the controller associated with
	the dataSource.

        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:]): Call absoluteString.
        (-[WebSubresourceClient WebResourceHandleDidCancelLoading:]): Call absoluteString.
        * WebView.subproj/WebController.m:
        (-[WebController haveContentPolicy:andPath:forDataSource:]): Call absoluteString.
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
	Don't call absoluteString.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _shouldShowDataSource:]): Call absoluteString.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient WebResourceHandleDidCancelLoading:]): Call absoluteString.

2002-07-25  Chris Blumenberg  <cblu@apple.com>

	Remove reloadImage until its implemented.

        * WebView.subproj/WebDefaultContextMenuHandler.m:
        (-[WebDefaultContextMenuHandler contextMenuItemsForElement:defaultMenuItems:]):

2002-07-25  Chris Blumenberg  <cblu@apple.com>

	Renamed elementInfoAtPoint to elementAtPoint

        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebDefaultContextMenuHandler.h:
        * WebView.subproj/WebDefaultContextMenuHandler.m:
        (+[WebDefaultContextMenuHandler addMenuItemWithTitle:action:target:toArray:]): renamed
        (-[WebDefaultContextMenuHandler contextMenuItemsForElement:defaultMenuItems:]):
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView menuForEvent:]):
        * WebView.subproj/WebHTMLViewPrivate.h:
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _elementAtPoint:]):

2002-07-24  Chris Blumenberg  <cblu@apple.com>

	tiny change

        * WebView.subproj/WebDefaultContextMenuHandler.m:

2002-07-24  Chris Blumenberg  <cblu@apple.com>

	Added implmentations for a few context menu items.

        * WebView.subproj/WebController.h:
        * WebView.subproj/WebDefaultContextMenuHandler.h:
        * WebView.subproj/WebDefaultContextMenuHandler.m:
        (-[WebDefaultContextMenuHandler dealloc]):
        (-[WebDefaultContextMenuHandler contextMenuItemsForElement:defaultMenuItems:]):
        (-[WebDefaultContextMenuHandler validateUserInterfaceItem:]):
        (-[WebDefaultContextMenuHandler openNewWindowWithURL:]):
        (-[WebDefaultContextMenuHandler openLinkInNewWindow:]):
        (-[WebDefaultContextMenuHandler copyLinkToClipboard:]):
        (-[WebDefaultContextMenuHandler openImageInNewWindow:]):
        (-[WebDefaultContextMenuHandler copyImageToClipboard:]):
        (-[WebDefaultContextMenuHandler reloadImage:]):
        (-[WebDefaultContextMenuHandler openFrameInNewWindow:]):
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView menuForEvent:]):

2002-07-24  Richard Williamson  <rjw@apple.com>

        Removed vestigal locationChangeHandler ivar.
        
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _loadIcon]):

2002-07-24  Chris Blumenberg  <cblu@apple.com>

	Call [self _locationChangeHandler] instead of _private-locationChangeHandler

        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource receivedPageIcon:]):

2002-07-24  Richard Williamson  <rjw@apple.com>

        Implemented find for text views.
        
        * WebView.subproj/WebTextView.m:
        (-[NSString findString:selectedRange:options:wrap:]):
        (-[WebTextView searchFor:direction:caseSensitive:]):

2002-07-24  Chris Blumenberg  <cblu@apple.com>

	Implemented initial contextual menus. None activated yet.

        * WebView.subproj/WebDefaultContextMenuHandler.h:
        * WebView.subproj/WebDefaultContextMenuHandler.m:
        (-[WebDefaultContextMenuHandler dealloc]): added
        (-[WebDefaultContextMenuHandler addMenuItemWithTitle:action:toArray:]): added
        (-[WebDefaultContextMenuHandler contextMenuItemsForElementInfo:defaultMenuItems:]): create menu items
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView menuForEvent:]): 

2002-07-24  Chris Blumenberg  <cblu@apple.com>

	More renaming for WebDefaultPolicyHandler.

        * WebView.subproj/WebController.m:
        (-[WebController policyHandler]):
        * WebView.subproj/WebDefaultPolicyHandler.h:
        * WebView.subproj/WebDefaultPolicyHandler.m:

2002-07-24  Chris Blumenberg  <cblu@apple.com>

	Renamed WebDefaultControllerPolicyHandler to WebDefaultPolicyHandler.

        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebDefaultControllerPolicyHandler.h: Removed.
        * WebView.subproj/WebDefaultControllerPolicyHandler.m: Removed.
        * WebView.subproj/WebDefaultPolicyHandler.h: Added.
        * WebView.subproj/WebDefaultPolicyHandler.m: Added.
        (-[WebDefaultControllerPolicyHandler initWithWebController:]):
        (-[WebDefaultControllerPolicyHandler URLPolicyForURL:]):
        (-[WebDefaultControllerPolicyHandler fileURLPolicyForMIMEType:dataSource:isDirectory:]):
        (-[WebDefaultControllerPolicyHandler unableToImplementFileURLPolicy:forDataSource:]):
        (-[WebDefaultControllerPolicyHandler requestContentPolicyForMIMEType:dataSource:]):
        (-[WebDefaultControllerPolicyHandler unableToImplementURLPolicyForURL:error:]):
        (-[WebDefaultControllerPolicyHandler unableToImplementContentPolicy:forDataSource:]):
        (-[WebDefaultControllerPolicyHandler pluginNotFoundForMIMEType:pluginPageURL:]):

2002-07-24  Chris Blumenberg  <cblu@apple.com>

	More plumbing for contextual menu support.

        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (-[WebController setContextMenuHandler:]): added
        (-[WebController contextMenuHandler]): added
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebControllerPrivate init]): alloc WebDefaultContextMenuHandler
        (-[WebControllerPrivate dealloc]): dealloc WebDefaultContextMenuHandler
        (-[WebController _defaultContextMenuHandler]):
        * WebView.subproj/WebDefaultContextMenuHandler.h: Added.
        * WebView.subproj/WebDefaultContextMenuHandler.m: Added.
        (-[WebDefaultContextMenuHandler contextMenuItemsForElementInfo:defaultMenuItems:]): new
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView menuForEvent:]): call contextMenuHandlers
        * WebView.subproj/WebHTMLViewPrivate.h:
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _setController:]): added comment
        (-[WebHTMLView _controller]): added

2002-07-24  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer xHeight]): Added. Calls [NSFont xHeight].

        * WebView.subproj/WebPreferences.h:
        * WebView.subproj/WebPreferences.m:
        (+[WebPreferences load]):
        (-[WebPreferences defaultFontSize]):
        (-[WebPreferences setDefaultFontSize:]):
	Renamed minimumFont to defaultFont, and changed it from 11 to 16.
	Also changed default monospaced font to Courier instead of Monaco.

2002-07-24  Richard Williamson  <rjw@apple.com>

        Support for find in HTML, find in text view coming soon.
        
        * WebView.subproj/WebDocument.h:
        * WebView.subproj/WebHTMLView.h:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView searchFor:direction:caseSensitive:]):
        * WebView.subproj/WebTextView.h:
        * WebView.subproj/WebTextView.m:
        (-[WebTextView searchFor:direction:caseSensitive:]):

2002-07-23  Chris Blumenberg  <cblu@apple.com>

	More plumbing for contextual menu support.

        * WebCoreSupport.subproj/WebBridge.h:
        * WebCoreSupport.subproj/WebBridge.m:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView menuForEvent:]):
        * WebView.subproj/WebHTMLViewPrivate.h:
        * WebView.subproj/WebHTMLViewPrivate.m:
        (-[WebHTMLView _elementInfoAtPoint:]): added

2002-07-23  Darin Adler  <darin@apple.com>

        * WebKit.pbproj/project.pbxproj: Fix file reference types to be more consistent.

2002-07-23  Chris Blumenberg  <cblu@apple.com>

	Initial plumbing for contextual menu support.

        * WebCoreSupport.subproj/WebBridge.h:
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge elementInfoForMouseEvent:]): added
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView menuForEvent:]): added

2002-07-23  Darin Adler  <darin@apple.com>

        * WebKit.pbproj/project.pbxproj: Fix paths for newly added files.

2002-07-23  Richard Williamson  <rjw@apple.com>

        Cleaned up LocationChangeHandler.  We now have one per controller.
        
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (-[WebController policyHandler]):
        (-[WebController setLocationChangeHandler:]):
        (-[WebController locationChangeHandler]):
        * WebView.subproj/WebControllerPolicyHandler.h:
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]):
        
        (-[WebDataSource _setIsDummy:)
        (-[WebDataSource _isDummy]):
        Hack on hack.  MJS will remove when the dummy data source hack is removed.
        
        (-[WebDataSource _locationChangeHandler]):
        (-[WebDataSource _removeFromFrame]):
        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
        (-[WebFrame setProvisionalDataSource:]):
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFramePrivate dealloc]):
        
        Added default policy handler.  This is used if no policy handler is
        set on the controller.
        
        * WebView.subproj/WebDefaultControllerPolicyHandler.h: Added.
        * WebView.subproj/WebDefaultControllerPolicyHandler.m: Added.
        (-[WebDefaultControllerPolicyHandler initWithWebController:]):
        (-[WebDefaultControllerPolicyHandler URLPolicyForURL:]):
        (-[WebDefaultControllerPolicyHandler fileURLPolicyForMIMEType:dataSource:isDirectory:]):
        (-[WebDefaultControllerPolicyHandler unableToImplementFileURLPolicy:forDataSource:]):
        (-[WebDefaultControllerPolicyHandler requestContentPolicyForMIMEType:dataSource:]):
        (-[WebDefaultControllerPolicyHandler unableToImplementURLPolicyForURL:error:]):
        (-[WebDefaultControllerPolicyHandler unableToImplementContentPolicy:forDataSource:]):
        (-[WebDefaultControllerPolicyHandler pluginNotFoundForMIMEType:pluginPageURL:]):
        * WebView.subproj/WebFrame.m:

2002-07-23  Darin Adler  <darin@apple.com>

        * Makefile.am: Clean based on all, not all-am, so it happens before subdirs
	if any.

2002-07-23  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer drawUnderlineForCharacters:stringLength:atPoint:withColor:]):
	Change API to take character array instead of a string.

        * WebKit.pbproj/project.pbxproj: Took "subproj" off the names of some groups.

=== Alexander-14 ===

2002-07-22  Richard Williamson  <rjw@apple.com>

        Moved back/forward list from Alex's document to WebController.  First step
        to address a series of back/forward related issues.        

        * WebView.subproj/WebController.h:
        * WebView.subproj/WebController.m:
        (-[WebController backForwardList]):
        * WebView.subproj/WebControllerPrivate.h:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebControllerPrivate init]):
        (-[WebControllerPrivate dealloc]):

2002-07-22  Chris Blumenberg  <cblu@apple.com>

	Strip white space before and after URL string 2998696

        * Misc.subproj/WebNSViewExtras.m:
        (-[NSView _web_bestURLForDraggingInfo:]):

2002-07-22  Ken Kocienda  <kocienda@apple.com>

        * WebView.subproj/WebHTMLView.m: import of removed WebFrame bridge header was
	left in, causing a build break.

2002-07-22  Maciej Stachowiak  <mjs@apple.com>

        Merged WebBridge and WebFrameBridge.

        * WebCoreSupport.subproj/WebBridge.h:
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge childFrames]): Return bridges, not frameBridges.
        (-[WebBridge descendantFrameNamed:]): Return bridge, not frameBridge.
        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]): Return a bridge, not a frameBridge.
        (-[WebBridge mainFrame]): Return a bridge, not a frameBridge.
        (-[WebBridge frameNamed:]):Return a bridge, not a frameBridge.
        (-[WebBridge loadURL:attributes:flags:withParent:]): Moved from WebFrameBridge.
        (-[WebBridge loadURL:]): Moved from WebFrameBridge.
        (-[WebBridge postWithURL:data:]): Moved from WebFrameBridge.
        * WebCoreSupport.subproj/WebFrameBridge.h: Removed.
        * WebCoreSupport.subproj/WebFrameBridge.m: Removed.
        * WebView.subproj/WebFrame.m:
        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]): Don't create
	a WebFrameBridge.
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFramePrivate dealloc]): No longer dealloc frameBridge, since we don't have one.
        (-[WebFrame _transitionToCommitted]): Pass along the frame's render part, if any. 
        (-[WebFrame _frameBridge]): Removed.
        * WebKit.pbproj/project.pbxproj: Removed deleted files.

2002-07-22  Maciej Stachowiak  <mjs@apple.com>

	Change WebBridge to hold on to a WebFrame instead of a
	WebDataSource. Since we will no longer ever have a bridge for a
	provisional data source, we'll just bind the bridge to a
	frame. Which means we can merge the bridge and the frame bridge
	next.
	
        * WebCoreSupport.subproj/WebBridge.h: 
	* WebCoreSupport.subproj/WebBridge.m: Changed below methods to work
	with direct knowledge of the frame but not the bridge (mostly a
	simplification).
        (-[WebBridge frame]): 
        (-[WebBridge parent]):
        (-[WebBridge childFrames]):
        (-[WebBridge descendantFrameNamed:]):
        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
        (-[WebBridge openNewWindowWithURL:]):
        (-[WebBridge areToolbarsVisible]):
        (-[WebBridge setToolbarsVisible:]):
        (-[WebBridge areScrollbarsVisible]):
        (-[WebBridge setScrollbarsVisible:]):
        (-[WebBridge isStatusBarVisible]):
        (-[WebBridge setStatusBarVisible:]):
        (-[WebBridge setWindowFrame:]):
        (-[WebBridge window]):
        (-[WebBridge setStatusText:]):
        (-[WebBridge mainFrame]):
        (-[WebBridge frameNamed:]):
        (-[WebBridge receivedData:withDataSource:]):
        (-[WebBridge objectLoadedFromCache:size:]):
        (-[WebBridge setFrame:]):
        (-[WebBridge dataSourceChanged]):
        (-[WebBridge dataSource]):
        (-[WebBridge openedByScript]):
        (-[WebBridge setOpenedByScript:]):

        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _commitIfReady]): Set bridge's frame and notify
	that the data source changed.
	* WebView.subproj/WebFrame.m:
        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]): Set
	bridge's frame.
        * WebView.subproj/WebFramePrivate.h, WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _bridge]): Method to get the bridge.

2002-07-21  Maciej Stachowiak  <mjs@apple.com>

        Removed provisional/committed distinction from WebCore and the
	WebCore SPI. WebCore will never see a provisional data source or
	provisional anything, any more. 

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge descendantFrameNamed:]): Don't bother with the provisional
	bridge - no such thing.
        (-[WebBridge setDataSource:]): Assert the data source is committed.
        * WebCoreSupport.subproj/WebFrameBridge.m:
        (-[WebFrameBridge bridge]): Return committed bridge always, and remove
	committed bridge method.

2002-07-21  Maciej Stachowiak  <mjs@apple.com>

        Fix a regression in my recent refactoring that broke JavaScript
	window opening, by doing some trickery to make a frame's initial
	dummy data source committed.

        * WebView.subproj/WebFrame.m:
        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
	Create dummy data source as committed, not provisional.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionToCommitted]): Allow the documentView to be nil
	if there is no webView either; this is temporarily needed to handle
	the special initial dummy data source, which will be going away soon.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _receivedData:]): Add temporary special case to
	avoid sending empty NSData to the representation, to avoid
	triggering WebCore assertions.
	* WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge openNewWindowWithURL:]): Get the committed data
	source, not the provisional one.

2002-07-21  Chris Blumenberg  <cblu@apple.com>
	Used darin-inspired code factoring to fix 3000801 (alex doesn't accept drag of webloc file) in 3 places where we accept drags.
     
        * Misc.subproj/WebNSViewExtras.h:
        * Misc.subproj/WebNSViewExtras.m:
        (-[NSView _web_parentWebView]): no changes
        (-[NSView _web_acceptableDragTypes]): added
        (-[NSView _web_bestURLForDraggingInfo:]): added
        (-[NSView _web_dragOperationForDraggingInfo:]): added
        * WebKit.pbproj/project.pbxproj: made WebNSViewExtras.h public
        * WebView.subproj/WebView.m:
        (-[WebView initWithFrame:]): calls _web_acceptableDragTypes
        (-[WebView draggingEntered:]): calls _web_dragOperationForDraggingInfo
        (-[WebView concludeDragOperation:]): calls _web_bestURLForDraggingInfo

2002-07-21  Chris Blumenberg  <cblu@apple.com>

	- We were loading icons when page loads ended in error. Fixed.
	- Special-case file URLs once instead of twice by moving NSWorkspace
	  call out of WebIconLoader

        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader startLoading]): removed file URL special-case
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _loadIcon]): check for document error, send file 
icon to client if none has been set with the LINK tag

2002-07-21  Maciej Stachowiak  <mjs@apple.com>

        * Makefile.am: Remove products from symroots on `make clean'.

2002-07-21  Maciej Stachowiak  <mjs@apple.com>

        * WebKit.pbproj/project.pbxproj: Set directories for the group
	folders, so that creating new files in them will put them in the
	right directory by default.

2002-07-21  Maciej Stachowiak  <mjs@apple.com>

        More refactoring. Change bridge to get the data source via a
	method instead of straight from the ivar, and in the method,
	assert that the data source is not nil and is not
	provisional. Turns out no one was using it while provisional,
	which is great. This means we can eliminate the provisional
	concept from the bridge interface as the next step.

	* WebCoreSupport.subproj/WebBridge.h:
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge dataSource]): New method to get data source - assert
	it is not nil, and committed.
        (-[WebBridge frame]): Get data source from method.
        (-[WebBridge childFrames]): Likewise.
        (-[WebBridge descendantFrameNamed:]): Likewise. 
        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]): Likewise.
        (-[WebBridge openNewWindowWithURL:]): Likewise.
        (-[WebBridge areToolbarsVisible]): Likewise.
        (-[WebBridge setToolbarsVisible:]): Likewise.
        (-[WebBridge areScrollbarsVisible]): Likewise.
        (-[WebBridge setScrollbarsVisible:]): Likewise.
        (-[WebBridge isStatusBarVisible]): Likewise.
        (-[WebBridge setStatusBarVisible:]): Likewise.
        (-[WebBridge setWindowFrame:]): Likewise.
        (-[WebBridge window]): Likewise.
        (-[WebBridge setTitle:]): Likewise.
        (-[WebBridge setStatusText:]): Likewise.
        (-[WebBridge mainFrame]): Likewise.
        (-[WebBridge frameNamed:]): Likewise.
        (-[WebBridge receivedData:withDataSource:]): Likewise.
        (-[WebBridge startLoadingResource:withURL:]): Likewise.
        (-[WebBridge objectLoadedFromCache:size:]): Likewise.
        (-[WebBridge setDataSource:]): Likewise.
        (-[WebBridge openedByScript]): Likewise.
        (-[WebBridge setOpenedByScript:]): Likewise.
        (-[WebBridge setIconURL:]): Likewise.
        (-[WebBridge setIconURL:withType:]): Likewise.
        * WebView.subproj/WebDataSourcePrivate.h,
	WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _isCommitted]): New private method to check if a
	data source is committed, for the benefit of WebBridge assertions.

2002-07-20  Darin Adler  <darin@apple.com>

        * WebKit.pbproj/project.pbxproj: Turn stricter warnings back on now that we
	don't use C++ any more.

        * Plugins.subproj/WebPluginView.m:
        (-[WebPluginView sendActivateEvent:]): Fix cast that stricter warning didn't like.
        (-[WebPluginView sendUpdateEvent]): Fix cast that stricter warning didn't like.
        (-[WebPluginView frameStateChanged:]): Remove unneeded cast that stricter warning didn't like.

2002-07-20  Darin Adler  <darin@apple.com>

	- fixed 2999643 -- Leak of NSSet in -[IFStandardPanels _didStartLoadingURL:inController:]

	This is another case of the leak I fixed a month ago. I don't know how I managed to
	overlook this other code path with the identical bug.

        * Panels.subproj/WebStandardPanels.m:
        (-[WebStandardPanels _didStopLoadingURL:inController:]): Fix a leak caused
	by calling the wrong method. This was calling objectForKey: instead of
	removeObjectForKey:.

2002-07-20  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge areToolbarsVisible]):
        (-[WebBridge isStatusBarVisible]):
	Fix misspelling of visible.

2002-07-20  Maciej Stachowiak  <mjs@apple.com>

	Changed the code to handle "icon" and "SHORTCUT ICON" links
	separately, and give higher priority to the former. 

	Also, we don't start loading the icon the moment khtml finds one
	in the document any more, instead we wait until the document is
	done loading, in case there are both "icon" and "SHORTCUT ICON"
	link tags.

	- fixed 3003672 - Assertion failure related to iconloader on metafilter

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge setIconURL:]): Forward to the data source.
        (-[WebBridge setIconURL:withType:]): Likewise.
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]): Release iconURL.
        (-[WebDataSource _setDefaultIconURLIfUnset]): Renamed from
	_loadPageIconIfNecessary, and changed to only set iconURL rather
	than actually loading.
        (-[WebDataSource _setPrimaryLoadComplete:]): Call _loadIcon
	instead of _loadPageIconIfNecessary, since we defer all loads to
	this point.
        (-[WebDataSource _loadIcon]): Load current iconURL if set.
        (-[WebDataSource _setIconURL:]): Set iconURL if not set already
	(since typed icons are higher priority).
        (-[WebDataSource _setIconURL:withType:]): Set the iconURL.

2002-07-20  Darin Adler  <darin@apple.com>

	- fixed 2999616 -- Possible leak in +[IFPluginDatabase installedPlugins]

        * Plugins.subproj/WebPluginDatabase.m:
        (+[WebPluginDatabase installedPlugins]): Move the code into an init function.
        (pluginLocations): Simplified.
        (-[WebPluginDatabase init]): Added. Cleaned up a bit, and made it release the
	WebPlugin objects -- this was the leak.
        (-[WebPluginDatabase dealloc]): Added.

        * Plugins.subproj/WebPluginDatabase.h: Tweaked formatting.

        * Plugins.subproj/WebPluginStream.h:
        * Plugins.subproj/WebPluginStream.m:
        (-[WebPluginStream startLoad]):
        (-[WebPluginStream stop]):
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:]):
        (-[WebSubresourceClient WebResourceHandleDidCancelLoading:]):
        (-[WebSubresourceClient WebResourceHandleDidFinishLoading:data:]):
        (-[WebSubresourceClient WebResourceHandle:didFailLoadingWithResult:]):
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource stopLoading]):
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]):
        (-[WebDataSource _setPrimaryLoadComplete:]):
        (-[WebDataSource _startLoading:]):
        (-[WebDataSource _addResourceHandle:]):
        (-[WebDataSource _removeResourceHandle:]):
	Changed code that called it a URLHandle to say resourceHandle.

        * WebView.subproj/WebFrame.m: (-[WebFrame dealloc]): Add an autorelease pool here since
	this is called from a timer and AppKit does not use an explicit autorelease pool
	in that case. This makes the "world leak check" work better, and is mildly helpful
	in other cases too. Radar 3003650 is a request for the AppKit team to fix this, but
	this workaround will do for now.

2002-07-19  Darin Adler  <darin@apple.com>

	- fixed 3001951 -- Massive memory leak after running base or static PLT

        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _makeRepresentation]):
	Add a missing release.

	Reduced our use of autorelease. This allows the page load test to detect leaks of the
	world much more easily. We may later find we need to use the "retain autorelease" idiom
	in a few more places, but I did a lot of testing and that did not show up.

        * Bookmarks.subproj/WebBookmarkGroup.m:
        (-[WebBookmarkGroup _setTopBookmark:]): Use a plain release.
        (-[WebBookmarkGroup _loadBookmarkGroupGuts]): Use a plain release.
        * Bookmarks.subproj/WebBookmarkList.m:
        (-[WebBookmarkList copyWithZone:]): Use a plain release.
        * Misc.subproj/WebIconLoader.m:
        (-[WebIconLoader WebResourceHandleDidFinishLoading:data:]): Use a plain release.
        * Plugins.subproj/WebPluginView.m:
        (-[WebPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]): Use a plain release.
        * WebView.subproj/WebController.m:
        (-[WebController createFrameNamed:for:inParent:allowsScrolling:]): Use a plain release.
        (-[WebController setWindowContext:]): Use a plain release.
        (-[WebController setResourceProgressHandler:]): Use a plain release.
        (-[WebController setDownloadProgressHandler:]): Use a plain release.
        (-[WebController setPolicyHandler:]): Use a plain release.
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebControllerPrivate dealloc]): Use plain release.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]): Use plain release.
        (-[WebDataSource _setPrimaryLoadComplete:]): Use plain release.
        (-[WebDataSource _setTitle:]): Use plain release.
        * WebView.subproj/WebFrame.m:
        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]): Use plain release.
        (-[WebFrame reset]): Invalidate and release the timer.
        * WebView.subproj/WebFramePrivate.h: Keep a reference to the timer.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFramePrivate dealloc]): Invalidate and release the timer. Use plain release.
        (-[WebFramePrivate setName:]): Use plain release.
        (-[WebFramePrivate setWebView:]): Use plain release.
        (-[WebFramePrivate setDataSource:]): Use plain release.
        (-[WebFramePrivate setProvisionalDataSource:]): Use plain release.
        (-[WebFrame _scheduleLayout:]): Keep a reference to the timer.
        (-[WebFrame _timedLayout:]): Release and nil the timer.
        * WebView.subproj/WebRenderNode.m:
        (-[WebRenderNode initWithName:rect:view:children:]): Use plain release.
        * WebView.subproj/WebView.m:
        (-[WebView concludeDragOperation:]): Use plain release.
        * WebView.subproj/WebViewPrivate.m:
        (-[WebView _makeDocumentViewForDataSource:]): Use plain release.

	Other changes to make the new page load test feature work.

        * Misc.subproj/WebKitStatistics.h:
        * Misc.subproj/WebKitStatistics.m:
        (+[WebKitStatistics HTMLRepresentationCount]):
	Added a stat for WebHTMLRepresentation objects.
        * WebView.subproj/WebHTMLRepresentation.m:
        (-[WebHTMLRepresentation init]): Bump the count.
        (-[WebHTMLRepresentation dealloc]): Decrement the count.

	Renaming.

        * Misc.subproj/WebCoreStatistics.h:
        * Misc.subproj/WebKitStatisticsPrivate.h:
        * Misc.subproj/WebCoreStatistics.m:
        (+[WebCoreStatistics emptyCache]):
        (+[WebCoreStatistics setCacheDisabled:]):
	Renamed to include the word cache now that the class does not.

        * Plugins.subproj/WebPluginStream.m:
        * WebCoreSupport.subproj/WebSubresourceClient.m:
        * WebView.subproj/WebMainResourceClient.m:
        Updated for the WebFoundation renaming.

2002-07-19  Chris Blumenberg  <cblu@apple.com>

        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _loadPageIconIfNecessary]): use the correct relative string to request favicon.ico

2002-07-19  Chris Blumenberg  <cblu@apple.com>

        * History.subproj/WebHistoryItem.m:
        (-[WebHistoryItem image]): call [WebIconLoader defaultIcon]
        * Misc.subproj/WebIconLoader.m:
        (+[WebIconLoader defaultIcon]): move bundle image loading code from [WebHistoryItem image] to here.

2002-07-19  Chris Blumenberg  <cblu@apple.com>

	Added support favicons.

        * Misc.subproj/WebIconLoader.h: Added.
        * Misc.subproj/WebIconLoader.m: Added.
        (-[WebIconLoaderPrivate dealloc]):
        (+[WebIconLoader defaultIcon]):
        (-[WebIconLoader initWithURL:]):
        (-[WebIconLoader dealloc]):
        (-[WebIconLoader setDelegate:]):
        (-[WebIconLoader startLoading]):
        (-[WebIconLoader startLoadingOnlyFromCache]):
        (-[WebIconLoader stopLoading]):
        (-[WebIconLoader WebResourceHandleDidBeginLoading:]):
        (-[WebIconLoader WebResourceHandleDidCancelLoading:]):
        (-[WebIconLoader WebResourceHandleDidFinishLoading:data:]):
        (-[WebIconLoader WebResourceHandle:resourceDataDidBecomeAvailable:]):
        (-[WebIconLoader WebResourceHandle:resourceDidFailLoadingWithResult:]):
        (-[WebIconLoader WebResourceHandle:didRedirectToURL:]):
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge loadIcon:]): added
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _mainReceivedError:forResourceHandle:partialProgress:fromDataSource:]):
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSourcePrivate dealloc]):
        (-[WebDataSource _loadPageIconIfNecessary]): added
        (-[WebDataSource _setPrimaryLoadComplete:]): start loading icon
        (-[WebDataSource _stopLoading]): stop icon loader
        (-[WebDataSource receivedPageIcon:]): added
        (-[WebDataSource _loadIcon:]): added
        * WebView.subproj/WebLocationChangeHandler.h:

2002-07-19  Darin Adler  <darin@apple.com>

        * WebKit.pbproj/project.pbxproj: Forgot to export WebKitStatistics.h so it can
	be used by WebBrowser.

2002-07-19  Darin Adler  <darin@apple.com>

	Added some stats that we can use to sniff out "leak the world" problems.

        * Misc.subproj/WebKitStatistics.h: Added.
        * Misc.subproj/WebKitStatistics.m: Added.
        * Misc.subproj/WebKitStatisticsPrivate.h: Added.

        * WebKit.pbproj/project.pbxproj: Added new files.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge init]): Bump count.
        (-[WebBridge dealloc]): Decrement count.
        * WebView.subproj/WebController.m:
        (-[WebController initWithView:provisionalDataSource:]): Bump count.
        (-[WebController dealloc]): Decrement count.
        * WebView.subproj/WebDataSource.m:
	(-[WebDataSource initWithURL:attributes:flags:): Bump count.
        (-[WebDataSource dealloc]): Decrement count.
        * WebView.subproj/WebFrame.m:
        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]): Bump count.
        (-[WebFrame dealloc]): Decrement count.
        * WebView.subproj/WebView.m:
        (-[WebView initWithFrame:]): Bump count.
        (-[WebView dealloc]): Decrement count.

2002-07-19  Maciej Stachowiak  <mjs@apple.com>

        More refactoring: Use assertions to make sure a provisional data
	source's bridge is never used - and then fix the places where it
	would have been used. :-)

	* WebView.subproj/WebDataSource.m:
        (-[WebDataSource documentTextFromDOM]): Return nil if the document
	is not committed.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _stopLoading]): Don't tell the bridge to stop
	if we're provisional, because we won't have one.
        (-[WebDataSource _setFinalURL:]): Don't try to set the bridge URL
	if we are not committed - it will get set at commit time.
        (-[WebDataSource _removeFromFrame]): Assert that the data soource is
	committed - a provisional data source should never be removed from a frame
	because it should never be in a frame in the first place.
        (-[WebDataSource _bridge]): Assert that the view is committed.
        (-[WebDataSource _commitIfReady]): Do nothing if already committed.
        (-[WebDataSource _receivedData:]): Notice that first byte was read,
	if appropriate, and commit when ready.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient WebResourceHandle:didRedirectToURL:]):
	Simplify code by using [WebDataSource _receivedData:]

2002-07-19  Maciej Stachowiak  <mjs@apple.com>

        Fix a regression caused by a previous commit that broke frames.

	* WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge receivedData:withDataSource:]): Instead setting the data source
	implicitly here, and doing other special first-time init, simply assert that
	we have a data source.
        (-[WebBridge setDataSource:]): Do the extra work when setting the data
	source here instead.
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _commitIfReady]): After making the
	representation, set the data source, because we no longer pass the
	first data chunk _before_ transitioning to committed, instead we
	do it right after, so the logic in WebBridge to do it implicitly
	was not going to cut it.

2002-07-18  Maciej Stachowiak  <mjs@apple.com>

	More refactoring: Simplify a bit more by moving more logic into
	the data source.
	
        * WebView.subproj/WebDataSourcePrivate.h, WebView.subproj/WebDataSourcePrivate.m:
	(-[WebDataSource _gotFirstByte]): Removed.
	(-[WebDataSource _setGotFirstByte]): Removed.
        (-[WebDataSource _isReadyForData]): Removed.
        (-[WebDataSource _receivedData:]): Commit if appropriate, and pass data to
	representation and documentView.
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient
	WebResourceHandle:resourceDataDidBecomeAvailable:]): Change the
	check back to policy != None, because the first chunk will trigger
	a commit in the policy == Show case, so there is no need to worry
	about it.

2002-07-18  Maciej Stachowiak  <mjs@apple.com>

        Rename some methods for clarity. These two methods are defined by
	the end state, not the start state (in fact,
	transitionToLayoutAcceptable does most of it's work when it starts
	in the cimmitted state, not provisional).

	* WebView.subproj/WebFramePrivate.h, WebView.subproj/WebFramePrivate.m:
	(-[WebFrame _transitionToLayoutAcceptable]): Renamed from
	_transitionProvisionalToLayoutAcceptable.
        (-[WebFrame _transitionToCommitted]): Renamed from
	_transitionProvisionalToLayoutAcceptable.

	And adjust all the calls to them:
	
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
        (-[WebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _commitIfReady]):

2002-07-18  Maciej Stachowiak  <mjs@apple.com>

	Even more exciting refactoring. Change the rules for committing
	the data source and creating the representation so that both
	happen when the first byte has been received _and_ the content
	policy has been set to show. Previously these actions happened at
	different times. Now we maintain the invariant that the data
	source has a representation if and only if it is committed.
	
	* WebView.subproj/WebController.m:
        (-[WebController haveContentPolicy:andPath:forDataSource:]): Simplify
	further by putting more of the work in WebDataSource.
        * WebView.subproj/WebControllerPrivate.m:
        (-[WebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
	
        * WebView.subproj/WebDataSource.h, WebView.subproj/WebDataSource.m: Move
	makeRepresentation method to private file.
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _setContentPolicy:]): If the policy is set to show,
	commit if we have already gotten the first byte.
        (-[WebDataSource _commitIfReady]): Create representation and
	commit if we have the first byte and have a policy of show.
	(-[WebDataSource _gotFirstByte]): Method to check if this data source
	has gotten the first byte yet. Commit here if ready. 
	(-[WebDataSource _setGotFirstByte]): Method to report that some
	data has been received.
        (-[WebDataSource _makeRepresentation]): Make and set up teh document view too.
        (-[WebDataSource _isReadyForData]): Return TRUE if policy is set (and if the policy
	is Show, if we have also received the first byte.
        * WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionProvisionalToCommitted]): Don't call the datasource (it now
	calls us)
        * WebView.subproj/WebMainResourceClient.m:
        (-[WebMainResourceClient WebResourceHandle:resourceDataDidBecomeAvailable:]):

        * WebView.subproj/WebView.h, WebView.subproj/WebView.m: move
	makeDocumentViewForDataSource...  
	* WebView.subproj/WebViewPrivate.h, WebView.subproj/WebViewPrivate.m:
        (-[WebView _makeDocumentViewForDataSource:]): To here.

2002-07-18  Maciej Stachowiak  <mjs@apple.com>

	Avoid throwing an exception while stopping animations. Image
	renders were getting into the array multiple times, which means
	the code that iterated over the array backwards could throw an
	exception, because callling removeObject: on the array would remove
	all instances of the object.

	This probably fixes the following crashers, and a bunch of huge leaks:

	Radar 2999853 - Uninitialized memory access in plugins on theonion.com
	Radar 2999892 - Crash disconnecting view from next view chain on theonion.com
	Radar 2999911 - Infinite loop in [WebHTMLView dealloc], resulting in crash
	
        * WebCoreSupport.subproj/WebImageRenderer.m:
        (-[WebImageRenderer scheduleFrame]): Move adding to array of image
	renderers from here...
        (-[WebImageRenderer beginAnimationInRect:fromRect:]): To here.

=== Alexander-13 ===

2002-07-18  Maciej Stachowiak  <mjs@apple.com>

	Yet still more refactoring in preparation for the KHTMLPart
	change. This is preparing things to change the commit rule to
	require receiving at least one byte of data, and having the
	content policy set to Show.

        * WebView.subproj/WebController.m:
        (-[WebController haveContentPolicy:andPath:forDataSource:]): Remove
	more code since makeRepresentation now does most of the work.
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource makeRepresentation]): Tell the WebView (if any) to create
	the documentView now too.
        * WebView.subproj/WebView.h:
        * WebView.subproj/WebView.m:
        (-[WebView makeDocumentViewForDataSource:]): Hook document view up to data
	source.

2002-07-18  Maciej Stachowiak  <mjs@apple.com>

	Some refactoring in preparation for the KHTMLPart change.
	
        * WebView.subproj/WebDataSourcePrivate.h,
	WebView.subproj/WebDataSourcePrivate.m:
        (-[WebDataSource _stopLoading]): Bail early if not loading.
        (-[WebDataSource _commit]): Method to mark when the data source is
	committed (it now knows whether it's committed or
	provisional). This will be useful for adding assertions later on
	about what operations may happen only when committed, and which
	can only happen when provisional.

	* WebView.subproj/WebFramePrivate.m:
        (-[WebFrame _transitionProvisionalToCommitted]): Call data
	source's _commit method.

2002-07-17  Richard Williamson  <rjw@apple.com>

        * WebView.subproj/WebHTMLView.m:
        Removed unnecessary (and incorrect) lockFocus.
        
2002-07-17  Maciej Stachowiak  <mjs@apple.com>

	Some refactoring in preparation for the KHTMLPart change.
	
        * WebView.subproj/WebController.m:
	(-[WebController haveContentPolicy:andPath:forDataSource:]): Move
	more of the work of creating and setting the representation and
	document view into WebDataSource and WebView.
	
        * WebView.subproj/WebDataSource.h,
	WebView.subproj/WebDataSource.m:
	(+[(id <WebDocumentRepresentation>) createRepresentationForMIMEType:]): Removed.
        (-[WebDataSource makeRepresentation]): A method to build the right
	kind of representation for the content type.

        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDataSourcePrivate.m:
	(-[WebDataSource _representationClass]): Method to get the right
	representation class for the current content type.
	(-[WebDataSource _bridge]): Move here from WebBridge.[mh], so we
	can later add an assertion that the data source is not provisional.
	
        * WebView.subproj/WebHTMLViewPrivate.m: #import WebDataSourcePrivate.h
        * WebView.subproj/WebView.h, WebView.subproj/WebView.m:
	(+[(id <WebDocumentRepresentation>) createDocumentViewForMIMEType:]): Removed.
	(-[WebView makeDocumentViewForMIMEType:]): Method to build the
	right kind of document view for the specified MIME type.

2002-07-16  Darin Adler  <darin@apple.com>

        * History.subproj/WebBackForwardList.m: Replace MyCompanyName with Apple Computer.
        (-[WebBackForwardList init]): Fix strange [super init] logic to be standard.
        * History.subproj/WebHistoryItem.h: Replace MyCompanyName with Apple Computer.
        * Misc.subproj/WebDownloadHandler.h: Replace MyCompanyName with Apple Computer.

2002-07-16  Darin Adler  <darin@apple.com>

	- fixed 2997891 -- Alexander confused about base page URL for relative links

        * WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient WebResourceHandle:didRedirectToURL:]):
	Don't tell the bridge the URL changed. The bridge doesn't care about redirects
	for subresources (and if it did, we'd need some way to tell it that this was
	a subresource redirect).

        * WebCoreSupport.subproj/WebBridge.m: Formatting tweaks.
        * WebCoreSupport.subproj/WebImageRenderer.m: Formatting tweaks.
        * WebView.subproj/WebView.m: Formatting tweaks.

2002-07-16  Richard Williamson  <rjw@apple.com>

        Really, stop animation if last frame has zero duration, like IE.
        Was checking adjustedFrameDuration, which is never zero.

        * WebCoreSupport.subproj/WebImageRenderer.m:
        (-[WebImageRenderer unadjustedFrameDuration]):
        (-[WebImageRenderer frameDuration]):
        (-[WebImageRenderer nextFrame:]):

2002-07-16  Maciej Stachowiak  <mjs@apple.com>

	WebKit part of fix for:

	Radar 2982043 - Link mouse-over status should change in response to modifier keys
	
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge modifierTrackingEnabled]): Implemented by checking
	bit on WebHTMLView class.
	* WebKit.pbproj/project.pbxproj: Install WebHTMLViewPrivate as a
	Private header.
        * WebView.subproj/WebHTMLViewPrivate.h: Prototype new modifier tracking SPI.
        * WebView.subproj/WebHTMLViewPrivate.m:
	(+[WebHTMLView _setModifierTrackingEnabled:]): Method to inform
	WebHTMLView that modifier tracking is working.
        (+[WebHTMLView _modifierTrackingEnabled]): Obligatory getter.
        (+[WebHTMLView _postFlagsChangedEvent:]): Method to report
	flagsChanged events. Creates corresponding fake mouseMoved event
	and sends it as a notification.

2002-07-16  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/WebBridge.m:
	Remove childFrameNamed since it's not needed, and every one of these bridge
	methods adds potential confusion.
	(-[WebBridge descendantFrameNamed:]): Make this look for descendants in the
	provisional data sources first. This is the same change Richard made to
	childFrameNamed, but it turns out that this is the method that's really used.

2002-07-16  Darin Adler  <darin@apple.com>

        * almost every file: Renamed IF* -> Web*.

2002-07-15  Richard Williamson  <rjw@apple.com>

        Removed dependence on window resize notification.  We now
        use the IFWebView setFrame: method to trigger layouts.  Much
        cleaner.
        
        Cleaned up image animation timer scheduler.
        
        Stop animation if last frame has zero duration, like IE.
        
        Change minimum duration to 1/30th (used if zero frame duration is
        specified).  This is closer to what I see in IE empirically.
        
        * WebCoreSupport.subproj/IFImageRenderer.h:
        * WebCoreSupport.subproj/IFImageRenderer.m:
        (-[IFImageRenderer frameDuration]):
        (-[IFImageRenderer _scheduleFrame]):
        (-[IFImageRenderer nextFrame:]):
        (-[IFImageRenderer beginAnimationInRect:fromRect:]):
        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView initWithFrame:]):
        (-[IFHTMLView removeNotifications]):
        * WebView.subproj/IFWebView.mm:
        (-[IFWebView setFrame:]):
        (-[IFWebView viewWillStartLiveResize]):
        (-[IFWebView viewDidEndLiveResize]):

2002-07-15  Maciej Stachowiak  <mjs@apple.com>

        Fixed Radar 2957209 - Change "JavaScript can open new windows
	automatically" preference to off by default

        * WebView.subproj/IFPreferences.mm:
        (+[IFPreferences load]): Switch default for "Allow JavaScript to
	open new windows automatically" to FALSE.

2002-07-15  Darin Adler  <darin@apple.com>

	More weaning from C++.

        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView initWithFrame:plugin:url:baseURL:mime:arguments:]): Use malloc instead of new.
        (-[IFPluginView dealloc]): Use free instead of delete.

2002-07-15  Darin Adler  <darin@apple.com>

	Fixes so we are ready to compile as Objective C, not C++.
	The C++ front end misses a lot of things the C front end catches.

        * Plugins.subproj/IFNullPluginView.mm:
        (-[IFNullPluginView drawRect:]): Add missing cast.
        * Plugins.subproj/IFPluginStream.mm:
        (-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]): Use
	[IFLoadProgress initWithURLHandle:] instead of getting at private fields.
        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView setUpWindowAndPort]): Remove unused windowFrame.
        (-[IFPluginView start]): Don't use a variable within a for statement.
	Add missing cast.
        * WebView.subproj/IFMainURLHandleClient.mm:
        (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	Use [IFWebFrame _setProvisionalDataSource:] so we don't have to get at the
	protected field _private.
        * WebView.subproj/IFWebControllerPrivate.mm:
        (-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
	Use [IFProgress bytesSoFar] so we don't have to get at the protected field bytesSoFar.
        * WebView.subproj/IFWebFramePrivate.mm:
        (-[IFWebFrame _isLoadComplete]): Add missing cast.
        (-[IFWebFrame _setProvisionalDataSource:]): Added.

        * WebView.subproj/IFHTMLRepresentation.mm:
        * WebView.subproj/IFHTMLViewPrivate.h:
        * WebView.subproj/IFWebControllerPrivate.h:
        * WebView.subproj/IFWebDataSourcePrivate.h:
        * WebView.subproj/IFWebFramePrivate.h:
        * WebView.subproj/IFWebViewPrivate.h:
	Make data in private class @public, since the main class needs to get at it
	directly.
	
2002-07-15  Richard Williamson  <rjw@apple.com>

        Only adjustFrames in parent if parent is a frame set.
        (Anywhere from 2% to 6% gain, depending on what you believe.)
        * WebView.subproj/IFWebFramePrivate.mm:
        (-[IFWebFrame _isLoadComplete]):
        
        * WebView.subproj/IFPreferences.mm:
        (+[IFPreferences load]):
        Increment initial layout from 1.5 seconds to 1.85 seconds.

2002-07-15  Darin Adler  <darin@apple.com>

        * WebView.subproj/IFMainURLHandleClient.mm:
        (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	Tweak a comment that included the word WebController, to smooth things over a
	tiny bit for the coming renaming.

2002-07-15  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/IFTextRenderer.m:
        (-[IFTextRenderer widthForCharacters:length:]): Remove implementation of some unused
	methods, including at least one that was never used.

2002-07-15  Maciej Stachowiak  <mjs@apple.com>

	WebKit part of fix for Radar 2896356 - cookie "ask for each site" not implemented yet

        * Panels.subproj/IFPanelCookieAcceptHandler.h: Added.
        * Panels.subproj/IFPanelCookieAcceptHandler.m: Added.
        (-[IFPanelCookieAcceptHandler init]):
        (-[IFPanelCookieAcceptHandler dealloc]):
        (-[IFPanelCookieAcceptHandler readyToStartCookieAcceptCheck:]):
        (-[IFPanelCookieAcceptHandler startCookieAcceptCheck:]):
        (-[IFPanelCookieAcceptHandler cancelCookieAcceptCheck:]):
        (-[IFPanelCookieAcceptHandler doneWithCheck:returnCode:contextInfo:]):
        * Panels.subproj/IFStandardPanels.m:
        (-[IFStandardPanels setUseStandardCookieAcceptPanel:]):
        (-[IFStandardPanels useStandardCookieAcceptPanel]):
        * WebKit.pbproj/project.pbxproj:

2002-07-14  Maciej Stachowiak  <mjs@apple.com>

        More workarounds for the Objective C++ typecasting bug.

	* WebView.subproj/IFDOMNode.mm:
        (-[IFDOMNode initWithWebView:]):
        * WebView.subproj/IFHTMLViewPrivate.mm:
        (-[NSView _IF_stopIfPluginView]):
        * WebView.subproj/IFRenderNode.mm:
        (-[IFRenderNode initWithWebView:]):
        * WebView.subproj/IFWebFrame.mm:
        (-[IFWebFrame reset]):

2002-07-14  Darin Adler  <darin@apple.com>

	Wean WebKit completely from getting at the C++ parts of WebCore.
	We probably don't need to use C++ at all for WebKit any more.

        * WebKit.pbproj/project.pbxproj: Remove all the header search paths; we don't need any
	special ones now.

        * WebKitPrefix.h: Remove <config.h>; we don't need it any more.

        * Misc.subproj/IFCache.h: Rename getStatistics to statistics.
        * Misc.subproj/IFCache.mm:
        (+[IFCache statistics]):
        (+[IFCache empty]):
        (+[IFCache setDisabled:]):
	Call through WebCoreCache instead of going directly to khtml::Cache.
        (+[IFCache javaScriptObjectsCount]):
        (+[IFCache javaScriptInterpretersCount]):
        (+[IFCache javaScriptNoGCAllowedObjectsCount]):
        (+[IFCache javaScriptReferencedObjectsCount]):
        (+[IFCache garbageCollectJavaScriptObjects]):
	Call through WebCoreJavaScript instead of going directly to kjs::Collector.

        * WebCoreSupport.subproj/IFWebCoreFrame.m:
        (-[IFWebCoreFrame bridge]): Change to return bridge from the provisional data
	source if it exists.
        (-[IFWebCoreFrame committedBridge]): Do what [bridge] used to do, always returning
	the bridge from the committed data source and never the provisional one.

        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView provisionalDataSourceChanged:]): Don't store the provisional widget.
	It's stored in the bridge for the provisional data source.
        (-[IFHTMLView provisionalDataSourceCommitted:]): Use the bridge method installInFrame:
	to do most of the work that used to be here. The rest is don in removeFromFrame which
	is called elsewhere.
        (-[IFHTMLView mouseUp:]): Use the bridge's mouseUp method.
        (-[IFHTMLView mouseDown:]): Use the bridge's mouseDown method.
        (-[IFHTMLView mouseMovedNotification:]): Use the bridge's mouseMoved method.
        (-[IFHTMLView mouseDragged:]): Use the bridge's mouseDragged method.

        * WebView.subproj/IFHTMLViewPrivate.h: Remove the widget, widgetOwned, and
	provisionalWidget instance variables, and the _widget and _provisionalWidget methods.
        * WebView.subproj/IFHTMLViewPrivate.mm:
        (-[IFHTMLView _reset]): Remove the code that deleted the widget and the provisional widget.
	This is now handled elsewhere.

        * WebView.subproj/IFDOMNode.mm: Redo to use the copyDOMTree feature of the bridge.
        * WebView.subproj/IFRenderNode.mm: Redo to use the copyRenderTree feature of the bridge.

        * WebView.subproj/IFRenderNode.h: Use an NSRect instead of four integers
	(the switch to floating point is OK).

        * WebView.subproj/IFWebDataSourcePrivate.h: Add private _removeFromFrame method.
        * WebView.subproj/IFWebDataSourcePrivate.mm:
        (-[IFWebDataSource _removeFromFrame]): Set the controller and location change handler
	references to nil, and also call [WebCoreBridge removeFromFrame].
        * WebView.subproj/IFWebFramePrivate.mm:
        (-[IFWebFramePrivate setDataSource:]): Use _removeFromFrame where we formerly would
	set the controller and location change handler references to nil.

        * WebCoreSupport.subproj/IFWebCoreBridge.h: Tweak.

2002-07-13  Darin Adler  <darin@apple.com>

        * Plugins.subproj/IFNullPluginView.mm: (-[IFNullPluginView dealloc]):
        * WebView.subproj/IFImageRepresentation.m: (-[IFImageRepresentation dealloc]):
	Fix leaks by adding calls to [super dealloc].

2002-07-13  Darin Adler  <darin@apple.com>

        * Misc.subproj/IFNSEventExtras.h: Removed.
        * Misc.subproj/IFNSEventExtras.m: Removed.
        * WebKit.pbproj/project.pbxproj: Removed IFNSEventExtras.*.

        * WebCoreSupport.subproj/IFWebCoreBridge.mm:
        * WebView.subproj/IFWebFrame.mm:
        * WebView.subproj/IFWebFramePrivate.h:
        * WebView.subproj/IFWebFramePrivate.mm:
	Renamed all bridgeFrame to frameBridge for greater clarity.

        * WebView.subproj/IFHTMLView.mm: Updated comments and commented-out code.

        * WebView.subproj/IFWebDataSource.h: Fix comment that mentioned IFDefaultWebController.

        * WebView.subproj/IFWebFramePrivate.mm:
        (-[IFWebFrame _transitionProvisionalToCommitted]): Fix exception string that cited
	the wrong state name.

2002-07-13  Darin Adler  <darin@apple.com>

        * History.subproj/IFURIEntry.m: (-[IFURIEntry image]):
	Use [IFURIEntry class] instead of [self class] so we get the
	icon from the WebKit bundle even if someone subclasses IFURIEntry.
        * Plugins.subproj/IFNullPluginView.mm:
        (-[IFNullPluginView initWithFrame:mimeType:arguments:]): Use
	bundleForClass instead of bundleWithIdentifier so things work even
	if we have two copies of WebKit installed on the same machine.

        * Makefile.am: Remove include of embed.am.

        * WebKit.pbproj/project.pbxproj: Use embed-into-alex instead of make embed.
	Also change bundle identifier to com.apple.WebKit instead of com.apple.webkit
	to match standard used by our other frameworks. (Checked that we no longer have
	any hard-coding of the bundle identifier anywhere in our code.)

2002-07-13  Richard Williamson  <rjw@apple.com>

        Fixed 2981849 - frames don't always draw correctly.
        
        * WebCoreSupport.subproj/IFWebCoreBridge.mm:
        (-[IFWebCoreBridge childFrameNamed:]):
        Check provisional data source first.
        
        * WebView.subproj/IFHTMLViewPrivate.h:
        * WebView.subproj/IFHTMLViewPrivate.mm:
        (-[IFHTMLView _adjustFrames]):
        Added method to adjust frame geometry.
        
        * WebView.subproj/IFWebDataSourcePrivate.h:
        * WebView.subproj/IFWebDataSourcePrivate.mm:
        (-[IFWebDataSource _layoutChildren]):
        Added method to adjust child frame geometries.
        
        * WebView.subproj/IFWebFramePrivate.mm:
        (-[IFWebFrame _isLoadComplete]):
        Removed unnecessary drawing now that frame geometry is
        calculated directly.
        
2002-07-12  Darin Adler  <darin@apple.com>

	About 1/3 of the remaining work to wean WebKit from its special relationship with WebCore
	onto explicit interfaces.

        * Misc.subproj/IFCache.mm:
        * WebView.subproj/IFDOMNode.mm:
        * WebView.subproj/IFRenderNode.mm:
	Mark imports from inside WebCore with #ifndef WEBKIT_INDEPENDENT_OF_WEBCORE.
	Once these are all gone, the task is done.

        * Plugins.subproj/IFPlugin.h:
        * WebCoreSupport.subproj/IFCookieAdapter.h:
        * WebCoreSupport.subproj/IFImageRenderer.h:
        * WebCoreSupport.subproj/IFImageRendererFactory.h:
        * WebCoreSupport.subproj/IFResourceURLHandleClient.m:
        * WebCoreSupport.subproj/IFTextRenderer.h:
        * WebCoreSupport.subproj/IFTextRendererFactory.h:
        * WebCoreSupport.subproj/IFWebCoreBridge.h:
        * WebCoreSupport.subproj/IFWebCoreViewFactory.h:
	Use #import <WebCore/> for getting at WebCore headers so we don't need to use -I.

        * WebCoreSupport.subproj/IFWebCoreBridge.mm:
        (-[IFWebCoreBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
	Call setRenderPart on the WebCoreFrame rather than on the IFWebFrame.

        * WebCoreSupport.subproj/IFWebCoreFrame.h: Subclass from the WebCoreFrame class.
        * WebCoreSupport.subproj/IFWebCoreFrame.m:
        (-[IFWebCoreFrame HTMLView]): Add a cast.
        (-[IFWebCoreFrame widget]): Remove overzealous assert.

        * WebKit.pbproj/project.pbxproj: Rearranged things a bit. Removed unneeded build phase.

        * WebView.subproj/IFDocument.h:
        * WebView.subproj/IFDynamicScrollBarsView.h:
        * WebView.subproj/IFWebController.h:
        * WebView.subproj/IFWebControllerPolicyHandler.h:
	Changed a few stray #include statements to #import statements.

        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView provisionalDataSourceCommitted:]): Move the logic for setting up the
	renderPart in here from IFWebView.
        (-[IFHTMLView reapplyStyles]): Use the bridge.
        (-[IFHTMLView layout]): Use the bridge.
        (-[IFHTMLView drawRect:]): Use the bridge.

        * WebView.subproj/IFHTMLViewPrivate.h: Remove _takeOwnershipOfWidget which is no longer needed.
        * WebView.subproj/IFHTMLViewPrivate.mm:
        (-[NSView _IF_stopIfPluginView]): Added. Use to clean up _reset a bit.
        (-[IFHTMLView _reset]): Use makeObjectsPerformSelector: for simplicity.

        * WebView.subproj/IFImageView.h: Remove unneeded IFWebDataSource declaration.
        * WebView.subproj/IFImageView.m: Just formatting tweaks.

        * WebView.subproj/IFWebControllerPrivate.mm: Removed unneeded import.
        * WebView.subproj/IFWebDataSource.mm: Removed unneeded import.
        * WebView.subproj/IFWebDataSourcePrivate.mm: Removed unneeded import.
        * WebView.subproj/IFWebFrame.mm: Removed unneeded import.

        * WebView.subproj/IFWebFramePrivate.h: Remove renderPart field and related declarations.
        * WebView.subproj/IFWebFramePrivate.mm:
        (-[IFWebFramePrivate dealloc]): No need to let go of renderPart any more.
        (-[IFWebFrame _transitionProvisionalToCommitted]): Move logic into IFHTMLView.

        * WebView.subproj/IFWebView.h: Be a bit more specific about the type of documentView.

2002-07-12  Chris Blumenberg  <cblu@apple.com>

	Only accept drags of 1 file.

        * WebView.subproj/IFWebView.mm:
        (-[IFWebView draggingEntered:]):

2002-07-12  Darin Adler  <darin@apple.com>

	Fix cancelling. My recent check-in broke it for downloads.

        * WebCoreSupport.subproj/IFResourceURLHandleClient.m:
        (-[IFResourceURLHandleClient receivedError:forHandle:]): Helper function to save code.
        (-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]): Use an error for
	cancel rather than -1,-1 progress.

        * WebView.subproj/IFMainURLHandleClient.mm:
        (-[IFMainURLHandleClient receivedProgressWithHandle:complete:]): Remove -1,-1 handling
	here; instead we treat it as an error.
        (-[IFMainURLHandleClient receivedError:forHandle:]): Remove most of the parameters
	since they are things we can compute ourselves.
        (-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): Use an error for
	cancel rather than -1,-1 progress.

        * WebView.subproj/IFWebControllerPrivate.mm:
        (-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
	Remove the -1,-1 cancel handling; we use an error instead.
        (-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
	Remove the -1,-1 cancel handling; we use an error instead.
        (-[IFWebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
	Remove the _isStopping check. We want to do the additional work even if already stopping.
        (-[IFWebController _mainReceivedError:forResourceHandle:partialProgress:fromDataSource:]):
	Remove the _isStopping check. We want to do the additional work even if already stopping.

        * WebView.subproj/IFWebView.mm: (-[IFWebView keyDown:]): Use NSDeleteCharacter.

2002-07-12  Darin Adler  <darin@apple.com>

        * WebView.subproj/IFWebDataSource.mm:
        (+[IFWebDataSource registerRepresentationClass:forMIMEType:]):
	Use self instead of [self class].
        (+[IFWebDataSource createRepresentationForMIMEType:]):
	Use the new _IF_objectForMIMEType to simplify and use hash table
	instead of linear search.
        * WebView.subproj/IFWebDataSourcePrivate.mm:
        (+[IFWebDataSource _repTypes]): Use initWithObjectsAndKeys for
	brevity and a tiny tiny bit of efficiency.
        (+[IFWebDataSource _canShowMIMEType:]):
	Use the new _IF_objectForMIMEType to simplify and use hash table
	instead of linear search.
        * WebView.subproj/IFWebView.mm:
        (+[IFWebView registerViewClass:forMIMEType:]):
	Use self instead of [self class].
        (+[IFWebView createViewForMIMEType:]):
	Use the new _IF_objectForMIMEType to simplify and use hash table
	instead of linear search.
        * WebView.subproj/IFWebViewPrivate.mm:
        (+[IFWebView _canShowMIMEType:]):
	Use the new _IF_objectForMIMEType to simplify and use hash table
	instead of linear search.

2002-07-12  Darin Adler  <darin@apple.com>

        * WebKit.pbproj/project.pbxproj: Re-added JavaScriptCore, which
	I removed by accident.

2002-07-12  Darin Adler  <darin@apple.com>

        * WebKit.pbproj/project.pbxproj: Don't include the html4.css file
	from WebCore any more. WebCore handles this on its own now. Also,
	don't include the document templates; we don't use them any more.

        * Resources/image_document_template.html: Removed.
        * Resources/plugin_document_template.html: Removed.
        * Resources/text_document_template.html: Removed.

        * Makefile.am: Small tweak to the force-clean-timestamp logic.

2002-07-11  Chris Blumenberg  <cblu@apple.com>

Fix for:
        2986548 - Crash if you drop URL of frameset page onto frame
        2953421 - document dragged into frame should replace frameset
        
        * WebView.subproj/IFWebView.mm: 
        (-[IFWebView draggingEntered:]): removed obsolute comment
        (-[IFWebView performDragOperation:]): moved implementation from here
        (-[IFWebView concludeDragOperation:]): to here, added support for NSURL drags 

2002-07-11  Darin Adler  <darin@apple.com>

        * WebView.subproj/IFWebViewPrivate.mm:
        (+[IFWebView _viewTypes]): Changed back to a mutable dictionary. Oops.

2002-07-11  John Sullivan   <sullivan@apple.com>

	- fixed 2980779 -- no scroll bar in history window

        * WebKit.pbproj/project.pbxproj: Removed nonexistent .h file from project list (IFGrabBag.h)

        * WebView.subproj/IFDynamicScrollBarsView.h: Renamed field allowsScrolling to disallowsScrolling
        * WebView.subproj/IFDynamicScrollBarsView.m:
        (-[IFDynamicScrollBarsView updateScrollers]):
        (-[IFDynamicScrollBarsView setAllowsScrolling:]):
        (-[IFDynamicScrollBarsView allowsScrolling]):
	Removed initWithFrame override, whose only purpose was to set allowsScrolling to the "default"	
	value (but not good enough for load-from-nib case). Changed all users of allowsScrolling to
	!disallowsScrolling instead.

2002-07-11  Chris Blumenberg  <cblu@apple.com>

        * Plugins.subproj/IFPluginNullEventSender.h:
        * Plugins.subproj/IFPluginNullEventSender.m:
        (-[IFPluginNullEventSender initWithPluginView:]): renamed, simplified
        (-[IFPluginNullEventSender stop]): call plugin debug function
        * Plugins.subproj/IFPluginView.h:
        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView start]): call new initWithPluginView
        (-[IFPluginView windowWillClose:]): added back to fix plugin view leak
        (-[IFPluginView NPP_HandleEvent]): added

2002-07-11  Darin Adler  <darin@apple.com>

	- fixed 2930872 -- option-arrow keys should page up and down
	- fixed 2924727 -- Delete does not go to previous page

        * WebView.subproj/IFHTMLView.mm: Disable the keyDown and keyUp
	methods here. We don't really need to pass these events to KHTMLView
	at the moment. See the comment in this file for further explanation.
	This paves the way to handle keys other than arrow keys in IFWebView.

        * WebView.subproj/IFWebController.h: Add temporary goBack method to
	IFWindowContext. See comment for more.

        * WebView.subproj/IFWebView.mm: (-[IFWebView keyDown:]): Add handling
	for option arrow keys, space (page down), shift-space (page up), and
	delete (go back). Also make this call super if the key is not handled
	so keys make their way back to the superview in the application.

        * WebView.subproj/IFWebViewPrivate.h: Add _pageLeft, _pageRight, _goBack.
        * WebView.subproj/IFWebViewPrivate.mm:
        (-[IFWebView _pageHorizontally:]): Added.
        (-[IFWebView _pageLeft]): Added.
        (-[IFWebView _pageRight]): Added.
        (+[IFWebView _viewTypes]): Simplify.
        (-[IFWebView _goBack]): Added. Calls [IFWindowContext goBack].

2002-07-10  Darin Adler  <darin@apple.com>

	- fixed 2973738 -- box characters

	To be consistent with other browsers, we need to draw nothing for 0000-001F.
	We were drawing boxes.

        * WebCoreSupport.subproj/IFTextRenderer.m:
        (-[IFTextRenderer convertCharacters:length:toGlyphs:skipControlCharacters:]):
	Add the skipControlCharacters parameter. If YES, don't include glyphs for characters
	in the 0000-001F range.
        (-[IFTextRenderer slowPackGlyphsForCharacters:numCharacters:glyphBuffer:numGlyphs:]):
	Pass skipControlCharacters:YES.
        (-[IFTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]):
	Skip control characters when creating the glyph array.
        (-[IFTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]):
	Pass skipControlCharacters:YES.
        (-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
	Skip control characters when computing the width.
        (-[IFTextRenderer extendCharacterToGlyphMapToInclude:]): Pass skipControlCharacters:NO.

2002-07-10  Darin Adler  <darin@apple.com>

	- fixed 2986273 -- assert currentURL isEqual:[handle redirectedURL] ? [handle redirectedURL] : [handle url]

	Since cancel prevents further notification from getting through, currentURL can get
	out of sync before cancelling, so we can't assert in the cancel function.

        * WebCoreSupport.subproj/IFResourceURLHandleClient.m:
        (-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]): Remove assert.

        * WebView.subproj/IFMainURLHandleClient.h: Remove unnecessary includes. Change type
	of dataSource to IFWebDataSource from id. Change url to currentURL to match
	IFResourceURLHandleClient.

        * WebView.subproj/IFMainURLHandleClient.mm:
        (-[IFMainURLHandleClient initWithDataSource:]): Simplify.
        (-[IFMainURLHandleClient didStartLoadingWithURL:]): Copied here from IFResourceURLHandleClient
	as a first step toward using a common superclass some day.
        (-[IFMainURLHandleClient didStopLoading]): Copied here from IFResourceURLHandleClient
	as a first step toward using a common superclass some day.
        (-[IFMainURLHandleClient dealloc]): Add an assert.
        (-[IFMainURLHandleClient receivedProgressWithHandle:complete:]): Removed most of the parameters
	to make this match the one in IFResourceURLHandleClient.
        (-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]): Use didStartLoadingWithURL.
        (-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): Use receivedProgressWithHandle and
	didStopLoading.
        (-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]): Use receivedProgressWithHandle and
	didStopLoading.
        (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): Use receivedProgressWithHandle.
        (-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]): Use receivedProgressWithHandle and
	didStopLoading.
        (-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]): Use didStopLoading and didStartLoadingWithURL.

2002-07-10  Maciej Stachowiak  <mjs@apple.com>

        WebKit part of fix for:

	Radar 2953250 - JavaScript window.focus() and window.blur()
	methods don't work
	
	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
        (-[IFWebCoreBridge unfocusWindow]): Use private AppKit interface
	to cycle windows if the window is the key window.

2002-07-10  Darin Adler  <darin@apple.com>

	- fixed 2983025 -- crash in sendEvent on pages with flash playing

        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView removeTrackingRect]): New, removes tracking rect and releases window.
        (-[IFPluginView resetTrackingRect]): New, adds tracking rect and retains window.
        (-[IFPluginView start]): Use resetTrackingRect.
        (-[IFPluginView stop]): Use removeTrackingRect.
        (-[IFPluginView viewWillMoveToWindow:]): Call removeTrackingRect because the window
	will change by the time we get to viewDidMoveToWindow.
        (-[IFPluginView viewDidMoveToWindow]): Call resetTrackingRect.
        (-[IFPluginView viewHasMoved:]): Call resetTrackingRect.

2002-07-10  Darin Adler  <darin@apple.com>

        * WebView.subproj/IFWebViewPrivate.mm:
        (-[IFWebView _scrollToBottomLeft]): Fix this to use the document view to define what
	the bottom left is, not the content view (which is often much smaller than the document).

2002-07-10  Chris Blumenberg  <cblu@apple.com>

	Fixes for:
	2981866 - Download doesn't appear in Downloads window if link was command-clicked
	2965312 - Download progress not shown when clicking on download link with Alex not running

        * WebView.subproj/IFMainURLHandleClient.mm:
        (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): retain
	the downloadProgressHandler before calling requestContentPolicy as the web controller may be released
	in requestContentPolicy

2002-07-10  Chris Blumenberg  <cblu@apple.com>

        Fix for:
        2976311 - Download fails if you close the window that started the download
        2976308 - Can't navigate in window while download started in that window is in progress

        * WebView.subproj/IFMainURLHandleClient.h:
        * WebView.subproj/IFMainURLHandleClient.mm:
        (-[IFMainURLHandleClient dealloc]):
        (-[IFMainURLHandleClient _receivedProgress:forResourceHandle:fromDataSource:complete:]): added, sends progress to correct handler
        (-[IFMainURLHandleClient _receivedError:forResourceHandle:partialProgress:fromDataSource:]): added, sends progress to correct handler
        (-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): calls _receivedProgress
        (-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]): calls _receivedProgress
        (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): calls _receivedProgress
        (-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]): calls _receivedError
        * WebView.subproj/IFWebController.h:
        * WebView.subproj/IFWebController.mm:
        (-[IFWebController setDownloadProgressHandler:]): added
        (-[IFWebController downloadProgressHandler]): added
        * WebView.subproj/IFWebControllerPrivate.h:
        * WebView.subproj/IFWebControllerPrivate.mm:
        (-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]): removed download special-casing

2002-07-10  Maciej Stachowiak  <mjs@apple.com>

        * WebView.subproj/IFGrabBag.h: Removed.
        * WebView.subproj/IFWebController.h: Move IFContextMenuHandler
	here.

2002-07-10  Darin Adler  <darin@apple.com>

	Did some tweaks that weren't really necessary. But at least one is a significant
	improvement so I decided to commit rather then just discarding the changes.

        * Bookmarks.subproj/IFBookmark.m:
        (-[IFBookmark title]): Take out special case for separator.
        (-[IFBookmark setTitle:]): Take out special case for separator.
        (-[IFBookmark image]): Take out special case for separator.
        (-[IFBookmark setImage:]): Take out special case for separator.
        (-[IFBookmark setURLString:]): Take out special case for non-leaf.
        (-[IFBookmark children]): Take out request for concrete implementation;
	this is not useful since it's specific to one subclass.
        (-[IFBookmark numberOfChildren]): Take out request for concrete implementation;
	this is not useful since it's specific to one subclass.
        (-[IFBookmark _numberOfDescendants]): Take out request for concrete implementation;
	this is not useful since it's specific to one subclass.
        (-[IFBookmark insertChild:atIndex:]): Take out special case for non-list.
        (-[IFBookmark removeChild:]): Take out special case for non-list.
        (+[IFBookmark bookmarkFromDictionaryRepresentation:withGroup:]): Refactored to
	eliminate repeated code.

        * Bookmarks.subproj/IFBookmarkLeaf.m:
        (-[IFBookmarkLeaf copyWithZone:]): Use allocWithZone to be more pedantically correct.

        * Bookmarks.subproj/IFBookmarkSeparator.m:
        (-[IFBookmarkSeparator title]): Override to return nil.
        (-[IFBookmarkSeparator image]): Override to return nil.

2002-07-10  Darin Adler  <darin@apple.com>

        * Misc.subproj/WebKitDebug.m: Remove workaround for long-ago fixed
	C compiler bug.

        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView keyUp:]), (-[IFPluginView keyDown:]): Simplify keyboard
	scrolling code by passing along all events that the plug-in doesn't handle
	rather than special-casing certain events. Also use super rather than
	nextResponder to pass along the scroll events (super will do nextResponder).

        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView keyDown:]), (-[IFHTMLView keyUp:]): Use super rather than
	nextResponder to pass along scroll events (super will do nextResponder).

2002-07-08  Chris Blumenberg  <cblu@apple.com>

        Fixes for:
        2955757 - Keyboard scrolling code needs to move to WebKit
        2937231 - Left and right arrows should scroll the content area

        * Misc.subproj/IFNSEventExtras.h: Added.
        * Misc.subproj/IFNSEventExtras.m: Added.
        (-[NSEvent _IF_isScrollEvent]): new
        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView keyUp:]): if plug-in doesn't accept it, send to nextResponder
        (-[IFPluginView keyDown:]): if plug-in doesn't accept it, send to nextResponder
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView keyDown:]): calls _IF_isScrollEvent, if so send to nextResponder
        (-[IFHTMLView keyUp:]): calls _IF_isScrollEvent, if so send to nextResponder
        * WebView.subproj/IFWebView.mm:
        (-[IFWebView acceptsFirstResponder]): added
        (-[IFWebView window]): no changes
        (-[IFWebView keyDown:]): added, does the scroll
        * WebView.subproj/IFWebViewPrivate.h:
        * WebView.subproj/IFWebViewPrivate.mm:
        (-[IFWebView _contentView]): added
        (-[IFWebView _scrollVerticallyBy:]): added, moved from BrowserWindow.m
        (-[IFWebView _scrollHorizontallyBy:]): added, moved from BrowserWindow.m
        (-[IFWebView _pageVertically:]): added, moved from BrowserWindow.m
        (-[IFWebView _scrollLineVertically:]): added, moved from BrowserWindow.m
        (-[IFWebView _scrollLineHorizontally:]): added, moved from BrowserWindow.m
        (-[IFWebView _pageDown]): added, moved from BrowserWindow.m
        (-[IFWebView _pageUp]): added, moved from BrowserWindow.m
        (-[IFWebView _scrollToTopLeft]): added, moved from BrowserWindow.m
        (-[IFWebView _scrollToBottomLeft]): added, moved from BrowserWindow.m
        (-[IFWebView _lineDown]): added, moved from BrowserWindow.m
        (-[IFWebView _lineUp]): added, moved from BrowserWindow.m
        (-[IFWebView _lineLeft]): added, moved from BrowserWindow.m
        (-[IFWebView _lineRight]): added, moved from BrowserWindow.m

2002-07-08  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/IFWebCoreBridge.mm: Fix compiles under newer compiler
	(Jaguar 6C89 and newer) by adding missing include.

2002-07-07  Maciej Stachowiak  <mjs@apple.com>

        WebCore part of fix for Radar 2953431 - JavaScript window.close()
	method is not working

	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
        (-[IFWebCoreBridge openedByScript]): Implement by calling controller.
        (-[IFWebCoreBridge setOpenedByScript:]): Likewise.
        * WebView.subproj/IFWebControllerPrivate.h:
        * WebView.subproj/IFWebControllerPrivate.mm:
        (-[IFWebController _openedByScript]): Implement.
        (-[IFWebController _setOpenedByScript:]): Implement.

2002-07-05  Darin Adler  <darin@apple.com>

	Fix crashes I saw with zombies enabled caused by messing with windows that are
	in the process of being destroyed.

        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView start]): Remove windowWillClose notification because
	we use viewDidMoveToWindow instead.
        (-[IFPluginView viewDidMoveToWindow]): Use this instead of viewWillMoveToWindow.
        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView viewDidMoveToWindow]): Use this instead of viewWillMoveToWindow.
        * WebView.subproj/IFHTMLViewPrivate.h: Need a boolean flag to tell window changes
	before the first time we are installed from window changes afterward.
        * WebView.subproj/IFImageView.m:
        (-[IFImageView viewDidMoveToWindow]): Use this instead of viewWillMoveToWindow.

2002-07-04  Maciej Stachowiak  <mjs@apple.com>

        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView mouseMovedNotification:]): Pass the modifier flags
	along for mouse move events.

2002-07-04  John Sullivan  <sullivan@apple.com>

        * WebView.subproj/IFDynamicScrollBarsView.h:
	Updated FIXME to mention bug number.

2002-07-03  Chris Blumenberg  <cblu@apple.com>

	- Fix for 2975750
	- Removed Java workaround since that will be fixed soon.

        * Plugins.subproj/IFPlugin.h:
        * Plugins.subproj/IFPlugin.m:
        (-[IFPlugin _openResourceFile]): added
        (-[IFPlugin _closeResourceFile:]): added
        (-[IFPlugin _getPluginInfo]): rename
        (-[IFPlugin initWithPath:]): simplified
        (-[IFPlugin load]): calls _openResourceFile
        (-[IFPlugin unload]): calls _closeResourceFile
        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView setUpWindowAndPort]): removed Java workaround

2002-07-03  Darin Adler  <darin@apple.com>

        * Misc.subproj/IFException.h: Use Objective C header style rather than plain C.

=== Alexander-11 ===

2002-07-03  Darin Adler  <darin@apple.com>

        * Misc.subproj/IFDownloadHandler.mm:
        (-[IFDownloadHandler finishedLoading]):
        * WebView.subproj/IFWebController.h:
	A couple places where it still said IFContentPolicyOpenExternally.

2002-07-03  Maciej Stachowiak  <mjs@apple.com>

        WebKit part of fixes for:

	Radar 2950616 - JavaScript window.screenX and window.screenY always return -1
	Radar 2950614 - JavaScript window.screenLeft and window.screenTop
	properties are unimplemented
	Radar 2950609 - JavaScript window.outerHeight and
	window.outerWidth properties always return 0
	
	* WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView provisionalDataSourceChanged:]): Pass the real
	document view to the newly created bridge, since it will be ready
	by now and is needed by JavaScript.

2002-07-03  Maciej Stachowiak  <mjs@apple.com>

        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView status:]): Fix build problem. Why doesn't
	compiling catch these more reliably?

2002-07-03  Richard Williamson  <rjw@apple.com>

        * Misc.subproj/IFNSViewExtras.m:
        (-[NSView _IF_printViewHierarchy:]):
        Debugging help.
        
        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView layout]):
        Added setLayouted(false).
        
        * WebView.subproj/IFWebFramePrivate.mm:
        (-[IFWebFrame _isLoadComplete]):
        Tweaks attempting to fix frame drawing problems.

2002-07-03  Maciej Stachowiak  <mjs@apple.com>

        WebCore part of fix for:

	Radar 2943465 - JavaScript window.defaultStatus property not implemented
	Radar 2943464 - JavaScript window.status property is not implemented
	Radar 2926213 - show url of moused-over link in status bar

	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
	(-[IFWebCoreBridge setStatusText:]): Connect bridge status text
	setting to window context.
        * WebView.subproj/IFWebController.h:

2002-07-02  Chris Blumenberg  <cblu@apple.com>

	Added IFFileURLPolicyReveal. This makes things a little clearer for the client.

        * WebView.subproj/IFWebControllerPolicyHandler.h:
        * WebView.subproj/IFWebFramePrivate.mm:
        (-[IFWebFrame _shouldShowDataSource:]): support for IFFileURLPolicyReveal.

2002-07-02  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/IFImageRenderer.m:
        (-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
	Fixed a syntax error caused by a "just before committing" edit.

2002-07-02  Darin Adler  <darin@apple.com>

	- fixed 2952837 -- image not rendered if height or width attributes specified incorrectly

        * WebCoreSupport.subproj/IFImageRenderer.m:
        (-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
	Set the size of both the image and the image representation.

2002-07-02  Chris Blumenberg  <cblu@apple.com>

	Can't call startLoading on a frame if setProvisionalDataSource returned NO.

        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
        * WebCoreSupport.subproj/IFWebCoreFrame.m:
        (-[IFWebCoreFrame loadURL:attributes:flags:withParent:]):
        * WebView.subproj/IFWebView.mm:
        (-[IFWebView performDragOperation:]):

2002-07-02  Chris Blumenberg  <cblu@apple.com>

	Fixed asseration failure caused by an iframe not having a correct mime type.
	We now assume that local files without extensions are html files. 

        * WebView.subproj/IFWebControllerPrivate.mm:
        (+[IFWebController _MIMETypeForFile:]):

2002-07-02  Chris Blumenberg  <cblu@apple.com>

        - Moved all policy methods to IFWebControllerPolicyHandler.h
        - Moved all file URL error checking to WebKit
        - Implemented file URL policy methods
        - Renamed IFContentPolicyOpenExternally to IFContentPolicySaveAndOpenExternally

        * Misc.subproj/IFWebKitErrors.h: Added.
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/IFLocationChangeHandler.h: removed content policy stuff
        * WebView.subproj/IFMainURLHandleClient.mm:
        (-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]): IFContentPolicySaveAndOpenExternally rename
        (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): call the policy handler for content policy stuff
        * WebView.subproj/IFWebController.h:
        * WebView.subproj/IFWebController.mm:
        (-[IFWebController haveContentPolicy:andPath:forDataSource:]): sends a unableToImplementContentPolicy:
        (+[IFWebController canShowFile:]): now calls _MIMETypeForFile
        * WebView.subproj/IFWebControllerPolicyHandler.h: Added.
        * WebView.subproj/IFWebControllerPrivate.h:
        * WebView.subproj/IFWebControllerPrivate.mm:
        (-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]): IFContentPolicySaveAndOpenExternally 
rename
        (-[IFWebController _didStopLoading:]): no changes
        (+[IFWebController _MIMETypeForFile:]): added
        * WebView.subproj/IFWebDataSource.h:
        * WebView.subproj/IFWebFrame.mm:
        (-[IFWebFrame setProvisionalDataSource:]): calls _shouldShowDataSource
        * WebView.subproj/IFWebFramePrivate.h:
        * WebView.subproj/IFWebFramePrivate.mm:
        (-[IFWebFrame _bridgeFrame]): no changes
        (-[IFWebFrame _shouldShowDataSource:]): does the error handling
        * WebView.subproj/IFWebView.mm:
        (+[IFWebView initialize]): registers WebKit errors

2002-07-02  Richard Williamson  <rjw@apple.com>

        * WebView.subproj/IFRenderNode.mm:
        (-[IFRenderNode initWithRenderObject:khtml::]):
        Fixed regression that prevented showing of nodes in subframes.

2002-07-02  Darin Adler  <darin@apple.com>

        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView setWindow]), (-[IFPluginView start]), (-[IFPluginView stop]):
	Fix unused variable issue that affects deployment builds.

2002-07-02  John Sullivan  <sullivan@apple.com>

	Remove unnecessary code to fill with white from here; this code
	path has changed. Now it just bails out early in the case where
	there's no widget.

        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView drawRect:]):

2002-07-02  John Sullivan  <sullivan@apple.com>

	Made IFWebView fill with white when there's no document view. This fixes:
	
	- 2978210 -- problems with "hide status bar"
	- 2978742 -- Resizing initially-empty Alexander window results in garbage in window

        * WebView.subproj/IFWebView.mm:
        (-[IFWebView drawRect:]):

2002-07-02  Darin Adler  <darin@apple.com>

        * WebView.subproj/IFMainURLHandleClient.mm: Fix comment.

2002-07-02  Darin Adler  <darin@apple.com>

	- fixed 2975790 - Ads on salon.com scribble all over page

        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView setUpWindowAndPort]): New, sets up the window, but does not
	call NPP_SetWindow again.
        (-[IFPluginView setWindow]): Call [setUpWindowAndPort] then call NPP_SetWindow.
        (-[IFPluginView start]): Register for changes to the bounds or frame of any of
	our superviews, not just one particular one. Also, don't bother to register for
	notification when the window resizes. Finally, use the constants for the names
	of the notifications, not literal strings.
        (-[IFPluginView layout]): Just use [setUpWindowAndPort]; no need for a new call
	to NPP_SetWindow.
        (-[IFPluginView viewHasMoved:]): Just use [setUpWindowAndPort]; no need for a new
	call to NPP_SetWindow.

2002-07-01  Maciej Stachowiak  <mjs@apple.com>

        * WebView.subproj/IFWebView.mm:
        (-[IFWebView window]): If the view hasn't been added to a window
	yet, get the window from the WindowContext.

2002-07-01  Richard Williamson  <rjw@apple.com>

        * WebView.subproj/IFMainURLHandleClient.mm:
        (-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
        Ensure that _didStopLoading is called for both error case and
        non-error case.

2002-07-01  Richard Williamson  <rjw@apple.com>

        * WebView.subproj/IFMainURLHandleClient.mm:
        (-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
        A completion message was being sent, as well as an error message.
        This, no doubt confused Alexander.  No only send either the final
        error message or the completion message.

2002-07-01  Darin Adler  <darin@apple.com>

	Ken fixed the load message sequencing problem in WebFoundation, so now we can
	go back to the original versions of the asserts.

        * WebCoreSupport.subproj/IFResourceURLHandleClient.m:
        (-[IFResourceURLHandleClient dealloc]):
        (-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]):
        (-[IFResourceURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
        * WebView.subproj/IFMainURLHandleClient.mm:
        (-[IFMainURLHandleClient dealloc]):
        (-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
	Roll out the stuff that's ifdef'd and marked with bug 2954901.

2002-07-01  Darin Adler  <darin@apple.com>

        * WebView.subproj/IFDynamicScrollBarsView.m:
        (-[IFDynamicScrollBarsView updateScrollers]): After a closer reading of
	the NSScrollView source code, I see that we don't need to explicitly do
	tile or setNeedsDisplay: because the setters take care of that, so I made
	this simpler.
        (-[IFDynamicScrollBarsView reflectScrolledClipView:]): Replace the anti-
	recursion hack that I erroneously removed earlier.

        * WebView.subproj/IFTextView.h: Removed the isRTF flag.
        * WebView.subproj/IFTextView.m:
        (-[IFTextView provisionalDataSourceChanged:]): Do nothing here.
        (-[IFTextView dataSourceUpdated:]): Check the MIME type here.

2002-07-01  Richard Williamson  <rjw@apple.com>

        Fixed 2976913.
         
        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView layout]):
        Augmented debugging info.
        (-[IFHTMLView setNeedsDisplay:]):
        Augmented debugging info.
        (-[IFHTMLView setNeedsLayout:]):
        Removed overload of this method to also set display flag.
        Why was this added?
        (-[IFHTMLView setNeedsToApplyStyles:]):
        Augmented debugging info.
        (-[IFHTMLView drawRect:]):
        Augmented debugging info.
        * WebView.subproj/IFWebFramePrivate.mm:
        (-[IFWebFrame _timedLayout:]):
        If the view size is zero (width or height) force
        a layout now, rather than depending on the lazy
        layout that will happen in display.  If the view
        size is 0,0 the AppKit will optimize out the display.

2002-07-01  Chris Blumenberg  <cblu@apple.com>

	Minor cleanup
	
        * Plugins.subproj/IFNullPluginView.mm:
        (-[IFNullPluginView initWithFrame:mimeType:arguments:]):
        (-[IFNullPluginView dealloc]):

2002-07-01  Darin Adler  <darin@apple.com>

        * Plugins.subproj/IFPlugin.m:
        (-[IFPlugin _getPluginInfoForResourceFile:]): Fix off-by one error
	that would cause a memory trasher if we had a 255-character string.

        * WebView.subproj/IFHTMLView.mm:
        * WebView.subproj/IFRenderNode.mm:
	Touch these files so we don't have to do a full build of WebKit
	for my WebCore changes.

2002-07-01  Maciej Stachowiak  <mjs@apple.com>

        Build fixes (don't know why a plain build didn't catch these):

	* Plugins.subproj/IFPluginView.mm: openNewWindowWithURL: is not a
	method of the controller any more, nor are the status-related calls.
        * WebView.subproj/IFWebController.h: Un-ifdef the status calls.

2002-07-01  Maciej Stachowiak  <mjs@apple.com>

        Part of fix for Radar 2976618 - links targeting _blank hit
	assertion trying to set provisional data source

	* WebView.subproj/IFWebFrame.mm:
        (-[IFWebFrame frameNamed:]): Show the window.

2002-07-01  Maciej Stachowiak  <mjs@apple.com>

	Fix Radar 2953256 - Auth sheet appears detached when clicking
	directly on auth link with Alex not running
	
        * Panels.subproj/IFStandardPanels.m:
        (-[IFStandardPanels frontmostWindowLoadingURL:]): Don't consider
	windows that are not visible.

2002-06-29  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/IFImageRenderer.m:
        (-[IFImageRenderer tileInRect:fromPoint:]): Fix calculation of oneTileRect.
	I think this is finally correct now.

2002-06-29  Maciej Stachowiak  <mjs@apple.com>

        WebKit part of fix for:

	Radar 2942074 - JavaScript size, positioning and feature
	parameters to window.open are ignored

	Also, renamed IFScriptContextHandler protocol to IFWindowContext,
	and made it a settable handler like the others rather than
	something implemented by the controller, so it can be used w/o
	subclassing.
	
        * WebCoreSupport.subproj/IFWebCoreBridge.mm:
        (-[IFWebCoreBridge openNewWindowWithURL:]): Forward to the WindowContext.
        (-[IFWebCoreBridge areToolbarsVisisble]): Likewise.
        (-[IFWebCoreBridge setToolbarsVisible:]): Likewise.
        (-[IFWebCoreBridge areScrollbarsVisible]): Likewise.
        (-[IFWebCoreBridge setScrollbarsVisible:]): Likewise.
        (-[IFWebCoreBridge isStatusBarVisisble]): Likewise.
        (-[IFWebCoreBridge setStatusBarVisible:]): Likewise.
        (-[IFWebCoreBridge setWindowFrame:]): Likewise.
        (-[IFWebCoreBridge window]): Likewise.
        * WebView.subproj/IFWebController.h:
        * WebView.subproj/IFWebController.mm:
        (-[IFWebController setWindowContext:]): Setter for new WindowContext handler
        (-[IFWebController windowContext]): Likewise.
        * WebView.subproj/IFWebControllerPrivate.h:
        * WebView.subproj/IFWebControllerPrivate.mm:
        (-[IFWebControllerPrivate dealloc]): Release window context.
        * WebView.subproj/IFWebFrame.mm:
        (-[IFWebFrame frameNamed:]): Open new windows via WindowContext.

2002-06-28  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/IFImageRenderer.h: Renamed statusOfCache to
	patternColorLoadStatus for clarity.
        * WebCoreSupport.subproj/IFImageRenderer.m:
        (-[IFImageRenderer copyWithZone:]): Add FIXME.
        (-[IFImageRenderer tileInRect:fromPoint:]): Add optimization for the
	case where a single draw of the image will cover the entire area to be
	tiled. Also add comments and make other small improvements.

2002-06-28  Richard Williamson  <rjw@apple.com>

        Use float character measurement to determine selection
        region.  Necessary to ensure accuracy of selection
        region.  First step towards weaning khtml off int
        measurements.

        * WebCoreSupport.subproj/IFImageRenderer.m:
        (-[IFImageRenderer tileInRect:fromPoint:]):
        Cleaned up use of loadStatus.
        * WebCoreSupport.subproj/IFTextRenderer.m:
        (-[IFTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]):
        (-[IFTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
        (-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):

2002-06-28  Chris Blumenberg  <cblu@apple.com>

        * WebView.subproj/IFMainURLHandleClient.h:
        * WebView.subproj/IFMainURLHandleClient.mm:
        (-[IFMainURLHandleClient downloadHandler]): added
        (-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): removed [downloadHandler cancel]
        * WebView.subproj/IFWebDataSource.mm:
        (-[IFWebDataSource stopLoading]): call [downloadHandler cancel] here so clean up is done immediately.

2002-06-27  Richard Williamson  <rjw@apple.com>

        Fixed tiling of progressively loaded images.
        
        * WebCoreSupport.subproj/IFImageRenderer.h:
        * WebCoreSupport.subproj/IFImageRenderer.m:
        (-[IFImageRenderer initWithSize:]):
        (-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
        (-[IFImageRenderer loadStatus]):
        (-[IFImageRenderer tileInRect:fromPoint:]):

2002-06-27  Richard Williamson  <rjw@apple.com>

        * WebCoreSupport.subproj/IFImageRenderer.h:
        * WebCoreSupport.subproj/IFImageRenderer.m:
        (-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
        (-[IFImageRenderer loadStatus]):
        (-[IFImageRenderer tileInRect:fromPoint:]):

2002-06-27  Richard Williamson  <rjw@apple.com>

        * WebCoreSupport.subproj/IFTextRenderer.m:
        (-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
        Fixed uninitialized variable warning.  Compile being too aggressive,
        broke deployment build.

2002-06-27  Chris Blumenberg  <cblu@apple.com>

	Fixed plug-in positioning.

        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView 
initWithFrame:plugin:url:baseURL:mime:arguments:]): added some logging.
        (-[IFPluginView setWindow]): Use the window's content view as the 
guide for the port's coordinates. Also added a workaround for Java.

2002-06-27  Darin Adler  <darin@apple.com>

	Fixed DOM tree viewer.

        * WebView.subproj/IFDOMNode.mm: (-[IFDOMNode initWithDOMNode:DOM::]):
	A typo got in here somehow, leading to an infinite loop.

2002-06-27  Darin Adler  <darin@apple.com>

        - fixed 2973212 -- bad arg string != nil in _IF_URLWithString

        * WebView.subproj/IFWebDataSourcePrivate.mm:
        (-[IFWebDataSource _startLoading:]): Get rid of essentially-dead code that
	computed but did not use a URL. Also order operations so that we first
	set the flag to say that we're loading, then tell the location change
	handler, and only then ask for the actual I/O to being.

        * WebView.subproj/IFBaseLocationChangeHandler.h: Removed.
        * WebView.subproj/IFBaseLocationChangeHandler.m: Removed.

=== Alexander-10 ===

2002-06-27  Richard Williamson  <rjw@apple.com>

        Method name changes in preparation for fixing
        TextSlave::checkSelectionPoint().  Stubbed
        only, no support for new parameters yet.
        
        * Misc.subproj/IFStringTruncator.m:
        (+[IFStringTruncator centerTruncateString:toWidth:withFont:]):
        * WebCoreSupport.subproj/IFTextRenderer.h:
        * WebCoreSupport.subproj/IFTextRenderer.m:
        (-[IFTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]):
        (-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
        (-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
        (-[IFTextRenderer widthForCharacters:length:]):
        (-[IFTextRenderer widthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):

2002-06-27  Richard Williamson  <rjw@apple.com>

        Removed old methods and references.
        
        * WebCoreSupport.subproj/IFTextRenderer.m:
        (-[IFTextRenderer drawString:atPoint:withColor:]):
        (-[IFTextRenderer slowDrawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:attemptFontSubstitution:]):
        (-[IFTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]):
        Fixed final fragment rendering glitch.

2002-06-27  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/IFWebCoreViewFactory.m:
        (-[IFWebCoreViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
	Pass baseURL as a separate parameter.

        * WebView.subproj/IFBaseLocationChangeHandler.m: Fix a typo. I think this
	file might be unneeded, but I won't delete it until I hear from Chris.

2002-06-27  Richard Williamson  <rjw@apple.com>
        
        Fix selection in 'slow' code path (non-base characters and font substitution).
        
        * WebCoreSupport.subproj/IFTextRenderer.m:
        (-[IFTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withTextColor:backgroundColor:]):
        (-[IFTextRenderer slowDrawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:attemptFontSubstitution:]):

2002-06-27  Richard Williamson  <rjw@apple.com>

        Implemented auto scrolling.
        
        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView mouseDragged:]):

2002-06-27  Richard Williamson  <rjw@apple.com>

        Implement selectAll.
        
        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView selectAll:]):

2002-06-27  Maciej Stachowiak  <mjs@apple.com>

	WebKit part of fixes for JavaScript cookie bugs:
	
	2943749 - JavaScript navigator.cookieEnabled property is always "true"
	2856039 - JavaScript document.cookies property is not implemented
	
	Thereby also fixing:
	
	2944378 - Trying to log into my Yahoo web mail account sent
	Alexander into a loop
	
        * WebCoreSupport.subproj/IFCookieAdapter.h: Added.
        * WebCoreSupport.subproj/IFCookieAdapter.m: Added.
        (+[IFCookieAdapter createSharedAdapter]): Set up an instance of
	IFCookieAdapter as the WebCoreCookieAdapter shared instance.
        (-[IFCookieAdapter cookiesEnabled]): Implement in terms of
	WebFoundation stuff.
        (-[IFCookieAdapter cookiesForURL:]): Likewise.
        (-[IFCookieAdapter setCookies:forURL:]): Likewise.
        * WebKit.pbproj/project.pbxproj: Add new files to build.
        * WebView.subproj/IFWebView.mm:        
	(-[IFWebView initWithFrame:]): Hook up the cookie adapter just
	like the various factory classes.
	
2002-06-27  Chris Blumenberg  <cblu@apple.com>

	Support for Java.

        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView initWithFrame:plugin:url:baseURL:mime:arguments:]): set DOCBASE argument
        * WebCoreSupport.subproj/IFWebCoreViewFactory.m:
        (-[IFWebCoreViewFactory viewForJavaAppletWithFrame:andArguments:]): renamed

2002-06-26  Richard Williamson  <rjw@apple.com>

        Many improvements to selection.  More Cocoa like,
        normalized all text drawing code paths for selected 
        and unselected cases.  
        
        Still need to work on:
        1.  'slow' drawing cases, i.e. runs with non-base characters
            or runs requiring font substitution.
        2.  Select All menu item.
        3.  Auto scrolling.
        
        * WebCoreSupport.subproj/IFTextRenderer.m:
        (-[IFTextRenderer drawString:atPoint:withColor:]):
        (-[IFTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withTextColor:backgroundColor:]):
        (-[IFTextRenderer slowDrawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:attemptFontSubstitution:]):
        (-[IFTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]):
        (-[IFTextRenderer drawCharacters:length:atPoint:withTextColor:backgroundColor:]):
        (-[IFTextRenderer drawCharacters:length:atPoint:withTextColor:]):
        (-[IFTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]):

2002-06-26  Darin Adler  <darin@apple.com>

	- fixed 2969280 -- if trailing / not specified for site, relative URLs are
	incorrectly expanded

        * WebCoreSupport.subproj/IFWebCoreBridge.mm:
        (-[IFWebCoreBridge receivedData:withDataSource:]): Update the URL for the
	case where we've already been redirected before we receive any data.

2002-06-26  Darin Adler  <darin@apple.com>

	- fixed 2971532 -- crash with null KHTMLView at gramicci.com

        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView reapplyStyles]): Handle widget == 0 case.
        (-[IFHTMLView layout]): Handle widget == 0 case.

	Fixed a crash I have seen many times where a data source tries
	to use its parent to locate the controller after its parent is
	deallocated.

        * WebView.subproj/IFWebDataSourcePrivate.mm:
        (-[IFWebDataSourcePrivate dealloc]): Use _parentDataSourceWillBeDeallocated
	instead of _setController:nil.

        * WebView.subproj/IFWebFramePrivate.h: Add _parentDataSourceWillBeDeallocated.
        * WebView.subproj/IFWebFramePrivate.mm:
        (-[IFWebFrame _parentDataSourceWillBeDeallocated]): Does both
	a _setController:nil, and a _setParent:nil on both data sources.

2002-06-26  John Sullivan  <sullivan@apple.com>

	- fixed 2971024 -- wrong item is bookmarked

	-[IFWebDataSource redirectedURL] was returning the URL of a
	sub-page resource.

        * WebCoreSupport.subproj/IFResourceURLHandleClient.m:
        (-[IFResourceURLHandleClient IFURLHandle:didRedirectToURL:]):
	Removed evil call to _setFinalURL here. It had no right to live.

2002-06-26  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/IFImageRendererFactory.m:
        (-[IFImageRendererFactory imageRenderer]): Fix NSBitmapImageRep leak.

2002-06-26  Chris Blumenberg  <cblu@apple.com>

	- added "complete" to to progress methods to indicate last progress message

        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView setWindow]): added a draw test
        * WebView.subproj/IFWebController.h:
        * WebView.subproj/IFWebControllerPrivate.mm:
        (-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
        (-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):

2002-06-26  Richard Williamson  <rjw@apple.com>

        Fixed recursion problems.  +[NSFont findFontLike:forString:withRange:inLanguage:]
        will alternate between suggested fonts with bogus answers.  The work
        around involves adding an explicit flag indicating whether or not
        font substitution should be attempted.
        
        * Misc.subproj/IFStringTruncator.m:
        (+[IFStringTruncator centerTruncateString:toWidth:withFont:]):
        * WebCoreSupport.subproj/IFTextRenderer.h:
        * WebCoreSupport.subproj/IFTextRenderer.m:
        (-[IFTextRenderer slowDrawCharacters:length:atPoint:withColor:attemptFontSubstitution:]):
        (-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
        (-[IFTextRenderer floatWidthForCharacters:length:applyRounding:attemptFontSubstitution:]):
        (-[IFTextRenderer widthForCharacters:length:]):

2002-06-26  Darin Adler  <darin@apple.com>

        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView validateUserInterfaceItem:]): Switch to this instead
        of validateMenuItem: so that a Copy toolbar button would work.

2002-06-25  Richard Williamson  <rjw@apple.com>

        Disable the copy menu item when IFHTMLView has is key
        and has no selection.
        
        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView validateMenuItem:]):
        Disable menu if selection is empty.
        (-[IFHTMLView copy:]):
        Factored code that gets the bridge.
        * WebView.subproj/IFHTMLViewPrivate.h:
        Added _bridge.
        * WebView.subproj/IFHTMLViewPrivate.mm:
        (-[IFHTMLView _bridge]):
        We need to access the bridge from the view
        to get the part's selection.

2002-06-25  Chris Blumenberg  <cblu@apple.com>

	Remove downloaded file if cancelled.

        * Misc.subproj/IFDownloadHandler.mm:
        (-[IFDownloadHandler cancel]):

2002-06-25  Richard Williamson  <rjw@apple.com>

        Support for rudimentary plain text 'copy'.

        * WebCoreSupport.subproj/IFImageRenderer.m:
        (-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView copy:]):
        * WebView.subproj/IFWebViewPrivate.h:
        * WebView.subproj/IFWebViewPrivate.mm:
        (-[IFWebView _controller]):

2002-06-25  Richard Williamson  <rjw@apple.com>

        Enabled progressive image loading code.
        
        * WebCoreSupport.subproj/IFImageRenderer.h:
        * WebCoreSupport.subproj/IFImageRenderer.m:
        (-[IFImageRenderer initWithSize:]):
        (-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
        * WebCoreSupport.subproj/IFImageRendererFactory.m:
        (-[IFImageRendererFactory imageRenderer]):

2002-06-25  Richard Williamson  <rjw@apple.com>

       Extended our text measurement rounding work-around for integer-float 
       mismatch to round on word boundaries as well as spaces.

        * WebCoreSupport.subproj/IFTextRenderer.m:
        (-[IFTextRenderer drawGlyphs:numGlyphs:atPoint:withColor:]):
        (-[IFTextRenderer slowFloatWidthForCharacters:length:applyRounding:]):
        (-[IFTextRenderer floatWidthForCharacters:length:applyRounding:]):

2002-06-25  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/IFResourceURLHandleClient.m:
        (-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]):
        (-[IFResourceURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
        (-[IFResourceURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
	Don't remove the URL handle from the data source until we've finished the
	loading process in KDE code. This may fix 2968527.

        * WebCoreSupport.subproj/IFTextRenderer.m: Keep around commented printfs so
	I can do the "dump all strings as they are rendered" again.

        * WebKit.pbproj/project.pbxproj: Re-add -Wmissing-format-attribute.

2002-06-25  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/IFImageRenderer.m:
        (-[IFImageRenderer tileInRect:fromPoint:]): Remove stray NSLog.

2002-06-25  Darin Adler  <darin@apple.com>

	- fixed 2968298 -- IFImageRenderer crash at download.com

        * WebCoreSupport.subproj/IFImageRenderer.m:
        (-[IFImageRenderer initWithSize:]): Override this instead of [init].
	This is the designated initializer and all the others call this.
        (-[IFImageRenderer copyWithZone:]): Override to nil out fields that
	can't be shared by the copy.

	Fix leaks.

        * History.subproj/IFURIEntry.m:
        (-[IFURIEntry initWithURL:title:image:]): Use copy instead of retain
	in case we are passed a mutable string.
        (-[IFURIEntry dealloc]): Release _displayTitle. Fixes a leak.
        (-[IFURIEntry setTitle:]): Use copy instead of retain in case we are
	passed a mutable string.
        (-[IFURIEntry setDisplayTitle:]): Use copy instead of retain in case
	we are passed a mutable string.
        (-[IFURIEntry initFromDictionaryRepresentation:]): Lose the extra
	retain for _lastVisitedDate. Fixes a leak.

2002-06-24  Darin Adler  <darin@apple.com>

        * Panels.subproj/IFStandardPanels.m:
        (-[IFStandardPanels didStopLoadingURL:inWindow:]): Fix a leak caused
	by calling the wrong method. This was calling objectForKey: instead of
	removeObjectForKey:.

2002-06-24  Richard Williamson  <rjw@apple.com>

        Changed our usage of +[NSFont findFontLike:forString:withRange:inLanguage:]
        after talking with Aki.  We were erroneously passing a complete
        string rather than a character cluster.  Fixed 2964793.
        
        * WebCoreSupport.subproj/IFTextRenderer.m:
        (findLengthOfCharacterCluster):
        (-[IFTextRenderer slowPackGlyphsForCharacters:numCharacters:glyphBuffer:numGlyphs:]):
        (-[IFTextRenderer drawGlyphs:numGlyphs:atPoint:withColor:]):
        (-[IFTextRenderer slowDrawCharacters:length:atPoint:withColor:]):
        (-[IFTextRenderer _drawCharacters:length:atPoint:withColor:]):
        (-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
        (-[IFTextRenderer floatWidthForCharacters:length:applyRounding:]):

2002-06-24  Darin Adler  <darin@apple.com>

        * WebView.subproj/IFWebFramePrivate.mm:
        (-[IFWebFrame _transitionProvisionalToCommitted]): Take ownership before
	doing the setWidget. The other way the widget was getting deleted.

2002-06-24  Chris Blumenberg  <cblu@apple.com>

        * Plugins.subproj/IFPlugin.h:
        * Plugins.subproj/IFPlugin.m:
        (-[IFPlugin initWithPath:]): Close resource files when done.
        (-[IFPlugin load]): Remove Java plug-in workaround, load as mach-o
        * Plugins.subproj/IFPluginView.h:
        * Plugins.subproj/IFPluginView.mm:
        (-[IFPluginView initWithFrame:plugin:url:baseURL:mime:arguments:]): take NSURLs
        (-[IFPluginView dealloc]): release baseURL
        * WebCoreSupport.subproj/IFWebCoreViewFactory.m:
        (-[IFWebCoreViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]): take NSURLs
        (-[IFWebCoreViewFactory viewForJavaAppletWithArguments:]):

2002-06-24  Darin Adler  <darin@apple.com>

	Remove some unused stuff. Other minor cleanup.

        * WebView.subproj/IFDynamicScrollBarsView.h: Remove breakRecursionCycle,
        don't declare updateScrollers or resetCursorRects.

        * WebView.subproj/IFDynamicScrollBarsView.m:
        (-[IFDynamicScrollBarsView updateScrollers]): Make this work even for a view
        that doesn't allow scrolling, turning off both scrollers in that case.
        (-[IFDynamicScrollBarsView reflectScrolledClipView:]): Call updateScrollers
	unconditionally, letting it decide what to do, rather than looking at
	allowsScrolling. Also, no need to use a boolean to break the recursion cycle,
	now that updateScrollers does no work if none is needed.
        (-[IFDynamicScrollBarsView setCursor:]): Do nothing if the cursor is not
	changing. Also handle arrowCursor case here.
        (-[IFDynamicScrollBarsView resetCursorRects]): Call discardCursorRects so
	the old rects won't keep accumulating.
        (-[IFDynamicScrollBarsView setAllowsScrolling:]): Always call updateScrollers,
	not just when turning scrolling off.

        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView initWithFrame:]): Remove unneeded NSWindowWillCloseNotification
	and isFlipped field.
        (-[IFHTMLView removeNotifications]): Moved here from NSWindowWillCloseNotification.
        (-[IFHTMLView viewWillMoveToWindow:]): Remove all the notifications when the
	view is removed from the window.
        (-[IFHTMLView setNeedsLayout:]): Call setNeedsDisplay in the YES case, so the
	callers don't all have to.
        (-[IFHTMLView isFlipped]): Just return YES. No need to store it.
        (-[IFHTMLView windowResized:]): Add a FIXME, since this is not the way we want
	to handle view resizing for the long run.
        * WebView.subproj/IFHTMLViewPrivate.h: Remove isFlipped.

2002-06-24  Darin Adler  <darin@apple.com>

        Fix the last of the "leak the world" problems. The KHTMLView was leaking
        in IFHTMLView.

        * WebView.subproj/IFHTMLView.mm:
        (-[IFHTMLView dealloc]): Call _reset instead of _stopPlugins, so we get rid
        of the widget too.
        (-[IFHTMLView viewWillMoveToWindow:]): Use _reset now instead of the old
        _stopPlugins; also check that the window isn't already nil so we don't do a
        reset as part of our first install.
        (-[IFHTMLView provisionalDataSourceCommitted:]): Use the new widgetOwned
        flag to tell if the widget should be deleted instead of deciding based on
        whether the dataSource is the main document.

        * WebView.subproj/IFHTMLViewPrivate.h: Add a widgetOwned boolean and a
        private _takeOwnershipOfWidget method. Combine _resetWidget and _stopPlugins
        into a single _reset call. Remove _removeSubviews.

        * WebView.subproj/IFHTMLViewPrivate.mm:
        (-[IFHTMLView _reset]): New name for the combination of _resetWidget and
        _stopPlugins. Now it decides whether to delete the widget based on the
        widget owned flag, so it is safe to call even for non-main-document views.
        (-[IFHTMLView _takeOwnershipOfWidget]): Sets widgetOwned to NO.

        * WebView.subproj/IFWebFrame.mm: (-[IFWebFrame reset]): Use _resetWidget
        under its new name _reset.

        * WebView.subproj/IFWebFramePrivate.mm:
        (-[IFWebFrame _transitionProvisionalToCommitted]): Don't bother doing
        explicit _stopPlugins and _removeSubviews. It's now the view's own responsibility
        to do this in viewWillMoveToWindow:. Call _takeOwnershipOfWidget after attaching
        the widget to the RenderPart.

        * WebView.subproj/IFImageView.m: (-[IFImageView viewWillMoveToWindow:]): Added.
        Break the reference cycle by stopping animated IFImageRenderer here instead of
        waiting for dealloc.

        * Plugins.subproj/IFPluginView.mm: (-[IFPluginView setWindow]): Fix a warning
        by changing the printf format string to match the parameter type.

        * Misc.subproj/WebKitDebug.h: Re-add the __format__ attribute, now that Radar
        2920557 is fixed.

2002-06-23  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/IFImageRenderer.m: (-[IFImageRenderer nextFrame:]):
        Use hasAlpha instead of isOpaque because the latter does not work (Radar 2966937).

2002-06-21  Darin Adler  <darin@apple.com>

        * WebCoreSupport.subproj/IFImageRenderer.m:
        (-[IFImageRenderer nextFrame:]): Add back the higher-speed case where
	we draw directly for opaque animated images.

2002-06-21  Darin Adler  <darin@apple.com>

	Cache the patterns we make for tiled images for added speed.

        * WebCoreSupport.subproj/IFImageRenderer.h: Removed declarations of
	methods inherited from WebCoreImageRenderer. Added patternColor field.

        * WebCoreSupport.subproj/IFImageRenderer.m:
        (-[IFImageRenderer dealloc]): Release patternColor.
        (-[IFImageRenderer beginAnimationInRect:fromRect:]): Get the view with
	[NSView focusView] rather than taking a parameter that's used only for
	the animating case.
        (-[IFImageRenderer tileInRect:fromPoint:]): New. Caches the pattern in
	the patternColor field.

        * WebView.subproj/IFImageView.m: (-[IFImageView drawRect:]): No need to
	pass view to image renderer any more.

2002-06-21  Darin Adler  <darin@apple.com>

	Fix rendering of non-opaque animated images.

	* WebCoreSupport.subproj/IFImageRenderer.m:
	(-[IFImageRenderer nextFrame:]): Use [NSView displayRect:] instead of
	drawing explicitly so that views behind us get a chance to draw too.
	This is less efficient than just drawing for opaque images, but NSImage
	doesn't offer a way to find out if the image is opaque. Also, this changes
	things a bit because beginAnimationInView gets called again, so we don't
	have to reschedule the timer.

2002-06-20  Richard Williamson  <rjw@apple.com>

	* WebCoreSupport.subproj/IFImageRenderer.m:
	(-[IFImageRenderer frameDuration]):
	    Added minimum 1/60th second duration per frame.
	* WebView.subproj/IFDynamicScrollBarsView.m:
	(-[IFDynamicScrollBarsView updateScrollers]):
	    Only display scrollview if scrollers changed.
	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFrame _setState:]):
	    Explicity turn on copiesOnScroll.  This may cause problems w/
	    plugins.  Need to verify once plugins are no longer crashing.

2002-06-20  Darin Adler  <darin@apple.com>

	Fix for leak where sub-frame IFHTMLViews would not call _stopPlugins.

	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView viewWillMoveToWindow:]):
	* WebView.subproj/IFHTMLView.mm:
	(-[IFHTMLView viewWillMoveToWindow:]):
	Use this viewWillMoveToWindow instead of removeFromSuperview; it's a more
	reliable way to handle cases where the view is removed from the view hierarchy.

	Fix for IFWebFrame -> IFWebDataSource -> LoadProgressMonitor -> IFWebFrame
	reference cycle.

	* WebView.subproj/IFLocationChangeHandler.h: Add dataSource parameters for the
	methods that don't have them so this can be "delegate" style.
	* WebView.subproj/IFWebController.h: Pass a dataSource instead of a frame
	when asking for a location change handler.

	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	Pass dataSource for locationChangeDone.

	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _startLoading:]):
	Pass dataSource for locationChangeStarted.

	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame setProvisionalDataSource:]):
	Pass a dataSource instead of a frame when asking for a location change handler.

	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFrame _transitionProvisionalToCommitted]): Pass dataSource for
	locationChangeCommitted.
	(-[IFWebFrame _isLoadComplete]): Pass dataSource for locationChangeDone.

	* force-clean-timestamp: Give this mechanism a try. I'm not sure
	we really need a clean build right now.

	* WebView.subproj/IFWebDataSource.mm: Simplify.

2002-06-20  Kenneth Kocienda  <kocienda@apple.com>

        A more complete fix for this bug:

        Radar 2942728 (Link to Yahoo! Finance stocks page fails, says URL is "not a valid location")

        I added a new +(NSURL)_IF_URLWithString: method to IFNSURLExtensions.
        This is now the suggested way to create a URL from a string.

	* History.subproj/IFURIEntry.m:
	(-[IFURIEntry initFromDictionaryRepresentation:])
	* History.subproj/IFURLsWithTitles.m:
	(+[IFURLsWithTitles URLsFromPasteboard:])
	* History.subproj/IFWebHistoryPrivate.m:
	(-[IFWebHistoryPrivate updateURL:title:displayTitle:forURL:])
	* Plugins.subproj/IFNullPluginView.mm:
	(-[IFNullPluginView initWithFrame:mimeType:arguments:])
	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:])
	(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:])
	* WebCoreSupport.subproj/IFWebCoreViewFactory.m:
	(-[IFWebCoreViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:])
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSource _startLoading:])
	* WebView.subproj/IFWebView.mm:
	(-[IFWebView performDragOperation:])

=== Alexander-9 ===

2002-06-19  Richard Williamson  <rjw@apple.com>

    Break image renderer reference cycle.  When a view is removed from the view
    hierarchy active image renderers are told to stop animating,
    which will, in turn, cause them to release their view.  We leverage
    the existing _stopPlugins mechanism.
    
	* WebCoreSupport.subproj/IFImageRenderer.h:
	* WebCoreSupport.subproj/IFImageRenderer.m:
	(+[IFImageRenderer stopAnimationsInView:]):
	(-[IFImageRenderer beginAnimationInView:inRect:fromRect:]):
	(-[IFImageRenderer frameView]):
	(-[IFImageRenderer stopAnimation]):
	* WebView.subproj/IFHTMLViewPrivate.mm:
	(-[IFHTMLView _stopPlugins]):

2002-06-19  John Sullivan  <sullivan@apple.com>

	- fixed 2960677 -- attempt to insert nil key; content policy set twice on particular page.

	The problem here was a bad URL not being propogated through the error-handling machinery
	correctly because the url handle was nil, but used to get its string.

	* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
	(+[IFResourceURLHandleClient startLoadingResource:withURL:dataSource:]):
	* WebView.subproj/IFWebControllerPrivate.mm: Use IFError init method that takes
	failingURL.

	(-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
	(-[IFWebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
	Check [error failingURL] when resource handle is nil.

2002-06-19  Darin Adler  <darin@apple.com>

	Fixed a storage leak and made some other changes to go along with
	corresponding WebCore changes.

	* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
	(-[IFResourceURLHandleClient didStartLoadingWithURL:]): Added.
	(-[IFResourceURLHandleClient didStopLoading]): Added.
	(-[IFResourceURLHandleClient dealloc]):
	(-[IFResourceURLHandleClient IFURLHandleResourceDidBeginLoading:]):
	(-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]):
	(-[IFResourceURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
	(-[IFResourceURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
	(-[IFResourceURLHandleClient IFURLHandle:didRedirectToURL:]):
	Use didStartLoadingWithURL and didStopLoading to cure problems where the
	handle would be left in the data sources list of loading handles.

	* WebView.subproj/IFDynamicScrollBarsView.h: Changed to conform to the
	WebCoreFrameView protocol.

	* Misc.subproj/WebKitDebug.h: Cloned improved assert code from WebFoundation.

	* WebView.subproj/IFDynamicScrollBarsView.m: Fixed comment.

2002-06-19  Chris Blumenberg  <cblu@apple.com>

	Call setWindow in layout so that plug-in content is drawn without 
	needing to resize.

	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView layout]):
	(-[IFPluginView viewHasMoved:]):

2002-06-19  Kenneth Kocienda  <kocienda@apple.com>

        I just played alchemical voodoo games with the linker to
        make all our frameworks and Alexander prebound.

	* WebKit.pbproj/project.pbxproj

2002-06-18  Chris Blumenberg  <cblu@apple.com>

	Fix for 2961733 - Progress of plug-in files not shown in activity window
	Plugin classed must call _IF_superviewWithName: not _IF_parentWebView

	* Plugins.subproj/IFNullPluginView.mm:
	(-[IFNullPluginView drawRect:]):
	* Plugins.subproj/IFPluginStream.mm: minor cleanup
	(-[IFPluginStream IFURLHandle:resourceDataDidBecomeAvailable:]):
	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
	(-[IFPluginStream IFURLHandle:didRedirectToURL:]):
	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView start]):
	(-[IFPluginView layout]):

2002-06-18  Chris Blumenberg  <cblu@apple.com>

	Enabled the viewing of plug-in content inline
	(aka direct links to plugin media). Made IFPluginView a
	IFDocumentView and IFPluginStream a IFDocumentRespresentation.

	Renamed content policy API's to include the data source.

	* Plugins.subproj/IFPluginDatabase.h:
	* Plugins.subproj/IFPluginDatabase.m:
	(+[IFPluginDatabase installedPlugins]): registers plugins as IFDocument*
	* Plugins.subproj/IFPluginStream.h:
	* Plugins.subproj/IFPluginStream.mm:
	(-[IFPluginStream init]): added for IFDocumentRepresentation
	(-[IFPluginStream initWithURL:pluginPointer:notifyData:attributes:]): removed load initiliazatoin
	(-[IFPluginStream dealloc]):
	(-[IFPluginStream startLoad]): added
	(-[IFPluginStream stop]):
	(-[IFPluginStream receivedData:]): added as the base implementation
	(-[IFPluginStream receivedError]): added as the base implementation
	(-[IFPluginStream finishedLoadingWithData:]): added as the base implementation
	(-[IFPluginStream receivedData:withDataSource:]): added for IFDocumentRepresentation
	(-[IFPluginStream receivedError:withDataSource:]): added for IFDocumentRepresentation
	(-[IFPluginStream finishedLoadingWithDataSource:]): added for IFDocumentRepresentation
	(-[IFPluginStream IFURLHandleResourceDidBeginLoading:]): 
	(-[IFPluginStream IFURLHandle:resourceDataDidBecomeAvailable:]): call receivedData
	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]): call finishedLoadingWithData
	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]): call receivedError
	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]): call receivedError
	(-[IFPluginStream IFURLHandle:didRedirectToURL:]):
	* Plugins.subproj/IFPluginView.h:
	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:]): removed special-case code for NP_FULL mose
	(-[IFPluginView start]):
	(-[IFPluginView initWithFrame:]): added for IFDocumentView 
 	(-[IFPluginView provisionalDataSourceChanged:]): added for IFDocumentView
	(-[IFPluginView provisionalDataSourceCommitted:]): added for IFDocumentView
	(-[IFPluginView dataSourceUpdated:]): added for IFDocumentView
	(-[IFPluginView layout]): added for IFDocumentView
	(-[IFPluginView removeFromSuperview]): call stop
	(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
	(-[IFPluginView pluginInstance]): added 
	* WebCoreSupport.subproj/IFWebCoreViewFactory.m:
	(-[IFWebCoreViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]): call new init method
	(-[IFWebCoreViewFactory viewForJavaAppletWithArguments:]): call new init method
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFLocationChangeHandler.h: content policy method name changes
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): content policy method name changes
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebController.mm:
	(-[IFWebController haveContentPolicy:andPath:forDataSource:]): content policy method name changes
	* WebView.subproj/IFWebDataSourcePrivate.h:

2002-06-18  Kenneth Kocienda  <kocienda@apple.com>

        Fix for this bug:

        Radar 2928483 (activity viewer does not show all the pieces of a web page when the page is cached)

	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
	(-[IFWebCoreBridge objectLoadedFromCache:size:]): New method that sends the appropriate progress indication.

2002-06-17  Richard Williamson  <rjw@apple.com>

    Fixed window.open regression.
    Partial fix to targeting frame of new name.
    
	* WebCoreSupport.subproj/IFWebCoreBridge.h:
	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
	(-[IFWebCoreBridge openNewWindowWithURL:]):
	    Return the newly created bridge.
	(-[IFWebCoreBridge receivedData:withDataSource:]):
	    Use setDataSource: method
	(-[IFWebCoreBridge startLoadingResource:withURL:]):
	    No change.
	(-[IFWebCoreBridge setDataSource:]):
	    New method.
	* WebView.subproj/IFHTMLView.mm:
	(-[IFHTMLView mouseMovedNotification:]):
	    Selection support.
	(-[IFHTMLView mouseDragged:]):
	    Selection support.

	* WebView.subproj/IFWebController.mm:
	(-[IFWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
        Only change representation if it hasn't been pre-bound, or if it's
        class changed.
        
	* WebView.subproj/IFWebFrame.mm:
	(-[IFWebFrame initWithName:webView:provisionalDataSource:controller:]):
	    More hackery to support window.open.

2002-06-17  Darin Adler  <darin@apple.com>

	Fixed many of the reasons that we were leaking the world. But we still leak
	KHTMLPart objects, so there must be more problems.

	* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
	(+[IFResourceURLHandleClient startLoadingResource:withURL:dataSource:]):
	Add missing autorelease. Without this, we leak the world.
	(-[IFResourceURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
	Weaken assert. It was firing before.

	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
	(-[IFWebCoreBridge receivedData:withDataSource:]): Don't retain the
	dataSource any more. Without this, we leak the world.

	* WebView.subproj/IFWebControllerPrivate.mm:
	(-[IFWebControllerPrivate dealloc]): Release the policy handler too.
	Without this, we leak the world.

	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSourcePrivate dealloc]): Release resourceData, representation,
	downloadPath, encoding, and contentType. Without this, we leak the world.

	* WebView.subproj/IFWebFrame.mm:
	(-[IFWebFrame initWithName:webView:provisionalDataSource:controller:]):
	Release the dummy data source after setting it up so it doesn't leak.

	* WebView.subproj/IFHTMLViewPrivate.mm:
	(-[IFHTMLViewPrivate dealloc]): Don't release the controller, we didn't retain it.
	(-[IFHTMLView _resetWidget]): Delete the provisional widget too.

	* WebView.subproj/IFWebDataSourcePrivate.h: Remove unused "children" array.

	* WebCoreSupport.subproj/IFImageRenderer.m: Fix comment.
	* WebView.subproj/IFHTMLView.mm: Fix comments.

2002-06-17  Richard Williamson  <rjw@apple.com>

    Fixed call to renamed progress method.
    
	* Plugins.subproj/IFPluginStream.mm:
    
2002-06-17  Chris Blumenberg  <cblu@apple.com>

	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm:
	(-[IFWebDataSource contentType]): no changes
	(-[IFWebDataSource fileType]): added. Returns extension based on MIME.

2002-06-17  Richard Williamson  <rjw@apple.com>

    Added explicit complete check for resources, rather
    than depend on bytesSoFar == totalToLoad.
    
	* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
	(-[IFResourceURLHandleClient receivedProgressWithHandle:complete:]):
	(-[IFResourceURLHandleClient IFURLHandleResourceDidBeginLoading:]):
	(-[IFResourceURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	(-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]):
	(-[IFResourceURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
	* WebView.subproj/IFWebControllerPrivate.h:
	* WebView.subproj/IFWebControllerPrivate.mm:
	(-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):

2002-06-17  Chris Blumenberg  <cblu@apple.com>

	Fix for 2939881. No more overwritting of one's files.

	* Misc.subproj/IFDownloadHandler.mm:
	(-[IFDownloadHandler receivedData:]):
	(-[IFDownloadHandler finishedLoading]):

2002-06-17  Richard Williamson  <rjw@apple.com>

    Fixed IFImageViews not drawing correctly.
    
    Changed compeletion to explicity use IFURLHandleResourceDidFinishLoading, rather
    than depend on bytesSoFar == totalToLoad.
    
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	* WebView.subproj/IFWebControllerPrivate.h:
	* WebView.subproj/IFWebControllerPrivate.mm:
	(-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):

2002-06-16  Darin Adler  <darin@apple.com>

	* WebCoreSupport.subproj/IFWebCoreFrame.m: (-[IFWebCoreFrame bridge]): Added.

2002-06-16  Darin Adler  <darin@apple.com>

	Add a separate WebCoreFrame alongside WebCoreBridge to facilitate
	handling of frames with no HTML content in them. This probably fixes
	frames named "_blank".

	* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
	(-[IFWebCoreBridge frame]): Added.
	(-[IFWebCoreBridge parent]): Changed name from parentFrame, to emphasize that this gives a WebCoreBridge.
	(-[IFWebCoreBridge childFrames]): Return IFWebCoreFrame objects.
	(-[IFWebCoreBridge childFrameNamed:]): Return IFWebCoreFrame object.
	(-[IFWebCoreBridge descendantFrameNamed:]): Return IFWebCoreFrame object.
	(-[IFWebCoreBridge createChildFrameNamed:withURL:renderPart:khtml::allowsScrolling:marginWidth:marginHeight:]):
	Use the loadURL operation in IFWebCoreFrame.
	(-[IFWebCoreBridge mainFrame]): Return IFWebCoreFrame object.
	(-[IFWebCoreBridge frameNamed:]): Return IFWebCoreFrame object.

	* WebCoreSupport.subproj/IFWebCoreFrame.h: Added.
	* WebCoreSupport.subproj/IFWebCoreFrame.m: Added.
	* WebKit.pbproj/project.pbxproj: Update for added files.

	* WebView.subproj/IFHTMLViewPrivate.h: Made this includable from plain Objective C.

	* WebView.subproj/IFWebFrame.mm:
	(-[IFWebFrame initWithName:webView:provisionalDataSource:controller:]): Create the IFWebCoreFrame.

	* WebView.subproj/IFWebFramePrivate.h: Add _bridgeFrame method for getting IFWebCoreFrame.
	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFramePrivate dealloc]): Release the IFWebCoreFrame.
	(-[IFWebFrame _bridgeFrame]): Added.

2002-06-16  Darin Adler  <darin@apple.com>

	Moved the IFURLHandleClient subclass here from WebCore, so it can some day be merged
	with the one for the frames themselves; this one is for resources.

	* WebCoreSupport.subproj/IFResourceURLHandleClient.h: Added.
	* WebCoreSupport.subproj/IFResourceURLHandleClient.m: Added.
	* WebKit.pbproj/project.pbxproj: Added IFResourceURLHandleClient.h and .m.

	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
	(-[IFWebCoreBridge startLoadingResource:withURL:]): Added.
	Removed all the old methods, with their guts moved into IFResourceURLHandleClient.

2002-06-15  Darin Adler  <darin@apple.com>

	Update for frame-related changes in WebCore.

	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
	(-[IFWebFrame _bridge]): Look at provisional data source first.
	(-[IFWebCoreBridge dealloc]): Release the data source.
	(-[IFWebCoreBridge parentFrame]): Renamed.
	(-[IFWebCoreBridge childFrames]): Renamed.
	(-[IFWebCoreBridge childFrameNamed:]): Added.
	(-[IFWebCoreBridge descendantFrameNamed:]): Added.
	(-[IFWebCoreBridge didFinishLoadingWithHandle:]): Don't call _didStopLoading twice
	when we finish loading.
	
	Also changed controller getters to call [dataSource controller] and got rid of the
	[IFWebCoreBridge controller] method.

2002-06-15  Richard Williamson  <rjw@apple.com>

	* Misc.subproj/IFNSViewExtras.h:
	* Misc.subproj/IFNSViewExtras.m:
	(-[NSView _IF_superviewWithName:]):
	(-[NSView _IF_parentWebView]):
	    Replaced use of _IF_superviewWithName w/ safer _IF_parentWebView.
	* Plugins.subproj/IFNullPluginView.mm:
	(-[IFNullPluginView drawRect:]):
	    Replaced use of _IF_superviewWithName w/ safer _IF_parentWebView.
	* Plugins.subproj/IFPluginStream.mm:
	(-[IFPluginStream IFURLHandle:resourceDataDidBecomeAvailable:]):
	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
        Call _receiveProgress instead of directly calling handler.	    
	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView start]):
	    Replaced use of _IF_superviewWithName w/ safer _IF_parentWebView.
	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
	(-[IFWebCoreBridge loadURL:attributes:flags:inFrame:withParent:]):
	    Handle changing top frame correctly.  Parent may be nil.
	(-[IFWebCoreBridge didFinishLoadingWithHandle:]):
	    Added non-terminal error case.
	* WebView.subproj/IFHTMLView.mm:
	(-[IFHTMLView provisionalDataSourceCommitted:]):
	    Replaced use of _IF_superviewWithName w/ safer _IF_parentWebView.
	* WebView.subproj/IFMainURLHandleClient.mm:
	* WebView.subproj/IFWebControllerPrivate.mm:
        Comment changes.
        
2002-06-15  Darin Adler  <darin@apple.com>

	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
	Added a lot of assertions that I had used while debugging.
	(-[IFWebCoreBridge didRedirectWithHandle:fromURL:]):
	Commented out the line of code that calls [serverRedirectTo:forDataSource:].
	Our old code was sending this to the web controller (that was a bug).
	But if we send it to the location change handler, then we confuse Alexander.
	We may return to this later, uncomment it, and change the interface so the
	client can tell what is being redirected. We'll need to do that if we want
	the activity window to show redirected URLs at the time of the redirect.

2002-06-15  Richard Williamson  <rjw@apple.com>

    Fixed _bridge not accounting for provisional data source,
    broke access to window.frames during load.
    
	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
	(-[IFWebFrame _bridge]):
	(-[IFWebCoreBridge children]):
	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFrame _isLoadComplete]):

2002-06-15  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFHTMLView.mm:
	(-[IFHTMLView provisionalDataSourceChanged:]): Don't turn negative numbers into
	0 for margins. This was a mistake.

2002-06-15  Darin Adler  <darin@apple.com>

	- fixed 2942808 -- remove all calls to WebKit from WebCore

	Update to use the WebCore bridge for more things, reducing
	dependencies in both directions. Besides using the bridge for all the
	remaining WebCore to WebKit calls, almost no WebKit code deals with
	KHTMLPart directly any more, instead the other side of the bridge handles it.

	* Plugins.subproj/IFPluginStream.mm:
	(-[IFPluginStream IFURLHandleResourceDidBeginLoading:]): Remove unneeded casts.
	(-[IFPluginStream IFURLHandle:resourceDataDidBecomeAvailable:]):
	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
	(-[IFPluginStream IFURLHandle:didRedirectToURL:]):
	Use the new IFProgress methods to simplify code.

	* WebCoreSupport.subproj/IFWebCoreBridge.h: Use the new WebCoreBridge protocol
	so we get a compiler error if we forget to implement anything. Add a method for
	IFWebDataSource that gets the WebCoreBridge if it has an IFHTMLRepresentation,
	and nil otherwise.
	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
	(-[IFWebDataSource _bridge]): Add; does checking so that it returns
	nil if the representation is not an IFHTMLRepresentation. This is now used
	almost everywhere so we don't have to do so much type casting.
	(-[IFWebCoreBridge loadURL:attributes:flags:inFrame:withParent:]): Remove a
	stray use of [IFWebCoreBridge dataSource] so we can remove it.
	(-[IFWebCoreBridge receivedData:withDataSource:]): Use the
	new [WebCoreBridge openURL:] and [WebCoreBridge addData:] methods from the
	other side of the bridge so we don't have to deal with the KHTMLPart directly.
	(-[IFWebCoreBridge addHandle:]): Added.
	(-[IFWebCoreBridge removeHandle:]): Added.
	(-[IFWebCoreBridge didStartLoadingWithHandle:]): Added.
	(-[IFWebCoreBridge receivedProgressWithHandle:]): Added.
	(-[IFWebCoreBridge didFinishLoadingWithHandle:]): Added.
	(-[IFWebCoreBridge didCancelLoadingWithHandle:]): Added.
	(-[IFWebCoreBridge didFailBeforeLoadingWithError:]): Added.
	(-[IFWebCoreBridge didFailToLoadWithHandle:error:]): Added.
	(-[IFWebCoreBridge didRedirectWithHandle:fromURL:]): Added.

	* WebView.subproj/IFHTMLRepresentation.h: Remove unneeded declarations.
	* WebView.subproj/IFHTMLRepresentation.mm: Remove [IFHTMLRepresentation part].
	* WebView.subproj/IFHTMLRepresentationPrivate.h: Remove [IFHTMLRepresentation part].

	* WebView.subproj/IFHTMLView.mm: (-[IFHTMLView provisionalDataSourceChanged:]): Use the bridge.

	* WebView.subproj/IFHTMLViewPrivate.mm: Remove a bunch of unused stuff that was
	there for the render and document tree viewers. I had removed it once before but
	it got re-added as a side effect of the reorganization process.

	* WebView.subproj/IFLoadProgress.h: Remove the unused IFLoadType -- we can add
	it back if we find that it's needed. It didn't do much good to have it here
	and only partly implemented, and I don't think it's needed. Added some convenient
	interfaces for creating IFLoadProgress objects.

	* WebView.subproj/IFLoadProgress.mm: Get rid of WCSetIFLoadProgressMakeFunc stuff.
	(-[IFLoadProgress init]): Added.
	(-[IFLoadProgress initWithBytesSoFar:totalToLoad:]): Remove type part.
	(-[IFLoadProgress initWithURLHandle:]): Added.
	(+[IFLoadProgress progress]): Added.
	(+[IFLoadProgress progressWithBytesSoFar:totalToLoad:]): Added.
	(+[IFLoadProgress progressWithURLHandle:]): Added.

	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient dealloc]): Add more workaround for 2954901.
	(-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]):
	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
	Remove unneeded type casts and simplify by using new IFLoadProgress methods.
	Also simplify access to _bridge by using [IFWebDataSource _bridge].

	* WebView.subproj/IFWebControllerPrivate.mm:
	* WebView.subproj/IFWebFrame.mm:
	Remove unneeded include of KHTMLPart header.

	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource documentTextFromDOM]):
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _stopLoading]):
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]):
	Use bridge.

2002-06-15  Maciej Stachowiak  <mjs@apple.com>

        Made Development build mode mean what Unoptimized used to mean. Removed Unoptimized build mode. 
        Added a Mixed build mode which does what Deployment used to. All this to fix:
        
        Radar 2955367 - Change default build style to "Unoptimized"
        
	* WebKit.pbproj/project.pbxproj:

2002-06-15  Maciej Stachowiak  <mjs@apple.com>

        Added temporary workardound for Radar 2954901 by making the assertion more lenient.
        
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):

2002-06-14  Richard Williamson  <rjw@apple.com>

    Removed redundant private _isDocumentHTML method.
    
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSource _stopLoading]):
	(-[IFWebDataSource _addError:forResource:]):
	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFrame _isLoadComplete]):

2002-06-14  Richard Williamson  <rjw@apple.com>

    Added handlers to IFWebController.  Should eventually be possible to use
    IFWebController w/o subclassing.
    
    Changed IFResourceProgressHandler to pass back resource handle instead of
    string description.  This will address the needs descibed in 2954160.
    
    Fixed many incorrect references to datasource reps.
    
	* Plugins.subproj/IFNullPluginView.mm:
	(-[IFNullPluginView drawRect:]):
	* Plugins.subproj/IFPluginStream.mm:
	(-[IFPluginStream IFURLHandle:resourceDataDidBecomeAvailable:]):
	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
	(-[IFWebDataSource _bridge]):
	(-[IFWebCoreBridge createNewFrameNamed:withURL:renderPart:khtml::allowsScrolling:marginWidth:marginHeight:]):
	* WebView.subproj/IFDocument.h:
	* WebView.subproj/IFHTMLRepresentation.h:
	* WebView.subproj/IFHTMLRepresentationPrivate.h:
	* WebView.subproj/IFHTMLView.mm:
	(-[IFHTMLView provisionalDataSourceChanged:]):
	(-[IFHTMLView viewWillStartLiveResize]):
	(-[IFHTMLView viewDidEndLiveResize]):
	* WebView.subproj/IFImageView.m:
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebController.mm:
	(-[IFWebController createFrameNamed:for:inParent:allowsScrolling:]):
	(-[IFWebController setResourceProgressHandler:]):
	(-[IFWebController resourceProgressHandler]):
	(-[IFWebController setPolicyHandler:]):
	(-[IFWebController policyHandler]):
	(+[IFWebController defaultURLPolicyForURL:]):
	* WebView.subproj/IFWebControllerPrivate.h:
	* WebView.subproj/IFWebControllerPrivate.mm:
	(-[IFWebControllerPrivate dealloc]):
	(-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:]):
	(-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:]):
	(-[IFWebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
	(-[IFWebController _mainReceivedError:forResourceHandle:partialProgress:fromDataSource:]):
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm:
	(-[IFWebDataSource representation]):
	(-[IFWebDataSource isDocumentHTML]):
	(-[IFWebDataSource documentTextFromDOM]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSourcePrivate dealloc]):
	(-[IFWebDataSource _setRepresentation:]):
	(-[IFWebDataSource _stopLoading]):
	(-[IFWebDataSource _isDocumentHTML]):
	* WebView.subproj/IFWebFrame.mm:
	(-[IFWebFrame setProvisionalDataSource:]):
	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFrame _isLoadComplete]):

2002-06-14  Darin Adler  <darin@apple.com>

	* Panels.subproj/IFStandardPanels.m: Use the real PTHREAD_ONCE_INIT,
	remove the workaround for 2905545.

	* IFWebCoreBridge.h: Moved into WebCoreSupport.subproj.
	* IFWebCoreBridge.mm: Moved into WebCoreSupport.subproj.
	* WebCoreSupport.subproj/IFWebCoreBridge.h: Moved from top level.
	* WebCoreSupport.subproj/IFWebCoreBridge.mm: Moved from top level.

	* WebKit.pbproj/project.pbxproj: Update for new file locations.
	Also pass -no-c++filt so we get mangled names (more useful for .exp files),
	and remove PFE_FILE_C_DIALECTS.

2002-06-14  Chris Blumenberg  <cblu@apple.com>

	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	If content type is the default type and there is no extension, assume HTML.

	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm: Made isDocumentHTML public
	(-[IFWebDataSource isDocumentHTML]):
	(-[IFWebDataSource documentSource]):
	(-[IFWebDataSource documentTextFromDOM]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSource _stopLoading]):
	(-[IFWebDataSource _addError:forResource:]):
	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFrame _isLoadComplete]):

2002-06-14  Darin Adler  <darin@apple.com>

	* Panels.subproj/IFStandardPanels.m: Fix what I broke last time.

2002-06-14  Darin Adler  <darin@apple.com>

	* Panels.subproj/IFStandardPanels.m:
	(-[IFStandardPanelsPrivate frontmostWindowLoadingURL:]): Change to call webView
	instead of view. Not sure why anyone was able to compile this.

	* Plugins.subproj/IFNullPluginView.mm: Remove include of obsolete WCPluginWidget.h.

	* WebView.subproj/IFHTMLRepresentation.mm: (-[IFHTMLRepresentation part]):
	Call part instead of KHTMLPart. Not sure why anyone was able to compile this.

2002-06-14  Darin Adler  <darin@apple.com>

	Add the new bridge class that connects us to WebCore in a nicer way.
	Started to use it for some things. More to come.

	* WebKit.pbproj/project.pbxproj:
	* IFWebCoreBridge.h: Added.
	* IFWebCoreBridge.mm: Added.

	* Misc.subproj/IFDownloadHandler.mm:
	(-[IFDownloadHandler initWithDataSource:]): Call [super init].
	(-[IFDownloadHandler dealloc]): Call [super dealloc].
	* Plugins.subproj/IFPluginNullEventSender.m:
	(-[IFPluginNullEventSender initializeWithNPP:functionPointer:window:]): Call [super init].
	(-[IFPluginNullEventSender dealloc]): Call [super dealloc].
	* WebView.subproj/IFDOMNode.mm: (-[IFDOMNode dealloc]): Call [super dealloc].
	* WebView.subproj/IFImageView.m: (-[IFImageView dealloc]): Call [super dealloc].
	* WebView.subproj/IFRenderNode.mm: (-[IFRenderNode dealloc]): Call [super dealloc].

	* WebView.subproj/IFHTMLRepresentation.h: Moved variables into a private structure so
	this class can be made public.
	* WebView.subproj/IFHTMLRepresentationPrivate.h: Added. Has _bridge method.
	* WebView.subproj/IFHTMLRepresentation.mm:
	(-[IFHTMLRepresentation init]): Call [super init]. Also use the new private structure,
	and allocate the IFWebCoreBridge.
	(-[IFHTMLRepresentation dealloc]): Release the private structure and the IFWebCoreBridge.
	Also, call [super dealloc].
	(-[IFHTMLRepresentation _bridge]): Private method to get to the bridge.
	(-[IFHTMLRepresentation receivedData:withDataSource:]): Use IFWebCoreBridge.

	* WebView.subproj/IFWebViewPrivate.h: Add _setMarginWidth and _setMarginHeight.

	* WebView.subproj/IFWebDataSourcePrivate.h: Tweak.
	* WebView.subproj/IFWebDataSource.mm: Tweak.
	* History.subproj/IFWebHistoryPrivate.m: Tweak.

2002-06-14  Richard Williamson  <rjw@apple.com>

    Lots of frame related cleanup.  Added attempt to get
    nested scrollbars to work correctly with window's resize
    corner.  Still not quite right.
    
    Name change [IFWebFrame view] -> [IFWebFrame webView].
    
	* WebView.subproj/IFDynamicScrollBarsView.m:
	(-[IFDynamicScrollBarsView updateScrollers]):
	* WebView.subproj/IFHTMLView.mm:
	(-[IFHTMLView provisionalDataSourceChanged:]):
	(-[IFHTMLView viewDidEndLiveResize]):
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebController.mm:
	(-[IFWebController initWithView:provisionalDataSource:]):
	(-[IFWebController createFrameNamed:for:inParent:inScrollView:]):
	(-[IFWebController _frameForView:fromFrame:]):
	(-[IFWebController frameForView:]):
	(-[IFWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
	* WebView.subproj/IFWebControllerPrivate.mm:
	(-[IFWebControllerPrivate _clearControllerReferences:]):
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.mm:
	(-[IFWebFrame init]):
	(-[IFWebFrame initWithName:webView:provisionalDataSource:controller:]):
	(-[IFWebFrame setWebView:]):
	(-[IFWebFrame webView]):
	(-[IFWebFrame setProvisionalDataSource:]):
	(-[IFWebFrame reset]):
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFramePrivate dealloc]):
	(-[IFWebFramePrivate setWebView:]):
	(-[IFWebFrame _timedLayout:]):
	(-[IFWebFrame _transitionProvisionalToCommitted]):
	(-[IFWebFrame _setState:]):
	(-[IFWebFrame _isLoadComplete]):

2002-06-14  Richard Williamson  <rjw@apple.com>

	* WebView.subproj/IFHTMLView.mm:
	(-[IFHTMLView initWithFrame:]):
	    Added notification so we can intelligently add/remove
	    mouse move observation when the window becomes/resigns
	    main.  Also added window close observation so we can
	    clean up other observers.
	(-[IFHTMLView viewWillStartLiveResize]):\
	    Backed out removal of scroll bars during resize.
	(-[IFHTMLView viewDidEndLiveResize]):
	    Backed out removal of scroll bars during resize.
	(-[IFHTMLView windowWillClose:]):
        Clean up observers.
	(-[IFHTMLView windowDidBecomeMain:]):
        Add mouse move observer.
	(-[IFHTMLView windowDidResignMain:]):
        Remove mouse move observer.
	(-[IFHTMLView mouseMovedNotification:]):
	    Only pay attention to mouse moves for this window.
	* WebView.subproj/IFImageView.m:
	(-[IFImageView layout]):
	    Removed unnecessary scroll view setDrawBackground calls.
	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFrame _setState:]):
	    Added calls to scroll view setDrawBackground when the view
	    rect is valid.

2002-06-14  Chris Blumenberg  <cblu@apple.com>

	Enabled displaying of text, images and RTF
	Fixed drag & drop


2002-06-13  John Sullivan  <sullivan@apple.com>

	Various changes to better support the pasteboard.

	* Bookmarks.subproj/IFBookmark.h,
	* Bookmarks.subproj/IFBookmark.m:
	(+[IFBookmark bookmarkOfType:]): New method.

	* Bookmarks.subproj/IFBookmarkLeaf.m:
	(-[IFBookmarkLeaf init]): start out with a non-nil _entry
	(-[IFBookmarkLeaf setTitle:]): added assert
	(-[IFBookmarkLeaf setURLString:]): added assert

	* History.subproj/IFURLsWithTitles.h,
	* History.subproj/IFURLsWithTitles.m:
	(+[IFURLsWithTitles arrayWithIFURLsWithTitlesPboardType]),
	(+[IFURLsWithTitles writeURLs:andTitles:toPasteboard:]),
	(+[IFURLsWithTitles titlesFromPasteboard:]),
	(+[IFURLsWithTitles URLsFromPasteboard:]):
	New file with methods for reading/writing pasteboard entry representing
	a list of URLs with associated titles. Used by Bookmarks window and
	History window in Alexander.

	* History.subproj/IFWebHistoryPrivate.m:
	(-[IFWebHistoryPrivate removeEntryForURLString:]): refactored to turn a
	WEBKITDEBUG into a more-appropriate WEBKIT_ASSERT.

	* WebKit.pbproj/project.pbxproj: Updated for new files.

2002-06-13  Kenneth Kocienda  <kocienda@apple.com>

        Fixed typo in ChangeLog comment.

2002-06-13  Kenneth Kocienda  <kocienda@apple.com>

        Fixed uninitialized variable that broke the build.

	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:])

2002-06-13  Richard Williamson  <rjw@apple.com>

    Lots of cleanup.  Fixed most regressions.
    Added removal of scrollbars during resizing,
    not sure if it's the correct behavior, but it makes resizing
    much smoother.  Let's see what people think.
    
	* WebView.subproj/IFDynamicScrollBarsView.h:
	* WebView.subproj/IFDynamicScrollBarsView.m:
	(-[IFDynamicScrollBarsView initWithFrame:]):
	(-[IFDynamicScrollBarsView reflectScrolledClipView:]):
	(-[IFDynamicScrollBarsView updateScrollers]):
	(-[IFDynamicScrollBarsView setCursor:]):
	(-[IFDynamicScrollBarsView setAllowsScrolling:]):
	(-[IFDynamicScrollBarsView allowsScrolling]):
	* WebView.subproj/IFHTMLView.mm:
	(-[IFHTMLView provisionalDataSourceChanged:]):
	(-[IFHTMLView provisionalDataSourceCommitted:]):
	(-[IFHTMLView viewWillStartLiveResize]):
	(-[IFHTMLView viewDidEndLiveResize]):
	* WebView.subproj/IFHTMLViewPrivate.h:
	* WebView.subproj/IFHTMLViewPrivate.mm:
	(-[IFHTMLViewPrivate dealloc]):
	(-[IFHTMLView _provisionalWidget]):
	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFrame _timedLayout:]):
	(-[IFWebFrame _isLoadComplete]):
	* WebView.subproj/IFWebView.h:
	* WebView.subproj/IFWebView.mm:
	(-[IFWebView initWithFrame:]):
	(-[IFWebView setAllowsScrolling:]):
	(-[IFWebView allowsScrolling]):
	(-[IFWebView frameScrollView]):
	(-[IFWebView documentView]):
	(+[IFWebView createViewForMIMEType:]):
	(-[IFWebView isOpaque]):
	(-[IFWebView drawRect:]):
	* WebView.subproj/IFWebViewPrivate.h:
	* WebView.subproj/IFWebViewPrivate.mm:
	(-[IFWebViewPrivate dealloc]):
	(-[IFWebView _setDocumentView:]):

2002-06-13  Chris Blumenberg  <cblu@apple.com>

	Removed MIME.subproj. Moved IFDownloadHandler to Misc.

	* MIME.subproj/IFDownloadHandler.h: Removed.
	* MIME.subproj/IFDownloadHandler.mm: Removed.
	* Misc.subproj/IFDownloadHandler.h: Added.
	* Misc.subproj/IFDownloadHandler.mm: Added.
	(-[IFDownloadHandler initWithDataSource:]):
	(-[IFDownloadHandler dealloc]):
	(-[IFDownloadHandler receivedData:isComplete:]):
	(-[IFDownloadHandler cancel]):
	* WebKit.pbproj/project.pbxproj:

2002-06-13  Chris Blumenberg  <cblu@apple.com>

	Fixed downloads.
	Now write out download files as data comes in.
	Removed useless lproj's.

	* Dutch.lproj/InfoPlist.strings: Removed.
	* Dutch.lproj/Localizable.strings: Removed.
	* French.lproj/InfoPlist.strings: Removed.
	* French.lproj/Localizable.strings: Removed.
	* German.lproj/InfoPlist.strings: Removed.
	* German.lproj/Localizable.strings: Removed.
	* Italian.lproj/InfoPlist.strings: Removed.
	* Italian.lproj/Localizable.strings: Removed.
	* Japanese.lproj/InfoPlist.strings: Removed.
	* Japanese.lproj/Localizable.strings: Removed.
	* MIME.subproj/IFDownloadHandler.h:
	* MIME.subproj/IFDownloadHandler.mm:
	(-[IFDownloadHandler dealloc]):
	(-[IFDownloadHandler receivedData:isComplete:]): added
	(-[IFDownloadHandler cancel]): added
	* Spanish.lproj/InfoPlist.strings: Removed.
	* Spanish.lproj/Localizable.strings: Removed.
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFMainURLHandleClient.h:
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient initWithDataSource:]): removed unused BOOL
	(-[IFMainURLHandleClient dealloc]): 
	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):

2002-06-12  Chris Blumenberg  <cblu@apple.com>

	Couldn't run ChangeLog because it hung with the massize diffs, so here's
	a hand-made one.
	
	Changes to support inline views.

	Modified Files:

	WebKit/ChangeLog WebKit/Plugins.subproj/IFNullPluginView.mm
	WebKit/Plugins.subproj/IFPluginDatabase.h
	WebKit/Plugins.subproj/IFPluginDatabase.m
	WebKit/Plugins.subproj/IFPluginView.mm   
	WebKit/WebCoreSupport.subproj/IFImageRenderer.h
	WebKit/WebCoreSupport.subproj/IFWebCoreViewFactory.m
	WebKit/WebKit.pbproj/project.pbxproj
	WebKit/WebView.subproj/IFDOMNode.mm 
	WebKit/WebView.subproj/IFDynamicScrollBarsView.m
	WebKit/WebView.subproj/IFMainURLHandleClient.h          
	WebKit/WebView.subproj/IFMainURLHandleClient.mm
	WebKit/WebView.subproj/IFRenderNode.mm  
	WebKit/WebView.subproj/IFWebController.h
	WebKit/WebView.subproj/IFWebController.mm 
	WebKit/WebView.subproj/IFWebControllerPrivate.h
	WebKit/WebView.subproj/IFWebControllerPrivate.mm
	WebKit/WebView.subproj/IFWebDataSource.h
	WebKit/WebView.subproj/IFWebDataSource.mm
	WebKit/WebView.subproj/IFWebDataSourcePrivate.h
	WebKit/WebView.subproj/IFWebDataSourcePrivate.mm
	WebKit/WebView.subproj/IFWebFrame.mm
	WebKit/WebView.subproj/IFWebFramePrivate.h
	WebKit/WebView.subproj/IFWebFramePrivate.mm
	WebKit/WebView.subproj/IFWebView.h
	WebKit/WebView.subproj/IFWebView.mm   
	WebKit/WebView.subproj/IFWebViewPrivate.h 
	WebKit/WebView.subproj/IFWebViewPrivate.mm
	
 	Added Files:
 	
	WebKit/Misc.subproj/IFNSViewExtras.h
	WebKit/Misc.subproj/IFNSViewExtras.m
	WebKit/WebView.subproj/IFDocument.h
	WebKit/WebView.subproj/IFHTMLRepresentation.h           
	WebKit/WebView.subproj/IFHTMLRepresentation.mm 
	WebKit/WebView.subproj/IFHTMLView.h     
	WebKit/WebView.subproj/IFHTMLView.mm
	WebKit/WebView.subproj/IFHTMLViewPrivate.h
	WebKit/WebView.subproj/IFHTMLViewPrivate.mm
	WebKit/WebView.subproj/IFImageRepresentation.h  
	WebKit/WebView.subproj/IFImageRepresentation.m
	WebKit/WebView.subproj/IFImageView.h
	WebKit/WebView.subproj/IFImageView.m
	WebKit/WebView.subproj/IFTextRepresentation.h   
	WebKit/WebView.subproj/IFTextRepresentation.m
	WebKit/WebView.subproj/IFTextView.h
	WebKit/WebView.subproj/IFTextView.m
	
	Removed Files:

	WebKit/MIME.subproj/IFContentHandler.h
	WebKit/MIME.subproj/IFContentHandler.m    
	WebKit/MIME.subproj/IFMIMEHandler.h
	WebKit/MIME.subproj/IFMIMEHandler.m
        

2002-06-12  Kenneth Kocienda  <kocienda@apple.com>

	* Misc.subproj/WebKitDebug.h: Made assertion failure console message bolder and easier to see.

2002-06-11  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFMainURLHandleClient.mm:
	Add lots of assertions that allowed me to find the "leak the world" bug that Ken
	fixed in WebFoundation. These are a good idea anyway.

	* Plugins.subproj/IFPluginStream.mm:
	(-[IFPluginStream initWithURL:pluginPointer:notifyData:attributes:]): Use cStringLength
	to get the length for the cString rather than assuming that length will be right.
	(-[IFPluginStream IFURLHandle:didRedirectToURL:]): Add a FIXME.

2002-06-11  John Sullivan  <sullivan@apple.com>

	Made methods that convert bookmarks to and from
	property-list-compatible dictionaries public so they
	can be used in the Bookmarks window for cut/paste.

	* Bookmarks.subproj/IFBookmark.h:
	* Bookmarks.subproj/IFBookmark.m:
	(+[IFBookmark bookmarkFromDictionaryRepresentation:withGroup:]): New method

	(-[IFBookmark initFromDictionaryRepresentation:withGroup:]):
	(-[IFBookmark dictionaryRepresentation]):
	* Bookmarks.subproj/IFBookmarkGroup.m:
	(-[IFBookmarkGroup _loadBookmarkGroupGuts]):
	(-[IFBookmarkGroup _saveBookmarkGroupGuts]):
	* Bookmarks.subproj/IFBookmarkLeaf.m:
	(-[IFBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
	(-[IFBookmarkLeaf dictionaryRepresentation]):
	* Bookmarks.subproj/IFBookmarkList.m:
	(-[IFBookmarkList initFromDictionaryRepresentation:withGroup:]):
	(-[IFBookmarkList dictionaryRepresentation]):
	* Bookmarks.subproj/IFBookmarkSeparator.m:
	(-[IFBookmarkSeparator initFromDictionaryRepresentation:withGroup:]):
	(-[IFBookmarkSeparator dictionaryRepresentation]):
	* Bookmarks.subproj/IFBookmark_Private.h: Removed leading underscores from
	_initFromDictionaryRepresentation and _dictionaryRepresentation, and made
	them public.

2002-06-11  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFDOMNode.h: Added.
	* WebView.subproj/IFDOMNode.mm: Added.
	* WebView.subproj/IFRenderNode.h: Added.
	* WebView.subproj/IFRenderNode.mm: Added.
	These contain all the interesting bits of the code for the render
	and DOM tree viewers, mostly moved here from WebBrowser.

	* WebView.subproj/IFWebViewPrivate.mm: Remove the methods in here that
	aren't declared in the header and are only used for the render and DOM
	tree viewers.

	* WebKit.pbproj/project.pbxproj: Add new files.

2002-06-10  Darin Adler  <darin@apple.com>

	* Makefile.am: Do a clean before building if the force-clean-timestamp file is
	newer than the previous-clean-timestamp. Edit force-clean-timestamp (doesn't
	matter what you change as long as you change it) to force a clean build in WebKit.
	* force-clean-timestamp: Added.
	* .cvsignore: Ignore previous-clean-timestamp.

2002-06-10  Darin Adler  <darin@apple.com>

	* WebCoreSupport.subproj/IFTextRenderer.h: Remove the flavor of
	floatWidthForCharacters without the applyRounding boolean.

	* WebCoreSupport.subproj/IFTextRenderer.m:
	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]): Remove logic about
	characters in the 0x7F-0xA0 range, since it's already handled by the time we get
	around to drawing.
	(-[IFTextRenderer floatWidthForCharacters:length:applyRounding:]): Pass in the
	applyRounding boolean when calling through to slowFloatWidthForCharacters.
	Move logic about characters in the 0x7F-0xA0 range from here into
	[extendCharacterToGlyphMapToInclude:].
	(-[IFTextRenderer widthForCharacters:length:]): Call the version of
	floatWidthForCharacters that takes the applyRounding parameter; this was the only
	client of the flavor that didn't take the parameter.
	(-[IFTextRenderer extendCharacterToGlyphMapToInclude:]): Add the logic about
	characters in the 0x7F-0xA0 range into here.

2002-06-10  Richard Williamson  <rjw@apple.com>

    Tweaks to rounding code.  
    
    Added Cocoa-exact width measurement emulation flag to support IFStringTruncator.
    
    Remove code that was already conditionally excluded calls to support
    non-specified advance drawing (we now depend on tweaked advances).
    
	* Misc.subproj/IFStringTruncator.m:
	(+[IFStringTruncator centerTruncateString:toWidth:withFont:]):
	* WebCoreSupport.subproj/IFTextRenderer.h:
	* WebCoreSupport.subproj/IFTextRenderer.m:
	(-[IFTextRenderer initWithFont:]):
	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
	(-[IFTextRenderer slowFloatWidthForCharacters:length:applyRounding:]):
	(-[IFTextRenderer slowFloatWidthForCharacters:length:]):
	(-[IFTextRenderer floatWidthForCharacters:length:applyRounding:]):
	(-[IFTextRenderer floatWidthForCharacters:length:]):
	(-[IFTextRenderer extendCharacterToGlyphMapToInclude:]):

2002-06-10  Darin Adler  <darin@apple.com>

	* WebCoreSupport.subproj/IFCachedTextRenderer.m: Removed.

2002-06-10  John Sullivan  <sullivan@apple.com>

	Fixed leaks in History mechanism, found by overriding
	release, retain, autorelease, and dealloc and watching
	the spam fly.

	* History.subproj/IFWebHistoryPrivate.m:
	(-[IFWebHistoryPrivate addEntry:]): Make autoreleased array for
	entries on a given date.
	(-[IFWebHistoryPrivate _loadHistoryGuts:]): autorelease entries
	as they are generated from data on disk.

2002-06-10  Darin Adler  <darin@apple.com>

	* WebCoreSupport.subproj/IFTextRenderer.m:
	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
	Fix a typo where I left the S off of DRAW_WITHOUT_ADVANCES.

2002-06-10  Richard Williamson  <rjw@apple.com>

    90% solution to round-off problem.  khtml breaks measures text on space
    boundaries during layout.  It assumes integer measurement, CG uses float
    measurements.  Some common fonts have non-integer space width.  So, 
    differences in between drawing advances and measurement of space characters
    can easily accumulate enough to be visually apparent.  We may still accumulate
    differences across words, although it's much less visible than for spaces.
    As a next step we can fudge the advances of words to force
    integer widths, although I think, given how khtml work, just accounting for
    consistency in measuring and drawing spaces may be sufficient.
    Many sites that looked flaky before now render correctly.
    
	* WebCoreSupport.subproj/IFTextRenderer.m:
	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
	
	Force rounding of advance for space characters.
	
	(-[IFTextRenderer floatWidthForCharacters:length:]):

	Force rounding of measurement for space characters.

2002-06-09  John Sullivan  <sullivan@apple.com>

	WebKit part of fix for 2949646 (Can't drag & drop bookmarks
	into auto-expanded folder). To get this to work right, I gave
	each bookmark a unique (per-session) identifier.

	While working on this, I found and fixed some leaks of bookmarks.

	* Bookmarks.subproj/IFBookmark.h:
	New -[identifier] method and _identifier ivar.

	* Bookmarks.subproj/IFBookmark.m:
	(+[IFBookmark _generateUniqueIdentifier]):
	(-[IFBookmark init]):
	(-[IFBookmark dealloc]):
	Remember unique identifier in each bookmark as it is created;
	delete when dealloc'd.

	(-[IFBookmark identifier]): Return unique identifier.

	(-[IFBookmark _setParent:]): Don't retain parent, to avoid
	circular ownership.

	(-[IFBookmark _setGroup:]): Tell coming and going group.

	* Bookmarks.subproj/IFBookmarkGroup.h:
	New +[bookmarkForIdentifier] method and _bookmarksByID ivar.

	* Bookmarks.subproj/IFBookmarkGroup_Private.h:
	Declarations of _removedBookmark: and _addedBookmark:
	* Bookmarks.subproj/IFBookmarkGroup.m:
	(-[IFBookmarkGroup initWithFile:]): alloc _bookmarksByID.
	(-[IFBookmarkGroup dealloc]): release _bookmarksByID.
	(-[IFBookmarkGroup _setTopBookmark:]): Don't bail out early;
	would now cause leak.
	(-[IFBookmarkGroup _removedBookmark:]): New method, removes
	bookmark from _bookmarksByID.
	(-[IFBookmarkGroup _addedBookmark:]): New method, adds bookmark to
	_bookmarksByID.
	(-[IFBookmarkGroup bookmarkForIdentifier:]): Looks up bookmark from
	_bookmarksByID dictionary.
	(-[IFBookmarkGroup _loadBookmarkGroupGuts]): autorelease newTopbookmark; 
	this had been leaking.

	* Bookmarks.subproj/IFBookmarkList.m:
	(-[IFBookmarkList _initFromDictionaryRepresentation:withGroup:]):
	autorelease children before adding them to parent; this had been leaking.

2002-06-09  Darin Adler  <darin@apple.com>

	* WebCoreSupport.subproj/IFTextRenderer.m:
	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
	Fixed a possible uninitialized variable problem that the compiler and Don caught.

2002-06-09  Darin Adler  <darin@apple.com>

	* WebCoreSupport.subproj/IFTextRenderer.m:
	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
	Add code to handle drawing when are more than LOCAL_GLYPH_BUFFER_SIZE advances.
	I ran into this loading <http://jersey.apple.com/data/20020606-074404M0.html>.
	Also fix handling of advances for the obscure case where we hit a non-base character,
	slowPackGlyphsForCharacters fails, and substituteFontforCharacters returns nil.

2002-06-07  Darin Adler  <darin@apple.com>

	* Makefile.am: Use new shared "embed.am" file so we don't need four copies of
	the embedding rules for WebFoundation, JavaScriptCore, WebCore, and WebKit.

2002-06-07  Darin Adler  <darin@apple.com>

	* MIME.subproj/IFContentHandler.m: (-[IFContentHandler HTMLDocument]):
	Fix a warning that shows up with the new C++ compiler (not sure why it
	is not showing up with the old one).

2002-06-07  Chris Blumenberg  <cblu@apple.com>
	
	Allow plug-ins to make a NPP_*URLNotify request when
	the target is _self, _top, _parent or _current. This goes
	against the plug-in documentation, but mimics IE.
	Need for iTools.

	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):

2002-06-07  Darin Adler  <darin@apple.com>

	* WebKit.pbproj/project.pbxproj: Don't use any warning flags for C that won't work
	for C++, because PFE uses the C warning flags on a C++ compile.

2002-06-07  Chris Blumenberg  <cblu@apple.com>

	Made IFWebController a class.
        Fixed all places where IFWebController was referred to as a protocol.
        Renamed IFBaseWebController files to IFWebController.
        IFWebController.h replaces IFWebBaseController.h.

	Added support for IEPL plug-ins.

	* Panels.subproj/IFStandardPanels.m:
	(-[IFStandardPanels _didStartLoadingURL:inController:]):
	(-[IFStandardPanels _didStopLoadingURL:inController:]):
	* Panels.subproj/IFStandardPanelsPrivate.h:
	* Plugins.subproj/IFNullPluginView.mm:
	(-[IFNullPluginView drawRect:]):
	* Plugins.subproj/IFPlugin.h:
	* Plugins.subproj/IFPlugin.m:
	(-[IFPlugin _getPluginInfoForResourceFile:]):
	(-[IFPlugin initWithPath:]):
	(-[IFPlugin load]):
	(-[IFPlugin description]):
	* Plugins.subproj/IFPluginStream.mm:
	(-[IFPluginStream IFURLHandleResourceDidBeginLoading:]):
	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
	(-[IFPluginStream IFURLHandle:didRedirectToURL:]):
	* Plugins.subproj/IFPluginView.h:
	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
	(-[IFPluginView webController]):
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFBaseWebController.h: Removed.
	* WebView.subproj/IFBaseWebController.mm: Removed.
	* WebView.subproj/IFBaseWebControllerPrivate.h: Removed.
	* WebView.subproj/IFBaseWebControllerPrivate.mm: Removed.
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]):
	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebController.mm: Added.
	(-[IFWebController init]):
	(-[IFWebController initWithView:provisionalDataSource:]):
	(-[IFWebController dealloc]):
	(-[IFWebController setDirectsAllLinksToSystemBrowser:]):
	(-[IFWebController directsAllLinksToSystemBrowser]):
	(-[IFWebController createFrameNamed:for:inParent:inScrollView:]):
	(-[IFWebController setStatusText:forDataSource:]):
	(-[IFWebController statusTextForDataSource:]):
	(-[IFWebController openNewWindowWithURL:]):
	(-[IFWebController receivedProgress:forResource:fromDataSource:]):
	(-[IFWebController receivedError:forResource:partialProgress:fromDataSource:]):
	(-[IFWebController provideLocationChangeHandlerForFrame:]):
	(-[IFWebController receivedPageTitle:forDataSource:]):
	(-[IFWebController serverRedirectTo:forDataSource:]):
	(-[IFWebController _frameForDataSource:fromFrame:]):
	(-[IFWebController frameForDataSource:]):
	(-[IFWebController _frameForView:fromFrame:]):
	(-[IFWebController frameForView:]):
	(-[IFWebController frameNamed:]):
	(-[IFWebController mainFrame]):
	(-[IFWebController pluginNotFoundForMIMEType:pluginPageURL:]):
	(-[IFWebController provideLocationChangeHandlerForFrame:andURL:]):
	(-[IFWebController URLPolicyForURL:]):
	(-[IFWebController unableToImplementURLPolicyForURL:error:]):
	(-[IFWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
	(-[IFWebController stopAnimatedImages]):
	(-[IFWebController startAnimatedImages]):
	(-[IFWebController stopAnimatedImageLooping]):
	(-[IFWebController startAnimatedImageLooping]):
	* WebView.subproj/IFWebControllerPrivate.h: Added.
	* WebView.subproj/IFWebControllerPrivate.mm: Added.
	(-[IFWebControllerPrivate init]):
	(-[IFWebControllerPrivate _clearControllerReferences:]):
	(-[IFWebControllerPrivate dealloc]):
	(-[IFWebController _receivedProgress:forResource:fromDataSource:]):
	(-[IFWebController _mainReceivedProgress:forResource:fromDataSource:]):
	(-[IFWebController _receivedError:forResource:partialProgress:fromDataSource:]):
	(-[IFWebController _mainReceivedError:forResource:partialProgress:fromDataSource:]):
	(-[IFWebController _didStartLoading:]):
	(-[IFWebController _didStopLoading:]):
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm:
	(-[IFWebDataSource controller]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSource _setController:]):
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.mm:
	(-[IFWebFrame initWithName:view:provisionalDataSource:controller:]):
	(-[IFWebFrame controller]):
	(-[IFWebFrame setController:]):
	(-[IFWebFrame frameNamed:]):
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFramePrivate setController:]):
	(-[IFWebFrame _setController:]):
	* WebView.subproj/IFWebView.h:
	* WebView.subproj/IFWebView.mm:
	(-[IFWebView controller]):
	* WebView.subproj/IFWebViewPrivate.h:
	* WebView.subproj/IFWebViewPrivate.mm:
	(-[IFWebView _setController:]):

=== Alexander-8 ===

2002-06-06  Darin Adler  <darin@apple.com>

	* WebKit.pbproj/project.pbxproj: Update warning flags for compatibility
	with new C++.

	* WebCoreSupport.subproj/IFTextRenderer.m: (FillStyleWithAttributes):
	Remove workaround we copied from AppKit, because it's a workaround for
	a bug that was fixed in Puma.

2002-06-06  Chris Blumenberg  <cblu@apple.com>

	Added support for key codes and other encodings.
	Send activate to make Java happy.

	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView keyMessageForEvent:]): added
	(-[IFPluginView keyUp:]): use above.
	(-[IFPluginView keyDown:]): use above.
	(-[IFPluginView windowBecameKey:]): send activate.
	(-[IFPluginView windowResignedKey:]): send activate.

2002-06-06  John Sullivan  <sullivan@apple.com>

	* Bookmarks.subproj/IFBookmarkList.m:
	(-[IFBookmarkList removeChild:]):
	(-[IFBookmarkList insertChild:atIndex:]):
	* ChangeLog:

2002-06-06  John Sullivan  <sullivan@apple.com>

	* Bookmarks.subproj/IFBookmarkList.m:
	(-[IFBookmarkList removeChild:]): Added assert.
	(-[IFBookmarkList insertChild:atIndex:]): Set the group of
	the new child, and added assert.

2002-06-06  Darin Adler  <darin@apple.com>

	* MIME.subproj/IFContentHandler.m:
	(-[IFContentHandler initWithURL:MIMEType:MIMEHandlerType:]): Add call to
	[super init].
	(-[IFContentHandler useTemplate:withGlobal:]): New helper function.
	Also got rid of <title> from templates, since there's no need for us to
	provide a fake title if it's just the URL.
	(-[IFContentHandler HTMLDocument]): Reduce use of copied and pasted code.
	(-[IFContentHandler dealloc]): Add call to [super dealloc].

	* Resources/image_document_template.html: Remove <title>.
	* Resources/plugin_document_template.html: Remove <title>.
	* Resources/text_document_template.html: Remove <title>.

	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient processData:isComplete:allDataReceived:]):
	Remove some unneeded type casts.

2002-06-05  Maciej Stachowiak  <mjs@apple.com>

	Fixed Radar 2936155 - crash in IFAuthenticationPanel
	
	* Panels.subproj/IFAuthenticationPanel.m:
	(-[IFAuthenticationPanel runAsSheetOnWindow:withRequest:]): Add
	some assertions.
	
	(-[IFAuthenticationPanel sheetDidEnd:returnCode:contextInfo:]):
	Avoid referencing instance variables after performing a selector
	that might release this object. Also, add some assertions.

	* Panels.subproj/IFPanelAuthenticationHandler.m:
	(-[IFPanelAuthenticationHandler startAuthentication:]): Tweak
	whitespace.

2002-06-05  Richard Williamson  <rjw@apple.com>

    Fixed snafu in recursion over frame tree.
    
	* WebView.subproj/IFWebFrame.mm:
	(+[IFWebFrame _frameNamed:fromFrame:]):
	(-[IFWebFrame frameNamed:]):

2002-06-05  Richard Williamson  <rjw@apple.com>

    Normalized frame naming.  (We still don't support cross
    window name lookups.)
    
	* WebView.subproj/IFBaseWebController.mm:
	(-[IFBaseWebController frameNamed:]):
	* WebView.subproj/IFWebFrame.mm:
	(-[IFWebFrame frameNamed:]):

2002-06-04  Chris Blumenberg  <cblu@apple.com>

	* MIME.subproj/IFDownloadHandler.mm: Use public methods
	* WebView.subproj/IFWebDataSource.h: Made downloadPath public
	* WebView.subproj/IFWebDataSource.mm:
	(-[IFWebDataSource downloadPath]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm:

2002-06-04  Richard Williamson  <rjw@apple.com>

    More exclusion for pre 6C48.

	* ChangeLog:
	* WebCoreSupport.subproj/IFImageRenderer.m:
	(-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
	* WebCoreSupport.subproj/IFImageRendererFactory.m:
	(-[IFImageRendererFactory imageRenderer]):

2002-06-04  Richard Williamson  <rjw@apple.com>

    Oops, excluded even more code for < 6C48.
    
	* WebCoreSupport.subproj/IFImageRenderer.m:
	(-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):

2002-06-04  Kenneth Kocienda  <kocienda@apple.com>

	* Misc.subproj/WebKitDebug.h: Added a line of stderr output into 
        the assertion failure code so that we have some idea of what happened.

2002-06-04  Richard Williamson  <rjw@apple.com>

    Excluded call to new API until everyone has moved to >= 6C48.
    
	* WebCoreSupport.subproj/IFImageRenderer.m:
	(-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):

2002-06-04  Richard Williamson  <rjw@apple.com>

    Changes to support progressive image loading.  Currently disabled
    until 2945218 is fixed.

	* WebCoreSupport.subproj/IFImageRenderer.h:
	* WebCoreSupport.subproj/IFImageRenderer.m:
	* WebCoreSupport.subproj/IFImageRendererFactory.m:

2002-06-04  Darin Adler  <darin@apple.com>

	- fixed 2932862 -- exception -[NSCFArray getObjects:range:]: index (137)
	beyond bounds (10)

	* WebView.subproj/IFWebViewPrivate.mm:
	(-[IFWebView _stopPlugins]):
	(-[IFWebView _removeSubviews]):
	Make a copy of the subviews list so that changes to the list don't screw
	up the iterating logic.

2002-06-04  John Sullivan  <sullivan@apple.com>

	Made changes here while working on Undo for removing history entries.

	* History.subproj/IFWebHistory.h:
	New methods addEntries: and removeEntries:, deleted method
	removeEntriesForDay: (use removeEntries: instead).

	* History.subproj/IFWebHistory.m:
	(-[IFWebHistory addEntries:]),
	(-[IFWebHistory removeEntries:]): New methods, each takes an array of
	entries. Useful for doing multiple things at a time to minimize
	notifications.
	(-[IFWebHistory removeEntriesForDay:]): deleted this now-unnecessary method.
	* History.subproj/IFWebHistoryPrivate.h:
	* History.subproj/IFWebHistoryPrivate.m:
	(-[IFWebHistoryPrivate removeEntries:]):
	(-[IFWebHistoryPrivate removeAllEntries]):
	(-[IFWebHistoryPrivate addEntries:]): Private implementations for the
	public changes.

2002-06-04  Darin Adler  <darin@apple.com>

	- fixed 2943513 -- move StringTruncator into WebKit from WebBrowser so we
	don't need text measuring API exported

	* WebKit.pbproj/project.pbxproj: No longer export the text renderer headers
	as Private.

2002-06-04  Darin Adler  <darin@apple.com>

	* WebKit.pbproj/project.pbxproj: Exported IFStringTruncator.h as Private.

2002-06-04  Darin Adler  <darin@apple.com>

	Moved the string truncator class here from WebBrowser so we don't have to
	export our text machinery.

	* WebKit.pbproj/project.pbxproj:
	* Misc.subproj/IFStringTruncator.h: Added.
	* Misc.subproj/IFStringTruncator.m: Added.

2002-06-03  Darin Adler  <darin@apple.com>

	* WebCoreSupport.subproj/IFImageRenderer.m:
	(-[IFImageRenderer beginAnimationInView:inRect:fromRect:]): Remove the "fix"
	for the nonexistent storage leak. Richard showed me the error of my ways.

2002-06-03  John Sullivan  <sullivan@apple.com>

	Richard told me which line to change to fix 2944237
	(Stop item in View menu enabled on startup if you have
	no home page.)

	* WebView.subproj/IFWebDataSource.mm:
	(-[IFWebDataSource isLoading]):
	Don't return YES if !_private->loading.

2002-06-01  Darin Adler  <darin@apple.com>

	* WebCoreSupport.subproj/IFImageRenderer.m:
	(-[IFImageRenderer beginAnimationInView:inRect:fromRect:]):
	Remove an assert I added, since it is firing, and instead fixed the storage leak
	that inspired me to put the assert in.

2002-05-31  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFWebViewPrivate.mm: Add include to prepare for change to WebCore
	that will make it required.

2002-05-31  Darin Adler  <darin@apple.com>

	* WebCoreSupport.subproj/IFImageRenderer.h: Fixed the line endings (they were
	Macintosh CRs instead of Unix LFs). Also made all the methods be private for
	now since there's no need to have them be public.

	* WebCoreSupport.subproj/IFImageRenderer.m: Fixed the line endings (they were
	Macintosh CRs instead of Unix LFs). Some minor code tweaks too sharing a bit
	more code.

	* WebCoreSupport.subproj/IFImageRendererFactory.m:
	(-[IFImageRendererFactory imageRendererWithSize:]): Return an IFImageRenderer
	rather than just an NSImage, since an NSImage does not satisfy WebCoreImageRenderer.

2002-05-31  Darin Adler  <darin@apple.com>

	* Misc.subproj/WebKitDebug.h: Use displayableString in DEBUG_OBJECT
	for nicer logging.

	* WebView.subproj/IFWebView.mm:
	(-[IFWebView keyDown:]):
	(-[IFWebView keyUp:]):
	Use DEBUG_OBJECT so we don't get exceptions when the key characters
	are not simple ASCII characters.

2002-05-30  Richard Williamson  <rjw@apple.com>

    API and comment cleanup.
    
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.mm:
	(-[IFWebFrame setProvisionalDataSource:]):

2002-05-30  Maciej Stachowiak  <mjs@apple.com>

	WebKit parts of fixes for:

	Radar 2926169 - no support for window.open
	Radar 2890469 - Preference to prevent JavaScript from automatically
	opening new windows doesn't work
	Radar 2938569 - link cursor does not appear on some pages
	
	* WebView.subproj/IFWebController.h:
	Added openNewWindowWithURL: method for the benefit of JavaScript.
	* WebView.subproj/IFBaseWebController.mm:
	(-[IFBaseWebController openNewWindowWithURL:]): No-op default
	implementation.
	* WebView.subproj/IFDynamicScrollBarsView.h:
	* WebView.subproj/IFDynamicScrollBarsView.m:
	(-[IFDynamicScrollBarsView setCursor:]): Fix cursor handling.
	(-[IFDynamicScrollBarsView resetCursorRects]): Likewise.
	* WebView.subproj/IFWebView.mm:
	(-[IFWebView mouseMovedNotification:]): Likewise.
	(-[IFWebView setCursor:]): Likewise.
	* WebView.subproj/IFPreferences.h:
	* WebView.subproj/IFPreferences.mm:
	(-[IFPreferences javaScriptEnabled]): Renamed from jScriptEnabled.
	(-[IFPreferences setJavaScriptEnabled:]): Renamed from setJScriptEnabled.
	(-[IFPreferences javaScriptCanOpenWindowsAutomatically]): New method.
	(-[IFPreferences setJavaScriptCanOpenWindowsAutomatically:]): Likewise.
	* WebView.subproj/IFWebFrame.mm:
	(-[IFWebFrame initWithName:view:provisionalDataSource:controller:]): Create
	a dummy provisional data source if none is provided, so we always have a part
	for the frame.
	
2002-05-30  Darin Adler  <darin@apple.com>

	Use methods in KWQKHTMLPartImpl that were moved there from KHTMLPart.

	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
	(-[IFMainURLHandleClient processData:isComplete:allDataReceived:]):
	* WebView.subproj/IFWebDataSource.mm:
	(-[IFWebDataSource documentText]):
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSource _setController:]):
	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFrame _isLoadComplete]):
	* WebView.subproj/IFWebView.mm:
	(-[IFWebView provisionalDataSourceChanged:]):

2002-05-30  Chris Blumenberg  <cblu@apple.com>

	Use NSWorkspace methods instead of Launch Services and Finder functions.

	* MIME.subproj/IFDownloadHandler.h:
	* MIME.subproj/IFDownloadHandler.mm:
	* WebView.subproj/IFWebFrame.mm:
	(-[IFWebFrame setProvisionalDataSource:]):

2002-05-30  Richard Williamson  <rjw@apple.com>

    Added 'canDraw' check to ensure that we can render
    an image frame.
    
	* WebCoreSupport.subproj/IFImageRenderer.m:

=== Alexander-7 ===

2002-05-29  Richard Williamson  <rjw@apple.com>

    Changes to support animated image rendering.
    Moved image rendering into webkit.
    Still need to implement preferences stubs and
    start/stop stubs.
    
	* WebCoreSupport.subproj/IFImageRenderer.h: Added.
	* WebCoreSupport.subproj/IFImageRenderer.m: Added.
	* WebCoreSupport.subproj/IFImageRendererFactory.h: Added.
	* WebCoreSupport.subproj/IFImageRendererFactory.m: Added.
	(+[IFImageRendererFactory createSharedFactory]):
	(+[IFImageRendererFactory sharedFactory]):
	(-[IFImageRendererFactory imageRendererWithBytes:length:]):
	(-[IFImageRendererFactory imageRendererWithSize:]):
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFBaseWebController.mm:
	(-[IFBaseWebController stopAnimatedImages]):
	(-[IFBaseWebController startAnimatedImages]):
	(-[IFBaseWebController stopAnimatedImageLooping]):
	(-[IFBaseWebController startAnimatedImageLooping]):
	* WebView.subproj/IFPreferences.h:
	* WebView.subproj/IFPreferences.mm:
	(+[IFPreferences load]):
	(-[IFPreferences _resourceTimedLayoutEnabled]):
	(-[IFPreferences allowAnimatedImages]):
	(-[IFPreferences allowAnimatedImageLooping]):
	(-[IFPreferences setAllowAnimatedImageLooping:]):
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebView.mm:
	(-[IFWebView initWithFrame:]):

2002-05-29  Richard Williamson  <rjw@apple.com>

    API stubs for image animation.

	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFBaseWebController.mm:
	(-[IFBaseWebController stopAnimatedImages]):
	(-[IFBaseWebController startAnimatedImages]):
	(-[IFBaseWebController stopAnimatedImageLooping]):
	(-[IFBaseWebController startAnimatedImageLooping]):
	* WebView.subproj/IFPreferences.h:
	* WebView.subproj/IFPreferences.mm:
	(+[IFPreferences load]):
	(-[IFPreferences _resourceTimedLayoutEnabled]):
	(-[IFPreferences allowAnimatedImages]):
	(-[IFPreferences allowAnimatedImageLooping]):
	(-[IFPreferences setAllowAnimatedImageLooping:]):
	* WebView.subproj/IFWebController.h:

2002-05-29  John Sullivan  <sullivan@apple.com>

	Removed acceptsFirstMouse override, this fixes at least:

	2930713 -- clicking on an empty part of window to bring it to front
	takes focus away from page address field

	2938028 -- Link cursor doesn't appear when browser window not
	frontmost, but clicks activate links

	* WebView.subproj/IFWebView.mm:

2002-05-28  John Sullivan  <sullivan@apple.com>

	Made -[IFBookmark group] and -[IFBookmark parent] public
	methods, and renamed them to not use leading underscores,
	as part of support for revealing a particular bookmark in
	the Bookmarks window.

	* Bookmarks.subproj/IFBookmark_Private.h:
	removed _group and _parent.

	* Bookmarks.subproj/IFBookmark.h:
	added group and parent.

	* Bookmarks.subproj/IFBookmark.m:
	(-[IFBookmark parent]):
	(-[IFBookmark group]):
	* Bookmarks.subproj/IFBookmarkGroup.m:
	(-[IFBookmarkGroup removeBookmark:]):
	(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:image:URLString:type:]):
	* Bookmarks.subproj/IFBookmarkLeaf.m:
	(-[IFBookmarkLeaf copyWithZone:]):
	(-[IFBookmarkLeaf setTitle:]):
	(-[IFBookmarkLeaf setImage:]):
	(-[IFBookmarkLeaf setURLString:]):
	* Bookmarks.subproj/IFBookmarkList.m:
	(-[IFBookmarkList copyWithZone:]):
	(-[IFBookmarkList setTitle:]):
	(-[IFBookmarkList setImage:]):
	(-[IFBookmarkList removeChild:]):
	(-[IFBookmarkList insertChild:atIndex:]):
	(-[IFBookmarkList _setGroup:]):
	* Bookmarks.subproj/IFBookmarkSeparator.m:
	(-[IFBookmarkSeparator copyWithZone:]):
	Fixed up all references to _group and _parent to now refer to
	group and parent.

2002-05-28  Richard Williamson  <rjw@apple.com>

    Backed out band-aid add to fixed malformed resources URLs.

	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSource _addURLHandle:]):

2002-05-28  Chris Blumenberg  <cblu@apple.com>

	Added support for creating a new window from a plug-in (2938004)

	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):

2002-05-28  Chris Blumenberg  <cblu@apple.com>

	* Plugins.subproj/IFPluginDatabase.h:
	* Plugins.subproj/IFPluginDatabase.m:
	(-[IFPluginDatabase pluginForMimeType:]): renamed
	(-[IFPluginDatabase pluginForExtension:]): renamed
	(-[IFPluginDatabase pluginForFilename:]): renamed
	(findPlugins):
	* WebCoreSupport.subproj/IFWebCoreViewFactory.m: support for above renamed
	(-[IFWebCoreViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
	(-[IFWebCoreViewFactory viewForJavaAppletWithArguments:]):
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSource _addURLHandle:]): fix for a nil handle being added to an array

2002-05-28  Darin Adler  <darin@apple.com>

	* WebCoreSupport.subproj/IFTextRenderer.m:
	(hasMissingGlyphs): Use recordSize instead of assuming records are sizeof(ATSLayoutRecord).
	(-[IFTextRenderer convertCharacters:length:toGlyphs:]): Free buffer after calling
	ATSUConvertCharToGlyphs; old code was using buffer after freeing it.
	(-[IFTextRenderer widthForString:]): Handle case where string is longer than
	LOCAL_GLYPH_BUFFER_SIZE.
	(-[IFTextRenderer slowPackGlyphsForCharacters:numCharacters:glyphBuffer:numGlyphs:]):
	(-[IFTextRenderer drawString:atPoint:withColor:]): Use recordSize instead of assuming records
	are sizeof(ATSLayoutRecord).
	(-[IFTextRenderer slowFloatWidthForCharacters:length:]): Use recordSize instead of assuming
	records are sizeof(ATSLayoutRecord).
	(-[IFTextRenderer floatWidthForCharacters:length:]): Remove extra rounding. The caller that
	converts the width to an integer already does the rounding.
	(-[IFTextRenderer extendCharacterToGlyphMapToInclude:]): Fix off by one error that caused us
	to include one extra character in each glyph map block. Also use recordSize instead of assuming
	records are sizeof(ATSLayoutRecord).

2002-05-27  John Sullivan  <sullivan@apple.com>

	Part of fix for 2922772 -- page title & location field don't
	show redirected URLs.

	* WebView.subproj/IFWebDataSource.mm:
	(-[IFWebDataSource wasRedirected]): Fixed this method, now that
	we have a client that relies on it. Its logic was backwards, and
	it didn't handle the null _finalURL case.

2002-05-26  Maciej Stachowiak  <mjs@apple.com>

	Fixed Radar 936147 - debug output in console "keyUp: NSEvent: type=KeyUp"

	* WebView.subproj/IFWebView.mm:
	(-[IFWebView keyDown:]): Turned NSLog into WEBKITDEBUGLEVEL.
	(-[IFWebView keyUp:]): Likewise.

2002-05-26  Maciej Stachowiak  <mjs@apple.com>

	WebKit part of fix for:

	Radar 2884085 - add support for changing cursor over links

	Also, fix handling of mouseMoved events.
	
	* WebView.subproj/IFWebView.mm:
	(-[IFWebView mouseMovedNotification:]): Clip mouseMoved events to
	the view rect, otherwise mouseover effects might happen for
	elements past the edge of the window.	
	(-[IFWebView setCursor:]): Implement.
	(-[IFWebView resetCursorRects]): Implement.
	* WebView.subproj/IFWebViewPrivate.h:
	* WebView.subproj/IFWebViewPrivate.mm:
	(-[IFWebViewPrivate dealloc]): Added NSCursor *cursor field.

2002-05-25  Maciej Stachowiak  <mjs@apple.com>

	* WebKit.pbproj/project.pbxproj: Link against WebCore.framework,
	not libwebcore.dylib.

=== 0.3 ===

2002-05-24  Shelley A Sheridan  <sheridan@apple.com>

	* ChangeLog:

=== Alexander-6 ===

2002-05-23  Maciej Stachowiak  <mjs@apple.com>

	WebKit part of the fix for:

	Radar 2896391 - command-click should open link in new window
	
	* WebView.subproj/IFBaseWebController.mm:
	(-[IFBaseWebController openNewWindowWithURL:]): Default
	implementation silently does nothing.
	* WebView.subproj/IFWebController.h: Add openNewWindowWithURL:
	method.
	* WebView.subproj/IFWebView.mm:
	(-[IFWebView _addModifiers:toState:]): Split out modifier key
	handling to here. Treat Command as Meta.
	(-[IFWebView mouseUp:]): Use new method to set key modifiers for
	mouse events.
	(-[IFWebView mouseDown:]): Use new method to set key modifiers for
	mouse events.
	(-[IFWebView keyDown:]): Use new shared code for key modifiers.
	(-[IFWebView keyUp:]): Use new shared code for key modifiers.

2002-05-23  Kenneth Kocienda  <kocienda@apple.com>

        Fixes for these bugs:

        Radar 2883631 (need to implement support for META HTTP_EQUIV=REFRESH)
        Radar 2935472 (Non-standard html pages don't always get decoded)

	* WebView.subproj/IFMainURLHandleClient.h:
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient setContentPolicy:]): Updated method to use new processData interface.
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): Senses when all data has been received for a load.
	(-[IFMainURLHandleClient processData:isComplete:allDataReceived:]): Modified interface to add a flag 
          for when all data for a load has been received.

2002-05-23  Shelley A Sheridan  <sheridan@apple.com>

	* ChangeLog:

=== Alexander-5 ===

2002-05-23  Maciej Stachowiak  <mjs@apple.com>

	Move authentication panel to WebKit and make it a sheet, fixing:

	Radar 2876445 - Authentication panel should be a sheet
	Radar 2876449 - The Alexander authentication panel should be moved
	to WebKit for use as a standard one
	
	* Panels.subproj/English.lproj/IFAuthenticationPanel.nib: Added.
	* Panels.subproj/IFAuthenticationPanel.h: Added.
	* Panels.subproj/IFAuthenticationPanel.m: Added.
	* Panels.subproj/IFPanelAuthenticationHandler.h: Added.
	* Panels.subproj/IFPanelAuthenticationHandler.m: Added.
	* Panels.subproj/IFStandardPanels.h: Added.
	* Panels.subproj/IFStandardPanels.m: Added.
	* Panels.subproj/IFStandardPanelsPrivate.h: Added.
	* WebKit.pbproj/project.pbxproj: Add new files to build.
	* Plugins.subproj/IFPluginStream.mm:
	(-[IFPluginStream IFURLHandleResourceDidBeginLoading:]): Notify of
	load start.
	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]): Notify
	of load end.
	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]): Likewise.
	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]): Likewise.
	(-[IFPluginStream IFURLHandle:didRedirectToURL:]): Notify that old
	URL is no longer loading, but new one is.
	* WebView.subproj/IFBaseWebControllerPrivate.h:
	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	(-[IFBaseWebController _didStartLoading:]): New private method
	used to track what URLs are loading on behalf of this controller.
	(-[IFBaseWebController _didStopLoading:]): Likewise.
	
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]): Notify
	of load start.
	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): Notify
	of load end.
	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]): Likewise.
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): Likewise.
	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]): Likewise.
	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]): Notify of 
	load end and start.

2002-05-22  Chris Blumenberg  <cblu@apple.com>
	
	Fixed download data source leaks when downloads are cancelled.

	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):

2002-05-22  Chris Blumenberg  <cblu@apple.com>

	Removed activate events as this was causing problems
	for the QT plug-in.
	
	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView windowBecameKey:]):
	(-[IFPluginView windowResignedKey:]):

2002-05-22  Chris Blumenberg  <cblu@apple.com>

	Fixed crasher caused by not retaining.
	Fixed targeting bug.

	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
	(-[IFPluginView getURLNotify:target:notifyData:]):
	(-[IFPluginView getURL:target:]):
	(-[IFPluginView postURLNotify:target:len:buf:file:notifyData:]):
	(-[IFPluginView postURL:target:len:buf:file:]):

2002-05-22  Richard J. Williamson  <rjw@apple.com>

    Changed semantics of isLoading to only return YES if
    the datasource is loading resources related to the intial
    load.  Other resources loaded later by JS will not be
    accounted for by isLoading.
    
	* WebView.subproj/IFWebDataSource.mm:
	(-[IFWebDataSource isLoading]):

2002-05-22  Chris Blumenberg  <cblu@apple.com>

	- Removed obsolete MIME/download related code.
	- Minor clean-ups.
	- Made WebKit support all text MIME types.
	- Now send NPP_URLNotify when pages requested by plug-ins are loaded.
	- Simplified NPP_Get/NPP_Post code.
	
	* MIME.subproj/IFContentHandler.h:
	* MIME.subproj/IFContentHandler.m:
	* MIME.subproj/IFDownloadHandler.mm:
	* MIME.subproj/IFMIMEDatabase.h: Removed.
	* MIME.subproj/IFMIMEDatabase.m: Removed.
	* MIME.subproj/IFMIMEHandler.h:
	* MIME.subproj/IFMIMEHandler.m:
	(+[IFMIMEHandler MIMEHandlerTypeForMIMEType:]):
	(+[IFMIMEHandler canShowMIMEType:]):
	* Plugins.subproj/IFPluginView.h:
	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
	(-[IFPluginView dealloc]):
	(-[IFPluginView frameStateChanged:]):
	(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
	(-[IFPluginView getURLNotify:target:notifyData:]):
	(-[IFPluginView getURL:target:]):
	(-[IFPluginView postURLNotify:target:len:buf:file:notifyData:]):
	(-[IFPluginView postURL:target:len:buf:file:]):
	(-[IFPluginView invalidateRect:]):
	(-[IFPluginView invalidateRegion:]):
	(-[IFPluginView forceRedraw]):
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFMainURLHandleClient.h:
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient dealloc]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	(-[IFMainURLHandleClient processData:isComplete:]):
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFrame _setState:]):

2002-05-21  Richard J. Williamson  <rjw@apple.com>

    Fixed baseline regression.  Obvious of sites that have tables w/ backgrounds,
    i.e. www.slashdot.org.
    
	* WebCoreSupport.subproj/IFTextRenderer.m:
	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
	(-[IFTextRenderer drawUnderlineForString:atPoint:withColor:]):

2002-05-21  Richard J. Williamson  <rjw@apple.com>

    Changes to support additional DHTML events.
    
	* WebView.subproj/IFWebView.mm:
	(-[IFWebView keyDown:]):
	(-[IFWebView keyUp:]):
	* WebView.subproj/IFWebViewPrivate.mm:
	(+[IFWebView _nodeHTML:DOM::]):

2002-05-21  Chris Blumenberg  <cblu@apple.com>

	Content policy can now be sent at a later time to avoid blocking.

	* WebView.subproj/IFMainURLHandleClient.h:
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient initWithDataSource:part:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):

2002-05-21  Chris Blumenberg  <cblu@apple.com>

	Move the tracking rect after the view has moved.

	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView viewHasMoved:]):

	Fixed logging.

	* Plugins.subproj/npapi.m:
	(NPN_UserAgent):
	(NPN_MemAlloc):
	(NPN_MemFree):
	(NPN_MemFlush):
	(NPN_ReloadPlugins):

2002-05-21  Kenneth Kocienda  <kocienda@apple.com>

        Merged these four include files into the precompiled header.
        These are used for the enhanced assertion/debuggin support I
        added yesterday.

        <signal.h>
        <sys/types.h>
        <sys/time.h>
        <sys/resource.h>

	* WebKitPrefix.h

2002-05-20  Chris Blumenberg  <cblu@apple.com>

	Added support for plug-ins to send URL requests to certain targets.

	Added frameNamed to IFWebFrame.

	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView getURLNotify:target:notifyData:]):
	(-[IFPluginView postURLNotify:target:len:buf:file:notifyData:]):
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.mm:
	(-[IFWebFrame frameNamed:]):

2002-05-20  Kenneth Kocienda  <kocienda@apple.com>

	* Misc.subproj/WebKitDebug.h: Now includes <sys/time.h> to prevent possible
          build breakage in the inclusion of <sys/resource.h>

2002-05-20  Kenneth Kocienda  <kocienda@apple.com>

        Changed assertion failure code to send a SIGQUIT instead
        of raising an NSException.

	* Misc.subproj/WebKitDebug.h

2002-05-20  Chris Blumenberg  <cblu@apple.com>

	A whole lot of plug-in clean-up.

	Moved the following functions from npapi to IFPlugin.

	* Plugins.subproj/IFPlugin.m:
	(functionPointerForTVector):
	(tVectorForFunctionPointer):


	Only supply mouse coords when active.

	* Plugins.subproj/IFPluginNullEventSender.h:
	* Plugins.subproj/IFPluginNullEventSender.m:
	(-[IFPluginNullEventSender initializeWithNPP:functionPointer:window:]):
	(-[IFPluginNullEventSender dealloc]):
	(-[IFPluginNullEventSender sendNullEvents]):

	
	Minor clean-ups

	* Plugins.subproj/IFPluginStream.mm:
	(-[IFPluginStream dealloc]):
	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
	
	
	Removed the isMouseDown flag from the following functions
	as it was unnecessary.

	Cleaned up logging.

	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView modifiersForEvent:]):
	(-[IFPluginView getCarbonEvent:withEvent:]):
	(-[IFPluginView sendUpdateEvent]):
	(-[IFPluginView becomeFirstResponder]):
	(-[IFPluginView resignFirstResponder]):
	(-[IFPluginView mouseDown:]):
	(-[IFPluginView mouseUp:]):
	(-[IFPluginView mouseExited:]):
	(-[IFPluginView setWindow]):
	(-[IFPluginView start]):
	(-[IFPluginView stop]):


	URLForString now uses _IF_looksLikeAbsoluteURL.

	(-[IFPluginView URLForString:]):

	
	Implemented the following:

	(-[IFPluginView invalidateRect:]):
	(-[IFPluginView invalidateRegion:]):
	(-[IFPluginView forceRedraw]):

	
	Put implementation of GetValue SetValue in npapi. 

	* Plugins.subproj/npapi.h:
	* Plugins.subproj/npapi.m:
	(NPN_GetValue):
	(NPN_SetValue):


	Added drag & drop support.

	* WebView.subproj/IFWebView.mm:
	(-[IFWebView initWithFrame:]):
	(-[IFWebView setCanDragFrom:]):
	(-[IFWebView canDragFrom]):
	(-[IFWebView setCanDragTo:]):
	(-[IFWebView canDragTo]):
	(-[IFWebView draggingEntered:]):
	(-[IFWebView prepareForDragOperation:]):
	(-[IFWebView performDragOperation:]):
	* WebView.subproj/IFWebViewPrivate.h:
	* WebView.subproj/IFWebViewPrivate.mm:
	(-[IFWebViewPrivate dealloc]):

2002-05-20  John Sullivan  <sullivan@apple.com>

	Support for bookmark separators

	* Bookmarks.subproj/IFBookmark.h: Update comments and replace
	isLeaf with bookmarkType.

	* Bookmarks.subproj/IFBookmark.m:
	(-[IFBookmark bookmarkType]): New method, replaces isLeaf.
	(-[IFBookmark title]):
	(-[IFBookmark setTitle:]):
	(-[IFBookmark image]):
	(-[IFBookmark setImage:]):
	(-[IFBookmark setURLString:]):
	(-[IFBookmark children]):
	(-[IFBookmark numberOfChildren]):
	(-[IFBookmark _numberOfDescendants]):
	(-[IFBookmark insertChild:atIndex:]):
	(-[IFBookmark removeChild:]):
	Update callers of isLeaf, and don't require concrete implementations
	of some methods for some types.

	* Bookmarks.subproj/IFBookmarkLeaf.m:
	(-[IFBookmarkLeaf bookmarkType]): return IFBookmarkTypeLeaf
	(-[IFBookmarkLeaf _dictionaryRepresentation]): set value for bookmark type.

	* Bookmarks.subproj/IFBookmarkList.m:
	(-[IFBookmarkList _initFromDictionaryRepresentation:withGroup:]):
	Handle separator case.
	(-[IFBookmarkList _dictionaryRepresentation]): set value for bookmark type
	(-[IFBookmarkList bookmarkType]): return IFBookmarkTypeList

	* Bookmarks.subproj/IFBookmarkSeparator.h: Added.
	* Bookmarks.subproj/IFBookmarkSeparator.m: Added.
	(-[IFBookmarkSeparator initWithGroup:]): Simple init method.
	(-[IFBookmarkSeparator _initFromDictionaryRepresentation:withGroup:]): Just calls
	initWithGroup.
	(-[IFBookmarkSeparator _dictionaryRepresentation]): set value for bookmark type
	(-[IFBookmarkSeparator bookmarkType]): return IFBookmarkTypeSeparator
	(-[IFBookmarkSeparator copyWithZone:]): calls initWithGroup

	* Bookmarks.subproj/IFBookmark_Private.h: Added key/value #defines for dictionary
	representation.

	* Bookmarks.subproj/IFBookmarkGroup.h:
	* Bookmarks.subproj/IFBookmarkGroup.m:
	(-[IFBookmarkGroup _setTopBookmark:]):
	(-[IFBookmarkGroup _bookmarkChildrenDidChange:]):
	(-[IFBookmarkGroup addNewBookmarkToBookmark:withTitle:image:URLString:type:]):
	Update callers of isLeaf to use bookmarkType instead.

	(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:image:URLString:type:]):
	if type is IFBookmarkTypeSeparator, instantiate an IFBookmarkSeparator

	* WebKit.pbproj/project.pbxproj: Updated for new files.

2002-05-17  Chris Blumenberg  <cblu@apple.com>

	- Made IFPluginStream the URL handle client instead of IFPluginView.
	- Added support for NPP_PostURL and NPP_PostNotify.
	- Possible fix for 2928558.

	* Plugins.subproj/IFPluginStream.h:
	* Plugins.subproj/IFPluginView.h:
	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):NSURL for url
	instead of NSString
	(-[IFPluginView dealloc]):
	(-[IFPluginView setWindow]):
	(-[IFPluginView start]): 
	(-[IFPluginView stop]):
	(-[IFPluginView webDataSource]):Accessor for IFPluginStream.
	(-[IFPluginView webController]):Accessor for IFPluginStream.
	(-[IFPluginView URLForString:]):
	(-[IFPluginView getURLNotify:target:notifyData:]):
	(-[IFPluginView postURLNotify:target:len:buf:file:notifyData:]):
	(-[IFPluginView postURL:target:len:buf:file:]):
	(-[IFPluginView destroyStream:reason:]):
	(-[IFPluginView status:]):
	(-[IFPluginView NPP_NewStream]): Accessor for IFPluginStream.
	(-[IFPluginView NPP_WriteReady]):Accessor for IFPluginStream.
	(-[IFPluginView NPP_Write]): Accessor for IFPluginStream.
	(-[IFPluginView NPP_StreamAsFile]): Accessor for IFPluginStream.
	(-[IFPluginView NPP_DestroyStream]): Accessor for IFPluginStream.
	(-[IFPluginView NPP_URLNotify]): Accessor for IFPluginStream.
	* WebCoreSupport.subproj/IFWebCoreViewFactory.m: Use new IFPluginView init method
	(-[IFWebCoreViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
	* WebKit.pbproj/project.pbxproj:

2002-05-16  Richard J. Williamson  <rjw@apple.com>

	Fixed 2925638.  Don't send last progress message from resourceDataDidBecomeAvailable,
	it is sent from IFURLHandleResourceDidFinishLoading, avoiding duplication.
	
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):

2002-05-16  Richard J. Williamson  <rjw@apple.com>

	Fix to fix for 0x7f to 0xa0.  I was being overly aggressive about
	finding substitute glyphs.
	
	* WebCoreSupport.subproj/IFTextRenderer.m:
	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
	(-[IFTextRenderer floatWidthForCharacters:length:]):

2002-05-16  Darin Adler  <darin@apple.com>

	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView IFURLHandleResourceDidFinishLoading:data:]):
	Use this new getCarbonPath function rather than hardcoding assumptions
	about "/tmp" being ":private:tmp".
	(getCarbonPath): New.

2002-05-16  Darin Adler  <darin@apple.com>

	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView mouseUp:]):
	Fixed log statement so development builds work again.

2002-05-16  Darin Adler  <darin@apple.com>

	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView mouseUp:]):
	Remove unused variable that breaks optimized builds.

2002-05-15  Darin Adler  <darin@apple.com>

	Another quick events cleanup pass.

	* Plugins.subproj/IFPluginNullEventSender.m:
	(-[IFPluginNullEventSender sendNullEvents]): Use [IFPluginView getCarbonEvent:].

	* Plugins.subproj/IFPluginView.h: Make almost all methods private.
	* Plugins.subproj/IFPluginView.mm:
	(+[IFPluginView getCarbonEvent:]): New.
	(-[IFPluginView getCarbonEvent:]): New, calls class method.
	(-[IFPluginView modifiersForEvent:isMouseDown:]): Reversed sense of btnState.
	This flag is set if the mouse is up, not if the mouse is down.
	(-[IFPluginView getCarbonEvent:withEvent:isMouseDown:]): New.
	(-[IFPluginView getCarbonEvent:withEvent:]): New.
	(-[IFPluginView sendActivateEvent:]): Now takes parameter for activate vs.
	deactivate and uses [getCarbonEvent:].
	(-[IFPluginView sendUpdateEvent]): Uses [getCarbonEvent:].
	(-[IFPluginView becomeFirstResponder]): Uses [getCarbonEvent:].
	(-[IFPluginView resignFirstResponder]): Uses [getCarbonEvent:].
	(-[IFPluginView mouseDown:]): Uses [getCarbonEvent:withEvent:isMouseDown:].
	(-[IFPluginView mouseUp:]): Uses [getCarbonEvent:withEvent:isMouseDown:].
	(-[IFPluginView mouseEntered:]): Uses [getCarbonEvent:withEvent:].
	(-[IFPluginView mouseExited:]): Uses [getCarbonEvent:withEvent:].
	(-[IFPluginView keyUp:]): Uses [getCarbonEvent:withEvent:].
	(-[IFPluginView keyDown:]): Uses [getCarbonEvent:withEvent:].
	(-[IFPluginView start]): Call [sendActivateEvent:YES].
	(-[IFPluginView windowBecameKey:]): Call [sendActivateEvent:YES].
	(-[IFPluginView windowResignedKey:]): Call [sendActivateEvent:NO].

2002-05-15  Richard J. Williamson  <rjw@apple.com>

    Fixed problem dealing w/ characters in range 0x7f - 0xa0.
    
	* WebCoreSupport.subproj/IFTextRenderer.m:
	(setGlyphForCharacter):
	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
	(-[IFTextRenderer floatWidthForCharacters:length:]):

2002-05-15  Chris Blumenberg  <cblu@apple.com>

	Fixed Flash mouse-down, mouse-over Flash bug.
	Added support for modifiers (control-click etc) (2884451).
	A lot of events clean-up.

	* Plugins.subproj/IFPluginNullEventSender.m:
	(-[IFPluginNullEventSender sendNullEvents]):
	* Plugins.subproj/IFPluginView.h:
	* Plugins.subproj/IFPluginView.mm:
	(newCString):
	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
	(-[IFPluginView start]):
	(-[IFPluginView drawRect:]):
	(-[IFPluginView isFlipped]):
	(-[IFPluginView currentModifiers]):
	(-[IFPluginView modifiersForEvent:isMouseDown:]):
	(-[IFPluginView sendActivateEvent]):
	(-[IFPluginView sendUpdateEvent]):
	(-[IFPluginView becomeFirstResponder]):
	(-[IFPluginView resignFirstResponder]):
	(-[IFPluginView mouseDown:]):
	(-[IFPluginView mouseUp:]):
	(-[IFPluginView mouseEntered:]):
	(-[IFPluginView mouseExited:]):
	(-[IFPluginView keyUp:]):
	(-[IFPluginView keyDown:]):
	(-[IFPluginView windowBecameKey:]):
	(-[IFPluginView windowResignedKey:]):

	Case-sensitivity issue with an include.

	* WebView.subproj/IFWebView.mm:

2002-05-15  Darin Adler  <darin@apple.com>

	* Makefile.am:
	Use all-am and clean-am instead of all and clean because it's better and
	to make "make check" at the top level work right.

2002-05-14  John Sullivan  <sullivan@apple.com>

	Work to support copying bookmarks, needed for drag & drop
	in Bookmarks window.

	* Bookmarks.subproj/IFBookmark.h: Make IFBookmark conform to NSCopying.

	* Bookmarks.subproj/IFBookmark.m:
	(-[IFBookmark copyWithZone:]): insist that subclasses implement this.

	* Bookmarks.subproj/IFBookmarkGroup.h:
	* Bookmarks.subproj/IFBookmarkGroup.m:
	(-[IFBookmarkGroup insertBookmark:atIndex:ofBookmark:]):
	Removed this unnecessary method.

	* Bookmarks.subproj/IFBookmarkLeaf.m:
	(-[IFBookmarkLeaf copyWithZone:]): New method.

	* Bookmarks.subproj/IFBookmarkList.m:
	(-[IFBookmarkList copyWithZone:]): New method.

2002-05-14  Richard J. Williamson  <rjw@apple.com>

    Fixed exception in log code.
    
	* WebCoreSupport.subproj/IFTextRenderer.m:
	(-[IFTextRenderer floatWidthForCharacters:length:]):

2002-05-14  Richard J. Williamson  <rjw@apple.com>

    Fixed 2926153, not getting correct messages after cancel.
    Fixed leak of mouse events (Darin wanted this ASAP).
    
	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]):
	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
	* WebView.subproj/IFLocationChangeHandler.h:
	* WebView.subproj/IFWebView.mm:
	(-[IFWebView initWithFrame:]):
	(-[IFWebView layout]):
	(-[IFWebView mouseUp:]):
	(-[IFWebView mouseDown:]):
	(-[IFWebView mouseMovedNotification:]):

2002-05-14  Chris Blumenberg  <cblu@apple.com>

	Removed retain of the URL handle. This was causing everything to leak.

	* WebView.subproj/IFMainURLHandleClient.h:
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient initWithDataSource:part:]):
	(-[IFMainURLHandleClient dealloc]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
	(-[IFMainURLHandleClient processData:isComplete:]):

2002-05-14  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]):
	Remove code that makes us the first responder. That's up to the higher levels,
	not the web view.

2002-05-14  John Sullivan  <sullivan@apple.com>

	* History.subproj/IFURIEntry.h:
	Oops, deleted the prototype for setLastVisitedDate
	accidentally, which made Jersey sad.

2002-05-14  John Sullivan  <sullivan@apple.com>

	Fixed 2919027 -- Need to remove unused code in WebKit/History.subproj

	* History.subproj/IFAttributedURL.h: Removed.
	* History.subproj/IFBackForwardList.h: Removed large #ifdef.
	* History.subproj/IFURIEntry.h,
	* History.subproj/IFURIEntry.m: Removed all mention of unused
	fields comment, creationDate, modificationDate
	* WebKit.pbproj/project.pbxproj: Updated for removed file.

2002-05-13  Chris Blumenberg  <cblu@apple.com>

	Added support for setting the content policy on the location change handler
	and data source at any time instead of depending on an immediate response.

	* WebView.subproj/IFBaseWebController.mm:
	(-[IFBaseWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
	* WebView.subproj/IFMainURLHandleClient.h:
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient initWithDataSource:part:]):
	(-[IFMainURLHandleClient dealloc]):
	(-[IFMainURLHandleClient setContentPolicy:]):
	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
	(-[IFMainURLHandleClient processData:isComplete:]):
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSource _setContentPolicy:]):
	* WebView.subproj/IFWebFrame.mm:
	(-[IFWebFrame setProvisionalDataSource:]):

2002-05-13  Maciej Stachowiak  <mjs@apple.com>

	* WebKitPrefix.h: Gratuitous change to make the prefix file
	rebuild.

2002-05-13  Chris Blumenberg  <cblu@apple.com>

	* WebView.subproj/IFBaseWebController.mm:
	(-[IFBaseWebController URLPolicyForURL:]):
	
	Use [IFURLHandle canInitWithURL] instead of hard-coded URL schemes.

	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSourcePrivate init]):
	(-[IFWebDataSource _setDownloadPath:]):

	Removed _contentPolicy as contentPolicy is public. 

	Initialize contentPolicy in [IFWebDataSourcePrivate init].

2002-05-10  Richard J. Williamson  <rjw@apple.com>

	Logging changes.
	
	* WebCoreSupport.subproj/IFTextRenderer.m:
	* WebView.subproj/IFWebDataSource.mm:
	(-[IFWebDataSource isLoading]):
	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFrame _isLoadComplete]):

2002-05-10  Chris Blumenberg  <cblu@apple.com>

	Added support for non-html non-file URL data sources. 
	Added the init methods below. Removed initWithHandle.

	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm:
	(IFWebDataSourceMake):
	(-[IFWebDataSource initWithURL:]):
	(-[IFWebDataSource initWithURL:attributes:]):
	(-[IFWebDataSource startLoading:]):

2002-05-10  Darin Adler  <darin@apple.com>

	* WebCoreSupport.subproj/IFTextRenderer.h: Moved most of the
	stuff from here into the .m file so this header can be included
	by clients. Also added floatWidthForCharacters:length:.
	* WebCoreSupport.subproj/IFTextRenderer.m:
	(freeWidthMap): Check for NULL.
	(freeGlyphMap): Check for NULL.
	(-[IFTextRenderer slowFloatWidthForCharacters:length:]): Renamed,
	and made it return the float.
	(-[IFTextRenderer floatWidthForCharacters:length:]): Renamed, and
	made it return the float.
	(-[IFTextRenderer widthForCharacters:length:]): Do rounding here.

	* WebCoreSupport.subproj/IFTextRendererFactory.h:
	* WebCoreSupport.subproj/IFTextRendererFactory.m:
	Make the interface slightly easier to use by using the specific types.

	* WebKit.pbproj/project.pbxproj: Exported the headers.

2002-05-10  Kenneth Kocienda  <kocienda@apple.com>

        Fixed build breakage caused by my previous checkin.

	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:])

2002-05-10  John Sullivan  <sullivan@apple.com>

	Fixed 2922756 (@ image in History window is a little too tall)
	Fixed 2923790 (bookmark folders need folder icons)

	* Resources/bookmark_folder.tiff: New image (small folder, copied from elsewhere)
	* Resources/url_icon.tiff: Shrunk this one a little bit.

	* Bookmarks.subproj/IFBookmarkList.m:
	(-[IFBookmarkList image]): Return the default image if no custom image is set.

	* History.subproj/IFURIEntry.m:
	(-[IFURIEntry image]): If the default image's file isn't found, don't try
	to create an NSImage, because it will come out horribly broken and evil if
	you do (I ran into this while adding the bookmark folder image; most of Alexander's
	menus did not appear at all because the bookmark folder image was using a bogus
	NSImage).

	* WebKit.pbproj/project.pbxproj: Updated for new files.

2002-05-10  Kenneth Kocienda  <kocienda@apple.com>

        Reviewed by: Maciej Stachowiak

        This code was modified to use the new interface and features of IFError.
        These features and changes are described in these four bug reports:

        Radar 2923998 (Change IFError private data into a pointer to a private data object)
        Radar 2924002 (IFError should include an error domain)
        Radar 2924013 (IFError initialization is not threadsafe)        
        Radar 2924280 (IFError should contain a new field which tells whether the error is terminal)
                                                            
	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView IFURLHandle:resourceDidFailLoadingWithResult:]):
	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]):
	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):

2002-05-09  Richard J. Williamson  <rjw@apple.com>

    Tuned implementation more.  Cleaned up and factored code.

	* WebCoreSupport.subproj/IFTextRenderer.h:
	* WebCoreSupport.subproj/IFTextRenderer.m:
	(-[IFTextRenderer substituteFontForString:]):
	(-[IFTextRenderer substituteFontForCharacters:length:]):
	(-[IFTextRenderer initWithFont:]):
	(-[IFTextRenderer dealloc]):
	(-[IFTextRenderer slowPackGlyphsForCharacters:numCharacters:glyphBuffer:numGlyphs:]):
	(-[IFTextRenderer drawString:atPoint:withColor:]):
	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
	(-[IFTextRenderer drawUnderlineForString:atPoint:withColor:]):
	(-[IFTextRenderer slowWidthForCharacters:length:]):
	(-[IFTextRenderer widthForCharacters:length:]):
	(-[IFTextRenderer extendGlyphToWidthMapToInclude:]):

2002-05-09  John Sullivan  <sullivan@apple.com>

	* Bookmarks.subproj/IFBookmarkGroup.h:
	* Bookmarks.subproj/IFBookmarkGroup.m:
	(-[IFBookmarkGroup addNewBookmarkToBookmark:withTitle:image:URLString:isLeaf:]):
	(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:image:URLString:isLeaf:]):
	Gave these two methods return values of the new bookmark created, to make callers'
	lives easier.

=== Alexander-3 ===

2002-05-08  Richard J. Williamson  <rjw@apple.com>

    Added optimizations for text rendering.
    
	* WebCoreSupport.subproj/IFTextRenderer.h:
	* WebCoreSupport.subproj/IFTextRenderer.m:
	(freeWidthMap):
	(freeGlyphMap):
	(glyphForCharacter):
	(widthForGlyph):
	(widthForCharacter):
	(-[IFTextRenderer substituteFontForCharacters:length:]):
	(-[IFTextRenderer convertCharacters:length:glyphs:]):
	(-[IFTextRenderer dealloc]):
	(-[IFTextRenderer drawString:atPoint:withColor:]):
	(-[IFTextRenderer drawUnderlineForString:atPoint:withColor:]):
	(-[IFTextRenderer widthForCharacters:length:]):
	(-[IFTextRenderer extendCharacterToGlyphMapToInclude:]):
	(-[IFTextRenderer extendGlyphToWidthMapToInclude:]):

2002-05-08  Darin Adler  <darin@apple.com>

	* Misc.subproj/IFCache.h: Add more JavaScript object statistics.
	* Misc.subproj/IFCache.mm:
	(+[IFCache javaScriptInterpretersCount]): New.
	(+[IFCache javaScriptNoGCAllowedObjectsCount]): New.
	(+[IFCache javaScriptReferencedObjectsCount]): New.

	* WebKit.pbproj/project.pbxproj: Rearranged two files, dunno why.

2002-05-08  Chris Blumenberg  <cblu@apple.com>

	Cleaned up mach-o plug-in support.
	
	Changed the init method in IFPlugin to initWithPath.

	* Plugins.subproj/IFPlugin.h:
	* Plugins.subproj/IFPlugin.m:
	(-[IFPlugin initWithPath:]):
	(-[IFPlugin load]):
	* Plugins.subproj/IFPluginDatabase.m:
	(findPlugins):

2002-05-08  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _setTitle:]):
	Use _IF_stringByTrimmingWhitespace.

2002-05-07  Richard J. Williamson  <rjw@apple.com>

        First pass at font substitution.  Find a substitute font to
        use when the specified font doesn't have glyphs for the characters that
        need to be drawn.
        
        Works correctly but hasn't been optimized yet, VERY slow.
        Will optimize this evening and tomorrow.  Try www.yahoo.co.jp,
        it will take a long time to render be eventually will draw correctly.
        
	* WebCoreSupport.subproj/IFTextRenderer.h:
	* WebCoreSupport.subproj/IFTextRenderer.m:
	(hasMissingGlyphs):
	(+[IFTextRenderer initialize]):
	(-[IFTextRenderer convertCharacters:length:glyphs:]):
	(-[IFTextRenderer initializeCaches]):
	(-[IFTextRenderer drawString:atPoint:withColor:]):
	(-[IFTextRenderer drawUnderlineForString:atPoint:withColor:]):
	(-[IFTextRenderer widthForCharacters:length:]):

2002-05-07  Darin Adler  <darin@apple.com>

	Oops. These files don't belong at the top level.

	* IFWebCoreViewFactory.h: Removed.
	* IFWebCoreViewFactory.m: Removed.
	* WebCoreSupport.subproj/IFWebCoreViewFactory.h: Added.
	* WebCoreSupport.subproj/IFWebCoreViewFactory.m: Added.
	* WebKit.pbproj/project.pbxproj:

2002-05-07  Darin Adler  <darin@apple.com>

	Move more plugin code here from WebCore.

	* IFWebCoreViewFactory.h: Added.
	* IFWebCoreViewFactory.m: Added.

	* Plugins.subproj/IFPlugin.h: Moved from WebCore.
	* Plugins.subproj/IFPlugin.m: Moved from WebCore.
	* Plugins.subproj/IFPluginDatabase.h: Moved from WebCore.
	* Plugins.subproj/IFPluginDatabase.m: Moved from WebCore.
	* Plugins.subproj/npapi.h: Moved from WebCore.
	* Plugins.subproj/npapi.m: Moved from WebCore.

	* WebKit.pbproj/project.pbxproj: Source file names changed

	* MIME.subproj/IFMIMEDatabase.m:
	* MIME.subproj/IFMIMEHandler.m:
	* Plugins.subproj/IFPluginView.h:
	* Plugins.subproj/IFPluginView.mm:
	Updated for WC -> IF name change.

	* WebCoreSupport.subproj/IFCachedTextRenderer.h: Renamed to IFTextRenderer.
	* WebCoreSupport.subproj/IFCachedTextRenderer.m: Renamed to IFTextRenderer.
	* WebCoreSupport.subproj/IFCachedTextRendererFactory.h: Renamed to IFTextRendererFactory.
	* WebCoreSupport.subproj/IFCachedTextRendererFactory.m: Renamed to IFTextRendererFactory.
	* WebCoreSupport.subproj/IFTextRenderer.h: Renamed from IFCachedTextRenderer.
	* WebCoreSupport.subproj/IFTextRenderer.m: Renamed from IFCachedTextRenderer.
	* WebCoreSupport.subproj/IFTextRendererFactory.h: Renamed from IFCachedTextRendererFactory.
	* WebCoreSupport.subproj/IFTextRendererFactory.m: Renamed from IFCachedTextRendererFactory.
	Renamed to take "Cached" out of the name now that the simpler name is
	available.

	* WebView.subproj/IFWebView.mm:
	(-[IFWebView initWithFrame:]): Create shared IFWebCoreViewFactory.
	(-[IFWebView delayLayout:]): Use WEBKITDEBUG, not KWQDEBUG.
	(-[IFWebView notificationReceived:]): Use WEBKITDEBUG, not KWQDEBUG.

2002-05-07  Darin Adler  <darin@apple.com>

	Use isEqualToString: instead of isEqual: more consistently. But only for strings.

	* WebCoreSupport.subproj/IFCachedTextRendererFactory.m:
	(-[IFFontCacheKey isEqual:]):
	* WebView.subproj/IFBaseWebController.mm:
	(-[IFBaseWebController _frameNamed:fromFrame:]):

2002-05-06  John Sullivan  <sullivan@apple.com>

	Some improvements to the bookmark changed notifications.

	* Bookmarks.subproj/IFBookmarkGroup.h:
	* Bookmarks.subproj/IFBookmarkGroup.m:
	(-[IFBookmarkGroup _sendChangeNotificationForBookmark:childrenChanged:]):
	(-[IFBookmarkGroup _setTopBookmark:]):
	(-[IFBookmarkGroup _bookmarkDidChange:]):
	(-[IFBookmarkGroup _bookmarkChildrenDidChange:]):
	Send bookmark that changed and whether its children changed as part of
	change notifications, so clients can choose to do less unnecessary work.

	* Bookmarks.subproj/IFBookmarkLeaf.m:
	(-[IFBookmarkLeaf setTitle:]): Check for the no-change case
	and bail out without sending notification when you find it.

2002-05-06  Darin Adler  <darin@apple.com>

	* WebKitPrefix.h: Added.
	* WebKit.pbproj/project.pbxproj: Use PFE precompiling.
	Also switch from xNDEBUG to NDEBUG.

	* Misc.subproj/WebKitDebug.h: Get rid of format attribute because of bug
	2920557. Switch from xNDEBUG to NDEBUG.

	* Misc.subproj/WebKitDebug.m:
	Add undef to work around PFE problem with inline functions, Radar 2920554.

	* Plugins.subproj/IFPluginView.mm: Changed how we work around the bug in
	the CGS defines.

	* WebCoreSupport.subproj/IFCachedTextRenderer.h: Change include of the
	private QD header to use the form that works with more-normal way of
	getting at the private bits of frameworks.

	* WebCoreSupport.subproj/IFCachedTextRenderer.m: Use the header
	<CoreGraphics/CoreGraphicsPrivate.h> instead of <CoreGraphics/CGFontPrivate.h>.

	* Misc.subproj/IFCache.mm:
	* WebView.subproj/IFLoadProgress.mm:
	* WebView.subproj/IFWebFrame.mm:
	* WebView.subproj/IFWebFramePrivate.mm:
	* WebView.subproj/IFWebView.mm:
	Changed includes to imports.

2002-05-06  Chris Blumenberg  <cblu@apple.com>

	Made start and stop work cleaner. 

	Now observe defaults changes so that plug-ins
	are disabled or enabled immediately (2871725). 

	* Plugins.subproj/IFPluginNullEventSender.m:
	(-[IFPluginNullEventSender sendNullEvents]):
	* Plugins.subproj/IFPluginView.h:
	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
	(-[IFPluginView start]):
	(-[IFPluginView stop]):
	(-[IFPluginView drawRect:]):
	(-[IFPluginView windowWillClose:]):
	(-[IFPluginView defaultsHaveChanged:]):

2002-05-06  Richard J. Williamson  <rjw@apple.com>

        Fixed width measurement regression.  We lost the final ROUND_TO_INT
        in the width measurement funtion after the move from WebCore.
        
	* WebCoreSupport.subproj/IFCachedTextRenderer.m:
	(-[IFCachedTextRenderer widthForCharacters:length:]):

2002-05-06  Richard J. Williamson  <rjw@apple.com>

        Changes to support dhtml.
        
	* WebView.subproj/IFWebView.mm:

2002-05-06  John Sullivan  <sullivan@apple.com>

	* Resources/url_icon.tiff: New bookmarks/history icon, looks
	more like the springy @ sign as seen from above, less like text.

2002-05-03  John Sullivan  <sullivan@apple.com>

	Along with small corresponding WebBrowser change,	
	fixed 2919172 (Bookmarks aren't saved between sessions).

	* Bookmarks.subproj/IFBookmark_Private.h: Declarations for new private methods.
	* Bookmarks.subproj/IFBookmark.m:
	(-[IFBookmark _numberOfDescendants]): New private method, counts deep; used
	only for debugging messages at this time.
	(-[IFBookmark _initFromDictionaryRepresentation:withGroup:]):
	(-[IFBookmark _dictionaryRepresentation]): New private methods used to save/load
	bookmarks. Stub	implementations; subclasses must implement.

	* Bookmarks.subproj/IFBookmarkLeaf.m:
	(-[IFBookmarkLeaf _initFromDictionaryRepresentation:withGroup:]):
	(-[IFBookmarkLeaf _dictionaryRepresentation]): New methods.

	* Bookmarks.subproj/IFBookmarkList.m:
	(-[IFBookmarkList _initFromDictionaryRepresentation:withGroup:]):
	(-[IFBookmarkList _dictionaryRepresentation]):
	(-[IFBookmarkList _numberOfDescendants]):
	New methods.
	(-[IFBookmarkList _setGroup:]): Recurse on children.

	* Bookmarks.subproj/IFBookmarkGroup.h: New _loading instance variable.

	* Bookmarks.subproj/IFBookmarkGroup.m:
	(-[IFBookmarkGroup _setTopBookmark:]): Renamed from _resetTopBookmark,
	now has potentially non-nil argument.
	(-[IFBookmarkGroup initWithFile:]),
	(-[IFBookmarkGroup removeBookmark:]): Updated for name change.
	(-[IFBookmarkGroup _sendBookmarkGroupChangedNotification]):
	Don't send notifications while loading bookmarks from disk.
	(-[IFBookmarkGroup _loadBookmarkGroupGuts]),
	(-[IFBookmarkGroup loadBookmarkGroup]),
	(-[IFBookmarkGroup _saveBookmarkGroupGuts]),
	(-[IFBookmarkGroup saveBookmarkGroup]): New methods, load/save bookmarks
	and report timings.

	* History.subproj/IFURIEntry.m:
	(-[IFURIEntry dictionaryRepresentation]),
	(-[IFURIEntry initFromDictionaryRepresentation:]): Handle nil URL
	case, which bookmarks run into.

	* WebKit.pbproj/project.pbxproj: version wars

2002-05-03  Darin Adler  <darin@apple.com>

	* WebCoreSupport.subproj/IFCachedTextRenderer.m: Remove some of the unused code.
	I was going to wait and let Richard do it next week, but I was unable to control
	my urge to hack on it.

2002-05-03  Darin Adler  <darin@apple.com>

	* Resources/url_icon.tiff: Improved icon. Could be better.

2002-05-03  Darin Adler  <darin@apple.com>

	* Misc.subproj/WebKitDebug.h: Add WEBKIT_LOG_MEMUSAGE, WEBKIT_LOG_FONTCACHE, and
	WEBKIT_LOG_FONTCACHECHARMISS for font code moved here from WebCore.

	* Resources/url_icon.tiff: New URL icon?

	* WebCoreSupport.subproj/IFCachedTextRenderer.h: Added.
	* WebCoreSupport.subproj/IFCachedTextRenderer.m: Added.
	* WebCoreSupport.subproj/IFCachedTextRendererFactory.h: Added.
	* WebCoreSupport.subproj/IFCachedTextRendererFactory.m: Added.
	This has code moved here from WebCore.

	* WebKit.pbproj/project.pbxproj: Add the new source files.

	* Bookmarks.subproj/IFBookmarkLeaf.m:
	(-[IFBookmarkLeaf setURLString:]): Use copy instead of initWithString.
	* Bookmarks.subproj/IFBookmarkList.m:
	(-[IFBookmarkList initWithTitle:image:group:]): Use copy instead of stringWithString.
	(-[IFBookmarkList setTitle:]): Use copy instead of stringWithString.
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _setTitle:]):
	Use mutableCopy instead of stringWithString.
	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]): Use copy instead
	of stringWithString.

2002-05-02  John Sullivan  <sullivan@apple.com>

	Changed API such that mutating methods can now be called on bookmark objects,
	which in turn tell their group that they have changed (so the group can send
	out notifications).

	* Bookmarks.subproj/IFBookmark.h:
	* Bookmarks.subproj/IFBookmark.m:
	(-[IFBookmark setTitle:]):
	(-[IFBookmark setImage:]):
	(-[IFBookmark setURLString:]):
	(-[IFBookmark insertChild:atIndex:]):
	(-[IFBookmark removeChild:]):
	(-[IFBookmark _parent]):
	(-[IFBookmark _group]):
	* Bookmarks.subproj/IFBookmarkGroup.h:
	* Bookmarks.subproj/IFBookmarkGroup.m:
	(-[IFBookmarkGroup _resetTopBookmark]):
	(-[IFBookmarkGroup _bookmarkDidChange:]):
	(-[IFBookmarkGroup _bookmarkChildrenDidChange:]):
	(-[IFBookmarkGroup removeBookmark:]):
	(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:image:URLString:isLeaf:]):
	* Bookmarks.subproj/IFBookmarkLeaf.m:
	(-[IFBookmarkLeaf setTitle:]):
	(-[IFBookmarkLeaf setImage:]):
	(-[IFBookmarkLeaf setURLString:]):
	* Bookmarks.subproj/IFBookmarkList.m:
	(-[IFBookmarkList setTitle:]):
	(-[IFBookmarkList setImage:]):
	(-[IFBookmarkList removeChild:]):
	(-[IFBookmarkList insertChild:atIndex:]):
	* Bookmarks.subproj/IFBookmark_Private.h:
	Made _parent and _group private; made setTitle, setImage, setURLString,
	insertChild:atIndex:, and removeChild: public.

	* Bookmarks.subproj/IFBookmarkGroup_Private.h: Added.
	* WebKit.pbproj/project.pbxproj: Changed for new file.

2002-05-02  John Sullivan  <sullivan@apple.com>

	Implemented removing the root node bookmark (i.e.,
	removing all bookmarks with one call).

	* Bookmarks.subproj/IFBookmarkGroup.m:
	(-[IFBookmarkGroup _resetTopBookmark]): New method, releases
	old topBookmark and creates new one.
	(-[IFBookmarkGroup initWithFile:]): Call _resetTopBookmark.
	(-[IFBookmarkGroup removeBookmark:]): If the bookmark being
	removed is the top one, call _resetTopBookmark.

2002-05-02  John Sullivan  <sullivan@apple.com>

	Some more implementation of bookmarks code, enough to support
	adding bookmarks to the Bookmarks menu (but not yet enough to
	support persistent bookmarks).

	* Bookmarks.subproj/IFBookmark_Private.h:
	* Bookmarks.subproj/IFBookmark.h:
	* Bookmarks.subproj/IFBookmark.m:
	(-[IFBookmark numberOfChildren]): New public method, stub implementation.
	(-[IFBookmark _removeChild:]): New private method, stub implementation.

	* Bookmarks.subproj/IFBookmarkGroup.h:
	* Bookmarks.subproj/IFBookmarkGroup.m:
	(-[IFBookmarkGroup _sendBookmarkGroupChangedNotification]):
	(-[IFBookmarkGroup removeBookmark:]):
	(-[IFBookmarkGroup addNewBookmarkToBookmark:withTitle:image:URLString:isLeaf:]):
	(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:image:URLString:isLeaf:]):
	(-[IFBookmarkGroup updateBookmark:title:image:URLString:]):
	Changed "URL" to "URLString" in several places, added a "with"
	to some parameter names; added addNewBookmarkToBookmark public 
	method; added notification that's sent when bookmarks are added or removed.

	* Bookmarks.subproj/IFBookmarkLeaf.h:
	* Bookmarks.subproj/IFBookmarkLeaf.m:
	(-[IFBookmarkLeaf initWithURLString:title:image:group:]):
	Added image parameter.

	* Bookmarks.subproj/IFBookmarkList.m:
	(-[IFBookmarkList numberOfChildren]): New method.
	(-[IFBookmarkList _removeChild:]): Implemented.

2002-04-30  John Sullivan  <sullivan@apple.com>

	Added initial set of files/API and some of the code for
	bookmarks support. Nobody calls it yet, but it compiles.
	I wanted to get this in before I ran into project file
	merge conflicts.

	* Bookmarks.subproj/IFBookmark.h: Added.
	* Bookmarks.subproj/IFBookmark_Private.h: Added.
	* Bookmarks.subproj/IFBookmark.m: Added.
	(-[IFBookmark dealloc]):
	(-[IFBookmark title]):
	(-[IFBookmark _setTitle:]):
	(-[IFBookmark image]):
	(-[IFBookmark _setImage:]):
	(-[IFBookmark isLeaf]):
	(-[IFBookmark URLString]):
	(-[IFBookmark _setURLString:]):
	(-[IFBookmark children]):
	(-[IFBookmark _insertChild:atIndex:]):
	(-[IFBookmark parent]):
	(-[IFBookmark _setParent:]):
	(-[IFBookmark group]):
	(-[IFBookmark _setGroup:]):
	* Bookmarks.subproj/IFBookmarkGroup.h: Added.
	* Bookmarks.subproj/IFBookmarkGroup.m: Added.
	(+[IFBookmarkGroup bookmarkGroupWithFile:]):
	(-[IFBookmarkGroup initWithFile:]):
	(-[IFBookmarkGroup dealloc]):
	(-[IFBookmarkGroup topBookmark]):
	(-[IFBookmarkGroup insertBookmark:atIndex:ofBookmark:]):
	(-[IFBookmarkGroup removeBookmark:]):
	(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:title:image:URL:isLeaf:]):
	(-[IFBookmarkGroup updateBookmark:title:image:URL:]):
	(-[IFBookmarkGroup file]):
	(-[IFBookmarkGroup loadBookmarkGroup]):
	(-[IFBookmarkGroup saveBookmarkGroup]):
	* Bookmarks.subproj/IFBookmarkLeaf.h: Added.
	* Bookmarks.subproj/IFBookmarkLeaf.m: Added.
	(-[IFBookmarkLeaf dealloc]):
	(-[IFBookmarkLeaf title]):
	(-[IFBookmarkLeaf _setTitle:]):
	(-[IFBookmarkLeaf image]):
	(-[IFBookmarkLeaf _setImage:]):
	(-[IFBookmarkLeaf isLeaf]):
	(-[IFBookmarkLeaf URLString]):
	(-[IFBookmarkLeaf _setURLString:]):
	* Bookmarks.subproj/IFBookmarkList.h: Added.
	* Bookmarks.subproj/IFBookmarkList.m: Added.
	(-[IFBookmarkList initWithTitle:image:group:]):
	(-[IFBookmarkList dealloc]):
	(-[IFBookmarkList title]):
	(-[IFBookmarkList _setTitle:]):
	(-[IFBookmarkList image]):
	(-[IFBookmarkList _setImage:]):
	(-[IFBookmarkList isLeaf]):
	(-[IFBookmarkList children]):
	(-[IFBookmarkList _insertChild:atIndex:]):

	* WebKit.pbproj/project.pbxproj: Updated for new files.

2002-04-29  Richard Williamson  <rjw@apple.com>

        Fix to 2915688.  I wasn't checking if the main document error had an error, only
        the resource errors.
        
	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFrame _isLoadComplete]):

2002-04-29  Richard Williamson  <rjw@apple.com>

        Restored file, line, and function to log messages.
        
	* Misc.subproj/WebKitDebug.m:
	(WebKitLog):

2002-04-25  Darin Adler  <darin@apple.com>

	* History.subproj/IFWebHistoryPrivate.m:
	(-[IFWebHistoryPrivate _loadHistoryGuts:]): Use NSDictionary instead
	of NSObject to avoid a cast.

	* WebView.subproj/IFLocationChangeHandler.h: Add NSObject as a required
	protocol so we can retain and release.
	* WebView.subproj/IFWebController.h: Add NSObject as a required protocol
	so we can retain and release.

	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSourcePrivate dealloc]):
	(-[IFWebDataSource _setLoading:]):
	(-[IFWebDataSource _setController:]):
	(-[IFWebDataSource _setLocationChangeHandler:]):
	* WebView.subproj/IFWebViewPrivate.mm:
	(-[IFWebViewPrivate dealloc]):
	Removed NSObject * casts that were used to work around the problem fixed above.

2002-04-25  Chris Blumenberg  <set EMAIL_ADDRESS environment variable>

	* MIME.subproj/IFDownloadHandler.h:
	* MIME.subproj/IFDownloadHandler.mm:
	(+[IFDownloadHandler launchURL:]):

	Added the above method as a way to universally launch an URL
	within WebKit

	* WebView.subproj/IFBaseWebController.mm:
	(-[IFBaseWebController URLPolicyForURL:]):

	We handle http, https and file URL's

	* WebView.subproj/IFWebDataSource.mm:
	(-[IFWebDataSource initWithURL:]):
	(-[IFWebDataSource startLoading:]):

	The IFURLHandle is now lazilly allocated.

	* WebView.subproj/IFWebFrame.mm:
	(-[IFWebFrame setProvisionalDataSource:]):

	We only load a data source if the URL policy is IFURLPolicyUseContentPolicy

2002-04-25  Richard Williamson  <rjw@apple.com>

        Fixed problem with errors potentially being reported on
        wrong data source by moving collected errors from frame
        to datasource.
        
        Little changes in preparation for events.
        
	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]):
	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
	(-[IFBaseWebController _receivedError:forResource:partialProgress:fromDataSource:]):
	(-[IFBaseWebController _mainReceivedError:forResource:partialProgress:fromDataSource:]):
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm:
	(-[IFWebDataSource errors]):
	(-[IFWebDataSource mainDocumentError]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSourcePrivate dealloc]):
	(-[IFWebDataSource _startLoading:]):
	(-[IFWebDataSource _setMainDocumentError:]):
	(-[IFWebDataSource _clearErrors]):
	(-[IFWebDataSource _addError:forResource:]):
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.mm:
	(-[IFWebFrame reload:]):
	(-[IFWebFrame reset]):
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm:
	(-[IFWebFramePrivate dealloc]):
	(-[IFWebFrame _isLoadComplete]):
	(-[IFWebFrame _checkLoadComplete]):
	* WebView.subproj/IFWebView.mm:
	(-[IFWebView acceptsFirstResponder]):
	(-[IFWebView layout]):
	(-[IFWebView drawRect:]):

2002-04-25  Darin Adler  <darin@apple.com>

	Rework plugin code to prepare to move more of here from WebCore.

	* Plugins.subproj/IFPluginView.mm:
	(IFPluginViewCreate): New. Does all the work of creating an NSView
	for a plug-in, including stuff previously done in WebCore.
	(IFJavaAppletViewCreate): Same as above, for Java applets.
	(+[IFPluginView load]): Set up the function pointers using the new
	improved WebCore API.

	* Plugins.subproj/IFNullPluginView.mm:
	(-[IFNullPluginView load]): Remove this setup because now there's
	no separate call to set up a null plug-in.

2002-04-25  John Sullivan  <sullivan@apple.com>

	Fixed 2911915 (Exception in -[IFWebView mouseMoved])

	* WebView.subproj/IFWebView.mm:
	(-[IFWebView mouseDown:]): Changed "mouseUp" to "mouseDown"
	in exception message.

	(-[IFWebView mouseMoved:]): Removed bogus event-type checking
	that caused this method to (always?) throw an exception when
	invoked.

2002-04-24  Chris Blumenberg  <cblu@apple.com>

	Renamed [IFWebDataSource frame] to [IFWebDataSource webFrame]

	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]):
	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
	(-[IFBaseWebController _receivedError:forResource:partialProgress:fromDataSource:]):
	(-[IFBaseWebController _mainReceivedError:forResource:partialProgress:fromDataSource:]):
	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm:
	(-[IFWebDataSource webFrame]):
	(-[IFWebDataSource frameName]):
	(-[IFWebDataSource isLoading]):
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSource _startLoading:]):
	(-[IFWebDataSource _setTitle:]):

2002-04-24  Richard Williamson  <rjw@apple.com>

        Changed ordering of messages so activity viewer doesn't get -1 bytesSoFar
        for cancelled messages.
        
	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]):
	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):

=== Alexander 0.3c2 (v1) ===

2002-04-23  Chris Blumenberg  <cblu@apple.com>

	* WebKit.pbproj/project.pbxproj:

	Took IFDownloadHandler.h out of the public headers.

	* WebView.subproj/IFLocationChangeHandler.h:

	Removed deprecated methods.

	* WebView.subproj/IFWebFrame.mm:
	(-[IFWebFrame setProvisionalDataSource:]):

	Don't call locationChangeStarted anymore.

2002-04-23  Chris Blumenberg  <cblu@apple.com>

	* MIME.subproj/IFDownloadHandler.h:
	* MIME.subproj/IFDownloadHandler.m: Removed.
	* MIME.subproj/IFDownloadHandler.mm: Added.
	(-[IFDownloadHandler initWithDataSource:]):
	(-[IFDownloadHandler dealloc]):
	* MIME.subproj/IFDownloadHandlerPrivate.h: Removed.
	* MIME.subproj/IFDownloadHandlerPrivate.m: Removed.

	Made IFDownloadHandler a private class that retains the data source
	and saves the data to disk.

	* WebKit.pbproj/project.pbxproj:

	Removed IFDownloadHandlerPrivate

	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):

	Only send locationChangeCommitted if its shown inline.

	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
	
	Save data with IFDownloadHandler

	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	
	If its a download, set the provisionalDataSource on the frame to nil.	

	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm:
	(-[IFWebDataSource webFrame]):
	(-[IFWebDataSource pageTitle]):
	(-[IFWebDataSource contentPolicy]):

	Added some accessor methods. Spelling fix pageTitle.

2002-04-23  Kenneth Kocienda  <kocienda@apple.com>

        Reviewed by: Darin Adler

        Fix for Radar 2908403 (Fix names in WebFoundation extensions code)

        Extensions code in WebFoundation now is in its own namespace.
        Where we have added categories to existing Foundation and AppKit
        classes, the categories begin with the IF prefix. All method names
        begin with the _IF_ prefix.

        This file here was changed to use the new names.

	* History.subproj/IFWebHistoryPrivate.m:
	(-[IFWebHistoryPrivate findIndex:forDay:]):
	(-[IFWebHistoryPrivate arrayRepresentation]):
	(-[IFWebHistoryPrivate _loadHistoryGuts:]):

2002-04-22  Chris Blumenberg  <cblu@apple.com>

	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):

	Send an IFError when we're asked to show content we can't handle.

	* WebView.subproj/IFWebDataSourcePrivate.mm:

	Cleaning

2002-04-22  Chris Blumenberg  <cblu@apple.com>

	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFBaseWebController.mm:
	(-[IFBaseWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm:

	Fixed frames which I broke in the previous commit. We now set the content policy
	on all child frames instead of just the main frame.	

2002-04-22  Chris Blumenberg  <cblu@apple.com>

	* MIME.subproj/IFMIMEHandler.h:
	* MIME.subproj/IFMIMEHandler.m:
	(+[IFMIMEHandler showableMIMETypes]):
	(+[IFMIMEHandler saveFileWithPath:andData:]):
	(+[IFMIMEHandler saveAndOpenFileWithPath:andData:]):

	Added the above factory methods.

	* WebView.subproj/IFBaseWebController.mm:
	(-[IFBaseWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
	
	Save the content policy and download path on the datasource.

	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
	
	Made IFMainURLHandleClient use our new content policy API rather than
	IFDownloadHandler.
	
	* WebView.subproj/IFWebController.h:

	Removed some deprecated methods.

	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSource _downloadPath]):
	(-[IFWebDataSource _setDownloadPath:]):
	(-[IFWebDataSource _contentPolicy]):
	(-[IFWebDataSource _setContentPolicy:]):

	Added the above methods.

2002-04-22  Darin Adler  <darin@apple.com>

	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
	Fix the fix. It was bumping argsCount even when not putting an
	argument into the array.

2002-04-21  Maciej Stachowiak  <mjs@apple.com>

	Fix a plugins memory trasher that was making Alexander crash on
	the abcnews.com test page in cvs-torture-test:

	* Plugins.subproj/IFPluginView.mm:
	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
	Use a new maxArguments variable to size the argument and value
	arrays - with the old code argsCount would end up twice the size
	it should be, and the arguments would all get written past the end
	of the argument array.

2002-04-19  Kenneth Kocienda  <kocienda@apple.com>

        Changes to support submission of forms using HTTP POST.

        These changes move us over to using the new WebKit interface for creating 
        WebDataSource instances, one that passes a handle rather than just a URL, 
        enabling the specific request method to be communicated to WebFoundation.
        This fixes:

        Radar 2903602 (IFWebDataSource API must passes attributes and flags to IFURLHandle)

	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm: (IFWebDataSourceMake), (-[IFWebDataSource
	initWithURL:]), (-[IFWebDataSource initWithHandle:]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _startLoading:]):

2002-04-19  Richard Williamson  <rjw@apple.com>

        Updated comments to reflect new API.
        
	* WebView.subproj/IFLocationChangeHandler.h:

2002-04-19  Darin Adler  <darin@apple.com>

	* Plugins.subproj/IFPluginView.h: Re-add the attributes and values arrays,
	since they need to live the life of the plugin.
	* Plugins.subproj/IFPluginView.mm: (newCString): New function to make a C++
	new-allocated C string from an NSString.
	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]): Move code
	to allocate the arrays back here.
	(-[IFPluginView dealloc]): Deallocate the arrays and their contents.
	(-[IFPluginView start]): Simplify now that it does no work.

2002-04-18  Chris Blumenberg  <cblu@apple.com>

	Made stop and start to work better. Fixed a bug darin made.
	
	* Plugins.subproj/IFPluginView.h:
	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
	initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView setWindow]),
	(-[IFPluginView start]), (-[IFPluginView stop]):

2002-04-18  Richard Williamson  <rjw@apple.com>

        Fixed typo.

	* WebView.subproj/IFBaseLocationChangeHandler.m: (-[IFBaseLocationChangeHandler
	requestContentPolicyForMIMEType:]):
	* WebView.subproj/IFLocationChangeHandler.h:

2002-04-18  Richard Williamson  <rjw@apple.com>

        New API stubs for content policy.
        
	* WebView.subproj/IFBaseLocationChangeHandler.h: Added.
	* WebView.subproj/IFBaseLocationChangeHandler.m: Added.
	 (+[IFBaseLocationChangeHandler setGlobalContentPolicy:forMIMEType:]),
	(+[IFBaseLocationChangeHandler globaContentPolicyForContentType:]),
	(+[IFBaseLocationChangeHandler globalContentPolicies]),
	(+[IFBaseLocationChangeHandler suggestedFileanemForURL:andContentType:]),
	(+[IFBaseLocationChangeHandler suggestedDirectoryForURL:andContentType:]),
	(+[IFBaseLocationChangeHandler extensionForURL:]), (-[IFBaseLocationChangeHandler
	extension]), (-[IFBaseLocationChangeHandler locationWillChangeTo:]),
	(-[IFBaseLocationChangeHandler locationChangeStarted]),
	(-[IFBaseLocationChangeHandler locationChangeCommitted]),
	(-[IFBaseLocationChangeHandler locationChangeDone:]),
	(-[IFBaseLocationChangeHandler receivedPageTitle:forDataSource:]),
	(-[IFBaseLocationChangeHandler serverRedirectTo:forDataSource:]),
	(-[IFBaseLocationChangeHandler downloadingWithHandler:]),
	(-[IFBaseLocationChangeHandler requestContentPolicyForContentMIMEType:]),
	(-[IFBaseLocationChangeHandler unableToImplementContentPolicy:]):
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	receivedError:forDownloadHandler:partialProgress:]), (-[IFBaseWebController
	provideLocationChangeHandlerForFrame:andURL:]), (-[IFBaseWebController
	URLPolicyForURL:]), (-[IFBaseWebController
	unableToImplementURLPolicyForURL:error:]), (-[IFBaseWebController
	haveContentPolicy:andPath:forLocationChangeHandler:]):
	* WebView.subproj/IFLocationChangeHandler.h:
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _setState:]):

2002-04-18  Darin Adler  <darin@apple.com>

	* WebKit.pbproj/project.pbxproj: Oops. Take out -Wstrict-prototypes, put back
	-Wmissing-prototypes.

2002-04-18  Darin Adler  <darin@apple.com>

	* WebKit.pbproj/project.pbxproj: Take out -Wmissing-prototypes
	because system headers are triggering it when we don't have
	precompiled headers on.

2002-04-18  Darin Adler  <darin@apple.com>

	Fixes for compiling with gcc3 and more warnings.

	* WebKit.pbproj/project.pbxproj: Turn on gcc3 and the same set of warnings
	as in the rest of Labyrinth (see top level ChangeLog for details).

	* Plugins.subproj/IFPluginView.mm:
	Avoid warnings about malloc by not using it.
	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]): Keep the arguments
	dictionary around instead of keeping the C format version of it around. Also don't
	bother keeping the C string form of the MIME type around, and simplify some other
	stuff in here.
	(-[IFPluginView dealloc]): Corresponding changes since we keep a different set of things.
	(-[IFPluginView newStream:mimeType:notifyData:]): Use [mimeType cString].
	(-[IFPluginView start]): Build the lists of attributes and values in here. Do it using
	[NSString cString] for simplicity and don't keep the lists around after we're done with
	them.
	(-[IFPluginView IFURLHandleResourceDidFinishLoading:data:]): Use [filenameClassic cString].

	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]),
	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]),
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]),
	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
	(-[IFWebDataSource _setLoading:]), (-[IFWebDataSource _setController:]),
	(-[IFWebDataSource _setLocationChangeHandler:]):
	* WebView.subproj/IFWebView.mm: (-[IFWebView provisionalDataSourceChanged:]),
	(-[IFWebView mouseUp:]), (-[IFWebView mouseDown:]):
	Add type casts required by pickier gcc3.

	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebViewPrivate dealloc]):
	Add type cast required by pickier gcc3.
	(-[IFWebView _stopPlugins]): Use local variable to work around Radar 2905835.

2002-04-18  Chris Blumenberg  <cblu@apple.com>

	Moved plugin instance creation to the start method in IFPluginView.

	* Plugins.subproj/IFPluginView.h:
	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
	initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView dealloc]),
	(-[IFPluginView newStream:mimeType:notifyData:]), (-[IFPluginView start]),
	(-[IFPluginView stop]), (-[IFPluginView drawRect:]), (-[IFPluginView
	windowBecameKey:]), (-[IFPluginView windowResignedKey:]), (-[IFPluginView
	IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFPluginView
	IFURLHandleResourceDidFinishLoading:data:]):
	

2002-04-17  Darin Adler  <darin@apple.com>

	* WebKit.pbproj/project.pbxproj: Update header search paths to find
	WebCore in the new location and eliminate WebCore/include.

2002-04-17  Chris Blumenberg  <cblu@apple.com>

	Added a debug bit mask for plugins and downloads.

	* MIME.subproj/IFDownloadHandlerPrivate.m: (-[IFDownloadHandlerPrivate
	_openFile]), (-[IFDownloadHandlerPrivate _saveFile]), (-[IFDownloadHandler
	_initWithURLHandle:mimeHandler:]):
	* Misc.subproj/WebKitDebug.h:
	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
	initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView setWindow]),
	(-[IFPluginView newStream:mimeType:notifyData:]), (-[IFPluginView stop]),
	(-[IFPluginView sendUpdateEvent]), (-[IFPluginView becomeFirstResponder]),
	(-[IFPluginView resignFirstResponder]), (-[IFPluginView mouseDown:]),
	(-[IFPluginView mouseUp:]), (-[IFPluginView mouseEntered:]), (-[IFPluginView
	mouseExited:]), (-[IFPluginView keyUp:]), (-[IFPluginView keyDown:]),
	(-[IFPluginView IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFPluginView
	IFURLHandleResourceDidFinishLoading:data:]), (-[IFPluginView
	getURLNotify:target:notifyData:]), (-[IFPluginView getURL:target:]),
	(-[IFPluginView postURLNotify:target:len:buf:file:notifyData:]), (-[IFPluginView
	postURL:target:len:buf:file:]), (-[IFPluginView newStream:target:stream:]),
	(-[IFPluginView write:len:buffer:]), (-[IFPluginView destroyStream:reason:]),
	(-[IFPluginView status:]), (-[IFPluginView getValue:value:]), (-[IFPluginView
	setValue:value:]), (-[IFPluginView invalidateRect:]), (-[IFPluginView
	invalidateRegion:]), (-[IFPluginView forceRedraw]):
	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
	IFURLHandle:resourceDataDidBecomeAvailable:]):

2002-04-17  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]):
	Changed another Georgia that I missed to Times New Roman.

2002-04-16  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFWebDataSource.mm:
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	Touch these files to try to make Jersey build again.

2002-04-16  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFBaseWebControllerPrivate.mm: Include khtml_part.h instead
	of KWQKHTMLPart.h.

	* WebView.subproj/IFWebFrame.mm: Include khtml_part.h instead of KWQKHTMLPart.h.

	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource documentTextFromDOM]):
	Remove an unneeded cast and an extra retain/autorelease.

2002-04-16  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.mm:
	* WebView.subproj/IFWebFramePrivate.h:
	Change view/setView back to be id, rather than IFWebView.
	In the future, the view may be some other kind of object.

2002-04-16  John Sullivan  <sullivan@apple.com>

	Fixed bug Chris noticed where Alexander wasn't putting up
	an error sheet on failed page visits.

	* WebView.subproj/IFWebFramePrivate.mm: 
	(-[IFWebFrame _isLoadComplete]): Don't set provisionalDataSource
	to nil until after sending it locationChangeDone.

2002-04-16  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFBaseWebController.mm: Remove special release handling because
	data sources now retain the controller as long as they are loading.

	* WebView.subproj/IFWebDataSource.mm: Remove special release handling because
	data sources now retain themselves as long as they are loading.

	* WebView.subproj/IFWebFrame.mm: Remove special release handling, because
	data sources now retain the controller as long as they are loading, and the
	controller retains the frame.

	* WebView.subproj/IFWebDataSourcePrivate.h: Add a "loading" boolean.
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _setLoading:]):
	Change the "loading" state, retaining or releasing this object and the controller
	as necessary.
	(-[IFWebDataSource _updateLoading]): Update the loading state; called when
	some part of loading is done to see if it's all done.
	(-[IFWebDataSource _setController:]): Retain the new controller and release the
	old controller when loading.
	(-[IFWebDataSource _setPrimaryLoadComplete:]): Call _updateLoading.
	(-[IFWebDataSource _startLoading:]): Call _setLoading:YES.
	(-[IFWebDataSource _addURLHandle:]): Call _setLoading:YES.
	(-[IFWebDataSource _removeURLHandle:]): Call _updateLoading.

	* WebView.subproj/IFWebFrame.h: Use the real type, IFWebView, for setView and view.
	* WebView.subproj/IFWebFramePrivate.h: Formatting tweak.
	* WebKit.pbproj/project.pbxproj: Version wars.

2002-04-16  John Sullivan  <sullivan@apple.com>

	* WebView.subproj/IFWebViewPrivate.mm: 
	(-[IFWebView _setController:]): removed a mistaken
	retain/release pair here for Darin.

2002-04-16  Darin Adler  <darin@apple.com>

	Change default font to "Times New Roman 11" rather than
	"Georgia 12" to be more like Macintosh Internet Explorer.

	* WebView.subproj/IFPreferences.mm:

	A little simplifying of private pointers.

	* MIME.subproj/IFDownloadHandler.h:
	* MIME.subproj/IFDownloadHandler.m:

2002-04-16  Darin Adler  <darin@apple.com>

	A little simplifying of private pointers.

	* MIME.subproj/IFDownloadHandler.m:
	* MIME.subproj/IFDownloadHandlerPrivate.m:
	* WebView.subproj/IFBaseWebController.mm:
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm:
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.mm:
	* WebView.subproj/IFWebFramePrivate.mm:
	* WebView.subproj/IFWebView.h:
	* WebView.subproj/IFWebView.mm:
	* WebView.subproj/IFWebViewPrivate.h:
	* WebView.subproj/IFWebViewPrivate.mm:

2002-04-16  Darin Adler  <darin@apple.com>

	Change headers so they don't include so much.
	Also change IF_LOAD_TYPE to IFLoadType.

	* History.subproj/IFBackForwardList.h:
	* History.subproj/IFBackForwardList.m:
	* History.subproj/IFURIEntry.h:
	* History.subproj/IFURIList.h:
	* History.subproj/IFURIList.m:
	* History.subproj/IFWebHistory.h:
	* History.subproj/IFWebHistoryPrivate.h:
	* History.subproj/IFWebHistoryPrivate.m:
	* MIME.subproj/IFContentHandler.h:
	* MIME.subproj/IFDownloadHandler.h:
	* MIME.subproj/IFDownloadHandlerPrivate.h:
	* MIME.subproj/IFDownloadHandlerPrivate.m:
	* MIME.subproj/IFMIMEDatabase.h:
	* MIME.subproj/IFMIMEDatabase.m:
	* Misc.subproj/IFException.h:
	* Plugins.subproj/IFNullPluginView.mm:
	* Plugins.subproj/IFPluginView.h:
	* Plugins.subproj/IFPluginView.mm:
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFBaseWebController.h:
	* WebView.subproj/IFBaseWebController.mm:
	* WebView.subproj/IFBaseWebControllerPrivate.h:
	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	* WebView.subproj/IFLoadProgress.h:
	* WebView.subproj/IFLoadProgress.mm:
	* WebView.subproj/IFLocationChangeHandler.h:
	* WebView.subproj/IFMainURLHandleClient.h:
	* WebView.subproj/IFMainURLHandleClient.mm:
	* WebView.subproj/IFPreferences.h:
	* WebView.subproj/IFPreferencesPrivate.h:
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm:
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.mm:
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm:
	* WebView.subproj/IFWebView.h:
	* WebView.subproj/IFWebView.mm:
	* WebView.subproj/IFWebViewPrivate.h:
	* WebView.subproj/IFWebViewPrivate.mm:

2002-04-16  Kenneth Kocienda  <kocienda@apple.com>

        Moved IFError class from WebKit to WebFoundation.
        Updated includes due to this change.
        Updated URL handle client interface to pass an IFError in
        an error callback rather than a plain int. The URL client was
        modified due to this change.

	* Misc.subproj/IFError.h: Removed.
	* Misc.subproj/IFError.m: Removed.
	* Plugins.subproj/IFPluginView.mm:
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
	IFURLHandle:resourceDidFailLoadingWithResult:]):
	* WebView.subproj/IFWebFramePrivate.mm:

2002-04-15  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFPreferences.h:
	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]): Remove the old
	WebKitFontSizes preference.
	(-[IFPreferences mediumFontSize]), (-[IFPreferences setMediumFontSize:]): New.

	* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]): Call
	updateStyleSelector() instead of recalcStyle().

2002-04-15  Darin Adler  <darin@apple.com>

        Merged changes from previous merge branch.

        2002-03-25  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]):
        Add WebKitMediumFontSizePreferenceKey.

2002-04-15  John Sullivan  <sullivan@apple.com>

	* Plugins.subproj/IFNullPluginView.mm: (-[IFNullPluginView drawRect:]):
	Moved a line of code to prevent pluginNotFound message from being
	sent twice.

2002-04-15  Richard Williamson  <rjw@apple.com>

        Changes to IFLocationChangeHandler.
        
        Experimental allocator code, not to be used, not thread safe.!
        
	* Misc.subproj/WebKitDebug.h:
	* Misc.subproj/WebKitDebug.m: (if_check_zone), (_debugAllocate),
	(_debugAllocatorInitialize), (printDebugMallocCounters), (if_cf_retain),
	(if_cf_release), (if_cf_alloc), (if_cf_realloc), (if_cf_dealloc),
	(if_cf_preferredSize), (setupDebugMalloc), (clearDebugMalloc),
	(resetDebugMallocCounters), (public_mALLOc), (public_fREe), (public_rEALLOc),
	(public_mEMALIGn), (public_vALLOc), (public_pVALLOc), (public_cALLOc),
	(public_iCALLOc), (public_iCOMALLOc), (public_cFREe), (public_mTRIm),
	(public_mUSABLe), (public_mSTATs), (public_mALLINFo), (public_mALLOPt),
	(do_check_malloc_state), (mALLINFo), (mSTATs), (if_size), (if_valloc),
	(if_malloc), (if_realloc), (if_calloc), (if_free):
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFBaseWebController.h:
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	provideLocationChangeHandlerForFrame:]):
	* WebView.subproj/IFLocationChangeHandler.h: Added.
	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
	IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFMainURLHandleClient
	IFURLHandle:didRedirectToURL:]):
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource load]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
	(-[IFWebDataSource _startLoading:]), (-[IFWebDataSource _setTitle:]),
	(-[IFWebDataSource _locationChangeHandler]), (-[IFWebDataSource
	_setLocationChangeHandler:]):
	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame setProvisionalDataSource:]):
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
	_transitionProvisionalToCommitted]), (-[IFWebFrame _isLoadComplete]):

2002-04-15  Chris Blumenberg  <set EMAIL_ADDRESS environment variable>

	* MIME.subproj/IFContentHandler.m: (-[IFContentHandler HTMLDocument]):

	Made sure I didn't unnecessarily allocate html document strings

	* MIME.subproj/IFDownloadHandler.h:
	* MIME.subproj/IFDownloadHandler.m: (-[IFDownloadHandler suggestedFilename]),
	(-[IFDownloadHandler openAfterDownload:]):

	Added the mentioned API's

	* MIME.subproj/IFDownloadHandlerPrivate.h:
	* MIME.subproj/IFDownloadHandlerPrivate.m: (-[IFDownloadHandlerPrivate init]),
	(-[IFDownloadHandlerPrivate dealloc]), (-[IFDownloadHandlerPrivate
	_suggestedFilename]), (-[IFDownloadHandlerPrivate _cancelDownload]),
	(-[IFDownloadHandlerPrivate _storeAtPath:]), (-[IFDownloadHandlerPrivate
	_finishedDownload]), (-[IFDownloadHandlerPrivate _openAfterDownload:]),
	(-[IFDownloadHandlerPrivate _openFile]), (-[IFDownloadHandlerPrivate _saveFile]),
	(-[IFDownloadHandler _initWithURLHandle:mimeHandler:]):

	Cleaned up and added a lot error checking code to IFDownloadHandlerPrivate

	* Plugins.subproj/IFNullPluginView.mm: (-[IFNullPluginView
	initWithFrame:mimeType:arguments:]), (-[IFNullPluginView drawRect:]):

	Made sure I didn't unnecessarily allocate images

	* Resources/plugin_document_template.html:

	Plugins now have 100% of the window

2002-04-12  Chris Blumenberg  <cblu@apple.com>

	Fixed build failure. Forgot to make IFDownloadHandler.h
	a public header.

	* WebKit.pbproj/project.pbxproj:

2002-04-12 Chris Blumenberg <cblu@apple.com>

	First implementation of IFDownloadHandler and IFDownloadHandlerPrivate.

2002-04-11  Chris Blumenberg  <cblu@apple.com>

	Added support for non-html content. Non-html content is embedded in a
	contrived HTML document.

	* English.lproj/IFError.strings:
	* MIME.subproj/IFContentHandler.h: Added.
	* MIME.subproj/IFContentHandler.m: Added.
	 (-[IFContentHandler initWithMIMEHandler:URL:]), (-[IFContentHandler
	HTMLDocument]), (-[IFContentHandler dealloc]):
	* MIME.subproj/IFMIMEDatabase.h:
	* MIME.subproj/IFMIMEDatabase.m: (-[IFMIMEDatabase MIMEHandlerForMIMEType:]),
	(setMimeHandlers):
	* MIME.subproj/IFMIMEHandler.h:
	* MIME.subproj/IFMIMEHandler.m: (-[IFMIMEHandler
	initWithMIMEType:handlerType:handlerName:]), (-[IFMIMEHandler description]):
	* Misc.subproj/IFError.h:
	* Misc.subproj/IFError.m: (+[IFError initialize]):
	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
	initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView dealloc]),
	(-[IFPluginView stop]):
	* Resources/plugin_document_template.html: Added.
	* Resources/text_document_template.html: Added.
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFMainURLHandleClient.h:
	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
	initWithDataSource:part:]), (-[IFMainURLHandleClient dealloc]),
	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]),
	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):

2002-04-10  Chris Blumenberg  <cblu@apple.com>

	Cleaned up stream deallocations.

	* Plugins.subproj/IFPluginStream.h:
	* Plugins.subproj/IFPluginStream.m: (-[IFPluginStream
	initWithURL:mimeType:notifyData:]), (-[IFPluginStream incrementOffset:]),
	(-[IFPluginStream dealloc]):
	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
	newStream:mimeType:notifyData:]), (-[IFPluginView
	IFURLHandleResourceDidCancelLoading:]), (-[IFPluginView
	IFURLHandle:resourceDidFailLoadingWithResult:]):

2002-04-10  John Sullivan  <sullivan@apple.com>

	Fixed 2891396 -- window fills with garbage if you resize or hide/show toolbar
	before loading first page

	* WebView.subproj/IFWebView.mm: (-[IFWebView drawRect:]):
	Made webview fill rect with white if there's no widget.

2002-04-09  Chris Blumenberg  <cblu@apple.com>

	* Plugins.subproj/IFPluginView.h:
	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
	initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView setWindow]),
	(-[IFPluginView newStream:mimeType:notifyData:]), (-[IFPluginView start]),
	(-[IFPluginView stop]), (-[IFPluginView dealloc]), (-[IFPluginView
	findSuperview:]), (-[IFPluginView sendUpdateEvent]), (-[IFPluginView drawRect:]),
	(-[IFPluginView isFlipped]), (-[IFPluginView viewHasMoved:]), (-[IFPluginView
	windowBecameKey:]), (-[IFPluginView windowResignedKey:]), (-[IFPluginView
	windowWillClose:]), (-[IFPluginView IFURLHandleResourceDidBeginLoading:]),
	(-[IFPluginView IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFPluginView
	IFURLHandleResourceDidFinishLoading:data:]), (-[IFPluginView
	IFURLHandleResourceDidCancelLoading:]), (-[IFPluginView
	IFURLHandle:resourceDidFailLoadingWithResult:]), (-[IFPluginView
	IFURLHandle:didRedirectToURL:]), (-[IFPluginView forceRedraw]), (IFPluginMake),
	(+[IFPluginView load]):
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFLoadProgress.h:

	Cleaned up the IFPluginView code. Moved a lot of things around. 

	Added support for plug-in file download progress.

2002-04-08  Chris Blumenberg  <cblu@apple.com>

	* Plugins.subproj/IFPluginView.h:
	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
	initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView drawRect:]),
	(-[IFPluginView newStream:mimeType:notifyData:]), (-[IFPluginView
	getURLNotify:target:notifyData:]):

	Support new stream requests from plug-ins that are relative URL's.

2002-04-08  Darin Adler  <darin@apple.com>

	* WebKit.pbproj/project.pbxproj: Re-added -Wno-format-y2k.

2002-04-08  Richard Williamson  <rjw@apple.com>

        Added logs for Shelley to note start and completion of document load.
        -WebKitLogLevel 0x1000.  Also, as a bonus, note time to load.
        
	* Misc.subproj/WebKitDebug.h:
	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame startLoading]):
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _setState:]):

2002-04-08  Chris Blumenberg  <cblu@apple.com>

	* Plugins.subproj/IFNullPluginView.h:
	* Plugins.subproj/IFNullPluginView.mm: (-[IFNullPluginView
	initWithFrame:mimeType:arguments:]), (-[IFNullPluginView drawRect:]):
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	pluginNotFoundForMIMEType:pluginPageURL:]):
	* WebView.subproj/IFWebController.h:

	Added pluginNotFoundForMIMEType: pluginPageURL: to WebKit. This gets called
	by IFNullPluginView when a plug-in for a certain mime type is requested but 
	not installed.

2002-04-08  Richard Williamson  <rjw@apple.com>

        Added frameForView:
        Cleaned up out-of-date comments.
        
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	_frameForView:fromFrame:]), (-[IFBaseWebController frameForView:]):
	* WebView.subproj/IFWebController.h:

2002-04-05  Chris Blumenberg  <cblu@apple.com>

	* Plugins.subproj/IFNullPluginView.mm: (+[IFNullPluginView load]):

	Enabled the below.

2002-04-05  Chris Blumenberg  <cblu@apple.com>

	* Plugins.subproj/IFNullPluginView.h: Added.
	* Plugins.subproj/IFNullPluginView.mm: Added.
	 (-[IFNullPluginView initWithFrame:mimeType:arguments:]), (-[IFNullPluginView
	findSuperview:]), (-[IFNullPluginView drawRect:]):
	* Resources/nullplugin.tiff: Added.
	* WebKit.pbproj/project.pbxproj:

        An IFNullPluginView is now created when no plug-in for a requested
        mime type is found. IFNullPluginView displays a null plug-in icon
        and will eventually report this error to the WebController.

2002-04-05  Richard Williamson  <rjw@apple.com>

        Back out some changes to lazily dealloc frame.
        
	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame release]):

2002-04-05  Richard Williamson  <rjw@apple.com>

        New method on controller to find a frame of a particular name
        anywhere in the frame hierarchy.
        
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	initWithView:provisionalDataSource:]), (-[IFBaseWebController
	_frameNamed:fromFrame:]), (-[IFBaseWebController frameNamed:]):
	* WebView.subproj/IFWebController.h:

2002-04-05  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
	Use contentLengthReceived rather than getting the length of
	availableResourceData to determine how much data has arrived.

2002-04-05  Richard Williamson  <rjw@apple.com>

        Implemented the same lazily deallocation scheme on frame as in controller
        and data source.
        
	* WebView.subproj/IFWebFrame.mm: (-[_IFFrameHolder initWithObject:]),
	(-[_IFFrameHolder _checkReadyToDealloc:]), (-[IFWebFrame release]):

2002-04-04  Richard Williamson  <rjw@apple.com>

        Clear controller references from data source and view, as well as 
        frame.
        
	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
	_clearControllerReferences:]):

2002-04-04  Richard Williamson  <rjw@apple.com>

        Lazily dealloc controller and data source ONLY after all loads
        have completed.
        
	* WebView.subproj/IFBaseWebController.mm: (-[_IFControllerHolder
	initWithController:]), (-[_IFControllerHolder _checkReadyToDealloc:]),
	(-[IFBaseWebController dealloc]), (-[IFBaseWebController release]):
	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
	_clearControllerReferences:]), (-[IFBaseWebControllerPrivate dealloc]):
	* WebView.subproj/IFWebDataSource.mm: (-[_IFDataSourceHolder
	initWithDataSource:]), (-[_IFDataSourceHolder _checkReadyToDealloc:]),
	(-[IFWebDataSource release]):

2002-04-04  Kenneth Kocienda  <kocienda@apple.com>

        Hack to handle displaying image URLs. The trick is to sense when
        the main URL is an image type and wrap the URL in a small generated
        HTML document and hand that off to the engine to display.

        Works like a charm! :)

        There may be some longer-term issues, but for now, this lets us
        do something we could not before. It also lets us handle some iframes
        that contain only image URLs.

	* Resources/image_document_template.html: Added.
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFMainURLHandleClient.h:
	* WebView.subproj/IFMainURLHandleClient.mm: (loadImageDocumentTemplate),
	(-[IFMainURLHandleClient initWithDataSource:part:]), (-[IFMainURLHandleClient
	IFURLHandle:resourceDataDidBecomeAvailable:]):

2002-04-04  Chris Blumenberg  <cblu@apple.com>

	* English.lproj/IFError.strings:
	* Misc.subproj/IFError.h:
	* Misc.subproj/IFError.m: (+[IFError initialize]):
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
	IFURLHandle:resourceDataDidBecomeAvailable:]):

	Added the IFNonHTMLContentNotSupportedError to IFError.

2002-04-04  Richard Williamson  <rjw@apple.com>

        Tuned and re-enabled resource layouts.
        
	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]):
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _scheduleLayout:]),
	(-[IFWebFrame _timedLayout:]):

2002-04-04  Darin Adler  <darin@apple.com>

	* WebKit.pbproj/project.pbxproj: Add an Unoptimized build
	style: exactly like Development except without the -O.

2002-04-03  Richard Williamson  <rjw@apple.com>

        Changed name of finalURL to redirectedURL.
        Disabled layout after resource load.  It appears to really slow us down.
        
	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]):
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource redirectedURL]),
	(-[IFWebDataSource wasRedirected]):
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]):

2002-04-03  Richard Williamson  <rjw@apple.com>

        Added support for finalURL and wasRedirected to datasource.
        Added additional layouts on resource loads.
        Added more implementations of frame related methods in data source.
        
	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
	IFURLHandle:didRedirectToURL:]):
	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]), (-[IFPreferences
	_resourceTimedLayoutDelay]), (-[IFPreferences _resourceTimedLayoutEnabled]):
	* WebView.subproj/IFPreferencesPrivate.h:
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource frameNames]),
	(-[IFWebDataSource findDataSourceForFrameNamed:]), (-[IFWebDataSource
	frameExists:]), (-[IFWebDataSource finalURL]), (-[IFWebDataSource
	wasRedirected]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
	(-[IFWebDataSource _setTitle:]), (-[IFWebDataSource _setFinalURL:]):
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _scheduleLayout:]),
	(-[IFWebFrame _transitionProvisionalToLayoutAcceptable]), (-[IFWebFrame
	_isLoadComplete]):

2002-04-03  Kenneth Kocienda  <kocienda@apple.com>

        Updated debugging log messages to use new varargs macros.

	* History.subproj/IFWebHistoryPrivate.m: (-[IFWebHistoryPrivate
	removeEntryForURLString:]), (-[IFWebHistoryPrivate _loadHistoryGuts:]),
	(-[IFWebHistoryPrivate loadHistory]), (-[IFWebHistoryPrivate _saveHistoryGuts:]),
	(-[IFWebHistoryPrivate saveHistory]):
	* Misc.subproj/WebKitDebug.h:
	* Misc.subproj/WebKitDebug.m: (timestamp), (WebKitLog):
	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
	initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView setWindow]),
	(-[IFPluginView newStream:mimeType:notifyData:]), (-[IFPluginView
	IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFPluginView
	IFURLHandleResourceDidFinishLoading:data:]), (-[IFPluginView
	becomeFirstResponder]), (-[IFPluginView resignFirstResponder]), (-[IFPluginView
	sendUpdateEvent]), (-[IFPluginView mouseDown:]), (-[IFPluginView mouseUp:]),
	(-[IFPluginView mouseEntered:]), (-[IFPluginView mouseExited:]), (-[IFPluginView
	keyUp:]), (-[IFPluginView keyDown:]), (-[IFPluginView
	getURLNotify:target:notifyData:]), (-[IFPluginView getURL:target:]),
	(-[IFPluginView status:]), (-[IFPluginView stop]):
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
	_receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
	_mainReceivedProgress:forResource:fromDataSource:]):
	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
	IFURLHandleResourceDidBeginLoading:]), (-[IFMainURLHandleClient
	IFURLHandleResourceDidCancelLoading:]), (-[IFMainURLHandleClient
	IFURLHandleResourceDidFinishLoading:data:]), (-[IFMainURLHandleClient
	IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFMainURLHandleClient
	IFURLHandle:resourceDidFailLoadingWithResult:]), (-[IFMainURLHandleClient
	IFURLHandle:didRedirectToURL:]):
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource isLoading]):
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _stopLoading]):
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
	_transitionProvisionalToLayoutAcceptable]), (-[IFWebFrame _timedLayout:]),
	(-[IFWebFrame _setState:]), (-[IFWebFrame _isLoadComplete]):
	* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]), (-[IFWebView
	layout]), (-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]),
	(-[IFWebView setNeedsToApplyStyles:]), (-[IFWebView drawRect:]):

2002-04-02  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _setTitle:]):
        Update title if the page is already in the committed state.

2002-04-02  Darin Adler  <darin@apple.com>

	* WebKit.pbproj/project.pbxproj: Fix flags as I did in WebFoundation.

	* Misc.subproj/WebKitDebug.h: Turn off logging when xNDEBUG is defined.
	Remove unused stuff. Add checking for printf parameters.
	* Misc.subproj/WebKitDebug.m: Remove unused variants.

	* Plugins.subproj/IFPluginView.mm: Change to use WebKit logging, not
	WebCore logging.

	* WebView.subproj/IFMainURLHandleClient.mm:
	* WebView.subproj/IFWebView.mm:
	Fix types in log statements caught by the compiler.

2002-04-02  Chris Blumenberg  <cblu@apple.com>

	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
	IFURLHandleResourceDidCancelLoading:]), (-[IFPluginView
	IFURLHandle:resourceDidFailLoadingWithResult:]), (-[IFPluginView
	IFURLHandle:didRedirectToURL:]):

	Added support for the above callbacks.

	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
	IFURLHandle:resourceDataDidBecomeAvailable:]):

	Return an error if non-html is requested.	

2002-04-02  Richard Williamson  <rjw@apple.com>

        More relaxed about invalid states.
        
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
	_transitionProvisionalToLayoutAcceptable]):

2002-04-02  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _setTitle:]):
        Fix a leak I introduced here by copying the string in a better way.

2002-04-01  Richard Williamson  <rjw@apple.com>

        Cleaned up lots of potentially stale references to controller.
        
	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
	dealloc]):
	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
	initWithDataSource:part:]), (-[IFMainURLHandleClient dealloc]):
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm:
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
	(-[IFWebDataSource _setPrimaryLoadComplete:]), (-[IFWebDataSource _setTitle:]):
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate dealloc]),
	(-[IFWebFramePrivate setDataSource:]), (-[IFWebFramePrivate
	setProvisionalDataSource:]), (-[IFWebFrame _setController:]), (-[IFWebFrame
	_transitionProvisionalToCommitted]), (-[IFWebFrame _timedLayout:]), (-[IFWebFrame
	_setState:]):

2002-04-01  Richard Williamson  <rjw@apple.com>

        Logging changes.
        Changes to support correct i/frame behavior.
    
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	createFrameNamed:for:inParent:inScrollView:]):
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _timedLayout:]):
	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebViewPrivate dealloc]),
	(-[IFWebView _setupScrollers]):

2002-04-01  John Sullivan  <sullivan@apple.com>

	Added method for updating url, title, and/or displayTitle
	on existing entry.

	* History.subproj/IFWebHistory.h:
	* History.subproj/IFWebHistory.m: 
	(-[IFWebHistory	updateURL:title:displayTitle:forURL:]):
	Calls through to IFWebHistoryPrivate.

	* History.subproj/IFWebHistoryPrivate.h:
	* History.subproj/IFWebHistoryPrivate.m: 
	(-[IFWebHistoryPrivate _entryForURLString:]): Broke this out
	from containsURL.
	(-[IFWebHistoryPrivate containsURL:]): Call broken-out method.
	(-[IFWebHistoryPrivate updateURL:title:displayTitle:forURL:]):
	Find existing entry (if any), change its attributes.

2002-04-01  Darin Adler  <darin@apple.com>

	* Misc.subproj/IFError.h: Add the failing URL to IFError.
	* Misc.subproj/IFError.m: (-[IFError initWithErrorCode:]): Call through
	with nil for the URL.
	(-[IFError initWithErrorCode:failingURL:]): Retain the passed URL.
	(-[IFError dealloc]): Autorelease the URL.
	(-[IFError failingURL]): Return the URL.
	(-[IFError description]): Include the URL in the description.

	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]),
	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
	Put the URL into the IFError.

	* WebView.subproj/IFMainURLHandleClient.mm:
	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
	Put the URL into the IFError.

2002-04-01  Richard Williamson  <rjw@apple.com>

        Added more logging to show time of layouts.
        
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
	_transitionProvisionalToLayoutAcceptable]), (-[IFWebFrame _timedLayout:]),
	(-[IFWebFrame _isLoadComplete]):
	* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]), (-[IFWebView
	layout]):

2002-04-01  Darin Adler  <darin@apple.com>

	Added operations for JavaScript objects. Not sure if this was the best
	place for them, but it should be OK for now.

	* Misc.subproj/IFCache.h:
	* Misc.subproj/IFCache.mm: (+[IFCache setDisabled:]), (+[IFCache
	javaScriptObjectsCount]), (+[IFCache garbageCollectJavaScriptObjects]):
	* WebKit.pbproj/project.pbxproj:

2002-03-30  Richard Williamson  <rjw@apple.com>

        Corrected comments describing the new 'acceptable to layout' state
        transition.
        
	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
	_mainReceivedProgress:forResource:fromDataSource:]):

2002-03-30  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFBaseWebController.mm:
	(-[IFBaseWebController receivedPageTitle:forDataSource:]):
	Remove the exception from here. This is really a "do nothing,
	subclasses override me" method.

	* WebView.subproj/IFWebDataSource.mm:
	(-[IFWebDataSource pageTitle]): Implement.

	* WebView.subproj/IFWebDataSourcePrivate.h: Add pageTitle
	and [IFWebDataSource _setTitle].
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	(-[IFWebDataSourcePrivate dealloc]): autorelease pageTitle.
	(-[IFWebDataSource _setTitle:]): Update the title, trimming
	whitespace and using nil, rather than empty string, to mean
	no title at all. Call [receivedPageTitle: forDataSource:]
	as necessary too.

	* WebView.subproj/IFMainURLHandleClient.mm: Did a gratuitious
	whitespace edit to force this file to recompile so everyone
	doesn't have to "make clean".

2002-03-30  Richard Williamson  <rjw@apple.com>

        Added support for scrolling to anchor points.
        
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]):

2002-03-30  Maciej Stachowiak  <mjs@apple.com>

	* WebKit.pbproj/project.pbxproj: Link against
	JavaScriptCore.framework instead of the defunct
	libJavaScriptCore.dylib.

2002-03-29  Richard Williamson  <rjw@apple.com>

        Fixes for cancelling.  Still need to think about a better
        solution than putting data sources in stopped mode.
        
	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
	_receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
	_mainReceivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
	_receivedError:forResource:partialProgress:fromDataSource:]),
	(-[IFBaseWebController
	_mainReceivedError:forResource:partialProgress:fromDataSource:]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _startLoading:]),
	(-[IFWebDataSource _isStopping]), (-[IFWebDataSource _stopLoading]):
	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame setProvisionalDataSource:]):

2002-03-29  Richard Williamson  <rjw@apple.com>

        Hooked up redirect.  Now we see many more ads.  :(
        Fixed cancel of main handle for document.
        Moved stop before start from frame to data source.

	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	locationChangeDone:forFrame:]), (-[IFBaseWebController
	serverRedirectTo:forDataSource:]):
	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
	IFURLHandleResourceDidCancelLoading:]), (-[IFMainURLHandleClient
	IFURLHandleResourceDidFinishLoading:data:]), (-[IFMainURLHandleClient
	IFURLHandle:resourceDidFailLoadingWithResult:]), (-[IFMainURLHandleClient
	IFURLHandle:didRedirectToURL:]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
	(-[IFWebDataSource _startLoading:]), (-[IFWebDataSource _stopLoading]):
	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame startLoading]):

2002-03-29  Richard Williamson  <rjw@apple.com>

        Added stopLoading to startLoading to cancel any pending loads before
        new loads start.  This doesn't work yet because of loader bugs, but will
        once those are fixed.
        
        Adding logging for redirects.
        
	* Misc.subproj/WebKitDebug.h:
	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
	IFURLHandle:didRedirectToURL:]):
	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame startLoading]):

2002-03-29  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate dealloc]): Deref the
        renderFramePart, and autorelease the provisionalDataSource.
	(-[IFWebFramePrivate setRenderFramePart:]): Ref renderFramePart while we hold it.

2002-03-28  Richard Williamson  <rjw@apple.com>

        Increased size default for initial layout.
        
	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]):

2002-03-28  Richard Williamson  <rjw@apple.com>

        Fixed big leak of any document that had a frame or iframe.
        
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource retain]):
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
	(-[IFWebDataSource _setParent:]):

2002-03-28  Richard Williamson  <rjw@apple.com>
    
        Modified the initial layout policy.

	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
	_receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
	_mainReceivedProgress:forResource:fromDataSource:]):
	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]), (-[IFPreferences
	_initialTimedLayoutDelay]), (-[IFPreferences _initialTimedLayoutSize]):
	* WebView.subproj/IFPreferencesPrivate.h:
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
	_transitionProvisionalToLayoutAcceptable]), (-[IFWebFrame
	_transitionProvisionalToCommitted]), (-[IFWebFrame _initialLayout:]),
	(-[IFWebFrame _isLoadComplete]):

2002-03-28  Darin Adler  <darin@apple.com>

        New private interface for getting at the cache.

	* Misc.subproj/IFCache.h: New.
	* Misc.subproj/IFCache.mm: New.
	* WebKit.pbproj/project.pbxproj: Added IFCache files.

2002-03-28  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFBaseWebController.mm:
        (-[IFBaseWebController locationChangeDone:forFrame:]): Remove log of errors
        loading now that we have the activity viewer.

2002-03-28  Richard Williamson  <rjw@apple.com>

        Modified the initial layout policy.  We now try to layout as close
        as possible to WebKitInitialTimedLayoutDelay seconds after the
        load was started, not after the provisional-to-committed transition.
        If the time to the provisional-to-committed transition exceeds
        WebKitInitialTimedLayoutDelay we layout immediately.
        
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _startLoading:]),
	(-[IFWebDataSource _recursiveStopLoading]), (-[IFWebDataSource
	_loadingStartedTime]):
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
	_transitionProvisionalToCommitted]), (-[IFWebFrame _initialLayout:]):

2002-03-28  John Sullivan  <sullivan@apple.com>

	* History.subproj/IFWebHistoryPrivate.m: 
	(-[IFWebHistoryPrivate _loadHistoryGuts:]):
	Made this more robust about bad data from the disk file. I
	don't know how bad data could get into the disk file in normal
	use, but it seems to have happened to Richard.

2002-03-27  Richard Williamson  <rjw@apple.com>

        Added initial-layout-after-delay-if-not-layed-out-yet feature.
        
	* Misc.subproj/WebKitDebug.h:
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
	_mainReceivedProgress:forResource:fromDataSource:]):
	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]), (-[IFPreferences
	setPluginsEnabled:]), (-[IFPreferences _initialTimedLayoutDelay]),
	(-[IFPreferences _initialTimedLayoutEnabled]):
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
	_transitionProvisionalToCommitted]), (-[IFWebFrame _initialLayout:]),
	(-[IFWebFrame _state]):

2002-03-27  Kenneth Kocienda  <kocienda@apple.com>

        Changed loadProgress->bytesSoFar to use [sender contentLengthReceived]
        instead of the size of the chunk that was delivered in the callback.
        This makes the activity window data more correct than it was.

	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
	IFURLHandle:resourceDataDidBecomeAvailable:]):

2002-03-27  Chris Blumenberg  <cblu@apple.com>

	Now setting the modifier bit for the activate and cursor events.

	* Plugins.subproj/IFPluginView.h:
	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView drawRect:]), (-[IFPluginView
	windowBecameKey:]), (-[IFPluginView windowResignedKey:]), (-[IFPluginView
	mouseEntered:]), (-[IFPluginView mouseExited:]):

2002-03-27  Darin Adler  <darin@apple.com>

	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]): Switch back
        to serif font, since using Luicida Grande was exposing some font bugs.

2002-03-26  Maciej Stachowiak  <mjs@apple.com>

	* WebKit.pbproj/project.pbxproj: Fixed to build with standalone
	libJavaScriptCore.dylib.

2002-03-26  Kenneth Kocienda  <kocienda@apple.com>

        Changes to help the transition to the new build system which unifies
        our development build setting with the settings we use to ship
        releases.

	* Makefile.am:
	* WebKit.pbproj/kocienda.pbxuser:
	* WebKit.pbproj/project.pbxproj:

2002-03-26  Richard Williamson  <rjw@apple.com>

        Try to ensure that display needed bits are correctly set.
        
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]):

2002-03-26  Darin Adler  <darin@apple.com>

	* Misc.subproj/IFError.m: (+[IFError initialize]): Fix a typo where
        we said "unvailable".
        
	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]): Change
        the default sans-serif font to "Lucida Grande" to match the OS X
        system font, and also make that the defalt standard font.

2002-03-26  John Sullivan  <sullivan@apple.com>

	* WebKit.pbproj/project.pbxproj:
	Marked IFProgress.h Public.

2002-03-25  John Sullivan  <sullivan@apple.com>

	Broke IFLoadProgress out into its own file, and added
	an init method and getters, without which this class
	is useless in Objective-C files (but strangely usable
	in Objective-C++ files, see radar 2887253).

	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFBaseWebController.mm:
	Took IFLoadProgress declaration and implementation out of here.

	* WebView.subproj/IFLoadProgress.h,
	* WebView.subproj/IFLoadProgress.mm:
	Moved IFLoadProgress declaration and implementation to here;
	added -[IFLoadProgress initWithBytesSoFar:totalToLoad:type:]
	and getters for each field.

	* WebKit.pbproj/project.pbxproj: Updated for new files

2002-03-25  Richard Williamson  <rjw@apple.com>

        Tweaks to force layout of frames and iframes.
        
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]):

2002-03-25  Maciej Stachowiak  <mjs@apple.com>

	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
	_startLoading:]): Just create an IFURLHandle, since it now creates
	the proper concrete subclass automagically.

2002-03-25  Chris Blumenberg  <cblu@apple.com>

	* MIME.subproj/IFMIMEDatabase.m: (+[IFMIMEDatabase sharedMIMEDatabase]),
	(-[IFMIMEDatabase MIMEHandlerForMIMEType:]), (setMimeHandlers):
	* MIME.subproj/IFMIMEHandler.h:
	* MIME.subproj/IFMIMEHandler.m: (-[IFMIMEHandler
	initWithMIMEType:handlerType:handlerName:]), (-[IFMIMEHandler MIMEType]),
	(-[IFMIMEHandler MIMESupertype]), (-[IFMIMEHandler MIMESubtype]),
	(-[IFMIMEHandler handlerName]), (-[IFMIMEHandler handlerType]), (-[IFMIMEHandler
	description]):

	Initial implementations of the above.

2002-03-25  Richard Williamson  <rjw@apple.com>

        Added private API to allow browser to access the DOM tree.

	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView DOM::]), (+[IFWebView
	_nodeName:DOM::]), (+[IFWebView _nodeValue:DOM::]), (+[IFWebView
	_nodeHTML:DOM::]):

2002-03-25  Richard Williamson  <rjw@apple.com>

        Added private API to allow browser to access the render tree.
        
	* WebView.subproj/IFWebViewPrivate.mm:

2002-03-24  Richard Williamson  <rjw@apple.com>

        Changed data source to create IFURLHandle of the appropriate class.
        The prevented us from getting the response headers correctly.
        
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _startLoading:]):

2002-03-24  Richard Williamson  <rjw@apple.com>

        Removed erroneous comments.
        
	* WebView.subproj/IFWebView.mm: (-[IFWebView dataSourceChanged:]), (-[IFWebView
	reapplyStyles]):

2002-03-22  Chris Blumenberg  <cblu@apple.com>

	* MIME.subproj/IFMIMEDatabase.h:
	Added a list of mime type that WebKit will be capable of handling

2002-03-22  Chris Blumenberg  <cblu@apple.com>

	* WebKit.pbproj/project.pbxproj:
	Added the MIME clases to WebKit.

2002-03-22  John Sullivan  <sullivan@apple.com>

	* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]):
	Removed stale FIXME.

2002-03-22  Richard Williamson  <rjw@apple.com>

        Fixed reapplyStyles to use new KDE3 recalcStyle function.
        
	* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles])

2002-03-21  John Sullivan  <sullivan@apple.com>

	* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]):
	Commented out call to applyChanges that no longer exists.
	This was breaking the build. Live font changes are
	temporarily broken again.

2002-03-21  Richard Williamson  <rjw@apple.com>

        Added setNeedsToApplyStyles: and reapplyStyles.  This is for dynamic preferences
        refresh support.
        
	* WebView.subproj/IFWebView.h:
	* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]), (-[IFWebView
	layout]), (-[IFWebView setNeedsToApplyStyles:]), (-[IFWebView drawRect:]):
	* WebView.subproj/IFWebViewPrivate.h:

2002-03-21  John Sullivan  <sullivan@apple.com>

	Cleaned up defaults registration and use. The class
	IFPreferences now registers the defaults at load time, early
	enough that Alexander doesn't have to register them separately
	as it had been. Also, all the defaults currently in use now
	have accessor cover methods, which Alexander will use
	exclusively.
	
	* WebView.subproj/IFPreferences.mm:
	New file, registers defaults and implements cover methods.

	* WebView.subproj/IFPreferences.h:
	This file existed but wasn't being used (contents #ifdeffed out).
	Now it declares the cover methods, but still has an #ifdeffed
	section for possible future stuff.

	* WebKit.pbproj/project.pbxproj: Updated for new file.

	* WebView.subproj/IFWebDataSource.mm:
	(+[IFWebDataSource initialize]): removed defaults-registration
	from here.

2002-03-20  Maciej Stachowiak  <mjs@apple.com>

	Merged the following changes from LABYRINTH_KDE_3_MERGE branch:
	
	2002-03-20  Maciej Stachowiak  <mjs@apple.com>

		Merged accumlated changes from HEAD, up to
		MERGED_TO_KDE_3_MERGE_BRANCH tag.

	2002-03-19  Maciej Stachowiak  <mjs@apple.com>
	
	        * WebView.subproj/IFWebView.mm: (-[IFWebView layout]):
		layout() no longer takes an argument.
	
2002-03-20  John Sullivan  <sullivan@apple.com>

	Added displayTitle field to IFURIEntry. This is intended to hold the string
	used in menu items, window titles, etc. Alexander uses this to cache the
	center-truncated title for pages with very long titles.

	* History.subproj/IFURIEntry.h:
	* History.subproj/IFURIEntry.m: (-[IFURIEntry setDisplayTitle:]), (-[IFURIEntry
	dictionaryRepresentation]), (-[IFURIEntry initFromDictionaryRepresentation:]):

2002-03-19  Richard Williamson  <rjw@apple.com>

        Fixed IFWebView leak.
        
	* WebView.subproj/IFWebView.mm: (-[IFWebView provisionalDataSourceChanged:]):

2002-03-18  John Sullivan  <sullivan@apple.com>

	Imposed age limit on history items saved to/loaded from disk.
	Sped up history loading by reversing list before processing entries.

	* History.subproj/IFWebHistoryPrivate.m: 
	(+[IFWebHistoryPrivate initialize]): Register default for age limit.
	(-[IFWebHistoryPrivate _ageLimitDate]): New convenience method, returns a date older
	than any history entry that should be stored/loaded.
	(-[IFWebHistoryPrivate arrayRepresentation]): skip too-old dates.
	(-[IFWebHistoryPrivate _loadHistoryGuts:]), (-[IFWebHistoryPrivate _saveHistoryGuts:]): 
	Broke into separate methods to make timing wrapper less messy. Respect age limit.
	Report number of items saved/loaded in timing message.
	(-[IFWebHistoryPrivate loadHistory]), (-[IFWebHistoryPrivate saveHistory]):
	use broken-out _guts methods.
	* WebKit.pbproj/project.pbxproj: version wars

2002-03-16  Richard Williamson  <rjw@apple.com>

        Fixed scroll bar flash.  Add provisional view to go along with
        provisional widget.
        
	* WebView.subproj/IFWebView.mm: (-[IFWebView provisionalDataSourceChanged:]),
	(-[IFWebView dataSourceChanged:]):

2002-03-16  Richard Williamson  <rjw@apple.com>

        Fixed error handling.  Fixed most frame loading problems.
        Cleaned up frame state machine.
        Moved IFMainURLHandleClient from WebCore.
        
	* Misc.subproj/IFError.m: (-[IFError description]):
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
	receivedError:forResource:partialProgress:fromDataSource:]),
	(-[IFBaseWebController locationChangeDone:forFrame:]):
	* WebView.subproj/IFBaseWebControllerPrivate.h:
	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
	_receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
	_mainReceivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
	_receivedError:forResource:partialProgress:fromDataSource:]),
	(-[IFBaseWebController
	_mainReceivedError:forResource:partialProgress:fromDataSource:]):
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource startLoading:]),
	(-[IFWebDataSource isLoading]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate init]),
	(-[IFWebDataSourcePrivate dealloc]), (-[IFWebDataSource
	_setPrimaryLoadComplete:]), (-[IFWebDataSource _startLoading:]),
	(-[IFWebDataSource _stopLoading]):
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame setProvisionalDataSource:]),
	(-[IFWebFrame startLoading]), (-[IFWebFrame reload:]), (-[IFWebFrame errors]),
	(-[IFWebFrame mainDocumentError]):
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate dealloc]),
	(-[IFWebFrame _transitionProvisionalToCommitted]), (-[IFWebFrame _setState:]),
	(-[IFWebFrame _addError:forResource:]), (-[IFWebFrame _isLoadComplete]),
	(+[IFWebFrame _recursiveCheckCompleteFromFrame:]), (-[IFWebFrame
	_checkLoadCompleteResource:error:isMainDocument:]), (-[IFWebFrame
	_setMainDocumentError:]), (-[IFWebFrame _clearErrors]):
	* WebView.subproj/IFWebView.mm:
	* WebView.subproj/IFMainURLHandleClient.h: added
	* WebView.subproj/IFMainURLHandleClient.mm: added

2002-03-15  John Sullivan  <sullivan@apple.com>

	Impose default-based limit (1000 by default) on number of history items
	saved/loaded. Also instrumented timing for saving/loading history.

	* History.subproj/IFWebHistoryPrivate.m: 
	(+[IFWebHistoryPrivate initialize]): register default for WebKitHistoryItemLimit.

	(-[IFWebHistoryPrivate arrayRepresentation]): respect limit
	(-[IFWebHistoryPrivate loadHistory]): respect limit, time the load.
	(-[IFWebHistoryPrivate saveHistory]): time the save.

	* WebKit.pbproj/project.pbxproj: version wars

2002-03-15  John Sullivan  <sullivan@apple.com>

	Fixed bug where history entry images weren't showing up, except by historical
	accident in some cases.
	Made IFWebHistory no longer be a singleton class; made the file location
	be passed in at init time.

	* History.subproj/IFURIEntry.m: (-[IFURIEntry image]): Get the default image 
	a way that works with frameworks; only get the default image once.

	* History.subproj/IFWebHistory.h:
	* History.subproj/IFWebHistory.m: 
	(+[IFWebHistory webHistoryWithFile:]): New convenience constructor that returns
	a new IFWebHistory object with a particular disk file.
	(-[IFWebHistory initWithFile:]): New init method for specifying a disk file.
	(-[IFWebHistory file]): New accessor for file path.
	(-[IFWebHistory loadHistory]),
	(-[IFWebHistory	saveHistory]): Use file accessor.
	Also removed the methods that were computing a file path to use.

	* History.subproj/IFWebHistoryPrivate.h:
	* History.subproj/IFWebHistoryPrivate.m: 
	(-[IFWebHistoryPrivate initWithFile:]),
	(-[IFWebHistoryPrivate dealloc]), (-[IFWebHistoryPrivate file]),
	(-[IFWebHistoryPrivate loadHistory]), (-[IFWebHistoryPrivate saveHistory]):
	Guts of implementation for file-manipulation stuff.

	* Resources/url_icon.tiff: ran tiffUtil to premultiply the alpha channel. This
	was spewing error messages that I didn't notice before because they only
	happen on Puma and I was on Jaguar.

	* WebKit.pbproj/project.pbxproj: not sure what change I made, maybe version wars.

2002-03-14  John Sullivan  <sullivan@apple.com>

	Made history store its data in ~/Library/Application Support/<app name>/History.plist

	* History.subproj/IFWebHistoryPrivate.m: 
	(GetRefPath), (FindFolderPath): Functions copied from NSSavePanel.m for using
	FindFolder in a POSIX sort of way. Ken plans to put some version of this in
	IFNSFileManagerExtensions eventually, which I'll switch to later.
	(-[IFWebHistoryPrivate historyFilePath]): Construct the path using FindFolderPath
	and the file name.
	(-[IFWebHistoryPrivate loadHistory]),
	(-[IFWebHistoryPrivate saveHistory]): failure case debug messages are now more specific.

2002-03-13  Richard Williamson  <rjw@apple.com>

        Added support to stop plugins in removeFromSuperview.
        
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _checkLoadComplete:]):
	* WebView.subproj/IFWebView.mm: (-[IFWebView dealloc]), (-[IFWebView
	removeFromSuperview]), (-[IFWebView removeFromSuperviewWithoutNeedingDisplay]):

2002-03-13  Richard Williamson  <rjw@apple.com>

        Fixed open window w/ no open windows crasher.
        
	* ChangeLog:
	* WebView.subproj/IFBaseWebController.mm: (-[IFObjectHolder dealloc]):
	* WebView.subproj/IFWebView.mm: (-[IFWebView dealloc]), (-[IFWebView layout]):

2002-03-13  Richard Williamson  <rjw@apple.com>

	* ChangeLog:
	* WebView.subproj/IFBaseWebController.mm: (-[IFObjectHolder dealloc]):
	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
	dealloc]), (-[IFWebView provisionalDataSourceChanged:]), (-[IFWebView
	dataSourceChanged:]), (-[IFWebView layout]), (-[IFWebView isOpaque]),
	(-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]), (-[IFWebView
	drawRect:]), (-[IFWebView setFrame:]), (-[IFWebView windowResized:]),
	(-[IFWebView mouseDragged:]):

2002-03-12  Richard Williamson  <rjw@apple.com>

	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
	provisionalDataSourceChanged:]), (-[IFWebView dataSourceChanged:]), (-[IFWebView
	layout]), (-[IFWebView isOpaque]), (-[IFWebView setNeedsDisplay:]), (-[IFWebView
	setNeedsLayout:]), (-[IFWebView drawRect:]), (-[IFWebView setFrame:]),
	(-[IFWebView windowResized:]), (-[IFWebView mouseDragged:]):

2002-03-12  John Sullivan  <sullivan@apple.com>

	Added support for persistent history. Following in the grand footsteps of
	Ken, it currently stores data in /tmp/alexander.history

	* Resources/url_icon.tiff: default IFURIEntry image, moved here from WebBrowser.
	* WebKit.pbproj/project.pbxproj: Updated to add image file.

	* History.subproj/IFURIEntry.m: 
	(-[IFURIEntry image]):
	If there's no explicit image, return the default one.

	(-[IFURIEntry dictionaryRepresentation]): return a representation suitable
	for saving to an xml file.
	(-[IFURIEntry initFromDictionaryRepresentation:]): init given the representation
	returned from dictionaryRepresentation.

	* History.subproj/IFWebHistory.h:
	* History.subproj/IFWebHistory.m: (-[IFWebHistory saveHistory]):
	Added saveHistory call.

	* History.subproj/IFWebHistoryPrivate.h: added saveHistory call.

	* History.subproj/IFWebHistoryPrivate.m: 
	(-[IFWebHistoryPrivate arrayRepresentation]): return a representation suitable for
	saving to an xml file.
	(-[IFWebHistoryPrivate historyFilePath]): return location of history on disk.
	(-[IFWebHistoryPrivate loadHistory]): read history from disk.
	(-[IFWebHistoryPrivate saveHistory]): write history to disk.

	(-[IFWebHistoryPrivate init]): call loadHistory
	(-[IFWebHistoryPrivate removeEntryForURLString:]): changed NSLog to WEBKITDEBUG

2002-03-11  Richard Williamson  <rjw@apple.com>

        Fixed call back ordering problems when an error occurs.
        More twiddling with scroll bars.
        
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	createFrameNamed:for:inParent:]):
	* WebView.subproj/IFDynamicScrollBarsView.h:
	* WebView.subproj/IFDynamicScrollBarsView.m: (-[IFDynamicScrollBarsView
	reflectScrolledClipView:]):
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame startLoading]), (-[IFWebFrame
	reload:]), (-[IFWebFrame reset]), (-[IFWebFrame lastError]):
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate dealloc]),
	(-[IFWebFrame _checkLoadComplete:]), (-[IFWebFrame _setLastError:]):

2002-03-08  Richard Williamson  <rjw@apple.com>

        Fixed scroll bar recursion problems.
Took a long time to find a stupid typo bug in [IFBaseWebController _frameForDataSource:fromFrame:]
that overwrote an input parameter that should been a local variable.  This caused a crash the
second time a page that contained an iframe was loaded.
        
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	createFrameNamed:for:inParent:]), (-[IFBaseWebController
	_frameForDataSource:fromFrame:]):
	* WebView.subproj/IFDynamicScrollBarsView.m: (-[IFDynamicScrollBarsView
	reflectScrolledClipView:]):
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _checkLoadComplete:]):
	* WebView.subproj/IFWebView.mm: (-[IFWebView layout]):
	* WebView.subproj/IFWebViewPrivate.h:
	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _setFrameScrollView:]),
	(-[IFWebView _frameScrollView]), (-[IFWebView _setupScrollers]):

2002-03-07  John Sullivan  <sullivan@apple.com>

	* Misc.subproj/IFError.m: (-[IFError errorDescription]):
	Removed a line of debugging spam. Oops!

2002-03-07  Richard Williamson  <rjw@apple.com>

        Fixed occasional scroll bar problem in iframes.
        Fixed occasional problem removing scroll bar on main page.
        
	* WebView.subproj/IFDynamicScrollBarsView.m: (-[IFDynamicScrollBarsView
	reflectScrolledClipView:]):
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _checkLoadComplete:]):
	* WebView.subproj/IFWebView.mm: (-[IFWebView drawRect:]):

2002-03-07  John Sullivan  <sullivan@apple.com>

	First pass at adding error strings to IFError. They are
	properly localized, but they don't include any parameters,
	and the strings haven't been made user-friendly.

	* Misc.subproj/IFError.m: 
	(+[IFError initialize]): New method, set up a dictionary
	mapping error code to localized error string.
	(-[IFError errorDescription]): Read string from dictionary.

	* English.lproj/IFError.strings: New file, auto-generated
	by the genstrings tool.

	* WebKit.pbproj/project.pbxproj: Removed stray -F /symroots.
	This shouldn't have been in there since symroots location is
	no longer hardwired.

2002-03-07  John Sullivan  <sullivan@apple.com>

	Defined more symbolic debug-level constants; specified ranges for use by
	different software levels (core/kit/client==browser) to enable easier
	isolation of debug messages.

	* Misc.subproj/WebKitDebug.h: #defined new debug levels for existing uses;
	renamed a couple.

	* Misc.subproj/WebKitDebug.m: (WebKitLog), (WebKitDebug): Updated for
	renamed debug levels.

	* WebView.subproj/IFBaseWebController.mm: 
	(-[IFBaseWebController receivedProgress:forResource:fromDataSource:]):
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _stopLoading]):
	* WebView.subproj/IFWebView.mm: (-[IFWebView layout]), 
	(-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]), (-[IFWebView drawRect:]),
	(-[IFWebView mouseDragged:]):
	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _resetView]):
	Changed numeric debug levels to symbolic ones.

	* WebKit.pbproj/project.pbxproj: Jaguar/Puma version war.

2002-03-06  Richard Williamson  <rjw@apple.com>

        Lots of little changes to improve drawing, and dynamic scroll bar
        layout.  We now have NO flash between pages, however, I still need
        to add a transition timeout.  As currently implemented the page will not
        transition until the document is read.
        
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	locationChangeDone:forFrame:]):
	* WebView.subproj/IFDynamicScrollBarsView.m: (-[IFDynamicScrollBarsView
	reflectScrolledClipView:]):
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
	_transitionProvisionalToCommitted]), (-[IFWebFrame _checkLoadComplete:]):
	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
	dataSourceChanged:]), (-[IFWebView layout]), (-[IFWebView isOpaque]),
	(-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]), (-[IFWebView
	drawRect:]), (-[IFWebView setFrame:]):
	* WebView.subproj/IFWebViewPrivate.h:
	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _stopPlugins]), (-[IFWebView
	_removeSubviews]):

2002-03-06  John Sullivan  <sullivan@apple.com>

	* Misc.subproj/IFError.h: Removed stray but evil import.

2002-03-06  Maciej Stachowiak  <mjs@apple.com>

	* WebKit.pbproj/project.pbxproj: Turn on -Werror.

2002-03-05  Richard Williamson  <rjw@apple.com>

        Streamlined layout and drawing.  We now do the minimum amount of drawing and
        layout.
        
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _checkLoadComplete:]):
	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
	layout]), (-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]),
	(-[IFWebView drawRect:]), (-[IFWebView setFrame:]), (-[IFWebView
	windowResized:]):

2002-03-05  John Sullivan  <sullivan@apple.com>

	* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource initialize]):
	Tweak default font sizes so they match what algorithm used in Alexander
	returns.

2002-03-05  Richard Williamson  <rjw@apple.com>

        Pass errors correctly to browser.
        Removed old notification code.
        Added support for IFError.
        Lots of little cleanups.
        Improved IFWebFrame state handling.

	* Misc.subproj/IFError.h:
	* Misc.subproj/IFError.m: (IFErrorMake), (+[IFError load]), (-[IFError
	initWithErrorCode:]), (-[IFError errorCode]), (-[IFError errorDescription]):
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
	receivedError:forResource:partialProgress:fromDataSource:]):
	* WebView.subproj/IFBaseWebControllerPrivate.h:
	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource isLoading]):
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
	_startLoading:initiatedByUserEvent:]):
	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame
	initWithName:view:provisionalDataSource:controller:]), (-[IFWebFrame
	setProvisionalDataSource:]):
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
	_transitionProvisionalToCommitted]), (-[IFWebFrame _state]), (-[IFWebFrame
	_setState:]), (-[IFWebFrame _checkLoadComplete:]):

2002-03-05  John Sullivan  <sullivan@apple.com>

	* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource initialize]):
	Changed default font sizes to match scheme used in Alexander. There are
	some serious wackinesses with KDE engine font size handling; if and when
	we address those we might revisit these default sizes.

2002-03-05  Maciej Stachowiak  <mjs@apple.com>

	Removed references to IFAuthenticationHandler, since that protocol
	now lives in WebFoundation and it's no longer quite appropriate to
	include as part of a controller.

	* WebView.subproj/IFBaseWebController.mm:
	* WebView.subproj/IFWebController.h:

2002-03-04  Richard Williamson  <rjw@apple.com>

        Changes to support 'provisional' data sources.
        API changes to IFBaseWebController, removed redundant methods.
 
        * Misc.subproj/WebKitDebug.h:
	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
	getURLNotify:target:notifyData:]):
	* WebView.subproj/IFBaseWebController.h:
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController init]),
	(-[IFBaseWebController initWithView:provisionalDataSource:]),
	(-[IFBaseWebController createFrameNamed:for:inParent:]), (-[IFBaseWebController
	receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
	receivedError:forResource:partialProgress:fromDataSource:]),
	(-[IFBaseWebController locationChangeCommittedForFrame:]), (-[IFBaseWebController
	_frameForDataSource:fromFrame:]), (-[IFBaseWebController mainFrame]):
	* WebView.subproj/IFBaseWebControllerPrivate.h:
	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebDataSource.mm: (IFWebDataSourceMake), (+[IFWebDataSource
	load]):
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
	_startLoading:initiatedByUserEvent:]):
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame init]), (-[IFWebFrame
	initWithName:view:provisionalDataSource:controller:]), (-[IFWebFrame
	setProvisionalDataSource:]), (-[IFWebFrame startLoading]), (-[IFWebFrame
	stopLoading]), (-[IFWebFrame reload:]):
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _setDataSource:]),
	(-[IFWebFrame _transitionProvisionalToCommitted]):
	* WebView.subproj/IFWebView.h:
	* WebView.subproj/IFWebView.mm: (-[IFWebView provisionalDataSourceChanged:]),
	(-[IFWebView dataSourceChanged:]):
	* WebView.subproj/IFWebViewPrivate.h:
	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _provisionalWidget]):

2002-03-04  John Sullivan  <sullivan@apple.com>

	Changed default fonts.

	* WebView.subproj/IFWebDataSource.mm: 
	(+[IFWebDataSource initialize]): Changed default fonts to ones
	that actually exist (this was listing "Times-Roman" where it
	meant either "Times" or "Times New Roman"). I'm about to check
	in working font preferences, so it won't matter too much if you
	don't like the defaults (although we should of course make sure
	that the defaults are sensible, which I think they are).

2002-03-04  John Sullivan  <sullivan@apple.com>

	* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource initialize]):
	Reverted default fonts to what they were before I accidentally
	checked in some debugging changes.

2002-03-01  Richard Williamson  <rjw@apple.com>

        Fixed a potentially large leak in frames.  View associated w/
        frame was not being released.
        
        Added scaffolding for correct frame by frame load complete check.
        
        Moved private IFWebBaseController method implementations to 
        IFWebBaseControllerPrivate.mm.
        
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	createFrameNamed:for:inParent:]), (-[IFBaseWebController
	receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
	receivedError:forResource:partialProgress:fromDataSource:]):
	* WebView.subproj/IFBaseWebControllerPrivate.h:
	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
	dealloc]), (-[IFBaseWebController _changeLocationTo:forFrame:parent:]),
	(-[IFBaseWebController _changeFrame:dataSource:]), (-[IFBaseWebController
	_checkLoadCompleteForDataSource:]):
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate init]):
	* WebView.subproj/IFWebView.mm: (-[IFWebView dataSourceChanged:]):

2002-02-27  Kenneth Kocienda  <kocienda@apple.com>

        I have changed the way that WebCore is glued to WebFoundation and WebKit. 
        If you used or relied upon any code in the following files, you should
        now use the IF* equivalents straight up.

        - Labyrinth/WebCore/include/WCBackForwardList.h
        - Labyrinth/WebCore/include/WCURICache.h
        - Labyrinth/WebCore/include/WCURICacheData.h
        - Labyrinth/WebCore/include/WCURIEntry.h
        - Labyrinth/WebCore/include/WCURIEntry.h

        All changes in this commit are related to making dependant code work with the new convention.

	* History.subproj/IFURIEntry.h:
	* History.subproj/IFURIEntry.m:
	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
	newStream:mimeType:notifyData:]), (-[IFPluginView
	IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFPluginView
	IFURLHandleResourceDidFinishLoading:data:]), (-[IFPluginView
	IFURLHandleResourceDidBeginLoading:]), (-[IFPluginView
	IFURLHandleResourceDidCancelLoading:]), (-[IFPluginView
	IFURLHandle:resourceDidFailLoadingWithResult:]):
	* WebKit.pbproj/kocienda.pbxuser:
	* WebKit.pbproj/project.pbxproj:

2002-02-26  John Sullivan  <sullivan@apple.com>

	* History.subproj/IFURIEntry.m: (-[IFURIEntry dealloc]):
	Added missing dealloc method that 'leaks' found.

	* History.subproj/IFURIList.m: (-[IFURIList dealloc]):
	Added missing [super dealloc] call that 'leaks' found.

2002-02-22  Maciej Stachowiak  <mjs@apple.com>

	Fix prebinding:

	* WebKit.pbproj/project.pbxproj: Set first segment address
	0x4000000 to avoid colliding with apps or our other frameworks.

	Set up some hacks to avoid link-time dependency on
	WebKit. Prebinding is incompatible with - undefined suppress, so
	we can't have WebCore depend on symbols provided by WebKit any
	more:

	* Plugins.subproj/IFPluginView.mm: (IFPluginMake), (+[IFPluginView load]),
	(startupVolumeName):
	* WebView.subproj/IFBaseWebController.mm: (IFLoadProgressMake), (+[IFLoadProgress
	load]):

2002-02-22  John Sullivan  <sullivan@apple.com>

	Updated for modified NSCalendarDate extensions API.

	* History.subproj/IFWebHistoryPrivate.m: 
	(-[IFWebHistoryPrivate findIndex:forDay:]): use compareDate: instead of 
	daysSinceDate:, which no longer exists.

2002-02-22  Richard Williamson  <rjw@apple.com>

        Added data: to IFURLHandleResourceDidFinishLoading:
        
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource isLoading]):

2002-02-22  Richard Williamson  <rjw@apple.com>

        Implemented missing getter for provisionalDataSource.
        
	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame provisionalDataSource]):
	* WebView.subproj/IFWebFramePrivate.h:

2002-02-22  Richard Williamson  <rjw@apple.com>

        Normalized code paths for setMainDataSource on controller and setDataSource on frame.
        
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	setMainView:andMainDataSource:]), (-[IFBaseWebController
	createFrameNamed:for:inParent:]), (-[IFBaseWebController
	_changeFrame:dataSource:]):
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
	_setController:]):
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame init]), (-[IFWebFrame
	initWithName:view:dataSource:controller:]), (-[IFWebFrame setView:]),
	(-[IFWebFrame controller]), (-[IFWebFrame setController:]), (-[IFWebFrame
	setDataSource:]), (-[IFWebFrame reset]):
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate setController:]),
	(-[IFWebFrame _setRenderFramePart:]), (-[IFWebFrame _renderFramePart]),
	(-[IFWebFrame _setDataSource:]):

2002-02-21  Richard Williamson  <rjw@apple.com>

        Stop mostly working.
    
	* WebView.subproj/IFBaseWebController.h:
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	_frameForDataSource:fromFrame:]), (-[IFBaseWebController frameForDataSource:]):
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource frame]),
	(-[IFWebDataSource frameName]), (-[IFWebDataSource stopLoading]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
	(-[IFWebDataSource _addURLHandle:]), (-[IFWebDataSource _removeURLHandle:]),
	(-[IFWebDataSource _stopLoading]), (-[IFWebDataSource
	_recursiveStopLoadingfromDataSource:]):
	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame setDataSource:]):

2002-02-20  Richard Williamson  <rjw@apple.com>

    Some groundwork to bring WebFoundation callbacks up to 
    WebKit.
    
	* WebView.subproj/IFBaseWebController.mm: (-[IFLoadProgress init]),
	(-[IFBaseWebController receivedProgress:forResource:fromDataSource:]),
	(-[IFBaseWebController
	receivedError:forResource:partialProgress:fromDataSource:]),
	(-[IFBaseWebController _changeFrame:dataSource:]):
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource stopLoading]):
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFramePrivate.h:
	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate
	setProvisionalDataSource:]):

2002-02-20  Maciej Stachowiak  <mjs@apple.com>

	* WebView.subproj/IFWebController.h: Fix my WebController screw-up.

2002-02-19  John Sullivan  <sullivan@apple.com>

	Finished first cut at IFWebHistory implementation. All methods are implemented
	except the string-matching ones.

	* History.subproj/IFURIEntry.h:
	* History.subproj/IFURIEntry.m: (-[IFURIEntry initWithURL:title:image:comment:]),
	(-[IFURIEntry lastVisitedDate]), (-[IFURIEntry setModificationDate:]),
	(-[IFURIEntry setLastVisitedDate:]):
	Changed all NSDates to be NSCalendarDates.

	* History.subproj/IFWebHistory.h:
	* History.subproj/IFWebHistory.m: (-[IFWebHistory init]), (-[IFWebHistory
	dealloc]), (-[IFWebHistory sendEntriesChangedNotification]), (-[IFWebHistory
	addEntry:]), (-[IFWebHistory removeEntry:]), (-[IFWebHistory
	removeEntriesForDay:]), (-[IFWebHistory removeAllEntries]), (-[IFWebHistory
	orderedLastVisitedDays]), (-[IFWebHistory orderedEntriesLastVisitedOnDay:]),
	(-[IFWebHistory entriesWithAddressContainingString:]), (-[IFWebHistory
	entriesWithTitleOrAddressContainingString:]), (-[IFWebHistory containsURL:]):
	Implemented all IFWebHistory methods by calling through to IFWebHistoryPrivate object.
	Send a change notification each time the actual data changes. Removed all
	canned-data mechanisms.

	* History.subproj/IFWebHistoryPrivate.h:
	* History.subproj/IFWebHistoryPrivate.m: (-[IFWebHistoryPrivate init]),
	(-[IFWebHistoryPrivate dealloc]), (-[IFWebHistoryPrivate findIndex:forDay:]),
	(-[IFWebHistoryPrivate insertEntry:atDateIndex:]), (-[IFWebHistoryPrivate
	removeEntryForURLString:]), (-[IFWebHistoryPrivate addEntry:]),
	(-[IFWebHistoryPrivate removeEntry:]), (-[IFWebHistoryPrivate
	removeEntriesForDay:]), (-[IFWebHistoryPrivate removeAllEntries]),
	(-[IFWebHistoryPrivate orderedLastVisitedDays]), (-[IFWebHistoryPrivate
	orderedEntriesLastVisitedOnDay:]), (-[IFWebHistoryPrivate
	entriesWithAddressContainingString:]), (-[IFWebHistoryPrivate
	entriesWithTitleOrAddressContainingString:]), (-[IFWebHistoryPrivate
	containsURL:]):
	Implemented guts of history mechanism using a dictionary for URL lookup and
	a sorted array of dates with entries and a sorted array of sorted arrays of 
	entries per date.

	* WebKit.pbproj/project.pbxproj: Updated for new files

2002-02-18  John Sullivan  <sullivan@apple.com>

	First piece of implementing IFWebHistory. None of the mutators do anything,
	and the accessors return canned data. But at least all the temporary hackery
	is hiding behind legitimate API.

	* History.subproj/IFWebHistory.h:
	* History.subproj/IFWebHistory.m: 

	(+[IFWebHistory sharedWebHistory]):
	Implemented sensibly.

	(-[IFWebHistory createTestEntryWithURLString:title:date:]), 
	(-[IFWebHistory	testDataDates]), (-[IFWebHistory testData]), 
	Private temporary hackery to return fake data.	

	(-[IFWebHistory orderedLastVisitedDays]), 
	(-[IFWebHistory	orderedEntriesLastVisitedOnDay:]):
	Implemented using temporary hackery.

	(-[IFWebHistory addEntry:]),
	(-[IFWebHistory removeEntry:]), 
	(-[IFWebHistory removeAllEntries]):
	Unimplemented mutator methods.

	(-[IFWebHistory	entriesWithAddressContainingString:]), 
	(-[IFWebHistory	entriesWithTitleOrAddressContainingString:]), 
	(-[IFWebHistory containsURL:]):
	Methods that we'll need eventually, currently unimplemented. We may flesh out
	the API a little more before we actually implement any of these.

	(-[NSCalendarDate daysSinceDate:]): Convenience method in category; will
	probably move to another file soon.

	* WebKit.pbproj/project.pbxproj: Updated for new files

2002-02-18  Kenneth Kocienda  <kocienda@apple.com>

	Fixed breakge that came up when project file merged.

	* WebKit.pbproj/project.pbxproj:

2002-02-18  Kenneth Kocienda  <kocienda@apple.com>

        Changes to support building standalone Alexander with Frameworks
        and libraries contained inside the app package.

	* Makefile.am:
	* WebKit.pbproj/kocienda.pbxuser:
	* WebKit.pbproj/project.pbxproj:

2002-02-18  Richard Williamson  <rjw@apple.com>

        Performance measurement.
        
	* WebView.subproj/IFWebView.mm: (-[IFWebView layout]), (-[IFWebView drawRect:]):

2002-02-16  Richard Williamson  <rjw@apple.com>

	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource controller]):

2002-02-16  Richard Williamson  <rjw@apple.com>

        Reminders to change frame<->datasource ownership cycle.
        
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource setFrame:]),
	(-[IFWebDataSource frame]):

2002-02-13  Richard Williamson  <rjw@apple.com>

    Fixed cleanup.  Should revisit ownership graph.  Cycles may be avoidable.
    
	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
	dealloc]):
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource setFrame:]):
	* WebView.subproj/IFWebFrame.m: (-[IFWebFrame reset]):
	* WebView.subproj/IFWebViewPrivate.h:
	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _resetWidget]):

2002-02-12  Richard Williamson  <rjw@apple.com>

    Made basic forms work.
    
	* WebView.subproj/IFBaseWebController.mm:
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource initialize]),
	(-[IFWebDataSource startLoading:]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
	_startLoading:initiatedByUserEvent:]):

2002-02-11  John Sullivan  <sullivan@apple.com>

	Fixed bug where clicking on empty browser page would crash. This could
	happen when the start page was empty, or failed to load.

	* WebView.subproj/IFWebView.mm: 
	(-[IFWebView mouseUp:]), (-[IFWebView mouseDown:]):
	Checked for nil widget before dispatching mouse events.

2002-02-08  John Sullivan  <sullivan@apple.com>

	Changed back & forward to goBack and goForward and made them not return
	a value (so signatures match those in WebBrowser). Added backEntry and
	forwardEntry that don't alter the list. These will be needed to ask to
	go to the URL at the back position without altering the back list until
	the change is committed.

	* History.subproj/IFBackForwardList.h:
	* History.subproj/IFBackForwardList.m: (-[IFBackForwardList goBack]),
	(-[IFBackForwardList backEntry]), (-[IFBackForwardList currentEntry]),
	(-[IFBackForwardList forwardEntry]), (-[IFBackForwardList goForward]):

2002-02-07  Richard Williamson  <rjw@apple.com>
    
    More changes to IFLocationChangeHandler API.

	* WebView.subproj/IFBaseWebController.mm:
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource startLoading:]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
	_startLoading:initiatedByMouseEvent:]):
	* WebView.subproj/IFWebFramePrivate.h:

2002-02-07  Richard Williamson  <rjw@apple.com>

    Update IFLocationChangeHandler API.  Added factored code for
    URL loading.
    
	* ChangeLog:
	* WebView.subproj/IFBaseWebController.h:
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	setMainView:andMainDataSource:]), (-[IFBaseWebController
	_changeLocationTo:forFrame:parent:]), (-[IFBaseWebController
	_changeFrame:dataSource:]), (-[IFBaseWebController
	locationChangeCommittedForFrame:]):
	* WebView.subproj/IFBaseWebControllerPrivate.h:
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource startLoading:]):
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.m: (-[IFWebFrame reset]):

2002-02-06  Richard Williamson  <rjw@apple.com>

    Fixed allocation problems.  Implemented parent->child management
    for datasource correctly.
    
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	changeLocationTo:forFrame:]):
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource addFrame:]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
	_setController:]), (-[IFWebDataSource _part]), (-[IFWebDataSource _setParent:]):
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.m: (-[IFWebFrame _setRenderFramePart:]),
	(-[IFWebFrame _renderFramePart]):
	* WebView.subproj/IFWebView.mm: (-[IFWebView dataSourceChanged:]):

2002-02-05  Richard Williamson  <rjw@apple.com>

    Updated controller API to reflect frames.
    
	* WebView.subproj/IFBaseWebController.h:
	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	initWithView:dataSource:]), (-[IFBaseWebController
	setMainView:andMainDataSource:]), (-[IFBaseWebController
	createFrameNamed:for:inParent:]), (-[IFBaseWebController mainFrame]),
	(-[IFBaseWebController mainView]), (-[IFBaseWebController mainDataSource]),
	(-[IFBaseWebController changeLocationTo:forFrame:]), (-[IFBaseWebController
	locationChangeStartedForFrame:]), (-[IFBaseWebController
	locationChangeInProgressForFrame:]), (-[IFBaseWebController
	locationChangeDone:forFrame:]):
	* WebView.subproj/IFBaseWebControllerPrivate.h:
	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
	init]), (-[IFBaseWebControllerPrivate dealloc]):
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource initWithURL:]),
	(-[IFWebDataSource setFrame:]), (-[IFWebDataSource frame]), (-[IFWebDataSource
	frameName]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
	(-[IFWebDataSource _part]):
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.m: (-[IFWebFrame dealloc]), (-[IFWebFrame
	dataSource]), (-[IFWebFrame setDataSource:]):
	* WebView.subproj/IFWebView.h:
	* WebView.subproj/IFWebView.mm: (-[IFWebView dataSourceChanged:]):

2002-02-05  Maciej Stachowiak  <mjs@apple.com>

	Remove old obsolete cache code from tree and build.

	* Cache.subproj/NSURICache.h:
	* Cache.subproj/NSURICache.m:
	* Cache.subproj/NSURICacheData.h:
	* Cache.subproj/NSURICacheData.m:
	* Cache.subproj/NSURILoad.h:
	* Cache.subproj/NSURILoad.m:
	* Cache.subproj/NSURILoadReallyPrivate.h:
	* Cache.subproj/_NSURICacheQueue.h:
	* Cache.subproj/_NSURICacheQueue.m:
	* Misc.subproj/WebKitReallyPrivate.h:
	* Misc.subproj/_NSMonitor.h:
	* Misc.subproj/_NSMonitor.m:
	* WebKit.pbproj/project.pbxproj:

2002-02-05  Richard Williamson  <rjw@apple.com>

    Changes to support dynamic scroll bars in frames/iframes.

	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
	createFrameNamed:for:inParent:]):
	* WebView.subproj/IFWebView.mm: (-[IFWebView dataSourceChanged]):
	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _setFrameScrollView:]):

2002-02-04  Maciej Stachowiak  <mjs@apple.com>

	Rename all classes from WK prefix to IF prefix.

	* Cache.subproj/IFLoadChunk.h:
	* Cache.subproj/IFWebCache.h:
	* Cache.subproj/IFWebCacheClient.h:
	* Cache.subproj/IFWebContentType.h:
	* History.subproj/IFAttributedURL.h:
	* History.subproj/IFBackForwardList.h:
	* History.subproj/IFBackForwardList.m: (-[IFBackForwardList init]),
	(-[IFBackForwardList addEntry:]), (-[IFBackForwardList back]),
	(-[IFBackForwardList currentEntry]), (-[IFBackForwardList forward]),
	(-[IFBackForwardList description]):
	* History.subproj/IFURIEntry.h:
	* History.subproj/IFURIEntry.m: (WCCreateURIEntry), (-[IFURIEntry isEqual:]),
	(-[IFURIEntry description]):
	* History.subproj/IFURIList.h:
	* History.subproj/IFURIList.m: (newURIListNode), (freeNode), (-[IFURIList
	dealloc]), (-[IFURIList addEntry:]), (-[IFURIList removeURL:]), (-[IFURIList
	removeEntry:]), (-[IFURIList entryForURL:]), (-[IFURIList entryAtIndex:]),
	(-[IFURIList removeEntryAtIndex:]), (-[IFURIList removeEntriesToIndex:]):
	* Misc.subproj/IFException.h:
	* Misc.subproj/IFException.m:
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFBaseWebController.h:
	* WebView.subproj/IFBaseWebController.mm: (+[IFObjectHolder holderWithObject:]),
	(-[IFBaseWebController init]), (-[IFBaseWebController initWithView:dataSource:]),
	(-[IFBaseWebController setDirectsAllLinksToSystemBrowser:]),
	(-[IFBaseWebController directsAllLinksToSystemBrowser]), (-[IFBaseWebController
	setView:andDataSource:]), (-[IFBaseWebController
	createFrameNamed:for:inParent:]), (-[IFBaseWebController viewForDataSource:]),
	(-[IFBaseWebController dataSourceForView:]), (-[IFBaseWebController mainView]),
	(-[IFBaseWebController mainDataSource]), (-[IFBaseWebController
	setStatusText:forDataSource:]), (-[IFBaseWebController
	statusTextForDataSource:]), (-[IFBaseWebController authenticate:]),
	(-[IFBaseWebController receivedProgress:forResource:fromDataSource:]),
	(-[IFBaseWebController
	receivedError:forResource:partialProgress:fromDataSource:]),
	(-[IFBaseWebController locationWillChangeTo:]), (-[IFBaseWebController
	locationChangeStartedForDataSource:]), (-[IFBaseWebController
	locationChangeInProgressForDataSource:]), (-[IFBaseWebController
	locationChangeDone:forDataSource:]), (-[IFBaseWebController
	receivedPageTitle:forDataSource:]), (-[IFBaseWebController
	serverRedirectTo:forDataSource:]):
	* WebView.subproj/IFBaseWebControllerPrivate.h:
	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	* WebView.subproj/IFDynamicScrollBarsView.h:
	* WebView.subproj/IFDynamicScrollBarsView.m:
	* WebView.subproj/IFGrabBag.h:
	* WebView.subproj/IFPreferences.h:
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource _commonInitialization]),
	(-[IFWebDataSource initWithURL:]), (-[IFWebDataSource frameName]),
	(-[IFWebDataSource isMainDocument]), (-[IFWebDataSource parent]),
	(-[IFWebDataSource children]), (-[IFWebDataSource addFrame:]), (-[IFWebDataSource
	frameNamed:]), (-[IFWebDataSource frameNames]), (-[IFWebDataSource
	findDataSourceForFrameNamed:]), (-[IFWebDataSource frameExists:]),
	(-[IFWebDataSource openURL:inFrameNamed:]), (-[IFWebDataSource
	openURL:inIFrame:]), (-[IFWebDataSource controller]), (-[IFWebDataSource
	inputURL]), (-[IFWebDataSource finalURL]), (-[IFWebDataSource wasRedirected]),
	(-[IFWebDataSource stopLoading]), (-[IFWebDataSource isLoading]),
	(-[IFWebDataSource base]), (-[IFWebDataSource baseTarget]), (-[IFWebDataSource
	encoding]), (-[IFWebDataSource setUserStyleSheetFromURL:]), (-[IFWebDataSource
	setUserStyleSheetFromString:]), (-[IFWebDataSource icon]), (-[IFWebDataSource
	isPageSecure]), (-[IFWebDataSource pageTitle]):
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
	(-[IFWebDataSource _setController:]), (-[IFWebDataSource _part]),
	(-[IFWebDataSource _setFrameName:]):
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.m: (-[IFWebFrame initWithName:view:dataSource:]),
	(-[IFWebFrame dataSource]):
	* WebView.subproj/IFWebView.h:
	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
	controller]), (-[IFWebView dataSourceChanged]), (-[IFWebView layout]),
	(-[IFWebView stopAnimations]), (-[IFWebView setFontSizes:]), (-[IFWebView
	fontSizes]), (-[IFWebView resetFontSizes]), (-[IFWebView setStandardFont:]),
	(-[IFWebView standardFont]), (-[IFWebView setFixedFont:]), (-[IFWebView
	fixedFont]), (-[IFWebView setCanDragFrom:]), (-[IFWebView setCanDragTo:]),
	(-[IFWebView defaultContextMenuItemsForNode:]), (-[IFWebView
	setContextMenusEnabled:]), (-[IFWebView deselectText]), (-[IFWebView
	searchFor:direction:caseSensitive:]), (-[IFWebView selectedText]), (-[IFWebView
	setNeedsLayout:]), (-[IFWebView drawRect:]), (-[IFWebView setIsFlipped:]),
	(-[IFWebView isFlipped]), (-[IFWebView mouseUp:]), (-[IFWebView mouseDown:]):
	* WebView.subproj/IFWebViewPrivate.h:
	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebViewPrivate dealloc]),
	(-[IFWebView _setController:]), (-[IFWebView _widget]), (-[IFWebView
	_setFrameScrollView:]), (-[IFWebView _frameScrollView]):

2002-02-04  Maciej Stachowiak  <mjs@apple.com>

	Rename all WK files to IF (classes not renamed yet).

	* Cache.subproj/IFLoadChunk.h:
	* Cache.subproj/IFWebCache.h:
	* Cache.subproj/IFWebCacheClient.h:
	* Cache.subproj/IFWebContentType.h:
	* Cache.subproj/WKLoadChunk.h:
	* Cache.subproj/WKWebCache.h:
	* Cache.subproj/WKWebCacheClient.h:
	* Cache.subproj/WKWebContentType.h:
	* History.subproj/IFAttributedURL.h:
	* History.subproj/IFBackForwardList.h:
	* History.subproj/IFBackForwardList.m:
	* History.subproj/IFURIEntry.h:
	* History.subproj/IFURIEntry.m:
	* History.subproj/IFURIList.h:
	* History.subproj/IFURIList.m:
	* History.subproj/WKAttributedURL.h:
	* History.subproj/WKBackForwardList.h:
	* History.subproj/WKBackForwardList.m:
	* History.subproj/WKURIEntry.h:
	* History.subproj/WKURIEntry.m:
	* History.subproj/WKURIList.h:
	* History.subproj/WKURIList.m:
	* Misc.subproj/WKException.h:
	* Misc.subproj/WKException.m:
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/IFBaseWebController.h:
	* WebView.subproj/IFBaseWebController.mm:
	* WebView.subproj/IFBaseWebControllerPrivate.h:
	* WebView.subproj/IFBaseWebControllerPrivate.mm:
	* WebView.subproj/IFDefaultWebController.h:
	* WebView.subproj/IFDefaultWebController.mm:
	* WebView.subproj/IFDefaultWebControllerPrivate.h:
	* WebView.subproj/IFDefaultWebControllerPrivate.mm:
	* WebView.subproj/IFDynamicScrollBarsView.m:
	* WebView.subproj/IFGrabBag.h:
	* WebView.subproj/IFPreferences.h:
	* WebView.subproj/IFWebController.h:
	* WebView.subproj/IFWebDataSource.h:
	* WebView.subproj/IFWebDataSource.mm:
	* WebView.subproj/IFWebDataSourcePrivate.h:
	* WebView.subproj/IFWebDataSourcePrivate.mm:
	* WebView.subproj/IFWebFrame.h:
	* WebView.subproj/IFWebFrame.m:
	* WebView.subproj/IFWebView.h:
	* WebView.subproj/IFWebView.mm:
	* WebView.subproj/IFWebViewPrivate.h:
	* WebView.subproj/IFWebViewPrivate.mm:
	* WebView.subproj/WKDefaultWebController.h:
	* WebView.subproj/WKDefaultWebController.mm:
	* WebView.subproj/WKDefaultWebControllerPrivate.h:
	* WebView.subproj/WKDefaultWebControllerPrivate.mm:
	* WebView.subproj/WKDynamicScrollBarsView.h:
	* WebView.subproj/WKDynamicScrollBarsView.m:
	* WebView.subproj/WKGrabBag.h:
	* WebView.subproj/WKPreferences.h:
	* WebView.subproj/WKWebController.h:
	* WebView.subproj/WKWebDataSource.h:
	* WebView.subproj/WKWebDataSource.mm:
	* WebView.subproj/WKWebDataSourcePrivate.h:
	* WebView.subproj/WKWebDataSourcePrivate.mm:
	* WebView.subproj/WKWebFrame.h:
	* WebView.subproj/WKWebFrame.m:
	* WebView.subproj/WKWebView.h:
	* WebView.subproj/WKWebView.mm:
	* WebView.subproj/WKWebViewPrivate.h:
	* WebView.subproj/WKWebViewPrivate.mm:

2002-02-01  Richard Williamson  <rjw@apple.com>

    Changes for dynamic scrolling frames.  Added notification of complete
    load.
    
	* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController
	createFrameNamed:for:inParent:]), (-[WKDefaultWebController
	locationChangeDone:forDataSource:]):
	* WebView.subproj/WKWebController.h:
	* WebView.subproj/WKWebView.mm: (-[WKWebView dataSourceChanged]):
	* WebView.subproj/WKWebViewPrivate.h:
	* WebView.subproj/WKWebViewPrivate.mm: (-[WKWebViewPrivate dealloc]),
	(-[WKWebView _widget]), (-[WKWebView _setFrameScrollView:]), (-[WKWebView
	_frameScrollView]):

2002-02-01  John Sullivan  <sullivan@apple.com>

	Added call to examine the entry at the current index in
	the back/forward list without modifying the list. I needed
	this to save context data (in my case, scroll position)
	on the currently-viewed entry.

	* History.subproj/WKBackForwardList.h:
	* History.subproj/WKBackForwardList.m: 
	(-[WKBackForwardList currentEntry]):
	Just returns the entry at the current index.

2002-01-31  John Sullivan  <sullivan@apple.com>

	* History.subproj/WKURIList.m: (newURIListNode):
	retain entries before adding them to list. The node-freeing
	routine was releasing, but the node-adding routine wasn't
	retaining. Bad asymmetry, made up for by WebViewTest not
	autoreleasing. I fixed that too.

2002-01-31  John Sullivan  <sullivan@apple.com>

	* WebKit.pbproj: Removed -O0, so it will now get all the same
	warnings as pbxbuild gets.

2002-01-31  Kenneth Kocienda  <kocienda@apple.com>

        Removed dependency on WC versions of these files
        
	* History.subproj/WKBackForwardList.h:
	* History.subproj/WKBackForwardList.m:
	* History.subproj/WKURIEntry.h:
	* History.subproj/WKURIEntry.m:
	* WebKit.pbproj/project.pbxproj:

2002-01-31  John Sullivan  <sullivan@apple.com>

	* WebKit.pbproj:
	Marked WKURIList.h as a public header

2002-01-30  Richard Williamson  <rjw@apple.com>

	* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController
	createFrameNamed:for:inParent:]):
	* WebView.subproj/WKWebDataSource.mm: (-[WKWebDataSource documentTextFromDOM]):

2002-01-30  Richard Williamson  <rjw@apple.com>

    Cleaned up API w/ respect to frames.
    
	* WebView.subproj/WKDefaultWebController.h:
	* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController
	setView:andDataSource:]), (-[WKDefaultWebController
	createFrameNamed:for:inParent:]):
	* WebView.subproj/WKWebController.h:
	* WebView.subproj/WKWebDataSource.h:

2002-01-30  Kenneth Kocienda  <kocienda@apple.com>

        Added *.lo, *.la, Icon, and .libs to .cvsignore files
        
	* .cvsignore:

2002-01-29  Richard Williamson  <rjw@apple.com>

	* ChangeLog:
	* WebView.subproj/WKDefaultWebController.h:
	* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController
	setView:andDataSource:]), (-[WKDefaultWebController dataSourceForView:]):

2002-01-29  Richard Williamson  <rjw@apple.com>

	* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController
	setView:andDataSource:]):

2002-01-29  Richard Williamson  <rjw@apple.com>

    First pass at frame code.  Still needs lots of cleanup.
    
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/WKDefaultWebController.h:
	* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController init]):
	* WebView.subproj/WKWebDataSource.h:
	* WebView.subproj/WKWebDataSource.mm: (-[WKWebDataSource dealloc]),
	(-[WKWebDataSource frameName]), (-[WKWebDataSource parent]), (-[WKWebDataSource
	children]), (-[WKWebDataSource addFrame:]), (-[WKWebDataSource frameNamed:]):
	* WebView.subproj/WKWebDataSourcePrivate.h:
	* WebView.subproj/WKWebDataSourcePrivate.mm: (-[WKWebDataSourcePrivate init]),
	(-[WKWebDataSourcePrivate dealloc]), (-[WKWebDataSource _setController:]),
	(-[WKWebDataSource _setFrameName:]):
	* WebView.subproj/WKWebView.mm: (-[WKWebView mouseUp:]):
	* WebView.subproj/WKWebViewPrivate.h:
	* WebView.subproj/WKWebViewPrivate.mm: (-[WKWebViewPrivate dealloc]),
	(-[WKWebView _setController:]), (-[WKWebView _widget]):

2002-01-29  Kenneth Kocienda  <kocienda@apple.com>

        WebKit now links with WebFoundation
        
	* WebKit.pbproj/kocienda.pbxuser:
	* WebKit.pbproj/project.pbxproj:


2002-01-23  Ken Kocienda  <kocienda@apple.com>

	Took out @executable_path hack added for Alexander demo.
	This should clear up a class of crash-on-launch issues.

	* WebKit.pbproj/project.pbxproj:

2002-01-21  John Sullivan  <sullivan@apple.com>

	* WebView.subproj/WKWebController.h:
	* WebView.subproj/WKWebView.h:
	Changed WKConcreteWebController to WKDefaultWebController in a
	couple of comments.

2002-01-18  Richard Williamson  <rjw@apple.com>

    First pass at new view/datasource/controller API.
    
	* Misc.subproj/WKException.h:
	* Misc.subproj/WKException.m:
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/WKDefaultWebController.h:
	* WebView.subproj/WKDefaultWebController.mm: (+[WKObjectHolder
	holderWithObject:]), (-[WKObjectHolder initWithObject:]), (-[WKObjectHolder
	dealloc]), (-[WKObjectHolder copyWithZone:]), (-[WKObjectHolder hash]),
	(-[WKObjectHolder object]), (-[WKObjectHolder isEqual:]),
	(-[WKDefaultWebController initWithView:dataSource:]), (-[WKDefaultWebController
	dealloc]), (-[WKDefaultWebController setDirectsAllLinksToSystemBrowser:]),
	(-[WKDefaultWebController directsAllLinksToSystemBrowser]),
	(-[WKDefaultWebController setView:andDataSource:]), (-[WKDefaultWebController
	viewForDataSource:]), (-[WKDefaultWebController dataSourceForView:]),
	(-[WKDefaultWebController mainView]), (-[WKDefaultWebController mainDataSource]),
	(-[WKDefaultWebController createViewForDataSource:inFrameNamed:]),
	(-[WKDefaultWebController createViewForDataSource:inIFrame:]),
	(-[WKDefaultWebController setStatusText:forDataSource:]),
	(-[WKDefaultWebController statusTextForDataSource:]), (-[WKDefaultWebController
	authenticate:]), (-[WKDefaultWebController
	receivedProgress:forResource:fromDataSource:]), (-[WKDefaultWebController
	receivedError:forResource:partialProgress:fromDataSource:]),
	(-[WKDefaultWebController locationWillChangeTo:]), (-[WKDefaultWebController
	locationChangeStartedForDataSource:]), (-[WKDefaultWebController
	locationChangeInProgressForDataSource:]), (-[WKDefaultWebController
	locationChangeDone:forDataSource:]), (-[WKDefaultWebController
	receivedPageTitle:forDataSource:]), (-[WKDefaultWebController
	serverRedirectTo:forDataSource:]):
	* WebView.subproj/WKDefaultWebControllerPrivate.h:
	* WebView.subproj/WKDefaultWebControllerPrivate.mm:
	(-[WKDefaultWebControllerPrivate init]), (-[WKDefaultWebControllerPrivate
	dealloc]):
	* WebView.subproj/WKWebController.h:
	* WebView.subproj/WKWebController.mm:
	* WebView.subproj/WKWebDataSource.h:
	* WebView.subproj/WKWebDataSource.mm: (-[WKWebDataSource _commonInitialization]),
	(-[WKWebDataSource initWithURL:]), (-[WKWebDataSource parent]),
	(-[WKWebDataSource isMainDocument]), (-[WKWebDataSource children]),
	(-[WKWebDataSource frameNames]), (-[WKWebDataSource
	findDataSourceForFrameNamed:]), (-[WKWebDataSource frameExists:]),
	(-[WKWebDataSource openURL:inFrameNamed:]), (-[WKWebDataSource
	openURL:inIFrame:]), (-[WKWebDataSource controller]), (-[WKWebDataSource
	inputURL]), (-[WKWebDataSource finalURL]), (-[WKWebDataSource wasRedirected]),
	(-[WKWebDataSource startLoading:]), (-[WKWebDataSource stopLoading]),
	(-[WKWebDataSource isLoading]), (-[WKWebDataSource documentText]),
	(-[WKWebDataSource base]), (-[WKWebDataSource baseTarget]), (-[WKWebDataSource
	encoding]), (-[WKWebDataSource setUserStyleSheetFromURL:]), (-[WKWebDataSource
	setUserStyleSheetFromString:]), (-[WKWebDataSource icon]), (-[WKWebDataSource
	isPageSecure]), (-[WKWebDataSource pageTitle]):
	* WebView.subproj/WKWebDataSourcePrivate.h:
	* WebView.subproj/WKWebDataSourcePrivate.mm: (-[WKWebDataSourcePrivate init]),
	(-[WKWebDataSourcePrivate dealloc]), (-[WKWebDataSource _setController:]),
	(-[WKWebDataSource _part]):
	* WebView.subproj/WKWebView.h:
	* WebView.subproj/WKWebView.mm: (-[WKWebView initWithFrame:]), (-[WKWebView
	dealloc]), (-[WKWebView controller]), (-[WKWebView dataSourceChanged]),
	(-[WKWebView layout]), (-[WKWebView stopAnimations]), (-[WKWebView
	setFontSizes:]), (-[WKWebView fontSizes]), (-[WKWebView resetFontSizes]),
	(-[WKWebView setStandardFont:]), (-[WKWebView standardFont]), (-[WKWebView
	setFixedFont:]), (-[WKWebView fixedFont]), (-[WKWebView setCanDragFrom:]),
	(-[WKWebView canDragFrom]), (-[WKWebView setCanDragTo:]), (-[WKWebView
	canDragTo]), (-[WKWebView defaultContextMenuItemsForNode:]), (-[WKWebView
	setContextMenusEnabled:]), (-[WKWebView deselectText]), (-[WKWebView
	searchFor:direction:caseSensitive:]), (-[WKWebView selectedText]), (-[WKWebView
	delayLayout:]), (-[WKWebView notificationReceived:]), (-[WKWebView
	setNeedsLayout:]), (-[WKWebView drawRect:]), (-[WKWebView setIsFlipped:]),
	(-[WKWebView isFlipped]), (-[WKWebView setFrame:]), (-[WKWebView mouseUp:]),
	(-[WKWebView mouseDown:]), (-[WKWebView mouseDragged:]):
	* WebView.subproj/WKWebViewPrivate.h:
	* WebView.subproj/WKWebViewPrivate.mm: (-[WKWebViewPrivate init]),
	(-[WKWebViewPrivate dealloc]), (-[WKWebView _resetView]), (-[WKWebView
	_setController:]):

2002-01-14  Maciej Stachowiak  <mjs@apple.com>

	Convert build system to automake

	* Makefile.am: Add this
	* Makefile.in: Remove this (now autogenerated)
	* .cvsignore: Fix ignores
	* WebKit.pbproj/project.pbxproj: Twiddle link flags

2001-12-21  John Sullivan  <sullivan@apple.com>

	* .cvsignore:
	* WebKit.pbproj/.cvsignore:
	Added files that were showing up on my machine to .cvsignores.

2001-12-18  Kenneth Kocienda  <kocienda@apple.com>

        Deleted one little word

	* Documentation/WebKit-White-Paper/WebKit-White-Paper.html:

2001-12-18  Richard Williamson  <rjw@apple.com>

        Restructing of headers in prepartion for implementation.  Added new WK*
        headers to PB project description.

	* ChangeLog:
	* WebKit.pbproj/project.pbxproj:
	* WebView.subproj/NSWebPageDataSource.h:
	* WebView.subproj/NSWebPageDataSource.mm:
	* WebView.subproj/NSWebPageDataSourcePrivate.h:
	* WebView.subproj/NSWebPageView.h:
	* WebView.subproj/NSWebPageView.mm:
	* WebView.subproj/NSWebPageViewPrivate.h:
	* WebView.subproj/WKWebController.h:
	* WebView.subproj/WKWebController.mm:
	* WebView.subproj/WKWebDataSource.h:
	* WebView.subproj/WKWebDataSource.mm: (+[WKWebDataSource initialize]):
	* WebView.subproj/WKWebDataSourcePrivate.h:
	* WebView.subproj/WKWebView.h:
	* WebView.subproj/WKWebView.mm:
	* WebView.subproj/WKWebViewPrivate.h:

2001-12-18  Kenneth Kocienda  <kocienda@apple.com>

        Updated the white paper text and graphics.
        
	* Documentation/WebKit-White-Paper/WebKit-White-Paper.html:
	* Documentation/WebKit-White-Paper/images/webkit-cache-loader.jpg:
	* Documentation/WebKit-White-Paper/images/webkit-classes.jpg:

2001-12-18  Kenneth Kocienda  <kocienda@apple.com>

        Merged "Changes" information into individual files

	* Cache.subproj/WKLoadChunk.h:
	* Cache.subproj/WKWebCache.h:
	* Cache.subproj/WKWebCacheClient.h:
	* Cache.subproj/WKWebContentType.h:

2001-12-17  Kenneth Kocienda  <kocienda@apple.com>

        Fixed small cpp glitch in WKWebCache.
        Added WKAttributedURL header.
        Updated WKBackForwardList with ifdef'ed out new design.
        
	* Cache.subproj/WKWebCache.h:
	* History.subproj/WKAttributedURL.h:
	* History.subproj/WKBackForwardList.h:

2001-12-17  Kenneth Kocienda  <kocienda@apple.com>

        Added header files by chopping up the CacheAPI.h document I have been working on.

	* Cache.subproj/WKLoadChunk.h:
	* Cache.subproj/WKWebCache.h:
	* Cache.subproj/WKWebCacheClient.h:
	* Cache.subproj/WKWebContentType.h:

2001-12-17  Kenneth Kocienda  <kocienda@apple.com>

        Did some verb tense cleanup.

	* Documentation/WebKit-White-Paper/WebKit-White-Paper.html:

2001-12-17  Kenneth Kocienda  <kocienda@apple.com>

        Added the current draft of the WebKit white paper.
        
	* Documentation/WebKit-White-Paper/WebKit-White-Paper.html:
	* Documentation/WebKit-White-Paper/images/webkit-cache-loader.jpg:

2001-12-14  Richard Williamson  <rjw@apple.com>

        Remove WKContextMenuHandler for want of a better way to describe the
        not-yet-existing WKDOMNode.  We can't think of any initial clients that want
        to override the default behavior anyway.  Put it in WKGrabBag.h for now.

	* WebView.subproj/WKWebController.h:   

2001-12-14  Richard Williamson  <rjw@apple.com>
        
        Remove explicit API to get/set the selection range.  This will be postponed until we
        have a DOM API that allows us to express selection ranges correctly.  Instead we have API
        that should support searching and getting a NSAttributedString that corresponds to
        the selected text.

        Added the following methods:
            - (void)searchFor: (NSString *)string direction: (BOOL)forward caseSensitive: (BOOL)case
            - deselectText;
            - (NSAttributedString *)selectedText;
       
	* WebView.subproj/WKWebView.h:    

        Moved search API to WKWebView.
        
        Moved WKPreferences to a new file, WKPreferences.h.  We are still discussing
        this item and it will not make it into the white paper.
                    
	Minor naming changes.

	* WebView.subproj/WKDataSource.h:        

2001-12-14  Maciej Stachowiak  <mjs@apple.com>

	Simplified WKLocationChangeHandler and updated
	WKAuthenticationHandler.

	* WebView.subproj/WKWebController.h:
	(WKWebDataSource): Renamed methods to be forDataSource, not
	byDataSource.
	(-[WKWebDataSource locationChangeInProgressForDataSource:]): Added.
	(-[WKWebDataSource locationChangeDone:forDataSource:]): Added as a
	collapsed version of locationChangeCancelled:,
	locationChangeStopped: and locationChangeFinished:.
	(WKSimpleAuthenticationResult, WKSimpleAuthenticationRequest):
	made these interfaces instead of structs.
	
2001-12-14  Maciej Stachowiak  <mjs@apple.com>

	Minor cleanups, mostly for naming consistency.
	
	* WebView.subproj/WKWebController.h: 
	(WKSimpleAuthenticationRequest) name field `url', not `uri'.
	(-[WKWebDataSourceErrorHandler receivedError:forDataSource:]):
	renamed from `error:inDataSource:' so that it's a verb phrase.
	
	* WebView.subproj/WKWebDataSource.h:
	(-[WKWebDataSource initWithURL:]): Rename `inputUrl' argument to
	`inputURL'.
	(-[WKWebDataSource initWithLoader:]): Change argument type from
	`WKURILoader' to `WKLoader'.
	(-[WKWebDataSource wasRedirected]): Renamed from `isRedirected',
	the past tense seems more appropriate here.
	(-[WKWebDataSource setJavaEnabled:]): Add missing semicolon.
	(-[WKWebDataSource pluginsEnabled:]): renamed from `pluginEnabled'
	for consistency with `setPluginsEnabled:'.

	* WebView.subproj/WKWebView.h:
	(-[WKWebView fontSizes]): renamed from `fontSize' for sonsistency
	with `setFontSizes:'.
	(-[WKWebView setContextMenusEnabled]): renamed from
	'setEnableContextMenus:' for consistency with
	`contextMenusenabled'.

2001-12-14  Maciej Stachowiak  <mjs@apple.com>

	After discussion with Don, Removed all methods relating to
	resolved URLs, since browsers don't actually treat aliases
	specially.
	
	* WebView.subproj/WKWebController.h: removed inputURLresolvedTo: methods.
	* WebView.subproj/WKWebDataSource.h: remove resolvedURL method,
	and mentions of it in comments.

2001-12-13  Richard Williamson  <rjw@apple.com>
  
        Removed WKFrameSetHandler, placed that functionality on WKWebDataSource.
        
        Changed WKLocationChangeHandler to add a parameter specifying the data source
        that sent the message.

	* WebView.subproj/WKWebController.h:

2001-12-13  Maciej Stachowiak  <mjs@apple.com>

	Warning fixes and support to pass the http headers along with
	cache data items

	* Cache.subproj/NSURICacheData.h, Cache.subproj/NSURICacheData.m:
	(+[NSURICacheData
	dataWithURL:status:error:headers:data:size:notificationString:userData:],
	-[NSURICacheData
	initWithURL:status:error:headers:data:size:notificationString:userData:]),
	-[NSURICacheData dealloc], -[NSURICacheData error],
	-[NSURICacheData headers]: 
	NSURICacheData now carries a copy of the response headers
	dictionary.
	* Cache.subproj/NSURICache.m: include "WCURICache.h" to fix warnings.
	(-[NSURICache requestWithURL:requestor:userData:]): 
	Handle headers in CacheData.
	* Cache.subproj/NSURILoad.h, Cache.subproj/NSURILoad.m:
	(-[NSURILoad __NSURILoadReadStreamCallback:event:data:],
	-[NSURILoad headers], -[NSURILoad dealloc], -[NSURILoad done]): 
	An NSURILoad object now carries the response headers associated
	with its connection, if any.

	* History.subproj/WKBackForwardList.m: include WCBackForwardList.h
	to fix warning.
	* History.subproj/WKURIEntry.m: include WCURIEntry.h to fix
	warning.
	* Misc.subproj/WebKitDebug.h: Use (void) for C prototypes, not ().
	* WebView.subproj/NSWebPageDataSource.mm: (+[NSWebPageDataSource
	initialize]): Remove unused variable to fix warning.
	* WebKit.pbproj/project.pbxproj: Enable many warning flags and -Werror

2001-12-13  Maciej Stachowiak  <mjs@apple.com>

	* WebView.subproj/WKWebController.h: Defined initial version of
	WKAuthenticationHandler interface, and associated
	WKSimpleAuthenticationRequest and WKSimpleAuthenticationResult
	structs.

2001-12-13  Richard Williamson  <rjw@apple.com>
    
        Remove setBase: and setBaseTarget:
        
        Changed return type of baseTarget to (NSString *)
        
        Added the following two methods:
            - (WKDataSource *)parent;
            - (NSArry *)children;
            - (BOOL)isMainDocument;
  
        Added the following methods:
        
            - (NSArray *)frameNames;
            - (WKWebDataSource) findDataSourceForFrameNamed: (NSString *)name;
            - (BOOL)frameExists: (NSString *)name;
            - (void)openURL: (NSURL *)url inFrameNamed: (NSString *)frameName;
            - (void)openURL: (NSURL *)url inIFrame: (id)iFrameIdentifier;

	* WebView.subproj/WKWebDataSource.h:

2001-12-12  Richard Williamson  <rjw@apple.com>

        Changed WKConcreteWebController to WKDefaultWebController.
        
        Changed WKLocationChangedHandler naming, replace "loadingXXX" with
        "locationChangeXXX".

        Changed loadingStopped in WKLocationChangedHandler to locationChangeStopped:(WKError *).

        Changed loadingCancelled in WKLocationChangedHandler to locationChangeCancelled:(WKError *).
        
        Changed loadedPageTitle in WKLocationChangedHandler to receivedPageTitle:.

        Added inputURL:(NSURL *) resolvedTo: (NSURL *) to WKLocationChangedHandler.
        
        Added the following two methods to WKLocationChangedHandler:
        
            - (void)inputURL: (NSURL *)inputURL resolvedTo: (NSURL *)resolvedURL;
            - (void)serverRedirectTo: (NSURL *)url;
       
        Put locationWillChangeTo: back on WKLocationChangedHandler.
        
        Changed XXXforLocation in WKLoadHandler to XXXforResource.
        
        Changed timeoutForLocation: in WKLoadHandler to receivedError:forResource:partialProgress:
        
        Added the following two methods to WKDefaultWebController:
        
            - setDirectsAllLinksToSystemBrowser: (BOOL)flag
            - (BOOL)directsAllLinksToSystemBrowser;
            
        Removed WKError.  This will be described in WKError.h.

        * WebView.subproj/WKWebController.h:

2001-12-12  Richard Williamson  <rjw@apple.com>
    
        After group discussion we decided to classify API as :
        Tier 1:  Needed by our browser (or Sherlock).
        Tier 2:  Nedded by Apple internal clients (Mail, Help, PB, other TBD).
        Tier 3:  Third party software vendors.
    
        Added finalURL and isRedirected.
	
        * WebView.subproj/WKWebDataSource.h:

2001-12-11  Chris Blumenberg  <cblu@apple.com>

	* ChangeLog:
	* WebView.subproj/NSWebPageDataSource.mm: (+[NSWebPageDataSource initialize]):

2001-12-11  Chris Blumenberg  <cblu@apple.com>

	* WebView.subproj/NSWebPageDataSource.mm: (+[NSWebPageDataSource initialize]):

2001-12-10  John Sullivan  <sullivan@apple.com>

	* WebView.subproj/WKWebController.h:
	* WebView.subproj/WKWebDataSource.h:
	* WebView.subproj/WKWebView.h:

	Fixed some typos and misspellings.

2001-12-07  Richard Williamson  <rjw@apple.com>

	* WebView.subproj/NSWebPageDataSource.h:
	* WebView.subproj/NSWebPageDataSourcePrivate.h:
	* WebView.subproj/NSWebPageView.h:
        
        First pass at API for WKWebView and WKWebDataSource.  Note
        that we have to change names from NS to WK!  The new API is conditionally
        excluded #ifdef READY_FOR_PRIMETIME
        
        Added these files:
        
	* WebView.subproj/WKWebDataSource.h:
	* WebView.subproj/WKWebView.h:
	* WebView.subproj/WKWebController.h:

2001-12-06  Maciej Stachowiak  <mjs@apple.com>

	* Cache.subproj/NSURICacheData.m: (+[NSURICacheData
	dataWithURL:status:error:data:size:notificationString:userData:]),
	(-[NSURICacheData
	initWithURL:status:error:data:size:notificationString:userData:]):
	Remove redundant semicolons between the end of the prototype and
	the open brace, because they confuse the changelog script.

