12002-12-03  Trey Matteson  <trey@apple.com>
2
3	Re-fix of 3113393 - Clients side redirects shouldn't always add item to back/forward list
4	Fix 3116980 - REGRESSION: Back button goes back twice
5	Fix 3099631 - assertion failure at http://www.calendarlive.com/ when pop-up blocking is off
6
7	The earlier fix for the first bug was to consider any redirect happening within one
8	second as a continuation of the previous load.  To fix the regressions I re-cast that
9	fix using a similar, pre-existing mechanism.
10
11        Reviewed by: Richwill
12
13        * WebView.subproj/WebFramePrivate.h:  Nuke shortRedirectComing, rename
14	instantRedirectComing to quickRedirectComing.
15        * WebView.subproj/WebFramePrivate.m:
16        (-[WebFrame _createOrUpdateItem]):  Remove code related to shortRedirectComing,
17	the fix that brought the regressions.
18        (-[WebFrame _setState:]):  Don't cache the page we're leaving if we're doing
19	a redirect (since we don't want the redirecting page in the cache).
20        (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]):  Above rename.
21        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):  Above rename.
22        (-[WebFrame _loadURL:intoChild:]):  Comment fix.
23        (-[WebFrame _clientRedirectedTo:delay:fireDate:]):  Use 1 second instead of 0
24	seconds as the metric of a client redirect.  Do not consider whether the frame
25	state is completed as part of the decision.
26        (-[WebFrame _clientRedirectCancelled]):  Above rename.
27
282002-12-03  John Sullivan  <sullivan@apple.com>
29
30        Reviewed by: Darin
31
32	- REALLY changed the default state for block pop-ups to be off.
33
34        * WebView.subproj/WebPreferences.m:
35        (+[WebPreferences load]):
36	change default for letting JavaScript open windows automatically
37	to YES
38
392002-12-03  Darin Adler  <darin@apple.com>
40
41	- fixed 3117135 -- world leak: drag any image, get a leak of 1 WebFrame
42
43        Reviewed by John.
44
45        * WebView.subproj/WebHTMLView.m:
46        (-[WebHTMLView mouseDragged:]): Retain the URL of the dragged image, not the entire
47	element dictionary. The element dictionary creates a reference cycle since it includes
48	a reference to the WebFrame.
49        (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Use the URL rather than
50	extracting it from the dictionary with a WebElementImageURLKey.
51
52        * WebView.subproj/WebHTMLViewPrivate.h: URL, not element dictionary.
53        * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLViewPrivate dealloc]): Release the
54	URL, not the element dictionary.
55
562002-12-03  Richard Williamson   <rjw@apple.com>
57
58        Added a preference to change the page cache size, i.e.:
59        Alexander.app/Contents/MacOS/Alexander -WebKitPageCacheSizePreferenceKey 4
60        
61        Reviewed by: hyatt
62
63        * History.subproj/WebBackForwardList.m:
64        (+[WebBackForwardList setPageCacheSize:]):
65        (+[WebBackForwardList pageCacheSize]):
66        * WebView.subproj/WebPreferences.m:
67        (+[WebPreferences load]):
68        (-[WebPreferences _initialTimedLayoutSize]):
69        (-[WebPreferences _pageCacheSize]):
70        * WebView.subproj/WebPreferencesPrivate.h:
71
722002-12-03  Richard Williamson   <rjw@apple.com>
73
74        Fixed 3019986.  Use an array of font families instead of a single
75        font family to support CSS family lists.
76        r=hyatt
77        
78        * Misc.subproj/WebKitNSStringExtras.m:
79        (-[NSString _web_widthForString:font:]):
80        * Misc.subproj/WebStringTruncator.m:
81        (+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
82        (+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
83        * WebCoreSupport.subproj/WebTextRenderer.h:
84        * WebCoreSupport.subproj/WebTextRenderer.m:
85        (-[WebTextRenderer substituteFontForString:families:]):
86        (-[WebTextRenderer substituteFontForCharacters:length:families:]):
87        (-[WebTextRenderer widthForCharacters:length:]):
88        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:letterSpacing:wordSpacing:fontFamilies:]):
89        (-[WebTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
90        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
91        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:letterSpacing:wordSpacing:fontFamilies:]):
92        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:fontFamilies:]):
93        * WebCoreSupport.subproj/WebTextRendererFactory.h:
94        * WebCoreSupport.subproj/WebTextRendererFactory.m:
95        (-[WebTextRendererFactory fontWithFamilies:traits:size:]):
96        (-[WebTextRendererFactory fontWithFamily:traits:size:]):
97        (+[WebTextRendererFactory fallbackFontWithTraits:size:]):
98        (-[WebTextRendererFactory cachedFontFromFamily:traits:size:]):
99        (-[WebTextRendererFactory cachedFontFromFamilies:traits:size:]):
100        (-[WebTextRendererFactory rendererWithFamilies:traits:size:]):
101
1022002-12-03  Chris Blumenberg  <cblu@apple.com>
103
104	Fixed: 3115073 - REGRESSION: plants.com is crashing in WebIconDB with bad retain count
105
106	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.
107
108	We now consider icons without retain counts to not exist even if they're on disk.
109
110        * Misc.subproj/WebIconDatabase.m:
111        (-[WebIconDatabase _updateFileDatabase]):
112        (-[WebIconDatabase _setIconURL:forSiteURL:]):
113
1142002-12-03  Chris Blumenberg  <cblu@apple.com>
115
116	Fixed:
117	3112477 - REGRESSION: dropping image within window loads image in current window
118	Fix: Unregister the parent webview for dragging when the drag starts, reregister after the drag ends.
119
120	3116423 - Dragged images sometimes have the wrong promised-file file type
121	Fix: Make the - [NSView_web_dragPromisedImage...] method take a file type rather than deriving the file type from the URL
122
123	3115768 - REGRESSION: contextual menu item "copy url to clipboard" doesn't work
124	Fix: In [NSPastboard _web_writeURL:andTitle:withOwner:] adding pboard types  doesn't work for the general pasteboard, have to redeclare.
125
126	3116594 - Image on the drag pasteboard shouldn't have applied transparency and scaling
127	Fix: In - [NSView_web_dragPromisedImage...] put the original image on the pboard
128
129	Reviewed by John.
130
131        * Misc.subproj/WebNSPasteboardExtras.m:
132        (-[NSPasteboard _web_writeURL:andTitle:withOwner:]): don't use addTypes as it doesn't work as I expected
133        * Misc.subproj/WebNSViewExtras.h:
134        * Misc.subproj/WebNSViewExtras.m:
135        (-[NSView _web_dragPromisedImage:origin:URL:fileType:title:event:]): put the original image on the pboard, not the drag image
136        * WebView.subproj/WebHTMLView.m:
137        (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]):
138        (-[WebHTMLView mouseDragged:]): call _web_dragPromisedImage
139        (-[WebHTMLView draggedImage:endedAt:operation:]): call -[WebView _reregisterDraggedTypes]
140        * WebView.subproj/WebImageView.m:
141        (-[WebImageView mouseDragged:]): call _web_dragPromisedImage
142        (-[WebImageView draggedImage:endedAt:operation:]): call -[WebView _reregisterDraggedTypes]
143        * WebView.subproj/WebView.m:
144        (-[WebView initWithFrame:]): call _reregisterDraggedTypes
145        (-[WebView draggingEntered:]): simplified, don't need to check drag source
146        * WebView.subproj/WebViewPrivate.h:
147        * WebView.subproj/WebViewPrivate.m:
148        (-[WebView _reregisterDraggedTypes]):
149
1502002-12-03  Darin Adler  <darin@apple.com>
151
152	- fixed 3114796 -- WORLD LEAKS: 1 WebFrame leaked on trivial source file with <html> tag only
153	(probably fixed a ton of other bugs too, since this always leaks)
154
155	Reviewed by Chris.
156
157        * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _elementAtPoint:]):
158	Added a missing autorelease.
159
1602002-12-03  Darin Adler  <darin@apple.com>
161
162	Reviewed by Maciej.
163
164        * WebView.subproj/WebView.m: Fixed a pair of strings that conflict.
165        * English.lproj/Localizable.strings: Regenerated.
166        * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
167
1682002-12-02  Trey Matteson  <trey@apple.com>
169
170	Refined bookmark notifications to be more detailed.  We now have added, removed,
171	willChange and didChange.
172
173        * Bookmarks.subproj/WebBookmarkGroup.h:   New API.
174        * Bookmarks.subproj/WebBookmarkGroup.m:
175        (-[WebBookmarkGroup _sendNotification:forBookmark:children:]):
176        (-[WebBookmarkGroup _setTopBookmark:]):
177        (-[WebBookmarkGroup _bookmarkWillChange:]):
178        (-[WebBookmarkGroup _bookmarkDidChange:]):
179        (-[WebBookmarkGroup _bookmarkChildren:wereAddedToParent:]):
180        (-[WebBookmarkGroup _bookmarkChildren:wereRemovedToParent:]):
181	All just small pieces of flow control for posting the notes.
182        * Bookmarks.subproj/WebBookmarkGroupPrivate.h:  Internal methods for posting the notes.
183        * Bookmarks.subproj/WebBookmarkLeaf.m:
184        (-[WebBookmarkLeaf setTitle:]):  Post da note
185        (-[WebBookmarkLeaf setURLString:]):  Post da note
186        (-[WebBookmarkLeaf description]):  Added for debugging.
187        * Bookmarks.subproj/WebBookmarkList.m:
188        (-[WebBookmarkList setTitle:]):  Post da note
189        (-[WebBookmarkList removeChild:]):  Post da note
190        (-[WebBookmarkList insertChild:atIndex:]):  Post da note
191        * Bookmarks.subproj/WebBookmarkProxy.m:
192        (-[WebBookmarkProxy setTitle:]):  Post da note
193        * English.lproj/StringsNotToBeLocalized.txt:  New strings.
194        * WebKit.exp:   New strings.
195
1962002-12-02  Maciej Stachowiak  <mjs@apple.com>
197
198	- added original URL field to action dictionary so that policy delegates
199	can avoid prompting over and over on redirects.
200	
201        * WebKit.exp:
202        * WebView.subproj/WebControllerPolicyDelegate.h:
203        * WebView.subproj/WebControllerPolicyDelegate.m:
204        * WebView.subproj/WebDataSource.m:
205        (-[WebDataSource initWithRequest:]):
206        * WebView.subproj/WebDataSourcePrivate.m:
207        (-[WebDataSource _startLoading:]):
208        * WebView.subproj/WebFrame.m:
209        (-[WebFrame loadRequest:]):
210        * WebView.subproj/WebFramePrivate.h:
211        * WebView.subproj/WebFramePrivate.m:
212        (-[WebFrame _actionInformationForNavigationType:event:originalURL:]):
213        (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
214        (-[WebFrame _addExtraFieldsToRequest:]):
215        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
216        (-[WebFrame _postWithURL:data:contentType:triggeringEvent:]):
217
2182002-11-28  Darin Adler  <darin@apple.com>
219
220        * Downloads.subproj/WebDownloadHandler.m:
221        (-[WebDownloadHandler createFileIfNecessary]): Add a FIXME.
222        (-[WebDownloadHandler writeDataForkData:resourceForkData:]): Notify that the file system has
223	changed so the Finder can respond to the size change.
224        (-[WebDownloadHandler finishedLoading]): Notify that the file system has changed now that the
225	download has completed and the files are closed (may be redundant now that we have the above,
226	but will do no harm).
227
228        * Plugins.subproj/WebBaseNetscapePluginView.m:
229        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
230	Use _web_isCaseInsensitiveEqualToString instead of lowercaseString.
231
232        * Misc.subproj/WebNSViewExtras.m: Tweak formatting.
233	
2342002-11-27  Richard Williamson   <rjw@apple.com>
235
236        Fixed 3113393.  Client side redirects that happen <= 1 second
237        update the current back/forward item, rather than creating
238        a new one.
239
240        * WebView.subproj/WebFramePrivate.h:
241        * WebView.subproj/WebFramePrivate.m:
242        (-[WebFrame _addBackForwardItemClippedAtTarget:]):
243        (-[WebFrame _createOrUpdateItem]):
244        (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]):
245        (-[WebFrame _transitionToCommitted:]):
246        (-[WebFrame _clientRedirectedTo:delay:fireDate:]):
247        (-[WebFrame _clientRedirectCancelled]):
248
2492002-11-27  Richard Williamson   <rjw@apple.com>
250
251        Fixed measurement error for Ahem font (and any font that
252        has a tiny fractional value). 3112745, 3112742
253         
254        * WebCoreSupport.subproj/WebTextRenderer.m:
255        (-[WebTextRenderer initWithFont:]):
256
2572002-11-26  Chris Blumenberg  <cblu@apple.com>
258
259	Fixed: 3090834 - Launch WMP (Window Media Player) when encountering WMP content
260
261	Added contentURL to WebPluginError. 
262
263        * Plugins.subproj/WebNetscapePluginDocumentView.m:
264        (-[WebNetscapePluginDocumentView setDataSource:]):
265        * Plugins.subproj/WebNetscapePluginPackage.m:
266        (-[WebNetscapePluginPackage initWithPath:]):
267        * Plugins.subproj/WebNullPluginView.m:
268        (-[WebNullPluginView viewDidMoveToWindow]):
269        * Plugins.subproj/WebPluginError.h:
270        * Plugins.subproj/WebPluginError.m:
271        (-[WebPluginErrorPrivate dealloc]):
272        (-[WebPluginError dealloc]):
273        * WebCoreSupport.subproj/WebBridge.m:
274        (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]):
275        (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):
276
277=== Alexander-34 ===
278
2792002-11-26  Richard Williamson   <rjw@apple.com>
280
281        Only cache page if the load has completed.
282        * WebView.subproj/WebFramePrivate.m:
283        (-[WebFrame _setState:]):
284
2852002-11-26  Chris Blumenberg  <cblu@apple.com>
286
287	Removed some logging.
288
289        * WebView.subproj/WebControllerPrivate.m:
290        (+[WebController _supportedImageMIMETypes]):
291
2922002-11-26  Chris Blumenberg  <cblu@apple.com>
293
294	Fixed: 3112003 - Show standalone tiffs using AppKit not QT plug-in
295
296	We now dynamically check NSImage for supported image types when registering WebImageView's and WebImageRepresentation's supported MIME types. 
297
298        * WebView.subproj/WebControllerPrivate.h:
299        * WebView.subproj/WebControllerPrivate.m:
300        (+[WebController _supportedImageMIMETypes]): convert NSImage types to mime types
301        * WebView.subproj/WebDataSourcePrivate.m:
302        (+[WebDataSource _repTypes]): use _supportedImageMIMETypes to register mime types of WebImageRepresentation
303        * WebView.subproj/WebViewPrivate.m:
304        (+[WebView _viewTypes]): use _supportedImageMIMETypes to register mime types of WebImageView
305
3062002-11-26  Chris Blumenberg  <cblu@apple.com>
307
308	Fixed: 3061174 - javascript: URLs sent by plugins don't work
309
310	For "Javascript:" URLs. 
311
312        * Plugins.subproj/WebBaseNetscapePluginView.m:
313        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): lowercase the scheme
314
3152002-11-26  Richard Williamson   <rjw@apple.com>
316
317        More work on back/forward cache.  It's ready for
318        more general testing.  Although, to be safe I've
319        left it disabled by default for tomorrow's release.
320        It will log when a page is save and restored from
321        the page cache.
322                
323        * WebCoreSupport.subproj/WebBridge.m:
324        (-[WebBridge saveDocumentToPageCache:]):
325        * WebView.subproj/WebDataSourcePrivate.m:
326        (-[WebDataSource _startLoading:]):
327        (-[WebDataSource _commitIfReady:]):
328        (-[WebDataSource _loadIcon]):
329        * WebView.subproj/WebFramePrivate.h:
330        * WebView.subproj/WebFramePrivate.m:
331        (-[WebFrame _transitionToCommitted:]):
332        (-[WebFrame _setState:]):
333        (-[WebFrame _loadItem:fromItem:withLoadType:]):
334        (-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):
335        (-[WebFrame _setProvisionalDataSource:]):
336
3372002-11-25  Richard Williamson   <rjw@apple.com>
338
339        Cleanup leaking objects in page cache.
340        Cleaned up API a bit.
341        
342        * History.subproj/WebBackForwardList.h:
343        * History.subproj/WebBackForwardList.m:
344        (-[WebBackForwardList dealloc]):
345        (+[WebBackForwardList setUsesPageCache:]):
346        (+[WebBackForwardList usesPageCache]):
347        (+[WebBackForwardList setPageCacheSize:]):
348        (+[WebBackForwardList pageCacheSize]):
349        * History.subproj/WebHistoryItem.h:
350        * History.subproj/WebHistoryItem.m:
351        (-[WebHistoryItem setHasPageCache:]):
352        * WebCoreSupport.subproj/WebBridge.m:
353        (-[WebBridge saveDocumentToPageCache:]):
354        * WebKit.exp:
355        * WebView.subproj/WebFramePrivate.m:
356        (-[WebFrame _canCachePage]):
357        (-[WebFrame _purgePageCache]):
358        (-[WebFrame _setState:]):
359        (-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):
360
3612002-11-25  Richard Williamson   <rjw@apple.com>
362
363        Changed ordering of cachability check.
364        
365        * WebView.subproj/WebFramePrivate.m:
366        (-[WebFrame _setState:]):
367
3682002-11-25  Richard Williamson   <rjw@apple.com>
369
370        Changes fro back/forward cache.
371        
372        * History.subproj/WebHistoryItem.h:
373        * History.subproj/WebHistoryItem.m:
374        (+[WebHistoryItem setUsePageCache:]):
375        (+[WebHistoryItem usePageCache]):
376        * WebCoreSupport.subproj/WebBridge.m:
377        (-[WebBridge saveDocumentToPageCache:]):
378        * WebView.subproj/WebFramePrivate.h:
379        * WebView.subproj/WebFramePrivate.m:
380        (-[WebFrame _detachFromParent]):
381        (-[WebFrame _canCachePage]):
382        (-[WebFrame _setState:]):
383
3842002-11-25  Chris Blumenberg  <cblu@apple.com>
385
386	Fixed 2 drag-related crashes. Oops.
387
388        * Misc.subproj/WebNSViewExtras.m:
389        (-[NSView _web_dragPromisedImage:fromOrigin:withURL:title:event:]): put nil at the end of the array list.
390        * WebView.subproj/WebHTMLView.m:
391        (-[WebHTMLView mouseDragged:]): retain self before drag
392
3932002-11-25  Chris Blumenberg  <cblu@apple.com>
394
395	- Allow missing icons to be restored when going to the page of the missing icon.
396
397        * Misc.subproj/WebIconDatabase.m:
398        (-[WebIconDatabase _setIconURL:forSiteURL:]):
399
4002002-11-25  Richard Williamson   <rjw@apple.com>
401
402        Changes for back/forward.  Currently disabled.
403
404        * History.subproj/WebHistoryItem.h:
405        * History.subproj/WebHistoryItem.m:
406        (-[WebHistoryItem dealloc]):
407        (-[WebHistoryItem setPageCacheEnabled:]):
408        (-[WebHistoryItem pageCache]):
409        * Misc.subproj/WebKitLogging.h:
410        * Misc.subproj/WebKitLogging.m:
411        * WebCoreSupport.subproj/WebBridge.m:
412        (-[WebBridge saveDocumentToPageCache:]):
413        * WebView.subproj/WebDataSource.m:
414        (-[WebDataSource startLoading]):
415        * WebView.subproj/WebDataSourcePrivate.h:
416        * WebView.subproj/WebDataSourcePrivate.m:
417        (-[WebDataSource _startLoading:]):
418        (-[WebDataSource _startLoading]):
419        (-[WebDataSource _commitIfReady:]):
420        (-[WebDataSource _commitIfReady]):
421        (-[WebDataSource _setStoredInPageCache:]):
422        (-[WebDataSource _storedInPageCache]):
423        * WebView.subproj/WebFramePrivate.h:
424        * WebView.subproj/WebFramePrivate.m:
425        (-[WebFrame _transitionToCommitted:]):
426        (-[WebFrame _canCachePage]):
427        (-[WebFrame _purgePageCache]):
428        (-[WebFrame _setState:]):
429        (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]):
430        (-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):
431
4322002-11-25  Richard Williamson   <rjw@apple.com>
433
434        Fixed exception thrown often when creating mouseover status text (3110186).
435        
436        * WebView.subproj/WebHTMLViewPrivate.m:
437        (-[WebHTMLView _elementAtPoint:]):
438
4392002-11-25  Darin Adler  <darin@apple.com>
440
441	- fixed a problem I discovered in testing where multiple identical bookmarks confuse us
442
443        * Bookmarks.subproj/WebBookmarkList.m:
444        (-[WebBookmarkList removeChild:]): Use indexOfObjectIdenticalTo: and removeObjectIdenticalTo:
445	instead of containsObject: and removeObject:.
446        (-[WebBookmarkList insertChild:atIndex:]): Use indexOfObjectIdenticalTo: instead of
447	containsObject: in the assertion.
448
4492002-11-25  Chris Blumenberg  <cblu@apple.com>
450
451	Fixed: 3084350 - No URL flavors provided for images
452
453        * Misc.subproj/WebNSViewExtras.h:
454        * Misc.subproj/WebNSViewExtras.m:
455        (-[NSView _web_dragPromisedImage:fromOrigin:withURL:title:event:]): renamed, simplifies dragging an image
456        (-[WebFilePromiseDragSource initWithSource:]): subclass of NSFilePromiseDragSource, to be used later
457        (-[WebFilePromiseDragSource draggingSource]):
458        (-[WebFilePromiseDragSource dealloc]):
459        * WebView.subproj/WebHTMLView.m:
460        (-[WebHTMLView mouseDragged:]): call _web_dragPromisedImage:fromOrigin:withURL:title:event:, retain self
461        (-[WebHTMLView draggedImage:endedAt:operation:]): added, release self
462        * WebView.subproj/WebImageView.m:
463        (-[WebImageView mouseDragged:]): call _web_dragPromisedImage:fromOrigin:withURL:title:event:, retain self
464        (-[WebImageView draggedImage:endedAt:operation:]): added, release self
465        * WebView.subproj/WebView.m:
466        (-[WebView isDocumentHTML]): call isKindOfClass instead of className
467        (-[WebView draggingEntered:]): check for WebFilePromiseDragSource
468
4692002-11-24  Trey Matteson  <trey@apple.com>
470
471	Added URLString method to WebHistoryItem to avoid silly conversions between
472	NSURL and NSString.  When the dust settles with our plans for NSURL we can
473	rationalize this API with the rest of WebKit.
474
475        * History.subproj/WebHistoryItem.h:
476        * History.subproj/WebHistoryItem.m:
477        (-[WebHistoryItem URLString]):
478
4792002-11-24  Chris Blumenberg  <cblu@apple.com>
480
481	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.
482
483        * WebView.subproj/WebController.h:
484        * WebView.subproj/WebController.m:
485        * WebView.subproj/WebHTMLViewPrivate.m:
486        (-[WebHTMLView _elementAtPoint:]):
487
4882002-11-24  Chris Blumenberg  <cblu@apple.com>
489
490	Fixed: 3109945 - Assertion failure in -[WebIconDatabase_largestIconFromDictionary:]
491	Added error strings for download decoding errors.
492
493        * English.lproj/Localizable.strings: Added error strings for download decoding errors
494        * English.lproj/StringsNotToBeLocalized.txt:
495        * Misc.subproj/WebIconDatabase.m:
496        (-[WebIconDatabase _loadIconDictionaries]): tweak
497        (-[WebIconDatabase _updateFileDatabase]): more error checking to prevent assert
498        (-[WebIconDatabase _setIconURL:forSiteURL:]): added asserts to prevent a site URL <-> icon URL mapping without a icon URL -> icon mapping
499        (-[WebIconDatabase _largestIconFromDictionary:]): tweak
500        * Misc.subproj/WebNSPasteboardExtras.m:
501        (-[NSPasteboard _web_writeURL:andTitle:withOwner:]): declare pboard types if none have been declared, else append types
502        * WebView.subproj/WebView.m:
503        (+[WebView initialize]): Added error strings for download decoding errors
504
5052002-11-24  Maciej Stachowiak  <mjs@apple.com>
506
507	- fixed 3067939 - no support for window.document.lastModified
508
509        * WebView.subproj/WebDataSourcePrivate.m:
510        (-[WebDataSource _commitIfReady]): Pass last modified date to WebCore.
511        * WebView.subproj/WebFramePrivate.m:
512        (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]): Pass
513	nil last modified date.
514
5152002-11-23  Chris Blumenberg  <cblu@apple.com>
516
517	Fixed: 3109835 - Download errors aren't communicated to client
518
519	Cleaned-up WebMainResourceClient and WebBaseResourceHandleDelegate a little.
520
521        * Misc.subproj/WebIconDatabase.m:
522        (-[WebIconDatabase defaultIconWithSize:]): tweak
523        (-[WebIconDatabase releaseIconForSiteURL:]): don't retain site URL here 
524        (-[WebIconDatabase _setIcon:forIconURL:]): tweak
525        (-[WebIconDatabase _setIconURL:forSiteURL:]): tweak
526        (-[WebIconDatabase _releaseIconForIconURLString:]): retain site URL here 
527        (-[WebIconDatabase _releaseFutureIconForSiteURL:]): tweak
528        (-[WebIconDatabase _sendNotificationForSiteURL:]): tweak
529        * WebView.subproj/WebBaseResourceHandleDelegate.h:
530        * WebView.subproj/WebBaseResourceHandleDelegate.m:
531        (-[WebBaseResourceHandleDelegate cancelWithError:]): made public
532        (-[WebBaseResourceHandleDelegate cancel]): cancel downloads too, call cancelWithError
533        (-[WebBaseResourceHandleDelegate cancelQuietly]): call cancelWithError
534        (-[WebBaseResourceHandleDelegate cancelledError]): tweak
535        (-[WebBaseResourceHandleDelegate notifyDelegatesOfInterruptionByPolicyChange]): tweak
536        * WebView.subproj/WebMainResourceClient.m:
537        (-[WebMainResourceClient receivedError:]): stop downloadHandler if downloading, else notify controller
538        (-[WebMainResourceClient cancel]): call receivedError
539        (-[WebMainResourceClient checkContentPolicyForResponse:andCallSelector:]): tweak
540        (-[WebMainResourceClient handle:didReceiveData:]): stop load for download errors, report error
541        (-[WebMainResourceClient handleDidFinishLoading:]): call didFailLoadingWithError is download error
542        (-[WebMainResourceClient handle:didFailLoadingWithError:]): call receivedError
543
5442002-11-22  Darin Adler  <darin@apple.com>
545
546        * Misc.subproj/WebCoreStatistics.h:
547        * Misc.subproj/WebCoreStatistics.m:
548        (+[WebCoreStatistics javaScriptRootObjectClasses]):
549	Update for name change -- root object classes, not all live object classes.
550
5512002-11-22  Chris Blumenberg  <cblu@apple.com>
552
553	Fixed assertion while loading local files.
554
555        * Misc.subproj/WebIconDatabase.m: we don't have icon URLs for files
556        * WebView.subproj/WebDataSourcePrivate.m:
557        (-[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.
558
5592002-11-22  Chris Blumenberg  <cblu@apple.com>
560
561        * WebView.subproj/WebMainResourceClient.m:
562        (-[WebMainResourceClient continueAfterContentPolicy:response:]): Added a FIXME around saveFilenameForResponse:andRequest: because the API expects a path but is asking for a filename.
563
5642002-11-22  Chris Blumenberg  <cblu@apple.com>
565
566	Fixed: 3104693 - QT movie doesn't show video while still downloading
567
568	The initial size of plug-in should be 0,0 instead of 1,1 or else we don't get the layout
569
570        * Plugins.subproj/WebNetscapePluginDocumentView.m:
571        (-[WebNetscapePluginDocumentView initWithFrame:]):
572
5732002-11-22  Chris Blumenberg  <cblu@apple.com>
574
575	Fixed: 3078737 - Crash in -[WebHistoryItem dealloc] after closing last window
576
577        * Misc.subproj/WebIconDatabase.m:
578        (-[WebIconDatabase releaseIconForSiteURL:]): retain the site URL string because it may get released from beneath
579        (-[WebIconDatabase _updateFileDatabase]): tweak
580        (-[WebIconDatabase _iconsForIconURLString:]): disable timings for deployment build
581        (-[WebIconDatabase _setIconURL:forSiteURL:]): tweak
582        (-[WebIconDatabase _releaseIconForIconURLString:]): tweak
583        (-[WebIconDatabase _scaleIcon:toSize:]): disable timings for deployment build
584        * Misc.subproj/WebIconDatabasePrivate.h:
585        * WebView.subproj/WebDataSourcePrivate.m:
586        (-[WebDataSource _updateIconDatabaseWithURL:]): new, does the db binding
587        (-[WebDataSource _loadIcon]): call _updateIconDatabaseWithURL
588
5892002-11-22  Chris Blumenberg  <cblu@apple.com>
590
591	Attempt to fix: 3078737 - Crash in -[WebHistoryItem dealloc] after closing last window
592	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.
593
594        * Misc.subproj/WebIconDatabase.h:
595        * Misc.subproj/WebIconDatabase.m:
596        (-[WebIconDatabase init]):
597        (-[WebIconDatabase iconForSiteURL:withSize:cache:]):
598        (-[WebIconDatabase iconForSiteURL:withSize:]):
599        (-[WebIconDatabase retainIconForSiteURL:]):
600        (-[WebIconDatabase releaseIconForSiteURL:]):
601        (-[WebIconDatabase delayDatabaseCleanup]):
602        (-[WebIconDatabase allowDatabaseCleanup]):
603        (-[WebIconDatabase _iconDictionariesAreGood]):
604        (-[WebIconDatabase _loadIconDictionaries]):
605        (-[WebIconDatabase _updateFileDatabase]):
606        (-[WebIconDatabase _hasIconForSiteURL:]):
607        (-[WebIconDatabase _iconsForIconURLString:]):
608        (-[WebIconDatabase _iconForFileURL:withSize:]):
609        (-[WebIconDatabase _setIcon:forIconURL:]):
610        (-[WebIconDatabase _setIconURL:forSiteURL:]):
611        (-[WebIconDatabase _retainIconForIconURLString:]):
612        (-[WebIconDatabase _releaseIconForIconURLString:]):
613        (-[WebIconDatabase _retainFutureIconForSiteURL:]):
614        (-[WebIconDatabase _releaseFutureIconForSiteURL:]):
615        (-[WebIconDatabase _releaseOriginalIconsOnDisk]):
616        (-[WebIconDatabase _sendNotificationForSiteURL:]):
617        (-[WebIconDatabase _addObject:toSetForKey:inDictionary:]):
618        (-[WebIconDatabase _largestIconFromDictionary:]):
619        (-[WebIconDatabase _iconsBySplittingRepresentationsOfIcon:]):
620        (-[WebIconDatabase _iconFromDictionary:forSize:cache:]):
621        (-[WebIconDatabase _scaleIcon:toSize:]):
622        * Misc.subproj/WebIconDatabasePrivate.h:
623        * WebKit.exp:
624        * WebView.subproj/WebDataSourcePrivate.m:
625        (-[WebDataSource _loadIcon]):
626
6272002-11-22  Richard Williamson   <rjw@apple.com>
628
629        Fixed rendering issues associated with 3100120.
630        We now correctly map surrogate pairs in UTF-16.  khtml still has
631        issues dealing with characters outside BMP.  These are tracked
632        with 3109251 and 3109258.
633        
634        Surrogate pairs are treated as exceptions and have their own character
635        to glyph map.
636        
637        * Misc.subproj/WebUnicode.h:
638        * Misc.subproj/WebUnicode.m:
639        (shapedString):
640        * WebCoreSupport.subproj/WebTextRenderer.h:
641        * WebCoreSupport.subproj/WebTextRenderer.m:
642        (glyphForUnicodeCharacter):
643        (findLengthOfCharacterCluster):
644        (-[WebTextRenderer substituteFontForString:]):
645        (-[WebTextRenderer convertUnicodeCharacters:length:toGlyphs:]):
646        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):
647        (-[WebTextRenderer extendUnicodeCharacterToGlyphMapToInclude:]):
648        (-[WebTextRenderer extendCharacterToGlyphMapToInclude:]):
649
6502002-11-22  John Sullivan  <sullivan@apple.com>
651
652        * Resources/url_icon.tiff:
653	new generic URL icon -- little blue globe, pretty nice
654
655        * WebKit.exp:
656	removed symbol for WebTextRendererFactory which was in here
657	to support an obsolete SPI hack
658
6592002-11-22  Trey Matteson  <trey@apple.com>
660
661	Added more detailed notifications on history changes.
662	All changes below are just posting the new notes at the right time.
663
664        * English.lproj/StringsNotToBeLocalized.txt:
665        * History.subproj/WebHistory.h:
666        * History.subproj/WebHistory.m:
667        (-[WebHistory _sendNotification:entries:]):
668        (-[WebHistory addEntry:]):
669        (-[WebHistory removeEntry:]):
670        (-[WebHistory removeEntries:]):
671        (-[WebHistory removeAllEntries]):
672        (-[WebHistory addEntries:]):
673        (-[WebHistory loadHistory]):
674        * WebKit.exp:
675
6762002-11-22  Richard Williamson   <rjw@apple.com>
677
678        Changed NSString category methods to include _web_ prefix.
679
680        * Misc.subproj/WebKitNSStringExtras.h:
681        * Misc.subproj/WebKitNSStringExtras.m:
682        (-[NSString _web_widthForString:font:]):
683
6842002-11-22  Richard Williamson   <rjw@apple.com>
685
686        Simplified drawing and measuring SPI for use by Alex.
687
688        * Misc.subproj/WebKitNSStringExtras.h: Added.
689        * Misc.subproj/WebKitNSStringExtras.m: Added.
690        (-[NSString widthForString:font:]):
691        * WebKit.pbproj/project.pbxproj:
692
6932002-11-21  Chris Blumenberg  <cblu@apple.com>
694
695	Removed workaround for: 3093170 - Handle clients receive data with length 0
696
697	as it's now fixed.
698
699        * Downloads.subproj/WebDownloadHandler.m:
700        (-[WebDownloadHandler receivedData:]): remove workaround
701        * WebView.subproj/WebMainResourceClient.m:
702        (-[WebMainResourceClient handle:didReceiveData:]): added asserts
703
7042002-11-21  Richard Williamson   <rjw@apple.com>
705
706        A different fix to 3078065 that doesn't depend on the appkit's idea of
707        fixed pitch font.
708        
709        The fix is to adjust the width of all characters that have the same width
710        as the space character to match the adjustment of the space character.
711        This has the slight downside that non-monospace fonts that contain glyphs
712        with the same width as the space character will have an extra adjustment.
713        In practice this is not noticeable as the adjustment is always sub-pixel.
714        Nor of course does this cause any mislayout, as it's done at the lowest
715        level for both measurement and drawing.
716        
717        Until we move kthml internals to floats this will be just fine.
718        
719        * WebCoreSupport.subproj/WebTextRenderer.h:
720        * WebCoreSupport.subproj/WebTextRenderer.m:
721        (widthForGlyph):
722        (-[WebTextRenderer initWithFont:]):
723        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):
724tAfterNavigationPolicy:request:]):
725
7262002-11-21  Maciej Stachowiak  <mjs@apple.com>
727
728        * Makefile.am: Pass symroots for this tree to pbxbuild.
729
7302002-11-21  Chris Blumenberg  <cblu@apple.com>
731
732	Fixed: 3009881 - plugins get mouse-overs even when mouse is in menus
733	Fixed: 3108240 - Loading datasource sometimes doesn't have cancelled error when cancelled
734
735        * Plugins.subproj/WebBaseNetscapePluginView.m:
736        (-[WebBaseNetscapePluginView sendNullEvent]): check if menus are showing
737        (-[WebBaseNetscapePluginView restartNullEvents]): tweak
738        * WebView.subproj/WebDataSourcePrivate.m:
739        (-[WebDataSource _stopLoading]): set cancelled error if main handle is gone
740
741=== Alexander-33 ===
742
7432002-11-20  Darin Adler  <darin@apple.com>
744
745        * Plugins.subproj/WebBaseNetscapePluginView.m:
746        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
747	Unescape the string before executing it, so we don't suffer from bug 3083043
748	here in the javascript: URLs that come from plug-ins.
749
750        * English.lproj/StringsNotToBeLocalized.txt: Update.
751
7522002-11-20  Chris Blumenberg  <cblu@apple.com>
753
754	Fixed: 3079134 - Throttle plug-ins while in background
755
756        * Plugins.subproj/WebBaseNetscapePluginView.h:
757        * Plugins.subproj/WebBaseNetscapePluginView.m:
758        (-[WebBaseNetscapePluginView sendNullEvent]): new
759        (-[WebBaseNetscapePluginView stopNullEvents]): stops timer
760        (-[WebBaseNetscapePluginView restartNullEvents]): stops timer if there is one, and starts a new one based on window activation state
761        (-[WebBaseNetscapePluginView start]): call restartNullEvents
762        (-[WebBaseNetscapePluginView stop]): call stopNullEvents
763        (-[WebBaseNetscapePluginView windowBecameKey:]): call restartNullEvents
764        (-[WebBaseNetscapePluginView windowResignedKey:]): call restartNullEvents
765        (-[WebBaseNetscapePluginView windowDidMiniaturize:]): call stopNullEvents
766        (-[WebBaseNetscapePluginView windowDidDeminiaturize:]): call restartNullEvents
767        * Plugins.subproj/WebNetscapePluginNullEventSender.h: Removed. No need for another class, use a timer.
768        * Plugins.subproj/WebNetscapePluginNullEventSender.m: Removed. No need for another class, use a timer.
769        * WebKit.pbproj/project.pbxproj:
770
7712002-11-20  Richard Williamson   <rjw@apple.com>
772
773        Fixed 3107007.  Letter-spacing is causing width to be miscalculated.
774        This also fixed some selection problems.
775        
776        * WebCoreSupport.subproj/WebTextRenderer.m:
777        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):
778
7792002-11-20  Richard Williamson   <rjw@apple.com>
780
781        Fixed mono spaced fonts to always render with mono spacing! (3078065)
782        
783        * WebCoreSupport.subproj/WebTextRenderer.h:
784        * WebCoreSupport.subproj/WebTextRenderer.m:
785        (widthForGlyph):
786        (-[WebTextRenderer initWithFont:]):
787
7882002-11-20  Chris Blumenberg  <cblu@apple.com>
789
790	Fixed: 3074926 - crash in BitsToPix() trying to print cnet page
791
792        * Plugins.subproj/WebBaseNetscapePluginView.m:
793        (-[WebBaseNetscapePluginView drawRect:]): disable experimental plug-in printing code.
794
7952002-11-20  Chris Blumenberg  <cblu@apple.com>
796
797	Minor clean-up, logging and more error checking in plug-in code.
798
799        * Plugins.subproj/WebBaseNetscapePluginStream.m:
800        (-[WebBaseNetscapePluginStream setResponse:]):
801        (-[WebBaseNetscapePluginStream receivedData:]):
802        (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
803        * Plugins.subproj/npapi.m:
804        (NPN_UserAgent):
805        (NPN_MemFree):
806        (NPN_MemFlush):
807        (NPN_ReloadPlugins):
808
8092002-11-20  Chris Blumenberg  <cblu@apple.com>
810	
811	Fixed: 3061174 - javascript: URLs sent by plugins don't work
812
813        * Plugins.subproj/WebBaseNetscapePluginView.m:
814        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
815
8162002-11-20  Darin Adler  <darin@apple.com>
817
818        * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
819
8202002-11-19  Chris Blumenberg  <cblu@apple.com>
821
822	Fixed: 3106061 - REGRESSION: Copy in text view copies all text not just selection
823
824        * Misc.subproj/WebSearchableTextView.m:
825        (-[WebSearchableTextView copy:]):
826
8272002-11-19  Chris Blumenberg  <cblu@apple.com>
828
829	Fixed: 3092588 - redraw errors in QT controller if window is in background
830
831	We need to send update events after we activate/deactivate after all.
832
833        * Plugins.subproj/WebBaseNetscapePluginView.m:
834        (-[WebBaseNetscapePluginView windowBecameKey:]):
835        (-[WebBaseNetscapePluginView windowResignedKey:]):
836
8372002-11-19  Chris Blumenberg  <cblu@apple.com>
838
839	Fixed: 3020720 - dropping a folder in the page address makes the folder open in Finder, empties the field
840
841        * Misc.subproj/WebNSPasteboardExtras.m:
842        (-[NSPasteboard _web_bestURL]): Don't accept directories.
843
8442002-11-19  Chris Blumenberg  <cblu@apple.com>
845
846	Fixed: 3068112 - extra line breaks when copying from source window
847
848        * Misc.subproj/WebSearchableTextView.m:
849        (-[WebSearchableTextView copy:]): Convert CRLF to LF
850
8512002-11-19  David Hyatt  <hyatt@apple.com>
852
853	Make sure that if the scrollers are shown/hidden that we
854	force an immediate layout, since if we don't, an intervening
855	display can cause us to show scrollbars when they really
856	shouldn't be there.
857	
858        * WebView.subproj/WebDynamicScrollBarsView.m:
859        (-[WebDynamicScrollBarsView updateScrollers]):
860
8612002-11-19  Chris Blumenberg  <cblu@apple.com>
862
863	Fixed: 3100597 - repro NSArray exception using contextual menu
864
865        * Misc.subproj/WebNSPasteboardExtras.m:
866        (-[NSPasteboard _web_writeURL:andTitle:withOwner:]): more error checking
867
8682002-11-19  Trey Matteson  <trey@apple.com>
869
870	Just a tweak to the description printout.
871
872        * History.subproj/WebHistoryItem.m:
873        (-[WebHistoryItem description]):
874
8752002-11-18  Chris Blumenberg  <cblu@apple.com>
876
877	Real fix for: 3104183 - Assert loading www.louisvuitton.com
878
879	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
880e 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.
881
882        * Plugins.subproj/WebNetscapePluginStream.m:
883        (-[WebNetscapePluginStream start]):
884        (-[WebNetscapePluginStream cancel]):
885        (-[WebNetscapePluginStream handleDidFinishLoading:]):
886        (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
887        * WebView.subproj/WebBaseResourceHandleDelegate.h:
888        * WebView.subproj/WebBaseResourceHandleDelegate.m:
889        (-[WebBaseResourceHandleDelegate _releaseResources]):
890        (-[WebBaseResourceHandleDelegate setDataSource:]):
891        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
892        (-[WebBaseResourceHandleDelegate handleDidFinishLoading:]):
893        (-[WebBaseResourceHandleDelegate handle:didFailLoadingWithError:]):
894        (-[WebBaseResourceHandleDelegate _cancelWithError:]):
895        * WebView.subproj/WebDataSourcePrivate.h:
896        * WebView.subproj/WebDataSourcePrivate.m:
897        (-[WebDataSourcePrivate dealloc]):
898        (-[WebDataSource _stopLoading]):
899        (-[WebDataSource _makeHandleDelegates:deferCallbacks:]):
900        (-[WebDataSource _defersCallbacksChanged]):
901
9022002-11-18  Chris Blumenberg  <cblu@apple.com>
903
904	Fixed: 3104183 - Assert loading www.louisvuitton.com
905
906	We need to treat plug-in streams like subresources except they don't change the loading state of the data source.
907
908        * Plugins.subproj/WebNetscapePluginStream.m:
909        (-[WebNetscapePluginStream start]): call _addPluginStream
910        (-[WebNetscapePluginStream cancel]): call _removePluginStream
911        (-[WebNetscapePluginStream handleDidFinishLoading:]): call _removePluginStream
912        (-[WebNetscapePluginStream handle:didFailLoadingWithError:]): call _removePluginStream
913        * WebView.subproj/WebDataSourcePrivate.h:
914        * WebView.subproj/WebDataSourcePrivate.m:
915        (-[WebDataSourcePrivate dealloc]): release pluginStreams
916        (-[WebDataSource _addPluginStream:]): just like addSubresourceClient except don't change the loading state.
917        (-[WebDataSource _removePluginStream:]): just like removeSubresourceClient except don't change the loading state.
918        (-[WebDataSource _stopLoading]): stop plug-ins streams
919        (-[WebDataSource _makeHandleDelegates:deferCallbacks:]): 
920        (-[WebDataSource _defersCallbacksChanged]): call _makeHandleDelegates:deferCallbacks: for subresources and plug-in streams.
921
9222002-11-18  Richard Williamson   <rjw@apple.com>
923
924        Check for usesBackForwardList was excluding all load types.
925        
926        * WebView.subproj/WebFramePrivate.m:
927        (-[WebFrame _transitionToCommitted]):
928
9292002-11-18  Chris Blumenberg  <cblu@apple.com>
930
931	Fixed: 3098767 - REGRESSION: standalone quicktime content just shows blank window
932
933	Check the instance not the class for the class type.
934
935        * Plugins.subproj/WebNetscapePluginRepresentation.m:
936        (-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
937
9382002-11-18  Ken Kocienda  <kocienda@apple.com>
939
940	Added feature to import bookmarks/favorites from MSIE. This
941	fixes Radar 2961230 (import Mac IE bookmarks).
942
943        * Bookmarks.subproj/WebBookmarkImporter.h: Added.
944        * Bookmarks.subproj/WebBookmarkImporter.m: Added.
945        (_breakStringIntoLines):
946        (_HREFRangeFromSpec):
947        (_HREFTextFromSpec):
948        (_linkTextRangeFromSpec):
949        (_linkTextFromSpec):
950        (-[WebBookmarkImporter initWithPath:group:]):
951        (-[WebBookmarkImporter topBookmark]):
952        (-[WebBookmarkImporter error]):
953        (-[WebBookmarkImporter dealloc]):
954        * Bookmarks.subproj/WebBookmarkList.m:
955        (-[WebBookmarkList init]): Create the bookmark list object. This
956	was not created with the -init initializer, causing bookmark lists
957	to fail.
958        * English.lproj/Localizable.strings:
959        * English.lproj/StringsNotToBeLocalized.txt:
960        * WebKit.exp:
961        * WebKit.pbproj/project.pbxproj:
962
9632002-11-17  Trey Matteson  <trey@apple.com>
964
965	Code cleanup to make some internal methods return autoreleased objects.
966
967        * WebView.subproj/WebFramePrivate.m:
968        (-[WebFrame _addBackForwardItemClippedAtTarget:]):
969        (-[WebFrame _createItem]):
970        (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]):
971        (-[WebFrame _transitionToCommitted]):
972
9732002-11-17  Trey Matteson  <trey@apple.com>
974
975	Fixed 3102076 - REGRESSION: infinite recursion involving bridge end
976	Fixed 3100929 - REGRESSION: serverRedirectedForDataSource: not sent on server redirects
977	Fixed 3103381 - REGRESSION: Going back from anchor doesn't restore scroll position
978
979        * WebView.subproj/WebBaseResourceHandleDelegate.m:
980        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):  Return the copy of the
981	request that we make instead of the original.
982        * WebView.subproj/WebMainResourceClient.m:
983        (-[WebMainResourceClient handle:willSendRequest:]):  Call super after we make our mods
984	to the request, so the copy that super makes for us includes those mods.
985
986        * WebView.subproj/WebFramePrivate.h:  Added new state, WebFrameStateCompleting.
987        * WebView.subproj/WebFramePrivate.m:
988        (-[WebFrame _transitionToLayoutAcceptable]):  Completing state is a NOP.
989        (-[WebFrame _transitionToCommitted]):  Completing state is a NOP.
990        (-[WebFrame _isLoadComplete]):  Go to Completing state before calling [bridge end].
991	Go to Completed state afterwards, only if no new loads started in the meantime.
992        (-[WebFrame _loadItem:fromItem:withLoadType:]):  When doing anchor nav to get to the
993	item, save and restore scroll state, and set the current item.
994        (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]):
995	Reorder the steps so the right scroll state gets saved to the right place.  Also, don't
996	add a backForward item if we're doing a client redirect to an anchor.
997
9982002-11-17  David Hyatt  <hyatt@apple.com>
999
1000	Back out my previous fix.  I have a better one that is
1001	confined to WebCore.
1002	
1003        * WebView.subproj/WebFramePrivate.m:
1004        (-[WebFrame _isLoadComplete]):
1005
10062002-11-17  David Hyatt  <hyatt@apple.com>
1007
1008	The needsdisplay is necessary even for HTML documents.
1009	I over-optimized here.  Fixes the directory.apple.com
1010	regression and the santa clara library regression.
1011	
1012        * WebView.subproj/WebFramePrivate.m:
1013        (-[WebFrame _isLoadComplete]):
1014
10152002-11-17  Darin Adler  <darin@apple.com>
1016
1017	- update for change to WebCore API so it never uses NSURL
1018
1019        * WebCoreSupport.subproj/WebBridge.m:
1020        (-[WebBridge createWindowWithURL:frameName:]): Take NSString instead of NSURL.
1021        (-[WebBridge startLoadingResource:withURL:]): Ditto.
1022        (-[WebBridge objectLoadedFromCacheWithURL:response:size:]): Ditto.
1023        (-[WebBridge reportClientRedirectToURL:delay:fireDate:]): Ditto.
1024        (-[WebBridge setIconURL:]): Ditto.
1025        (-[WebBridge setIconURL:withType:]): Ditto.
1026        (-[WebBridge loadURL:reload:triggeringEvent:isFormSubmission:]): Ditto.
1027        (-[WebBridge postWithURL:data:contentType:triggeringEvent:]): Ditto.
1028        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]): Ditto.
1029        (-[WebBridge userAgentForURL:]): Ditto.
1030        (-[WebBridge requestedURL]): Return NSString instead of NSURL.
1031        (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]): Take NSString instead of NSURL.
1032        (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]): Take NSString instead of NSURL.
1033
1034        * WebCoreSupport.subproj/WebCookieAdapter.m:
1035        (-[WebCookieAdapter cookiesForURL:]): Take NSString instead of NSURL.
1036        (-[WebCookieAdapter setCookies:forURL:policyBaseURL:]): Ditto.
1037
1038        * WebView.subproj/WebDataSourcePrivate.m:
1039        (-[WebDataSource _commitIfReady]): Pass NSString instead of NSURL.
1040        * WebView.subproj/WebFramePrivate.m:
1041        (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]): Pass NSString instead of NSURL
1042        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]): Turn bridge URL into NSURL so we
1043	can call _web_URLByRemovingFragment on it.
1044        * WebView.subproj/WebHTMLViewPrivate.m:
1045        (-[WebHTMLView _elementAtPoint:]): Convert NSString to NSURL when making the WebKit element dictionary.
1046
10472002-11-17  Maciej Stachowiak  <mjs@apple.com>
1048
1049	- fixed 2949193 - implement onKeyDown, onKeyPress, and onKeyUp event handlers
1050	
1051        * WebView.subproj/WebHTMLViewPrivate.h:
1052        * WebView.subproj/WebHTMLViewPrivate.m:
1053        (+[WebHTMLView load]): Pose as NSWindow too now.
1054        (-[WebHTMLView _interceptKeyEvent:toView:]): Pass event to WebCore and
1055	see if WebCore wants to block it.
1056        (-[WebNSWindow sendEvent:]): For all key events that would go to a
1057	subview of a WebHTMLView, let the WebHTMLView take a first crack
1058	at it.
1059
10602002-11-15  Darin Adler  <darin@apple.com>
1061
1062	- fixed 3079214 -- text/plain page shows up slowly, a few pages at a time
1063
1064        * WebView.subproj/WebTextView.m:
1065        (-[WebTextView initWithFrame:]): Remove unneeded setWidthTracksTextView:, because
1066	that's the default.
1067        (-[WebTextView dataSourceUpdated:]): Replace the thing each time in the RTF case.
1068        (-[WebTextView viewDidMoveToSuperview]): Here's where we resize, but only the width.
1069	Resizing the height was causing the bug.
1070        (-[WebTextView layout]): Do nothing.
1071        (-[WebTextView setAcceptsDrags:]): Update to new name. Since we weren't
1072	importing WebDocument.h, we never noticed that this file got out of sync.
1073        (-[WebTextView acceptsDrags]): Ditto.
1074        (-[WebTextView setAcceptsDrops:]): Ditto.
1075        (-[WebTextView acceptsDrops]): Ditto.
1076
1077        * WebView.subproj/WebDocument.h: Fix typo. It said setAcceptsDrags: twice.
1078
10792002-11-15  Darin Adler  <darin@apple.com>
1080
1081        * WebView.subproj/WebFramePrivate.m: Removed a bunch of tabs and fixed indenting.
1082
10832002-11-15  Maciej Stachowiak  <mjs@apple.com>
1084
1085	- fixed 3102016 - REGRESSION: Command-clicking on a link can open _two_ windows.
1086	
1087        * WebView.subproj/WebDataSourcePrivate.h:
1088        * WebView.subproj/WebDataSourcePrivate.m:
1089        (-[WebDataSource _setJustOpenedForTargetedLink:]):
1090        (-[WebDataSource _justOpenedForTargetedLink]):
1091        * WebView.subproj/WebFrame.m:
1092        (-[WebFrame findOrCreateFramedNamed:]):
1093        * WebView.subproj/WebFramePrivate.h:
1094        * WebView.subproj/WebFramePrivate.m:
1095        (-[WebFrame _continueAfterNavigationPolicy:]):
1096        (-[WebFrame _loadDataSource:withLoadType:]):
1097        (-[WebFrame _downloadRequest:toPath:]):
1098        (-[WebFrame _setJustOpenedForTargetedLink:]):
1099
11002002-11-15  Darin Adler  <darin@apple.com>
1101
1102        * WebView.subproj/WebFramePrivate.m:
1103        (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
1104	Give the listener a slightly longer lifetime, to make this API a bit more foolproof.
1105
11062002-11-15  Maciej Stachowiak  <mjs@apple.com>
1107
1108	Fix world leak I introduced, and also add an early return when needed.
1109	
1110        * WebView.subproj/WebFramePrivate.m:
1111        (-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]):
1112        (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
1113
11142002-11-15  Maciej Stachowiak  <mjs@apple.com>
1115
1116	Make navigation policy asynchronous for real.
1117	
1118        * WebKit.pbproj/project.pbxproj:
1119        * WebView.subproj/WebControllerPolicyDelegate.h:
1120        * WebView.subproj/WebControllerPolicyDelegate.m:
1121        (-[WebPolicyDecisionListenerPrivate initWithTarget:action:]):
1122        (-[WebPolicyDecisionListenerPrivate dealloc]):
1123        (-[WebPolicyDecisionListener usePolicy:]):
1124        (-[WebPolicyDecisionListener _initWithTarget:action:]):
1125        (-[WebPolicyDecisionListener dealloc]):
1126        (-[WebPolicyDecisionListener _invalidate]):
1127        * WebView.subproj/WebControllerPolicyDelegatePrivate.h: Added.
1128        * WebView.subproj/WebDefaultPolicyDelegate.m:
1129        (-[WebDefaultPolicyDelegate decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
1130        * WebView.subproj/WebFrame.m:
1131        (-[WebFrame stopLoading]):
1132        * WebView.subproj/WebFramePrivate.h:
1133        * WebView.subproj/WebFramePrivate.m:
1134        (-[WebFramePrivate dealloc]):
1135        (-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]):
1136        (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
1137        (-[WebFrame _continueAfterNavigationPolicy:]):
1138        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
1139        (-[WebFrame _loadDataSource:withLoadType:]):
1140
11412002-11-15  Maciej Stachowiak  <mjs@apple.com>
1142
1143	Wrap content policy invocation to look asynchronous.
1144	
1145        * WebView.subproj/WebBaseResourceHandleDelegate.h:
1146        * WebView.subproj/WebMainResourceClient.m:
1147        (-[WebMainResourceClient continueAfterContentPolicy:response:]):
1148        (-[WebMainResourceClient checkContentPolicyForResponse:andCallSelector:]):
1149        (-[WebMainResourceClient handle:didReceiveResponse:]):
1150
11512002-11-15  Maciej Stachowiak  <mjs@apple.com>
1152
1153	Refactor so that all invocations of navigation policy are set up
1154	to be asynchronous. However, the actually delegate method is not
1155	async yet.
1156	
1157        * WebView.subproj/WebFramePrivate.h:
1158        * WebView.subproj/WebFramePrivate.m:
1159        (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
1160        (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]):
1161        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
1162        (-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):
1163        (-[WebFrame _loadDataSource:withLoadType:]):
1164        * WebView.subproj/WebMainResourceClient.h:
1165        * WebView.subproj/WebMainResourceClient.m:
1166        (-[WebMainResourceClient stopLoadingForPolicyChange]):
1167        (-[WebMainResourceClient continueAfterNavigationPolicy:request:]):
1168        (-[WebMainResourceClient handle:willSendRequest:]):
1169        (-[WebMainResourceClient handle:didReceiveResponse:]):
1170
11712002-11-14  Maciej Stachowiak  <mjs@apple.com>
1172
1173	Refactor things a bit so all loads bottleneck through a single
1174	method (_loadDataSource:withLoadType:).
1175	
1176        * WebView.subproj/WebFrame.m:
1177        (-[WebFrame loadRequest:]):
1178        (-[WebFrame reload]):
1179        * WebView.subproj/WebFramePrivate.h:
1180        * WebView.subproj/WebFramePrivate.m:
1181        (-[WebFrame _loadItem:fromItem:withLoadType:]):
1182        (-[WebFrame _loadRequest:triggeringAction:loadType:]):
1183        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
1184        (-[WebFrame _postWithURL:data:contentType:triggeringEvent:]):
1185        (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]):
1186        (-[WebFrame _loadDataSource:withLoadType:]):
1187        (-[WebFrame _downloadRequest:toPath:]):
1188
11892002-11-14  Maciej Stachowiak  <mjs@apple.com>
1190
1191	Change things so the public interface to loading is loadRequest:
1192	and everything else is private.
1193	
1194        * Plugins.subproj/WebBaseNetscapePluginView.m:
1195        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
1196        * Plugins.subproj/WebPluginController.m:
1197        (-[WebPluginController showURL:inFrame:]):
1198        * WebView.subproj/WebController.h:
1199        * WebView.subproj/WebController.m:
1200        (-[WebController init]):
1201        * WebView.subproj/WebControllerPrivate.m:
1202        (-[WebController _createFrameNamed:inParent:allowsScrolling:]):
1203        (-[WebController _downloadURL:toPath:]):
1204        * WebView.subproj/WebFrame.h:
1205        * WebView.subproj/WebFrame.m:
1206        (-[WebFrame init]):
1207        (-[WebFrame initWithName:webView:controller:]):
1208        (-[WebFrame loadRequest:]):
1209        (-[WebFrame reload]):
1210        * WebView.subproj/WebFramePrivate.h:
1211        * WebView.subproj/WebFramePrivate.m:
1212        (-[WebFrame _timedLayout:]):
1213        (-[WebFrame _clearProvisionalDataSource]):
1214        (-[WebFrame _loadItem:fromItem:withLoadType:]):
1215        (-[WebFrame _loadRequest:triggeringAction:]):
1216        (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]):
1217        (-[WebFrame _itemForRestoringDocState]):
1218        (-[WebFrame _setProvisionalDataSource:]):
1219        (-[WebFrame _startLoading]):
1220        (-[WebFrame _downloadRequest:toPath:]):
1221        * WebView.subproj/WebMainResourceClient.m:
1222        (-[WebMainResourceClient handle:willSendRequest:]):
1223        (-[WebMainResourceClient stopLoadingAfterContentPolicy]):
1224        (-[WebMainResourceClient handle:didReceiveResponse:]):
1225        * WebView.subproj/WebView.m:
1226        (-[WebView concludeDragOperation:]):
1227
12282002-11-14  David Hyatt  <hyatt@apple.com>
1229
1230	Move text measurement and layout beyond onload.  This
1231	shoudl speed up i-bench substantially and morrison's
1232	PLT test slightly.  Note that the adjustFrames layout
1233	stuff has been removed from isLoadComplete.
1234	
1235        * WebView.subproj/WebFramePrivate.m:
1236        (-[WebFrame _timedLayout:]):
1237        (-[WebFrame _isLoadComplete]):
1238
12392002-11-14  Darin Adler  <darin@apple.com>
1240
1241        * English.lproj/Localizable.strings: Updated to include the new
1242	error messages that Maciej just added. I wonder what effect this
1243	will have if we see those errors in Alex-32?
1244
1245=== Alexander-32 ===
1246
12472002-11-14  Don Melton  <gramps@apple.com>
1248
1249        * WebView.subproj/WebControllerPolicyDelegate.h:
1250
1251	Added missing semi-colon in definition of WebPolicyDecisionListener to
1252	fix build error.
1253
12542002-11-14  Maciej Stachowiak  <mjs@apple.com>
1255
1256	Combined file URL policy with content policy. We don't actually
1257	bother to ask earlier for file URLs yet, since that will make
1258	things more complicated.
1259	
1260        * Misc.subproj/WebKitErrors.h:
1261        * WebView.subproj/WebControllerPolicyDelegate.h:
1262        * WebView.subproj/WebDefaultPolicyDelegate.m:
1263        * WebView.subproj/WebFramePrivate.h:
1264        * WebView.subproj/WebFramePrivate.m:
1265        (-[WebFrame _handleUnimplementablePolicy:errorCode:forURL:]):
1266        (-[WebFrame _continueAfterNavigationPolicyForRequest:dataSource:]):
1267        * WebView.subproj/WebMainResourceClient.h:
1268        * WebView.subproj/WebMainResourceClient.m:
1269        (-[WebMainResourceClient stopLoadingAfterContentPolicy]):
1270        (-[WebMainResourceClient handle:didReceiveResponse:]):
1271        * WebView.subproj/WebView.m:
1272        (+[WebView initialize]):
1273
12742002-11-14  Darin Adler  <darin@apple.com>
1275
1276	- fixed 3099240 -- REGRESSION: repro assert d->m_doc->parsing
1277
1278	Make the reload flag pass across the bridge.
1279
1280        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _commitIfReady]):
1281	Pass a reload flag, based on the load type, to the bridge.
1282        * WebView.subproj/WebFramePrivate.m:
1283        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]): Pass a
1284	reload flag of NO in the anchor case. Preserve reload load types even when
1285	doing client redirects (have to talk with Trey about this tomorrow).
1286
12872002-11-14  Darin Adler  <darin@apple.com>
1288
1289	- fixed 3100235 -- nil-deference in khtml::RenderTable at money.cnn.com
1290
1291        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]):
1292	If the WebCore side needs layout, then do layout before trying to draw.
1293
12942002-11-13  Trey Matteson  <trey@apple.com>
1295
1296	Fixed client redirects, some more.  The upshot is that they do not
1297	generate two items in the back-forward list.  iBench still works.
1298
1299        * WebCoreSupport.subproj/WebBridge.m:
1300        (-[WebBridge reportClientRedirectTo:delay:fireDate:]):  Call straight to the frame for all impl.
1301        (-[WebBridge reportClientRedirectCancelled]):  Call straight to the frame for all impl.
1302        (-[WebBridge loadURL:reload:triggeringEvent:isFormSubmission:]):
1303	clientRedirect param removed when sending _loadURL: to frame.
1304        * WebView.subproj/WebFramePrivate.h:
1305        * WebView.subproj/WebFramePrivate.m:
1306        (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
1307	clientRedirect param  removed. Check our own ivar to know if we are in client redirect case.
1308        (-[WebFrame _loadURL:intoChild:]):
1309	clientRedirect param removed when sending _loadURL: .
1310        (-[WebFrame _clientRedirectedTo:delay:fireDate:]):
1311	Note that we are doing a redirect if time=0 and we're not completed.  Also includes
1312	previous impl moved from Bridge.
1313        (-[WebFrame _clientRedirectCancelled]):  Previous impl moved from Bridge.
1314
1315
13162002-11-13  Maciej Stachowiak  <mjs@apple.com>
1317
1318	Pass mime type instead of full response to content policy delegate
1319	method, in preparation for merging it with the file URL policy.
1320	
1321        * WebView.subproj/WebControllerPolicyDelegate.h:
1322        * WebView.subproj/WebDefaultPolicyDelegate.m:
1323        * WebView.subproj/WebMainResourceClient.m:
1324        (-[WebMainResourceClient handle:didReceiveResponse:]):
1325
13262002-11-13  Darin Adler  <darin@apple.com>
1327
1328	- fixed 3083982 -- Logging into AOL gives null view
1329
1330	Turns out AOL was using a refresh header, which we were not supporting.
1331
1332        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _commitIfReady]):
1333	Call openURL: and pass headers in.
1334
1335        * WebView.subproj/WebFramePrivate.m:
1336        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:isFormSubmission:]):
1337	Pass nil for headers in this case, since we know it's just an anchor change.
1338
1339	- other things
1340
1341        * WebCoreSupport.subproj/WebBridge.h: Remove dataSourceChanged and dataSource
1342	methods. We try to keep the bridge methods down to actual bridging.
1343        * WebCoreSupport.subproj/WebBridge.m: Remove dataSourceChanged altogether,
1344	and move dataSource up in the file.
1345
1346        * WebView.subproj/WebHTMLRepresentation.m:
1347        (-[WebHTMLRepresentation setDataSource:]): Keep the data source around, so we
1348	don't need to ask the bridge for it.
1349        (-[WebHTMLRepresentation documentSource]): Use it here.
1350
13512002-11-13  Trey Matteson  <trey@apple.com>
1352
1353	Fixed 3100084 - REGRESSION: web page is not first responder after visiting web page
1354
1355        * WebView.subproj/WebDataSourcePrivate.m:
1356        (-[WebDataSource _commitIfReady]):  Make the rep before _transitionToCommitted.  This is the way it used to be.
1357        (-[WebDataSource _makeRepresentation]):  Don't make the docView here.
1358
1359        * WebView.subproj/WebFramePrivate.m:
1360        (-[WebFrame _transitionToCommitted]):  Make the docView here, after we save the scroll state but before notifying the delegate.
1361
13622002-11-13  Darin Adler  <darin@apple.com>
1363
1364	- fixed 3100013 -- REGRESSION: Can't get results from i-Bench anymore
1365
1366        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _isLoadComplete]):
1367	Don't set the state to WebFrameStateComplete if it has already been set
1368	to WebFrameStateProvisional. If it has, that means we already began a new
1369	load; that one is not yet complete.
1370
13712002-11-13  John Sullivan  <sullivan@apple.com>
1372
1373	- fixed 3099922 -- REGRESSION: Back button always pops up menu
1374
1375        * Misc.subproj/WebNSViewExtras.h:
1376        * Misc.subproj/WebNSViewExtras.m:
1377        (-[NSView _web_dragShouldBeginFromMouseDown:withExpiration:xHysteresis:yHysteresis:]:
1378	Fixed a copy/paste error I made yesterday -- this method was never
1379	noticing the mouse-up events because it was checking the event type
1380	against the wrong number. Also changed the hysteresis values from
1381	unsigneds to floats (unsigned was just wrong).
1382
13832002-11-13  Maciej Stachowiak  <mjs@apple.com>
1384
1385	- fixed 3050447 - Policy handlers have no way of telling client
1386	that the proposed navigation is a form post
1387
1388	Now we pass form submissions through all the normal policy steps.
1389	
1390        * WebCoreSupport.subproj/WebBridge.m:
1391        (-[WebBridge loadURL:reload:triggeringEvent:isFormSubmission:]):
1392        (-[WebBridge postWithURL:data:contentType:triggeringEvent:]):
1393        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
1394        * WebView.subproj/WebDataSourcePrivate.h:
1395        * WebView.subproj/WebDataSourcePrivate.m:
1396        (-[WebDataSourcePrivate dealloc]):
1397        (-[WebDataSource _setTriggeringAction:]):
1398        (-[WebDataSource _triggeringAction]):
1399        (-[WebDataSource _lastCheckedRequest]):
1400        (-[WebDataSource _setLastCheckedRequest:]):
1401        * WebView.subproj/WebFrame.m:
1402        (-[WebFrame setProvisionalDataSource:]):
1403        * WebView.subproj/WebFramePrivate.h:
1404        * WebView.subproj/WebFramePrivate.m:
1405        (-[WebFrame _shouldShowRequest:]):
1406        (-[WebFrame _loadRequest:triggeringAction:]):
1407        (-[WebFrame _actionInformationForNavigationType:event:]):
1408        (-[WebFrame _continueAfterNavigationPolicyForRequest:dataSource:]):
1409        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:isFormSubmission:]):
1410        (-[WebFrame _loadURL:intoChild:]):
1411        (-[WebFrame _postWithURL:data:contentType:triggeringEvent:]):
1412
14132002-11-12  Maciej Stachowiak  <mjs@apple.com>
1414
1415	Combine click policy and URL policy into navigation policy.
1416	
1417        * WebView.subproj/WebControllerPolicyDelegate.h:
1418        * WebView.subproj/WebDefaultPolicyDelegate.h:
1419        * WebView.subproj/WebDefaultPolicyDelegate.m:
1420        (-[WebDefaultPolicyDelegate navigationPolicyForAction:andRequest:inFrame:]):
1421        * WebView.subproj/WebFramePrivate.h:
1422        * WebView.subproj/WebFramePrivate.m:
1423        (-[WebFrame _shouldShowRequest:]):
1424        (-[WebFrame _actionInformationForNavigationType:event:]):
1425        (-[WebFrame _continueAfterFileURLPolicyForRequest:]):
1426        (-[WebFrame _continueAfterNavigationPolicyForRequest:event:]):
1427        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
1428
14292002-11-12  Trey Matteson  <trey@apple.com>
1430
1431	fixed 3096030 - Crash in -[WebBackForwardList goToEntry:] when playing with SnapBack and dictionary.com
1432
1433        * WebView.subproj/WebFramePrivate.m:
1434        (-[WebFrame _isLoadComplete]):  Set state=completed only after we tell the bridge to
1435	end the load.  This allows client redirects to be processed before we think we're complete.
1436        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
1437	Only process client redirects as such if we are not already complete.  This makes JS driven
1438	navigations after load-time work like the user would expect, as normal navigations.
1439
14402002-11-12  Maciej Stachowiak  <mjs@apple.com>
1441
1442	- fixed 3099487 - REGRESSION: dragging an image always puts it in
1443	the download directory
1444	
1445        * WebView.subproj/WebControllerPrivate.h:
1446        * WebView.subproj/WebControllerPrivate.m:
1447        (-[WebController _downloadURL:]): Call _downloadURL:toPath: with nil path.
1448	(-[WebController _downloadURL:toPath:]): New method that
1449	predetermines the path to download to (needed for DnD).
1450        * WebView.subproj/WebHTMLView.m:
1451	(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Use
1452	_downloadURL:toPath:
1453        * WebView.subproj/WebImageView.m:
1454	(-[WebImageView namesOfPromisedFilesDroppedAtDestination:]): Use
1455	_downloadURL:toPath:
1456        * WebView.subproj/WebMainResourceClient.m:
1457	(-[WebMainResourceClient handle:didReceiveResponse:]): Don't ask
1458	delegate for download path if we already have one.
1459
14602002-11-12  Richard Williamson  <rjw@apple.com>
1461
1462        Fixed likely cause of 3099047 (and others).  Width buffer could underrun in
1463        some situations.
1464        
1465        * WebCoreSupport.subproj/WebTextRenderer.m:
1466        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):
1467
14682002-11-12  John Sullivan  <sullivan@apple.com>
1469
1470        * Misc.subproj/WebNSViewExtras.h:
1471        * Misc.subproj/WebNSViewExtras.m:
1472        (-[NSView _web_dragShouldBeginFromMouseDown:withExpiration:xHysteresis:yHysteresis:]):
1473	new method
1474        (-[NSView _web_dragShouldBeginFromMouseDown:withExpiration:]):
1475	now calls the new method, passing the default hysteresis values
1476
14772002-11-12  Richard Williamson  <rjw@apple.com>
1478
1479        Implemented letter-spacing and word-spacing CSS properties.
1480
1481        * Misc.subproj/WebStringTruncator.m:
1482        (+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
1483        (+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
1484        * WebCoreSupport.subproj/WebTextRenderer.h:
1485        * WebCoreSupport.subproj/WebTextRenderer.m:
1486        (-[WebTextRenderer widthForCharacters:length:]):
1487        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:letterSpacing:wordSpacing:]):
1488        (-[WebTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
1489        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
1490        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:letterSpacing:wordSpacing:]):
1491        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):
1492
14932002-11-12  Maciej Stachowiak  <mjs@apple.com>
1494
1495	Removed policy classes and instead use the policy enums directly,
1496	since we no longer hold the path in the enum.
1497	
1498        * Downloads.subproj/WebDownloadHandler.m:
1499        * WebKit.exp:
1500        * WebKit.pbproj/project.pbxproj:
1501        * WebView.subproj/WebControllerPolicyDelegate.h:
1502        * WebView.subproj/WebControllerPolicyDelegate.m:
1503        * WebView.subproj/WebControllerPolicyDelegatePrivate.h: Removed.
1504        * WebView.subproj/WebControllerPrivate.m:
1505        * WebView.subproj/WebDefaultPolicyDelegate.h:
1506        * WebView.subproj/WebDefaultPolicyDelegate.m:
1507        (+[WebDefaultPolicyDelegate defaultURLPolicyForRequest:]):
1508        (-[WebDefaultPolicyDelegate URLPolicyForRequest:inFrame:]):
1509        (-[WebDefaultPolicyDelegate fileURLPolicyForMIMEType:andRequest:inFrame:]):
1510        (-[WebDefaultPolicyDelegate unableToImplementPolicy:error:forURL:inFrame:]):
1511        (-[WebDefaultPolicyDelegate clickPolicyForAction:andRequest:inFrame:]):
1512        * WebView.subproj/WebFramePrivate.m:
1513        (-[WebFrame handleUnimplementablePolicy:errorCode:forURL:]):
1514        (-[WebFrame _shouldShowRequest:]):
1515        (-[WebFrame _continueAfterClickPolicyForEvent:request:]):
1516        * WebView.subproj/WebMainResourceClient.m:
1517        (-[WebMainResourceClient handle:didReceiveResponse:]):
1518
15192002-11-12  Maciej Stachowiak  <mjs@apple.com>
1520
1521	Keep the triggering event around on the data source, so it can be
1522	used with redirects.
1523
1524        * WebView.subproj/WebFramePrivate.m:
1525        (-[WebFrame _loadRequest:triggeringEvent:]):
1526        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
1527        (-[WebFrame _postWithURL:data:contentType:]):
1528
15292002-11-12  Darin Adler  <darin@apple.com>
1530
1531	- improved the code that manages observing the window and superview
1532
1533        * WebView.subproj/WebHTMLView.m:
1534        (-[WebHTMLView addSuperviewObservers]): Added.
1535        (-[WebHTMLView removeSuperviewObservers]): Added.
1536        (-[WebHTMLView addWindowObservers]): Added.
1537        (-[WebHTMLView removeWindowObservers]): Added.
1538        (-[WebHTMLView viewWillMoveToSuperview:]): Call removeSuperviewObservers.
1539        (-[WebHTMLView viewDidMoveToSuperview]): Call addSuperviewObservers.
1540        (-[WebHTMLView viewWillMoveToWindow:]): Call removeWindowObservers and
1541	removeSuperviewObservers.
1542        (-[WebHTMLView viewDidMoveToWindow]): Call addWindowObservers and
1543	addSuperviewObservers.
1544
15452002-11-11  Maciej Stachowiak  <mjs@apple.com>
1546
1547	Remove contentPolicy parameter from _downloadURL, and remove
1548	remaining traces of path from policy object.
1549
1550        * WebView.subproj/WebControllerPolicyDelegate.h:
1551        * WebView.subproj/WebControllerPolicyDelegate.m:
1552        (-[WebPolicyPrivate dealloc]):
1553        (+[WebURLPolicy webPolicyWithURLAction:]):
1554        (+[WebFileURLPolicy webPolicyWithFileAction:]):
1555        (+[WebContentPolicy webPolicyWithContentAction:]):
1556        (+[WebClickPolicy webPolicyWithClickAction:]):
1557        * WebView.subproj/WebControllerPolicyDelegatePrivate.h:
1558        * WebView.subproj/WebControllerPrivate.h:
1559        * WebView.subproj/WebControllerPrivate.m:
1560        (-[WebController _downloadURL:]):
1561        * WebView.subproj/WebDefaultContextMenuDelegate.m:
1562        (-[WebDefaultContextMenuDelegate downloadURL:]):
1563        * WebView.subproj/WebDefaultPolicyDelegate.m:
1564        (-[WebDefaultPolicyDelegate clickPolicyForAction:andRequest:inFrame:]):
1565        * WebView.subproj/WebFramePrivate.m:
1566        (-[WebFrame _continueAfterClickPolicyForEvent:request:]):
1567        * WebView.subproj/WebHTMLView.m:
1568        (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
1569        * WebView.subproj/WebImageView.m:
1570        (-[WebImageView namesOfPromisedFilesDroppedAtDestination:]):
1571        * WebView.subproj/WebMainResourceClient.m:
1572        (-[WebMainResourceClient handle:didReceiveResponse:]):
1573
15742002-11-11  Darin Adler  <darin@apple.com>
1575
1576        * Plugins.subproj/WebNetscapePluginPackage.m: (-[WebNetscapePluginPackage load]):
1577        Use fileSystemRepresentationWithPath, not cString, to turn a path into something
1578        to pass to FSPathMakeRef.
1579
1580        * English.lproj/StringsNotToBeLocalized.txt: Update.
1581
15822002-11-11  Darin Adler  <darin@apple.com>
1583
1584	- tighten up cursor handling a bit more
1585
1586        * WebView.subproj/WebDynamicScrollBarsView.m:
1587        * WebView.subproj/WebHTMLView.m:
1588        (-[WebHTMLView addMouseMovedObserver]): Call _frameOrBoundsChanged
1589	so we emit a mouse moved event right away.
1590        (-[WebHTMLView viewWillMoveToSuperview:]): Remove the colon since I
1591	removed the parameter from _frameOrBoundsChanged.
1592
1593        * WebView.subproj/WebHTMLViewPrivate.h: Declare _frameOrBoundsChanged.
1594        * WebView.subproj/WebHTMLViewPrivate.m:
1595        (-[WebHTMLView _frameOrBoundsChanged]): Remove parameter.
1596
15972002-11-11  Trey Matteson  <trey@apple.com>
1598
1599        Fixed 3015884 - Reloading a page should remember the scroll position
1600
1601        * WebView.subproj/WebFramePrivate.m:
1602        (-[WebFrame _transitionToCommitted]):  Save scroll position on reload
1603        (-[WebFrame _isLoadComplete]):  Restore position on reload
1604
16052002-11-11  Trey Matteson  <trey@apple.com>
1606
1607        * History.subproj/WebBackForwardList.m:
1608        (-[WebBackForwardList addEntry:]):  Yank code to avoid adding a duplicate entry, to catch the
1609	refresh case.  That's dealt with in WebFramePrivate now.
1610        (-[WebBackForwardList description]):  Enhanced to print more info.
1611
1612        * History.subproj/WebHistoryItem.h:
1613	History items now hold an array of subitems to mirror the frame tree.  One item in the tree
1614	is designated the target of the navigation.
1615        * History.subproj/WebHistoryItem.m:
1616        (-[WebHistoryItem dealloc]):  Release new ivars.
1617        (-[WebHistoryItem isTargetItem]):
1618        (-[WebHistoryItem setIsTargetItem:]):
1619	New setter and setter.
1620        (-[WebHistoryItem _recurseToFindTargetItem]):
1621        (-[WebHistoryItem targetItem]):
1622	Search the tree to find the target item.
1623        (-[WebHistoryItem children]):
1624        (-[WebHistoryItem addChildItem:]):
1625        (-[WebHistoryItem childItemWithName:]):
1626	Maintain and search new child item list.
1627        (-[WebHistoryItem description]):
1628	Enhanced to print out the tree of items.
1629        (-[WebHistoryItem dictionaryRepresentation]):
1630        (-[WebHistoryItem initFromDictionaryRepresentation:]):
1631	Save and load the new state.
1632
1633        * WebCoreSupport.subproj/WebBridge.m:
1634        (-[WebBridge generateFrameName]):  New call from KWQ, just forwards to Frame.
1635        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
1636	Call new frame method dedicated to this case.
1637        (-[WebBridge saveDocumentState:]):
1638        (-[WebBridge documentState]):
1639	Call frame methods to get the right item to save/restore to/from.
1640
1641        * WebView.subproj/WebController.m:
1642        (-[WebController _goToItem:withLoadType:]):  Stop any current loading before going to a new item.
1643        (-[WebController goBack]):
1644        (-[WebController goForward]):
1645        (-[WebController goBackOrForwardToItem:]):  Name change of private method (for consistency)
1646
1647        * WebView.subproj/WebDataSourcePrivate.h:
1648	ProvisionalItem and PreviousItem are moved back up to WebFrame, where we know more about the
1649	state transitions that happen during loading.
1650        * WebView.subproj/WebDataSourcePrivate.m:
1651        (-[WebDataSourcePrivate dealloc]): Don't release removed ivars.
1652        (-[WebDataSource _commitIfReady]): Make the view representations -after- the transition to committed.
1653	This allows us to save away the scroll location successfully, since making the view was resetting it.
1654        * WebView.subproj/WebFrame.h:
1655        * WebView.subproj/WebFrame.m:
1656        (-[WebFrame setProvisionalDataSource:]):  Saving the scroll location has moved elsewhere to handle frames.
1657        (-[WebFrame stopLoading]):  Skip all the work if we're already state=complete.
1658
1659        * WebView.subproj/WebFramePrivate.h:
1660	The frame now holds a ref to the current, previous and provisional back-forward items.
1661        * WebView.subproj/WebFramePrivate.m:
1662        (-[WebFramePrivate dealloc]):  Release new state.
1663        (-[WebFramePrivate setProvisionalItem:]):
1664        (-[WebFramePrivate setPreviousItem:]):
1665        (-[WebFramePrivate setCurrentItem:]):	New setters (1 line getters were missed by script)
1666        (-[WebFrame _addBackForwardItemClippedAtTarget:]):  Adds a BF item to the top of the BF list.
1667        (-[WebFrame _createItem]):  Create a single BF item.
1668        (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]):  Create a tree of BF items, which
1669	mirror the frame tree.
1670        (-[WebFrame _immediateChildFrameNamed:]):  New frame search utility (doesn't recurse)
1671        (-[WebFrame _detachFromParent]):  Save the scroll position when detaching a frame.
1672        (-[WebFrame _transitionToCommitted]):  Maintain new item ivars.  Save scroll position when
1673	appropriate.  Hook up items for child frames to their parent, as they are created.
1674        (-[WebFrame _setState:]):  Clear previousItem whenever we reach committed.
1675        (-[WebFrame _isLoadComplete]):  Clear previousItem if we are committed.
1676        (-[WebFrame _childFramesMatchItem:]):  Does the frame's frame tree match the one held by the item?
1677        (-[WebFrame _loadItem:fromItem:withLoadType:]):  Only do simple anchor navigation if the frame
1678	has no children (fixes oddball corner case with a frame reloading itself).  Set provisional item.
1679        (-[WebFrame _recursiveGoToItem:fromItem:withLoadType:]):  Heart of returning to an item that had
1680	frames.  We either find that the existing content is good, or initiate a load.
1681        (-[WebFrame _goToItem:withLoadType:]):  Adjust the BF list cursor, and recurse to do the work.
1682        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):  Only do anchor-style nav if
1683	the destination URL has a fragment.  Save scroll position.
1684        (-[WebFrame _loadURL:intoChild:]):  If returning to an item with frames, possibly replace the
1685	new content with the stuff that was there at the time, substituting the URL.
1686        (-[WebFrame _saveScrollPositionToItem:]):  Don't croak on nil item or view.
1687        (-[WebFrame _restoreScrollPosition]):  Do croak (ASSERT) on nil item.
1688        (-[WebFrame _scrollToTop]):  Nit cleanup.
1689        (-[WebFrame _addFramePathToString:]):  Add a component for our frame to the frame name we're generating.
1690        (-[WebFrame _generateFrameName]):  Generate a frame name that is repeatable.
1691        (-[WebFrame _itemForSavingDocState]):  Returns correct item to use for formstate save.
1692        (-[WebFrame _itemForRestoringDocState]):  Returns correct item to use for formstate restore
1693
16942002-11-11  Maciej Stachowiak  <mjs@apple.com>
1695
1696	Store path and the fact that we're downloading in the data source,
1697	instead of storing the content policy.
1698	
1699        * Downloads.subproj/WebDownloadHandler.m:
1700        (-[WebDownloadHandler cleanUpAfterFailure]):
1701        (-[WebDownloadHandler createFileIfNecessary]):
1702        (-[WebDownloadHandler finishedLoading]):
1703        * WebView.subproj/WebControllerPrivate.m:
1704        (-[WebController _downloadURL:withContentPolicy:]):
1705        * WebView.subproj/WebDataSource.h:
1706        * WebView.subproj/WebDataSource.m:
1707        (+[WebDataSource registerRepresentationClass:forMIMEType:]):
1708        (-[WebDataSource isDownloading]):
1709        (-[WebDataSource downloadPath]):
1710        * WebView.subproj/WebDataSourcePrivate.h:
1711        * WebView.subproj/WebDataSourcePrivate.m:
1712        (-[WebDataSourcePrivate dealloc]):
1713        (-[WebDataSource _commitIfReady]):
1714        (-[WebDataSource _setIsDownloading:]):
1715        (-[WebDataSource _setDownloadPath:]):
1716        * WebView.subproj/WebMainResourceClient.m:
1717        (-[WebMainResourceClient receivedError:]):
1718        (-[WebMainResourceClient handle:didReceiveResponse:]):
1719        (-[WebMainResourceClient handleDidFinishLoading:]):
1720
17212002-11-11  Maciej Stachowiak  <mjs@apple.com>
1722
1723	Don't ask for the content policy any more if the previous policies
1724	said to save - in effect this means to ask only if the previous
1725	policies said to use the content policy. Also, remove now-useless
1726	previous content policy parameter from content policy delegate.
1727	
1728        * WebView.subproj/WebControllerPolicyDelegate.h:
1729        * WebView.subproj/WebDataSourcePrivate.m:
1730	(-[WebDataSource _setContentPolicy:]): Retain new policy before
1731	releasing the old one.
1732        * WebView.subproj/WebDefaultPolicyDelegate.m:
1733        * WebView.subproj/WebMainResourceClient.m:
1734	(-[WebMainResourceClient handle:didReceiveResponse:]): Don't ask
1735	for content policy if the delegate already decided to save.
1736
17372002-11-11  Maciej Stachowiak  <mjs@apple.com>
1738
1739	Added new policy delegate callback to get the filename - this
1740	won't be up to the content policy any more.
1741	
1742        * WebView.subproj/WebControllerPolicyDelegate.h:
1743        * WebView.subproj/WebDefaultPolicyDelegate.m:
1744        (-[WebDefaultPolicyDelegate saveFilenameForResponse:andRequest:]):
1745        * WebView.subproj/WebMainResourceClient.m:
1746        (-[WebMainResourceClient handle:didReceiveResponse:]):
1747
17482002-11-11  Darin Adler  <darin@apple.com>
1749
1750	- made some improvements to cursor setting for greater speed and correctness
1751
1752        * WebView.subproj/WebDynamicScrollBarsView.m:
1753        (-[WebDynamicScrollBarsView setCursor:]): Just use setDocumentCursor: instead of
1754	our own logic. This allows us to remove code and may fix some bugs or anomalies as well.
1755        (-[WebDynamicScrollBarsView dealloc]): Release the cursor. I think we were leaking before.
1756
1757        * WebView.subproj/WebHTMLView.m:
1758        (-[WebHTMLView viewWillMoveToSuperview:]): Use _frameOrBoundsChanged: method now, which
1759	has been moved into the private file.
1760        (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): Don't bother finding
1761	topmost WebHTMLView to call _updateMouseoverWithEvent: on; now it works fine no matter
1762	which level it's called at.
1763
1764        * WebView.subproj/WebHTMLViewPrivate.m:
1765        (-[WebHTMLView _frameOrBoundsChanged:]): Moved the code here that was formerly in the
1766	_setNeedsLayoutIfSizeChanged method, also added code that does _updateMouseoverWithEvent:
1767	so that we get properly updated cursor when we scroll.
1768        (-[WebHTMLView _updateMouseoverWithEvent:]): Remove unneeded assert. This method works
1769	equally well no matter which WebHTMLView calls it; everything is done at the window and
1770	controller level.
1771
1772        * WebView.subproj/WebControllerPrivate.h: Added lastElementWasNotNil field and
1773	_mouseDidMoveOverElement:modifierFlags: method.
1774        * WebView.subproj/WebControllerPrivate.m:
1775        (-[WebController _mouseDidMoveOverElement:modifierFlags:]): Call through to the delegate,
1776	but don't do multiple calls if they are all nil.
1777
1778        * WebCoreSupport.subproj/WebBridge.m: Remove unused modifierTrackingEnabled method.
1779        * WebView.subproj/WebHTMLViewPrivate.h: Remove unused _setModifierTrackingEnabled and
1780	_modifierTrackingEnabled methods.
1781
17822002-11-10  Darin Adler  <darin@apple.com>
1783
1784        * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
1785
17862002-11-10  Chris Blumenberg  <cblu@apple.com>
1787
1788	Fixed: 3021681 - downloaded files' creation and modification dates are not set
1789
1790        * Downloads.subproj/WebDownloadHandler.m:
1791        (-[WebDownloadHandler createFileIfNecessary]): call [response creationDate] and [response lastModifiedDate] when setting file attributes.
1792        * Plugins.subproj/WebBaseNetscapePluginStream.m:
1793        (-[WebBaseNetscapePluginStream setResponse:]): call [response lastModifiedDate] when giving content to plug-ins.
1794
17952002-11-10  Darin Adler  <darin@apple.com>
1796
1797        * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
1798
17992002-11-09  Darin Adler  <darin@apple.com>
1800
1801	- fixed 3095156 -- reproducible leak of WebDataSource due to bad URL in stylesheet
1802
1803        * WebCoreSupport.subproj/WebSubresourceClient.m:
1804        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
1805	Check for errors by looking at the return value from loadWithRequest: rather than
1806	making a separate call to canInitWithRequest.
1807
1808        * WebView.subproj/WebBaseResourceHandleDelegate.h: Add boolean success/failure result
1809	loadWithRequest:.
1810        * WebView.subproj/WebBaseResourceHandleDelegate.m:
1811        (-[WebBaseResourceHandleDelegate loadWithRequest:]): Return NO if we fail to make a handle.
1812
1813        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading]):
1814	Check result of loadWithRequest: and complain if it's NO.
1815
1816        * WebView.subproj/WebMainResourceClient.m: Tweak whitespace.
1817
18182002-11-09  Chris Blumenberg  <cblu@apple.com>
1819
1820	Fixed: 2991610 - Alexander should support services, including Speech
1821
1822        * WebView.subproj/WebHTMLView.m:
1823        (+[WebHTMLView initialize]): register for service types
1824        (-[WebHTMLView dealloc]): moved to top of file
1825        (-[WebHTMLView copy:]): call _writeSelectionToPasteboard
1826        (-[WebHTMLView writeSelectionToPasteboard:types:]): call _writeSelectionToPasteboard
1827        (-[WebHTMLView validRequestorForSendType:returnType:]): return self for our pboard types
1828        * WebView.subproj/WebHTMLViewPrivate.h:
1829        * WebView.subproj/WebHTMLViewPrivate.m:
1830        (+[WebHTMLView _pasteboardTypes]): new, returns the array of supported pboard types 
1831        (-[WebHTMLView _writeSelectionToPasteboard:]): new, adds data to pboard
1832        * WebView.subproj/WebImageView.m:
1833        (-[WebImageView initialize]): register for service types
1834        (-[WebImageView validateUserInterfaceItem:]): respond to copy
1835        (-[WebImageView validRequestorForSendType:returnType:]): return self for images
1836        (-[WebImageView writeImageToPasteboard:]): writes image data to pboard
1837        (-[WebImageView copy:]): calls writeImageToPasteboard
1838        (-[WebImageView writeSelectionToPasteboard:types:]): calls writeImageToPasteboard
1839
18402002-11-08  Darin Adler  <darin@apple.com>
1841
1842        * History.subproj/WebHistoryItem.m:
1843        (-[WebHistoryItem setTitle:]): Use display title if it matches, so
1844	we don't end up with two identical strings, as when reading from
1845	the property list.
1846        (-[WebHistoryItem setDisplayTitle:]): The same thing, the other way round.
1847
18482002-11-08  Darin Adler  <darin@apple.com>
1849
1850	- fixed 3095078 -- image loop counts still not handled right
1851
1852        * WebCoreSupport.subproj/WebImageRenderer.m:
1853        (-[WebImageRenderer blockHasGIFExtensionSignature:length:]): Look for the tag
1854	"NETSCAPE2.0", not "NETSCAPE1.0".
1855        (-[WebImageRenderer nextFrame:]): Remove special handling for last frames with
1856	a duration of 0. That was just a misunderstanding.
1857
18582002-11-08  Darin Adler  <darin@apple.com>
1859
1860        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setRequest:]):
1861	Slightly better fix. Essentially just take out the assert.
1862
18632002-11-08  Darin Adler  <darin@apple.com>
1864
1865	- fixed an assert I am seeing a lot
1866
1867        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setRequest:]): Oops.
1868
18692002-11-08  Richard Williamson   <rjw@apple.com>
1870
1871        Solved missing glyph problem, but it's very slow, so
1872        it's disabled for now.  I'll turn back on after extending
1873        the character to glyph map in each renderer to include
1874        substituted font.
1875        
1876        * WebCoreSupport.subproj/WebTextRenderer.m:
1877        (-[WebTextRenderer substituteFontForString:]):
1878        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
1879
18802002-11-08  Darin Adler  <darin@apple.com>
1881
1882	- separate WebBaseNetscapePluginStream more cleanly from its subclasses
1883	by making most fields private
1884
1885        * Plugins.subproj/WebBaseNetscapePluginStream.m:
1886        (-[WebBaseNetscapePluginStream setResponse:]):
1887        * Plugins.subproj/WebNetscapePluginStream.h:
1888        * Plugins.subproj/WebNetscapePluginStream.m:
1889        (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
1890        (-[WebNetscapePluginStream dealloc]):
1891        (-[WebNetscapePluginStream start]):
1892        (-[WebNetscapePluginStream handle:didReceiveData:]):
1893        (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
1894        * WebCoreSupport.subproj/WebSubresourceClient.m:
1895        (-[WebSubresourceClient handle:didReceiveResponse:]):
1896        (-[WebSubresourceClient handle:didReceiveData:]):
1897        (-[WebSubresourceClient handleDidFinishLoading:]):
1898        (-[WebSubresourceClient handle:didFailLoadingWithError:]):
1899        (-[WebSubresourceClient cancel]):
1900        * WebView.subproj/WebBaseResourceHandleDelegate.h:
1901        * WebView.subproj/WebBaseResourceHandleDelegate.m:
1902        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
1903        (-[WebBaseResourceHandleDelegate handle:didFailLoadingWithError:]):
1904        (-[WebBaseResourceHandleDelegate _cancelWithError:]):
1905        (-[WebBaseResourceHandleDelegate cancel]):
1906        (-[WebBaseResourceHandleDelegate cancelQuietly]):
1907        (-[WebBaseResourceHandleDelegate cancelledError]):
1908        (-[WebBaseResourceHandleDelegate notifyDelegatesOfInterruptionByPolicyChange]):
1909        * WebView.subproj/WebMainResourceClient.h:
1910        * WebView.subproj/WebMainResourceClient.m:
1911        (-[WebMainResourceClient cancel]):
1912        (-[WebMainResourceClient handle:willSendRequest:]):
1913        (-[WebMainResourceClient notifyDelegatesOfInterruptionByPolicyChange]):
1914        (-[WebMainResourceClient handle:didReceiveResponse:]):
1915        (-[WebMainResourceClient handle:didReceiveData:]):
1916        (-[WebMainResourceClient handleDidFinishLoading:]):
1917
19182002-11-08  Darin Adler  <darin@apple.com>
1919
1920	- changed persistent dictionaries to use NSString instead of NSURL
1921	because of impact on memory footprint
1922
1923	Also changed WebIconDatabase code to verify what it reads from disk,
1924	and ignore it if it can't verify the format.
1925
1926        * Misc.subproj/WebIconDatabase.m:
1927        (-[WebIconDatabase iconForSiteURL:withSize:cache:]):
1928        (-[WebIconDatabase retainIconForSiteURL:]):
1929        (-[WebIconDatabase releaseIconForSiteURL:]):
1930        (-[WebIconDatabase _iconDictionariesAreGood]):
1931        (-[WebIconDatabase _loadIconDictionaries]):
1932        (-[WebIconDatabase _updateFileDatabase]):
1933        (-[WebIconDatabase _hasIconForSiteURL:]):
1934        (-[WebIconDatabase _iconsForIconURLString:]):
1935        (-[WebIconDatabase _setIcon:forIconURL:]):
1936        (-[WebIconDatabase _setIconURL:forSiteURL:]):
1937        (-[WebIconDatabase _setBuiltInIconAtPath:forHost:]):
1938        (-[WebIconDatabase _retainIconForIconURLString:]):
1939        (-[WebIconDatabase _releaseIconForIconURLString:]):
1940        (-[WebIconDatabase _retainFutureIconForSiteURL:]):
1941        (-[WebIconDatabase _releaseFutureIconForSiteURL:]):
1942        (-[WebIconDatabase _retainOriginalIconsOnDisk]):
1943        (-[WebIconDatabase _releaseOriginalIconsOnDisk]):
1944        (-[NSEnumerator _web_isAllStrings]):
1945        * Panels.subproj/WebStandardPanels.m:
1946        (-[WebStandardPanels didStartLoadingURL:inWindow:]):
1947        (-[WebStandardPanels didStopLoadingURL:inWindow:]):
1948        (-[WebStandardPanels _didStartLoadingURL:inController:]):
1949        (-[WebStandardPanels _didStopLoadingURL:inController:]):
1950        (-[WebStandardPanels frontmostWindowLoadingURL:]):
1951
19522002-11-08  Darin Adler  <darin@apple.com>
1953
1954	- fixed crash on boot that Don was seeing
1955
1956        * History.subproj/WebHistoryItem.m:
1957        (-[WebHistoryItem URL]): Make this work when _URLString is nil.
1958        (-[WebHistoryItem initFromDictionaryRepresentation:]): Make this work for nil URL.
1959
1960	- my own private war on the cString method
1961
1962        * Downloads.subproj/WebDownloadHandler.m:
1963        (-[WebDownloadHandler initWithDataSource:]): Use %@ in LOG to avoid cString.
1964        (-[WebDownloadHandler finishedLoading]): Ditto.
1965        * WebView.subproj/WebDataSourcePrivate.m:
1966        (-[WebDataSource _commitIfReady]): Ditto.
1967        * WebView.subproj/WebFramePrivate.m:
1968        (-[WebFrame _timedLayout:]): Ditto.
1969        (-[WebFrame _setState:]): More of the same.
1970        (-[WebFrame _isLoadComplete]): Ditto.
1971
19722002-11-08  Ken Kocienda  <kocienda@apple.com>
1973
1974	Fix deployment build breaker: a variable was used only in a 
1975	LOG statement, causing the variable to become usused when
1976	building with the Deployment build style. 
1977
1978        * Downloads.subproj/WebDownloadHandler.m:
1979        (-[WebDownloadHandler finishedLoading])
1980
19812002-11-07  Darin Adler  <darin@apple.com>
1982
1983        * History.subproj/WebHistoryItem.h: Replace _URL with _URLString.
1984
1985        * History.subproj/WebHistoryItem.m:
1986        (-[WebHistoryItem _retainIconInDatabase:]): Get the URL with [self URL].
1987        (-[WebHistoryItem initWithURL:target:parent:title:]): Set up _URLString.
1988        (-[WebHistoryItem dealloc]): Release _URLString.
1989        (-[WebHistoryItem URL]): Make a URL from _URLString.
1990        (-[WebHistoryItem icon]): Use [self URL] instead of _URL.
1991        (-[WebHistoryItem setURL:]): Store a URL string.
1992        (-[WebHistoryItem hash]): Use the URL string's hash.
1993        (-[WebHistoryItem isEqual:]): Compare the URL strings.
1994        (-[WebHistoryItem description]): Use _URLString.
1995        (-[WebHistoryItem dictionaryRepresentation]): Use _URLString.
1996        (-[WebHistoryItem initFromDictionaryRepresentation:]): Call through to
1997	the other init functions so we have only one designated initializer.
1998	Leave the date as nil if there's no date in the dictionary instead of
1999	setting the date to 0.
2000
20012002-11-07  Maciej Stachowiak  <mjs@apple.com>
2002
2003	Removed SaveAndOpenExternally policy.
2004	
2005        * Downloads.subproj/WebDownloadHandler.m:
2006        (-[WebDownloadHandler finishedLoading]):
2007        * WebView.subproj/WebControllerPolicyDelegate.h:
2008        * WebView.subproj/WebFramePrivate.m:
2009        (-[WebFrame _continueAfterClickPolicyForEvent:request:]):
2010        * WebView.subproj/WebMainResourceClient.m:
2011        (-[WebMainResourceClient receivedError:]):
2012        (-[WebMainResourceClient handle:didReceiveResponse:]):
2013        (-[WebMainResourceClient handleDidFinishLoading:]):
2014
20152002-11-07  Chris Blumenberg  <cblu@apple.com>
2016
2017        * WebKit.pbproj/project.pbxproj:
2018
20192002-11-07  Richard Williamson  <rjw@apple.com>
2020
2021        * WebCoreSupport.subproj/WebImageRenderer.m:
2022        (-[WebImageRenderer stopAnimation]):
2023
20242002-11-07  Maciej Stachowiak  <mjs@apple.com>
2025
2026	- fixed 3095628 - REGRESSION: exception when clicking on link to load content into iframe
2027	
2028        * WebView.subproj/WebFramePrivate.m:
2029        (-[WebFrame _actionInformationForNavigationType:event:]): Get the
2030	element info from the HTML view where the click originally
2031	happened, not the current document view. Add some asserts to make
2032	sure this is working.
2033
2034
20352002-11-07  Richard Williamson  <rjw@apple.com>
2036
2037        Tweaks
2038        
2039        * WebCoreSupport.subproj/WebTextRenderer.m:
2040        (-[WebTextRenderer convertCharacters:length:toGlyphs:skipControlCharacters:]):
2041        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
2042
2043=== Alexander-31 ===
2044
20452002-11-07  Maciej Stachowiak  <mjs@apple.com>
2046
2047	- fixed 3094778 - REGRESSION: Assert on logout from schwab.com
2048
2049	(probably fixed it anyway - I'm flying blind on this one)
2050	
2051        * WebCoreSupport.subproj/WebBridge.m:
2052        (-[WebBridge createWindowWithURL:frameName:]): Use a nil request
2053	if the URL was nil, instead of making a request that contains a
2054	nil URL.
2055
20562002-11-07  Maciej Stachowiak  <mjs@apple.com>
2057
2058	Changed things so that creating a window takes a request rather
2059	than a URL and referrer.
2060	
2061        * WebCoreSupport.subproj/WebBridge.m:
2062        (-[WebBridge createWindowWithURL:frameName:]):
2063        * WebView.subproj/WebControllerPrivate.h:
2064        * WebView.subproj/WebControllerPrivate.m:
2065        (-[WebController _openNewWindowWithRequest:behind:]):
2066        * WebView.subproj/WebDataSourcePrivate.h:
2067        * WebView.subproj/WebDataSourcePrivate.m:
2068        (-[WebDataSourcePrivate dealloc]):
2069        (-[WebDataSource _setTriggeringEvent:]):
2070        (-[WebDataSource _triggeringEvent]):
2071        * WebView.subproj/WebDefaultContextMenuDelegate.m:
2072        (-[WebDefaultContextMenuDelegate openNewWindowWithURL:]):
2073        * WebView.subproj/WebFrame.m:
2074        (-[WebFrame setProvisionalDataSource:]):
2075        (-[WebFrame findOrCreateFramedNamed:]):
2076        * WebView.subproj/WebFramePrivate.m:
2077        (-[WebFrame _continueAfterClickPolicyForEvent:request:]):
2078        * WebView.subproj/WebWindowOperationsDelegate.h:
2079
20802002-11-06  Darin Adler  <darin@apple.com>
2081
2082	- fixed problem where files small enough to fit entirely in the buffer
2083	(8K or less) would not be decoded
2084
2085        * Downloads.subproj/WebDownloadHandler.m:
2086        (-[WebDownloadHandler decodeData:]): Added. Moved most of the code from
2087	receivedData into here.
2088        (-[WebDownloadHandler receivedData:]): Changed to call decodeData.
2089        (-[WebDownloadHandler finishedLoading]): Call decodeData on any remaining
2090	bytes rather than writing them straight out to the data fork.
2091
20922002-11-06  Richard Williamson  <rjw@apple.com>
2093
2094        More work on rendering scripts. Now most complex scripts render correctly.
2095        Working new features include:
2096        bidi, diacriticals, cursive forms, and arabic ligatures.
2097        Selection of text rendered in these scripts, is however, not working. 
2098        Also, line height is incorrect when renderering combined below glyphs.
2099        ajami is, sadly, horrendously broken.
2100
2101        * Misc.subproj/WebUnicode.m:
2102        (glyphVariantLogical):
2103        (shapedString):
2104        * WebCoreSupport.subproj/WebTextRenderer.m:
2105        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:]):
2106        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
2107
21082002-11-06  John Sullivan  <sullivan@apple.com>
2109
2110        * Bookmarks.subproj/WebBookmark.m:
2111        (+[WebBookmark bookmarkOfType:]):
2112	made this handle WebBookmarkTypeProxy
2113
21142002-11-06  Darin Adler  <darin@apple.com>
2115
2116	- fixed bug that affected BinHex-encoded files with no resource fork
2117
2118        * Downloads.subproj/WebBinHexDecoder.m:
2119        (-[WebBinHexDecoder decodeData:dataForkData:resourceForkData:]):
2120	Don't decode the resource fork unless done with the data fork.
2121
2122        * Downloads.subproj/WebDownloadHandler.m: (-[WebDownloadHandler receivedData:]):
2123	Set the forks to nil before calling through.
2124
21252002-11-06  Darin Adler  <darin@apple.com>
2126
2127        * Downloads.subproj/WebMacBinaryDecoder.m: (+[WebMacBinaryDecoder canDecodeHeaderData:]):
2128	Fix == 129 check that was supposed to be <= 129.
2129
2130        * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
2131
21322002-11-06  Darin Adler  <darin@apple.com>
2133
2134        * Downloads.subproj/WebBinHexDecoder.m: (-[WebBinHexDecoder decodeIntoBuffer:size:]):
2135	Fix an off-by-one error handling repeat counts.
2136
2137        * WebKit.pbproj/project.pbxproj: Fix group name I accidentally mangled.
2138
21392002-11-06  Darin Adler  <darin@apple.com>
2140
2141	- added a BinHex decoder and did a little work on the MacBinary decoder
2142        
2143        I'm not supposed to be working on this, but I didn't feel like doing "real" work.
2144
2145        * Downloads.subproj/WebBinHexDecoder.h: Added.
2146        * Downloads.subproj/WebBinHexDecoder.m: Added.
2147        * WebKit.pbproj/project.pbxproj: Added WebBinHexDecoder.
2148
2149        * Downloads.subproj/WebDownloadDecoder.h: Added WEB_DOWNLOAD_DECODER_MINIMUM_HEADER_LENGTH.
2150        * Downloads.subproj/WebDownloadHandler.m:
2151        (-[WebDownloadHandler closeFile]): Check to be sure we don't close the same file twice.
2152
2153        * Downloads.subproj/WebMacBinaryDecoder.h: Added _scriptCode.
2154        * Downloads.subproj/WebMacBinaryDecoder.m:
2155        (+[WebMacBinaryDecoder canDecodeHeaderData:]): Added check of MacBinary version field.
2156        (-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]): Added MacBinary III
2157	part that gets the script code.
2158        (-[WebMacBinaryDecoder filename]): Use the script code.
2159
21602002-11-06  Maciej Stachowiak  <mjs@apple.com>
2161
2162	Took URL field out of click policy - open in new window policy
2163	will always open the request URL.
2164	
2165        * WebView.subproj/WebControllerPolicyDelegate.h:
2166        * WebView.subproj/WebControllerPolicyDelegate.m:
2167        (-[WebPolicyPrivate dealloc]):
2168        (+[WebURLPolicy webPolicyWithURLAction:]):
2169        (+[WebFileURLPolicy webPolicyWithFileAction:]):
2170        (+[WebContentPolicy webPolicyWithContentAction:andPath:]):
2171        * WebView.subproj/WebDefaultPolicyDelegate.m:
2172        (-[WebDefaultPolicyDelegate clickPolicyForAction:andRequest:inFrame:]):
2173        * WebView.subproj/WebFramePrivate.m:
2174        (-[WebFrame _continueAfterClickPolicyForEvent:request:]):
2175
21762002-11-06  Chris Blumenberg  <cblu@apple.com>
2177
2178	Support MacBinary I by checking that bytes 99-127 are 0. Also check byte 82 for all formats.
2179
2180        * Downloads.subproj/WebMacBinaryDecoder.m:
2181        (+[WebMacBinaryDecoder canDecodeHeaderData:]):
2182
21832002-11-06  Ken Kocienda  <kocienda@apple.com>
2184
2185	Call new WebHTTPResourceRequest method to set the amount of time
2186	to cache a 404 response when trying to fetch a favicon.
2187
2188	This change helps to fix this bug:
2189
2190	Radar 3004422 (Loader should cache misses)
2191
2192        * Misc.subproj/WebIconLoader.m:
2193        (-[WebIconLoader startLoading])
2194
21952002-11-05  Maciej Stachowiak  <mjs@apple.com>
2196
2197	Reworked clickPolicy arguments to be closer to proposed version.
2198	
2199        * WebKit.exp:
2200        * WebView.subproj/WebControllerPolicyDelegate.h:
2201        * WebView.subproj/WebControllerPolicyDelegate.m:
2202        * WebView.subproj/WebDefaultPolicyDelegate.m:
2203        (-[WebDefaultPolicyDelegate clickPolicyForAction:andRequest:inFrame:]):
2204        * WebView.subproj/WebFramePrivate.h:
2205        * WebView.subproj/WebFramePrivate.m:
2206        (-[WebFrame _actionInformationForNavigationType:event:]):
2207        (-[WebFrame _continueAfterClickPolicyForEvent:request:]):
2208
22092002-11-05  Darin Adler  <darin@apple.com>
2210
2211        * WebCoreSupport.subproj/WebTextRenderer.m: Made a slightly simpler and faster
2212	version of the new "lose precision" CEIL_TO_INT macro.
2213
22142002-11-05  Richard Williamson  <rjw@apple.com>
2215
2216        Fixed a couple of issues that Dave highlighted w/ his whitespace
2217        fixes.  CG sometimes introduces very small 'error' in metrics, specifically
2218        we saw character widths of 20.0000019 that should have been 20.  As a 
2219        work-around we loose precision beyond the 1000th place.  Also, always
2220        ceil spaces.
2221                
2222        * WebCoreSupport.subproj/WebTextRenderer.m:
2223        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
2224
22252002-11-05  Darin Adler  <darin@apple.com>
2226
2227	- fixed 3084704 -- crash in HTMLTokenizer on page with JavaScript
2228	HTMLDocument::Close inside a <script>
2229
2230        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _detachFromParent]):
2231	We need to stop loading here. Otherwise we might do loading after closeURL,
2232	which could lead to a problem like the one above.
2233
22342002-11-05  Darin Adler  <darin@apple.com>
2235
2236	- changed our MacBinary decoding to not pay any attention to the comment
2237
2238	Before we would "fail to decode" if the comment was truncated, now we just
2239	don't worry about it.
2240
2241        * Downloads.subproj/WebMacBinaryDecoder.h: Remove _commentLength and _commentEnd.
2242        * Downloads.subproj/WebMacBinaryDecoder.m:
2243        (-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]): Remove code
2244	to get _commentLength and code to compute _commentEnd.
2245        (-[WebMacBinaryDecoder finishDecoding]): Check offset against the resource fork
2246	end rather than the comment end to see if we got enough data.
2247
22482002-11-05  John Sullivan  <sullivan@apple.com>
2249
2250        * Resources/url_icon.tiff:
2251	reverted generic URL icon back to the one that
2252	looks like a document until we get something from
2253	HI that SJ likes
2254
22552002-11-05  Chris Blumenberg  <cblu@apple.com>
2256
2257	Fixed: 3074108 - Decode macbinary files during download
2258
2259        * Downloads.subproj/WebDownloadDecoder.h:
2260        * Downloads.subproj/WebDownloadHandler.h:
2261        * Downloads.subproj/WebDownloadHandler.m:
2262        (-[WebDownloadHandler initWithDataSource:]):
2263        (-[WebDownloadHandler dealloc]):
2264        (-[WebDownloadHandler decodeHeaderData:dataForkData:resourceForkData:]):
2265        (-[WebDownloadHandler decodeData:dataForkData:resourceForkData:]):
2266        (-[WebDownloadHandler closeFile]):
2267        (-[WebDownloadHandler cleanUpAfterFailure]):
2268        (-[WebDownloadHandler createFileIfNecessary]):
2269        (-[WebDownloadHandler writeData:toFork:]):
2270        (-[WebDownloadHandler writeDataForkData:resourceForkData:]):
2271        (-[WebDownloadHandler dataIfDoneBufferingData:]):
2272        (-[WebDownloadHandler receivedData:]):
2273        (-[WebDownloadHandler finishDecoding]):
2274        (-[WebDownloadHandler finishedLoading]):
2275        (-[WebDownloadHandler cancel]):
2276        * Downloads.subproj/WebMacBinaryDecoder.h:
2277        * Downloads.subproj/WebMacBinaryDecoder.m:
2278        (-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]):
2279        (-[WebMacBinaryDecoder fileAttributes]):
2280        (-[WebMacBinaryDecoder filename]):
2281        * Misc.subproj/WebKitErrors.h: added new errors
2282        * WebView.subproj/WebMainResourceClient.m:
2283        (-[WebMainResourceClient handle:didReceiveResponse:]): don't send response to download handler
2284        (-[WebMainResourceClient handle:didReceiveData:]): watch for decoding errors
2285
22862002-11-05  Ken Kocienda  <kocienda@apple.com>
2287
2288	Fix for this bug:
2289
2290	Radar 3092747 (javascript cookieEnabled property returns incorrect value)
2291
2292	Now, we return "true" for navigator.cookieEnabled when 
2293	"Only accept cookies from the same domain as the current page" option
2294	is selected is user preferences.
2295
2296        * WebCoreSupport.subproj/WebCookieAdapter.m:
2297        (-[WebCookieAdapter cookiesEnabled])
2298
22992002-11-05  John Sullivan  <sullivan@apple.com>
2300
2301	- fixed 3091271 -- missing plug-in icon is on white
2302	background, not transparent.
2303
2304        * Resources/nullplugin.tiff: Photoshopped the white away. It's
2305	still ugly, but that's a separate bug (3091274)
2306
23072002-11-05  Maciej Stachowiak  <mjs@apple.com>
2308
2309	- fixed 3083732 - SJ: window comes out blank on samsung site
2310	
2311        * WebCoreSupport.subproj/WebBridge.m:
2312        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
2313	Don't start loading if the URL is exactly the same as the parent
2314	URL. We may need a more stringent check, but this seems to match
2315	the tolerance of other browsers OK.
2316
23172002-11-05  Maciej Stachowiak  <mjs@apple.com>
2318
2319	Added request and frame to click policy callback.
2320	
2321        * WebView.subproj/WebControllerPolicyDelegate.h:
2322        * WebView.subproj/WebDefaultPolicyDelegate.m:
2323        (-[WebDefaultPolicyDelegate clickPolicyForElement:button:modifierFlags:request:inFrame:]):
2324        * WebView.subproj/WebFramePrivate.h:
2325        * WebView.subproj/WebFramePrivate.m:
2326        (-[WebFrame _continueAfterClickPolicyForEvent:request:]):
2327        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
2328
23292002-11-04  Richard Williamson  <rjw@apple.com>
2330
2331        Changes to support cursive letter forms.  It works, but I've
2332        disabled it for now.  It's buggy and needs cleanup.
2333        Arabic now renders correctly except for ligature substitution.
2334        
2335        * Misc.subproj/WebUnicode.h:
2336        * Misc.subproj/WebUnicode.m:
2337        (_unicodeIsMark):
2338        (getShape):
2339        (prevChar):
2340        (nextChar):
2341        (prevLogicalCharJoins):
2342        (nextLogicalCharJoins):
2343        (glyphVariantLogical):
2344        (shapedString):
2345        * Misc.subproj/WebUnicodeTables.m:
2346        * WebCoreSupport.subproj/WebTextRenderer.m:
2347        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:]):
2348        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
2349        * WebKitPrefix.h:
2350
23512002-11-04  Maciej Stachowiak  <mjs@apple.com>
2352
2353	Changes to send NSEvents all the way through WebCore and then pass
2354	them back out to WebKit, so that click policy can have a
2355	WebResourceRequest added.
2356
2357        * WebCoreSupport.subproj/WebBridge.m:
2358        (-[WebBridge loadURL:reload:triggeringEvent:]):
2359        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
2360        * WebView.subproj/WebFramePrivate.h:
2361        * WebView.subproj/WebFramePrivate.m:
2362        (-[WebFrame _continueAfterClickPolicyForEvent:]):
2363        (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
2364        * WebView.subproj/WebHTMLView.m:
2365        (-[WebHTMLView mouseUp:]):
2366        * WebView.subproj/WebHTMLViewPrivate.h:
2367        * WebView.subproj/WebHTMLViewPrivate.m:
2368
23692002-11-04  Chris Blumenberg  <cblu@apple.com>
2370
2371	Fixed - 3091658: REGRESSION: cmd-left for back doesn't work in plain-text viewer
2372
2373	We now pass text field key events to the next responder which would be WebView in this case.
2374
2375        * WebView.subproj/WebTextView.m:
2376        (-[WebTextView keyDown:]):
2377        (-[WebTextView keyUp:]):
2378
23792002-11-04  Darin Adler  <darin@apple.com>
2380
2381	- fixed 3090257 -- "leak the world" using the Wallace and Gromit "console"
2382
2383        * Plugins.subproj/WebNetscapePluginStream.m: Update for changes to the base delegate.
2384        (-[WebNetscapePluginStream start]): Use loadWithRequest:.
2385        (-[WebNetscapePluginStream stop]): Call cancel instead of just canceling the handle
2386	directly. This fixes the world leak.
2387        (-[WebNetscapePluginStream cancel]): Do some of the work that was formerly in "stop".
2388
2389        * WebView.subproj/WebMainResourceClient.m:
2390        (-[WebMainResourceClient handle:willSendRequest:]): Call the "stop loading URL" whenever
2391	we cancel I/O, so we don't leak the world.
2392        (-[WebMainResourceClient handle:didReceiveResponse:]): Ditto.
2393
2394        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge objectLoadedFromCache:response:size:]):
2395        * WebCoreSupport.subproj/WebSubresourceClient.m: (-[WebSubresourceClient handleDidFinishLoading:]):
2396        * WebView.subproj/WebControllerPrivate.h:
2397        * WebView.subproj/WebControllerPrivate.m:
2398        (-[WebController _finishedLoadingResourceFromDataSource:]):
2399	Fix a typo in the word "finished".
2400
2401        * WebView.subproj/WebBaseResourceHandleDelegate.m:
2402        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]): Tweak.
2403        (-[WebBaseResourceHandleDelegate cancel]): Tweak.
2404
2405        * Panels.subproj/WebStandardPanels.m:
2406        (-[WebStandardPanels didStartLoadingURL:inWindow:]): Add assertions.
2407        (-[WebStandardPanels didStopLoadingURL:inWindow:]): Ditto.
2408        (-[WebStandardPanels _didStartLoadingURL:inController:]): Ditto.
2409        (-[WebStandardPanels _didStopLoadingURL:inController:]): Ditto.
2410
24112002-11-04  Darin Adler  <darin@apple.com>
2412
2413        * Downloads.subproj/WebMacBinaryDecoder.h: Removed many unneeded fields.
2414        * Downloads.subproj/WebMacBinaryDecoder.m:
2415        (+[WebMacBinaryDecoder canDecodeHeaderData:]): Added comments. Changed maximum filename
2416	length to 63 as the format supports, rather than the 31 that's based on historical
2417	HFS limitations. Fix endian dependency in CRC check.
2418        (-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]): Simplified this,
2419	and removed the state machine and the accumulator. Also added some asserts. Fixed endian
2420	dependency in the code to extract the header.
2421        (-[WebMacBinaryDecoder finishDecoding]): New simpler check now that we don't have a
2422	_streamComplete boolean.
2423        (-[WebMacBinaryDecoder fileAttributes]): Rewrote to take advantage of the above changes,
2424	and also to use kCFAbsoluteTimeIntervalSince1904 rather than parsing a date string.
2425
2426        * Downloads.subproj/crc16.h: Tweaks.
2427        * Downloads.subproj/crc16.m: Tweaks.
2428
24292002-11-04  Darin Adler  <darin@apple.com>
2430
2431        * WebCoreSupport.subproj/WebImageRenderer.m: (-[WebImageRenderer dealloc]):
2432	Replaced a useless call to stopAnimation with a couple of asserts.
2433
24342002-11-04  John Sullivan  <sullivan@apple.com>
2435
2436        * Resources/url_icon.tiff:
2437	new "generic URL" icon from HI -- this one looks like
2438	a red ribbon (!)
2439
24402002-11-03  Darin Adler  <darin@apple.com>
2441
2442        * Plugins.subproj/WebPluginError.h:
2443        * Plugins.subproj/WebPluginError.m:
2444	Not __MyCompanyName__, but rather Apple Computer.
2445
24462002-11-03  Darin Adler  <darin@apple.com>
2447
2448        * Plugins.subproj/WebPlugin.h: Fix comment.
2449
2450        * Plugins.subproj/WebPluginError.m: (-[WebPluginErrorPrivate dealloc]):
2451	Fix leak by calling [super dealloc].
2452
2453        * WebView.subproj/WebFramePrivate.m: (-[WebFramePrivate dealloc]): Remove the
2454	timer invalidate since, as Trey pointed out, it's pointless to invalidate a
2455	timer in dealloc if it's retaining this object while valid.
2456
24572002-11-03  Chris Blumenberg  <cblu@apple.com>
2458
2459	- Added MacBinary decoding code. Not yet used.
2460
2461        * Downloads.subproj/WebMacBinaryDecoder.h: Added.
2462        * Downloads.subproj/WebMacBinaryDecoder.m: Added.
2463        (+[WebMacBinaryDecoder canDecodeHeaderData:]):
2464        (-[WebMacBinaryDecoder init]):
2465        (-[WebMacBinaryDecoder dealloc]):
2466        (-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]):
2467        (-[WebMacBinaryDecoder finishDecoding]):
2468        (-[WebMacBinaryDecoder fileAttributes]):
2469        * Downloads.subproj/crc16.h: Added.
2470        * Downloads.subproj/crc16.m: Added.
2471        (CRC16):
2472        * Plugins.subproj/WebPluginPackage.m:
2473        (-[WebPluginPackage isLoaded]): 
2474        * WebKit.pbproj/project.pbxproj:
2475
24762002-11-03  Darin Adler  <darin@apple.com>
2477
2478        * English.lproj/StringsNotToBeLocalized.txt: Update for recent
2479	changes both to the code here and to the extract script.
2480
24812002-11-03  Darin Adler  <darin@apple.com>
2482
2483	- fixed 3091300 -- "prelighting" on local page is still slow, despite recent bug fix
2484
2485	Turns out all updating would be slow if any resources on the page failed to load.
2486
2487        * WebCoreSupport.subproj/WebSubresourceClient.m:
2488        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
2489	Call the new reportError instead of cancel.
2490        (-[WebSubresourceClient handle:didFailLoadingWithError:]): Ditto.
2491
24922002-11-02  Darin Adler  <darin@apple.com>
2493
2494        * Panels.subproj/WebAuthenticationPanel.m: (-[WebAuthenticationPanel setUpForRequest:]):
2495	Do the previous fix one better by using _web_hostWithPort.
2496
24972002-11-02  Darin Adler  <darin@apple.com>
2498
2499	- fixed bug where the address of an NSNumber object would be used for the port number
2500
2501        * Panels.subproj/WebAuthenticationPanel.m: (-[WebAuthenticationPanel setUpForRequest:]):
2502	Call intValue on the object returned from [NSURL port].
2503
25042002-11-01  Darin Adler  <darin@apple.com>
2505
2506        * Plugins.subproj/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView sendEvent:]):
2507	Fixed uninitialized variable problem.
2508
25092002-11-01  Darin Adler  <darin@apple.com>
2510
2511	- fixed 3090239 -- crash on window close
2512
2513        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _detachFromParent]): Nil out the bridge and
2514	release it so we don't close the URL twice.
2515
2516	- fixed 3058598 -- animated gif animates repeatedly in Alex, but only once in other browsers
2517
2518        * WebCoreSupport.subproj/WebImageRenderer.h: Added fields used by bug workaround.
2519        * WebCoreSupport.subproj/WebImageRenderer.m:
2520        (-[WebImageRenderer blockHasGIFExtensionSignature:length:]): Helper method for bug workaround.
2521        (-[WebImageRenderer checkDataForGIFExtensionSignature:]): Checks incoming data for the GIF
2522	extension signatures.
2523        (-[WebImageRenderer initWithData:]): Override to call checkDataForGIFExtensionSignature.
2524        (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]): Call checkDataForGIFExtensionSignature.
2525        (-[WebImageRenderer repetitionCount]): Return 1 if we were going to return 0, but we didn't see a
2526	GIF extension signature. This workaround can be removed once we require a system new enough to have
2527	the bug fix for bug 3090341.
2528        (-[WebImageRenderer nextFrame:]): Stop on last frame, don't wrap around to first.
2529
2530        * WebCoreSupport.subproj/WebImageRendererFactory.h: Update for changes to WebCore.
2531        * WebCoreSupport.subproj/WebImageRendererFactory.m: Tweaks.
2532
2533        * WebView.subproj/WebImageRepresentation.m: Update imports.
2534        * WebView.subproj/WebImageView.m: Update imports.
2535
25362002-11-01  Richard Williamson   <rjw@apple.com>
2537
2538        Implemented rendering of diacriticals.
2539        
2540        * Misc.subproj/WebUnicode.h:
2541        * Misc.subproj/WebUnicode.m:
2542        (_unicodeDigitValue):
2543        (_unicodeCategory):
2544        (_unicodeDirection):
2545        (_unicodeJoining):
2546        (_unicodeDecompositionTag):
2547        (_unicodeMirrored):
2548        (_unicodeCombiningClass):
2549        (_unicodeLower):
2550        (_unicodeUpper):
2551        * WebCoreSupport.subproj/WebTextRenderer.m:
2552        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:]):
2553        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
2554        (-[WebTextRenderer extendCharacterToGlyphMapToInclude:]):
2555
25562002-11-01  Darin Adler  <darin@apple.com>
2557
2558        * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
2559
25602002-11-01  Chris Blumenberg  <cblu@apple.com>
2561
2562	Check that the plug-in is loaded before calling it.
2563
2564        * Plugins.subproj/WebBaseNetscapePluginStream.h:
2565        * Plugins.subproj/WebBaseNetscapePluginStream.m:
2566        (-[WebBaseNetscapePluginStream dealloc]):
2567        (-[WebBaseNetscapePluginStream setPluginPointer:]):
2568        (-[WebBaseNetscapePluginStream setResponse:]):
2569        (-[WebBaseNetscapePluginStream receivedData:]):
2570        (-[WebBaseNetscapePluginStream destroyStreamWithReason:]):
2571        (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
2572        * Plugins.subproj/WebBasePluginPackage.h:
2573        * Plugins.subproj/WebBasePluginPackage.m:
2574        (-[WebBasePluginPackage isLoaded]):
2575        * Plugins.subproj/WebNetscapePluginDocumentView.m:
2576        (-[WebNetscapePluginDocumentView setDataSource:]):
2577        * Plugins.subproj/WebNetscapePluginPackage.m:
2578        (-[WebNetscapePluginPackage isLoaded]):
2579        * Plugins.subproj/WebNetscapePluginRepresentation.m:
2580        (-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
2581
25822002-11-01  Chris Blumenberg  <cblu@apple.com>
2583
2584	- Moved plug-in error handling to WebResourceLoadDelegate
2585	- Report plug-in load failure, java load failure, and plug-in not found errors.
2586	- Added WebPluginError, subclass of WebError.
2587	- Attempted fix: 3090675 - Standalone WMP (Window Media Player) content crashes Alexander
2588
2589        * English.lproj/Localizable.strings:
2590        * Misc.subproj/WebKitErrors.h:
2591        * Plugins.subproj/WebBaseNetscapePluginView.m:
2592        (-[WebBaseNetscapePluginView sendEvent:]): don't send event to null function
2593        * Plugins.subproj/WebNetscapePluginDocumentView.m:
2594        (-[WebNetscapePluginDocumentView setDataSource:]): report plug-in load failure
2595        * Plugins.subproj/WebNullPluginView.h:
2596        * Plugins.subproj/WebNullPluginView.m: take a WebPluginError
2597        (-[WebNullPluginView dealloc]):
2598        (-[WebNullPluginView viewDidMoveToWindow]):
2599        * Plugins.subproj/WebPluginError.h: Added.
2600        * Plugins.subproj/WebPluginError.m: Added.
2601        (-[WebPluginErrorPrivate dealloc]):
2602        (-[WebPluginError dealloc]):
2603        (-[WebPluginError pluginPageURL]):
2604        (-[WebPluginError pluginName]):
2605        (-[WebPluginError MIMEType]):
2606        * WebCoreSupport.subproj/WebBridge.m:
2607        (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]): report plug-in load failure
2608        (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]): report plug-in load failure
2609        * WebKit.pbproj/project.pbxproj:
2610        * WebView.subproj/WebController.m:
2611        (-[WebResourceLoadDelegate pluginFailedWithError:dataSource:]): added, does nothing
2612        * WebView.subproj/WebControllerPolicyDelegate.h:
2613        * WebView.subproj/WebResourceLoadDelegate.h:
2614        * WebView.subproj/WebView.m:
2615        (+[WebView initialize]): added new error strings
2616
26172002-11-01  John Sullivan  <sullivan@apple.com>
2618
2619	- some weaning of WebBookmark API from WebBookmarkGroup
2620
2621        * Bookmarks.subproj/WebBookmark.m:
2622        (-[WebBookmark dealloc]):
2623	set group to nil instead of asserting that it's non-nil
2624
2625        * Bookmarks.subproj/WebBookmarkGroup.h:
2626	removed obsolete ivar _bookmarksByID
2627        * Bookmarks.subproj/WebBookmarkGroup.m:
2628        (-[WebBookmarkGroup initWithFile:]):
2629	removed obsolete ivar _bookmarksByID
2630        (-[WebBookmarkGroup dealloc]):
2631	removed obsolete ivar _bookmarksByID
2632        (-[WebBookmarkGroup removeBookmark:]):
2633	removed this unnecessary method; callers need to use
2634	[[bookmark parent] removeChild:bookmark] instead
2635
26362002-11-01  Trey Matteson  <trey@apple.com>
2637
2638	Moved involved code for loading URLs from WebBridge up to WebFrame, with a little
2639	consolidation along the way.  I need to get all this stuff in one place in prep
2640	for doing back-forward properly with frames.  There should be no change in
2641	functionality as a result of these changes.
2642
2643        * WebCoreSupport.subproj/WebBridge.m:
2644        (-[WebBridge loadURL:reload:]):
2645        (-[WebBridge postWithURL:data:contentType:]):
2646        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
2647	Much of the guts of these is moved to WebFramePrivate.
2648        * WebView.subproj/WebDataSourcePrivate.h:
2649        * WebView.subproj/WebDataSourcePrivate.m:
2650        (-[WebDataSource _setIsClientRedirect:]):
2651        (-[WebDataSource _isClientRedirect]):
2652	Keep state of whether we're processing a redirect in DataSource.  I had previously
2653	to do this with a loadType, but that failed because cliRedir is orthogonal.
2654        * WebView.subproj/WebFramePrivate.h:
2655	WebFrameLoadTypeClientRedirect is gone.
2656        * WebView.subproj/WebFramePrivate.m:
2657        (-[WebFramePrivate init]):
2658	Initialize loadType explicitly.
2659        (-[WebFrame _transitionToCommitted]):
2660	Test [dataSource _isClientRedirect] instead of looking at loadType.
2661        (-[WebFrame _isLoadComplete]):
2662	Nuke WebFrameLoadTypeClientRedirect
2663        (-[WebFrame _goToItem:withFrameLoadType:]):
2664	Nuke WebFrameLoadTypeClientRedirect.
2665        (-[WebFrame _loadRequest:]):
2666	Helper method moved from WebBridge.
2667        (-[WebFrame _loadURL:loadType:clientRedirect:]):
2668	Core impl moved up from WebBridge.
2669        (-[WebFrame _postWithURL:data:contentType:]):
2670	Core impl moved up from WebBridge.
2671
26722002-11-01  Darin Adler  <darin@apple.com>
2673
2674	- implemented loop counts
2675
2676        * WebCoreSupport.subproj/WebImageRenderer.h: Added repetitionsComplete field.
2677        * WebCoreSupport.subproj/WebImageRenderer.m:
2678        (-[WebImageRenderer repetitionCount]): Get NSImageLoopCount.
2679        (-[WebImageRenderer nextFrame:]): Check repetitionCount and stop once we hit it.
2680
26812002-10-31  Darin Adler  <darin@apple.com>
2682
2683        * WebView.subproj/WebFrame.m: (-[WebFrame setController:]): Add an assert,
2684	hoping to catch a reported bug earlier or disprove one theory.
2685
26862002-10-31  Trey Matteson  <trey@apple.com>
2687
2688	Added API to support 3072505 - SnapBack for user-entered page address
2689	Refixed 3041616 - Extra page added in back button history
2690	Previous fix was stepped on by a later checkin.  Re-established that fix, then
2691	went on to make sure we have the final URL and title in the BF item in the
2692	case of a client redirect.  Also handles redirects that happen within frames.
2693	Fixed 3078560 - div added to "back" list
2694
2695        * History.subproj/WebBackForwardList.h:
2696        * History.subproj/WebBackForwardList.m:
2697        (-[WebBackForwardList containsEntry:]):
2698	Added new API for 3072505.
2699        * WebCoreSupport.subproj/WebBridge.h:
2700        * WebCoreSupport.subproj/WebBridge.m:
2701        (-[WebBridge reportClientRedirectTo:delay:fireDate:]):
2702        (-[WebBridge reportClientRedirectCancelled]):
2703        (-[WebBridge loadURL:reload:]):
2704	Added logging.  Renamed flag.  Establish the right loadtype and set BF items
2705	from the old dataSource onto the new dataSource in the case of a client redirect.
2706        * WebView.subproj/WebDataSourcePrivate.h:
2707        * WebView.subproj/WebDataSourcePrivate.m:
2708        (-[WebDataSource _setRequest:]):
2709	Add logging.
2710        (-[WebDataSource _addBackForwardItem:]):
2711        (-[WebDataSource _addBackForwardItems:]):
2712        (-[WebDataSource _backForwardItems]):
2713	New setters/getters to support setting up the new dataSource of a client redirect.
2714        * WebView.subproj/WebFramePrivate.h:
2715	New loadType WebFrameLoadTypeClientRedirect.
2716        * WebView.subproj/WebFramePrivate.m:
2717        (-[WebFrame _transitionToCommitted]):
2718	Update the URL in the BF list in the client redirect case.
2719        (-[WebFrame _isLoadComplete]):
2720	NOP case for WebFrameLoadTypeClientRedirect
2721        (-[WebFrame _goToItem:withFrameLoadType:]):
2722	ASSERT_NOT_REACHED case for WebFrameLoadTypeClientRedirect
2723
27242002-10-31  Richard Williamson  <rjw@apple.com>
2725
2726        Corrected extern definitions of lookup tables.
2727        
2728        * Misc.subproj/WebUnicode.h:
2729        * Misc.subproj/WebUnicode.m:
2730        (_unicodeDirection):
2731        * WebCoreSupport.subproj/WebTextRenderer.m:
2732        (+[WebTextRenderer initialize]):
2733
2734=== Alexander-30 ===
2735
27362002-10-30  Richard Williamson  <rjw@apple.com>
2737
2738        More work on bidi and contextual forms.
2739        Table lookup code for unicode characters attributes.
2740
2741        * Misc.subproj/WebUnicode.h: Added.
2742        * Misc.subproj/WebUnicode.m: Added.
2743        (_unicodeDigitValue):
2744        (_unicodeCategory):
2745        (_unicodeDirection):
2746        (_unicodeJoining):
2747        (_unicodeDecompositionTag):
2748        (_unicodeMirrored):
2749        (_unicodeMirroredChar):
2750        (_unicodeCombiningClass):
2751        (_unicodeLower):
2752        (_unicodeUpper):
2753        (WebKitInitializeUnicode):
2754        * Misc.subproj/WebUnicodeTables.m: Added.
2755        * WebKit.pbproj/project.pbxproj:
2756
2757        Additional logging parameter.
2758        
2759        * Misc.subproj/WebKitLogging.h:
2760        * Misc.subproj/WebKitLogging.m:
2761
27622002-10-30  Maciej Stachowiak  <mjs@apple.com>
2763
2764	Pass WebResourceRequest rather than just NSURL to URL policy
2765	delegate method.
2766	
2767        * WebView.subproj/WebControllerPolicyDelegate.h:
2768        * WebView.subproj/WebDefaultPolicyDelegate.h:
2769        * WebView.subproj/WebDefaultPolicyDelegate.m:
2770        (+[WebDefaultPolicyDelegate defaultURLPolicyForRequest:]):
2771        (-[WebDefaultPolicyDelegate URLPolicyForRequest:inFrame:]):
2772        * WebView.subproj/WebFramePrivate.m:
2773        (-[WebFrame _shouldShowRequest:]):
2774
27752002-10-30  Darin Adler  <darin@apple.com>
2776
2777        * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
2778
27792002-10-30  Chris Blumenberg  <cblu@apple.com>
2780
2781	Fixed: 3088122 - Assertion failure/crash closing window with QuickTime streaming in
2782
2783        * WebView.subproj/WebDataSourcePrivate.m:
2784        (-[WebDataSource _setMainDocumentError:]): call receivedError on the representation.
2785
27862002-10-30  Darin Adler  <darin@apple.com>
2787
2788	- fixed memory leaks in plugin package creation code
2789
2790        * Plugins.subproj/WebNetscapePluginPackage.m:
2791        (-[WebNetscapePluginPackage initWithPath:]): Rearrange this code, and make sure
2792	that it does a [self release] if it's going to return nil instead of self.
2793        (-[WebNetscapePluginPackage unload]): Set bundle to 0 when we release it.
2794        (-[WebNetscapePluginPackage dealloc]): Release the bundle if it's not 0.
2795
2796        * Plugins.subproj/WebPluginPackage.m:
2797        (-[WebPluginPackage initWithPath:]): Rearrange this code, and make sure
2798	that it does a [self release] if it's going to return nil instead of self.
2799
28002002-10-30  Darin Adler  <darin@apple.com>
2801
2802	- fixed 3086564 -- REGRESSION: meta-refresh to the same page doesn't refresh
2803
2804	The key is to respect the new reload: parameter from the bridge.
2805
2806        * WebCoreSupport.subproj/WebBridge.m:
2807        (-[WebBridge loadURL:reload:]): Don't ever treat a reload as a redirect.
2808	Set the cache policy to WebRequestCachePolicyLoadFromOrigin if it's a reload.
2809
2810	- fixed 3087214 -- REGRESSION: <WebKit/WebKit.h> contains #import of non-existent header
2811
2812        * Misc.subproj/WebKit.h: Removed import of WebControllerSets.h, which is private.
2813
28142002-10-30  Maciej Stachowiak  <mjs@apple.com>
2815
2816	Another step towards the policy API change - add request argument
2817	to file URL policy and remove isDirectory argument.
2818	
2819        * WebView.subproj/WebControllerPolicyDelegate.h:
2820        * WebView.subproj/WebDefaultPolicyDelegate.m:
2821        (-[WebDefaultPolicyDelegate fileURLPolicyForMIMEType:andRequest:inFrame:]):
2822        * WebView.subproj/WebFrame.m:
2823        (-[WebFrame setProvisionalDataSource:]):
2824        * WebView.subproj/WebFramePrivate.h:
2825        * WebView.subproj/WebFramePrivate.m:
2826        (-[WebFrame _shouldShowRequest:]):
2827        * WebView.subproj/WebMainResourceClient.m:
2828        (-[WebMainResourceClient handle:willSendRequest:]):
2829
28302002-10-29  Maciej Stachowiak  <mjs@apple.com>
2831
2832	First step towards policy API change. Pass request instead of URL
2833	to content policy delegate method.
2834	
2835        * WebView.subproj/WebControllerPolicyDelegate.h:
2836        * WebView.subproj/WebDefaultPolicyDelegate.m:
2837        * WebView.subproj/WebMainResourceClient.m:
2838        (-[WebMainResourceClient handle:didReceiveResponse:]):
2839
28402002-10-29  Maciej Stachowiak  <mjs@apple.com>
2841
2842	- fixed 3087548 - REGRESSION: two windows open for netflix confirmation
2843	
2844        * WebView.subproj/WebControllerPrivate.h:
2845        * WebView.subproj/WebControllerPrivate.m:
2846        (-[WebController _findFrameInThisWindowNamed:]): Added this function back,
2847	and added check for top-level frame name.
2848        (-[WebController _findFrameNamed:]): Use
2849	_findFrameInThisWindowNamed: to make sure top-level frame names
2850	get checked.
2851
28522002-10-29  Chris Blumenberg  <cblu@apple.com>
2853
2854	Created Downloads.subproj to hold the to-be-implemented download decoders.
2855
2856        * Downloads.subproj/WebDownloadDecoder.h: Added.
2857        * Downloads.subproj/WebDownloadHandler.h: Added.
2858        * Downloads.subproj/WebDownloadHandler.m: Added.
2859        (-[WebDownloadHandler initWithDataSource:]):
2860        (-[WebDownloadHandler dealloc]):
2861        (-[WebDownloadHandler errorWithCode:]):
2862        (-[WebDownloadHandler receivedResponse:]):
2863        (-[WebDownloadHandler receivedData:]):
2864        (-[WebDownloadHandler finishedLoading]):
2865        (-[WebDownloadHandler cancel]):
2866        * Misc.subproj/WebDownloadHandler.h: Removed.
2867        * Misc.subproj/WebDownloadHandler.m: Removed.
2868        * WebKit.pbproj/project.pbxproj:
2869
28702002-10-28  Darin Adler  <darin@apple.com>
2871
2872	- fixed crash I just introduced
2873
2874        * Plugins.subproj/WebPluginDatabase.m: (-[WebPluginDatabase init]):
2875	Remove the release call here. When I added the autorelease, I didn't realize that
2876	the caller was doing a release.
2877
28782002-10-28  Trey Matteson  <trey@apple.com>
2879
2880	Fixed 3041616 - Extra page added in back button history
2881
2882	Client-side redirects would always put an extra item in the backforward list.
2883	According to Darin this is a regression all the way back from functionality moving
2884	from WebBrowser to WebKit.	
2885
2886        * WebCoreSupport.subproj/WebBridge.h:
2887	Added state to know if we're doing an "internal" type of load
2888        * WebCoreSupport.subproj/WebBridge.m:
2889        (-[WebBridge reportClientRedirectTo:delay:fireDate:]):
2890	Set internalLoad bit if delay==0
2891        (-[WebBridge reportClientRedirectCancelled]):
2892	Clear internalLoad
2893        (-[WebBridge loadURL:]):
2894	Set frame's loadType if doing an internal load (similar to what we do when loading
2895	child frames)
2896
28972002-10-28  Darin Adler  <darin@apple.com>
2898
2899	- fixed storage leak of WebNetscapePluginPackage objects
2900
2901        * Plugins.subproj/WebBasePluginPackage.m:
2902        (+[WebBasePluginPackage pluginWithPath:]): Add missing autorelease.
2903
2904        * Plugins.subproj/WebBasePluginPackage.h:
2905        * Plugins.subproj/WebPluginController.h:
2906        * Plugins.subproj/WebPluginController.m:
2907        * Plugins.subproj/WebPluginPackage.h:
2908        * Plugins.subproj/WebPluginPackage.m:
2909	Not __MyCompanyName__, but rather Apple Computer.
2910
29112002-10-28  Darin Adler  <darin@apple.com>
2912
2913	- fixed bug that caused us to leak all WebResourceHandles used for subresources
2914
2915        * WebCoreSupport.subproj/WebSubresourceClient.m:
2916        (-[WebSubresourceClient dealloc]): Remove bogus "currentURL == nil" assert.
2917        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
2918	Use the new loadWithRequest: call instead of making handle and doing loadWithDelegate:.
2919	This is where the leak was, because no one ever released the handle, but releasing it
2920	right away would be too soon.
2921
2922        * WebView.subproj/WebBaseResourceHandleDelegate.h: Added defersCallbacks field,
2923	loadWithRequest: method, and setDefersCallbacks: method. Removed handle method.
2924        * WebView.subproj/WebBaseResourceHandleDelegate.m:
2925        (-[WebBaseResourceHandleDelegate loadWithRequest:]): New method. Sets up the handle,
2926	set the defersCallbacks state on it, and calls loadWithDelegate:.
2927        (-[WebBaseResourceHandleDelegate setDefersCallbacks:]): Stores defersCallbacks state,
2928	and also sets it on the handle, if any.
2929        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]): Remove code to set up
2930	the handle, since we now do that at loadWithRequest: time.
2931
2932        * WebView.subproj/WebDataSourcePrivate.h: Remove mainHandle field.
2933        * WebView.subproj/WebDataSourcePrivate.m:
2934        (-[WebDataSourcePrivate dealloc]): Don't release mainHandle.
2935        (-[WebDataSource _setPrimaryLoadComplete:]): Ditto.
2936        (-[WebDataSource _startLoading]): Use loadWithRequest: on the client, no need to deal
2937	with the handle directly at all.
2938        (-[WebDataSource _addSubresourceClient:]): Call setDefersCallbacks: on the client.
2939        (-[WebDataSource _defersCallbacksChanged]): Ditto.
2940
2941        * WebView.subproj/WebControllerPrivate.m: Remove unneeded include.
2942        * WebView.subproj/WebMainResourceClient.m: Ditto.
2943
29442002-10-28  Chris Blumenberg  <cblu@apple.com>
2945
2946	Fixed: 3056726 - View Source window always displays the source in current system encoding
2947	Fixed: 3019352 - Text encoding is not handled when viewing plain text
2948
2949        * WebView.subproj/WebDataSource.h:
2950        * WebView.subproj/WebDataSource.m:
2951        (-[WebDataSource stringWithData:]): added, creates a string using the specified encoding.
2952        * WebView.subproj/WebHTMLRepresentation.m:
2953        (-[WebHTMLRepresentation documentSource]): uses the bridge specified encoding when creating the string
2954        * WebView.subproj/WebTextView.h:
2955        * WebView.subproj/WebTextView.m:
2956        (-[WebTextView dataSourceUpdated:]): use stringWithData: 
2957        (-[WebTextView supportsTextEncoding]): Yup
2958
29592002-10-28  Richard Williamson   <rjw@apple.com>
2960
2961        Fixed crasher.
2962        
2963        * WebCoreSupport.subproj/WebTextRenderer.m:
2964        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
2965
29662002-10-28  John Sullivan  <sullivan@apple.com>
2967
2968        * Bookmarks.subproj/WebBookmark.h:
2969        * Bookmarks.subproj/WebBookmark.m:
2970        (-[WebBookmark contentMatches:]): new method, returns YES if
2971	two bookmarks are the same, ignoring group and parent.
2972
29732002-10-28  Trey Matteson  <trey@apple.com>
2974
2975	Finished 2998200 - access to most-recent in submenu of back & forward buttons
2976
2977        * WebView.subproj/WebDataSourcePrivate.h:
2978	The BF items we are going to and from were moved here from
2979	WebFrame because of timing problems among multiple data sources
2980	when using the BF buttons during a load.
2981	In addition, the datasource has a list of relevant BF items for
2982	which it keeps their titles up to date.
2983        * WebView.subproj/WebDataSourcePrivate.m:
2984        (-[WebDataSourcePrivate dealloc]):
2985	Free new state.
2986        (-[WebDataSource _setTitle:]):
2987	Update titles of BF items.
2988        (-[WebDataSource _provisionalBackForwardItem]):
2989        (-[WebDataSource _setProvisionalBackForwardItem:]):
2990        (-[WebDataSource _previousBackForwardItem]):
2991        (-[WebDataSource _setPreviousBackForwardItem:]):
2992        (-[WebDataSource _addBackForwardItem:]):
2993	Maintain new state.
2994        (-[WebDataSource _commitIfReady]):
2995	Free up previous and provisional BF items after commit.
2996        * WebCoreSupport.subproj/WebBridge.m:
2997        (-[WebBridge loadURL:]):
2998	Add the new BF item to the datasource.
2999        (-[WebBridge saveDocumentState:]):
3000	Use the right BF item to save the doc state.
3001        * WebView.subproj/WebFramePrivate.h:
3002	Previous and provisional BF are moved to datasource.
3003        * WebView.subproj/WebFramePrivate.m:
3004        (-[WebFrame _transitionToCommitted]):
3005	Use provisional BF from datasource to set position in BF list.
3006	Add new BF item to datasource.
3007        (-[WebFrame _isLoadComplete]):
3008        (-[WebFrame _checkLoadComplete]):
3009	Comments, whitespace.
3010        (-[WebFrame _goToItem:withFrameLoadType:]):
3011	Set item we will use to saveDocState at commit time.
3012
30132002-10-27  Darin Adler  <darin@apple.com>
3014
3015	- WebKit part of filename width fix
3016
3017        * WebCoreSupport.subproj/WebFileButton.m:
3018        (-[WebFileButton drawRect:]): Compute left position by starting at
3019	the right side of the button frame rather than by starting at the right
3020	side of the overall bounds. Removes dependency on fixed-width filename area.
3021        (-[WebFileButton updateLabel]): Added. Computes ellipsized filename.
3022        (-[WebFileButton setFilename:]): Use updateLabel instead of code in line here.
3023        (-[WebFileButton setFrameSize:]): Call updateLabel.
3024        (-[WebFileButton bestVisualFrameSizeForCharacterCount:]): Compute a width based
3025	on the count passed in rather than a hardcoded 200-pixel constant.
3026
30272002-10-27  Darin Adler  <darin@apple.com>
3028
3029	- fixed 3037369 -- Status text not cleared after start of drag from page
3030
3031        * WebView.subproj/WebHTMLView.m:
3032        (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]):
3033	Find the highest-level enclosing WebHTMLView, and call _updateMouseoverWithEvent:
3034	with the mouseUp event after the drag is done.
3035        (-[WebHTMLView mouseMovedNotification:]): Just call _updateMouseoverWithEvent:,
3036	the code from here was moved into there.
3037
3038        * WebView.subproj/WebHTMLViewPrivate.h: Declare _updateMouseoverWithEvent.
3039        * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _updateMouseoverWithEvent:]):
3040	Moved all the code from mouseMovedNotification: in here so it could be used twice.
3041
30422002-10-27  Don Melton  <gramps@apple.com>
3043
3044        * WebView.subproj/WebController.m:
3045        (-[WebController userAgentForURL:]):
3046
3047	Changed default user agent to Mozilla 1.1.
3048
30492002-10-27  Darin Adler  <darin@apple.com>
3050
3051        * Bookmarks.subproj/WebBookmarkProxy.m: (-[WebBookmarkProxy dealloc]):
3052	Added, so we don't leak the title.
3053
3054        * Bookmarks.subproj/WebBookmarkGroup.m: (-[WebBookmarkGroup removeBookmark:]):
3055        * Bookmarks.subproj/WebBookmarkList.m: (-[WebBookmarkList removeChild:]):
3056	Added retain/release pairs so we don't use an object after it's deallocated.
3057	In practice this doesn't happen the way these are used by Alex since they are
3058	in an array, but they have windows of vulnerability depending on exactly how
3059	they are used.
3060
30612002-10-26  Darin Adler  <darin@apple.com>
3062
3063        * WebCoreSupport.subproj/WebViewFactory.m:
3064        (-[WebViewFactory inputElementAltText]): Added.
3065        (-[WebViewFactory resetButtonDefaultLabel]): Added.
3066        (-[WebViewFactory searchableIndexIntroduction]): Added.
3067        (-[WebViewFactory submitButtonDefaultLabel]): Added.
3068        (-[WebViewFactory defaultLanguageCode]): Added.
3069
3070        * English.lproj/Localizable.strings: Update.
3071        * English.lproj/StringsNotToBeLocalized.txt: Update.
3072
30732002-10-25  Darin Adler  <darin@apple.com>
3074
3075        * WebCoreSupport.subproj/WebViewFactory.m:
3076        (-[WebViewFactory runJavaScriptAlertPanelWithMessage:]): Added.
3077        (-[WebViewFactory runJavaScriptConfirmPanelWithMessage:]): Added.
3078
3079        * English.lproj/Localizable.strings: Update.
3080        * English.lproj/StringsNotToBeLocalized.txt: Update.
3081
30822002-10-25  Richard Williamson   <rjw@apple.com>
3083
3084        Implemented support for bidi text layout.
3085        
3086        * WebCoreSupport.subproj/WebTextRenderer.m:
3087        (_drawGlyphs):
3088        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:]):
3089
30902002-10-25  Chris Blumenberg  <cblu@apple.com>
3091
3092	Made frameNamed private in WebController and renamed it to _findFrameNamed. Got rid of _frameInThisWindowNamed in WebController because it isn't needed anymore.
3093
3094        * WebView.subproj/WebController.h:
3095        * WebView.subproj/WebController.m:
3096        (-[WebController _goToItem:withFrameLoadType:]): call _findFrameNamed
3097        * WebView.subproj/WebControllerPrivate.h:
3098        * WebView.subproj/WebControllerPrivate.m:
3099        (-[WebController _findFrameNamed:]): renamed, made private, got rid of call to _frameInThisWindowNamed as it is not needed
3100        * WebView.subproj/WebFrame.m:
3101        (-[WebFrame findFrameNamed:]): call [WebController _findFrameNamed:]
3102
31032002-10-25  Chris Blumenberg  <cblu@apple.com>
3104
3105	- Fix case where we would name a new window _blank
3106	- If a data source can't be created for a plug-in request, don't create the frame or open a window.
3107	- cleaned up plug-in stream notifications
3108
3109        * Plugins.subproj/WebBaseNetscapePluginView.h:
3110        * Plugins.subproj/WebBaseNetscapePluginView.m:
3111        (-[WebBaseNetscapePluginView initWithFrame:]): create streamNotifications dict
3112        (-[WebBaseNetscapePluginView dealloc]): release streamNotifications dict
3113        (-[WebBaseNetscapePluginView frameStateChanged:]): cleaned up
3114        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): create data source before frame
3115        * Plugins.subproj/WebPluginController.m:
3116        (-[WebPluginController showURL:inFrame:]): create data source before frame
3117        * WebView.subproj/WebControllerPrivate.m:
3118        (-[WebController _setTopLevelFrameName:]): don't allow _blank frames
3119        * WebView.subproj/WebFrame.m:
3120        (-[WebFrame findOrCreateFramedNamed:]): no need to check for _blank
3121
31222002-10-25  Darin Adler  <darin@apple.com>
3123
3124        Tighten up the code that observes mouse moved events.
3125
3126        * WebView.subproj/WebHTMLView.m:
3127        (-[WebHTMLView initWithFrame:]): Don't set up observers here.
3128        (-[WebHTMLView addMouseMovedObserver]): Added some assertions.
3129        (-[WebHTMLView viewWillMoveToWindow:]): Stop observing the "become main" and "resign main"
3130	notifications here.
3131        (-[WebHTMLView viewDidMoveToWindow]): Start observing them here.
3132        (-[WebHTMLView windowDidBecomeMain:]): Assert that the notification is for this window,
3133	instead of checking with if.
3134        (-[WebHTMLView windowDidResignMain:]): Assert that the notification is for this window.
3135
31362002-10-25  Chris Blumenberg  <cblu@apple.com>
3137
3138	Cleaned up the frame searching shenanigans. Things are much cleaner and clearer now.
3139
3140        * Plugins.subproj/WebBaseNetscapePluginView.m:
3141        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): call findOrCreateFramedNamed
3142        * Plugins.subproj/WebPluginController.m:
3143        (-[WebPluginController showURL:inFrame:]): call findOrCreateFramedNamed
3144        * WebCoreSupport.subproj/WebBridge.m:
3145        (-[WebBridge childFrames]): moved
3146        (-[WebBridge mainFrame]): moved
3147        (-[WebBridge findOrCreateFramedNamed:]): call findOrCreateFramedNamed on the frame
3148        (-[WebBridge pluginViewWithPackage:attributes:baseURL:]): call _pluginController
3149        * WebView.subproj/WebControllerPrivate.m:
3150        (-[WebController _frameInThisWindowNamed:]): call _descendantFrameNamed
3151        * WebView.subproj/WebFrame.h:
3152        * WebView.subproj/WebFrame.m:
3153        (-[WebFrame findFrameNamed:]): was frameNamed. First checks special-case frame names, descendant frames, then the whole controller, then other controllers.
3154        (-[WebFrame findOrCreateFramedNamed:]): calls findFrameNamed, opens new window if necessary 
3155        * WebView.subproj/WebFramePrivate.h:
3156        * WebView.subproj/WebFramePrivate.m:
3157        (-[WebFrame _descendantFrameNamed:]): searches children, children's children etc.
3158        (-[WebFrame _pluginController]): this method needed an "_"
3159        * WebView.subproj/WebHTMLView.m:
3160        (-[WebHTMLView addSubview:]): call _pluginController
3161        * WebView.subproj/WebHTMLViewPrivate.m:
3162        (-[WebHTMLView _elementAtPoint:]): no need to special case for "_blank" since findFrameNamed will return nil for that name
3163
31642002-10-25  Trey Matteson  <trey@apple.com>
3165	
3166	2919039 - Implement limit on back/forward history list
3167	2998200 - access to most-recent in submenu of back & forward buttons
3168	3022566 - need WebKit API for accessing and visiting back/forward list items
3169	3084051 - forward button incorrectly enabled after going forward all the way
3170
3171	Remaining issues at this point are getting the title of the pages
3172	into the menu items (instead of the URL), and saving document
3173	state properly when you jump around in the list.  Solutions are
3174	known and coming soon.
3175
3176        * History.subproj/WebBackForwardList.h:
3177	Added doc comments to API.  Made ivars private.  Replaced index-
3178	based API with item-based API.  Added a sizelimit to the overall
3179	list.  Tweaked API to get back and forward lists.
3180        * History.subproj/WebBackForwardList.m:
3181	Straightforward impl of the above, with the note that I dumped
3182	WebHistoryList from the API and impl in favor of an NSArray,
3183	which is efficient for this sort of use (queue, stack).
3184        (-[WebBackForwardList init]):
3185        (-[WebBackForwardList dealloc]):
3186        (-[WebBackForwardList goBack]):
3187        (-[WebBackForwardList goForward]):
3188        (-[WebBackForwardList goToEntry:]):
3189        (-[WebBackForwardList backEntry]):
3190        (-[WebBackForwardList forwardEntry]):
3191        (-[WebBackForwardList maximumSize]):
3192        (-[WebBackForwardList setMaximumSize:]):
3193        (-[WebBackForwardList description]):
3194        * History.subproj/WebHistoryList.h: Removed.
3195	Nuked from API, per above.
3196        * History.subproj/WebHistoryList.m: Removed.
3197        * Misc.subproj/WebKit.h:
3198	WebHistoryList gone from API.
3199        * WebCoreSupport.subproj/WebBridge.m:
3200        (-[WebBridge loadURL:]):
3201	Use if/else instead of buried "return;", so next person doesn;t
3202	make the same mis-read I did.
3203        (-[WebBridge saveDocumentState:]):
3204	Site of future work.
3205        * WebKit.pbproj/project.pbxproj:
3206	Nuked WebHistoryList.
3207        * WebView.subproj/WebController.h:
3208        * WebView.subproj/WebController.m:
3209        (-[WebController goBackOrForwardToItem:]):
3210	New method to support random access nav in backforward list.
3211        * WebView.subproj/WebDataSourcePrivate.m:
3212        (-[WebDataSource _setTitle:]):
3213	Site of future work (fixing title in items)
3214        * WebView.subproj/WebFramePrivate.h:
3215	WebFrameLoadTypeIndexedBack/WebFrameLoadTypeIndexedForward are
3216	collapsed into WebFrameLoadTypeIndexedBackForward.  Vestigial
3217	WebFrameLoadTypeIntermediateBack is nuked.
3218        * WebView.subproj/WebFramePrivate.m:
3219        (-[WebFramePrivate setBackForwardItem:]):
3220        (-[WebFrame _setBackForwardItem:]):
3221        (-[WebFrame _backForwardItem]):
3222	Must remember the BF item we're going to so we can update the
3223	BF list on commit.
3224        (-[WebFrame _transitionToCommitted]):
3225	Update the BF list on commit.
3226        (-[WebFrame _isLoadComplete]):
3227        (-[WebFrame _goToItem:withFrameLoadType:]):
3228	Update BF list on within-page nav.
3229	Remember BF item we are going to for later update on commit.
3230
32312002-10-25  Chris Blumenberg  <cblu@apple.com>
3232
3233	Minor non-mentionable clean-up.
3234
3235        * WebCoreSupport.subproj/WebBridge.m:
3236        (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]):
3237
32382002-10-25  Chris Blumenberg  <cblu@apple.com>
3239
3240	Cleaned up the plug-in API headers so they can be sent to other groups.
3241
3242        * Plugins.subproj/WebPlugin.h:
3243        * Plugins.subproj/WebPluginContainer.h:
3244        * Plugins.subproj/WebPluginViewFactory.h:
3245
32462002-10-24  Richard Williamson   <rjw@apple.com>
3247
3248        Fixed many font substitution related bugs, at least including:
3249        3006966, 3026675, 3071106, and more... (each of these bugs
3250        has a list of related bugs). 
3251        
3252        Needs little more cleanup to correctly deal with non base characters.
3253        
3254        * WebCoreSupport.subproj/WebTextRenderer.h:
3255        * WebCoreSupport.subproj/WebTextRenderer.m:
3256        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
3257        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:]):
3258        (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
3259        
3260        Against Darin's better judgement prevent extra layout when not in live resize.  If
3261        this introduces any regressions I owe darin a good bottle of wine.
3262        
3263        * WebView.subproj/WebDynamicScrollBarsView.m:
3264        (-[WebDynamicScrollBarsView updateScrollers]):
3265
32662002-10-24  Chris Blumenberg  <cblu@apple.com>
3267
3268	New Java plug-in works! Much faster to load and no spinny cursor! Unfortunately, it very unstable.
3269
3270        * Plugins.subproj/WebPluginController.m: cleaned-up the logging messages.
3271        (-[WebPluginController addPluginView:]):
3272        (-[WebPluginController didAddPluginView:]):
3273        (-[WebPluginController startAllPlugins]):
3274        (-[WebPluginController stopAllPlugins]):
3275        (-[WebPluginController destroyAllPlugins]):
3276        * WebCoreSupport.subproj/WebBridge.m:
3277        (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]): make height and width an attribute.
3278
32792002-10-24  Chris Blumenberg  <cblu@apple.com>
3280
3281	Some clean-up and bug fixes for new plug-in support.
3282
3283        * Plugins.subproj/WebPluginController.m:
3284        (-[WebPluginController initWithWebFrame:]): need a colon after windowWillClose
3285        (-[WebPluginController addPluginView:]): added logging
3286        (-[WebPluginController didAddPluginView:]): added logging
3287        (-[WebPluginController startAllPlugins]): added logging
3288        (-[WebPluginController stopAllPlugins]): added logging
3289        (-[WebPluginController destroyAllPlugins]): added logging
3290        * Plugins.subproj/WebPluginPackage.m:
3291        (-[WebPluginPackage getMIMEInformation]): use correct dict key for getting MIME descriptions
3292        * WebCoreSupport.subproj/WebBridge.m: no more didAddSubview
3293        * WebView.subproj/WebFramePrivate.h: no more didAddSubview
3294        * WebView.subproj/WebFramePrivate.m: no more didAddSubview
3295        * WebView.subproj/WebHTMLView.m:
3296        (-[WebHTMLView addSubview:]): call didAddPluginView on WebPluginController
3297
32982002-10-24  John Sullivan  <sullivan@apple.com>
3299
3300        * WebCoreSupport.subproj/WebBridge.m:
3301        (-[WebBridge objectLoadedFromCache:response:size:]):
3302	added ASSERT(response != nil), leftover from debugging
3303	session on Tuesday, seems worth leaving in.
3304
33052002-10-24  Darin Adler  <darin@apple.com>
3306
3307        * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
3308
33092002-10-24  Chris Blumenberg  <cblu@apple.com>
3310
3311	Changed some method names in WebPluginController.
3312
3313        * Plugins.subproj/WebPluginController.h:
3314        * Plugins.subproj/WebPluginController.m:
3315        (-[WebPluginController didAddPluginView:]):
3316        (-[WebPluginController startAllPlugins]):
3317        (-[WebPluginController stopAllPlugins]):
3318        (-[WebPluginController destroyAllPlugins]):
3319        (-[WebPluginController windowWillClose:]):
3320        * WebView.subproj/WebFramePrivate.m:
3321        (-[WebFrame _transitionToCommitted]):
3322        (-[WebFrame _didAddSubview:]):
3323
3324=== Alexander-29 ===
3325
33262002-10-24  Richard Williamson   <rjw@apple.com>
3327
3328        Don't leak request.
3329        
3330        * WebView.subproj/WebBaseResourceHandleDelegate.m:
3331        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
3332
33332002-10-24  Richard Williamson   <rjw@apple.com>
3334
3335        Always copy request, we can't count on it being immutable.
3336        This was the cause of the ASSERT from last night's checkin.
3337        
3338        * WebView.subproj/WebBaseResourceHandleDelegate.m:
3339        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
3340        
3341        Only send serverRedirectedForDataSource: if URL changed.
3342        
3343        * WebView.subproj/WebDataSourcePrivate.m:
3344        (-[WebDataSource _setRequest:]):
3345
33462002-10-24  Chris Blumenberg  <cblu@apple.com>
3347	
3348	- Use "MIMEType" instead of "serviceType".
3349
3350        * Plugins.subproj/WebBasePluginPackage.h:
3351        * Plugins.subproj/WebBasePluginPackage.m:
3352        (-[WebBasePluginPackage load]):
3353        (-[WebBasePluginPackage dealloc]):
3354        (-[WebBasePluginPackage filename]):
3355        (-[WebBasePluginPackage setPath:]):
3356        * Plugins.subproj/WebNetscapePluginEmbeddedView.h:
3357        * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
3358        (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:MIMEType:attributes:]):
3359        * Plugins.subproj/WebNetscapePluginPackage.m:
3360        (-[WebNetscapePluginPackage getMIMEInformation]): changed name.
3361        (-[WebNetscapePluginPackage initWithPath:]):
3362        * Plugins.subproj/WebNullPluginView.h:
3363        * Plugins.subproj/WebNullPluginView.m:
3364        (-[WebNullPluginView initWithFrame:MIMEType:attributes:]):
3365        (-[WebNullPluginView dealloc]):
3366        (-[WebNullPluginView viewDidMoveToWindow]): send missing plug-ins notification here
3367        * Plugins.subproj/WebPluginPackage.m:
3368        (-[WebPluginPackage getMIMEInformation]): new, gets MIME info from plist
3369        (-[WebPluginPackage initWithPath:]):
3370        (-[WebPluginPackage dealloc]):
3371        (-[WebPluginPackage viewFactory]):
3372        (-[WebPluginPackage load]):
3373        (-[WebPluginPackage unload]):
3374        * WebCoreSupport.subproj/WebBridge.m:
3375        (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]):
3376        (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):
3377
33782002-10-24  Richard Williamson   <rjw@apple.com>
3379
3380        Flag error instead of ASSERTing as a result of fix to 3083013.
3381        Not clear why this condition occurs, but better than ASSERTing
3382        for Alex 29.
3383        
3384        * WebView.subproj/WebDataSourcePrivate.m:
3385        (-[WebDataSource _setRequest:]):
3386
33872002-10-24  Darin Adler  <darin@apple.com>
3388
3389	- fixed a crash I ran into in the new delegate code
3390
3391        * WebView.subproj/WebBaseResourceHandleDelegate.m:
3392        (-[WebBaseResourceHandleDelegate _releaseResources]): Retain self across this
3393	deallocation to avoid reentering and being deallocated midstream. This happens
3394	because the handle holds the only reference to us, and we may be releasing the
3395	last reference to it.
3396        (-[WebBaseResourceHandleDelegate dealloc]): Add call to [super dealloc].
3397
3398        * Plugins.subproj/WebBasePluginPackage.m: (-[WebBasePluginPackage dealloc]):
3399	Add call to [super dealloc].
3400
3401        * WebView.subproj/WebMainResourceClient.m: Tweak.
3402
34032002-10-23  Darin Adler  <darin@apple.com>
3404
3405	- fixed 3083013 -- REGRESSION: Cookie refused at http://directory/ even on reload
3406
3407	Restore a bit of the cruft.
3408
3409        * WebView.subproj/WebMainResourceClient.m:
3410        (-[WebMainResourceClient handle:willSendRequest:]):
3411	We need to change the request on the data source when a redirect happens,
3412	because the data source goes on to ultimately communicate this to WebCore.
3413	Restored the code that did that, with some changes to fit into the new regime.
3414
34152002-10-23  Richard Williamson  <rjw@apple.com>
3416
3417        Cleaned up months of accumulated cruft.
3418        Added base class to the three WebResourceHandleDelegate implementors.
3419        Removed superfluous handle references to controller callbacks.
3420        More can still be done.
3421        All in the name of fixing 3076050.
3422        
3423        * Misc.subproj/WebKitErrors.h:
3424        * Plugins.subproj/WebBaseNetscapePluginStream.m:
3425        (-[WebBaseNetscapePluginStream setResponse:]):
3426        * Plugins.subproj/WebNetscapePluginRepresentation.m:
3427        (-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
3428        (-[WebNetscapePluginRepresentation receivedError:withDataSource:]):
3429        (-[WebNetscapePluginRepresentation finishedLoadingWithDataSource:]):
3430        * Plugins.subproj/WebNetscapePluginStream.h:
3431        * Plugins.subproj/WebNetscapePluginStream.m:
3432        (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
3433        (-[WebNetscapePluginStream dealloc]):
3434        (-[WebNetscapePluginStream start]):
3435        (-[WebNetscapePluginStream stop]):
3436        (-[WebNetscapePluginStream handle:willSendRequest:]):
3437        (-[WebNetscapePluginStream handle:didReceiveResponse:]):
3438        (-[WebNetscapePluginStream handle:didReceiveData:]):
3439        (-[WebNetscapePluginStream handleDidFinishLoading:]):
3440        (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
3441        * WebCoreSupport.subproj/WebBridge.m:
3442        (-[WebBridge reportBadURL:]):
3443        * WebCoreSupport.subproj/WebSubresourceClient.h:
3444        * WebCoreSupport.subproj/WebSubresourceClient.m:
3445        (-[WebSubresourceClient initWithLoader:dataSource:]):
3446        (-[WebSubresourceClient dealloc]):
3447        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
3448        (-[WebSubresourceClient receivedError:]):
3449        (-[WebSubresourceClient handle:willSendRequest:]):
3450        (-[WebSubresourceClient handle:didReceiveResponse:]):
3451        (-[WebSubresourceClient handle:didReceiveData:]):
3452        (-[WebSubresourceClient handleDidFinishLoading:]):
3453        (-[WebSubresourceClient handle:didFailLoadingWithError:]):
3454        (-[WebSubresourceClient cancel]):
3455        * WebView.subproj/WebBaseResourceHandleDelegate.h:
3456        * WebView.subproj/WebBaseResourceHandleDelegate.m:
3457        (-[WebBaseResourceHandleDelegate init]):
3458        (-[WebBaseResourceHandleDelegate _releaseResources]):
3459        (-[WebBaseResourceHandleDelegate dealloc]):
3460        (-[WebBaseResourceHandleDelegate setDataSource:]):
3461        (-[WebBaseResourceHandleDelegate dataSource]):
3462        (-[WebBaseResourceHandleDelegate resourceLoadDelegate]):
3463        (-[WebBaseResourceHandleDelegate downloadDelegate]):
3464        (-[WebBaseResourceHandleDelegate setIsDownload:]):
3465        (-[WebBaseResourceHandleDelegate isDownload]):
3466        (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
3467        (-[WebBaseResourceHandleDelegate handle:didReceiveResponse:]):
3468        (-[WebBaseResourceHandleDelegate handle:didReceiveData:]):
3469        (-[WebBaseResourceHandleDelegate handleDidFinishLoading:]):
3470        (-[WebBaseResourceHandleDelegate handle:didFailLoadingWithError:]):
3471        (-[WebBaseResourceHandleDelegate cancel]):
3472        (-[WebBaseResourceHandleDelegate handle]):
3473        * WebView.subproj/WebControllerPrivate.h:
3474        * WebView.subproj/WebControllerPrivate.m:
3475        (-[WebController _mainReceivedBytesSoFar:fromDataSource:complete:]):
3476        (-[WebController _receivedError:fromDataSource:]):
3477        (-[WebController _mainReceivedError:fromDataSource:]):
3478        * WebView.subproj/WebDataSource.h:
3479        * WebView.subproj/WebDataSource.m:
3480        * WebView.subproj/WebDataSourcePrivate.h:
3481        * WebView.subproj/WebDataSourcePrivate.m:
3482        (-[WebDataSourcePrivate dealloc]):
3483        (-[WebDataSource _startLoading]):
3484        (-[WebDataSource _stopLoading]):
3485        (-[WebDataSource _clearErrors]):
3486        * WebView.subproj/WebFramePrivate.m:
3487        (-[WebFrame _isLoadComplete]):
3488        * WebView.subproj/WebMainResourceClient.h:
3489        * WebView.subproj/WebMainResourceClient.m:
3490        (-[WebMainResourceClient initWithDataSource:]):
3491        (-[WebMainResourceClient dealloc]):
3492        (-[WebMainResourceClient receivedError:]):
3493        (-[WebMainResourceClient cancel]):
3494        (-[WebMainResourceClient handle:willSendRequest:]):
3495        (-[WebMainResourceClient _notifyDelegatesOfInterruptionByPolicyChange]):
3496        (-[WebMainResourceClient handle:didReceiveResponse:]):
3497        (-[WebMainResourceClient handle:didReceiveData:]):
3498        (-[WebMainResourceClient handleDidFinishLoading:]):
3499        (-[WebMainResourceClient handle:didFailLoadingWithError:]):
3500        * WebView.subproj/WebResourceLoadDelegate.h:
3501
35022002-10-23  Chris Blumenberg  <cblu@apple.com>
3503
3504	Support for new plug-in API. This is about as much as I can do without the new java plug-in and java root.
3505
3506        * Plugins.subproj/WebPluginController.h:
3507        * Plugins.subproj/WebPluginController.m:
3508        (-[WebPluginController initWithWebFrame:]): observe window close changes
3509        (-[WebPluginController dealloc]): remove observer, assert if we're still tracking plug-ins
3510        (-[WebPluginController didAddSubview:]): start the plug-in
3511        (-[WebPluginController stopAllPlugins]): stop and destroy all plug-ins.
3512        (-[WebPluginController windowWillClose:]): call stopAllPlugins if the window in question is closing
3513        * WebView.subproj/WebFramePrivate.m:
3514        (-[WebFrame _transitionToCommitted]): call stopAllPlugins on WebPluginController
3515
35162002-10-23  Chris Blumenberg  <cblu@apple.com>
3517
3518	Changed the plug-in package API to return key enumerators instead dictionaries.
3519
3520        * Plugins.subproj/WebBasePluginPackage.h:
3521        * Plugins.subproj/WebBasePluginPackage.m:
3522        (-[WebBasePluginPackage initWithPath:]):
3523        (-[WebBasePluginPackage load]):
3524        (-[WebBasePluginPackage unload]):
3525        (-[WebBasePluginPackage dealloc]):
3526        (-[WebBasePluginPackage extensionEnumerator]):
3527        (-[WebBasePluginPackage MIMETypeEnumerator]):
3528        (-[WebBasePluginPackage descriptionForMIMEType:]):
3529        (-[WebBasePluginPackage MIMETypeForExtension:]):
3530        (-[WebBasePluginPackage extensionsForMIMEType:]):
3531        (-[WebBasePluginPackage setName:]):
3532        (-[WebBasePluginPackage setPath:]):
3533        (-[WebBasePluginPackage setFilename:]):
3534        (-[WebBasePluginPackage setPluginDescription:]):
3535        (-[WebBasePluginPackage setMIMEToDescriptionDictionary:]):
3536        (-[WebBasePluginPackage setMIMEToExtensionsDictionary:]):
3537        * Plugins.subproj/WebNetscapePluginPackage.h:
3538        * Plugins.subproj/WebNetscapePluginPackage.m:
3539        (-[WebNetscapePluginPackage getPluginInfo]):
3540        (-[WebNetscapePluginPackage pathByResolvingSymlinksAndAliasesInPath:]):
3541        (-[WebNetscapePluginPackage initWithPath:]):
3542        (-[WebNetscapePluginPackage executableType]):
3543        * Plugins.subproj/WebPluginController.h:
3544        * Plugins.subproj/WebPluginController.m:
3545        (-[WebPluginController didAddSubview:]):
3546        * Plugins.subproj/WebPluginDatabase.h:
3547        * Plugins.subproj/WebPluginDatabase.m:
3548        (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
3549        (-[WebPluginDatabase pluginForMIMEType:]):
3550        (-[WebPluginDatabase pluginForExtension:]):
3551        (-[WebPluginDatabase MIMETypes]):
3552        (-[WebPluginDatabase init]):
3553        * WebCoreSupport.subproj/WebBridge.m:
3554        (-[WebBridge viewForPluginWithURL:attributes:baseURL:serviceType:]):
3555        (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):
3556        (-[WebBridge didAddSubview:]): new
3557        * WebView.subproj/WebFramePrivate.h:
3558        * WebView.subproj/WebFramePrivate.m:
3559        (-[WebFrame _didAddSubview:]): new 
3560
35612002-10-23  Darin Adler  <darin@apple.com>
3562
3563	- finished up the job of moving the file button here from WebCore.
3564
3565	I did this mainly for localization reasons.
3566
3567        * WebCoreSupport.subproj/WebFileButton.m:
3568        (-[WebFileButton initWithFrame:]): Set up button control size, font, bezel style,
3569	target, and action. Also add it as a subview.
3570        (-[WebFileButton drawRect:]): Center icon in the "visual frame" part of the view,
3571	not the entire bounds.
3572        (-[WebFileButton setFilename:]): Don't show any icon when the filename is empty.
3573        (-[WebFileButton bestVisualFrameSize]): Implemented this.
3574        (-[WebFileButton visualFrame]): Ditto.
3575        (-[WebFileButton setVisualFrame:]): Ditto.
3576        (-[WebFileButton baseline]): Ditto.
3577        (-[WebFileButton beginSheet]): Added. Shared between button presses and other clicks.
3578        (-[WebFileButton chooseButtonPressed:]): Call beginSheet.
3579        (-[WebFileButton mouseDown:]): Ditto.
3580        (-[WebFileButton openPanelDidEnd:returnCode:contextInfo:]): Send the notification,
3581	WebCoreFileButtonFilenameChanged, when the filename is changed.
3582
3583        * WebView.subproj/WebController.m: (-[WebController policyDelegate]):
3584	Add a FIXME about the leak I found here.
3585
35862002-10-23  Chris Blumenberg  <cblu@apple.com>
3587
3588	Call the arguments for plug-ins "attributes" everywhere.
3589
3590        * Plugins.subproj/WebBaseNetscapePluginView.h:
3591        * Plugins.subproj/WebBaseNetscapePluginView.m:
3592        (-[WebBaseNetscapePluginView setAttributes:]):
3593        * Plugins.subproj/WebNetscapePluginEmbeddedView.h:
3594        * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
3595        (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:mime:attributes:]):
3596        * Plugins.subproj/WebNullPluginView.h:
3597        * Plugins.subproj/WebNullPluginView.m:
3598        (-[WebNullPluginView initWithFrame:mimeType:attributes:]):
3599        (-[WebNullPluginView drawRect:]):
3600        * Plugins.subproj/WebPluginController.h:
3601        * Plugins.subproj/WebPluginController.m:
3602        (-[WebPluginController initWithWebFrame:]):
3603        (-[WebPluginController dealloc]):
3604        (-[WebPluginController addPluginView:]):
3605        * Plugins.subproj/WebPluginPackage.h:
3606        * Plugins.subproj/WebPluginPackage.m:
3607        (-[WebPluginPackage viewFactory]):
3608        * WebCoreSupport.subproj/WebBridge.m:
3609        (-[WebBridge pluginViewWithPackage:attributes:baseURL:]):
3610        (-[WebBridge viewForPluginWithURL:attributes:baseURL:serviceType:]):
3611        (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):
3612
36132002-10-23  Chris Blumenberg  <cblu@apple.com>
3614
3615        * WebCoreSupport.subproj/WebBridge.m:
3616        (-[WebBridge requestedURL]):
3617        (-[WebBridge viewForPluginWithURL:serviceType:arguments:baseURL:]):
3618        (-[WebBridge viewForJavaAppletWithFrame:baseURL:parameters:]):
3619        * WebCoreSupport.subproj/WebViewFactory.m:
3620        (-[WebViewFactory fileButton]):
3621        (-[WebViewFactory pluginsInfo]):
3622
36232002-10-23  Darin Adler  <darin@apple.com>
3624
3625	- fix bug where plugins crashed closing a stream that was never opened
3626
3627        * Plugins.subproj/WebBaseNetscapePluginStream.h: Change type for parameter of
3628	receivedError: to NPReason. It's not NPError.
3629        * Plugins.subproj/WebBaseNetscapePluginStream.m:
3630        (-[WebBaseNetscapePluginStream dealloc]): Assert that stream is destroyed by
3631	checking stream.ndata.
3632        (-[WebBaseNetscapePluginStream setResponse:]): Set stream.ndata to nil if the
3633	stream is not successfully created by NPP_NewStream.
3634        (-[WebBaseNetscapePluginStream destroyStreamWithReason:]): Added. Destroys the
3635	stream, but only if it's present. Also set stream.ndata to nil. This was the bug fix.
3636        (-[WebBaseNetscapePluginStream receivedError:]): Call destroyStreamWithReason:.
3637        (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): Call destroyStreamWithReason:.
3638
3639        * English.lproj/Localizable.strings: Update.
3640        * English.lproj/StringsNotToBeLocalized.txt: Update.
3641
36422002-10-23  Chris Blumenberg  <cblu@apple.com>
3643
3644	Forgot to add WebPluginController back to the project after I had a project conflict.
3645
3646        * WebKit.pbproj/project.pbxproj:
3647
36482002-10-23  Chris Blumenberg  <cblu@apple.com>
3649
3650	Added WebPluginController which controls and reacts to plug-in requests. Its owned by the WebFrame.
3651
3652        * Plugins.subproj/WebPluginController.h: Added.
3653        * Plugins.subproj/WebPluginController.m: Added.
3654        (-[WebPluginController initWithWebFrame:]):
3655        (-[WebPluginController showURL:inFrame:]):
3656        (-[WebPluginController showStatus:]):
3657        * WebView.subproj/WebFramePrivate.h:
3658        * WebView.subproj/WebFramePrivate.m:
3659        (-[WebFramePrivate dealloc]):
3660        (-[WebFrame pluginController]):
3661
36622002-10-23  Darin Adler  <darin@apple.com>
3663
3664	Add WebFileButton, to be used by WebCore soon. It's about 1/2
3665	done right now. Compiles but not used yet.
3666
3667        * WebCoreSupport.subproj/WebViewFactory.m: (-[WebViewFactory fileButton]): Added.
3668
3669        * WebCoreSupport.subproj/WebFileButton.h: Added.
3670        * WebCoreSupport.subproj/WebFileButton.m: Added.
3671        * WebKit.pbproj/project.pbxproj: Added WebFileButton files.
3672
3673        * WebCoreSupport.subproj/WebSubresourceClient.m:
3674        (-[WebSubresourceClient handle:didReceiveResponse:]): Add an assertion.
3675
36762002-10-23  Maciej Stachowiak  <mjs@apple.com>
3677
3678        - fixed 2876448 - The authentication panel should give a note when
3679	the user tried to log in and failed
3680
3681	Also, made the message different (and more helpful) when the
3682	authentication is for a proxy server.
3683	
3684        * Panels.subproj/WebAuthenticationPanel.m:
3685        (-[WebAuthenticationPanel setUpForRequest:]): Use different
3686	messages depending on proxy and previous failure count.
3687
3688	Updated localized strings:
3689	
3690	* English.lproj/Localizable.strings:
3691        * English.lproj/StringsNotToBeLocalized.txt:
3692
36932002-10-23  Maciej Stachowiak  <mjs@apple.com>
3694
3695	- fixed 2876446 - The label in the authentication panel needs to
3696	adjust its height depending on content
3697
3698	Also improved [NSControl sizeToFitAndAdjustWindowHeight] method.
3699	
3700        * Panels.subproj/English.lproj/WebAuthenticationPanel.nib: Adjusted
3701	springs.
3702        * Panels.subproj/WebAuthenticationPanel.m:
3703	(-[WebAuthenticationPanel setUpForRequest:]): Use
3704	sizeToFitAndAdjustWindowHeight on main label.
3705	
3706        * Misc.subproj/WebNSControlExtras.m:
3707        (-[NSControl sizeToFitAndAdjustWindowHeight]): Improved the logic
3708	so the best height is picked while leaving the width
3709	alone. Before, the label would always come out to be a very wide
3710	single line.
3711
37122002-10-22  Maciej Stachowiak  <mjs@apple.com>
3713
3714        * WebKit.pbproj/project.pbxproj: Made WebControllerSets.h
3715	private. Also alphabetized headers in target pane and subproject
3716	folders.
3717
37182002-10-22  Chris Blumenberg  <cblu@apple.com>
3719
3720	load and unload is only a WebNetscapePluginPackage thing since you can't unload an NSBundle.
3721
3722        * Plugins.subproj/WebBasePluginPackage.h:
3723        * Plugins.subproj/WebBasePluginPackage.m:
3724        * Plugins.subproj/WebNetscapePluginPackage.h:
3725
37262002-10-22  Chris Blumenberg  <cblu@apple.com>
3727
3728	More moving stuff around for the new plug-in API. Added WebBasePluginPackage and added subclass WebPluginPackage. Also made WebNetscapePluginPackage a subclass of WebBasePluginPackage. 
3729
3730        * Plugins.subproj/WebBasePluginPackage.h: Added.
3731        * Plugins.subproj/WebBasePluginPackage.m: Added.
3732        (+[WebBasePluginPackage pluginWithPath:]): creates a WebPluginPackage or WebNetscapePluginPackage
3733        (-[WebBasePluginPackage initWithPath:]):
3734        (-[WebBasePluginPackage name]):
3735        (-[WebBasePluginPackage path]):
3736        (-[WebBasePluginPackage filename]):
3737        (-[WebBasePluginPackage pluginDescription]):
3738        (-[WebBasePluginPackage extensionToMIMEDictionary]):
3739        (-[WebBasePluginPackage MIMEToExtensionsDictionary]):
3740        (-[WebBasePluginPackage MIMEToDescriptionDictionary]):
3741        (-[WebBasePluginPackage load]):
3742        (-[WebBasePluginPackage unload]):
3743        (-[WebBasePluginPackage isLoaded]):
3744        (-[WebBasePluginPackage description]):
3745        * Plugins.subproj/WebNetscapePluginDocumentView.m:
3746        (-[WebNetscapePluginDocumentView setDataSource:]):
3747        * Plugins.subproj/WebNetscapePluginPackage.h:
3748        * Plugins.subproj/WebNetscapePluginPackage.m:
3749        (-[WebNetscapePluginPackage initWithPath:]):
3750        * Plugins.subproj/WebPluginDatabase.h:
3751        * Plugins.subproj/WebPluginDatabase.m:
3752        (-[WebPluginDatabase pluginForMIMEType:]):
3753        (-[WebPluginDatabase pluginForExtension:]):
3754        (-[WebPluginDatabase pluginForFilename:]):
3755        (-[WebPluginDatabase MIMETypes]):
3756        (-[WebPluginDatabase init]):
3757        * Plugins.subproj/WebPluginPackage.h: Added.
3758        * Plugins.subproj/WebPluginPackage.m: Added.
3759        (-[WebPluginPackage initWithPath:]):
3760        * WebCoreSupport.subproj/WebViewFactory.m:
3761        (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]): check the class of the plug-in when deciding which view to create.
3762        (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]): same here.
3763        * WebKit.pbproj/project.pbxproj:
3764
37652002-10-22  David Hyatt  <hyatt@apple.com>
3766
3767	Getting XML docs at least made for XML files...
3768	
3769        * WebView.subproj/WebHTMLRepresentation.m:
3770        (-[WebHTMLRepresentation setDataSource:]):
3771
37722002-10-22  Chris Blumenberg  <cblu@apple.com>
3773
3774	Made new plug-in API headers private.
3775
3776        * WebKit.pbproj/project.pbxproj:
3777
37782002-10-22  Darin Adler  <darin@apple.com>
3779
3780        * Misc.subproj/WebKitErrors.h:
3781        * WebView.subproj/WebMainResourceClient.m:
3782        (-[WebMainResourceClient handle:willSendRequest:]):
3783        (-[WebMainResourceClient handle:didReceiveResponse:]):
3784	Rename WebErrorLocationChangeInterruptedByURLPolicyChange to
3785	WebErrorLocationChangeInterruptedByPolicyChange.
3786
37872002-10-22  Darin Adler  <darin@apple.com>
3788
3789        * WebView.subproj/WebMainResourceClient.m:
3790        (-[WebMainResourceClient handle:didReceiveResponse:]):
3791	Send the new error whenever a policy change happens. The old code was
3792	sending a successful completion in the download and ignore cases.
3793
37942002-10-22  John Sullivan  <sullivan@apple.com>
3795
3796	- fixed 3080873 -- Error in console when no bookmark file 
3797	found -[WebBookmarkGroup _loadBookmarkGroupGuts]
3798
3799        * Bookmarks.subproj/WebBookmarkGroup.m:
3800        (-[WebBookmarkGroup _loadBookmarkGroupGuts]):
3801	removed ERROR that was useful only long ago.
3802
38032002-10-22  Richard Williamson  <rjw@apple.com>
3804
3805        Added stubs from common WebResourceHandleDelegate base
3806        class.
3807        
3808        * Plugins.subproj/WebBaseNetscapePluginStream.h:
3809        * Plugins.subproj/WebNetscapePluginStream.h:
3810        * WebCoreSupport.subproj/WebSubresourceClient.h:
3811        * WebKit.pbproj/project.pbxproj:
3812        * WebView.subproj/WebBaseResourceHandleDelegate.h: Added.
3813        * WebView.subproj/WebBaseResourceHandleDelegate.m: Added.
3814        * WebView.subproj/WebMainResourceClient.h:
3815
38162002-10-22  Darin Adler  <darin@apple.com>
3817
3818	Make the panel position itself above the main window.
3819	Too bad we can't use a sheet, but this is better than a random position.
3820
3821        * WebCoreSupport.subproj/WebJavaScriptTextInputPanel.m:
3822        (-[WebJavaScriptTextInputPanel initWithPrompt:text:]):
3823	Use the new [NSWindow sizeToFitAndAdjustWindowHeight]
3824	and [NSControl sizeToFitAndAdjustWindowHeight].
3825
3826        * Misc.subproj/WebNSControlExtras.h: Added.
3827        * Misc.subproj/WebNSControlExtras.m: Added.
3828        * Misc.subproj/WebNSWindowExtras.h: Added.
3829        * Misc.subproj/WebNSWindowExtras.m: Added.
3830        * WebKit.pbproj/project.pbxproj: Added above files.
3831
3832        * English.lproj/StringsNotToBeLocalized.txt: Update.
3833
38342002-10-22  Ken Kocienda  <kocienda@apple.com>
3835
3836        * Misc.subproj/WebKitErrors.h: Add new error code to signify that a location
3837	change has been interrupted by a change in the URLPolicy governing the load.
3838        * WebView.subproj/WebMainResourceClient.m:
3839        (-[WebMainResourceClient handle:willSendRequest:]): Add code to check the URLPolicy
3840	for the URL in the request that is submitted to us in this delegate method. Send
3841	a locationChangeDone:forDataSource: message with an error using the newly-defined
3842	code in cases where the location change should be cancelled.
3843
38442002-10-22  Chris Blumenberg  <cblu@apple.com>
3845
3846	Added protocol headers for new plug-in API.
3847
3848        * Plugins.subproj/WebPlugin.h: Added.
3849        * Plugins.subproj/WebPluginContainer.h: Added.
3850        * Plugins.subproj/WebPluginViewFactory.h: Added.
3851        * WebKit.pbproj/project.pbxproj:
3852
38532002-10-22  Chris Blumenberg  <cblu@apple.com>
3854
3855	- Moved things around to make room for new plug-in API.
3856	- Renamed WebNetscapePlugin to WebNetscapePluginPackage.
3857	- Renamed WebNetscapePluginDatabase to WebPluginDatabase.
3858
3859        * Plugins.subproj/WebBaseNetscapePluginStream.m:
3860        (-[WebBaseNetscapePluginStream setPluginPointer:]):
3861        * Plugins.subproj/WebBaseNetscapePluginView.h:
3862        * Plugins.subproj/WebBaseNetscapePluginView.m:
3863        (-[WebBaseNetscapePluginView plugin]):
3864        * Plugins.subproj/WebNetscapePluginDocumentView.m:
3865        (-[WebNetscapePluginDocumentView setDataSource:]):
3866        * Plugins.subproj/WebNetscapePluginEmbeddedView.h:
3867        * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
3868        (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:mime:arguments:]):
3869        * Plugins.subproj/WebNetscapePluginNullEventSender.h: Added.
3870        * Plugins.subproj/WebNetscapePluginNullEventSender.m: Added.
3871        (-[WebNetscapePluginNullEventSender initWithPluginView:]):
3872        (-[WebNetscapePluginNullEventSender dealloc]):
3873        (-[WebNetscapePluginNullEventSender sendNullEvents]):
3874        (-[WebNetscapePluginNullEventSender stop]):
3875        * Plugins.subproj/WebNetscapePluginPackage.h: Added.
3876        * Plugins.subproj/WebNetscapePluginPackage.m: Added.
3877        (-[WebNetscapePluginPackage openResourceFile]):
3878        (-[WebNetscapePluginPackage closeResourceFile:]):
3879        (-[WebNetscapePluginPackage stringForStringListID:andIndex:]):
3880        (-[WebNetscapePluginPackage getPluginInfo]):
3881        (-[WebNetscapePluginPackage stringByResolvingSymlinksAndAliasesInPath:]):
3882        (-[WebNetscapePluginPackage initWithPath:]):
3883        (-[WebNetscapePluginPackage load]):
3884        (-[WebNetscapePluginPackage unload]):
3885        (-[WebNetscapePluginPackage NPP_SetWindow]):
3886        (-[WebNetscapePluginPackage NPP_New]):
3887        (-[WebNetscapePluginPackage NPP_Destroy]):
3888        (-[WebNetscapePluginPackage NPP_NewStream]):
3889        (-[WebNetscapePluginPackage NPP_StreamAsFile]):
3890        (-[WebNetscapePluginPackage NPP_DestroyStream]):
3891        (-[WebNetscapePluginPackage NPP_WriteReady]):
3892        (-[WebNetscapePluginPackage NPP_Write]):
3893        (-[WebNetscapePluginPackage NPP_HandleEvent]):
3894        (-[WebNetscapePluginPackage NPP_URLNotify]):
3895        (-[WebNetscapePluginPackage NPP_GetValue]):
3896        (-[WebNetscapePluginPackage NPP_SetValue]):
3897        (-[WebNetscapePluginPackage NPP_Print]):
3898        (-[WebNetscapePluginPackage MIMEToExtensionsDictionary]):
3899        (-[WebNetscapePluginPackage extensionToMIMEDictionary]):
3900        (-[WebNetscapePluginPackage MIMEToDescriptionDictionary]):
3901        (-[WebNetscapePluginPackage name]):
3902        (-[WebNetscapePluginPackage filename]):
3903        (-[WebNetscapePluginPackage path]):
3904        (-[WebNetscapePluginPackage isLoaded]):
3905        (-[WebNetscapePluginPackage pluginDescription]):
3906        (-[WebNetscapePluginPackage description]):
3907        (functionPointerForTVector):
3908        (tVectorForFunctionPointer):
3909        * Plugins.subproj/WebPlugin.h: Removed.
3910        * Plugins.subproj/WebPlugin.m: Removed.
3911        * Plugins.subproj/WebPluginDatabase.h:
3912        * Plugins.subproj/WebPluginDatabase.m:
3913        (+[WebPluginDatabase installedPlugins]):
3914        (-[WebPluginDatabase pluginForMIMEType:]):
3915        (-[WebPluginDatabase pluginForExtension:]):
3916        (-[WebPluginDatabase pluginForFilename:]):
3917        (-[WebPluginDatabase MIMETypes]):
3918        (-[WebPluginDatabase init]):
3919        * Plugins.subproj/WebPluginNullEventSender.h: Removed.
3920        * Plugins.subproj/WebPluginNullEventSender.m: Removed.
3921        * WebCoreSupport.subproj/WebViewFactory.m:
3922        (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
3923        (-[WebViewFactory pluginsInfo]):
3924        (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
3925        * WebKit.pbproj/project.pbxproj:
3926        * WebView.subproj/WebController.m:
3927        (+[WebController canShowMIMEType:]):
3928
39292002-10-22  Darin Adler  <darin@apple.com>
3930
3931        * WebCoreSupport.subproj/WebJavaScriptTextInputPanel.m: Added missing import.
3932
39332002-10-22  Darin Adler  <darin@apple.com>
3934
3935	- fixed 3077305 -- js dialog not yet implemented - crash (fatal error)
3936
3937        * WebCoreSupport.subproj/WebViewFactory.m:
3938        (-[WebViewFactory runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]):
3939	Create a WebJavaScriptTextInputPanel and run it.
3940
3941        * English.lproj/WebJavaScriptTextInputPanel.nib: Added.
3942        * WebCoreSupport.subproj/WebJavaScriptTextInputPanel.h: Added.
3943        * WebCoreSupport.subproj/WebJavaScriptTextInputPanel.m: Added.
3944        * WebKit.pbproj/project.pbxproj: Added 
3945
39462002-10-22  Chris Blumenberg  <cblu@apple.com>
3947
3948	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.
3949
3950        * WebView.subproj/WebHTMLView.m:
3951        (-[WebHTMLView mouseDown:]): retain the mouse down event
3952        (-[WebHTMLView mouseDragged:]): use the mouse down event
3953        * WebView.subproj/WebHTMLViewPrivate.h:
3954        * WebView.subproj/WebHTMLViewPrivate.m:
3955        (-[WebHTMLViewPrivate dealloc]): release the mouse down event
3956
39572002-10-21  Darin Adler  <darin@apple.com>
3958
3959        * WebCoreSupport.subproj/WebViewFactory.h: Changed to use new protocol scheme so we
3960	get an error if we forget to implement something.
3961        * WebCoreSupport.subproj/WebViewFactory.m:
3962        (-[WebViewFactory runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]): Stub.
3963
39642002-10-21  Richard Williamson   <rjw@apple.com>
3965
3966        More incremental tweaks.  Will be factoring common
3967        handle delegate behavior into base class.
3968        
3969        * Plugins.subproj/WebNetscapePluginStream.m:
3970        (-[WebNetscapePluginStream handle:didReceiveData:]):
3971        (-[WebNetscapePluginStream handleDidFinishLoading:]):
3972        * WebCoreSupport.subproj/WebBridge.m:
3973        (-[WebBridge objectLoadedFromCache:response:size:]):
3974        * WebCoreSupport.subproj/WebSubresourceClient.m:
3975        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
3976        (-[WebSubresourceClient handle:didReceiveData:]):
3977        (-[WebSubresourceClient handleDidFinishLoading:]):
3978        * WebView.subproj/WebControllerPrivate.h:
3979        * WebView.subproj/WebControllerPrivate.m:
3980        (-[WebController _finsishedLoadingResourceFromDataSource:]):
3981
39822002-10-21  Trey Matteson  trey@apple.com
3983
3984	Fixed typos and other doc comment errors found during API review.
3985
3986        * WebView.subproj/WebController.h:
3987
39882002-10-21  Richard Williamson   <rjw@apple.com>
3989
3990        Changed WebResourceLoadDelegate methods to include an identifier
3991        as first parameter.  This will help clients track callbacks relating
3992        to a particular resource.  Added identifierForInitialRequest:fromDataSource:
3993        so clients can create their own identifier.
3994        
3995        * WebCoreSupport.subproj/WebBridge.m:
3996        (-[WebBridge objectLoadedFromCache:response:size:]):
3997        * WebCoreSupport.subproj/WebSubresourceClient.h:
3998        * WebCoreSupport.subproj/WebSubresourceClient.m:
3999        (-[WebSubresourceClient handle:willSendRequest:]):
4000        (-[WebSubresourceClient handle:didReceiveResponse:]):
4001        (-[WebSubresourceClient handle:didReceiveData:]):
4002        (-[WebSubresourceClient handleDidFinishLoading:]):
4003        (-[WebSubresourceClient handle:didFailLoadingWithError:]):
4004        * WebView.subproj/WebController.m:
4005        (-[WebResourceLoadDelegate identifierForInitialRequest:fromDataSource:]):
4006        (-[WebResourceLoadDelegate resource:willSendRequest:fromDataSource:]):
4007        (-[WebResourceLoadDelegate resource:didReceiveResponse:fromDataSource:]):
4008        (-[WebResourceLoadDelegate resource:didReceiveContentLength:fromDataSource:]):
4009        (-[WebResourceLoadDelegate resource:didFinishLoadingFromDataSource:]):
4010        (-[WebResourceLoadDelegate resource:didFailLoadingWithError:fromDataSource:]):
4011        * WebView.subproj/WebMainResourceClient.h:
4012        * WebView.subproj/WebMainResourceClient.m:
4013        (-[WebMainResourceClient receivedError:forHandle:]):
4014        (-[WebMainResourceClient handleDidFinishLoading:]):
4015        (-[WebMainResourceClient handle:willSendRequest:]):
4016        (-[WebMainResourceClient handle:didReceiveResponse:]):
4017        (-[WebMainResourceClient handle:didReceiveData:]):
4018        (-[WebMainResourceClient handle:didFailLoadingWithError:]):
4019        * WebView.subproj/WebResourceLoadDelegate.h:
4020
40212002-10-21  Chris Blumenberg  <cblu@apple.com>
4022
4023	Changed content policy API to pass a response instead of MIME type so client can get the mime type and filename from one class.
4024
4025        * WebView.subproj/WebControllerPolicyDelegate.h:
4026        * WebView.subproj/WebDefaultPolicyDelegate.m:
4027        * WebView.subproj/WebMainResourceClient.m:
4028        (-[WebMainResourceClient handle:didReceiveResponse:]):
4029
40302002-10-21  Darin Adler  <darin@apple.com>
4031
4032	- fixed 3080512 -- REGRESSION: moving from old page to new one, we get blank white
4033	before the new one is ready
4034
4035	Roll out a bunch of my changes, because they weren't complete. Added FIXMEs for the
4036	problems I was unsuccessfully trying to fix.
4037
4038        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _setState:]):
4039        * WebView.subproj/WebView.m:
4040        (-[WebView initWithFrame:]), (-[WebView isOpaque]), (-[WebView drawRect:]):
4041	Roll back.
4042
40432002-10-21  Darin Adler  <darin@apple.com>
4044
4045	- fixed 3080246 -- REGRESSION: Animated GIFs sometimes disappear after drag or scroll
4046
4047	Once more, with feeling.
4048
4049        * WebView.subproj/WebHTMLView.m:
4050        (-[WebHTMLView _setNeedsLayoutIfSizeChanged:]): Added setNeedsDisplay:YES here. The lack
4051	of this is what caused the bug. But also don't do any work when the size doesn't change.
4052	This prevents this from being called at all in the scrolling case, which is what we want.
4053        (-[WebHTMLView viewWillMoveToSuperview:]): Just the name change.
4054        (-[WebHTMLView layout]): Store the layout size for the above methods.
4055        * WebView.subproj/WebHTMLViewPrivate.h: Add a place to store the size.
4056
4057        * WebView.subproj/WebImageView.m: (-[WebImageView layout]):
4058	Roll this change back in.
4059
40602002-10-21  Darin Adler  <darin@apple.com>
4061
4062	- fixed 3080246 -- REGRESSION: Animated GIFs sometimes disappear after drag or scroll
4063
4064        * WebView.subproj/WebImageView.m: (-[WebImageView layout]):
4065	My change to this caused the regression. Not sure why, but I'll just back out
4066	because the change wasn't important.
4067
40682002-10-20  Chris Blumenberg  <cblu@apple.com>
4069
4070	Fixed: 3025847 - Can't use any menu command keys after clicking on a plugin
4071
4072	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.
4073
4074        * Plugins.subproj/WebBaseNetscapePluginView.m:
4075
40762002-10-20  Chris Blumenberg  <cblu@apple.com>
4077
4078	Fixed: 3025868 - Plugin context menu disappears then reappears if you click off of it
4079
4080	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.
4081
4082        * Plugins.subproj/WebBaseNetscapePluginView.m:
4083        (-[WebBaseNetscapePluginView mouseDragged:]): subclass and do nothing to prevent calling mouseDragged in WebHTMLView
4084        (-[WebBaseNetscapePluginView performKeyEquivalent:]): no changes to this method, removed menuForEvent, wasn't needed after all
4085        * Plugins.subproj/WebNetscapePluginStream.m:
4086        (-[WebNetscapePluginStream stop]): minor clean-up
4087
40882002-10-20  Darin Adler  <darin@apple.com>
4089
4090	- fixed a minor problem with autorelease I just ran into
4091
4092        * WebView.subproj/WebHTMLViewPrivate.m: (+[WebHTMLView load]):
4093	Create an autorelease pool for the benefit of the class initialize
4094	functions that will be called.
4095
40962002-10-20  Chris Blumenberg  <cblu@apple.com>
4097
4098	Fixed 3050010: Should show contextual menu for WebImageView
4099	Also made drags from WebImageView work.
4100
4101        * Misc.subproj/WebNSViewExtras.h:
4102        * Misc.subproj/WebNSViewExtras.m: added _web_setPromisedImageDragImage which does the hackery to extend the promised file drag for images
4103        * WebView.subproj/WebControllerPrivate.h:
4104        * WebView.subproj/WebControllerPrivate.m:
4105        (-[WebController _menuForElement:]): added, gets menu items from delegate and creates menu
4106        * WebView.subproj/WebHTMLView.m:
4107        (-[WebHTMLView menuForEvent:]): simplified, gets element and calls -[WebController _menuForElement:]
4108        (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): call _web_setPromisedImageDragImage: when dragging image
4109        * WebView.subproj/WebImageRepresentation.h:
4110        * WebView.subproj/WebImageRepresentation.m:
4111        (-[WebImageRepresentation dealloc]): release the URL
4112        (-[WebImageRepresentation URL]): added so WebImageView can get the URL
4113        (-[WebImageRepresentation setDataSource:]): retain the URL
4114        * WebView.subproj/WebImageView.h: use new drag bools
4115        * WebView.subproj/WebImageView.m:
4116        (-[WebImageView initWithFrame:]): ditto
4117        (-[WebImageView setAcceptsDrags:]): ditto
4118        (-[WebImageView acceptsDrags]): ditto
4119        (-[WebImageView setAcceptsDrops:]): ditto
4120        (-[WebImageView acceptsDrops]): ditto
4121        (-[WebImageView controller]): new
4122        (-[WebImageView menuForEvent:]): new, creates element and calls -[WebController _menuForElement:]
4123        (-[WebImageView mouseDragged:]): drag promised file
4124        (-[WebImageView dragImage:at:offset:event:pasteboard:source:slideBack:]): call _web_setPromisedImageDragImage:
4125        (-[WebImageView namesOfPromisedFilesDroppedAtDestination:]): new
4126
41272002-10-20  Darin Adler  <darin@apple.com>
4128
4129	- fixed a problem where you would get garbage bits when resizing while loading a standalone image
4130
4131	Cleaned up some of the complexity of how we were handling resizing.
4132
4133        * WebView.subproj/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView updateScrollers]):
4134	Do the update twice to properly handle the case where a disappearing scroller makes a second
4135	scroller appear or vice versa.
4136
4137        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _setState:]): Remove the code that was trying
4138	to set the setDrawsBackground flag on the scroll view. It was doing it wrong, causing bugs with
4139	drawing non-HTML views while loading. Also, it wasn't working as an optimization, since the
4140	window was still drawing the metallic background behind. We can revisit adding an optimization
4141	at the WebHTMLView level if it creates a measurable speed increase, but we must be careful to
4142	test loading with non-HTML views along with the HTML cases.
4143
4144        * WebView.subproj/WebHTMLView.m:
4145        (-[WebHTMLView _setNeedsLayoutToYes:]): Added. Calls setNeedsLayout:YES.
4146        (-[WebHTMLView viewWillMoveToSuperview:]): Added. Registers so we get _setNeedsLayoutToYes:
4147	calls when the superview's size changes. This allows us to do a layout at all the right times.
4148        (-[WebHTMLView layout]): Call setNeedsDisplay:YES, because if we do a layout without a complete
4149	display the screen will look bad. Also do a reapplyStyles, because if there are pending style
4150	changes we want to apply them before doing a layout since they could affect the layout.
4151        (-[WebHTMLView drawRect:]): Remove the special case that says to always relayout during live
4152	resize, because it works without a special case now. For the other live resize case, turn it from
4153	a special case into a general one. Any time layout is done, make sure to draw the entire view,
4154	not just the passed-in rectangle, and call setNeedsDisplay:NO so we don't do it all over again.
4155
4156        * WebView.subproj/WebImageView.m: (-[WebImageView layout]): Explicitly set frame size to
4157	0,0 when there is no image.
4158
4159        * WebView.subproj/WebView.m: Remove now-unnecessary viewWillStartLiveResize, setFrame:,
4160	viewDidEndLiveResize, isOpaque, and drawRect overrides.
4161        (-[WebView initWithFrame:]): Don't call setDrawsBackground:NO for the reasons above.
4162	Don't set scroll bar visibility because the dynamic scroll bars view handles that already.
4163
41642002-10-19  Darin Adler  <darin@apple.com>
4165
4166	- fixed 3073693 -- flash drawn to screen even when window minimized
4167
4168        * Plugins.subproj/WebBaseNetscapePluginView.m:
4169        (-[WebBaseNetscapePluginView start]): Set up additional notifications.
4170	Don't start the null event sender if the window is miniaturized.
4171        (-[WebBaseNetscapePluginView windowDidMiniaturize:]): Stop the null event sender.
4172        (-[WebBaseNetscapePluginView windowDidDeminiaturize:]): Start the null event sender.
4173
41742002-10-19  Darin Adler  <darin@apple.com>
4175
4176        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _transitionToCommitted]):
4177	Removed stray printf.
4178
41792002-10-18  Richard Williamson   <rjw@apple.com>
4180
4181        Changed name to setUsesBackForwardList: from
4182        setUseBackForwardList.  ditto for useBackForwardList
4183        
4184        * WebView.subproj/WebController.h:
4185        * WebView.subproj/WebController.m:
4186        (-[WebController setUsesBackForwardList:]):
4187        (-[WebController usesBackForwardList]):
4188        * WebView.subproj/WebFramePrivate.m:
4189        (-[WebFrame _transitionToCommitted]):
4190        (-[WebFrame _isLoadComplete]):
4191
4192        Fixed history items that have "untitled" title after
4193        redirect. (3078577).
4194        
4195        * WebView.subproj/WebDataSourcePrivate.m:
4196        (-[WebDataSource _setTitle:]):
4197
41982002-10-18  Darin Adler  <darin@apple.com>
4199
4200        * WebView.subproj/WebController.h:
4201        * WebView.subproj/WebController.m:
4202        (-[WebController stringByEvaluatingJavaScriptFromString:]):
4203	Changed to return a string and changed name.
4204
42052002-10-18  Darin Adler  <darin@apple.com>
4206
4207        * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
4208
42092002-10-18  Ken Kocienda  <kocienda@apple.com>
4210
4211	Removed unneeded import of WebFoundation/WebResourceLoadManager.h
4212
4213        * Misc.subproj/WebIconLoader.m
4214
42152002-10-18  Darin Adler  <darin@apple.com>
4216
4217        * Makefile.am: Move dependency so clean happens before build.
4218
42192002-10-18  Darin Adler  <darin@apple.com>
4220
4221        * force-clean-timestamp: Dependencies don't work well enough, so
4222	we need a clean build here after the WebFoundation domain change.
4223
42242002-10-18  Darin Adler  <darin@apple.com>
4225
4226	Update for WebFoundation error domain changes.
4227
4228        * Misc.subproj/WebKitErrors.h: Put WebErrorDomainWebKit in here.
4229	Also remove WebErrorNoError and the WebErrorCode name for the enum.
4230        * WebKit.exp: Export the WebErrorDomainWebKit constant.
4231        * WebView.subproj/WebView.m: Define the WebErrorDomainWebKit.
4232
4233        * WebKit.pbproj/project.pbxproj: Always use WebKit.exp.
4234        * Makefile.am: Don't generate WebKit-combined.exp any more.
4235        * WebKit-tests.exp: Removed.
4236
42372002-10-17  Darin Adler  <darin@apple.com>
4238
4239	- fixed 3078644 -- Odd clipping in frame
4240
4241        * WebView.subproj/WebClipView.h: Add hasAdditionalClip and additionalClip methods.
4242        * WebView.subproj/WebClipView.m:
4243        (-[WebClipView resetAdditionalClip]): Add an assertion.
4244        (-[WebClipView setAdditionalClip:]): Ditto.
4245        (-[WebClipView hasAdditionalClip]): Added.
4246        (-[WebClipView additionalClip]): Added.
4247
4248        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView visibleRect]):
4249	Turn off the additional clip while computing our visibleRect. This way, the additional
4250	clip only affects people who ask for the clip view's visibleRect directly, which basically
4251	means just the focus rectangle drawing code we are trying to influence.
4252
42532002-10-17  Richard Williamson  <rjw@apple.com>
4254
4255        Support for drawing frame borders (fixes 2982466).
4256        
4257        * WebView.subproj/WebHTMLView.m:
4258        (-[WebHTMLView _drawBorder:]):
4259        (-[WebHTMLView drawRect:]):
4260
42612002-10-17  John Sullivan  <sullivan@apple.com>
4262
4263	- added support for bookmark identifiers, to be used for marking
4264	bookmark proxies uniquely (independent of localized title). This
4265	is not the old unique-identifier scheme; now identifiers are optional,
4266	and initially nil, but the client can use them for its own purposes.
4267
4268        * Bookmarks.subproj/WebBookmark.h:
4269        * Bookmarks.subproj/WebBookmark.m:
4270        (-[WebBookmark dealloc]): release identifier
4271        (-[WebBookmark identifier]): return identifier
4272        (-[WebBookmark setIdentifier:]): set identifier
4273        * Bookmarks.subproj/WebBookmarkLeaf.m:
4274        (-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
4275	restore identifier
4276        (-[WebBookmarkLeaf dictionaryRepresentation]):
4277	save identifier
4278        (-[WebBookmarkLeaf copyWithZone:]):
4279	copy identifier
4280        * Bookmarks.subproj/WebBookmarkList.m:
4281        (-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]):
4282	restore identifier
4283        (-[WebBookmarkList dictionaryRepresentation]):
4284	save identifier
4285        (-[WebBookmarkList copyWithZone:]):
4286	copy identifier
4287        * Bookmarks.subproj/WebBookmarkPrivate.h:
4288        * Bookmarks.subproj/WebBookmarkProxy.m:
4289        (-[WebBookmarkProxy initFromDictionaryRepresentation:withGroup:]):
4290	restore identifier
4291        (-[WebBookmarkProxy dictionaryRepresentation]):
4292	save identifier
4293        (-[WebBookmarkProxy copyWithZone:]):
4294	copy identifier
4295
4296=== Alexander-28 ===
4297
42982002-10-17  Darin Adler  <darin@apple.com>
4299
4300	- fixed 3062613 -- too many redirects at nytimes.com and apple
4301
4302	Our cookie policy was rejecting the cookies from nytimes.com -- the policy base
4303	URL was still the news.com URL from before the redirect.
4304
4305        * WebView.subproj/WebMainResourceClient.m:
4306        (-[WebMainResourceClient handle:willSendRequest:]):
4307	Update the cookie policy URL when a redirect changes the data source's URL.
4308
43092002-10-17  Darin Adler  <darin@apple.com>
4310
4311	- fixed 3077910 -- REGRESSION: download window open at startup time -> no scrollbars
4312
4313        * WebView.subproj/WebDynamicScrollBarsView.m:
4314        (-[WebDynamicScrollBarsView updateScrollers]):
4315	Check for WebDocumentView protocol before making the layout method
4316	call. Prevents exception when WebDynamicScrollBarsView is used with
4317	a document that is not a WebDocumentView.
4318
43192002-10-16  Richard Williamson  <rjw@apple.com>
4320
4321        Added some drawing debug code (ifdef excluded).
4322        
4323        * WebView.subproj/WebHTMLView.m:
4324        (-[WebHTMLView drawRect:]):
4325
43262002-10-16  Darin Adler  <darin@apple.com>
4327
4328	Fixed anomalies with plugin positioning caused by my switch to
4329	NSViewFocusDidChangeNotification. Turns out that is not sent during
4330	live resize, but we need things to work during live resize.
4331
4332        * Plugins.subproj/WebBaseNetscapePluginView.m:
4333        (-[WebBaseNetscapePluginView start]): Register for changes in the
4334	bounds and frame of all superviews again, instead of using
4335	NSViewFocusDidChangeNotification.
4336
43372002-10-16  Richard Williamson  <rjw@apple.com>
4338
4339        Fixed 2969367.  Ensure layout happens before doing check
4340        to determine if scrollbars are needed.  Ahhh, dynamic
4341        scrollbars work so much better now.
4342        
4343        * WebView.subproj/WebDynamicScrollBarsView.m:
4344        (-[WebDynamicScrollBarsView updateScrollers]):
4345
43462002-10-16  Darin Adler  <darin@apple.com>
4347
4348	Fixed the problem where we would leave white bits when making the window larger.
4349
4350        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]): During live resize,
4351	use the visible rectangle after doing layout, not before.
4352
43532002-10-16  Richard Williamson  <rjw@apple.com>
4354
4355        Fixed regression in visited links due to change is semantics of
4356        [dataSource request], added [dataSource _originalRequest].  Items
4357        always need to be added to history with the original request.
4358        
4359        * WebView.subproj/WebDataSource.m:
4360        (-[WebDataSource initWithRequest:]):
4361        * WebView.subproj/WebDataSourcePrivate.h:
4362        * WebView.subproj/WebDataSourcePrivate.m:
4363        (-[WebDataSourcePrivate dealloc]):
4364        (-[WebDataSource _defersCallbacksChanged]):
4365        (-[WebDataSource _originalRequest]):
4366        * WebView.subproj/WebFramePrivate.m:
4367        (-[WebFrame _transitionToCommitted]):
4368
43692002-10-16  Darin Adler  <darin@apple.com>
4370
4371	- fixed 3017152 -- intra-page anchors not updating page address field
4372
4373        * WebView.subproj/WebLocationChangeDelegate.h: Rearrange methods so they are
4374	in the order they are delivered. Add locationChangedWithinPageForDataSource method.
4375	Renamed the redirect methods to match the verb tenses used in the others.
4376	Removed the URL parameter from the server redirect method.
4377        * WebView.subproj/WebLocationChangeDelegate.m: Update the class to match the
4378	changes to the protocol.
4379
4380        * WebCoreSupport.subproj/WebBridge.m:
4381        (-[WebBridge reportClientRedirectTo:delay:fireDate:]):
4382	Update for change to clientWillRedirectTo method name.
4383        (-[WebBridge loadURL:]): Call locationChangedWithinPageForDataSource:.
4384
4385        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setRequest:]):
4386	Update for change to serverRedirectedForDataSource method name.
4387
4388        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView mouseMovedNotification:]):
4389	Remove overzealous assert that was firing for me.
4390
4391        * WebCoreSupport.subproj/WebSubresourceClient.m: Update comment.
4392        * WebView.subproj/WebDataSource.h: Fix comment.
4393
43942002-10-15  Darin Adler  <darin@apple.com>
4395
4396	- fixed 3062393 -- need to send proper referrer for "open in new window" menu items and keyboard shortcuts
4397
4398        * WebCoreSupport.subproj/WebBridge.m:
4399        (-[WebBridge createWindowWithURL:frameName:]): Don't take a referrer parameter any more.
4400	Get the referrer by calling to the other side of the bridge, instead.
4401        (-[WebBridge startLoadingResource:withURL:]): Ditto.
4402        (-[WebBridge loadURL:]): Ditto.
4403        (-[WebBridge postWithURL:data:contentType:]): Ditto.
4404        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
4405	Ditto.
4406
4407        * WebView.subproj/WebDefaultContextMenuDelegate.m:
4408        (-[WebDefaultContextMenuDelegate openNewWindowWithURL:]): Don't take a referrer parameter,
4409	which was always nil anyway. Instead, get the referrer from the bridge.
4410        (-[WebDefaultContextMenuDelegate openLinkInNewWindow:]): Don't pass nil for referrer.
4411        (-[WebDefaultContextMenuDelegate openImageInNewWindow:]): Ditto.
4412        (-[WebDefaultContextMenuDelegate openFrameInNewWindow:]): Ditto.
4413
4414        * WebView.subproj/WebHTMLViewPrivate.m:
4415        (-[WebHTMLView _continueAfterClickPolicyForEvent:]): Pass a referrer from the bridge, rather
4416	than nil, for both WebClickPolicyOpenNewWindow and WebClickPolicyOpenNewWindowBehind.
4417
4418        * Plugins.subproj/WebBaseNetscapePluginView.m:
4419        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): Add a FIXME.
4420
44212002-10-15  Darin Adler  <darin@apple.com>
4422
4423        * WebView.subproj/WebDataSourcePrivate.h: Remove unused stuff.
4424        * WebView.subproj/WebDataSourcePrivate.m: Ditto.
4425
44262002-10-15  Darin Adler  <darin@apple.com>
4427
4428        * WebCoreSupport.subproj/WebBridge.m:
4429        (-[WebBridge loadURL:referrer:]): Add a special case for when the URL is the
4430	same as the previous URL for the same frame. This relies on some logic in
4431	KHTML's openURL method that handles this case too.
4432
4433        * WebView.subproj/WebDataSource.m:
4434        (-[WebDataSource initWithRequest:]): Don't bother keeping an inputURL.
4435        (-[WebDataSource URL]): Just return [[self request] URL]. Maybe we can
4436	remove this altogether.
4437        * WebView.subproj/WebDataSourcePrivate.h: Remove inputURL, finalURL.
4438        * WebView.subproj/WebDataSourcePrivate.m:
4439        (-[WebDataSourcePrivate dealloc]): No need to release inputURL, finalURL.
4440        (-[WebDataSource _setURL:]): Used only by the new code above. Makes a copy
4441	of the request, changes the URL, and then drops the old request.
4442        (-[WebDataSource _setRequest:]): Changed to no longer call _setURL. Now
4443	does much of the work that _setURL used to do.
4444
44452002-10-15  Darin Adler  <darin@apple.com>
4446
4447	WebKit part of improved frame name support.
4448
4449        * WebView.subproj/WebFrame.m:
4450        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
4451	Call setName on the newly created part.
4452
44532002-10-15  John Sullivan  <sullivan@apple.com>
4454
4455	- fixed 3075777 -- hysteresis for dragging links on web pages
4456	is still too large
4457
4458        * WebView.subproj/WebHTMLView.m: changed hysteresis constants;
4459	added comment.
4460
44612002-10-15  Darin Adler  <darin@apple.com>
4462
4463	Fix problem where timer was lasting after window was closed.
4464
4465        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _detachFromParent]):
4466	Add a call to [_private->bridge closeURL].
4467
44682002-10-15  Richard Williamson  <rjw@apple.com>
4469
4470        Added attributed string to pasteboard.  Fixes 3006760.
4471        We may want to scale back the content that is included in the
4472        attributed string.  Currently all text nodes in the selection
4473        are converted.  This include text nodes for non-visible content,
4474        i.e. scripts.
4475        [Note we may also want to put HTML snippet on the pboard.  The appkit
4476        does support reading text using htmldisplay today.  Of course this should
4477        eventually migrate to use WebView.]
4478        
4479        * WebView.subproj/WebHTMLView.m:
4480        (-[WebHTMLView copy:]):
4481
44822002-10-15  Darin Adler  <darin@apple.com>
4483
4484	Fixed bug where URLs dragged to the content area were not made canonical
4485	the way URLs dragged to the page address field are.
4486
4487        * Misc.subproj/WebNSPasteboardExtras.m: (-[NSPasteboard _web_bestURL]):
4488	Make URLs canonical before returning them.
4489
44902002-10-15  Chris Blumenberg  <cblu@apple.com>
4491
4492	If a file is renamed during download because a file of the same name already exists, show this in the UI.
4493
4494        * Misc.subproj/WebDownloadHandler.h:
4495        * Misc.subproj/WebDownloadHandler.m:
4496        (-[WebDownloadHandler receivedResponse:]): added, create file here
4497        (-[WebDownloadHandler receivedData:]): don't create file here
4498        * WebView.subproj/WebMainResourceClient.m:
4499        (-[WebMainResourceClient handleDidFinishLoading:]): call [dataSource _setPrimaryLoadComplete:YES] for downloads
4500        (-[WebMainResourceClient handle:didReceiveResponse:]): call [WebDownloadHandler receivedResponse:]
4501        (-[WebMainResourceClient handle:didReceiveData:]): no download error to handle
4502
45032002-10-14  Chris Blumenberg  <cblu@apple.com>
4504
4505	- 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. 
4506
4507        * WebView.subproj/WebControllerPolicyDelegate.h:
4508        * WebView.subproj/WebControllerPrivate.h:
4509        * WebView.subproj/WebControllerPrivate.m:
4510        (-[WebController _downloadURL:withContentPolicy:]): Renamed, set the predetermined content policy.
4511        * WebView.subproj/WebDefaultContextMenuDelegate.m:
4512        (-[WebDefaultContextMenuDelegate downloadURL:]): call [WebController _downloadURL:withContentPolicy:]
4513        * WebView.subproj/WebDefaultPolicyDelegate.m:
4514        * WebView.subproj/WebHTMLView.m:
4515        (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): call [WebController _downloadURL:withContentPolicy:]
4516        * WebView.subproj/WebHTMLViewPrivate.m:
4517        (-[WebHTMLView _continueAfterClickPolicyForEvent:]): call [WebController _downloadURL:withContentPolicy:]
4518        * WebView.subproj/WebMainResourceClient.m:
4519        (-[WebMainResourceClient handle:didReceiveResponse:]): ask for content policy even if one is predetermined
4520
45212002-10-14  Chris Blumenberg  <cblu@apple.com>
4522
4523	- Cleaned up download handler and download progress delegate interactions.
4524	- Got rid of error suppression junk.
4525	- Only send 1 final message to the download progress delegate
4526
4527        * WebView.subproj/WebMainResourceClient.h:
4528        * WebView.subproj/WebMainResourceClient.m:
4529        (-[WebMainResourceClient receivedError:forHandle:]): no error suppression
4530        (-[WebMainResourceClient didCancelWithHandle:]): ignore cancel errors because 1 download error is enough
4531        (-[WebMainResourceClient handleDidFinishLoading:]): don't send the special and odd final message to the download progress delegate
4532        (-[WebMainResourceClient handle:didReceiveData:]): no error suppression
4533        (-[WebMainResourceClient handle:didFailLoadingWithError:]): ignore cancel errors because 1 download error is enough
4534
45352002-10-14  Darin Adler  <darin@apple.com>
4536
4537        * Bookmarks.subproj/WebBookmark.m:
4538        (+[WebBookmark bookmarkFromDictionaryRepresentation:withGroup:]):
4539        * Bookmarks.subproj/WebBookmarkLeaf.m:
4540        (-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
4541        * Bookmarks.subproj/WebBookmarkList.m:
4542        (-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]):
4543        * Bookmarks.subproj/WebBookmarkProxy.m:
4544        (-[WebBookmarkProxy initFromDictionaryRepresentation:withGroup:]):
4545	Add checking since we don't "trust" the dictionary passed in.
4546
4547        * History.subproj/WebHistoryItem.m:
4548        (-[WebHistoryItem initFromDictionaryRepresentation:]):
4549	Add FIXME about adding the checking.
4550
4551        * Bookmarks.subproj/WebBookmarkGroup.m:
4552        (-[WebBookmarkGroup initWithFile:]): Use copy, not retain.
4553
4554        * WebView.subproj/WebControllerPrivate.m:
4555        (-[WebControllerPrivate dealloc]): Fix storage leak by releasing
4556	the default context menu delegate.
4557
4558        * WebView.subproj/WebControllerPrivate.h: Tweak.
4559
45602002-10-14  Chris Blumenberg  <cblu@apple.com>
4561
4562	Made WebNetscapePluginStream retain a WebNetscapePluginEmbeddedView not a WebBaseNetscapePluginView.
4563
4564        * Plugins.subproj/WebNetscapePluginStream.h:
4565        * Plugins.subproj/WebNetscapePluginStream.m:
4566        (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
4567
45682002-10-13  Darin Adler  <darin@apple.com>
4569
4570        * English.lproj/StringsNotToBeLocalized.txt: Added strings from WebBookmarkProxy.m.
4571
45722002-10-13  Chris Blumenberg  <cblu@apple.com>
4573
4574	- Eliminated the dual-role behavior of WebPluginStream.
4575
4576	Renamed WebPluginStream to WebBaseNetscapePluginStream.
4577	WebNetscapePluginRepresentation, a subclass of WebBaseNetscapePluginStream,
4578	is the document representation for standalone plug-ins.
4579	WebNetscapePluginStream, also a subclass of WebBaseNetscapePluginStream,
4580	is the general plug-in stream loader for embedded plug-ins or plug-in requested streams.
4581
4582	23 plug-in source files with more likely to come!
4583
4584        * Plugins.subproj/WebBaseNetscapePluginStream.h: Added.
4585        * Plugins.subproj/WebBaseNetscapePluginStream.m: Added.
4586        (-[WebBaseNetscapePluginStream dealloc]):
4587        (-[WebBaseNetscapePluginStream setPluginPointer:]):
4588        (-[WebBaseNetscapePluginStream setResponse:]):
4589        (-[WebBaseNetscapePluginStream receivedData:]):
4590        (-[WebBaseNetscapePluginStream receivedError:]):
4591        (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
4592        * Plugins.subproj/WebBaseNetscapePluginView.h:
4593        * Plugins.subproj/WebBaseNetscapePluginView.m:
4594        (-[WebBaseNetscapePluginView setWindow]):
4595        (-[WebBaseNetscapePluginView pluginPointer]):
4596        (-[WebBaseNetscapePluginView drawRect:]):
4597        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
4598        * Plugins.subproj/WebNetscapePluginDocumentView.m:
4599        * Plugins.subproj/WebNetscapePluginRepresentation.h: Added.
4600        * Plugins.subproj/WebNetscapePluginRepresentation.m: Added.
4601        (-[WebNetscapePluginRepresentation setDataSource:]):
4602        (-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
4603        (-[WebNetscapePluginRepresentation receivedError:withDataSource:]):
4604        (-[WebNetscapePluginRepresentation finishedLoadingWithDataSource:]):
4605        * Plugins.subproj/WebNetscapePluginStream.h: Added.
4606        * Plugins.subproj/WebNetscapePluginStream.m: Added.
4607        (-[WebNetscapePluginStream setCurrentURL:]):
4608        (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
4609        (-[WebNetscapePluginStream dealloc]):
4610        (-[WebNetscapePluginStream start]):
4611        (-[WebNetscapePluginStream stop]):
4612        (-[WebNetscapePluginStream loadEnded]):
4613        (-[WebNetscapePluginStream handle:willSendRequest:]):
4614        (-[WebNetscapePluginStream handle:didReceiveResponse:]):
4615        (-[WebNetscapePluginStream handle:didReceiveData:]):
4616        (-[WebNetscapePluginStream handleDidFinishLoading:]):
4617        (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
4618        * Plugins.subproj/WebPluginDatabase.m:
4619        (-[WebNetscapePluginDatabase init]):
4620        * Plugins.subproj/WebPluginStream.h: Removed.
4621        * Plugins.subproj/WebPluginStream.m: Removed.
4622        * WebKit.pbproj/project.pbxproj:
4623
46242002-10-11  Richard Williamson   <rjw@apple.com>
4625
4626        More DOM/attributed string work.
4627        
4628        * WebView.subproj/WebHTMLRepresentation.h:
4629        * WebView.subproj/WebHTMLRepresentation.m:
4630        (-[WebHTMLRepresentation attributedStringFrom:startOffset:to:endOffset:]):
4631        * WebView.subproj/WebHTMLRepresentationPrivate.h:
4632
46332002-10-11  Richard Williamson   <rjw@apple.com>
4634
4635        * WebView.subproj/WebHTMLRepresentation.m:
4636        * WebView.subproj/WebHTMLRepresentationPrivate.h:
4637
46382002-10-11  Ken Kocienda  <kocienda@apple.com>
4639
4640	Fixed uninitialized variable build breaker I got when
4641	doing a Deployment build.
4642
4643        * Bookmarks.subproj/WebBookmarkGroup.m:
4644        (-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:URLString:type:]):
4645
46462002-10-11  John Sullivan  <sullivan@apple.com>
4647
4648	Added the concept of bookmark proxies; items that can be
4649	stored and displayed with other bookmarks but represent
4650	a source of bookmark-like items (e.g. Rendezvous, History)
4651
4652        * Bookmarks.subproj/WebBookmarkProxy.h: Added.
4653        * Bookmarks.subproj/WebBookmarkProxy.m: Added.
4654        (-[WebBookmarkProxy initFromDictionaryRepresentation:withGroup:]):
4655        (-[WebBookmarkProxy dictionaryRepresentation]):
4656        (-[WebBookmarkProxy bookmarkType]):
4657        (-[WebBookmarkProxy copyWithZone:]):
4658        (-[WebBookmarkProxy title]):
4659        (-[WebBookmarkProxy setTitle:]):
4660        (-[WebBookmarkProxy icon]):
4661	New class, has a title and that's about it
4662
4663        * Bookmarks.subproj/WebBookmark.h:
4664        * Bookmarks.subproj/WebBookmark.m:
4665        (+[WebBookmark bookmarkFromDictionaryRepresentation:withGroup:]):
4666	Handle proxy case
4667
4668        * Bookmarks.subproj/WebBookmarkGroup.m:
4669        (-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:URLString:type:]):
4670	Handle proxy case
4671
4672        * Bookmarks.subproj/WebBookmarkList.m:
4673        (-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]),
4674        (-[WebBookmarkList dictionaryRepresentation]):
4675	Handle proxy case
4676
4677        * Bookmarks.subproj/WebBookmarkPrivate.h:
4678	Add #define for proxy
4679
4680        * WebKit.pbproj/project.pbxproj: updated for new files
4681
46822002-10-11  Chris Blumenberg  <cblu@apple.com>
4683
4684	Thought I has checking for nil enough, but not enough as I raised an exception on Avie's machine.
4685
4686        * Plugins.subproj/WebPlugin.m:
4687        (-[WebNetscapePlugin getPluginInfo]): check for the nil extension case
4688
46892002-10-11  Darin Adler  <darin@apple.com>
4690
4691	Apply a simplified technique I learned while working on the Favorites button
4692	class in the browser code.
4693
4694        * Plugins.subproj/WebBaseNetscapePluginView.m:
4695        (-[WebBaseNetscapePluginView start]): Use the NSViewFocusDidChangeNotification
4696	to track the plugin rectangles instead of the NSViewFrameDidChangeNotification
4697	and NSViewBoundsDidChangeNotification on all the superviews.
4698
46992002-10-11  John Sullivan  <sullivan@apple.com>
4700
4701        * Resources/url_icon.tiff: new generic URL icon -- no more @!
4702
47032002-10-10  Darin Adler  <darin@apple.com>
4704
4705	- fixed 3069366 -- REGRESSION: no pop-up window at inkfinder.com
4706
4707	The window now pops up, but it doesn't seem to work right. But I
4708	think the window working right is a separate issue.
4709
4710        * WebView.subproj/WebMainResourceClient.m:
4711        (-[WebMainResourceClient handle:willSendRequest:]): Make sure we
4712	use the copy of the request that we're keeping around when we call
4713	_setRequest on the data source, rather than the copy we're returning
4714	which can be modified by WebFoundation. Also rearrange things so we're
4715	more likely to get things right when the delegate changes the URL on
4716	the request.
4717
47182002-10-10  Chris Blumenberg  <cblu@apple.com>
4719
4720	No need to send update event when activating/deactivating.
4721	This was as old workaround for the plug-in drawing problems.
4722
4723        * Plugins.subproj/WebBaseNetscapePluginView.m:
4724        (-[WebBaseNetscapePluginView windowBecameKey:]):
4725        (-[WebBaseNetscapePluginView windowResignedKey:]):
4726
4727=== Alexander-27 ===
4728
47292002-10-10  Darin Adler  <darin@apple.com>
4730
4731	- fixed 3071799 -- REGRESSION: hang and strange download loading about:blank
4732
4733	Chris fixed the strange download earlier. This fixes the "hang' by making sure
4734	we commit even if we receive 0 bytes of data.
4735
4736        * WebView.subproj/WebDataSourcePrivate.h: Added a _finishedLoading method.
4737        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _finishedLoading]):
4738	Added. Sets the "first byte of data received" flag, and calls _commitIfReady.
4739        * WebView.subproj/WebMainResourceClient.m:
4740        (-[WebMainResourceClient handleDidFinishLoading:]): Call _finishedLoading.
4741
47422002-10-10  Darin Adler  <darin@apple.com>
4743
4744	- fixed 3072015 -- REGRESSION: frames multiply endlessly
4745
4746        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge setFrame:]):
4747	Remove code that sets the parent from here, because it's too early, always nil.
4748        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _addChild:]):
4749	Do it here instead.
4750
47512002-10-09  Richard Williamson   <rjw@apple.com>
4752
4753        * WebCoreSupport.subproj/WebSubresourceClient.m:
4754        (-[WebSubresourceClient handleDidFinishLoading:]):
4755        * WebKit.exp:
4756        * WebView.subproj/WebController.m:
4757        (-[WebResourceLoadDelegate resourceRequest:willSendRequest:fromDataSource:]):
4758        (-[WebResourceLoadDelegate resourceRequest:didReceiveResponse:fromDataSource:]):
4759        (-[WebResourceLoadDelegate resourceRequest:didReceiveContentLength:fromDataSource:]):
4760        (-[WebResourceLoadDelegate resourceRequest:didFinishLoadingFromDataSource:]):
4761        (-[WebResourceLoadDelegate resourceRequest:didFailLoadingWithError:fromDataSource:]):
4762        * WebView.subproj/WebMainResourceClient.m:
4763        (-[WebMainResourceClient handleDidFinishLoading:]):
4764        * WebView.subproj/WebResourceLoadDelegate.h:
4765
47662002-10-09  John Sullivan  <sullivan@apple.com>
4767
4768	- removed unnecessary concept of unique identifiers for bookmarks
4769
4770        * Bookmarks.subproj/WebBookmark.h:
4771        * Bookmarks.subproj/WebBookmark.m:
4772        (-[WebBookmark dealloc]):
4773        (-[WebBookmark _setGroup:]):
4774        * Bookmarks.subproj/WebBookmarkGroup.h:
4775        * Bookmarks.subproj/WebBookmarkGroup.m:
4776        * Bookmarks.subproj/WebBookmarkGroupPrivate.h:
4777	removed all references to unique identifiers
4778
47792002-10-09  Darin Adler  <darin@apple.com>
4780
4781	WebKit support for creating windows and then showing them later
4782	after setting them up.
4783
4784        * WebCoreSupport.subproj/WebBridge.m:
4785        (-[WebBridge createWindowWithURL:referrer:frameName:]): Replaced the old
4786	openNewWindowWithURL with this. It calls the new window operations delegate
4787	method.
4788        (-[WebBridge showWindow]): Added. Calls the window operations delegate showWindow method.
4789        (-[WebBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
4790	Call _createFrameNamed instead of createFrameNamed.
4791
4792        * WebView.subproj/WebWindowOperationsDelegate.h: Replaced the openNewWindowWithURL
4793	method with a new method named createWindowWithURL. Added showWindow and showWindowBehindFrontmost.
4794
4795        * WebView.subproj/WebControllerPrivate.h: Renamed createFrameNamed to _createFrameNamed
4796	and removed the data source parameter. Added _openNewWindowWithURL:referrer:behind:
4797	for the convenience of those who used to call the window operations delegate directly
4798	to open the window.
4799        * WebView.subproj/WebControllerPrivate.m:
4800        (-[WebController _createFrameNamed:inParent:allowsScrolling:]): Renamed, and removed
4801	the data source parameter.
4802        (-[WebController _openNewWindowWithURL:referrer:behind:]): Added.
4803
4804        * Plugins.subproj/WebBaseNetscapePluginView.m:
4805        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
4806        * WebView.subproj/WebDefaultContextMenuDelegate.m:
4807        (-[WebDefaultContextMenuDelegate openNewWindowWithURL:referrer:]):
4808        * WebView.subproj/WebFrame.m: (-[WebFrame frameNamed:]):
4809        * WebView.subproj/WebHTMLViewPrivate.m:
4810        (-[WebHTMLView _continueAfterClickPolicyForEvent:]):
4811	Use a private WebController method instead of calling the delegate directly,
4812	because it now takes two method calls to create and display a new window.
4813
4814        * Misc.subproj/WebNSViewExtras.m:
4815        * WebCoreSupport.subproj/WebSubresourceClient.m:
4816        * WebView.subproj/WebController.m:
4817        * WebView.subproj/WebDataSource.m:
4818        * WebView.subproj/WebFramePrivate.m:
4819        * WebView.subproj/WebHTMLView.m:
4820        * WebView.subproj/WebMainResourceClient.m:
4821        * WebView.subproj/WebPreferences.m:
4822        * WebView.subproj/WebView.m:
4823        * WebView.subproj/WebViewPrivate.m:
4824	Tweaked comments.
4825
48262002-10-09  Darin Adler  <darin@apple.com>
4827
4828        * WebCoreSupport.subproj/WebImageRenderer.m:
4829        (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
4830	Fix positioning of progressively loading images that are flipped.
4831
48322002-10-09  Darin Adler  <darin@apple.com>
4833
4834	- fixed 3069764 -- REGRESSION: Plug-ins sometimes don't respond to
4835	update events, causes disappearing
4836
4837        * Plugins.subproj/WebBaseNetscapePluginView.m:
4838        (-[WebBaseNetscapePluginView drawRect:]): Set the visible region of the port to the
4839	port bounds to work around the fact that NSWindow tries to help us by doing a
4840	BeginUpdate call. This ensures we can draw where we think we are dirty, not just
4841	where Carbon thinks we are dirty.
4842
4843        * Plugins.subproj/WebNetscapePluginDocumentView.m: Tweak includes.
4844        * Plugins.subproj/WebNetscapePluginEmbeddedView.m: Tweak includes.
4845        * WebCoreSupport.subproj/WebBridge.m:
4846        (-[WebBridge openNewWindowWithURL:referrer:frameName:]): Tweak.
4847
4848        * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
4849
48502002-10-08  Darin Adler  <darin@apple.com>
4851
4852	Make WebFrame do the entire frame hierarchy, instead of having the
4853	parent and child pointers in the data source.
4854
4855        * WebCoreSupport.subproj/WebBridge.m:
4856        (-[WebBridge childFrames]): Get children from the frame, not the data source.
4857        (-[WebBridge setFrame:]): Do the setParent: call on the bridge here, instead of
4858	in dataSourceChanged, since the parent relationship is now established even without
4859	having the data source.
4860        (-[WebBridge dataSourceChanged]): Remove the setParent: call.
4861        (-[WebBridge loadRequest:]): Remove the parent parameter. It's already set up at
4862	this point so we don't need to set it.
4863        (-[WebBridge loadURL:referrer:]): Don't pass a parent.
4864        (-[WebBridge postWithURL:referrer:data:contentType:]): Don't pass a parent.
4865        (-[WebBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
4866	Don't pass a parent.
4867	(-[WebBridge addBackForwardItemWithURL:anchor:]): Get the parent frame by just calling
4868	the parent method instead of the more roundabout way that it was doing it before.
4869
4870        * WebView.subproj/WebController.m:
4871        (-[WebController _frameForDataSource:fromFrame:]): Get the children list from the frame,
4872	no need to ask the data source. And no need to deal with the provisional data source, since
4873	those can't have children any more.
4874        (-[WebController _frameForView:fromFrame:]): Ditto.
4875
4876        * WebView.subproj/WebControllerPrivate.h: Change parent parameter when creating a new
4877	frame to be a frame, not a data source.
4878        * WebView.subproj/WebControllerPrivate.m:
4879        (-[WebControllerPrivate _clearControllerReferences:]): Get the children list from the frame.
4880        (-[WebControllerPrivate dealloc]): Rename the _reset method _controllerWillBeDeallocated
4881	to be more concrete. More simplification can happen here later.
4882        (-[WebController createFrameNamed:for:inParent:allowsScrolling:]): Call _addChild on the
4883	parent frame rather than calling addFrame on the parent data source.
4884
4885        * WebView.subproj/WebDataSource.h: Remove the parent, children, frameNamed, frameNames, and
4886	frameExists methods.
4887        * WebView.subproj/WebDataSource.m:
4888        (-[WebDataSource controller]): Remove the assertion here about parents, since we don't have
4889	a parent pointer any more.
4890        (-[WebDataSource isLoading]): Get the list of children from the frame.
4891
4892        * WebView.subproj/WebDataSourcePrivate.h: Remove the parent pointer and the frames dictionary,
4893	also remove the _setParent: and addFrame: methods.
4894        * WebView.subproj/WebDataSourcePrivate.m:
4895        (-[WebDataSourcePrivate dealloc]): Don't release the frames list.
4896        (-[WebDataSource _recursiveStopLoading]): Get the frames list from the frame.
4897        (-[WebDataSource _layoutChildren]): Ditto.
4898        (-[WebDataSource _defersCallbacksChanged]): Ditto.
4899
4900        * WebView.subproj/WebFrame.h: Add parent and children methods.
4901        * WebView.subproj/WebFrame.m:
4902        (-[WebFrame dealloc]): Call _detachFromParent.
4903        (-[WebFrame setProvisionalDataSource:]): Set the encoding of the data source to match
4904	the encoding of the parent's data source. This used to be done in [WebDataSource _setParent:].
4905	Further simplification can probably be done here.
4906        (-[WebFrame reload]): Remove the call to [WebDataSource _setParent:].
4907        (+[WebFrame _frameNamed:fromFrame:]): Get the children from the frame.
4908        (-[WebFrame frameNamed:]): Get the parent from the frame.
4909        (-[WebFrame parent]): Added.
4910        (-[WebFrame children]): Added.
4911
4912        * WebView.subproj/WebFramePrivate.h: Added parent and children fields, changed reset to
4913	_controllerWillBeDeallocated, changed _parentDataSourceWillBeDeallocated to _detachFromParent,
4914	added _addChild method. Further simplification can probably be done here.
4915        * WebView.subproj/WebFramePrivate.m:
4916        (-[WebFramePrivate dealloc]): Release the children array.
4917        (-[WebFrame _controllerWillBeDeallocated]): Renamed from reset. Now just calls _detachFromParent.
4918        (-[WebFrame _detachFromParent]): Does all the work that reset and _parentDataSourceWillBeDeallocated
4919	used to do.
4920        (-[WebFrame _setDataSource:]): Call _detachFromParent on all the children and release them
4921	before setting up the new data source.
4922        (-[WebFrame _transitionToCommitted]): Get the parent from self instead of the data source.
4923        (-[WebFrame _isLoadComplete]): Ditto.
4924        (+[WebFrame _recursiveCheckCompleteFromFrame:]): Get the children from self instead of the data source.
4925        (-[WebFrame _textSizeMultiplierChanged]): Ditto.
4926        (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]): Remove the call to [WebDataSource _setParent:].
4927        (-[WebFrame _addChild:]): Added. Puts the child in a children list, and also sets the override
4928	encoding of the child based on our data source's override encoding.
4929
49302002-10-08  John Sullivan  <sullivan@apple.com>
4931
4932        * WebKit.pbproj/project.pbxproj:
4933	Project Builder says I changed it only by setting
4934	"hasScannedForEncodings" to 1 -- version wars again?
4935
49362002-10-08  Richard Williamson   <rjw@apple.com>
4937
4938        Removed unnecessary (and incorrect) include.
4939        The *.m files in DOM.subproj might be removed,
4940        they are empty now.
4941        
4942        * DOM.subproj/WebDOMDocument.m:
4943
49442002-10-08  Richard Williamson   <rjw@apple.com>
4945
4946        Added selection API.
4947        
4948        * WebView.subproj/WebHTMLRepresentation.h:
4949        * WebView.subproj/WebHTMLRepresentation.m:
4950        (-[WebHTMLRepresentation setSelectionFrom:startOffset:to:endOffset:]):
4951
49522002-10-08  Richard Williamson   <rjw@apple.com>
4953
4954        Add accessor for DOM document.
4955        
4956        * WebKit.pbproj/project.pbxproj:
4957        * WebView.subproj/WebHTMLRepresentation.h:
4958        * WebView.subproj/WebHTMLRepresentation.m:
4959        (-[WebHTMLRepresentation DOMDocument]):
4960
49612002-10-08  Richard Williamson   <rjw@apple.com>
4962
4963        Made getAttributeNodeNamed match spec, changed
4964        to getAttributeNode.
4965         
4966        * DOM.subproj/WebDOMElement.h:
4967
49682002-10-08  John Sullivan  <sullivan@apple.com>
4969
4970	- WebKit part of fix for 3069150 -- eliminate "separator"
4971	feature from Bookmarks
4972
4973        * Bookmarks.subproj/WebBookmarkSeparator.h: Removed.
4974        * Bookmarks.subproj/WebBookmarkSeparator.m: Removed.
4975	Removed class
4976
4977        * Bookmarks.subproj/WebBookmark.h:
4978        * Bookmarks.subproj/WebBookmark.m:
4979        (+[WebBookmark bookmarkOfType:]):
4980        (+[WebBookmark bookmarkFromDictionaryRepresentation:withGroup:]):
4981        * Bookmarks.subproj/WebBookmarkGroup.m:
4982        (-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:URLString:type:]):
4983        * Bookmarks.subproj/WebBookmarkList.m:
4984        (-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]):
4985        * Bookmarks.subproj/WebBookmarkPrivate.h:
4986        * English.lproj/StringsNotToBeLocalized.txt:
4987	Removed all references to class.
4988
4989        * WebKit.pbproj/project.pbxproj: Updated for removed files.
4990
49912002-10-08  Richard Williamson   <rjw@apple.com>
4992
4993        Fixes to the DOM API.
4994        
4995        * DOM.subproj/WebDOMDocument.h:
4996        * DOM.subproj/WebDOMDocument.m:
4997        * DOM.subproj/WebDOMNode.h:
4998        * DOM.subproj/WebDOMNode.m:
4999        * DOM.subproj/WebDOMNamedNodeMap.h: Removed.
5000        * DOM.subproj/WebDOMNamedNodeMap.m: Removed.
5001        * WebKit.pbproj/project.pbxproj:
5002
50032002-10-08  Ken Kocienda  <kocienda@apple.com>
5004
5005	Use WebFrameLoadType variable to set the request cache policy for the WebResourceRequest.
5006	This will help us to provide cached results for POST requests when the user navigates
5007	using the back/forward list or history for navigation, while making sure we do not
5008	use cached results when the user pokes the submit button for a form they have
5009	submitted previously.
5010
5011        * WebView.subproj/WebFramePrivate.m:
5012        (-[WebFrame _goToItem:withFrameLoadType:])
5013
50142002-10-08  Chris Blumenberg  <cblu@apple.com>
5015
5016	Moved assumption that a resource without a content type or extension is HTML to WebFoundation.
5017
5018        * WebView.subproj/WebMainResourceClient.m:
5019        (-[WebMainResourceClient handle:didReceiveResponse:]):
5020
50212002-10-08  Chris Blumenberg  <cblu@apple.com>
5022
5023	Minor plug-in code clean-up.
5024
5025        * Plugins.subproj/WebBaseNetscapePluginView.m:
5026        (-[WebBaseNetscapePluginView sendActivateEvent:]):
5027        (-[WebBaseNetscapePluginView sendUpdateEvent]):
5028        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
5029        * Plugins.subproj/WebPluginStream.m:
5030        (-[WebNetscapePluginStream receivedData:]):
5031
50322002-10-08  Chris Blumenberg  <cblu@apple.com>
5033
5034	Partial fix for 2967073 - should open all TEXT type files, at least
5035
5036        * WebView.subproj/WebControllerPrivate.m:
5037        (+[WebController _MIMETypeForFile:]): Sniff for HTML in the fail case.
5038
50392002-10-07  Darin Adler  <darin@apple.com>
5040
5041	WebKit part of implementation of multipart forms posting.
5042
5043        * WebCoreSupport.subproj/WebBridge.m:
5044        (-[WebBridge postWithURL:referrer:data:contentType:]):
5045	Add a contentType parameter to match change in WebCore API.
5046	Put the contentType value into the request.
5047
50482002-10-07  Chris Blumenberg  <cblu@apple.com>
5049
5050	Icing fix for: 3063517 - crash loading .png in separate window
5051	
5052        * Plugins.subproj/WebPluginDatabase.m:
5053        (-[WebNetscapePluginDatabase init]): Don't override document view and rep
5054	types for types that have already been registered. 
5055
50562002-10-07  Darin Adler  <darin@apple.com>
5057
5058	WebKit part of the page up/down fix.
5059
5060        * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView scrollPoint:]):
5061	If we are called from the handling of a page up or page down keyboard
5062	event, then ignore the specific scrolling requested, and do our idea of
5063	page up and page down. This guarantees that we will get the smarter
5064	idea of how to page from WebView instead of the one that's hardcoded
5065	into NSTextView.
5066
5067        * WebView.subproj/WebView.m: (-[WebView keyDown:]): Use scrollPageUp:,
5068	scrollPageDown:, scrollLineUp:, and scrollLineDown: instead of _pageUp,
5069	_pageDown, _lineUp, and _lineDown. This lets other classes see and use
5070	these selectors, which is useful when passing calls up the responder chain.
5071        * WebView.subproj/WebViewPrivate.h: Remove the private methods that are
5072	being changed to match the NSResponder keyboard methods.
5073        * WebView.subproj/WebViewPrivate.m:
5074        (-[WebView scrollPageUp:]): Rename from _pageUp, and also pass a scrollPageUp:
5075	selector along the responder chain if we are already scrolled to the top.
5076        (-[WebView scrollPageDown:]): Ditto.
5077        (-[WebView scrollLineUp:]): Rename from _lineUp.
5078        (-[WebView scrollLineDown:]): Rename from _lineDown.
5079
50802002-10-07  Richard Williamson   <rjw@apple.com>
5081
5082        'Re'play the delegate messages when an item is loaded from
5083        the WebCore cache.
5084
5085        Note that the client will NOT receive a willSendRequest: message.  The client
5086        presumably already did any request substitution before the object was loaded 
5087        into the cache.  Allowing the delegate to override the request and replace
5088        the object in the WebCore cache would introduce significant complexity.
5089        
5090        Fixes 3069138.
5091        
5092        * WebCoreSupport.subproj/WebBridge.m:
5093        (-[WebBridge objectLoadedFromCache:response:size:]):
5094        * WebCoreSupport.subproj/WebSubresourceClient.m:
5095        (-[WebSubresourceClient handle:didReceiveResponse:]):
5096
50972002-10-05  Darin Adler  <darin@apple.com>
5098
5099	- fixed 3068323 -- nil object inserted in dictionary exception on mouse move
5100
5101        * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _elementAtPoint:]):
5102	Add some assertions in the hope of finding if my assumptions about this are
5103	wrong, and use the version of the dictionary setter that does nothing if it's
5104	passed nil when putting in the frame found by name.
5105
51062002-10-04  Darin Adler  <darin@apple.com>
5107
5108        * English.lproj/StringsNotToBeLocalized.txt: Add a localization
5109	exception for the WebKit bundle identifier.
5110
51112002-10-04  Darin Adler  <darin@apple.com>
5112
5113        * Misc.subproj/WebKitLocalizableStrings.m: Added.
5114	Contains the definition of the WebKitLocalizableStringsBundle.
5115        * WebKit.pbproj/project.pbxproj: Add -DFRAMEWORK_NAME=WebKit.
5116
51172002-10-04  Richard Williamson   <rjw@apple.com>
5118
5119        Stubs for DOM level 2 core API.
5120        
5121        * DOM.subproj/WebDOMDocument.h: Added.
5122        * DOM.subproj/WebDOMDocument.m: Added.
5123        * DOM.subproj/WebDOMElement.h: Added.
5124        * DOM.subproj/WebDOMElement.m: Added.
5125        * DOM.subproj/WebDOMNamedNodeMap.h: Added.
5126        * DOM.subproj/WebDOMNamedNodeMap.m: Added.
5127        * DOM.subproj/WebDOMNode.h: Added.
5128        * DOM.subproj/WebDOMNode.m: Added.
5129        * WebKit.pbproj/project.pbxproj:
5130        
5131        * WebView.subproj/WebHTMLViewPrivate.m: tweak.
5132
51332002-10-04  Darin Adler  <darin@apple.com>
5134
5135        * English.lproj/StringsNotToBeLocalized.txt: Add the last few exceptions.
5136	We now have a completely-clean run of extract-localizable-strings in WebKit!
5137
51382002-10-04  Darin Adler  <darin@apple.com>
5139
5140	- fixed 3060140 -- REGRESSION: frames of animated gif drawn in wrong position.
5141
5142	I got the "fromRect" and "toRect" parameters backwards when I made the changes
5143	to fix bug 3050810.
5144
5145        * WebCoreSupport.subproj/WebImageRenderer.m: (-[WebImageRenderer nextFrame:]):
5146	Reverse targetRect and imageRect.
5147
5148        * WebKit.pbproj/project.pbxproj: Mark some new files as UTF-8 because Project
5149	Builder asked me to.
5150
51512002-10-04  Darin Adler  <darin@apple.com>
5152
5153        * Panels.subproj/WebPanelCookieAcceptHandler.h: Removed.
5154        * Panels.subproj/WebPanelCookieAcceptHandler.m: Removed.
5155
51562002-10-04  Richard Williamson   <rjw@apple.com>
5157
5158        Danger Will Robinson.  We have to poseAsClass: as early as possible
5159        so that any NSViews will be created with the appropriate poser.
5160        This problem manifested itself with SimpleViewer failing
5161        immediately.  NSViews were created by loading a nib before
5162        WebHTMLView class initialization occured.  After posing the
5163        already instantiated instances of NSView had a %NSView class,
5164        causing many things to break.
5165        
5166        * WebView.subproj/WebHTMLViewPrivate.m:
5167        (+[WebHTMLView load]):
5168
51692002-10-04  Richard Williamson   <rjw@apple.com>
5170
5171        Ensure that we return non-nil request  from handle:willSendRequest:
5172        even when WK's laod delegate is nil.
5173        
5174        * WebCoreSupport.subproj/WebSubresourceClient.m:
5175        (-[WebSubresourceClient handle:willSendRequest:]):
5176        * WebView.subproj/WebMainResourceClient.m:
5177        (-[WebMainResourceClient handle:willSendRequest:]):
5178
51792002-10-04  Darin Adler  <darin@apple.com>
5180
5181        * Panels.subproj/WebAuthenticationPanel.m:
5182        (-[WebAuthenticationPanel loadNib]): Use ERROR instead of NSLog here.
5183        (-[WebAuthenticationPanel setUpForRequest:]): Mark some strings for localization.
5184
5185        * WebKit.pbproj/project.pbxproj: Change the encoding on a lot more files to UTF-8.
5186
5187        * English.lproj/StringsNotToBeLocalized.txt: Added some new exceptions.
5188        * English.lproj/Localizable.strings: Re-generated.
5189
51902002-10-04  Richard Williamson   <rjw@apple.com>
5191
5192        Changed WebDOMNode name to WebDebugDOMNode to make room for
5193        real node.
5194        
5195        * WebKit.exp:
5196        * WebKit.pbproj/project.pbxproj:
5197        * WebView.subproj/WebDOMNode.h: Removed.
5198        * WebView.subproj/WebDOMNode.m: Removed.
5199
52002002-10-04  Richard Williamson   <rjw@apple.com>
5201
5202        * WebKit.pbproj/project.pbxproj:
5203
52042002-10-03  Richard Williamson   <rjw@apple.com>
5205
5206        Changed name of controller's resourceProgressDelegate methods to resourceLoadDelegate.
5207
5208        * WebCoreSupport.subproj/WebSubresourceClient.m:
5209        (-[WebSubresourceClient initWithLoader:dataSource:]):
5210        (-[WebSubresourceClient handle:didReceiveResponse:]):
5211        (-[WebSubresourceClient handle:didReceiveData:]):
5212        (-[WebSubresourceClient handleDidFinishLoading:]):
5213        (-[WebSubresourceClient handle:didFailLoadingWithError:]):
5214        * WebView.subproj/WebController.h:
5215        * WebView.subproj/WebController.m:
5216        (-[WebController setResourceLoadDelegate:]):
5217        (-[WebController resourceLoadDelegate]):
5218        (-[WebController setDownloadDelegate:]):
5219        (-[WebController downloadDelegate]):
5220        * WebView.subproj/WebMainResourceClient.m:
5221        (-[WebMainResourceClient initWithDataSource:]):
5222        (-[WebMainResourceClient handle:didReceiveResponse:]):
5223
52242002-10-03  Richard Williamson   <rjw@apple.com>
5225
5226        Always call resourceRequest:willSendRequest: on resourceProgressDelegate.
5227         
5228        * WebView.subproj/WebMainResourceClient.m:
5229        (-[WebMainResourceClient handle:willSendRequest:]):
5230
52312002-10-03  Richard Williamson   <rjw@apple.com>
5232
5233        Add calls to downloadProgressDelegate.
5234        
5235        * WebView.subproj/WebMainResourceClient.m:
5236        (-[WebMainResourceClient handle:willSendRequest:]):
5237        (-[WebMainResourceClient handle:didReceiveResponse:]):
5238        (-[WebMainResourceClient handle:didReceiveData:]):
5239        (-[WebMainResourceClient handle:didFailLoadingWithError:]):
5240
52412002-10-03  Richard Williamson   <rjw@apple.com>
5242
5243        
5244        * WebCoreSupport.subproj/WebBridge.m:
5245        (-[WebBridge objectLoadedFromCache:size:]):
5246        Hack to prevent handle creation with nil delegate,
5247        still perform frame complete check.
5248        
5249        * WebView.subproj/WebMainResourceClient.m:
5250        (-[WebMainResourceClient initWithDataSource:]):
5251        Removed unused code.
5252        
5253        (-[WebMainResourceClient handle:willSendRequest:]):
5254        Copy the request, ugh.
5255
52562002-10-03  Darin Adler  <darin@apple.com>
5257
5258	Add API for executing JavaScript.
5259
5260        * WebView.subproj/WebController.h: Add method.
5261        * WebView.subproj/WebController.m:
5262        (-[WebController executeJavaScriptFromString:]): Call through to
5263	WebCore to do the heavy lifting.
5264
52652002-10-03  Darin Adler  <darin@apple.com>
5266
5267        * English.lproj/Localizable.strings: Generated by the script.
5268        * English.lproj/StringsNotToBeLocalized.txt: Added many more strings to ignore.
5269        * English.lproj/WebError.strings: Removed.
5270
5271        * WebView.subproj/WebDefaultContextMenuDelegate.m:
5272        * WebView.subproj/WebView.m:
5273	Use UI_STRING instead of NSLocalizedString.
5274
5275        * WebKit.pbproj/project.pbxproj: Changed encodings of some files to UTF-8.
5276	Removed WebError.strings.
5277
52782002-10-03  Richard Williamson   <rjw@apple.com>
5279
5280        Renamed WebResourceProgressDelegate.h to WebResourceLoadDelegate.h
5281
5282        * Misc.subproj/WebKit.h:
5283        * WebCoreSupport.subproj/WebSubresourceClient.m:
5284        * WebKit.pbproj/project.pbxproj:
5285        * WebView.subproj/WebController.m:
5286        * WebView.subproj/WebControllerPrivate.m:
5287        * WebView.subproj/WebMainResourceClient.m:
5288        * WebView.subproj/WebResourceLoadDelegate.h:
5289        * WebView.subproj/WebResourceProgressDelegate.h: Removed.
5290
52912002-10-03  Richard Williamson   <rjw@apple.com>
5292
5293        Changed to reflect new WebResourceLoadDelegate API.
5294
5295        * Misc.subproj/WebIconLoader.m:
5296        * Misc.subproj/WebKit.h:
5297        * Plugins.subproj/WebPluginStream.m:
5298        (-[WebNetscapePluginStream handle:didReceiveData:]):
5299        (-[WebNetscapePluginStream handleDidFinishLoading:]):
5300        (-[WebNetscapePluginStream cancel]):
5301        (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
5302        * WebCoreSupport.subproj/WebBridge.m:
5303        (-[WebBridge objectLoadedFromCache:size:]):
5304        (-[WebBridge reportBadURL:]):
5305        * WebCoreSupport.subproj/WebSubresourceClient.h:
5306        * WebCoreSupport.subproj/WebSubresourceClient.m:
5307        (-[WebSubresourceClient initWithLoader:dataSource:]):
5308        (-[WebSubresourceClient dealloc]):
5309        (-[WebSubresourceClient receivedProgressWithComplete:]):
5310        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
5311        (-[WebSubresourceClient receivedError:]):
5312        (-[WebSubresourceClient handle:willSendRequest:]):
5313        (-[WebSubresourceClient handle:didReceiveResponse:]):
5314        (-[WebSubresourceClient handle:didReceiveData:]):
5315        (-[WebSubresourceClient handleDidFinishLoading:]):
5316        (-[WebSubresourceClient handle:didFailLoadingWithError:]):
5317        (-[WebSubresourceClient cancel]):
5318        * WebKit.exp:
5319        * WebKit.pbproj/project.pbxproj:
5320        * WebView.subproj/WebController.h:
5321        * WebView.subproj/WebController.m:
5322        (-[WebController setResourceProgressDelegate:]):
5323        (-[WebController resourceProgressDelegate]):
5324        (-[WebController setDownloadProgressDelegate:]):
5325        (-[WebController downloadProgressDelegate]):
5326        * WebView.subproj/WebControllerPrivate.h:
5327        * WebView.subproj/WebControllerPrivate.m:
5328        (-[WebController _receivedProgressForResourceHandle:fromDataSource:complete:]):
5329        (-[WebController _mainReceivedProgressForResourceHandle:bytesSoFar:fromDataSource:complete:]):
5330        (-[WebController _receivedError:forResourceHandle:fromDataSource:]):
5331        (-[WebController _mainReceivedError:forResourceHandle:fromDataSource:]):
5332        * WebView.subproj/WebLoadProgress.h: Removed.
5333        * WebView.subproj/WebLoadProgress.m: Removed.
5334        * WebView.subproj/WebMainResourceClient.h:
5335        * WebView.subproj/WebMainResourceClient.m:
5336        (-[WebMainResourceClient initWithDataSource:]):
5337        (-[WebMainResourceClient dealloc]):
5338        (-[WebMainResourceClient receivedProgressWithHandle:complete:]):
5339        (-[WebMainResourceClient receivedError:forHandle:]):
5340        (-[WebMainResourceClient handleDidFinishLoading:]):
5341        (-[WebMainResourceClient handle:willSendRequest:]):
5342        (-[WebMainResourceClient handle:didReceiveResponse:]):
5343        (-[WebMainResourceClient handle:didReceiveData:]):
5344        (-[WebMainResourceClient handle:didFailLoadingWithError:]):
5345        * WebView.subproj/WebResourceProgressDelegate.h:
5346
5347=== Alexander-26 ===
5348
53492002-10-02  Maciej Stachowiak  <mjs@apple.com>
5350
5351	- Added "remember my password" checkbox (underlying feature not
5352	yet implemented).
5353
5354	- Fixed a bug that caused a crash when cancelling the auth sheet.
5355	
5356        * Panels.subproj/English.lproj/WebAuthenticationPanel.nib: Added
5357	"remember this password" checkbox.
5358        * Panels.subproj/WebAuthenticationPanel.h:
5359        * Panels.subproj/WebAuthenticationPanel.m:
5360	(-[WebAuthenticationPanel cancel:]): Make sure the panel gets
5361	retained a bit longer, so the cleanup that happens after this
5362	message is sent can use the panel object.
5363        (-[WebAuthenticationPanel logIn:]): Make sure the panel gets
5364	retained a bit longer, so the cleanup that happens after this
5365	message is sent can use the panel object.
5366        (-[WebAuthenticationPanel runAsModalDialogWithRequest:]): Pass
5367	proper remembered value with credential.
5368        (-[WebAuthenticationPanel sheetDidEnd:returnCode:contextInfo:]):
5369	Pass proper remembered value with credential.
5370        * WebKit.pbproj/project.pbxproj: Project Builder had its way with
5371	this file.
5372
53732002-10-02  Darin Adler  <darin@apple.com>
5374
5375	Machinery so we can handle mouseover feedback at the browser level.
5376
5377        * WebView.subproj/WebWindowOperationsDelegate.h: Added mouseDidMoveOverElement:modifierFlags:.
5378
5379        * WebKit.exp: Export WebElementLinkTargetFrameKey.
5380        * WebView.subproj/WebController.h: Add WebElementLinkTargetFrameKey.
5381        * WebView.subproj/WebController.m: Ditto.
5382
5383        * WebView.subproj/WebHTMLView.m:
5384        (-[WebHTMLView removeMouseMovedObserver]): Send a callback when we
5385	stop tracking the mouse altogether.
5386        (-[WebHTMLView viewDidMoveToWindow]): Only set up the mouse moved
5387	observer if we are the top-level HTML view.
5388        (-[WebHTMLView windowDidBecomeMain:]): Ditto.
5389        (-[WebHTMLView mouseMovedNotification:]): Handle mouse over if we are
5390	over any subview of the HTML view. Also send the callback.
5391
5392        * WebView.subproj/WebHTMLViewPrivate.h: Added lastMouseOverElementWasNotNil,
5393	_mouseOverElement:modifierFlags: and _insideAnotherHTMLView.
5394        * WebView.subproj/WebHTMLViewPrivate.m:
5395        (-[WebHTMLView _elementAtPoint:]): Copy over each element separately so
5396	we don't rely on keys matching. Find the target frame given the target string,
5397	and include it in the dictionary.
5398        (-[WebHTMLView _mouseOverElement:modifierFlags]): Added. Calls the window
5399	operations delegate method, but doesn't call it over and over again if the
5400	information is still "nil".
5401        (-[WebHTMLView _insideAnotherHTMLView]): Added.
5402        (-[NSMutableDictionary _web_setObjectIfNotNil:forKey:]): Added. Helper for
5403	the _elementAtPoint method which could be moved to WebNSDictionaryExtras some day.
5404
54052002-10-02  Ken Kocienda  <kocienda@apple.com>
5406
5407	Implemented HTTP-specific subclass for WebResourceResponse.
5408
5409        * Plugins.subproj/WebPluginStream.m:
5410        (-[WebNetscapePluginStream receivedData:]): Add import for WebHTTPResourceResponse.
5411
54122002-10-02  Darin Adler  <darin@apple.com>
5413
5414	Add return value to willSendRequest callback.
5415
5416        * Misc.subproj/WebIconLoader.m:
5417        (-[WebIconLoader handle:willSendRequest:]):
5418        * Plugins.subproj/WebPluginStream.m:
5419        (-[WebNetscapePluginStream handle:willSendRequest:]):
5420        * WebCoreSupport.subproj/WebSubresourceClient.m:
5421        (-[WebSubresourceClient handle:willSendRequest:]):
5422        * WebView.subproj/WebMainResourceClient.m:
5423        (-[WebMainResourceClient handle:willSendRequest:]):
5424	Update to return the request.
5425
54262002-10-02  Darin Adler  <darin@apple.com>
5427
5428	Use the text encoding name from the response and got rid of
5429	[WebDataSource encoding]. Also remove the "first chunk" logic since we
5430	now get a separate callback for the response.
5431
5432        * WebCoreSupport.subproj/WebBridge.m:
5433        (-[WebBridge receivedData:withDataSource:]): Get the encoding name
5434	from the response, or fall back on the default.
5435
5436        * WebView.subproj/WebDataSource.h: Removed encoding.
5437        * WebView.subproj/WebDataSource.m: Ditto.
5438
5439        * WebView.subproj/WebDataSourcePrivate.h: Removed _setEncoding.
5440        * WebView.subproj/WebDataSourcePrivate.m:
5441        (-[WebDataSourcePrivate dealloc]): No need to release encoding any more.
5442
5443        * WebView.subproj/WebMainResourceClient.m:
5444        (-[WebMainResourceClient initWithDataSource:]): No isFirstChunk to initialize.
5445        (-[WebMainResourceClient handle:didReceiveResponse:]): Moved the response handling
5446	in here, including the policy logic.
5447        (-[WebMainResourceClient handle:didReceiveData:]): This has only what's left.
5448
54492002-10-02  Chris Blumenberg  <cblu@apple.com>
5450
5451	Replaced contentType on WebDataSource to response.
5452
5453        * Plugins.subproj/WebNetscapePluginDocumentView.m:
5454        (-[WebNetscapePluginDocumentView setDataSource:]):
5455        * Plugins.subproj/WebPluginStream.m:
5456        (-[WebNetscapePluginStream receivedData:]):
5457        (-[WebNetscapePluginStream setResponse:]):
5458        (-[WebNetscapePluginStream setDataSource:]):
5459        (-[WebNetscapePluginStream receivedData:withDataSource:]):
5460        (-[WebNetscapePluginStream handle:didReceiveResponse:]):
5461        (-[WebNetscapePluginStream handle:didReceiveData:]):
5462        * WebView.subproj/WebDataSource.h:
5463        * WebView.subproj/WebDataSource.m:
5464        (-[WebDataSource response]):
5465        (-[WebDataSource fileType]):
5466        * WebView.subproj/WebDataSourcePrivate.h:
5467        * WebView.subproj/WebDataSourcePrivate.m:
5468        (-[WebDataSourcePrivate dealloc]):
5469        (-[WebDataSource _representationClass]):
5470        (-[WebDataSource _setResponse:]):
5471        (-[WebDataSource _setContentPolicy:]):
5472        * WebView.subproj/WebMainResourceClient.h:
5473        * WebView.subproj/WebMainResourceClient.m:
5474        (-[WebMainResourceClient dealloc]):
5475        (-[WebMainResourceClient handleDidFinishLoading:]):
5476        (-[WebMainResourceClient handle:didReceiveResponse:]):
5477        (-[WebMainResourceClient handle:didReceiveData:]):
5478        * WebView.subproj/WebTextView.m:
5479        (-[WebTextView dataSourceUpdated:]):
5480        * WebView.subproj/WebViewPrivate.m:
5481        (-[WebView _makeDocumentViewForDataSource:]):
5482
54832002-10-02  Darin Adler  <darin@apple.com>
5484
5485	More work on "open window behind".
5486
5487        * WebView.subproj/WebControllerPolicyDelegate.h: Add new OpenNewWindowBehind
5488	constants to the enums.
5489
5490        * WebView.subproj/WebWindowOperationsDelegate.h: Add a behind: parameter to
5491	the openNewWindowWithURL method.
5492
5493        * WebView.subproj/WebHTMLViewPrivate.m:
5494        (-[WebHTMLView _continueAfterClickPolicyForEvent:]): In the new
5495	WebClickPolicyOpenNewWindowBehind case, pass YES for behind.
5496
5497        * Plugins.subproj/WebBaseNetscapePluginView.m:
5498        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
5499        * WebCoreSupport.subproj/WebBridge.m:
5500        (-[WebBridge openNewWindowWithURL:referrer:frameName:]):
5501        * WebView.subproj/WebDefaultContextMenuDelegate.m:
5502        (-[WebDefaultContextMenuDelegate openNewWindowWithURL:referrer:]):
5503        * WebView.subproj/WebFrame.m:
5504        (-[WebFrame frameNamed:]):
5505	Pass NO for behind.
5506
55072002-10-02  Darin Adler  <darin@apple.com>
5508
5509	Cut down on unnecessary use of WebFoundation private stuff.
5510
5511        * Plugins.subproj/WebPluginStream.m:
5512        (-[WebNetscapePluginStream startLoad]): Remove unnecessary use of
5513	[WebResourceHandle _request].
5514        * WebCoreSupport.subproj/WebSubresourceClient.m:
5515        (-[WebSubresourceClient handleDidFinishLoading:]): Remove assert about
5516	status code, since status codes are going away.
5517        * WebView.subproj/WebMainResourceClient.m:
5518        (-[WebMainResourceClient didCancelWithHandle:]): Use currentURL for logging.
5519        (-[WebMainResourceClient handleDidFinishLoading:]): Ditto.
5520        (-[WebMainResourceClient handle:didReceiveData:]): Ditto.
5521
55222002-10-02  Darin Adler  <darin@apple.com>
5523
5524        * WebView.subproj/WebControllerPolicyDelegate.h: Change modifierMask to
5525	modifierFlags to match NSEvent.
5526        * WebView.subproj/WebDefaultPolicyDelegate.m:
5527        (-[WebDefaultPolicyDelegate clickPolicyForElement:button:modifierFlags:]): Ditto.
5528        * WebView.subproj/WebHTMLViewPrivate.m:
5529        (-[WebHTMLView _continueAfterClickPolicyForEvent:]): Ditto.
5530
55312002-10-02  Darin Adler  <darin@apple.com>
5532
5533	Get rid of uses of canonicalURL.
5534
5535        * WebCoreSupport.subproj/WebSubresourceClient.m:
5536        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
5537	Start with normal URL. The change to the canonical URL will come in as a redirect.
5538        (-[WebSubresourceClient handle:didReceiveData:]): Remove assert.
5539        (-[WebSubresourceClient handleDidFinishLoading:]): Ditto.
5540        * WebView.subproj/WebDataSource.m:
5541        (-[WebDataSource initWithRequest:]):Start with normal URL. The change to the
5542	canonical URL will come in as a redirect.
5543
55442002-10-02  Ken Kocienda  <kocienda@apple.com>
5545
5546	Added import of WebHTTPResourceRequest.h to get access to methods
5547	which have moved to the HTTP-sepcific request category.
5548
5549        * WebView.subproj/WebDataSourcePrivate.m
5550
55512002-10-01  John Sullivan  <sullivan@apple.com>
5552
5553        * WebKit.exp: added .objc_class_name_WebTextRendererFactory
5554	so I could use it from WebBrowser.
5555
5556        * WebCoreSupport.subproj/WebBridge.m:
5557        (-[WebBridge startLoadingResource:withURL:referrer:]):
5558	Just changed whitespace so the .exp change would be built.
5559
55602002-10-01  Chris Blumenberg  <cblu@apple.com>
5561
5562	Fixed build breakage.
5563
5564        * Plugins.subproj/WebBaseNetscapePluginView.m:
5565        (-[WebBaseNetscapePluginView setWindow]):
5566
55672002-10-01  Ken Kocienda  <kocienda@apple.com>
5568
5569        Implemented WebResourceRequest "category" design for extending a
5570        request with protocol-specific data.
5571
5572        * WebCoreSupport.subproj/WebBridge.m: Now imports WebHTTPResourceRequest.h.
5573        * WebCoreSupport.subproj/WebSubresourceClient.m: Ditto.
5574        * WebView.subproj/WebMainResourceClient.m: Ditto.
5575
55762002-10-01  Chris Blumenberg  <cblu@apple.com>
5577
5578	- Added debug drawing
5579	- removed unnecessary ifdef'ing.
5580
5581        * Plugins.subproj/WebBaseNetscapePluginView.m:
5582        (-[WebBaseNetscapePluginView sendActivateEvent:]):
5583        (-[WebBaseNetscapePluginView becomeFirstResponder]):
5584        (-[WebBaseNetscapePluginView resignFirstResponder]):
5585        (-[WebBaseNetscapePluginView mouseDown:]):
5586        (-[WebBaseNetscapePluginView mouseUp:]):
5587        (-[WebBaseNetscapePluginView mouseEntered:]):
5588        (-[WebBaseNetscapePluginView mouseExited:]):
5589        (-[WebBaseNetscapePluginView menuForEvent:]):
5590        (-[WebBaseNetscapePluginView setWindow]):
5591        (-[WebBaseNetscapePluginView start]):
5592        (-[WebBaseNetscapePluginView drawRect:]):
5593
55942002-10-01  Ken Kocienda  <kocienda@apple.com>
5595
5596        * WebCoreSupport.subproj/WebSubresourceClient.m:
5597        (-[WebSubresourceClient handleDidFinishLoading:]): Fixed Development build breakage. Call to [response statusCode] 
5598	now calls the handle's private method to get the status code.
5599        * WebView.subproj/WebMainResourceClient.m:
5600        (-[WebMainResourceClient handleDidFinishLoading:]): Ditto.
5601        (-[WebMainResourceClient handle:didReceiveData:]): Calls new textEncodingName method, replacing call to characterSet.
5602
56032002-10-01  Ken Kocienda  <kocienda@apple.com>
5604
5605        * WebView.subproj/WebLoadProgress.m:
5606        (-[WebLoadProgress initWithResourceHandle:]): Status code moved from WebResourceResponse
5607	to WebResourceHandle private API.
5608
56092002-10-01  Ken Kocienda  <kocienda@apple.com>
5610
5611        Changed WebResourceHandle so that the init method no longer starts the
5612        loading of the request to begin. Added new loadWithDelegate: method which
5613        is called separatetly from the init method, to start loads.
5614
5615	All of the changes here update code that depends on WebResourceHandle. The
5616	changes move the code to the modified API.
5617
5618        * Misc.subproj/WebIconLoader.m:
5619        (-[WebIconLoader startLoading])
5620        * Plugins.subproj/WebPluginStream.m:
5621        (-[WebNetscapePluginStream startLoad])
5622        * WebCoreSupport.subproj/WebBridge.m:
5623        (-[WebBridge objectLoadedFromCache:size:])
5624        * WebCoreSupport.subproj/WebSubresourceClient.m:
5625        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:])
5626        * WebView.subproj/WebDataSourcePrivate.m:
5627        (-[WebDataSource _startLoading])
5628
56292002-10-01  Chris Blumenberg  <cblu@apple.com>
5630
5631	Fixed copyright comments.
5632
5633        * Plugins.subproj/WebBaseNetscapePluginView.h:
5634        * Plugins.subproj/WebBaseNetscapePluginViewPrivate.h:
5635        * Plugins.subproj/WebNetscapePluginDocumentView.h:
5636        * Plugins.subproj/WebNetscapePluginDocumentView.m:
5637        * Plugins.subproj/WebNetscapePluginEmbeddedView.h:
5638        * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
5639        * Plugins.subproj/WebNullPluginView.h:
5640        * Plugins.subproj/WebNullPluginView.m:
5641        * Plugins.subproj/WebPlugin.h:
5642        * Plugins.subproj/WebPlugin.m:
5643        * Plugins.subproj/WebPluginDatabase.h:
5644        * Plugins.subproj/WebPluginDatabase.m:
5645        * Plugins.subproj/WebPluginNullEventSender.h:
5646        * Plugins.subproj/WebPluginNullEventSender.m:
5647        * Plugins.subproj/WebPluginStream.h:
5648        * Plugins.subproj/WebPluginStream.m:
5649        * Plugins.subproj/npapi.h:
5650        * Plugins.subproj/npapi.m:
5651
56522002-10-01  Ken Kocienda  <kocienda@apple.com>
5653
5654	Many changes to coincide with API work in WebFoundation. Most of the modifications
5655	here have to do with changes for the new callback scheme.
5656
5657        * Misc.subproj/WebIconLoader.m:
5658        (-[WebIconLoader handleDidFinishLoading:])
5659        (-[WebIconLoader handle:willSendRequest:]): New method. A no-op here.
5660        (-[WebIconLoader handle:didReceiveResponse:]): Ditto.
5661        * Plugins.subproj/WebBaseNetscapePluginView.m:
5662        (-[WebBaseNetscapePluginView stop]): Fix for Deployment build breakage. 
5663        * Plugins.subproj/WebPluginStream.h: Add response ivar.
5664        * Plugins.subproj/WebPluginStream.m:
5665        (-[WebNetscapePluginStream startLoad]): Tweak method name for new API.
5666        (-[WebNetscapePluginStream receivedData:withHandle:]):
5667        (-[WebNetscapePluginStream handle:willSendRequest:]): New method. Replaces old redirect callback.
5668        (-[WebNetscapePluginStream handle:didReceiveResponse:]): New method. Set the response ivar.
5669        * WebCoreSupport.subproj/WebSubresourceClient.h: Add response ivar.
5670        * WebCoreSupport.subproj/WebSubresourceClient.m:
5671        (-[WebSubresourceClient dealloc]): Release response ivar.
5672        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]): Set the request user agent here.
5673        (-[WebSubresourceClient handle:willSendRequest:]): New method. Handle like a redirect.
5674        (-[WebSubresourceClient handle:didReceiveResponse:]): New method. Set the response ivar.
5675        (-[WebSubresourceClient handle:didReceiveData:]): Tweaks for new WebFoundation API and method names.
5676        (-[WebSubresourceClient handleDidFinishLoading:]): Ditto.
5677        (-[WebSubresourceClient handle:didFailLoadingWithError:]): Ditto.
5678        * WebView.subproj/WebControllerPrivate.m: 
5679        (-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]): Ditto.
5680        * WebView.subproj/WebDataSourcePrivate.h: Add _setRequest method.
5681        * WebView.subproj/WebDataSourcePrivate.m:
5682        (-[WebDataSource _startLoading]): Call didStartLoadingWithURL with request URL instead of handle URL.
5683        (-[WebDataSource _setRequest:]): Add implementation.
5684        * WebView.subproj/WebLoadProgress.m:
5685        (-[WebLoadProgress initWithResourceHandle:]): Tweaks for new WebFoundation API and method names.
5686        * WebView.subproj/WebMainResourceClient.h: Add response ivar.
5687        * WebView.subproj/WebMainResourceClient.m:
5688        (-[WebMainResourceClient initWithDataSource:]): Set user agent on request here.
5689        (-[WebMainResourceClient dealloc]): Release response ivar.
5690        (-[WebMainResourceClient didCancelWithHandle:]): Tweaks for new WebFoundation API and method names.
5691        (-[WebMainResourceClient handleDidFinishLoading:]): Tweaks for new WebFoundation API and method names.
5692        (-[WebMainResourceClient handle:willSendRequest:]): New method. Handle like a redirect.
5693        (-[WebMainResourceClient handle:didReceiveResponse:]): New method. Set the response ivar.
5694        (-[WebMainResourceClient handle:didReceiveData:]): Tweaks for new WebFoundation API and method names.
5695        (-[WebMainResourceClient handle:didFailLoadingWithError:]): Ditto.
5696
5697
56982002-09-30  Chris Blumenberg  <cblu@apple.com>
5699
5700	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
5701ndles non-HTML plug-in content and WebNetscapePluginEmbeddedView is the WebHTMLView subview.
5702
5703	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.
5704
5705        * Plugins.subproj/WebBaseNetscapePluginView.h: Added.
5706        * Plugins.subproj/WebBaseNetscapePluginView.m: Added.
5707        (+[WebBaseNetscapePluginView getCarbonEvent:]):
5708        (-[WebBaseNetscapePluginView getCarbonEvent:]):
5709        (-[WebBaseNetscapePluginView modifiersForEvent:]):
5710        (-[WebBaseNetscapePluginView getCarbonEvent:withEvent:]):
5711        (-[WebBaseNetscapePluginView keyMessageForEvent:]):
5712        (-[WebBaseNetscapePluginView sendEvent:]):
5713        (-[WebBaseNetscapePluginView sendActivateEvent:]):
5714        (-[WebBaseNetscapePluginView sendUpdateEvent]):
5715        (-[WebBaseNetscapePluginView acceptsFirstResponder]):
5716        (-[WebBaseNetscapePluginView becomeFirstResponder]):
5717        (-[WebBaseNetscapePluginView resignFirstResponder]):
5718        (-[WebBaseNetscapePluginView mouseDown:]):
5719        (-[WebBaseNetscapePluginView mouseUp:]):
5720        (-[WebBaseNetscapePluginView mouseEntered:]):
5721        (-[WebBaseNetscapePluginView mouseExited:]):
5722        (-[WebBaseNetscapePluginView keyUp:]):
5723        (-[WebBaseNetscapePluginView keyDown:]):
5724        (-[WebBaseNetscapePluginView isInResponderChain]):
5725        (-[WebBaseNetscapePluginView performKeyEquivalent:]):
5726        (-[WebBaseNetscapePluginView menuForEvent:]):
5727        (-[WebBaseNetscapePluginView setUpWindowAndPort]):
5728        (-[WebBaseNetscapePluginView setWindow]):
5729        (-[WebBaseNetscapePluginView removeTrackingRect]):
5730        (-[WebBaseNetscapePluginView resetTrackingRect]):
5731        (-[WebBaseNetscapePluginView start]):
5732        (-[WebBaseNetscapePluginView stop]):
5733        (-[WebBaseNetscapePluginView dataSource]):
5734        (-[WebBaseNetscapePluginView webFrame]):
5735        (-[WebBaseNetscapePluginView controller]):
5736        (-[WebBaseNetscapePluginView plugin]):
5737        (-[WebBaseNetscapePluginView setMIMEType:]):
5738        (-[WebBaseNetscapePluginView setBaseURL:]):
5739        (-[WebBaseNetscapePluginView setArguments:]):
5740        (-[WebBaseNetscapePluginView setMode:]):
5741        (-[WebBaseNetscapePluginView initWithFrame:]):
5742        (-[WebBaseNetscapePluginView dealloc]):
5743        (-[WebBaseNetscapePluginView drawRect:]):
5744        (-[WebBaseNetscapePluginView isFlipped]):
5745        (-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
5746        (-[WebBaseNetscapePluginView viewDidMoveToWindow]):
5747        (-[WebBaseNetscapePluginView viewHasMoved:]):
5748        (-[WebBaseNetscapePluginView windowWillClose:]):
5749        (-[WebBaseNetscapePluginView windowBecameKey:]):
5750        (-[WebBaseNetscapePluginView windowResignedKey:]):
5751        (-[WebBaseNetscapePluginView defaultsHaveChanged:]):
5752        (-[WebBaseNetscapePluginView frameStateChanged:]):
5753        (-[WebBaseNetscapePluginView pluginInstance]):
5754        (-[WebBaseNetscapePluginView pluginURLFromCString:]):
5755        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
5756        (-[WebBaseNetscapePluginView getURLNotify:target:notifyData:]):
5757        (-[WebBaseNetscapePluginView getURL:target:]):
5758        (-[WebBaseNetscapePluginView postURLNotify:target:len:buf:file:notifyData:]):
5759        (-[WebBaseNetscapePluginView postURL:target:len:buf:file:]):
5760        (-[WebBaseNetscapePluginView newStream:target:stream:]):
5761        (-[WebBaseNetscapePluginView write:len:buffer:]):
5762        (-[WebBaseNetscapePluginView destroyStream:reason:]):
5763        (-[WebBaseNetscapePluginView status:]):
5764        (-[WebBaseNetscapePluginView invalidateRect:]):
5765        (-[WebBaseNetscapePluginView invalidateRegion:]):
5766        (-[WebBaseNetscapePluginView forceRedraw]):
5767        * Plugins.subproj/WebBaseNetscapePluginViewPrivate.h: Added.
5768        * Plugins.subproj/WebNetscapePluginDocumentView.h: Added.
5769        * Plugins.subproj/WebNetscapePluginDocumentView.m: Added.
5770        (-[WebNetscapePluginDocumentView initWithFrame:]):
5771        (-[WebNetscapePluginDocumentView dealloc]):
5772        (-[WebNetscapePluginDocumentView drawRect:]):
5773        (-[WebNetscapePluginDocumentView dataSource]):
5774        (-[WebNetscapePluginDocumentView setDataSource:]):
5775        (-[WebNetscapePluginDocumentView dataSourceUpdated:]):
5776        (-[WebNetscapePluginDocumentView setNeedsLayout:]):
5777        (-[WebNetscapePluginDocumentView layout]):
5778        * Plugins.subproj/WebNetscapePluginEmbeddedView.h: Added.
5779        * Plugins.subproj/WebNetscapePluginEmbeddedView.m: Added.
5780        (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:mime:arguments:]):
5781        (-[WebNetscapePluginEmbeddedView dealloc]):
5782        (-[WebNetscapePluginEmbeddedView viewDidMoveToWindow]):
5783        (-[WebNetscapePluginEmbeddedView start]):
5784        (-[WebNetscapePluginEmbeddedView dataSource]):
5785        * Plugins.subproj/WebNetscapePluginViewPrivate.h: Removed.
5786        * Plugins.subproj/WebPluginDatabase.m:
5787        (-[WebNetscapePluginDatabase init]):
5788        * Plugins.subproj/WebPluginNullEventSender.h:
5789        * Plugins.subproj/WebPluginNullEventSender.m:
5790        (-[WebNetscapePluginNullEventSender initWithPluginView:]):
5791        (-[WebNetscapePluginNullEventSender sendNullEvents]):
5792        * Plugins.subproj/WebPluginStream.h:
5793        * Plugins.subproj/WebPluginStream.m:
5794        (-[WebNetscapePluginStream getFunctionPointersFromPluginView:]):
5795        (-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:]):
5796        (-[WebNetscapePluginStream dealloc]):
5797        (-[WebNetscapePluginStream startLoad]):
5798        (-[WebNetscapePluginStream receivedData:withDataSource:]):
5799        (-[WebNetscapePluginStream handleWillUseUserAgent:forURL:]):
5800        (-[WebNetscapePluginStream handle:didReceiveData:]):
5801        (-[WebNetscapePluginStream handleDidFinishLoading:]):
5802        (-[WebNetscapePluginStream cancel]):
5803        (-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
5804        (-[WebNetscapePluginStream handleDidRedirect:toURL:]):
5805        * Plugins.subproj/WebPluginView.h: Removed.
5806        * Plugins.subproj/WebPluginView.m: Removed.
5807        * Plugins.subproj/npapi.m:
5808        (NPN_GetURLNotify):
5809        (NPN_GetURL):
5810        (NPN_PostURLNotify):
5811        (NPN_PostURL):
5812        (NPN_NewStream):
5813        (NPN_Write):
5814        (NPN_DestroyStream):
5815        (NPN_Status):
5816        (NPN_InvalidateRect):
5817        (NPN_InvalidateRegion):
5818        (NPN_ForceRedraw):
5819        * WebCoreSupport.subproj/WebViewFactory.m:
5820        (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
5821        (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
5822        * WebKit.pbproj/project.pbxproj:
5823        * WebView.subproj/WebHTMLViewPrivate.m:
5824        (-[NSView _web_stopIfPluginView]):
5825
58262002-09-30  Darin Adler  <darin@apple.com>
5827
5828        * WebView.subproj/WebDataSource.m: (-[WebDataSource initWithRequest:]):
5829	Remove the ill-advised "don't even create a WebDataSource if WebResourceHandle
5830	can't handle this request" code.
5831
5832        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading]):
5833	Rearrange checks so we won't get confused if we can't create a handle.
5834
58352002-09-30  Darin Adler  <darin@apple.com>
5836
5837        * English.lproj/StringsNotToBeLocalized.txt: Added.
5838
58392002-09-30  Darin Adler  <darin@apple.com>
5840
5841	- fixed crashing part of 3063517 -- crash loading .png in separate window
5842
5843        * Plugins.subproj/WebPluginView.m:
5844        (-[WebNetscapePluginView start]): Don't try to start if the NPP_New is 0.
5845	This indicates the the plugin hasn't been loaded.
5846
58472002-09-30  Darin Adler  <darin@apple.com>
5848
5849        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setLoading:]):
5850	Remove extra quotes in use of ASSERT_ARG.
5851
58522002-09-29  Darin Adler  <darin@apple.com>
5853
5854        * Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase _iconForFileURL:withSize:]):
5855	Don't be case sensitive about filename extensions.
5856
5857        * Misc.subproj/WebDownloadHandler.m:
5858        * Misc.subproj/WebIconLoader.m:
5859        * Plugins.subproj/WebPluginStream.m:
5860        * WebView.subproj/WebDataSource.m:
5861        * WebView.subproj/WebDefaultContextMenuDelegate.m:
5862        * WebView.subproj/WebFrame.m:
5863        * WebView.subproj/WebFramePrivate.m:
5864        * WebView.subproj/WebView.m:
5865	Don't use WebFoundation.h -- faster building to just import what we really use.
5866
58672002-09-29  Chris Blumenberg  <cblu@apple.com>
5868
5869	Fixed: 2978258 - quake3arena.com sends me to the flash=false site
5870	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.
5871
5872	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 
5873starts. We now start plug-ins when they are added to the window.
5874
5875	Fixed: 3062224 - context menu includes "Download Item to Disk" for mailto links
5876
5877	- Fixed click then click and drag causes crash.
5878
5879        * Plugins.subproj/WebPluginView.m:
5880        (-[WebNetscapePluginView drawRect:]): don't start plug-in here
5881        (-[WebNetscapePluginView viewDidMoveToWindow]): start it here
5882        * WebView.subproj/WebDefaultContextMenuDelegate.m:
5883        (-[WebDefaultContextMenuDelegate contextMenuItemsForElement:defaultMenuItems:]): don't provide "Download Link To Disk" and "Open Link In New Window" items for URLs we cant handle.
5884        * WebView.subproj/WebHTMLView.m:
5885        (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): clean-up
5886        (-[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.
5887
58882002-09-28  Darin Adler  <darin@apple.com>
5889
5890        * WebView.subproj/WebDataSource.m: (-[WebDataSource initWithRequest:]):
5891	Catch a request that we can't use here instead of failing later.
5892
5893        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading]):
5894	Added an assert so the failure was less confusing; good idea to leave it in.
5895
58962002-09-28  Chris Blumenberg  <cblu@apple.com>
5897
5898	Support for latest Flash plug-in. It requests a javascript URL for every plug-in instance.
5899	Until javascript URLs work, we return an error to the plug-in. 
5900
5901	Fixed: 3035582 - flash animations don't work after upgrading flash
5902	Fixed: 3021936 - links in flash at foggypetronasracing.com doesn't work
5903
5904        * Plugins.subproj/WebPluginStream.h:
5905        * Plugins.subproj/WebPluginStream.m:
5906        (-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:]):
5907	Make the request here and return nil if we can't create a handle with it.
5908        (-[WebNetscapePluginStream dealloc]): release the request
5909        (-[WebNetscapePluginStream startLoad]): use the request when creating the handle
5910
59112002-09-28  Darin Adler  <darin@apple.com>
5912
5913        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge setNeedsLayout]): Added.
5914
59152002-09-27  Chris Blumenberg  <cblu@apple.com>
5916
5917	Fixed KJS crasher caused by nil plug-in returned from WebPlugin.
5918	Got the RealPlayer plug-in loaded, nothing playing yet.
5919
5920        * Plugins.subproj/WebPlugin.m:
5921        (-[WebNetscapePlugin getPluginInfo]): check for nil plug-in names/descriptions
5922        (-[WebNetscapePlugin stringByResolvingSymlinksAndAliasesInPath:]): new, resolves old-style aliases
5923        (-[WebNetscapePlugin initWithPath:]): call stringByResolvingSymlinksAndAliasesInPath
5924
59252002-09-27  Richard Williamson   <rjw@apple.com>
5926
5927        Fix 3058315:  crash in WebHTMLRepresentation receivedData:withDataSource
5928        http://www.u2.com/lite/ does some whacky things with its framset's onLoad
5929        handler.  The fix ensures that data isn't sent to the bridge once
5930        the bridge has been dealloced.
5931        
5932        * WebKit.pbproj/project.pbxproj: Nothing changed.  PB dorkiness.
5933        * WebView.subproj/WebHTMLRepresentation.m:
5934        (-[WebHTMLRepresentation receivedData:withDataSource:]):
5935
59362002-09-27  Chris Blumenberg  <cblu@apple.com>
5937
5938	Fixed: 3056559 - QT plugin doesn't load
5939	Fixed: 3042850 - Enable Java by default
5940
5941	Cleaned up WebPlugin and WebPluginDatabase.
5942
5943        * Plugins.subproj/WebPlugin.h:
5944        * Plugins.subproj/WebPlugin.m:
5945        (-[WebNetscapePlugin openResourceFile]):
5946        (-[WebNetscapePlugin closeResourceFile:]):
5947        (-[WebNetscapePlugin stringForStringListID:andIndex:]):
5948        (-[WebNetscapePlugin getPluginInfo]):
5949        (-[WebNetscapePlugin initWithPath:]):
5950        (-[WebNetscapePlugin load]):
5951        (-[WebNetscapePlugin unload]):
5952        (-[WebNetscapePlugin MIMEToExtensionsDictionary]):
5953        (-[WebNetscapePlugin extensionToMIMEDictionary]):
5954        (-[WebNetscapePlugin MIMEToDescriptionDictionary]):
5955        (-[WebNetscapePlugin description]):
5956        * Plugins.subproj/WebPluginDatabase.h:
5957        * Plugins.subproj/WebPluginDatabase.m:
5958        (-[WebNetscapePluginDatabase pluginForMIMEType:]):
5959        (-[WebNetscapePluginDatabase pluginForExtension:]):
5960        (-[WebNetscapePluginDatabase pluginForFilename:]):
5961        (-[WebNetscapePluginDatabase MIMETypes]):
5962        (-[WebNetscapePluginDatabase init]):
5963        * Plugins.subproj/WebPluginView.m:
5964        (-[WebNetscapePluginView setDataSource:]):
5965        * WebCoreSupport.subproj/WebViewFactory.m:
5966        (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
5967        (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
5968        * WebView.subproj/WebPreferences.m:
5969        (+[WebPreferences load]): Enable Java by default
5970
59712002-09-27  Richard Williamson   <rjw@apple.com>
5972
5973        Fixed 3060158:  REGRESSION: iframes added to session history
5974        Also moved setting title in history to WebKit.
5975        
5976        * History.subproj/WebHistory.h:
5977        * History.subproj/WebHistory.m:
5978        (+[WebHistory sharedHistory]):
5979        (+[WebHistory webHistoryWithFile:]):
5980        (-[WebHistory addEntryForURL:]):
5981        (-[WebHistory addEntries:]):
5982        * History.subproj/WebHistoryPrivate.h:
5983        * History.subproj/WebHistoryPrivate.m:
5984        * WebCoreSupport.subproj/WebBridge.m:
5985        (-[WebBridge requestedURL]):
5986        * WebView.subproj/WebDataSourcePrivate.m:
5987        (-[WebDataSource _setTitle:]):
5988        * WebView.subproj/WebFramePrivate.m:
5989        (-[WebFrame _transitionToCommitted]):
5990        * WebView.subproj/WebHTMLView.m:
5991        (-[WebHTMLView mouseDragged:]):
5992
59932002-09-26  Richard Williamson   <rjw@apple.com>
5994
5995        More twiddling.  Changed the color of the drag labels to
5996        match the favorites bar.
5997        
5998        * WebView.subproj/WebHTMLView.m:
5999        (-[WebHTMLView mouseDragged:]):
6000
60012002-09-27  Chris Blumenberg  <cblu@apple.com>
6002
6003	Added support for dragging links the the dock.
6004	Created new pasteboard types WebURLPboardType WebURLNamePboardType that the dock requires.
6005
6006        * Misc.subproj/WebNSPasteboardExtras.h:
6007        * Misc.subproj/WebNSPasteboardExtras.m:
6008        (+[NSPasteboard initialize]): set WebURLPboardType and WebURLNamePboardType
6009        (-[NSPasteboard _web_writeURL:andTitle:withOwner:]): use WebURLPboardType and WebURLNamePboardType
6010        * WebKit.exp: export WebURLPboardType and WebURLNamePboardType
6011
60122002-09-27  Maciej Stachowiak  <mjs@apple.com>
6013
6014        * Panels.subproj/WebAuthenticationPanel.m:
6015        (-[WebAuthenticationPanel setUpForRequest:]):
6016        (-[WebAuthenticationPanel runAsModalDialogWithRequest:]):
6017        (-[WebAuthenticationPanel sheetDidEnd:returnCode:contextInfo:]):
6018        * Panels.subproj/WebPanelAuthenticationHandler.h:
6019        * Panels.subproj/WebPanelAuthenticationHandler.m:
6020        (-[WebPanelAuthenticationHandler isReadyToStartAuthentication:]):
6021        (-[WebPanelAuthenticationHandler startAuthentication:]):
6022        (-[WebPanelAuthenticationHandler _authenticationDoneWithRequest:result:]):
6023
60242002-09-26  Darin Adler  <darin@apple.com>
6025
6026        * WebCoreSupport.subproj/WebBridge.m:
6027        (-[WebBridge receivedData:withDataSource:]): Use NSString for encoding.
6028        * WebView.subproj/WebController.h: Update names to use separate boolean
6029	for user agent and strings for text encodings instead of CFStringEncoding.
6030        * WebView.subproj/WebController.m:
6031        (-[WebController setCustomUserAgent:]): Name change.
6032        (-[WebController resetUserAgent]): Added.
6033        (-[WebController hasCustomUserAgent]): Added.
6034        (-[WebController customUserAgent]): Name change.
6035        (-[WebController setCustomTextEncodingName:]): Take NSString.
6036        (-[WebController resetTextEncoding]): Update for NSString.
6037        (-[WebController _mainFrameOverrideEncoding]): Ditto.
6038        (-[WebController hasCustomTextEncoding]): Ditto.
6039        (-[WebController customTextEncodingName]): Return NSString.
6040
6041        * WebView.subproj/WebDataSourcePrivate.h: Use NSString instead of
6042	CFStringEncoding.
6043        * WebView.subproj/WebDataSourcePrivate.m:
6044        (-[WebDataSourcePrivate init]): No need to init.
6045        (-[WebDataSource _setContentType:]): Copy, don't retain.
6046        (-[WebDataSource _setEncoding:]): Copy, don't retain.
6047        (-[WebDataSource _setOverrideEncoding:]): Use NSString.
6048        (-[WebDataSource _overrideEncoding]): Use NSString.
6049
6050        * WebView.subproj/WebFramePrivate.h: Use NSString.
6051        * WebView.subproj/WebFramePrivate.m:
6052        (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]): Use NSString.
6053
6054        * WebView.subproj/WebPreferences.h: Use NSString instead of
6055	CFStringEncoding.
6056        * WebView.subproj/WebPreferences.m:
6057        (+[WebPreferences load]): Use NSString.
6058        (-[WebPreferences defaultTextEncodingName]): Use NSString.
6059        (-[WebPreferences setDefaultTextEncodingName:]): Use NSString.
6060
60612002-09-26  Chris Blumenberg  <cblu@apple.com>
6062
6063	Made WebTextView super-private.
6064
6065        * WebKit.pbproj/project.pbxproj:
6066
60672002-09-26  Richard Williamson   <rjw@apple.com>
6068
6069        Use a rectangle with rounded corners for dragged label.
6070        Put a subtle shadow behind text in label.
6071        
6072        * WebView.subproj/WebHTMLView.m:
6073        (-[WebHTMLView mouseDragged:]):
6074
60752002-09-26  Chris Blumenberg  <cblu@apple.com>
6076
6077	- When dragging an image, use the image itself for the drag image
6078	- Support promised file and image data drag types for dragged images.
6079
6080        * Misc.subproj/WebNSImageExtras.h: Added.
6081        * Misc.subproj/WebNSImageExtras.m: Added.
6082        (-[NSImage _web_scaleToMaxSize:]): new, scales an image is greater than max
6083        (-[NSImage _web_dissolveToFraction:]): new, dissolves image in place
6084        * WebKit.pbproj/project.pbxproj:
6085        * WebView.subproj/WebController.h: Added WebElementImageLocationKey to the element dictionary
6086        * WebView.subproj/WebController.m: ditto
6087        * WebView.subproj/WebHTMLView.m:
6088        (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): subclassed for only for image drags
6089        (-[WebHTMLView mouseDragged:]): use the promised file api again.
6090        (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): use the retained element dictionary instead of the dragged URL which I deleted.
6091        * WebView.subproj/WebHTMLViewPrivate.h:
6092
6093=== Alexander-25 ===
6094
60952002-09-25  Richard Williamson   <rjw@apple.com>
6096
6097        API tweaks.
6098        * Misc.subproj/WebKit.h:
6099        Added headers.
6100        
6101        * Misc.subproj/WebKitErrors.h:
6102        Removed #defines.
6103        
6104        * WebView.subproj/WebDataSource.h:
6105        * WebView.subproj/WebDataSource.m:
6106        * WebView.subproj/WebDataSourcePrivate.m:
6107        (-[WebDataSource _startLoading]):
6108        (-[WebDataSource _loadIcon]):
6109        * WebView.subproj/WebDefaultContextMenuDelegate.m:
6110        (-[WebDefaultContextMenuDelegate contextMenuItemsForElement:defaultMenuItems:]):
6111        Removed isMainDocument.
6112        
6113        Moved errors string #defines here.
6114        * WebView.subproj/WebView.m:
6115
61162002-09-25  John Sullivan  <sullivan@apple.com>
6117
6118	- fixed 3060773 -- Wrong title proposed when image link 
6119	dropped on favorites bar
6120
6121        * WebView.subproj/WebHTMLView.m:
6122        (-[WebHTMLView mouseDragged:]): Claim the pasteboard (via
6123	declareTypes:) before putting data on it.
6124
61252002-09-25  Richard Williamson   <rjw@apple.com>
6126
6127        API and documentation tweaks.
6128        
6129        WebDocumentDragSettings:  canDrag -> acceptsDrag
6130        WebDataSource:  removed originalURL
6131        WebStandardPanels:  use -> uses
6132        
6133        * History.subproj/WebBackForwardList.h:
6134        * Misc.subproj/WebDownloadHandler.m:
6135        (-[WebDownloadHandler initWithDataSource:]):
6136        * Panels.subproj/WebStandardPanels.h:
6137        * Panels.subproj/WebStandardPanels.m:
6138        (-[WebStandardPanels setUsesStandardAuthenticationPanel:]):
6139        (-[WebStandardPanels usesStandardAuthenticationPanel]):
6140        * Plugins.subproj/WebPluginView.m:
6141        (-[WebNetscapePluginView frameStateChanged:]):
6142        * WebCoreSupport.subproj/WebSubresourceClient.m:
6143        (-[WebSubresourceClient cancel]):
6144        * WebView.subproj/WebController.h:
6145        * WebView.subproj/WebDataSource.h:
6146        * WebView.subproj/WebDataSourcePrivate.m:
6147        (-[WebDataSource _commitIfReady]):
6148        * WebView.subproj/WebDocument.h:
6149        * WebView.subproj/WebFrame.m:
6150        (-[WebFrame setProvisionalDataSource:]):
6151        (-[WebFrame startLoading]):
6152        * WebView.subproj/WebFramePrivate.m:
6153        (-[WebFrame _transitionToCommitted]):
6154        (-[WebFrame _setState:]):
6155        (-[WebFrame _goToItem:withFrameLoadType:]):
6156        * WebView.subproj/WebHTMLView.m:
6157        (-[WebHTMLView setAcceptsDrags:]):
6158        (-[WebHTMLView acceptsDrags]):
6159        (-[WebHTMLView setAcceptsDrops:]):
6160        (-[WebHTMLView acceptsDrops]):
6161        * WebView.subproj/WebImageView.m:
6162        (-[WebImageView setAcceptsDrags:]):
6163        (-[WebImageView acceptsDrags]):
6164        (-[WebImageView setAcceptsDrops:]):
6165        (-[WebImageView acceptsDrops]):
6166        * WebView.subproj/WebLoadProgress.h:
6167        * WebView.subproj/WebLocationChangeDelegate.h:
6168        * WebView.subproj/WebMainResourceClient.m:
6169        (-[WebMainResourceClient didCancelWithHandle:]):
6170        * WebView.subproj/WebView.h:
6171
61722002-09-25  Ken Kocienda  <kocienda@apple.com>
6173
6174        Changes to move the WebResourceHandle API closer to the
6175        specified design. This includes:
6176
6177        - Removed loadInBackground method from the public interface.
6178        - Start asynchronous loading in WebResourceHandle init method. This required some
6179	  code reorganization in callers.
6180        - Remove loadInForeground: from WebResourceHandle interface.
6181        - Move WebResourceHandle callback deferral methods to SPI header file.
6182        - Change name of WebResourceHandle cancelLoadInBackground method to cancel.
6183
6184        * Misc.subproj/WebIconLoader.m:
6185        (-[WebIconLoader startLoading])
6186        (-[WebIconLoader stopLoading])
6187        * Plugins.subproj/WebPluginStream.m:
6188        (-[WebNetscapePluginStream startLoad])
6189        (-[WebNetscapePluginStream cancel])
6190        * WebCoreSupport.subproj/WebSubresourceClient.m:
6191        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:])
6192        (-[WebSubresourceClient cancel])
6193        * WebView.subproj/WebDataSourcePrivate.m:
6194        (-[WebDataSource _startLoading])
6195        (-[WebDataSource _addSubresourceClient:])
6196        (-[WebDataSource _stopLoading])
6197        (-[WebDataSource _defersCallbacksChanged])
6198        * WebView.subproj/WebMainResourceClient.m:
6199        (-[WebMainResourceClient handle:didReceiveData:])
6200
62012002-09-25  Chris Blumenberg  <cblu@apple.com>
6202
6203	Fixed: 3050665 - REGRESSION: mp3 audio loads and plays, but no progress or play control is visible
6204
6205        * Plugins.subproj/WebPluginView.h:
6206        * Plugins.subproj/WebPluginView.m:
6207        (-[WebNetscapePluginView setNeedsLayout:]):
6208        (-[WebNetscapePluginView layout]):
6209        (-[WebNetscapePluginView drawRect:]):
6210
62112002-09-25  Darin Adler  <darin@apple.com>
6212
6213	Make the "set aside subviews" logic stronger so it can handle a display
6214	while inside drawRect. But note, this recursive display is most likely
6215	the cause of the redrawing problems we have while resizing, like bug 2969367.
6216
6217        * WebView.subproj/WebHTMLView.m:
6218        (-[WebHTMLView drawRect:]): Restore views and then set them aside again, but don't
6219	leave the "views set aside" boolean set.
6220        * WebView.subproj/WebHTMLViewPrivate.h: Add private _setAsideSubviews and _restoreSubviews methods.
6221        * WebView.subproj/WebHTMLViewPrivate.m:
6222        (-[WebHTMLView _setAsideSubviews]): Added.
6223        (-[WebHTMLView _restoreSubviews]): Added.
6224        (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
6225	Use the new _setAsideSubviews and _restoreSubviews methods.
6226        (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]): Ditto.
6227
62282002-09-25  Ken Kocienda  <kocienda@apple.com>
6229
6230        Removed this method from WebResourceHandle:
6231
6232        +(BOOL)canInitWithURL:(NSURL *)theURL;
6233
6234        replaced with:
6235
6236        +(BOOL)canInitWithRequest:(WebResourceRequest *)request;
6237
6238	Callers have been updated to reflect the change.
6239
6240        * WebView.subproj/WebDefaultPolicyDelegate.m:
6241        (+[WebDefaultPolicyDelegate defaultURLPolicyForURL:])
6242        * WebView.subproj/WebFramePrivate.m:
6243        (-[WebFrame _shouldShowURL:])
6244
62452002-09-25  Ken Kocienda  <kocienda@apple.com>
6246
6247        More moves to the new WebResourceHandleDelegate API.   
6248
6249        This change moves all WebResourceHandleDelegate implementors to:
6250
6251        -(void)handle:(WebResourceHandle *)handle didReceiveData:(NSData *)data;
6252
6253        * Misc.subproj/WebIconLoader.m:
6254        (-[WebIconLoader handle:didReceiveData:])
6255        * Plugins.subproj/WebPluginStream.m:
6256        (-[WebNetscapePluginStream handle:didReceiveData:])
6257        * WebCoreSupport.subproj/WebSubresourceClient.m:
6258        (-[WebSubresourceClient handle:didReceiveData:])
6259        * WebView.subproj/WebMainResourceClient.m:
6260        (-[WebMainResourceClient handle:didReceiveData:])
6261
62622002-09-25  Ken Kocienda  <kocienda@apple.com>
6263
6264        Moving to the new WebResourceHandleDelegate API.
6265
6266        This change moves all WebResourceHandleDelegate implementors to:
6267
6268        - (void)handle:(WebResourceHandle *)handle didFailLoadingWithError:(WebError *)result;
6269
6270        * Misc.subproj/WebIconLoader.m:
6271        (-[WebIconLoader handle:didFailLoadingWithError:])
6272        * Plugins.subproj/WebPluginStream.m:
6273        (-[WebNetscapePluginStream handle:didFailLoadingWithError:])
6274        * WebCoreSupport.subproj/WebSubresourceClient.m:
6275        (-[WebSubresourceClient handle:didFailLoadingWithError:])
6276        * WebView.subproj/WebMainResourceClient.m:
6277        (-[WebMainResourceClient handle:didFailLoadingWithError:])
6278
62792002-09-25  Ken Kocienda  <kocienda@apple.com>
6280
6281        Begin change from WebResourceClient to WebResourceHandleDelegate.
6282        In this step, I have just changed the name of the protocol; the
6283        protocol interface is the same. 
6284
6285	I made other cosmetic changes to variable names and such.
6286
6287        * Misc.subproj/WebIconLoader.h:
6288        * Misc.subproj/WebIconLoader.m:
6289        (-[WebIconLoader startLoading])
6290        * Plugins.subproj/WebPluginStream.m:
6291        (-[WebNetscapePluginStream startLoad])
6292        * WebCoreSupport.subproj/WebBridge.m:
6293        (-[WebBridge objectLoadedFromCache:size:])
6294        * WebCoreSupport.subproj/WebSubresourceClient.h:
6295        * WebCoreSupport.subproj/WebSubresourceClient.m:
6296        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:])
6297        * WebView.subproj/WebDataSourcePrivate.m:
6298        (-[WebDataSource _startLoading])
6299        * WebView.subproj/WebMainResourceClient.h:
6300
63012002-09-25  Maciej Stachowiak  <mjs@apple.com>
6302
6303	- fixed 2854536 - New cookie policy: "accept cookies only from the
6304	same domain as the main page"
6305	
6306        * WebCoreSupport.subproj/WebCookieAdapter.h:
6307        * WebCoreSupport.subproj/WebCookieAdapter.m:
6308        (-[WebCookieAdapter setCookies:forURL:policyBaseURL:]):
6309        * WebCoreSupport.subproj/WebSubresourceClient.m:
6310        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
6311        (-[WebSubresourceClient handleDidRedirect:toURL:]):
6312        * WebView.subproj/WebDataSourcePrivate.m:
6313        (-[WebDataSource _startLoading]):
6314        * WebView.subproj/WebMainResourceClient.m:
6315        (-[WebMainResourceClient handleDidRedirect:toURL:]):
6316
63172002-09-24  Richard Williamson   <rjw@apple.com>
6318
6319        More documentation tweaks.
6320        
6321        * History.subproj/WebHistory.h:
6322        * History.subproj/WebHistoryItem.h:
6323        * WebView.subproj/WebContextMenuDelegate.h:
6324        * WebView.subproj/WebControllerPolicyDelegate.h:
6325        * WebView.subproj/WebLocationChangeDelegate.h:
6326        * WebView.subproj/WebResourceProgressDelegate.h:
6327
63282002-09-24  Darin Adler  <darin@apple.com>
6329
6330	- fixed 3059513 -- REGRESSION: Scrolling to fragment doesn't work
6331
6332	Turns out it was better to just put the extra smarts into the clip view
6333	that we are already creating. Making WebHTMLView be a second clip view
6334	was silly and broke things.
6335
6336        * WebView.subproj/WebView.m: (-[WebView initWithFrame:]): Create a WebClipView
6337	and use it as the content view rather than the NSClipView created by default.
6338
6339        * WebKit.pbproj/project.pbxproj: Added WebClipView.
6340        * WebView.subproj/WebClipView.h: Added.
6341        * WebView.subproj/WebClipView.m: Added.
6342
6343        * WebView.subproj/WebHTMLView.h: Don't be a subclass of NSClipView any more.
6344        * WebView.subproj/WebHTMLView.m:
6345        (-[WebHTMLView drawRect:]): Call setAdditionalClip and resetAdditionalClip on
6346	the clip view.
6347
6348        * WebView.subproj/WebHTMLViewPrivate.h: Remove inDrawRect and drawRect.
6349        * WebView.subproj/WebHTMLViewPrivate.m: Remove visibleRect override. This is
6350	now in WebClipView.
6351
63522002-09-24  Chris Blumenberg  <cblu@apple.com>
6353
6354	More documentation changes.
6355
6356        * WebView.subproj/WebControllerPolicyDelegate.h:
6357        * WebView.subproj/WebDefaultContextMenuDelegate.h:
6358        * WebView.subproj/WebDocument.h:
6359
63602002-09-24  Richard Williamson   <rjw@apple.com>
6361
6362        Added FIXME note about unresolved issue with CFStringEncoding/NSStringEncoding.
6363        
6364        * WebView.subproj/WebController.h:
6365
63662002-09-24  Richard Williamson   <rjw@apple.com>
6367
6368        Documentation for WebDataSource and WebFrame.
6369        
6370        * WebView.subproj/WebDataSource.h:
6371        * WebView.subproj/WebDataSource.m:
6372        (-[WebDataSource frameExists:]):
6373        * WebView.subproj/WebDataSourcePrivate.h:
6374        * WebView.subproj/WebDataSourcePrivate.m:
6375        (-[WebDataSource addFrame:]):
6376        * WebView.subproj/WebFrame.h:
6377
63782002-09-24  Darin Adler  <darin@apple.com>
6379
6380	- fixed 3059266 -- REGRESSION: clicking in web view when location field is
6381	focused does not focus web view
6382
6383        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView needsPanelToBecomeKey]):
6384	Must override this to return YES, because NSClipView makes it return NO
6385	even though we accept the first responder.
6386
63872002-09-24  John Sullivan  <sullivan@apple.com>
6388
6389	- fixed 3056158 -- REGRESSION: Page up/down should scroll one 
6390	whole contentView minus at least one readable line of text
6391
6392	This was broken a while back when the keyboard scrolling code
6393	migrated into WebKit.
6394
6395        * WebView.subproj/WebViewPrivate.m:
6396        (-[WebView _verticalKeyboardScrollAmount]),
6397        (-[WebView _horizontalKeyboardScrollAmount]):
6398	New private methods, return one arrow key's worth of scrolling.
6399        (-[WebView _scrollLineVertically:]),
6400        (-[WebView _scrollLineHorizontally:]):
6401	Now use the broken-out methods.
6402        (-[WebView _pageVertically:]),
6403        (-[WebView _pageHorizontally:]):
6404	overlap by one arrow key's worth of scrolling instead of the
6405	teensy-weensy one click's worth.
6406
64072002-09-24  Chris Blumenberg  <cblu@apple.com>
6408
6409	Documentation for WebHTMLView
6410
6411        * WebView.subproj/WebHTMLView.h:
6412
64132002-09-24  Richard Williamson   <rjw@apple.com>
6414
6415        Documentation changes.  Removal of imports from
6416        some headers required modification of .m.
6417        
6418        * Plugins.subproj/WebNullPluginView.m:
6419        * WebCoreSupport.subproj/WebBridge.m:
6420        * WebKit.pbproj/project.pbxproj:
6421        * WebView.subproj/WebController.h:
6422        * WebView.subproj/WebController.m:
6423        * WebView.subproj/WebDataSource.h:
6424        * WebView.subproj/WebDataSourcePrivate.h:
6425        * WebView.subproj/WebDataSourcePrivate.m:
6426        * WebView.subproj/WebDefaultPolicyDelegate.h:
6427        * WebView.subproj/WebDefaultPolicyDelegate.m:
6428        (+[WebDefaultPolicyDelegate defaultURLPolicyForURL:]):
6429        (-[WebDefaultPolicyDelegate URLPolicyForURL:inFrame:]):
6430        * WebView.subproj/WebFramePrivate.m:
6431        * WebView.subproj/WebHTMLViewPrivate.m:
6432
64332002-09-24  Chris Blumenberg  <cblu@apple.com>
6434
6435	Renamed element info keys to WebElement* instead of WebContextMenuElement*
6436	Added WebKit API documentation
6437
6438        * Plugins.subproj/WebPlugin.m:	
6439        (-[WebNetscapePlugin load]): clean-up
6440        * WebKit.exp:
6441        * WebKit.pbproj/project.pbxproj:
6442        * WebView.subproj/WebContextMenuDelegate.h:
6443        * WebView.subproj/WebController.h:
6444        * WebView.subproj/WebController.m:
6445        * WebView.subproj/WebControllerPolicyDelegate.h:
6446        * WebView.subproj/WebDefaultContextMenuDelegate.h:
6447        * WebView.subproj/WebDefaultContextMenuDelegate.m:
6448        (-[WebDefaultContextMenuDelegate contextMenuItemsForElement:defaultMenuItems:]):
6449        (-[WebDefaultContextMenuDelegate openNewWindowWithURL:referrer:]):
6450        (-[WebDefaultContextMenuDelegate downloadURL:]):
6451        (-[WebDefaultContextMenuDelegate openLinkInNewWindow:]):
6452        (-[WebDefaultContextMenuDelegate downloadLinkToDisk:]):
6453        (-[WebDefaultContextMenuDelegate copyLinkToClipboard:]):
6454        (-[WebDefaultContextMenuDelegate openImageInNewWindow:]):
6455        (-[WebDefaultContextMenuDelegate downloadImageToDisk:]):
6456        (-[WebDefaultContextMenuDelegate copyImageToClipboard:]):
6457        (-[WebDefaultContextMenuDelegate openFrameInNewWindow:]):
6458        * WebView.subproj/WebHTMLView.m:
6459        (-[WebHTMLView mouseDragged:]):
6460        * WebView.subproj/WebHTMLViewPrivate.m:
6461        (-[WebHTMLView _elementAtPoint:]):
6462
64632002-09-24  Darin Adler  <darin@apple.com>
6464
6465	Cleaned up some loose ends from adding setNeedsLayout to the WebDocumentView
6466	protocol. Was causing exceptions.
6467
6468        * Plugins.subproj/WebPluginView.m: (-[WebNetscapePluginView setNeedsLayout:]):
6469        * WebView.subproj/WebTextView.m: (-[WebTextView setNeedsLayout:]):
6470	Added missing stubs.
6471
6472        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge setNeedsReapplyStyles]):
6473	Removed unneeded cast.
6474        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _isLoadComplete]): Remove an
6475	unneeded cast and call to isDocumentHTML.
6476        * WebView.subproj/WebHTMLView.h: No need to re-declare setNeedsLayout.
6477        * WebView.subproj/WebView.m: (-[WebView setFrame:]): Get rid of unneeded check
6478	of isDocumentHTML.
6479
64802002-09-24  Darin Adler  <darin@apple.com>
6481
6482	- fixed 3057383 -- focus rectangles are being drawn multiple times
6483	- fixed 3051025 -- focus ring on password field gets darker and darker
6484
6485	To make focus rings clip too, we have to do more than just set the clip.
6486	We also have to set the visible rectangle to make clipping happen, and we
6487	need to be a subclass of NSClipView so that the focus ring drawing code will
6488	consult us rather than one of our superviews.
6489
6490        * WebView.subproj/WebHTMLView.h: Be a subclass of NSClipView.
6491        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]): Set a inDrawRect
6492	flag, and a drawRect rectangle. This tells us to clip to this rectangle.
6493	what we need to clip to.
6494        * WebView.subproj/WebHTMLViewPrivate.h: Added inDrawRect and drawRect.
6495        * WebView.subproj/WebHTMLViewPrivate.m:
6496        (-[WebHTMLView visibleRect]): Clip the visible rect based on the drawRect while
6497	inDrawRect is set.
6498
64992002-09-23  Chris Blumenberg  <cblu@apple.com>
6500
6501	Factored URL pasteboard initialization to 1 place.
6502	Fixed: 3048924 - regression: drag & drop broken for initial empty page
6503	Fixed: 3045997 - Dragging a link from one Alex window to another one doesn't work
6504
6505        * Misc.subproj/WebNSPasteboardExtras.h:
6506        * Misc.subproj/WebNSPasteboardExtras.m:
6507        (-[NSPasteboard _web_writeURL:andTitle:withOwner:]): new
6508        * WebView.subproj/WebDefaultContextMenuDelegate.m:
6509        (-[WebDefaultContextMenuDelegate copyLinkToClipboard:]): call -[NSPasteboard _web_writeURL:andTitle:withOwner:]
6510        * WebView.subproj/WebHTMLView.m:
6511        (-[WebHTMLView mouseDragged:]): call -[NSPasteboard _web_writeURL:andTitle:withOwner:]
6512        * WebView.subproj/WebView.m:
6513        (-[WebView draggingEntered:]): handle nil cases
6514
65152002-09-23  Maciej Stachowiak  <mjs@apple.com>
6516
6517	Added documentation for these two delegate protocols.
6518	
6519        * WebView.subproj/WebLocationChangeDelegate.h:
6520        * WebView.subproj/WebResourceProgressDelegate.h:
6521
65222002-09-23  Richard Williamson   <rjw@apple.com>
6523
6524        Made WebIconLoader and WebIconDatabase SPI.
6525        
6526        * WebKit.pbproj/project.pbxproj:
6527
65282002-09-23  Richard Williamson   <rjw@apple.com>
6529
6530        WebContextMenuHandler becomes WebContextMenuDelegate
6531        WebControllerPolicyHandler becomes WebControllerPolicyDelegate
6532        WebLocationChangeHandler becomes WebLocationChangeDelegate
6533        WebResourceProgressHandler becomes WebResourceProgressDelegate
6534        WebWindowContext becomes WebWindowOperationsDelegate
6535
6536        * Misc.subproj/WebDownloadHandler.m:
6537        * Plugins.subproj/WebNullPluginView.m:
6538        (-[WebNullPluginView drawRect:]):
6539        * Plugins.subproj/WebPluginView.m:
6540        (-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:]):
6541        (-[WebNetscapePluginView status:]):
6542        * WebCoreSupport.subproj/WebBridge.m:
6543        (-[WebBridge openNewWindowWithURL:referrer:frameName:]):
6544        (-[WebBridge areToolbarsVisible]):
6545        (-[WebBridge setToolbarsVisible:]):
6546        (-[WebBridge isStatusBarVisible]):
6547        (-[WebBridge setStatusBarVisible:]):
6548        (-[WebBridge setWindowFrame:]):
6549        (-[WebBridge window]):
6550        (-[WebBridge setStatusText:]):
6551        (-[WebBridge reportClientRedirectTo:delay:fireDate:]):
6552        (-[WebBridge reportClientRedirectCancelled]):
6553        * WebKit.exp:
6554        * WebKit.pbproj/project.pbxproj:
6555        * WebView.subproj/WebContextMenuDelegate.h:
6556        * WebView.subproj/WebContextMenuHandler.h: Removed.
6557        * WebView.subproj/WebController.h:
6558        * WebView.subproj/WebController.m:
6559        (-[WebController setWindowOperationsDelegate:]):
6560        (-[WebController windowOperationsDelegate]):
6561        (-[WebController setResourceProgressDelegate:]):
6562        (-[WebController resourceProgressDelegate]):
6563        (-[WebController setDownloadProgressDelegate:]):
6564        (-[WebController downloadProgressDelegate]):
6565        (-[WebController setContextMenuDelegate:]):
6566        (-[WebController contextMenuDelegate]):
6567        (-[WebController setPolicyDelegate:]):
6568        (-[WebController policyDelegate]):
6569        (-[WebController setLocationChangeDelegate:]):
6570        (-[WebController locationChangeDelegate]):
6571        * WebView.subproj/WebControllerPolicyDelegate.m: Added.
6572        (-[WebPolicyPrivate dealloc]):
6573        (-[WebPolicy _setPolicyAction:]):
6574        (-[WebPolicy policyAction]):
6575        (-[WebPolicy path]):
6576        (-[WebPolicy URL]):
6577        (-[WebPolicy _setPath:]):
6578        (-[WebPolicy dealloc]):
6579        (+[WebURLPolicy webPolicyWithURLAction:]):
6580        (+[WebFileURLPolicy webPolicyWithFileAction:]):
6581        (+[WebContentPolicy webPolicyWithContentAction:andPath:]):
6582        * WebView.subproj/WebControllerPolicyDelegatePrivate.h:
6583        * WebView.subproj/WebControllerPolicyHandler.h: Removed.
6584        * WebView.subproj/WebControllerPolicyHandler.m: Removed.
6585        * WebView.subproj/WebControllerPolicyHandlerPrivate.h: Removed.
6586        * WebView.subproj/WebControllerPrivate.h:
6587        * WebView.subproj/WebControllerPrivate.m:
6588        (-[WebControllerPrivate init]):
6589        (-[WebControllerPrivate dealloc]):
6590        (-[WebController _defaultContextMenuDelegate]):
6591        (-[WebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
6592        (-[WebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
6593        (-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
6594        (-[WebController _mainReceivedError:forResourceHandle:partialProgress:fromDataSource:]):
6595        * WebView.subproj/WebDataSourcePrivate.m:
6596        (-[WebDataSource _startLoading]):
6597        (-[WebDataSource _setTitle:]):
6598        (-[WebDataSource _setURL:]):
6599        (-[WebDataSource _loadIcon]):
6600        * WebView.subproj/WebDefaultContextMenuDelegate.h:
6601        * WebView.subproj/WebDefaultContextMenuDelegate.m:
6602        (-[WebDefaultContextMenuDelegate openNewWindowWithURL:referrer:]):
6603        (-[WebDefaultContextMenuDelegate downloadURL:]):
6604        * WebView.subproj/WebDefaultContextMenuHandler.h: Removed.
6605        * WebView.subproj/WebDefaultContextMenuHandler.m: Removed.
6606        * WebView.subproj/WebDefaultPolicyDelegate.h:
6607        * WebView.subproj/WebDefaultPolicyDelegate.m:
6608        * WebView.subproj/WebDefaultPolicyHandler.h: Removed.
6609        * WebView.subproj/WebDefaultPolicyHandler.m: Removed.
6610        * WebView.subproj/WebDocument.h:
6611        * WebView.subproj/WebFrame.m:
6612        (-[WebFrame setProvisionalDataSource:]):
6613        (-[WebFrame frameNamed:]):
6614        * WebView.subproj/WebFramePrivate.m:
6615        (-[WebFrame _timedLayout:]):
6616        (-[WebFrame _transitionToCommitted]):
6617        (-[WebFrame _isLoadComplete]):
6618        (-[WebFrame handleUnimplementablePolicy:errorCode:forURL:]):
6619        (-[WebFrame _shouldShowURL:]):
6620        * WebView.subproj/WebHTMLView.m:
6621        (-[WebHTMLView menuForEvent:]):
6622        * WebView.subproj/WebHTMLViewPrivate.m:
6623        (-[WebHTMLView _continueAfterClickPolicyForEvent:]):
6624        * WebView.subproj/WebImageView.m:
6625        (-[WebImageView setNeedsLayout:]):
6626        * WebView.subproj/WebLocationChangeDelegate.h:
6627        * WebView.subproj/WebLocationChangeDelegate.m:
6628        * WebView.subproj/WebLocationChangeHandler.h: Removed.
6629        * WebView.subproj/WebLocationChangeHandler.m: Removed.
6630        * WebView.subproj/WebMainResourceClient.h:
6631        * WebView.subproj/WebMainResourceClient.m:
6632        (-[WebMainResourceClient dealloc]):
6633        (-[WebMainResourceClient receivedProgressWithHandle:complete:]):
6634        (-[WebMainResourceClient receivedError:forHandle:]):
6635        (-[WebMainResourceClient handleDidReceiveData:data:]):
6636        * WebView.subproj/WebResourceProgressDelegate.h:
6637        * WebView.subproj/WebResourceProgressHandler.h: Removed.
6638        * WebView.subproj/WebView.m:
6639        (-[WebView window]):
6640        * WebView.subproj/WebWindowContext.h: Removed.
6641        * WebView.subproj/WebWindowOperationsDelegate.h:
6642
66432002-09-23  Darin Adler  <darin@apple.com>
6644
6645	- fixed 3052543 -- iframes don't work with z-index
6646	- fixed 3057382 -- code to prevent subviews from drawing not working
6647	perfectly for subframes
6648
6649        * WebView.subproj/WebHTMLView.m:
6650        (-[WebHTMLView isOpaque]): Change this back to always return YES. We handle
6651	this issue at another level now.
6652        (-[WebHTMLView drawRect:]): Clip to the passed-in rect. This was the big change
6653	that fixed most of the trouble.
6654
6655        * WebView.subproj/WebHTMLViewPrivate.h: Remove _isMainFrame.
6656        * WebView.subproj/WebHTMLViewPrivate.m:
6657        (+[WebHTMLView initialize]): Add an imposter for NSView too, so we can make opaqueAncestor
6658	do what we need it to do. This will only work if the application doesn't also poseAsClass
6659	NSView, but it does work.
6660        (-[WebNSView opaqueAncestor]): Always return the topmost WebHTMLView if the object is
6661	inside one, even if there is an intervening opaque object.
6662
6663        * WebView.subproj/WebView.m:
6664        (-[WebView setFrame:]): Do the display call at the window level so the topmost WebHTMLView
6665	always gets involved.
6666        * WebView.subproj/WebViewPrivate.h: Remove _controller, since we already have a public
6667	controller method. Add _isMainFrame.
6668        * WebView.subproj/WebViewPrivate.m: (-[WebView _isMainFrame]): Added.
6669
66702002-09-23  Maciej Stachowiak  <mjs@apple.com>
6671
6672        * Panels.subproj/WebStandardPanels.h: Added inline header docs.
6673
66742002-09-23  Maciej Stachowiak  <mjs@apple.com>
6675
6676        * WebView.subproj/WebWindowContext.h: Added inline header docs.
6677
66782002-09-23  Ken Kocienda  <kocienda@apple.com>
6679
6680	Fixes for some build problems I missed earlier due to the fact that PB can't handle header dependencies,
6681	and I did not do a clean build of WebKit.
6682
6683        * Plugins.subproj/WebPluginStream.m:
6684        (-[WebNetscapePluginStream receivedError:withDataSource:]): WebFoundation error constant name change.
6685        (-[WebNetscapePluginStream cancel]): Ditto.
6686        * WebCoreSupport.subproj/WebCookieAdapter.m:
6687        (-[WebCookieAdapter cookiesEnabled]): Modified to use [[WebCookieManager sharedCookieManager] acceptPolicy]
6688	rather than reaching down into CFPreferences directly.
6689        * WebCoreSupport.subproj/WebSubresourceClient.m:
6690        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]): WebFoundation error constant name change.
6691        (-[WebSubresourceClient cancel]): Ditto.
6692        * WebView.subproj/WebMainResourceClient.m:
6693        (-[WebMainResourceClient didCancelWithHandle:]): Ditto.
6694
66952002-09-23  Darin Adler  <darin@apple.com>
6696
6697        * WebView.subproj/WebHTMLViewPrivate.m:
6698        (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
6699	Don't special case the top level frame's view so much.
6700        (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]): Ditto.
6701        (-[NSView _web_propagateDirtyRectToAncestor]): Use public method here instead of private.
6702
67032002-09-23  Ken Kocienda  <kocienda@apple.com>
6704
6705        * WebCoreSupport.subproj/WebBridge.m:
6706        (-[WebBridge reportBadURL:]): WebFoundation error code constant name change
6707        * WebView.subproj/WebView.m:
6708        (+[WebView initialize]): WebError addErrorsFromDictionary changed to addErrorsWithCodesAndDescriptions
6709
67102002-09-22  Darin Adler  <darin@apple.com>
6711
6712	- fixed 3057380 -- insertion point shows through elements in front of text fields
6713
6714        * WebView.subproj/WebHTMLViewPrivate.m:
6715        (+[WebHTMLView initialize]): Make WebNSTextView pose as NSTextView.
6716        (-[WebNSTextView _web_inHTMLView]): Helper method.
6717        (-[WebNSTextView isOpaque]): Override to return NO for all text views that are inside
6718	an WebHTMLView, so they don't try to do insertion point caching.
6719        (-[WebNSTextView drawInsertionPointInRect:color:turnedOn:]): Use setNeedsDisplayInRect
6720	to trigger insertion point drawing outside drawRect instead of drawing right away.
6721        (-[WebNSTextView _drawRect:clip:]): Set flag so the above can know when it's inside
6722	drawRect and when it's not.
6723
67242002-09-21  Darin Adler  <darin@apple.com>
6725
6726	WebKit part of the new approach to AppKit drawing control.
6727	Works better than the previous try. Once we fix anomalies with focus rectangles
6728	and a some remaining problems with subframes this should work perfectly.
6729
6730        * WebView.subproj/WebHTMLView.m:
6731        (-[WebHTMLView isOpaque]): Return NO for frames other than the main frame.
6732        (-[WebHTMLView drawRect:]): Restore the subviews that were set aside.
6733        * WebView.subproj/WebHTMLViewPrivate.h: Add _isMainFrame. Add savedSubviews and subviewsSetAside.
6734        * WebView.subproj/WebHTMLViewPrivate.m:
6735        (-[WebHTMLView _isMainFrame]): Added.
6736        (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
6737	Added. If this is the main frame, get all the dirty rects from the subviews and then set
6738	them aside so the AppKit machinery won't draw them.
6739        (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]): Ditto.
6740        (-[NSView _web_propagateDirtyRectToAncestor]): Added. Propagates dirty rects the same
6741	way that AppKit does, but always does it, ignoring the value of isOpaque.
6742
67432002-09-20  Darin Adler  <darin@apple.com>
6744
6745        * History.subproj/WebHistory.m: (-[WebHistory addEntryForURLString:]):
6746	Use _web_URLWithString so we can handle unusual characters.
6747
6748        * WebView.subproj/WebDefaultPolicyHandler.m: Remove stray semicolon.
6749
67502002-09-20  Chris Blumenberg  <cblu@apple.com>
6751
6752	Fixed wasteful memory usage in the WebIconDatabase:
6753	- Rather than have multiple NSImages with multiple representations at multiple sizes, have 1 NSImage per size
6754	- Added API to allow client to control memory caching
6755
6756        * Misc.subproj/WebIconDatabase.h:
6757        * Misc.subproj/WebIconDatabase.m:
6758        (-[WebIconDatabase iconForSiteURL:withSize:]): call iconForSiteURL:withSize:cache:YES
6759        (-[WebIconDatabase iconForSiteURL:withSize:cache:]): new, was iconForSiteURL:withSize:
6760        (-[WebIconDatabase defaultIconWithSize:]): call _iconFromDictionary:forSize:cache:
6761        (-[WebIconDatabase _updateFileDatabase]): write the largest icon to disk
6762        (-[WebIconDatabase _hasIconForSiteURL:]): cleaned-up 
6763        (-[WebIconDatabase _iconsForIconURL:]): call _iconFromDictionary:forSize:cache:
6764        (-[WebIconDatabase _iconForFileURL:withSize:]): call _iconFromDictionary:forSize:cache:
6765        (-[WebIconDatabase _builtInIconsForHost:]): call _iconFromDictionary:forSize:cache:
6766        (-[WebIconDatabase _setIcon:forIconURL:]): _iconsBySplittingRepresentationsOfIcon:
6767        (-[WebIconDatabase _releaseIconForIconURL:]): icons at different sizes are now stored in dictionaries
6768        (-[WebIconDatabase _largestIconFromDictionary:]): new, scans the icon dictionary
6769        (-[WebIconDatabase _iconsBySplittingRepresentationsOfIcon:]): creates the icon dictionary
6770        (-[WebIconDatabase _iconFromDictionary:forSize:cache:]): returns icon from dict, resizes if necessary
6771        (-[WebIconDatabase _iconByScalingIcon:toSize:]): tweak
6772        * Misc.subproj/WebIconDatabasePrivate.h:
6773        * Misc.subproj/WebIconLoader.m:
6774        (-[WebIconLoader startLoading]): don't call _iconsForIconURL: because it doesn't exist.
6775
67762002-09-19  Maciej Stachowiak  <mjs@apple.com>
6777
6778        * Makefile.am: Make `doc' target depend on `all'.
6779        * WebView.subproj/WebContextMenuHandler.h: Fix typo found by `make doc'.
6780        * WebView.subproj/WebLocationChangeHandler.h: Likewise.
6781
67822002-09-19  Maciej Stachowiak  <mjs@apple.com>
6783
6784        * Makefile.am: Added `make doc' target.
6785
67862002-09-19  John Sullivan  <sullivan@apple.com>
6787
6788	- cleaned up some SPI for handling URLs on pasteboard
6789
6790        * Misc.subproj/WebNSPasteboardExtras.h: Added.
6791        * Misc.subproj/WebNSPasteboardExtras.m: Added.
6792        (+[NSPasteboard _web_dragTypesForURL]): Moved this here; was
6793	-[NSView _web_acceptableDragTypes]
6794        (-[NSPasteboard _web_bestURL]): Moved this here; was
6795	+[NSView _web_bestURLFromPasteboard:]
6796
6797        * WebView.subproj/WebView.m:
6798        (-[WebView initWithFrame:]),
6799        (-[WebView draggingEntered:]),
6800        (-[WebView concludeDragOperation:]):
6801	Updated for SPI change; also removed methods now in NSPasteboard.
6802
6803        * Misc.subproj/WebNSViewExtras.h:
6804        * Misc.subproj/WebNSViewExtras.m:
6805        (-[NSView _web_dragOperationForDraggingInfo:]):
6806	Updated for SPI change.
6807
6808        * WebKit.pbproj/project.pbxproj: Updated for new files.
6809
6810=== Alexander-24 ===
6811
68122002-09-18  Darin Adler  <darin@apple.com>
6813
6814	Fix two problems that led to an assertion now that a bogus
6815	load progress doesn't pass the "bytesReceived == total" test.
6816
6817        * Plugins.subproj/WebPluginStream.m:
6818        (-[WebNetscapePluginStream handleDidFinishLoading:]): Nil out the
6819	resource at the start of the function so that a cancel doesn't
6820	do anything if called in the middle when we stop.
6821        (-[WebNetscapePluginStream cancel]): Send a cancel error instead
6822	of a _receivedProgress. And make a partial progress rather than
6823	sending an empty progress.
6824        (-[WebNetscapePluginStream handleDidFailLoading:withError:]):
6825	Same as handleDidFinishLoading.
6826
68272002-09-18  Richard Williamson   <rjw@apple.com>
6828
6829        More documentation stuff.
6830        Added attributed text API as requested (yuck!).
6831        Add reconstructedDocumentSource API as requested.
6832        Removed cruft (stale API, bogus comments).
6833         
6834        * WebView.subproj/WebDataSource.h:
6835        * WebView.subproj/WebDataSource.m:
6836        * WebView.subproj/WebHTMLRepresentation.h:
6837        * WebView.subproj/WebHTMLRepresentation.m:
6838        (-[WebHTMLRepresentation reconstructedDocumentSource]):
6839        (-[WebHTMLRepresentation attributedText]):
6840        * WebView.subproj/WebHTMLRepresentationPrivate.h:
6841        * WebView.subproj/WebHTMLView.h:
6842        * WebView.subproj/WebHTMLView.m:
6843        (-[WebHTMLView selectedAttributedText]):
6844        (-[WebHTMLView selectedText]):
6845        * WebView.subproj/WebView.h:
6846
68472002-09-18  Richard Williamson   <rjw@apple.com>
6848
6849        Added document keywords to headers.
6850        Made bookmark related APIs private (for now).
6851        * Misc.subproj/WebIconDatabase.h:
6852        * Misc.subproj/WebIconLoader.h:
6853        * Misc.subproj/WebKitErrors.h:
6854        * Panels.subproj/WebStandardPanels.h:
6855        * WebKit.pbproj/project.pbxproj:
6856        * WebView.subproj/WebDefaultContextMenuHandler.h:
6857        * WebView.subproj/WebLoadProgress.h:
6858        * WebView.subproj/WebLocationChangeHandler.h:
6859        * WebView.subproj/WebPreferences.h:
6860
6861        Made public 
6862        * WebHTMLRepresentation.h
6863        * WebHTMLRepresentation.m
6864
68652002-09-18  John Sullivan  <sullivan@apple.com>
6866
6867	WebKit part of fix for 
6868	
6869	- 3000823 -- special-case drag of webloc file to bookmarks
6870	- 3004466 -- favorites bar doesn't accept drops of URL strings
6871	or webloc files
6872
6873        * Misc.subproj/WebNSViewExtras.h:
6874	- make _web_bestURLForDraggingInfo: a class method and have it
6875	take an NSPasteboard * instead of an NSDraggingInfo *; change
6876	name to _web_bestURLFromPasteboard:
6877        * Misc.subproj/WebNSViewExtras.m:
6878        (+[NSView _web_bestURLFromPasteboard:]):
6879	- make this a class method and have it take an NSPasteboard * 
6880	instead of an NSDraggingInfo *
6881        (-[NSView _web_dragOperationForDraggingInfo:]): Updated for
6882	SPI change.
6883
6884        * WebView.subproj/WebView.m:
6885        (-[WebView draggingEntered:]),
6886        (-[WebView concludeDragOperation:]): Updated for SPI change.
6887
68882002-09-18  Richard Williamson   <rjw@apple.com>
6889
6890        Added documentation keywords to headers.
6891        Create seperate files for the protocols
6892        that were defined in WebController.h.
6893        Made -[WebController createFrameNamed:for:inParent:allowsScrolling:]):
6894        private.
6895        
6896        * Plugins.subproj/WebPluginView.m:
6897        * WebCoreSupport.subproj/WebBridge.m:
6898        * WebKit.pbproj/project.pbxproj:
6899        * WebView.subproj/WebContextMenuHandler.h: Added.
6900        * WebView.subproj/WebController.h:
6901        * WebView.subproj/WebController.m:
6902        * WebView.subproj/WebControllerPrivate.h:
6903        * WebView.subproj/WebControllerPrivate.m:
6904        * WebView.subproj/WebDefaultContextMenuHandler.m:
6905        * WebView.subproj/WebFrame.m:
6906        * WebView.subproj/WebHTMLView.m:
6907        * WebView.subproj/WebHTMLViewPrivate.m:
6908        * WebView.subproj/WebMainResourceClient.m:
6909        * WebView.subproj/WebResourceProgressHandler.h: Added.
6910        * WebView.subproj/WebView.m:
6911        * WebView.subproj/WebWindowContext.h: Added.
6912
69132002-09-18  Richard Williamson  <rjw@apple.com>
6914
6915        Added documentation keywords to header.
6916        
6917        * WebView.subproj/WebControllerPolicyHandler.h:
6918        
6919        Made WebDynamicScrollBarsView private
6920        
6921        * WebKit.pbproj/project.pbxproj:
6922
69232002-09-18  Darin Adler  <darin@apple.com>
6924
6925	- fixed 3053155 -- REGRESSION: Activity Window thinks 0-byte
6926	images are "complete"
6927
6928	I thought I had fixed it before, but this is needed too.
6929
6930        * WebView.subproj/WebLoadProgress.m:
6931        (-[WebLoadProgress init]): Set "bytes so far" to 0, not -1.
6932        (-[WebLoadProgress initWithResourceHandle:]): Make sure we set total
6933	to -1, not 0, when the response is nil.
6934
69352002-09-18  Richard Williamson  <rjw@apple.com>
6936
6937        Added documentation keywords to header.
6938        
6939        * WebView.subproj/WebDocument.h:
6940
69412002-09-18  Richard Williamson  <rjw@apple.com>
6942
6943        Added documentation keywords to headers.
6944        Made reset a private method.
6945        
6946        * WebKit.pbproj/project.pbxproj:
6947        * WebView.subproj/WebFrame.h:
6948        * WebView.subproj/WebFrame.m:
6949        * WebView.subproj/WebFramePrivate.h:
6950        * WebView.subproj/WebFramePrivate.m:
6951        (-[WebFrame reset]):
6952
69532002-09-18  Richard Williamson  <rjw@apple.com>
6954    
6955        Added documentation keywords to headers.
6956    
6957        * WebView.subproj/WebView.h:
6958
69592002-09-18  Richard Williamson  <rjw@apple.com>
6960
6961        Added documentation keywords to headers.
6962        
6963        * WebView.subproj/WebDataSource.h:
6964
69652002-09-18  Darin Adler  <darin@apple.com>
6966
6967        * WebView.subproj/WebController.h: Fix typo.
6968
69692002-09-18  Darin Adler  <darin@apple.com>
6970
6971        * WebView.subproj/WebController.h: Add getters.
6972        * WebView.subproj/WebController.m:
6973        (-[WebController applicationNameForUserAgent]): Added.
6974        (-[WebController userAgent]): Added.
6975
69762002-09-17  Darin Adler  <darin@apple.com>
6977
6978	Fix bug where image documents were broken.
6979
6980        * WebCoreSupport.subproj/WebImageRenderer.m:
6981        (-[WebImageRenderer drawClippedToValidInRect:fromRect:]): loadStatus of 0
6982	means the whole image is ready, not 0 scan lines; so check > 0, not >= 0.
6983
6984        * WebKit.pbproj/project.pbxproj: Let Project Builder be the boss of me.
6985
69862002-09-17  Richard Williamson   <rjw@apple.com>
6987
6988        * History.subproj/WebHistory.h:
6989        * History.subproj/WebHistory.m:
6990        (-[WebHistory addEntryForURLString:]):
6991        (-[WebHistory containsEntryForURLString:]):
6992        Added URL string API.  We should remove use of
6993        NSURL from this API.
6994        
6995        * History.subproj/WebHistoryPrivate.h:
6996        * History.subproj/WebHistoryPrivate.m:
6997        (-[WebHistoryPrivate _entryForURLString:]):
6998        (-[WebHistoryPrivate containsEntryForURLString:]):
6999        Implementation of above.
7000        
7001        * WebCoreSupport.subproj/WebTextRenderer.m:
7002        (-[WebTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
7003        (-[WebTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]):
7004        Use ((int)(x + (1.0 - FLT_EPSILON))) instead of ceil().
7005
70062002-09-16  Darin Adler  <darin@apple.com>
7007
7008        * History.subproj/WebHistoryPrivate.m: Do that for real.
7009
70102002-09-16  Richard Williamson   <rjw@apple.com>
7011
7012        Remove fix (according to John, partial fix) for 3051288.
7013        Canonicalizing the URL strings used in the history db
7014        is very slow!  ~8% slower.
7015        
7016        * History.subproj/WebHistoryPrivate.m:
7017        (-[WebHistoryPrivate addEntry:]):
7018        (-[WebHistoryPrivate removeEntry:]):
7019        (-[WebHistoryPrivate containsURL:]):
7020        (-[WebHistoryPrivate entryForURL:]):
7021        
7022        * WebView.subproj/WebHTMLView.h:
7023        Removed cruft from header.
7024
70252002-09-16  Darin Adler  <darin@apple.com>
7026
7027	- fixed 3050810 -- while an image is loading progressively, it draws
7028	white rather then page background	
7029
7030        * WebCoreSupport.subproj/WebImageRenderer.m:
7031        (-[WebImageRenderer drawClippedToValidInRect:fromRect:]): Added. Used instead
7032	of a direct call to drawInRect:fromRect:operation:fraction:, this only draws
7033	the part of the image that is valid according to loadStatus.
7034        (-[WebImageRenderer nextFrame:]): Use drawClippedToValidInRect:fromRect:.
7035        (-[WebImageRenderer beginAnimationInRect:fromRect:]): Ditto.
7036        (-[WebImageRenderer tileInRect:fromPoint:]): Ditto.
7037
70382002-09-13  Richard Williamson (Home)  <rjw@apple.com>
7039
7040       Fixed 3051288.  URLs were not being canonicalized, so matching failed.
7041        
7042        * History.subproj/WebHistoryPrivate.m:
7043        (-[WebHistoryPrivate addEntry:]):
7044        (-[WebHistoryPrivate removeEntry:]):
7045        (-[WebHistoryPrivate containsURL:]):
7046        (-[WebHistoryPrivate entryForURL:]):
7047
70482002-09-13  Richard Williamson (Home)  <rjw@apple.com>
7049
7050        Fixed 3050636.  90% solution.  The "Display Images Automatically"
7051        preference will be used to disallow image draggging.  So if this
7052        is set after pages have loaded, their images will not be draggable,
7053        and vice-versa.  Not disastrous as dragging in either case has little
7054        or no negative consequences.
7055        
7056        * WebView.subproj/WebHTMLView.m:
7057        (-[WebHTMLView mouseDragged:]):
7058
70592002-09-13  Maciej Stachowiak  <mjs@apple.com>
7060
7061	WebKit changes for:
7062	
7063	- fixed 3032238 - Eliminate "Ask each time" choice for cookies
7064	
7065        * Panels.subproj/WebStandardPanels.h:
7066        * Panels.subproj/WebStandardPanels.m:
7067        (-[WebStandardPanels useStandardAuthenticationPanel]):
7068        * WebCoreSupport.subproj/WebCookieAdapter.m:
7069        (-[WebCookieAdapter cookiesEnabled]):
7070        * WebKit.pbproj/project.pbxproj:
7071
70722002-09-13  Darin Adler  <darin@apple.com>
7073
7074	Added assertions, and dealt with some breakage I created while
7075	trying to fix, here, what I broke in WebCore.
7076
7077        * Plugins.subproj/WebPluginView.m: (-[WebNetscapePluginView start]):
7078	Do get the dataSource from our parent when we are being used as an
7079	object in a view rather than a document view.
7080
7081        * Plugins.subproj/WebPluginStream.m:
7082        * WebView.subproj/WebDataSource.m:
7083        * WebView.subproj/WebFrame.m:
7084	Leave in the assertions I used to debug.
7085
70862002-09-13  Darin Adler  <darin@apple.com>
7087
7088	- fixed 3031685 -- The text encoding setting is not propagated to subframes
7089
7090        * WebView.subproj/WebDocument.h: Remove old WebDocumentTextEncoding methods,
7091	add supportsTextEncoding.
7092        * WebView.subproj/WebController.m:
7093        (-[WebController supportsTextEncoding]): Check the document view to see if
7094	it supports WebDocumentTextEncoding and returns YES.
7095        (-[WebController setCustomTextEncoding:]): Call _reloadAllowingStaleDataWithOverrideEncoding.
7096        (-[WebController resetTextEncoding]): Ditto.
7097        (-[WebController _mainFrameOverrideEncoding]): Added. Gets encoding from the data source
7098	of the main frame; provisional if there, main if not.
7099        (-[WebController hasCustomTextEncoding]): Call _mainFrameOverrideEncoding.
7100        (-[WebController customTextEncoding]): Ditto.
7101
7102        * WebView.subproj/WebDataSourcePrivate.m:
7103        (-[WebDataSource _setParent:]): Set the override encoding to the parent's.
7104
7105        * WebView.subproj/WebFrame.m:
7106        (-[WebFrame reload]): Release request to fix storage leak. Set the override encoding
7107	on the new data source to match the old.
7108
7109        * WebView.subproj/WebFramePrivate.h: New name for stale data reload method.
7110        * WebView.subproj/WebFramePrivate.m:
7111        (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]): Do pretty much the
7112	same thing reload does with a few differences. Get the encoding from the parameter
7113	rather than the old data source, and set the policy to the one that uses data from
7114	the cache, even stale data, if present
7115
7116        * WebView.subproj/WebHTMLView.m:  (-[WebHTMLView supportsTextEncoding]): Return YES.
7117
71182002-09-13  Richard Williamson (Home)  <rjw@apple.com>
7119
7120        Adding padding and widths buffer to our canonical measurement
7121        method.  The padding argument is used to 'pad' measurements in
7122        that same way that drawing is padded.  The widths parameter
7123        allows a caller to pass a buffer to get all the individual
7124        character widths for the run of characters in the string.
7125        
7126        * Misc.subproj/WebStringTruncator.m:
7127        (+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
7128        (+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
7129        * WebCoreSupport.subproj/WebTextRenderer.h:
7130        * WebCoreSupport.subproj/WebTextRenderer.m:
7131        (-[WebTextRenderer widthForCharacters:length:]):
7132        (-[WebTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
7133        (-[WebTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
7134        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
7135
71362002-09-13  Darin Adler  <darin@apple.com>
7137
7138	Fix dataSource-related plugin crash.
7139
7140        * Plugins.subproj/WebPluginView.m:
7141        (-[WebNetscapePluginView start]): Don't grab dataSource here.
7142	It's too early.
7143        (-[WebNetscapePluginView setDataSource:]): Grab it here.
7144
7145        * Plugins.subproj/WebPluginStream.h:
7146        * Plugins.subproj/WebPluginStream.m:
7147	Simplified includes and added asserts while debugging.
7148
71492002-09-13  Richard Williamson (Home)  <rjw@apple.com>
7150
7151        Changed drag hysteresis to 5 and disallow selection initiation within
7152        a link.
7153        
7154        * WebView.subproj/WebHTMLView.m:
7155        (-[WebHTMLView mouseDragged:]):
7156
71572002-09-12  Darin Adler  <darin@apple.com>
7158
7159	Prep work for fixes to the text encoding for subframes.
7160
7161        * WebCoreSupport.subproj/WebBridge.h: Remove [loadURL:withParent:].
7162        * WebCoreSupport.subproj/WebBridge.m:
7163        (-[WebBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
7164	Added referrer parameter.
7165
7166        * WebView.subproj/WebController.h: Add new methods, not implemented yet.
7167        * WebView.subproj/WebController.m:
7168        (-[WebController supportsTextEncoding]): Here is one.
7169        (-[WebController setCustomTextEncoding:]): Another.
7170        (-[WebController resetTextEncoding]): Etc.
7171        (-[WebController hasCustomTextEncoding]): Etc.
7172        (-[WebController customTextEncoding]): Etc.
7173
7174        * WebView.subproj/WebDataSource.h:
7175        * WebView.subproj/WebDataSource.m:
7176        (-[WebDataSource startLoading]): Remove the forceRefresh flag.
7177	This is now controlled by the WebResourceRequest.
7178        * WebView.subproj/WebDataSourcePrivate.h:
7179        * WebView.subproj/WebDataSourcePrivate.m:
7180        (-[WebDataSource _startLoading]): Same for this private version.
7181        * WebView.subproj/WebFrame.h:
7182        * WebView.subproj/WebFrame.m:
7183        (-[WebFrame startLoading]): Remove the forceRefresh flag.
7184        (-[WebFrame reload]): Remove the forceRefresh flag.
7185	A reload without a forceRefresh is only used internally, not requested
7186	by the caller.
7187
7188        * WebView.subproj/WebFramePrivate.h:
7189        * WebView.subproj/WebFramePrivate.m:
7190        (-[WebFrame _transitionToCommitted]): Add handling for the case where we
7191	reload, but allow stale data.
7192        (-[WebFrame _isLoadComplete]): Ditto.
7193        (-[WebFrame _reloadAllowingStaleData]): Placeholder, not implemented yet.
7194
7195        * WebView.subproj/WebHTMLView.m:
7196        (-[WebHTMLView setTextEncoding:]): Update for new API, but this is going away.
7197        (-[WebHTMLView setDefaultTextEncoding]): Ditto.
7198
71992002-09-12  Richard Williamson  <rjw@apple.com>
7200
7201        Don't initiate a drag if an autoscroll happened.
7202        
7203        * WebView.subproj/WebHTMLView.m:
7204        (-[WebHTMLView mouseDragged:]):
7205
72062002-09-12  Richard Williamson  <rjw@apple.com>
7207
7208        Added absolute position column to render node for 
7209        render tree view.
7210        
7211        * WebView.subproj/WebRenderNode.h:
7212        * WebView.subproj/WebRenderNode.m:
7213        (-[WebRenderNode initWithName:position:rect:view:children:]):
7214        (-[WebRenderNode absolutePositionString]):
7215        (-[WebKitRenderTreeCopier nodeWithName:position:rect:view:children:]):
7216
72172002-09-12  David Hyatt  <hyatt@apple.com>
7218
7219	Add text/xml to our list of MIME types that should use the
7220	Web view.  With this fix we now render XML and XHTML
7221	correctly!
7222	
7223        * WebView.subproj/WebDataSourcePrivate.m:
7224        (+[WebDataSource _repTypes]):
7225        * WebView.subproj/WebViewPrivate.m:
7226        (+[WebView _viewTypes]):
7227
72282002-09-12  Ken Kocienda  <kocienda@apple.com>
7229
7230        Removed load flags as a design concept. Replaced with new "caching policy" concept 
7231        which are set on a WebResourceRequest. These policies determine how a load will
7232        be processed with regards to the cache.
7233
7234        * WebCoreSupport.subproj/WebBridge.h: Removed flags from loadURL method.
7235        * WebCoreSupport.subproj/WebBridge.m: Removed calls to load flags and replaced with calls to new request policies.
7236        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
7237        (-[WebBridge isReloading]): Ditto.
7238        (-[WebBridge loadURL:referrer:]): Ditto.
7239        (-[WebBridge loadURL:withParent:]): Removed flags from loadURL method.
7240        (-[WebBridge postWithURL:referrer:data:]): Removed calls to load flags and replaced with calls to new request policies.
7241        * WebCoreSupport.subproj/WebSubresourceClient.m:
7242        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]): Ditto.
7243        * WebView.subproj/WebDataSource.h: Removed flags from init method.
7244        * WebView.subproj/WebDataSource.m: 
7245        (-[WebDataSource initWithURL:]): Ditto.
7246        (-[WebDataSource initWithRequest:]): Ditto.
7247        * WebView.subproj/WebDataSourcePrivate.h: Removed flags ivar, and dangling attributes ivar.
7248        * WebView.subproj/WebDataSourcePrivate.m: 
7249        (-[WebDataSourcePrivate dealloc]): Ditto.
7250        * WebView.subproj/WebFrame.m:
7251        (-[WebFrame reload:]): Removed calls to load flags and replaced with calls to new request policies.
7252        * WebView.subproj/WebFramePrivate.m:
7253        (-[WebFrame _goToItem:withFrameLoadType:]): Ditto.
7254
72552002-09-12  Chris Blumenberg  <cblu@apple.com>
7256	
7257	Make WebTextView private and exported.
7258
7259        * WebKit.exp:
7260        * WebKit.pbproj/project.pbxproj:
7261        * WebView.subproj/WebTextView.h:
7262
72632002-09-11  Maciej Stachowiak  <mjs@apple.com>
7264
7265	Combined provisionalDataSourceChanged: and
7266	provisionalDataSourceCommitted: methods into a single
7267	setDataSource:, since they are always called one immediately after
7268	the other.
7269	
7270        * Plugins.subproj/WebPluginView.m:
7271        (-[WebNetscapePluginView setDataSource:]):
7272        (-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:]):
7273        * WebView.subproj/WebDocument.h:
7274        * WebView.subproj/WebHTMLView.m:
7275        (-[WebHTMLView setDataSource:]):
7276        * WebView.subproj/WebImageView.m:
7277        (-[WebImageView setDataSource:]):
7278        * WebView.subproj/WebTextView.m:
7279        (-[WebTextView setDataSource:]):
7280        * WebView.subproj/WebViewPrivate.m:
7281        (-[WebView _makeDocumentViewForDataSource:]):
7282
72832002-09-11  Richard Williamson  <rjw@apple.com>
7284
7285        Better fix for previous problem.
7286        
7287        * WebCoreSupport.subproj/WebTextRenderer.m:
7288        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
7289
72902002-09-11  Richard Williamson (Local)  <rjw@apple.com>
7291
7292        Remove ceiling of text width at end of fragment.  This was screwing up
7293        intra fragment text measurements.
7294        
7295        Selection of justified text is still screwed up.  This is a fundamental problem
7296        in khtml and will require  a rewrite of their justification code.  Konq has the
7297        same problems selecting justified text.  The drawing of code applies the justification
7298        factor, but checking the selection doesn't add the justification factor, so selection
7299        will be incorrect by the justification amount.
7300        
7301        * WebCoreSupport.subproj/WebTextRenderer.m:
7302        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
7303
73042002-09-11  Darin Adler  <darin@apple.com>
7305
7306        * WebView.subproj/WebFrame.m: (-[WebFrame reload:]): Use the current
7307	URL, not the original URL, when doing a reload. This prevents the URL from
7308	changing back and forth when you reload on a page that involved a redirect.
7309
73102002-09-11  Darin Adler  <darin@apple.com>
7311
7312	Add machinery needed for fix to 3021137, changing font prefs
7313	doesn't redraw frames other than the main frame.
7314
7315        * WebCoreSupport.subproj/WebBridge.m:
7316        (-[WebBridge setNeedsReapplyStyles]): Added. Lets the web views know that they
7317	need to reapply styles. If we did this over on the WebCore side, we'd have to do
7318	it right away. Maybe that would be OK; we can move that that later.
7319
7320        * WebView.subproj/WebTextView.m: (-[WebTextView setFixedWidthFont]): Use the
7321	fixed-width size, rather than using the other size with the fixed-width family.
7322
73232002-09-11  Ken Kocienda  <kocienda@apple.com>
7324
7325        Major change to the API and design of WebFoundation. WebKit has been modified
7326	to use the new API.
7327
7328        WebFoundation attributes, as a design concept, are now completely gone. The old usages of
7329        attributes have been replaced with new API on the WebResourceRequest
7330        and WebResourceResponse classes.
7331
7332        * Plugins.subproj/WebPluginStream.h: Removed attribute usage in init API. No need for replacement.
7333        * Plugins.subproj/WebPluginStream.m:
7334        (-[WebNetscapePluginStream initWithURL:pluginPointer:]): Removed attribute usage in init API.
7335        (-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:]): Ditto.
7336        (-[WebNetscapePluginStream dealloc]): Remove attribute release.
7337        (-[WebNetscapePluginStream startLoad]): Removed attribute usage. Replace with calls to new API.
7338        (-[WebNetscapePluginStream receivedData:withHandle:]): Ditto.
7339        * Plugins.subproj/WebPluginView.m:
7340        (-[WebNetscapePluginView pluginURLFromCString:]): Added this helper method.
7341        (-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:]): Added.
7342        (-[WebNetscapePluginView getURLNotify:target:notifyData:]): Modified to call new loadRequest:inTarget:withNotifyData: method.
7343        (-[WebNetscapePluginView getURL:target:]): Ditto.
7344        (-[WebNetscapePluginView postURLNotify:target:len:buf:file:notifyData:]): Ditto.
7345        * WebCoreSupport.subproj/WebBridge.h: Removed attribute usage in loadURL API. No need for replacement.
7346        * WebCoreSupport.subproj/WebBridge.m: Added loadRequest:withParent:
7347        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
7348        (-[WebBridge startLoadingResource:withURL:referrer:]): Removed attribute usage. Replace with calls to new API.
7349        (-[WebBridge isReloading]): Ditto.
7350        (-[WebBridge loadRequest:withParent:]): Added.
7351        (-[WebBridge loadURL:]): Modified to use new loadRequest:withParent: API
7352        (-[WebBridge loadURL:referrer:]): Ditto.
7353        (-[WebBridge loadURL:flags:withParent:]): Ditto.
7354        (-[WebBridge postWithURL:data:]): Ditto.
7355        * WebCoreSupport.subproj/WebSubresourceClient.h: Changed API to use an NSString referrer instead of an attributes dictionary.
7356        * WebCoreSupport.subproj/WebSubresourceClient.m:
7357        (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]): Removed attribute usage. Replace with calls to new API.
7358        * WebView.subproj/WebDataSource.h: Added initWithRequest: method.
7359        * WebView.subproj/WebDataSource.m:
7360        (-[WebDataSource initWithURL:]): Removed attribute usage in init API.
7361        (-[WebDataSource initWithURL:flags:]): Ditto.
7362        (-[WebDataSource initWithRequest:]): Added.
7363        (-[WebDataSource request]): Added.
7364        * WebView.subproj/WebDataSourcePrivate.h: Added WebResourceRequest ivar.
7365        * WebView.subproj/WebDataSourcePrivate.m:
7366        (-[WebDataSourcePrivate dealloc]): Added WebResourceRequest ivar.
7367        (-[WebDataSource _startLoading:]): Removed attribute usage. Replace with calls to new API.
7368        * WebView.subproj/WebFrame.m:
7369        (-[WebFrame reload:]): Removed attribute usage. Replace with calls to new API.
7370        * WebView.subproj/WebFramePrivate.m:
7371        (-[WebFrame _goToItem:withFrameLoadType:]): Use new WebDataSource init API.
7372
73732002-09-10  Darin Adler  <darin@apple.com>
7374
7375	WebKit part of support for the "Referer" header.
7376
7377        * WebCoreSupport.subproj/WebBridge.m:
7378        (-[WebBridge openNewWindowWithURL:referrer:frameName:]): Add referrer parameter,
7379	and pass it on to the window context method.
7380        (-[WebBridge addAttributeForReferrer:toDictionary:]): Added.
7381        (-[WebBridge attributesForReferrer:]): Added.
7382        (-[WebBridge startLoadingResource:withURL:referrer:]): Put the referrer into an
7383	attributes dictionary and pass it to the WebSubresourceClient method.
7384        (-[WebBridge loadURL:referrer:]): Put the referrer into an attributes dictionary
7385	and pass it along.
7386        (-[WebBridge postWithURL:referrer:data:]): Put the referrer into an attributes
7387	dictionary and pass it along.
7388
7389        * WebCoreSupport.subproj/WebSubresourceClient.h: Add an attributes parameter to
7390	the method that starts loading.
7391        * WebCoreSupport.subproj/WebSubresourceClient.m:
7392        (+[WebSubresourceClient startLoadingResource:withURL:attributes:forDataSource:]):
7393	Put the attributes into the WebResourceRequest.
7394
7395        * WebView.subproj/WebController.h: Add a referrer parameter to the WebWindowContext
7396	openNewWindowWithURL method.
7397        * WebView.subproj/WebDefaultContextMenuHandler.m:
7398        (-[WebDefaultContextMenuHandler openNewWindowWithURL:referrer:]): Pass the referrer
7399	on to the window context.
7400        (-[WebDefaultContextMenuHandler openLinkInNewWindow:]): Pass nil for the referrer
7401	for now. Not sure if this is best.
7402        (-[WebDefaultContextMenuHandler openImageInNewWindow:]): Ditto.
7403        (-[WebDefaultContextMenuHandler openFrameInNewWindow:]): Ditto.
7404
7405        * WebView.subproj/WebFrame.m: (-[WebFrame frameNamed:]): Pass nil for the referrer
7406	here where we are creating a new empty window.
7407
7408        * WebView.subproj/WebHTMLViewPrivate.m:
7409        (-[WebHTMLView _continueAfterClickPolicyForEvent:]): Pass nil for the referrer here
7410	in the WebClickPolicyOpenNewWindow. The policy API doesn't provide a way for the
7411	policy handler to specify the referrer; we might want to change that later.
7412
7413        * Plugins.subproj/WebPluginView.m:
7414        (-[WebNetscapePluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
7415	Pass nil for the referrer here. But it seems wrong that this function discards
7416	the handle attributes that are passed in for the case where it opens a new window.
7417
74182002-09-11  Chris Blumenberg  <cblu@apple.com>
7419
7420	Fixed: 3048158 - Crash at google in _destroyInitializingClassList
7421
7422        * WebView.subproj/WebMainResourceClient.m:
7423        (-[WebMainResourceClient didCancelWithHandle:]):
7424
74252002-09-10  Richard Williamson (Local)  <rjw@apple.com>
7426
7427        Renamed method.
7428        
7429        * WebView.subproj/WebPreferences.h:
7430        * WebView.subproj/WebPreferences.m:
7431        (-[WebPreferences _updateWebCoreSettings]):
7432        (-[WebPreferences setWillLoadImagesAutomatically:]):
7433        (-[WebPreferences willLoadImagesAutomatically]):
7434
74352002-09-10  Chris Blumenberg  <cblu@apple.com>
7436
7437	Report download handler errors
7438	Renamed error constants
7439	Added new errors
7440
7441        * Misc.subproj/WebDownloadHandler.h:
7442        * Misc.subproj/WebDownloadHandler.m:
7443        (-[WebDownloadHandler errorWithCode:]): added
7444        (-[WebDownloadHandler receivedData:]): return an error
7445        (-[WebDownloadHandler finishedLoading]): return an error
7446        (-[WebDownloadHandler cancel]): return an error
7447        * Misc.subproj/WebKitErrors.h: added new errors
7448        * WebView.subproj/WebFramePrivate.m: 
7449        (-[WebFrame _shouldShowURL:]): use renamed error constants
7450        * WebView.subproj/WebMainResourceClient.h:
7451        * WebView.subproj/WebMainResourceClient.m:
7452        (-[WebMainResourceClient receivedError:forHandle:]): don't send an error when errors are suppressed
7453        (-[WebMainResourceClient didCancelWithHandle:]): report download handler errors
7454        (-[WebMainResourceClient handleDidFinishLoading:]): report download handler errors
7455        (-[WebMainResourceClient handleDidReceiveData:data:]): report download handler errors
7456        (-[WebMainResourceClient handleDidFailLoading:withError:]): report download handler errors
7457        * WebView.subproj/WebView.m:
7458        (+[WebView initialize]): add new errors to WebError
7459
74602002-09-10  John Sullivan  <sullivan@apple.com>
7461
7462        * History.subproj/WebHistoryPrivate.m:
7463        (-[WebHistoryPrivate _loadHistoryGuts:]):
7464	removed the ERROR message in the case where the history file was
7465	not found, as this is normal initial-state behavior.
7466
74672002-09-10  Maciej Stachowiak  <mjs@apple.com>
7468
7469	WebKit part of fix for:
7470
7471	2952837 - Slide shows on homepage.mac.com don't show pictures, captions
7472	2942073 - Deferring [BrowserDocument goToInitialURL] can cause problems
7473	3021360 - second window pops up on 'Search' at chrysler.com
7474	3030485 - Unexpected new window created with no scroll bars at sony.com
7475
7476	This is done by adding a concept of named controller sets, so that
7477	less browser-like uses of WebKit won't be affected.
7478
7479        * WebCoreSupport.subproj/WebBridge.m:
7480	(-[WebBridge openNewWindowWithURL:frameName:]): Pass frameName
7481	parameter to controller initializer.
7482	
7483        * WebView.subproj/WebController.h:
7484        * WebView.subproj/WebController.m:
7485        (-[WebController init]): Pass nil for controllerSetName.
7486	
7487        (-[WebController dealloc]):
7488        (-[WebController frameNamed:]): Check other windows in the same set too.
7489        * WebView.subproj/WebControllerPrivate.h:
7490        * WebView.subproj/WebControllerPrivate.m:
7491        (-[WebControllerPrivate dealloc]):
7492        (-[WebController _setDefersCallbacks:]):
7493        (-[WebController _setTopLevelFrameName:]):
7494        (-[WebController _frameInThisWindowNamed:]):
7495        * WebView.subproj/WebControllerSets.h: Added.
7496        * WebView.subproj/WebControllerSets.m: Added.
7497	(+[WebControllerSets addController:toSetNamed:]): Method to
7498	maintain controller sets.
7499        (+[WebControllerSets removeController:fromSetNamed:]): Likewise.
7500        * WebKit.pbproj/project.pbxproj: Add new files.
7501
75022002-09-10  Ken Kocienda  <kocienda@apple.com>
7503
7504        Changed API for setting the WebResourceClient for a request/load.
7505
7506        This has been removed from WebResourceRequest, and has been moved to 
7507        WebResourceHandle. The result is that the init method for a WebResourceHandle
7508        now takes a WebResourceRequest and a WebResourceClient.
7509
7510        All of the changes below are simple code modifications to use the new API.
7511
7512        * Misc.subproj/WebIconLoader.m:
7513        (-[WebIconLoader startLoading])
7514        * Plugins.subproj/WebPluginStream.m:
7515        (-[WebNetscapePluginStream startLoad])
7516        * WebCoreSupport.subproj/WebBridge.m:
7517        (-[WebBridge objectLoadedFromCache:size:])
7518        * WebCoreSupport.subproj/WebSubresourceClient.m:
7519        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:])
7520        * WebView.subproj/WebDataSourcePrivate.m:
7521        (-[WebDataSource _startLoading:])
7522
75232002-09-10  Chris Blumenberg  <cblu@apple.com>
7524
7525        * History.subproj/WebHistory.h:
7526        * History.subproj/WebHistory.m:
7527        (-[WebHistory entryForURL:]): added
7528        * History.subproj/WebHistoryPrivate.h:
7529        * History.subproj/WebHistoryPrivate.m:
7530        (-[WebHistoryPrivate entryForURL:]): added
7531        * Misc.subproj/WebIconDatabase.h: added WebIconLargeSize
7532        * Misc.subproj/WebIconDatabase.m: added WebIconLargeSize
7533        * WebKit.exp: export link label key and WebIconLargeSize
7534
75352002-09-10  Darin Adler  <darin@apple.com>
7536
7537	WebKit part of weaning WebCore from getting directly at WebKit defaults.
7538
7539        * WebView.subproj/WebPreferences.h:
7540        * WebView.subproj/WebPreferences.m:
7541        (-[WebPreferences _updateWebCoreSettings]): Added. Propagates all preferences
7542	to WebCore. This way WebCore doesn't have to actively ask for the values
7543	of preferences using defaults keys that are WebKit secrets.
7544        (+[WebPreferences load]): Set up an observer that calls _updateWebCoreSettings
7545	whenever NSUserDefaultsDidChangeNotification is posted.
7546        (-[WebPreferences setStandardFontFamily:]): Call _updateWebCoreSettings right
7547	away, don't wait for NSUserDefaultsDidChangeNotification.
7548        (-[WebPreferences setFixedFontFamily:]): Ditto.
7549        (-[WebPreferences setSerifFontFamily:]): Ditto.
7550        (-[WebPreferences setSansSerifFontFamily:]): Ditto.
7551        (-[WebPreferences setCursiveFontFamily:]): Ditto.
7552        (-[WebPreferences setFantasyFontFamily:]): Ditto.
7553        (-[WebPreferences setDefaultFontSize:]): Ditto.
7554        (-[WebPreferences setDefaultFixedFontSize:]): Ditto.
7555        (-[WebPreferences setMinimumFontSize:]): Ditto.
7556        (-[WebPreferences setUserStyleSheetEnabled:]): Ditto.
7557        (-[WebPreferences setUserStyleSheetLocation:]): Ditto.
7558        (-[WebPreferences setJavaEnabled:]): Ditto.
7559        (-[WebPreferences setJavaScriptEnabled:]): Ditto.
7560        (-[WebPreferences setJavaScriptCanOpenWindowsAutomatically:]): Ditto.
7561        (-[WebPreferences setPluginsEnabled:]): Ditto.
7562        (-[WebPreferences setDisplayImages:]): Ditto.
7563
7564        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge reportBadURL:]):
7565	Add this method, which replaces reportError. Now WebCore doesn't use
7566	WebFoundation directly at all! Pretty neat.
7567
75682002-09-09  Richard Williamson (Home)  <rjw@apple.com>
7569
7570        Implemented  disable images automatically (2896319).
7571
7572        * WebView.subproj/WebPreferences.h:
7573        * WebView.subproj/WebPreferences.m:
7574        (+[WebPreferences load]):
7575        (-[WebPreferences setDisplayImages:]):
7576        (-[WebPreferences displayImages]):
7577
75782002-09-09  Darin Adler  <darin@apple.com>
7579
7580	- fixed 3003605 -- Leaking 1 WebView after second run of static PLT
7581
7582	Fixing this should also help with footprint.
7583
7584        * WebView.subproj/WebFrame.m:
7585        (-[WebFrame dealloc]): Remove old workaround for problem where we
7586	always deallocated the frames from timer cleanup. I found a better
7587	fix for this.
7588        (-[WebFrame stopLoading]): Explicitly fire the scheduled layout
7589	timer if any when we stop loading, rather than leaving it hanging.
7590
7591        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _setState:]):
7592	Explicitly fire the scheduled layout timer if any.
7593
7594        * WebView.subproj/WebDataSource.m: (-[WebDataSource isLoading]):
7595	Use an autorelease pool here so we don't end up putting all the
7596	frames in the main event loop's autorelease pool.
7597
7598        * Bookmarks.subproj/WebBookmark.m:
7599        (-[WebBookmark init]): Use copy instead of retain.
7600        (-[WebBookmark identifier]): Use copy instead of retain.
7601
76022002-09-09  ken  <kocienda@apple.com>
7603
7604	Missed one call through asking WebResourceHandle for contentLength
7605	instead of WebResourceResponse.
7606
7607        * Plugins.subproj/WebPluginStream.m:
7608        (-[WebNetscapePluginStream receivedData:withHandle:]):
7609
76102002-09-09  ken  <kocienda@apple.com>
7611
7612	Content length information now accessible via WebResourceResponse object,
7613        rather than from WebResourceHandle.
7614
7615        * WebView.subproj/WebLoadProgress.m:
7616        (-[WebLoadProgress initWithResourceHandle:]):
7617        * WebView.subproj/WebMainResourceClient.m:
7618        (-[WebMainResourceClient handleDidReceiveData:data:]):
7619
76202002-09-09  Richard Williamson  <rjw@apple.com>
7621
7622        Make both calls to adjust CG font cache dynamic.
7623        The new CGFontCacheSetMaxSize() adds a font cache
7624        parameter.  Ugh!  This is needed so we can compile
7625        w/o warnings on stock Jag.
7626        
7627        * WebCoreSupport.subproj/WebTextRendererFactory.m:
7628
76292002-09-09  Ken Kocienda  <kocienda@apple.com>
7630
7631	Character set information now accessible via WebResourceResponse object,
7632	rather than from WebResourceHandle.
7633
7634        * WebView.subproj/WebMainResourceClient.m:
7635        (-[WebMainResourceClient handleDidReceiveData:data:]):
7636
76372002-09-09  Chris Blumenberg  <cblu@apple.com>
7638
7639	Re-enable wizzy scaling.
7640	
7641        * Misc.subproj/WebIconDatabase.m:
7642        (-[WebIconDatabase _iconByScalingIcon:toSize:]):
7643
76442002-09-09  Ken Kocienda  <kocienda@apple.com>
7645
7646	WebResourcehandle no longer has a contentType method.
7647	Call through to WebResourceResponse object to get content type.
7648
7649        * Plugins.subproj/WebPluginStream.m:
7650        (-[WebNetscapePluginStream receivedData:withHandle:]):
7651        * WebView.subproj/WebMainResourceClient.m:
7652        (-[WebMainResourceClient handleDidReceiveData:data:]):
7653
76542002-09-09  Darin Adler  <darin@apple.com>
7655
7656	Fixed lifetime problems happening due to new cancel mechanism.
7657
7658        * WebCoreSupport.subproj/WebSubresourceClient.m: Add comments explaining why
7659	retain/release is needed.
7660        * WebView.subproj/WebDataSourcePrivate.m:
7661        (-[WebDataSource _recursiveStopLoading]): Add a retain/release so that we don't
7662	run into problems if _stopLoading causes the data source to go away.
7663        * WebView.subproj/WebMainResourceClient.m:
7664        (-[WebMainResourceClient didCancelWithHandle:]): Add retain/release for similar reasons,
7665	with comment explaining why.
7666        (-[WebMainResourceClient handleDidFinishLoading:]): Ditto.
7667        (-[WebMainResourceClient handleDidFailLoading:withError:]): Ditto.
7668
7669	Fixed the problem that was leading to the NSImage exception, but didn't turn on
7670	the whizzy scaling -- leaving that to Chris.
7671
7672        * Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase iconForSiteURL:withSize:]):
7673	Eliminate the "size 0x0" feature. It was only implemented in one place, and tons
7674	of other places would actually make a size 0x0 icon. But also, we don't need it any more.
7675        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource iconLoader: receivedPageIcon:),
7676	(-[WebDataSource _loadIcon]): Don't bother actually passing the icon to
7677	[WebLocationChangeHandler receivedPageIcon:forDataSource:]. We should probably eventually
7678	either just get rid of this method, or remove the icon parameter.
7679
76802002-09-09  Chris Blumenberg  <cblu@apple.com>
7681
7682
7683        * Misc.subproj/WebIconDatabase.m:
7684        (-[WebIconDatabase _iconByScalingIcon:toSize:]): Commented out wizzy scaling as it was causing an NSImage exception to be raised.
7685        * Plugins.subproj/WebPlugin.m:
7686        (-[WebNetscapePlugin _getPluginInfo]): Check Resource Manager errors
7687
76882002-09-08  Darin Adler  <darin@apple.com>
7689
7690        * Plugins.subproj/WebPluginStream.m:
7691        * Plugins.subproj/WebPluginView.m:
7692	Use #if ! rather than #ifndef with LOG_DISABLED, since it
7693	is set to 0 rather than not defined when LOG is enabled.
7694
76952002-09-08  Darin Adler  <darin@apple.com>
7696
7697        * Bookmarks.subproj/WebBookmarkGroup.m:
7698        * History.subproj/WebHistoryPrivate.m:
7699        * History.subproj/WebURLsWithTitles.m:
7700        * Misc.subproj/WebDownloadHandler.m:
7701        * Misc.subproj/WebIconDatabase.m:
7702        * Misc.subproj/WebIconLoader.m:
7703        * WebView.subproj/WebController.m:
7704        * WebView.subproj/WebDataSourcePrivate.m:
7705        * WebView.subproj/WebFrame.m:
7706        * WebView.subproj/WebFramePrivate.m:
7707        * WebView.subproj/WebHTMLView.m:
7708        * WebView.subproj/WebHTMLViewPrivate.m:
7709        * WebView.subproj/WebMainResourceClient.m:
7710        * WebView.subproj/WebPreferences.m:
7711        * WebView.subproj/WebViewPrivate.m:
7712	Remove unnecessary includes.
7713
77142002-09-08  Darin Adler  <darin@apple.com>
7715
7716	Update logging to use new implementation. Remove old.
7717
7718        * Misc.subproj/WebKitDebug.h: Removed.
7719        * Misc.subproj/WebKitDebug.m: Removed.
7720        * Misc.subproj/WebKitLogging.h: Added.
7721        * Misc.subproj/WebKitLogging.m: Added.
7722        * Misc.subproj/WebKitReallyPrivate.h: Removed.
7723        * WebKit.pbproj/project.pbxproj: Update for above changes.
7724
7725        * WebKit-tests.exp: Now empty.
7726
7727        * History.subproj/WebHistoryItem.m: Remove unneeded include.
7728
7729        * Bookmarks.subproj/WebBookmarkGroup.m:
7730        * History.subproj/WebHistoryPrivate.m:
7731        * Misc.subproj/WebDownloadHandler.m:
7732        * Misc.subproj/WebIconDatabase.m:
7733        * Plugins.subproj/WebPlugin.m:
7734        * Plugins.subproj/WebPluginDatabase.m:
7735        * Plugins.subproj/WebPluginNullEventSender.m:
7736        * Plugins.subproj/WebPluginStream.m:
7737        * Plugins.subproj/WebPluginView.m:
7738        * Plugins.subproj/npapi.m:
7739        * WebCoreSupport.subproj/WebTextRenderer.m:
7740        * WebView.subproj/WebDataSourcePrivate.m:
7741        * WebView.subproj/WebFrame.m:
7742        * WebView.subproj/WebFramePrivate.m:
7743        * WebView.subproj/WebHTMLView.m:
7744        * WebView.subproj/WebMainResourceClient.m:
7745	Change to use new log channels.
7746
77472002-09-08  Darin Adler  <darin@apple.com>
7748
7749	Remove empty handleDidBeginLoading and handleDidCancelLoading
7750	methods, now that they will never be called.
7751
7752        * Misc.subproj/WebIconLoader.m:
7753        * Plugins.subproj/WebPluginStream.m:
7754        * WebCoreSupport.subproj/WebSubresourceClient.m:
7755        * WebView.subproj/WebMainResourceClient.m:
7756
77572002-09-08  Darin Adler  <darin@apple.com>
7758
7759	Forgot to save out files from the editor in my last change.
7760
7761        * WebView.subproj/WebDataSource.m:
7762        * WebView.subproj/WebDataSourcePrivate.h:
7763        * WebView.subproj/WebDataSourcePrivate.m:
7764	Oops.
7765
77662002-09-08  Darin Adler  <darin@apple.com>
7767
7768	Finished weaning us from handleDidCancelLoading. Now I will remove both
7769	handleDidBeginLoading and handleDidCancelLoading.
7770
7771        * WebCoreSupport.subproj/WebSubresourceClient.h: Add a handle method.
7772        * WebCoreSupport.subproj/WebSubresourceClient.m:
7773        (-[WebSubresourceClient handleDidCancelLoading:]): Remove guts, move to cancel.
7774        (-[WebSubresourceClient handleDidFinishLoading:]): Remove the client from the
7775	data source now, not the handle.
7776        (-[WebSubresourceClient handleDidFailLoading:withError:]): Ditto.
7777        (-[WebSubresourceClient cancel]): Move guts here, also make the above change.
7778        (-[WebSubresourceClient handle]): Added.
7779
7780        * WebView.subproj/WebDataSource.m: Use clients list, not handles list.
7781        * WebView.subproj/WebDataSourcePrivate.h: Keep a list of subresource clients rather
7782	than a list of handles for the subresources.
7783        * WebView.subproj/WebDataSourcePrivate.m:
7784        (-[WebDataSourcePrivate dealloc]): Update to match new field names.
7785        (-[WebDataSource _updateLoading]): Use clients, not handles.
7786        (-[WebDataSource _startLoading:]): Move line about starting loading out of the if
7787	statement. I suspect the if statement is always true, though.
7788        (-[WebDataSource _addSubresourceClient:]): New name. Keep client pointer instead of
7789	handle now.
7790        (-[WebDataSource _removeSubresourceClient:]): Ditto.
7791        (-[WebDataSource _stopLoading]): Move download handler line into WebMainResourceClient
7792	since the "not sent when application is quitting" issue is gone now. Stop the subresource
7793	clients using the cancel call, not by cancelling the handle directly.
7794        (-[WebDataSource _defersCallbacksChanged]): Update for clients list, not handles list.
7795
7796        * WebView.subproj/WebMainResourceClient.m:
7797        (-[WebMainResourceClient didCancelWithHandle:]): Cancel the download handler here.
7798        (-[WebMainResourceClient handleDidReceiveData:data:]): Call didCancelWithHandle here.
7799	A loose end from the previous change.
7800
78012002-09-07  Chris Blumenberg  <cblu@apple.com>
7802
7803	Made the wizzy scaling an experiment.
7804
7805        * Misc.subproj/WebIconDatabase.m:
7806        (-[WebIconDatabase _iconByScalingIcon:toSize:]):
7807
78082002-09-06  Darin Adler  <darin@apple.com>
7809
7810	Almost weaned WebKit entirely from the handleDidBeginLoading and handleDidCancelLoading
7811	loading callbacks. We are planning to remove both of them.
7812
7813        * Plugins.subproj/WebPluginStream.m:
7814        (-[WebNetscapePluginStream startLoad]): Call _didStartLoading here so we don't need
7815	to rely on handleDidBeginLoading any more.
7816        (-[WebNetscapePluginStream stop]): Call cancel here so we don't need to rely on
7817	handleDidCancelLoading any more.
7818        (-[WebNetscapePluginStream handleDidBeginLoading:]): Empty out.
7819        (-[WebNetscapePluginStream handleDidFinishLoading:]): Nil out resource here.
7820        (-[WebNetscapePluginStream handleDidCancelLoading:]): Empty out.
7821        (-[WebNetscapePluginStream cancel]): Put cancel code here.
7822        (-[WebNetscapePluginStream handleDidFailLoading:withError:]): Nil out resource here.
7823
7824        * WebCoreSupport.subproj/WebBridge.m:
7825        (-[WebBridge startLoadingResource:withURL:]): Change to use WebCoreResourceHandle.
7826
7827        * WebCoreSupport.subproj/WebSubresourceClient.h: Change to use WebCoreResourceHandle.
7828        * WebCoreSupport.subproj/WebSubresourceClient.m:
7829        (-[WebSubresourceClient dealloc]): Release handle too, now that we have it.
7830        (-[WebSubresourceClient receivedProgressWithComplete:]): Moved up here and removed handle
7831	parameter.
7832        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:]): Do work here so
7833	we don't need to rely on handleDidBeginLoading any more.
7834        (-[WebSubresourceClient receivedError:]): Removed handle parameter.
7835        (-[WebSubresourceClient handleWillUseUserAgent:forURL:]):
7836        (-[WebSubresourceClient handleDidBeginLoading:]): Emptied out.
7837        (-[WebSubresourceClient handleDidCancelLoading:]): Updated, still needs to be emptied out.
7838        (-[WebSubresourceClient handleDidFinishLoading:]): Nil out handle.
7839        (-[WebSubresourceClient handleDidFailLoading:withError:]): Nil out handle.
7840        (-[WebSubresourceClient cancel]): New method, used by WebCore.
7841
7842        * WebCoreSupport.subproj/WebTextRenderer.m:
7843        (-[WebTextRenderer widthForCharacters:length:]): Moved up in the file to fix build failure.
7844
7845        * WebView.subproj/WebDataSourcePrivate.m:
7846        (-[WebDataSource _startLoading:]): Call didStartLoadingWithURL so we don't have to
7847	rely on handleDidBeginLoading.
7848        (-[WebDataSource _stopLoading]): Call didCancelWithHandle so we don't have to rely
7849	on handleDidCancelLoading.
7850
7851        * WebView.subproj/WebMainResourceClient.h: Add didStartLoadingWithURL and
7852	didCancelWithHandle to the public methods.
7853        * WebView.subproj/WebMainResourceClient.m:
7854        (-[WebMainResourceClient initWithDataSource:]):
7855        (-[WebMainResourceClient handleDidBeginLoading:]): Empty out.
7856        (-[WebMainResourceClient didCancelWithHandle:]): Move the bulk of handleDidCancelLoading here.
7857        (-[WebMainResourceClient handleDidCancelLoading:]): Empty out.
7858
7859        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView mouseDragged:]): Move the mouse up a little
7860	bit so it's "on" the dragged area, but not over the text.
7861
78622002-09-06  Richard Williamson  <rjw@apple.com>
7863
7864        Added support for khtml's justified text drawing.  Additional padding is distributed
7865        to space widths.  (Sites like www.osnews.com now render correctly.)
7866        
7867        Change word end rounding hack to use ceil of word width.  I'm still noticing a spacing anomaly
7868        that is fixed by a reload.  Occasionally text runs are still crammed together, but a reload uses
7869        correct spacing.  This anomaly is often visible on www.arstechnica.com.  Still investigating.
7870        
7871        * WebCoreSupport.subproj/WebTextRenderer.m:
7872        (-[WebTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
7873        (-[WebTextRenderer slowDrawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:attemptFontSubstitution:]):
7874        (-[WebTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
7875        (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
7876        (-[WebTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]):
7877        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
7878        
7879        Tweaks to dragged image.
7880        
7881        * WebView.subproj/WebHTMLView.m:
7882        (-[WebHTMLView mouseDragged:]):
7883
78842002-09-06  Richard Williamson (Home)  <rjw@apple.com>
7885
7886        Fixed symbol lookup problem.  NSLookupAndBindSymbol() dies horribly
7887        if symbol is missing.  Use NSIsSymbolNameDefined() first to check if
7888        symbol is present.
7889        
7890        * WebCoreSupport.subproj/WebTextRendererFactory.m:
7891
78922002-09-06  Darin Adler  <darin@apple.com>
7893
7894	Fix some minor anomalies and leaks.
7895
7896        * History.subproj/WebHistoryItem.m:
7897        (-[WebHistoryItem initWithURL:target:parent:title:]): Use copy, not retain.
7898        (-[WebHistoryItem dealloc]): Release the anchor, fix leak.
7899        (-[WebHistoryItem setURL:]): Check for URLs that are equal, not just ==.
7900        (-[WebHistoryItem setTitle:]): Copy, not retain.
7901        (-[WebHistoryItem setTarget:]): Copy, not retain.
7902        (-[WebHistoryItem setParent:]): Copy, not retain.
7903        (-[WebHistoryItem setDisplayTitle:]): Copy, not retain.
7904        (-[WebHistoryItem setAnchor:]): Copy, not retain.
7905        * WebView.subproj/WebControllerPolicyHandler.m:
7906        (-[WebPolicyPrivate dealloc]): Release the URL, call super, fix leaks.
7907        (-[WebPolicy _setPath:]): Use copy, not retain.
7908        * WebView.subproj/WebControllerPrivate.m:
7909        (-[WebControllerPrivate dealloc]): Release downloadProgressHandler,
7910	contextMenuHandler, locationChangeHandler, fix leaks.
7911
7912	Some fun with Richard's new code.
7913
7914        * WebView.subproj/WebHTMLView.m:
7915        (-[WebHTMLView mouseDragged:]): Center image around mouse instead of
7916	putting it up and to the right. Add more X space than Y space.
7917
79182002-09-06  Richard Williamson (Home)  <rjw@apple.com>
7919        
7920        * WebView.subproj/WebHTMLView.m:
7921        (-[WebHTMLView mouseDragged:]):
7922
7923        More fun and games with dragged links.
7924        Draw both a label and url (in a smaller font)
7925        into the dragged image.
7926
7927        * Misc.subproj/WebStringTruncator.h:
7928        * Misc.subproj/WebStringTruncator.m:
7929        (+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
7930        
7931        Added right string truncator.  Not optimized, but not used
7932        very often.  Currently just for dragged link experiment.
7933        
7934=== Alexander-22 ===
7935
79362002-09-06  Ken Kocienda  <kocienda@apple.com>
7937
7938	Declaration and initialization of variable on one line caused unused variable
7939	warning when building under deployment since the only use of the variable was
7940	in a debug statement.
7941
7942        * Plugins.subproj/WebPluginStream.m:
7943        (-[WebNetscapePluginStream receivedError:])
7944
79452002-09-05  Richard Williamson (Local)  <rjw@apple.com>
7946
7947        Experiment w/ dragging link label as drag image.
7948        Needs some visual tweaking, but good concept, I think.
7949        
7950        * WebView.subproj/WebHTMLView.m:
7951        (-[WebHTMLView mouseDragged:]):
7952
79532002-09-05  Richard Williamson (Local)  <rjw@apple.com>
7954
7955        Use the first text child node of the link element
7956        as the title for a dragged link.  We'll use this for
7957        the dragged image later too.
7958        
7959        * WebView.subproj/WebController.h:
7960        * WebView.subproj/WebController.m:
7961        * WebView.subproj/WebHTMLView.m:
7962        (-[WebHTMLView mouseDragged:]):
7963        * WebView.subproj/WebHTMLViewPrivate.m:
7964        (-[WebHTMLView _elementAtPoint:]):
7965
79662002-09-05  Richard Williamson (Local)  <rjw@apple.com>
7967
7968        Correctly save of document state in current
7969        document when going back.
7970        
7971        * WebCoreSupport.subproj/WebBridge.m:
7972        (-[WebBridge saveDocumentState:]):
7973        (-[WebBridge documentState]):
7974
79752002-09-05  Richard Williamson (Local)  <rjw@apple.com>
7976
7977        Fixed 3043505.  Disallows drag drops on originating view.
7978        
7979        * WebView.subproj/WebView.m:
7980        (-[WebView draggingEntered:]):
7981
79822002-09-05  Darin Adler  <darin@apple.com>
7983
7984	Update to use the new style of assertions.
7985	A few places still use the WebKitDebug.h, for logging.
7986
7987        * Bookmarks.subproj/WebBookmark.m:
7988        * Bookmarks.subproj/WebBookmarkGroup.m:
7989        * Bookmarks.subproj/WebBookmarkLeaf.m:
7990        * Bookmarks.subproj/WebBookmarkList.m:
7991        * Bookmarks.subproj/WebBookmarkSeparator.m:
7992        * History.subproj/WebHistory.m:
7993        * History.subproj/WebHistoryList.m:
7994        * History.subproj/WebHistoryPrivate.m:
7995        * History.subproj/WebURLsWithTitles.m:
7996        * Misc.subproj/WebDownloadHandler.m:
7997        * Misc.subproj/WebIconDatabase.m:
7998        * Misc.subproj/WebIconLoader.m:
7999        * Misc.subproj/WebKitDebug.h:
8000        * Misc.subproj/WebStringTruncator.m:
8001        * Panels.subproj/WebAuthenticationPanel.m:
8002        * Plugins.subproj/WebPlugin.m:
8003        * Plugins.subproj/WebPluginDatabase.m:
8004        * Plugins.subproj/WebPluginNullEventSender.m:
8005        * Plugins.subproj/WebPluginStream.m:
8006        * Plugins.subproj/WebPluginView.m:
8007        * Plugins.subproj/npapi.m:
8008        * WebCoreSupport.subproj/WebBridge.m:
8009        * WebCoreSupport.subproj/WebCookieAdapter.m:
8010        * WebCoreSupport.subproj/WebImageRenderer.m:
8011        * WebCoreSupport.subproj/WebImageRendererFactory.m:
8012        * WebCoreSupport.subproj/WebSubresourceClient.m:
8013        * WebCoreSupport.subproj/WebTextRenderer.m:
8014        * WebCoreSupport.subproj/WebTextRendererFactory.m:
8015        * WebCoreSupport.subproj/WebViewFactory.m:
8016        * WebView.subproj/WebController.m:
8017        * WebView.subproj/WebControllerPrivate.m:
8018        * WebView.subproj/WebDataSource.m:
8019        * WebView.subproj/WebDataSourcePrivate.m:
8020        * WebView.subproj/WebDefaultPolicyHandler.m:
8021        * WebView.subproj/WebFrame.m:
8022        * WebView.subproj/WebFramePrivate.m:
8023        * WebView.subproj/WebHTMLView.m:
8024        * WebView.subproj/WebHTMLViewPrivate.m:
8025        * WebView.subproj/WebMainResourceClient.m:
8026        * WebView.subproj/WebPreferences.m:
8027        * WebView.subproj/WebViewPrivate.m:
8028	Use new assertions.
8029
80302002-09-05  Richard Williamson (Local)  <rjw@apple.com>
8031
8032        Removed debugging.
8033        
8034        * History.subproj/WebBackForwardList.m:
8035        (-[WebBackForwardList addEntry:]):
8036
80372002-09-05  Richard Williamson (Local)  <rjw@apple.com>
8038
8039        Added support for saving/restoring document state
8040        in back/forward list.
8041        
8042        * History.subproj/WebBackForwardList.m:
8043        (-[WebBackForwardList addEntry:]):
8044        * History.subproj/WebHistoryItem.h:
8045        * History.subproj/WebHistoryItem.m:
8046        (-[WebHistoryItem dealloc]):
8047        (-[WebHistoryItem setLastVisitedDate:]):
8048        (-[WebHistoryItem documentState]):
8049        * WebCoreSupport.subproj/WebBridge.m:
8050        (-[WebBridge saveDocumentState:]):
8051        (-[WebBridge documentState]):
8052        * WebView.subproj/WebDataSourcePrivate.m:
8053        (-[WebDataSource _startLoading:]):
8054        
8055        Lookup post Jaguar CG SPI.  Can now run and build
8056        w/o patched CG.
8057        
8058        * WebCoreSupport.subproj/WebTextRendererFactory.m:
8059            
8060        Changed image links to drag file contents.
8061        
8062        * WebView.subproj/WebHTMLView.m:
8063        (-[WebHTMLView mouseDragged:]):
8064
80652002-09-05  Ken Kocienda  <kocienda@apple.com>
8066
8067	The WebError object has been removed from WebResourceHandle.
8068        Objects of that class now rely on the WebError object in WebResourceResponse. 
8069
8070	This code has been updated to ask WebResourceResponse for it WebError object,
8071	rather than asking WebResourceHandle.
8072
8073        * WebCoreSupport.subproj/WebSubresourceClient.m:
8074        (-[WebSubresourceClient handleDidFinishLoading:])
8075        * WebView.subproj/WebMainResourceClient.m:
8076        (-[WebMainResourceClient handleDidFinishLoading:])
8077
80782002-09-05  Chris Blumenberg  <cblu@apple.com>
8079
8080	Fixed 3021365 - Crash failing to load plugin from local file
8081
8082        * Plugins.subproj/WebPluginStream.h:
8083        * Plugins.subproj/WebPluginStream.m:
8084        (-[WebNetscapePluginStream receivedData:withHandle:]):
8085        (-[WebNetscapePluginStream receivedError:]):
8086        (-[WebNetscapePluginStream receivedData:withDataSource:]):
8087        (-[WebNetscapePluginStream handleDidReceiveData:data:]):
8088
80892002-09-05  Ken Kocienda  <kocienda@apple.com>
8090
8091        The first use of the WebResourceResponse object. This is just a baby step, though.
8092        I only use one variable in the new class, the statusCode, but all the code in
8093        the framework has been updated to use the statusCode from the response object.
8094
8095	Each of these methods was modified to call through to a WebResourceResponse to get 
8096	the status code.
8097
8098        * WebCoreSupport.subproj/WebSubresourceClient.m:
8099        (-[WebSubresourceClient handleDidFinishLoading:])
8100        * WebView.subproj/WebLoadProgress.m:
8101        (-[WebLoadProgress initWithResourceHandle:])
8102        * WebView.subproj/WebMainResourceClient.m:
8103        (-[WebMainResourceClient handleDidFinishLoading:])
8104
81052002-09-05  Richard Williamson (Local)  <rjw@apple.com>
8106        
8107        Only disable timed expiration of CG glyph cache if SPI is available.
8108        (per Bertrand's request)
8109        
8110        * WebCoreSupport.subproj/WebTextRendererFactory.m:
8111
81122002-09-05  John Sullivan  <sullivan@apple.com>
8113
8114        * Resources/url_icon.tiff: New generic icon from Steve Lemay.
8115	The @ sign lives, but does not spring.
8116
81172002-09-04  Darin Adler  <darin@apple.com>
8118
8119	One more pass of refinement on that last change.
8120
8121        * History.subproj/WebBackForwardList.m: (-[WebBackForwardList addEntry:]):
8122	Replace the last entry instead of just ignoring if this one matches.
8123
8124        * History.subproj/WebHistoryList.h: Add replaceEntryAtIndex. Remove addURL: and removeURL:.
8125
8126        * History.subproj/WebHistoryList.m:
8127        (-[WebHistoryList addEntry:]): Call removeEntry: rather than using an entire pasted copy here.
8128        (-[WebHistoryList removeEntry:]): Use a hash of the URL and the URL rather than relying on the
8129	fact that WebHistoryItem hashes and does isEqual based on the URL only.
8130        (-[WebHistoryList replaceEntryAtIndex:withEntry:]): Added. Used by the code above.
8131
81322002-09-04  Darin Adler  <darin@apple.com>
8133
8134	Fix bug where doing a reload adds an entry to the back/forward list.
8135
8136        * History.subproj/WebBackForwardList.m: (-[WebBackForwardList addEntry:]):
8137	If URL, target, and parent all match, then don't add an entry.
8138
8139        * WebKit.pbproj/project.pbxproj: Let Project Builder be the boss; I guess
8140	this means Chris is still using the old version.
8141
81422002-09-04  Chris Blumenberg  <cblu@apple.com>
8143
8144	- don't set nil data on the web file db
8145	- store absolute URLs in the db, not base URL/path combination URLs
8146	- support for multiple hosts with the same built-in icon
8147
8148        * Misc.subproj/WebIconDatabase.m:
8149        (-[WebIconDatabase init]): renamed some dictionaries
8150        (-[WebIconDatabase iconForSiteURL:withSize:]): call _builtInIconsForHost
8151        (-[WebIconDatabase _updateFileDatabase]): check for nil
8152        (-[WebIconDatabase _hasIconForSiteURL:]): call _pathForBuiltInIconForHost
8153        (-[WebIconDatabase _pathForBuiltInIconForHost:]): new
8154        (-[WebIconDatabase _builtInIconsForHost:]): call _pathForBuiltInIconForHost
8155        * Misc.subproj/WebIconDatabasePrivate.h:
8156        * WebView.subproj/WebDataSourcePrivate.m:
8157        (-[WebDataSource _loadIcon]): use absolute URL
8158
81592002-09-04  Chris Blumenberg  <cblu@apple.com>
8160
8161	Made the icon DB take a a path for built-in icons so that we only load them when necessary.
8162
8163        * Misc.subproj/WebIconDatabase.m:
8164        (-[WebIconDatabase init]):
8165        (-[WebIconDatabase iconForSiteURL:withSize:]):
8166        (-[WebIconDatabase _hasIconForSiteURL:]):
8167        (-[WebIconDatabase _builtInIconsForHost:]):
8168        (-[WebIconDatabase _setBuiltInIconAtPath:forHost:]):
8169        * Misc.subproj/WebIconDatabasePrivate.h:
8170        * WebKit.pbproj/project.pbxproj:
8171
81722002-09-04  Darin Adler  <darin@apple.com>
8173
8174	Fix unused variable warnings for deployment builds.
8175
8176        * Plugins.subproj/WebPluginView.m: Add ifndef NDEBUG around variable
8177	used only in log statements.
8178
81792002-09-04  Darin Adler  <darin@apple.com>
8180
8181	Removed the now-unnecessary iconURL from bookmarks and history.
8182
8183        * Bookmarks.subproj/WebBookmark.h:
8184        * Bookmarks.subproj/WebBookmark.m:
8185        * Bookmarks.subproj/WebBookmarkGroup.h:
8186        * Bookmarks.subproj/WebBookmarkGroup.m:
8187        * Bookmarks.subproj/WebBookmarkLeaf.h:
8188        * Bookmarks.subproj/WebBookmarkLeaf.m:
8189        * History.subproj/WebHistory.h:
8190        * History.subproj/WebHistory.m:
8191        * History.subproj/WebHistoryItem.h:
8192        * History.subproj/WebHistoryItem.m:
8193        * History.subproj/WebHistoryPrivate.h:
8194        * History.subproj/WebHistoryPrivate.m:
8195	Removed iconURL instance variables, methods, and parameters.
8196
81972002-09-04  Darin Adler  <darin@apple.com>
8198
8199	Did some minor plugin cleanup, mostly to make sure we don't
8200	change pages while a plugin is tracking.
8201
8202        * Plugins.subproj/WebPluginView.h: Add sendEvent and sendUpdateEvent.
8203	Remove the NPP_HandleEvent method.
8204        * Plugins.subproj/WebPluginView.m:
8205        (-[WebNetscapePluginView sendEvent:]): Sets up the "defersCallbacks"
8206	state, then sends the event.
8207
8208        * Plugins.subproj/WebNetscapePluginViewPrivate.h: Added.
8209	This stuff was shared in a different way before, and it
8210	hadn't even been renamed.
8211        * WebKit.pbproj/project.pbxproj: Added file.
8212        * Plugins.subproj/npapi.m: Use the new private header.
8213
8214        * Plugins.subproj/WebPluginNullEventSender.h: Hold a reference
8215	to the view.
8216        * Plugins.subproj/WebPluginNullEventSender.m:
8217        (-[WebNetscapePluginNullEventSender initWithPluginView:]):
8218	Retain the view.
8219        (-[WebNetscapePluginNullEventSender dealloc]): Release the view.
8220        (-[WebNetscapePluginNullEventSender sendNullEvents]): Use sendEvent:.
8221        (-[WebNetscapePluginNullEventSender stop]): No need for shouldStop.
8222
8223        * WebView.subproj/WebDataSourcePrivate.m:
8224        (-[WebDataSourcePrivate init]): Don't set contentPolicy to an enum value,
8225	when it's an object reference.
8226        (-[WebDataSourcePrivate dealloc]): Release contentPolicy to fix a leak.
8227
8228        * WebView.subproj/WebHTMLView.m:
8229        (-[WebHTMLView mouseDragged:]): Set draggedURL to nil in the else case,
8230	it was uninitialized before. Also center the icon better when dragging,
8231	but shouldn't we be dragging something more than the icon here?
8232
8233        * Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase defaultIconWithSize:]):
8234	Add a call to release. Doesn't really plug a leak, but cleaner this way.
8235
8236        * Plugins.subproj/WebPlugin.m: Tweaks.
8237        * WebView.subproj/WebMainResourceClient.m: Tweaks only.
8238
82392002-09-04  Ken Kocienda  <kocienda@apple.com>
8240
8241	Made more adjustments for API and behavior change that occurred in WebFoundation, 
8242	now that WebResourceHandle objects no buffer resource data as it is loaded. Where
8243	necessary, the WebKit objects now do their own buffering, however, in many cases,
8244	buffering is not necessary to maintain correct behavior.
8245
8246        * Misc.subproj/WebIconLoader.m:
8247        (-[WebIconLoaderPrivate dealloc]): Release new buffered resource data object.
8248        (-[WebIconLoader initWithURL:]): Allocate new buffered resource data object.
8249        (-[WebIconLoader handleDidFinishLoading:]): Modify API to remove data parameter.
8250        (-[WebIconLoader handleDidReceiveData:data:]): Buffer data as it is received.
8251        * Plugins.subproj/WebPluginStream.h: Added new buffered resource data object.
8252        * Plugins.subproj/WebPluginStream.m:
8253        (-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:attributes:]): Allocate new buffered resource data object.
8254        (-[WebNetscapePluginStream dealloc]): Release new buffered resource data object.
8255        (-[WebNetscapePluginStream receivedData:]): Buffer data as it is received (when necessary maintain correct behavior).
8256        (-[WebNetscapePluginStream handleDidFinishLoading:]): Modify API to remove data parameter.
8257        * WebCoreSupport.subproj/WebSubresourceClient.m:
8258        (-[WebSubresourceClient handleDidFinishLoading:]): Modify API to remove data parameter.
8259        * WebView.subproj/WebMainResourceClient.m:
8260        (-[WebMainResourceClient handleDidFinishLoading:]): Modify API to remove data parameter.
8261        (-[WebMainResourceClient handleDidReceiveData:data:]): Buffer data as it is received (when necessary maintain correct behavior).
8262
82632002-09-04  Chris Blumenberg  <cblu@apple.com>
8264
8265	Fixed: 3043024 - Built-in icons should match on *whatever.com or *whatever.whatever
8266	implemented wizzy scaling, but ifdef'd it out
8267
8268        * Misc.subproj/WebIconDatabase.m:
8269        (-[WebIconDatabase iconForSiteURL:withSize:]): call _builtItIconsForHost
8270        (-[WebIconDatabase _hasIconForSiteURL:]): call _builtItIconsForHost
8271        (-[WebIconDatabase _iconForFileURL:withSize:]): call _iconByScalingIcon:toSize:
8272        (-[WebIconDatabase _builtItIconsForHost:]): use better host matching
8273        (-[WebIconDatabase _cachedIconFromArray:withSize:]): call _iconByScalingIcon:toSize:
8274        (-[WebIconDatabase _iconByScalingIcon:toSize:]): renamed, ifdef'd out wizzy scaling
8275
82762002-09-04  Ken Kocienda  <kocienda@apple.com>
8277
8278	Changed WebKit so that it no longer relies on WebResourceHandle to buffer
8279	resource data as it is loaded. Instead, this buffering task has been moved
8280	out to the WebResourceClient, WebMainResourceClient in this case. This
8281	change is a "proof of concept" for the upcoming change where the API in
8282	WebFoundation for buffering resource data in WebResourceHandle will be
8283	removed altogether.
8284
8285        * WebView.subproj/WebDataSource.m:
8286        (-[WebDataSource data]): Changed to call WebMainResourceClient when resource data is needed.
8287        * WebView.subproj/WebMainResourceClient.h: Added mutable data ivar.
8288        * WebView.subproj/WebMainResourceClient.m:
8289        (-[WebMainResourceClient initWithDataSource:]): Added mutable data ivar.
8290        (-[WebMainResourceClient dealloc]): Release new mutable data ivar.
8291        (-[WebMainResourceClient resourceData]): Added accessor method.
8292        (-[WebMainResourceClient handleDidReceiveData:data:]): Append received data to the new mutable data object.
8293
82942002-09-03  John Sullivan  <sullivan@apple.com>
8295
8296        * Resources/url_icon.tiff: New image (still a placeholder)
8297	from HI. For the moment the default page icon is the legendary
8298	@-sign-on-a-spring. I've been promised a replacement by
8299	tomorrow sometime.
8300
83012002-09-03  John Sullivan  <sullivan@apple.com>
8302
8303	- removed small folder image used for bookmark lists; it is now
8304	up to clients to display an icon for bookmark lists.
8305
8306        * Bookmarks.subproj/WebBookmarkList.h: Removed _icon ivar
8307        * Bookmarks.subproj/WebBookmarkList.m:
8308        (-[WebBookmarkList dealloc]): Don't release _icon
8309        (-[WebBookmarkList icon]): just return nil
8310        * Resources/bookmark_folder.tiff: Removed.
8311        * WebKit.pbproj/project.pbxproj: Updated for removed file.
8312
83132002-09-03  Chris Blumenberg  <cblu@apple.com>
8314
8315	- Moved the default icon method to WebIconDatabase
8316	- Removed "icon URL" from the location change handler API
8317
8318        * History.subproj/WebHistoryItem.m:
8319        (-[WebHistoryItem icon]): don't worry about iconForSiteURL:withSize: returning nil
8320        * Misc.subproj/WebIconDatabase.h:
8321        * Misc.subproj/WebIconDatabase.m:
8322        (-[WebIconDatabase iconForSiteURL:withSize:]): return defaultIconWithSize if none found
8323        (-[WebIconDatabase defaultIconWithSize:]): added, loads, caches default icon
8324        (-[WebIconDatabase _hasIconForSiteURL:]): added, called by webdatasource to determine if icon is necessary
8325        * Misc.subproj/WebIconDatabasePrivate.h: added _hasIconForSiteURL
8326        * Misc.subproj/WebIconLoader.h: removed default icon method
8327        * Misc.subproj/WebIconLoader.m: removed default icon method
8328        * Resources/url_icon.tiff: resized to 32 x 32
8329        * WebKit.exp: export symbol for a dictionary key
8330        * WebKit.pbproj/project.pbxproj:
8331        * WebView.subproj/WebDataSourcePrivate.m: 
8332        (-[WebDataSource _loadIcon]): call _hasIconForSiteURL
8333        * WebView.subproj/WebHTMLView.m:
8334        (-[WebHTMLView mouseDragged:]): call defaultIconWithSize
8335        * WebView.subproj/WebLocationChangeHandler.h:
8336        * WebView.subproj/WebLocationChangeHandler.m:
8337        (-[WebLocationChangeHandler receivedPageIcon:forDataSource:]): renamed
8338
83392002-09-03  Ken Kocienda  <kocienda@apple.com>
8340
8341	Modify calls into WebFoundation to use the new WebResourceRequest class,
8342	and the modified API that kicks off load requests using WebResourceHandle. 
8343	More changes are planned for this code as the WebFoundation API modifications 
8344	progress.
8345
8346        * Misc.subproj/WebIconDatabase.m:
8347        (-[WebIconDatabase _iconForFileURL:withSize:])
8348        * Misc.subproj/WebIconLoader.m:
8349        (-[WebIconLoader startLoading])
8350        * Plugins.subproj/WebPluginStream.m:
8351        (-[WebNetscapePluginStream startLoad])
8352        * WebCoreSupport.subproj/WebBridge.m:
8353        (-[WebBridge objectLoadedFromCache:size:])
8354        * WebCoreSupport.subproj/WebSubresourceClient.m:
8355        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:])
8356        * WebKit.pbproj/project.pbxproj:
8357        * WebView.subproj/WebControllerPrivate.m:
8358        (-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:])
8359        * WebView.subproj/WebDataSourcePrivate.m:
8360        (-[WebDataSource _startLoading:])
8361
83622002-09-03  Darin Adler  <darin@apple.com>
8363
8364	Fix a reproducible crash pulling down the Go menu.
8365
8366        * Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase _iconForFileURL:withSize:]):
8367	Add a missing retain.
8368
8369        * WebKit.pbproj/project.pbxproj: Project Builder wants what it wants.
8370
83712002-09-02  Chris Blumenberg  <cblu@apple.com>
8372
8373	Icon DB.
8374
8375        * History.subproj/WebHistoryItem.m:
8376        (-[WebHistoryItem _retainIconInDatabase:]): calls retainIconForSiteURL: or releaseIconForSiteURL:
8377        (-[WebHistoryItem initWithURL:target:parent:title:]): call _retainIconInDatabase:
8378        (-[WebHistoryItem dealloc]): call _retainIconInDatabase:
8379        (-[WebHistoryItem icon]): call iconForSiteURL:withSize:
8380        (-[WebHistoryItem setURL:]): call _retainIconInDatabase:
8381        (-[WebHistoryItem initFromDictionaryRepresentation:]): call _retainIconInDatabase:
8382        * Misc.subproj/WebIconDatabase.h: Added.
8383        * Misc.subproj/WebIconDatabase.m: Added.
8384        (+[WebIconDatabase sharedIconDatabase]):
8385        (-[WebIconDatabase init]):
8386        (-[WebIconDatabase iconForSiteURL:withSize:]):
8387        (-[WebIconDatabase setIcon:forSiteURL:]):
8388        (-[WebIconDatabase setIcon:forHost:]):
8389        (-[WebIconDatabase retainIconForSiteURL:]):
8390        (-[WebIconDatabase releaseIconForSiteURL:]):
8391        (-[WebIconDatabase delayDatabaseCleanup]):
8392        (-[WebIconDatabase allowDatabaseCleanup]):
8393        (-[WebIconDatabase applicationWillTerminate:]):
8394        (-[WebIconDatabase _createFileDatabase]):
8395        (-[WebIconDatabase _loadIconDictionaries]):
8396        (-[WebIconDatabase _updateFileDatabase]):
8397        (-[WebIconDatabase _iconForIconURL:]):
8398        (-[WebIconDatabase _iconsForIconURL:]):
8399        (-[WebIconDatabase _iconForFileURL:withSize:]):
8400        (-[WebIconDatabase _setIcon:forIconURL:]):
8401        (-[WebIconDatabase _setIconURL:forSiteURL:]):
8402        (-[WebIconDatabase _setBuiltInIcon:forHost:]):
8403        (-[WebIconDatabase _retainIconForIconURL:]):
8404        (-[WebIconDatabase _releaseIconForIconURL:]):
8405        (-[WebIconDatabase _retainFutureIconForSiteURL:]):
8406        (-[WebIconDatabase _releaseFutureIconForSiteURL:]):
8407        (-[WebIconDatabase _retainOriginalIconsOnDisk]):
8408        (-[WebIconDatabase _releaseOriginalIconsOnDisk]):
8409        (-[WebIconDatabase _sendNotificationForSiteURL:]):
8410        (-[WebIconDatabase _addObject:toSetForKey:inDictionary:]):
8411        (-[WebIconDatabase _uniqueIconURL]):
8412        (-[WebIconDatabase _cachedIconFromArray:withSize:]):
8413        (-[WebIconDatabase _scaleIcon:toSize:]):
8414        * Misc.subproj/WebIconDatabasePrivate.h: Added.
8415        * Misc.subproj/WebIconLoader.h:
8416        * Misc.subproj/WebIconLoader.m:
8417        (+[WebIconLoader iconForFileAtPath:]):
8418        (-[WebIconLoader startLoading]):
8419        (-[WebIconLoader handleDidFinishLoading:data:]):
8420        * WebKit.exp:
8421        * WebKit.pbproj/project.pbxproj:
8422        * WebView.subproj/WebDataSourcePrivate.m:
8423        (-[WebDataSource _loadIcon]):
8424
84252002-08-30  Ken Kocienda  <kocienda@apple.com>
8426
8427	Removed one last reference to the now-removed WebDefaultMIMEType symbol.
8428	I missed it earlier.
8429
8430        * WebView.subproj/WebMainResourceClient.m:
8431        (-[WebMainResourceClient handleDidReceiveData:data:])
8432
84332002-08-30  Ken Kocienda  <kocienda@apple.com>
8434
8435	Failed to remove debugging spam before my last checkin. Sorry.
8436
8437        * WebKit.pbproj/project.pbxproj:
8438        * WebView.subproj/WebControllerPrivate.m:
8439        (+[WebController _MIMETypeForFile:])
8440
84412002-08-30  Ken Kocienda  <kocienda@apple.com>
8442
8443        * WebView.subproj/WebControllerPrivate.m:
8444        (+[WebController _MIMETypeForFile:]): Small tweak to account for change
8445	in behavior of a WebFoundation method upon which this method depends.
8446	The WebFoundation now returns nil when it cannot find a suitable mime
8447	type rather than returning a default. This function now checks for a nil
8448	return value and sets @"application/octet-stream" in that case.
8449
84502002-08-30  Richard Williamson (Home)  <rjw@apple.com>
8451
8452        Change link dragging behavior.  Drags URL, not URL contents.
8453        Still need to generate better image for dragging, will copy OmniWeb
8454        and drag link text.
8455        
8456        * WebView.subproj/WebHTMLView.m:
8457        (-[WebHTMLView mouseDragged:]):
8458
84592002-08-30  Darin Adler  <darin@apple.com>
8460
8461        * WebKit.pbproj/project.pbxproj: Allowed the new Project Builder to put in
8462	encodings for each file.
8463
8464=== Alexander-21 ===
8465
84662002-08-28  Darin Adler  <darin@apple.com>
8467
8468	- fixed 3036440 -- Crash running PLT with "Check for 'world leaks'" enabled
8469
8470        * WebView.subproj/WebDataSourcePrivate.h: Add defersCallbacks boolean.
8471        * WebView.subproj/WebDataSourcePrivate.m:
8472        (-[WebDataSource _setController:]): Don't try to look at the controller before,
8473	it might already be deallocated.
8474        (-[WebDataSource _defersCallbacksChanged]): Use a boolean to record whether the
8475	"defers callbacks" state changed since last time and do no work if it didn't.
8476	This replaces the check in _setController:.
8477
84782002-08-28  Richard Williamson (Local)  <rjw@apple.com>
8479
8480        Tell CG to not use time expiration of glyph cache and increase it's
8481        size.
8482        
8483        THIS CHANGE REQUIRES THAT YOU INSTALL THE CG ROOT.
8484        
8485        * WebCoreSupport.subproj/WebTextRendererFactory.m:
8486
84872002-08-28  Richard Williamson (Home)  <rjw@apple.com>
8488
8489        Fixed selection horkage I introduced with drag
8490        fix yesterday.
8491        
8492        * WebView.subproj/WebHTMLView.m:
8493        (-[WebHTMLView mouseDragged:]):
8494
84952002-08-27  Richard Williamson (Local)  <rjw@apple.com>
8496
8497        * WebView.subproj/WebHTMLView.m:
8498        (-[WebHTMLView mouseDown:]):
8499        (-[WebHTMLView mouseDragged:]):
8500        (-[WebHTMLView mouseMovedNotification:]):
8501        * WebView.subproj/WebHTMLViewPrivate.h:
8502        * WebView.subproj/WebHTMLViewPrivate.m:
8503
8504        Fixed active link style.  Cleaned up and fixed drag initiation
8505        for links and images.  Dotted lines not drawing correcly, but
8506        other styles are applied correctly.
8507        
8508        * WebKit.exp:
8509        * History.subproj/WebHistory.h:
8510        * History.subproj/WebHistory.m:
8511        
8512        Added some constants.
8513
8514        * WebCoreSupport.subproj/WebTextRendererFactory.m:
8515
8516        Code to change CG caching policy.  Not enabled until
8517        we receive a root from CG team.
8518        
85192002-08-27  Darin Adler  <darin@apple.com>
8520
8521	- fixed 3031583 -- directory.apple.com now gives "unsupported" redirect
8522
8523        * WebView.subproj/WebDataSource.m: (-[WebDataSource initWithURL:attributes:flags:]):
8524	Don't create the resource handle here. It's a bit too early.
8525        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading:]):
8526	Create the resource handle here, now that we have a controller to get a user agent from.
8527
8528        * WebView.subproj/WebMainResourceClient.m:
8529        (-[WebMainResourceClient handleWillUseUserAgent:forURL:]): Add an assert that will catch
8530	any future problems of this kind.
8531
8532        * WebCoreSupport.subproj/WebBridge.m:
8533        (-[WebBridge defersLoading]): Added. New call for use in WebCore.
8534        (-[WebBridge setDefersLoading:]): Added. New call for use in WebCore.
8535
85362002-08-26  Darin Adler  <darin@apple.com>
8537
8538	Add machinery for deferring callbacks. Not used yet.
8539
8540        * WebView.subproj/WebControllerPrivate.h: Add methods.
8541        * WebView.subproj/WebControllerPrivate.m:
8542        (-[WebController _defersCallbacks]): Returns old state.
8543        (-[WebController _setDefersCallbacks:]): Changes state and calls _defersCallbacksChanged
8544	on the main frame.
8545
8546        * WebView.subproj/WebFramePrivate.h: Add _defersCallbacksChanged.
8547        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _defersCallbacksChanged]):
8548	Calls _defersCallbacksChanged on both data sources.
8549
8550        * WebView.subproj/WebDataSourcePrivate.h: Add _defersCallbacksChanged.
8551        * WebView.subproj/WebDataSourcePrivate.m:
8552        (-[WebDataSource _setController:]): Call _defersCallbacksChanged if changing the controller
8553	changes the state.
8554        (-[WebDataSource _addResourceHandle:]): Call setDefersCallbacks:YES on the new handle if
8555	we are already attached to a controller that defers callbacks.
8556        (-[WebDataSource _defersCallbacksChanged]): Call setDefersCallbacks on all the handles, and
8557	call _defersCallbacksChanged on the child frames as well.
8558
8559        * WebView.subproj/WebDataSource.m: (-[WebDataSource controller]):
8560	We need to know about all controller changes, so it's unacceptable to consult our
8561	parent about the controller. But we already do know about it and this code was unnecessary.
8562	Leave the old code around as an assert only.
8563
85642002-08-26  Richard Williamson  <rjw@apple.com>
8565
8566        * History.subproj/WebHistory.h:
8567        * History.subproj/WebHistory.m:
8568        (+[WebHistory webHistoryWithFile:]):
8569        Stage 1, set the shared history instance.  This'll move to
8570        WebKit soon.
8571        
8572        * WebView.subproj/WebView.m:
8573        (-[WebView setFrame:]):
8574        Only force display if in live resize.
8575
85762002-08-26  John Sullivan  <sullivan@apple.com>
8577	
8578	- fixed bug where dragging a separator in the Bookmarks window
8579	would hit an assertion.
8580
8581        * Bookmarks.subproj/WebBookmarkSeparator.m:
8582        (-[WebBookmarkSeparator initWithGroup:]): Removed obsolete
8583	assertion that group is not nil.
8584        * Bookmarks.subproj/WebBookmarkLeaf.m:
8585        (-[WebBookmarkLeaf initWithTitle:group:]):
8586	Removed a similar obsolete assertion here.
8587        * Bookmarks.subproj/WebBookmarkList.m:
8588        (-[WebBookmarkList initWithTitle:group:]):
8589	Removed a similar obsolete assertion here.
8590
85912002-08-23  Darin Adler  <darin@apple.com>
8592
8593        * WebView.subproj/WebFrame.m: (-[WebFrame reset]): Remove unneeded call to _reset.
8594
8595        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _setDataSource:]): Add code that
8596	removes the KHTML stuff from the frame when switching to another type of view.
8597	It would be better to do this at some other level, but without this code, we end
8598	up leaving the entire KHTMLView behind when we switch to a non-HTML page.
8599
86002002-08-22  Richard Williamson  <rjw@apple.com>
8601
8602        Changed public string from #define to extern NSString.
8603        
8604        * WebKit.exp:
8605        * WebView.subproj/WebController.h:
8606        * WebView.subproj/WebController.m:
8607        * WebView.subproj/WebDefaultContextMenuHandler.m:
8608        (-[WebDefaultContextMenuHandler contextMenuItemsForElement:defaultMenuItems:]):
8609        (-[WebDefaultContextMenuHandler openNewWindowWithURL:]):
8610        (-[WebDefaultContextMenuHandler downloadURL:]):
8611        (-[WebDefaultContextMenuHandler openLinkInNewWindow:]):
8612        (-[WebDefaultContextMenuHandler downloadLinkToDisk:]):
8613        (-[WebDefaultContextMenuHandler copyLinkToClipboard:]):
8614        (-[WebDefaultContextMenuHandler openImageInNewWindow:]):
8615        (-[WebDefaultContextMenuHandler downloadImageToDisk:]):
8616        (-[WebDefaultContextMenuHandler copyImageToClipboard:]):
8617        (-[WebDefaultContextMenuHandler openFrameInNewWindow:]):
8618        * WebView.subproj/WebHTMLViewPrivate.m:
8619        (-[WebHTMLView _elementAtPoint:]):
8620        (-[WebHTMLView _continueAfterCheckingDragForEvent:]):
8621
86222002-08-22  Ken Kocienda  <kocienda@apple.com>
8623
8624	Passing the main load's attributes to the subresource loads causes 
8625	breakage (most visible when we POST).
8626	
8627	Right now, we just rely on flags to handle "back/forward" loads, so
8628	the attributes were not actually being used.
8629
8630	A better fix needs to be put in place when the soon-to-be-done 
8631	attributes/flags rework is done.
8632
8633        * WebCoreSupport.subproj/WebSubresourceClient.m:
8634        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:]):
8635
8636=== Alexander-20 ===
8637
86382002-08-21  Richard Williamson  <rjw@apple.com>
8639
8640        Simple name change.  Plugin -> NetscapePlugin in anticipation
8641        of other plugin related API.
8642        
8643        Removed vestigal WebDocumentLoading.
8644        
8645        * Plugins.subproj/WebPlugin.h:
8646        * Plugins.subproj/WebPlugin.m:
8647        (-[WebNetscapePlugin load]):
8648        * Plugins.subproj/WebPluginDatabase.h:
8649        * Plugins.subproj/WebPluginDatabase.m:
8650        (+[WebNetscapePluginDatabase installedPlugins]):
8651        (-[WebNetscapePluginDatabase pluginForMimeType:]):
8652        (-[WebNetscapePluginDatabase pluginForExtension:]):
8653        (-[WebNetscapePluginDatabase pluginWithFilename:]):
8654        (-[WebNetscapePluginDatabase MIMETypes]):
8655        (-[WebNetscapePluginDatabase init]):
8656        * Plugins.subproj/WebPluginNullEventSender.h:
8657        * Plugins.subproj/WebPluginNullEventSender.m:
8658        (-[WebNetscapePluginNullEventSender initWithPluginView:]):
8659        (-[WebNetscapePluginNullEventSender sendNullEvents]):
8660        * Plugins.subproj/WebPluginStream.h:
8661        * Plugins.subproj/WebPluginStream.m:
8662        (-[WebNetscapePluginStream getFunctionPointersFromPluginView:]):
8663        (-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:attributes:]):
8664        * Plugins.subproj/WebPluginView.h:
8665        * Plugins.subproj/WebPluginView.m:
8666        (-[WebNetscapePluginView initWithFrame:plugin:URL:baseURL:mime:arguments:]):
8667        (-[WebNetscapePluginView start]):
8668        (-[WebNetscapePluginView provisionalDataSourceChanged:]):
8669        (-[WebNetscapePluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
8670        (-[WebNetscapePluginView destroyStream:reason:]):
8671        * WebCoreSupport.subproj/WebViewFactory.m:
8672        (-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
8673        (-[WebViewFactory pluginsInfo]):
8674        (-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
8675        * WebView.subproj/WebController.h:
8676        * WebView.subproj/WebController.m:
8677        (+[WebController canShowMIMEType:]):
8678        * WebView.subproj/WebDocument.h:
8679        * WebView.subproj/WebFramePrivate.h:
8680        * WebView.subproj/WebHTMLView.m:
8681        (-[WebHTMLView provisionalDataSourceChanged:]):
8682        (-[WebHTMLView provisionalDataSourceCommitted:]):
8683        (-[WebHTMLView dataSourceUpdated:]):
8684        * WebView.subproj/WebHTMLViewPrivate.m:
8685        (-[NSView _web_stopIfPluginView]):
8686        * WebView.subproj/WebImageView.h:
8687        * WebView.subproj/WebTextView.h:
8688        * WebView.subproj/WebView.h:
8689        * WebView.subproj/WebViewPrivate.h:
8690        * WebView.subproj/WebViewPrivate.m:
8691        (-[WebView _makeDocumentViewForDataSource:]):
8692
8693        Still need to muck with cvs server to change file names.
8694        
86952002-08-20  David Hyatt  <hyatt@apple.com>
8696
8697	Raising the layout delay from 0.75 to 1.00.  This should be
8698	a little more conservative and matches the value used by Gecko.
8699	
8700        * WebView.subproj/WebPreferences.m:
8701        (+[WebPreferences load]):
8702
87032002-08-20  David Hyatt  <hyatt@apple.com>
8704
8705	Lower the paint/layout delay from 1.85 to 0.75, since we've
8706	gotten a lot faster.
8707	
8708        * WebView.subproj/WebPreferences.m:
8709        (+[WebPreferences load]):
8710
87112002-08-20  John Sullivan  <sullivan@apple.com>
8712
8713        * WebView.subproj/WebMainResourceClient.m:
8714        (-[WebMainResourceClient handleDidReceiveData:data:]):
8715	Fixed uninitialized variable that Maciej's deployment build found.
8716
87172002-08-20  John Sullivan  <sullivan@apple.com>
8718
8719	Fixed problem with previous checkin that was causing
8720	drag-and-drop for files to fail (at least).
8721
8722        * WebView.subproj/WebFramePrivate.m:
8723        (-[WebFrame _shouldShowURL:]): pass isDirectory, not YES,
8724	to fileURLPolicyForMIMEType:inFrame:isDirectory:
8725
87262002-08-20  John Sullivan  <sullivan@apple.com>
8727
8728	WebKit part of fixes for:
8729	- 3027491 -- failure loading frame's resource leads to misbehaving panel
8730	- 3027494 -- failure loading frame's resource leads to error message in Alex, silence in IE
8731	- 3027697 -- alert box for missing file covered by browser window; should be a sheet
8732	- 3014123 -- error sheet when iframe has URL with bad path
8733
8734	Cleaned up the WebPolicy APIs to pass frames and URLs consistently. Also cleaned
8735	up _shouldShowURL: (formerly _shouldShowDataSource:) method quite a bit.
8736
8737        * WebView.subproj/WebControllerPolicyHandler.h:
8738        * WebView.subproj/WebDefaultContextMenuHandler.m:
8739        (-[WebDefaultContextMenuHandler downloadURL:]):
8740        * WebView.subproj/WebDefaultPolicyHandler.m:
8741        (-[WebDefaultPolicyHandler URLPolicyForURL:inFrame:]):
8742        (-[WebDefaultPolicyHandler fileURLPolicyForMIMEType:inFrame:isDirectory:]):
8743        (-[WebDefaultPolicyHandler unableToImplementPolicy:error:forURL:inFrame:]):
8744        * WebView.subproj/WebFrame.m:
8745        (-[WebFrame setProvisionalDataSource:]):
8746        * WebView.subproj/WebMainResourceClient.m:
8747        (-[WebMainResourceClient handleDidReceiveData:data:]):
8748	Made various Policy-related methods pass the frame and when necessary the
8749	URL instead of the dataSource (or not even that in some broken cases).
8750	Collapsed the three unableToImplementXXXPolicy: methods into one.
8751
8752        * WebView.subproj/WebFramePrivate.h: Change _shouldShowDataSource: to
8753	_shouldShowURL:
8754        * WebView.subproj/WebFramePrivate.m:
8755        (-[WebFrame handleUnimplementablePolicy:errorCode:forURL:]): New helper method.
8756        (-[WebFrame _shouldShowURL:]): use case statements instead of nested ifs;
8757	use handleUnimplementablePolicy: to reduce duplicated code; update for API
8758	changes; eliminate non-useful local variables.
8759
87602002-08-20  Darin Adler  <darin@apple.com>
8761
8762	- fixed 3023076 -- Strange font chosen, widths screwed up, when text includes 007F characters
8763
8764        * WebCoreSupport.subproj/WebTextRenderer.m:
8765        (-[WebTextRenderer convertCharacters:length:toGlyphs:skipControlCharacters:]):
8766        (-[WebTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]):
8767        (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
8768	Treat 007F as a control character, skipping it just as we do other control characters.
8769
87702002-08-20  Darin Adler  <darin@apple.com>
8771
8772        * WebView.subproj/WebController.m:
8773        (-[WebController setApplicationNameForUserAgent:]):
8774	Lock in here, in anticipation of actually using the name in the
8775	user agent string.
8776
87772002-08-20  Darin Adler  <darin@apple.com>
8778
8779	WebKit part of support for tabbing into and out of the toolbar.
8780
8781        * WebCoreSupport.subproj/WebBridge.m:
8782        (-[WebBridge nextKeyViewOutsideWebViews]): Ask the main WebView for its
8783	nextKeyView on behalf of WebCore.
8784        (-[WebBridge previousKeyViewOutsideWebViews]): Ask the main WebView for its
8785	previousKeyView on behalf of WebCore.
8786
8787        * WebView.subproj/WebHTMLView.m: (-[WebHTMLView becomeFirstResponder]):
8788	When we are being tabbed-into, make the first or last view in the bridge
8789	first responder, instead of taking it ourselves.
8790
8791        * WebView.subproj/WebView.m: (-[WebView becomeFirstResponder]):
8792	Always make the document view the first responder instead of taking it
8793	ourselves.
8794
87952002-08-19  Chris Blumenberg  <cblu@apple.com>
8796
8797	Fixed 3025019: "only-if-cached" attribute fetches data from network if cached but expired
8798
8799        * Misc.subproj/WebIconLoader.m:
8800        (-[WebIconLoader iconFromCache]):
8801
88022002-08-19  Darin Adler  <darin@apple.com>
8803
8804	- fixed 2863025 -- Need to implement TABing between widgets in forms
8805
8806	Implemented tabbing into a web view's fields. I now consider the task of
8807	tabbing between widgets done. But there are many loose ends, each with its
8808	own bug report.
8809
8810        * WebView.subproj/WebHTMLView.m:
8811        (-[WebHTMLView dealloc]): Set _private to nil so we can properly handle calls
8812	that come from NSView dealloc.
8813        (-[WebHTMLView provisionalDataSourceChanged:]): No need to pass width and height
8814	to createKHTMLViewWithNSView any more. Also, just pass self rather than making
8815	the roung trip to the WebFrame and the WebView back here.
8816        (-[WebHTMLView nextKeyView]): Added. Calls the bridge version when we are called
8817	from nextValidKeyView, the normal version the rest of the time.
8818        (-[WebHTMLView previousKeyView]): Added. Calls the bridge version when we are called
8819	from nextValidKeyView, the normal version the rest of the time.
8820        (-[WebHTMLView nextValidKeyView]): Set inNextValidKeyView and call super.
8821        (-[WebHTMLView previousValidKeyView]): Set inNextValidKeyView and call super.
8822        * WebView.subproj/WebHTMLViewPrivate.h: Add inNextValidKeyView flag.
8823
88242002-08-18  Darin Adler  <darin@apple.com>
8825
8826	Update WebResourceClient instances for new API, including adding
8827	the handleWillUseUserAgent:forURL: method.
8828
8829        * Misc.subproj/WebIconLoader.m:
8830        * Plugins.subproj/WebPluginStream.m:
8831        * WebCoreSupport.subproj/WebSubresourceClient.m:
8832        * WebView.subproj/WebMainResourceClient.m:
8833	These were all the clients that needed updating.
8834
8835        * WebView.subproj/WebController.m:
8836        (-[WebController setUserAgent:]): Lock so that we can set the user agent
8837	even though another thread could be calling userAgentForURL:.
8838        (-[WebController userAgentForURL:]): Ditto.
8839
8840        * WebView.subproj/WebControllerPrivate.h: Add lock.
8841        * WebView.subproj/WebControllerPrivate.m:
8842        (-[WebControllerPrivate init]): Create lock.
8843        (-[WebControllerPrivate dealloc]): Release lock.
8844
8845        * WebView.subproj/WebDataSourcePrivate.m:
8846        (-[WebDataSource _stopLoading]): Improve comment.
8847
88482002-08-18  Darin Adler  <darin@apple.com>
8849
8850        * Misc.subproj/WebIconLoader.m:
8851        (-[WebIconLoader iconFromCache]):
8852        (-[WebIconLoader WebResourceHandleDidFinishLoading:data:]):
8853	Don't process each icon twice. We need to have the loader as a client even for the
8854	synchronous case because of the user agent issue, but that causes double work.
8855
88562002-08-16  Darin Adler  <darin@apple.com>
8857
8858	Step 3 in adding user agent API to WebKit and WebFoundation.
8859	Add the calls to WebKit to configure the user-agent string.
8860	Change WebCore to get the user-agent from WebKit via the bridge.
8861
8862        * WebCoreSupport.subproj/WebBridge.m:
8863        (-[WebBridge userAgentForURL:]): Added. Calls [WebController userAgentForURL:].
8864
8865        * WebView.subproj/WebController.h: Add three new methods.
8866        * WebView.subproj/WebController.m:
8867        (-[WebController setApplicationNameForUserAgent:]): Store an application name that
8868	will be used to build up the user-agent string.
8869        (-[WebController setUserAgent:]): Set an override user agent; mainly useful for
8870	testing user-agent strings different from the one WebKit supplies.
8871        (-[WebController userAgentForURL:]): Public API for getting the user agent string
8872	that the WebController will use for a particular URL.
8873
8874        * WebView.subproj/WebControllerPrivate.h: Add fields for the user-agent parameters.
8875        * WebView.subproj/WebControllerPrivate.m:
8876        (-[WebControllerPrivate dealloc]): Release both strings when the controller goes away.
8877
88782002-08-16  Darin Adler  <darin@apple.com>
8879
8880	Missed one call to [WebResourceHandle initWithURL:].
8881        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge objectLoadedFromCache:size:]):
8882        Change to call [WebResourceHandle initWithClient:URL:] with nil for the client.
8883
88842002-08-16  Darin Adler  <darin@apple.com>
8885
8886	Oops. Forgot to save in Project Builder before committing.
8887
8888        * Plugins.subproj/WebPluginStream.m:
8889        * WebView.subproj/WebDataSource.m:
8890        * WebView.subproj/WebDataSourcePrivate.h:
8891        * WebView.subproj/WebDataSourcePrivate.m:
8892
88932002-08-16  Darin Adler  <darin@apple.com>
8894
8895	Update for change to the WebResourceHandle API where the client is
8896	passed in at init time.
8897
8898        * Misc.subproj/WebIconLoader.m:
8899        (-[WebIconLoader iconFromCache]): Pass self as client when creating handle for
8900	foreground "only if cached" load. Also don't put the handle into the class's
8901	data structure in this case.
8902        (-[WebIconLoader startLoading]): Pass self as client when creating handle
8903	instead of making a separate addClient call. Also fix potential leak if this
8904	is called when we are already loading.
8905        (-[WebIconLoader stopLoading]): Release the handle and nil it out right here.
8906        * Plugins.subproj/WebPluginStream.m:
8907        (-[WebPluginStream startLoad]): Pass client when creating handle rather than
8908	doing an addClient afterward.
8909        (-[WebPluginStream stop]): Don't do a removeClient.
8910        * WebCoreSupport.subproj/WebSubresourceClient.m:
8911        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:]):
8912        * WebView.subproj/WebDataSource.m:
8913	(-[WebDataSource initWithURL:attributes:flags:]): Pass client when creating handle.
8914        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading:]):
8915	Since client is not created in init, don't bother creating it here.
8916
89172002-08-16  John Sullivan  <sullivan@apple.com>
8918
8919	Split searchability out from WebTextView so it could be used
8920	elsewhere (specifically, in DOM window).
8921
8922        * Misc.subproj/WebSearchableTextView.h: Added.
8923        * Misc.subproj/WebSearchableTextView.m: Added.
8924        (-[WebSearchableTextView searchFor:direction:caseSensitive:]):
8925        (-[NSString findString:selectedRange:options:wrap:]):
8926	New class, split out from WebTextView, which now inherits from it.
8927
8928        * WebView.subproj/WebTextView.h:
8929        * WebView.subproj/WebTextView.m:
8930	Took out the searching stuff and put it in WebSearchableTextView;
8931	made WebTextView inherit from WebSearchableTextView.
8932
8933        * WebKit.pbproj/project.pbxproj: Added new files, made
8934	WebSearchableTextView.h be Private.
8935
89362002-08-16  John Sullivan  <sullivan@apple.com>
8937
8938	- fixed 3025394 -- Bookmarks & History items do not remember their icons
8939	across launches
8940	- fixed 3025421 -- Dragging from location field proxy icon to favorites bar 
8941	loses page icon
8942	- part of fix for 3026279 -- Bookmarks should lose their favIcons when the
8943	URL is edited
8944
8945        * Bookmarks.subproj/WebBookmarkLeaf.m:
8946        (-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
8947        (-[WebBookmarkLeaf dictionaryRepresentation]):
8948	Removed the #ifdeffed-out code for storing iconURL in dictionary; this was
8949	unnecessary because it is also done by the lower-level WebHistoryItem.
8950
8951        * History.subproj/WebHistoryItem.m:
8952        (-[WebHistoryItem _setIcon:]): New method, extracted from -icon for clarity.
8953        (-[WebHistoryItem icon]): Fixed problem where once an icon was set it would
8954	never be changed, even if the iconURL is changed. Also, use _setIcon for
8955	clarity and to fix retainCount bugs.
8956        (-[WebHistoryItem dictionaryRepresentation]):
8957	Removed the #ifdef around the line that stores the URL in the dictionary.
8958	Gramps decided that this architecture is OK after all.
8959
89602002-08-16  Darin Adler  <darin@apple.com>
8961
8962	Fixed broken build.
8963
8964        * Misc.subproj/WebTestController.m: Added empty placeholder methods.
8965
89662002-08-15  John Sullivan  <sullivan@apple.com>
8967
8968	- fixed 3025770 -- "New Bookmark" button hits assertion and crashes
8969
8970        * Bookmarks.subproj/WebBookmarkLeaf.m:
8971        (-[WebBookmarkLeaf setURLString:]): Instead of asserting that parameter
8972	is not nil, handle the nil case by converting to empty string. This was
8973	another regression from yesterday's favIcon changes.
8974
8975=== Alexander-19 ===
8976
89772002-08-15  John Sullivan  <sullivan@apple.com>
8978
8979	Disabled support for storing favIcon URLs in bookmarks; Gramps realized
8980	this is an architecture problem that needs a better solution, and he
8981	didn't want to ship Alex-18 with this problem.
8982
8983        * Bookmarks.subproj/WebBookmarkLeaf.m:
8984        (-[WebBookmarkLeaf dictionaryRepresentation]):
8985        * History.subproj/WebHistoryItem.m:
8986        (-[WebHistoryItem dictionaryRepresentation]):
8987	Commented out the code that added the iconURLString in the dictionary used
8988	for writing out file. This dictionary is also used on the pasteboard, so this
8989	change causes the favIcon not to be remembered when you drag from proxy icon
8990	to favorites bar.
8991
8992=== Alexander-18 ===
8993
89942002-08-14  Chris Blumenberg  <cblu@apple.com>
8995
8996	Support for showing favicons in bookmarks and history.
8997
8998	Renamed "image" to "icon" in all places.
8999
9000	Made history and bookmarks take and save an icon URL
9001
9002        * Bookmarks.subproj/WebBookmark.h:
9003        * Bookmarks.subproj/WebBookmark.m:
9004        (-[WebBookmark icon]):
9005        (-[WebBookmark iconURL]):
9006        (-[WebBookmark setIconURL:]):
9007        * Bookmarks.subproj/WebBookmarkGroup.h:
9008        * Bookmarks.subproj/WebBookmarkGroup.m:
9009        (-[WebBookmarkGroup _setTopBookmark:]):
9010        (-[WebBookmarkGroup addNewBookmarkToBookmark:withTitle:iconURL:URLString:type:]):
9011        (-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:iconURL:URLString:type:]):
9012        * Bookmarks.subproj/WebBookmarkLeaf.h:
9013        * Bookmarks.subproj/WebBookmarkLeaf.m:
9014        (-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
9015        (-[WebBookmarkLeaf dictionaryRepresentation]):
9016        (-[WebBookmarkLeaf copyWithZone:]):
9017        (-[WebBookmarkLeaf icon]):
9018        (-[WebBookmarkLeaf iconURL]):
9019        (-[WebBookmarkLeaf setIconURL:]):
9020        (-[WebBookmarkLeaf setURLString:]):
9021        * Bookmarks.subproj/WebBookmarkList.h:
9022        * Bookmarks.subproj/WebBookmarkList.m:
9023        (-[WebBookmarkList initWithTitle:group:]):
9024        (-[WebBookmarkList dealloc]):
9025        (-[WebBookmarkList copyWithZone:]):
9026        (-[WebBookmarkList icon]):
9027        * Bookmarks.subproj/WebBookmarkSeparator.m:
9028        (-[WebBookmarkSeparator icon]):
9029        * History.subproj/WebHistory.h:
9030        * History.subproj/WebHistory.m:
9031        (-[WebHistory updateURL:title:displayTitle:iconURL:forURL:]):
9032        * History.subproj/WebHistoryItem.h:
9033        * History.subproj/WebHistoryItem.m:
9034        (-[WebHistoryItem init]):
9035        (-[WebHistoryItem initWithURL:title:]):
9036        (-[WebHistoryItem initWithURL:target:parent:title:]):
9037        (-[WebHistoryItem dealloc]):
9038        (-[WebHistoryItem iconURL]):
9039        (-[WebHistoryItem icon]):
9040        (-[WebHistoryItem setIconURL:]):
9041        (-[WebHistoryItem dictionaryRepresentation]):
9042        (-[WebHistoryItem initFromDictionaryRepresentation:]):
9043        * History.subproj/WebHistoryPrivate.h:
9044        * History.subproj/WebHistoryPrivate.m:
9045        (-[WebHistoryPrivate updateURL:title:displayTitle:iconURL:forURL:]):
9046        * Misc.subproj/WebIconLoader.h:
9047        * Misc.subproj/WebIconLoader.m:
9048        (+[WebIconLoader iconLoaderWithURL:]):
9049        (-[WebIconLoader initWithURL:]):
9050        (-[WebIconLoader URL]):
9051        (-[WebIconLoader _icons]):
9052        (-[WebIconLoader delegate]):
9053        (-[WebIconLoader iconFromCache]):
9054        (-[WebIconLoader startLoading]):
9055        (-[WebIconLoader WebResourceHandleDidFinishLoading:data:]):
9056        * WebCoreSupport.subproj/WebBridge.m:
9057        * WebView.subproj/WebDataSourcePrivate.m:
9058        (-[WebDataSource _loadIcon]):
9059        * WebView.subproj/WebFramePrivate.m:
9060        (-[WebFrame _transitionToCommitted]):
9061        * WebView.subproj/WebLocationChangeHandler.h:
9062        * WebView.subproj/WebLocationChangeHandler.m:
9063        (-[WebLocationChangeHandler receivedPageIcon:fromURL:forDataSource:]):
9064
90652002-08-14  Darin Adler  <darin@apple.com>
9066
9067	Remove some unused things. Fix minor problems.
9068
9069        * Plugins.subproj/WebPluginNullEventSender.m:
9070        * Plugins.subproj/WebPluginView.m:
9071        * WebCoreSupport.subproj/WebTextRenderer.m:
9072	Fixed places that were using the C++ bool instead of
9073	the Objective C BOOL.
9074
9075        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _receivedData:]):
9076	Remove old code related to the dummy data source.
9077
9078        * WebView.subproj/WebFrame.m:
9079        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
9080	Remove _changeBridge, since we don't any more. Hoist the creation of the
9081	bridge up here.
9082        * WebView.subproj/WebFramePrivate.h: Remove _changeBridge.
9083        * WebView.subproj/WebFramePrivate.m: Remove _changeBridge.
9084
9085        * WebView.subproj/WebHTMLRepresentation.h:
9086        * WebView.subproj/WebHTMLView.h:
9087        * WebView.subproj/WebImageRepresentation.h:
9088        * WebView.subproj/WebTextRepresentation.h:
9089        * WebView.subproj/WebTextView.h:
9090	Don't re-declare methods that are part of protocols we implement.
9091
9092        * WebView.subproj/WebHTMLView.m:
9093        (-[WebHTMLView initWithFrame:]): Don't add the mouse moved observer until
9094	the view gets put into a window.
9095        (-[WebHTMLView addMouseMovedObserver]): Added.
9096        (-[WebHTMLView removeMouseMovedObserver]): Added.
9097        (-[WebHTMLView viewWillMoveToWindow:]): Remove observer if we were in the
9098	main window.
9099        (-[WebHTMLView viewDidMoveToWindow]): Add observer if we are now in the main
9100	window.
9101        * WebView.subproj/WebHTMLViewPrivate.h: Add _frame method. Remove unused
9102	controller and cursor instance variables.
9103        * WebView.subproj/WebHTMLViewPrivate.m:
9104        (-[WebHTMLView _frame]): Added.
9105        (-[WebHTMLView _bridge]): Call _frame.
9106
9107        * WebView.subproj/WebTextRepresentation.m: Add now-needed import.
9108
9109        * WebView.subproj/WebHTMLRepresentation.m: Tweak.
9110
91112002-08-13  Maciej Stachowiak  <mjs@apple.com>
9112
9113	Add the ability to determine the classes of live JavaScript
9114	objects, to help with leak fixing.
9115
9116        * Misc.subproj/WebCoreStatistics.h:
9117        * Misc.subproj/WebCoreStatistics.m:
9118        (+[WebCoreStatistics javaScriptLiveObjectClasses]):
9119
91202002-08-12  Darin Adler  <darin@apple.com>
9121
9122        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge isReloading]):
9123	Change dataSourceIsReloading to isReloading.
9124
91252002-08-12  Maciej Stachowiak  <mjs@apple.com>
9126
9127        * WebView.subproj/WebDataSourcePrivate.h:
9128        * WebView.subproj/WebDataSourcePrivate.m: Remove private _flags
9129	and _attributes accessors, now that Ken added public versions.
9130        * WebView.subproj/WebFrame.m:
9131        (-[WebFrame reload:]): Remove sole use thereof.
9132
9133=== Alexander-17 ===
9134
91352002-08-10  Ken Kocienda  <kocienda@apple.com>
9136
9137	Added support for "stale mode" (loads triggered by use of back/forward), and
9138	added support for reload.
9139
9140	Also added a bridge function so the WebCore cache can tell if a load is a reload.
9141
9142        * WebCoreSupport.subproj/WebBridge.m:
9143        (-[WebBridge dataSourceIsReloading]): New method.
9144        * WebCoreSupport.subproj/WebSubresourceClient.m:
9145        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:]): Use same flags that were used for main resource load.
9146        * WebView.subproj/WebDataSource.h:
9147        * WebView.subproj/WebDataSource.m:
9148        (-[WebDataSource attributes]): New accessor.
9149        (-[WebDataSource flags]): New accessor.
9150        * WebView.subproj/WebFrame.m:
9151        (-[WebFrame reload:]): Reload adds WebResourceHandleFlagLoadFromOrigin flag to load.
9152        * WebView.subproj/WebFramePrivate.m:
9153        (-[WebFrame _goToItem:withFrameLoadType:]): Adds flags so that WebFoundation can tell when back/forward
9154	has been used.
9155
9156=== milestone 0.5 ===
9157
9158=== Alexander-16 ===
9159
91602002-08-09  Chris Blumenberg  <cblu@apple.com>
9161
9162	- Cache icon image for HTML files
9163	- resize the icon in WebIconLoader instead of in multiple places elsewhere
9164
9165        * Misc.subproj/WebIconLoader.h:
9166        * Misc.subproj/WebIconLoader.m:
9167        (+[WebIconLoader _resizeImage:]):
9168        (+[WebIconLoader defaultIcon]): call _resizeImage
9169        (+[WebIconLoader iconForFileAtPath:]): added, caches html icon
9170        (-[WebIconLoader WebResourceHandleDidFinishLoading:data:]): call _resizeImage
9171        * WebView.subproj/WebDataSourcePrivate.m:
9172        (-[WebDataSource _loadIcon]): call iconForFileAtPath
9173
91742002-08-08  Maciej Stachowiak  <mjs@apple.com>
9175
9176	Fix to get onLoad to fire, so the iBench test works.
9177
9178        * WebCoreSupport.subproj/WebBridge.m:
9179        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
9180        Return the bridge for the new child frame.
9181
91822002-08-08  Darin Adler  <darin@apple.com>
9183
9184        * WebKit.pbproj/project.pbxproj: Change the group name back to Debug.
9185
91862002-08-08  Richard Williamson  <rjw@apple.com>
9187
9188        Added flag to turn on/off buffered text drawing to help
9189        determine if we get any speed boost.  Run from console
9190        with "-BufferTextDrawing YES" to enable buffered text
9191        drawing.
9192        
9193        Moved buffered text drawing out of web core.
9194        
9195        * WebCoreSupport.subproj/WebTextRenderer.h:
9196        * WebCoreSupport.subproj/WebTextRenderer.m:
9197        (+[WebTextRenderer shouldBufferTextDrawing]):
9198        (+[WebTextRenderer initialize]):
9199        (-[WebTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withTextColor:backgroundColor:]):
9200        * WebCoreSupport.subproj/WebTextRendererFactory.h:
9201        * WebView.subproj/WebHTMLView.m:
9202        (-[WebHTMLView drawRect:]):
9203
92042002-08-08  Darin Adler  <darin@apple.com>
9205
9206	Placeholders for the "drawing observer" method that I'll be using
9207	to implement the "dump page as diffable text" feature.
9208
9209        * Misc.subproj/WebTestController.h: Added.
9210        * Misc.subproj/WebTestController.m: Added.
9211        * WebKit.pbproj/project.pbxproj: Mention new files.
9212	* WebKit.exp: Mention new class.
9213
9214        * WebView.subproj/WebPreferences.h:
9215        * WebView.subproj/WebPreferences.m:
9216        Changed "fixed font size" to "default fixed font size".
9217
92182002-08-08  Chris Blumenberg  <cblu@apple.com>
9219
9220        * Plugins.subproj/WebPluginStream.m:
9221        (-[WebPluginStream finishedLoadingWithData:]): call [NSFileManager _web_carbonPathForPath:]
9222
92232002-08-08  Maciej Stachowiak  <mjs@apple.com>
9224
9225	- fixed 2957197 - Need API for getting/setting default text encoding
9226	
9227        * WebView.subproj/WebDataSourcePrivate.m:
9228        (-[WebDataSourcePrivate init]): Set default encoding if no other is set.
9229        * WebView.subproj/WebPreferences.h:
9230        * WebView.subproj/WebPreferences.m:
9231        (+[WebPreferences load]): Added support for default text encoding pref.
9232        (-[WebPreferences defaultTextEncoding]): Likewise.
9233        (-[WebPreferences setDefaultTextEncoding:]): Likewise.
9234
92352002-08-08  Richard Williamson  <rjw@apple.com>
9236
9237        Changes to coalesce all drawing calls of the same text
9238        style and color into one call to CG.  Significantly
9239        improves drawing time.  My tests should about 7-8% on 
9240        ALL pages.  Disabled the code for now until I can verify
9241        on speed improvements on Ken's test rig.
9242        
9243        * WebCoreSupport.subproj/WebGlyphBuffer.h: Added.
9244        * WebCoreSupport.subproj/WebGlyphBuffer.m: Added.
9245        (-[WebGlyphBuffer initWithFont:color:]):
9246        (-[WebGlyphBuffer font]):
9247        (-[WebGlyphBuffer color]):
9248        (-[WebGlyphBuffer reset]):
9249        (-[WebGlyphBuffer dealloc]):
9250        (-[WebGlyphBuffer drawInView:]):
9251        (-[WebGlyphBuffer addGlyphs:advances:count:at::]):
9252        * WebCoreSupport.subproj/WebTextRenderer.m:
9253        (-[WebTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withTextColor:backgroundColor:]):
9254        * WebCoreSupport.subproj/WebTextRendererFactory.h:
9255        * WebCoreSupport.subproj/WebTextRendererFactory.m:
9256        (-[WebTextRendererFactory coalesceTextDrawing]):
9257        (-[WebTextRendererFactory startCoalesceTextDrawing]):
9258        (-[WebTextRendererFactory endCoalesceTextDrawing]):
9259        (-[WebTextRendererFactory glyphBufferForFont:andColor:]):
9260        (-[WebTextRendererFactory dealloc]):
9261        * WebKit.pbproj/project.pbxproj:
9262
92632002-08-07  Maciej Stachowiak  <mjs@apple.com>
9264
9265	WebKit work for:
9266
9267	- fixed 2956008 - Need API for getting/setting text encoding for current page
9268	
9269        * WebCoreSupport.subproj/WebBridge.m:
9270        (-[WebBridge receivedData:withDataSource:]): Handle override encoding,
9271	if any.
9272        * WebView.subproj/WebDataSource.m:
9273        (-[WebDataSource initWithURL:attributes:flags:]): Remember the flags and
9274	attributes.
9275        * WebView.subproj/WebDataSourcePrivate.h:
9276        * WebView.subproj/WebDataSourcePrivate.m:
9277        (-[WebDataSourcePrivate init]): Initialize overrideEncoding
9278        (-[WebDataSourcePrivate dealloc]): Release attributes
9279        (-[WebDataSource _setOverrideEncoding:]): Added.
9280        (-[WebDataSource _overrideEncoding]): Added.
9281        (-[WebDataSource _flags]): Added.
9282        (-[WebDataSource _attributes]): Added.
9283        * WebView.subproj/WebFrame.m:
9284        (-[WebFrame startLoading]): Pass proper forceRefresh value to data source
9285	based on load type (but the data source will ignore it).
9286	(-[WebFrame reload:]): Made this work a bit better. Now instead of
9287	crashing, it will actually reload, but it won't force a refresh
9288	(and may not handle the back/forward issues properly).
9289        * WebView.subproj/WebDocument.h: Defined new WebDocumentTextEncoding protocol.
9290        * WebView.subproj/WebHTMLView.h:
9291        * WebView.subproj/WebHTMLView.m:
9292        (-[WebHTMLView textEncoding]): Implemented WebDocumentTextEncoding
9293	protocol.
9294        (-[WebHTMLView setTextEncoding:]): Implemented WebDocumentTextEncoding 
9295	protocol.
9296        (-[WebHTMLView setDefaultTextEncoding]): Implemented WebDocumentTextEncoding
9297	protocol.
9298        (-[WebHTMLView usingDefaultTextEncoding]): Implemented
9299	WebDocumentTextEncoding protocol.
9300
93012002-08-07  John Sullivan  <sullivan@apple.com>
9302
9303	- fixed 3017245 -- Shift-Delete should go forward
9304
9305        * WebView.subproj/WebView.m:
9306        (-[WebView keyDown:]): Check for shift-delete.
9307
93082002-08-07  Richard Williamson  <rjw@apple.com>
9309
9310        Fixed scrollview related drawing turd problems.
9311        (3000844 and 2896459).
9312        
9313        * WebView.subproj/WebHTMLView.m:
9314        (-[WebHTMLView drawRect:]):
9315        * WebView.subproj/WebView.m:
9316        (-[WebView setFrame:]):
9317
93182002-08-07  Darin Adler  <darin@apple.com>
9319
9320        * WebView.subproj/WebFrame.m: (-[WebFrame setProvisionalDataSource:]):
9321        * WebView.subproj/WebFramePrivate.m: (-[WebFrame _goToItem:withFrameLoadType:]):
9322	Call _web_URLWithoutFragment by its new name _web_URLByRemovingFragment.
9323
93242002-08-07  Chris Blumenberg  <cblu@apple.com>
9325
9326	Fixed: 3018632 - the show javascript files inline bug
9327
9328        * WebView.subproj/WebDataSourcePrivate.m:
9329        (+[WebDataSource _repTypes]): support application/x-javascript
9330        * WebView.subproj/WebViewPrivate.m:
9331        (+[WebView _viewTypes]): support application/x-javascript
9332
93332002-08-07  John Sullivan  <sullivan@apple.com>
9334
9335        * Misc.subproj/WebNSViewExtras.h:
9336        * Misc.subproj/WebNSViewExtras.m:
9337        (-[NSView _web_superviewOfClass:]): Changed name from
9338	_web_superviewWithName: and made it take a Class object
9339	instead of a string.
9340
9341        * Plugins.subproj/WebNullPluginView.m:
9342        (-[WebNullPluginView drawRect:]):
9343        * Plugins.subproj/WebPluginView.m:
9344        (-[WebPluginView start]):
9345        (-[WebPluginView layout]):
9346	Updated callers of _web_superviewWithName:
9347
9348        * WebKit.pbproj/project.pbxproj: Changed WebNSViewExtras.h from
9349	Public to Private
9350
93512002-08-06  Darin Adler  <darin@apple.com>
9352
9353	Fix assert I saw while fixing bug 2965321.
9354
9355        * WebView.subproj/WebControllerPrivate.m:
9356        (-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
9357	Create a suitable resource identifier from the failing URL in the WebError for cases
9358	where we fail before we are able to construct a resource handle.
9359
93602002-08-06  Darin Adler  <darin@apple.com>
9361
9362	- fixed 2970516 -- Activate Events don't appear to be coming in to the
9363	Java Applet.plugin correctly.
9364
9365        * Plugins.subproj/WebPluginView.m: (-[WebPluginView sendActivateEvent:]):
9366	Use activeFlag to set modifiers, not activMask, which is an event mask.
9367
93682002-08-06  John Sullivan  <sullivan@apple.com>
9369
9370	Add mechanism to store userStyleSheet preferences in WebKit in
9371	preparation for Dave wiring up the implementation.
9372
9373        * WebView.subproj/WebPreferences.h:
9374        * WebView.subproj/WebPreferences.m:
9375        (-[WebPreferences userStyleSheetEnabled]),
9376        (-[WebPreferences setUserStyleSheetEnabled:]),
9377        (-[WebPreferences userStyleSheetLocation]),
9378        (-[WebPreferences setUserStyleSheetLocation:]):
9379	New methods, read and write UserDefaults values.
9380
9381        (+[WebPreferences load]): Set initial values for
9382	userStyleSheetEnabled and userStyleSheetLocation
9383
93842002-08-06  Maciej Stachowiak  <mjs@apple.com>
9385
9386	Removed some APPLE_CHANGES no longer needed after the part change.
9387
9388        * WebCoreSupport.subproj/WebBridge.m: Remove setOpenedByScript: and
9389	openedByScript methods now that they are not needed.
9390        * WebView.subproj/WebControllerPrivate.h:
9391        * WebView.subproj/WebControllerPrivate.m: Remove setOpenedByScript: and
9392	openedByScript methods now that they are not needed.
9393
93942002-08-06  Darin Adler  <darin@apple.com>
9395
9396	- fixed 3017761 -- dataSource != nil assertion navigating at yahoo.com
9397
9398        * WebView.subproj/WebLocationChangeHandler.h:
9399        * WebView.subproj/WebLocationChangeHandler.m:
9400	Change client redirect calls to pass the frame, not the data source.
9401	At the time a client redirect is requested, it's not even clear yet
9402	which data source will be involved. We may want to make some of the
9403	other calls pass frames, also, aside from the "start", "committed", "done",
9404	calls, which must specify the data source.
9405        * WebCoreSupport.subproj/WebBridge.m:
9406        (-[WebBridge reportClientRedirectTo:delay:fireDate:]): Pass frame, not data source.
9407        (-[WebBridge reportClientRedirectCancelled]): Pass frame, not data source.
9408
94092002-08-06  Darin Adler  <darin@apple.com>
9410
9411        * lots of files: Changed url to URL in many places and renamed URL-related methods.
9412
94132002-08-06  Darin Adler  <darin@apple.com>
9414
9415        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge dataSourceChanged]): Call setParent:.
9416        * WebView.subproj/WebControllerPrivate.m:
9417        (-[WebControllerPrivate init]): Initialize the text size multiplier to 1.
9418        * WebView.subproj/WebDataSource.h: Removed [redirectedURL], deprecated [inputURL], added [URL].
9419        * WebView.subproj/WebDataSource.m:
9420        (-[WebDataSource URL]): Added. Returns current URL, without requiring separate logic for the
9421	redirected and not-yet-redirected cases.
9422        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _loadIcon]): Use [WebDataSource URL].
9423        * WebView.subproj/WebDefaultContextMenuHandler.m:
9424        (-[WebDefaultContextMenuHandler openFrameInNewWindow:]): Use [WebDataSource URL].
9425
94262002-08-06  John Sullivan  <sullivan@apple.com>
9427
9428	WebKit part of fix for 3017539 -- Replace Serif and Sans-serif
9429	font preferences with Default preference; let fixed width font
9430	size be independent.
9431
9432
9433        * WebView.subproj/WebPreferences.h:
9434        * WebView.subproj/WebPreferences.m:
9435        (+[WebPreferences load]): Add default value for fixed width size
9436        (-[WebPreferences fixedFontSize]),
9437        (-[WebPreferences setFixedFontSize:]): New methods.
9438
94392002-08-06  Darin Adler  <darin@apple.com>
9440
9441	- fixed 3017536 -- Change default font to Lucida Grande 14 pt.
9442
9443        * WebView.subproj/WebPreferences.m: (+[WebPreferences load]):
9444	Changed default font and sans serif font family names to Lucida Grande.
9445	Changed default font size to 14 point.
9446
94472002-08-05  Maciej Stachowiak  <mjs@apple.com>
9448
9449	fixed 2974993 - window.open does not return the right window object
9450	fixed 3017140 - WebKit creates a new KHTMLPart per page; should
9451	reuse it like KHTML does
9452	
9453        * WebView.subproj/WebHTMLRepresentation.m:
9454        (-[WebHTMLRepresentation setDataSource:]): Don't swap the part at
9455	this point. Now it gets reused.
9456
94572002-08-05  Maciej Stachowiak  <mjs@apple.com>
9458
9459        * WebKit.pbproj/project.pbxproj: Fix tyops that broke Development
9460	build.
9461
94622002-08-05  Darin Adler  <darin@apple.com>
9463
9464        * .cvsignore: Ignore WebCore-combined.exp.
9465
94662002-08-05  Maciej Stachowiak  <mjs@apple.com>
9467
9468	- fixed 3007072 - need to be able to build fat
9469	
9470        * WebKit.pbproj/project.pbxproj: Fixed DeploymentFat build.
9471        * Makefile.am: Build WebCore-combined.exp for Development and
9472	Mixed build.
9473        * WebKit-tests.exp: Added.
9474        * WebKit.exp: Remove test-only function.
9475
94762002-08-05  Darin Adler  <darin@apple.com>
9477
9478	Do the wiring for the "text size multiplier" feature. The rest of the work will probably be done
9479	at the WebCore level.
9480
9481        * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge setFrame:]): Set the text size multiplier.
9482        * WebView.subproj/WebController.h:
9483        * WebView.subproj/WebController.m:
9484        (-[WebController setTextSizeMultiplier:]): Added. Calls _textSizeMultiplierChanged on the main frame.
9485        (-[WebController textSizeMultiplier]): Added.
9486        * WebView.subproj/WebControllerPrivate.h: Added textSizeMultiplier instance variable.
9487        * WebView.subproj/WebFramePrivate.h:
9488        * WebView.subproj/WebFramePrivate.m:
9489        (-[WebFrame _textSizeMultiplierChanged]): Added. Calls setTextSizeMultiplier: on the bridge,
9490	and _textSizeMultiplierChanged on all the child frames.
9491
94922002-08-05  Chris Blumenberg  <cblu@apple.com>
9493
9494	Renamed icon loader delegate method to include the icon loader.
9495
9496        * Misc.subproj/WebIconLoader.h:
9497        * Misc.subproj/WebIconLoader.m:
9498        (-[WebIconLoader WebResourceHandleDidFinishLoading:data:]):
9499        * WebView.subproj/WebDataSourcePrivate.m:
9500
95012002-08-05  Richard Williamson  <rjw@apple.com>
9502
9503        Added additional check to find appropriate fonts with available
9504        weight, rather than always using a weight of 5.
9505        
9506        Regarding "kCGErrorFailure : can't find name id 4 for font id 8395" errors:
9507        CG appears to be lying to us about some fonts, Verdana in particular.
9508        It claims to have an available Verdana font w/ the correct traits, but spits errors
9509        when we request that font.  Further, the Font Panel behaves oddly when you request
9510        Verdana.  The panel displays the font but if you select the font it doesn't
9511        'stick'.  A mystery.
9512        
9513        * WebCoreSupport.subproj/WebTextRendererFactory.m:
9514        (-[WebTextRendererFactory fontWithFamily:traits:size:]):
9515
95162002-08-05  Darin Adler  <darin@apple.com>
9517
9518	- fixed 2986567 -- suppress return characters from title in title bar, status bar, menu items
9519
9520        * WebCoreSupport.subproj/WebBridge.m:
9521        (-[WebBridge setTitle:]): Call _web_stringByCollapsingNonPrintingCharacters.
9522
95232002-08-05  Richard Williamson  <rjw@apple.com>
9524
9525        Added exported symbols file.
9526        
9527        * WebKit.exp: Added.
9528        * WebKit.pbproj/project.pbxproj:
9529
95302002-08-05  Darin Adler  <darin@apple.com>
9531
9532	- fixed 3014122 -- spinner never stops spinning when iframe has URL with bad path
9533
9534        * WebView.subproj/WebFrame.m:
9535        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]): Initialize the
9536	state in WebFramePrivate init instead.
9537        * WebView.subproj/WebFramePrivate.h: Remove WebFrameStateUninitialized.
9538        * WebView.subproj/WebFramePrivate.m:
9539        (-[WebFramePrivate init]): Set initial state to WebFrameStateComplete.
9540        (-[WebFrame _transitionToLayoutAcceptable]): Remove WebFrameStateUninitialized case.
9541        (-[WebFrame _transitionToCommitted]): Remove WebFrameStateUninitialized case.
9542        (-[WebFrame _isLoadComplete]): Remove WebFrameStateUninitialized case.
9543
9544        * WebView.subproj/WebDataSource.h: Tweak.
9545        * WebView.subproj/WebDataSource.m:
9546        (-[WebDataSource stopLoading]): Move downloadHandler logic from here into _stopLoading.
9547        (-[WebDataSource isLoading]): Rewrite for simplicity.
9548
9549        * WebView.subproj/WebDataSourcePrivate.m:
9550        (-[WebDataSource _stopLoading]): Move downloadHandler logic here from stopLoading.
9551	Also make this work even if handles are removed from the list during the stop process.
9552        (-[WebDataSource _recursiveStopLoading]): Simplify a lot by using WebFrame's stopLoading.
9553        (-[WebDataSource _setTitle:]): Use the committed boolean rather than the state to check
9554	if the title change should be sent to the location change handler.
9555
95562002-08-05  Maciej Stachowiak  <mjs@apple.com>
9557
9558        * Misc.subproj/WebKitDebug.h: Put WEBKIT_ASSERT_NOT_REACHED()
9559	inside the appropriate #ifdef, and remove the various _log macros,
9560	which are onsolete in WebKit.
9561
95622002-08-05  Maciej Stachowiak  <mjs@apple.com>
9563
9564        Some changes related to re-merging the KHTMLPart end() method:
9565
9566	* Misc.subproj/WebKitDebug.h: Added WEBKIT_ASSERT_NOT_REACHED().
9567        * WebView.subproj/WebFramePrivate.m:
9568        (-[WebFrame _transitionToLayoutAcceptable]): Replace NSException with
9569	ASSERT_NOT_REACHED (this is an internal consistency check, not an
9570	argument check on a public API, so an assert is more appropriate than
9571	an exception).
9572        (-[WebFrame _transitionToCommitted]): Likewise.
9573        (-[WebFrame _isLoadComplete]): Likewise; also, remove bridge call
9574	to scrollToBaseAnchor:, since that will now happen automatically
9575	when calling end.
9576
95772002-08-02  Darin Adler  <darin@apple.com>
9578
9579	WebKit support for feature where client redirects are treated as if the
9580	page was continuing to load.
9581
9582        * WebCoreSupport.subproj/WebBridge.m:
9583        (-[WebBridge reportClientRedirectTo:delay:fireDate:]): Added. Passes the client
9584	redirect along to the location change handler.
9585        (-[WebBridge reportClientRedirectCancelled]): Passes client redirect cancel along
9586	to the location change handler.
9587        (-[WebBridge dataSourceChanged]): Remove hack related to dummy data source.
9588        (-[WebBridge dataSource]): Remove hack related to dummy data source.
9589
9590        * WebView.subproj/WebLocationChangeHandler.h: Added client redirect methods.
9591	Added class for base implementation of protocol. Updated stale comment.
9592        * WebView.subproj/WebLocationChangeHandler.m: Added. Provides base implementation
9593	of the WebLocationChangeHandler protocol so that clients don't need to implement
9594	all the methods if they are only interested in some of them.
9595        * WebKit.pbproj/project.pbxproj: Added WebLocationChangeHandler.m.
9596
9597        * WebView.subproj/WebFramePrivate.m:
9598        (-[WebFrame _goToItem:withFrameLoadType:]): Call scrollToAnchor under its new name.
9599
9600        * Misc.subproj/WebIconLoader.h:
9601        * Misc.subproj/WebIconLoader.m:
9602        * WebView.subproj/WebControllerPolicyHandler.m:
9603        * WebView.subproj/WebControllerPolicyHandlerPrivate.h:
9604	Replaced __MyCompanyName__ with the actual name of our company.
9605
96062002-08-02  John Sullivan  <sullivan@apple.com>
9607
9608	- fixed 3015705 -- Command-up-arrow and -down-arrow should go to
9609	beginning and end of web page
9610
9611        * WebView.subproj/WebView.m:
9612        (-[WebView keyDown:]):
9613	Added checks for command key.
9614
96152002-08-01  Richard Williamson  <rjw@apple.com>
9616
9617        Effort towards 3014555 (going back to frame), but not fixed.  
9618        Need to think more about appropriate solution and compromises.
9619        
9620        * History.subproj/WebBackForwardList.h:
9621        * History.subproj/WebBackForwardList.m:
9622        (-[WebBackForwardList backEntryAtIndex:]):
9623        * History.subproj/WebHistoryItem.h:
9624        * History.subproj/WebHistoryItem.m:
9625        (-[WebHistoryItem initWithURL:title:]):
9626        (-[WebHistoryItem initWithURL:title:image:]):
9627        (-[WebHistoryItem initWithURL:target:parent:title:image:]):
9628        (-[WebHistoryItem dealloc]):
9629        (-[WebHistoryItem parent]):
9630        (-[WebHistoryItem setTitle:]):
9631        (-[WebHistoryItem setTarget:]):
9632        (-[WebHistoryItem setParent:]):
9633        (-[WebHistoryItem setDisplayTitle:]):
9634        * WebCoreSupport.subproj/WebBridge.m:
9635        * WebView.subproj/WebController.m:
9636        (-[WebController _goToItem:withFrameLoadType:]):
9637        * WebView.subproj/WebFramePrivate.h:
9638        * WebView.subproj/WebFramePrivate.m:
9639        (-[WebFrame _transitionToCommitted]):
9640        (-[WebFrame _isLoadComplete]):
9641        (-[WebFrame _scrollToTop]):
9642
96432002-08-01  Chris Blumenberg  <cblu@apple.com>
9644
9645	Only send command key events if the plug-in is in the responder chain.
9646
9647        * Plugins.subproj/WebPluginView.m:
9648        (-[WebPluginView isInResponderChain]):
9649        (-[WebPluginView performKeyEquivalent:]):
9650        (-[WebPluginView setWindow]): added some more logging
9651
96522002-08-01  Chris Blumenberg  <cblu@apple.com>
9653
9654	Only send command keyDown once by ignoring the keyDown that comes after performKeyEquivalent.
9655
9656        * Plugins.subproj/WebPluginView.m:
9657        (-[WebPluginView keyDown:]):
9658
96592002-08-01  Chris Blumenberg  <cblu@apple.com>
9660
9661	Fixed: 2970530 - Command keys are not getting passed in to plugins
9662
9663        * Plugins.subproj/WebPluginView.m:
9664        (-[WebPluginView performKeyEquivalent:]):
9665
96662002-08-01  Richard Williamson  <rjw@apple.com>
9667
9668        More back/forward work.  Support for restoring scroll position.
9669        We still have a big remaining issue.  We don't record the entire
9670        frame tree in back/forward items.  This means going back or forward
9671        to a frame will looose the context of the containing frameset,
9672        see 3014555.
9673        
9674        * History.subproj/WebBackForwardList.m:
9675        (-[WebBackForwardList currentEntry]):
9676        * History.subproj/WebHistoryItem.h:
9677        * History.subproj/WebHistoryItem.m:
9678        (-[WebHistoryItem anchor]):
9679        (-[WebHistoryItem setAnchor:]):
9680        * WebCoreSupport.subproj/WebBridge.m:
9681        (-[WebBridge reportError:]):
9682        * WebView.subproj/WebController.m:
9683        (-[WebController _goToItem:withFrameLoadType:]):
9684        (-[WebController goBack]):
9685        (-[WebController goForward]):
9686        * WebView.subproj/WebFrame.m:
9687        (-[WebFrame setProvisionalDataSource:]):
9688        * WebView.subproj/WebFramePrivate.h:
9689        * WebView.subproj/WebFramePrivate.m:
9690        (-[WebFrame _transitionToCommitted]):
9691        (-[WebFrame _isLoadComplete]):
9692        (-[WebFrame _goToItem:withFrameLoadType:]):
9693        (-[WebFrame _restoreScrollPosition]):
9694        (-[WebFrame _scrollToTop]):
9695
96962002-08-01  Chris Blumenberg  <cblu@apple.com>
9697
9698	Fixed:
9699	2938010 - PLUGINS: right-click support
9700	2938011 - PLUGINS: extended key events support
9701	2970523 - Arrow key events not correctly passed to applets
9702
9703        * Plugins.subproj/WebPluginView.m:
9704        (-[WebPluginView modifiersForEvent:]):
9705        (-[WebPluginView getCarbonEvent:withEvent:]):
9706        (-[WebPluginView mouseDown:]):
9707        (-[WebPluginView keyUp:]):
9708        (-[WebPluginView keyDown:]):
9709        (-[WebPluginView menuForEvent:]):
9710
9711=== Alexander-15 ===
9712
97132002-08-01  Don Melton  <gramps@apple.com>
9714
9715	Fixed deployment build compile problem.
9716
9717        * WebView.subproj/WebFramePrivate.m:
9718        (-[WebFrame _transitionToCommitted]):
9719
97202002-08-01  Maciej Stachowiak  <mjs@apple.com>
9721
9722        Remove stuff formerly useful for "View Reconstructed Source"
9723	feature but now useless.
9724	
9725        * WebView.subproj/WebDataSource.h:
9726        * WebView.subproj/WebDataSource.m:
9727	(-[WebDataSource documentTextFromDOM]): Removed.
9728	
97292002-07-31  Maciej Stachowiak  <mjs@apple.com>
9730
9731	Changed things around so that WebFrame, not WebDataSource, owns
9732	WebBridge. This allows us to remove the dummy data source.
9733	
9734        * WebView.subproj/WebFrame.m:
9735        (-[WebFrame
9736	initWithName:webView:provisionalDataSource:controller:]): Remove
9737	all dummy data source-related crud, but call _changeBridge to
9738	create the initial bridge.
9739        (-[WebFrame setProvisionalDataSource:]): Remove dummy data
9740	source-related epicycles.
9741        * WebView.subproj/WebFramePrivate.h: Add bridge member to private class.
9742        * WebView.subproj/WebFramePrivate.m:
9743        (-[WebFramePrivate setDataSource:]): Don't remove old data source from frame,
9744	this is no longer needed and may even be harmful.
9745        (-[WebFrame _transitionToCommitted]): Remove much now-unneeded code.
9746        (-[WebFrame _isLoadComplete]): Get location change handler from controller.
9747	Don't call end on the bridge if the document is not html.
9748        (-[WebFrame _changeBridge]): Free the old bridge and make a new one.
9749        (-[WebFrame _bridge]): Get it directly, not from the data source.
9750        
9751	* WebView.subproj/WebDataSourcePrivate.h: Remove everything related to the
9752	`dummy' concept.
9753        * WebView.subproj/WebDataSourcePrivate.m:
9754        (-[WebDataSource _setFinalURL:]): Reorder code a bit.
9755        (-[WebDataSource _bridge]): Get bridge from frame.
9756        (-[WebDataSource _commitIfReady]): No more need to set the bridge's frame.
9757        (-[WebDataSource _makeRepresentation]): Set data source on the rep.
9758        (-[WebDataSource _startLoading:]): Get location change handler from controller.
9759        (-[WebDataSource _setTitle:]): Likewise.
9760        (-[WebDataSource receivedPageIcon:]): Likewise.
9761        (-[WebDataSource _loadIcon]): Likewise.
9762        
9763	* WebView.subproj/WebMainResourceClient.m:
9764        (-[WebMainResourceClient
9765	WebResourceHandle:dataDidBecomeAvailable:]): Get location change
9766	handler from the controller.
9767
9768        * WebView.subproj/WebViewPrivate.m:
9769        (-[WebView _makeDocumentViewForDataSource:]): Change *and* commit
9770	the data source. This could probably be collapsed down to one
9771	method now.
9772
9773        * WebView.subproj/WebDocument.h: Added setDataSource: method to
9774	the WebDocumentRepresenation protocol. For now it is only useful
9775	for the HTML representation, but could potentially be useful for
9776	other representation classes. It should also allow the data source
9777	to be removed as a parameter from other methods, but I have not
9778	done that yet. It may be even better still to pass the data source
9779	as a paremeter to the init method.
9780
9781        * WebView.subproj/WebHTMLRepresentation.m:
9782        (-[WebHTMLRepresentation init]): Remove allocation of bridge.
9783        (-[WebHTMLRepresentation dealloc]): Remove release of bridge.
9784        (-[WebHTMLRepresentation setDataSource:]): Store unretained reference
9785	to the data source's frame's bridge.
9786        * WebView.subproj/WebHTMLViewPrivate.m:
9787        (-[WebHTMLView _bridge]): Fetch the bridge from the frame, not the
9788	data source.
9789        * WebView.subproj/WebImageRepresentation.m:
9790        (-[WebImageRepresentation setDataSource:]): Added empty
9791	implementation.
9792        * WebView.subproj/WebTextRepresentation.m:
9793        (-[WebTextRepresentation setDataSource:]): Added empty
9794	implementation.
9795        * Plugins.subproj/WebPluginStream.m:
9796        (-[WebPluginStream setDataSource:]): Added empty implementation.
9797
97982002-07-30  Maciej Stachowiak  <mjs@apple.com>
9799
9800	Fixes of various bugs that prevented Alexander from running the
9801	Mozilla page load test.
9802
9803	- fixed 3008682 - Alexander cannot run Mozilla-PLT
9804	
9805        * WebCoreSupport.subproj/WebBridge.m:
9806        (-[WebBridge dataSourceChanged]): Don't call setURL: to set a URL
9807	that we got from a redirect; just pass it directly to
9808	openURL:. The inputURL is irrelevant.
9809        * WebView.subproj/WebDataSourcePrivate.m:
9810        (-[WebDataSource _setFinalURL:]): Don't call setURL: on the
9811	bridge; instead, assert that the data source is committed, because
9812	it would be a mistake to get a redirect after having received
9813	data.
9814
98152002-07-30  Richard Williamson  <rjw@apple.com>
9816
9817        Remove annoying log, it's really annoying.  Added FIX ME
9818        comment instead.
9819        
9820        * WebView.subproj/WebFramePrivate.m:
9821        (-[WebFrame _transitionToCommitted]):
9822
98232002-07-30  John Sullivan  <sullivan@apple.com>
9824
9825	- fixed 3012083 "Looked for URLs on the pasteboard, but found
9826	none" spam dragging nil-target bookmark
9827
9828        * Misc.subproj/WebNSViewExtras.m:
9829        (-[NSView _web_bestURLForDraggingInfo:]):
9830	This method was getting data for types on the pasteboard without
9831	first checking whether the types were on the pasteboard, a no-no.
9832	Restructured this method and tweaked it here and there also.
9833
9834        (-[NSView _web_dragOperationForDraggingInfo:]): moved a fast
9835	test in front of a slow test
9836
98372002-07-29  Richard Williamson  <rjw@apple.com>
9838
9839        Removed setDirectsAllLinksToSystemBrowser: method, not needed
9840        and antiquated by the policy APIs.
9841        
9842        * WebView.subproj/WebController.h:
9843        * WebView.subproj/WebController.m:
9844
98452002-07-29  Richard Williamson  <rjw@apple.com>
9846
9847        Changes to support the migration of back/forward list to WebKit.
9848        Back/forward in frames now works (2946164), still not done w/
9849        restoring scroll positions (2927633).
9850        
9851        * History.subproj/WebHistoryItem.h:
9852        * History.subproj/WebHistoryItem.m:
9853        (+[WebHistoryItem entryWithURL:]):
9854        * WebCoreSupport.subproj/WebBridge.m:
9855        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
9856        * WebView.subproj/WebController.h:
9857        * WebView.subproj/WebController.m:
9858        (-[WebController initWithView:provisionalDataSource:]):
9859        (-[WebController setUseBackForwardList:]):
9860        (-[WebController useBackForwardList]):
9861        (-[WebController goBack]):
9862        (-[WebController goForward]):
9863        * WebView.subproj/WebControllerPrivate.h:
9864        * WebView.subproj/WebFrame.m:
9865        (-[WebFrame setProvisionalDataSource:]):
9866        * WebView.subproj/WebFramePrivate.h:
9867        * WebView.subproj/WebFramePrivate.m:
9868        (-[WebFrame _transitionToCommitted]):
9869        (-[WebFrame _setProvisionalDataSource:]):
9870        (-[WebFrame _goToURL:withFrameLoadType:]):
9871        * WebView.subproj/WebViewPrivate.m:
9872        (-[WebView _goBack]):
9873        (-[WebView _goForward]):
9874
98752002-07-29  Richard Williamson  <rjw@apple.com>
9876
9877        Fixed 3009074.  Added [WebHTMLView jumpToSelection:] and related user interface
9878        item validation.
9879        
9880        * WebView.subproj/WebHTMLView.m:
9881        (-[WebHTMLView jumpToSelection:]):
9882        (-[WebHTMLView validateUserInterfaceItem:]):
9883
98842002-07-29  Richard Williamson  <rjw@apple.com>
9885
9886        Fixed 3009085.  Implemented takeFindStringFromSelection: on WebHTMLView and WebTextView.
9887        Also added user interface item validation for that method.
9888        
9889        * WebView.subproj/WebHTMLView.m:
9890        (-[WebHTMLView hasSelection]):
9891        (-[WebHTMLView takeFindStringFromSelection:]):
9892        (-[WebHTMLView validateUserInterfaceItem:]):
9893        * WebView.subproj/WebTextView.m:
9894        (-[WebTextView canTakeFindStringFromSelection]):
9895        (-[WebTextView takeFindStringFromSelection:]):
9896
98972002-07-29  Chris Blumenberg  <cblu@apple.com>
9898
9899	Fixed:
9900	2971845 - text view uses default "user font" (Helvetica), not fonts chosen in Alexander preferences
9901
9902        * WebView.subproj/WebTextView.m:
9903        (-[WebTextView initWithFrame:]): add observer
9904        (-[WebTextView dealloc]): remove observer
9905        (-[WebTextView setFixedWidthFont]): added, checks defaults
9906        (-[WebTextView dataSourceUpdated:]): calls setFixedWidthFont
9907        (-[WebTextView searchFor:direction:caseSensitive:]): no changes
9908        (-[WebTextView defaultsChanged:]): calls setFixedWidthFont
9909
99102002-07-27  Chris Blumenberg  <cblu@apple.com>
9911
9912	Implemented click policy, support for option-click
9913	Implemented dragging of links and images from WebHTMLView	
9914
9915        * Misc.subproj/WebNSViewExtras.h:
9916        * Misc.subproj/WebNSViewExtras.m:
9917        (-[NSView _web_dragShouldBeginFromMouseDown:withExpiration:]): added, moved from WebBrowser
9918        (-[NSView _web_dragOperationForDraggingInfo:]): don't accept drag if source == destination
9919        * WebView.subproj/WebControllerPolicyHandler.h:
9920        * WebView.subproj/WebControllerPolicyHandler.m:
9921        (-[WebPolicy URL]): needed for click policy
9922        (+[WebURLPolicy webPolicyWithURLAction:]):
9923        (+[WebFileURLPolicy webPolicyWithFileAction:]):
9924        (+[WebContentPolicy webPolicyWithContentAction:andPath:]):
9925        * WebView.subproj/WebControllerPrivate.h:
9926        * WebView.subproj/WebControllerPrivate.m:
9927        (-[WebController _downloadURL:toPath:]): added, simply downloads a URL
9928        * WebView.subproj/WebDefaultContextMenuHandler.m:
9929        (-[WebDefaultContextMenuHandler downloadURL:]): calls [WebController _downloadURL:toPath:]
9930        * WebView.subproj/WebDefaultPolicyHandler.m:
9931        (-[WebDefaultPolicyHandler clickPolicyForElement:button:modifierMask:]):
9932        * WebView.subproj/WebHTMLView.m:
9933        (-[WebHTMLView mouseDown:]): calls _continueAfterCheckingDragForEvent
9934        (-[WebHTMLView mouseUp:]): calls _continueAfterClickPolicyForEvent
9935        (-[WebHTMLView draggingSourceOperationMaskForLocal:]): added
9936        (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): added, starts download
9937        * WebView.subproj/WebHTMLViewPrivate.h:
9938        * WebView.subproj/WebHTMLViewPrivate.m:
9939        (-[WebHTMLViewPrivate dealloc]):
9940        (-[WebHTMLView _elementAtPoint:]):
9941        (-[WebHTMLView _continueAfterClickPolicyForEvent:]): added, implements click policy
9942        (-[WebHTMLView _continueAfterCheckingDragForEvent:]): added, checks if mouse event is a drag
9943
99442002-07-26  Richard Williamson  <rjw@apple.com>
9945
9946        WebframeLoadType enum first value wasn't explicitly set, so 0 was used.  
9947        I assumed 0 was unitialized, and depended on that to not execute some 'transitional'
9948        back/forward.  This problem broke back/forward.
9949
9950        * WebView.subproj/WebFramePrivate.h:
9951
99522002-07-26  John Sullivan  <sullivan@apple.com>
9953
9954	WebKit part of fix for 3009404 -- Back/Forward menu items should use [ and ],
9955	but command-arrows should still work too. 
9956
9957        * WebView.subproj/WebController.h:
9958	- added goForward to windowContext protocol. This is temporary, just like goBack
9959	here is temporary; they can be migrated into the new back-forward-in-WebKit design
9960	together.
9961        * WebView.subproj/WebView.m:
9962        (-[WebView keyDown:]): call _goBack and _goForward for command-arrow keys
9963
9964        * WebView.subproj/WebViewPrivate.h,
9965        * WebView.subproj/WebViewPrivate.m:
9966        (-[WebView _goForward]): add _goForward, parallel to _existing goBack.
9967
99682002-07-26  Chris Blumenberg  <cblu@apple.com>
9969
9970	Fixed crash in unknown_text
9971	Fixed full-window plug-ins. I think darin broken this :)
9972	Cleaned up WebPluginStream a bit
9973
9974        * Plugins.subproj/WebPluginDatabase.m:
9975        (-[WebPluginDatabase init]):
9976        * Plugins.subproj/WebPluginStream.m:
9977        (-[WebPluginStream getFunctionPointersFromPluginView:]):
9978        (-[WebPluginStream initWithURL:pluginPointer:notifyData:attributes:]):
9979        (-[WebPluginStream startLoad]):
9980        (-[WebPluginStream stop]):
9981        (-[WebPluginStream setUpGlobalsWithHandle:]):
9982        (-[WebPluginStream receivedError:]):
9983        (-[WebPluginStream receivedData:withDataSource:]):
9984        (-[WebPluginStream receivedError:withDataSource:]):
9985        (-[WebPluginStream WebResourceHandle:dataDidBecomeAvailable:]):
9986        (-[WebPluginStream WebResourceHandleDidCancelLoading:]):
9987        (-[WebPluginStream WebResourceHandle:didFailLoadingWithResult:]):
9988        * WebView.subproj/WebDataSourcePrivate.h:
9989        * WebView.subproj/WebDataSourcePrivate.m:
9990        (-[WebDataSource _mainHandle]): added, WebPluginStream needs this
9991
99922002-07-25  Richard Williamson  <rjw@apple.com>
9993
9994        More incremental changes for back/forward migration.
9995
9996        * History.subproj/WebBackForwardList.h:
9997        * History.subproj/WebBackForwardList.m:
9998        (-[WebBackForwardList init]):
9999        (-[WebBackForwardList dealloc]):
10000        (-[WebBackForwardList addEntry:]):
10001        (-[WebBackForwardList goBack]):
10002        (-[WebBackForwardList goBackToIndex:]):
10003        (-[WebBackForwardList backEntry]):
10004        (-[WebBackForwardList currentEntry]):
10005        (-[WebBackForwardList forwardEntry]):
10006        (-[WebBackForwardList goForward]):
10007        (-[WebBackForwardList goForwardToIndex:]):
10008        (-[WebBackForwardList canGoBack]):
10009        (-[WebBackForwardList canGoForward]):
10010        (-[WebBackForwardList description]):
10011        * History.subproj/WebHistoryItem.h:
10012        * History.subproj/WebHistoryItem.m:
10013        (-[WebHistoryItem initWithURL:title:]):
10014        (-[WebHistoryItem initWithURL:title:image:]):
10015        (-[WebHistoryItem initWithURL:target:title:image:]):
10016        (-[WebHistoryItem dealloc]):
10017        (-[WebHistoryItem target]):
10018        (-[WebHistoryItem setTarget:]):
10019        (-[WebHistoryItem setLastVisitedDate:]):
10020        (-[WebHistoryItem scrollPoint]):
10021        (-[WebHistoryItem setScrollPoint:]):
10022        * History.subproj/WebHistoryList.m:
10023        * WebView.subproj/WebFramePrivate.h:
10024        * WebView.subproj/WebFramePrivate.m:
10025        (-[WebFramePrivate setLoadType:]):
10026        (-[WebFrame _setLoadType:]):
10027        (-[WebFrame _loadType]):
10028        (-[WebFrame _transitionToCommitted]):
10029
100302002-07-25  Chris Blumenberg  <cblu@apple.com>
10031
10032	Made some WebPolicy API's private
10033	Added support for download link/image to disk
10034
10035        * Misc.subproj/WebDownloadHandler.m:
10036        (-[WebDownloadHandler receivedData:]):
10037        * WebKit.pbproj/project.pbxproj:
10038        * WebView.subproj/WebControllerPolicyHandler.h:
10039        * WebView.subproj/WebControllerPolicyHandler.m:
10040        (-[WebPolicyPrivate dealloc]):
10041        (-[WebPolicy _setPolicyAction:]):
10042        (-[WebPolicy policyAction]):
10043        (-[WebPolicy path]):
10044        (-[WebPolicy _setPath:]):
10045        (-[WebPolicy dealloc]):
10046        (+[WebURLPolicy webPolicyWithURLAction:]):
10047        (+[WebFileURLPolicy webPolicyWithFileAction:]):
10048        (+[WebContentPolicy webPolicyWithContentAction:andPath:]):
10049        (+[WebClickPolicy webPolicyWithClickAction:andPath:]):
10050        * WebView.subproj/WebControllerPolicyHandlerPrivate.h: Added.
10051        * WebView.subproj/WebDefaultContextMenuHandler.m:
10052        (-[WebDefaultContextMenuHandler downloadURL:]):
10053        (-[WebDefaultContextMenuHandler downloadLinkToDisk:]):
10054        (-[WebDefaultContextMenuHandler openImageInNewWindow:]):
10055        (-[WebDefaultContextMenuHandler downloadImageToDisk:]):
10056        * WebView.subproj/WebMainResourceClient.m:
10057        (-[WebMainResourceClient WebResourceHandle:dataDidBecomeAvailable:]):
10058
100592002-07-25  Chris Blumenberg  <cblu@apple.com>
10060
10061	Fixed crasher caused by not retaining the content policy.
10062
10063        * WebView.subproj/WebControllerPolicyHandler.h:
10064        * WebView.subproj/WebMainResourceClient.h:
10065        * WebView.subproj/WebMainResourceClient.m:
10066        (-[WebMainResourceClient WebResourceHandle:dataDidBecomeAvailable:]):
10067
100682002-07-25  Chris Blumenberg  <cblu@apple.com>
10069
10070	Made policy APIs return a WebPolicy object.
10071	Added click policy.
10072
10073        * Misc.subproj/WebDownloadHandler.m:
10074        (-[WebDownloadHandler receivedData:]):
10075        (-[WebDownloadHandler finishedLoading]):
10076        (-[WebDownloadHandler cancel]):
10077        * WebKit.pbproj/project.pbxproj:
10078        * WebView.subproj/WebController.h:
10079        * WebView.subproj/WebController.m:
10080        (+[WebController defaultURLPolicyForURL:]):
10081        * WebView.subproj/WebControllerPolicyHandler.h:
10082        * WebView.subproj/WebControllerPolicyHandler.m: Added.
10083        (-[WebPolicy initWithPolicyAction:]):
10084        (-[WebPolicy policyAction]):
10085        (+[WebURLPolicy webPolicyWithURLAction:]):
10086        (+[WebFileURLPolicy webPolicyWithFileAction:]):
10087        (+[WebContentPolicy webPolicyWithContentAction:andPath:]):
10088        (-[WebContentPolicy initWithContentPolicyAction:andPath:]):
10089        (-[WebContentPolicy dealloc]):
10090        (-[WebContentPolicy path]):
10091        (-[WebClickPolicy initWithClickPolicyAction:andPath:]):
10092        (+[WebClickPolicy webPolicyWithClickAction:andPath:]):
10093        (-[WebClickPolicy dealloc]):
10094        (-[WebClickPolicy path]):
10095        * WebView.subproj/WebControllerPrivate.m:
10096        (-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
10097        * WebView.subproj/WebDataSource.h:
10098        * WebView.subproj/WebDataSource.m:
10099        (-[WebDataSource contentPolicy]):
10100        (-[WebDataSource fileType]):
10101        * WebView.subproj/WebDataSourcePrivate.h:
10102        * WebView.subproj/WebDataSourcePrivate.m:
10103        (-[WebDataSourcePrivate dealloc]):
10104        (-[WebDataSource _setContentPolicy:]):
10105        (-[WebDataSource _commitIfReady]):
10106        (-[WebDataSource _isReadyForData]):
10107        * WebView.subproj/WebDefaultPolicyHandler.m:
10108        (-[WebDefaultPolicyHandler URLPolicyForURL:]):
10109        (-[WebDefaultPolicyHandler fileURLPolicyForMIMEType:dataSource:isDirectory:]):
10110        (-[WebDefaultPolicyHandler unableToImplementFileURLPolicy:error:forDataSource:]):
10111        (-[WebDefaultPolicyHandler unableToImplementURLPolicy:error:forURL:]):
10112        (-[WebDefaultPolicyHandler pluginNotFoundForMIMEType:pluginPageURL:]):
10113        (-[WebDefaultPolicyHandler clickPolicyForElement:button:modifierMask:]):
10114        * WebView.subproj/WebFrame.m:
10115        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
10116        * WebView.subproj/WebFramePrivate.m:
10117        (-[WebFrame _shouldShowDataSource:]):
10118        * WebView.subproj/WebMainResourceClient.m:
10119        (-[WebMainResourceClient receivedProgressWithHandle:complete:]):
10120        (-[WebMainResourceClient receivedError:forHandle:]):
10121        (-[WebMainResourceClient WebResourceHandleDidFinishLoading:data:]):
10122        (-[WebMainResourceClient WebResourceHandle:dataDidBecomeAvailable:]):
10123
101242002-07-25  Darin Adler  <darin@apple.com>
10125
10126        * WebKit.pbproj/project.pbxproj: Add DeploymentFat build style.
10127
101282002-07-25  Darin Adler  <darin@apple.com>
10129
10130	WebKit part of fix for 3006054 -- assert error failingURL != nil
10131
10132        * WebCoreSupport.subproj/WebBridge.m:
10133        (-[WebBridge reportError:]): New. Passes the error to the controller associated with
10134	the dataSource.
10135
10136        * WebCoreSupport.subproj/WebSubresourceClient.m:
10137        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:]): Call absoluteString.
10138        (-[WebSubresourceClient WebResourceHandleDidCancelLoading:]): Call absoluteString.
10139        * WebView.subproj/WebController.m:
10140        (-[WebController haveContentPolicy:andPath:forDataSource:]): Call absoluteString.
10141        * WebView.subproj/WebControllerPrivate.m:
10142        (-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
10143	Don't call absoluteString.
10144        * WebView.subproj/WebFramePrivate.m:
10145        (-[WebFrame _shouldShowDataSource:]): Call absoluteString.
10146        * WebView.subproj/WebMainResourceClient.m:
10147        (-[WebMainResourceClient WebResourceHandleDidCancelLoading:]): Call absoluteString.
10148
101492002-07-25  Chris Blumenberg  <cblu@apple.com>
10150
10151	Remove reloadImage until its implemented.
10152
10153        * WebView.subproj/WebDefaultContextMenuHandler.m:
10154        (-[WebDefaultContextMenuHandler contextMenuItemsForElement:defaultMenuItems:]):
10155
101562002-07-25  Chris Blumenberg  <cblu@apple.com>
10157
10158	Renamed elementInfoAtPoint to elementAtPoint
10159
10160        * WebKit.pbproj/project.pbxproj:
10161        * WebView.subproj/WebDefaultContextMenuHandler.h:
10162        * WebView.subproj/WebDefaultContextMenuHandler.m:
10163        (+[WebDefaultContextMenuHandler addMenuItemWithTitle:action:target:toArray:]): renamed
10164        (-[WebDefaultContextMenuHandler contextMenuItemsForElement:defaultMenuItems:]):
10165        * WebView.subproj/WebHTMLView.m:
10166        (-[WebHTMLView menuForEvent:]):
10167        * WebView.subproj/WebHTMLViewPrivate.h:
10168        * WebView.subproj/WebHTMLViewPrivate.m:
10169        (-[WebHTMLView _elementAtPoint:]):
10170
101712002-07-24  Chris Blumenberg  <cblu@apple.com>
10172
10173	tiny change
10174
10175        * WebView.subproj/WebDefaultContextMenuHandler.m:
10176
101772002-07-24  Chris Blumenberg  <cblu@apple.com>
10178
10179	Added implmentations for a few context menu items.
10180
10181        * WebView.subproj/WebController.h:
10182        * WebView.subproj/WebDefaultContextMenuHandler.h:
10183        * WebView.subproj/WebDefaultContextMenuHandler.m:
10184        (-[WebDefaultContextMenuHandler dealloc]):
10185        (-[WebDefaultContextMenuHandler contextMenuItemsForElement:defaultMenuItems:]):
10186        (-[WebDefaultContextMenuHandler validateUserInterfaceItem:]):
10187        (-[WebDefaultContextMenuHandler openNewWindowWithURL:]):
10188        (-[WebDefaultContextMenuHandler openLinkInNewWindow:]):
10189        (-[WebDefaultContextMenuHandler copyLinkToClipboard:]):
10190        (-[WebDefaultContextMenuHandler openImageInNewWindow:]):
10191        (-[WebDefaultContextMenuHandler copyImageToClipboard:]):
10192        (-[WebDefaultContextMenuHandler reloadImage:]):
10193        (-[WebDefaultContextMenuHandler openFrameInNewWindow:]):
10194        * WebView.subproj/WebHTMLView.m:
10195        (-[WebHTMLView menuForEvent:]):
10196
101972002-07-24  Richard Williamson  <rjw@apple.com>
10198
10199        Removed vestigal locationChangeHandler ivar.
10200        
10201        * WebView.subproj/WebDataSourcePrivate.h:
10202        * WebView.subproj/WebDataSourcePrivate.m:
10203        (-[WebDataSource _loadIcon]):
10204
102052002-07-24  Chris Blumenberg  <cblu@apple.com>
10206
10207	Call [self _locationChangeHandler] instead of _private-locationChangeHandler
10208
10209        * WebView.subproj/WebDataSourcePrivate.m:
10210        (-[WebDataSource receivedPageIcon:]):
10211
102122002-07-24  Richard Williamson  <rjw@apple.com>
10213
10214        Implemented find for text views.
10215        
10216        * WebView.subproj/WebTextView.m:
10217        (-[NSString findString:selectedRange:options:wrap:]):
10218        (-[WebTextView searchFor:direction:caseSensitive:]):
10219
102202002-07-24  Chris Blumenberg  <cblu@apple.com>
10221
10222	Implemented initial contextual menus. None activated yet.
10223
10224        * WebView.subproj/WebDefaultContextMenuHandler.h:
10225        * WebView.subproj/WebDefaultContextMenuHandler.m:
10226        (-[WebDefaultContextMenuHandler dealloc]): added
10227        (-[WebDefaultContextMenuHandler addMenuItemWithTitle:action:toArray:]): added
10228        (-[WebDefaultContextMenuHandler contextMenuItemsForElementInfo:defaultMenuItems:]): create menu items
10229        * WebView.subproj/WebHTMLView.m:
10230        (-[WebHTMLView menuForEvent:]): 
10231
102322002-07-24  Chris Blumenberg  <cblu@apple.com>
10233
10234	More renaming for WebDefaultPolicyHandler.
10235
10236        * WebView.subproj/WebController.m:
10237        (-[WebController policyHandler]):
10238        * WebView.subproj/WebDefaultPolicyHandler.h:
10239        * WebView.subproj/WebDefaultPolicyHandler.m:
10240
102412002-07-24  Chris Blumenberg  <cblu@apple.com>
10242
10243	Renamed WebDefaultControllerPolicyHandler to WebDefaultPolicyHandler.
10244
10245        * WebKit.pbproj/project.pbxproj:
10246        * WebView.subproj/WebDefaultControllerPolicyHandler.h: Removed.
10247        * WebView.subproj/WebDefaultControllerPolicyHandler.m: Removed.
10248        * WebView.subproj/WebDefaultPolicyHandler.h: Added.
10249        * WebView.subproj/WebDefaultPolicyHandler.m: Added.
10250        (-[WebDefaultControllerPolicyHandler initWithWebController:]):
10251        (-[WebDefaultControllerPolicyHandler URLPolicyForURL:]):
10252        (-[WebDefaultControllerPolicyHandler fileURLPolicyForMIMEType:dataSource:isDirectory:]):
10253        (-[WebDefaultControllerPolicyHandler unableToImplementFileURLPolicy:forDataSource:]):
10254        (-[WebDefaultControllerPolicyHandler requestContentPolicyForMIMEType:dataSource:]):
10255        (-[WebDefaultControllerPolicyHandler unableToImplementURLPolicyForURL:error:]):
10256        (-[WebDefaultControllerPolicyHandler unableToImplementContentPolicy:forDataSource:]):
10257        (-[WebDefaultControllerPolicyHandler pluginNotFoundForMIMEType:pluginPageURL:]):
10258
102592002-07-24  Chris Blumenberg  <cblu@apple.com>
10260
10261	More plumbing for contextual menu support.
10262
10263        * WebKit.pbproj/project.pbxproj:
10264        * WebView.subproj/WebController.h:
10265        * WebView.subproj/WebController.m:
10266        (-[WebController setContextMenuHandler:]): added
10267        (-[WebController contextMenuHandler]): added
10268        * WebView.subproj/WebControllerPrivate.h:
10269        * WebView.subproj/WebControllerPrivate.m:
10270        (-[WebControllerPrivate init]): alloc WebDefaultContextMenuHandler
10271        (-[WebControllerPrivate dealloc]): dealloc WebDefaultContextMenuHandler
10272        (-[WebController _defaultContextMenuHandler]):
10273        * WebView.subproj/WebDefaultContextMenuHandler.h: Added.
10274        * WebView.subproj/WebDefaultContextMenuHandler.m: Added.
10275        (-[WebDefaultContextMenuHandler contextMenuItemsForElementInfo:defaultMenuItems:]): new
10276        * WebView.subproj/WebHTMLView.m:
10277        (-[WebHTMLView menuForEvent:]): call contextMenuHandlers
10278        * WebView.subproj/WebHTMLViewPrivate.h:
10279        * WebView.subproj/WebHTMLViewPrivate.m:
10280        (-[WebHTMLView _setController:]): added comment
10281        (-[WebHTMLView _controller]): added
10282
102832002-07-24  Darin Adler  <darin@apple.com>
10284
10285        * WebCoreSupport.subproj/WebTextRenderer.m:
10286        (-[WebTextRenderer xHeight]): Added. Calls [NSFont xHeight].
10287
10288        * WebView.subproj/WebPreferences.h:
10289        * WebView.subproj/WebPreferences.m:
10290        (+[WebPreferences load]):
10291        (-[WebPreferences defaultFontSize]):
10292        (-[WebPreferences setDefaultFontSize:]):
10293	Renamed minimumFont to defaultFont, and changed it from 11 to 16.
10294	Also changed default monospaced font to Courier instead of Monaco.
10295
102962002-07-24  Richard Williamson  <rjw@apple.com>
10297
10298        Support for find in HTML, find in text view coming soon.
10299        
10300        * WebView.subproj/WebDocument.h:
10301        * WebView.subproj/WebHTMLView.h:
10302        * WebView.subproj/WebHTMLView.m:
10303        (-[WebHTMLView searchFor:direction:caseSensitive:]):
10304        * WebView.subproj/WebTextView.h:
10305        * WebView.subproj/WebTextView.m:
10306        (-[WebTextView searchFor:direction:caseSensitive:]):
10307
103082002-07-23  Chris Blumenberg  <cblu@apple.com>
10309
10310	More plumbing for contextual menu support.
10311
10312        * WebCoreSupport.subproj/WebBridge.h:
10313        * WebCoreSupport.subproj/WebBridge.m:
10314        * WebView.subproj/WebHTMLView.m:
10315        (-[WebHTMLView menuForEvent:]):
10316        * WebView.subproj/WebHTMLViewPrivate.h:
10317        * WebView.subproj/WebHTMLViewPrivate.m:
10318        (-[WebHTMLView _elementInfoAtPoint:]): added
10319
103202002-07-23  Darin Adler  <darin@apple.com>
10321
10322        * WebKit.pbproj/project.pbxproj: Fix file reference types to be more consistent.
10323
103242002-07-23  Chris Blumenberg  <cblu@apple.com>
10325
10326	Initial plumbing for contextual menu support.
10327
10328        * WebCoreSupport.subproj/WebBridge.h:
10329        * WebCoreSupport.subproj/WebBridge.m:
10330        (-[WebBridge elementInfoForMouseEvent:]): added
10331        * WebView.subproj/WebController.h:
10332        * WebView.subproj/WebHTMLView.m:
10333        (-[WebHTMLView menuForEvent:]): added
10334
103352002-07-23  Darin Adler  <darin@apple.com>
10336
10337        * WebKit.pbproj/project.pbxproj: Fix paths for newly added files.
10338
103392002-07-23  Richard Williamson  <rjw@apple.com>
10340
10341        Cleaned up LocationChangeHandler.  We now have one per controller.
10342        
10343        * WebKit.pbproj/project.pbxproj:
10344        * WebView.subproj/WebController.h:
10345        * WebView.subproj/WebController.m:
10346        (-[WebController policyHandler]):
10347        (-[WebController setLocationChangeHandler:]):
10348        (-[WebController locationChangeHandler]):
10349        * WebView.subproj/WebControllerPolicyHandler.h:
10350        * WebView.subproj/WebControllerPrivate.h:
10351        * WebView.subproj/WebDataSourcePrivate.h:
10352        * WebView.subproj/WebDataSourcePrivate.m:
10353        (-[WebDataSourcePrivate dealloc]):
10354        
10355        (-[WebDataSource _setIsDummy:)
10356        (-[WebDataSource _isDummy]):
10357        Hack on hack.  MJS will remove when the dummy data source hack is removed.
10358        
10359        (-[WebDataSource _locationChangeHandler]):
10360        (-[WebDataSource _removeFromFrame]):
10361        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
10362        (-[WebFrame setProvisionalDataSource:]):
10363        * WebView.subproj/WebFramePrivate.m:
10364        (-[WebFramePrivate dealloc]):
10365        
10366        Added default policy handler.  This is used if no policy handler is
10367        set on the controller.
10368        
10369        * WebView.subproj/WebDefaultControllerPolicyHandler.h: Added.
10370        * WebView.subproj/WebDefaultControllerPolicyHandler.m: Added.
10371        (-[WebDefaultControllerPolicyHandler initWithWebController:]):
10372        (-[WebDefaultControllerPolicyHandler URLPolicyForURL:]):
10373        (-[WebDefaultControllerPolicyHandler fileURLPolicyForMIMEType:dataSource:isDirectory:]):
10374        (-[WebDefaultControllerPolicyHandler unableToImplementFileURLPolicy:forDataSource:]):
10375        (-[WebDefaultControllerPolicyHandler requestContentPolicyForMIMEType:dataSource:]):
10376        (-[WebDefaultControllerPolicyHandler unableToImplementURLPolicyForURL:error:]):
10377        (-[WebDefaultControllerPolicyHandler unableToImplementContentPolicy:forDataSource:]):
10378        (-[WebDefaultControllerPolicyHandler pluginNotFoundForMIMEType:pluginPageURL:]):
10379        * WebView.subproj/WebFrame.m:
10380
103812002-07-23  Darin Adler  <darin@apple.com>
10382
10383        * Makefile.am: Clean based on all, not all-am, so it happens before subdirs
10384	if any.
10385
103862002-07-23  Darin Adler  <darin@apple.com>
10387
10388        * WebCoreSupport.subproj/WebTextRenderer.m:
10389        (-[WebTextRenderer drawUnderlineForCharacters:stringLength:atPoint:withColor:]):
10390	Change API to take character array instead of a string.
10391
10392        * WebKit.pbproj/project.pbxproj: Took "subproj" off the names of some groups.
10393
10394=== Alexander-14 ===
10395
103962002-07-22  Richard Williamson  <rjw@apple.com>
10397
10398        Moved back/forward list from Alex's document to WebController.  First step
10399        to address a series of back/forward related issues.        
10400
10401        * WebView.subproj/WebController.h:
10402        * WebView.subproj/WebController.m:
10403        (-[WebController backForwardList]):
10404        * WebView.subproj/WebControllerPrivate.h:
10405        * WebView.subproj/WebControllerPrivate.m:
10406        (-[WebControllerPrivate init]):
10407        (-[WebControllerPrivate dealloc]):
10408
104092002-07-22  Chris Blumenberg  <cblu@apple.com>
10410
10411	Strip white space before and after URL string 2998696
10412
10413        * Misc.subproj/WebNSViewExtras.m:
10414        (-[NSView _web_bestURLForDraggingInfo:]):
10415
104162002-07-22  Ken Kocienda  <kocienda@apple.com>
10417
10418        * WebView.subproj/WebHTMLView.m: import of removed WebFrame bridge header was
10419	left in, causing a build break.
10420
104212002-07-22  Maciej Stachowiak  <mjs@apple.com>
10422
10423        Merged WebBridge and WebFrameBridge.
10424
10425        * WebCoreSupport.subproj/WebBridge.h:
10426        * WebCoreSupport.subproj/WebBridge.m:
10427        (-[WebBridge childFrames]): Return bridges, not frameBridges.
10428        (-[WebBridge descendantFrameNamed:]): Return bridge, not frameBridge.
10429        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]): Return a bridge, not a frameBridge.
10430        (-[WebBridge mainFrame]): Return a bridge, not a frameBridge.
10431        (-[WebBridge frameNamed:]):Return a bridge, not a frameBridge.
10432        (-[WebBridge loadURL:attributes:flags:withParent:]): Moved from WebFrameBridge.
10433        (-[WebBridge loadURL:]): Moved from WebFrameBridge.
10434        (-[WebBridge postWithURL:data:]): Moved from WebFrameBridge.
10435        * WebCoreSupport.subproj/WebFrameBridge.h: Removed.
10436        * WebCoreSupport.subproj/WebFrameBridge.m: Removed.
10437        * WebView.subproj/WebFrame.m:
10438        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]): Don't create
10439	a WebFrameBridge.
10440        * WebView.subproj/WebFramePrivate.h:
10441        * WebView.subproj/WebFramePrivate.m:
10442        (-[WebFramePrivate dealloc]): No longer dealloc frameBridge, since we don't have one.
10443        (-[WebFrame _transitionToCommitted]): Pass along the frame's render part, if any. 
10444        (-[WebFrame _frameBridge]): Removed.
10445        * WebKit.pbproj/project.pbxproj: Removed deleted files.
10446
104472002-07-22  Maciej Stachowiak  <mjs@apple.com>
10448
10449	Change WebBridge to hold on to a WebFrame instead of a
10450	WebDataSource. Since we will no longer ever have a bridge for a
10451	provisional data source, we'll just bind the bridge to a
10452	frame. Which means we can merge the bridge and the frame bridge
10453	next.
10454	
10455        * WebCoreSupport.subproj/WebBridge.h: 
10456	* WebCoreSupport.subproj/WebBridge.m: Changed below methods to work
10457	with direct knowledge of the frame but not the bridge (mostly a
10458	simplification).
10459        (-[WebBridge frame]): 
10460        (-[WebBridge parent]):
10461        (-[WebBridge childFrames]):
10462        (-[WebBridge descendantFrameNamed:]):
10463        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
10464        (-[WebBridge openNewWindowWithURL:]):
10465        (-[WebBridge areToolbarsVisible]):
10466        (-[WebBridge setToolbarsVisible:]):
10467        (-[WebBridge areScrollbarsVisible]):
10468        (-[WebBridge setScrollbarsVisible:]):
10469        (-[WebBridge isStatusBarVisible]):
10470        (-[WebBridge setStatusBarVisible:]):
10471        (-[WebBridge setWindowFrame:]):
10472        (-[WebBridge window]):
10473        (-[WebBridge setStatusText:]):
10474        (-[WebBridge mainFrame]):
10475        (-[WebBridge frameNamed:]):
10476        (-[WebBridge receivedData:withDataSource:]):
10477        (-[WebBridge objectLoadedFromCache:size:]):
10478        (-[WebBridge setFrame:]):
10479        (-[WebBridge dataSourceChanged]):
10480        (-[WebBridge dataSource]):
10481        (-[WebBridge openedByScript]):
10482        (-[WebBridge setOpenedByScript:]):
10483
10484        * WebView.subproj/WebDataSourcePrivate.m:
10485        (-[WebDataSource _commitIfReady]): Set bridge's frame and notify
10486	that the data source changed.
10487	* WebView.subproj/WebFrame.m:
10488        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]): Set
10489	bridge's frame.
10490        * WebView.subproj/WebFramePrivate.h, WebView.subproj/WebFramePrivate.m:
10491        (-[WebFrame _bridge]): Method to get the bridge.
10492
104932002-07-21  Maciej Stachowiak  <mjs@apple.com>
10494
10495        Removed provisional/committed distinction from WebCore and the
10496	WebCore SPI. WebCore will never see a provisional data source or
10497	provisional anything, any more. 
10498
10499        * WebCoreSupport.subproj/WebBridge.m:
10500        (-[WebBridge descendantFrameNamed:]): Don't bother with the provisional
10501	bridge - no such thing.
10502        (-[WebBridge setDataSource:]): Assert the data source is committed.
10503        * WebCoreSupport.subproj/WebFrameBridge.m:
10504        (-[WebFrameBridge bridge]): Return committed bridge always, and remove
10505	committed bridge method.
10506
105072002-07-21  Maciej Stachowiak  <mjs@apple.com>
10508
10509        Fix a regression in my recent refactoring that broke JavaScript
10510	window opening, by doing some trickery to make a frame's initial
10511	dummy data source committed.
10512
10513        * WebView.subproj/WebFrame.m:
10514        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
10515	Create dummy data source as committed, not provisional.
10516        * WebView.subproj/WebFramePrivate.m:
10517        (-[WebFrame _transitionToCommitted]): Allow the documentView to be nil
10518	if there is no webView either; this is temporarily needed to handle
10519	the special initial dummy data source, which will be going away soon.
10520        * WebView.subproj/WebDataSourcePrivate.m:
10521        (-[WebDataSource _receivedData:]): Add temporary special case to
10522	avoid sending empty NSData to the representation, to avoid
10523	triggering WebCore assertions.
10524	* WebCoreSupport.subproj/WebBridge.m:
10525        (-[WebBridge openNewWindowWithURL:]): Get the committed data
10526	source, not the provisional one.
10527
105282002-07-21  Chris Blumenberg  <cblu@apple.com>
10529	Used darin-inspired code factoring to fix 3000801 (alex doesn't accept drag of webloc file) in 3 places where we accept drags.
10530     
10531        * Misc.subproj/WebNSViewExtras.h:
10532        * Misc.subproj/WebNSViewExtras.m:
10533        (-[NSView _web_parentWebView]): no changes
10534        (-[NSView _web_acceptableDragTypes]): added
10535        (-[NSView _web_bestURLForDraggingInfo:]): added
10536        (-[NSView _web_dragOperationForDraggingInfo:]): added
10537        * WebKit.pbproj/project.pbxproj: made WebNSViewExtras.h public
10538        * WebView.subproj/WebView.m:
10539        (-[WebView initWithFrame:]): calls _web_acceptableDragTypes
10540        (-[WebView draggingEntered:]): calls _web_dragOperationForDraggingInfo
10541        (-[WebView concludeDragOperation:]): calls _web_bestURLForDraggingInfo
10542
105432002-07-21  Chris Blumenberg  <cblu@apple.com>
10544
10545	- We were loading icons when page loads ended in error. Fixed.
10546	- Special-case file URLs once instead of twice by moving NSWorkspace
10547	  call out of WebIconLoader
10548
10549        * Misc.subproj/WebIconLoader.m:
10550        (-[WebIconLoader startLoading]): removed file URL special-case
10551        * WebView.subproj/WebDataSourcePrivate.m:
10552        (-[WebDataSource _loadIcon]): check for document error, send file 
10553icon to client if none has been set with the LINK tag
10554
105552002-07-21  Maciej Stachowiak  <mjs@apple.com>
10556
10557        * Makefile.am: Remove products from symroots on `make clean'.
10558
105592002-07-21  Maciej Stachowiak  <mjs@apple.com>
10560
10561        * WebKit.pbproj/project.pbxproj: Set directories for the group
10562	folders, so that creating new files in them will put them in the
10563	right directory by default.
10564
105652002-07-21  Maciej Stachowiak  <mjs@apple.com>
10566
10567        More refactoring. Change bridge to get the data source via a
10568	method instead of straight from the ivar, and in the method,
10569	assert that the data source is not nil and is not
10570	provisional. Turns out no one was using it while provisional,
10571	which is great. This means we can eliminate the provisional
10572	concept from the bridge interface as the next step.
10573
10574	* WebCoreSupport.subproj/WebBridge.h:
10575        * WebCoreSupport.subproj/WebBridge.m:
10576        (-[WebBridge dataSource]): New method to get data source - assert
10577	it is not nil, and committed.
10578        (-[WebBridge frame]): Get data source from method.
10579        (-[WebBridge childFrames]): Likewise.
10580        (-[WebBridge descendantFrameNamed:]): Likewise. 
10581        (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]): Likewise.
10582        (-[WebBridge openNewWindowWithURL:]): Likewise.
10583        (-[WebBridge areToolbarsVisible]): Likewise.
10584        (-[WebBridge setToolbarsVisible:]): Likewise.
10585        (-[WebBridge areScrollbarsVisible]): Likewise.
10586        (-[WebBridge setScrollbarsVisible:]): Likewise.
10587        (-[WebBridge isStatusBarVisible]): Likewise.
10588        (-[WebBridge setStatusBarVisible:]): Likewise.
10589        (-[WebBridge setWindowFrame:]): Likewise.
10590        (-[WebBridge window]): Likewise.
10591        (-[WebBridge setTitle:]): Likewise.
10592        (-[WebBridge setStatusText:]): Likewise.
10593        (-[WebBridge mainFrame]): Likewise.
10594        (-[WebBridge frameNamed:]): Likewise.
10595        (-[WebBridge receivedData:withDataSource:]): Likewise.
10596        (-[WebBridge startLoadingResource:withURL:]): Likewise.
10597        (-[WebBridge objectLoadedFromCache:size:]): Likewise.
10598        (-[WebBridge setDataSource:]): Likewise.
10599        (-[WebBridge openedByScript]): Likewise.
10600        (-[WebBridge setOpenedByScript:]): Likewise.
10601        (-[WebBridge setIconURL:]): Likewise.
10602        (-[WebBridge setIconURL:withType:]): Likewise.
10603        * WebView.subproj/WebDataSourcePrivate.h,
10604	WebView.subproj/WebDataSourcePrivate.m:
10605        (-[WebDataSource _isCommitted]): New private method to check if a
10606	data source is committed, for the benefit of WebBridge assertions.
10607
106082002-07-20  Darin Adler  <darin@apple.com>
10609
10610        * WebKit.pbproj/project.pbxproj: Turn stricter warnings back on now that we
10611	don't use C++ any more.
10612
10613        * Plugins.subproj/WebPluginView.m:
10614        (-[WebPluginView sendActivateEvent:]): Fix cast that stricter warning didn't like.
10615        (-[WebPluginView sendUpdateEvent]): Fix cast that stricter warning didn't like.
10616        (-[WebPluginView frameStateChanged:]): Remove unneeded cast that stricter warning didn't like.
10617
106182002-07-20  Darin Adler  <darin@apple.com>
10619
10620	- fixed 2999643 -- Leak of NSSet in -[IFStandardPanels _didStartLoadingURL:inController:]
10621
10622	This is another case of the leak I fixed a month ago. I don't know how I managed to
10623	overlook this other code path with the identical bug.
10624
10625        * Panels.subproj/WebStandardPanels.m:
10626        (-[WebStandardPanels _didStopLoadingURL:inController:]): Fix a leak caused
10627	by calling the wrong method. This was calling objectForKey: instead of
10628	removeObjectForKey:.
10629
106302002-07-20  Darin Adler  <darin@apple.com>
10631
10632        * WebCoreSupport.subproj/WebBridge.m:
10633        (-[WebBridge areToolbarsVisible]):
10634        (-[WebBridge isStatusBarVisible]):
10635	Fix misspelling of visible.
10636
106372002-07-20  Maciej Stachowiak  <mjs@apple.com>
10638
10639	Changed the code to handle "icon" and "SHORTCUT ICON" links
10640	separately, and give higher priority to the former. 
10641
10642	Also, we don't start loading the icon the moment khtml finds one
10643	in the document any more, instead we wait until the document is
10644	done loading, in case there are both "icon" and "SHORTCUT ICON"
10645	link tags.
10646
10647	- fixed 3003672 - Assertion failure related to iconloader on metafilter
10648
10649        * WebCoreSupport.subproj/WebBridge.m:
10650        (-[WebBridge setIconURL:]): Forward to the data source.
10651        (-[WebBridge setIconURL:withType:]): Likewise.
10652        * WebView.subproj/WebDataSourcePrivate.h:
10653        * WebView.subproj/WebDataSourcePrivate.m:
10654        (-[WebDataSourcePrivate dealloc]): Release iconURL.
10655        (-[WebDataSource _setDefaultIconURLIfUnset]): Renamed from
10656	_loadPageIconIfNecessary, and changed to only set iconURL rather
10657	than actually loading.
10658        (-[WebDataSource _setPrimaryLoadComplete:]): Call _loadIcon
10659	instead of _loadPageIconIfNecessary, since we defer all loads to
10660	this point.
10661        (-[WebDataSource _loadIcon]): Load current iconURL if set.
10662        (-[WebDataSource _setIconURL:]): Set iconURL if not set already
10663	(since typed icons are higher priority).
10664        (-[WebDataSource _setIconURL:withType:]): Set the iconURL.
10665
106662002-07-20  Darin Adler  <darin@apple.com>
10667
10668	- fixed 2999616 -- Possible leak in +[IFPluginDatabase installedPlugins]
10669
10670        * Plugins.subproj/WebPluginDatabase.m:
10671        (+[WebPluginDatabase installedPlugins]): Move the code into an init function.
10672        (pluginLocations): Simplified.
10673        (-[WebPluginDatabase init]): Added. Cleaned up a bit, and made it release the
10674	WebPlugin objects -- this was the leak.
10675        (-[WebPluginDatabase dealloc]): Added.
10676
10677        * Plugins.subproj/WebPluginDatabase.h: Tweaked formatting.
10678
10679        * Plugins.subproj/WebPluginStream.h:
10680        * Plugins.subproj/WebPluginStream.m:
10681        (-[WebPluginStream startLoad]):
10682        (-[WebPluginStream stop]):
10683        * WebCoreSupport.subproj/WebSubresourceClient.m:
10684        (+[WebSubresourceClient startLoadingResource:withURL:dataSource:]):
10685        (-[WebSubresourceClient WebResourceHandleDidCancelLoading:]):
10686        (-[WebSubresourceClient WebResourceHandleDidFinishLoading:data:]):
10687        (-[WebSubresourceClient WebResourceHandle:didFailLoadingWithResult:]):
10688        * WebView.subproj/WebDataSource.m:
10689        (-[WebDataSource stopLoading]):
10690        * WebView.subproj/WebDataSourcePrivate.h:
10691        * WebView.subproj/WebDataSourcePrivate.m:
10692        (-[WebDataSourcePrivate dealloc]):
10693        (-[WebDataSource _setPrimaryLoadComplete:]):
10694        (-[WebDataSource _startLoading:]):
10695        (-[WebDataSource _addResourceHandle:]):
10696        (-[WebDataSource _removeResourceHandle:]):
10697	Changed code that called it a URLHandle to say resourceHandle.
10698
10699        * WebView.subproj/WebFrame.m: (-[WebFrame dealloc]): Add an autorelease pool here since
10700	this is called from a timer and AppKit does not use an explicit autorelease pool
10701	in that case. This makes the "world leak check" work better, and is mildly helpful
10702	in other cases too. Radar 3003650 is a request for the AppKit team to fix this, but
10703	this workaround will do for now.
10704
107052002-07-19  Darin Adler  <darin@apple.com>
10706
10707	- fixed 3001951 -- Massive memory leak after running base or static PLT
10708
10709        * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _makeRepresentation]):
10710	Add a missing release.
10711
10712	Reduced our use of autorelease. This allows the page load test to detect leaks of the
10713	world much more easily. We may later find we need to use the "retain autorelease" idiom
10714	in a few more places, but I did a lot of testing and that did not show up.
10715
10716        * Bookmarks.subproj/WebBookmarkGroup.m:
10717        (-[WebBookmarkGroup _setTopBookmark:]): Use a plain release.
10718        (-[WebBookmarkGroup _loadBookmarkGroupGuts]): Use a plain release.
10719        * Bookmarks.subproj/WebBookmarkList.m:
10720        (-[WebBookmarkList copyWithZone:]): Use a plain release.
10721        * Misc.subproj/WebIconLoader.m:
10722        (-[WebIconLoader WebResourceHandleDidFinishLoading:data:]): Use a plain release.
10723        * Plugins.subproj/WebPluginView.m:
10724        (-[WebPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]): Use a plain release.
10725        * WebView.subproj/WebController.m:
10726        (-[WebController createFrameNamed:for:inParent:allowsScrolling:]): Use a plain release.
10727        (-[WebController setWindowContext:]): Use a plain release.
10728        (-[WebController setResourceProgressHandler:]): Use a plain release.
10729        (-[WebController setDownloadProgressHandler:]): Use a plain release.
10730        (-[WebController setPolicyHandler:]): Use a plain release.
10731        * WebView.subproj/WebControllerPrivate.m:
10732        (-[WebControllerPrivate dealloc]): Use plain release.
10733        * WebView.subproj/WebDataSourcePrivate.m:
10734        (-[WebDataSourcePrivate dealloc]): Use plain release.
10735        (-[WebDataSource _setPrimaryLoadComplete:]): Use plain release.
10736        (-[WebDataSource _setTitle:]): Use plain release.
10737        * WebView.subproj/WebFrame.m:
10738        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]): Use plain release.
10739        (-[WebFrame reset]): Invalidate and release the timer.
10740        * WebView.subproj/WebFramePrivate.h: Keep a reference to the timer.
10741        * WebView.subproj/WebFramePrivate.m:
10742        (-[WebFramePrivate dealloc]): Invalidate and release the timer. Use plain release.
10743        (-[WebFramePrivate setName:]): Use plain release.
10744        (-[WebFramePrivate setWebView:]): Use plain release.
10745        (-[WebFramePrivate setDataSource:]): Use plain release.
10746        (-[WebFramePrivate setProvisionalDataSource:]): Use plain release.
10747        (-[WebFrame _scheduleLayout:]): Keep a reference to the timer.
10748        (-[WebFrame _timedLayout:]): Release and nil the timer.
10749        * WebView.subproj/WebRenderNode.m:
10750        (-[WebRenderNode initWithName:rect:view:children:]): Use plain release.
10751        * WebView.subproj/WebView.m:
10752        (-[WebView concludeDragOperation:]): Use plain release.
10753        * WebView.subproj/WebViewPrivate.m:
10754        (-[WebView _makeDocumentViewForDataSource:]): Use plain release.
10755
10756	Other changes to make the new page load test feature work.
10757
10758        * Misc.subproj/WebKitStatistics.h:
10759        * Misc.subproj/WebKitStatistics.m:
10760        (+[WebKitStatistics HTMLRepresentationCount]):
10761	Added a stat for WebHTMLRepresentation objects.
10762        * WebView.subproj/WebHTMLRepresentation.m:
10763        (-[WebHTMLRepresentation init]): Bump the count.
10764        (-[WebHTMLRepresentation dealloc]): Decrement the count.
10765
10766	Renaming.
10767
10768        * Misc.subproj/WebCoreStatistics.h:
10769        * Misc.subproj/WebKitStatisticsPrivate.h:
10770        * Misc.subproj/WebCoreStatistics.m:
10771        (+[WebCoreStatistics emptyCache]):
10772        (+[WebCoreStatistics setCacheDisabled:]):
10773	Renamed to include the word cache now that the class does not.
10774
10775        * Plugins.subproj/WebPluginStream.m:
10776        * WebCoreSupport.subproj/WebSubresourceClient.m:
10777        * WebView.subproj/WebMainResourceClient.m:
10778        Updated for the WebFoundation renaming.
10779
107802002-07-19  Chris Blumenberg  <cblu@apple.com>
10781
10782        * WebView.subproj/WebDataSourcePrivate.m:
10783        (-[WebDataSource _loadPageIconIfNecessary]): use the correct relative string to request favicon.ico
10784
107852002-07-19  Chris Blumenberg  <cblu@apple.com>
10786
10787        * History.subproj/WebHistoryItem.m:
10788        (-[WebHistoryItem image]): call [WebIconLoader defaultIcon]
10789        * Misc.subproj/WebIconLoader.m:
10790        (+[WebIconLoader defaultIcon]): move bundle image loading code from [WebHistoryItem image] to here.
10791
107922002-07-19  Chris Blumenberg  <cblu@apple.com>
10793
10794	Added support favicons.
10795
10796        * Misc.subproj/WebIconLoader.h: Added.
10797        * Misc.subproj/WebIconLoader.m: Added.
10798        (-[WebIconLoaderPrivate dealloc]):
10799        (+[WebIconLoader defaultIcon]):
10800        (-[WebIconLoader initWithURL:]):
10801        (-[WebIconLoader dealloc]):
10802        (-[WebIconLoader setDelegate:]):
10803        (-[WebIconLoader startLoading]):
10804        (-[WebIconLoader startLoadingOnlyFromCache]):
10805        (-[WebIconLoader stopLoading]):
10806        (-[WebIconLoader WebResourceHandleDidBeginLoading:]):
10807        (-[WebIconLoader WebResourceHandleDidCancelLoading:]):
10808        (-[WebIconLoader WebResourceHandleDidFinishLoading:data:]):
10809        (-[WebIconLoader WebResourceHandle:resourceDataDidBecomeAvailable:]):
10810        (-[WebIconLoader WebResourceHandle:resourceDidFailLoadingWithResult:]):
10811        (-[WebIconLoader WebResourceHandle:didRedirectToURL:]):
10812        * WebCoreSupport.subproj/WebBridge.m:
10813        (-[WebBridge loadIcon:]): added
10814        * WebKit.pbproj/project.pbxproj:
10815        * WebView.subproj/WebControllerPrivate.m:
10816        (-[WebController _mainReceivedError:forResourceHandle:partialProgress:fromDataSource:]):
10817        * WebView.subproj/WebDataSourcePrivate.h:
10818        * WebView.subproj/WebDataSourcePrivate.m:
10819        (-[WebDataSourcePrivate dealloc]):
10820        (-[WebDataSource _loadPageIconIfNecessary]): added
10821        (-[WebDataSource _setPrimaryLoadComplete:]): start loading icon
10822        (-[WebDataSource _stopLoading]): stop icon loader
10823        (-[WebDataSource receivedPageIcon:]): added
10824        (-[WebDataSource _loadIcon:]): added
10825        * WebView.subproj/WebLocationChangeHandler.h:
10826
108272002-07-19  Darin Adler  <darin@apple.com>
10828
10829        * WebKit.pbproj/project.pbxproj: Forgot to export WebKitStatistics.h so it can
10830	be used by WebBrowser.
10831
108322002-07-19  Darin Adler  <darin@apple.com>
10833
10834	Added some stats that we can use to sniff out "leak the world" problems.
10835
10836        * Misc.subproj/WebKitStatistics.h: Added.
10837        * Misc.subproj/WebKitStatistics.m: Added.
10838        * Misc.subproj/WebKitStatisticsPrivate.h: Added.
10839
10840        * WebKit.pbproj/project.pbxproj: Added new files.
10841
10842        * WebCoreSupport.subproj/WebBridge.m:
10843        (-[WebBridge init]): Bump count.
10844        (-[WebBridge dealloc]): Decrement count.
10845        * WebView.subproj/WebController.m:
10846        (-[WebController initWithView:provisionalDataSource:]): Bump count.
10847        (-[WebController dealloc]): Decrement count.
10848        * WebView.subproj/WebDataSource.m:
10849	(-[WebDataSource initWithURL:attributes:flags:): Bump count.
10850        (-[WebDataSource dealloc]): Decrement count.
10851        * WebView.subproj/WebFrame.m:
10852        (-[WebFrame initWithName:webView:provisionalDataSource:controller:]): Bump count.
10853        (-[WebFrame dealloc]): Decrement count.
10854        * WebView.subproj/WebView.m:
10855        (-[WebView initWithFrame:]): Bump count.
10856        (-[WebView dealloc]): Decrement count.
10857
108582002-07-19  Maciej Stachowiak  <mjs@apple.com>
10859
10860        More refactoring: Use assertions to make sure a provisional data
10861	source's bridge is never used - and then fix the places where it
10862	would have been used. :-)
10863
10864	* WebView.subproj/WebDataSource.m:
10865        (-[WebDataSource documentTextFromDOM]): Return nil if the document
10866	is not committed.
10867        * WebView.subproj/WebDataSourcePrivate.m:
10868        (-[WebDataSource _stopLoading]): Don't tell the bridge to stop
10869	if we're provisional, because we won't have one.
10870        (-[WebDataSource _setFinalURL:]): Don't try to set the bridge URL
10871	if we are not committed - it will get set at commit time.
10872        (-[WebDataSource _removeFromFrame]): Assert that the data soource is
10873	committed - a provisional data source should never be removed from a frame
10874	because it should never be in a frame in the first place.
10875        (-[WebDataSource _bridge]): Assert that the view is committed.
10876        (-[WebDataSource _commitIfReady]): Do nothing if already committed.
10877        (-[WebDataSource _receivedData:]): Notice that first byte was read,
10878	if appropriate, and commit when ready.
10879        * WebView.subproj/WebMainResourceClient.m:
10880        (-[WebMainResourceClient WebResourceHandle:didRedirectToURL:]):
10881	Simplify code by using [WebDataSource _receivedData:]
10882
108832002-07-19  Maciej Stachowiak  <mjs@apple.com>
10884
10885        Fix a regression caused by a previous commit that broke frames.
10886
10887	* WebCoreSupport.subproj/WebBridge.m:
10888        (-[WebBridge receivedData:withDataSource:]): Instead setting the data source
10889	implicitly here, and doing other special first-time init, simply assert that
10890	we have a data source.
10891        (-[WebBridge setDataSource:]): Do the extra work when setting the data
10892	source here instead.
10893        * WebView.subproj/WebDataSourcePrivate.m:
10894        (-[WebDataSource _commitIfReady]): After making the
10895	representation, set the data source, because we no longer pass the
10896	first data chunk _before_ transitioning to committed, instead we
10897	do it right after, so the logic in WebBridge to do it implicitly
10898	was not going to cut it.
10899
109002002-07-18  Maciej Stachowiak  <mjs@apple.com>
10901
10902	More refactoring: Simplify a bit more by moving more logic into
10903	the data source.
10904	
10905        * WebView.subproj/WebDataSourcePrivate.h, WebView.subproj/WebDataSourcePrivate.m:
10906	(-[WebDataSource _gotFirstByte]): Removed.
10907	(-[WebDataSource _setGotFirstByte]): Removed.
10908        (-[WebDataSource _isReadyForData]): Removed.
10909        (-[WebDataSource _receivedData:]): Commit if appropriate, and pass data to
10910	representation and documentView.
10911        * WebView.subproj/WebMainResourceClient.m:
10912        (-[WebMainResourceClient
10913	WebResourceHandle:resourceDataDidBecomeAvailable:]): Change the
10914	check back to policy != None, because the first chunk will trigger
10915	a commit in the policy == Show case, so there is no need to worry
10916	about it.
10917
109182002-07-18  Maciej Stachowiak  <mjs@apple.com>
10919
10920        Rename some methods for clarity. These two methods are defined by
10921	the end state, not the start state (in fact,
10922	transitionToLayoutAcceptable does most of it's work when it starts
10923	in the cimmitted state, not provisional).
10924
10925	* WebView.subproj/WebFramePrivate.h, WebView.subproj/WebFramePrivate.m:
10926	(-[WebFrame _transitionToLayoutAcceptable]): Renamed from
10927	_transitionProvisionalToLayoutAcceptable.
10928        (-[WebFrame _transitionToCommitted]): Renamed from
10929	_transitionProvisionalToLayoutAcceptable.
10930
10931	And adjust all the calls to them:
10932	
10933        * WebView.subproj/WebControllerPrivate.m:
10934        (-[WebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
10935        (-[WebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
10936        * WebView.subproj/WebDataSourcePrivate.m:
10937        (-[WebDataSource _commitIfReady]):
10938
109392002-07-18  Maciej Stachowiak  <mjs@apple.com>
10940
10941	Even more exciting refactoring. Change the rules for committing
10942	the data source and creating the representation so that both
10943	happen when the first byte has been received _and_ the content
10944	policy has been set to show. Previously these actions happened at
10945	different times. Now we maintain the invariant that the data
10946	source has a representation if and only if it is committed.
10947	
10948	* WebView.subproj/WebController.m:
10949        (-[WebController haveContentPolicy:andPath:forDataSource:]): Simplify
10950	further by putting more of the work in WebDataSource.
10951        * WebView.subproj/WebControllerPrivate.m:
10952        (-[WebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
10953	
10954        * WebView.subproj/WebDataSource.h, WebView.subproj/WebDataSource.m: Move
10955	makeRepresentation method to private file.
10956        * WebView.subproj/WebDataSourcePrivate.h:
10957        * WebView.subproj/WebDataSourcePrivate.m:
10958        (-[WebDataSource _setContentPolicy:]): If the policy is set to show,
10959	commit if we have already gotten the first byte.
10960        (-[WebDataSource _commitIfReady]): Create representation and
10961	commit if we have the first byte and have a policy of show.
10962	(-[WebDataSource _gotFirstByte]): Method to check if this data source
10963	has gotten the first byte yet. Commit here if ready. 
10964	(-[WebDataSource _setGotFirstByte]): Method to report that some
10965	data has been received.
10966        (-[WebDataSource _makeRepresentation]): Make and set up teh document view too.
10967        (-[WebDataSource _isReadyForData]): Return TRUE if policy is set (and if the policy
10968	is Show, if we have also received the first byte.
10969        * WebView.subproj/WebFramePrivate.m:
10970        (-[WebFrame _transitionProvisionalToCommitted]): Don't call the datasource (it now
10971	calls us)
10972        * WebView.subproj/WebMainResourceClient.m:
10973        (-[WebMainResourceClient WebResourceHandle:resourceDataDidBecomeAvailable:]):
10974
10975        * WebView.subproj/WebView.h, WebView.subproj/WebView.m: move
10976	makeDocumentViewForDataSource...  
10977	* WebView.subproj/WebViewPrivate.h, WebView.subproj/WebViewPrivate.m:
10978        (-[WebView _makeDocumentViewForDataSource:]): To here.
10979
109802002-07-18  Maciej Stachowiak  <mjs@apple.com>
10981
10982	Avoid throwing an exception while stopping animations. Image
10983	renders were getting into the array multiple times, which means
10984	the code that iterated over the array backwards could throw an
10985	exception, because callling removeObject: on the array would remove
10986	all instances of the object.
10987
10988	This probably fixes the following crashers, and a bunch of huge leaks:
10989
10990	Radar 2999853 - Uninitialized memory access in plugins on theonion.com
10991	Radar 2999892 - Crash disconnecting view from next view chain on theonion.com
10992	Radar 2999911 - Infinite loop in [WebHTMLView dealloc], resulting in crash
10993	
10994        * WebCoreSupport.subproj/WebImageRenderer.m:
10995        (-[WebImageRenderer scheduleFrame]): Move adding to array of image
10996	renderers from here...
10997        (-[WebImageRenderer beginAnimationInRect:fromRect:]): To here.
10998
10999=== Alexander-13 ===
11000
110012002-07-18  Maciej Stachowiak  <mjs@apple.com>
11002
11003	Yet still more refactoring in preparation for the KHTMLPart
11004	change. This is preparing things to change the commit rule to
11005	require receiving at least one byte of data, and having the
11006	content policy set to Show.
11007
11008        * WebView.subproj/WebController.m:
11009        (-[WebController haveContentPolicy:andPath:forDataSource:]): Remove
11010	more code since makeRepresentation now does most of the work.
11011        * WebView.subproj/WebDataSource.m:
11012        (-[WebDataSource makeRepresentation]): Tell the WebView (if any) to create
11013	the documentView now too.
11014        * WebView.subproj/WebView.h:
11015        * WebView.subproj/WebView.m:
11016        (-[WebView makeDocumentViewForDataSource:]): Hook document view up to data
11017	source.
11018
110192002-07-18  Maciej Stachowiak  <mjs@apple.com>
11020
11021	Some refactoring in preparation for the KHTMLPart change.
11022	
11023        * WebView.subproj/WebDataSourcePrivate.h,
11024	WebView.subproj/WebDataSourcePrivate.m:
11025        (-[WebDataSource _stopLoading]): Bail early if not loading.
11026        (-[WebDataSource _commit]): Method to mark when the data source is
11027	committed (it now knows whether it's committed or
11028	provisional). This will be useful for adding assertions later on
11029	about what operations may happen only when committed, and which
11030	can only happen when provisional.
11031
11032	* WebView.subproj/WebFramePrivate.m:
11033        (-[WebFrame _transitionProvisionalToCommitted]): Call data
11034	source's _commit method.
11035
110362002-07-17  Richard Williamson  <rjw@apple.com>
11037
11038        * WebView.subproj/WebHTMLView.m:
11039        Removed unnecessary (and incorrect) lockFocus.
11040        
110412002-07-17  Maciej Stachowiak  <mjs@apple.com>
11042
11043	Some refactoring in preparation for the KHTMLPart change.
11044	
11045        * WebView.subproj/WebController.m:
11046	(-[WebController haveContentPolicy:andPath:forDataSource:]): Move
11047	more of the work of creating and setting the representation and
11048	document view into WebDataSource and WebView.
11049	
11050        * WebView.subproj/WebDataSource.h,
11051	WebView.subproj/WebDataSource.m:
11052	(+[(id <WebDocumentRepresentation>) createRepresentationForMIMEType:]): Removed.
11053        (-[WebDataSource makeRepresentation]): A method to build the right
11054	kind of representation for the content type.
11055
11056        * WebView.subproj/WebDataSourcePrivate.h:
11057        * WebView.subproj/WebDataSourcePrivate.m:
11058	(-[WebDataSource _representationClass]): Method to get the right
11059	representation class for the current content type.
11060	(-[WebDataSource _bridge]): Move here from WebBridge.[mh], so we
11061	can later add an assertion that the data source is not provisional.
11062	
11063        * WebView.subproj/WebHTMLViewPrivate.m: #import WebDataSourcePrivate.h
11064        * WebView.subproj/WebView.h, WebView.subproj/WebView.m:
11065	(+[(id <WebDocumentRepresentation>) createDocumentViewForMIMEType:]): Removed.
11066	(-[WebView makeDocumentViewForMIMEType:]): Method to build the
11067	right kind of document view for the specified MIME type.
11068
110692002-07-16  Darin Adler  <darin@apple.com>
11070
11071        * History.subproj/WebBackForwardList.m: Replace MyCompanyName with Apple Computer.
11072        (-[WebBackForwardList init]): Fix strange [super init] logic to be standard.
11073        * History.subproj/WebHistoryItem.h: Replace MyCompanyName with Apple Computer.
11074        * Misc.subproj/WebDownloadHandler.h: Replace MyCompanyName with Apple Computer.
11075
110762002-07-16  Darin Adler  <darin@apple.com>
11077
11078	- fixed 2997891 -- Alexander confused about base page URL for relative links
11079
11080        * WebCoreSupport.subproj/WebSubresourceClient.m:
11081        (-[WebSubresourceClient WebResourceHandle:didRedirectToURL:]):
11082	Don't tell the bridge the URL changed. The bridge doesn't care about redirects
11083	for subresources (and if it did, we'd need some way to tell it that this was
11084	a subresource redirect).
11085
11086        * WebCoreSupport.subproj/WebBridge.m: Formatting tweaks.
11087        * WebCoreSupport.subproj/WebImageRenderer.m: Formatting tweaks.
11088        * WebView.subproj/WebView.m: Formatting tweaks.
11089
110902002-07-16  Richard Williamson  <rjw@apple.com>
11091
11092        Really, stop animation if last frame has zero duration, like IE.
11093        Was checking adjustedFrameDuration, which is never zero.
11094
11095        * WebCoreSupport.subproj/WebImageRenderer.m:
11096        (-[WebImageRenderer unadjustedFrameDuration]):
11097        (-[WebImageRenderer frameDuration]):
11098        (-[WebImageRenderer nextFrame:]):
11099
111002002-07-16  Maciej Stachowiak  <mjs@apple.com>
11101
11102	WebKit part of fix for:
11103
11104	Radar 2982043 - Link mouse-over status should change in response to modifier keys
11105	
11106        * WebCoreSupport.subproj/WebBridge.m:
11107        (-[WebBridge modifierTrackingEnabled]): Implemented by checking
11108	bit on WebHTMLView class.
11109	* WebKit.pbproj/project.pbxproj: Install WebHTMLViewPrivate as a
11110	Private header.
11111        * WebView.subproj/WebHTMLViewPrivate.h: Prototype new modifier tracking SPI.
11112        * WebView.subproj/WebHTMLViewPrivate.m:
11113	(+[WebHTMLView _setModifierTrackingEnabled:]): Method to inform
11114	WebHTMLView that modifier tracking is working.
11115        (+[WebHTMLView _modifierTrackingEnabled]): Obligatory getter.
11116        (+[WebHTMLView _postFlagsChangedEvent:]): Method to report
11117	flagsChanged events. Creates corresponding fake mouseMoved event
11118	and sends it as a notification.
11119
111202002-07-16  Darin Adler  <darin@apple.com>
11121
11122        * WebCoreSupport.subproj/WebBridge.m:
11123	Remove childFrameNamed since it's not needed, and every one of these bridge
11124	methods adds potential confusion.
11125	(-[WebBridge descendantFrameNamed:]): Make this look for descendants in the
11126	provisional data sources first. This is the same change Richard made to
11127	childFrameNamed, but it turns out that this is the method that's really used.
11128
111292002-07-16  Darin Adler  <darin@apple.com>
11130
11131        * almost every file: Renamed IF* -> Web*.
11132
111332002-07-15  Richard Williamson  <rjw@apple.com>
11134
11135        Removed dependence on window resize notification.  We now
11136        use the IFWebView setFrame: method to trigger layouts.  Much
11137        cleaner.
11138        
11139        Cleaned up image animation timer scheduler.
11140        
11141        Stop animation if last frame has zero duration, like IE.
11142        
11143        Change minimum duration to 1/30th (used if zero frame duration is
11144        specified).  This is closer to what I see in IE empirically.
11145        
11146        * WebCoreSupport.subproj/IFImageRenderer.h:
11147        * WebCoreSupport.subproj/IFImageRenderer.m:
11148        (-[IFImageRenderer frameDuration]):
11149        (-[IFImageRenderer _scheduleFrame]):
11150        (-[IFImageRenderer nextFrame:]):
11151        (-[IFImageRenderer beginAnimationInRect:fromRect:]):
11152        * WebView.subproj/IFHTMLView.mm:
11153        (-[IFHTMLView initWithFrame:]):
11154        (-[IFHTMLView removeNotifications]):
11155        * WebView.subproj/IFWebView.mm:
11156        (-[IFWebView setFrame:]):
11157        (-[IFWebView viewWillStartLiveResize]):
11158        (-[IFWebView viewDidEndLiveResize]):
11159
111602002-07-15  Maciej Stachowiak  <mjs@apple.com>
11161
11162        Fixed Radar 2957209 - Change "JavaScript can open new windows
11163	automatically" preference to off by default
11164
11165        * WebView.subproj/IFPreferences.mm:
11166        (+[IFPreferences load]): Switch default for "Allow JavaScript to
11167	open new windows automatically" to FALSE.
11168
111692002-07-15  Darin Adler  <darin@apple.com>
11170
11171	More weaning from C++.
11172
11173        * Plugins.subproj/IFPluginView.mm:
11174        (-[IFPluginView initWithFrame:plugin:url:baseURL:mime:arguments:]): Use malloc instead of new.
11175        (-[IFPluginView dealloc]): Use free instead of delete.
11176
111772002-07-15  Darin Adler  <darin@apple.com>
11178
11179	Fixes so we are ready to compile as Objective C, not C++.
11180	The C++ front end misses a lot of things the C front end catches.
11181
11182        * Plugins.subproj/IFNullPluginView.mm:
11183        (-[IFNullPluginView drawRect:]): Add missing cast.
11184        * Plugins.subproj/IFPluginStream.mm:
11185        (-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]): Use
11186	[IFLoadProgress initWithURLHandle:] instead of getting at private fields.
11187        * Plugins.subproj/IFPluginView.mm:
11188        (-[IFPluginView setUpWindowAndPort]): Remove unused windowFrame.
11189        (-[IFPluginView start]): Don't use a variable within a for statement.
11190	Add missing cast.
11191        * WebView.subproj/IFMainURLHandleClient.mm:
11192        (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
11193	Use [IFWebFrame _setProvisionalDataSource:] so we don't have to get at the
11194	protected field _private.
11195        * WebView.subproj/IFWebControllerPrivate.mm:
11196        (-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
11197	Use [IFProgress bytesSoFar] so we don't have to get at the protected field bytesSoFar.
11198        * WebView.subproj/IFWebFramePrivate.mm:
11199        (-[IFWebFrame _isLoadComplete]): Add missing cast.
11200        (-[IFWebFrame _setProvisionalDataSource:]): Added.
11201
11202        * WebView.subproj/IFHTMLRepresentation.mm:
11203        * WebView.subproj/IFHTMLViewPrivate.h:
11204        * WebView.subproj/IFWebControllerPrivate.h:
11205        * WebView.subproj/IFWebDataSourcePrivate.h:
11206        * WebView.subproj/IFWebFramePrivate.h:
11207        * WebView.subproj/IFWebViewPrivate.h:
11208	Make data in private class @public, since the main class needs to get at it
11209	directly.
11210	
112112002-07-15  Richard Williamson  <rjw@apple.com>
11212
11213        Only adjustFrames in parent if parent is a frame set.
11214        (Anywhere from 2% to 6% gain, depending on what you believe.)
11215        * WebView.subproj/IFWebFramePrivate.mm:
11216        (-[IFWebFrame _isLoadComplete]):
11217        
11218        * WebView.subproj/IFPreferences.mm:
11219        (+[IFPreferences load]):
11220        Increment initial layout from 1.5 seconds to 1.85 seconds.
11221
112222002-07-15  Darin Adler  <darin@apple.com>
11223
11224        * WebView.subproj/IFMainURLHandleClient.mm:
11225        (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
11226	Tweak a comment that included the word WebController, to smooth things over a
11227	tiny bit for the coming renaming.
11228
112292002-07-15  Darin Adler  <darin@apple.com>
11230
11231        * WebCoreSupport.subproj/IFTextRenderer.m:
11232        (-[IFTextRenderer widthForCharacters:length:]): Remove implementation of some unused
11233	methods, including at least one that was never used.
11234
112352002-07-15  Maciej Stachowiak  <mjs@apple.com>
11236
11237	WebKit part of fix for Radar 2896356 - cookie "ask for each site" not implemented yet
11238
11239        * Panels.subproj/IFPanelCookieAcceptHandler.h: Added.
11240        * Panels.subproj/IFPanelCookieAcceptHandler.m: Added.
11241        (-[IFPanelCookieAcceptHandler init]):
11242        (-[IFPanelCookieAcceptHandler dealloc]):
11243        (-[IFPanelCookieAcceptHandler readyToStartCookieAcceptCheck:]):
11244        (-[IFPanelCookieAcceptHandler startCookieAcceptCheck:]):
11245        (-[IFPanelCookieAcceptHandler cancelCookieAcceptCheck:]):
11246        (-[IFPanelCookieAcceptHandler doneWithCheck:returnCode:contextInfo:]):
11247        * Panels.subproj/IFStandardPanels.m:
11248        (-[IFStandardPanels setUseStandardCookieAcceptPanel:]):
11249        (-[IFStandardPanels useStandardCookieAcceptPanel]):
11250        * WebKit.pbproj/project.pbxproj:
11251
112522002-07-14  Maciej Stachowiak  <mjs@apple.com>
11253
11254        More workarounds for the Objective C++ typecasting bug.
11255
11256	* WebView.subproj/IFDOMNode.mm:
11257        (-[IFDOMNode initWithWebView:]):
11258        * WebView.subproj/IFHTMLViewPrivate.mm:
11259        (-[NSView _IF_stopIfPluginView]):
11260        * WebView.subproj/IFRenderNode.mm:
11261        (-[IFRenderNode initWithWebView:]):
11262        * WebView.subproj/IFWebFrame.mm:
11263        (-[IFWebFrame reset]):
11264
112652002-07-14  Darin Adler  <darin@apple.com>
11266
11267	Wean WebKit completely from getting at the C++ parts of WebCore.
11268	We probably don't need to use C++ at all for WebKit any more.
11269
11270        * WebKit.pbproj/project.pbxproj: Remove all the header search paths; we don't need any
11271	special ones now.
11272
11273        * WebKitPrefix.h: Remove <config.h>; we don't need it any more.
11274
11275        * Misc.subproj/IFCache.h: Rename getStatistics to statistics.
11276        * Misc.subproj/IFCache.mm:
11277        (+[IFCache statistics]):
11278        (+[IFCache empty]):
11279        (+[IFCache setDisabled:]):
11280	Call through WebCoreCache instead of going directly to khtml::Cache.
11281        (+[IFCache javaScriptObjectsCount]):
11282        (+[IFCache javaScriptInterpretersCount]):
11283        (+[IFCache javaScriptNoGCAllowedObjectsCount]):
11284        (+[IFCache javaScriptReferencedObjectsCount]):
11285        (+[IFCache garbageCollectJavaScriptObjects]):
11286	Call through WebCoreJavaScript instead of going directly to kjs::Collector.
11287
11288        * WebCoreSupport.subproj/IFWebCoreFrame.m:
11289        (-[IFWebCoreFrame bridge]): Change to return bridge from the provisional data
11290	source if it exists.
11291        (-[IFWebCoreFrame committedBridge]): Do what [bridge] used to do, always returning
11292	the bridge from the committed data source and never the provisional one.
11293
11294        * WebView.subproj/IFHTMLView.mm:
11295        (-[IFHTMLView provisionalDataSourceChanged:]): Don't store the provisional widget.
11296	It's stored in the bridge for the provisional data source.
11297        (-[IFHTMLView provisionalDataSourceCommitted:]): Use the bridge method installInFrame:
11298	to do most of the work that used to be here. The rest is don in removeFromFrame which
11299	is called elsewhere.
11300        (-[IFHTMLView mouseUp:]): Use the bridge's mouseUp method.
11301        (-[IFHTMLView mouseDown:]): Use the bridge's mouseDown method.
11302        (-[IFHTMLView mouseMovedNotification:]): Use the bridge's mouseMoved method.
11303        (-[IFHTMLView mouseDragged:]): Use the bridge's mouseDragged method.
11304
11305        * WebView.subproj/IFHTMLViewPrivate.h: Remove the widget, widgetOwned, and
11306	provisionalWidget instance variables, and the _widget and _provisionalWidget methods.
11307        * WebView.subproj/IFHTMLViewPrivate.mm:
11308        (-[IFHTMLView _reset]): Remove the code that deleted the widget and the provisional widget.
11309	This is now handled elsewhere.
11310
11311        * WebView.subproj/IFDOMNode.mm: Redo to use the copyDOMTree feature of the bridge.
11312        * WebView.subproj/IFRenderNode.mm: Redo to use the copyRenderTree feature of the bridge.
11313
11314        * WebView.subproj/IFRenderNode.h: Use an NSRect instead of four integers
11315	(the switch to floating point is OK).
11316
11317        * WebView.subproj/IFWebDataSourcePrivate.h: Add private _removeFromFrame method.
11318        * WebView.subproj/IFWebDataSourcePrivate.mm:
11319        (-[IFWebDataSource _removeFromFrame]): Set the controller and location change handler
11320	references to nil, and also call [WebCoreBridge removeFromFrame].
11321        * WebView.subproj/IFWebFramePrivate.mm:
11322        (-[IFWebFramePrivate setDataSource:]): Use _removeFromFrame where we formerly would
11323	set the controller and location change handler references to nil.
11324
11325        * WebCoreSupport.subproj/IFWebCoreBridge.h: Tweak.
11326
113272002-07-13  Darin Adler  <darin@apple.com>
11328
11329        * Plugins.subproj/IFNullPluginView.mm: (-[IFNullPluginView dealloc]):
11330        * WebView.subproj/IFImageRepresentation.m: (-[IFImageRepresentation dealloc]):
11331	Fix leaks by adding calls to [super dealloc].
11332
113332002-07-13  Darin Adler  <darin@apple.com>
11334
11335        * Misc.subproj/IFNSEventExtras.h: Removed.
11336        * Misc.subproj/IFNSEventExtras.m: Removed.
11337        * WebKit.pbproj/project.pbxproj: Removed IFNSEventExtras.*.
11338
11339        * WebCoreSupport.subproj/IFWebCoreBridge.mm:
11340        * WebView.subproj/IFWebFrame.mm:
11341        * WebView.subproj/IFWebFramePrivate.h:
11342        * WebView.subproj/IFWebFramePrivate.mm:
11343	Renamed all bridgeFrame to frameBridge for greater clarity.
11344
11345        * WebView.subproj/IFHTMLView.mm: Updated comments and commented-out code.
11346
11347        * WebView.subproj/IFWebDataSource.h: Fix comment that mentioned IFDefaultWebController.
11348
11349        * WebView.subproj/IFWebFramePrivate.mm:
11350        (-[IFWebFrame _transitionProvisionalToCommitted]): Fix exception string that cited
11351	the wrong state name.
11352
113532002-07-13  Darin Adler  <darin@apple.com>
11354
11355        * History.subproj/IFURIEntry.m: (-[IFURIEntry image]):
11356	Use [IFURIEntry class] instead of [self class] so we get the
11357	icon from the WebKit bundle even if someone subclasses IFURIEntry.
11358        * Plugins.subproj/IFNullPluginView.mm:
11359        (-[IFNullPluginView initWithFrame:mimeType:arguments:]): Use
11360	bundleForClass instead of bundleWithIdentifier so things work even
11361	if we have two copies of WebKit installed on the same machine.
11362
11363        * Makefile.am: Remove include of embed.am.
11364
11365        * WebKit.pbproj/project.pbxproj: Use embed-into-alex instead of make embed.
11366	Also change bundle identifier to com.apple.WebKit instead of com.apple.webkit
11367	to match standard used by our other frameworks. (Checked that we no longer have
11368	any hard-coding of the bundle identifier anywhere in our code.)
11369
113702002-07-13  Richard Williamson  <rjw@apple.com>
11371
11372        Fixed 2981849 - frames don't always draw correctly.
11373        
11374        * WebCoreSupport.subproj/IFWebCoreBridge.mm:
11375        (-[IFWebCoreBridge childFrameNamed:]):
11376        Check provisional data source first.
11377        
11378        * WebView.subproj/IFHTMLViewPrivate.h:
11379        * WebView.subproj/IFHTMLViewPrivate.mm:
11380        (-[IFHTMLView _adjustFrames]):
11381        Added method to adjust frame geometry.
11382        
11383        * WebView.subproj/IFWebDataSourcePrivate.h:
11384        * WebView.subproj/IFWebDataSourcePrivate.mm:
11385        (-[IFWebDataSource _layoutChildren]):
11386        Added method to adjust child frame geometries.
11387        
11388        * WebView.subproj/IFWebFramePrivate.mm:
11389        (-[IFWebFrame _isLoadComplete]):
11390        Removed unnecessary drawing now that frame geometry is
11391        calculated directly.
11392        
113932002-07-12  Darin Adler  <darin@apple.com>
11394
11395	About 1/3 of the remaining work to wean WebKit from its special relationship with WebCore
11396	onto explicit interfaces.
11397
11398        * Misc.subproj/IFCache.mm:
11399        * WebView.subproj/IFDOMNode.mm:
11400        * WebView.subproj/IFRenderNode.mm:
11401	Mark imports from inside WebCore with #ifndef WEBKIT_INDEPENDENT_OF_WEBCORE.
11402	Once these are all gone, the task is done.
11403
11404        * Plugins.subproj/IFPlugin.h:
11405        * WebCoreSupport.subproj/IFCookieAdapter.h:
11406        * WebCoreSupport.subproj/IFImageRenderer.h:
11407        * WebCoreSupport.subproj/IFImageRendererFactory.h:
11408        * WebCoreSupport.subproj/IFResourceURLHandleClient.m:
11409        * WebCoreSupport.subproj/IFTextRenderer.h:
11410        * WebCoreSupport.subproj/IFTextRendererFactory.h:
11411        * WebCoreSupport.subproj/IFWebCoreBridge.h:
11412        * WebCoreSupport.subproj/IFWebCoreViewFactory.h:
11413	Use #import <WebCore/> for getting at WebCore headers so we don't need to use -I.
11414
11415        * WebCoreSupport.subproj/IFWebCoreBridge.mm:
11416        (-[IFWebCoreBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
11417	Call setRenderPart on the WebCoreFrame rather than on the IFWebFrame.
11418
11419        * WebCoreSupport.subproj/IFWebCoreFrame.h: Subclass from the WebCoreFrame class.
11420        * WebCoreSupport.subproj/IFWebCoreFrame.m:
11421        (-[IFWebCoreFrame HTMLView]): Add a cast.
11422        (-[IFWebCoreFrame widget]): Remove overzealous assert.
11423
11424        * WebKit.pbproj/project.pbxproj: Rearranged things a bit. Removed unneeded build phase.
11425
11426        * WebView.subproj/IFDocument.h:
11427        * WebView.subproj/IFDynamicScrollBarsView.h:
11428        * WebView.subproj/IFWebController.h:
11429        * WebView.subproj/IFWebControllerPolicyHandler.h:
11430	Changed a few stray #include statements to #import statements.
11431
11432        * WebView.subproj/IFHTMLView.mm:
11433        (-[IFHTMLView provisionalDataSourceCommitted:]): Move the logic for setting up the
11434	renderPart in here from IFWebView.
11435        (-[IFHTMLView reapplyStyles]): Use the bridge.
11436        (-[IFHTMLView layout]): Use the bridge.
11437        (-[IFHTMLView drawRect:]): Use the bridge.
11438
11439        * WebView.subproj/IFHTMLViewPrivate.h: Remove _takeOwnershipOfWidget which is no longer needed.
11440        * WebView.subproj/IFHTMLViewPrivate.mm:
11441        (-[NSView _IF_stopIfPluginView]): Added. Use to clean up _reset a bit.
11442        (-[IFHTMLView _reset]): Use makeObjectsPerformSelector: for simplicity.
11443
11444        * WebView.subproj/IFImageView.h: Remove unneeded IFWebDataSource declaration.
11445        * WebView.subproj/IFImageView.m: Just formatting tweaks.
11446
11447        * WebView.subproj/IFWebControllerPrivate.mm: Removed unneeded import.
11448        * WebView.subproj/IFWebDataSource.mm: Removed unneeded import.
11449        * WebView.subproj/IFWebDataSourcePrivate.mm: Removed unneeded import.
11450        * WebView.subproj/IFWebFrame.mm: Removed unneeded import.
11451
11452        * WebView.subproj/IFWebFramePrivate.h: Remove renderPart field and related declarations.
11453        * WebView.subproj/IFWebFramePrivate.mm:
11454        (-[IFWebFramePrivate dealloc]): No need to let go of renderPart any more.
11455        (-[IFWebFrame _transitionProvisionalToCommitted]): Move logic into IFHTMLView.
11456
11457        * WebView.subproj/IFWebView.h: Be a bit more specific about the type of documentView.
11458
114592002-07-12  Chris Blumenberg  <cblu@apple.com>
11460
11461	Only accept drags of 1 file.
11462
11463        * WebView.subproj/IFWebView.mm:
11464        (-[IFWebView draggingEntered:]):
11465
114662002-07-12  Darin Adler  <darin@apple.com>
11467
11468	Fix cancelling. My recent check-in broke it for downloads.
11469
11470        * WebCoreSupport.subproj/IFResourceURLHandleClient.m:
11471        (-[IFResourceURLHandleClient receivedError:forHandle:]): Helper function to save code.
11472        (-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]): Use an error for
11473	cancel rather than -1,-1 progress.
11474
11475        * WebView.subproj/IFMainURLHandleClient.mm:
11476        (-[IFMainURLHandleClient receivedProgressWithHandle:complete:]): Remove -1,-1 handling
11477	here; instead we treat it as an error.
11478        (-[IFMainURLHandleClient receivedError:forHandle:]): Remove most of the parameters
11479	since they are things we can compute ourselves.
11480        (-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): Use an error for
11481	cancel rather than -1,-1 progress.
11482
11483        * WebView.subproj/IFWebControllerPrivate.mm:
11484        (-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
11485	Remove the -1,-1 cancel handling; we use an error instead.
11486        (-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
11487	Remove the -1,-1 cancel handling; we use an error instead.
11488        (-[IFWebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
11489	Remove the _isStopping check. We want to do the additional work even if already stopping.
11490        (-[IFWebController _mainReceivedError:forResourceHandle:partialProgress:fromDataSource:]):
11491	Remove the _isStopping check. We want to do the additional work even if already stopping.
11492
11493        * WebView.subproj/IFWebView.mm: (-[IFWebView keyDown:]): Use NSDeleteCharacter.
11494
114952002-07-12  Darin Adler  <darin@apple.com>
11496
11497        * WebView.subproj/IFWebDataSource.mm:
11498        (+[IFWebDataSource registerRepresentationClass:forMIMEType:]):
11499	Use self instead of [self class].
11500        (+[IFWebDataSource createRepresentationForMIMEType:]):
11501	Use the new _IF_objectForMIMEType to simplify and use hash table
11502	instead of linear search.
11503        * WebView.subproj/IFWebDataSourcePrivate.mm:
11504        (+[IFWebDataSource _repTypes]): Use initWithObjectsAndKeys for
11505	brevity and a tiny tiny bit of efficiency.
11506        (+[IFWebDataSource _canShowMIMEType:]):
11507	Use the new _IF_objectForMIMEType to simplify and use hash table
11508	instead of linear search.
11509        * WebView.subproj/IFWebView.mm:
11510        (+[IFWebView registerViewClass:forMIMEType:]):
11511	Use self instead of [self class].
11512        (+[IFWebView createViewForMIMEType:]):
11513	Use the new _IF_objectForMIMEType to simplify and use hash table
11514	instead of linear search.
11515        * WebView.subproj/IFWebViewPrivate.mm:
11516        (+[IFWebView _canShowMIMEType:]):
11517	Use the new _IF_objectForMIMEType to simplify and use hash table
11518	instead of linear search.
11519
115202002-07-12  Darin Adler  <darin@apple.com>
11521
11522        * WebKit.pbproj/project.pbxproj: Re-added JavaScriptCore, which
11523	I removed by accident.
11524
115252002-07-12  Darin Adler  <darin@apple.com>
11526
11527        * WebKit.pbproj/project.pbxproj: Don't include the html4.css file
11528	from WebCore any more. WebCore handles this on its own now. Also,
11529	don't include the document templates; we don't use them any more.
11530
11531        * Resources/image_document_template.html: Removed.
11532        * Resources/plugin_document_template.html: Removed.
11533        * Resources/text_document_template.html: Removed.
11534
11535        * Makefile.am: Small tweak to the force-clean-timestamp logic.
11536
115372002-07-11  Chris Blumenberg  <cblu@apple.com>
11538
11539Fix for:
11540        2986548 - Crash if you drop URL of frameset page onto frame
11541        2953421 - document dragged into frame should replace frameset
11542        
11543        * WebView.subproj/IFWebView.mm: 
11544        (-[IFWebView draggingEntered:]): removed obsolute comment
11545        (-[IFWebView performDragOperation:]): moved implementation from here
11546        (-[IFWebView concludeDragOperation:]): to here, added support for NSURL drags 
11547
115482002-07-11  Darin Adler  <darin@apple.com>
11549
11550        * WebView.subproj/IFWebViewPrivate.mm:
11551        (+[IFWebView _viewTypes]): Changed back to a mutable dictionary. Oops.
11552
115532002-07-11  John Sullivan   <sullivan@apple.com>
11554
11555	- fixed 2980779 -- no scroll bar in history window
11556
11557        * WebKit.pbproj/project.pbxproj: Removed nonexistent .h file from project list (IFGrabBag.h)
11558
11559        * WebView.subproj/IFDynamicScrollBarsView.h: Renamed field allowsScrolling to disallowsScrolling
11560        * WebView.subproj/IFDynamicScrollBarsView.m:
11561        (-[IFDynamicScrollBarsView updateScrollers]):
11562        (-[IFDynamicScrollBarsView setAllowsScrolling:]):
11563        (-[IFDynamicScrollBarsView allowsScrolling]):
11564	Removed initWithFrame override, whose only purpose was to set allowsScrolling to the "default"	
11565	value (but not good enough for load-from-nib case). Changed all users of allowsScrolling to
11566	!disallowsScrolling instead.
11567
115682002-07-11  Chris Blumenberg  <cblu@apple.com>
11569
11570        * Plugins.subproj/IFPluginNullEventSender.h:
11571        * Plugins.subproj/IFPluginNullEventSender.m:
11572        (-[IFPluginNullEventSender initWithPluginView:]): renamed, simplified
11573        (-[IFPluginNullEventSender stop]): call plugin debug function
11574        * Plugins.subproj/IFPluginView.h:
11575        * Plugins.subproj/IFPluginView.mm:
11576        (-[IFPluginView start]): call new initWithPluginView
11577        (-[IFPluginView windowWillClose:]): added back to fix plugin view leak
11578        (-[IFPluginView NPP_HandleEvent]): added
11579
115802002-07-11  Darin Adler  <darin@apple.com>
11581
11582	- fixed 2930872 -- option-arrow keys should page up and down
11583	- fixed 2924727 -- Delete does not go to previous page
11584
11585        * WebView.subproj/IFHTMLView.mm: Disable the keyDown and keyUp
11586	methods here. We don't really need to pass these events to KHTMLView
11587	at the moment. See the comment in this file for further explanation.
11588	This paves the way to handle keys other than arrow keys in IFWebView.
11589
11590        * WebView.subproj/IFWebController.h: Add temporary goBack method to
11591	IFWindowContext. See comment for more.
11592
11593        * WebView.subproj/IFWebView.mm: (-[IFWebView keyDown:]): Add handling
11594	for option arrow keys, space (page down), shift-space (page up), and
11595	delete (go back). Also make this call super if the key is not handled
11596	so keys make their way back to the superview in the application.
11597
11598        * WebView.subproj/IFWebViewPrivate.h: Add _pageLeft, _pageRight, _goBack.
11599        * WebView.subproj/IFWebViewPrivate.mm:
11600        (-[IFWebView _pageHorizontally:]): Added.
11601        (-[IFWebView _pageLeft]): Added.
11602        (-[IFWebView _pageRight]): Added.
11603        (+[IFWebView _viewTypes]): Simplify.
11604        (-[IFWebView _goBack]): Added. Calls [IFWindowContext goBack].
11605
116062002-07-10  Darin Adler  <darin@apple.com>
11607
11608	- fixed 2973738 -- box characters
11609
11610	To be consistent with other browsers, we need to draw nothing for 0000-001F.
11611	We were drawing boxes.
11612
11613        * WebCoreSupport.subproj/IFTextRenderer.m:
11614        (-[IFTextRenderer convertCharacters:length:toGlyphs:skipControlCharacters:]):
11615	Add the skipControlCharacters parameter. If YES, don't include glyphs for characters
11616	in the 0000-001F range.
11617        (-[IFTextRenderer slowPackGlyphsForCharacters:numCharacters:glyphBuffer:numGlyphs:]):
11618	Pass skipControlCharacters:YES.
11619        (-[IFTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]):
11620	Skip control characters when creating the glyph array.
11621        (-[IFTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]):
11622	Pass skipControlCharacters:YES.
11623        (-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
11624	Skip control characters when computing the width.
11625        (-[IFTextRenderer extendCharacterToGlyphMapToInclude:]): Pass skipControlCharacters:NO.
11626
116272002-07-10  Darin Adler  <darin@apple.com>
11628
11629	- fixed 2986273 -- assert currentURL isEqual:[handle redirectedURL] ? [handle redirectedURL] : [handle url]
11630
11631	Since cancel prevents further notification from getting through, currentURL can get
11632	out of sync before cancelling, so we can't assert in the cancel function.
11633
11634        * WebCoreSupport.subproj/IFResourceURLHandleClient.m:
11635        (-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]): Remove assert.
11636
11637        * WebView.subproj/IFMainURLHandleClient.h: Remove unnecessary includes. Change type
11638	of dataSource to IFWebDataSource from id. Change url to currentURL to match
11639	IFResourceURLHandleClient.
11640
11641        * WebView.subproj/IFMainURLHandleClient.mm:
11642        (-[IFMainURLHandleClient initWithDataSource:]): Simplify.
11643        (-[IFMainURLHandleClient didStartLoadingWithURL:]): Copied here from IFResourceURLHandleClient
11644	as a first step toward using a common superclass some day.
11645        (-[IFMainURLHandleClient didStopLoading]): Copied here from IFResourceURLHandleClient
11646	as a first step toward using a common superclass some day.
11647        (-[IFMainURLHandleClient dealloc]): Add an assert.
11648        (-[IFMainURLHandleClient receivedProgressWithHandle:complete:]): Removed most of the parameters
11649	to make this match the one in IFResourceURLHandleClient.
11650        (-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]): Use didStartLoadingWithURL.
11651        (-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): Use receivedProgressWithHandle and
11652	didStopLoading.
11653        (-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]): Use receivedProgressWithHandle and
11654	didStopLoading.
11655        (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): Use receivedProgressWithHandle.
11656        (-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]): Use receivedProgressWithHandle and
11657	didStopLoading.
11658        (-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]): Use didStopLoading and didStartLoadingWithURL.
11659
116602002-07-10  Maciej Stachowiak  <mjs@apple.com>
11661
11662        WebKit part of fix for:
11663
11664	Radar 2953250 - JavaScript window.focus() and window.blur()
11665	methods don't work
11666	
11667	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
11668        (-[IFWebCoreBridge unfocusWindow]): Use private AppKit interface
11669	to cycle windows if the window is the key window.
11670
116712002-07-10  Darin Adler  <darin@apple.com>
11672
11673	- fixed 2983025 -- crash in sendEvent on pages with flash playing
11674
11675        * Plugins.subproj/IFPluginView.mm:
11676        (-[IFPluginView removeTrackingRect]): New, removes tracking rect and releases window.
11677        (-[IFPluginView resetTrackingRect]): New, adds tracking rect and retains window.
11678        (-[IFPluginView start]): Use resetTrackingRect.
11679        (-[IFPluginView stop]): Use removeTrackingRect.
11680        (-[IFPluginView viewWillMoveToWindow:]): Call removeTrackingRect because the window
11681	will change by the time we get to viewDidMoveToWindow.
11682        (-[IFPluginView viewDidMoveToWindow]): Call resetTrackingRect.
11683        (-[IFPluginView viewHasMoved:]): Call resetTrackingRect.
11684
116852002-07-10  Darin Adler  <darin@apple.com>
11686
11687        * WebView.subproj/IFWebViewPrivate.mm:
11688        (-[IFWebView _scrollToBottomLeft]): Fix this to use the document view to define what
11689	the bottom left is, not the content view (which is often much smaller than the document).
11690
116912002-07-10  Chris Blumenberg  <cblu@apple.com>
11692
11693	Fixes for:
11694	2981866 - Download doesn't appear in Downloads window if link was command-clicked
11695	2965312 - Download progress not shown when clicking on download link with Alex not running
11696
11697        * WebView.subproj/IFMainURLHandleClient.mm:
11698        (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): retain
11699	the downloadProgressHandler before calling requestContentPolicy as the web controller may be released
11700	in requestContentPolicy
11701
117022002-07-10  Chris Blumenberg  <cblu@apple.com>
11703
11704        Fix for:
11705        2976311 - Download fails if you close the window that started the download
11706        2976308 - Can't navigate in window while download started in that window is in progress
11707
11708        * WebView.subproj/IFMainURLHandleClient.h:
11709        * WebView.subproj/IFMainURLHandleClient.mm:
11710        (-[IFMainURLHandleClient dealloc]):
11711        (-[IFMainURLHandleClient _receivedProgress:forResourceHandle:fromDataSource:complete:]): added, sends progress to correct handler
11712        (-[IFMainURLHandleClient _receivedError:forResourceHandle:partialProgress:fromDataSource:]): added, sends progress to correct handler
11713        (-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): calls _receivedProgress
11714        (-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]): calls _receivedProgress
11715        (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): calls _receivedProgress
11716        (-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]): calls _receivedError
11717        * WebView.subproj/IFWebController.h:
11718        * WebView.subproj/IFWebController.mm:
11719        (-[IFWebController setDownloadProgressHandler:]): added
11720        (-[IFWebController downloadProgressHandler]): added
11721        * WebView.subproj/IFWebControllerPrivate.h:
11722        * WebView.subproj/IFWebControllerPrivate.mm:
11723        (-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]): removed download special-casing
11724
117252002-07-10  Maciej Stachowiak  <mjs@apple.com>
11726
11727        * WebView.subproj/IFGrabBag.h: Removed.
11728        * WebView.subproj/IFWebController.h: Move IFContextMenuHandler
11729	here.
11730
117312002-07-10  Darin Adler  <darin@apple.com>
11732
11733	Did some tweaks that weren't really necessary. But at least one is a significant
11734	improvement so I decided to commit rather then just discarding the changes.
11735
11736        * Bookmarks.subproj/IFBookmark.m:
11737        (-[IFBookmark title]): Take out special case for separator.
11738        (-[IFBookmark setTitle:]): Take out special case for separator.
11739        (-[IFBookmark image]): Take out special case for separator.
11740        (-[IFBookmark setImage:]): Take out special case for separator.
11741        (-[IFBookmark setURLString:]): Take out special case for non-leaf.
11742        (-[IFBookmark children]): Take out request for concrete implementation;
11743	this is not useful since it's specific to one subclass.
11744        (-[IFBookmark numberOfChildren]): Take out request for concrete implementation;
11745	this is not useful since it's specific to one subclass.
11746        (-[IFBookmark _numberOfDescendants]): Take out request for concrete implementation;
11747	this is not useful since it's specific to one subclass.
11748        (-[IFBookmark insertChild:atIndex:]): Take out special case for non-list.
11749        (-[IFBookmark removeChild:]): Take out special case for non-list.
11750        (+[IFBookmark bookmarkFromDictionaryRepresentation:withGroup:]): Refactored to
11751	eliminate repeated code.
11752
11753        * Bookmarks.subproj/IFBookmarkLeaf.m:
11754        (-[IFBookmarkLeaf copyWithZone:]): Use allocWithZone to be more pedantically correct.
11755
11756        * Bookmarks.subproj/IFBookmarkSeparator.m:
11757        (-[IFBookmarkSeparator title]): Override to return nil.
11758        (-[IFBookmarkSeparator image]): Override to return nil.
11759
117602002-07-10  Darin Adler  <darin@apple.com>
11761
11762        * Misc.subproj/WebKitDebug.m: Remove workaround for long-ago fixed
11763	C compiler bug.
11764
11765        * Plugins.subproj/IFPluginView.mm:
11766        (-[IFPluginView keyUp:]), (-[IFPluginView keyDown:]): Simplify keyboard
11767	scrolling code by passing along all events that the plug-in doesn't handle
11768	rather than special-casing certain events. Also use super rather than
11769	nextResponder to pass along the scroll events (super will do nextResponder).
11770
11771        * WebView.subproj/IFHTMLView.mm:
11772        (-[IFHTMLView keyDown:]), (-[IFHTMLView keyUp:]): Use super rather than
11773	nextResponder to pass along scroll events (super will do nextResponder).
11774
117752002-07-08  Chris Blumenberg  <cblu@apple.com>
11776
11777        Fixes for:
11778        2955757 - Keyboard scrolling code needs to move to WebKit
11779        2937231 - Left and right arrows should scroll the content area
11780
11781        * Misc.subproj/IFNSEventExtras.h: Added.
11782        * Misc.subproj/IFNSEventExtras.m: Added.
11783        (-[NSEvent _IF_isScrollEvent]): new
11784        * Plugins.subproj/IFPluginView.mm:
11785        (-[IFPluginView keyUp:]): if plug-in doesn't accept it, send to nextResponder
11786        (-[IFPluginView keyDown:]): if plug-in doesn't accept it, send to nextResponder
11787        * WebKit.pbproj/project.pbxproj:
11788        * WebView.subproj/IFHTMLView.mm:
11789        (-[IFHTMLView keyDown:]): calls _IF_isScrollEvent, if so send to nextResponder
11790        (-[IFHTMLView keyUp:]): calls _IF_isScrollEvent, if so send to nextResponder
11791        * WebView.subproj/IFWebView.mm:
11792        (-[IFWebView acceptsFirstResponder]): added
11793        (-[IFWebView window]): no changes
11794        (-[IFWebView keyDown:]): added, does the scroll
11795        * WebView.subproj/IFWebViewPrivate.h:
11796        * WebView.subproj/IFWebViewPrivate.mm:
11797        (-[IFWebView _contentView]): added
11798        (-[IFWebView _scrollVerticallyBy:]): added, moved from BrowserWindow.m
11799        (-[IFWebView _scrollHorizontallyBy:]): added, moved from BrowserWindow.m
11800        (-[IFWebView _pageVertically:]): added, moved from BrowserWindow.m
11801        (-[IFWebView _scrollLineVertically:]): added, moved from BrowserWindow.m
11802        (-[IFWebView _scrollLineHorizontally:]): added, moved from BrowserWindow.m
11803        (-[IFWebView _pageDown]): added, moved from BrowserWindow.m
11804        (-[IFWebView _pageUp]): added, moved from BrowserWindow.m
11805        (-[IFWebView _scrollToTopLeft]): added, moved from BrowserWindow.m
11806        (-[IFWebView _scrollToBottomLeft]): added, moved from BrowserWindow.m
11807        (-[IFWebView _lineDown]): added, moved from BrowserWindow.m
11808        (-[IFWebView _lineUp]): added, moved from BrowserWindow.m
11809        (-[IFWebView _lineLeft]): added, moved from BrowserWindow.m
11810        (-[IFWebView _lineRight]): added, moved from BrowserWindow.m
11811
118122002-07-08  Darin Adler  <darin@apple.com>
11813
11814        * WebCoreSupport.subproj/IFWebCoreBridge.mm: Fix compiles under newer compiler
11815	(Jaguar 6C89 and newer) by adding missing include.
11816
118172002-07-07  Maciej Stachowiak  <mjs@apple.com>
11818
11819        WebCore part of fix for Radar 2953431 - JavaScript window.close()
11820	method is not working
11821
11822	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
11823        (-[IFWebCoreBridge openedByScript]): Implement by calling controller.
11824        (-[IFWebCoreBridge setOpenedByScript:]): Likewise.
11825        * WebView.subproj/IFWebControllerPrivate.h:
11826        * WebView.subproj/IFWebControllerPrivate.mm:
11827        (-[IFWebController _openedByScript]): Implement.
11828        (-[IFWebController _setOpenedByScript:]): Implement.
11829
118302002-07-05  Darin Adler  <darin@apple.com>
11831
11832	Fix crashes I saw with zombies enabled caused by messing with windows that are
11833	in the process of being destroyed.
11834
11835        * Plugins.subproj/IFPluginView.mm:
11836        (-[IFPluginView start]): Remove windowWillClose notification because
11837	we use viewDidMoveToWindow instead.
11838        (-[IFPluginView viewDidMoveToWindow]): Use this instead of viewWillMoveToWindow.
11839        * WebView.subproj/IFHTMLView.mm:
11840        (-[IFHTMLView viewDidMoveToWindow]): Use this instead of viewWillMoveToWindow.
11841        * WebView.subproj/IFHTMLViewPrivate.h: Need a boolean flag to tell window changes
11842	before the first time we are installed from window changes afterward.
11843        * WebView.subproj/IFImageView.m:
11844        (-[IFImageView viewDidMoveToWindow]): Use this instead of viewWillMoveToWindow.
11845
118462002-07-04  Maciej Stachowiak  <mjs@apple.com>
11847
11848        * WebView.subproj/IFHTMLView.mm:
11849        (-[IFHTMLView mouseMovedNotification:]): Pass the modifier flags
11850	along for mouse move events.
11851
118522002-07-04  John Sullivan  <sullivan@apple.com>
11853
11854        * WebView.subproj/IFDynamicScrollBarsView.h:
11855	Updated FIXME to mention bug number.
11856
118572002-07-03  Chris Blumenberg  <cblu@apple.com>
11858
11859	- Fix for 2975750
11860	- Removed Java workaround since that will be fixed soon.
11861
11862        * Plugins.subproj/IFPlugin.h:
11863        * Plugins.subproj/IFPlugin.m:
11864        (-[IFPlugin _openResourceFile]): added
11865        (-[IFPlugin _closeResourceFile:]): added
11866        (-[IFPlugin _getPluginInfo]): rename
11867        (-[IFPlugin initWithPath:]): simplified
11868        (-[IFPlugin load]): calls _openResourceFile
11869        (-[IFPlugin unload]): calls _closeResourceFile
11870        * Plugins.subproj/IFPluginView.mm:
11871        (-[IFPluginView setUpWindowAndPort]): removed Java workaround
11872
118732002-07-03  Darin Adler  <darin@apple.com>
11874
11875        * Misc.subproj/IFException.h: Use Objective C header style rather than plain C.
11876
11877=== Alexander-11 ===
11878
118792002-07-03  Darin Adler  <darin@apple.com>
11880
11881        * Misc.subproj/IFDownloadHandler.mm:
11882        (-[IFDownloadHandler finishedLoading]):
11883        * WebView.subproj/IFWebController.h:
11884	A couple places where it still said IFContentPolicyOpenExternally.
11885
118862002-07-03  Maciej Stachowiak  <mjs@apple.com>
11887
11888        WebKit part of fixes for:
11889
11890	Radar 2950616 - JavaScript window.screenX and window.screenY always return -1
11891	Radar 2950614 - JavaScript window.screenLeft and window.screenTop
11892	properties are unimplemented
11893	Radar 2950609 - JavaScript window.outerHeight and
11894	window.outerWidth properties always return 0
11895	
11896	* WebView.subproj/IFHTMLView.mm:
11897        (-[IFHTMLView provisionalDataSourceChanged:]): Pass the real
11898	document view to the newly created bridge, since it will be ready
11899	by now and is needed by JavaScript.
11900
119012002-07-03  Maciej Stachowiak  <mjs@apple.com>
11902
11903        * Plugins.subproj/IFPluginView.mm:
11904        (-[IFPluginView status:]): Fix build problem. Why doesn't
11905	compiling catch these more reliably?
11906
119072002-07-03  Richard Williamson  <rjw@apple.com>
11908
11909        * Misc.subproj/IFNSViewExtras.m:
11910        (-[NSView _IF_printViewHierarchy:]):
11911        Debugging help.
11912        
11913        * WebView.subproj/IFHTMLView.mm:
11914        (-[IFHTMLView layout]):
11915        Added setLayouted(false).
11916        
11917        * WebView.subproj/IFWebFramePrivate.mm:
11918        (-[IFWebFrame _isLoadComplete]):
11919        Tweaks attempting to fix frame drawing problems.
11920
119212002-07-03  Maciej Stachowiak  <mjs@apple.com>
11922
11923        WebCore part of fix for:
11924
11925	Radar 2943465 - JavaScript window.defaultStatus property not implemented
11926	Radar 2943464 - JavaScript window.status property is not implemented
11927	Radar 2926213 - show url of moused-over link in status bar
11928
11929	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
11930	(-[IFWebCoreBridge setStatusText:]): Connect bridge status text
11931	setting to window context.
11932        * WebView.subproj/IFWebController.h:
11933
119342002-07-02  Chris Blumenberg  <cblu@apple.com>
11935
11936	Added IFFileURLPolicyReveal. This makes things a little clearer for the client.
11937
11938        * WebView.subproj/IFWebControllerPolicyHandler.h:
11939        * WebView.subproj/IFWebFramePrivate.mm:
11940        (-[IFWebFrame _shouldShowDataSource:]): support for IFFileURLPolicyReveal.
11941
119422002-07-02  Darin Adler  <darin@apple.com>
11943
11944        * WebCoreSupport.subproj/IFImageRenderer.m:
11945        (-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
11946	Fixed a syntax error caused by a "just before committing" edit.
11947
119482002-07-02  Darin Adler  <darin@apple.com>
11949
11950	- fixed 2952837 -- image not rendered if height or width attributes specified incorrectly
11951
11952        * WebCoreSupport.subproj/IFImageRenderer.m:
11953        (-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
11954	Set the size of both the image and the image representation.
11955
119562002-07-02  Chris Blumenberg  <cblu@apple.com>
11957
11958	Can't call startLoading on a frame if setProvisionalDataSource returned NO.
11959
11960        * Plugins.subproj/IFPluginView.mm:
11961        (-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
11962        * WebCoreSupport.subproj/IFWebCoreFrame.m:
11963        (-[IFWebCoreFrame loadURL:attributes:flags:withParent:]):
11964        * WebView.subproj/IFWebView.mm:
11965        (-[IFWebView performDragOperation:]):
11966
119672002-07-02  Chris Blumenberg  <cblu@apple.com>
11968
11969	Fixed asseration failure caused by an iframe not having a correct mime type.
11970	We now assume that local files without extensions are html files. 
11971
11972        * WebView.subproj/IFWebControllerPrivate.mm:
11973        (+[IFWebController _MIMETypeForFile:]):
11974
119752002-07-02  Chris Blumenberg  <cblu@apple.com>
11976
11977        - Moved all policy methods to IFWebControllerPolicyHandler.h
11978        - Moved all file URL error checking to WebKit
11979        - Implemented file URL policy methods
11980        - Renamed IFContentPolicyOpenExternally to IFContentPolicySaveAndOpenExternally
11981
11982        * Misc.subproj/IFWebKitErrors.h: Added.
11983        * WebKit.pbproj/project.pbxproj:
11984        * WebView.subproj/IFLocationChangeHandler.h: removed content policy stuff
11985        * WebView.subproj/IFMainURLHandleClient.mm:
11986        (-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]): IFContentPolicySaveAndOpenExternally rename
11987        (-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): call the policy handler for content policy stuff
11988        * WebView.subproj/IFWebController.h:
11989        * WebView.subproj/IFWebController.mm:
11990        (-[IFWebController haveContentPolicy:andPath:forDataSource:]): sends a unableToImplementContentPolicy:
11991        (+[IFWebController canShowFile:]): now calls _MIMETypeForFile
11992        * WebView.subproj/IFWebControllerPolicyHandler.h: Added.
11993        * WebView.subproj/IFWebControllerPrivate.h:
11994        * WebView.subproj/IFWebControllerPrivate.mm:
11995        (-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]): IFContentPolicySaveAndOpenExternally 
11996rename
11997        (-[IFWebController _didStopLoading:]): no changes
11998        (+[IFWebController _MIMETypeForFile:]): added
11999        * WebView.subproj/IFWebDataSource.h:
12000        * WebView.subproj/IFWebFrame.mm:
12001        (-[IFWebFrame setProvisionalDataSource:]): calls _shouldShowDataSource
12002        * WebView.subproj/IFWebFramePrivate.h:
12003        * WebView.subproj/IFWebFramePrivate.mm:
12004        (-[IFWebFrame _bridgeFrame]): no changes
12005        (-[IFWebFrame _shouldShowDataSource:]): does the error handling
12006        * WebView.subproj/IFWebView.mm:
12007        (+[IFWebView initialize]): registers WebKit errors
12008
120092002-07-02  Richard Williamson  <rjw@apple.com>
12010
12011        * WebView.subproj/IFRenderNode.mm:
12012        (-[IFRenderNode initWithRenderObject:khtml::]):
12013        Fixed regression that prevented showing of nodes in subframes.
12014
120152002-07-02  Darin Adler  <darin@apple.com>
12016
12017        * Plugins.subproj/IFPluginView.mm:
12018        (-[IFPluginView setWindow]), (-[IFPluginView start]), (-[IFPluginView stop]):
12019	Fix unused variable issue that affects deployment builds.
12020
120212002-07-02  John Sullivan  <sullivan@apple.com>
12022
12023	Remove unnecessary code to fill with white from here; this code
12024	path has changed. Now it just bails out early in the case where
12025	there's no widget.
12026
12027        * WebView.subproj/IFHTMLView.mm:
12028        (-[IFHTMLView drawRect:]):
12029
120302002-07-02  John Sullivan  <sullivan@apple.com>
12031
12032	Made IFWebView fill with white when there's no document view. This fixes:
12033	
12034	- 2978210 -- problems with "hide status bar"
12035	- 2978742 -- Resizing initially-empty Alexander window results in garbage in window
12036
12037        * WebView.subproj/IFWebView.mm:
12038        (-[IFWebView drawRect:]):
12039
120402002-07-02  Darin Adler  <darin@apple.com>
12041
12042        * WebView.subproj/IFMainURLHandleClient.mm: Fix comment.
12043
120442002-07-02  Darin Adler  <darin@apple.com>
12045
12046	- fixed 2975790 - Ads on salon.com scribble all over page
12047
12048        * Plugins.subproj/IFPluginView.mm:
12049        (-[IFPluginView setUpWindowAndPort]): New, sets up the window, but does not
12050	call NPP_SetWindow again.
12051        (-[IFPluginView setWindow]): Call [setUpWindowAndPort] then call NPP_SetWindow.
12052        (-[IFPluginView start]): Register for changes to the bounds or frame of any of
12053	our superviews, not just one particular one. Also, don't bother to register for
12054	notification when the window resizes. Finally, use the constants for the names
12055	of the notifications, not literal strings.
12056        (-[IFPluginView layout]): Just use [setUpWindowAndPort]; no need for a new call
12057	to NPP_SetWindow.
12058        (-[IFPluginView viewHasMoved:]): Just use [setUpWindowAndPort]; no need for a new
12059	call to NPP_SetWindow.
12060
120612002-07-01  Maciej Stachowiak  <mjs@apple.com>
12062
12063        * WebView.subproj/IFWebView.mm:
12064        (-[IFWebView window]): If the view hasn't been added to a window
12065	yet, get the window from the WindowContext.
12066
120672002-07-01  Richard Williamson  <rjw@apple.com>
12068
12069        * WebView.subproj/IFMainURLHandleClient.mm:
12070        (-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
12071        Ensure that _didStopLoading is called for both error case and
12072        non-error case.
12073
120742002-07-01  Richard Williamson  <rjw@apple.com>
12075
12076        * WebView.subproj/IFMainURLHandleClient.mm:
12077        (-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
12078        A completion message was being sent, as well as an error message.
12079        This, no doubt confused Alexander.  No only send either the final
12080        error message or the completion message.
12081
120822002-07-01  Darin Adler  <darin@apple.com>
12083
12084	Ken fixed the load message sequencing problem in WebFoundation, so now we can
12085	go back to the original versions of the asserts.
12086
12087        * WebCoreSupport.subproj/IFResourceURLHandleClient.m:
12088        (-[IFResourceURLHandleClient dealloc]):
12089        (-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]):
12090        (-[IFResourceURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
12091        * WebView.subproj/IFMainURLHandleClient.mm:
12092        (-[IFMainURLHandleClient dealloc]):
12093        (-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
12094	Roll out the stuff that's ifdef'd and marked with bug 2954901.
12095
120962002-07-01  Darin Adler  <darin@apple.com>
12097
12098        * WebView.subproj/IFDynamicScrollBarsView.m:
12099        (-[IFDynamicScrollBarsView updateScrollers]): After a closer reading of
12100	the NSScrollView source code, I see that we don't need to explicitly do
12101	tile or setNeedsDisplay: because the setters take care of that, so I made
12102	this simpler.
12103        (-[IFDynamicScrollBarsView reflectScrolledClipView:]): Replace the anti-
12104	recursion hack that I erroneously removed earlier.
12105
12106        * WebView.subproj/IFTextView.h: Removed the isRTF flag.
12107        * WebView.subproj/IFTextView.m:
12108        (-[IFTextView provisionalDataSourceChanged:]): Do nothing here.
12109        (-[IFTextView dataSourceUpdated:]): Check the MIME type here.
12110
121112002-07-01  Richard Williamson  <rjw@apple.com>
12112
12113        Fixed 2976913.
12114         
12115        * WebView.subproj/IFHTMLView.mm:
12116        (-[IFHTMLView layout]):
12117        Augmented debugging info.
12118        (-[IFHTMLView setNeedsDisplay:]):
12119        Augmented debugging info.
12120        (-[IFHTMLView setNeedsLayout:]):
12121        Removed overload of this method to also set display flag.
12122        Why was this added?
12123        (-[IFHTMLView setNeedsToApplyStyles:]):
12124        Augmented debugging info.
12125        (-[IFHTMLView drawRect:]):
12126        Augmented debugging info.
12127        * WebView.subproj/IFWebFramePrivate.mm:
12128        (-[IFWebFrame _timedLayout:]):
12129        If the view size is zero (width or height) force
12130        a layout now, rather than depending on the lazy
12131        layout that will happen in display.  If the view
12132        size is 0,0 the AppKit will optimize out the display.
12133
121342002-07-01  Chris Blumenberg  <cblu@apple.com>
12135
12136	Minor cleanup
12137	
12138        * Plugins.subproj/IFNullPluginView.mm:
12139        (-[IFNullPluginView initWithFrame:mimeType:arguments:]):
12140        (-[IFNullPluginView dealloc]):
12141
121422002-07-01  Darin Adler  <darin@apple.com>
12143
12144        * Plugins.subproj/IFPlugin.m:
12145        (-[IFPlugin _getPluginInfoForResourceFile:]): Fix off-by one error
12146	that would cause a memory trasher if we had a 255-character string.
12147
12148        * WebView.subproj/IFHTMLView.mm:
12149        * WebView.subproj/IFRenderNode.mm:
12150	Touch these files so we don't have to do a full build of WebKit
12151	for my WebCore changes.
12152
121532002-07-01  Maciej Stachowiak  <mjs@apple.com>
12154
12155        Build fixes (don't know why a plain build didn't catch these):
12156
12157	* Plugins.subproj/IFPluginView.mm: openNewWindowWithURL: is not a
12158	method of the controller any more, nor are the status-related calls.
12159        * WebView.subproj/IFWebController.h: Un-ifdef the status calls.
12160
121612002-07-01  Maciej Stachowiak  <mjs@apple.com>
12162
12163        Part of fix for Radar 2976618 - links targeting _blank hit
12164	assertion trying to set provisional data source
12165
12166	* WebView.subproj/IFWebFrame.mm:
12167        (-[IFWebFrame frameNamed:]): Show the window.
12168
121692002-07-01  Maciej Stachowiak  <mjs@apple.com>
12170
12171	Fix Radar 2953256 - Auth sheet appears detached when clicking
12172	directly on auth link with Alex not running
12173	
12174        * Panels.subproj/IFStandardPanels.m:
12175        (-[IFStandardPanels frontmostWindowLoadingURL:]): Don't consider
12176	windows that are not visible.
12177
121782002-06-29  Darin Adler  <darin@apple.com>
12179
12180        * WebCoreSupport.subproj/IFImageRenderer.m:
12181        (-[IFImageRenderer tileInRect:fromPoint:]): Fix calculation of oneTileRect.
12182	I think this is finally correct now.
12183
121842002-06-29  Maciej Stachowiak  <mjs@apple.com>
12185
12186        WebKit part of fix for:
12187
12188	Radar 2942074 - JavaScript size, positioning and feature
12189	parameters to window.open are ignored
12190
12191	Also, renamed IFScriptContextHandler protocol to IFWindowContext,
12192	and made it a settable handler like the others rather than
12193	something implemented by the controller, so it can be used w/o
12194	subclassing.
12195	
12196        * WebCoreSupport.subproj/IFWebCoreBridge.mm:
12197        (-[IFWebCoreBridge openNewWindowWithURL:]): Forward to the WindowContext.
12198        (-[IFWebCoreBridge areToolbarsVisisble]): Likewise.
12199        (-[IFWebCoreBridge setToolbarsVisible:]): Likewise.
12200        (-[IFWebCoreBridge areScrollbarsVisible]): Likewise.
12201        (-[IFWebCoreBridge setScrollbarsVisible:]): Likewise.
12202        (-[IFWebCoreBridge isStatusBarVisisble]): Likewise.
12203        (-[IFWebCoreBridge setStatusBarVisible:]): Likewise.
12204        (-[IFWebCoreBridge setWindowFrame:]): Likewise.
12205        (-[IFWebCoreBridge window]): Likewise.
12206        * WebView.subproj/IFWebController.h:
12207        * WebView.subproj/IFWebController.mm:
12208        (-[IFWebController setWindowContext:]): Setter for new WindowContext handler
12209        (-[IFWebController windowContext]): Likewise.
12210        * WebView.subproj/IFWebControllerPrivate.h:
12211        * WebView.subproj/IFWebControllerPrivate.mm:
12212        (-[IFWebControllerPrivate dealloc]): Release window context.
12213        * WebView.subproj/IFWebFrame.mm:
12214        (-[IFWebFrame frameNamed:]): Open new windows via WindowContext.
12215
122162002-06-28  Darin Adler  <darin@apple.com>
12217
12218        * WebCoreSupport.subproj/IFImageRenderer.h: Renamed statusOfCache to
12219	patternColorLoadStatus for clarity.
12220        * WebCoreSupport.subproj/IFImageRenderer.m:
12221        (-[IFImageRenderer copyWithZone:]): Add FIXME.
12222        (-[IFImageRenderer tileInRect:fromPoint:]): Add optimization for the
12223	case where a single draw of the image will cover the entire area to be
12224	tiled. Also add comments and make other small improvements.
12225
122262002-06-28  Richard Williamson  <rjw@apple.com>
12227
12228        Use float character measurement to determine selection
12229        region.  Necessary to ensure accuracy of selection
12230        region.  First step towards weaning khtml off int
12231        measurements.
12232
12233        * WebCoreSupport.subproj/IFImageRenderer.m:
12234        (-[IFImageRenderer tileInRect:fromPoint:]):
12235        Cleaned up use of loadStatus.
12236        * WebCoreSupport.subproj/IFTextRenderer.m:
12237        (-[IFTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]):
12238        (-[IFTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
12239        (-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
12240
122412002-06-28  Chris Blumenberg  <cblu@apple.com>
12242
12243        * WebView.subproj/IFMainURLHandleClient.h:
12244        * WebView.subproj/IFMainURLHandleClient.mm:
12245        (-[IFMainURLHandleClient downloadHandler]): added
12246        (-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): removed [downloadHandler cancel]
12247        * WebView.subproj/IFWebDataSource.mm:
12248        (-[IFWebDataSource stopLoading]): call [downloadHandler cancel] here so clean up is done immediately.
12249
122502002-06-27  Richard Williamson  <rjw@apple.com>
12251
12252        Fixed tiling of progressively loaded images.
12253        
12254        * WebCoreSupport.subproj/IFImageRenderer.h:
12255        * WebCoreSupport.subproj/IFImageRenderer.m:
12256        (-[IFImageRenderer initWithSize:]):
12257        (-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
12258        (-[IFImageRenderer loadStatus]):
12259        (-[IFImageRenderer tileInRect:fromPoint:]):
12260
122612002-06-27  Richard Williamson  <rjw@apple.com>
12262
12263        * WebCoreSupport.subproj/IFImageRenderer.h:
12264        * WebCoreSupport.subproj/IFImageRenderer.m:
12265        (-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
12266        (-[IFImageRenderer loadStatus]):
12267        (-[IFImageRenderer tileInRect:fromPoint:]):
12268
122692002-06-27  Richard Williamson  <rjw@apple.com>
12270
12271        * WebCoreSupport.subproj/IFTextRenderer.m:
12272        (-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
12273        Fixed uninitialized variable warning.  Compile being too aggressive,
12274        broke deployment build.
12275
122762002-06-27  Chris Blumenberg  <cblu@apple.com>
12277
12278	Fixed plug-in positioning.
12279
12280        * Plugins.subproj/IFPluginView.mm:
12281        (-[IFPluginView 
12282initWithFrame:plugin:url:baseURL:mime:arguments:]): added some logging.
12283        (-[IFPluginView setWindow]): Use the window's content view as the 
12284guide for the port's coordinates. Also added a workaround for Java.
12285
122862002-06-27  Darin Adler  <darin@apple.com>
12287
12288	Fixed DOM tree viewer.
12289
12290        * WebView.subproj/IFDOMNode.mm: (-[IFDOMNode initWithDOMNode:DOM::]):
12291	A typo got in here somehow, leading to an infinite loop.
12292
122932002-06-27  Darin Adler  <darin@apple.com>
12294
12295        - fixed 2973212 -- bad arg string != nil in _IF_URLWithString
12296
12297        * WebView.subproj/IFWebDataSourcePrivate.mm:
12298        (-[IFWebDataSource _startLoading:]): Get rid of essentially-dead code that
12299	computed but did not use a URL. Also order operations so that we first
12300	set the flag to say that we're loading, then tell the location change
12301	handler, and only then ask for the actual I/O to being.
12302
12303        * WebView.subproj/IFBaseLocationChangeHandler.h: Removed.
12304        * WebView.subproj/IFBaseLocationChangeHandler.m: Removed.
12305
12306=== Alexander-10 ===
12307
123082002-06-27  Richard Williamson  <rjw@apple.com>
12309
12310        Method name changes in preparation for fixing
12311        TextSlave::checkSelectionPoint().  Stubbed
12312        only, no support for new parameters yet.
12313        
12314        * Misc.subproj/IFStringTruncator.m:
12315        (+[IFStringTruncator centerTruncateString:toWidth:withFont:]):
12316        * WebCoreSupport.subproj/IFTextRenderer.h:
12317        * WebCoreSupport.subproj/IFTextRenderer.m:
12318        (-[IFTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]):
12319        (-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
12320        (-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
12321        (-[IFTextRenderer widthForCharacters:length:]):
12322        (-[IFTextRenderer widthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
12323
123242002-06-27  Richard Williamson  <rjw@apple.com>
12325
12326        Removed old methods and references.
12327        
12328        * WebCoreSupport.subproj/IFTextRenderer.m:
12329        (-[IFTextRenderer drawString:atPoint:withColor:]):
12330        (-[IFTextRenderer slowDrawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:attemptFontSubstitution:]):
12331        (-[IFTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]):
12332        Fixed final fragment rendering glitch.
12333
123342002-06-27  Darin Adler  <darin@apple.com>
12335
12336        * WebCoreSupport.subproj/IFWebCoreViewFactory.m:
12337        (-[IFWebCoreViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
12338	Pass baseURL as a separate parameter.
12339
12340        * WebView.subproj/IFBaseLocationChangeHandler.m: Fix a typo. I think this
12341	file might be unneeded, but I won't delete it until I hear from Chris.
12342
123432002-06-27  Richard Williamson  <rjw@apple.com>
12344        
12345        Fix selection in 'slow' code path (non-base characters and font substitution).
12346        
12347        * WebCoreSupport.subproj/IFTextRenderer.m:
12348        (-[IFTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withTextColor:backgroundColor:]):
12349        (-[IFTextRenderer slowDrawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:attemptFontSubstitution:]):
12350
123512002-06-27  Richard Williamson  <rjw@apple.com>
12352
12353        Implemented auto scrolling.
12354        
12355        * WebView.subproj/IFHTMLView.mm:
12356        (-[IFHTMLView mouseDragged:]):
12357
123582002-06-27  Richard Williamson  <rjw@apple.com>
12359
12360        Implement selectAll.
12361        
12362        * WebView.subproj/IFHTMLView.mm:
12363        (-[IFHTMLView selectAll:]):
12364
123652002-06-27  Maciej Stachowiak  <mjs@apple.com>
12366
12367	WebKit part of fixes for JavaScript cookie bugs:
12368	
12369	2943749 - JavaScript navigator.cookieEnabled property is always "true"
12370	2856039 - JavaScript document.cookies property is not implemented
12371	
12372	Thereby also fixing:
12373	
12374	2944378 - Trying to log into my Yahoo web mail account sent
12375	Alexander into a loop
12376	
12377        * WebCoreSupport.subproj/IFCookieAdapter.h: Added.
12378        * WebCoreSupport.subproj/IFCookieAdapter.m: Added.
12379        (+[IFCookieAdapter createSharedAdapter]): Set up an instance of
12380	IFCookieAdapter as the WebCoreCookieAdapter shared instance.
12381        (-[IFCookieAdapter cookiesEnabled]): Implement in terms of
12382	WebFoundation stuff.
12383        (-[IFCookieAdapter cookiesForURL:]): Likewise.
12384        (-[IFCookieAdapter setCookies:forURL:]): Likewise.
12385        * WebKit.pbproj/project.pbxproj: Add new files to build.
12386        * WebView.subproj/IFWebView.mm:        
12387	(-[IFWebView initWithFrame:]): Hook up the cookie adapter just
12388	like the various factory classes.
12389	
123902002-06-27  Chris Blumenberg  <cblu@apple.com>
12391
12392	Support for Java.
12393
12394        * Plugins.subproj/IFPluginView.mm:
12395        (-[IFPluginView initWithFrame:plugin:url:baseURL:mime:arguments:]): set DOCBASE argument
12396        * WebCoreSupport.subproj/IFWebCoreViewFactory.m:
12397        (-[IFWebCoreViewFactory viewForJavaAppletWithFrame:andArguments:]): renamed
12398
123992002-06-26  Richard Williamson  <rjw@apple.com>
12400
12401        Many improvements to selection.  More Cocoa like,
12402        normalized all text drawing code paths for selected 
12403        and unselected cases.  
12404        
12405        Still need to work on:
12406        1.  'slow' drawing cases, i.e. runs with non-base characters
12407            or runs requiring font substitution.
12408        2.  Select All menu item.
12409        3.  Auto scrolling.
12410        
12411        * WebCoreSupport.subproj/IFTextRenderer.m:
12412        (-[IFTextRenderer drawString:atPoint:withColor:]):
12413        (-[IFTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withTextColor:backgroundColor:]):
12414        (-[IFTextRenderer slowDrawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:attemptFontSubstitution:]):
12415        (-[IFTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]):
12416        (-[IFTextRenderer drawCharacters:length:atPoint:withTextColor:backgroundColor:]):
12417        (-[IFTextRenderer drawCharacters:length:atPoint:withTextColor:]):
12418        (-[IFTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]):
12419
124202002-06-26  Darin Adler  <darin@apple.com>
12421
12422	- fixed 2969280 -- if trailing / not specified for site, relative URLs are
12423	incorrectly expanded
12424
12425        * WebCoreSupport.subproj/IFWebCoreBridge.mm:
12426        (-[IFWebCoreBridge receivedData:withDataSource:]): Update the URL for the
12427	case where we've already been redirected before we receive any data.
12428
124292002-06-26  Darin Adler  <darin@apple.com>
12430
12431	- fixed 2971532 -- crash with null KHTMLView at gramicci.com
12432
12433        * WebView.subproj/IFHTMLView.mm:
12434        (-[IFHTMLView reapplyStyles]): Handle widget == 0 case.
12435        (-[IFHTMLView layout]): Handle widget == 0 case.
12436
12437	Fixed a crash I have seen many times where a data source tries
12438	to use its parent to locate the controller after its parent is
12439	deallocated.
12440
12441        * WebView.subproj/IFWebDataSourcePrivate.mm:
12442        (-[IFWebDataSourcePrivate dealloc]): Use _parentDataSourceWillBeDeallocated
12443	instead of _setController:nil.
12444
12445        * WebView.subproj/IFWebFramePrivate.h: Add _parentDataSourceWillBeDeallocated.
12446        * WebView.subproj/IFWebFramePrivate.mm:
12447        (-[IFWebFrame _parentDataSourceWillBeDeallocated]): Does both
12448	a _setController:nil, and a _setParent:nil on both data sources.
12449
124502002-06-26  John Sullivan  <sullivan@apple.com>
12451
12452	- fixed 2971024 -- wrong item is bookmarked
12453
12454	-[IFWebDataSource redirectedURL] was returning the URL of a
12455	sub-page resource.
12456
12457        * WebCoreSupport.subproj/IFResourceURLHandleClient.m:
12458        (-[IFResourceURLHandleClient IFURLHandle:didRedirectToURL:]):
12459	Removed evil call to _setFinalURL here. It had no right to live.
12460
124612002-06-26  Darin Adler  <darin@apple.com>
12462
12463        * WebCoreSupport.subproj/IFImageRendererFactory.m:
12464        (-[IFImageRendererFactory imageRenderer]): Fix NSBitmapImageRep leak.
12465
124662002-06-26  Chris Blumenberg  <cblu@apple.com>
12467
12468	- added "complete" to to progress methods to indicate last progress message
12469
12470        * Plugins.subproj/IFPluginView.mm:
12471        (-[IFPluginView setWindow]): added a draw test
12472        * WebView.subproj/IFWebController.h:
12473        * WebView.subproj/IFWebControllerPrivate.mm:
12474        (-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
12475        (-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
12476
124772002-06-26  Richard Williamson  <rjw@apple.com>
12478
12479        Fixed recursion problems.  +[NSFont findFontLike:forString:withRange:inLanguage:]
12480        will alternate between suggested fonts with bogus answers.  The work
12481        around involves adding an explicit flag indicating whether or not
12482        font substitution should be attempted.
12483        
12484        * Misc.subproj/IFStringTruncator.m:
12485        (+[IFStringTruncator centerTruncateString:toWidth:withFont:]):
12486        * WebCoreSupport.subproj/IFTextRenderer.h:
12487        * WebCoreSupport.subproj/IFTextRenderer.m:
12488        (-[IFTextRenderer slowDrawCharacters:length:atPoint:withColor:attemptFontSubstitution:]):
12489        (-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
12490        (-[IFTextRenderer floatWidthForCharacters:length:applyRounding:attemptFontSubstitution:]):
12491        (-[IFTextRenderer widthForCharacters:length:]):
12492
124932002-06-26  Darin Adler  <darin@apple.com>
12494
12495        * WebView.subproj/IFHTMLView.mm:
12496        (-[IFHTMLView validateUserInterfaceItem:]): Switch to this instead
12497        of validateMenuItem: so that a Copy toolbar button would work.
12498
124992002-06-25  Richard Williamson  <rjw@apple.com>
12500
12501        Disable the copy menu item when IFHTMLView has is key
12502        and has no selection.
12503        
12504        * WebView.subproj/IFHTMLView.mm:
12505        (-[IFHTMLView validateMenuItem:]):
12506        Disable menu if selection is empty.
12507        (-[IFHTMLView copy:]):
12508        Factored code that gets the bridge.
12509        * WebView.subproj/IFHTMLViewPrivate.h:
12510        Added _bridge.
12511        * WebView.subproj/IFHTMLViewPrivate.mm:
12512        (-[IFHTMLView _bridge]):
12513        We need to access the bridge from the view
12514        to get the part's selection.
12515
125162002-06-25  Chris Blumenberg  <cblu@apple.com>
12517
12518	Remove downloaded file if cancelled.
12519
12520        * Misc.subproj/IFDownloadHandler.mm:
12521        (-[IFDownloadHandler cancel]):
12522
125232002-06-25  Richard Williamson  <rjw@apple.com>
12524
12525        Support for rudimentary plain text 'copy'.
12526
12527        * WebCoreSupport.subproj/IFImageRenderer.m:
12528        (-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
12529        * WebView.subproj/IFHTMLView.mm:
12530        (-[IFHTMLView copy:]):
12531        * WebView.subproj/IFWebViewPrivate.h:
12532        * WebView.subproj/IFWebViewPrivate.mm:
12533        (-[IFWebView _controller]):
12534
125352002-06-25  Richard Williamson  <rjw@apple.com>
12536
12537        Enabled progressive image loading code.
12538        
12539        * WebCoreSupport.subproj/IFImageRenderer.h:
12540        * WebCoreSupport.subproj/IFImageRenderer.m:
12541        (-[IFImageRenderer initWithSize:]):
12542        (-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
12543        * WebCoreSupport.subproj/IFImageRendererFactory.m:
12544        (-[IFImageRendererFactory imageRenderer]):
12545
125462002-06-25  Richard Williamson  <rjw@apple.com>
12547
12548       Extended our text measurement rounding work-around for integer-float 
12549       mismatch to round on word boundaries as well as spaces.
12550
12551        * WebCoreSupport.subproj/IFTextRenderer.m:
12552        (-[IFTextRenderer drawGlyphs:numGlyphs:atPoint:withColor:]):
12553        (-[IFTextRenderer slowFloatWidthForCharacters:length:applyRounding:]):
12554        (-[IFTextRenderer floatWidthForCharacters:length:applyRounding:]):
12555
125562002-06-25  Darin Adler  <darin@apple.com>
12557
12558        * WebCoreSupport.subproj/IFResourceURLHandleClient.m:
12559        (-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]):
12560        (-[IFResourceURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
12561        (-[IFResourceURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
12562	Don't remove the URL handle from the data source until we've finished the
12563	loading process in KDE code. This may fix 2968527.
12564
12565        * WebCoreSupport.subproj/IFTextRenderer.m: Keep around commented printfs so
12566	I can do the "dump all strings as they are rendered" again.
12567
12568        * WebKit.pbproj/project.pbxproj: Re-add -Wmissing-format-attribute.
12569
125702002-06-25  Darin Adler  <darin@apple.com>
12571
12572        * WebCoreSupport.subproj/IFImageRenderer.m:
12573        (-[IFImageRenderer tileInRect:fromPoint:]): Remove stray NSLog.
12574
125752002-06-25  Darin Adler  <darin@apple.com>
12576
12577	- fixed 2968298 -- IFImageRenderer crash at download.com
12578
12579        * WebCoreSupport.subproj/IFImageRenderer.m:
12580        (-[IFImageRenderer initWithSize:]): Override this instead of [init].
12581	This is the designated initializer and all the others call this.
12582        (-[IFImageRenderer copyWithZone:]): Override to nil out fields that
12583	can't be shared by the copy.
12584
12585	Fix leaks.
12586
12587        * History.subproj/IFURIEntry.m:
12588        (-[IFURIEntry initWithURL:title:image:]): Use copy instead of retain
12589	in case we are passed a mutable string.
12590        (-[IFURIEntry dealloc]): Release _displayTitle. Fixes a leak.
12591        (-[IFURIEntry setTitle:]): Use copy instead of retain in case we are
12592	passed a mutable string.
12593        (-[IFURIEntry setDisplayTitle:]): Use copy instead of retain in case
12594	we are passed a mutable string.
12595        (-[IFURIEntry initFromDictionaryRepresentation:]): Lose the extra
12596	retain for _lastVisitedDate. Fixes a leak.
12597
125982002-06-24  Darin Adler  <darin@apple.com>
12599
12600        * Panels.subproj/IFStandardPanels.m:
12601        (-[IFStandardPanels didStopLoadingURL:inWindow:]): Fix a leak caused
12602	by calling the wrong method. This was calling objectForKey: instead of
12603	removeObjectForKey:.
12604
126052002-06-24  Richard Williamson  <rjw@apple.com>
12606
12607        Changed our usage of +[NSFont findFontLike:forString:withRange:inLanguage:]
12608        after talking with Aki.  We were erroneously passing a complete
12609        string rather than a character cluster.  Fixed 2964793.
12610        
12611        * WebCoreSupport.subproj/IFTextRenderer.m:
12612        (findLengthOfCharacterCluster):
12613        (-[IFTextRenderer slowPackGlyphsForCharacters:numCharacters:glyphBuffer:numGlyphs:]):
12614        (-[IFTextRenderer drawGlyphs:numGlyphs:atPoint:withColor:]):
12615        (-[IFTextRenderer slowDrawCharacters:length:atPoint:withColor:]):
12616        (-[IFTextRenderer _drawCharacters:length:atPoint:withColor:]):
12617        (-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
12618        (-[IFTextRenderer floatWidthForCharacters:length:applyRounding:]):
12619
126202002-06-24  Darin Adler  <darin@apple.com>
12621
12622        * WebView.subproj/IFWebFramePrivate.mm:
12623        (-[IFWebFrame _transitionProvisionalToCommitted]): Take ownership before
12624	doing the setWidget. The other way the widget was getting deleted.
12625
126262002-06-24  Chris Blumenberg  <cblu@apple.com>
12627
12628        * Plugins.subproj/IFPlugin.h:
12629        * Plugins.subproj/IFPlugin.m:
12630        (-[IFPlugin initWithPath:]): Close resource files when done.
12631        (-[IFPlugin load]): Remove Java plug-in workaround, load as mach-o
12632        * Plugins.subproj/IFPluginView.h:
12633        * Plugins.subproj/IFPluginView.mm:
12634        (-[IFPluginView initWithFrame:plugin:url:baseURL:mime:arguments:]): take NSURLs
12635        (-[IFPluginView dealloc]): release baseURL
12636        * WebCoreSupport.subproj/IFWebCoreViewFactory.m:
12637        (-[IFWebCoreViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]): take NSURLs
12638        (-[IFWebCoreViewFactory viewForJavaAppletWithArguments:]):
12639
126402002-06-24  Darin Adler  <darin@apple.com>
12641
12642	Remove some unused stuff. Other minor cleanup.
12643
12644        * WebView.subproj/IFDynamicScrollBarsView.h: Remove breakRecursionCycle,
12645        don't declare updateScrollers or resetCursorRects.
12646
12647        * WebView.subproj/IFDynamicScrollBarsView.m:
12648        (-[IFDynamicScrollBarsView updateScrollers]): Make this work even for a view
12649        that doesn't allow scrolling, turning off both scrollers in that case.
12650        (-[IFDynamicScrollBarsView reflectScrolledClipView:]): Call updateScrollers
12651	unconditionally, letting it decide what to do, rather than looking at
12652	allowsScrolling. Also, no need to use a boolean to break the recursion cycle,
12653	now that updateScrollers does no work if none is needed.
12654        (-[IFDynamicScrollBarsView setCursor:]): Do nothing if the cursor is not
12655	changing. Also handle arrowCursor case here.
12656        (-[IFDynamicScrollBarsView resetCursorRects]): Call discardCursorRects so
12657	the old rects won't keep accumulating.
12658        (-[IFDynamicScrollBarsView setAllowsScrolling:]): Always call updateScrollers,
12659	not just when turning scrolling off.
12660
12661        * WebView.subproj/IFHTMLView.mm:
12662        (-[IFHTMLView initWithFrame:]): Remove unneeded NSWindowWillCloseNotification
12663	and isFlipped field.
12664        (-[IFHTMLView removeNotifications]): Moved here from NSWindowWillCloseNotification.
12665        (-[IFHTMLView viewWillMoveToWindow:]): Remove all the notifications when the
12666	view is removed from the window.
12667        (-[IFHTMLView setNeedsLayout:]): Call setNeedsDisplay in the YES case, so the
12668	callers don't all have to.
12669        (-[IFHTMLView isFlipped]): Just return YES. No need to store it.
12670        (-[IFHTMLView windowResized:]): Add a FIXME, since this is not the way we want
12671	to handle view resizing for the long run.
12672        * WebView.subproj/IFHTMLViewPrivate.h: Remove isFlipped.
12673
126742002-06-24  Darin Adler  <darin@apple.com>
12675
12676        Fix the last of the "leak the world" problems. The KHTMLView was leaking
12677        in IFHTMLView.
12678
12679        * WebView.subproj/IFHTMLView.mm:
12680        (-[IFHTMLView dealloc]): Call _reset instead of _stopPlugins, so we get rid
12681        of the widget too.
12682        (-[IFHTMLView viewWillMoveToWindow:]): Use _reset now instead of the old
12683        _stopPlugins; also check that the window isn't already nil so we don't do a
12684        reset as part of our first install.
12685        (-[IFHTMLView provisionalDataSourceCommitted:]): Use the new widgetOwned
12686        flag to tell if the widget should be deleted instead of deciding based on
12687        whether the dataSource is the main document.
12688
12689        * WebView.subproj/IFHTMLViewPrivate.h: Add a widgetOwned boolean and a
12690        private _takeOwnershipOfWidget method. Combine _resetWidget and _stopPlugins
12691        into a single _reset call. Remove _removeSubviews.
12692
12693        * WebView.subproj/IFHTMLViewPrivate.mm:
12694        (-[IFHTMLView _reset]): New name for the combination of _resetWidget and
12695        _stopPlugins. Now it decides whether to delete the widget based on the
12696        widget owned flag, so it is safe to call even for non-main-document views.
12697        (-[IFHTMLView _takeOwnershipOfWidget]): Sets widgetOwned to NO.
12698
12699        * WebView.subproj/IFWebFrame.mm: (-[IFWebFrame reset]): Use _resetWidget
12700        under its new name _reset.
12701
12702        * WebView.subproj/IFWebFramePrivate.mm:
12703        (-[IFWebFrame _transitionProvisionalToCommitted]): Don't bother doing
12704        explicit _stopPlugins and _removeSubviews. It's now the view's own responsibility
12705        to do this in viewWillMoveToWindow:. Call _takeOwnershipOfWidget after attaching
12706        the widget to the RenderPart.
12707
12708        * WebView.subproj/IFImageView.m: (-[IFImageView viewWillMoveToWindow:]): Added.
12709        Break the reference cycle by stopping animated IFImageRenderer here instead of
12710        waiting for dealloc.
12711
12712        * Plugins.subproj/IFPluginView.mm: (-[IFPluginView setWindow]): Fix a warning
12713        by changing the printf format string to match the parameter type.
12714
12715        * Misc.subproj/WebKitDebug.h: Re-add the __format__ attribute, now that Radar
12716        2920557 is fixed.
12717
127182002-06-23  Darin Adler  <darin@apple.com>
12719
12720        * WebCoreSupport.subproj/IFImageRenderer.m: (-[IFImageRenderer nextFrame:]):
12721        Use hasAlpha instead of isOpaque because the latter does not work (Radar 2966937).
12722
127232002-06-21  Darin Adler  <darin@apple.com>
12724
12725        * WebCoreSupport.subproj/IFImageRenderer.m:
12726        (-[IFImageRenderer nextFrame:]): Add back the higher-speed case where
12727	we draw directly for opaque animated images.
12728
127292002-06-21  Darin Adler  <darin@apple.com>
12730
12731	Cache the patterns we make for tiled images for added speed.
12732
12733        * WebCoreSupport.subproj/IFImageRenderer.h: Removed declarations of
12734	methods inherited from WebCoreImageRenderer. Added patternColor field.
12735
12736        * WebCoreSupport.subproj/IFImageRenderer.m:
12737        (-[IFImageRenderer dealloc]): Release patternColor.
12738        (-[IFImageRenderer beginAnimationInRect:fromRect:]): Get the view with
12739	[NSView focusView] rather than taking a parameter that's used only for
12740	the animating case.
12741        (-[IFImageRenderer tileInRect:fromPoint:]): New. Caches the pattern in
12742	the patternColor field.
12743
12744        * WebView.subproj/IFImageView.m: (-[IFImageView drawRect:]): No need to
12745	pass view to image renderer any more.
12746
127472002-06-21  Darin Adler  <darin@apple.com>
12748
12749	Fix rendering of non-opaque animated images.
12750
12751	* WebCoreSupport.subproj/IFImageRenderer.m:
12752	(-[IFImageRenderer nextFrame:]): Use [NSView displayRect:] instead of
12753	drawing explicitly so that views behind us get a chance to draw too.
12754	This is less efficient than just drawing for opaque images, but NSImage
12755	doesn't offer a way to find out if the image is opaque. Also, this changes
12756	things a bit because beginAnimationInView gets called again, so we don't
12757	have to reschedule the timer.
12758
127592002-06-20  Richard Williamson  <rjw@apple.com>
12760
12761	* WebCoreSupport.subproj/IFImageRenderer.m:
12762	(-[IFImageRenderer frameDuration]):
12763	    Added minimum 1/60th second duration per frame.
12764	* WebView.subproj/IFDynamicScrollBarsView.m:
12765	(-[IFDynamicScrollBarsView updateScrollers]):
12766	    Only display scrollview if scrollers changed.
12767	* WebView.subproj/IFWebFramePrivate.mm:
12768	(-[IFWebFrame _setState:]):
12769	    Explicity turn on copiesOnScroll.  This may cause problems w/
12770	    plugins.  Need to verify once plugins are no longer crashing.
12771
127722002-06-20  Darin Adler  <darin@apple.com>
12773
12774	Fix for leak where sub-frame IFHTMLViews would not call _stopPlugins.
12775
12776	* Plugins.subproj/IFPluginView.mm:
12777	(-[IFPluginView viewWillMoveToWindow:]):
12778	* WebView.subproj/IFHTMLView.mm:
12779	(-[IFHTMLView viewWillMoveToWindow:]):
12780	Use this viewWillMoveToWindow instead of removeFromSuperview; it's a more
12781	reliable way to handle cases where the view is removed from the view hierarchy.
12782
12783	Fix for IFWebFrame -> IFWebDataSource -> LoadProgressMonitor -> IFWebFrame
12784	reference cycle.
12785
12786	* WebView.subproj/IFLocationChangeHandler.h: Add dataSource parameters for the
12787	methods that don't have them so this can be "delegate" style.
12788	* WebView.subproj/IFWebController.h: Pass a dataSource instead of a frame
12789	when asking for a location change handler.
12790
12791	* WebView.subproj/IFMainURLHandleClient.mm:
12792	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
12793	Pass dataSource for locationChangeDone.
12794
12795	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _startLoading:]):
12796	Pass dataSource for locationChangeStarted.
12797
12798	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame setProvisionalDataSource:]):
12799	Pass a dataSource instead of a frame when asking for a location change handler.
12800
12801	* WebView.subproj/IFWebFramePrivate.mm:
12802	(-[IFWebFrame _transitionProvisionalToCommitted]): Pass dataSource for
12803	locationChangeCommitted.
12804	(-[IFWebFrame _isLoadComplete]): Pass dataSource for locationChangeDone.
12805
12806	* force-clean-timestamp: Give this mechanism a try. I'm not sure
12807	we really need a clean build right now.
12808
12809	* WebView.subproj/IFWebDataSource.mm: Simplify.
12810
128112002-06-20  Kenneth Kocienda  <kocienda@apple.com>
12812
12813        A more complete fix for this bug:
12814
12815        Radar 2942728 (Link to Yahoo! Finance stocks page fails, says URL is "not a valid location")
12816
12817        I added a new +(NSURL)_IF_URLWithString: method to IFNSURLExtensions.
12818        This is now the suggested way to create a URL from a string.
12819
12820	* History.subproj/IFURIEntry.m:
12821	(-[IFURIEntry initFromDictionaryRepresentation:])
12822	* History.subproj/IFURLsWithTitles.m:
12823	(+[IFURLsWithTitles URLsFromPasteboard:])
12824	* History.subproj/IFWebHistoryPrivate.m:
12825	(-[IFWebHistoryPrivate updateURL:title:displayTitle:forURL:])
12826	* Plugins.subproj/IFNullPluginView.mm:
12827	(-[IFNullPluginView initWithFrame:mimeType:arguments:])
12828	* Plugins.subproj/IFPluginView.mm:
12829	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:])
12830	(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:])
12831	* WebCoreSupport.subproj/IFWebCoreViewFactory.m:
12832	(-[IFWebCoreViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:])
12833	* WebKit.pbproj/project.pbxproj:
12834	* WebView.subproj/IFWebDataSource.h:
12835	* WebView.subproj/IFWebDataSourcePrivate.mm:
12836	(-[IFWebDataSource _startLoading:])
12837	* WebView.subproj/IFWebView.mm:
12838	(-[IFWebView performDragOperation:])
12839
12840=== Alexander-9 ===
12841
128422002-06-19  Richard Williamson  <rjw@apple.com>
12843
12844    Break image renderer reference cycle.  When a view is removed from the view
12845    hierarchy active image renderers are told to stop animating,
12846    which will, in turn, cause them to release their view.  We leverage
12847    the existing _stopPlugins mechanism.
12848    
12849	* WebCoreSupport.subproj/IFImageRenderer.h:
12850	* WebCoreSupport.subproj/IFImageRenderer.m:
12851	(+[IFImageRenderer stopAnimationsInView:]):
12852	(-[IFImageRenderer beginAnimationInView:inRect:fromRect:]):
12853	(-[IFImageRenderer frameView]):
12854	(-[IFImageRenderer stopAnimation]):
12855	* WebView.subproj/IFHTMLViewPrivate.mm:
12856	(-[IFHTMLView _stopPlugins]):
12857
128582002-06-19  John Sullivan  <sullivan@apple.com>
12859
12860	- fixed 2960677 -- attempt to insert nil key; content policy set twice on particular page.
12861
12862	The problem here was a bad URL not being propogated through the error-handling machinery
12863	correctly because the url handle was nil, but used to get its string.
12864
12865	* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
12866	(+[IFResourceURLHandleClient startLoadingResource:withURL:dataSource:]):
12867	* WebView.subproj/IFWebControllerPrivate.mm: Use IFError init method that takes
12868	failingURL.
12869
12870	(-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
12871	(-[IFWebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
12872	Check [error failingURL] when resource handle is nil.
12873
128742002-06-19  Darin Adler  <darin@apple.com>
12875
12876	Fixed a storage leak and made some other changes to go along with
12877	corresponding WebCore changes.
12878
12879	* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
12880	(-[IFResourceURLHandleClient didStartLoadingWithURL:]): Added.
12881	(-[IFResourceURLHandleClient didStopLoading]): Added.
12882	(-[IFResourceURLHandleClient dealloc]):
12883	(-[IFResourceURLHandleClient IFURLHandleResourceDidBeginLoading:]):
12884	(-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]):
12885	(-[IFResourceURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
12886	(-[IFResourceURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
12887	(-[IFResourceURLHandleClient IFURLHandle:didRedirectToURL:]):
12888	Use didStartLoadingWithURL and didStopLoading to cure problems where the
12889	handle would be left in the data sources list of loading handles.
12890
12891	* WebView.subproj/IFDynamicScrollBarsView.h: Changed to conform to the
12892	WebCoreFrameView protocol.
12893
12894	* Misc.subproj/WebKitDebug.h: Cloned improved assert code from WebFoundation.
12895
12896	* WebView.subproj/IFDynamicScrollBarsView.m: Fixed comment.
12897
128982002-06-19  Chris Blumenberg  <cblu@apple.com>
12899
12900	Call setWindow in layout so that plug-in content is drawn without 
12901	needing to resize.
12902
12903	* Plugins.subproj/IFPluginView.mm:
12904	(-[IFPluginView layout]):
12905	(-[IFPluginView viewHasMoved:]):
12906
129072002-06-19  Kenneth Kocienda  <kocienda@apple.com>
12908
12909        I just played alchemical voodoo games with the linker to
12910        make all our frameworks and Alexander prebound.
12911
12912	* WebKit.pbproj/project.pbxproj
12913
129142002-06-18  Chris Blumenberg  <cblu@apple.com>
12915
12916	Fix for 2961733 - Progress of plug-in files not shown in activity window
12917	Plugin classed must call _IF_superviewWithName: not _IF_parentWebView
12918
12919	* Plugins.subproj/IFNullPluginView.mm:
12920	(-[IFNullPluginView drawRect:]):
12921	* Plugins.subproj/IFPluginStream.mm: minor cleanup
12922	(-[IFPluginStream IFURLHandle:resourceDataDidBecomeAvailable:]):
12923	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
12924	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
12925	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
12926	(-[IFPluginStream IFURLHandle:didRedirectToURL:]):
12927	* Plugins.subproj/IFPluginView.mm:
12928	(-[IFPluginView start]):
12929	(-[IFPluginView layout]):
12930
129312002-06-18  Chris Blumenberg  <cblu@apple.com>
12932
12933	Enabled the viewing of plug-in content inline
12934	(aka direct links to plugin media). Made IFPluginView a
12935	IFDocumentView and IFPluginStream a IFDocumentRespresentation.
12936
12937	Renamed content policy API's to include the data source.
12938
12939	* Plugins.subproj/IFPluginDatabase.h:
12940	* Plugins.subproj/IFPluginDatabase.m:
12941	(+[IFPluginDatabase installedPlugins]): registers plugins as IFDocument*
12942	* Plugins.subproj/IFPluginStream.h:
12943	* Plugins.subproj/IFPluginStream.mm:
12944	(-[IFPluginStream init]): added for IFDocumentRepresentation
12945	(-[IFPluginStream initWithURL:pluginPointer:notifyData:attributes:]): removed load initiliazatoin
12946	(-[IFPluginStream dealloc]):
12947	(-[IFPluginStream startLoad]): added
12948	(-[IFPluginStream stop]):
12949	(-[IFPluginStream receivedData:]): added as the base implementation
12950	(-[IFPluginStream receivedError]): added as the base implementation
12951	(-[IFPluginStream finishedLoadingWithData:]): added as the base implementation
12952	(-[IFPluginStream receivedData:withDataSource:]): added for IFDocumentRepresentation
12953	(-[IFPluginStream receivedError:withDataSource:]): added for IFDocumentRepresentation
12954	(-[IFPluginStream finishedLoadingWithDataSource:]): added for IFDocumentRepresentation
12955	(-[IFPluginStream IFURLHandleResourceDidBeginLoading:]): 
12956	(-[IFPluginStream IFURLHandle:resourceDataDidBecomeAvailable:]): call receivedData
12957	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]): call finishedLoadingWithData
12958	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]): call receivedError
12959	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]): call receivedError
12960	(-[IFPluginStream IFURLHandle:didRedirectToURL:]):
12961	* Plugins.subproj/IFPluginView.h:
12962	* Plugins.subproj/IFPluginView.mm:
12963	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:]): removed special-case code for NP_FULL mose
12964	(-[IFPluginView start]):
12965	(-[IFPluginView initWithFrame:]): added for IFDocumentView 
12966 	(-[IFPluginView provisionalDataSourceChanged:]): added for IFDocumentView
12967	(-[IFPluginView provisionalDataSourceCommitted:]): added for IFDocumentView
12968	(-[IFPluginView dataSourceUpdated:]): added for IFDocumentView
12969	(-[IFPluginView layout]): added for IFDocumentView
12970	(-[IFPluginView removeFromSuperview]): call stop
12971	(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
12972	(-[IFPluginView pluginInstance]): added 
12973	* WebCoreSupport.subproj/IFWebCoreViewFactory.m:
12974	(-[IFWebCoreViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]): call new init method
12975	(-[IFWebCoreViewFactory viewForJavaAppletWithArguments:]): call new init method
12976	* WebKit.pbproj/project.pbxproj:
12977	* WebView.subproj/IFLocationChangeHandler.h: content policy method name changes
12978	* WebView.subproj/IFMainURLHandleClient.mm:
12979	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): content policy method name changes
12980	* WebView.subproj/IFWebController.h:
12981	* WebView.subproj/IFWebController.mm:
12982	(-[IFWebController haveContentPolicy:andPath:forDataSource:]): content policy method name changes
12983	* WebView.subproj/IFWebDataSourcePrivate.h:
12984
129852002-06-18  Kenneth Kocienda  <kocienda@apple.com>
12986
12987        Fix for this bug:
12988
12989        Radar 2928483 (activity viewer does not show all the pieces of a web page when the page is cached)
12990
12991	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
12992	(-[IFWebCoreBridge objectLoadedFromCache:size:]): New method that sends the appropriate progress indication.
12993
129942002-06-17  Richard Williamson  <rjw@apple.com>
12995
12996    Fixed window.open regression.
12997    Partial fix to targeting frame of new name.
12998    
12999	* WebCoreSupport.subproj/IFWebCoreBridge.h:
13000	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
13001	(-[IFWebCoreBridge openNewWindowWithURL:]):
13002	    Return the newly created bridge.
13003	(-[IFWebCoreBridge receivedData:withDataSource:]):
13004	    Use setDataSource: method
13005	(-[IFWebCoreBridge startLoadingResource:withURL:]):
13006	    No change.
13007	(-[IFWebCoreBridge setDataSource:]):
13008	    New method.
13009	* WebView.subproj/IFHTMLView.mm:
13010	(-[IFHTMLView mouseMovedNotification:]):
13011	    Selection support.
13012	(-[IFHTMLView mouseDragged:]):
13013	    Selection support.
13014
13015	* WebView.subproj/IFWebController.mm:
13016	(-[IFWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
13017        Only change representation if it hasn't been pre-bound, or if it's
13018        class changed.
13019        
13020	* WebView.subproj/IFWebFrame.mm:
13021	(-[IFWebFrame initWithName:webView:provisionalDataSource:controller:]):
13022	    More hackery to support window.open.
13023
130242002-06-17  Darin Adler  <darin@apple.com>
13025
13026	Fixed many of the reasons that we were leaking the world. But we still leak
13027	KHTMLPart objects, so there must be more problems.
13028
13029	* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
13030	(+[IFResourceURLHandleClient startLoadingResource:withURL:dataSource:]):
13031	Add missing autorelease. Without this, we leak the world.
13032	(-[IFResourceURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
13033	Weaken assert. It was firing before.
13034
13035	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
13036	(-[IFWebCoreBridge receivedData:withDataSource:]): Don't retain the
13037	dataSource any more. Without this, we leak the world.
13038
13039	* WebView.subproj/IFWebControllerPrivate.mm:
13040	(-[IFWebControllerPrivate dealloc]): Release the policy handler too.
13041	Without this, we leak the world.
13042
13043	* WebView.subproj/IFWebDataSourcePrivate.mm:
13044	(-[IFWebDataSourcePrivate dealloc]): Release resourceData, representation,
13045	downloadPath, encoding, and contentType. Without this, we leak the world.
13046
13047	* WebView.subproj/IFWebFrame.mm:
13048	(-[IFWebFrame initWithName:webView:provisionalDataSource:controller:]):
13049	Release the dummy data source after setting it up so it doesn't leak.
13050
13051	* WebView.subproj/IFHTMLViewPrivate.mm:
13052	(-[IFHTMLViewPrivate dealloc]): Don't release the controller, we didn't retain it.
13053	(-[IFHTMLView _resetWidget]): Delete the provisional widget too.
13054
13055	* WebView.subproj/IFWebDataSourcePrivate.h: Remove unused "children" array.
13056
13057	* WebCoreSupport.subproj/IFImageRenderer.m: Fix comment.
13058	* WebView.subproj/IFHTMLView.mm: Fix comments.
13059
130602002-06-17  Richard Williamson  <rjw@apple.com>
13061
13062    Fixed call to renamed progress method.
13063    
13064	* Plugins.subproj/IFPluginStream.mm:
13065    
130662002-06-17  Chris Blumenberg  <cblu@apple.com>
13067
13068	* WebView.subproj/IFWebDataSource.h:
13069	* WebView.subproj/IFWebDataSource.mm:
13070	(-[IFWebDataSource contentType]): no changes
13071	(-[IFWebDataSource fileType]): added. Returns extension based on MIME.
13072
130732002-06-17  Richard Williamson  <rjw@apple.com>
13074
13075    Added explicit complete check for resources, rather
13076    than depend on bytesSoFar == totalToLoad.
13077    
13078	* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
13079	(-[IFResourceURLHandleClient receivedProgressWithHandle:complete:]):
13080	(-[IFResourceURLHandleClient IFURLHandleResourceDidBeginLoading:]):
13081	(-[IFResourceURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
13082	(-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]):
13083	(-[IFResourceURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
13084	* WebView.subproj/IFWebControllerPrivate.h:
13085	* WebView.subproj/IFWebControllerPrivate.mm:
13086	(-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
13087
130882002-06-17  Chris Blumenberg  <cblu@apple.com>
13089
13090	Fix for 2939881. No more overwritting of one's files.
13091
13092	* Misc.subproj/IFDownloadHandler.mm:
13093	(-[IFDownloadHandler receivedData:]):
13094	(-[IFDownloadHandler finishedLoading]):
13095
130962002-06-17  Richard Williamson  <rjw@apple.com>
13097
13098    Fixed IFImageViews not drawing correctly.
13099    
13100    Changed compeletion to explicity use IFURLHandleResourceDidFinishLoading, rather
13101    than depend on bytesSoFar == totalToLoad.
13102    
13103	* WebView.subproj/IFMainURLHandleClient.mm:
13104	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
13105	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
13106	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
13107	* WebView.subproj/IFWebControllerPrivate.h:
13108	* WebView.subproj/IFWebControllerPrivate.mm:
13109	(-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
13110
131112002-06-16  Darin Adler  <darin@apple.com>
13112
13113	* WebCoreSupport.subproj/IFWebCoreFrame.m: (-[IFWebCoreFrame bridge]): Added.
13114
131152002-06-16  Darin Adler  <darin@apple.com>
13116
13117	Add a separate WebCoreFrame alongside WebCoreBridge to facilitate
13118	handling of frames with no HTML content in them. This probably fixes
13119	frames named "_blank".
13120
13121	* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
13122	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
13123	(-[IFWebCoreBridge frame]): Added.
13124	(-[IFWebCoreBridge parent]): Changed name from parentFrame, to emphasize that this gives a WebCoreBridge.
13125	(-[IFWebCoreBridge childFrames]): Return IFWebCoreFrame objects.
13126	(-[IFWebCoreBridge childFrameNamed:]): Return IFWebCoreFrame object.
13127	(-[IFWebCoreBridge descendantFrameNamed:]): Return IFWebCoreFrame object.
13128	(-[IFWebCoreBridge createChildFrameNamed:withURL:renderPart:khtml::allowsScrolling:marginWidth:marginHeight:]):
13129	Use the loadURL operation in IFWebCoreFrame.
13130	(-[IFWebCoreBridge mainFrame]): Return IFWebCoreFrame object.
13131	(-[IFWebCoreBridge frameNamed:]): Return IFWebCoreFrame object.
13132
13133	* WebCoreSupport.subproj/IFWebCoreFrame.h: Added.
13134	* WebCoreSupport.subproj/IFWebCoreFrame.m: Added.
13135	* WebKit.pbproj/project.pbxproj: Update for added files.
13136
13137	* WebView.subproj/IFHTMLViewPrivate.h: Made this includable from plain Objective C.
13138
13139	* WebView.subproj/IFWebFrame.mm:
13140	(-[IFWebFrame initWithName:webView:provisionalDataSource:controller:]): Create the IFWebCoreFrame.
13141
13142	* WebView.subproj/IFWebFramePrivate.h: Add _bridgeFrame method for getting IFWebCoreFrame.
13143	* WebView.subproj/IFWebFramePrivate.mm:
13144	(-[IFWebFramePrivate dealloc]): Release the IFWebCoreFrame.
13145	(-[IFWebFrame _bridgeFrame]): Added.
13146
131472002-06-16  Darin Adler  <darin@apple.com>
13148
13149	Moved the IFURLHandleClient subclass here from WebCore, so it can some day be merged
13150	with the one for the frames themselves; this one is for resources.
13151
13152	* WebCoreSupport.subproj/IFResourceURLHandleClient.h: Added.
13153	* WebCoreSupport.subproj/IFResourceURLHandleClient.m: Added.
13154	* WebKit.pbproj/project.pbxproj: Added IFResourceURLHandleClient.h and .m.
13155
13156	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
13157	(-[IFWebCoreBridge startLoadingResource:withURL:]): Added.
13158	Removed all the old methods, with their guts moved into IFResourceURLHandleClient.
13159
131602002-06-15  Darin Adler  <darin@apple.com>
13161
13162	Update for frame-related changes in WebCore.
13163
13164	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
13165	(-[IFWebFrame _bridge]): Look at provisional data source first.
13166	(-[IFWebCoreBridge dealloc]): Release the data source.
13167	(-[IFWebCoreBridge parentFrame]): Renamed.
13168	(-[IFWebCoreBridge childFrames]): Renamed.
13169	(-[IFWebCoreBridge childFrameNamed:]): Added.
13170	(-[IFWebCoreBridge descendantFrameNamed:]): Added.
13171	(-[IFWebCoreBridge didFinishLoadingWithHandle:]): Don't call _didStopLoading twice
13172	when we finish loading.
13173	
13174	Also changed controller getters to call [dataSource controller] and got rid of the
13175	[IFWebCoreBridge controller] method.
13176
131772002-06-15  Richard Williamson  <rjw@apple.com>
13178
13179	* Misc.subproj/IFNSViewExtras.h:
13180	* Misc.subproj/IFNSViewExtras.m:
13181	(-[NSView _IF_superviewWithName:]):
13182	(-[NSView _IF_parentWebView]):
13183	    Replaced use of _IF_superviewWithName w/ safer _IF_parentWebView.
13184	* Plugins.subproj/IFNullPluginView.mm:
13185	(-[IFNullPluginView drawRect:]):
13186	    Replaced use of _IF_superviewWithName w/ safer _IF_parentWebView.
13187	* Plugins.subproj/IFPluginStream.mm:
13188	(-[IFPluginStream IFURLHandle:resourceDataDidBecomeAvailable:]):
13189	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
13190	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
13191	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
13192        Call _receiveProgress instead of directly calling handler.	    
13193	* Plugins.subproj/IFPluginView.mm:
13194	(-[IFPluginView start]):
13195	    Replaced use of _IF_superviewWithName w/ safer _IF_parentWebView.
13196	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
13197	(-[IFWebCoreBridge loadURL:attributes:flags:inFrame:withParent:]):
13198	    Handle changing top frame correctly.  Parent may be nil.
13199	(-[IFWebCoreBridge didFinishLoadingWithHandle:]):
13200	    Added non-terminal error case.
13201	* WebView.subproj/IFHTMLView.mm:
13202	(-[IFHTMLView provisionalDataSourceCommitted:]):
13203	    Replaced use of _IF_superviewWithName w/ safer _IF_parentWebView.
13204	* WebView.subproj/IFMainURLHandleClient.mm:
13205	* WebView.subproj/IFWebControllerPrivate.mm:
13206        Comment changes.
13207        
132082002-06-15  Darin Adler  <darin@apple.com>
13209
13210	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
13211	Added a lot of assertions that I had used while debugging.
13212	(-[IFWebCoreBridge didRedirectWithHandle:fromURL:]):
13213	Commented out the line of code that calls [serverRedirectTo:forDataSource:].
13214	Our old code was sending this to the web controller (that was a bug).
13215	But if we send it to the location change handler, then we confuse Alexander.
13216	We may return to this later, uncomment it, and change the interface so the
13217	client can tell what is being redirected. We'll need to do that if we want
13218	the activity window to show redirected URLs at the time of the redirect.
13219
132202002-06-15  Richard Williamson  <rjw@apple.com>
13221
13222    Fixed _bridge not accounting for provisional data source,
13223    broke access to window.frames during load.
13224    
13225	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
13226	(-[IFWebFrame _bridge]):
13227	(-[IFWebCoreBridge children]):
13228	* WebView.subproj/IFWebFramePrivate.mm:
13229	(-[IFWebFrame _isLoadComplete]):
13230
132312002-06-15  Darin Adler  <darin@apple.com>
13232
13233	* WebView.subproj/IFHTMLView.mm:
13234	(-[IFHTMLView provisionalDataSourceChanged:]): Don't turn negative numbers into
13235	0 for margins. This was a mistake.
13236
132372002-06-15  Darin Adler  <darin@apple.com>
13238
13239	- fixed 2942808 -- remove all calls to WebKit from WebCore
13240
13241	Update to use the WebCore bridge for more things, reducing
13242	dependencies in both directions. Besides using the bridge for all the
13243	remaining WebCore to WebKit calls, almost no WebKit code deals with
13244	KHTMLPart directly any more, instead the other side of the bridge handles it.
13245
13246	* Plugins.subproj/IFPluginStream.mm:
13247	(-[IFPluginStream IFURLHandleResourceDidBeginLoading:]): Remove unneeded casts.
13248	(-[IFPluginStream IFURLHandle:resourceDataDidBecomeAvailable:]):
13249	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
13250	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
13251	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
13252	(-[IFPluginStream IFURLHandle:didRedirectToURL:]):
13253	Use the new IFProgress methods to simplify code.
13254
13255	* WebCoreSupport.subproj/IFWebCoreBridge.h: Use the new WebCoreBridge protocol
13256	so we get a compiler error if we forget to implement anything. Add a method for
13257	IFWebDataSource that gets the WebCoreBridge if it has an IFHTMLRepresentation,
13258	and nil otherwise.
13259	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
13260	(-[IFWebDataSource _bridge]): Add; does checking so that it returns
13261	nil if the representation is not an IFHTMLRepresentation. This is now used
13262	almost everywhere so we don't have to do so much type casting.
13263	(-[IFWebCoreBridge loadURL:attributes:flags:inFrame:withParent:]): Remove a
13264	stray use of [IFWebCoreBridge dataSource] so we can remove it.
13265	(-[IFWebCoreBridge receivedData:withDataSource:]): Use the
13266	new [WebCoreBridge openURL:] and [WebCoreBridge addData:] methods from the
13267	other side of the bridge so we don't have to deal with the KHTMLPart directly.
13268	(-[IFWebCoreBridge addHandle:]): Added.
13269	(-[IFWebCoreBridge removeHandle:]): Added.
13270	(-[IFWebCoreBridge didStartLoadingWithHandle:]): Added.
13271	(-[IFWebCoreBridge receivedProgressWithHandle:]): Added.
13272	(-[IFWebCoreBridge didFinishLoadingWithHandle:]): Added.
13273	(-[IFWebCoreBridge didCancelLoadingWithHandle:]): Added.
13274	(-[IFWebCoreBridge didFailBeforeLoadingWithError:]): Added.
13275	(-[IFWebCoreBridge didFailToLoadWithHandle:error:]): Added.
13276	(-[IFWebCoreBridge didRedirectWithHandle:fromURL:]): Added.
13277
13278	* WebView.subproj/IFHTMLRepresentation.h: Remove unneeded declarations.
13279	* WebView.subproj/IFHTMLRepresentation.mm: Remove [IFHTMLRepresentation part].
13280	* WebView.subproj/IFHTMLRepresentationPrivate.h: Remove [IFHTMLRepresentation part].
13281
13282	* WebView.subproj/IFHTMLView.mm: (-[IFHTMLView provisionalDataSourceChanged:]): Use the bridge.
13283
13284	* WebView.subproj/IFHTMLViewPrivate.mm: Remove a bunch of unused stuff that was
13285	there for the render and document tree viewers. I had removed it once before but
13286	it got re-added as a side effect of the reorganization process.
13287
13288	* WebView.subproj/IFLoadProgress.h: Remove the unused IFLoadType -- we can add
13289	it back if we find that it's needed. It didn't do much good to have it here
13290	and only partly implemented, and I don't think it's needed. Added some convenient
13291	interfaces for creating IFLoadProgress objects.
13292
13293	* WebView.subproj/IFLoadProgress.mm: Get rid of WCSetIFLoadProgressMakeFunc stuff.
13294	(-[IFLoadProgress init]): Added.
13295	(-[IFLoadProgress initWithBytesSoFar:totalToLoad:]): Remove type part.
13296	(-[IFLoadProgress initWithURLHandle:]): Added.
13297	(+[IFLoadProgress progress]): Added.
13298	(+[IFLoadProgress progressWithBytesSoFar:totalToLoad:]): Added.
13299	(+[IFLoadProgress progressWithURLHandle:]): Added.
13300
13301	* WebView.subproj/IFMainURLHandleClient.mm:
13302	(-[IFMainURLHandleClient dealloc]): Add more workaround for 2954901.
13303	(-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]):
13304	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
13305	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
13306	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
13307	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
13308	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
13309	Remove unneeded type casts and simplify by using new IFLoadProgress methods.
13310	Also simplify access to _bridge by using [IFWebDataSource _bridge].
13311
13312	* WebView.subproj/IFWebControllerPrivate.mm:
13313	* WebView.subproj/IFWebFrame.mm:
13314	Remove unneeded include of KHTMLPart header.
13315
13316	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource documentTextFromDOM]):
13317	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _stopLoading]):
13318	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]):
13319	Use bridge.
13320
133212002-06-15  Maciej Stachowiak  <mjs@apple.com>
13322
13323        Made Development build mode mean what Unoptimized used to mean. Removed Unoptimized build mode. 
13324        Added a Mixed build mode which does what Deployment used to. All this to fix:
13325        
13326        Radar 2955367 - Change default build style to "Unoptimized"
13327        
13328	* WebKit.pbproj/project.pbxproj:
13329
133302002-06-15  Maciej Stachowiak  <mjs@apple.com>
13331
13332        Added temporary workardound for Radar 2954901 by making the assertion more lenient.
13333        
13334	* WebView.subproj/IFMainURLHandleClient.mm:
13335	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
13336
133372002-06-14  Richard Williamson  <rjw@apple.com>
13338
13339    Removed redundant private _isDocumentHTML method.
13340    
13341	* WebView.subproj/IFMainURLHandleClient.mm:
13342	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
13343	* WebView.subproj/IFWebDataSourcePrivate.h:
13344	* WebView.subproj/IFWebDataSourcePrivate.mm:
13345	(-[IFWebDataSource _stopLoading]):
13346	(-[IFWebDataSource _addError:forResource:]):
13347	* WebView.subproj/IFWebFramePrivate.mm:
13348	(-[IFWebFrame _isLoadComplete]):
13349
133502002-06-14  Richard Williamson  <rjw@apple.com>
13351
13352    Added handlers to IFWebController.  Should eventually be possible to use
13353    IFWebController w/o subclassing.
13354    
13355    Changed IFResourceProgressHandler to pass back resource handle instead of
13356    string description.  This will address the needs descibed in 2954160.
13357    
13358    Fixed many incorrect references to datasource reps.
13359    
13360	* Plugins.subproj/IFNullPluginView.mm:
13361	(-[IFNullPluginView drawRect:]):
13362	* Plugins.subproj/IFPluginStream.mm:
13363	(-[IFPluginStream IFURLHandle:resourceDataDidBecomeAvailable:]):
13364	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
13365	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
13366	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
13367	* WebCoreSupport.subproj/IFWebCoreBridge.mm:
13368	(-[IFWebDataSource _bridge]):
13369	(-[IFWebCoreBridge createNewFrameNamed:withURL:renderPart:khtml::allowsScrolling:marginWidth:marginHeight:]):
13370	* WebView.subproj/IFDocument.h:
13371	* WebView.subproj/IFHTMLRepresentation.h:
13372	* WebView.subproj/IFHTMLRepresentationPrivate.h:
13373	* WebView.subproj/IFHTMLView.mm:
13374	(-[IFHTMLView provisionalDataSourceChanged:]):
13375	(-[IFHTMLView viewWillStartLiveResize]):
13376	(-[IFHTMLView viewDidEndLiveResize]):
13377	* WebView.subproj/IFImageView.m:
13378	* WebView.subproj/IFMainURLHandleClient.mm:
13379	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
13380	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
13381	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
13382	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
13383	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
13384	* WebView.subproj/IFWebController.h:
13385	* WebView.subproj/IFWebController.mm:
13386	(-[IFWebController createFrameNamed:for:inParent:allowsScrolling:]):
13387	(-[IFWebController setResourceProgressHandler:]):
13388	(-[IFWebController resourceProgressHandler]):
13389	(-[IFWebController setPolicyHandler:]):
13390	(-[IFWebController policyHandler]):
13391	(+[IFWebController defaultURLPolicyForURL:]):
13392	* WebView.subproj/IFWebControllerPrivate.h:
13393	* WebView.subproj/IFWebControllerPrivate.mm:
13394	(-[IFWebControllerPrivate dealloc]):
13395	(-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:]):
13396	(-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:]):
13397	(-[IFWebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
13398	(-[IFWebController _mainReceivedError:forResourceHandle:partialProgress:fromDataSource:]):
13399	* WebView.subproj/IFWebDataSource.h:
13400	* WebView.subproj/IFWebDataSource.mm:
13401	(-[IFWebDataSource representation]):
13402	(-[IFWebDataSource isDocumentHTML]):
13403	(-[IFWebDataSource documentTextFromDOM]):
13404	* WebView.subproj/IFWebDataSourcePrivate.h:
13405	* WebView.subproj/IFWebDataSourcePrivate.mm:
13406	(-[IFWebDataSourcePrivate dealloc]):
13407	(-[IFWebDataSource _setRepresentation:]):
13408	(-[IFWebDataSource _stopLoading]):
13409	(-[IFWebDataSource _isDocumentHTML]):
13410	* WebView.subproj/IFWebFrame.mm:
13411	(-[IFWebFrame setProvisionalDataSource:]):
13412	* WebView.subproj/IFWebFramePrivate.mm:
13413	(-[IFWebFrame _isLoadComplete]):
13414
134152002-06-14  Darin Adler  <darin@apple.com>
13416
13417	* Panels.subproj/IFStandardPanels.m: Use the real PTHREAD_ONCE_INIT,
13418	remove the workaround for 2905545.
13419
13420	* IFWebCoreBridge.h: Moved into WebCoreSupport.subproj.
13421	* IFWebCoreBridge.mm: Moved into WebCoreSupport.subproj.
13422	* WebCoreSupport.subproj/IFWebCoreBridge.h: Moved from top level.
13423	* WebCoreSupport.subproj/IFWebCoreBridge.mm: Moved from top level.
13424
13425	* WebKit.pbproj/project.pbxproj: Update for new file locations.
13426	Also pass -no-c++filt so we get mangled names (more useful for .exp files),
13427	and remove PFE_FILE_C_DIALECTS.
13428
134292002-06-14  Chris Blumenberg  <cblu@apple.com>
13430
13431	* WebView.subproj/IFMainURLHandleClient.mm:
13432	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
13433	If content type is the default type and there is no extension, assume HTML.
13434
13435	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
13436	* WebView.subproj/IFWebDataSource.h:
13437	* WebView.subproj/IFWebDataSource.mm: Made isDocumentHTML public
13438	(-[IFWebDataSource isDocumentHTML]):
13439	(-[IFWebDataSource documentSource]):
13440	(-[IFWebDataSource documentTextFromDOM]):
13441	* WebView.subproj/IFWebDataSourcePrivate.h:
13442	* WebView.subproj/IFWebDataSourcePrivate.mm:
13443	(-[IFWebDataSource _stopLoading]):
13444	(-[IFWebDataSource _addError:forResource:]):
13445	* WebView.subproj/IFWebFramePrivate.mm:
13446	(-[IFWebFrame _isLoadComplete]):
13447
134482002-06-14  Darin Adler  <darin@apple.com>
13449
13450	* Panels.subproj/IFStandardPanels.m: Fix what I broke last time.
13451
134522002-06-14  Darin Adler  <darin@apple.com>
13453
13454	* Panels.subproj/IFStandardPanels.m:
13455	(-[IFStandardPanelsPrivate frontmostWindowLoadingURL:]): Change to call webView
13456	instead of view. Not sure why anyone was able to compile this.
13457
13458	* Plugins.subproj/IFNullPluginView.mm: Remove include of obsolete WCPluginWidget.h.
13459
13460	* WebView.subproj/IFHTMLRepresentation.mm: (-[IFHTMLRepresentation part]):
13461	Call part instead of KHTMLPart. Not sure why anyone was able to compile this.
13462
134632002-06-14  Darin Adler  <darin@apple.com>
13464
13465	Add the new bridge class that connects us to WebCore in a nicer way.
13466	Started to use it for some things. More to come.
13467
13468	* WebKit.pbproj/project.pbxproj:
13469	* IFWebCoreBridge.h: Added.
13470	* IFWebCoreBridge.mm: Added.
13471
13472	* Misc.subproj/IFDownloadHandler.mm:
13473	(-[IFDownloadHandler initWithDataSource:]): Call [super init].
13474	(-[IFDownloadHandler dealloc]): Call [super dealloc].
13475	* Plugins.subproj/IFPluginNullEventSender.m:
13476	(-[IFPluginNullEventSender initializeWithNPP:functionPointer:window:]): Call [super init].
13477	(-[IFPluginNullEventSender dealloc]): Call [super dealloc].
13478	* WebView.subproj/IFDOMNode.mm: (-[IFDOMNode dealloc]): Call [super dealloc].
13479	* WebView.subproj/IFImageView.m: (-[IFImageView dealloc]): Call [super dealloc].
13480	* WebView.subproj/IFRenderNode.mm: (-[IFRenderNode dealloc]): Call [super dealloc].
13481
13482	* WebView.subproj/IFHTMLRepresentation.h: Moved variables into a private structure so
13483	this class can be made public.
13484	* WebView.subproj/IFHTMLRepresentationPrivate.h: Added. Has _bridge method.
13485	* WebView.subproj/IFHTMLRepresentation.mm:
13486	(-[IFHTMLRepresentation init]): Call [super init]. Also use the new private structure,
13487	and allocate the IFWebCoreBridge.
13488	(-[IFHTMLRepresentation dealloc]): Release the private structure and the IFWebCoreBridge.
13489	Also, call [super dealloc].
13490	(-[IFHTMLRepresentation _bridge]): Private method to get to the bridge.
13491	(-[IFHTMLRepresentation receivedData:withDataSource:]): Use IFWebCoreBridge.
13492
13493	* WebView.subproj/IFWebViewPrivate.h: Add _setMarginWidth and _setMarginHeight.
13494
13495	* WebView.subproj/IFWebDataSourcePrivate.h: Tweak.
13496	* WebView.subproj/IFWebDataSource.mm: Tweak.
13497	* History.subproj/IFWebHistoryPrivate.m: Tweak.
13498
134992002-06-14  Richard Williamson  <rjw@apple.com>
13500
13501    Lots of frame related cleanup.  Added attempt to get
13502    nested scrollbars to work correctly with window's resize
13503    corner.  Still not quite right.
13504    
13505    Name change [IFWebFrame view] -> [IFWebFrame webView].
13506    
13507	* WebView.subproj/IFDynamicScrollBarsView.m:
13508	(-[IFDynamicScrollBarsView updateScrollers]):
13509	* WebView.subproj/IFHTMLView.mm:
13510	(-[IFHTMLView provisionalDataSourceChanged:]):
13511	(-[IFHTMLView viewDidEndLiveResize]):
13512	* WebView.subproj/IFMainURLHandleClient.mm:
13513	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
13514	* WebView.subproj/IFWebController.h:
13515	* WebView.subproj/IFWebController.mm:
13516	(-[IFWebController initWithView:provisionalDataSource:]):
13517	(-[IFWebController createFrameNamed:for:inParent:inScrollView:]):
13518	(-[IFWebController _frameForView:fromFrame:]):
13519	(-[IFWebController frameForView:]):
13520	(-[IFWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
13521	* WebView.subproj/IFWebControllerPrivate.mm:
13522	(-[IFWebControllerPrivate _clearControllerReferences:]):
13523	* WebView.subproj/IFWebFrame.h:
13524	* WebView.subproj/IFWebFrame.mm:
13525	(-[IFWebFrame init]):
13526	(-[IFWebFrame initWithName:webView:provisionalDataSource:controller:]):
13527	(-[IFWebFrame setWebView:]):
13528	(-[IFWebFrame webView]):
13529	(-[IFWebFrame setProvisionalDataSource:]):
13530	(-[IFWebFrame reset]):
13531	* WebView.subproj/IFWebFramePrivate.h:
13532	* WebView.subproj/IFWebFramePrivate.mm:
13533	(-[IFWebFramePrivate dealloc]):
13534	(-[IFWebFramePrivate setWebView:]):
13535	(-[IFWebFrame _timedLayout:]):
13536	(-[IFWebFrame _transitionProvisionalToCommitted]):
13537	(-[IFWebFrame _setState:]):
13538	(-[IFWebFrame _isLoadComplete]):
13539
135402002-06-14  Richard Williamson  <rjw@apple.com>
13541
13542	* WebView.subproj/IFHTMLView.mm:
13543	(-[IFHTMLView initWithFrame:]):
13544	    Added notification so we can intelligently add/remove
13545	    mouse move observation when the window becomes/resigns
13546	    main.  Also added window close observation so we can
13547	    clean up other observers.
13548	(-[IFHTMLView viewWillStartLiveResize]):\
13549	    Backed out removal of scroll bars during resize.
13550	(-[IFHTMLView viewDidEndLiveResize]):
13551	    Backed out removal of scroll bars during resize.
13552	(-[IFHTMLView windowWillClose:]):
13553        Clean up observers.
13554	(-[IFHTMLView windowDidBecomeMain:]):
13555        Add mouse move observer.
13556	(-[IFHTMLView windowDidResignMain:]):
13557        Remove mouse move observer.
13558	(-[IFHTMLView mouseMovedNotification:]):
13559	    Only pay attention to mouse moves for this window.
13560	* WebView.subproj/IFImageView.m:
13561	(-[IFImageView layout]):
13562	    Removed unnecessary scroll view setDrawBackground calls.
13563	* WebView.subproj/IFWebFramePrivate.mm:
13564	(-[IFWebFrame _setState:]):
13565	    Added calls to scroll view setDrawBackground when the view
13566	    rect is valid.
13567
135682002-06-14  Chris Blumenberg  <cblu@apple.com>
13569
13570	Enabled displaying of text, images and RTF
13571	Fixed drag & drop
13572
13573
135742002-06-13  John Sullivan  <sullivan@apple.com>
13575
13576	Various changes to better support the pasteboard.
13577
13578	* Bookmarks.subproj/IFBookmark.h,
13579	* Bookmarks.subproj/IFBookmark.m:
13580	(+[IFBookmark bookmarkOfType:]): New method.
13581
13582	* Bookmarks.subproj/IFBookmarkLeaf.m:
13583	(-[IFBookmarkLeaf init]): start out with a non-nil _entry
13584	(-[IFBookmarkLeaf setTitle:]): added assert
13585	(-[IFBookmarkLeaf setURLString:]): added assert
13586
13587	* History.subproj/IFURLsWithTitles.h,
13588	* History.subproj/IFURLsWithTitles.m:
13589	(+[IFURLsWithTitles arrayWithIFURLsWithTitlesPboardType]),
13590	(+[IFURLsWithTitles writeURLs:andTitles:toPasteboard:]),
13591	(+[IFURLsWithTitles titlesFromPasteboard:]),
13592	(+[IFURLsWithTitles URLsFromPasteboard:]):
13593	New file with methods for reading/writing pasteboard entry representing
13594	a list of URLs with associated titles. Used by Bookmarks window and
13595	History window in Alexander.
13596
13597	* History.subproj/IFWebHistoryPrivate.m:
13598	(-[IFWebHistoryPrivate removeEntryForURLString:]): refactored to turn a
13599	WEBKITDEBUG into a more-appropriate WEBKIT_ASSERT.
13600
13601	* WebKit.pbproj/project.pbxproj: Updated for new files.
13602
136032002-06-13  Kenneth Kocienda  <kocienda@apple.com>
13604
13605        Fixed typo in ChangeLog comment.
13606
136072002-06-13  Kenneth Kocienda  <kocienda@apple.com>
13608
13609        Fixed uninitialized variable that broke the build.
13610
13611	* WebView.subproj/IFMainURLHandleClient.mm:
13612	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:])
13613
136142002-06-13  Richard Williamson  <rjw@apple.com>
13615
13616    Lots of cleanup.  Fixed most regressions.
13617    Added removal of scrollbars during resizing,
13618    not sure if it's the correct behavior, but it makes resizing
13619    much smoother.  Let's see what people think.
13620    
13621	* WebView.subproj/IFDynamicScrollBarsView.h:
13622	* WebView.subproj/IFDynamicScrollBarsView.m:
13623	(-[IFDynamicScrollBarsView initWithFrame:]):
13624	(-[IFDynamicScrollBarsView reflectScrolledClipView:]):
13625	(-[IFDynamicScrollBarsView updateScrollers]):
13626	(-[IFDynamicScrollBarsView setCursor:]):
13627	(-[IFDynamicScrollBarsView setAllowsScrolling:]):
13628	(-[IFDynamicScrollBarsView allowsScrolling]):
13629	* WebView.subproj/IFHTMLView.mm:
13630	(-[IFHTMLView provisionalDataSourceChanged:]):
13631	(-[IFHTMLView provisionalDataSourceCommitted:]):
13632	(-[IFHTMLView viewWillStartLiveResize]):
13633	(-[IFHTMLView viewDidEndLiveResize]):
13634	* WebView.subproj/IFHTMLViewPrivate.h:
13635	* WebView.subproj/IFHTMLViewPrivate.mm:
13636	(-[IFHTMLViewPrivate dealloc]):
13637	(-[IFHTMLView _provisionalWidget]):
13638	* WebView.subproj/IFWebFramePrivate.mm:
13639	(-[IFWebFrame _timedLayout:]):
13640	(-[IFWebFrame _isLoadComplete]):
13641	* WebView.subproj/IFWebView.h:
13642	* WebView.subproj/IFWebView.mm:
13643	(-[IFWebView initWithFrame:]):
13644	(-[IFWebView setAllowsScrolling:]):
13645	(-[IFWebView allowsScrolling]):
13646	(-[IFWebView frameScrollView]):
13647	(-[IFWebView documentView]):
13648	(+[IFWebView createViewForMIMEType:]):
13649	(-[IFWebView isOpaque]):
13650	(-[IFWebView drawRect:]):
13651	* WebView.subproj/IFWebViewPrivate.h:
13652	* WebView.subproj/IFWebViewPrivate.mm:
13653	(-[IFWebViewPrivate dealloc]):
13654	(-[IFWebView _setDocumentView:]):
13655
136562002-06-13  Chris Blumenberg  <cblu@apple.com>
13657
13658	Removed MIME.subproj. Moved IFDownloadHandler to Misc.
13659
13660	* MIME.subproj/IFDownloadHandler.h: Removed.
13661	* MIME.subproj/IFDownloadHandler.mm: Removed.
13662	* Misc.subproj/IFDownloadHandler.h: Added.
13663	* Misc.subproj/IFDownloadHandler.mm: Added.
13664	(-[IFDownloadHandler initWithDataSource:]):
13665	(-[IFDownloadHandler dealloc]):
13666	(-[IFDownloadHandler receivedData:isComplete:]):
13667	(-[IFDownloadHandler cancel]):
13668	* WebKit.pbproj/project.pbxproj:
13669
136702002-06-13  Chris Blumenberg  <cblu@apple.com>
13671
13672	Fixed downloads.
13673	Now write out download files as data comes in.
13674	Removed useless lproj's.
13675
13676	* Dutch.lproj/InfoPlist.strings: Removed.
13677	* Dutch.lproj/Localizable.strings: Removed.
13678	* French.lproj/InfoPlist.strings: Removed.
13679	* French.lproj/Localizable.strings: Removed.
13680	* German.lproj/InfoPlist.strings: Removed.
13681	* German.lproj/Localizable.strings: Removed.
13682	* Italian.lproj/InfoPlist.strings: Removed.
13683	* Italian.lproj/Localizable.strings: Removed.
13684	* Japanese.lproj/InfoPlist.strings: Removed.
13685	* Japanese.lproj/Localizable.strings: Removed.
13686	* MIME.subproj/IFDownloadHandler.h:
13687	* MIME.subproj/IFDownloadHandler.mm:
13688	(-[IFDownloadHandler dealloc]):
13689	(-[IFDownloadHandler receivedData:isComplete:]): added
13690	(-[IFDownloadHandler cancel]): added
13691	* Spanish.lproj/InfoPlist.strings: Removed.
13692	* Spanish.lproj/Localizable.strings: Removed.
13693	* WebKit.pbproj/project.pbxproj:
13694	* WebView.subproj/IFMainURLHandleClient.h:
13695	* WebView.subproj/IFMainURLHandleClient.mm:
13696	(-[IFMainURLHandleClient initWithDataSource:]): removed unused BOOL
13697	(-[IFMainURLHandleClient dealloc]): 
13698	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
13699	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
13700	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
13701	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
13702
137032002-06-12  Chris Blumenberg  <cblu@apple.com>
13704
13705	Couldn't run ChangeLog because it hung with the massize diffs, so here's
13706	a hand-made one.
13707	
13708	Changes to support inline views.
13709
13710	Modified Files:
13711
13712	WebKit/ChangeLog WebKit/Plugins.subproj/IFNullPluginView.mm
13713	WebKit/Plugins.subproj/IFPluginDatabase.h
13714	WebKit/Plugins.subproj/IFPluginDatabase.m
13715	WebKit/Plugins.subproj/IFPluginView.mm   
13716	WebKit/WebCoreSupport.subproj/IFImageRenderer.h
13717	WebKit/WebCoreSupport.subproj/IFWebCoreViewFactory.m
13718	WebKit/WebKit.pbproj/project.pbxproj
13719	WebKit/WebView.subproj/IFDOMNode.mm 
13720	WebKit/WebView.subproj/IFDynamicScrollBarsView.m
13721	WebKit/WebView.subproj/IFMainURLHandleClient.h          
13722	WebKit/WebView.subproj/IFMainURLHandleClient.mm
13723	WebKit/WebView.subproj/IFRenderNode.mm  
13724	WebKit/WebView.subproj/IFWebController.h
13725	WebKit/WebView.subproj/IFWebController.mm 
13726	WebKit/WebView.subproj/IFWebControllerPrivate.h
13727	WebKit/WebView.subproj/IFWebControllerPrivate.mm
13728	WebKit/WebView.subproj/IFWebDataSource.h
13729	WebKit/WebView.subproj/IFWebDataSource.mm
13730	WebKit/WebView.subproj/IFWebDataSourcePrivate.h
13731	WebKit/WebView.subproj/IFWebDataSourcePrivate.mm
13732	WebKit/WebView.subproj/IFWebFrame.mm
13733	WebKit/WebView.subproj/IFWebFramePrivate.h
13734	WebKit/WebView.subproj/IFWebFramePrivate.mm
13735	WebKit/WebView.subproj/IFWebView.h
13736	WebKit/WebView.subproj/IFWebView.mm   
13737	WebKit/WebView.subproj/IFWebViewPrivate.h 
13738	WebKit/WebView.subproj/IFWebViewPrivate.mm
13739	
13740 	Added Files:
13741 	
13742	WebKit/Misc.subproj/IFNSViewExtras.h
13743	WebKit/Misc.subproj/IFNSViewExtras.m
13744	WebKit/WebView.subproj/IFDocument.h
13745	WebKit/WebView.subproj/IFHTMLRepresentation.h           
13746	WebKit/WebView.subproj/IFHTMLRepresentation.mm 
13747	WebKit/WebView.subproj/IFHTMLView.h     
13748	WebKit/WebView.subproj/IFHTMLView.mm
13749	WebKit/WebView.subproj/IFHTMLViewPrivate.h
13750	WebKit/WebView.subproj/IFHTMLViewPrivate.mm
13751	WebKit/WebView.subproj/IFImageRepresentation.h  
13752	WebKit/WebView.subproj/IFImageRepresentation.m
13753	WebKit/WebView.subproj/IFImageView.h
13754	WebKit/WebView.subproj/IFImageView.m
13755	WebKit/WebView.subproj/IFTextRepresentation.h   
13756	WebKit/WebView.subproj/IFTextRepresentation.m
13757	WebKit/WebView.subproj/IFTextView.h
13758	WebKit/WebView.subproj/IFTextView.m
13759	
13760	Removed Files:
13761
13762	WebKit/MIME.subproj/IFContentHandler.h
13763	WebKit/MIME.subproj/IFContentHandler.m    
13764	WebKit/MIME.subproj/IFMIMEHandler.h
13765	WebKit/MIME.subproj/IFMIMEHandler.m
13766        
13767
137682002-06-12  Kenneth Kocienda  <kocienda@apple.com>
13769
13770	* Misc.subproj/WebKitDebug.h: Made assertion failure console message bolder and easier to see.
13771
137722002-06-11  Darin Adler  <darin@apple.com>
13773
13774	* WebView.subproj/IFMainURLHandleClient.mm:
13775	Add lots of assertions that allowed me to find the "leak the world" bug that Ken
13776	fixed in WebFoundation. These are a good idea anyway.
13777
13778	* Plugins.subproj/IFPluginStream.mm:
13779	(-[IFPluginStream initWithURL:pluginPointer:notifyData:attributes:]): Use cStringLength
13780	to get the length for the cString rather than assuming that length will be right.
13781	(-[IFPluginStream IFURLHandle:didRedirectToURL:]): Add a FIXME.
13782
137832002-06-11  John Sullivan  <sullivan@apple.com>
13784
13785	Made methods that convert bookmarks to and from
13786	property-list-compatible dictionaries public so they
13787	can be used in the Bookmarks window for cut/paste.
13788
13789	* Bookmarks.subproj/IFBookmark.h:
13790	* Bookmarks.subproj/IFBookmark.m:
13791	(+[IFBookmark bookmarkFromDictionaryRepresentation:withGroup:]): New method
13792
13793	(-[IFBookmark initFromDictionaryRepresentation:withGroup:]):
13794	(-[IFBookmark dictionaryRepresentation]):
13795	* Bookmarks.subproj/IFBookmarkGroup.m:
13796	(-[IFBookmarkGroup _loadBookmarkGroupGuts]):
13797	(-[IFBookmarkGroup _saveBookmarkGroupGuts]):
13798	* Bookmarks.subproj/IFBookmarkLeaf.m:
13799	(-[IFBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
13800	(-[IFBookmarkLeaf dictionaryRepresentation]):
13801	* Bookmarks.subproj/IFBookmarkList.m:
13802	(-[IFBookmarkList initFromDictionaryRepresentation:withGroup:]):
13803	(-[IFBookmarkList dictionaryRepresentation]):
13804	* Bookmarks.subproj/IFBookmarkSeparator.m:
13805	(-[IFBookmarkSeparator initFromDictionaryRepresentation:withGroup:]):
13806	(-[IFBookmarkSeparator dictionaryRepresentation]):
13807	* Bookmarks.subproj/IFBookmark_Private.h: Removed leading underscores from
13808	_initFromDictionaryRepresentation and _dictionaryRepresentation, and made
13809	them public.
13810
138112002-06-11  Darin Adler  <darin@apple.com>
13812
13813	* WebView.subproj/IFDOMNode.h: Added.
13814	* WebView.subproj/IFDOMNode.mm: Added.
13815	* WebView.subproj/IFRenderNode.h: Added.
13816	* WebView.subproj/IFRenderNode.mm: Added.
13817	These contain all the interesting bits of the code for the render
13818	and DOM tree viewers, mostly moved here from WebBrowser.
13819
13820	* WebView.subproj/IFWebViewPrivate.mm: Remove the methods in here that
13821	aren't declared in the header and are only used for the render and DOM
13822	tree viewers.
13823
13824	* WebKit.pbproj/project.pbxproj: Add new files.
13825
138262002-06-10  Darin Adler  <darin@apple.com>
13827
13828	* Makefile.am: Do a clean before building if the force-clean-timestamp file is
13829	newer than the previous-clean-timestamp. Edit force-clean-timestamp (doesn't
13830	matter what you change as long as you change it) to force a clean build in WebKit.
13831	* force-clean-timestamp: Added.
13832	* .cvsignore: Ignore previous-clean-timestamp.
13833
138342002-06-10  Darin Adler  <darin@apple.com>
13835
13836	* WebCoreSupport.subproj/IFTextRenderer.h: Remove the flavor of
13837	floatWidthForCharacters without the applyRounding boolean.
13838
13839	* WebCoreSupport.subproj/IFTextRenderer.m:
13840	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]): Remove logic about
13841	characters in the 0x7F-0xA0 range, since it's already handled by the time we get
13842	around to drawing.
13843	(-[IFTextRenderer floatWidthForCharacters:length:applyRounding:]): Pass in the
13844	applyRounding boolean when calling through to slowFloatWidthForCharacters.
13845	Move logic about characters in the 0x7F-0xA0 range from here into
13846	[extendCharacterToGlyphMapToInclude:].
13847	(-[IFTextRenderer widthForCharacters:length:]): Call the version of
13848	floatWidthForCharacters that takes the applyRounding parameter; this was the only
13849	client of the flavor that didn't take the parameter.
13850	(-[IFTextRenderer extendCharacterToGlyphMapToInclude:]): Add the logic about
13851	characters in the 0x7F-0xA0 range into here.
13852
138532002-06-10  Richard Williamson  <rjw@apple.com>
13854
13855    Tweaks to rounding code.  
13856    
13857    Added Cocoa-exact width measurement emulation flag to support IFStringTruncator.
13858    
13859    Remove code that was already conditionally excluded calls to support
13860    non-specified advance drawing (we now depend on tweaked advances).
13861    
13862	* Misc.subproj/IFStringTruncator.m:
13863	(+[IFStringTruncator centerTruncateString:toWidth:withFont:]):
13864	* WebCoreSupport.subproj/IFTextRenderer.h:
13865	* WebCoreSupport.subproj/IFTextRenderer.m:
13866	(-[IFTextRenderer initWithFont:]):
13867	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
13868	(-[IFTextRenderer slowFloatWidthForCharacters:length:applyRounding:]):
13869	(-[IFTextRenderer slowFloatWidthForCharacters:length:]):
13870	(-[IFTextRenderer floatWidthForCharacters:length:applyRounding:]):
13871	(-[IFTextRenderer floatWidthForCharacters:length:]):
13872	(-[IFTextRenderer extendCharacterToGlyphMapToInclude:]):
13873
138742002-06-10  Darin Adler  <darin@apple.com>
13875
13876	* WebCoreSupport.subproj/IFCachedTextRenderer.m: Removed.
13877
138782002-06-10  John Sullivan  <sullivan@apple.com>
13879
13880	Fixed leaks in History mechanism, found by overriding
13881	release, retain, autorelease, and dealloc and watching
13882	the spam fly.
13883
13884	* History.subproj/IFWebHistoryPrivate.m:
13885	(-[IFWebHistoryPrivate addEntry:]): Make autoreleased array for
13886	entries on a given date.
13887	(-[IFWebHistoryPrivate _loadHistoryGuts:]): autorelease entries
13888	as they are generated from data on disk.
13889
138902002-06-10  Darin Adler  <darin@apple.com>
13891
13892	* WebCoreSupport.subproj/IFTextRenderer.m:
13893	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
13894	Fix a typo where I left the S off of DRAW_WITHOUT_ADVANCES.
13895
138962002-06-10  Richard Williamson  <rjw@apple.com>
13897
13898    90% solution to round-off problem.  khtml breaks measures text on space
13899    boundaries during layout.  It assumes integer measurement, CG uses float
13900    measurements.  Some common fonts have non-integer space width.  So, 
13901    differences in between drawing advances and measurement of space characters
13902    can easily accumulate enough to be visually apparent.  We may still accumulate
13903    differences across words, although it's much less visible than for spaces.
13904    As a next step we can fudge the advances of words to force
13905    integer widths, although I think, given how khtml work, just accounting for
13906    consistency in measuring and drawing spaces may be sufficient.
13907    Many sites that looked flaky before now render correctly.
13908    
13909	* WebCoreSupport.subproj/IFTextRenderer.m:
13910	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
13911	
13912	Force rounding of advance for space characters.
13913	
13914	(-[IFTextRenderer floatWidthForCharacters:length:]):
13915
13916	Force rounding of measurement for space characters.
13917
139182002-06-09  John Sullivan  <sullivan@apple.com>
13919
13920	WebKit part of fix for 2949646 (Can't drag & drop bookmarks
13921	into auto-expanded folder). To get this to work right, I gave
13922	each bookmark a unique (per-session) identifier.
13923
13924	While working on this, I found and fixed some leaks of bookmarks.
13925
13926	* Bookmarks.subproj/IFBookmark.h:
13927	New -[identifier] method and _identifier ivar.
13928
13929	* Bookmarks.subproj/IFBookmark.m:
13930	(+[IFBookmark _generateUniqueIdentifier]):
13931	(-[IFBookmark init]):
13932	(-[IFBookmark dealloc]):
13933	Remember unique identifier in each bookmark as it is created;
13934	delete when dealloc'd.
13935
13936	(-[IFBookmark identifier]): Return unique identifier.
13937
13938	(-[IFBookmark _setParent:]): Don't retain parent, to avoid
13939	circular ownership.
13940
13941	(-[IFBookmark _setGroup:]): Tell coming and going group.
13942
13943	* Bookmarks.subproj/IFBookmarkGroup.h:
13944	New +[bookmarkForIdentifier] method and _bookmarksByID ivar.
13945
13946	* Bookmarks.subproj/IFBookmarkGroup_Private.h:
13947	Declarations of _removedBookmark: and _addedBookmark:
13948	* Bookmarks.subproj/IFBookmarkGroup.m:
13949	(-[IFBookmarkGroup initWithFile:]): alloc _bookmarksByID.
13950	(-[IFBookmarkGroup dealloc]): release _bookmarksByID.
13951	(-[IFBookmarkGroup _setTopBookmark:]): Don't bail out early;
13952	would now cause leak.
13953	(-[IFBookmarkGroup _removedBookmark:]): New method, removes
13954	bookmark from _bookmarksByID.
13955	(-[IFBookmarkGroup _addedBookmark:]): New method, adds bookmark to
13956	_bookmarksByID.
13957	(-[IFBookmarkGroup bookmarkForIdentifier:]): Looks up bookmark from
13958	_bookmarksByID dictionary.
13959	(-[IFBookmarkGroup _loadBookmarkGroupGuts]): autorelease newTopbookmark; 
13960	this had been leaking.
13961
13962	* Bookmarks.subproj/IFBookmarkList.m:
13963	(-[IFBookmarkList _initFromDictionaryRepresentation:withGroup:]):
13964	autorelease children before adding them to parent; this had been leaking.
13965
139662002-06-09  Darin Adler  <darin@apple.com>
13967
13968	* WebCoreSupport.subproj/IFTextRenderer.m:
13969	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
13970	Fixed a possible uninitialized variable problem that the compiler and Don caught.
13971
139722002-06-09  Darin Adler  <darin@apple.com>
13973
13974	* WebCoreSupport.subproj/IFTextRenderer.m:
13975	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
13976	Add code to handle drawing when are more than LOCAL_GLYPH_BUFFER_SIZE advances.
13977	I ran into this loading <http://jersey.apple.com/data/20020606-074404M0.html>.
13978	Also fix handling of advances for the obscure case where we hit a non-base character,
13979	slowPackGlyphsForCharacters fails, and substituteFontforCharacters returns nil.
13980
139812002-06-07  Darin Adler  <darin@apple.com>
13982
13983	* Makefile.am: Use new shared "embed.am" file so we don't need four copies of
13984	the embedding rules for WebFoundation, JavaScriptCore, WebCore, and WebKit.
13985
139862002-06-07  Darin Adler  <darin@apple.com>
13987
13988	* MIME.subproj/IFContentHandler.m: (-[IFContentHandler HTMLDocument]):
13989	Fix a warning that shows up with the new C++ compiler (not sure why it
13990	is not showing up with the old one).
13991
139922002-06-07  Chris Blumenberg  <cblu@apple.com>
13993	
13994	Allow plug-ins to make a NPP_*URLNotify request when
13995	the target is _self, _top, _parent or _current. This goes
13996	against the plug-in documentation, but mimics IE.
13997	Need for iTools.
13998
13999	* Plugins.subproj/IFPluginView.mm:
14000	(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
14001
140022002-06-07  Darin Adler  <darin@apple.com>
14003
14004	* WebKit.pbproj/project.pbxproj: Don't use any warning flags for C that won't work
14005	for C++, because PFE uses the C warning flags on a C++ compile.
14006
140072002-06-07  Chris Blumenberg  <cblu@apple.com>
14008
14009	Made IFWebController a class.
14010        Fixed all places where IFWebController was referred to as a protocol.
14011        Renamed IFBaseWebController files to IFWebController.
14012        IFWebController.h replaces IFWebBaseController.h.
14013
14014	Added support for IEPL plug-ins.
14015
14016	* Panels.subproj/IFStandardPanels.m:
14017	(-[IFStandardPanels _didStartLoadingURL:inController:]):
14018	(-[IFStandardPanels _didStopLoadingURL:inController:]):
14019	* Panels.subproj/IFStandardPanelsPrivate.h:
14020	* Plugins.subproj/IFNullPluginView.mm:
14021	(-[IFNullPluginView drawRect:]):
14022	* Plugins.subproj/IFPlugin.h:
14023	* Plugins.subproj/IFPlugin.m:
14024	(-[IFPlugin _getPluginInfoForResourceFile:]):
14025	(-[IFPlugin initWithPath:]):
14026	(-[IFPlugin load]):
14027	(-[IFPlugin description]):
14028	* Plugins.subproj/IFPluginStream.mm:
14029	(-[IFPluginStream IFURLHandleResourceDidBeginLoading:]):
14030	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
14031	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
14032	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
14033	(-[IFPluginStream IFURLHandle:didRedirectToURL:]):
14034	* Plugins.subproj/IFPluginView.h:
14035	* Plugins.subproj/IFPluginView.mm:
14036	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
14037	(-[IFPluginView webController]):
14038	* WebKit.pbproj/project.pbxproj:
14039	* WebView.subproj/IFBaseWebController.h: Removed.
14040	* WebView.subproj/IFBaseWebController.mm: Removed.
14041	* WebView.subproj/IFBaseWebControllerPrivate.h: Removed.
14042	* WebView.subproj/IFBaseWebControllerPrivate.mm: Removed.
14043	* WebView.subproj/IFMainURLHandleClient.mm:
14044	(-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]):
14045	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
14046	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
14047	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
14048	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
14049	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
14050	* WebView.subproj/IFWebController.h:
14051	* WebView.subproj/IFWebController.mm: Added.
14052	(-[IFWebController init]):
14053	(-[IFWebController initWithView:provisionalDataSource:]):
14054	(-[IFWebController dealloc]):
14055	(-[IFWebController setDirectsAllLinksToSystemBrowser:]):
14056	(-[IFWebController directsAllLinksToSystemBrowser]):
14057	(-[IFWebController createFrameNamed:for:inParent:inScrollView:]):
14058	(-[IFWebController setStatusText:forDataSource:]):
14059	(-[IFWebController statusTextForDataSource:]):
14060	(-[IFWebController openNewWindowWithURL:]):
14061	(-[IFWebController receivedProgress:forResource:fromDataSource:]):
14062	(-[IFWebController receivedError:forResource:partialProgress:fromDataSource:]):
14063	(-[IFWebController provideLocationChangeHandlerForFrame:]):
14064	(-[IFWebController receivedPageTitle:forDataSource:]):
14065	(-[IFWebController serverRedirectTo:forDataSource:]):
14066	(-[IFWebController _frameForDataSource:fromFrame:]):
14067	(-[IFWebController frameForDataSource:]):
14068	(-[IFWebController _frameForView:fromFrame:]):
14069	(-[IFWebController frameForView:]):
14070	(-[IFWebController frameNamed:]):
14071	(-[IFWebController mainFrame]):
14072	(-[IFWebController pluginNotFoundForMIMEType:pluginPageURL:]):
14073	(-[IFWebController provideLocationChangeHandlerForFrame:andURL:]):
14074	(-[IFWebController URLPolicyForURL:]):
14075	(-[IFWebController unableToImplementURLPolicyForURL:error:]):
14076	(-[IFWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
14077	(-[IFWebController stopAnimatedImages]):
14078	(-[IFWebController startAnimatedImages]):
14079	(-[IFWebController stopAnimatedImageLooping]):
14080	(-[IFWebController startAnimatedImageLooping]):
14081	* WebView.subproj/IFWebControllerPrivate.h: Added.
14082	* WebView.subproj/IFWebControllerPrivate.mm: Added.
14083	(-[IFWebControllerPrivate init]):
14084	(-[IFWebControllerPrivate _clearControllerReferences:]):
14085	(-[IFWebControllerPrivate dealloc]):
14086	(-[IFWebController _receivedProgress:forResource:fromDataSource:]):
14087	(-[IFWebController _mainReceivedProgress:forResource:fromDataSource:]):
14088	(-[IFWebController _receivedError:forResource:partialProgress:fromDataSource:]):
14089	(-[IFWebController _mainReceivedError:forResource:partialProgress:fromDataSource:]):
14090	(-[IFWebController _didStartLoading:]):
14091	(-[IFWebController _didStopLoading:]):
14092	* WebView.subproj/IFWebDataSource.h:
14093	* WebView.subproj/IFWebDataSource.mm:
14094	(-[IFWebDataSource controller]):
14095	* WebView.subproj/IFWebDataSourcePrivate.h:
14096	* WebView.subproj/IFWebDataSourcePrivate.mm:
14097	(-[IFWebDataSource _setController:]):
14098	* WebView.subproj/IFWebFrame.h:
14099	* WebView.subproj/IFWebFrame.mm:
14100	(-[IFWebFrame initWithName:view:provisionalDataSource:controller:]):
14101	(-[IFWebFrame controller]):
14102	(-[IFWebFrame setController:]):
14103	(-[IFWebFrame frameNamed:]):
14104	* WebView.subproj/IFWebFramePrivate.h:
14105	* WebView.subproj/IFWebFramePrivate.mm:
14106	(-[IFWebFramePrivate setController:]):
14107	(-[IFWebFrame _setController:]):
14108	* WebView.subproj/IFWebView.h:
14109	* WebView.subproj/IFWebView.mm:
14110	(-[IFWebView controller]):
14111	* WebView.subproj/IFWebViewPrivate.h:
14112	* WebView.subproj/IFWebViewPrivate.mm:
14113	(-[IFWebView _setController:]):
14114
14115=== Alexander-8 ===
14116
141172002-06-06  Darin Adler  <darin@apple.com>
14118
14119	* WebKit.pbproj/project.pbxproj: Update warning flags for compatibility
14120	with new C++.
14121
14122	* WebCoreSupport.subproj/IFTextRenderer.m: (FillStyleWithAttributes):
14123	Remove workaround we copied from AppKit, because it's a workaround for
14124	a bug that was fixed in Puma.
14125
141262002-06-06  Chris Blumenberg  <cblu@apple.com>
14127
14128	Added support for key codes and other encodings.
14129	Send activate to make Java happy.
14130
14131	* Plugins.subproj/IFPluginView.mm:
14132	(-[IFPluginView keyMessageForEvent:]): added
14133	(-[IFPluginView keyUp:]): use above.
14134	(-[IFPluginView keyDown:]): use above.
14135	(-[IFPluginView windowBecameKey:]): send activate.
14136	(-[IFPluginView windowResignedKey:]): send activate.
14137
141382002-06-06  John Sullivan  <sullivan@apple.com>
14139
14140	* Bookmarks.subproj/IFBookmarkList.m:
14141	(-[IFBookmarkList removeChild:]):
14142	(-[IFBookmarkList insertChild:atIndex:]):
14143	* ChangeLog:
14144
141452002-06-06  John Sullivan  <sullivan@apple.com>
14146
14147	* Bookmarks.subproj/IFBookmarkList.m:
14148	(-[IFBookmarkList removeChild:]): Added assert.
14149	(-[IFBookmarkList insertChild:atIndex:]): Set the group of
14150	the new child, and added assert.
14151
141522002-06-06  Darin Adler  <darin@apple.com>
14153
14154	* MIME.subproj/IFContentHandler.m:
14155	(-[IFContentHandler initWithURL:MIMEType:MIMEHandlerType:]): Add call to
14156	[super init].
14157	(-[IFContentHandler useTemplate:withGlobal:]): New helper function.
14158	Also got rid of <title> from templates, since there's no need for us to
14159	provide a fake title if it's just the URL.
14160	(-[IFContentHandler HTMLDocument]): Reduce use of copied and pasted code.
14161	(-[IFContentHandler dealloc]): Add call to [super dealloc].
14162
14163	* Resources/image_document_template.html: Remove <title>.
14164	* Resources/plugin_document_template.html: Remove <title>.
14165	* Resources/text_document_template.html: Remove <title>.
14166
14167	* WebView.subproj/IFMainURLHandleClient.mm:
14168	(-[IFMainURLHandleClient processData:isComplete:allDataReceived:]):
14169	Remove some unneeded type casts.
14170
141712002-06-05  Maciej Stachowiak  <mjs@apple.com>
14172
14173	Fixed Radar 2936155 - crash in IFAuthenticationPanel
14174	
14175	* Panels.subproj/IFAuthenticationPanel.m:
14176	(-[IFAuthenticationPanel runAsSheetOnWindow:withRequest:]): Add
14177	some assertions.
14178	
14179	(-[IFAuthenticationPanel sheetDidEnd:returnCode:contextInfo:]):
14180	Avoid referencing instance variables after performing a selector
14181	that might release this object. Also, add some assertions.
14182
14183	* Panels.subproj/IFPanelAuthenticationHandler.m:
14184	(-[IFPanelAuthenticationHandler startAuthentication:]): Tweak
14185	whitespace.
14186
141872002-06-05  Richard Williamson  <rjw@apple.com>
14188
14189    Fixed snafu in recursion over frame tree.
14190    
14191	* WebView.subproj/IFWebFrame.mm:
14192	(+[IFWebFrame _frameNamed:fromFrame:]):
14193	(-[IFWebFrame frameNamed:]):
14194
141952002-06-05  Richard Williamson  <rjw@apple.com>
14196
14197    Normalized frame naming.  (We still don't support cross
14198    window name lookups.)
14199    
14200	* WebView.subproj/IFBaseWebController.mm:
14201	(-[IFBaseWebController frameNamed:]):
14202	* WebView.subproj/IFWebFrame.mm:
14203	(-[IFWebFrame frameNamed:]):
14204
142052002-06-04  Chris Blumenberg  <cblu@apple.com>
14206
14207	* MIME.subproj/IFDownloadHandler.mm: Use public methods
14208	* WebView.subproj/IFWebDataSource.h: Made downloadPath public
14209	* WebView.subproj/IFWebDataSource.mm:
14210	(-[IFWebDataSource downloadPath]):
14211	* WebView.subproj/IFWebDataSourcePrivate.h:
14212	* WebView.subproj/IFWebDataSourcePrivate.mm:
14213
142142002-06-04  Richard Williamson  <rjw@apple.com>
14215
14216    More exclusion for pre 6C48.
14217
14218	* ChangeLog:
14219	* WebCoreSupport.subproj/IFImageRenderer.m:
14220	(-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
14221	* WebCoreSupport.subproj/IFImageRendererFactory.m:
14222	(-[IFImageRendererFactory imageRenderer]):
14223
142242002-06-04  Richard Williamson  <rjw@apple.com>
14225
14226    Oops, excluded even more code for < 6C48.
14227    
14228	* WebCoreSupport.subproj/IFImageRenderer.m:
14229	(-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
14230
142312002-06-04  Kenneth Kocienda  <kocienda@apple.com>
14232
14233	* Misc.subproj/WebKitDebug.h: Added a line of stderr output into 
14234        the assertion failure code so that we have some idea of what happened.
14235
142362002-06-04  Richard Williamson  <rjw@apple.com>
14237
14238    Excluded call to new API until everyone has moved to >= 6C48.
14239    
14240	* WebCoreSupport.subproj/IFImageRenderer.m:
14241	(-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
14242
142432002-06-04  Richard Williamson  <rjw@apple.com>
14244
14245    Changes to support progressive image loading.  Currently disabled
14246    until 2945218 is fixed.
14247
14248	* WebCoreSupport.subproj/IFImageRenderer.h:
14249	* WebCoreSupport.subproj/IFImageRenderer.m:
14250	* WebCoreSupport.subproj/IFImageRendererFactory.m:
14251
142522002-06-04  Darin Adler  <darin@apple.com>
14253
14254	- fixed 2932862 -- exception -[NSCFArray getObjects:range:]: index (137)
14255	beyond bounds (10)
14256
14257	* WebView.subproj/IFWebViewPrivate.mm:
14258	(-[IFWebView _stopPlugins]):
14259	(-[IFWebView _removeSubviews]):
14260	Make a copy of the subviews list so that changes to the list don't screw
14261	up the iterating logic.
14262
142632002-06-04  John Sullivan  <sullivan@apple.com>
14264
14265	Made changes here while working on Undo for removing history entries.
14266
14267	* History.subproj/IFWebHistory.h:
14268	New methods addEntries: and removeEntries:, deleted method
14269	removeEntriesForDay: (use removeEntries: instead).
14270
14271	* History.subproj/IFWebHistory.m:
14272	(-[IFWebHistory addEntries:]),
14273	(-[IFWebHistory removeEntries:]): New methods, each takes an array of
14274	entries. Useful for doing multiple things at a time to minimize
14275	notifications.
14276	(-[IFWebHistory removeEntriesForDay:]): deleted this now-unnecessary method.
14277	* History.subproj/IFWebHistoryPrivate.h:
14278	* History.subproj/IFWebHistoryPrivate.m:
14279	(-[IFWebHistoryPrivate removeEntries:]):
14280	(-[IFWebHistoryPrivate removeAllEntries]):
14281	(-[IFWebHistoryPrivate addEntries:]): Private implementations for the
14282	public changes.
14283
142842002-06-04  Darin Adler  <darin@apple.com>
14285
14286	- fixed 2943513 -- move StringTruncator into WebKit from WebBrowser so we
14287	don't need text measuring API exported
14288
14289	* WebKit.pbproj/project.pbxproj: No longer export the text renderer headers
14290	as Private.
14291
142922002-06-04  Darin Adler  <darin@apple.com>
14293
14294	* WebKit.pbproj/project.pbxproj: Exported IFStringTruncator.h as Private.
14295
142962002-06-04  Darin Adler  <darin@apple.com>
14297
14298	Moved the string truncator class here from WebBrowser so we don't have to
14299	export our text machinery.
14300
14301	* WebKit.pbproj/project.pbxproj:
14302	* Misc.subproj/IFStringTruncator.h: Added.
14303	* Misc.subproj/IFStringTruncator.m: Added.
14304
143052002-06-03  Darin Adler  <darin@apple.com>
14306
14307	* WebCoreSupport.subproj/IFImageRenderer.m:
14308	(-[IFImageRenderer beginAnimationInView:inRect:fromRect:]): Remove the "fix"
14309	for the nonexistent storage leak. Richard showed me the error of my ways.
14310
143112002-06-03  John Sullivan  <sullivan@apple.com>
14312
14313	Richard told me which line to change to fix 2944237
14314	(Stop item in View menu enabled on startup if you have
14315	no home page.)
14316
14317	* WebView.subproj/IFWebDataSource.mm:
14318	(-[IFWebDataSource isLoading]):
14319	Don't return YES if !_private->loading.
14320
143212002-06-01  Darin Adler  <darin@apple.com>
14322
14323	* WebCoreSupport.subproj/IFImageRenderer.m:
14324	(-[IFImageRenderer beginAnimationInView:inRect:fromRect:]):
14325	Remove an assert I added, since it is firing, and instead fixed the storage leak
14326	that inspired me to put the assert in.
14327
143282002-05-31  Darin Adler  <darin@apple.com>
14329
14330	* WebView.subproj/IFWebViewPrivate.mm: Add include to prepare for change to WebCore
14331	that will make it required.
14332
143332002-05-31  Darin Adler  <darin@apple.com>
14334
14335	* WebCoreSupport.subproj/IFImageRenderer.h: Fixed the line endings (they were
14336	Macintosh CRs instead of Unix LFs). Also made all the methods be private for
14337	now since there's no need to have them be public.
14338
14339	* WebCoreSupport.subproj/IFImageRenderer.m: Fixed the line endings (they were
14340	Macintosh CRs instead of Unix LFs). Some minor code tweaks too sharing a bit
14341	more code.
14342
14343	* WebCoreSupport.subproj/IFImageRendererFactory.m:
14344	(-[IFImageRendererFactory imageRendererWithSize:]): Return an IFImageRenderer
14345	rather than just an NSImage, since an NSImage does not satisfy WebCoreImageRenderer.
14346
143472002-05-31  Darin Adler  <darin@apple.com>
14348
14349	* Misc.subproj/WebKitDebug.h: Use displayableString in DEBUG_OBJECT
14350	for nicer logging.
14351
14352	* WebView.subproj/IFWebView.mm:
14353	(-[IFWebView keyDown:]):
14354	(-[IFWebView keyUp:]):
14355	Use DEBUG_OBJECT so we don't get exceptions when the key characters
14356	are not simple ASCII characters.
14357
143582002-05-30  Richard Williamson  <rjw@apple.com>
14359
14360    API and comment cleanup.
14361    
14362	* WebView.subproj/IFWebFrame.h:
14363	* WebView.subproj/IFWebFrame.mm:
14364	(-[IFWebFrame setProvisionalDataSource:]):
14365
143662002-05-30  Maciej Stachowiak  <mjs@apple.com>
14367
14368	WebKit parts of fixes for:
14369
14370	Radar 2926169 - no support for window.open
14371	Radar 2890469 - Preference to prevent JavaScript from automatically
14372	opening new windows doesn't work
14373	Radar 2938569 - link cursor does not appear on some pages
14374	
14375	* WebView.subproj/IFWebController.h:
14376	Added openNewWindowWithURL: method for the benefit of JavaScript.
14377	* WebView.subproj/IFBaseWebController.mm:
14378	(-[IFBaseWebController openNewWindowWithURL:]): No-op default
14379	implementation.
14380	* WebView.subproj/IFDynamicScrollBarsView.h:
14381	* WebView.subproj/IFDynamicScrollBarsView.m:
14382	(-[IFDynamicScrollBarsView setCursor:]): Fix cursor handling.
14383	(-[IFDynamicScrollBarsView resetCursorRects]): Likewise.
14384	* WebView.subproj/IFWebView.mm:
14385	(-[IFWebView mouseMovedNotification:]): Likewise.
14386	(-[IFWebView setCursor:]): Likewise.
14387	* WebView.subproj/IFPreferences.h:
14388	* WebView.subproj/IFPreferences.mm:
14389	(-[IFPreferences javaScriptEnabled]): Renamed from jScriptEnabled.
14390	(-[IFPreferences setJavaScriptEnabled:]): Renamed from setJScriptEnabled.
14391	(-[IFPreferences javaScriptCanOpenWindowsAutomatically]): New method.
14392	(-[IFPreferences setJavaScriptCanOpenWindowsAutomatically:]): Likewise.
14393	* WebView.subproj/IFWebFrame.mm:
14394	(-[IFWebFrame initWithName:view:provisionalDataSource:controller:]): Create
14395	a dummy provisional data source if none is provided, so we always have a part
14396	for the frame.
14397	
143982002-05-30  Darin Adler  <darin@apple.com>
14399
14400	Use methods in KWQKHTMLPartImpl that were moved there from KHTMLPart.
14401
14402	* WebView.subproj/IFMainURLHandleClient.mm:
14403	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
14404	(-[IFMainURLHandleClient processData:isComplete:allDataReceived:]):
14405	* WebView.subproj/IFWebDataSource.mm:
14406	(-[IFWebDataSource documentText]):
14407	* WebView.subproj/IFWebDataSourcePrivate.mm:
14408	(-[IFWebDataSource _setController:]):
14409	* WebView.subproj/IFWebFramePrivate.mm:
14410	(-[IFWebFrame _isLoadComplete]):
14411	* WebView.subproj/IFWebView.mm:
14412	(-[IFWebView provisionalDataSourceChanged:]):
14413
144142002-05-30  Chris Blumenberg  <cblu@apple.com>
14415
14416	Use NSWorkspace methods instead of Launch Services and Finder functions.
14417
14418	* MIME.subproj/IFDownloadHandler.h:
14419	* MIME.subproj/IFDownloadHandler.mm:
14420	* WebView.subproj/IFWebFrame.mm:
14421	(-[IFWebFrame setProvisionalDataSource:]):
14422
144232002-05-30  Richard Williamson  <rjw@apple.com>
14424
14425    Added 'canDraw' check to ensure that we can render
14426    an image frame.
14427    
14428	* WebCoreSupport.subproj/IFImageRenderer.m:
14429
14430=== Alexander-7 ===
14431
144322002-05-29  Richard Williamson  <rjw@apple.com>
14433
14434    Changes to support animated image rendering.
14435    Moved image rendering into webkit.
14436    Still need to implement preferences stubs and
14437    start/stop stubs.
14438    
14439	* WebCoreSupport.subproj/IFImageRenderer.h: Added.
14440	* WebCoreSupport.subproj/IFImageRenderer.m: Added.
14441	* WebCoreSupport.subproj/IFImageRendererFactory.h: Added.
14442	* WebCoreSupport.subproj/IFImageRendererFactory.m: Added.
14443	(+[IFImageRendererFactory createSharedFactory]):
14444	(+[IFImageRendererFactory sharedFactory]):
14445	(-[IFImageRendererFactory imageRendererWithBytes:length:]):
14446	(-[IFImageRendererFactory imageRendererWithSize:]):
14447	* WebKit.pbproj/project.pbxproj:
14448	* WebView.subproj/IFBaseWebController.mm:
14449	(-[IFBaseWebController stopAnimatedImages]):
14450	(-[IFBaseWebController startAnimatedImages]):
14451	(-[IFBaseWebController stopAnimatedImageLooping]):
14452	(-[IFBaseWebController startAnimatedImageLooping]):
14453	* WebView.subproj/IFPreferences.h:
14454	* WebView.subproj/IFPreferences.mm:
14455	(+[IFPreferences load]):
14456	(-[IFPreferences _resourceTimedLayoutEnabled]):
14457	(-[IFPreferences allowAnimatedImages]):
14458	(-[IFPreferences allowAnimatedImageLooping]):
14459	(-[IFPreferences setAllowAnimatedImageLooping:]):
14460	* WebView.subproj/IFWebController.h:
14461	* WebView.subproj/IFWebView.mm:
14462	(-[IFWebView initWithFrame:]):
14463
144642002-05-29  Richard Williamson  <rjw@apple.com>
14465
14466    API stubs for image animation.
14467
14468	* WebKit.pbproj/project.pbxproj:
14469	* WebView.subproj/IFBaseWebController.mm:
14470	(-[IFBaseWebController stopAnimatedImages]):
14471	(-[IFBaseWebController startAnimatedImages]):
14472	(-[IFBaseWebController stopAnimatedImageLooping]):
14473	(-[IFBaseWebController startAnimatedImageLooping]):
14474	* WebView.subproj/IFPreferences.h:
14475	* WebView.subproj/IFPreferences.mm:
14476	(+[IFPreferences load]):
14477	(-[IFPreferences _resourceTimedLayoutEnabled]):
14478	(-[IFPreferences allowAnimatedImages]):
14479	(-[IFPreferences allowAnimatedImageLooping]):
14480	(-[IFPreferences setAllowAnimatedImageLooping:]):
14481	* WebView.subproj/IFWebController.h:
14482
144832002-05-29  John Sullivan  <sullivan@apple.com>
14484
14485	Removed acceptsFirstMouse override, this fixes at least:
14486
14487	2930713 -- clicking on an empty part of window to bring it to front
14488	takes focus away from page address field
14489
14490	2938028 -- Link cursor doesn't appear when browser window not
14491	frontmost, but clicks activate links
14492
14493	* WebView.subproj/IFWebView.mm:
14494
144952002-05-28  John Sullivan  <sullivan@apple.com>
14496
14497	Made -[IFBookmark group] and -[IFBookmark parent] public
14498	methods, and renamed them to not use leading underscores,
14499	as part of support for revealing a particular bookmark in
14500	the Bookmarks window.
14501
14502	* Bookmarks.subproj/IFBookmark_Private.h:
14503	removed _group and _parent.
14504
14505	* Bookmarks.subproj/IFBookmark.h:
14506	added group and parent.
14507
14508	* Bookmarks.subproj/IFBookmark.m:
14509	(-[IFBookmark parent]):
14510	(-[IFBookmark group]):
14511	* Bookmarks.subproj/IFBookmarkGroup.m:
14512	(-[IFBookmarkGroup removeBookmark:]):
14513	(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:image:URLString:type:]):
14514	* Bookmarks.subproj/IFBookmarkLeaf.m:
14515	(-[IFBookmarkLeaf copyWithZone:]):
14516	(-[IFBookmarkLeaf setTitle:]):
14517	(-[IFBookmarkLeaf setImage:]):
14518	(-[IFBookmarkLeaf setURLString:]):
14519	* Bookmarks.subproj/IFBookmarkList.m:
14520	(-[IFBookmarkList copyWithZone:]):
14521	(-[IFBookmarkList setTitle:]):
14522	(-[IFBookmarkList setImage:]):
14523	(-[IFBookmarkList removeChild:]):
14524	(-[IFBookmarkList insertChild:atIndex:]):
14525	(-[IFBookmarkList _setGroup:]):
14526	* Bookmarks.subproj/IFBookmarkSeparator.m:
14527	(-[IFBookmarkSeparator copyWithZone:]):
14528	Fixed up all references to _group and _parent to now refer to
14529	group and parent.
14530
145312002-05-28  Richard Williamson  <rjw@apple.com>
14532
14533    Backed out band-aid add to fixed malformed resources URLs.
14534
14535	* WebView.subproj/IFWebDataSourcePrivate.mm:
14536	(-[IFWebDataSource _addURLHandle:]):
14537
145382002-05-28  Chris Blumenberg  <cblu@apple.com>
14539
14540	Added support for creating a new window from a plug-in (2938004)
14541
14542	* Plugins.subproj/IFPluginView.mm:
14543	(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
14544
145452002-05-28  Chris Blumenberg  <cblu@apple.com>
14546
14547	* Plugins.subproj/IFPluginDatabase.h:
14548	* Plugins.subproj/IFPluginDatabase.m:
14549	(-[IFPluginDatabase pluginForMimeType:]): renamed
14550	(-[IFPluginDatabase pluginForExtension:]): renamed
14551	(-[IFPluginDatabase pluginForFilename:]): renamed
14552	(findPlugins):
14553	* WebCoreSupport.subproj/IFWebCoreViewFactory.m: support for above renamed
14554	(-[IFWebCoreViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
14555	(-[IFWebCoreViewFactory viewForJavaAppletWithArguments:]):
14556	* WebView.subproj/IFWebDataSourcePrivate.mm:
14557	(-[IFWebDataSource _addURLHandle:]): fix for a nil handle being added to an array
14558
145592002-05-28  Darin Adler  <darin@apple.com>
14560
14561	* WebCoreSupport.subproj/IFTextRenderer.m:
14562	(hasMissingGlyphs): Use recordSize instead of assuming records are sizeof(ATSLayoutRecord).
14563	(-[IFTextRenderer convertCharacters:length:toGlyphs:]): Free buffer after calling
14564	ATSUConvertCharToGlyphs; old code was using buffer after freeing it.
14565	(-[IFTextRenderer widthForString:]): Handle case where string is longer than
14566	LOCAL_GLYPH_BUFFER_SIZE.
14567	(-[IFTextRenderer slowPackGlyphsForCharacters:numCharacters:glyphBuffer:numGlyphs:]):
14568	(-[IFTextRenderer drawString:atPoint:withColor:]): Use recordSize instead of assuming records
14569	are sizeof(ATSLayoutRecord).
14570	(-[IFTextRenderer slowFloatWidthForCharacters:length:]): Use recordSize instead of assuming
14571	records are sizeof(ATSLayoutRecord).
14572	(-[IFTextRenderer floatWidthForCharacters:length:]): Remove extra rounding. The caller that
14573	converts the width to an integer already does the rounding.
14574	(-[IFTextRenderer extendCharacterToGlyphMapToInclude:]): Fix off by one error that caused us
14575	to include one extra character in each glyph map block. Also use recordSize instead of assuming
14576	records are sizeof(ATSLayoutRecord).
14577
145782002-05-27  John Sullivan  <sullivan@apple.com>
14579
14580	Part of fix for 2922772 -- page title & location field don't
14581	show redirected URLs.
14582
14583	* WebView.subproj/IFWebDataSource.mm:
14584	(-[IFWebDataSource wasRedirected]): Fixed this method, now that
14585	we have a client that relies on it. Its logic was backwards, and
14586	it didn't handle the null _finalURL case.
14587
145882002-05-26  Maciej Stachowiak  <mjs@apple.com>
14589
14590	Fixed Radar 936147 - debug output in console "keyUp: NSEvent: type=KeyUp"
14591
14592	* WebView.subproj/IFWebView.mm:
14593	(-[IFWebView keyDown:]): Turned NSLog into WEBKITDEBUGLEVEL.
14594	(-[IFWebView keyUp:]): Likewise.
14595
145962002-05-26  Maciej Stachowiak  <mjs@apple.com>
14597
14598	WebKit part of fix for:
14599
14600	Radar 2884085 - add support for changing cursor over links
14601
14602	Also, fix handling of mouseMoved events.
14603	
14604	* WebView.subproj/IFWebView.mm:
14605	(-[IFWebView mouseMovedNotification:]): Clip mouseMoved events to
14606	the view rect, otherwise mouseover effects might happen for
14607	elements past the edge of the window.	
14608	(-[IFWebView setCursor:]): Implement.
14609	(-[IFWebView resetCursorRects]): Implement.
14610	* WebView.subproj/IFWebViewPrivate.h:
14611	* WebView.subproj/IFWebViewPrivate.mm:
14612	(-[IFWebViewPrivate dealloc]): Added NSCursor *cursor field.
14613
146142002-05-25  Maciej Stachowiak  <mjs@apple.com>
14615
14616	* WebKit.pbproj/project.pbxproj: Link against WebCore.framework,
14617	not libwebcore.dylib.
14618
14619=== 0.3 ===
14620
146212002-05-24  Shelley A Sheridan  <sheridan@apple.com>
14622
14623	* ChangeLog:
14624
14625=== Alexander-6 ===
14626
146272002-05-23  Maciej Stachowiak  <mjs@apple.com>
14628
14629	WebKit part of the fix for:
14630
14631	Radar 2896391 - command-click should open link in new window
14632	
14633	* WebView.subproj/IFBaseWebController.mm:
14634	(-[IFBaseWebController openNewWindowWithURL:]): Default
14635	implementation silently does nothing.
14636	* WebView.subproj/IFWebController.h: Add openNewWindowWithURL:
14637	method.
14638	* WebView.subproj/IFWebView.mm:
14639	(-[IFWebView _addModifiers:toState:]): Split out modifier key
14640	handling to here. Treat Command as Meta.
14641	(-[IFWebView mouseUp:]): Use new method to set key modifiers for
14642	mouse events.
14643	(-[IFWebView mouseDown:]): Use new method to set key modifiers for
14644	mouse events.
14645	(-[IFWebView keyDown:]): Use new shared code for key modifiers.
14646	(-[IFWebView keyUp:]): Use new shared code for key modifiers.
14647
146482002-05-23  Kenneth Kocienda  <kocienda@apple.com>
14649
14650        Fixes for these bugs:
14651
14652        Radar 2883631 (need to implement support for META HTTP_EQUIV=REFRESH)
14653        Radar 2935472 (Non-standard html pages don't always get decoded)
14654
14655	* WebView.subproj/IFMainURLHandleClient.h:
14656	* WebView.subproj/IFMainURLHandleClient.mm:
14657	(-[IFMainURLHandleClient setContentPolicy:]): Updated method to use new processData interface.
14658	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): Senses when all data has been received for a load.
14659	(-[IFMainURLHandleClient processData:isComplete:allDataReceived:]): Modified interface to add a flag 
14660          for when all data for a load has been received.
14661
146622002-05-23  Shelley A Sheridan  <sheridan@apple.com>
14663
14664	* ChangeLog:
14665
14666=== Alexander-5 ===
14667
146682002-05-23  Maciej Stachowiak  <mjs@apple.com>
14669
14670	Move authentication panel to WebKit and make it a sheet, fixing:
14671
14672	Radar 2876445 - Authentication panel should be a sheet
14673	Radar 2876449 - The Alexander authentication panel should be moved
14674	to WebKit for use as a standard one
14675	
14676	* Panels.subproj/English.lproj/IFAuthenticationPanel.nib: Added.
14677	* Panels.subproj/IFAuthenticationPanel.h: Added.
14678	* Panels.subproj/IFAuthenticationPanel.m: Added.
14679	* Panels.subproj/IFPanelAuthenticationHandler.h: Added.
14680	* Panels.subproj/IFPanelAuthenticationHandler.m: Added.
14681	* Panels.subproj/IFStandardPanels.h: Added.
14682	* Panels.subproj/IFStandardPanels.m: Added.
14683	* Panels.subproj/IFStandardPanelsPrivate.h: Added.
14684	* WebKit.pbproj/project.pbxproj: Add new files to build.
14685	* Plugins.subproj/IFPluginStream.mm:
14686	(-[IFPluginStream IFURLHandleResourceDidBeginLoading:]): Notify of
14687	load start.
14688	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]): Notify
14689	of load end.
14690	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]): Likewise.
14691	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]): Likewise.
14692	(-[IFPluginStream IFURLHandle:didRedirectToURL:]): Notify that old
14693	URL is no longer loading, but new one is.
14694	* WebView.subproj/IFBaseWebControllerPrivate.h:
14695	* WebView.subproj/IFBaseWebControllerPrivate.mm:
14696	(-[IFBaseWebController _didStartLoading:]): New private method
14697	used to track what URLs are loading on behalf of this controller.
14698	(-[IFBaseWebController _didStopLoading:]): Likewise.
14699	
14700	* WebView.subproj/IFMainURLHandleClient.mm:
14701	(-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]): Notify
14702	of load start.
14703	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): Notify
14704	of load end.
14705	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]): Likewise.
14706	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): Likewise.
14707	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]): Likewise.
14708	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]): Notify of 
14709	load end and start.
14710
147112002-05-22  Chris Blumenberg  <cblu@apple.com>
14712	
14713	Fixed download data source leaks when downloads are cancelled.
14714
14715	* WebView.subproj/IFBaseWebControllerPrivate.mm:
14716	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
14717	* WebView.subproj/IFMainURLHandleClient.mm:
14718	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
14719	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
14720
147212002-05-22  Chris Blumenberg  <cblu@apple.com>
14722
14723	Removed activate events as this was causing problems
14724	for the QT plug-in.
14725	
14726	* Plugins.subproj/IFPluginView.mm:
14727	(-[IFPluginView windowBecameKey:]):
14728	(-[IFPluginView windowResignedKey:]):
14729
147302002-05-22  Chris Blumenberg  <cblu@apple.com>
14731
14732	Fixed crasher caused by not retaining.
14733	Fixed targeting bug.
14734
14735	* Plugins.subproj/IFPluginView.mm:
14736	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
14737	(-[IFPluginView getURLNotify:target:notifyData:]):
14738	(-[IFPluginView getURL:target:]):
14739	(-[IFPluginView postURLNotify:target:len:buf:file:notifyData:]):
14740	(-[IFPluginView postURL:target:len:buf:file:]):
14741
147422002-05-22  Richard J. Williamson  <rjw@apple.com>
14743
14744    Changed semantics of isLoading to only return YES if
14745    the datasource is loading resources related to the intial
14746    load.  Other resources loaded later by JS will not be
14747    accounted for by isLoading.
14748    
14749	* WebView.subproj/IFWebDataSource.mm:
14750	(-[IFWebDataSource isLoading]):
14751
147522002-05-22  Chris Blumenberg  <cblu@apple.com>
14753
14754	- Removed obsolete MIME/download related code.
14755	- Minor clean-ups.
14756	- Made WebKit support all text MIME types.
14757	- Now send NPP_URLNotify when pages requested by plug-ins are loaded.
14758	- Simplified NPP_Get/NPP_Post code.
14759	
14760	* MIME.subproj/IFContentHandler.h:
14761	* MIME.subproj/IFContentHandler.m:
14762	* MIME.subproj/IFDownloadHandler.mm:
14763	* MIME.subproj/IFMIMEDatabase.h: Removed.
14764	* MIME.subproj/IFMIMEDatabase.m: Removed.
14765	* MIME.subproj/IFMIMEHandler.h:
14766	* MIME.subproj/IFMIMEHandler.m:
14767	(+[IFMIMEHandler MIMEHandlerTypeForMIMEType:]):
14768	(+[IFMIMEHandler canShowMIMEType:]):
14769	* Plugins.subproj/IFPluginView.h:
14770	* Plugins.subproj/IFPluginView.mm:
14771	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
14772	(-[IFPluginView dealloc]):
14773	(-[IFPluginView frameStateChanged:]):
14774	(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
14775	(-[IFPluginView getURLNotify:target:notifyData:]):
14776	(-[IFPluginView getURL:target:]):
14777	(-[IFPluginView postURLNotify:target:len:buf:file:notifyData:]):
14778	(-[IFPluginView postURL:target:len:buf:file:]):
14779	(-[IFPluginView invalidateRect:]):
14780	(-[IFPluginView invalidateRegion:]):
14781	(-[IFPluginView forceRedraw]):
14782	* WebKit.pbproj/project.pbxproj:
14783	* WebView.subproj/IFMainURLHandleClient.h:
14784	* WebView.subproj/IFMainURLHandleClient.mm:
14785	(-[IFMainURLHandleClient dealloc]):
14786	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
14787	(-[IFMainURLHandleClient processData:isComplete:]):
14788	* WebView.subproj/IFWebFramePrivate.h:
14789	* WebView.subproj/IFWebFramePrivate.mm:
14790	(-[IFWebFrame _setState:]):
14791
147922002-05-21  Richard J. Williamson  <rjw@apple.com>
14793
14794    Fixed baseline regression.  Obvious of sites that have tables w/ backgrounds,
14795    i.e. www.slashdot.org.
14796    
14797	* WebCoreSupport.subproj/IFTextRenderer.m:
14798	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
14799	(-[IFTextRenderer drawUnderlineForString:atPoint:withColor:]):
14800
148012002-05-21  Richard J. Williamson  <rjw@apple.com>
14802
14803    Changes to support additional DHTML events.
14804    
14805	* WebView.subproj/IFWebView.mm:
14806	(-[IFWebView keyDown:]):
14807	(-[IFWebView keyUp:]):
14808	* WebView.subproj/IFWebViewPrivate.mm:
14809	(+[IFWebView _nodeHTML:DOM::]):
14810
148112002-05-21  Chris Blumenberg  <cblu@apple.com>
14812
14813	Content policy can now be sent at a later time to avoid blocking.
14814
14815	* WebView.subproj/IFMainURLHandleClient.h:
14816	* WebView.subproj/IFMainURLHandleClient.mm:
14817	(-[IFMainURLHandleClient initWithDataSource:part:]):
14818	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
14819
148202002-05-21  Chris Blumenberg  <cblu@apple.com>
14821
14822	Move the tracking rect after the view has moved.
14823
14824	* Plugins.subproj/IFPluginView.mm:
14825	(-[IFPluginView viewHasMoved:]):
14826
14827	Fixed logging.
14828
14829	* Plugins.subproj/npapi.m:
14830	(NPN_UserAgent):
14831	(NPN_MemAlloc):
14832	(NPN_MemFree):
14833	(NPN_MemFlush):
14834	(NPN_ReloadPlugins):
14835
148362002-05-21  Kenneth Kocienda  <kocienda@apple.com>
14837
14838        Merged these four include files into the precompiled header.
14839        These are used for the enhanced assertion/debuggin support I
14840        added yesterday.
14841
14842        <signal.h>
14843        <sys/types.h>
14844        <sys/time.h>
14845        <sys/resource.h>
14846
14847	* WebKitPrefix.h
14848
148492002-05-20  Chris Blumenberg  <cblu@apple.com>
14850
14851	Added support for plug-ins to send URL requests to certain targets.
14852
14853	Added frameNamed to IFWebFrame.
14854
14855	* Plugins.subproj/IFPluginView.mm:
14856	(-[IFPluginView getURLNotify:target:notifyData:]):
14857	(-[IFPluginView postURLNotify:target:len:buf:file:notifyData:]):
14858	* WebView.subproj/IFWebFrame.h:
14859	* WebView.subproj/IFWebFrame.mm:
14860	(-[IFWebFrame frameNamed:]):
14861
148622002-05-20  Kenneth Kocienda  <kocienda@apple.com>
14863
14864	* Misc.subproj/WebKitDebug.h: Now includes <sys/time.h> to prevent possible
14865          build breakage in the inclusion of <sys/resource.h>
14866
148672002-05-20  Kenneth Kocienda  <kocienda@apple.com>
14868
14869        Changed assertion failure code to send a SIGQUIT instead
14870        of raising an NSException.
14871
14872	* Misc.subproj/WebKitDebug.h
14873
148742002-05-20  Chris Blumenberg  <cblu@apple.com>
14875
14876	A whole lot of plug-in clean-up.
14877
14878	Moved the following functions from npapi to IFPlugin.
14879
14880	* Plugins.subproj/IFPlugin.m:
14881	(functionPointerForTVector):
14882	(tVectorForFunctionPointer):
14883
14884
14885	Only supply mouse coords when active.
14886
14887	* Plugins.subproj/IFPluginNullEventSender.h:
14888	* Plugins.subproj/IFPluginNullEventSender.m:
14889	(-[IFPluginNullEventSender initializeWithNPP:functionPointer:window:]):
14890	(-[IFPluginNullEventSender dealloc]):
14891	(-[IFPluginNullEventSender sendNullEvents]):
14892
14893	
14894	Minor clean-ups
14895
14896	* Plugins.subproj/IFPluginStream.mm:
14897	(-[IFPluginStream dealloc]):
14898	(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
14899	(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
14900	(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
14901	
14902	
14903	Removed the isMouseDown flag from the following functions
14904	as it was unnecessary.
14905
14906	Cleaned up logging.
14907
14908	* Plugins.subproj/IFPluginView.mm:
14909	(-[IFPluginView modifiersForEvent:]):
14910	(-[IFPluginView getCarbonEvent:withEvent:]):
14911	(-[IFPluginView sendUpdateEvent]):
14912	(-[IFPluginView becomeFirstResponder]):
14913	(-[IFPluginView resignFirstResponder]):
14914	(-[IFPluginView mouseDown:]):
14915	(-[IFPluginView mouseUp:]):
14916	(-[IFPluginView mouseExited:]):
14917	(-[IFPluginView setWindow]):
14918	(-[IFPluginView start]):
14919	(-[IFPluginView stop]):
14920
14921
14922	URLForString now uses _IF_looksLikeAbsoluteURL.
14923
14924	(-[IFPluginView URLForString:]):
14925
14926	
14927	Implemented the following:
14928
14929	(-[IFPluginView invalidateRect:]):
14930	(-[IFPluginView invalidateRegion:]):
14931	(-[IFPluginView forceRedraw]):
14932
14933	
14934	Put implementation of GetValue SetValue in npapi. 
14935
14936	* Plugins.subproj/npapi.h:
14937	* Plugins.subproj/npapi.m:
14938	(NPN_GetValue):
14939	(NPN_SetValue):
14940
14941
14942	Added drag & drop support.
14943
14944	* WebView.subproj/IFWebView.mm:
14945	(-[IFWebView initWithFrame:]):
14946	(-[IFWebView setCanDragFrom:]):
14947	(-[IFWebView canDragFrom]):
14948	(-[IFWebView setCanDragTo:]):
14949	(-[IFWebView canDragTo]):
14950	(-[IFWebView draggingEntered:]):
14951	(-[IFWebView prepareForDragOperation:]):
14952	(-[IFWebView performDragOperation:]):
14953	* WebView.subproj/IFWebViewPrivate.h:
14954	* WebView.subproj/IFWebViewPrivate.mm:
14955	(-[IFWebViewPrivate dealloc]):
14956
149572002-05-20  John Sullivan  <sullivan@apple.com>
14958
14959	Support for bookmark separators
14960
14961	* Bookmarks.subproj/IFBookmark.h: Update comments and replace
14962	isLeaf with bookmarkType.
14963
14964	* Bookmarks.subproj/IFBookmark.m:
14965	(-[IFBookmark bookmarkType]): New method, replaces isLeaf.
14966	(-[IFBookmark title]):
14967	(-[IFBookmark setTitle:]):
14968	(-[IFBookmark image]):
14969	(-[IFBookmark setImage:]):
14970	(-[IFBookmark setURLString:]):
14971	(-[IFBookmark children]):
14972	(-[IFBookmark numberOfChildren]):
14973	(-[IFBookmark _numberOfDescendants]):
14974	(-[IFBookmark insertChild:atIndex:]):
14975	(-[IFBookmark removeChild:]):
14976	Update callers of isLeaf, and don't require concrete implementations
14977	of some methods for some types.
14978
14979	* Bookmarks.subproj/IFBookmarkLeaf.m:
14980	(-[IFBookmarkLeaf bookmarkType]): return IFBookmarkTypeLeaf
14981	(-[IFBookmarkLeaf _dictionaryRepresentation]): set value for bookmark type.
14982
14983	* Bookmarks.subproj/IFBookmarkList.m:
14984	(-[IFBookmarkList _initFromDictionaryRepresentation:withGroup:]):
14985	Handle separator case.
14986	(-[IFBookmarkList _dictionaryRepresentation]): set value for bookmark type
14987	(-[IFBookmarkList bookmarkType]): return IFBookmarkTypeList
14988
14989	* Bookmarks.subproj/IFBookmarkSeparator.h: Added.
14990	* Bookmarks.subproj/IFBookmarkSeparator.m: Added.
14991	(-[IFBookmarkSeparator initWithGroup:]): Simple init method.
14992	(-[IFBookmarkSeparator _initFromDictionaryRepresentation:withGroup:]): Just calls
14993	initWithGroup.
14994	(-[IFBookmarkSeparator _dictionaryRepresentation]): set value for bookmark type
14995	(-[IFBookmarkSeparator bookmarkType]): return IFBookmarkTypeSeparator
14996	(-[IFBookmarkSeparator copyWithZone:]): calls initWithGroup
14997
14998	* Bookmarks.subproj/IFBookmark_Private.h: Added key/value #defines for dictionary
14999	representation.
15000
15001	* Bookmarks.subproj/IFBookmarkGroup.h:
15002	* Bookmarks.subproj/IFBookmarkGroup.m:
15003	(-[IFBookmarkGroup _setTopBookmark:]):
15004	(-[IFBookmarkGroup _bookmarkChildrenDidChange:]):
15005	(-[IFBookmarkGroup addNewBookmarkToBookmark:withTitle:image:URLString:type:]):
15006	Update callers of isLeaf to use bookmarkType instead.
15007
15008	(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:image:URLString:type:]):
15009	if type is IFBookmarkTypeSeparator, instantiate an IFBookmarkSeparator
15010
15011	* WebKit.pbproj/project.pbxproj: Updated for new files.
15012
150132002-05-17  Chris Blumenberg  <cblu@apple.com>
15014
15015	- Made IFPluginStream the URL handle client instead of IFPluginView.
15016	- Added support for NPP_PostURL and NPP_PostNotify.
15017	- Possible fix for 2928558.
15018
15019	* Plugins.subproj/IFPluginStream.h:
15020	* Plugins.subproj/IFPluginView.h:
15021	* Plugins.subproj/IFPluginView.mm:
15022	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):NSURL for url
15023	instead of NSString
15024	(-[IFPluginView dealloc]):
15025	(-[IFPluginView setWindow]):
15026	(-[IFPluginView start]): 
15027	(-[IFPluginView stop]):
15028	(-[IFPluginView webDataSource]):Accessor for IFPluginStream.
15029	(-[IFPluginView webController]):Accessor for IFPluginStream.
15030	(-[IFPluginView URLForString:]):
15031	(-[IFPluginView getURLNotify:target:notifyData:]):
15032	(-[IFPluginView postURLNotify:target:len:buf:file:notifyData:]):
15033	(-[IFPluginView postURL:target:len:buf:file:]):
15034	(-[IFPluginView destroyStream:reason:]):
15035	(-[IFPluginView status:]):
15036	(-[IFPluginView NPP_NewStream]): Accessor for IFPluginStream.
15037	(-[IFPluginView NPP_WriteReady]):Accessor for IFPluginStream.
15038	(-[IFPluginView NPP_Write]): Accessor for IFPluginStream.
15039	(-[IFPluginView NPP_StreamAsFile]): Accessor for IFPluginStream.
15040	(-[IFPluginView NPP_DestroyStream]): Accessor for IFPluginStream.
15041	(-[IFPluginView NPP_URLNotify]): Accessor for IFPluginStream.
15042	* WebCoreSupport.subproj/IFWebCoreViewFactory.m: Use new IFPluginView init method
15043	(-[IFWebCoreViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
15044	* WebKit.pbproj/project.pbxproj:
15045
150462002-05-16  Richard J. Williamson  <rjw@apple.com>
15047
15048	Fixed 2925638.  Don't send last progress message from resourceDataDidBecomeAvailable,
15049	it is sent from IFURLHandleResourceDidFinishLoading, avoiding duplication.
15050	
15051	* WebView.subproj/IFMainURLHandleClient.mm:
15052	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
15053
150542002-05-16  Richard J. Williamson  <rjw@apple.com>
15055
15056	Fix to fix for 0x7f to 0xa0.  I was being overly aggressive about
15057	finding substitute glyphs.
15058	
15059	* WebCoreSupport.subproj/IFTextRenderer.m:
15060	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
15061	(-[IFTextRenderer floatWidthForCharacters:length:]):
15062
150632002-05-16  Darin Adler  <darin@apple.com>
15064
15065	* Plugins.subproj/IFPluginView.mm:
15066	(-[IFPluginView IFURLHandleResourceDidFinishLoading:data:]):
15067	Use this new getCarbonPath function rather than hardcoding assumptions
15068	about "/tmp" being ":private:tmp".
15069	(getCarbonPath): New.
15070
150712002-05-16  Darin Adler  <darin@apple.com>
15072
15073	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView mouseUp:]):
15074	Fixed log statement so development builds work again.
15075
150762002-05-16  Darin Adler  <darin@apple.com>
15077
15078	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView mouseUp:]):
15079	Remove unused variable that breaks optimized builds.
15080
150812002-05-15  Darin Adler  <darin@apple.com>
15082
15083	Another quick events cleanup pass.
15084
15085	* Plugins.subproj/IFPluginNullEventSender.m:
15086	(-[IFPluginNullEventSender sendNullEvents]): Use [IFPluginView getCarbonEvent:].
15087
15088	* Plugins.subproj/IFPluginView.h: Make almost all methods private.
15089	* Plugins.subproj/IFPluginView.mm:
15090	(+[IFPluginView getCarbonEvent:]): New.
15091	(-[IFPluginView getCarbonEvent:]): New, calls class method.
15092	(-[IFPluginView modifiersForEvent:isMouseDown:]): Reversed sense of btnState.
15093	This flag is set if the mouse is up, not if the mouse is down.
15094	(-[IFPluginView getCarbonEvent:withEvent:isMouseDown:]): New.
15095	(-[IFPluginView getCarbonEvent:withEvent:]): New.
15096	(-[IFPluginView sendActivateEvent:]): Now takes parameter for activate vs.
15097	deactivate and uses [getCarbonEvent:].
15098	(-[IFPluginView sendUpdateEvent]): Uses [getCarbonEvent:].
15099	(-[IFPluginView becomeFirstResponder]): Uses [getCarbonEvent:].
15100	(-[IFPluginView resignFirstResponder]): Uses [getCarbonEvent:].
15101	(-[IFPluginView mouseDown:]): Uses [getCarbonEvent:withEvent:isMouseDown:].
15102	(-[IFPluginView mouseUp:]): Uses [getCarbonEvent:withEvent:isMouseDown:].
15103	(-[IFPluginView mouseEntered:]): Uses [getCarbonEvent:withEvent:].
15104	(-[IFPluginView mouseExited:]): Uses [getCarbonEvent:withEvent:].
15105	(-[IFPluginView keyUp:]): Uses [getCarbonEvent:withEvent:].
15106	(-[IFPluginView keyDown:]): Uses [getCarbonEvent:withEvent:].
15107	(-[IFPluginView start]): Call [sendActivateEvent:YES].
15108	(-[IFPluginView windowBecameKey:]): Call [sendActivateEvent:YES].
15109	(-[IFPluginView windowResignedKey:]): Call [sendActivateEvent:NO].
15110
151112002-05-15  Richard J. Williamson  <rjw@apple.com>
15112
15113    Fixed problem dealing w/ characters in range 0x7f - 0xa0.
15114    
15115	* WebCoreSupport.subproj/IFTextRenderer.m:
15116	(setGlyphForCharacter):
15117	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
15118	(-[IFTextRenderer floatWidthForCharacters:length:]):
15119
151202002-05-15  Chris Blumenberg  <cblu@apple.com>
15121
15122	Fixed Flash mouse-down, mouse-over Flash bug.
15123	Added support for modifiers (control-click etc) (2884451).
15124	A lot of events clean-up.
15125
15126	* Plugins.subproj/IFPluginNullEventSender.m:
15127	(-[IFPluginNullEventSender sendNullEvents]):
15128	* Plugins.subproj/IFPluginView.h:
15129	* Plugins.subproj/IFPluginView.mm:
15130	(newCString):
15131	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
15132	(-[IFPluginView start]):
15133	(-[IFPluginView drawRect:]):
15134	(-[IFPluginView isFlipped]):
15135	(-[IFPluginView currentModifiers]):
15136	(-[IFPluginView modifiersForEvent:isMouseDown:]):
15137	(-[IFPluginView sendActivateEvent]):
15138	(-[IFPluginView sendUpdateEvent]):
15139	(-[IFPluginView becomeFirstResponder]):
15140	(-[IFPluginView resignFirstResponder]):
15141	(-[IFPluginView mouseDown:]):
15142	(-[IFPluginView mouseUp:]):
15143	(-[IFPluginView mouseEntered:]):
15144	(-[IFPluginView mouseExited:]):
15145	(-[IFPluginView keyUp:]):
15146	(-[IFPluginView keyDown:]):
15147	(-[IFPluginView windowBecameKey:]):
15148	(-[IFPluginView windowResignedKey:]):
15149
15150	Case-sensitivity issue with an include.
15151
15152	* WebView.subproj/IFWebView.mm:
15153
151542002-05-15  Darin Adler  <darin@apple.com>
15155
15156	* Makefile.am:
15157	Use all-am and clean-am instead of all and clean because it's better and
15158	to make "make check" at the top level work right.
15159
151602002-05-14  John Sullivan  <sullivan@apple.com>
15161
15162	Work to support copying bookmarks, needed for drag & drop
15163	in Bookmarks window.
15164
15165	* Bookmarks.subproj/IFBookmark.h: Make IFBookmark conform to NSCopying.
15166
15167	* Bookmarks.subproj/IFBookmark.m:
15168	(-[IFBookmark copyWithZone:]): insist that subclasses implement this.
15169
15170	* Bookmarks.subproj/IFBookmarkGroup.h:
15171	* Bookmarks.subproj/IFBookmarkGroup.m:
15172	(-[IFBookmarkGroup insertBookmark:atIndex:ofBookmark:]):
15173	Removed this unnecessary method.
15174
15175	* Bookmarks.subproj/IFBookmarkLeaf.m:
15176	(-[IFBookmarkLeaf copyWithZone:]): New method.
15177
15178	* Bookmarks.subproj/IFBookmarkList.m:
15179	(-[IFBookmarkList copyWithZone:]): New method.
15180
151812002-05-14  Richard J. Williamson  <rjw@apple.com>
15182
15183    Fixed exception in log code.
15184    
15185	* WebCoreSupport.subproj/IFTextRenderer.m:
15186	(-[IFTextRenderer floatWidthForCharacters:length:]):
15187
151882002-05-14  Richard J. Williamson  <rjw@apple.com>
15189
15190    Fixed 2926153, not getting correct messages after cancel.
15191    Fixed leak of mouse events (Darin wanted this ASAP).
15192    
15193	* WebView.subproj/IFBaseWebControllerPrivate.mm:
15194	(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]):
15195	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
15196	* WebView.subproj/IFLocationChangeHandler.h:
15197	* WebView.subproj/IFWebView.mm:
15198	(-[IFWebView initWithFrame:]):
15199	(-[IFWebView layout]):
15200	(-[IFWebView mouseUp:]):
15201	(-[IFWebView mouseDown:]):
15202	(-[IFWebView mouseMovedNotification:]):
15203
152042002-05-14  Chris Blumenberg  <cblu@apple.com>
15205
15206	Removed retain of the URL handle. This was causing everything to leak.
15207
15208	* WebView.subproj/IFMainURLHandleClient.h:
15209	* WebView.subproj/IFMainURLHandleClient.mm:
15210	(-[IFMainURLHandleClient initWithDataSource:part:]):
15211	(-[IFMainURLHandleClient dealloc]):
15212	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
15213	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
15214	(-[IFMainURLHandleClient processData:isComplete:]):
15215
152162002-05-14  Darin Adler  <darin@apple.com>
15217
15218	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]):
15219	Remove code that makes us the first responder. That's up to the higher levels,
15220	not the web view.
15221
152222002-05-14  John Sullivan  <sullivan@apple.com>
15223
15224	* History.subproj/IFURIEntry.h:
15225	Oops, deleted the prototype for setLastVisitedDate
15226	accidentally, which made Jersey sad.
15227
152282002-05-14  John Sullivan  <sullivan@apple.com>
15229
15230	Fixed 2919027 -- Need to remove unused code in WebKit/History.subproj
15231
15232	* History.subproj/IFAttributedURL.h: Removed.
15233	* History.subproj/IFBackForwardList.h: Removed large #ifdef.
15234	* History.subproj/IFURIEntry.h,
15235	* History.subproj/IFURIEntry.m: Removed all mention of unused
15236	fields comment, creationDate, modificationDate
15237	* WebKit.pbproj/project.pbxproj: Updated for removed file.
15238
152392002-05-13  Chris Blumenberg  <cblu@apple.com>
15240
15241	Added support for setting the content policy on the location change handler
15242	and data source at any time instead of depending on an immediate response.
15243
15244	* WebView.subproj/IFBaseWebController.mm:
15245	(-[IFBaseWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
15246	* WebView.subproj/IFMainURLHandleClient.h:
15247	* WebView.subproj/IFMainURLHandleClient.mm:
15248	(-[IFMainURLHandleClient initWithDataSource:part:]):
15249	(-[IFMainURLHandleClient dealloc]):
15250	(-[IFMainURLHandleClient setContentPolicy:]):
15251	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
15252	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
15253	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
15254	(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
15255	(-[IFMainURLHandleClient processData:isComplete:]):
15256	* WebView.subproj/IFWebController.h:
15257	* WebView.subproj/IFWebDataSourcePrivate.mm:
15258	(-[IFWebDataSource _setContentPolicy:]):
15259	* WebView.subproj/IFWebFrame.mm:
15260	(-[IFWebFrame setProvisionalDataSource:]):
15261
152622002-05-13  Maciej Stachowiak  <mjs@apple.com>
15263
15264	* WebKitPrefix.h: Gratuitous change to make the prefix file
15265	rebuild.
15266
152672002-05-13  Chris Blumenberg  <cblu@apple.com>
15268
15269	* WebView.subproj/IFBaseWebController.mm:
15270	(-[IFBaseWebController URLPolicyForURL:]):
15271	
15272	Use [IFURLHandle canInitWithURL] instead of hard-coded URL schemes.
15273
15274	* WebView.subproj/IFBaseWebControllerPrivate.mm:
15275	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
15276	* WebView.subproj/IFMainURLHandleClient.mm:
15277	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
15278	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
15279	* WebView.subproj/IFWebDataSourcePrivate.h:
15280	* WebView.subproj/IFWebDataSourcePrivate.mm:
15281	(-[IFWebDataSourcePrivate init]):
15282	(-[IFWebDataSource _setDownloadPath:]):
15283
15284	Removed _contentPolicy as contentPolicy is public. 
15285
15286	Initialize contentPolicy in [IFWebDataSourcePrivate init].
15287
152882002-05-10  Richard J. Williamson  <rjw@apple.com>
15289
15290	Logging changes.
15291	
15292	* WebCoreSupport.subproj/IFTextRenderer.m:
15293	* WebView.subproj/IFWebDataSource.mm:
15294	(-[IFWebDataSource isLoading]):
15295	* WebView.subproj/IFWebFramePrivate.mm:
15296	(-[IFWebFrame _isLoadComplete]):
15297
152982002-05-10  Chris Blumenberg  <cblu@apple.com>
15299
15300	Added support for non-html non-file URL data sources. 
15301	Added the init methods below. Removed initWithHandle.
15302
15303	* WebView.subproj/IFWebDataSource.h:
15304	* WebView.subproj/IFWebDataSource.mm:
15305	(IFWebDataSourceMake):
15306	(-[IFWebDataSource initWithURL:]):
15307	(-[IFWebDataSource initWithURL:attributes:]):
15308	(-[IFWebDataSource startLoading:]):
15309
153102002-05-10  Darin Adler  <darin@apple.com>
15311
15312	* WebCoreSupport.subproj/IFTextRenderer.h: Moved most of the
15313	stuff from here into the .m file so this header can be included
15314	by clients. Also added floatWidthForCharacters:length:.
15315	* WebCoreSupport.subproj/IFTextRenderer.m:
15316	(freeWidthMap): Check for NULL.
15317	(freeGlyphMap): Check for NULL.
15318	(-[IFTextRenderer slowFloatWidthForCharacters:length:]): Renamed,
15319	and made it return the float.
15320	(-[IFTextRenderer floatWidthForCharacters:length:]): Renamed, and
15321	made it return the float.
15322	(-[IFTextRenderer widthForCharacters:length:]): Do rounding here.
15323
15324	* WebCoreSupport.subproj/IFTextRendererFactory.h:
15325	* WebCoreSupport.subproj/IFTextRendererFactory.m:
15326	Make the interface slightly easier to use by using the specific types.
15327
15328	* WebKit.pbproj/project.pbxproj: Exported the headers.
15329
153302002-05-10  Kenneth Kocienda  <kocienda@apple.com>
15331
15332        Fixed build breakage caused by my previous checkin.
15333
15334	* WebView.subproj/IFMainURLHandleClient.mm:
15335	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:])
15336
153372002-05-10  John Sullivan  <sullivan@apple.com>
15338
15339	Fixed 2922756 (@ image in History window is a little too tall)
15340	Fixed 2923790 (bookmark folders need folder icons)
15341
15342	* Resources/bookmark_folder.tiff: New image (small folder, copied from elsewhere)
15343	* Resources/url_icon.tiff: Shrunk this one a little bit.
15344
15345	* Bookmarks.subproj/IFBookmarkList.m:
15346	(-[IFBookmarkList image]): Return the default image if no custom image is set.
15347
15348	* History.subproj/IFURIEntry.m:
15349	(-[IFURIEntry image]): If the default image's file isn't found, don't try
15350	to create an NSImage, because it will come out horribly broken and evil if
15351	you do (I ran into this while adding the bookmark folder image; most of Alexander's
15352	menus did not appear at all because the bookmark folder image was using a bogus
15353	NSImage).
15354
15355	* WebKit.pbproj/project.pbxproj: Updated for new files.
15356
153572002-05-10  Kenneth Kocienda  <kocienda@apple.com>
15358
15359        Reviewed by: Maciej Stachowiak
15360
15361        This code was modified to use the new interface and features of IFError.
15362        These features and changes are described in these four bug reports:
15363
15364        Radar 2923998 (Change IFError private data into a pointer to a private data object)
15365        Radar 2924002 (IFError should include an error domain)
15366        Radar 2924013 (IFError initialization is not threadsafe)        
15367        Radar 2924280 (IFError should contain a new field which tells whether the error is terminal)
15368                                                            
15369	* Plugins.subproj/IFPluginView.mm:
15370	(-[IFPluginView IFURLHandle:resourceDidFailLoadingWithResult:]):
15371	* WebView.subproj/IFBaseWebControllerPrivate.mm:
15372	(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]):
15373	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
15374	* WebView.subproj/IFMainURLHandleClient.mm:
15375	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
15376
153772002-05-09  Richard J. Williamson  <rjw@apple.com>
15378
15379    Tuned implementation more.  Cleaned up and factored code.
15380
15381	* WebCoreSupport.subproj/IFTextRenderer.h:
15382	* WebCoreSupport.subproj/IFTextRenderer.m:
15383	(-[IFTextRenderer substituteFontForString:]):
15384	(-[IFTextRenderer substituteFontForCharacters:length:]):
15385	(-[IFTextRenderer initWithFont:]):
15386	(-[IFTextRenderer dealloc]):
15387	(-[IFTextRenderer slowPackGlyphsForCharacters:numCharacters:glyphBuffer:numGlyphs:]):
15388	(-[IFTextRenderer drawString:atPoint:withColor:]):
15389	(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
15390	(-[IFTextRenderer drawUnderlineForString:atPoint:withColor:]):
15391	(-[IFTextRenderer slowWidthForCharacters:length:]):
15392	(-[IFTextRenderer widthForCharacters:length:]):
15393	(-[IFTextRenderer extendGlyphToWidthMapToInclude:]):
15394
153952002-05-09  John Sullivan  <sullivan@apple.com>
15396
15397	* Bookmarks.subproj/IFBookmarkGroup.h:
15398	* Bookmarks.subproj/IFBookmarkGroup.m:
15399	(-[IFBookmarkGroup addNewBookmarkToBookmark:withTitle:image:URLString:isLeaf:]):
15400	(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:image:URLString:isLeaf:]):
15401	Gave these two methods return values of the new bookmark created, to make callers'
15402	lives easier.
15403
15404=== Alexander-3 ===
15405
154062002-05-08  Richard J. Williamson  <rjw@apple.com>
15407
15408    Added optimizations for text rendering.
15409    
15410	* WebCoreSupport.subproj/IFTextRenderer.h:
15411	* WebCoreSupport.subproj/IFTextRenderer.m:
15412	(freeWidthMap):
15413	(freeGlyphMap):
15414	(glyphForCharacter):
15415	(widthForGlyph):
15416	(widthForCharacter):
15417	(-[IFTextRenderer substituteFontForCharacters:length:]):
15418	(-[IFTextRenderer convertCharacters:length:glyphs:]):
15419	(-[IFTextRenderer dealloc]):
15420	(-[IFTextRenderer drawString:atPoint:withColor:]):
15421	(-[IFTextRenderer drawUnderlineForString:atPoint:withColor:]):
15422	(-[IFTextRenderer widthForCharacters:length:]):
15423	(-[IFTextRenderer extendCharacterToGlyphMapToInclude:]):
15424	(-[IFTextRenderer extendGlyphToWidthMapToInclude:]):
15425
154262002-05-08  Darin Adler  <darin@apple.com>
15427
15428	* Misc.subproj/IFCache.h: Add more JavaScript object statistics.
15429	* Misc.subproj/IFCache.mm:
15430	(+[IFCache javaScriptInterpretersCount]): New.
15431	(+[IFCache javaScriptNoGCAllowedObjectsCount]): New.
15432	(+[IFCache javaScriptReferencedObjectsCount]): New.
15433
15434	* WebKit.pbproj/project.pbxproj: Rearranged two files, dunno why.
15435
154362002-05-08  Chris Blumenberg  <cblu@apple.com>
15437
15438	Cleaned up mach-o plug-in support.
15439	
15440	Changed the init method in IFPlugin to initWithPath.
15441
15442	* Plugins.subproj/IFPlugin.h:
15443	* Plugins.subproj/IFPlugin.m:
15444	(-[IFPlugin initWithPath:]):
15445	(-[IFPlugin load]):
15446	* Plugins.subproj/IFPluginDatabase.m:
15447	(findPlugins):
15448
154492002-05-08  Darin Adler  <darin@apple.com>
15450
15451	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _setTitle:]):
15452	Use _IF_stringByTrimmingWhitespace.
15453
154542002-05-07  Richard J. Williamson  <rjw@apple.com>
15455
15456        First pass at font substitution.  Find a substitute font to
15457        use when the specified font doesn't have glyphs for the characters that
15458        need to be drawn.
15459        
15460        Works correctly but hasn't been optimized yet, VERY slow.
15461        Will optimize this evening and tomorrow.  Try www.yahoo.co.jp,
15462        it will take a long time to render be eventually will draw correctly.
15463        
15464	* WebCoreSupport.subproj/IFTextRenderer.h:
15465	* WebCoreSupport.subproj/IFTextRenderer.m:
15466	(hasMissingGlyphs):
15467	(+[IFTextRenderer initialize]):
15468	(-[IFTextRenderer convertCharacters:length:glyphs:]):
15469	(-[IFTextRenderer initializeCaches]):
15470	(-[IFTextRenderer drawString:atPoint:withColor:]):
15471	(-[IFTextRenderer drawUnderlineForString:atPoint:withColor:]):
15472	(-[IFTextRenderer widthForCharacters:length:]):
15473
154742002-05-07  Darin Adler  <darin@apple.com>
15475
15476	Oops. These files don't belong at the top level.
15477
15478	* IFWebCoreViewFactory.h: Removed.
15479	* IFWebCoreViewFactory.m: Removed.
15480	* WebCoreSupport.subproj/IFWebCoreViewFactory.h: Added.
15481	* WebCoreSupport.subproj/IFWebCoreViewFactory.m: Added.
15482	* WebKit.pbproj/project.pbxproj:
15483
154842002-05-07  Darin Adler  <darin@apple.com>
15485
15486	Move more plugin code here from WebCore.
15487
15488	* IFWebCoreViewFactory.h: Added.
15489	* IFWebCoreViewFactory.m: Added.
15490
15491	* Plugins.subproj/IFPlugin.h: Moved from WebCore.
15492	* Plugins.subproj/IFPlugin.m: Moved from WebCore.
15493	* Plugins.subproj/IFPluginDatabase.h: Moved from WebCore.
15494	* Plugins.subproj/IFPluginDatabase.m: Moved from WebCore.
15495	* Plugins.subproj/npapi.h: Moved from WebCore.
15496	* Plugins.subproj/npapi.m: Moved from WebCore.
15497
15498	* WebKit.pbproj/project.pbxproj: Source file names changed
15499
15500	* MIME.subproj/IFMIMEDatabase.m:
15501	* MIME.subproj/IFMIMEHandler.m:
15502	* Plugins.subproj/IFPluginView.h:
15503	* Plugins.subproj/IFPluginView.mm:
15504	Updated for WC -> IF name change.
15505
15506	* WebCoreSupport.subproj/IFCachedTextRenderer.h: Renamed to IFTextRenderer.
15507	* WebCoreSupport.subproj/IFCachedTextRenderer.m: Renamed to IFTextRenderer.
15508	* WebCoreSupport.subproj/IFCachedTextRendererFactory.h: Renamed to IFTextRendererFactory.
15509	* WebCoreSupport.subproj/IFCachedTextRendererFactory.m: Renamed to IFTextRendererFactory.
15510	* WebCoreSupport.subproj/IFTextRenderer.h: Renamed from IFCachedTextRenderer.
15511	* WebCoreSupport.subproj/IFTextRenderer.m: Renamed from IFCachedTextRenderer.
15512	* WebCoreSupport.subproj/IFTextRendererFactory.h: Renamed from IFCachedTextRendererFactory.
15513	* WebCoreSupport.subproj/IFTextRendererFactory.m: Renamed from IFCachedTextRendererFactory.
15514	Renamed to take "Cached" out of the name now that the simpler name is
15515	available.
15516
15517	* WebView.subproj/IFWebView.mm:
15518	(-[IFWebView initWithFrame:]): Create shared IFWebCoreViewFactory.
15519	(-[IFWebView delayLayout:]): Use WEBKITDEBUG, not KWQDEBUG.
15520	(-[IFWebView notificationReceived:]): Use WEBKITDEBUG, not KWQDEBUG.
15521
155222002-05-07  Darin Adler  <darin@apple.com>
15523
15524	Use isEqualToString: instead of isEqual: more consistently. But only for strings.
15525
15526	* WebCoreSupport.subproj/IFCachedTextRendererFactory.m:
15527	(-[IFFontCacheKey isEqual:]):
15528	* WebView.subproj/IFBaseWebController.mm:
15529	(-[IFBaseWebController _frameNamed:fromFrame:]):
15530
155312002-05-06  John Sullivan  <sullivan@apple.com>
15532
15533	Some improvements to the bookmark changed notifications.
15534
15535	* Bookmarks.subproj/IFBookmarkGroup.h:
15536	* Bookmarks.subproj/IFBookmarkGroup.m:
15537	(-[IFBookmarkGroup _sendChangeNotificationForBookmark:childrenChanged:]):
15538	(-[IFBookmarkGroup _setTopBookmark:]):
15539	(-[IFBookmarkGroup _bookmarkDidChange:]):
15540	(-[IFBookmarkGroup _bookmarkChildrenDidChange:]):
15541	Send bookmark that changed and whether its children changed as part of
15542	change notifications, so clients can choose to do less unnecessary work.
15543
15544	* Bookmarks.subproj/IFBookmarkLeaf.m:
15545	(-[IFBookmarkLeaf setTitle:]): Check for the no-change case
15546	and bail out without sending notification when you find it.
15547
155482002-05-06  Darin Adler  <darin@apple.com>
15549
15550	* WebKitPrefix.h: Added.
15551	* WebKit.pbproj/project.pbxproj: Use PFE precompiling.
15552	Also switch from xNDEBUG to NDEBUG.
15553
15554	* Misc.subproj/WebKitDebug.h: Get rid of format attribute because of bug
15555	2920557. Switch from xNDEBUG to NDEBUG.
15556
15557	* Misc.subproj/WebKitDebug.m:
15558	Add undef to work around PFE problem with inline functions, Radar 2920554.
15559
15560	* Plugins.subproj/IFPluginView.mm: Changed how we work around the bug in
15561	the CGS defines.
15562
15563	* WebCoreSupport.subproj/IFCachedTextRenderer.h: Change include of the
15564	private QD header to use the form that works with more-normal way of
15565	getting at the private bits of frameworks.
15566
15567	* WebCoreSupport.subproj/IFCachedTextRenderer.m: Use the header
15568	<CoreGraphics/CoreGraphicsPrivate.h> instead of <CoreGraphics/CGFontPrivate.h>.
15569
15570	* Misc.subproj/IFCache.mm:
15571	* WebView.subproj/IFLoadProgress.mm:
15572	* WebView.subproj/IFWebFrame.mm:
15573	* WebView.subproj/IFWebFramePrivate.mm:
15574	* WebView.subproj/IFWebView.mm:
15575	Changed includes to imports.
15576
155772002-05-06  Chris Blumenberg  <cblu@apple.com>
15578
15579	Made start and stop work cleaner. 
15580
15581	Now observe defaults changes so that plug-ins
15582	are disabled or enabled immediately (2871725). 
15583
15584	* Plugins.subproj/IFPluginNullEventSender.m:
15585	(-[IFPluginNullEventSender sendNullEvents]):
15586	* Plugins.subproj/IFPluginView.h:
15587	* Plugins.subproj/IFPluginView.mm:
15588	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
15589	(-[IFPluginView start]):
15590	(-[IFPluginView stop]):
15591	(-[IFPluginView drawRect:]):
15592	(-[IFPluginView windowWillClose:]):
15593	(-[IFPluginView defaultsHaveChanged:]):
15594
155952002-05-06  Richard J. Williamson  <rjw@apple.com>
15596
15597        Fixed width measurement regression.  We lost the final ROUND_TO_INT
15598        in the width measurement funtion after the move from WebCore.
15599        
15600	* WebCoreSupport.subproj/IFCachedTextRenderer.m:
15601	(-[IFCachedTextRenderer widthForCharacters:length:]):
15602
156032002-05-06  Richard J. Williamson  <rjw@apple.com>
15604
15605        Changes to support dhtml.
15606        
15607	* WebView.subproj/IFWebView.mm:
15608
156092002-05-06  John Sullivan  <sullivan@apple.com>
15610
15611	* Resources/url_icon.tiff: New bookmarks/history icon, looks
15612	more like the springy @ sign as seen from above, less like text.
15613
156142002-05-03  John Sullivan  <sullivan@apple.com>
15615
15616	Along with small corresponding WebBrowser change,	
15617	fixed 2919172 (Bookmarks aren't saved between sessions).
15618
15619	* Bookmarks.subproj/IFBookmark_Private.h: Declarations for new private methods.
15620	* Bookmarks.subproj/IFBookmark.m:
15621	(-[IFBookmark _numberOfDescendants]): New private method, counts deep; used
15622	only for debugging messages at this time.
15623	(-[IFBookmark _initFromDictionaryRepresentation:withGroup:]):
15624	(-[IFBookmark _dictionaryRepresentation]): New private methods used to save/load
15625	bookmarks. Stub	implementations; subclasses must implement.
15626
15627	* Bookmarks.subproj/IFBookmarkLeaf.m:
15628	(-[IFBookmarkLeaf _initFromDictionaryRepresentation:withGroup:]):
15629	(-[IFBookmarkLeaf _dictionaryRepresentation]): New methods.
15630
15631	* Bookmarks.subproj/IFBookmarkList.m:
15632	(-[IFBookmarkList _initFromDictionaryRepresentation:withGroup:]):
15633	(-[IFBookmarkList _dictionaryRepresentation]):
15634	(-[IFBookmarkList _numberOfDescendants]):
15635	New methods.
15636	(-[IFBookmarkList _setGroup:]): Recurse on children.
15637
15638	* Bookmarks.subproj/IFBookmarkGroup.h: New _loading instance variable.
15639
15640	* Bookmarks.subproj/IFBookmarkGroup.m:
15641	(-[IFBookmarkGroup _setTopBookmark:]): Renamed from _resetTopBookmark,
15642	now has potentially non-nil argument.
15643	(-[IFBookmarkGroup initWithFile:]),
15644	(-[IFBookmarkGroup removeBookmark:]): Updated for name change.
15645	(-[IFBookmarkGroup _sendBookmarkGroupChangedNotification]):
15646	Don't send notifications while loading bookmarks from disk.
15647	(-[IFBookmarkGroup _loadBookmarkGroupGuts]),
15648	(-[IFBookmarkGroup loadBookmarkGroup]),
15649	(-[IFBookmarkGroup _saveBookmarkGroupGuts]),
15650	(-[IFBookmarkGroup saveBookmarkGroup]): New methods, load/save bookmarks
15651	and report timings.
15652
15653	* History.subproj/IFURIEntry.m:
15654	(-[IFURIEntry dictionaryRepresentation]),
15655	(-[IFURIEntry initFromDictionaryRepresentation:]): Handle nil URL
15656	case, which bookmarks run into.
15657
15658	* WebKit.pbproj/project.pbxproj: version wars
15659
156602002-05-03  Darin Adler  <darin@apple.com>
15661
15662	* WebCoreSupport.subproj/IFCachedTextRenderer.m: Remove some of the unused code.
15663	I was going to wait and let Richard do it next week, but I was unable to control
15664	my urge to hack on it.
15665
156662002-05-03  Darin Adler  <darin@apple.com>
15667
15668	* Resources/url_icon.tiff: Improved icon. Could be better.
15669
156702002-05-03  Darin Adler  <darin@apple.com>
15671
15672	* Misc.subproj/WebKitDebug.h: Add WEBKIT_LOG_MEMUSAGE, WEBKIT_LOG_FONTCACHE, and
15673	WEBKIT_LOG_FONTCACHECHARMISS for font code moved here from WebCore.
15674
15675	* Resources/url_icon.tiff: New URL icon?
15676
15677	* WebCoreSupport.subproj/IFCachedTextRenderer.h: Added.
15678	* WebCoreSupport.subproj/IFCachedTextRenderer.m: Added.
15679	* WebCoreSupport.subproj/IFCachedTextRendererFactory.h: Added.
15680	* WebCoreSupport.subproj/IFCachedTextRendererFactory.m: Added.
15681	This has code moved here from WebCore.
15682
15683	* WebKit.pbproj/project.pbxproj: Add the new source files.
15684
15685	* Bookmarks.subproj/IFBookmarkLeaf.m:
15686	(-[IFBookmarkLeaf setURLString:]): Use copy instead of initWithString.
15687	* Bookmarks.subproj/IFBookmarkList.m:
15688	(-[IFBookmarkList initWithTitle:image:group:]): Use copy instead of stringWithString.
15689	(-[IFBookmarkList setTitle:]): Use copy instead of stringWithString.
15690	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _setTitle:]):
15691	Use mutableCopy instead of stringWithString.
15692	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]): Use copy instead
15693	of stringWithString.
15694
156952002-05-02  John Sullivan  <sullivan@apple.com>
15696
15697	Changed API such that mutating methods can now be called on bookmark objects,
15698	which in turn tell their group that they have changed (so the group can send
15699	out notifications).
15700
15701	* Bookmarks.subproj/IFBookmark.h:
15702	* Bookmarks.subproj/IFBookmark.m:
15703	(-[IFBookmark setTitle:]):
15704	(-[IFBookmark setImage:]):
15705	(-[IFBookmark setURLString:]):
15706	(-[IFBookmark insertChild:atIndex:]):
15707	(-[IFBookmark removeChild:]):
15708	(-[IFBookmark _parent]):
15709	(-[IFBookmark _group]):
15710	* Bookmarks.subproj/IFBookmarkGroup.h:
15711	* Bookmarks.subproj/IFBookmarkGroup.m:
15712	(-[IFBookmarkGroup _resetTopBookmark]):
15713	(-[IFBookmarkGroup _bookmarkDidChange:]):
15714	(-[IFBookmarkGroup _bookmarkChildrenDidChange:]):
15715	(-[IFBookmarkGroup removeBookmark:]):
15716	(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:image:URLString:isLeaf:]):
15717	* Bookmarks.subproj/IFBookmarkLeaf.m:
15718	(-[IFBookmarkLeaf setTitle:]):
15719	(-[IFBookmarkLeaf setImage:]):
15720	(-[IFBookmarkLeaf setURLString:]):
15721	* Bookmarks.subproj/IFBookmarkList.m:
15722	(-[IFBookmarkList setTitle:]):
15723	(-[IFBookmarkList setImage:]):
15724	(-[IFBookmarkList removeChild:]):
15725	(-[IFBookmarkList insertChild:atIndex:]):
15726	* Bookmarks.subproj/IFBookmark_Private.h:
15727	Made _parent and _group private; made setTitle, setImage, setURLString,
15728	insertChild:atIndex:, and removeChild: public.
15729
15730	* Bookmarks.subproj/IFBookmarkGroup_Private.h: Added.
15731	* WebKit.pbproj/project.pbxproj: Changed for new file.
15732
157332002-05-02  John Sullivan  <sullivan@apple.com>
15734
15735	Implemented removing the root node bookmark (i.e.,
15736	removing all bookmarks with one call).
15737
15738	* Bookmarks.subproj/IFBookmarkGroup.m:
15739	(-[IFBookmarkGroup _resetTopBookmark]): New method, releases
15740	old topBookmark and creates new one.
15741	(-[IFBookmarkGroup initWithFile:]): Call _resetTopBookmark.
15742	(-[IFBookmarkGroup removeBookmark:]): If the bookmark being
15743	removed is the top one, call _resetTopBookmark.
15744
157452002-05-02  John Sullivan  <sullivan@apple.com>
15746
15747	Some more implementation of bookmarks code, enough to support
15748	adding bookmarks to the Bookmarks menu (but not yet enough to
15749	support persistent bookmarks).
15750
15751	* Bookmarks.subproj/IFBookmark_Private.h:
15752	* Bookmarks.subproj/IFBookmark.h:
15753	* Bookmarks.subproj/IFBookmark.m:
15754	(-[IFBookmark numberOfChildren]): New public method, stub implementation.
15755	(-[IFBookmark _removeChild:]): New private method, stub implementation.
15756
15757	* Bookmarks.subproj/IFBookmarkGroup.h:
15758	* Bookmarks.subproj/IFBookmarkGroup.m:
15759	(-[IFBookmarkGroup _sendBookmarkGroupChangedNotification]):
15760	(-[IFBookmarkGroup removeBookmark:]):
15761	(-[IFBookmarkGroup addNewBookmarkToBookmark:withTitle:image:URLString:isLeaf:]):
15762	(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:image:URLString:isLeaf:]):
15763	(-[IFBookmarkGroup updateBookmark:title:image:URLString:]):
15764	Changed "URL" to "URLString" in several places, added a "with"
15765	to some parameter names; added addNewBookmarkToBookmark public 
15766	method; added notification that's sent when bookmarks are added or removed.
15767
15768	* Bookmarks.subproj/IFBookmarkLeaf.h:
15769	* Bookmarks.subproj/IFBookmarkLeaf.m:
15770	(-[IFBookmarkLeaf initWithURLString:title:image:group:]):
15771	Added image parameter.
15772
15773	* Bookmarks.subproj/IFBookmarkList.m:
15774	(-[IFBookmarkList numberOfChildren]): New method.
15775	(-[IFBookmarkList _removeChild:]): Implemented.
15776
157772002-04-30  John Sullivan  <sullivan@apple.com>
15778
15779	Added initial set of files/API and some of the code for
15780	bookmarks support. Nobody calls it yet, but it compiles.
15781	I wanted to get this in before I ran into project file
15782	merge conflicts.
15783
15784	* Bookmarks.subproj/IFBookmark.h: Added.
15785	* Bookmarks.subproj/IFBookmark_Private.h: Added.
15786	* Bookmarks.subproj/IFBookmark.m: Added.
15787	(-[IFBookmark dealloc]):
15788	(-[IFBookmark title]):
15789	(-[IFBookmark _setTitle:]):
15790	(-[IFBookmark image]):
15791	(-[IFBookmark _setImage:]):
15792	(-[IFBookmark isLeaf]):
15793	(-[IFBookmark URLString]):
15794	(-[IFBookmark _setURLString:]):
15795	(-[IFBookmark children]):
15796	(-[IFBookmark _insertChild:atIndex:]):
15797	(-[IFBookmark parent]):
15798	(-[IFBookmark _setParent:]):
15799	(-[IFBookmark group]):
15800	(-[IFBookmark _setGroup:]):
15801	* Bookmarks.subproj/IFBookmarkGroup.h: Added.
15802	* Bookmarks.subproj/IFBookmarkGroup.m: Added.
15803	(+[IFBookmarkGroup bookmarkGroupWithFile:]):
15804	(-[IFBookmarkGroup initWithFile:]):
15805	(-[IFBookmarkGroup dealloc]):
15806	(-[IFBookmarkGroup topBookmark]):
15807	(-[IFBookmarkGroup insertBookmark:atIndex:ofBookmark:]):
15808	(-[IFBookmarkGroup removeBookmark:]):
15809	(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:title:image:URL:isLeaf:]):
15810	(-[IFBookmarkGroup updateBookmark:title:image:URL:]):
15811	(-[IFBookmarkGroup file]):
15812	(-[IFBookmarkGroup loadBookmarkGroup]):
15813	(-[IFBookmarkGroup saveBookmarkGroup]):
15814	* Bookmarks.subproj/IFBookmarkLeaf.h: Added.
15815	* Bookmarks.subproj/IFBookmarkLeaf.m: Added.
15816	(-[IFBookmarkLeaf dealloc]):
15817	(-[IFBookmarkLeaf title]):
15818	(-[IFBookmarkLeaf _setTitle:]):
15819	(-[IFBookmarkLeaf image]):
15820	(-[IFBookmarkLeaf _setImage:]):
15821	(-[IFBookmarkLeaf isLeaf]):
15822	(-[IFBookmarkLeaf URLString]):
15823	(-[IFBookmarkLeaf _setURLString:]):
15824	* Bookmarks.subproj/IFBookmarkList.h: Added.
15825	* Bookmarks.subproj/IFBookmarkList.m: Added.
15826	(-[IFBookmarkList initWithTitle:image:group:]):
15827	(-[IFBookmarkList dealloc]):
15828	(-[IFBookmarkList title]):
15829	(-[IFBookmarkList _setTitle:]):
15830	(-[IFBookmarkList image]):
15831	(-[IFBookmarkList _setImage:]):
15832	(-[IFBookmarkList isLeaf]):
15833	(-[IFBookmarkList children]):
15834	(-[IFBookmarkList _insertChild:atIndex:]):
15835
15836	* WebKit.pbproj/project.pbxproj: Updated for new files.
15837
158382002-04-29  Richard Williamson  <rjw@apple.com>
15839
15840        Fix to 2915688.  I wasn't checking if the main document error had an error, only
15841        the resource errors.
15842        
15843	* WebView.subproj/IFWebFramePrivate.mm:
15844	(-[IFWebFrame _isLoadComplete]):
15845
158462002-04-29  Richard Williamson  <rjw@apple.com>
15847
15848        Restored file, line, and function to log messages.
15849        
15850	* Misc.subproj/WebKitDebug.m:
15851	(WebKitLog):
15852
158532002-04-25  Darin Adler  <darin@apple.com>
15854
15855	* History.subproj/IFWebHistoryPrivate.m:
15856	(-[IFWebHistoryPrivate _loadHistoryGuts:]): Use NSDictionary instead
15857	of NSObject to avoid a cast.
15858
15859	* WebView.subproj/IFLocationChangeHandler.h: Add NSObject as a required
15860	protocol so we can retain and release.
15861	* WebView.subproj/IFWebController.h: Add NSObject as a required protocol
15862	so we can retain and release.
15863
15864	* WebView.subproj/IFWebDataSourcePrivate.mm:
15865	(-[IFWebDataSourcePrivate dealloc]):
15866	(-[IFWebDataSource _setLoading:]):
15867	(-[IFWebDataSource _setController:]):
15868	(-[IFWebDataSource _setLocationChangeHandler:]):
15869	* WebView.subproj/IFWebViewPrivate.mm:
15870	(-[IFWebViewPrivate dealloc]):
15871	Removed NSObject * casts that were used to work around the problem fixed above.
15872
158732002-04-25  Chris Blumenberg  <set EMAIL_ADDRESS environment variable>
15874
15875	* MIME.subproj/IFDownloadHandler.h:
15876	* MIME.subproj/IFDownloadHandler.mm:
15877	(+[IFDownloadHandler launchURL:]):
15878
15879	Added the above method as a way to universally launch an URL
15880	within WebKit
15881
15882	* WebView.subproj/IFBaseWebController.mm:
15883	(-[IFBaseWebController URLPolicyForURL:]):
15884
15885	We handle http, https and file URL's
15886
15887	* WebView.subproj/IFWebDataSource.mm:
15888	(-[IFWebDataSource initWithURL:]):
15889	(-[IFWebDataSource startLoading:]):
15890
15891	The IFURLHandle is now lazilly allocated.
15892
15893	* WebView.subproj/IFWebFrame.mm:
15894	(-[IFWebFrame setProvisionalDataSource:]):
15895
15896	We only load a data source if the URL policy is IFURLPolicyUseContentPolicy
15897
158982002-04-25  Richard Williamson  <rjw@apple.com>
15899
15900        Fixed problem with errors potentially being reported on
15901        wrong data source by moving collected errors from frame
15902        to datasource.
15903        
15904        Little changes in preparation for events.
15905        
15906	* WebView.subproj/IFBaseWebControllerPrivate.mm:
15907	(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]):
15908	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
15909	(-[IFBaseWebController _receivedError:forResource:partialProgress:fromDataSource:]):
15910	(-[IFBaseWebController _mainReceivedError:forResource:partialProgress:fromDataSource:]):
15911	* WebView.subproj/IFWebDataSource.h:
15912	* WebView.subproj/IFWebDataSource.mm:
15913	(-[IFWebDataSource errors]):
15914	(-[IFWebDataSource mainDocumentError]):
15915	* WebView.subproj/IFWebDataSourcePrivate.h:
15916	* WebView.subproj/IFWebDataSourcePrivate.mm:
15917	(-[IFWebDataSourcePrivate dealloc]):
15918	(-[IFWebDataSource _startLoading:]):
15919	(-[IFWebDataSource _setMainDocumentError:]):
15920	(-[IFWebDataSource _clearErrors]):
15921	(-[IFWebDataSource _addError:forResource:]):
15922	* WebView.subproj/IFWebFrame.h:
15923	* WebView.subproj/IFWebFrame.mm:
15924	(-[IFWebFrame reload:]):
15925	(-[IFWebFrame reset]):
15926	* WebView.subproj/IFWebFramePrivate.h:
15927	* WebView.subproj/IFWebFramePrivate.mm:
15928	(-[IFWebFramePrivate dealloc]):
15929	(-[IFWebFrame _isLoadComplete]):
15930	(-[IFWebFrame _checkLoadComplete]):
15931	* WebView.subproj/IFWebView.mm:
15932	(-[IFWebView acceptsFirstResponder]):
15933	(-[IFWebView layout]):
15934	(-[IFWebView drawRect:]):
15935
159362002-04-25  Darin Adler  <darin@apple.com>
15937
15938	Rework plugin code to prepare to move more of here from WebCore.
15939
15940	* Plugins.subproj/IFPluginView.mm:
15941	(IFPluginViewCreate): New. Does all the work of creating an NSView
15942	for a plug-in, including stuff previously done in WebCore.
15943	(IFJavaAppletViewCreate): Same as above, for Java applets.
15944	(+[IFPluginView load]): Set up the function pointers using the new
15945	improved WebCore API.
15946
15947	* Plugins.subproj/IFNullPluginView.mm:
15948	(-[IFNullPluginView load]): Remove this setup because now there's
15949	no separate call to set up a null plug-in.
15950
159512002-04-25  John Sullivan  <sullivan@apple.com>
15952
15953	Fixed 2911915 (Exception in -[IFWebView mouseMoved])
15954
15955	* WebView.subproj/IFWebView.mm:
15956	(-[IFWebView mouseDown:]): Changed "mouseUp" to "mouseDown"
15957	in exception message.
15958
15959	(-[IFWebView mouseMoved:]): Removed bogus event-type checking
15960	that caused this method to (always?) throw an exception when
15961	invoked.
15962
159632002-04-24  Chris Blumenberg  <cblu@apple.com>
15964
15965	Renamed [IFWebDataSource frame] to [IFWebDataSource webFrame]
15966
15967	* WebView.subproj/IFBaseWebControllerPrivate.mm:
15968	(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]):
15969	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
15970	(-[IFBaseWebController _receivedError:forResource:partialProgress:fromDataSource:]):
15971	(-[IFBaseWebController _mainReceivedError:forResource:partialProgress:fromDataSource:]):
15972	* WebView.subproj/IFMainURLHandleClient.mm:
15973	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
15974	* WebView.subproj/IFWebDataSource.h:
15975	* WebView.subproj/IFWebDataSource.mm:
15976	(-[IFWebDataSource webFrame]):
15977	(-[IFWebDataSource frameName]):
15978	(-[IFWebDataSource isLoading]):
15979	* WebView.subproj/IFWebDataSourcePrivate.mm:
15980	(-[IFWebDataSource _startLoading:]):
15981	(-[IFWebDataSource _setTitle:]):
15982
159832002-04-24  Richard Williamson  <rjw@apple.com>
15984
15985        Changed ordering of messages so activity viewer doesn't get -1 bytesSoFar
15986        for cancelled messages.
15987        
15988	* WebView.subproj/IFBaseWebControllerPrivate.mm:
15989	(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]):
15990	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
15991
15992=== Alexander 0.3c2 (v1) ===
15993
159942002-04-23  Chris Blumenberg  <cblu@apple.com>
15995
15996	* WebKit.pbproj/project.pbxproj:
15997
15998	Took IFDownloadHandler.h out of the public headers.
15999
16000	* WebView.subproj/IFLocationChangeHandler.h:
16001
16002	Removed deprecated methods.
16003
16004	* WebView.subproj/IFWebFrame.mm:
16005	(-[IFWebFrame setProvisionalDataSource:]):
16006
16007	Don't call locationChangeStarted anymore.
16008
160092002-04-23  Chris Blumenberg  <cblu@apple.com>
16010
16011	* MIME.subproj/IFDownloadHandler.h:
16012	* MIME.subproj/IFDownloadHandler.m: Removed.
16013	* MIME.subproj/IFDownloadHandler.mm: Added.
16014	(-[IFDownloadHandler initWithDataSource:]):
16015	(-[IFDownloadHandler dealloc]):
16016	* MIME.subproj/IFDownloadHandlerPrivate.h: Removed.
16017	* MIME.subproj/IFDownloadHandlerPrivate.m: Removed.
16018
16019	Made IFDownloadHandler a private class that retains the data source
16020	and saves the data to disk.
16021
16022	* WebKit.pbproj/project.pbxproj:
16023
16024	Removed IFDownloadHandlerPrivate
16025
16026	* WebView.subproj/IFBaseWebControllerPrivate.mm:
16027	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
16028
16029	Only send locationChangeCommitted if its shown inline.
16030
16031	* WebView.subproj/IFMainURLHandleClient.mm:
16032	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
16033	
16034	Save data with IFDownloadHandler
16035
16036	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
16037	
16038	If its a download, set the provisionalDataSource on the frame to nil.	
16039
16040	* WebView.subproj/IFWebDataSource.h:
16041	* WebView.subproj/IFWebDataSource.mm:
16042	(-[IFWebDataSource webFrame]):
16043	(-[IFWebDataSource pageTitle]):
16044	(-[IFWebDataSource contentPolicy]):
16045
16046	Added some accessor methods. Spelling fix pageTitle.
16047
160482002-04-23  Kenneth Kocienda  <kocienda@apple.com>
16049
16050        Reviewed by: Darin Adler
16051
16052        Fix for Radar 2908403 (Fix names in WebFoundation extensions code)
16053
16054        Extensions code in WebFoundation now is in its own namespace.
16055        Where we have added categories to existing Foundation and AppKit
16056        classes, the categories begin with the IF prefix. All method names
16057        begin with the _IF_ prefix.
16058
16059        This file here was changed to use the new names.
16060
16061	* History.subproj/IFWebHistoryPrivate.m:
16062	(-[IFWebHistoryPrivate findIndex:forDay:]):
16063	(-[IFWebHistoryPrivate arrayRepresentation]):
16064	(-[IFWebHistoryPrivate _loadHistoryGuts:]):
16065
160662002-04-22  Chris Blumenberg  <cblu@apple.com>
16067
16068	* WebView.subproj/IFMainURLHandleClient.mm:
16069	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
16070
16071	Send an IFError when we're asked to show content we can't handle.
16072
16073	* WebView.subproj/IFWebDataSourcePrivate.mm:
16074
16075	Cleaning
16076
160772002-04-22  Chris Blumenberg  <cblu@apple.com>
16078
16079	* WebKit.pbproj/project.pbxproj:
16080	* WebView.subproj/IFBaseWebController.mm:
16081	(-[IFBaseWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
16082	* WebView.subproj/IFWebDataSourcePrivate.h:
16083	* WebView.subproj/IFWebDataSourcePrivate.mm:
16084
16085	Fixed frames which I broke in the previous commit. We now set the content policy
16086	on all child frames instead of just the main frame.	
16087
160882002-04-22  Chris Blumenberg  <cblu@apple.com>
16089
16090	* MIME.subproj/IFMIMEHandler.h:
16091	* MIME.subproj/IFMIMEHandler.m:
16092	(+[IFMIMEHandler showableMIMETypes]):
16093	(+[IFMIMEHandler saveFileWithPath:andData:]):
16094	(+[IFMIMEHandler saveAndOpenFileWithPath:andData:]):
16095
16096	Added the above factory methods.
16097
16098	* WebView.subproj/IFBaseWebController.mm:
16099	(-[IFBaseWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
16100	
16101	Save the content policy and download path on the datasource.
16102
16103	* WebView.subproj/IFMainURLHandleClient.mm:
16104	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
16105	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
16106	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
16107	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
16108	
16109	Made IFMainURLHandleClient use our new content policy API rather than
16110	IFDownloadHandler.
16111	
16112	* WebView.subproj/IFWebController.h:
16113
16114	Removed some deprecated methods.
16115
16116	* WebView.subproj/IFWebDataSourcePrivate.h:
16117	* WebView.subproj/IFWebDataSourcePrivate.mm:
16118	(-[IFWebDataSource _downloadPath]):
16119	(-[IFWebDataSource _setDownloadPath:]):
16120	(-[IFWebDataSource _contentPolicy]):
16121	(-[IFWebDataSource _setContentPolicy:]):
16122
16123	Added the above methods.
16124
161252002-04-22  Darin Adler  <darin@apple.com>
16126
16127	* Plugins.subproj/IFPluginView.mm:
16128	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
16129	Fix the fix. It was bumping argsCount even when not putting an
16130	argument into the array.
16131
161322002-04-21  Maciej Stachowiak  <mjs@apple.com>
16133
16134	Fix a plugins memory trasher that was making Alexander crash on
16135	the abcnews.com test page in cvs-torture-test:
16136
16137	* Plugins.subproj/IFPluginView.mm:
16138	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
16139	Use a new maxArguments variable to size the argument and value
16140	arrays - with the old code argsCount would end up twice the size
16141	it should be, and the arguments would all get written past the end
16142	of the argument array.
16143
161442002-04-19  Kenneth Kocienda  <kocienda@apple.com>
16145
16146        Changes to support submission of forms using HTTP POST.
16147
16148        These changes move us over to using the new WebKit interface for creating 
16149        WebDataSource instances, one that passes a handle rather than just a URL, 
16150        enabling the specific request method to be communicated to WebFoundation.
16151        This fixes:
16152
16153        Radar 2903602 (IFWebDataSource API must passes attributes and flags to IFURLHandle)
16154
16155	* WebKit.pbproj/project.pbxproj:
16156	* WebView.subproj/IFWebDataSource.h:
16157	* WebView.subproj/IFWebDataSource.mm: (IFWebDataSourceMake), (-[IFWebDataSource
16158	initWithURL:]), (-[IFWebDataSource initWithHandle:]):
16159	* WebView.subproj/IFWebDataSourcePrivate.h:
16160	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _startLoading:]):
16161
161622002-04-19  Richard Williamson  <rjw@apple.com>
16163
16164        Updated comments to reflect new API.
16165        
16166	* WebView.subproj/IFLocationChangeHandler.h:
16167
161682002-04-19  Darin Adler  <darin@apple.com>
16169
16170	* Plugins.subproj/IFPluginView.h: Re-add the attributes and values arrays,
16171	since they need to live the life of the plugin.
16172	* Plugins.subproj/IFPluginView.mm: (newCString): New function to make a C++
16173	new-allocated C string from an NSString.
16174	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]): Move code
16175	to allocate the arrays back here.
16176	(-[IFPluginView dealloc]): Deallocate the arrays and their contents.
16177	(-[IFPluginView start]): Simplify now that it does no work.
16178
161792002-04-18  Chris Blumenberg  <cblu@apple.com>
16180
16181	Made stop and start to work better. Fixed a bug darin made.
16182	
16183	* Plugins.subproj/IFPluginView.h:
16184	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
16185	initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView setWindow]),
16186	(-[IFPluginView start]), (-[IFPluginView stop]):
16187
161882002-04-18  Richard Williamson  <rjw@apple.com>
16189
16190        Fixed typo.
16191
16192	* WebView.subproj/IFBaseLocationChangeHandler.m: (-[IFBaseLocationChangeHandler
16193	requestContentPolicyForMIMEType:]):
16194	* WebView.subproj/IFLocationChangeHandler.h:
16195
161962002-04-18  Richard Williamson  <rjw@apple.com>
16197
16198        New API stubs for content policy.
16199        
16200	* WebView.subproj/IFBaseLocationChangeHandler.h: Added.
16201	* WebView.subproj/IFBaseLocationChangeHandler.m: Added.
16202	 (+[IFBaseLocationChangeHandler setGlobalContentPolicy:forMIMEType:]),
16203	(+[IFBaseLocationChangeHandler globaContentPolicyForContentType:]),
16204	(+[IFBaseLocationChangeHandler globalContentPolicies]),
16205	(+[IFBaseLocationChangeHandler suggestedFileanemForURL:andContentType:]),
16206	(+[IFBaseLocationChangeHandler suggestedDirectoryForURL:andContentType:]),
16207	(+[IFBaseLocationChangeHandler extensionForURL:]), (-[IFBaseLocationChangeHandler
16208	extension]), (-[IFBaseLocationChangeHandler locationWillChangeTo:]),
16209	(-[IFBaseLocationChangeHandler locationChangeStarted]),
16210	(-[IFBaseLocationChangeHandler locationChangeCommitted]),
16211	(-[IFBaseLocationChangeHandler locationChangeDone:]),
16212	(-[IFBaseLocationChangeHandler receivedPageTitle:forDataSource:]),
16213	(-[IFBaseLocationChangeHandler serverRedirectTo:forDataSource:]),
16214	(-[IFBaseLocationChangeHandler downloadingWithHandler:]),
16215	(-[IFBaseLocationChangeHandler requestContentPolicyForContentMIMEType:]),
16216	(-[IFBaseLocationChangeHandler unableToImplementContentPolicy:]):
16217	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
16218	receivedError:forDownloadHandler:partialProgress:]), (-[IFBaseWebController
16219	provideLocationChangeHandlerForFrame:andURL:]), (-[IFBaseWebController
16220	URLPolicyForURL:]), (-[IFBaseWebController
16221	unableToImplementURLPolicyForURL:error:]), (-[IFBaseWebController
16222	haveContentPolicy:andPath:forLocationChangeHandler:]):
16223	* WebView.subproj/IFLocationChangeHandler.h:
16224	* WebView.subproj/IFWebController.h:
16225	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _setState:]):
16226
162272002-04-18  Darin Adler  <darin@apple.com>
16228
16229	* WebKit.pbproj/project.pbxproj: Oops. Take out -Wstrict-prototypes, put back
16230	-Wmissing-prototypes.
16231
162322002-04-18  Darin Adler  <darin@apple.com>
16233
16234	* WebKit.pbproj/project.pbxproj: Take out -Wmissing-prototypes
16235	because system headers are triggering it when we don't have
16236	precompiled headers on.
16237
162382002-04-18  Darin Adler  <darin@apple.com>
16239
16240	Fixes for compiling with gcc3 and more warnings.
16241
16242	* WebKit.pbproj/project.pbxproj: Turn on gcc3 and the same set of warnings
16243	as in the rest of Labyrinth (see top level ChangeLog for details).
16244
16245	* Plugins.subproj/IFPluginView.mm:
16246	Avoid warnings about malloc by not using it.
16247	(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]): Keep the arguments
16248	dictionary around instead of keeping the C format version of it around. Also don't
16249	bother keeping the C string form of the MIME type around, and simplify some other
16250	stuff in here.
16251	(-[IFPluginView dealloc]): Corresponding changes since we keep a different set of things.
16252	(-[IFPluginView newStream:mimeType:notifyData:]): Use [mimeType cString].
16253	(-[IFPluginView start]): Build the lists of attributes and values in here. Do it using
16254	[NSString cString] for simplicity and don't keep the lists around after we're done with
16255	them.
16256	(-[IFPluginView IFURLHandleResourceDidFinishLoading:data:]): Use [filenameClassic cString].
16257
16258	* WebView.subproj/IFMainURLHandleClient.mm:
16259	(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]),
16260	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]),
16261	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]),
16262	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
16263	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
16264	(-[IFWebDataSource _setLoading:]), (-[IFWebDataSource _setController:]),
16265	(-[IFWebDataSource _setLocationChangeHandler:]):
16266	* WebView.subproj/IFWebView.mm: (-[IFWebView provisionalDataSourceChanged:]),
16267	(-[IFWebView mouseUp:]), (-[IFWebView mouseDown:]):
16268	Add type casts required by pickier gcc3.
16269
16270	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebViewPrivate dealloc]):
16271	Add type cast required by pickier gcc3.
16272	(-[IFWebView _stopPlugins]): Use local variable to work around Radar 2905835.
16273
162742002-04-18  Chris Blumenberg  <cblu@apple.com>
16275
16276	Moved plugin instance creation to the start method in IFPluginView.
16277
16278	* Plugins.subproj/IFPluginView.h:
16279	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
16280	initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView dealloc]),
16281	(-[IFPluginView newStream:mimeType:notifyData:]), (-[IFPluginView start]),
16282	(-[IFPluginView stop]), (-[IFPluginView drawRect:]), (-[IFPluginView
16283	windowBecameKey:]), (-[IFPluginView windowResignedKey:]), (-[IFPluginView
16284	IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFPluginView
16285	IFURLHandleResourceDidFinishLoading:data:]):
16286	
16287
162882002-04-17  Darin Adler  <darin@apple.com>
16289
16290	* WebKit.pbproj/project.pbxproj: Update header search paths to find
16291	WebCore in the new location and eliminate WebCore/include.
16292
162932002-04-17  Chris Blumenberg  <cblu@apple.com>
16294
16295	Added a debug bit mask for plugins and downloads.
16296
16297	* MIME.subproj/IFDownloadHandlerPrivate.m: (-[IFDownloadHandlerPrivate
16298	_openFile]), (-[IFDownloadHandlerPrivate _saveFile]), (-[IFDownloadHandler
16299	_initWithURLHandle:mimeHandler:]):
16300	* Misc.subproj/WebKitDebug.h:
16301	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
16302	initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView setWindow]),
16303	(-[IFPluginView newStream:mimeType:notifyData:]), (-[IFPluginView stop]),
16304	(-[IFPluginView sendUpdateEvent]), (-[IFPluginView becomeFirstResponder]),
16305	(-[IFPluginView resignFirstResponder]), (-[IFPluginView mouseDown:]),
16306	(-[IFPluginView mouseUp:]), (-[IFPluginView mouseEntered:]), (-[IFPluginView
16307	mouseExited:]), (-[IFPluginView keyUp:]), (-[IFPluginView keyDown:]),
16308	(-[IFPluginView IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFPluginView
16309	IFURLHandleResourceDidFinishLoading:data:]), (-[IFPluginView
16310	getURLNotify:target:notifyData:]), (-[IFPluginView getURL:target:]),
16311	(-[IFPluginView postURLNotify:target:len:buf:file:notifyData:]), (-[IFPluginView
16312	postURL:target:len:buf:file:]), (-[IFPluginView newStream:target:stream:]),
16313	(-[IFPluginView write:len:buffer:]), (-[IFPluginView destroyStream:reason:]),
16314	(-[IFPluginView status:]), (-[IFPluginView getValue:value:]), (-[IFPluginView
16315	setValue:value:]), (-[IFPluginView invalidateRect:]), (-[IFPluginView
16316	invalidateRegion:]), (-[IFPluginView forceRedraw]):
16317	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
16318	IFURLHandle:resourceDataDidBecomeAvailable:]):
16319
163202002-04-17  Darin Adler  <darin@apple.com>
16321
16322	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]):
16323	Changed another Georgia that I missed to Times New Roman.
16324
163252002-04-16  Darin Adler  <darin@apple.com>
16326
16327	* WebView.subproj/IFWebDataSource.mm:
16328	* WebView.subproj/IFWebDataSourcePrivate.mm:
16329	Touch these files to try to make Jersey build again.
16330
163312002-04-16  Darin Adler  <darin@apple.com>
16332
16333	* WebView.subproj/IFBaseWebControllerPrivate.mm: Include khtml_part.h instead
16334	of KWQKHTMLPart.h.
16335
16336	* WebView.subproj/IFWebFrame.mm: Include khtml_part.h instead of KWQKHTMLPart.h.
16337
16338	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource documentTextFromDOM]):
16339	Remove an unneeded cast and an extra retain/autorelease.
16340
163412002-04-16  Darin Adler  <darin@apple.com>
16342
16343	* WebView.subproj/IFWebFrame.h:
16344	* WebView.subproj/IFWebFrame.mm:
16345	* WebView.subproj/IFWebFramePrivate.h:
16346	Change view/setView back to be id, rather than IFWebView.
16347	In the future, the view may be some other kind of object.
16348
163492002-04-16  John Sullivan  <sullivan@apple.com>
16350
16351	Fixed bug Chris noticed where Alexander wasn't putting up
16352	an error sheet on failed page visits.
16353
16354	* WebView.subproj/IFWebFramePrivate.mm: 
16355	(-[IFWebFrame _isLoadComplete]): Don't set provisionalDataSource
16356	to nil until after sending it locationChangeDone.
16357
163582002-04-16  Darin Adler  <darin@apple.com>
16359
16360	* WebView.subproj/IFBaseWebController.mm: Remove special release handling because
16361	data sources now retain the controller as long as they are loading.
16362
16363	* WebView.subproj/IFWebDataSource.mm: Remove special release handling because
16364	data sources now retain themselves as long as they are loading.
16365
16366	* WebView.subproj/IFWebFrame.mm: Remove special release handling, because
16367	data sources now retain the controller as long as they are loading, and the
16368	controller retains the frame.
16369
16370	* WebView.subproj/IFWebDataSourcePrivate.h: Add a "loading" boolean.
16371	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _setLoading:]):
16372	Change the "loading" state, retaining or releasing this object and the controller
16373	as necessary.
16374	(-[IFWebDataSource _updateLoading]): Update the loading state; called when
16375	some part of loading is done to see if it's all done.
16376	(-[IFWebDataSource _setController:]): Retain the new controller and release the
16377	old controller when loading.
16378	(-[IFWebDataSource _setPrimaryLoadComplete:]): Call _updateLoading.
16379	(-[IFWebDataSource _startLoading:]): Call _setLoading:YES.
16380	(-[IFWebDataSource _addURLHandle:]): Call _setLoading:YES.
16381	(-[IFWebDataSource _removeURLHandle:]): Call _updateLoading.
16382
16383	* WebView.subproj/IFWebFrame.h: Use the real type, IFWebView, for setView and view.
16384	* WebView.subproj/IFWebFramePrivate.h: Formatting tweak.
16385	* WebKit.pbproj/project.pbxproj: Version wars.
16386
163872002-04-16  John Sullivan  <sullivan@apple.com>
16388
16389	* WebView.subproj/IFWebViewPrivate.mm: 
16390	(-[IFWebView _setController:]): removed a mistaken
16391	retain/release pair here for Darin.
16392
163932002-04-16  Darin Adler  <darin@apple.com>
16394
16395	Change default font to "Times New Roman 11" rather than
16396	"Georgia 12" to be more like Macintosh Internet Explorer.
16397
16398	* WebView.subproj/IFPreferences.mm:
16399
16400	A little simplifying of private pointers.
16401
16402	* MIME.subproj/IFDownloadHandler.h:
16403	* MIME.subproj/IFDownloadHandler.m:
16404
164052002-04-16  Darin Adler  <darin@apple.com>
16406
16407	A little simplifying of private pointers.
16408
16409	* MIME.subproj/IFDownloadHandler.m:
16410	* MIME.subproj/IFDownloadHandlerPrivate.m:
16411	* WebView.subproj/IFBaseWebController.mm:
16412	* WebView.subproj/IFWebDataSource.h:
16413	* WebView.subproj/IFWebDataSource.mm:
16414	* WebView.subproj/IFWebDataSourcePrivate.mm:
16415	* WebView.subproj/IFWebFrame.h:
16416	* WebView.subproj/IFWebFrame.mm:
16417	* WebView.subproj/IFWebFramePrivate.mm:
16418	* WebView.subproj/IFWebView.h:
16419	* WebView.subproj/IFWebView.mm:
16420	* WebView.subproj/IFWebViewPrivate.h:
16421	* WebView.subproj/IFWebViewPrivate.mm:
16422
164232002-04-16  Darin Adler  <darin@apple.com>
16424
16425	Change headers so they don't include so much.
16426	Also change IF_LOAD_TYPE to IFLoadType.
16427
16428	* History.subproj/IFBackForwardList.h:
16429	* History.subproj/IFBackForwardList.m:
16430	* History.subproj/IFURIEntry.h:
16431	* History.subproj/IFURIList.h:
16432	* History.subproj/IFURIList.m:
16433	* History.subproj/IFWebHistory.h:
16434	* History.subproj/IFWebHistoryPrivate.h:
16435	* History.subproj/IFWebHistoryPrivate.m:
16436	* MIME.subproj/IFContentHandler.h:
16437	* MIME.subproj/IFDownloadHandler.h:
16438	* MIME.subproj/IFDownloadHandlerPrivate.h:
16439	* MIME.subproj/IFDownloadHandlerPrivate.m:
16440	* MIME.subproj/IFMIMEDatabase.h:
16441	* MIME.subproj/IFMIMEDatabase.m:
16442	* Misc.subproj/IFException.h:
16443	* Plugins.subproj/IFNullPluginView.mm:
16444	* Plugins.subproj/IFPluginView.h:
16445	* Plugins.subproj/IFPluginView.mm:
16446	* WebKit.pbproj/project.pbxproj:
16447	* WebView.subproj/IFBaseWebController.h:
16448	* WebView.subproj/IFBaseWebController.mm:
16449	* WebView.subproj/IFBaseWebControllerPrivate.h:
16450	* WebView.subproj/IFBaseWebControllerPrivate.mm:
16451	* WebView.subproj/IFLoadProgress.h:
16452	* WebView.subproj/IFLoadProgress.mm:
16453	* WebView.subproj/IFLocationChangeHandler.h:
16454	* WebView.subproj/IFMainURLHandleClient.h:
16455	* WebView.subproj/IFMainURLHandleClient.mm:
16456	* WebView.subproj/IFPreferences.h:
16457	* WebView.subproj/IFPreferencesPrivate.h:
16458	* WebView.subproj/IFWebController.h:
16459	* WebView.subproj/IFWebDataSource.h:
16460	* WebView.subproj/IFWebDataSource.mm:
16461	* WebView.subproj/IFWebDataSourcePrivate.h:
16462	* WebView.subproj/IFWebDataSourcePrivate.mm:
16463	* WebView.subproj/IFWebFrame.h:
16464	* WebView.subproj/IFWebFrame.mm:
16465	* WebView.subproj/IFWebFramePrivate.h:
16466	* WebView.subproj/IFWebFramePrivate.mm:
16467	* WebView.subproj/IFWebView.h:
16468	* WebView.subproj/IFWebView.mm:
16469	* WebView.subproj/IFWebViewPrivate.h:
16470	* WebView.subproj/IFWebViewPrivate.mm:
16471
164722002-04-16  Kenneth Kocienda  <kocienda@apple.com>
16473
16474        Moved IFError class from WebKit to WebFoundation.
16475        Updated includes due to this change.
16476        Updated URL handle client interface to pass an IFError in
16477        an error callback rather than a plain int. The URL client was
16478        modified due to this change.
16479
16480	* Misc.subproj/IFError.h: Removed.
16481	* Misc.subproj/IFError.m: Removed.
16482	* Plugins.subproj/IFPluginView.mm:
16483	* WebKit.pbproj/project.pbxproj:
16484	* WebView.subproj/IFBaseWebControllerPrivate.mm:
16485	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
16486	IFURLHandle:resourceDidFailLoadingWithResult:]):
16487	* WebView.subproj/IFWebFramePrivate.mm:
16488
164892002-04-15  Darin Adler  <darin@apple.com>
16490
16491	* WebView.subproj/IFPreferences.h:
16492	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]): Remove the old
16493	WebKitFontSizes preference.
16494	(-[IFPreferences mediumFontSize]), (-[IFPreferences setMediumFontSize:]): New.
16495
16496	* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]): Call
16497	updateStyleSelector() instead of recalcStyle().
16498
164992002-04-15  Darin Adler  <darin@apple.com>
16500
16501        Merged changes from previous merge branch.
16502
16503        2002-03-25  Darin Adler  <darin@apple.com>
16504
16505	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]):
16506        Add WebKitMediumFontSizePreferenceKey.
16507
165082002-04-15  John Sullivan  <sullivan@apple.com>
16509
16510	* Plugins.subproj/IFNullPluginView.mm: (-[IFNullPluginView drawRect:]):
16511	Moved a line of code to prevent pluginNotFound message from being
16512	sent twice.
16513
165142002-04-15  Richard Williamson  <rjw@apple.com>
16515
16516        Changes to IFLocationChangeHandler.
16517        
16518        Experimental allocator code, not to be used, not thread safe.!
16519        
16520	* Misc.subproj/WebKitDebug.h:
16521	* Misc.subproj/WebKitDebug.m: (if_check_zone), (_debugAllocate),
16522	(_debugAllocatorInitialize), (printDebugMallocCounters), (if_cf_retain),
16523	(if_cf_release), (if_cf_alloc), (if_cf_realloc), (if_cf_dealloc),
16524	(if_cf_preferredSize), (setupDebugMalloc), (clearDebugMalloc),
16525	(resetDebugMallocCounters), (public_mALLOc), (public_fREe), (public_rEALLOc),
16526	(public_mEMALIGn), (public_vALLOc), (public_pVALLOc), (public_cALLOc),
16527	(public_iCALLOc), (public_iCOMALLOc), (public_cFREe), (public_mTRIm),
16528	(public_mUSABLe), (public_mSTATs), (public_mALLINFo), (public_mALLOPt),
16529	(do_check_malloc_state), (mALLINFo), (mSTATs), (if_size), (if_valloc),
16530	(if_malloc), (if_realloc), (if_calloc), (if_free):
16531	* WebKit.pbproj/project.pbxproj:
16532	* WebView.subproj/IFBaseWebController.h:
16533	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
16534	provideLocationChangeHandlerForFrame:]):
16535	* WebView.subproj/IFLocationChangeHandler.h: Added.
16536	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
16537	IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFMainURLHandleClient
16538	IFURLHandle:didRedirectToURL:]):
16539	* WebView.subproj/IFWebController.h:
16540	* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource load]):
16541	* WebView.subproj/IFWebDataSourcePrivate.h:
16542	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
16543	(-[IFWebDataSource _startLoading:]), (-[IFWebDataSource _setTitle:]),
16544	(-[IFWebDataSource _locationChangeHandler]), (-[IFWebDataSource
16545	_setLocationChangeHandler:]):
16546	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame setProvisionalDataSource:]):
16547	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
16548	_transitionProvisionalToCommitted]), (-[IFWebFrame _isLoadComplete]):
16549
165502002-04-15  Chris Blumenberg  <set EMAIL_ADDRESS environment variable>
16551
16552	* MIME.subproj/IFContentHandler.m: (-[IFContentHandler HTMLDocument]):
16553
16554	Made sure I didn't unnecessarily allocate html document strings
16555
16556	* MIME.subproj/IFDownloadHandler.h:
16557	* MIME.subproj/IFDownloadHandler.m: (-[IFDownloadHandler suggestedFilename]),
16558	(-[IFDownloadHandler openAfterDownload:]):
16559
16560	Added the mentioned API's
16561
16562	* MIME.subproj/IFDownloadHandlerPrivate.h:
16563	* MIME.subproj/IFDownloadHandlerPrivate.m: (-[IFDownloadHandlerPrivate init]),
16564	(-[IFDownloadHandlerPrivate dealloc]), (-[IFDownloadHandlerPrivate
16565	_suggestedFilename]), (-[IFDownloadHandlerPrivate _cancelDownload]),
16566	(-[IFDownloadHandlerPrivate _storeAtPath:]), (-[IFDownloadHandlerPrivate
16567	_finishedDownload]), (-[IFDownloadHandlerPrivate _openAfterDownload:]),
16568	(-[IFDownloadHandlerPrivate _openFile]), (-[IFDownloadHandlerPrivate _saveFile]),
16569	(-[IFDownloadHandler _initWithURLHandle:mimeHandler:]):
16570
16571	Cleaned up and added a lot error checking code to IFDownloadHandlerPrivate
16572
16573	* Plugins.subproj/IFNullPluginView.mm: (-[IFNullPluginView
16574	initWithFrame:mimeType:arguments:]), (-[IFNullPluginView drawRect:]):
16575
16576	Made sure I didn't unnecessarily allocate images
16577
16578	* Resources/plugin_document_template.html:
16579
16580	Plugins now have 100% of the window
16581
165822002-04-12  Chris Blumenberg  <cblu@apple.com>
16583
16584	Fixed build failure. Forgot to make IFDownloadHandler.h
16585	a public header.
16586
16587	* WebKit.pbproj/project.pbxproj:
16588
165892002-04-12 Chris Blumenberg <cblu@apple.com>
16590
16591	First implementation of IFDownloadHandler and IFDownloadHandlerPrivate.
16592
165932002-04-11  Chris Blumenberg  <cblu@apple.com>
16594
16595	Added support for non-html content. Non-html content is embedded in a
16596	contrived HTML document.
16597
16598	* English.lproj/IFError.strings:
16599	* MIME.subproj/IFContentHandler.h: Added.
16600	* MIME.subproj/IFContentHandler.m: Added.
16601	 (-[IFContentHandler initWithMIMEHandler:URL:]), (-[IFContentHandler
16602	HTMLDocument]), (-[IFContentHandler dealloc]):
16603	* MIME.subproj/IFMIMEDatabase.h:
16604	* MIME.subproj/IFMIMEDatabase.m: (-[IFMIMEDatabase MIMEHandlerForMIMEType:]),
16605	(setMimeHandlers):
16606	* MIME.subproj/IFMIMEHandler.h:
16607	* MIME.subproj/IFMIMEHandler.m: (-[IFMIMEHandler
16608	initWithMIMEType:handlerType:handlerName:]), (-[IFMIMEHandler description]):
16609	* Misc.subproj/IFError.h:
16610	* Misc.subproj/IFError.m: (+[IFError initialize]):
16611	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
16612	initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView dealloc]),
16613	(-[IFPluginView stop]):
16614	* Resources/plugin_document_template.html: Added.
16615	* Resources/text_document_template.html: Added.
16616	* WebKit.pbproj/project.pbxproj:
16617	* WebView.subproj/IFMainURLHandleClient.h:
16618	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
16619	initWithDataSource:part:]), (-[IFMainURLHandleClient dealloc]),
16620	(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]),
16621	(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
16622
166232002-04-10  Chris Blumenberg  <cblu@apple.com>
16624
16625	Cleaned up stream deallocations.
16626
16627	* Plugins.subproj/IFPluginStream.h:
16628	* Plugins.subproj/IFPluginStream.m: (-[IFPluginStream
16629	initWithURL:mimeType:notifyData:]), (-[IFPluginStream incrementOffset:]),
16630	(-[IFPluginStream dealloc]):
16631	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
16632	newStream:mimeType:notifyData:]), (-[IFPluginView
16633	IFURLHandleResourceDidCancelLoading:]), (-[IFPluginView
16634	IFURLHandle:resourceDidFailLoadingWithResult:]):
16635
166362002-04-10  John Sullivan  <sullivan@apple.com>
16637
16638	Fixed 2891396 -- window fills with garbage if you resize or hide/show toolbar
16639	before loading first page
16640
16641	* WebView.subproj/IFWebView.mm: (-[IFWebView drawRect:]):
16642	Made webview fill rect with white if there's no widget.
16643
166442002-04-09  Chris Blumenberg  <cblu@apple.com>
16645
16646	* Plugins.subproj/IFPluginView.h:
16647	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
16648	initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView setWindow]),
16649	(-[IFPluginView newStream:mimeType:notifyData:]), (-[IFPluginView start]),
16650	(-[IFPluginView stop]), (-[IFPluginView dealloc]), (-[IFPluginView
16651	findSuperview:]), (-[IFPluginView sendUpdateEvent]), (-[IFPluginView drawRect:]),
16652	(-[IFPluginView isFlipped]), (-[IFPluginView viewHasMoved:]), (-[IFPluginView
16653	windowBecameKey:]), (-[IFPluginView windowResignedKey:]), (-[IFPluginView
16654	windowWillClose:]), (-[IFPluginView IFURLHandleResourceDidBeginLoading:]),
16655	(-[IFPluginView IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFPluginView
16656	IFURLHandleResourceDidFinishLoading:data:]), (-[IFPluginView
16657	IFURLHandleResourceDidCancelLoading:]), (-[IFPluginView
16658	IFURLHandle:resourceDidFailLoadingWithResult:]), (-[IFPluginView
16659	IFURLHandle:didRedirectToURL:]), (-[IFPluginView forceRedraw]), (IFPluginMake),
16660	(+[IFPluginView load]):
16661	* WebKit.pbproj/project.pbxproj:
16662	* WebView.subproj/IFLoadProgress.h:
16663
16664	Cleaned up the IFPluginView code. Moved a lot of things around. 
16665
16666	Added support for plug-in file download progress.
16667
166682002-04-08  Chris Blumenberg  <cblu@apple.com>
16669
16670	* Plugins.subproj/IFPluginView.h:
16671	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
16672	initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView drawRect:]),
16673	(-[IFPluginView newStream:mimeType:notifyData:]), (-[IFPluginView
16674	getURLNotify:target:notifyData:]):
16675
16676	Support new stream requests from plug-ins that are relative URL's.
16677
166782002-04-08  Darin Adler  <darin@apple.com>
16679
16680	* WebKit.pbproj/project.pbxproj: Re-added -Wno-format-y2k.
16681
166822002-04-08  Richard Williamson  <rjw@apple.com>
16683
16684        Added logs for Shelley to note start and completion of document load.
16685        -WebKitLogLevel 0x1000.  Also, as a bonus, note time to load.
16686        
16687	* Misc.subproj/WebKitDebug.h:
16688	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame startLoading]):
16689	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _setState:]):
16690
166912002-04-08  Chris Blumenberg  <cblu@apple.com>
16692
16693	* Plugins.subproj/IFNullPluginView.h:
16694	* Plugins.subproj/IFNullPluginView.mm: (-[IFNullPluginView
16695	initWithFrame:mimeType:arguments:]), (-[IFNullPluginView drawRect:]):
16696	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
16697	pluginNotFoundForMIMEType:pluginPageURL:]):
16698	* WebView.subproj/IFWebController.h:
16699
16700	Added pluginNotFoundForMIMEType: pluginPageURL: to WebKit. This gets called
16701	by IFNullPluginView when a plug-in for a certain mime type is requested but 
16702	not installed.
16703
167042002-04-08  Richard Williamson  <rjw@apple.com>
16705
16706        Added frameForView:
16707        Cleaned up out-of-date comments.
16708        
16709	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
16710	_frameForView:fromFrame:]), (-[IFBaseWebController frameForView:]):
16711	* WebView.subproj/IFWebController.h:
16712
167132002-04-05  Chris Blumenberg  <cblu@apple.com>
16714
16715	* Plugins.subproj/IFNullPluginView.mm: (+[IFNullPluginView load]):
16716
16717	Enabled the below.
16718
167192002-04-05  Chris Blumenberg  <cblu@apple.com>
16720
16721	* Plugins.subproj/IFNullPluginView.h: Added.
16722	* Plugins.subproj/IFNullPluginView.mm: Added.
16723	 (-[IFNullPluginView initWithFrame:mimeType:arguments:]), (-[IFNullPluginView
16724	findSuperview:]), (-[IFNullPluginView drawRect:]):
16725	* Resources/nullplugin.tiff: Added.
16726	* WebKit.pbproj/project.pbxproj:
16727
16728        An IFNullPluginView is now created when no plug-in for a requested
16729        mime type is found. IFNullPluginView displays a null plug-in icon
16730        and will eventually report this error to the WebController.
16731
167322002-04-05  Richard Williamson  <rjw@apple.com>
16733
16734        Back out some changes to lazily dealloc frame.
16735        
16736	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame release]):
16737
167382002-04-05  Richard Williamson  <rjw@apple.com>
16739
16740        New method on controller to find a frame of a particular name
16741        anywhere in the frame hierarchy.
16742        
16743	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
16744	initWithView:provisionalDataSource:]), (-[IFBaseWebController
16745	_frameNamed:fromFrame:]), (-[IFBaseWebController frameNamed:]):
16746	* WebView.subproj/IFWebController.h:
16747
167482002-04-05  Darin Adler  <darin@apple.com>
16749
16750	* WebView.subproj/IFMainURLHandleClient.mm:
16751	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
16752	Use contentLengthReceived rather than getting the length of
16753	availableResourceData to determine how much data has arrived.
16754
167552002-04-05  Richard Williamson  <rjw@apple.com>
16756
16757        Implemented the same lazily deallocation scheme on frame as in controller
16758        and data source.
16759        
16760	* WebView.subproj/IFWebFrame.mm: (-[_IFFrameHolder initWithObject:]),
16761	(-[_IFFrameHolder _checkReadyToDealloc:]), (-[IFWebFrame release]):
16762
167632002-04-04  Richard Williamson  <rjw@apple.com>
16764
16765        Clear controller references from data source and view, as well as 
16766        frame.
16767        
16768	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
16769	_clearControllerReferences:]):
16770
167712002-04-04  Richard Williamson  <rjw@apple.com>
16772
16773        Lazily dealloc controller and data source ONLY after all loads
16774        have completed.
16775        
16776	* WebView.subproj/IFBaseWebController.mm: (-[_IFControllerHolder
16777	initWithController:]), (-[_IFControllerHolder _checkReadyToDealloc:]),
16778	(-[IFBaseWebController dealloc]), (-[IFBaseWebController release]):
16779	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
16780	_clearControllerReferences:]), (-[IFBaseWebControllerPrivate dealloc]):
16781	* WebView.subproj/IFWebDataSource.mm: (-[_IFDataSourceHolder
16782	initWithDataSource:]), (-[_IFDataSourceHolder _checkReadyToDealloc:]),
16783	(-[IFWebDataSource release]):
16784
167852002-04-04  Kenneth Kocienda  <kocienda@apple.com>
16786
16787        Hack to handle displaying image URLs. The trick is to sense when
16788        the main URL is an image type and wrap the URL in a small generated
16789        HTML document and hand that off to the engine to display.
16790
16791        Works like a charm! :)
16792
16793        There may be some longer-term issues, but for now, this lets us
16794        do something we could not before. It also lets us handle some iframes
16795        that contain only image URLs.
16796
16797	* Resources/image_document_template.html: Added.
16798	* WebKit.pbproj/project.pbxproj:
16799	* WebView.subproj/IFMainURLHandleClient.h:
16800	* WebView.subproj/IFMainURLHandleClient.mm: (loadImageDocumentTemplate),
16801	(-[IFMainURLHandleClient initWithDataSource:part:]), (-[IFMainURLHandleClient
16802	IFURLHandle:resourceDataDidBecomeAvailable:]):
16803
168042002-04-04  Chris Blumenberg  <cblu@apple.com>
16805
16806	* English.lproj/IFError.strings:
16807	* Misc.subproj/IFError.h:
16808	* Misc.subproj/IFError.m: (+[IFError initialize]):
16809	* WebKit.pbproj/project.pbxproj:
16810	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
16811	IFURLHandle:resourceDataDidBecomeAvailable:]):
16812
16813	Added the IFNonHTMLContentNotSupportedError to IFError.
16814
168152002-04-04  Richard Williamson  <rjw@apple.com>
16816
16817        Tuned and re-enabled resource layouts.
16818        
16819	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]):
16820	* WebView.subproj/IFWebFramePrivate.h:
16821	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _scheduleLayout:]),
16822	(-[IFWebFrame _timedLayout:]):
16823
168242002-04-04  Darin Adler  <darin@apple.com>
16825
16826	* WebKit.pbproj/project.pbxproj: Add an Unoptimized build
16827	style: exactly like Development except without the -O.
16828
168292002-04-03  Richard Williamson  <rjw@apple.com>
16830
16831        Changed name of finalURL to redirectedURL.
16832        Disabled layout after resource load.  It appears to really slow us down.
16833        
16834	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]):
16835	* WebView.subproj/IFWebController.h:
16836	* WebView.subproj/IFWebDataSource.h:
16837	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource redirectedURL]),
16838	(-[IFWebDataSource wasRedirected]):
16839	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]):
16840
168412002-04-03  Richard Williamson  <rjw@apple.com>
16842
16843        Added support for finalURL and wasRedirected to datasource.
16844        Added additional layouts on resource loads.
16845        Added more implementations of frame related methods in data source.
16846        
16847	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
16848	IFURLHandle:didRedirectToURL:]):
16849	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]), (-[IFPreferences
16850	_resourceTimedLayoutDelay]), (-[IFPreferences _resourceTimedLayoutEnabled]):
16851	* WebView.subproj/IFPreferencesPrivate.h:
16852	* WebView.subproj/IFWebDataSource.h:
16853	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource frameNames]),
16854	(-[IFWebDataSource findDataSourceForFrameNamed:]), (-[IFWebDataSource
16855	frameExists:]), (-[IFWebDataSource finalURL]), (-[IFWebDataSource
16856	wasRedirected]):
16857	* WebView.subproj/IFWebDataSourcePrivate.h:
16858	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
16859	(-[IFWebDataSource _setTitle:]), (-[IFWebDataSource _setFinalURL:]):
16860	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _scheduleLayout:]),
16861	(-[IFWebFrame _transitionProvisionalToLayoutAcceptable]), (-[IFWebFrame
16862	_isLoadComplete]):
16863
168642002-04-03  Kenneth Kocienda  <kocienda@apple.com>
16865
16866        Updated debugging log messages to use new varargs macros.
16867
16868	* History.subproj/IFWebHistoryPrivate.m: (-[IFWebHistoryPrivate
16869	removeEntryForURLString:]), (-[IFWebHistoryPrivate _loadHistoryGuts:]),
16870	(-[IFWebHistoryPrivate loadHistory]), (-[IFWebHistoryPrivate _saveHistoryGuts:]),
16871	(-[IFWebHistoryPrivate saveHistory]):
16872	* Misc.subproj/WebKitDebug.h:
16873	* Misc.subproj/WebKitDebug.m: (timestamp), (WebKitLog):
16874	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
16875	initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView setWindow]),
16876	(-[IFPluginView newStream:mimeType:notifyData:]), (-[IFPluginView
16877	IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFPluginView
16878	IFURLHandleResourceDidFinishLoading:data:]), (-[IFPluginView
16879	becomeFirstResponder]), (-[IFPluginView resignFirstResponder]), (-[IFPluginView
16880	sendUpdateEvent]), (-[IFPluginView mouseDown:]), (-[IFPluginView mouseUp:]),
16881	(-[IFPluginView mouseEntered:]), (-[IFPluginView mouseExited:]), (-[IFPluginView
16882	keyUp:]), (-[IFPluginView keyDown:]), (-[IFPluginView
16883	getURLNotify:target:notifyData:]), (-[IFPluginView getURL:target:]),
16884	(-[IFPluginView status:]), (-[IFPluginView stop]):
16885	* WebKit.pbproj/project.pbxproj:
16886	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
16887	_receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
16888	_mainReceivedProgress:forResource:fromDataSource:]):
16889	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
16890	IFURLHandleResourceDidBeginLoading:]), (-[IFMainURLHandleClient
16891	IFURLHandleResourceDidCancelLoading:]), (-[IFMainURLHandleClient
16892	IFURLHandleResourceDidFinishLoading:data:]), (-[IFMainURLHandleClient
16893	IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFMainURLHandleClient
16894	IFURLHandle:resourceDidFailLoadingWithResult:]), (-[IFMainURLHandleClient
16895	IFURLHandle:didRedirectToURL:]):
16896	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource isLoading]):
16897	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _stopLoading]):
16898	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
16899	_transitionProvisionalToLayoutAcceptable]), (-[IFWebFrame _timedLayout:]),
16900	(-[IFWebFrame _setState:]), (-[IFWebFrame _isLoadComplete]):
16901	* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]), (-[IFWebView
16902	layout]), (-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]),
16903	(-[IFWebView setNeedsToApplyStyles:]), (-[IFWebView drawRect:]):
16904
169052002-04-02  Darin Adler  <darin@apple.com>
16906
16907	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _setTitle:]):
16908        Update title if the page is already in the committed state.
16909
169102002-04-02  Darin Adler  <darin@apple.com>
16911
16912	* WebKit.pbproj/project.pbxproj: Fix flags as I did in WebFoundation.
16913
16914	* Misc.subproj/WebKitDebug.h: Turn off logging when xNDEBUG is defined.
16915	Remove unused stuff. Add checking for printf parameters.
16916	* Misc.subproj/WebKitDebug.m: Remove unused variants.
16917
16918	* Plugins.subproj/IFPluginView.mm: Change to use WebKit logging, not
16919	WebCore logging.
16920
16921	* WebView.subproj/IFMainURLHandleClient.mm:
16922	* WebView.subproj/IFWebView.mm:
16923	Fix types in log statements caught by the compiler.
16924
169252002-04-02  Chris Blumenberg  <cblu@apple.com>
16926
16927	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
16928	IFURLHandleResourceDidCancelLoading:]), (-[IFPluginView
16929	IFURLHandle:resourceDidFailLoadingWithResult:]), (-[IFPluginView
16930	IFURLHandle:didRedirectToURL:]):
16931
16932	Added support for the above callbacks.
16933
16934	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
16935	IFURLHandle:resourceDataDidBecomeAvailable:]):
16936
16937	Return an error if non-html is requested.	
16938
169392002-04-02  Richard Williamson  <rjw@apple.com>
16940
16941        More relaxed about invalid states.
16942        
16943	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
16944	_transitionProvisionalToLayoutAcceptable]):
16945
169462002-04-02  Darin Adler  <darin@apple.com>
16947
16948	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _setTitle:]):
16949        Fix a leak I introduced here by copying the string in a better way.
16950
169512002-04-01  Richard Williamson  <rjw@apple.com>
16952
16953        Cleaned up lots of potentially stale references to controller.
16954        
16955	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
16956	dealloc]):
16957	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
16958	initWithDataSource:part:]), (-[IFMainURLHandleClient dealloc]):
16959	* WebView.subproj/IFWebDataSource.h:
16960	* WebView.subproj/IFWebDataSource.mm:
16961	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
16962	(-[IFWebDataSource _setPrimaryLoadComplete:]), (-[IFWebDataSource _setTitle:]):
16963	* WebView.subproj/IFWebFramePrivate.h:
16964	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate dealloc]),
16965	(-[IFWebFramePrivate setDataSource:]), (-[IFWebFramePrivate
16966	setProvisionalDataSource:]), (-[IFWebFrame _setController:]), (-[IFWebFrame
16967	_transitionProvisionalToCommitted]), (-[IFWebFrame _timedLayout:]), (-[IFWebFrame
16968	_setState:]):
16969
169702002-04-01  Richard Williamson  <rjw@apple.com>
16971
16972        Logging changes.
16973        Changes to support correct i/frame behavior.
16974    
16975	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
16976	createFrameNamed:for:inParent:inScrollView:]):
16977	* WebView.subproj/IFWebController.h:
16978	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _timedLayout:]):
16979	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebViewPrivate dealloc]),
16980	(-[IFWebView _setupScrollers]):
16981
169822002-04-01  John Sullivan  <sullivan@apple.com>
16983
16984	Added method for updating url, title, and/or displayTitle
16985	on existing entry.
16986
16987	* History.subproj/IFWebHistory.h:
16988	* History.subproj/IFWebHistory.m: 
16989	(-[IFWebHistory	updateURL:title:displayTitle:forURL:]):
16990	Calls through to IFWebHistoryPrivate.
16991
16992	* History.subproj/IFWebHistoryPrivate.h:
16993	* History.subproj/IFWebHistoryPrivate.m: 
16994	(-[IFWebHistoryPrivate _entryForURLString:]): Broke this out
16995	from containsURL.
16996	(-[IFWebHistoryPrivate containsURL:]): Call broken-out method.
16997	(-[IFWebHistoryPrivate updateURL:title:displayTitle:forURL:]):
16998	Find existing entry (if any), change its attributes.
16999
170002002-04-01  Darin Adler  <darin@apple.com>
17001
17002	* Misc.subproj/IFError.h: Add the failing URL to IFError.
17003	* Misc.subproj/IFError.m: (-[IFError initWithErrorCode:]): Call through
17004	with nil for the URL.
17005	(-[IFError initWithErrorCode:failingURL:]): Retain the passed URL.
17006	(-[IFError dealloc]): Autorelease the URL.
17007	(-[IFError failingURL]): Return the URL.
17008	(-[IFError description]): Include the URL in the description.
17009
17010	* WebView.subproj/IFBaseWebControllerPrivate.mm:
17011	(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]),
17012	(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
17013	Put the URL into the IFError.
17014
17015	* WebView.subproj/IFMainURLHandleClient.mm:
17016	(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
17017	Put the URL into the IFError.
17018
170192002-04-01  Richard Williamson  <rjw@apple.com>
17020
17021        Added more logging to show time of layouts.
17022        
17023	* WebView.subproj/IFWebFramePrivate.h:
17024	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
17025	_transitionProvisionalToLayoutAcceptable]), (-[IFWebFrame _timedLayout:]),
17026	(-[IFWebFrame _isLoadComplete]):
17027	* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]), (-[IFWebView
17028	layout]):
17029
170302002-04-01  Darin Adler  <darin@apple.com>
17031
17032	Added operations for JavaScript objects. Not sure if this was the best
17033	place for them, but it should be OK for now.
17034
17035	* Misc.subproj/IFCache.h:
17036	* Misc.subproj/IFCache.mm: (+[IFCache setDisabled:]), (+[IFCache
17037	javaScriptObjectsCount]), (+[IFCache garbageCollectJavaScriptObjects]):
17038	* WebKit.pbproj/project.pbxproj:
17039
170402002-03-30  Richard Williamson  <rjw@apple.com>
17041
17042        Corrected comments describing the new 'acceptable to layout' state
17043        transition.
17044        
17045	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
17046	_mainReceivedProgress:forResource:fromDataSource:]):
17047
170482002-03-30  Darin Adler  <darin@apple.com>
17049
17050	* WebView.subproj/IFBaseWebController.mm:
17051	(-[IFBaseWebController receivedPageTitle:forDataSource:]):
17052	Remove the exception from here. This is really a "do nothing,
17053	subclasses override me" method.
17054
17055	* WebView.subproj/IFWebDataSource.mm:
17056	(-[IFWebDataSource pageTitle]): Implement.
17057
17058	* WebView.subproj/IFWebDataSourcePrivate.h: Add pageTitle
17059	and [IFWebDataSource _setTitle].
17060	* WebView.subproj/IFWebDataSourcePrivate.mm:
17061	(-[IFWebDataSourcePrivate dealloc]): autorelease pageTitle.
17062	(-[IFWebDataSource _setTitle:]): Update the title, trimming
17063	whitespace and using nil, rather than empty string, to mean
17064	no title at all. Call [receivedPageTitle: forDataSource:]
17065	as necessary too.
17066
17067	* WebView.subproj/IFMainURLHandleClient.mm: Did a gratuitious
17068	whitespace edit to force this file to recompile so everyone
17069	doesn't have to "make clean".
17070
170712002-03-30  Richard Williamson  <rjw@apple.com>
17072
17073        Added support for scrolling to anchor points.
17074        
17075	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]):
17076
170772002-03-30  Maciej Stachowiak  <mjs@apple.com>
17078
17079	* WebKit.pbproj/project.pbxproj: Link against
17080	JavaScriptCore.framework instead of the defunct
17081	libJavaScriptCore.dylib.
17082
170832002-03-29  Richard Williamson  <rjw@apple.com>
17084
17085        Fixes for cancelling.  Still need to think about a better
17086        solution than putting data sources in stopped mode.
17087        
17088	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
17089	_receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
17090	_mainReceivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
17091	_receivedError:forResource:partialProgress:fromDataSource:]),
17092	(-[IFBaseWebController
17093	_mainReceivedError:forResource:partialProgress:fromDataSource:]):
17094	* WebView.subproj/IFWebDataSourcePrivate.h:
17095	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _startLoading:]),
17096	(-[IFWebDataSource _isStopping]), (-[IFWebDataSource _stopLoading]):
17097	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame setProvisionalDataSource:]):
17098
170992002-03-29  Richard Williamson  <rjw@apple.com>
17100
17101        Hooked up redirect.  Now we see many more ads.  :(
17102        Fixed cancel of main handle for document.
17103        Moved stop before start from frame to data source.
17104
17105	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
17106	locationChangeDone:forFrame:]), (-[IFBaseWebController
17107	serverRedirectTo:forDataSource:]):
17108	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
17109	IFURLHandleResourceDidCancelLoading:]), (-[IFMainURLHandleClient
17110	IFURLHandleResourceDidFinishLoading:data:]), (-[IFMainURLHandleClient
17111	IFURLHandle:resourceDidFailLoadingWithResult:]), (-[IFMainURLHandleClient
17112	IFURLHandle:didRedirectToURL:]):
17113	* WebView.subproj/IFWebDataSourcePrivate.h:
17114	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
17115	(-[IFWebDataSource _startLoading:]), (-[IFWebDataSource _stopLoading]):
17116	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame startLoading]):
17117
171182002-03-29  Richard Williamson  <rjw@apple.com>
17119
17120        Added stopLoading to startLoading to cancel any pending loads before
17121        new loads start.  This doesn't work yet because of loader bugs, but will
17122        once those are fixed.
17123        
17124        Adding logging for redirects.
17125        
17126	* Misc.subproj/WebKitDebug.h:
17127	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
17128	IFURLHandle:didRedirectToURL:]):
17129	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame startLoading]):
17130
171312002-03-29  Darin Adler  <darin@apple.com>
17132
17133	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate dealloc]): Deref the
17134        renderFramePart, and autorelease the provisionalDataSource.
17135	(-[IFWebFramePrivate setRenderFramePart:]): Ref renderFramePart while we hold it.
17136
171372002-03-28  Richard Williamson  <rjw@apple.com>
17138
17139        Increased size default for initial layout.
17140        
17141	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]):
17142
171432002-03-28  Richard Williamson  <rjw@apple.com>
17144
17145        Fixed big leak of any document that had a frame or iframe.
17146        
17147	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource retain]):
17148	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
17149	(-[IFWebDataSource _setParent:]):
17150
171512002-03-28  Richard Williamson  <rjw@apple.com>
17152    
17153        Modified the initial layout policy.
17154
17155	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
17156	_receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
17157	_mainReceivedProgress:forResource:fromDataSource:]):
17158	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]), (-[IFPreferences
17159	_initialTimedLayoutDelay]), (-[IFPreferences _initialTimedLayoutSize]):
17160	* WebView.subproj/IFPreferencesPrivate.h:
17161	* WebView.subproj/IFWebFramePrivate.h:
17162	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
17163	_transitionProvisionalToLayoutAcceptable]), (-[IFWebFrame
17164	_transitionProvisionalToCommitted]), (-[IFWebFrame _initialLayout:]),
17165	(-[IFWebFrame _isLoadComplete]):
17166
171672002-03-28  Darin Adler  <darin@apple.com>
17168
17169        New private interface for getting at the cache.
17170
17171	* Misc.subproj/IFCache.h: New.
17172	* Misc.subproj/IFCache.mm: New.
17173	* WebKit.pbproj/project.pbxproj: Added IFCache files.
17174
171752002-03-28  Darin Adler  <darin@apple.com>
17176
17177	* WebView.subproj/IFBaseWebController.mm:
17178        (-[IFBaseWebController locationChangeDone:forFrame:]): Remove log of errors
17179        loading now that we have the activity viewer.
17180
171812002-03-28  Richard Williamson  <rjw@apple.com>
17182
17183        Modified the initial layout policy.  We now try to layout as close
17184        as possible to WebKitInitialTimedLayoutDelay seconds after the
17185        load was started, not after the provisional-to-committed transition.
17186        If the time to the provisional-to-committed transition exceeds
17187        WebKitInitialTimedLayoutDelay we layout immediately.
17188        
17189	* WebView.subproj/IFWebDataSourcePrivate.h:
17190	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _startLoading:]),
17191	(-[IFWebDataSource _recursiveStopLoading]), (-[IFWebDataSource
17192	_loadingStartedTime]):
17193	* WebView.subproj/IFWebFramePrivate.h:
17194	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
17195	_transitionProvisionalToCommitted]), (-[IFWebFrame _initialLayout:]):
17196
171972002-03-28  John Sullivan  <sullivan@apple.com>
17198
17199	* History.subproj/IFWebHistoryPrivate.m: 
17200	(-[IFWebHistoryPrivate _loadHistoryGuts:]):
17201	Made this more robust about bad data from the disk file. I
17202	don't know how bad data could get into the disk file in normal
17203	use, but it seems to have happened to Richard.
17204
172052002-03-27  Richard Williamson  <rjw@apple.com>
17206
17207        Added initial-layout-after-delay-if-not-layed-out-yet feature.
17208        
17209	* Misc.subproj/WebKitDebug.h:
17210	* WebKit.pbproj/project.pbxproj:
17211	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
17212	_mainReceivedProgress:forResource:fromDataSource:]):
17213	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]), (-[IFPreferences
17214	setPluginsEnabled:]), (-[IFPreferences _initialTimedLayoutDelay]),
17215	(-[IFPreferences _initialTimedLayoutEnabled]):
17216	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
17217	_transitionProvisionalToCommitted]), (-[IFWebFrame _initialLayout:]),
17218	(-[IFWebFrame _state]):
17219
172202002-03-27  Kenneth Kocienda  <kocienda@apple.com>
17221
17222        Changed loadProgress->bytesSoFar to use [sender contentLengthReceived]
17223        instead of the size of the chunk that was delivered in the callback.
17224        This makes the activity window data more correct than it was.
17225
17226	* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
17227	IFURLHandle:resourceDataDidBecomeAvailable:]):
17228
172292002-03-27  Chris Blumenberg  <cblu@apple.com>
17230
17231	Now setting the modifier bit for the activate and cursor events.
17232
17233	* Plugins.subproj/IFPluginView.h:
17234	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView drawRect:]), (-[IFPluginView
17235	windowBecameKey:]), (-[IFPluginView windowResignedKey:]), (-[IFPluginView
17236	mouseEntered:]), (-[IFPluginView mouseExited:]):
17237
172382002-03-27  Darin Adler  <darin@apple.com>
17239
17240	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]): Switch back
17241        to serif font, since using Luicida Grande was exposing some font bugs.
17242
172432002-03-26  Maciej Stachowiak  <mjs@apple.com>
17244
17245	* WebKit.pbproj/project.pbxproj: Fixed to build with standalone
17246	libJavaScriptCore.dylib.
17247
172482002-03-26  Kenneth Kocienda  <kocienda@apple.com>
17249
17250        Changes to help the transition to the new build system which unifies
17251        our development build setting with the settings we use to ship
17252        releases.
17253
17254	* Makefile.am:
17255	* WebKit.pbproj/kocienda.pbxuser:
17256	* WebKit.pbproj/project.pbxproj:
17257
172582002-03-26  Richard Williamson  <rjw@apple.com>
17259
17260        Try to ensure that display needed bits are correctly set.
17261        
17262	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]):
17263
172642002-03-26  Darin Adler  <darin@apple.com>
17265
17266	* Misc.subproj/IFError.m: (+[IFError initialize]): Fix a typo where
17267        we said "unvailable".
17268        
17269	* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]): Change
17270        the default sans-serif font to "Lucida Grande" to match the OS X
17271        system font, and also make that the defalt standard font.
17272
172732002-03-26  John Sullivan  <sullivan@apple.com>
17274
17275	* WebKit.pbproj/project.pbxproj:
17276	Marked IFProgress.h Public.
17277
172782002-03-25  John Sullivan  <sullivan@apple.com>
17279
17280	Broke IFLoadProgress out into its own file, and added
17281	an init method and getters, without which this class
17282	is useless in Objective-C files (but strangely usable
17283	in Objective-C++ files, see radar 2887253).
17284
17285	* WebView.subproj/IFWebController.h:
17286	* WebView.subproj/IFBaseWebController.mm:
17287	Took IFLoadProgress declaration and implementation out of here.
17288
17289	* WebView.subproj/IFLoadProgress.h,
17290	* WebView.subproj/IFLoadProgress.mm:
17291	Moved IFLoadProgress declaration and implementation to here;
17292	added -[IFLoadProgress initWithBytesSoFar:totalToLoad:type:]
17293	and getters for each field.
17294
17295	* WebKit.pbproj/project.pbxproj: Updated for new files
17296
172972002-03-25  Richard Williamson  <rjw@apple.com>
17298
17299        Tweaks to force layout of frames and iframes.
17300        
17301	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]):
17302
173032002-03-25  Maciej Stachowiak  <mjs@apple.com>
17304
17305	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
17306	_startLoading:]): Just create an IFURLHandle, since it now creates
17307	the proper concrete subclass automagically.
17308
173092002-03-25  Chris Blumenberg  <cblu@apple.com>
17310
17311	* MIME.subproj/IFMIMEDatabase.m: (+[IFMIMEDatabase sharedMIMEDatabase]),
17312	(-[IFMIMEDatabase MIMEHandlerForMIMEType:]), (setMimeHandlers):
17313	* MIME.subproj/IFMIMEHandler.h:
17314	* MIME.subproj/IFMIMEHandler.m: (-[IFMIMEHandler
17315	initWithMIMEType:handlerType:handlerName:]), (-[IFMIMEHandler MIMEType]),
17316	(-[IFMIMEHandler MIMESupertype]), (-[IFMIMEHandler MIMESubtype]),
17317	(-[IFMIMEHandler handlerName]), (-[IFMIMEHandler handlerType]), (-[IFMIMEHandler
17318	description]):
17319
17320	Initial implementations of the above.
17321
173222002-03-25  Richard Williamson  <rjw@apple.com>
17323
17324        Added private API to allow browser to access the DOM tree.
17325
17326	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView DOM::]), (+[IFWebView
17327	_nodeName:DOM::]), (+[IFWebView _nodeValue:DOM::]), (+[IFWebView
17328	_nodeHTML:DOM::]):
17329
173302002-03-25  Richard Williamson  <rjw@apple.com>
17331
17332        Added private API to allow browser to access the render tree.
17333        
17334	* WebView.subproj/IFWebViewPrivate.mm:
17335
173362002-03-24  Richard Williamson  <rjw@apple.com>
17337
17338        Changed data source to create IFURLHandle of the appropriate class.
17339        The prevented us from getting the response headers correctly.
17340        
17341	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _startLoading:]):
17342
173432002-03-24  Richard Williamson  <rjw@apple.com>
17344
17345        Removed erroneous comments.
17346        
17347	* WebView.subproj/IFWebView.mm: (-[IFWebView dataSourceChanged:]), (-[IFWebView
17348	reapplyStyles]):
17349
173502002-03-22  Chris Blumenberg  <cblu@apple.com>
17351
17352	* MIME.subproj/IFMIMEDatabase.h:
17353	Added a list of mime type that WebKit will be capable of handling
17354
173552002-03-22  Chris Blumenberg  <cblu@apple.com>
17356
17357	* WebKit.pbproj/project.pbxproj:
17358	Added the MIME clases to WebKit.
17359
173602002-03-22  John Sullivan  <sullivan@apple.com>
17361
17362	* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]):
17363	Removed stale FIXME.
17364
173652002-03-22  Richard Williamson  <rjw@apple.com>
17366
17367        Fixed reapplyStyles to use new KDE3 recalcStyle function.
17368        
17369	* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles])
17370
173712002-03-21  John Sullivan  <sullivan@apple.com>
17372
17373	* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]):
17374	Commented out call to applyChanges that no longer exists.
17375	This was breaking the build. Live font changes are
17376	temporarily broken again.
17377
173782002-03-21  Richard Williamson  <rjw@apple.com>
17379
17380        Added setNeedsToApplyStyles: and reapplyStyles.  This is for dynamic preferences
17381        refresh support.
17382        
17383	* WebView.subproj/IFWebView.h:
17384	* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]), (-[IFWebView
17385	layout]), (-[IFWebView setNeedsToApplyStyles:]), (-[IFWebView drawRect:]):
17386	* WebView.subproj/IFWebViewPrivate.h:
17387
173882002-03-21  John Sullivan  <sullivan@apple.com>
17389
17390	Cleaned up defaults registration and use. The class
17391	IFPreferences now registers the defaults at load time, early
17392	enough that Alexander doesn't have to register them separately
17393	as it had been. Also, all the defaults currently in use now
17394	have accessor cover methods, which Alexander will use
17395	exclusively.
17396	
17397	* WebView.subproj/IFPreferences.mm:
17398	New file, registers defaults and implements cover methods.
17399
17400	* WebView.subproj/IFPreferences.h:
17401	This file existed but wasn't being used (contents #ifdeffed out).
17402	Now it declares the cover methods, but still has an #ifdeffed
17403	section for possible future stuff.
17404
17405	* WebKit.pbproj/project.pbxproj: Updated for new file.
17406
17407	* WebView.subproj/IFWebDataSource.mm:
17408	(+[IFWebDataSource initialize]): removed defaults-registration
17409	from here.
17410
174112002-03-20  Maciej Stachowiak  <mjs@apple.com>
17412
17413	Merged the following changes from LABYRINTH_KDE_3_MERGE branch:
17414	
17415	2002-03-20  Maciej Stachowiak  <mjs@apple.com>
17416
17417		Merged accumlated changes from HEAD, up to
17418		MERGED_TO_KDE_3_MERGE_BRANCH tag.
17419
17420	2002-03-19  Maciej Stachowiak  <mjs@apple.com>
17421	
17422	        * WebView.subproj/IFWebView.mm: (-[IFWebView layout]):
17423		layout() no longer takes an argument.
17424	
174252002-03-20  John Sullivan  <sullivan@apple.com>
17426
17427	Added displayTitle field to IFURIEntry. This is intended to hold the string
17428	used in menu items, window titles, etc. Alexander uses this to cache the
17429	center-truncated title for pages with very long titles.
17430
17431	* History.subproj/IFURIEntry.h:
17432	* History.subproj/IFURIEntry.m: (-[IFURIEntry setDisplayTitle:]), (-[IFURIEntry
17433	dictionaryRepresentation]), (-[IFURIEntry initFromDictionaryRepresentation:]):
17434
174352002-03-19  Richard Williamson  <rjw@apple.com>
17436
17437        Fixed IFWebView leak.
17438        
17439	* WebView.subproj/IFWebView.mm: (-[IFWebView provisionalDataSourceChanged:]):
17440
174412002-03-18  John Sullivan  <sullivan@apple.com>
17442
17443	Imposed age limit on history items saved to/loaded from disk.
17444	Sped up history loading by reversing list before processing entries.
17445
17446	* History.subproj/IFWebHistoryPrivate.m: 
17447	(+[IFWebHistoryPrivate initialize]): Register default for age limit.
17448	(-[IFWebHistoryPrivate _ageLimitDate]): New convenience method, returns a date older
17449	than any history entry that should be stored/loaded.
17450	(-[IFWebHistoryPrivate arrayRepresentation]): skip too-old dates.
17451	(-[IFWebHistoryPrivate _loadHistoryGuts:]), (-[IFWebHistoryPrivate _saveHistoryGuts:]): 
17452	Broke into separate methods to make timing wrapper less messy. Respect age limit.
17453	Report number of items saved/loaded in timing message.
17454	(-[IFWebHistoryPrivate loadHistory]), (-[IFWebHistoryPrivate saveHistory]):
17455	use broken-out _guts methods.
17456	* WebKit.pbproj/project.pbxproj: version wars
17457
174582002-03-16  Richard Williamson  <rjw@apple.com>
17459
17460        Fixed scroll bar flash.  Add provisional view to go along with
17461        provisional widget.
17462        
17463	* WebView.subproj/IFWebView.mm: (-[IFWebView provisionalDataSourceChanged:]),
17464	(-[IFWebView dataSourceChanged:]):
17465
174662002-03-16  Richard Williamson  <rjw@apple.com>
17467
17468        Fixed error handling.  Fixed most frame loading problems.
17469        Cleaned up frame state machine.
17470        Moved IFMainURLHandleClient from WebCore.
17471        
17472	* Misc.subproj/IFError.m: (-[IFError description]):
17473	* WebKit.pbproj/project.pbxproj:
17474	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
17475	receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
17476	receivedError:forResource:partialProgress:fromDataSource:]),
17477	(-[IFBaseWebController locationChangeDone:forFrame:]):
17478	* WebView.subproj/IFBaseWebControllerPrivate.h:
17479	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
17480	_receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
17481	_mainReceivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
17482	_receivedError:forResource:partialProgress:fromDataSource:]),
17483	(-[IFBaseWebController
17484	_mainReceivedError:forResource:partialProgress:fromDataSource:]):
17485	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource startLoading:]),
17486	(-[IFWebDataSource isLoading]):
17487	* WebView.subproj/IFWebDataSourcePrivate.h:
17488	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate init]),
17489	(-[IFWebDataSourcePrivate dealloc]), (-[IFWebDataSource
17490	_setPrimaryLoadComplete:]), (-[IFWebDataSource _startLoading:]),
17491	(-[IFWebDataSource _stopLoading]):
17492	* WebView.subproj/IFWebFrame.h:
17493	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame setProvisionalDataSource:]),
17494	(-[IFWebFrame startLoading]), (-[IFWebFrame reload:]), (-[IFWebFrame errors]),
17495	(-[IFWebFrame mainDocumentError]):
17496	* WebView.subproj/IFWebFramePrivate.h:
17497	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate dealloc]),
17498	(-[IFWebFrame _transitionProvisionalToCommitted]), (-[IFWebFrame _setState:]),
17499	(-[IFWebFrame _addError:forResource:]), (-[IFWebFrame _isLoadComplete]),
17500	(+[IFWebFrame _recursiveCheckCompleteFromFrame:]), (-[IFWebFrame
17501	_checkLoadCompleteResource:error:isMainDocument:]), (-[IFWebFrame
17502	_setMainDocumentError:]), (-[IFWebFrame _clearErrors]):
17503	* WebView.subproj/IFWebView.mm:
17504	* WebView.subproj/IFMainURLHandleClient.h: added
17505	* WebView.subproj/IFMainURLHandleClient.mm: added
17506
175072002-03-15  John Sullivan  <sullivan@apple.com>
17508
17509	Impose default-based limit (1000 by default) on number of history items
17510	saved/loaded. Also instrumented timing for saving/loading history.
17511
17512	* History.subproj/IFWebHistoryPrivate.m: 
17513	(+[IFWebHistoryPrivate initialize]): register default for WebKitHistoryItemLimit.
17514
17515	(-[IFWebHistoryPrivate arrayRepresentation]): respect limit
17516	(-[IFWebHistoryPrivate loadHistory]): respect limit, time the load.
17517	(-[IFWebHistoryPrivate saveHistory]): time the save.
17518
17519	* WebKit.pbproj/project.pbxproj: version wars
17520
175212002-03-15  John Sullivan  <sullivan@apple.com>
17522
17523	Fixed bug where history entry images weren't showing up, except by historical
17524	accident in some cases.
17525	Made IFWebHistory no longer be a singleton class; made the file location
17526	be passed in at init time.
17527
17528	* History.subproj/IFURIEntry.m: (-[IFURIEntry image]): Get the default image 
17529	a way that works with frameworks; only get the default image once.
17530
17531	* History.subproj/IFWebHistory.h:
17532	* History.subproj/IFWebHistory.m: 
17533	(+[IFWebHistory webHistoryWithFile:]): New convenience constructor that returns
17534	a new IFWebHistory object with a particular disk file.
17535	(-[IFWebHistory initWithFile:]): New init method for specifying a disk file.
17536	(-[IFWebHistory file]): New accessor for file path.
17537	(-[IFWebHistory loadHistory]),
17538	(-[IFWebHistory	saveHistory]): Use file accessor.
17539	Also removed the methods that were computing a file path to use.
17540
17541	* History.subproj/IFWebHistoryPrivate.h:
17542	* History.subproj/IFWebHistoryPrivate.m: 
17543	(-[IFWebHistoryPrivate initWithFile:]),
17544	(-[IFWebHistoryPrivate dealloc]), (-[IFWebHistoryPrivate file]),
17545	(-[IFWebHistoryPrivate loadHistory]), (-[IFWebHistoryPrivate saveHistory]):
17546	Guts of implementation for file-manipulation stuff.
17547
17548	* Resources/url_icon.tiff: ran tiffUtil to premultiply the alpha channel. This
17549	was spewing error messages that I didn't notice before because they only
17550	happen on Puma and I was on Jaguar.
17551
17552	* WebKit.pbproj/project.pbxproj: not sure what change I made, maybe version wars.
17553
175542002-03-14  John Sullivan  <sullivan@apple.com>
17555
17556	Made history store its data in ~/Library/Application Support/<app name>/History.plist
17557
17558	* History.subproj/IFWebHistoryPrivate.m: 
17559	(GetRefPath), (FindFolderPath): Functions copied from NSSavePanel.m for using
17560	FindFolder in a POSIX sort of way. Ken plans to put some version of this in
17561	IFNSFileManagerExtensions eventually, which I'll switch to later.
17562	(-[IFWebHistoryPrivate historyFilePath]): Construct the path using FindFolderPath
17563	and the file name.
17564	(-[IFWebHistoryPrivate loadHistory]),
17565	(-[IFWebHistoryPrivate saveHistory]): failure case debug messages are now more specific.
17566
175672002-03-13  Richard Williamson  <rjw@apple.com>
17568
17569        Added support to stop plugins in removeFromSuperview.
17570        
17571	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _checkLoadComplete:]):
17572	* WebView.subproj/IFWebView.mm: (-[IFWebView dealloc]), (-[IFWebView
17573	removeFromSuperview]), (-[IFWebView removeFromSuperviewWithoutNeedingDisplay]):
17574
175752002-03-13  Richard Williamson  <rjw@apple.com>
17576
17577        Fixed open window w/ no open windows crasher.
17578        
17579	* ChangeLog:
17580	* WebView.subproj/IFBaseWebController.mm: (-[IFObjectHolder dealloc]):
17581	* WebView.subproj/IFWebView.mm: (-[IFWebView dealloc]), (-[IFWebView layout]):
17582
175832002-03-13  Richard Williamson  <rjw@apple.com>
17584
17585	* ChangeLog:
17586	* WebView.subproj/IFBaseWebController.mm: (-[IFObjectHolder dealloc]):
17587	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
17588	dealloc]), (-[IFWebView provisionalDataSourceChanged:]), (-[IFWebView
17589	dataSourceChanged:]), (-[IFWebView layout]), (-[IFWebView isOpaque]),
17590	(-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]), (-[IFWebView
17591	drawRect:]), (-[IFWebView setFrame:]), (-[IFWebView windowResized:]),
17592	(-[IFWebView mouseDragged:]):
17593
175942002-03-12  Richard Williamson  <rjw@apple.com>
17595
17596	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
17597	provisionalDataSourceChanged:]), (-[IFWebView dataSourceChanged:]), (-[IFWebView
17598	layout]), (-[IFWebView isOpaque]), (-[IFWebView setNeedsDisplay:]), (-[IFWebView
17599	setNeedsLayout:]), (-[IFWebView drawRect:]), (-[IFWebView setFrame:]),
17600	(-[IFWebView windowResized:]), (-[IFWebView mouseDragged:]):
17601
176022002-03-12  John Sullivan  <sullivan@apple.com>
17603
17604	Added support for persistent history. Following in the grand footsteps of
17605	Ken, it currently stores data in /tmp/alexander.history
17606
17607	* Resources/url_icon.tiff: default IFURIEntry image, moved here from WebBrowser.
17608	* WebKit.pbproj/project.pbxproj: Updated to add image file.
17609
17610	* History.subproj/IFURIEntry.m: 
17611	(-[IFURIEntry image]):
17612	If there's no explicit image, return the default one.
17613
17614	(-[IFURIEntry dictionaryRepresentation]): return a representation suitable
17615	for saving to an xml file.
17616	(-[IFURIEntry initFromDictionaryRepresentation:]): init given the representation
17617	returned from dictionaryRepresentation.
17618
17619	* History.subproj/IFWebHistory.h:
17620	* History.subproj/IFWebHistory.m: (-[IFWebHistory saveHistory]):
17621	Added saveHistory call.
17622
17623	* History.subproj/IFWebHistoryPrivate.h: added saveHistory call.
17624
17625	* History.subproj/IFWebHistoryPrivate.m: 
17626	(-[IFWebHistoryPrivate arrayRepresentation]): return a representation suitable for
17627	saving to an xml file.
17628	(-[IFWebHistoryPrivate historyFilePath]): return location of history on disk.
17629	(-[IFWebHistoryPrivate loadHistory]): read history from disk.
17630	(-[IFWebHistoryPrivate saveHistory]): write history to disk.
17631
17632	(-[IFWebHistoryPrivate init]): call loadHistory
17633	(-[IFWebHistoryPrivate removeEntryForURLString:]): changed NSLog to WEBKITDEBUG
17634
176352002-03-11  Richard Williamson  <rjw@apple.com>
17636
17637        Fixed call back ordering problems when an error occurs.
17638        More twiddling with scroll bars.
17639        
17640	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
17641	createFrameNamed:for:inParent:]):
17642	* WebView.subproj/IFDynamicScrollBarsView.h:
17643	* WebView.subproj/IFDynamicScrollBarsView.m: (-[IFDynamicScrollBarsView
17644	reflectScrolledClipView:]):
17645	* WebView.subproj/IFWebFrame.h:
17646	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame startLoading]), (-[IFWebFrame
17647	reload:]), (-[IFWebFrame reset]), (-[IFWebFrame lastError]):
17648	* WebView.subproj/IFWebFramePrivate.h:
17649	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate dealloc]),
17650	(-[IFWebFrame _checkLoadComplete:]), (-[IFWebFrame _setLastError:]):
17651
176522002-03-08  Richard Williamson  <rjw@apple.com>
17653
17654        Fixed scroll bar recursion problems.
17655Took a long time to find a stupid typo bug in [IFBaseWebController _frameForDataSource:fromFrame:]
17656that overwrote an input parameter that should been a local variable.  This caused a crash the
17657second time a page that contained an iframe was loaded.
17658        
17659	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
17660	createFrameNamed:for:inParent:]), (-[IFBaseWebController
17661	_frameForDataSource:fromFrame:]):
17662	* WebView.subproj/IFDynamicScrollBarsView.m: (-[IFDynamicScrollBarsView
17663	reflectScrolledClipView:]):
17664	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _checkLoadComplete:]):
17665	* WebView.subproj/IFWebView.mm: (-[IFWebView layout]):
17666	* WebView.subproj/IFWebViewPrivate.h:
17667	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _setFrameScrollView:]),
17668	(-[IFWebView _frameScrollView]), (-[IFWebView _setupScrollers]):
17669
176702002-03-07  John Sullivan  <sullivan@apple.com>
17671
17672	* Misc.subproj/IFError.m: (-[IFError errorDescription]):
17673	Removed a line of debugging spam. Oops!
17674
176752002-03-07  Richard Williamson  <rjw@apple.com>
17676
17677        Fixed occasional scroll bar problem in iframes.
17678        Fixed occasional problem removing scroll bar on main page.
17679        
17680	* WebView.subproj/IFDynamicScrollBarsView.m: (-[IFDynamicScrollBarsView
17681	reflectScrolledClipView:]):
17682	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _checkLoadComplete:]):
17683	* WebView.subproj/IFWebView.mm: (-[IFWebView drawRect:]):
17684
176852002-03-07  John Sullivan  <sullivan@apple.com>
17686
17687	First pass at adding error strings to IFError. They are
17688	properly localized, but they don't include any parameters,
17689	and the strings haven't been made user-friendly.
17690
17691	* Misc.subproj/IFError.m: 
17692	(+[IFError initialize]): New method, set up a dictionary
17693	mapping error code to localized error string.
17694	(-[IFError errorDescription]): Read string from dictionary.
17695
17696	* English.lproj/IFError.strings: New file, auto-generated
17697	by the genstrings tool.
17698
17699	* WebKit.pbproj/project.pbxproj: Removed stray -F /symroots.
17700	This shouldn't have been in there since symroots location is
17701	no longer hardwired.
17702
177032002-03-07  John Sullivan  <sullivan@apple.com>
17704
17705	Defined more symbolic debug-level constants; specified ranges for use by
17706	different software levels (core/kit/client==browser) to enable easier
17707	isolation of debug messages.
17708
17709	* Misc.subproj/WebKitDebug.h: #defined new debug levels for existing uses;
17710	renamed a couple.
17711
17712	* Misc.subproj/WebKitDebug.m: (WebKitLog), (WebKitDebug): Updated for
17713	renamed debug levels.
17714
17715	* WebView.subproj/IFBaseWebController.mm: 
17716	(-[IFBaseWebController receivedProgress:forResource:fromDataSource:]):
17717	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _stopLoading]):
17718	* WebView.subproj/IFWebView.mm: (-[IFWebView layout]), 
17719	(-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]), (-[IFWebView drawRect:]),
17720	(-[IFWebView mouseDragged:]):
17721	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _resetView]):
17722	Changed numeric debug levels to symbolic ones.
17723
17724	* WebKit.pbproj/project.pbxproj: Jaguar/Puma version war.
17725
177262002-03-06  Richard Williamson  <rjw@apple.com>
17727
17728        Lots of little changes to improve drawing, and dynamic scroll bar
17729        layout.  We now have NO flash between pages, however, I still need
17730        to add a transition timeout.  As currently implemented the page will not
17731        transition until the document is read.
17732        
17733	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
17734	locationChangeDone:forFrame:]):
17735	* WebView.subproj/IFDynamicScrollBarsView.m: (-[IFDynamicScrollBarsView
17736	reflectScrolledClipView:]):
17737	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
17738	_transitionProvisionalToCommitted]), (-[IFWebFrame _checkLoadComplete:]):
17739	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
17740	dataSourceChanged:]), (-[IFWebView layout]), (-[IFWebView isOpaque]),
17741	(-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]), (-[IFWebView
17742	drawRect:]), (-[IFWebView setFrame:]):
17743	* WebView.subproj/IFWebViewPrivate.h:
17744	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _stopPlugins]), (-[IFWebView
17745	_removeSubviews]):
17746
177472002-03-06  John Sullivan  <sullivan@apple.com>
17748
17749	* Misc.subproj/IFError.h: Removed stray but evil import.
17750
177512002-03-06  Maciej Stachowiak  <mjs@apple.com>
17752
17753	* WebKit.pbproj/project.pbxproj: Turn on -Werror.
17754
177552002-03-05  Richard Williamson  <rjw@apple.com>
17756
17757        Streamlined layout and drawing.  We now do the minimum amount of drawing and
17758        layout.
17759        
17760	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _checkLoadComplete:]):
17761	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
17762	layout]), (-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]),
17763	(-[IFWebView drawRect:]), (-[IFWebView setFrame:]), (-[IFWebView
17764	windowResized:]):
17765
177662002-03-05  John Sullivan  <sullivan@apple.com>
17767
17768	* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource initialize]):
17769	Tweak default font sizes so they match what algorithm used in Alexander
17770	returns.
17771
177722002-03-05  Richard Williamson  <rjw@apple.com>
17773
17774        Pass errors correctly to browser.
17775        Removed old notification code.
17776        Added support for IFError.
17777        Lots of little cleanups.
17778        Improved IFWebFrame state handling.
17779
17780	* Misc.subproj/IFError.h:
17781	* Misc.subproj/IFError.m: (IFErrorMake), (+[IFError load]), (-[IFError
17782	initWithErrorCode:]), (-[IFError errorCode]), (-[IFError errorDescription]):
17783	* WebKit.pbproj/project.pbxproj:
17784	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
17785	receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
17786	receivedError:forResource:partialProgress:fromDataSource:]):
17787	* WebView.subproj/IFBaseWebControllerPrivate.h:
17788	* WebView.subproj/IFBaseWebControllerPrivate.mm:
17789	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource isLoading]):
17790	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
17791	_startLoading:initiatedByUserEvent:]):
17792	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame
17793	initWithName:view:provisionalDataSource:controller:]), (-[IFWebFrame
17794	setProvisionalDataSource:]):
17795	* WebView.subproj/IFWebFramePrivate.h:
17796	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
17797	_transitionProvisionalToCommitted]), (-[IFWebFrame _state]), (-[IFWebFrame
17798	_setState:]), (-[IFWebFrame _checkLoadComplete:]):
17799
178002002-03-05  John Sullivan  <sullivan@apple.com>
17801
17802	* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource initialize]):
17803	Changed default font sizes to match scheme used in Alexander. There are
17804	some serious wackinesses with KDE engine font size handling; if and when
17805	we address those we might revisit these default sizes.
17806
178072002-03-05  Maciej Stachowiak  <mjs@apple.com>
17808
17809	Removed references to IFAuthenticationHandler, since that protocol
17810	now lives in WebFoundation and it's no longer quite appropriate to
17811	include as part of a controller.
17812
17813	* WebView.subproj/IFBaseWebController.mm:
17814	* WebView.subproj/IFWebController.h:
17815
178162002-03-04  Richard Williamson  <rjw@apple.com>
17817
17818        Changes to support 'provisional' data sources.
17819        API changes to IFBaseWebController, removed redundant methods.
17820 
17821        * Misc.subproj/WebKitDebug.h:
17822	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
17823	getURLNotify:target:notifyData:]):
17824	* WebView.subproj/IFBaseWebController.h:
17825	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController init]),
17826	(-[IFBaseWebController initWithView:provisionalDataSource:]),
17827	(-[IFBaseWebController createFrameNamed:for:inParent:]), (-[IFBaseWebController
17828	receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
17829	receivedError:forResource:partialProgress:fromDataSource:]),
17830	(-[IFBaseWebController locationChangeCommittedForFrame:]), (-[IFBaseWebController
17831	_frameForDataSource:fromFrame:]), (-[IFBaseWebController mainFrame]):
17832	* WebView.subproj/IFBaseWebControllerPrivate.h:
17833	* WebView.subproj/IFBaseWebControllerPrivate.mm:
17834	* WebView.subproj/IFWebController.h:
17835	* WebView.subproj/IFWebDataSource.mm: (IFWebDataSourceMake), (+[IFWebDataSource
17836	load]):
17837	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
17838	_startLoading:initiatedByUserEvent:]):
17839	* WebView.subproj/IFWebFrame.h:
17840	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame init]), (-[IFWebFrame
17841	initWithName:view:provisionalDataSource:controller:]), (-[IFWebFrame
17842	setProvisionalDataSource:]), (-[IFWebFrame startLoading]), (-[IFWebFrame
17843	stopLoading]), (-[IFWebFrame reload:]):
17844	* WebView.subproj/IFWebFramePrivate.h:
17845	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _setDataSource:]),
17846	(-[IFWebFrame _transitionProvisionalToCommitted]):
17847	* WebView.subproj/IFWebView.h:
17848	* WebView.subproj/IFWebView.mm: (-[IFWebView provisionalDataSourceChanged:]),
17849	(-[IFWebView dataSourceChanged:]):
17850	* WebView.subproj/IFWebViewPrivate.h:
17851	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _provisionalWidget]):
17852
178532002-03-04  John Sullivan  <sullivan@apple.com>
17854
17855	Changed default fonts.
17856
17857	* WebView.subproj/IFWebDataSource.mm: 
17858	(+[IFWebDataSource initialize]): Changed default fonts to ones
17859	that actually exist (this was listing "Times-Roman" where it
17860	meant either "Times" or "Times New Roman"). I'm about to check
17861	in working font preferences, so it won't matter too much if you
17862	don't like the defaults (although we should of course make sure
17863	that the defaults are sensible, which I think they are).
17864
178652002-03-04  John Sullivan  <sullivan@apple.com>
17866
17867	* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource initialize]):
17868	Reverted default fonts to what they were before I accidentally
17869	checked in some debugging changes.
17870
178712002-03-01  Richard Williamson  <rjw@apple.com>
17872
17873        Fixed a potentially large leak in frames.  View associated w/
17874        frame was not being released.
17875        
17876        Added scaffolding for correct frame by frame load complete check.
17877        
17878        Moved private IFWebBaseController method implementations to 
17879        IFWebBaseControllerPrivate.mm.
17880        
17881	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
17882	createFrameNamed:for:inParent:]), (-[IFBaseWebController
17883	receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
17884	receivedError:forResource:partialProgress:fromDataSource:]):
17885	* WebView.subproj/IFBaseWebControllerPrivate.h:
17886	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
17887	dealloc]), (-[IFBaseWebController _changeLocationTo:forFrame:parent:]),
17888	(-[IFBaseWebController _changeFrame:dataSource:]), (-[IFBaseWebController
17889	_checkLoadCompleteForDataSource:]):
17890	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate init]):
17891	* WebView.subproj/IFWebView.mm: (-[IFWebView dataSourceChanged:]):
17892
178932002-02-27  Kenneth Kocienda  <kocienda@apple.com>
17894
17895        I have changed the way that WebCore is glued to WebFoundation and WebKit. 
17896        If you used or relied upon any code in the following files, you should
17897        now use the IF* equivalents straight up.
17898
17899        - Labyrinth/WebCore/include/WCBackForwardList.h
17900        - Labyrinth/WebCore/include/WCURICache.h
17901        - Labyrinth/WebCore/include/WCURICacheData.h
17902        - Labyrinth/WebCore/include/WCURIEntry.h
17903        - Labyrinth/WebCore/include/WCURIEntry.h
17904
17905        All changes in this commit are related to making dependant code work with the new convention.
17906
17907	* History.subproj/IFURIEntry.h:
17908	* History.subproj/IFURIEntry.m:
17909	* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
17910	newStream:mimeType:notifyData:]), (-[IFPluginView
17911	IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFPluginView
17912	IFURLHandleResourceDidFinishLoading:data:]), (-[IFPluginView
17913	IFURLHandleResourceDidBeginLoading:]), (-[IFPluginView
17914	IFURLHandleResourceDidCancelLoading:]), (-[IFPluginView
17915	IFURLHandle:resourceDidFailLoadingWithResult:]):
17916	* WebKit.pbproj/kocienda.pbxuser:
17917	* WebKit.pbproj/project.pbxproj:
17918
179192002-02-26  John Sullivan  <sullivan@apple.com>
17920
17921	* History.subproj/IFURIEntry.m: (-[IFURIEntry dealloc]):
17922	Added missing dealloc method that 'leaks' found.
17923
17924	* History.subproj/IFURIList.m: (-[IFURIList dealloc]):
17925	Added missing [super dealloc] call that 'leaks' found.
17926
179272002-02-22  Maciej Stachowiak  <mjs@apple.com>
17928
17929	Fix prebinding:
17930
17931	* WebKit.pbproj/project.pbxproj: Set first segment address
17932	0x4000000 to avoid colliding with apps or our other frameworks.
17933
17934	Set up some hacks to avoid link-time dependency on
17935	WebKit. Prebinding is incompatible with - undefined suppress, so
17936	we can't have WebCore depend on symbols provided by WebKit any
17937	more:
17938
17939	* Plugins.subproj/IFPluginView.mm: (IFPluginMake), (+[IFPluginView load]),
17940	(startupVolumeName):
17941	* WebView.subproj/IFBaseWebController.mm: (IFLoadProgressMake), (+[IFLoadProgress
17942	load]):
17943
179442002-02-22  John Sullivan  <sullivan@apple.com>
17945
17946	Updated for modified NSCalendarDate extensions API.
17947
17948	* History.subproj/IFWebHistoryPrivate.m: 
17949	(-[IFWebHistoryPrivate findIndex:forDay:]): use compareDate: instead of 
17950	daysSinceDate:, which no longer exists.
17951
179522002-02-22  Richard Williamson  <rjw@apple.com>
17953
17954        Added data: to IFURLHandleResourceDidFinishLoading:
17955        
17956	* WebView.subproj/IFWebDataSource.h:
17957	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource isLoading]):
17958
179592002-02-22  Richard Williamson  <rjw@apple.com>
17960
17961        Implemented missing getter for provisionalDataSource.
17962        
17963	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame provisionalDataSource]):
17964	* WebView.subproj/IFWebFramePrivate.h:
17965
179662002-02-22  Richard Williamson  <rjw@apple.com>
17967
17968        Normalized code paths for setMainDataSource on controller and setDataSource on frame.
17969        
17970	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
17971	setMainView:andMainDataSource:]), (-[IFBaseWebController
17972	createFrameNamed:for:inParent:]), (-[IFBaseWebController
17973	_changeFrame:dataSource:]):
17974	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
17975	_setController:]):
17976	* WebView.subproj/IFWebFrame.h:
17977	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame init]), (-[IFWebFrame
17978	initWithName:view:dataSource:controller:]), (-[IFWebFrame setView:]),
17979	(-[IFWebFrame controller]), (-[IFWebFrame setController:]), (-[IFWebFrame
17980	setDataSource:]), (-[IFWebFrame reset]):
17981	* WebView.subproj/IFWebFramePrivate.h:
17982	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate setController:]),
17983	(-[IFWebFrame _setRenderFramePart:]), (-[IFWebFrame _renderFramePart]),
17984	(-[IFWebFrame _setDataSource:]):
17985
179862002-02-21  Richard Williamson  <rjw@apple.com>
17987
17988        Stop mostly working.
17989    
17990	* WebView.subproj/IFBaseWebController.h:
17991	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
17992	_frameForDataSource:fromFrame:]), (-[IFBaseWebController frameForDataSource:]):
17993	* WebView.subproj/IFWebController.h:
17994	* WebView.subproj/IFWebDataSource.h:
17995	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource frame]),
17996	(-[IFWebDataSource frameName]), (-[IFWebDataSource stopLoading]):
17997	* WebView.subproj/IFWebDataSourcePrivate.h:
17998	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
17999	(-[IFWebDataSource _addURLHandle:]), (-[IFWebDataSource _removeURLHandle:]),
18000	(-[IFWebDataSource _stopLoading]), (-[IFWebDataSource
18001	_recursiveStopLoadingfromDataSource:]):
18002	* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame setDataSource:]):
18003
180042002-02-20  Richard Williamson  <rjw@apple.com>
18005
18006    Some groundwork to bring WebFoundation callbacks up to 
18007    WebKit.
18008    
18009	* WebView.subproj/IFBaseWebController.mm: (-[IFLoadProgress init]),
18010	(-[IFBaseWebController receivedProgress:forResource:fromDataSource:]),
18011	(-[IFBaseWebController
18012	receivedError:forResource:partialProgress:fromDataSource:]),
18013	(-[IFBaseWebController _changeFrame:dataSource:]):
18014	* WebView.subproj/IFWebController.h:
18015	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource stopLoading]):
18016	* WebView.subproj/IFWebFrame.h:
18017	* WebView.subproj/IFWebFramePrivate.h:
18018	* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate
18019	setProvisionalDataSource:]):
18020
180212002-02-20  Maciej Stachowiak  <mjs@apple.com>
18022
18023	* WebView.subproj/IFWebController.h: Fix my WebController screw-up.
18024
180252002-02-19  John Sullivan  <sullivan@apple.com>
18026
18027	Finished first cut at IFWebHistory implementation. All methods are implemented
18028	except the string-matching ones.
18029
18030	* History.subproj/IFURIEntry.h:
18031	* History.subproj/IFURIEntry.m: (-[IFURIEntry initWithURL:title:image:comment:]),
18032	(-[IFURIEntry lastVisitedDate]), (-[IFURIEntry setModificationDate:]),
18033	(-[IFURIEntry setLastVisitedDate:]):
18034	Changed all NSDates to be NSCalendarDates.
18035
18036	* History.subproj/IFWebHistory.h:
18037	* History.subproj/IFWebHistory.m: (-[IFWebHistory init]), (-[IFWebHistory
18038	dealloc]), (-[IFWebHistory sendEntriesChangedNotification]), (-[IFWebHistory
18039	addEntry:]), (-[IFWebHistory removeEntry:]), (-[IFWebHistory
18040	removeEntriesForDay:]), (-[IFWebHistory removeAllEntries]), (-[IFWebHistory
18041	orderedLastVisitedDays]), (-[IFWebHistory orderedEntriesLastVisitedOnDay:]),
18042	(-[IFWebHistory entriesWithAddressContainingString:]), (-[IFWebHistory
18043	entriesWithTitleOrAddressContainingString:]), (-[IFWebHistory containsURL:]):
18044	Implemented all IFWebHistory methods by calling through to IFWebHistoryPrivate object.
18045	Send a change notification each time the actual data changes. Removed all
18046	canned-data mechanisms.
18047
18048	* History.subproj/IFWebHistoryPrivate.h:
18049	* History.subproj/IFWebHistoryPrivate.m: (-[IFWebHistoryPrivate init]),
18050	(-[IFWebHistoryPrivate dealloc]), (-[IFWebHistoryPrivate findIndex:forDay:]),
18051	(-[IFWebHistoryPrivate insertEntry:atDateIndex:]), (-[IFWebHistoryPrivate
18052	removeEntryForURLString:]), (-[IFWebHistoryPrivate addEntry:]),
18053	(-[IFWebHistoryPrivate removeEntry:]), (-[IFWebHistoryPrivate
18054	removeEntriesForDay:]), (-[IFWebHistoryPrivate removeAllEntries]),
18055	(-[IFWebHistoryPrivate orderedLastVisitedDays]), (-[IFWebHistoryPrivate
18056	orderedEntriesLastVisitedOnDay:]), (-[IFWebHistoryPrivate
18057	entriesWithAddressContainingString:]), (-[IFWebHistoryPrivate
18058	entriesWithTitleOrAddressContainingString:]), (-[IFWebHistoryPrivate
18059	containsURL:]):
18060	Implemented guts of history mechanism using a dictionary for URL lookup and
18061	a sorted array of dates with entries and a sorted array of sorted arrays of 
18062	entries per date.
18063
18064	* WebKit.pbproj/project.pbxproj: Updated for new files
18065
180662002-02-18  John Sullivan  <sullivan@apple.com>
18067
18068	First piece of implementing IFWebHistory. None of the mutators do anything,
18069	and the accessors return canned data. But at least all the temporary hackery
18070	is hiding behind legitimate API.
18071
18072	* History.subproj/IFWebHistory.h:
18073	* History.subproj/IFWebHistory.m: 
18074
18075	(+[IFWebHistory sharedWebHistory]):
18076	Implemented sensibly.
18077
18078	(-[IFWebHistory createTestEntryWithURLString:title:date:]), 
18079	(-[IFWebHistory	testDataDates]), (-[IFWebHistory testData]), 
18080	Private temporary hackery to return fake data.	
18081
18082	(-[IFWebHistory orderedLastVisitedDays]), 
18083	(-[IFWebHistory	orderedEntriesLastVisitedOnDay:]):
18084	Implemented using temporary hackery.
18085
18086	(-[IFWebHistory addEntry:]),
18087	(-[IFWebHistory removeEntry:]), 
18088	(-[IFWebHistory removeAllEntries]):
18089	Unimplemented mutator methods.
18090
18091	(-[IFWebHistory	entriesWithAddressContainingString:]), 
18092	(-[IFWebHistory	entriesWithTitleOrAddressContainingString:]), 
18093	(-[IFWebHistory containsURL:]):
18094	Methods that we'll need eventually, currently unimplemented. We may flesh out
18095	the API a little more before we actually implement any of these.
18096
18097	(-[NSCalendarDate daysSinceDate:]): Convenience method in category; will
18098	probably move to another file soon.
18099
18100	* WebKit.pbproj/project.pbxproj: Updated for new files
18101
181022002-02-18  Kenneth Kocienda  <kocienda@apple.com>
18103
18104	Fixed breakge that came up when project file merged.
18105
18106	* WebKit.pbproj/project.pbxproj:
18107
181082002-02-18  Kenneth Kocienda  <kocienda@apple.com>
18109
18110        Changes to support building standalone Alexander with Frameworks
18111        and libraries contained inside the app package.
18112
18113	* Makefile.am:
18114	* WebKit.pbproj/kocienda.pbxuser:
18115	* WebKit.pbproj/project.pbxproj:
18116
181172002-02-18  Richard Williamson  <rjw@apple.com>
18118
18119        Performance measurement.
18120        
18121	* WebView.subproj/IFWebView.mm: (-[IFWebView layout]), (-[IFWebView drawRect:]):
18122
181232002-02-16  Richard Williamson  <rjw@apple.com>
18124
18125	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource controller]):
18126
181272002-02-16  Richard Williamson  <rjw@apple.com>
18128
18129        Reminders to change frame<->datasource ownership cycle.
18130        
18131	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource setFrame:]),
18132	(-[IFWebDataSource frame]):
18133
181342002-02-13  Richard Williamson  <rjw@apple.com>
18135
18136    Fixed cleanup.  Should revisit ownership graph.  Cycles may be avoidable.
18137    
18138	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
18139	dealloc]):
18140	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource setFrame:]):
18141	* WebView.subproj/IFWebFrame.m: (-[IFWebFrame reset]):
18142	* WebView.subproj/IFWebViewPrivate.h:
18143	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _resetWidget]):
18144
181452002-02-12  Richard Williamson  <rjw@apple.com>
18146
18147    Made basic forms work.
18148    
18149	* WebView.subproj/IFBaseWebController.mm:
18150	* WebView.subproj/IFWebController.h:
18151	* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource initialize]),
18152	(-[IFWebDataSource startLoading:]):
18153	* WebView.subproj/IFWebDataSourcePrivate.h:
18154	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
18155	_startLoading:initiatedByUserEvent:]):
18156
181572002-02-11  John Sullivan  <sullivan@apple.com>
18158
18159	Fixed bug where clicking on empty browser page would crash. This could
18160	happen when the start page was empty, or failed to load.
18161
18162	* WebView.subproj/IFWebView.mm: 
18163	(-[IFWebView mouseUp:]), (-[IFWebView mouseDown:]):
18164	Checked for nil widget before dispatching mouse events.
18165
181662002-02-08  John Sullivan  <sullivan@apple.com>
18167
18168	Changed back & forward to goBack and goForward and made them not return
18169	a value (so signatures match those in WebBrowser). Added backEntry and
18170	forwardEntry that don't alter the list. These will be needed to ask to
18171	go to the URL at the back position without altering the back list until
18172	the change is committed.
18173
18174	* History.subproj/IFBackForwardList.h:
18175	* History.subproj/IFBackForwardList.m: (-[IFBackForwardList goBack]),
18176	(-[IFBackForwardList backEntry]), (-[IFBackForwardList currentEntry]),
18177	(-[IFBackForwardList forwardEntry]), (-[IFBackForwardList goForward]):
18178
181792002-02-07  Richard Williamson  <rjw@apple.com>
18180    
18181    More changes to IFLocationChangeHandler API.
18182
18183	* WebView.subproj/IFBaseWebController.mm:
18184	* WebView.subproj/IFWebController.h:
18185	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource startLoading:]):
18186	* WebView.subproj/IFWebDataSourcePrivate.h:
18187	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
18188	_startLoading:initiatedByMouseEvent:]):
18189	* WebView.subproj/IFWebFramePrivate.h:
18190
181912002-02-07  Richard Williamson  <rjw@apple.com>
18192
18193    Update IFLocationChangeHandler API.  Added factored code for
18194    URL loading.
18195    
18196	* ChangeLog:
18197	* WebView.subproj/IFBaseWebController.h:
18198	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
18199	setMainView:andMainDataSource:]), (-[IFBaseWebController
18200	_changeLocationTo:forFrame:parent:]), (-[IFBaseWebController
18201	_changeFrame:dataSource:]), (-[IFBaseWebController
18202	locationChangeCommittedForFrame:]):
18203	* WebView.subproj/IFBaseWebControllerPrivate.h:
18204	* WebView.subproj/IFWebController.h:
18205	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource startLoading:]):
18206	* WebView.subproj/IFWebFrame.h:
18207	* WebView.subproj/IFWebFrame.m: (-[IFWebFrame reset]):
18208
182092002-02-06  Richard Williamson  <rjw@apple.com>
18210
18211    Fixed allocation problems.  Implemented parent->child management
18212    for datasource correctly.
18213    
18214	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
18215	changeLocationTo:forFrame:]):
18216	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource addFrame:]):
18217	* WebView.subproj/IFWebDataSourcePrivate.h:
18218	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
18219	_setController:]), (-[IFWebDataSource _part]), (-[IFWebDataSource _setParent:]):
18220	* WebView.subproj/IFWebFrame.h:
18221	* WebView.subproj/IFWebFrame.m: (-[IFWebFrame _setRenderFramePart:]),
18222	(-[IFWebFrame _renderFramePart]):
18223	* WebView.subproj/IFWebView.mm: (-[IFWebView dataSourceChanged:]):
18224
182252002-02-05  Richard Williamson  <rjw@apple.com>
18226
18227    Updated controller API to reflect frames.
18228    
18229	* WebView.subproj/IFBaseWebController.h:
18230	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
18231	initWithView:dataSource:]), (-[IFBaseWebController
18232	setMainView:andMainDataSource:]), (-[IFBaseWebController
18233	createFrameNamed:for:inParent:]), (-[IFBaseWebController mainFrame]),
18234	(-[IFBaseWebController mainView]), (-[IFBaseWebController mainDataSource]),
18235	(-[IFBaseWebController changeLocationTo:forFrame:]), (-[IFBaseWebController
18236	locationChangeStartedForFrame:]), (-[IFBaseWebController
18237	locationChangeInProgressForFrame:]), (-[IFBaseWebController
18238	locationChangeDone:forFrame:]):
18239	* WebView.subproj/IFBaseWebControllerPrivate.h:
18240	* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
18241	init]), (-[IFBaseWebControllerPrivate dealloc]):
18242	* WebView.subproj/IFWebController.h:
18243	* WebView.subproj/IFWebDataSource.h:
18244	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource initWithURL:]),
18245	(-[IFWebDataSource setFrame:]), (-[IFWebDataSource frame]), (-[IFWebDataSource
18246	frameName]):
18247	* WebView.subproj/IFWebDataSourcePrivate.h:
18248	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
18249	(-[IFWebDataSource _part]):
18250	* WebView.subproj/IFWebFrame.h:
18251	* WebView.subproj/IFWebFrame.m: (-[IFWebFrame dealloc]), (-[IFWebFrame
18252	dataSource]), (-[IFWebFrame setDataSource:]):
18253	* WebView.subproj/IFWebView.h:
18254	* WebView.subproj/IFWebView.mm: (-[IFWebView dataSourceChanged:]):
18255
182562002-02-05  Maciej Stachowiak  <mjs@apple.com>
18257
18258	Remove old obsolete cache code from tree and build.
18259
18260	* Cache.subproj/NSURICache.h:
18261	* Cache.subproj/NSURICache.m:
18262	* Cache.subproj/NSURICacheData.h:
18263	* Cache.subproj/NSURICacheData.m:
18264	* Cache.subproj/NSURILoad.h:
18265	* Cache.subproj/NSURILoad.m:
18266	* Cache.subproj/NSURILoadReallyPrivate.h:
18267	* Cache.subproj/_NSURICacheQueue.h:
18268	* Cache.subproj/_NSURICacheQueue.m:
18269	* Misc.subproj/WebKitReallyPrivate.h:
18270	* Misc.subproj/_NSMonitor.h:
18271	* Misc.subproj/_NSMonitor.m:
18272	* WebKit.pbproj/project.pbxproj:
18273
182742002-02-05  Richard Williamson  <rjw@apple.com>
18275
18276    Changes to support dynamic scroll bars in frames/iframes.
18277
18278	* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
18279	createFrameNamed:for:inParent:]):
18280	* WebView.subproj/IFWebView.mm: (-[IFWebView dataSourceChanged]):
18281	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _setFrameScrollView:]):
18282
182832002-02-04  Maciej Stachowiak  <mjs@apple.com>
18284
18285	Rename all classes from WK prefix to IF prefix.
18286
18287	* Cache.subproj/IFLoadChunk.h:
18288	* Cache.subproj/IFWebCache.h:
18289	* Cache.subproj/IFWebCacheClient.h:
18290	* Cache.subproj/IFWebContentType.h:
18291	* History.subproj/IFAttributedURL.h:
18292	* History.subproj/IFBackForwardList.h:
18293	* History.subproj/IFBackForwardList.m: (-[IFBackForwardList init]),
18294	(-[IFBackForwardList addEntry:]), (-[IFBackForwardList back]),
18295	(-[IFBackForwardList currentEntry]), (-[IFBackForwardList forward]),
18296	(-[IFBackForwardList description]):
18297	* History.subproj/IFURIEntry.h:
18298	* History.subproj/IFURIEntry.m: (WCCreateURIEntry), (-[IFURIEntry isEqual:]),
18299	(-[IFURIEntry description]):
18300	* History.subproj/IFURIList.h:
18301	* History.subproj/IFURIList.m: (newURIListNode), (freeNode), (-[IFURIList
18302	dealloc]), (-[IFURIList addEntry:]), (-[IFURIList removeURL:]), (-[IFURIList
18303	removeEntry:]), (-[IFURIList entryForURL:]), (-[IFURIList entryAtIndex:]),
18304	(-[IFURIList removeEntryAtIndex:]), (-[IFURIList removeEntriesToIndex:]):
18305	* Misc.subproj/IFException.h:
18306	* Misc.subproj/IFException.m:
18307	* WebKit.pbproj/project.pbxproj:
18308	* WebView.subproj/IFBaseWebController.h:
18309	* WebView.subproj/IFBaseWebController.mm: (+[IFObjectHolder holderWithObject:]),
18310	(-[IFBaseWebController init]), (-[IFBaseWebController initWithView:dataSource:]),
18311	(-[IFBaseWebController setDirectsAllLinksToSystemBrowser:]),
18312	(-[IFBaseWebController directsAllLinksToSystemBrowser]), (-[IFBaseWebController
18313	setView:andDataSource:]), (-[IFBaseWebController
18314	createFrameNamed:for:inParent:]), (-[IFBaseWebController viewForDataSource:]),
18315	(-[IFBaseWebController dataSourceForView:]), (-[IFBaseWebController mainView]),
18316	(-[IFBaseWebController mainDataSource]), (-[IFBaseWebController
18317	setStatusText:forDataSource:]), (-[IFBaseWebController
18318	statusTextForDataSource:]), (-[IFBaseWebController authenticate:]),
18319	(-[IFBaseWebController receivedProgress:forResource:fromDataSource:]),
18320	(-[IFBaseWebController
18321	receivedError:forResource:partialProgress:fromDataSource:]),
18322	(-[IFBaseWebController locationWillChangeTo:]), (-[IFBaseWebController
18323	locationChangeStartedForDataSource:]), (-[IFBaseWebController
18324	locationChangeInProgressForDataSource:]), (-[IFBaseWebController
18325	locationChangeDone:forDataSource:]), (-[IFBaseWebController
18326	receivedPageTitle:forDataSource:]), (-[IFBaseWebController
18327	serverRedirectTo:forDataSource:]):
18328	* WebView.subproj/IFBaseWebControllerPrivate.h:
18329	* WebView.subproj/IFBaseWebControllerPrivate.mm:
18330	* WebView.subproj/IFDynamicScrollBarsView.h:
18331	* WebView.subproj/IFDynamicScrollBarsView.m:
18332	* WebView.subproj/IFGrabBag.h:
18333	* WebView.subproj/IFPreferences.h:
18334	* WebView.subproj/IFWebController.h:
18335	* WebView.subproj/IFWebDataSource.h:
18336	* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource _commonInitialization]),
18337	(-[IFWebDataSource initWithURL:]), (-[IFWebDataSource frameName]),
18338	(-[IFWebDataSource isMainDocument]), (-[IFWebDataSource parent]),
18339	(-[IFWebDataSource children]), (-[IFWebDataSource addFrame:]), (-[IFWebDataSource
18340	frameNamed:]), (-[IFWebDataSource frameNames]), (-[IFWebDataSource
18341	findDataSourceForFrameNamed:]), (-[IFWebDataSource frameExists:]),
18342	(-[IFWebDataSource openURL:inFrameNamed:]), (-[IFWebDataSource
18343	openURL:inIFrame:]), (-[IFWebDataSource controller]), (-[IFWebDataSource
18344	inputURL]), (-[IFWebDataSource finalURL]), (-[IFWebDataSource wasRedirected]),
18345	(-[IFWebDataSource stopLoading]), (-[IFWebDataSource isLoading]),
18346	(-[IFWebDataSource base]), (-[IFWebDataSource baseTarget]), (-[IFWebDataSource
18347	encoding]), (-[IFWebDataSource setUserStyleSheetFromURL:]), (-[IFWebDataSource
18348	setUserStyleSheetFromString:]), (-[IFWebDataSource icon]), (-[IFWebDataSource
18349	isPageSecure]), (-[IFWebDataSource pageTitle]):
18350	* WebView.subproj/IFWebDataSourcePrivate.h:
18351	* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
18352	(-[IFWebDataSource _setController:]), (-[IFWebDataSource _part]),
18353	(-[IFWebDataSource _setFrameName:]):
18354	* WebView.subproj/IFWebFrame.h:
18355	* WebView.subproj/IFWebFrame.m: (-[IFWebFrame initWithName:view:dataSource:]),
18356	(-[IFWebFrame dataSource]):
18357	* WebView.subproj/IFWebView.h:
18358	* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
18359	controller]), (-[IFWebView dataSourceChanged]), (-[IFWebView layout]),
18360	(-[IFWebView stopAnimations]), (-[IFWebView setFontSizes:]), (-[IFWebView
18361	fontSizes]), (-[IFWebView resetFontSizes]), (-[IFWebView setStandardFont:]),
18362	(-[IFWebView standardFont]), (-[IFWebView setFixedFont:]), (-[IFWebView
18363	fixedFont]), (-[IFWebView setCanDragFrom:]), (-[IFWebView setCanDragTo:]),
18364	(-[IFWebView defaultContextMenuItemsForNode:]), (-[IFWebView
18365	setContextMenusEnabled:]), (-[IFWebView deselectText]), (-[IFWebView
18366	searchFor:direction:caseSensitive:]), (-[IFWebView selectedText]), (-[IFWebView
18367	setNeedsLayout:]), (-[IFWebView drawRect:]), (-[IFWebView setIsFlipped:]),
18368	(-[IFWebView isFlipped]), (-[IFWebView mouseUp:]), (-[IFWebView mouseDown:]):
18369	* WebView.subproj/IFWebViewPrivate.h:
18370	* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebViewPrivate dealloc]),
18371	(-[IFWebView _setController:]), (-[IFWebView _widget]), (-[IFWebView
18372	_setFrameScrollView:]), (-[IFWebView _frameScrollView]):
18373
183742002-02-04  Maciej Stachowiak  <mjs@apple.com>
18375
18376	Rename all WK files to IF (classes not renamed yet).
18377
18378	* Cache.subproj/IFLoadChunk.h:
18379	* Cache.subproj/IFWebCache.h:
18380	* Cache.subproj/IFWebCacheClient.h:
18381	* Cache.subproj/IFWebContentType.h:
18382	* Cache.subproj/WKLoadChunk.h:
18383	* Cache.subproj/WKWebCache.h:
18384	* Cache.subproj/WKWebCacheClient.h:
18385	* Cache.subproj/WKWebContentType.h:
18386	* History.subproj/IFAttributedURL.h:
18387	* History.subproj/IFBackForwardList.h:
18388	* History.subproj/IFBackForwardList.m:
18389	* History.subproj/IFURIEntry.h:
18390	* History.subproj/IFURIEntry.m:
18391	* History.subproj/IFURIList.h:
18392	* History.subproj/IFURIList.m:
18393	* History.subproj/WKAttributedURL.h:
18394	* History.subproj/WKBackForwardList.h:
18395	* History.subproj/WKBackForwardList.m:
18396	* History.subproj/WKURIEntry.h:
18397	* History.subproj/WKURIEntry.m:
18398	* History.subproj/WKURIList.h:
18399	* History.subproj/WKURIList.m:
18400	* Misc.subproj/WKException.h:
18401	* Misc.subproj/WKException.m:
18402	* WebKit.pbproj/project.pbxproj:
18403	* WebView.subproj/IFBaseWebController.h:
18404	* WebView.subproj/IFBaseWebController.mm:
18405	* WebView.subproj/IFBaseWebControllerPrivate.h:
18406	* WebView.subproj/IFBaseWebControllerPrivate.mm:
18407	* WebView.subproj/IFDefaultWebController.h:
18408	* WebView.subproj/IFDefaultWebController.mm:
18409	* WebView.subproj/IFDefaultWebControllerPrivate.h:
18410	* WebView.subproj/IFDefaultWebControllerPrivate.mm:
18411	* WebView.subproj/IFDynamicScrollBarsView.m:
18412	* WebView.subproj/IFGrabBag.h:
18413	* WebView.subproj/IFPreferences.h:
18414	* WebView.subproj/IFWebController.h:
18415	* WebView.subproj/IFWebDataSource.h:
18416	* WebView.subproj/IFWebDataSource.mm:
18417	* WebView.subproj/IFWebDataSourcePrivate.h:
18418	* WebView.subproj/IFWebDataSourcePrivate.mm:
18419	* WebView.subproj/IFWebFrame.h:
18420	* WebView.subproj/IFWebFrame.m:
18421	* WebView.subproj/IFWebView.h:
18422	* WebView.subproj/IFWebView.mm:
18423	* WebView.subproj/IFWebViewPrivate.h:
18424	* WebView.subproj/IFWebViewPrivate.mm:
18425	* WebView.subproj/WKDefaultWebController.h:
18426	* WebView.subproj/WKDefaultWebController.mm:
18427	* WebView.subproj/WKDefaultWebControllerPrivate.h:
18428	* WebView.subproj/WKDefaultWebControllerPrivate.mm:
18429	* WebView.subproj/WKDynamicScrollBarsView.h:
18430	* WebView.subproj/WKDynamicScrollBarsView.m:
18431	* WebView.subproj/WKGrabBag.h:
18432	* WebView.subproj/WKPreferences.h:
18433	* WebView.subproj/WKWebController.h:
18434	* WebView.subproj/WKWebDataSource.h:
18435	* WebView.subproj/WKWebDataSource.mm:
18436	* WebView.subproj/WKWebDataSourcePrivate.h:
18437	* WebView.subproj/WKWebDataSourcePrivate.mm:
18438	* WebView.subproj/WKWebFrame.h:
18439	* WebView.subproj/WKWebFrame.m:
18440	* WebView.subproj/WKWebView.h:
18441	* WebView.subproj/WKWebView.mm:
18442	* WebView.subproj/WKWebViewPrivate.h:
18443	* WebView.subproj/WKWebViewPrivate.mm:
18444
184452002-02-01  Richard Williamson  <rjw@apple.com>
18446
18447    Changes for dynamic scrolling frames.  Added notification of complete
18448    load.
18449    
18450	* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController
18451	createFrameNamed:for:inParent:]), (-[WKDefaultWebController
18452	locationChangeDone:forDataSource:]):
18453	* WebView.subproj/WKWebController.h:
18454	* WebView.subproj/WKWebView.mm: (-[WKWebView dataSourceChanged]):
18455	* WebView.subproj/WKWebViewPrivate.h:
18456	* WebView.subproj/WKWebViewPrivate.mm: (-[WKWebViewPrivate dealloc]),
18457	(-[WKWebView _widget]), (-[WKWebView _setFrameScrollView:]), (-[WKWebView
18458	_frameScrollView]):
18459
184602002-02-01  John Sullivan  <sullivan@apple.com>
18461
18462	Added call to examine the entry at the current index in
18463	the back/forward list without modifying the list. I needed
18464	this to save context data (in my case, scroll position)
18465	on the currently-viewed entry.
18466
18467	* History.subproj/WKBackForwardList.h:
18468	* History.subproj/WKBackForwardList.m: 
18469	(-[WKBackForwardList currentEntry]):
18470	Just returns the entry at the current index.
18471
184722002-01-31  John Sullivan  <sullivan@apple.com>
18473
18474	* History.subproj/WKURIList.m: (newURIListNode):
18475	retain entries before adding them to list. The node-freeing
18476	routine was releasing, but the node-adding routine wasn't
18477	retaining. Bad asymmetry, made up for by WebViewTest not
18478	autoreleasing. I fixed that too.
18479
184802002-01-31  John Sullivan  <sullivan@apple.com>
18481
18482	* WebKit.pbproj: Removed -O0, so it will now get all the same
18483	warnings as pbxbuild gets.
18484
184852002-01-31  Kenneth Kocienda  <kocienda@apple.com>
18486
18487        Removed dependency on WC versions of these files
18488        
18489	* History.subproj/WKBackForwardList.h:
18490	* History.subproj/WKBackForwardList.m:
18491	* History.subproj/WKURIEntry.h:
18492	* History.subproj/WKURIEntry.m:
18493	* WebKit.pbproj/project.pbxproj:
18494
184952002-01-31  John Sullivan  <sullivan@apple.com>
18496
18497	* WebKit.pbproj:
18498	Marked WKURIList.h as a public header
18499
185002002-01-30  Richard Williamson  <rjw@apple.com>
18501
18502	* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController
18503	createFrameNamed:for:inParent:]):
18504	* WebView.subproj/WKWebDataSource.mm: (-[WKWebDataSource documentTextFromDOM]):
18505
185062002-01-30  Richard Williamson  <rjw@apple.com>
18507
18508    Cleaned up API w/ respect to frames.
18509    
18510	* WebView.subproj/WKDefaultWebController.h:
18511	* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController
18512	setView:andDataSource:]), (-[WKDefaultWebController
18513	createFrameNamed:for:inParent:]):
18514	* WebView.subproj/WKWebController.h:
18515	* WebView.subproj/WKWebDataSource.h:
18516
185172002-01-30  Kenneth Kocienda  <kocienda@apple.com>
18518
18519        Added *.lo, *.la, Icon, and .libs to .cvsignore files
18520        
18521	* .cvsignore:
18522
185232002-01-29  Richard Williamson  <rjw@apple.com>
18524
18525	* ChangeLog:
18526	* WebView.subproj/WKDefaultWebController.h:
18527	* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController
18528	setView:andDataSource:]), (-[WKDefaultWebController dataSourceForView:]):
18529
185302002-01-29  Richard Williamson  <rjw@apple.com>
18531
18532	* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController
18533	setView:andDataSource:]):
18534
185352002-01-29  Richard Williamson  <rjw@apple.com>
18536
18537    First pass at frame code.  Still needs lots of cleanup.
18538    
18539	* WebKit.pbproj/project.pbxproj:
18540	* WebView.subproj/WKDefaultWebController.h:
18541	* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController init]):
18542	* WebView.subproj/WKWebDataSource.h:
18543	* WebView.subproj/WKWebDataSource.mm: (-[WKWebDataSource dealloc]),
18544	(-[WKWebDataSource frameName]), (-[WKWebDataSource parent]), (-[WKWebDataSource
18545	children]), (-[WKWebDataSource addFrame:]), (-[WKWebDataSource frameNamed:]):
18546	* WebView.subproj/WKWebDataSourcePrivate.h:
18547	* WebView.subproj/WKWebDataSourcePrivate.mm: (-[WKWebDataSourcePrivate init]),
18548	(-[WKWebDataSourcePrivate dealloc]), (-[WKWebDataSource _setController:]),
18549	(-[WKWebDataSource _setFrameName:]):
18550	* WebView.subproj/WKWebView.mm: (-[WKWebView mouseUp:]):
18551	* WebView.subproj/WKWebViewPrivate.h:
18552	* WebView.subproj/WKWebViewPrivate.mm: (-[WKWebViewPrivate dealloc]),
18553	(-[WKWebView _setController:]), (-[WKWebView _widget]):
18554
185552002-01-29  Kenneth Kocienda  <kocienda@apple.com>
18556
18557        WebKit now links with WebFoundation
18558        
18559	* WebKit.pbproj/kocienda.pbxuser:
18560	* WebKit.pbproj/project.pbxproj:
18561
18562
185632002-01-23  Ken Kocienda  <kocienda@apple.com>
18564
18565	Took out @executable_path hack added for Alexander demo.
18566	This should clear up a class of crash-on-launch issues.
18567
18568	* WebKit.pbproj/project.pbxproj:
18569
185702002-01-21  John Sullivan  <sullivan@apple.com>
18571
18572	* WebView.subproj/WKWebController.h:
18573	* WebView.subproj/WKWebView.h:
18574	Changed WKConcreteWebController to WKDefaultWebController in a
18575	couple of comments.
18576
185772002-01-18  Richard Williamson  <rjw@apple.com>
18578
18579    First pass at new view/datasource/controller API.
18580    
18581	* Misc.subproj/WKException.h:
18582	* Misc.subproj/WKException.m:
18583	* WebKit.pbproj/project.pbxproj:
18584	* WebView.subproj/WKDefaultWebController.h:
18585	* WebView.subproj/WKDefaultWebController.mm: (+[WKObjectHolder
18586	holderWithObject:]), (-[WKObjectHolder initWithObject:]), (-[WKObjectHolder
18587	dealloc]), (-[WKObjectHolder copyWithZone:]), (-[WKObjectHolder hash]),
18588	(-[WKObjectHolder object]), (-[WKObjectHolder isEqual:]),
18589	(-[WKDefaultWebController initWithView:dataSource:]), (-[WKDefaultWebController
18590	dealloc]), (-[WKDefaultWebController setDirectsAllLinksToSystemBrowser:]),
18591	(-[WKDefaultWebController directsAllLinksToSystemBrowser]),
18592	(-[WKDefaultWebController setView:andDataSource:]), (-[WKDefaultWebController
18593	viewForDataSource:]), (-[WKDefaultWebController dataSourceForView:]),
18594	(-[WKDefaultWebController mainView]), (-[WKDefaultWebController mainDataSource]),
18595	(-[WKDefaultWebController createViewForDataSource:inFrameNamed:]),
18596	(-[WKDefaultWebController createViewForDataSource:inIFrame:]),
18597	(-[WKDefaultWebController setStatusText:forDataSource:]),
18598	(-[WKDefaultWebController statusTextForDataSource:]), (-[WKDefaultWebController
18599	authenticate:]), (-[WKDefaultWebController
18600	receivedProgress:forResource:fromDataSource:]), (-[WKDefaultWebController
18601	receivedError:forResource:partialProgress:fromDataSource:]),
18602	(-[WKDefaultWebController locationWillChangeTo:]), (-[WKDefaultWebController
18603	locationChangeStartedForDataSource:]), (-[WKDefaultWebController
18604	locationChangeInProgressForDataSource:]), (-[WKDefaultWebController
18605	locationChangeDone:forDataSource:]), (-[WKDefaultWebController
18606	receivedPageTitle:forDataSource:]), (-[WKDefaultWebController
18607	serverRedirectTo:forDataSource:]):
18608	* WebView.subproj/WKDefaultWebControllerPrivate.h:
18609	* WebView.subproj/WKDefaultWebControllerPrivate.mm:
18610	(-[WKDefaultWebControllerPrivate init]), (-[WKDefaultWebControllerPrivate
18611	dealloc]):
18612	* WebView.subproj/WKWebController.h:
18613	* WebView.subproj/WKWebController.mm:
18614	* WebView.subproj/WKWebDataSource.h:
18615	* WebView.subproj/WKWebDataSource.mm: (-[WKWebDataSource _commonInitialization]),
18616	(-[WKWebDataSource initWithURL:]), (-[WKWebDataSource parent]),
18617	(-[WKWebDataSource isMainDocument]), (-[WKWebDataSource children]),
18618	(-[WKWebDataSource frameNames]), (-[WKWebDataSource
18619	findDataSourceForFrameNamed:]), (-[WKWebDataSource frameExists:]),
18620	(-[WKWebDataSource openURL:inFrameNamed:]), (-[WKWebDataSource
18621	openURL:inIFrame:]), (-[WKWebDataSource controller]), (-[WKWebDataSource
18622	inputURL]), (-[WKWebDataSource finalURL]), (-[WKWebDataSource wasRedirected]),
18623	(-[WKWebDataSource startLoading:]), (-[WKWebDataSource stopLoading]),
18624	(-[WKWebDataSource isLoading]), (-[WKWebDataSource documentText]),
18625	(-[WKWebDataSource base]), (-[WKWebDataSource baseTarget]), (-[WKWebDataSource
18626	encoding]), (-[WKWebDataSource setUserStyleSheetFromURL:]), (-[WKWebDataSource
18627	setUserStyleSheetFromString:]), (-[WKWebDataSource icon]), (-[WKWebDataSource
18628	isPageSecure]), (-[WKWebDataSource pageTitle]):
18629	* WebView.subproj/WKWebDataSourcePrivate.h:
18630	* WebView.subproj/WKWebDataSourcePrivate.mm: (-[WKWebDataSourcePrivate init]),
18631	(-[WKWebDataSourcePrivate dealloc]), (-[WKWebDataSource _setController:]),
18632	(-[WKWebDataSource _part]):
18633	* WebView.subproj/WKWebView.h:
18634	* WebView.subproj/WKWebView.mm: (-[WKWebView initWithFrame:]), (-[WKWebView
18635	dealloc]), (-[WKWebView controller]), (-[WKWebView dataSourceChanged]),
18636	(-[WKWebView layout]), (-[WKWebView stopAnimations]), (-[WKWebView
18637	setFontSizes:]), (-[WKWebView fontSizes]), (-[WKWebView resetFontSizes]),
18638	(-[WKWebView setStandardFont:]), (-[WKWebView standardFont]), (-[WKWebView
18639	setFixedFont:]), (-[WKWebView fixedFont]), (-[WKWebView setCanDragFrom:]),
18640	(-[WKWebView canDragFrom]), (-[WKWebView setCanDragTo:]), (-[WKWebView
18641	canDragTo]), (-[WKWebView defaultContextMenuItemsForNode:]), (-[WKWebView
18642	setContextMenusEnabled:]), (-[WKWebView deselectText]), (-[WKWebView
18643	searchFor:direction:caseSensitive:]), (-[WKWebView selectedText]), (-[WKWebView
18644	delayLayout:]), (-[WKWebView notificationReceived:]), (-[WKWebView
18645	setNeedsLayout:]), (-[WKWebView drawRect:]), (-[WKWebView setIsFlipped:]),
18646	(-[WKWebView isFlipped]), (-[WKWebView setFrame:]), (-[WKWebView mouseUp:]),
18647	(-[WKWebView mouseDown:]), (-[WKWebView mouseDragged:]):
18648	* WebView.subproj/WKWebViewPrivate.h:
18649	* WebView.subproj/WKWebViewPrivate.mm: (-[WKWebViewPrivate init]),
18650	(-[WKWebViewPrivate dealloc]), (-[WKWebView _resetView]), (-[WKWebView
18651	_setController:]):
18652
186532002-01-14  Maciej Stachowiak  <mjs@apple.com>
18654
18655	Convert build system to automake
18656
18657	* Makefile.am: Add this
18658	* Makefile.in: Remove this (now autogenerated)
18659	* .cvsignore: Fix ignores
18660	* WebKit.pbproj/project.pbxproj: Twiddle link flags
18661
186622001-12-21  John Sullivan  <sullivan@apple.com>
18663
18664	* .cvsignore:
18665	* WebKit.pbproj/.cvsignore:
18666	Added files that were showing up on my machine to .cvsignores.
18667
186682001-12-18  Kenneth Kocienda  <kocienda@apple.com>
18669
18670        Deleted one little word
18671
18672	* Documentation/WebKit-White-Paper/WebKit-White-Paper.html:
18673
186742001-12-18  Richard Williamson  <rjw@apple.com>
18675
18676        Restructing of headers in prepartion for implementation.  Added new WK*
18677        headers to PB project description.
18678
18679	* ChangeLog:
18680	* WebKit.pbproj/project.pbxproj:
18681	* WebView.subproj/NSWebPageDataSource.h:
18682	* WebView.subproj/NSWebPageDataSource.mm:
18683	* WebView.subproj/NSWebPageDataSourcePrivate.h:
18684	* WebView.subproj/NSWebPageView.h:
18685	* WebView.subproj/NSWebPageView.mm:
18686	* WebView.subproj/NSWebPageViewPrivate.h:
18687	* WebView.subproj/WKWebController.h:
18688	* WebView.subproj/WKWebController.mm:
18689	* WebView.subproj/WKWebDataSource.h:
18690	* WebView.subproj/WKWebDataSource.mm: (+[WKWebDataSource initialize]):
18691	* WebView.subproj/WKWebDataSourcePrivate.h:
18692	* WebView.subproj/WKWebView.h:
18693	* WebView.subproj/WKWebView.mm:
18694	* WebView.subproj/WKWebViewPrivate.h:
18695
186962001-12-18  Kenneth Kocienda  <kocienda@apple.com>
18697
18698        Updated the white paper text and graphics.
18699        
18700	* Documentation/WebKit-White-Paper/WebKit-White-Paper.html:
18701	* Documentation/WebKit-White-Paper/images/webkit-cache-loader.jpg:
18702	* Documentation/WebKit-White-Paper/images/webkit-classes.jpg:
18703
187042001-12-18  Kenneth Kocienda  <kocienda@apple.com>
18705
18706        Merged "Changes" information into individual files
18707
18708	* Cache.subproj/WKLoadChunk.h:
18709	* Cache.subproj/WKWebCache.h:
18710	* Cache.subproj/WKWebCacheClient.h:
18711	* Cache.subproj/WKWebContentType.h:
18712
187132001-12-17  Kenneth Kocienda  <kocienda@apple.com>
18714
18715        Fixed small cpp glitch in WKWebCache.
18716        Added WKAttributedURL header.
18717        Updated WKBackForwardList with ifdef'ed out new design.
18718        
18719	* Cache.subproj/WKWebCache.h:
18720	* History.subproj/WKAttributedURL.h:
18721	* History.subproj/WKBackForwardList.h:
18722
187232001-12-17  Kenneth Kocienda  <kocienda@apple.com>
18724
18725        Added header files by chopping up the CacheAPI.h document I have been working on.
18726
18727	* Cache.subproj/WKLoadChunk.h:
18728	* Cache.subproj/WKWebCache.h:
18729	* Cache.subproj/WKWebCacheClient.h:
18730	* Cache.subproj/WKWebContentType.h:
18731
187322001-12-17  Kenneth Kocienda  <kocienda@apple.com>
18733
18734        Did some verb tense cleanup.
18735
18736	* Documentation/WebKit-White-Paper/WebKit-White-Paper.html:
18737
187382001-12-17  Kenneth Kocienda  <kocienda@apple.com>
18739
18740        Added the current draft of the WebKit white paper.
18741        
18742	* Documentation/WebKit-White-Paper/WebKit-White-Paper.html:
18743	* Documentation/WebKit-White-Paper/images/webkit-cache-loader.jpg:
18744
187452001-12-14  Richard Williamson  <rjw@apple.com>
18746
18747        Remove WKContextMenuHandler for want of a better way to describe the
18748        not-yet-existing WKDOMNode.  We can't think of any initial clients that want
18749        to override the default behavior anyway.  Put it in WKGrabBag.h for now.
18750
18751	* WebView.subproj/WKWebController.h:   
18752
187532001-12-14  Richard Williamson  <rjw@apple.com>
18754        
18755        Remove explicit API to get/set the selection range.  This will be postponed until we
18756        have a DOM API that allows us to express selection ranges correctly.  Instead we have API
18757        that should support searching and getting a NSAttributedString that corresponds to
18758        the selected text.
18759
18760        Added the following methods:
18761            - (void)searchFor: (NSString *)string direction: (BOOL)forward caseSensitive: (BOOL)case
18762            - deselectText;
18763            - (NSAttributedString *)selectedText;
18764       
18765	* WebView.subproj/WKWebView.h:    
18766
18767        Moved search API to WKWebView.
18768        
18769        Moved WKPreferences to a new file, WKPreferences.h.  We are still discussing
18770        this item and it will not make it into the white paper.
18771                    
18772	Minor naming changes.
18773
18774	* WebView.subproj/WKDataSource.h:        
18775
187762001-12-14  Maciej Stachowiak  <mjs@apple.com>
18777
18778	Simplified WKLocationChangeHandler and updated
18779	WKAuthenticationHandler.
18780
18781	* WebView.subproj/WKWebController.h:
18782	(WKWebDataSource): Renamed methods to be forDataSource, not
18783	byDataSource.
18784	(-[WKWebDataSource locationChangeInProgressForDataSource:]): Added.
18785	(-[WKWebDataSource locationChangeDone:forDataSource:]): Added as a
18786	collapsed version of locationChangeCancelled:,
18787	locationChangeStopped: and locationChangeFinished:.
18788	(WKSimpleAuthenticationResult, WKSimpleAuthenticationRequest):
18789	made these interfaces instead of structs.
18790	
187912001-12-14  Maciej Stachowiak  <mjs@apple.com>
18792
18793	Minor cleanups, mostly for naming consistency.
18794	
18795	* WebView.subproj/WKWebController.h: 
18796	(WKSimpleAuthenticationRequest) name field `url', not `uri'.
18797	(-[WKWebDataSourceErrorHandler receivedError:forDataSource:]):
18798	renamed from `error:inDataSource:' so that it's a verb phrase.
18799	
18800	* WebView.subproj/WKWebDataSource.h:
18801	(-[WKWebDataSource initWithURL:]): Rename `inputUrl' argument to
18802	`inputURL'.
18803	(-[WKWebDataSource initWithLoader:]): Change argument type from
18804	`WKURILoader' to `WKLoader'.
18805	(-[WKWebDataSource wasRedirected]): Renamed from `isRedirected',
18806	the past tense seems more appropriate here.
18807	(-[WKWebDataSource setJavaEnabled:]): Add missing semicolon.
18808	(-[WKWebDataSource pluginsEnabled:]): renamed from `pluginEnabled'
18809	for consistency with `setPluginsEnabled:'.
18810
18811	* WebView.subproj/WKWebView.h:
18812	(-[WKWebView fontSizes]): renamed from `fontSize' for sonsistency
18813	with `setFontSizes:'.
18814	(-[WKWebView setContextMenusEnabled]): renamed from
18815	'setEnableContextMenus:' for consistency with
18816	`contextMenusenabled'.
18817
188182001-12-14  Maciej Stachowiak  <mjs@apple.com>
18819
18820	After discussion with Don, Removed all methods relating to
18821	resolved URLs, since browsers don't actually treat aliases
18822	specially.
18823	
18824	* WebView.subproj/WKWebController.h: removed inputURLresolvedTo: methods.
18825	* WebView.subproj/WKWebDataSource.h: remove resolvedURL method,
18826	and mentions of it in comments.
18827
188282001-12-13  Richard Williamson  <rjw@apple.com>
18829  
18830        Removed WKFrameSetHandler, placed that functionality on WKWebDataSource.
18831        
18832        Changed WKLocationChangeHandler to add a parameter specifying the data source
18833        that sent the message.
18834
18835	* WebView.subproj/WKWebController.h:
18836
188372001-12-13  Maciej Stachowiak  <mjs@apple.com>
18838
18839	Warning fixes and support to pass the http headers along with
18840	cache data items
18841
18842	* Cache.subproj/NSURICacheData.h, Cache.subproj/NSURICacheData.m:
18843	(+[NSURICacheData
18844	dataWithURL:status:error:headers:data:size:notificationString:userData:],
18845	-[NSURICacheData
18846	initWithURL:status:error:headers:data:size:notificationString:userData:]),
18847	-[NSURICacheData dealloc], -[NSURICacheData error],
18848	-[NSURICacheData headers]: 
18849	NSURICacheData now carries a copy of the response headers
18850	dictionary.
18851	* Cache.subproj/NSURICache.m: include "WCURICache.h" to fix warnings.
18852	(-[NSURICache requestWithURL:requestor:userData:]): 
18853	Handle headers in CacheData.
18854	* Cache.subproj/NSURILoad.h, Cache.subproj/NSURILoad.m:
18855	(-[NSURILoad __NSURILoadReadStreamCallback:event:data:],
18856	-[NSURILoad headers], -[NSURILoad dealloc], -[NSURILoad done]): 
18857	An NSURILoad object now carries the response headers associated
18858	with its connection, if any.
18859
18860	* History.subproj/WKBackForwardList.m: include WCBackForwardList.h
18861	to fix warning.
18862	* History.subproj/WKURIEntry.m: include WCURIEntry.h to fix
18863	warning.
18864	* Misc.subproj/WebKitDebug.h: Use (void) for C prototypes, not ().
18865	* WebView.subproj/NSWebPageDataSource.mm: (+[NSWebPageDataSource
18866	initialize]): Remove unused variable to fix warning.
18867	* WebKit.pbproj/project.pbxproj: Enable many warning flags and -Werror
18868
188692001-12-13  Maciej Stachowiak  <mjs@apple.com>
18870
18871	* WebView.subproj/WKWebController.h: Defined initial version of
18872	WKAuthenticationHandler interface, and associated
18873	WKSimpleAuthenticationRequest and WKSimpleAuthenticationResult
18874	structs.
18875
188762001-12-13  Richard Williamson  <rjw@apple.com>
18877    
18878        Remove setBase: and setBaseTarget:
18879        
18880        Changed return type of baseTarget to (NSString *)
18881        
18882        Added the following two methods:
18883            - (WKDataSource *)parent;
18884            - (NSArry *)children;
18885            - (BOOL)isMainDocument;
18886  
18887        Added the following methods:
18888        
18889            - (NSArray *)frameNames;
18890            - (WKWebDataSource) findDataSourceForFrameNamed: (NSString *)name;
18891            - (BOOL)frameExists: (NSString *)name;
18892            - (void)openURL: (NSURL *)url inFrameNamed: (NSString *)frameName;
18893            - (void)openURL: (NSURL *)url inIFrame: (id)iFrameIdentifier;
18894
18895	* WebView.subproj/WKWebDataSource.h:
18896
188972001-12-12  Richard Williamson  <rjw@apple.com>
18898
18899        Changed WKConcreteWebController to WKDefaultWebController.
18900        
18901        Changed WKLocationChangedHandler naming, replace "loadingXXX" with
18902        "locationChangeXXX".
18903
18904        Changed loadingStopped in WKLocationChangedHandler to locationChangeStopped:(WKError *).
18905
18906        Changed loadingCancelled in WKLocationChangedHandler to locationChangeCancelled:(WKError *).
18907        
18908        Changed loadedPageTitle in WKLocationChangedHandler to receivedPageTitle:.
18909
18910        Added inputURL:(NSURL *) resolvedTo: (NSURL *) to WKLocationChangedHandler.
18911        
18912        Added the following two methods to WKLocationChangedHandler:
18913        
18914            - (void)inputURL: (NSURL *)inputURL resolvedTo: (NSURL *)resolvedURL;
18915            - (void)serverRedirectTo: (NSURL *)url;
18916       
18917        Put locationWillChangeTo: back on WKLocationChangedHandler.
18918        
18919        Changed XXXforLocation in WKLoadHandler to XXXforResource.
18920        
18921        Changed timeoutForLocation: in WKLoadHandler to receivedError:forResource:partialProgress:
18922        
18923        Added the following two methods to WKDefaultWebController:
18924        
18925            - setDirectsAllLinksToSystemBrowser: (BOOL)flag
18926            - (BOOL)directsAllLinksToSystemBrowser;
18927            
18928        Removed WKError.  This will be described in WKError.h.
18929
18930        * WebView.subproj/WKWebController.h:
18931
189322001-12-12  Richard Williamson  <rjw@apple.com>
18933    
18934        After group discussion we decided to classify API as :
18935        Tier 1:  Needed by our browser (or Sherlock).
18936        Tier 2:  Nedded by Apple internal clients (Mail, Help, PB, other TBD).
18937        Tier 3:  Third party software vendors.
18938    
18939        Added finalURL and isRedirected.
18940	
18941        * WebView.subproj/WKWebDataSource.h:
18942
189432001-12-11  Chris Blumenberg  <cblu@apple.com>
18944
18945	* ChangeLog:
18946	* WebView.subproj/NSWebPageDataSource.mm: (+[NSWebPageDataSource initialize]):
18947
189482001-12-11  Chris Blumenberg  <cblu@apple.com>
18949
18950	* WebView.subproj/NSWebPageDataSource.mm: (+[NSWebPageDataSource initialize]):
18951
189522001-12-10  John Sullivan  <sullivan@apple.com>
18953
18954	* WebView.subproj/WKWebController.h:
18955	* WebView.subproj/WKWebDataSource.h:
18956	* WebView.subproj/WKWebView.h:
18957
18958	Fixed some typos and misspellings.
18959
189602001-12-07  Richard Williamson  <rjw@apple.com>
18961
18962	* WebView.subproj/NSWebPageDataSource.h:
18963	* WebView.subproj/NSWebPageDataSourcePrivate.h:
18964	* WebView.subproj/NSWebPageView.h:
18965        
18966        First pass at API for WKWebView and WKWebDataSource.  Note
18967        that we have to change names from NS to WK!  The new API is conditionally
18968        excluded #ifdef READY_FOR_PRIMETIME
18969        
18970        Added these files:
18971        
18972	* WebView.subproj/WKWebDataSource.h:
18973	* WebView.subproj/WKWebView.h:
18974	* WebView.subproj/WKWebController.h:
18975
189762001-12-06  Maciej Stachowiak  <mjs@apple.com>
18977
18978	* Cache.subproj/NSURICacheData.m: (+[NSURICacheData
18979	dataWithURL:status:error:data:size:notificationString:userData:]),
18980	(-[NSURICacheData
18981	initWithURL:status:error:data:size:notificationString:userData:]):
18982	Remove redundant semicolons between the end of the prototype and
18983	the open brace, because they confuse the changelog script.
18984
18985