Versioning
[WebKit-https.git] / WebKit / ChangeLog
1 === Safari-521.15 ===
2
3 2006-07-07  Levi Weintraub  <lweintraub@apple.com>
4
5         Reviewed by justin
6
7         Finished moving deletion selection expansion across the bridge... say that 3 times fast.
8
9         * WebView/WebHTMLView.m:  Pass granularity to WebCore to handle expansion
10         (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:granularity:]):
11         (-[WebHTMLView _deleteSelection]):
12         (-[NSArray _deleteWithDirection:granularity:killRing:isTypingAction:]):
13         (-[NSArray deleteToMark:]):
14
15 2006-07-07  Brady Eidson  <beidson@apple.com>
16
17         Reviewed by John
18
19         Changed an ASSERT to a LOG_ERROR for an error that could be handled gracefully, but
20         whose assertion was reproducibly causing a build bot failure
21
22         * Misc/WebIconDatabase.m:
23         (-[WebIconDatabase _releaseIconForIconURLString:]):
24
25 2006-07-06  Levi Weintraub  <lweintraub@apple.com>
26
27         Reviewed by justin
28
29         Improved table editing
30
31         * WebCoreSupport/WebFrameBridge.m: Added method to allow WebCore to trigger
32         deletion editing delegate
33         (-[WebFrameBridge shouldDeleteSelectedDOMRange:]):
34         * WebView/WebHTMLView.m: Moved code that expanded a selection when the delete
35         key is pressed over to WebCore so we can be more intelligent about how to handle it
36         (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:]):
37         (-[NSArray _deleteWithDirection:granularity:killRing:isTypingAction:]):
38
39 2006-07-07  John Sullivan  <sullivan@apple.com>
40
41         Reviewed by Tim Hatcher
42         
43         - fixed <rdar://problem/4606857> WebKit: WebPreferencesChangedNotification not exported
44
45         * WebKit.exp:
46         added surprisingly missing _WebPreferencesChangedNotification, defined in
47         WebPreferences.h
48
49 2006-07-06  Brady Eidson  <beidson@apple.com>
50
51         Reviewed by John.
52
53         Small fix to my previous small fix that only lets the ASSERT off the hook if the DB
54         is closing
55
56         * Misc/WebIconDatabase.m:
57         (-[WebIconDatabase _releaseIconForIconURLString:]):
58
59 2006-07-05  Brady Eidson  <beidson@apple.com>
60
61         Reviewed by Maciej
62
63         Small fix that prevents an assertion from triggering if the DB is being cleaned up 
64         (ie, the app being shut down)
65
66         * Misc/WebIconDatabase.h:
67         * Misc/WebIconDatabase.m:
68         (-[NSMutableDictionary init]):
69         (-[WebIconDatabase _applicationWillTerminate:]):
70         (-[WebIconDatabase _releaseIconForIconURLString:]):
71
72 2006-07-05  Adele Peterson  <adele@apple.com>
73
74         Reviewed by Maciej and Hyatt.
75
76         WebKit part of initial popup menu implementation.
77
78         * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
79         Initialize WKPopupMenu.
80
81 2006-07-05  Anders Carlsson  <acarlsson@apple.com>
82
83         Reviewed by Maciej.
84
85         http://bugzilla.opendarwin.org/show_bug.cgi?id=3581
86         iFrames set to display:none are Missing from frames array
87         
88         * WebCoreSupport/WebFrameBridge.m:
89         (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]):
90         (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]):
91         Modify to pass the owner element instead of the owner renderer.
92         
93         * WebView/WebHTMLView.m:
94         (-[WebHTMLView _topHTMLView]):
95         Remove assertion, it's not valid anymore.
96
97 2006-07-05  Timothy Hatcher  <timothy@apple.com>
98
99         Reviewed by Harrison.
100
101         <rdar://problem/4608423> HIViewAdapter used but not defined
102         Adds a new export file to fix the build.
103
104         * WebKit.LP64.exp: Added.
105         * WebKit.xcodeproj/project.pbxproj:
106
107 2006-07-04  Timothy Hatcher  <timothy@apple.com>
108
109         Reviewed by Maciej.
110
111         Bug 9731: [Drosera] crash when trying to access the scope chain
112         http://bugzilla.opendarwin.org/show_bug.cgi?id=9731
113
114         Because of <rdar://problem/4608404> the WebScriptObject, _globalObj, that
115         WebCoreScriptDebugger holds is unprotected each time the page changes.
116         This causes Drosera to crash Safari when trying to access the scope chain.
117         We simply need to detach and re-attach the debugger when the window script
118         object is cleared until 4608404 is fixed. This change also attaches the
119         debugger before we call the windowScriptObjectAvailable: delegate method,
120         so the debugger is ready before anyone might use the window object.
121
122         * WebCoreSupport/WebFrameBridge.m:
123         (-[WebFrameBridge windowObjectCleared]):
124
125 2006-07-04  Timothy Hatcher  <timothy@apple.com>
126
127         Reviewed by Darin.
128
129         Bug 9732: [Drosera] calling removeListener to many times will cause
130                   WebKit's listener count to underflow/wraparound
131         http://bugzilla.opendarwin.org/show_bug.cgi?id=9732
132
133         Adds a check to make sure the listener was in our listeners set before
134         decrementing the global listener count. Also checks for nil in addListner
135         to prevent a possible exception when adding the object to the set.
136
137         * DefaultDelegates/WebScriptDebugServer.m:
138         (-[WebScriptDebugServer addListener:]):
139         (-[WebScriptDebugServer removeListener:]):
140
141 2006-07-04  Alexey Proskuryakov  <ap@nypop.com>
142
143         Reviewed by Maciej.
144
145         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8210
146         Conditional XMLHttpRequest gets should pass 304 responses unchanged
147
148         Test: http/tests/xmlhttprequest/cache-override.html
149
150         * Misc/WebNSURLRequestExtras.h: Added _web_isConditionalRequest
151         * Misc/WebNSURLRequestExtras.m:
152         (-[NSURLRequest _web_isConditionalRequest]):
153         * WebCoreSupport/WebFrameBridge.m:
154         (-[WebFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
155         Bypass the cache for conditional requests.
156         * WebCoreSupport/WebSubresourceLoader.m:
157         (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]): Ditto.
158
159 2006-07-01  David Kilzer  <ddkilzer@kilzer.net>
160
161         Reviewed by NOBODY (fixed Tim's build fix).
162
163         * WebView/WebView.m: Added back missing '/' at the beginning of the file.
164
165 2006-07-01  Tim Omernick  <timo@apple.com>
166
167         Reviewed by NOBODY (build fix)
168
169         * WebView/WebView.m:
170         (-[WebView _isMIMETypeRegisteredAsPlugin:]):
171         Changed nil to NO (typo).
172
173 === Safari-521.14 ===
174
175 2006-06-30  Timothy Hatcher  <timothy@apple.com>
176
177         Reviewed by Darin.
178
179         Only enable shouldCloseWithWindow when ObjC GC is enabled.
180         This maintains backwards compatibility with applications
181         that expect a WebView to be usable after the window closes.
182
183         * WebView/WebView.m:
184         (-[WebViewPrivate init]):
185
186 2006-06-30  Timothy Hatcher  <timothy@apple.com>
187
188         Reviewed by Anders.
189
190         Call _close in dealloc to ensure we cleanup for backwards
191         compatibility. This will safeguard and cleanup even if the
192         application doesn't use the new close API yet, like Mail.
193
194         * WebView/WebView.m:
195         (-[WebView dealloc]):
196
197 2006-06-29  Timothy Hatcher  <timothy@apple.com>
198
199         Reviewed by Darin.
200
201         <rdar://problem/4484405> WebKit leaks, improper tear-down
202         <rdar://problem/3694059> -[WebBackForwardList finalize] is incorrect; design change needed
203         <rdar://problem/3694103> -[WebFrame finalize] is incorrect; design change needed
204         <rdar://problem/3694104> -[WebHTMLView finalize] is incorrect; design change needed
205
206         Adds a close method to WebView, this needs to be called when the 
207         WebView is no longer needed. To make this easier for the common cases
208         there is now an "auto close" on WebView that listens to the view's
209         parent window. If the parent window closes and the WebView has no
210         hostWindow then the WebView is automatically closed if autoClose is YES.
211         To manage WebView closing yourself call setAutoClose: and pass NO.
212
213         When a WebView closes it will tear-down and not be usable anymore.
214         Close will will called on various other internal objects as a part
215         of this, to ensure proper tear-down in GC without relying on finalize.
216
217         * History/WebBackForwardList.m:
218         (-[WebBackForwardList dealloc]):
219         (-[WebBackForwardList finalize]):
220         (-[WebBackForwardList _close]):
221         * History/WebHistoryItem.m:
222         (+[WebHistoryItem _closeObjectsInPendingPageCaches]):
223         (+[WebHistoryItem _releaseAllPendingPageCaches]):
224         * History/WebHistoryItemPrivate.h:
225         * WebCoreSupport/WebFrameBridge.m:
226         (-[WebFrameBridge close]):
227         (-[WebFrameBridge saveDocumentToPageCache:]):
228         (-[WebFrameBridge canGoBackOrForward:]):
229         * WebView/WebFrame.m:
230         (-[WebFrame _detachFromParent]):
231         (-[WebFrame dealloc]):
232         (-[WebFrame finalize]):
233         * WebView/WebFrameView.m:
234         (-[WebFrameView _setWebFrame:]):
235         (-[WebFrameView finalize]):
236         * WebView/WebHTMLView.m:
237         (-[WebHTMLView close]):
238         (-[NSArray dealloc]):
239         (-[NSArray finalize]):
240         * WebView/WebHTMLViewInternal.h:
241         * WebView/WebHTMLViewPrivate.h:
242         * WebView/WebScriptDebugDelegate.m:
243         (-[WebScriptCallFrame _initWithFrame:initWithWebFrame:]):
244         (-[WebScriptCallFrame parsedSource:fromURL:sourceId:startLine:errorLine:errorMessage:]):
245         (-[WebScriptCallFrame enteredFrame:sourceId:line:]):
246         (-[WebScriptCallFrame hitStatement:sourceId:line:]):
247         (-[WebScriptCallFrame leavingFrame:sourceId:line:]):
248         * WebView/WebScriptDebugDelegatePrivate.h:
249         * WebView/WebView.m:
250         (-[WebViewPrivate init]):
251         (-[WebView _close]):
252         (-[WebView dealloc]):
253         (-[WebView finalize]):
254         (-[WebView viewWillMoveToWindow:]):
255         (-[WebView _windowWillClose:]):
256         (-[WebView setPreferencesIdentifier:]):
257         (-[WebView mainFrame]):
258         (-[WebView setHostWindow:]):
259         (-[WebView searchFor:direction:caseSensitive:wrap:]):
260         (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]):
261         (-[WebView close]):
262         (-[WebView setAutoClose:]):
263         (-[WebView autoClose]):
264         (-[WebView _frameViewAtWindowPoint:]):
265         * WebView/WebViewPrivate.h:
266
267 2006-06-29  Kevin Decker  <kdecker@apple.com>
268
269         Reviewed by mjs and timo.
270         
271         Fixed: <rdar://problem/4609119> handleAuthenticationFromResource was removed; needed by the Dashboard
272
273         * WebView/WebViewPrivate.h: Added handleAuthenticationFromResource back into the header. Needed by the
274         Dashboard, but was removed in r.14028 on 2006-04-23. 
275
276 2006-06-29  Tim Omernick  <timo@apple.com>
277
278         Reviewed by Kevin Decker.
279
280         <rdar://problem/4608487> REGRESSION: reproducible crash in +[WebCoreFrameBridge supportedImageMIMETypes]
281
282         * Plugins/WebPluginDatabase.m:
283         (+[WebPluginDatabase setAdditionalWebPlugInPaths:]):
284         One might be tempted to add additionalWebPlugInPaths to the global WebPluginDatabase here.
285         For backward compatibility with earlier versions of the +setAdditionalWebPlugInPaths: SPI,
286         we need to save a copy of the additional paths and not cause a refresh of the plugin DB
287         at this time.
288         (-[WebPluginDatabase _plugInPaths]):
289         Include additionalWebPlugInPaths if this is the global DB.
290         (-[WebPluginDatabase refresh]):
291         Call -_plugInPaths to get the modified array of paths.  This is similar to what the old code
292         (before we had per-WebView plugin search paths).
293
294 2006-06-29  Tim Omernick  <timo@apple.com>
295
296         Reviewed by John Sullivan.
297
298         WebHistoryItem now supports getting and setting arbitrary properties via _transientPropertyForKey: and
299         -_setTransientProperty:forKey:.
300         For now, these properties do not persist with the rest of the history data.  They are intended to hold transient
301         per-history-item state, which is something that was until now difficult for a WebKit client app to do.
302         
303         * History/WebHistoryItemPrivate.h:
304         * History/WebHistoryItem.m:
305         (-[WebHistoryItemPrivate dealloc]):
306         (-[WebHistoryItem _transientPropertyForKey:]):
307         (-[WebHistoryItem _setTransientProperty:forKey:]):
308
309 2006-06-29  Timothy Hatcher  <timothy@apple.com>
310
311         Reviewed by Harrison.
312
313         Smart insert and delete, continuous spell checking and autoscroll
314         can now be used for any WebView, not just editable ones. All of
315         these make sense for documents that might contain content editable 
316         areas or our new text fields. Autoscroll is usefull for dragging
317         for file input controls also.
318
319         Added a SPI to toggle WebViews tab key behavior, tabKeyCyclesThroughElements.
320         WebHTMLView's _interceptEditingKeyEvent now uses WebView's
321         tabKeyCyclesThroughElements state to determine whether or not
322         to process tab key events. The idea here is that tabKeyCyclesThroughElements
323         will be YES when this WebView is being used in a browser, and we
324         desire the behavior where tab moves to the next element in tab order.
325         If tabKeyCyclesThroughElements is NO, it is likely that the WebView
326         is being embedded as the whole view, as in Mail, and tabs should input
327         tabs as expected in a text editor. Using Option-Tab always cycles
328         through elements.
329
330         * WebView/WebHTMLRepresentation.m:
331         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
332         * WebView/WebHTMLView.m:
333         (-[NSArray _interceptEditingKeyEvent:]):
334         * WebView/WebView.m:
335         (-[WebViewPrivate init]):
336         (-[WebView _autoscrollForDraggingInfo:timeDelta:]):
337         (-[WebView _shouldAutoscrollForDraggingInfo:]):
338         (-[WebView validateUserInterfaceItem:]):
339         (-[WebView toggleSmartInsertDelete:]):
340         (-[WebView toggleContinuousSpellChecking:]):
341         (-[WebView setTabKeyCyclesThroughElements:]):
342         (-[WebView tabKeyCyclesThroughElements]):
343         * WebView/WebViewPrivate.h:
344
345 2006-06-29  Anders Carlsson  <acarlsson@apple.com>
346
347         Reviewed by Tim O.
348
349         * WebKit.xcodeproj/project.pbxproj:
350         Add DOMXPath.h header.
351
352 2006-06-28  David Hyatt  <hyatt@apple.com>
353
354         Fix custom highlighting so that you can paint the entire line (and go
355         outside the bounds of the line).
356
357         Reviewed by harrison
358
359         * WebCoreSupport/WebFrameBridge.m:
360         (-[WebFrameBridge customHighlightRect:forLine:]):
361         (-[WebFrameBridge paintCustomHighlight:forBox:onLine:behindText:entireLine:]):
362         * WebKit.xcodeproj/project.pbxproj:
363         * WebView/WebHTMLViewPrivate.h:
364
365 2006-06-28  Maciej Stachowiak  <mjs@apple.com>
366
367         Reviewed by Anders.
368         
369         - fix Frame leak on layout tests
370
371         * WebCoreSupport/WebPageBridge.m:
372         (-[WebPageBridge outerView]): Return WebFrameView for main frame instead
373         of WebView to avoid reference cycle between WebView and Page.
374
375 2006-06-28  Timothy Hatcher  <timothy@apple.com>
376
377         Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
378
379         * WebKit.xcodeproj/project.pbxproj:
380
381 2006-06-28  Levi Weintraub  <lweintraub@apple.com>
382
383         Reviewed by justin
384
385         http://bugzilla.opendarwin.org/show_bug.cgi?id=7568
386         Bug 7568: Implement Indent/Outdent
387         Added undo action strings and enum values
388
389         * English.lproj/Localizable.strings:
390         * WebCoreSupport/WebFrameBridge.m: 
391         (-[WebFrameBridge nameForUndoAction:]):
392
393 2006-06-27  Brady Eidson  <beidson@apple.com>
394
395         Reviewed by Maciej
396
397         Hookup the new semi-functional SQLite icon database.
398         For now, it is living side-by-side with the old DB so one can compare the
399         two for debugging purposes.  Also, it is disabled (in WebKit) by default unless you
400         compile with ICONDEBUG #defined.
401         Note:  To repeat that, if you want to try the new DB, #define ICONDEBUG (WebKitPrefix.h is a good place to do it)
402
403         * Misc/WebIconDatabase.m:
404         (-[NSMutableDictionary iconForURL:withSize:cache:]):
405         (-[NSMutableDictionary iconURLForURL:]):
406         (-[NSMutableDictionary retainIconForURL:]):
407         (-[NSMutableDictionary releaseIconForURL:]):
408         (-[WebIconDatabase _setHaveNoIconForIconURL:]):
409         (-[WebIconDatabase _setIconURL:forURL:]):
410         (-[WebIconDatabase _hasIconForIconURL:]):
411         (-[WebIconDatabase _resetCachedWebPreferences:]):
412         * Misc/WebIconLoader.m:
413         (-[WebIconLoader didFinishLoading]):
414         * WebKit.xcodeproj/project.pbxproj:
415
416 2006-06-26  David Hyatt  <hyatt@apple.com>
417
418         Fix for 9538, support syntax highlighting for HTML source.
419
420         Reviewed by darin
421
422         * WebKit.xcodeproj/project.pbxproj:
423         * WebView/WebView.m:
424         (-[WebView _setInViewSourceMode:]):
425         (-[WebView _inViewSourceMode]):
426         * WebView/WebViewPrivate.h:
427
428 2006-06-25  Timothy Hatcher  <timothy@apple.com>
429
430         Reviewed by Darin.
431
432         Bug 9574: Drosera should show inline scripts within the original HTML
433         http://bugzilla.opendarwin.org/show_bug.cgi?id=9574
434
435         * Adds a new version of the didParseSource delegate callback with base line number.
436         * Adds a new delegate callback for when a script fails to parse.
437         * These new callbacks use NSURLs for the url parameter.
438         * Adds a new script listener callback to notify when the main resource loads.
439         * Adds a WebScriptErrorDomian and other keys for use with NSError.
440
441         * DefaultDelegates/WebDefaultScriptDebugDelegate.m:
442         (-[WebDefaultScriptDebugDelegate webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]):
443         (-[WebDefaultScriptDebugDelegate webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]):
444         * DefaultDelegates/WebScriptDebugServer.h:
445         * DefaultDelegates/WebScriptDebugServer.m:
446         (-[WebScriptDebugServer webView:didLoadMainResourceForDataSource:]):
447         (-[WebScriptDebugServer webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]):
448         (-[WebScriptDebugServer webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]):
449         * DefaultDelegates/WebScriptDebugServerPrivate.h:
450         * WebKit.exp:
451         * WebView/WebDataSource.m:
452         (-[WebDataSource _setPrimaryLoadComplete:]):
453         * WebView/WebScriptDebugDelegate.h:
454         * WebView/WebScriptDebugDelegate.m:
455         (-[WebScriptCallFrame parsedSource:fromURL:sourceId:startLine:errorLine:errorMessage:]):
456
457 2006-06-24  David Kilzer  <ddkilzer@kilzer.net>
458
459         Reviewed by Timothy.
460
461         * Info.plist: Fixed copyright to include 2003-2006.
462
463 2006-06-24  Alexey Proskuryakov  <ap@nypop.com>
464
465         Reviewed by Darin.
466
467         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9418
468         WebKit will not build when Space exists in path
469
470         * WebKit.xcodeproj/project.pbxproj: Enclose search paths in quotes.
471
472 2006-06-23  Tim Omernick  <timo@apple.com>
473
474         Reviewed by John Sullivan.
475
476         * Plugins/WebBaseNetscapePluginView.m:
477         (-[WebBaseNetscapePluginView sendEvent:]):
478         Fixed a bug I found in the CoreGraphics drawing model that was preventing certain types of
479         events from being dispatched to the plugin, unless the plugin was being updated.  The check
480         for portState was only required to call -setWindowIfNecessary, not required for the entire
481         event dispatch.
482         Also, don't paint the green debug rect unless this is a QuickDraw plugin.  Otherwise the
483         current QD port is not set, and the green rect fills the entire screen.  Pretty awesome
484         looking, but not intended behavior.
485         (-[WebBaseNetscapePluginView setWindowIfNecessary]):
486         Improved the logging here to include the NPWindow's width and height.
487
488 2006-06-23  Timothy Hatcher  <timothy@apple.com>
489
490         Reviewed by Tim O.
491
492         Adds back SPI that Mail is still depending on.
493
494         * WebView/WebDataSource.m:
495         (-[WebDataSource _addSubframeArchives:]):
496         * WebView/WebDataSourcePrivate.h:
497
498 === WebKit-521.13 ===
499
500 2006-06-23  Timothy Hatcher  <timothy@apple.com>
501
502         Reviewed by Geoff.
503
504         script debugger should only attach to JavaScriptCore when there are listeners
505         http://bugzilla.opendarwin.org/show_bug.cgi?id=9552
506
507         Attaches the debugger to all WebFrames when the first listener
508         is added. Detaches when the last listener is removed.
509         Also detach when the script debug delegate is set to nil.
510
511         * DefaultDelegates/WebScriptDebugServer.m:
512         (+[WebScriptDebugServer listenerCount]):
513         (-[WebScriptDebugServer dealloc]):
514         (-[WebScriptDebugServer attachScriptDebuggerToAllWebViews]):
515         (-[WebScriptDebugServer detachScriptDebuggerFromAllWebViews]):
516         (-[WebScriptDebugServer listenerConnectionDidDie:]):
517         (-[WebScriptDebugServer addListener:]):
518         (-[WebScriptDebugServer removeListener:]):
519         * DefaultDelegates/WebScriptDebugServerPrivate.h:
520         * WebCoreSupport/WebFrameBridge.m:
521         (-[WebFrameBridge windowObjectCleared]):
522         * WebView/WebFrame.m:
523         (-[WebFrame _attachScriptDebugger]):
524         (-[WebFrame _detachScriptDebugger]):
525         * WebView/WebFramePrivate.h:
526         * WebView/WebScriptDebugDelegate.m:
527         (-[WebScriptCallFrame parsedSource:fromURL:sourceId:]):
528         (-[WebScriptCallFrame enteredFrame:sourceId:line:]):
529         (-[WebScriptCallFrame hitStatement:sourceId:line:]):
530         (-[WebScriptCallFrame leavingFrame:sourceId:line:]):
531         * WebView/WebView.m:
532         (-[WebView _attachScriptDebuggerToAllFrames]):
533         (-[WebView _detachScriptDebuggerFromAllFrames]):
534         (-[WebView setScriptDebugDelegate:]):
535         * WebView/WebViewPrivate.h:
536
537 2006-06-22  John Sullivan  <sullivan@apple.com>
538
539         Reviewed by Tim Omernick
540         
541         - added support for UIDelegate to be notified of scrolling in any WebHTMLView
542         - cleaned up recently-added UIDelegate code
543
544         * WebView/WebUIDelegatePrivate.h:
545         declared webView:didScrollDocumentInFrameView: method
546
547         * DefaultDelegates/WebDefaultUIDelegate.m:
548         (-[NSApplication webView:didDrawRect:]):
549         provide default (empty) implementation of this recently-added method, so the
550         DelegateForwarder mechanism will work for it
551         (-[NSApplication webView:didScrollDocumentInFrameView:]):
552         same thing for the new method
553         
554         * WebView/WebHTMLView.m:
555         (-[WebHTMLView _frameOrBoundsChanged]):
556         use _UIDelegateForwarder mechanism to notify delegate that scrolling occurred
557         (-[NSArray drawSingleRect:]):
558         use _UIDelegateForwarder mechanism instead of checking respondsToSelector stuff
559         here (that's packaged up nicely by the forwarder mechanism)
560         
561 2006-06-22  Tim Omernick  <timo@apple.com>
562
563         Reviewed by NOBODY (build fix)
564
565         * WebView/WebFrameLoader.m:
566         Import WebMainResourceLoader instead of using @class so that we can call WebMainResourceLoader
567         methods.
568         
569 2006-06-22  Tim Omernick  <timo@apple.com>
570
571         Reviewed by NOBODY (build fix)
572
573         * WebView/WebFrameLoader.m:
574         Import JavaScriptCore/Assertions.h instead of WebKit/WebAssertions.h (which no longer exists)
575
576 2006-06-22  Maciej Stachowiak  <mjs@apple.com>
577
578         Reviewed by Adele.
579         
580         - start moving loading logic to new WebFrameLoader class; move management of WebLoaders there
581
582         * Misc/WebIconLoader.h:
583         * Misc/WebIconLoader.m:
584         (-[WebIconLoader didFinishLoading]):
585         * WebKit.xcodeproj/project.pbxproj:
586         * WebView/WebDataSource.m:
587         (-[WebDataSourcePrivate dealloc]):
588         (-[WebDataSource _updateLoading]):
589         (-[WebDataSource _loadIcon]):
590         (-[WebDataSource _setPrimaryLoadComplete:]):
591         (-[WebDataSource _stopLoading]):
592         (-[WebDataSource _startLoading]):
593         (-[WebDataSource _addSubresourceLoader:]):
594         (-[WebDataSource _removeSubresourceLoader:]):
595         (-[WebDataSource _addPlugInStreamLoader:]):
596         (-[WebDataSource _removePlugInStreamLoader:]):
597         (-[WebDataSource _iconLoaderReceivedPageIcon:]):
598         (-[WebDataSource _defersCallbacksChanged]):
599         (-[WebDataSource _stopLoadingWithError:]):
600         (-[WebDataSource _setupForReplaceByMIMEType:]):
601         (-[WebDataSource initWithRequest:]):
602         (-[WebDataSource dealloc]):
603         (-[WebDataSource finalize]):
604         (-[WebDataSource data]):
605         (-[WebDataSource isLoading]):
606         * WebView/WebFrameLoader.h: Added.
607         * WebView/WebFrameLoader.m: Added.
608         (-[WebFrameLoader initWithDataSource:]):
609         (-[WebFrameLoader dealloc]):
610         (-[WebFrameLoader hasIconLoader]):
611         (-[WebFrameLoader loadIconWithRequest:]):
612         (-[WebFrameLoader stopLoadingIcon]):
613         (-[WebFrameLoader addPlugInStreamLoader:]):
614         (-[WebFrameLoader removePlugInStreamLoader:]):
615         (-[WebFrameLoader setDefersCallbacks:]):
616         (-[WebFrameLoader stopLoadingPlugIns]):
617         (-[WebFrameLoader isLoadingMainResource]):
618         (-[WebFrameLoader isLoadingSubresources]):
619         (-[WebFrameLoader isLoading]):
620         (-[WebFrameLoader stopLoadingSubresources]):
621         (-[WebFrameLoader addSubresourceLoader:]):
622         (-[WebFrameLoader removeSubresourceLoader:]):
623         (-[WebFrameLoader mainResourceData]):
624         (-[WebFrameLoader releaseMainResourceLoader]):
625         (-[WebFrameLoader cancelMainResourceLoad]):
626         (-[WebFrameLoader startLoadingMainResourceWithRequest:identifier:]):
627         (-[WebFrameLoader stopLoadingWithError:]):
628
629 2006-06-21  Brady Eidson  <beidson@apple.com>
630
631         Reviewed by Maciej
632
633         The WebCoreIconDatabaseBridge was getting messages sent to it after it had been closed, resulting in a crash
634         on an ASSERT().  After closing the databaseBridge, we simply set it to nil so this can't happen.
635         anymore.
636
637         * Misc/WebIconDatabase.m:
638         (-[WebIconDatabase _applicationWillTerminate:]):
639
640 2006-06-21  Tim Omernick  <timo@apple.com>
641
642         Reviewed by Geoff Garen.
643
644         <rdar://problem/4564131> WebPluginDatabase setAdditionalWebPlugInPaths needs to be per WebView
645
646         Added some WebView SPI so that individual WebViews may have different plugin search paths.  There are some 
647         limitations with the approach taken here:
648
649         - JavaScript may only access the global plugin DB.
650         - When this SPI is in use, certain WebView methods may not give accurate results, such as +canShowMIMEType:.
651         - This only works for plugins referenced using the <object> or <embed> tags; plugins that reside in non-standard
652         file system locations may not be loaded directly into frames.
653         
654         None of these issues are important to the client that needs this SPI.  Rather than re-architect our entire
655         plugin database, I think it is better to simply accept these limitations for now.
656
657         * Plugins/WebPluginDatabase.h:
658         Added "plugInPaths" ivar, so different plugin databases can have different search paths.
659         * Plugins/WebPluginDatabase.m:
660         (+[WebPluginDatabase installedPlugins]):
661         Give the global plugin database the default plugin search paths.
662         (+[WebPluginDatabase setAdditionalWebPlugInPaths:]):
663         Removed static global; this method now sets the plugin paths on the global plugin database.
664         (-[WebPluginDatabase setPlugInPaths:]):
665         Setter method for plugin paths.
666         (-[WebPluginDatabase close]):
667         New method; called when the plugin database is no longer needed (when its WebView is being destroyed).
668         (-[WebPluginDatabase init]):
669         Don't refresh in -init, so that callers can set the DB's plugin path array before it refreshes.
670         (-[WebPluginDatabase dealloc]):
671         Moved here from near the bottom of the file.  Release new ivar.
672         (-[WebPluginDatabase refresh]):
673         Use the plugInPaths ivar instead of calling pluginLocations().
674         Notify plugin packages when they are added to and removed from a plugin database.  A plugin package will
675         unload itself when it is removed from all of its plugin databases.
676         The only really tricky thing here is that the global MIME <-> view class registrations are only modified
677         by the shared plugin DB.
678         (+[WebPluginDatabase _defaultPlugInPaths]):
679         Refactored from the old pluginLocations() function; returns the default set of plugin search paths.
680
681         * Plugins/WebBasePluginPackage.h:
682         * Plugins/WebBasePluginPackage.m:
683         (-[WebBasePluginPackage dealloc]):
684         Assert that this package has been removed from all of its containing plugin databases.
685         (-[WebBasePluginPackage finalize]):
686         ditto
687         (-[WebBasePluginPackage wasAddedToPluginDatabase:]):
688         Add plugin database to set.
689         (-[WebBasePluginPackage wasRemovedFromPluginDatabase:]):
690         Remove plugin database from set.  If it was the last DB, then unload the plugin package.
691
692         * WebView/WebViewInternal.h:
693         Added instance methods to find the view class or plugin package, given a MIME type or file extension.
694         * WebView/WebViewPrivate.h:
695         Added SPI to set plugin search paths per WebView.
696         * WebView/WebView.m:
697         (-[WebView _viewClass:andRepresentationClass:forMIMEType:]):
698         New method; tries the global MIME <-> view map first; failing that, it checks the WebView's plugin DB.
699         (-[WebView _close]):
700         Close the plugin DB.
701         (-[WebView _setAdditionalWebPlugInPaths:]):
702         Create the plugin DB if necessary, and set its plugin paths.
703         (-[WebView _pluginForMIMEType:]):
704         Checks global plugin DB, falls back on WebView DB.
705         (-[WebView _pluginForExtension:]):
706         ditto
707         (-[WebView _isMIMETypeRegisteredAsPlugin:]):
708         ditto
709
710         * WebCoreSupport/WebFrameBridge.m:
711         (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
712         Use new WebView instance methods to look for plugins.
713         (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]):
714         ditto
715         (-[WebFrameBridge determineObjectFromMIMEType:URL:]):
716         ditto
717
718 2006-06-20  Brady Eidson  <beidson@apple.com>
719
720         Reviewed by Maciej
721
722         Added calls through to the WebCoreIconDatabaseBridge for all the major WebIconDatabase API.  For now these calls
723         are wrapped with #ifdef's and are for debugging only.
724
725         * Misc/WebIconDatabase.h:
726         * Misc/WebIconDatabase.m:
727         (-[NSMutableDictionary _scaleIcon:toSize:]):
728         (-[NSMutableDictionary init]):
729         (-[NSMutableDictionary iconForURL:withSize:cache:]):
730         (-[NSMutableDictionary iconURLForURL:]):
731         (-[NSMutableDictionary retainIconForURL:]):
732         (-[NSMutableDictionary releaseIconForURL:]):
733         (-[WebIconDatabase _setHaveNoIconForIconURL:]):
734         (-[WebIconDatabase _setIconURL:forURL:]):
735         (-[WebIconDatabase _hasIconForIconURL:]):
736         * Misc/WebIconLoader.m:
737         (-[WebIconLoader didFinishLoading]):
738
739         * Misc/WebKitLogging.h:  Added a logging channel for WebIconDatabase debugging
740         * Misc/WebKitLogging.m:
741         (WebKitInitializeLoggingChannelsIfNecessary):
742
743 2006-06-20  Adele Peterson  <adele@apple.com>
744
745         Reviewed by Tim Hatcher.
746
747         * WebView/WebMainResourceLoader.m: Added missing header to fix build on Leopard.
748
749 2006-06-20  Timothy Hatcher  <timothy@apple.com>
750
751         Reviewed by Darin.
752
753         Removes the @try/@catch from the callbacks to improve performance,
754         simply check if the proxy object's connection is still valid first.
755         Listener objects are now required to be NSDistantObjects.
756
757         Adds pause, resume and step support. The debugger process use to handle this,
758         but it caused problems when there were multiple listeners.
759
760         Sends the bundle identifier in the notification userInfo dictionary along with
761         process name and process ID.
762
763         * DefaultDelegates/WebScriptDebugServer.h:
764         * DefaultDelegates/WebScriptDebugServer.m:
765         (-[WebScriptDebugServer serverQuery:]):
766         (-[WebScriptDebugServer addListener:]):
767         (-[WebScriptDebugServer removeListener:]):
768         (-[WebScriptDebugServer step]):
769         (-[WebScriptDebugServer pause]):
770         (-[WebScriptDebugServer resume]):
771         (-[WebScriptDebugServer isPaused]):
772         (-[WebScriptDebugServer suspendProcessIfPaused]):
773         (-[WebScriptDebugServer webView:didParseSource:fromURL:sourceId:forWebFrame:]):
774         (-[WebScriptDebugServer webView:didEnterCallFrame:sourceId:line:forWebFrame:]):
775         (-[WebScriptDebugServer webView:willExecuteStatement:sourceId:line:forWebFrame:]):
776         (-[WebScriptDebugServer webView:willLeaveCallFrame:sourceId:line:forWebFrame:]):
777         * DefaultDelegates/WebScriptDebugServerPrivate.h:
778         * WebKit.exp:
779
780 2006-06-19  Alexey Proskuryakov  <ap@nypop.com>
781
782         Reviewed by Darin.
783
784         - http://bugzilla.opendarwin.org/show_bug.cgi?id=5499
785         Page reload does not send any cache control headers
786
787         * WebView/WebFrame.m:
788         (-[WebFrame _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): Set a proper Cache-Control header for 
789         reload requests.
790         (-[WebFrame loadRequest:]): Reset loadType to WebFrameLoadTypeStandard (after a reload, it stayed at 
791         WebFrameLoadTypeReload, so _addExtraFieldsToRequest erroneously added a Cache-Control header to them).
792
793 2006-06-19  John Sullivan  <sullivan@apple.com>
794
795         Reviewed by Darin.
796         
797         - added mechanism to notify UIDelegate when part of the webview is redrawn. For now, it only
798           works for HTML views.
799
800         * WebView/WebUIDelegatePrivate.h:
801         Define a new UIDelegate method -webView:didDrawRect:
802         * WebView/WebHTMLView.m:
803         (-[WebView drawSingleRect:]):
804         Call through to UIDelegate if it implements that method. I tested that this does not impact PLT numbers
805         in the case where the delegate implements the method but does nothing in it.
806
807 2006-06-19  Mitz Pettel  <opendarwin.org@mitzpettel.com>
808
809         Reviewed by Maciej.
810
811         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9452
812           Assertion failure in -[WebFramePrivate setProvisionalDataSource:]
813
814         * WebView/WebFrame.m:
815         (-[WebFrame _checkLoadCompleteForThisFrame]): Avoid re-entering the delegate's
816         -[webView:didFailProvisionalLoadWithError:forFrame].
817
818 2006-06-18  Mitz Pettel  <opendarwin.org@mitzpettel.com>
819
820         Reviewed by xenon.
821
822         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9479
823           Disassociate the inspector from the frame when it detaches from its parent
824
825         * WebInspector/WebInspector.m:
826         (-[NSWindow setWebFrame:]): Added code to (de)register with the WebFrame
827         the inspector is (no longer) targeting.
828         (-[WebInspector _webFrameDetached:]): Added. Moved the code that was previously
829         in -[inspectedWindowWillClose:] here. This is called by the WebFrame when it
830         is detached from its parent.
831         * WebInspector/WebInspectorInternal.h:
832         * WebView/WebFrame.m:
833         (-[WebFramePrivate dealloc]):
834         (-[WebFrame _detachFromParent]): Added code to notify all registered inspectors
835         that the WebFrame is detaching.
836         (-[WebFrame _addInspector:]): Added.
837         (-[WebFrame _removeInspector:]): Added.
838         * WebView/WebFrameInternal.h:
839
840 2006-06-18  Anders Carlsson  <acarlsson@apple.com>
841
842         Reviewed by Geoff.
843
844         * WebCoreSupport/WebFrameBridge.m:
845         (-[WebFrameBridge shouldInterruptJavaScript]):
846         Ask the UI delegate if the script should be interrupted.
847         
848         * WebView/WebUIDelegatePrivate.h:
849         Declare webViewShouldInterruptJavaScript: delegate method
850
851 2006-06-17  Mitz Pettel  <opendarwin.org@mitzpettel.com>
852
853         Reviewed by Darin.
854
855         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9466
856           Assertion failure when dragging an image from the document into Safari's address bar
857
858         * WebView/WebFrameView.m:
859         (-[WebFrameView _setDocumentView:]): Reset the WebView's initiatedDrag flag
860         when the document view is changed.
861         * WebView/WebHTMLView.m:
862         (-[WebHTMLView draggedImage:endedAt:operation:]): Changed the ASSERT to allow
863         for drags that end after the view has been removed from the WebView.
864
865 2006-06-16  Timothy Hatcher  <timothy@apple.com>
866
867         Reviewed by Tim O.
868
869         Exposes a distributed objects server for clients to register for script debugger calls.
870         For preformance concerns this is disabled by default, you will need to enable this per application.
871         To enable for Safari do this: defaults write com.apple.Safari WebKitScriptDebuggerEnabled -bool true
872
873         Clients will need to listen to the following distributed notification to discover servers:
874         WebScriptDebugServerDidLoadNotification
875
876         To discover servers that previously loaded before the client, the client needs to send the following notification:
877         WebScriptDebugServerQueryNotification
878
879         All servers will reply with the WebScriptDebugServerQueryReplyNotification notification that contains the
880         registered server connection name to use with distributed objects.
881
882         * DefaultDelegates/WebScriptDebugServer.h: Added.
883         * DefaultDelegates/WebScriptDebugServer.m: Added.
884         (+[WebScriptDebugServer sharedScriptDebugServer]):
885         (-[WebScriptDebugServer init]):
886         (-[WebScriptDebugServer dealloc]):
887         (-[WebScriptDebugServer serverQuery:]):
888         (-[WebScriptDebugServer listenerConnectionDidDie:]):
889         (-[WebScriptDebugServer addListener:]):
890         (-[WebScriptDebugServer removeListener:]):
891         (-[WebScriptDebugServer webView:didParseSource:fromURL:sourceId:forWebFrame:]):
892         (-[WebScriptDebugServer webView:didEnterCallFrame:sourceId:line:forWebFrame:]):
893         (-[WebScriptDebugServer webView:willExecuteStatement:sourceId:line:forWebFrame:]):
894         (-[WebScriptDebugServer webView:willLeaveCallFrame:sourceId:line:forWebFrame:]):
895         * DefaultDelegates/WebScriptDebugServerPrivate.h: Added.
896         * WebCoreSupport/WebFrameBridge.m:
897         (-[WebFrameBridge windowObjectCleared]):
898         * WebKit.exp:
899         * WebKit.xcodeproj/project.pbxproj:
900         * WebView/WebScriptDebugDelegate.m:
901         (-[WebScriptCallFrame parsedSource:fromURL:sourceId:]):
902         (-[WebScriptCallFrame enteredFrame:sourceId:line:]):
903         (-[WebScriptCallFrame hitStatement:sourceId:line:]):
904         (-[WebScriptCallFrame leavingFrame:sourceId:line:]):
905         * WebView/WebView.m:
906         (+[WebView _developerExtrasEnabled]):
907         (+[WebView _scriptDebuggerEnabled]):
908         (-[WebView _menuForElement:defaultItems:]):
909         (-[WebView _commonInitializationWithFrameName:groupName:]):
910         * WebView/WebViewPrivate.h:
911
912 2006-06-16  Adele Peterson  <adele@apple.com>
913
914         Reviewed by Alice.
915
916         Added initialization for WKDrawBezeledTextArea.
917
918         * WebCoreSupport/WebSystemInterface.m:
919         (InitWebCoreSystemInterface):
920
921 2006-06-15  Timothy Hatcher  <timothy@apple.com>
922
923         Reviewed by Geoff and Darin.
924         
925         Prefer the DWARF debugging symbols format for use in Xcode 2.3.
926
927         * WebKit.xcodeproj/project.pbxproj:
928
929 2006-06-15  John Sullivan  <sullivan@apple.com>
930
931         Reviewed by Tim O.
932         
933         Fixed bug in WebKit support for computing but not highlighting rects for text matches.
934
935         * WebView/WebView.m:
936         (-[WebView rectsForTextMatches]):
937         leave out empty rects, and convert rects to WebView coordinates. Since this makes a batch
938         of autoreleased NSValue objects, use a local autorelease pool
939
940 2006-02-11  David Kilzer  <ddkilzer@kilzer.net>
941
942         Reviewed by John Sullivan.
943
944         * Plugins/WebPluginController.m:
945         (-[WebPluginController _cancelOutstandingChecks]):
946         add nil check before calling CFSetApplyFunction
947
948 2006-06-14  Levi Weintraub  <lweintraub@apple.com>
949
950         Reviewed by justin
951         
952         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7580>
953         TinyMCE: Implement execCommand(formatBlock, ...)
954         
955         * English.lproj/Localizable.strings:
956         * WebCoreSupport/WebFrameBridge.m:
957         (-[WebFrameBridge nameForUndoAction:]):
958
959 2006-06-14  Tim Omernick  <timo@apple.com>
960
961         Reviewed by John Sullivan.
962
963         <rdar://problem/4577988> GC: WebPluginController uses inefficient resurrecting enumeration
964
965         * Plugins/WebPluginController.m:
966         (cancelOutstandingCheck):
967         (-[WebPluginController _cancelOutstandingChecks]):
968         Use CFSetApplyFunction() instead of an enumerator to guard against modifications to the set while enumerating.
969
970 2006-06-13  John Sullivan  <sullivan@apple.com>
971
972         Reviewed by Tim O.
973         
974         - fixed <rdar://problem/4498606> REGRESSION (417.8-420+): 3 missing items (but extra separators) in context 
975         menu in Mail message body
976
977         * WebView/WebView.m:
978         (-[WebView _menuForElement:defaultItems:]):
979         Add special-case hackery to recover from this SPI -> API mismatch.
980
981 2006-06-13  Tim Omernick  <timo@apple.com>
982
983         Reviewed by Anders.
984
985         Fixed a recently-introduced assertion failure when handling 404 errors.
986
987         * WebView/WebDataSource.m:
988         (-[WebDataSource _handleFallbackContent]):
989         Use the -[WebFrame _bridge] instead of -[WebDataSource _bridge].  The former is not valid until the data
990         source has been committed, which is not the case when the resource fails to load.  The latter is safe to call
991         at any time.  This broke last night with Maciej's change to WebFrameResourceLoader.  The old code used to
992         call -[WebFrame _bridge].
993
994 2006-06-13  Anders Carlsson  <acarlsson@apple.com>
995
996         Reviewed by Geoff.
997
998         http://bugzilla.opendarwin.org/show_bug.cgi?id=9406
999         REGRESSION: fix for bug 9390 broke two layout tests
1000
1001         * Plugins/WebPluginDatabase.h:
1002         (-[WebPluginDatabase isMIMETypeRegistered:]):
1003         Add new function isMIMETypeRegistered which returns whether a given MIME type has a 
1004         plugin registered. 
1005
1006         * Plugins/WebPluginDatabase.m:
1007         (-[WebPluginDatabase init]):        
1008         Init set of registered MIME types.
1009         
1010         (-[WebPluginDatabase refresh]):
1011         Add and remove MIME types from the set of registered MIME types when registering and unregistering
1012         plugin MIME types.
1013         
1014         (-[WebPluginDatabase dealloc]):
1015         Release set of registered MIME types.
1016         
1017         * WebCoreSupport/WebFrameBridge.m:
1018         (-[WebFrameBridge determineObjectFromMIMEType:URL:]):
1019         Use isMIMETypeRegistered here.
1020
1021 2006-06-12  Maciej Stachowiak  <mjs@apple.com>
1022
1023         - fix for cocoa exception (whoops)
1024
1025         * WebView/WebView.m:
1026         (+[WebView _generatedMIMETypeForURLScheme:]): put this back
1027         * WebView/WebDataSource.m:
1028         (+[WebDataSource _generatedMIMETypeForURLScheme:]): call WebView
1029
1030 2006-06-12  Maciej Stachowiak  <mjs@apple.com>
1031
1032         Reviewed by Darin.
1033         
1034         - remove use of WebView and related from WebMainResourceLoader
1035
1036         * WebKit.xcodeproj/project.pbxproj:
1037         * WebView/WebDataSource.m:
1038         (+[WebDataSource _generatedMIMETypeForURLScheme:]):
1039         (+[WebDataSource _representationExistsForURLScheme:]):
1040         (+[WebDataSource _canShowMIMEType:]):
1041         (-[WebDataSource _handleFallbackContent]):
1042         (-[WebDataSource _decidePolicyForMIMEType:decisionListener:]):
1043         * WebView/WebDataSourceInternal.h:
1044         * WebView/WebFrame.m:
1045         (-[WebFrame _isMainFrame]):
1046         * WebView/WebFrameInternal.h:
1047         * WebView/WebMainResourceLoader.m:
1048         (-[WebMainResourceLoader willSendRequest:redirectResponse:]):
1049         (-[WebMainResourceLoader continueAfterContentPolicy:response:]):
1050         (-[WebMainResourceLoader checkContentPolicyForResponse:]):
1051         (-[WebMainResourceLoader loadWithRequestNow:]):
1052         * WebView/WebView.m:
1053
1054 2006-06-12  Tim Omernick  <timo@apple.com>
1055
1056         Reviewed by Maciej.
1057
1058         <rdar://problem/4526052> intermittent assertion failure in -[WebBasePluginPackage dealloc] running layout tests
1059
1060         * Plugins/WebNetscapePluginPackage.m:
1061         (-[WebNetscapePluginPackage _initWithPath:]):
1062         Renamed from -initWithPath:.  Instead of releasing/deallocating self on error, return NO.
1063         (-[WebNetscapePluginPackage initWithPath:]):
1064         Call the new -_initWithPath:.  If it returns NO, unload the plugin package before deallocating it.
1065
1066 2006-06-11  Darin Adler  <darin@apple.com>
1067
1068         - try to fix Windows build
1069
1070         * COM/WebKitDLL.cpp: (loadResourceIntoArray): Use Vector<char> instead of
1071         DeprecatedByteArray.
1072
1073 2006-06-11  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1074
1075         Reviewed by Tim H.
1076
1077         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8672
1078           Red outline from web inspector reappears after inspector is closed
1079
1080         * WebInspector/WebInspector.m:
1081         (-[NSWindow windowWillClose:]): Added a call to setWebFrame to avoid further
1082         load progress notifications.
1083         (-[NSWindow setWebFrame:]): Changed to resign the WebView's hostWindow rather
1084         than its window for close notifications, to avoid resigning from all windows' close
1085         notifications (including the inspector window's) when the WebView is in a hidden tab.
1086         Also changed to prevent highlighting the initial focused node.
1087
1088 2006-06-11  Anders Carlsson  <acarlsson@apple.com>
1089
1090         Reviewed by Tim.
1091
1092         http://bugzilla.opendarwin.org/show_bug.cgi?id=9390
1093         Move full-frame plugins to WebCore
1094
1095         * Plugins/WebBaseNetscapePluginStream.h:
1096         * Plugins/WebBaseNetscapePluginStream.m:
1097         (-[WebBaseNetscapePluginStream instance]):
1098         Add instance method which returns the plugin instance.
1099         
1100         * Plugins/WebBasePluginPackage.h:
1101         Add WebPluginManualLoader protocol
1102         
1103         * Plugins/WebNetscapePluginDocumentView.h: Removed.
1104         * Plugins/WebNetscapePluginDocumentView.m: Removed.
1105
1106         * Plugins/WebNetscapePluginEmbeddedView.h:
1107         * Plugins/WebNetscapePluginEmbeddedView.m:
1108         (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:]):
1109         (-[WebNetscapePluginEmbeddedView dealloc]):
1110         (-[WebNetscapePluginEmbeddedView didStart]):
1111         (-[WebNetscapePluginEmbeddedView pluginView:receivedResponse:]):
1112         (-[WebNetscapePluginEmbeddedView pluginView:receivedData:]):
1113         (-[WebNetscapePluginEmbeddedView pluginView:receivedError:]):
1114         (-[WebNetscapePluginEmbeddedView pluginViewFinishedLoading:]):
1115         (-[WebNetscapePluginEmbeddedView redeliverStream]):
1116         Make WebNetscapePluginEmbeddedView support the WebPluginManualLoader protocol. It creates a plugin stream and feeds the
1117         data manually. Much of this code has been copied from WebNetscapePluginRepresentation.
1118
1119         * Plugins/WebNetscapePluginRepresentation.h: Removed.
1120         * Plugins/WebNetscapePluginRepresentation.m: Removed.
1121
1122         * Plugins/WebPluginController.h:
1123         * Plugins/WebPluginController.m:
1124         (-[WebPluginController pluginView:receivedResponse:]):
1125         (-[WebPluginController pluginView:receivedData:]):
1126         (-[WebPluginController pluginView:receivedError:]):
1127         (-[WebPluginController pluginViewFinishedLoading:]):
1128         Make WebPluginController support the WebPluginManualLoader protocol so it can feed data manually to WebKit plugins.
1129
1130         * Plugins/WebPluginDatabase.m:        
1131         (-[WebPluginDatabase refresh]):
1132         Use WebHTMLView and WebHTMLRepresentation when registering/unregistering plug-in MIME types.
1133         
1134         * Plugins/WebPluginDocumentView.h: Removed.
1135         * Plugins/WebPluginDocumentView.m: Removed.
1136
1137         * WebCoreSupport/WebFrameBridge.m:
1138         (-[WebFrameBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:DOMElement:loadManually:]):
1139         (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
1140         Add loadManually argument.
1141         
1142         (-[WebFrameBridge redirectDataToPlugin:]):
1143         Call down to the HTML representation.
1144         
1145         (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]):
1146         Pass NO to loadManually.
1147         
1148         (-[WebFrameBridge determineObjectFromMIMEType:URL:]):
1149         Explicitly check if the MIME type is supported by a plug-in instead of checking the view class.
1150         
1151         * WebCoreSupport/WebViewFactory.m:
1152         (-[WebViewFactory pluginSupportsMIMEType:]):
1153         New function which returns whether any plugins support a given MIME type.
1154         
1155         * WebKit.xcodeproj/project.pbxproj:
1156         Update for removed files.
1157         
1158         * WebView/WebFrame.m:
1159         (-[WebFrame _reloadForPluginChanges]):
1160         Remove view type checks.
1161         
1162         (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]):
1163         (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
1164         Remove FIXME comments.
1165         
1166         * WebView/WebHTMLRepresentation.m:
1167         (-[WebHTMLRepresentation _redirectDataToManualLoader:forPluginView:]):        
1168         New function which redirects incoming data to a manual loader.
1169         
1170         (-[WebHTMLRepresentation receivedData:withDataSource:]):
1171         (-[WebHTMLRepresentation receivedError:withDataSource:]):
1172         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
1173         Optionally redirect incoming data.
1174         
1175         * WebView/WebHTMLRepresentationPrivate.h:
1176
1177 2006-06-09  John Sullivan  <sullivan@apple.com>
1178
1179         Reviewed by Tim Omernick and Dave Hyatt.
1180
1181         WebKit support for computing but not highlighting rects for text matches.
1182
1183         * WebView/WebHTMLViewPrivate.h:
1184         added markedTextMatchesAreHighlighted/setMarkedTextMatchesAreHighlighted and
1185         rectsForTextMatches, and renamed related methods for clarity/consistency
1186         * WebView/WebHTMLView.m:
1187         (-[WebHTMLView markAllMatchesForText:caseSensitive:]):
1188         renamed, calls similarly-renamed method
1189         (-[WebHTMLView setMarkedTextMatchesAreHighlighted:]):
1190         new method, calls through to bridge
1191         (-[WebHTMLView markedTextMatchesAreHighlighted]):
1192         ditto
1193         (-[WebHTMLView unmarkAllTextMatches]):
1194         renamed
1195         (-[WebHTMLView rectsForTextMatches]):
1196         new method, calls through to bridge
1197
1198         * WebView/WebViewPrivate.h:
1199         added rectsForTextMatches, renamed other methods (and added highlight: parameter)
1200         * WebView/WebView.m:
1201         (-[WebView markAllMatchesForText:caseSensitive:highlight:]):
1202         renamed for clarity/consistency, and now has highlight: parameter, which is passed down
1203         (-[WebView unmarkAllTextMatches]):
1204         renamed for clarity/consistency, and calls similarly-renamed method lower down. diff got
1205         confused with the end of this and the end of the next method.
1206         (-[WebView rectsForTextMatches]):
1207         new method, calls through to WebHTMLView as related methods currently do
1208
1209 2006-06-10  Graham Dennis  <Graham.Dennis@gmail.com>
1210
1211         <http://bugzilla.opendarwin.org/show_bug.cgi?id=9384>
1212         WebView's initWithCoder: method does not set useBackForwardList
1213         correctly
1214         
1215         Reviewed by John Sullivan.
1216
1217         * WebView/WebView.m:
1218         (-[WebView initWithCoder:]):
1219         Make sure that the function variable useBackForwardList is correctly
1220         set, so that the copy in the _private ivar is set.
1221
1222 2006-06-09  David Hyatt  <hyatt@apple.com>
1223
1224         Rename updateFocusState to updateActiveState.
1225
1226         * WebView/WebHTMLView.m:
1227         (-[WebHTMLView _updateActiveState]):
1228         (-[NSArray viewDidMoveToWindow]):
1229         (-[NSArray windowDidBecomeKey:]):
1230         (-[NSArray windowDidResignKey:]):
1231         (-[NSArray becomeFirstResponder]):
1232         (-[NSArray resignFirstResponder]):
1233         (-[WebHTMLView _formControlIsBecomingFirstResponder:]):
1234         (-[WebHTMLView _formControlIsResigningFirstResponder:]):
1235         * WebView/WebHTMLViewPrivate.h:
1236
1237 2006-06-09  David Hyatt  <hyatt@apple.com>
1238
1239         Rename displaysWithFocusAttributes to isActive.
1240
1241         Reviewed by sfalken
1242
1243         * WebKit.xcodeproj/project.pbxproj:
1244         * WebView/WebHTMLView.m:
1245         (-[WebHTMLView _updateFocusState]):
1246
1247 2006-06-08  Justin Garcia  <justin.garcia@apple.com>
1248
1249         Reviewed by levi
1250         
1251         <http://bugzilla.opendarwin.org/show_bug.cgi?id=4468>
1252         Implement execCommand(Insert{Un}OrderedList)
1253
1254         * WebView/WebFrame.m:
1255         (-[WebFrame _findFrameWithSelection]): Removed an assertion
1256         that we only have one frame with a selection.  
1257         * WebView/WebView.m:
1258         (-[WebView selectedFrame]): Ditto.
1259
1260 2006-06-08  Timothy Hatcher  <timothy@apple.com>
1261
1262         Reviewed by Darin and John.
1263
1264         <rdar://problem/3600734> API: please add a way to turn vertical scrollbar
1265         always on (for Mail, to avoid reflow when typing)
1266
1267         Adds new methods to lock the scrolling mode on WebDynamicScrollBarsView.
1268         Locking the scroll mode prevents WebCore from changing it as needed.
1269         Also adds an SPI on WebView that will lock the "always on" mode
1270         for each scroller.
1271
1272         * WebKit.xcodeproj/project.pbxproj:
1273         * WebView/WebDynamicScrollBarsView.h:
1274         * WebView/WebDynamicScrollBarsView.m:
1275         (-[WebDynamicScrollBarsView setAllowsScrolling:]):
1276         (-[WebDynamicScrollBarsView allowsScrolling]):
1277         (-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]):
1278         (-[WebDynamicScrollBarsView setAllowsVerticalScrolling:]):
1279         (-[WebDynamicScrollBarsView setHorizontalScrollingMode:]):
1280         (-[WebDynamicScrollBarsView setVerticalScrollingMode:]):
1281         (-[WebDynamicScrollBarsView setScrollingMode:]):
1282         (-[WebDynamicScrollBarsView setHorizontalScrollingModeLocked:]):
1283         (-[WebDynamicScrollBarsView setVerticalScrollingModeLocked:]):
1284         (-[WebDynamicScrollBarsView setScrollingModesLocked:]):
1285         (-[WebDynamicScrollBarsView horizontalScrollingModeLocked]):
1286         (-[WebDynamicScrollBarsView verticalScrollingModeLocked]):
1287         * WebView/WebView.m:
1288         (-[WebView setAlwaysShowVerticalScroller:]):
1289         (-[WebView alwaysShowVerticalScroller]):
1290         (-[WebView setAlwaysShowHorizontalScroller:]):
1291         (-[WebView alwaysShowHorizontalScroller]):
1292         * WebView/WebViewPrivate.h:
1293
1294 2006-06-08  Darin Adler  <darin@apple.com>
1295
1296         Reviewed by Justin.
1297
1298         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8616
1299           REGRESSION: TinyMCE: Crash on Undo
1300
1301         * WebView/WebHTMLView.m:
1302         (-[WebHTMLView _topHTMLView]): Added.
1303         (-[WebHTMLView _isTopHTMLView]): Added.
1304         (-[WebHTMLView _insideAnotherHTMLView]): Changed to use _topHTMLView.
1305         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
1306         Forward to the top HTML view, so that only the top view ever starts a dragging operation.
1307         Change dragging code to not assume that the dragged node is in the current view's document.
1308         Added checks that the node is an element in a couple places and coordinate conversions.
1309         (-[WebHTMLView _mayStartDragAtEventLocation:]): Forward to the top HTML view.
1310         (-[NSArray addMouseMovedObserver]): Change to do nothing when the dataSource field is 0,
1311         since we now use the dataSource field to get to the WebView.
1312         (-[NSArray removeMouseMovedObserver]): Added a comment.
1313         (-[NSArray dragImage:at:offset:event:pasteboard:source:slideBack:]):
1314         Forward to the top HTML view.
1315         (-[NSArray draggingSourceOperationMaskForLocal:]): Assert that it's the top HTML view.
1316         (-[NSArray draggedImage:movedTo:]): Ditto.
1317         (-[NSArray draggedImage:endedAt:operation:]): Ditto.
1318         (-[NSArray namesOfPromisedFilesDroppedAtDestination:]): Ditto.
1319         (-[NSArray _canProcessDragWithDraggingInfo:]): Ditto.
1320         (-[NSArray _isMoveDrag]): Ditto.
1321         (-[NSArray draggingUpdatedWithDraggingInfo:actionMask:]): Ditto.
1322         (-[NSArray draggingCancelledWithDraggingInfo:]): Ditto.
1323         (-[NSArray concludeDragForDraggingInfo:actionMask:]): Ditto. Also added code to work
1324         with the appropriate bridge when receiving a drag. This fixes the problem where the
1325         top level frame got a selection intended for the inner frame; the source of the bug.
1326         (-[NSArray elementAtPoint:allowShadowContent:]): Added code to convert the coordinates
1327         so this works properly when returning an element from an inner frame.
1328         (-[NSArray setDataSource:]): Added a call to addMouseMovedObserver, needed now that
1329         addMouseMovedObserver won't do anything if called when dataSource is nil.
1330         (-[WebHTMLView _delegateDragSourceActionMask]): Forward to the top HTML view.
1331
1332         * WebView/WebView.m:
1333         (-[WebViewPrivate dealloc]): Removed code to release dragCaretBridge since that field
1334         is now gone.
1335         (-[WebView moveDragCaretToPoint:]): Always call the main frame's bridge, since the
1336         drag caret is now a page-level item. Later we'll move it to the page bridge.
1337         (-[WebView removeDragCaret]): Ditto.
1338
1339 2006-06-07  David Hyatt  <hyatt@apple.com>
1340
1341         Add support for custom highlighting to WebKit.
1342
1343         Reviewed by justin
1344
1345         * WebCoreSupport/WebFrameBridge.m:
1346         (-[WebFrameBridge paintCustomHighlight:forBox:onLine:behindText:]):
1347         * WebView/WebHTMLView.m:
1348         (-[WebHTMLView _highlighterForType:]):
1349         * WebView/WebHTMLViewInternal.h:
1350         * WebView/WebHTMLViewPrivate.h:
1351
1352 2006-06-07  Adele Peterson  <adele@apple.com>
1353
1354         Reviewed by Hyatt. 
1355
1356         Added resources for missingImage and textAreaResizeCorner.
1357
1358         * COM/WebKitDLL.cpp:
1359         (loadResourceIntoArray): Added. Returns a DeprecatedByteArray with the resource's data.
1360         * WebKit.vcproj/WebKit.rc: Added missing image and resize pngs as resources. 
1361         * WebKit.vcproj/WebKit.vcproj: Added pngs.
1362         * WebKit.vcproj/missingImage.png: Added.
1363         * WebKit.vcproj/resource.h: Added entries for pngs.
1364         * WebKit.vcproj/textAreaResizeCorner.png: Added.
1365
1366 2006-06-07  David Hyatt  <hyatt@apple.com>
1367
1368         Add SPI for setting and removing custom highlighters.
1369
1370         Reviewed by Tim H
1371
1372         * WebView/WebHTMLView.m:
1373         (-[WebTextCompleteController dealloc]):
1374         (-[WebHTMLView _setHighlighter:ofType:]):
1375         (-[WebHTMLView _removeHighlighterOfType:]):
1376         * WebView/WebHTMLViewInternal.h:
1377         * WebView/WebHTMLViewPrivate.h:
1378
1379 2006-06-06  Adele Peterson  <adele@apple.com>
1380
1381         Reviewed by Justin. 
1382
1383         * COM/WebView.cpp:
1384         (WebView::keyPress): Added case for VK_RETURN. 
1385
1386 2006-06-06  Anders Carlsson  <acarlsson@apple.com>
1387
1388         Reviewed by John.
1389
1390         * WebView/WebFrame.m:
1391         (-[WebFrame _reloadForPluginChanges]):
1392         Don't traverse the view hierarchy looking for plugin views. Instead, just
1393         ask the frame whether it contains any plugins.
1394
1395 2006-06-03  Steve Falkenburg  <sfalken@apple.com>
1396
1397         Reviewed by hyatt.
1398         
1399         Add implementation of loadHTMLString for Spinneret
1400
1401         * COM/WebFrame.cpp:
1402         (WebFrame::loadHTMLString):
1403
1404 2006-06-02  Steve Falkenburg  <sfalken@apple.com>
1405
1406         Reviewed by darin.
1407
1408         New hosting for Spinneret to avoid static linking
1409
1410         * COM: Added.
1411         * COM/Interfaces: Added.
1412         * COM/Interfaces/DOMCSS.idl: Added.
1413         * COM/Interfaces/DOMCore.idl: Added.
1414         * COM/Interfaces/DOMHTML.idl: Added.
1415         * COM/Interfaces/DOMRange.idl: Added.
1416         * COM/Interfaces/IWebArchive.idl: Added.
1417         * COM/Interfaces/IWebAttributedString.idl: Added.
1418         * COM/Interfaces/IWebBackForwardList.idl: Added.
1419         * COM/Interfaces/IWebDataSource.idl: Added.
1420         * COM/Interfaces/IWebDocument.idl: Added.
1421         * COM/Interfaces/IWebDownload.idl: Added.
1422         * COM/Interfaces/IWebEditingDelegate.idl: Added.
1423         * COM/Interfaces/IWebError.idl: Added.
1424         * COM/Interfaces/IWebFrame.idl: Added.
1425         * COM/Interfaces/IWebFrameLoadDelegate.idl: Added.
1426         * COM/Interfaces/IWebFrameView.idl: Added.
1427         * COM/Interfaces/IWebHistoryItem.idl: Added.
1428         * COM/Interfaces/IWebIconDatabase.idl: Added.
1429         * COM/Interfaces/IWebImage.idl: Added.
1430         * COM/Interfaces/IWebMutableURLRequest.idl: Added.
1431         * COM/Interfaces/IWebNotification.idl: Added.
1432         * COM/Interfaces/IWebPolicyDelegate.idl: Added.
1433         * COM/Interfaces/IWebPreferences.idl: Added.
1434         * COM/Interfaces/IWebResource.idl: Added.
1435         * COM/Interfaces/IWebResourceLoadDelegate.idl: Added.
1436         * COM/Interfaces/IWebScriptObject.idl: Added.
1437         * COM/Interfaces/IWebUIDelegate.idl: Added.
1438         * COM/Interfaces/IWebURLAuthenticationChallenge.idl: Added.
1439         * COM/Interfaces/IWebURLRequest.idl: Added.
1440         * COM/Interfaces/IWebURLResponse.idl: Added.
1441         * COM/Interfaces/IWebUndoManager.idl: Added.
1442         * COM/Interfaces/IWebView.idl: Added.
1443         * COM/Interfaces/WebKit.idl: Added.
1444         * COM/WebBackForwardList.cpp: Added.
1445         (WebBackForwardList::WebBackForwardList):
1446         (WebBackForwardList::~WebBackForwardList):
1447         (WebBackForwardList::createInstance):
1448         (WebBackForwardList::QueryInterface):
1449         (WebBackForwardList::AddRef):
1450         (WebBackForwardList::Release):
1451         (WebBackForwardList::addItem):
1452         (WebBackForwardList::goBack):
1453         (WebBackForwardList::goForward):
1454         (WebBackForwardList::goToItem):
1455         (WebBackForwardList::backItem):
1456         (WebBackForwardList::currentItem):
1457         (WebBackForwardList::forwardItem):
1458         (WebBackForwardList::backListWithLimit):
1459         (WebBackForwardList::forwardListWithLimit):
1460         (WebBackForwardList::capacity):
1461         (WebBackForwardList::setCapacity):
1462         (WebBackForwardList::backListCount):
1463         (WebBackForwardList::forwardListCount):
1464         (WebBackForwardList::containsItem):
1465         (WebBackForwardList::itemAtIndex):
1466         (WebBackForwardList::setPageCacheSize):
1467         (WebBackForwardList::pageCacheSize):
1468         * COM/WebBackForwardList.h: Added.
1469         * COM/WebDataSource.cpp: Added.
1470         (WebDataSource::WebDataSource):
1471         (WebDataSource::~WebDataSource):
1472         (WebDataSource::createInstance):
1473         (WebDataSource::QueryInterface):
1474         (WebDataSource::AddRef):
1475         (WebDataSource::Release):
1476         (WebDataSource::initWithRequest):
1477         (WebDataSource::data):
1478         (WebDataSource::representation):
1479         (WebDataSource::webFrame):
1480         (WebDataSource::initialRequest):
1481         (WebDataSource::request):
1482         (WebDataSource::response):
1483         (WebDataSource::textEncodingName):
1484         (WebDataSource::isLoading):
1485         (WebDataSource::pageTitle):
1486         (WebDataSource::unreachableURL):
1487         (WebDataSource::webArchive):
1488         (WebDataSource::mainResource):
1489         (WebDataSource::subresources):
1490         (WebDataSource::subresourceForURL):
1491         (WebDataSource::addSubresource):
1492         * COM/WebDataSource.h: Added.
1493         * COM/WebFrame.cpp: Added.
1494         (WebFrame::WebFramePrivate::WebFramePrivate):
1495         (WebFrame::WebFramePrivate::~WebFramePrivate):
1496         (WebFrame::WebFrame):
1497         (WebFrame::~WebFrame):
1498         (WebFrame::createInstance):
1499         (WebFrame::QueryInterface):
1500         (WebFrame::AddRef):
1501         (WebFrame::Release):
1502         (WebFrame::initWithName):
1503         (WebFrame::name):
1504         (WebFrame::webView):
1505         (WebFrame::frameView):
1506         (WebFrame::DOMDocument):
1507         (WebFrame::frameElement):
1508         (WebFrame::loadRequest):
1509         (WebFrame::loadData):
1510         (WebFrame::loadHTMLString):
1511         (WebFrame::loadAlternateHTMLString):
1512         (WebFrame::loadArchive):
1513         (WebFrame::dataSource):
1514         (WebFrame::provisionalDataSource):
1515         (WebFrame::stopLoading):
1516         (WebFrame::reload):
1517         (WebFrame::findFrameNamed):
1518         (WebFrame::parentFrame):
1519         (WebFrame::childFrames):
1520         (WebFrame::paint):
1521         (WebFrame::impl):
1522         (WebFrame::loadDataSource):
1523         (WebFrame::loading):
1524         (WebFrame::goToItem):
1525         (WebFrame::loadItem):
1526         (WebSystemMainMemory):
1527         (WebFrame::getObjectCacheSize):
1528         (WebFrame::receivedRedirect):
1529         (WebFrame::receivedResponse):
1530         (WebFrame::receivedData):
1531         (WebFrame::receivedAllData):
1532         (WebFrame::openURL):
1533         (WebFrame::submitForm):
1534         (WebFrame::setTitle):
1535         (WebFrame::setStatusText):
1536         * COM/WebFrame.h: Added.
1537         * COM/WebHistoryItem.cpp: Added.
1538         (WebHistoryItem::WebHistoryItem):
1539         (WebHistoryItem::~WebHistoryItem):
1540         (WebHistoryItem::createInstance):
1541         (WebHistoryItem::QueryInterface):
1542         (WebHistoryItem::AddRef):
1543         (WebHistoryItem::Release):
1544         (WebHistoryItem::initWithURLString):
1545         (WebHistoryItem::originalURLString):
1546         (WebHistoryItem::URLString):
1547         (WebHistoryItem::title):
1548         (WebHistoryItem::lastVisitedTimeInterval):
1549         (WebHistoryItem::setAlternateTitle):
1550         (WebHistoryItem::alternateTitle):
1551         (WebHistoryItem::icon):
1552         * COM/WebHistoryItem.h: Added.
1553         * COM/WebIconDatabase.cpp: Added.
1554         (WebIconDatabase::WebIconDatabase):
1555         (WebIconDatabase::~WebIconDatabase):
1556         (WebIconDatabase::createInstance):
1557         (WebIconDatabase::QueryInterface):
1558         (WebIconDatabase::AddRef):
1559         (WebIconDatabase::Release):
1560         (WebIconDatabase::sharedIconDatabase):
1561         (WebIconDatabase::iconForURL):
1562         (WebIconDatabase::defaultIconWithSize):
1563         (WebIconDatabase::retainIconForURL):
1564         (WebIconDatabase::releaseIconForURL):
1565         (WebIconDatabase::delayDatabaseCleanup):
1566         (WebIconDatabase::allowDatabaseCleanup):
1567         * COM/WebIconDatabase.h: Added.
1568         * COM/WebKitClassFactory.cpp: Added.
1569         (WebKitClassFactory::WebKitClassFactory):
1570         (WebKitClassFactory::~WebKitClassFactory):
1571         (WebKitClassFactory::QueryInterface):
1572         (WebKitClassFactory::AddRef):
1573         (WebKitClassFactory::Release):
1574         (WebKitClassFactory::CreateInstance):
1575         (WebKitClassFactory::LockServer):
1576         * COM/WebKitClassFactory.h: Added.
1577         * COM/WebKitDLL.cpp: Added.
1578         (DllMain):
1579         (DllGetClassObject):
1580         (DllCanUnloadNow):
1581         (DllUnregisterServer):
1582         (DllRegisterServer):
1583         * COM/WebKitDLL.h: Added.
1584         * COM/WebMutableURLRequest.cpp: Added.
1585         (WebMutableURLRequest::WebMutableURLRequest):
1586         (WebMutableURLRequest::~WebMutableURLRequest):
1587         (WebMutableURLRequest::createInstance):
1588         (WebMutableURLRequest::QueryInterface):
1589         (WebMutableURLRequest::AddRef):
1590         (WebMutableURLRequest::Release):
1591         (WebMutableURLRequest::requestWithURL):
1592         (WebMutableURLRequest::allHTTPHeaderFields):
1593         (WebMutableURLRequest::cachePolicy):
1594         (WebMutableURLRequest::HTTPBody):
1595         (WebMutableURLRequest::HTTPBodyStream):
1596         (WebMutableURLRequest::HTTPMethod):
1597         (WebMutableURLRequest::HTTPShouldHandleCookies):
1598         (WebMutableURLRequest::initWithURL):
1599         (WebMutableURLRequest::mainDocumentURL):
1600         (WebMutableURLRequest::timeoutInterval):
1601         (WebMutableURLRequest::URL):
1602         (WebMutableURLRequest::valueForHTTPHeaderField):
1603         (WebMutableURLRequest::addValue):
1604         (WebMutableURLRequest::setAllHTTPHeaderFields):
1605         (WebMutableURLRequest::setCachePolicy):
1606         (WebMutableURLRequest::setHTTPBody):
1607         (WebMutableURLRequest::setHTTPBodyStream):
1608         (WebMutableURLRequest::setHTTPMethod):
1609         (WebMutableURLRequest::setHTTPShouldHandleCookies):
1610         (WebMutableURLRequest::setMainDocumentURL):
1611         (WebMutableURLRequest::setTimeoutInterval):
1612         (WebMutableURLRequest::setURL):
1613         (WebMutableURLRequest::setValue):
1614         (WebMutableURLRequest::setFormData):
1615         (WebMutableURLRequest::formData):
1616         * COM/WebMutableURLRequest.h: Added.
1617         * COM/WebView.cpp: Added.
1618         (WebView::WebView):
1619         (WebView::~WebView):
1620         (WebView::createInstance):
1621         (WebView::mouseMoved):
1622         (WebView::mouseDown):
1623         (WebView::mouseUp):
1624         (WebView::mouseDoubleClick):
1625         (WebView::keyPress):
1626         (registerWebView):
1627         (WebViewWndProc):
1628         (calculateScrollDelta):
1629         (scrollMessageForKey):
1630         (WebView::goToItem):
1631         (WebView::QueryInterface):
1632         (WebView::AddRef):
1633         (WebView::Release):
1634         (WebView::canShowMIMEType):
1635         (WebView::canShowMIMETypeAsHTML):
1636         (WebView::MIMETypesShownAsHTML):
1637         (WebView::setMIMETypesShownAsHTML):
1638         (WebView::URLFromPasteboard):
1639         (WebView::URLTitleFromPasteboard):
1640         (WebView::initWithFrame):
1641         (WebView::setUIDelegate):
1642         (WebView::uiDelegate):
1643         (WebView::setResourceLoadDelegate):
1644         (WebView::resourceLoadDelegate):
1645         (WebView::setDownloadDelegate):
1646         (WebView::downloadDelegate):
1647         (WebView::setFrameLoadDelegate):
1648         (WebView::frameLoadDelegate):
1649         (WebView::setPolicyDelegate):
1650         (WebView::policyDelegate):
1651         (WebView::mainFrame):
1652         (WebView::backForwardList):
1653         (WebView::setMaintainsBackForwardList):
1654         (WebView::goBack):
1655         (WebView::goForward):
1656         (WebView::goToBackForwardItem):
1657         (WebView::setTextSizeMultiplier):
1658         (WebView::textSizeMultiplier):
1659         (WebView::setApplicationNameForUserAgent):
1660         (WebView::applicationNameForUserAgent):
1661         (WebView::setCustomUserAgent):
1662         (WebView::customUserAgent):
1663         (WebView::userAgentForURL):
1664         (WebView::supportsTextEncoding):
1665         (WebView::setCustomTextEncodingName):
1666         (WebView::customTextEncodingName):
1667         (WebView::setMediaStyle):
1668         (WebView::mediaStyle):
1669         (WebView::stringByEvaluatingJavaScriptFromString):
1670         (WebView::windowScriptObject):
1671         (WebView::setPreferences):
1672         (WebView::preferences):
1673         (WebView::setPreferencesIdentifier):
1674         (WebView::preferencesIdentifier):
1675         (WebView::setHostWindow):
1676         (WebView::hostWindow):
1677         (WebView::searchFor):
1678         (WebView::registerViewClass):
1679         (WebView::takeStringURLFrom):
1680         (WebView::stopLoading):
1681         (WebView::reload):
1682         (WebView::canGoBack):
1683         (WebView::canGoForward):
1684         (WebView::canMakeTextLarger):
1685         (WebView::makeTextLarger):
1686         (WebView::canMakeTextSmaller):
1687         (WebView::makeTextSmaller):
1688         (WebView::computedStyleForElement):
1689         (WebView::editableDOMRangeForPoint):
1690         (WebView::setSelectedDOMRange):
1691         (WebView::selectedDOMRange):
1692         (WebView::selectionAffinity):
1693         (WebView::setEditable):
1694         (WebView::isEditable):
1695         (WebView::setTypingStyle):
1696         (WebView::typingStyle):
1697         (WebView::setSmartInsertDeleteEnabled):
1698         (WebView::smartInsertDeleteEnabled):
1699         (WebView::setContinuousSpellCheckingEnabled):
1700         (WebView::isContinuousSpellCheckingEnabled):
1701         (WebView::spellCheckerDocumentTag):
1702         (WebView::undoManager):
1703         (WebView::setEditingDelegate):
1704         (WebView::editingDelegate):
1705         (WebView::styleDeclarationWithText):
1706         (WebView::replaceSelectionWithNode):
1707         (WebView::replaceSelectionWithText):
1708         (WebView::replaceSelectionWithMarkupString):
1709         (WebView::replaceSelectionWithArchive):
1710         (WebView::deleteSelection):
1711         (WebView::applyStyle):
1712         (WebView::copy):
1713         (WebView::cut):
1714         (WebView::paste):
1715         (WebView::copyFont):
1716         (WebView::pasteFont):
1717         (WebView::delete_):
1718         (WebView::pasteAsPlainText):
1719         (WebView::pasteAsRichText):
1720         (WebView::changeFont):
1721         (WebView::changeAttributes):
1722         (WebView::changeDocumentBackgroundColor):
1723         (WebView::changeColor):
1724         (WebView::alignCenter):
1725         (WebView::alignJustified):
1726         (WebView::alignLeft):
1727         (WebView::alignRight):
1728         (WebView::checkSpelling):
1729         (WebView::showGuessPanel):
1730         (WebView::performFindPanelAction):
1731         (WebView::startSpeaking):
1732         (WebView::stopSpeaking):
1733         (WebView::viewWindow):
1734         * COM/WebView.h: Added.
1735         * WebKit.vcproj: Added.
1736         * WebKit.vcproj/Interfaces.vcproj: Added.
1737         * WebKit.vcproj/WebKit.def: Added.
1738         * WebKit.vcproj/WebKit.rc: Added.
1739         * WebKit.vcproj/WebKit.sln: Added.
1740         * WebKit.vcproj/WebKit.vcproj: Added.
1741         * WebKit.vcproj/WebKitGUID.vcproj: Added.
1742         * WebKit.vcproj/autoversion.h: Added.
1743         * WebKit.vcproj/resource.h: Added.
1744
1745 2006-06-02  Darin Adler  <darin@apple.com>
1746
1747         * WebCoreSupport/WebImageRendererFactory.m: Fix crash on Safari startup
1748         by include NSObject as a superclass (oops!).
1749
1750 2006-06-01  Darin Adler  <darin@apple.com>
1751
1752         Reviewed by Maciej.
1753
1754         - WebCore doesn't need to load WebKit images any more; removed code for that
1755
1756         * Resources/missing_image.tiff: Removed.
1757         * WebCoreSupport/WebImageRendererFactory.h: Removed.
1758
1759         * WebCoreSupport/WebImageRendererFactory.m: Moved @interface in here.
1760         Removed all but the "threaded decoding" calls that older Safari calls.
1761         This file can go altogether when compatibility with that older Safari
1762         is no longer needed.
1763
1764         * WebKit.xcodeproj/project.pbxproj: Removed WebImageRendererFactory.h
1765         and missing_image.tiff.
1766
1767         * WebView/WebFrameView.m: (-[WebFrameView initWithFrame:]): Removed call
1768         to [WebImageRendererFactory createSharedFactory].
1769
1770 2006-06-01  Brady Eidson  <beidson@apple.com>
1771
1772         Reviewed by Maciej.
1773
1774         Simple changes to hook up the new WebCore based Icon Database
1775         for testing.
1776
1777         * ChangeLog:
1778         * Misc/WebIconDatabase.m:
1779         (-[WebIconDatabase _applicationWillTerminate:]):
1780         * Misc/WebIconDatabasePrivate.h:
1781         * WebKit.xcodeproj/project.pbxproj:
1782
1783 2006-06-01  Anders Carlsson  <acarlsson@apple.com>
1784
1785         Reviewed by Darin.
1786
1787         http://bugzilla.opendarwin.org/show_bug.cgi?id=6309
1788         multiple problems prevent bookmarking/back button technique for AJAX/DHTML applications from working
1789
1790         * Misc/WebNSURLExtras.m:
1791         (-[NSString _webkit_URLFragment]):
1792         Don't include the "#" character in the fragment.
1793         
1794         * WebCoreSupport/WebFrameBridge.m:
1795         (-[WebFrameBridge historyURL:]):
1796         New function, returns the history URL for a given position in the back/forward list
1797         
1798         * WebView/WebFrame.m:
1799         (-[WebFrame _loadItem:withLoadType:]):
1800         Always call scrollToAnchorWithURL, even if there is no fragment. This way we keep the WebCore frame's
1801         URL up-to-date.
1802
1803 2006-06-01  Maciej Stachowiak  <mjs@apple.com>
1804
1805         Reviewed by Anders.
1806         
1807         - fixed "REGRESSION: Can't order from Pizza Hut (ToT, 05/24/06)"
1808         http://bugzilla.opendarwin.org/show_bug.cgi?id=9103
1809
1810         * WebView/WebDataSource.m:
1811         (-[WebDataSource _willSendRequest:forResource:redirectResponse:]): Set up the
1812         User-Agent header.
1813         * WebView/WebDataSourceInternal.h:
1814         * WebView/WebLoader.m:
1815         (-[NSURLProtocol willSendRequest:redirectResponse:]): Pass a mutable URL request
1816         so the above can work.
1817
1818 2006-06-01  Anders Carlsson  <acarlsson@apple.com>
1819
1820         Reviewed by Darin.
1821
1822         * WebView/WebFrameView.m:
1823         (+[WebFrameView _canShowMIMETypeAsHTML:]):
1824         Use _webkit_objectForMIMEType here so we'll get an object back for "text/".
1825
1826 2006-05-31  David Hyatt  <hyatt@apple.com>
1827
1828         Make programmatic focus/blur actually work on sub-frames.  Make the
1829         top-level UI delegate get called for deactivation of windows.
1830
1831         Reviewed by darin
1832
1833         * WebCoreSupport/WebFrameBridge.m:
1834         (-[WebFrameBridge activateWindow]):
1835         (-[WebFrameBridge deactivateWindow]):
1836         (-[WebFrameBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]):
1837         (-[WebFrameBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
1838         * WebKit.xcodeproj/project.pbxproj:
1839
1840 === WebKit-521.12 ===
1841
1842 2006-05-26  David Harrison  <harrison@apple.com>
1843
1844         Reviewed by John Sullivan.
1845
1846         <rdar://problem/4514529> Add a list type parameter and a return value to _increaseSelectionListLevel
1847
1848         * WebView/WebHTMLView.m:
1849         (-[WebHTMLView _increaseSelectionListLevel]):
1850         - Now returns DOMNode*
1851
1852         (-[WebHTMLView _increaseSelectionListLevelOrdered]):
1853         (-[WebHTMLView _increaseSelectionListLevelUnordered]):
1854         - Added.  These also return DOMNode*
1855
1856         * WebView/WebHTMLViewPrivate.h:
1857         - Updated as above
1858
1859 2006-05-25  Tim Omernick  <timo@apple.com>
1860
1861         Reviewed by Anders.
1862
1863         <http://bugzilla.opendarwin.org/show_bug.cgi?id=8347>
1864         REGRESSION: Flash movie audible but not visible until window is resized
1865
1866         * Plugins/WebNetscapePluginDocumentView.m:
1867         (-[WebNetscapePluginDocumentView dataSourceUpdated:]):
1868         Layout if needed here.  Maciej recently removed the "LayoutAcceptable" frame state, which used to
1869         cause plugin document views to lay out immediately upon receiving data.  This call to -layout has
1870         the same effect.
1871
1872 === WebKit-521.11.1 ===
1873
1874 2006-05-25  Timothy Hatcher  <timothy@apple.com>
1875
1876         Reviewed by Tim O.
1877
1878         <rdar://problem/4559808> WebKit fails to compile for ppc64
1879         <rdar://problem/4522085> 64-bit: WebKit uses FSSpec which is not available in 64-bit
1880         Gets WebKit building under 64-bit. Rename WebNSInt and WebNSUInt to WebNSInteger and WebNSUInteger.
1881         Start using WebNSInteger where we need to match AppKit API usage of NSInteger.
1882
1883         HIWebView and a couple of helper functions are disabled until they can be moved off of QuickDraw.
1884         <rdar://problem/4561772> HIWebView needs to be reworked to not use QuickDraw, needed for 64-bit
1885
1886         * Carbon/CarbonUtils.m: disabled this file in 64-bit <rdar://problem/4561772>
1887         * Carbon/CarbonWindowAdapter.m:
1888         (-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:disableOrdering:carbon:]):
1889         * Carbon/CarbonWindowFrame.m:
1890         (+[CarbonWindowFrame frameRectForContentRect:styleMask:]):
1891         (+[CarbonWindowFrame contentRectForFrameRect:styleMask:]):
1892         (+[CarbonWindowFrame minFrameSizeForMinContentSize:styleMask:]):
1893         (-[CarbonWindowFrame frameRectForContentRect:styleMask:]):
1894         (-[CarbonWindowFrame contentRectForFrameRect:styleMask:]):
1895         (-[CarbonWindowFrame minFrameSizeForMinContentSize:styleMask:]):
1896         * Carbon/HIViewAdapter.m: disabled this file in 64-bit <rdar://problem/4561772>
1897         * Carbon/HIWebView.m: disabled this file in 64-bit <rdar://problem/4561772>
1898         (HIWebViewEventHandler):
1899         * DefaultDelegates/WebDefaultResourceLoadDelegate.m:
1900         (-[WebDefaultResourceLoadDelegate webView:resource:didReceiveContentLength:fromDataSource:]):
1901         * History/WebBackForwardList.m:
1902         (-[WebBackForwardList removeItem:]):
1903         (-[WebBackForwardList goToItem:]):
1904         * Misc/WebDownload.m:
1905         (-[WebDownloadInternal download:didReceiveDataOfLength:]):
1906         * Misc/WebFileDatabase.m:
1907         (UniqueFilePathForKey):
1908         * Misc/WebIconDatabase.m:
1909         (-[NSMutableDictionary retainIconForURL:]):
1910         (-[NSMutableDictionary releaseIconForURL:]):
1911         (-[WebIconDatabase _totalRetainCountForIconURLString:]):
1912         (-[WebIconDatabase _retainIconForIconURLString:]):
1913         (-[WebIconDatabase _releaseIconForIconURLString:]):
1914         * Misc/WebSearchableTextView.m:
1915         (-[NSString selectionRect]):
1916         * Misc/WebTypesInternal.h: Added.
1917         * Plugins/WebBaseNetscapePluginStream.m:
1918         (-[WebBaseNetscapePluginStream _destroyStream]):
1919         (CarbonPathFromPOSIXPath):
1920         * Plugins/WebBaseNetscapePluginView.m:
1921         (-[WebBaseNetscapePluginView sendActivateEvent:]):
1922         (-[WebBaseNetscapePluginView sendUpdateEvent]):
1923         (TSMEventHandler):
1924         (-[WebBaseNetscapePluginView _postURL:target:len:buf:file:notifyData:sendNotification:allowHeaders:]):
1925         (-[WebBaseNetscapePluginView _printedPluginBitmap]):
1926         (-[NSData _web_locationAfterFirstBlankLine]):
1927         * Plugins/WebBasePluginPackage.m:
1928         (-[WebBasePluginPackage hash]):
1929         * Plugins/WebNetscapePluginPackage.m:
1930         (-[WebNetscapePluginPackage load]):
1931         (functionPointerForTVector):
1932         * WebInspector/WebInspector.m:
1933         (-[WebInspector _updateSystemColors]):
1934         * WebKit.xcodeproj/project.pbxproj:
1935         * WebView/WebDataSource.m:
1936         (-[WebDataSource _didReceiveData:contentLength:forResource:]):
1937         * WebView/WebFrame.m:
1938         (-[WebFrame _sendRemainingDelegateMessagesWithIdentifier:response:length:error:]):
1939         * WebView/WebHTMLView.m:
1940         (-[NSArray drawRect:]):
1941         (-[WebHTMLView characterIndexForPoint:]):
1942         (-[WebHTMLView conversationIdentifier]):
1943         * WebView/WebResourceLoadDelegate.h:
1944         * WebView/WebUIDelegate.h:
1945         * WebView/WebView.h:
1946         * WebView/WebView.m:
1947         (-[WebView _mouseDidMoveOverElement:modifierFlags:]):
1948         (-[WebView spellCheckerDocumentTag]):
1949         * WebView/WebViewInternal.h:
1950         * WebView/WebViewPrivate.h:
1951
1952 === WebKit-521.11 ===
1953
1954 2006-05-23  Maciej Stachowiak  <mjs@apple.com>
1955
1956         Reviewed by Tim.
1957         
1958         - more loader refactoring to simplify things and remove knowledge of WebView from WebSubresourceLoader
1959
1960         * WebCoreSupport/WebSubresourceLoader.m:
1961         (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]):
1962         (-[WebSubresourceLoader didReceiveResponse:]):
1963         * WebView/WebDataSource.m:
1964         (-[WebDataSource _loadIcon]):
1965         (-[WebDataSource _startLoading]):
1966         * WebView/WebFrame.m:
1967         (-[WebFrame _loadRequest:archive:]):
1968         (-[WebFrame _loadItem:withLoadType:]):
1969         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
1970         (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
1971         (-[WebFrame _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]):
1972         * WebView/WebFrameInternal.h:
1973         * WebView/WebFramePrivate.h:
1974         * WebView/WebLoader.h:
1975         * WebView/WebLoader.m:
1976         * WebView/WebMainResourceLoader.m:
1977         (-[WebMainResourceLoader initWithDataSource:]):
1978         (-[WebMainResourceLoader didReceiveResponse:]):
1979
1980 2006-05-23  Tim Omernick  <timo@apple.com>
1981
1982         Reviewed by John Sullivan.
1983
1984         <rdar://problem/4558301> REGRESSION (420+): After clearing history and closing bookmark view window,
1985         attempting to select Safari's menu bar results in a crash
1986
1987         * Misc/WebNSWindowExtras.m:
1988         (replacementPostWindowNeedsDisplay):
1989         My fix yesterday for 4557117 was not quite good enough.  Now that we cancel the display timer for a
1990         window *before* it deallocates, we need to make sure that while a window deallocates, no new display
1991         timers are scheduled for that window.  This is actually possible, as 4558301 demonstrates.
1992         Luckily, NSWindow sets a handy "windowDying" flag when it deallocates, so we can just check that flag
1993         and bail out of the throttle hack if it is set.  This should fix the last of the crashes involving
1994         display timers scheduled for deallocated or deallocating windows.
1995
1996 2006-05-23  Maciej Stachowiak  <mjs@apple.com>
1997
1998         Reviewed by Eric.
1999         
2000         - remove knowledge of WebView from WebLoader in preparation for moving the code down
2001
2002         * WebView/WebDataSource.m:
2003         (-[WebDataSource _defersCallbacks]):
2004         (-[WebDataSource _identifierForInitialRequest:]):
2005         (-[WebDataSource _willSendRequest:forResource:redirectResponse:]):
2006         (-[WebDataSource _didReceiveAuthenticationChallenge:forResource:]):
2007         (-[WebDataSource _didCancelAuthenticationChallenge:forResource:]):
2008         (-[WebDataSource _didReceiveResponse:forResource:]):
2009         (-[WebDataSource _didReceiveData:contentLength:forResource:]):
2010         (-[WebDataSource _didFinishLoadingForResource:]):
2011         (-[WebDataSource _didFailLoadingWithError:forResource:]):
2012         (-[WebDataSource _downloadWithLoadingConnection:request:response:proxy:]):
2013         (-[WebDataSource _privateBrowsingEnabled]):
2014         * WebView/WebDataSourceInternal.h:
2015         * WebView/WebLoader.h:
2016         * WebView/WebLoader.m:
2017         (-[WebLoader releaseResources]):
2018         (-[WebLoader setDataSource:]):
2019         (-[WebLoader willSendRequest:redirectResponse:]):
2020         (-[WebLoader didReceiveAuthenticationChallenge:]):
2021         (-[WebLoader didCancelAuthenticationChallenge:]):
2022         (-[WebLoader didReceiveResponse:]):
2023         (-[WebLoader didReceiveData:lengthReceived:]):
2024         (-[WebLoader signalFinish]):
2025         (-[WebLoader didFinishLoading]):
2026         (-[WebLoader didFailWithError:]):
2027         (-[WebLoader willCacheResponse:]):
2028         (-[WebLoader cancelWithError:]):
2029         * WebView/WebMainResourceLoader.m:
2030         (-[WebMainResourceLoader continueAfterContentPolicy:response:]):
2031         * WebView/WebView.m:
2032         (-[WebView _incrementProgressForIdentifier:response:]):
2033         (-[WebView _incrementProgressForIdentifier:data:]):
2034         (-[WebView _completeProgressForIdentifier:]):
2035         * WebView/WebViewInternal.h:
2036
2037 === WebKit-521.10 ===
2038
2039 2006-05-22  Tim Omernick  <timo@apple.com>
2040
2041         Reviewed by Geoff.
2042
2043         <rdar://problem/4557117> TOT REGRESSION: Repro crash in cancelPendingWindowDisplay --> _timerRelease when
2044         opening file from file open dialog
2045
2046         Note that I could not reproduce this situation at all on any of my machines; I had to debug this on Geoff's
2047         machine.
2048
2049         * Misc/WebNSWindowExtras.m:
2050         (replacementDealloc):
2051         Cancel display timer before dealloc, not after.  Cancelling the timer can cause a message to be sent to the
2052         window; best to do that before the window deallocates.
2053         (replacementFinalize):
2054         ditto
2055
2056 2006-05-20  Maciej Stachowiak  <mjs@apple.com>
2057
2058         Reviewed by Beth.
2059         
2060         - fix assertion failure on layout tests
2061
2062         * WebView/WebDataSource.m:
2063         (-[WebDataSource _mainReceivedError:complete:]): Don't do anything
2064         if this data source is no longer connected to a frame. Used to be
2065         this couldn't happen because the WebView would have been nil, but
2066         we no longer go through the WebView.
2067
2068 2006-05-20  Timothy Hatcher  <timothy@apple.com>
2069
2070         Reviewed by Anders.
2071
2072         Bug 9018: REGRESSION: resizing the top area of the inspector does not grow as expected
2073         http://bugzilla.opendarwin.org/show_bug.cgi?id=9018
2074         
2075         Use clientHeight now that offsetHeight includes the border and padding.
2076         clientHeight should have been used initially.
2077
2078         * WebInspector/WebInspector.m:
2079         (-[WebInspector resizeTopArea]):
2080
2081 2006-05-18  Maciej Stachowiak  <mjs@apple.com>
2082
2083         Reviewed by Eric.
2084         
2085         - remove loading-related code from WebView
2086         http://bugzilla.opendarwin.org/show_bug.cgi?id=8981
2087
2088         * Plugins/WebNetscapePluginStream.m:
2089         (-[WebNetscapePlugInStreamLoader didFinishLoading]):
2090         (-[WebNetscapePlugInStreamLoader didFailWithError:]):
2091         * WebCoreSupport/WebSubresourceLoader.m:
2092         (-[WebSubresourceLoader receivedError:]):
2093         (-[WebSubresourceLoader signalFinish]):
2094         * WebView/WebDataSource.m:
2095         (-[WebDataSource _stopLoading]):
2096         (-[WebDataSource _receivedMainResourceError:complete:]):
2097         (-[WebDataSource _finishedLoadingResource]):
2098         (-[WebDataSource _mainReceivedBytesSoFar:complete:]):
2099         (-[WebDataSource _receivedError:]):
2100         (-[WebDataSource _mainReceivedError:complete:]):
2101         * WebView/WebDataSourceInternal.h:
2102         * WebView/WebFrame.m:
2103         (-[WebFrame _sendRemainingDelegateMessagesWithIdentifier:response:length:error:]):
2104         * WebView/WebMainResourceLoader.m:
2105         (-[WebMainResourceLoader didReceiveData:lengthReceived:]):
2106         (-[WebMainResourceLoader didFinishLoading]):
2107         * WebView/WebView.m:
2108         * WebView/WebViewInternal.h:
2109
2110 2006-05-18  Tim Omernick  <timo@apple.com>
2111
2112         Reviewed by John Sullivan.
2113
2114         <rdar://problem/4551938> More options needed for window display throttle
2115
2116         We decided to play it safe and leave our window flushing behavior unchanged from the previous
2117         public release.  By default, CoreGraphics deferred updates are once again OFF, and the window
2118         display throttle is OFF.
2119
2120         Individual applications should set the WebKitThrottleWindowDisplayPreferenceKey and 
2121         WebKitEnableDeferredUpdatesPreferenceKey defaults to suit their needs.
2122
2123         Old behavior (like 10.4.6): WebKitThrottleWindowDisplayPreferenceKey=0 (or unset), 
2124         WebKitEnableDeferredUpdatesPreferenceKey (or unset).
2125
2126         Tear-free scrolling/animations: WebKitThrottleWindowDisplayPreferenceKey=0 (or unset),
2127         WebKitEnableDeferredUpdatesPreferenceKey=1.  While this configuration fixes the tearing issues
2128         caused by over-flushing, some applications will experience performance problems as over-flushing
2129         with CG deferred updates enabled will cause the app to block.
2130
2131         Tear-free scrolling/animations, high performance: WebKitThrottleWindowDisplayPreferenceKey=1, 
2132         WebKitEnableDeferredUpdatesPreferenceKey=1.  This is the riskiest configuration in that it
2133         enables the window display throttle "feature", potentially breaking applications' assumptions
2134         about when displays occur.  However, it provides the "best of both worlds", in that updates
2135         are tear-free, and performance impact should me minimal.
2136
2137         * WebView/WebPreferenceKeysPrivate.h:
2138         Declared WebKitThrottleWindowDisplayPreferenceKey and WebKitEnableDeferredUpdatesPreferenceKey.
2139
2140         * WebView/WebFrameView.m:
2141         (-[WebFrameView initWithFrame:]):
2142         Turn off CG deferred updates if WebKitEnableDeferredUpdatesPreferenceKey is NO or has no value.
2143         Added some comments.
2144
2145 2006-05-18  John Sullivan  <sullivan@apple.com>
2146
2147         Reviewed by Darin Adler.
2148         
2149         - fixed <rdar://problem/4552713> REGRESSION: WebFrameView no longer responds to responder methods sent by Safari code
2150
2151         * WebView/WebView.m:
2152         (-[WebView _responderForResponderOperations]):
2153         Treat sibling views of the main frameView the same as views outside of the webview for the purposes of this mechanism.
2154
2155 2006-05-18  Tim Omernick  <timo@apple.com>
2156
2157         Reviewed by John Sullivan.
2158
2159         <rdar://problem/4553450> Make disabling window throttle safer
2160
2161         * Misc/WebNSWindowExtras.m:
2162         (+[NSWindow _webkit_enableWindowDisplayThrottle]):
2163         Don't assume that +_webkit_disableWindowDisplayThrottle restored the NSWindow method implementations; 
2164         now we'll only swizzle them once, and our replacement IMPs will call the old IMPs when the window
2165         throttle is disabled.  This is a safer approach when other components/"haxies" override the same methods
2166         that we are overriding, as it allows the overrides to "chain" properly.
2167         Moved the dictionary initialization code down a bit.  The order doesn't matter here.
2168         (disableWindowDisplayThrottleApplierFunction):
2169         Noticed that this could have been written safer with respect to the timer having the last reference to
2170         the window.  I never experienced a crash here, but this code is definitely safer.
2171         (+[NSWindow _webkit_disableWindowDisplayThrottle]):
2172         Don't restore NSWindow method implementations; just clear the flag, flush pending displays, and destroy
2173         the dictionary.
2174         (replacementPostWindowNeedsDisplay):
2175         If throttling is disabled, just call the original IMP.
2176         (clearWindowDisplayInfo):
2177         Added an assert.
2178         (replacementDealloc):
2179         Don't call clearWindowDisplayInfo() when throttling is disabled.
2180         (replacementFinalize):
2181         ditto
2182         (cancelPendingWindowDisplay):
2183         Removed an unnecessary assertion.
2184
2185 2006-05-17  Tim Omernick  <timo@apple.com>
2186
2187         Reviewed by Kevin Decker and John Sullivan.
2188
2189         <rdar://problem/4550801> REGRESSION: Window throttle code can sometimes leak NSWindows
2190
2191         The window display throttle depended on windows being closed before they were deallocated; this is
2192         not guaranteed by AppKit.  Windows that were being released without being closed were getting stuck
2193         in our NSWindow -> WindowDisplayInfo dictionary.
2194         
2195         * Misc/WebNSWindowExtras.m:
2196         (+[NSWindow _webkit_enableWindowDisplayThrottle]):
2197         Don't retain the NSWindow keys in the window display info dictionary.
2198         Instead of overriding -close, override -dealloc and -finalize so that we can remove the NSWindow ->
2199         WindowDisplayInfo mapping when a window deallocates.
2200         (+[NSWindow _webkit_disableWindowDisplayThrottle]):
2201         Restore -dealloc and -finalize.
2202         (clearWindowDisplayInfo):
2203         Factored the WindowDisplayInfo cleanup code out of the now-defunct replacementClose().
2204         (replacementClose):
2205         Removed; no longer needed.
2206         (replacementDealloc):
2207         Clear the WindowDisplayInfo for the window after deallocation.
2208         (replacementFinalize):
2209         ditto
2210         (-[NSWindow _webkit_doPendingPostWindowNeedsDisplay:]):
2211         Rewrote this method to be safe in the case where the firing display timer has the last reference to the
2212         window.
2213         Added comments.
2214         
2215 2006-05-17  bradeeoh  <beidson@apple.com>
2216
2217         Reviewed by Tim Hatcher
2218
2219         Consolidated WebDatabase base class into WebFileDatabase as the inheritance relationship became 
2220         obsolete.  This improves readability and sets the stage for a further in-depth rewrite of the 
2221         WebIcon* code.
2222
2223         * Misc/WebDatabase.h: Removed.
2224         * Misc/WebDatabase.m: Removed.
2225         * Misc/WebFileDatabase.h:
2226         * Misc/WebFileDatabase.m:
2227         (-[WebFileDatabaseOp dealloc]): 
2228         (-[WebFileDatabase dealloc]):  
2229         (-[WebFileDatabase path]):
2230         (-[WebFileDatabase isOpen]):
2231         (-[WebFileDatabase sizeLimit]):
2232         * WebKit.xcodeproj/project.pbxproj:
2233
2234 2006-05-17  Adele Peterson  <adele@apple.com>
2235
2236         Reviewed by Hyatt.
2237
2238         WebKit part of initial checkin to prepare for http://bugzilla.opendarwin.org/show_bug.cgi?id=8948
2239         Switch to use new text field implementation for <textarea>
2240
2241         * WebView/WebHTMLView.m:
2242         (-[NSArray insertNewline:]): If we're in plain text mode, insert a line break instead of a paragraph separator.
2243         (-[NSArray insertParagraphSeparator:]): ditto.
2244         * WebView/WebView.m: (-[WebView _menuForElement:defaultItems:]):
2245         Checks for textareas as well as textfields before allowing the delegate to control
2246         the context menu.  This won't affect the old textareas because AppKit handles those context menus.
2247
2248 2006-05-17  John Sullivan  <sullivan@apple.com>
2249
2250         Reviewed by Maciej.
2251
2252         First step towards making text-matching mechanism more flexible; updated for changes
2253         to WebCoreFrameBridge calls.
2254
2255         * WebView/WebHTMLView.m:
2256         (-[WebHTMLView highlightAllMatchesForString:caseSensitive:]):
2257         updated for name change in WebCoreFrameBridge, also now calls setMarkedTextMatchesAreHighlighted:
2258         (-[WebHTMLView clearHighlightedMatches]):
2259         updated for name change in WebCoreFrameBridge
2260
2261 2006-05-16  Matt Gough  <matt@softchaos.com>
2262
2263         Reviewed by Geoff.
2264         
2265         Ensured all the public headers have a newline at their end.
2266
2267         Client code can now have 'Missing Newline at end of File' warnings enabled without emitting
2268         such warnings against any WebKit includes.
2269
2270         * Misc/WebDownload.h:
2271         * Plugins/npfunctions.h:
2272         * WebView/WebResourceLoadDelegate.h:
2273         * WebView/WebUIDelegate.h:
2274         * WebView/WebView.h:
2275
2276 2006-05-16  Tim Omernick  <timo@apple.com>
2277
2278         Reviewed by Tim Hatcher.
2279
2280         http://bugzilla.opendarwin.org/show_bug.cgi?id=8945 (REGRESSION: Scrolling is very slow when dragging
2281         the thumb)
2282
2283         Rolled out one of my tweaks to the window display throttle hack (remember the last flush time instead
2284         of the last display time).  While that was technically a better approach, we discovered a problem
2285         with how it interacts with NSView scroll tracking.  Rather than further complicate this already
2286         crazy hack, I'm reverting back to the simple version.  This should yield similar numbers on iBench,
2287         but not exhibit the nasty scrolling problem.
2288         
2289         * Misc/WebNSWindowExtras.m:
2290         (+[NSWindow _webkit_enableWindowDisplayThrottle]):
2291         (+[NSWindow _webkit_disableWindowDisplayThrottle]):
2292         (getWindowDisplayInfo):
2293         (requestWindowDisplay):
2294
2295 2006-05-16  bradeeoh  <beidson@apple.com>
2296
2297         Reviewed by Maciej Stachowiak
2298
2299         - Fixed an old deprecated method in Misc/WebFileDatabase.m
2300
2301         * Misc/WebFileDatabase.m:
2302         (UniqueFilePathForKey):  changed `lossyCString` to `UTF8String`
2303
2304 2006-05-16  Darin Adler  <darin@apple.com>
2305
2306         Reviewed by Anders.
2307
2308         - did the name change from "ImageElement" to "ImageForElement" that I said I would
2309           (oops!)
2310
2311         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
2312         (-[WebDefaultUIDelegate copyImageToClipboard:]):
2313         * Misc/WebNSPasteboardExtras.h:
2314         * Misc/WebNSPasteboardExtras.m:
2315         (-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]):
2316         * Misc/WebNSViewExtras.h:
2317         * Misc/WebNSViewExtras.m:
2318         (-[NSView _web_DragImageForElement:rect:event:pasteboard:source:offset:]):
2319         * WebView/WebHTMLView.m:
2320         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
2321         * WebView/WebView.m:
2322         (-[WebView _writeImageForElement:withPasteboardTypes:toPasteboard:]):
2323         (-[WebView writeElement:withPasteboardTypes:toPasteboard:]):
2324         * WebView/WebViewInternal.h:
2325
2326 2006-05-16  Darin Adler  <darin@apple.com>
2327
2328         Reviewed by Anders.
2329
2330         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8940
2331           remove extra copy of image code
2332
2333         * English.lproj/StringsNotToBeLocalized.txt: Updated for many recent changes.
2334
2335         * WebKit.xcodeproj/project.pbxproj: Removed files.
2336         * WebCoreSupport/WebImageData.h: Removed.
2337         * WebCoreSupport/WebImageData.m: Removed.
2338         * WebCoreSupport/WebImageDecodeItem.h: Removed.
2339         * WebCoreSupport/WebImageDecodeItem.m: Removed.
2340         * WebCoreSupport/WebImageDecoder.h: Removed.
2341         * WebCoreSupport/WebImageDecoder.m: Removed.
2342         * WebCoreSupport/WebImageRenderer.h: Removed.
2343         * WebCoreSupport/WebImageRenderer.m: Removed.
2344
2345         * WebCoreSupport/WebImageRendererFactory.h:
2346         * WebCoreSupport/WebImageRendererFactory.m: Removed everything except for
2347         shouldUseThreadedDecoding, setShouldUseThreadedDecoding, and imageDataForName:.
2348
2349         * Misc/WebNSPasteboardExtras.h: Removed WebImageRenderer parameter from
2350         _web_declareAndWriteDragImage and renamed _web_declareAndWriteDragImageElement.
2351         * Misc/WebNSPasteboardExtras.m:
2352         (-[NSPasteboard _web_writeImage:element:URL:title:archive:types:]): Changed to
2353         call +[WebFrameBridge supportedImageResourceMIMETypes] instead of
2354         -[WebImageRendererFactory supportedMIMETypes].
2355         (-[NSPasteboard _web_declareAndWriteDragImageElement:URL:title:archive:source:]):
2356         Removed WebImageRenderer parameter, and updated code since it was always nil.
2357
2358         * Misc/WebNSViewExtras.h: Removed WebImageRenderer parameter from
2359         _web_dragImage and renamed _web_dragImageElement.
2360         * Misc/WebNSViewExtras.m:
2361         (-[NSView _web_dragImageElement:rect:event:pasteboard:source:offset:]):
2362         Removed WebImageRenderer parameter, and updated code since it was always nil.
2363
2364         * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Added some new
2365         functions now used by WebCore.
2366
2367         * WebView/WebDataSource.m: (-[WebDataSource _documentFragmentWithArchive:]):
2368         Call +[WebFrameBridge supportedImageResourceMIMETypes] instead of
2369         -[WebImageRendererFactory supportedMIMETypes].
2370
2371         * WebView/WebFrameView.m: Removed include of WebImageRenderer.h.
2372
2373         * WebView/WebHTMLRepresentation.m: (+[WebHTMLRepresentation supportedImageMIMETypes]):
2374         Removed call to +[WebImageRendererFactory createSharedFactory].
2375
2376         * WebView/WebHTMLView.m:
2377         (-[WebHTMLView _imageExistsAtPaths:]): Call +[WebFrameBridge supportedImageResourceMIMETypes]
2378         instead of -[WebImageRendererFactory supportedMIMETypes].
2379         (-[WebHTMLView _documentFragmentWithPaths:]): Ditto.
2380         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): Update
2381         to no longer pass nil for an image to _web_declareAndWriteDragImageElement and to
2382         _web_dragImageElement.
2383         (-[WebHTMLView dealloc]): Remove call to now-unneeded _reset.
2384         (-[WebHTMLView finalize]): Ditto.
2385         (-[WebHTMLView viewDidMoveToWindow]): Remove logic for calling _reset, including the inWindow
2386         boolean field.
2387
2388         * WebView/WebHTMLViewInternal.h: Removed inWindow boolean.
2389         * WebView/WebHTMLViewPrivate.h: Removed _reset method.
2390
2391 2006-05-16  Darin Adler  <darin@apple.com>
2392
2393         Reviewed by Hyatt.
2394
2395         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8898
2396           REGRESSION: Attempting to right-click image in own tab on website causes crash
2397         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8919
2398           REGRESSION: image could not be dragged, subsequent click-drag activity caused crash
2399
2400         These fixes may become obsolete when Anders lands his standalone image viewer
2401         patch, but in my tree they are needed to make Copy Image work after the fix
2402         over on the WebCore side to avoid the crashes.
2403
2404         * Misc/WebNSPasteboardExtras.h: Change _web_writeImage parameter to an NSImage.
2405         * Misc/WebNSPasteboardExtras.m:
2406         (-[NSPasteboard _web_writeImage:element:URL:title:archive:types:]): Change parameter
2407         to an NSImage instead of a WebImageRenderer.
2408         (-[NSPasteboard _web_declareAndWriteDragImage:element:URL:title:archive:source:]):
2409         Call -[WebImageRenderer image] to get an NSImage to pass to _web_writeImage.
2410
2411         * WebView/WebView.m: (-[WebView _writeImageElement:withPasteboardTypes:toPasteboard:]):
2412         Get the image using WebElementImageKey if WebElementDOMNodeKey is nil.
2413
2414 2006-05-16  Anders Carlsson  <acarlsson@apple.com>
2415
2416         Reviewed by Maciej.
2417
2418         http://bugzilla.opendarwin.org/show_bug.cgi?id=8921
2419         Use WebCore to render full-frame images
2420         
2421         * WebCoreSupport/WebFrameBridge.m:
2422         (-[WebFrameBridge determineObjectFromMIMEType:URL:]):
2423         Remove WebImageView handling.
2424         
2425         (-[WebFrameBridge mainResourceURLResponse]):
2426         New function which returns the URL response for the main resource. This is used by the
2427         manual loading of images.
2428         
2429         (-[WebFrameBridge imageTitleForFilename:size:]):
2430         New function which returns a correctly translated image title given a filename and a size.
2431         
2432         * WebCoreSupport/WebImageRenderer.m:
2433         (-[WebImageRenderer _startOrContinueAnimationIfNecessary]):
2434         Remove WebImageView handling.
2435         
2436         * WebKit.xcodeproj/project.pbxproj:
2437         Remove WebImageRepresentation and WebImageView.
2438         
2439         * WebView/WebArchiver.h:
2440         * WebView/WebArchiver.m:
2441         (+[WebArchiver archiveMainResourceForFrame:]):
2442         New functions which returns a WebArchive with just the main resource, ignoring any subresources.
2443         
2444         * WebView/WebDataSource.m:
2445         (+[WebDataSource _repTypesAllowImageTypeOmission:]):
2446         Use MIME types from WebHTMLRepresentation instead of WebImageRepresentation.
2447         
2448         * WebView/WebFrameView.m:
2449         (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
2450         Use MIME types from WebHTMLRepresentation instead of WebImageRepresentation.
2451         
2452         (+[WebHTMLRepresentation supportedMIMETypes]):
2453         Create an array of image and non-image MIME Types.
2454         
2455         (+[WebHTMLRepresentation supportedNonImageMIMETypes]):
2456         (+[WebHTMLRepresentation supportedImageMIMETypes]):
2457         New functions, separating the list of MIME types into image and non-image ones.
2458         
2459         * WebView/WebHTMLView.m:
2460         (+[WebHTMLView supportedImageMIMETypes]):
2461         (+[WebHTMLView supportedNonImageMIMETypes]):
2462         New functions which call down to WebHTMLRepresentation.
2463         
2464         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
2465         If the image element comes from an ImageDocument, just use an archive of the main resource
2466         instead of the generated HTML document.
2467         
2468         * WebView/WebHTMLViewPrivate.h:
2469         Declare new functions.
2470         
2471         * WebView/WebImageRepresentation.h: Removed.
2472         * WebView/WebImageRepresentation.m: Removed.
2473         * WebView/WebImageView.h: Removed.
2474         * WebView/WebImageView.m: Removed.
2475         
2476 2006-05-15  Tim Omernick  <timo@apple.com>
2477
2478         Reviewed by John Sullivan.
2479
2480         Part of <rdar://problem/4466508> Add 64-bit support to the Netscape Plugin API
2481
2482         Added to the Netscape Plugin API the concept of "plugin drawing models".  The drawing model
2483         determines the kind of graphics context created by the browser for the plugin, as well as 
2484         the Mac types of various Netscape Plugin API data structures.
2485
2486         There is a drawing model to represent the old QuickDraw-based API.  It is used by default
2487         if QuickDraw is available on the system, unless the plugin specifies another drawing model.
2488
2489         The big change is the addition of the CoreGraphics drawing model.  A plugin may request this
2490         drawing model to obtain access to a CGContextRef for drawing, instead of a QuickDraw CGrafPtr.
2491
2492         * Plugins/WebBaseNetscapePluginView.h:
2493         Added PluginPort union, which wraps a NP_Port and a NP_CGContext.  This is to make access to
2494         the nPort and lastSetPort ivars more convenient now that the port type differs based on the 
2495         drawing model.
2496         Changed types of nPort and lastSetPort to PluginPort so they can be used with any drawing model.
2497         Added drawingModel ivar.
2498         * Plugins/WebBaseNetscapePluginView.m:
2499         Renamed PortState to PortState_QD.  PortState is now an opaque pointer.  PortState_QD cannot be
2500         used if QuickDraw is unavailable.
2501         (-[WebBaseNetscapePluginView fixWindowPort]):
2502         Cannot be used if QuickDraw is unavailable.
2503         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
2504         Only fix window port if drawing model is QuickDraw.
2505         Re-ordered some code so I could group QuickDraw-specific stuff into switch and if blocks (that's
2506         why the diff here is so terrible).
2507         Now returns a malloc()'ed PortState that the caller is responsible for freeing.  Renamed to
2508         better reflect this behavior.
2509         Support for the CoreGraphics drawing model -- fill PortState_CG struct, save CGContext state.
2510         (-[WebBaseNetscapePluginView restorePortState:]):
2511         Switch based on drawing model.
2512         Support for the CoreGraphics drawing model -- restore CGContext state saved earlier.
2513         (-[WebBaseNetscapePluginView sendEvent:]):
2514         Formatting.
2515         Don't set save/set port state or set the window in CoreGraphics mode unless the event being
2516         sent is an updateEvt.  We can't provide the plugin with a CGContext outside of our view display
2517         cycle.
2518         Don't restore PortState if it's NULL (didn't used to be a pointer).  Free when we're done with it.
2519         (-[WebBaseNetscapePluginView isNewWindowEqualToOldWindow]):
2520         Formatting.
2521         Switch how we compare ports based on the drawing model.
2522         (-[WebBaseNetscapePluginView updateAndSetWindow]):
2523         Fixed for CoreGraphics by triggering a redisplay instead of sending an update event to the plugin
2524         outside of the view display cycle.
2525         Don't restore PortState if it's NULL (didn't used to be a pointer).  Free when we're done with it.
2526         (-[WebBaseNetscapePluginView setWindowIfNecessary]):
2527         Assert that the window is only set when updating in CoreGraphics mode.
2528         Log differently depending on the drawing model.
2529         (-[WebBaseNetscapePluginView start]):
2530         Fall back on QuickDraw if the plugin does not specify a drawing model.
2531         (-[WebBaseNetscapePluginView tellQuickTimeToChill]):
2532         Cannot be used if QuickDraw is unavailable.
2533         (-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
2534         Only call -tellQuickTimeToChill in QuickDraw mode.
2535         (-[WebBaseNetscapePluginView viewHasMoved:]):
2536         ditto
2537         (-[WebBaseNetscapePluginView invalidateRegion:]):
2538         NPRegion is a CGPathRef in CoreGraphics mode.
2539         (-[WebBaseNetscapePluginView getVariable:value:]):
2540         Added support for retriveing the NPNVpluginDrawingModel, NPNVsupportsQuickDrawBool, and
2541         NPNVsupportsCoreGraphicsBool browser variables.
2542         (-[WebBaseNetscapePluginView setVariable:value:]):
2543         Added support for setting the NPNVpluginDrawingModel variable.
2544
2545 2006-05-15  Tim Omernick  <timo@apple.com>
2546
2547         Reviewed by Kevin Decker.
2548
2549         Follow-up to my previous PLT fix.  I found upon further testing (by dramatically decreasing the
2550         allowed display rate) that +_webkit_displayThrottledWindows did not always force a display when
2551         necessary.  The reason is that I was not giving a proper timeout to CFRunLoopRunInMode().  I was
2552         passing 0, which was causing only "expired" timers to fire.  This method is actually supposed to
2553         block until all currently scheduled display timers fire.
2554
2555         I tested this change and found that it did not affect my PLT times when the display rate was
2556         capped to 60 fps.  It also behaves as expected when the display rate is set much lower (say, 1
2557         display per second); my previous fix did not work well at such display rates.
2558
2559         * Misc/WebNSWindowExtras.m:
2560         (+[NSWindow _webkit_displayThrottledWindows]):
2561         Run the runloop for an amount of time equal to the minimum allowed interval between displays.
2562         This ensures that we'll block until all currently scheduled display timers fire (but we won't
2563         block for future display timers).
2564
2565 2006-05-15  John Sullivan  <sullivan@apple.com>
2566
2567         Reviewed by Tim Omernick.
2568         
2569         - followup to previous fix; I hadn't tested quitting adequately
2570
2571         * WebView/WebHTMLView.m:
2572         (-[WebHTMLView dealloc]):
2573         call removeAllToolTips before clearing _private so that removeTrackingRect: override can work 
2574         properly. Normally removeAllToolTips would be called by super, but that's too late.
2575         (-[WebHTMLView finalize]):
2576         ditto
2577
2578 2006-05-15  John Sullivan  <sullivan@apple.com>
2579
2580         Reviewed by Darin.
2581         
2582         - fixed <rdar://problem/4503016> TOT assertion failure in -[WebHTMLView(WebPrivate) removeTrackingRect:]
2583         
2584         We have some tricky code to deal with tracking rects, which succumbed to a fix in AppKit. Updated our
2585         tricky code to work with the AppKit fix.
2586
2587         * WebView/WebHTMLViewInternal.h:
2588         new instance variable lastToolTipTag
2589         
2590         * WebView/WebHTMLView.m:
2591         (-[WebHTMLView removeTrackingRect:]):
2592         handle removing lastToolTipTag by calling super
2593         (-[WebHTMLView _setToolTip:]):
2594         save tool tip tag in lastToolTipTag; this apparently used to always return 0, so we formerly had no way
2595         to distinguish it from the no-tool-tips-yet case.
2596
2597         * WebKit.xcodeproj/project.pbxproj:
2598         Xcode removed some old cruft
2599
2600 2006-05-15  Tim Omernick  <timo@apple.com>
2601
2602         Reviewed by Darin.
2603
2604         Safari's Page Load Test (PLT) saturates the runloop with so many sources that timers are not allowed to fire 
2605         as frequently as they should.  This is a general problem with the PLT -- because of this, it does not measure
2606         work done in timer callbacks during/after the page load process.
2607
2608         Unfortunately, this aspect of the PLT interferes with our window display throttle hack.  Because we throttle
2609         display using timers, and the PLT starves timers, most of the pages loaded by the PLT do not actually display.
2610         This makes the PLT run "too fast", yielding ridiculously fast numbers compared to when throttling is disabled.
2611
2612         I've added a new method that the PLT can call after each page load to force any starved display throttle timers
2613         to fire.  By doing this, Safari's PLT will be guaranteed to display each page at least once.
2614
2615         * Misc/WebNSWindowExtras.h:
2616         * Misc/WebNSWindowExtras.m:
2617         Added a special internal runloop mode for the throttle timers.
2618         (+[NSWindow _webkit_displayThrottledWindows]):
2619         Run the runloop in our special internal mode until there are no more sources to handle.
2620         (requestWindowDisplay):
2621         Schedule the timer in the new mode as well as the standard modes.
2622         
2623 2006-05-15  Anders Carlsson  <acarlsson@apple.com>
2624
2625         Reviewed by Maciej.
2626
2627         http://bugzilla.opendarwin.org/show_bug.cgi?id=8913
2628         REGRESSION: Can view source for text files
2629
2630         * WebView/WebDocumentPrivate.h:
2631         Add canSaveAsWebArchive.
2632         
2633         * WebView/WebHTMLRepresentation.m:
2634         (-[WebHTMLRepresentation canProvideDocumentSource]):
2635         Call the bridge.
2636         
2637         (-[WebHTMLRepresentation canSaveAsWebArchive]):
2638         New function. This will be used in Safari ToT to determine if a page can be saved as an archive.
2639
2640 2006-05-14  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2641
2642         Reviewed by Darin.
2643
2644         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8739
2645           Crash in RenderTableSection::paint due to manipulating DOM on resize
2646
2647         Manual test: manual-tests/dom-manipulation-on-resize.html
2648
2649         * WebView/WebHTMLView.m:
2650         (-[NSArray layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Relayout if necessary
2651         after sending the resize event.
2652
2653 2006-05-12  Maciej Stachowiak  <mjs@apple.com>
2654
2655         Reviewed by Brady.
2656         
2657         http://bugzilla.opendarwin.org/show_bug.cgi?id=8876
2658         - move most private WebDataSource methods to uninstalled header
2659         
2660         I put the declarations for the ones only used in WebKit in WebDataSourceInternal.h
2661         and removed two entirey unused ones.
2662
2663         * Plugins/WebNetscapePluginRepresentation.m:
2664         * Plugins/WebNetscapePluginStream.m:
2665         * Plugins/WebPluginController.m:
2666         * Plugins/WebPluginDocumentView.m:
2667         * WebCoreSupport/WebFrameBridge.m:
2668         (-[WebFrameBridge dataSource]):
2669         * WebCoreSupport/WebSubresourceLoader.m:
2670         * WebKit.xcodeproj/project.pbxproj:
2671         * WebView/WebDataSource.m:
2672         (-[WebDataSource _updateIconDatabaseWithURL:]):
2673         (-[WebDataSource _loadIcon]):
2674         (-[WebDataSource _clearErrors]):
2675         (-[WebDataSource _commitLoadWithData:]):
2676         (-[WebDataSource _doesProgressiveLoadWithMIMEType:]):
2677         (-[WebDataSource _addResponse:]):
2678         * WebView/WebDataSourceInternal.h: Added.
2679         * WebView/WebDataSourcePrivate.h:
2680         * WebView/WebFrame.m:
2681         * WebView/WebHTMLRepresentation.m:
2682         * WebView/WebHTMLView.m:
2683         * WebView/WebImageView.m:
2684         * WebView/WebLoader.m:
2685         * WebView/WebMainResourceLoader.m:
2686         * WebView/WebPDFView.m:
2687         * WebView/WebRenderNode.m:
2688         * WebView/WebView.m:
2689
2690 2006-05-12  Tim Omernick  <timo@apple.com>
2691
2692         Reviewed by John Sullivan.
2693
2694         <rdar://problem/4542808> REGRESSION: benchjs test 1 has slowed by over 150% (8740)
2695         <http://bugzilla.opendarwin.org/show_bug.cgi?id=8740>
2696
2697         Improvement to my NSWindow display throttle hack.  Remember the last flush time instead of the last display time.
2698         Our goal is to never draw less than 1/60th of a second after the window is flushed in order to avoid blocking on
2699         a CG coalesced update.  Using the last display time is close, but this is much more accurate.  I have verified that
2700         this further improves our score on BenchJS Test 1 (by 9.8% with the status bar shown compared to the previous build),
2701         as well as on our internal PLT scores by a smaller percentage.
2702
2703         * Misc/WebNSWindowExtras.m:
2704         Renamed lastDisplayTime to lastFlushTime.
2705         (+[NSWindow _webkit_enableWindowDisplayThrottle]):
2706         Replace -[NSWindow flushWindow] with our own implementation.
2707         (+[NSWindow _webkit_disableWindowDisplayThrottle]):
2708         Restore -[NSWindow flushWindow].
2709         (replacementFlushWindow):
2710         Use the last flush time instead of the last display time.
2711         (getWindowDisplayInfo):
2712         Renamed lastDisplayTime to lastFlushTime.
2713         (requestWindowDisplay):
2714         Moved some code to replacementFlushWindow().
2715
2716 2006-05-11  Timothy Hatcher  <timothy@apple.com>
2717
2718         Reviewed by Darin.
2719
2720         Bug 8856: Web Inspector should show the Xpath for the selected node
2721         http://bugzilla.opendarwin.org/show_bug.cgi?id=8856
2722         
2723         Adds an Xpath area to the Node panel.
2724
2725         * WebInspector/webInspector/inspector.css:
2726         * WebInspector/webInspector/inspector.html:
2727         * WebInspector/webInspector/inspector.js:
2728
2729 2006-05-11  Timothy Hatcher  <timothy@apple.com>
2730
2731         Reviewed by Anders.
2732
2733         Fixes <rdar://problem/4411845> lots of SPOD trying to scroll through
2734         Markup & Content inspecting body at apple.com (6614)
2735         http://bugzilla.opendarwin.org/show_bug.cgi?id=6614
2736
2737         Removed the Markup & Content pane when viewing a element.
2738         This pane was not that useful and made the inspector really slow
2739         when the markup was large. Only show this pane for text nodes.
2740
2741         * WebInspector/webInspector/inspector.css: use -webkit prefix
2742         * WebInspector/webInspector/inspector.html:
2743         * WebInspector/webInspector/inspector.js:
2744
2745 2006-05-11  Sam Weinig  <sam.weinig@gmail.com>
2746
2747         Reviewed by Timothy.
2748
2749         Patch for <http://bugzilla.opendarwin.org/show_bug.cgi?id=8810>
2750         Bug 8810: Scrollbars in WebInspector rendered incorrectly
2751
2752         * WebInspector/webInspector/inspector.css: 
2753         Make scroll bars absolutely positioned.
2754
2755 2006-05-10  Tim Omernick  <timo@apple.com>
2756
2757         Reviewed by Darin.
2758
2759         <rdar://problem/4542808> REGRESSION: benchjs test 1 has slowed by over 150% (8740)
2760         <http://bugzilla.opendarwin.org/show_bug.cgi?id=8740>
2761
2762         * Misc/WebNSWindowExtras.h:
2763         * Misc/WebNSWindowExtras.m:
2764         (+[NSWindow _webkit_enableWindowDisplayThrottle]):
2765         Overrides certain NSWindow methods so that window autodisplay can be throttled to 60Hz.
2766
2767         (disableWindowDisplayThrottleApplierFunction):
2768         CFDictionary applier function for when the throttle is disabled.  Cancels all pending window displays,
2769         and calls -displayIfNeeded on each window with a pending display.
2770
2771         (+[NSWindow _webkit_disableWindowDisplayThrottle]):
2772         Restores default NSWindow method implementations and clears pending window displays.
2773
2774         (swizzleInstanceMethod):
2775         Helper function to swizzle ObjC method implementations.
2776
2777         (replacementPostWindowNeedsDisplay):
2778         Don't call into -[NSWindow _postWindowNeedsDisplay] if requestWindowDisplay() returns NO (this is the
2779         function that throttles display).
2780
2781         (replacementClose):
2782         Clean up the WindowDisplayInfo struct for the window, since it's about to go away.
2783
2784         (getWindowDisplayInfo):
2785         Gets the WindowDisplayInfo struct for the window, or creates it if absent.
2786
2787         (requestWindowDisplay):
2788         Returns YES if a display is allowed right now.  Returns NO otherwise, and schedules a timer to try the
2789         display again.
2790
2791         (cancelPendingWindowDisplay):
2792         Cancels the pending display for the window, if any.
2793
2794         (-[NSWindow _webkit_doPendingPostWindowNeedsDisplay:]):
2795         Try to call _postWindowNeedsDisplay again.
2796
2797         * WebView/WebFrameView.m:
2798         (-[WebFrameView initWithFrame:]):
2799         If the secret "WebKitThrottleWindowDisplay" default is set, then enable the NSWindow throttle.
2800
2801 2006-05-10  Anders Carlsson  <acarlsson@apple.com>
2802
2803         Reviewed by Maciej.
2804
2805         * WebView/WebHTMLView.m:
2806         (+[WebHTMLView unsupportedTextMIMETypes]):
2807         Add text/rtf
2808         
2809 2006-05-09  Levi Weintraub  <lweintraub@apple.com>
2810
2811         Reviewed by justin.
2812
2813         <rdar://problem/4442395>
2814         Tiny MCE: Link isn't inserted after dragging into textarea field
2815         
2816         * WebView/WebHTMLView.m:
2817         (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:chosePlainText:]):
2818         Modified to create an anchor object with a title as opposed to just the URL as text.
2819
2820 2006-05-09  Tim Omernick  <timo@apple.com>
2821
2822         Reviewed by Dave Harrison.
2823
2824         <rdar://problem/4523432> safari crashed right after disabling "block pop up windows" (or
2825         other WebPreferences changes)
2826
2827         * Plugins/WebBaseNetscapePluginView.m:
2828         (-[WebBaseNetscapePluginView viewWillMoveToHostWindow:]):
2829         When the plugin view is removed from both its window and its hostWindow, stop observing
2830         WebPreferences.
2831
2832 2006-05-09  Anders Carlsson  <acarlsson@apple.com>
2833
2834         Reviewed by Darin.
2835
2836         http://bugzilla.opendarwin.org/show_bug.cgi?id=8808
2837         WebCore should handle text files
2838
2839         * WebKit.exp:
2840         Remove WebTextView.
2841         
2842         * WebKit.xcodeproj/project.pbxproj:
2843         Get rid of WebTextView and WebTextRepresentation.
2844         
2845         * WebView/WebDataSource.m:
2846         (+[WebDataSource _repTypesAllowImageTypeOmission:]):
2847         * WebView/WebFrameView.m:
2848         (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
2849         * WebView/WebHTMLView.m:
2850         The text MIME types are now handled by WebHTMLView.
2851         
2852         (+[WebHTMLView unsupportedTextMIMETypes]):
2853         New function, moved here from WebTextView.
2854         
2855         * WebView/WebHTMLViewPrivate.h:
2856         * WebView/WebTextRepresentation.h: Removed.
2857         * WebView/WebTextRepresentation.m: Removed.
2858         * WebView/WebTextView.h: Removed.
2859         * WebView/WebTextView.m: Removed.
2860         
2861         * WebView/WebView.m:
2862         (+[WebView _viewClass:andRepresentationClass:forMIMEType:]):
2863         Now special-case WebHTMLView instead of WebTextView for MIME types
2864         that shouldn't be shown.
2865
2866 2006-05-09  Maciej Stachowiak  <mjs@apple.com>
2867
2868         Rubber stamped by Anders.
2869         
2870         - renamed kxmlcore to wtf
2871         
2872         kxmlcore --> wtf
2873         KXMLCore --> WTF
2874         KXC --> WTF
2875
2876         * Misc/WebKitLogging.h:
2877         * Misc/WebKitLogging.m:
2878         (initializeLogChannel):
2879
2880 2006-05-09  Timothy Hatcher  <timothy@apple.com>
2881
2882         Reviewed by Anders.
2883
2884         Bug 8804: Inspector should support searching by Xpath query
2885         http://bugzilla.opendarwin.org/show_bug.cgi?id=8804
2886
2887         * WebInspector/WebInspector.m:
2888         (-[WebInspector _refreshSearch]):
2889         * WebInspector/webInspector/inspector.js:
2890
2891 2006-05-08  Maciej Stachowiak  <mjs@apple.com>
2892
2893         Reviewed by Tim Hatcher.
2894         
2895         - refactor things so that WebKit doesn't save a WebResource for every loaded URL,
2896         but rather retrieves the data from the WebCore cache as needed.
2897         http://bugzilla.opendarwin.org/show_bug.cgi?id=8802
2898
2899         * WebCoreSupport/WebFrameBridge.m:
2900         (-[WebFrameBridge objectLoadedFromCacheWithURL:response:data:]):
2901         (-[WebFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
2902         * WebCoreSupport/WebSubresourceLoader.m:
2903         (-[WebSubresourceLoader didReceiveResponse:]):
2904         * WebView/WebDataSource.m:
2905         (-[WebDataSourcePrivate dealloc]):
2906         (-[WebDataSource _setupForReplaceByMIMEType:]):
2907         (-[WebDataSource _archivedSubresourceForURL:]):
2908         (-[WebDataSource initWithRequest:]):
2909         (-[WebDataSource subresources]):
2910         (-[WebDataSource subresourceForURL:]):
2911         (-[WebDataSource addSubresource:]):
2912         * WebView/WebDataSourcePrivate.h:
2913         * WebView/WebFrame.m:
2914         * WebView/WebFrameInternal.h:
2915         * WebView/WebHTMLView.m:
2916         * WebView/WebLoader.h:
2917         * WebView/WebLoader.m:
2918         (-[NSURLProtocol loadWithRequest:]):
2919         (-[NSURLProtocol didFinishLoading]):
2920         * WebView/WebUnarchivingState.h:
2921         * WebView/WebUnarchivingState.m:
2922         (-[WebUnarchivingState addResource:]):
2923
2924 2006-05-04  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2925
2926         Reviewed by Darin.
2927
2928         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8594
2929           REGRESSION: Exception on closing a page containing (just) an mp3
2930
2931         Test: plugins/pluginDocumentView-deallocated-dataSource.html
2932
2933         * Plugins/WebPluginDocumentView.m:
2934         (-[WebPluginDocumentView dealloc]): Release the dataSource.
2935         (-[WebPluginDocumentView setDataSource:]): Retain the dataSource.
2936
2937 2006-05-04  Tim Omernick  <timo@apple.com>
2938
2939         Reviewed by Darin.
2940
2941         <rdar://problem/4537606> Give Java WebKit plugin access to its own DOM element
2942
2943         * WebCoreSupport/WebFrameBridge.m:
2944         (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]):
2945         Pass the DOMElement to the plugin if it's a WebKit plugin (we need to handle Netscape plugins
2946         differently).
2947
2948 2006-05-04  Tim Omernick  <timo@apple.com>
2949
2950         Reviewed by John Sullivan.
2951
2952         <rdar://problem/4480186> Give WebKit plugins access to their own DOM element
2953
2954         This does not fix <rdar://problem/4480187> Give Netscape plugins access to their own DOM element --
2955         we're not going to use the ObjC DOM API for that, but rather the NP bindings API.
2956
2957         * Plugins/WebPluginPackage.m:
2958         Declared WebPlugInContainingElementKey.  This is not a new plugin argument -- it's been in our public
2959         headers since all along, but has never been concretely declared -- plugins that referenced it would not
2960         link.
2961
2962         * WebCoreSupport/WebFrameBridge.m:
2963         (-[WebFrameBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:DOMElement:]):
2964         Added DOMElement parameter, which is now included in the plugin arguments dictionary.
2965         (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:]):
2966         ditto
2967
2968         * WebKit.exp:
2969         Export WebPlugInContainingElementKey.
2970
2971 2006-05-02  Darin Adler  <darin@apple.com>
2972
2973         Reviewed by Eric.
2974
2975         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8677
2976           REGRESSION: wkSetUpFontCache() may be called before the SPIs are connected.
2977
2978         I don't know how reproduce this without one of Rosyna's hacks installed, so I
2979         did not include a test.
2980
2981         * Misc/WebStringTruncator.m: (+[WebStringTruncator initialize]): Add call to
2982         InitWebCoreSystemInterface.
2983
2984         * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Add a boolean
2985         so we will only do this one time.
2986
2987 2006-05-02  Adele Peterson  <adele@apple.com>
2988
2989         Reviewed by Tim O.
2990
2991         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6988
2992         REGRESSION: Display correct context menus for new text fields
2993
2994         * WebView/WebView.m: (-[WebView _menuForElement:defaultItems:]):
2995         Don't let the UI delegate have control over the context menu for text fields.
2996
2997 2006-05-01  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2998
2999         Reviewed by Darin.
3000
3001         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8658
3002           Assertion failure in -[WebPluginContainerCheck _isForbiddenFileLoad]
3003           (bridge is null) when clicking QuickTime object with href
3004
3005         * WebView/WebHTMLView.m:
3006        (-[WebHTMLView setDataSource:]): Set the pluginController's dataSource.
3007
3008 2006-05-01  Maciej Stachowiak  <mjs@apple.com>
3009
3010         - fix build
3011
3012         * WebKit.exp: Add symbol that the new Safari will need.
3013
3014 2006-05-01  John Sullivan  <sullivan@apple.com>
3015
3016         Reviewed by Tim Omernick.
3017         
3018         - fixed <rdar://problem/3126419> history load enforces history limit, but deletes the newest instead of oldest items
3019         - added notification reporting items discarded during load because the age limit or item count limit is exceeded
3020         - a few other minor tweaks
3021
3022         * History/WebHistory.h:
3023         fixed a typo and an incorrect method name
3024         
3025         * History/WebHistoryPrivate.h:
3026         Added declaration of WebHistoryItemsDiscardedWhileLoadingNotification. Also changed signature of
3027         WebHistoryPrivate method -loadFromURL:error: to have new collectDiscardedItemsInto: parameter.
3028         Also deleted declarations of two methods that didn't actually exist (loadHistory and initWithFile:), 
3029         and added comments about which methods should become public API, WebKit-internal, or file-internal.
3030
3031         * History/WebHistory.m:
3032         (-[WebHistoryPrivate arrayRepresentation]):
3033         This method, called only by _saveHistoryGuts:, used to deliberately leave out items that violated
3034         either the age limit or the item count limit. Now all the items are included (and thus saved), and
3035         all the pruning is done at load time, so clients can keep track of the pruned items by observing
3036         the new WebHistoryItemsDiscardedWhileLoadingNotification
3037         (-[WebHistoryPrivate _loadHistoryGutsFromURL:savedItemsCount:collectDiscardedItemsInto:error:]):
3038         Now keeps track of all the items that violated the age limit or item count limit in the new
3039         collectedDiscardedItemsInto: parameter. Also, now processes items in forward order rather than
3040         reverse order to fix 3126419. Now uses compare: rather than _webkit_compareDay: to check against
3041         age limit; this is faster and also more correct (most noticeable with small age limits).
3042         (-[WebHistoryPrivate loadFromURL:collectDiscardedItemsInto:error:]):
3043         new collectDiscardedItemsInto: parameter, passed into _loadHistoryGuts:...
3044         (-[WebHistory loadFromURL:error:]):
3045         Now sends new WebHistoryItemsDiscardedWhileLoadingNotification if any items were discarded due
3046         to age limit or item count limit.
3047         
3048         * WebKit.exp:
3049         exported symbol for WebHistoryItemsDiscardedWhileLoadingNotification
3050
3051 2006-04-29  Timothy Hatcher  <timothy@apple.com>
3052
3053         Reviewed by Maciej.
3054
3055         Bug 8577: [TabBarView _web_superviewOfClass:stoppingAtClass:]
3056         http://bugzilla.opendarwin.org/show_bug.cgi?id=8577
3057
3058         Added back _web_superviewOfClass:stoppingAtClass:.
3059         This method was removed in r14032 (bug 8562), but Safari 2.0 still uses it.
3060         We should remove this method once Open Source users have a new version
3061         to use with TOT WebKit.
3062
3063         * Misc/WebNSViewExtras.m:
3064         (-[NSView _web_superviewOfClass:stoppingAtClass:]):
3065
3066 2006-04-28  David Hyatt  <hyatt@apple.com>
3067
3068         Double the cache size to account for our revised (more accurate)
3069         measurement of the image buffers.
3070
3071         Reviewed by darin
3072
3073         * WebView/WebPreferences.m:
3074         (+[WebPreferences initialize]):
3075
3076 2006-04-28  David Hyatt  <hyatt@apple.com>
3077
3078         Fix for 8586, move WebTextRenderer into WebCore.
3079
3080         Reviewed by darin
3081
3082         * Misc/WebKitNSStringExtras.m:
3083         (-[NSString _web_drawAtPoint:font:textColor:]):
3084         (-[NSString _web_widthWithFont:]):
3085         * Misc/WebStringTruncator.m:
3086         (+[WebStringTruncator centerTruncateString:toWidth:]):
3087         (+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
3088         (+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
3089         (+[WebStringTruncator widthOfString:font:]):
3090         * WebCoreSupport/WebSystemInterface.m:
3091         (InitWebCoreSystemInterface):
3092         * WebCoreSupport/WebTextRenderer.h: Removed.
3093         * WebCoreSupport/WebTextRenderer.m: Removed.
3094         * WebCoreSupport/WebTextRendererFactory.h: Removed.
3095         * WebCoreSupport/WebTextRendererFactory.m: Removed.
3096         * WebKit.xcodeproj/project.pbxproj:
3097         * WebView/WebFrameView.m:
3098         (-[WebFrameView initWithFrame:]):
3099         * WebView/WebHTMLView.m:
3100         (-[NSArray _addToStyle:fontA:fontB:]):
3101         * WebView/WebTextView.m:
3102         (-[WebTextView setFixedWidthFont]):
3103         * WebView/WebView.m:
3104         (+[WebView _setAlwaysUseATSU:]):
3105         (+[WebView _setShouldUseFontSmoothing:]):
3106         (+[WebView _shouldUseFontSmoothing]):
3107
3108 2006-04-28  Eric Seidel  <eseidel@apple.com>
3109
3110         Reviewed by darin.
3111
3112         Misc. style cleanup.
3113         http://bugzilla.opendarwin.org/show_bug.cgi?id=8643
3114
3115         * Misc/WebIconDatabase.m:
3116         (-[NSMutableDictionary iconForURL:withSize:cache:]):
3117         (-[NSMutableDictionary iconURLForURL:]):
3118         (-[NSMutableDictionary retainIconForURL:]):
3119         (-[NSMutableDictionary releaseIconForURL:]):
3120         (-[WebIconDatabase _setIcon:forIconURL:]):
3121         (-[WebIconDatabase _iconsForIconURLString:]):
3122         (-[WebIconDatabase _forgetIconForIconURLString:]):
3123         (-[WebIconDatabase _releaseIconForIconURLString:]):
3124         (-[WebIconDatabase _iconsBySplittingRepresentationsOfIcon:]):
3125         * Plugins/WebBasePluginPackage.m:
3126         (+[WebBasePluginPackage pluginWithPath:]):
3127         (-[WebBasePluginPackage pathByResolvingSymlinksAndAliasesInPath:]):
3128         (-[WebBasePluginPackage initWithPath:]):
3129         (-[WebBasePluginPackage getPluginInfoFromBundleAndMIMEDictionary:]):
3130         (-[WebBasePluginPackage pListForPath:createFile:]):
3131         (-[WebBasePluginPackage getPluginInfoFromPLists]):
3132         (-[WebBasePluginPackage load]):
3133         (-[WebBasePluginPackage setMIMEToExtensionsDictionary:]):
3134         (-[WebBasePluginPackage isNativeLibraryData:]):
3135         (-[NSArray _web_lowercaseStrings]):
3136         * Plugins/WebNetscapePluginPackage.m:
3137         (-[WebNetscapePluginPackage openResourceFile]):
3138         (-[WebNetscapePluginPackage closeResourceFile:]):
3139         (-[WebNetscapePluginPackage stringForStringListID:andIndex:]):
3140         (-[WebNetscapePluginPackage getPluginInfoFromResources]):
3141         (-[WebNetscapePluginPackage initWithPath:]):
3142         (-[WebNetscapePluginPackage executableType]):
3143         (-[WebNetscapePluginPackage unloadWithoutShutdown]):
3144         (-[WebNetscapePluginPackage load]):
3145         (-[WebNetscapePluginPackage unload]):
3146         * Plugins/WebNetscapePluginRepresentation.m:
3147         (-[WebNetscapePluginRepresentation redeliverStream]):
3148         * Plugins/WebPluginDatabase.m:
3149         (+[WebPluginDatabase installedPlugins]):
3150         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
3151         (-[WebPluginDatabase pluginForExtension:]):
3152         (pluginLocations):
3153         (-[WebPluginDatabase init]):
3154         (-[WebPluginDatabase refresh]):
3155         * Plugins/npapi.m:
3156         (NPN_MemAlloc):
3157         (NPN_MemFree):
3158         (pluginViewForInstance):
3159         * WebCoreSupport/WebSubresourceLoader.m:
3160         (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]):
3161         (-[WebSubresourceLoader willSendRequest:redirectResponse:]):
3162         * WebView/WebDataSource.m:
3163         (-[WebDataSource isLoading]):
3164         * WebView/WebFrame.m:
3165         (-[WebFrame _loadDataSource:withLoadType:formState:]):
3166         (-[WebFrame _subframeIsLoading]):
3167         * WebView/WebView.m:
3168         (-[WebView initWithFrame:]):
3169         (-[WebView initWithFrame:frameName:groupName:]):
3170
3171 2006-04-26  Tim Omernick  <timo@apple.com>
3172
3173         Reviewed by Geoff.
3174
3175         <rdar://problem/4525105> Repro TOT crash in [WebBaseNetscapePluginView dealloc] at coachella.com
3176         <http://bugzilla.opendarwin.org/show_bug.cgi?id=8564> crashed when closing a tab
3177
3178         * WebView/WebFrame.m:
3179         (-[WebFramePrivate dealloc]):
3180         Assert that plugInViews has been released.
3181         (-[WebFrame _addPlugInView:]):
3182         New method.  Adds the plug-in view to the plugInViews set and calls -setWebFrame: on it.
3183         (-[WebFrame _removeAllPlugInViews]):
3184         New method.  Calls -setWebFrame:nil on all plug-in views and releases the plugInViews set.
3185         (-[WebFrame _willCloseURL]):
3186         New method.  Dispose of plug-in views when leaving a page (or closing the WebView).
3187
3188         * WebView/WebFrameInternal.h:
3189         Declared -_addPlugInView:, -_removeAllPlugInViews, -_willCloseURL
3190
3191         * WebCoreSupport/WebFrameBridge.m:
3192         (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]):
3193         Call -[WebFrame _addPlugInView:] instead of directly setting plug-in views' frames.  This
3194         allows us to keep track of them so that we can explicitly dispose of them when leaving the page.
3195         (-[WebFrameBridge closeURL]):
3196         Override -[WebCoreFrameBridge closeURL] so that we can perform our own teardown when leaving
3197         a page or closing the WebView.
3198
3199         * Plugins/WebBaseNetscapePluginView.h:
3200         Declared -stop so that subclass WebNetscapePluginEmbeddedView can call it.
3201
3202         * Plugins/WebNetscapePluginEmbeddedView.m:
3203         (-[WebNetscapePluginEmbeddedView setWebFrame:]):
3204         Stop the plug-in when it is removed from its WebFrame.
3205
3206 2006-04-25  Tim Omernick  <timo@apple.com>
3207
3208         Reviewed by John Sullivan.
3209
3210         <rdar://problem/4472035> SPI that checks for URL policy fails in plugin documents
3211
3212         * Plugins/WebPluginController.h:
3213         * Plugins/WebPluginController.m:
3214         (-[WebPluginController URLPolicyCheckReferrer]):
3215         New method.  Get the referrer from the frame's data source's NSURLResponse.  Note that for
3216         document types loaded by WebCore, this URL is the same as -[WebCorePageBridge referrer],
3217         since the response URL is what we pass to -[WebCorePageBridge openURL:].
3218
3219         * Plugins/WebPluginContainerCheck.m:
3220         (-[WebPluginContainerCheck _isForbiddenFileLoad]):
3221         Use the WebPluginController's -URLPolicyCheckReferrer instead of assuming that the bridge's
3222         -referrer is valid.  -[WebCorePageBridge referrer] is only set during the normal WebCore page
3223         load process, which has nothing to do with loading standalone plugin documents.
3224
3225 2006-04-25  Tim Omernick  <timo@apple.com>
3226
3227         Reviewed by Eric.
3228
3229         <rdar://problem/4526052> intermittent assertion failure in -[WebBasePluginPackage dealloc]
3230         running layout tests
3231
3232         * Plugins/WebPluginPackage.m:
3233         (-[WebPluginPackage unload]):
3234         Clear isLoaded here.  It turns out that only WebNetscapePluginPackage cleared its isLoaded
3235         flag in -unload.  We need to also do it here, because the superclass (WebBasePluginPackage)
3236         asserts in -dealloc that -unload has been called.
3237
3238 2006-04-25  Tim Omernick  <timo@apple.com>
3239
3240         Reviewed by Eric.
3241
3242         <rdar://problem/4526120> -[WebBasePluginPackage finalize] leaks the CFBundle (under GC only)
3243
3244         * Plugins/WebBasePluginPackage.m:
3245         (-[WebBasePluginPackage finalize]):
3246         Release the CFBundle here.
3247
3248 2006-04-25  Tim Omernick  <timo@apple.com>
3249
3250         Reviewed by Geoff.
3251
3252         <rdar://problem/4472037>
3253         
3254         Private extensions to the WebPlugin interface.  A plugin may implement these methods to receive loading callbacks
3255         for its main resource.  Plug-ins that implement this SPI show better loading progress in the browser, can be saved
3256         to disk, and are more efficient by avoiding making duplicate GET or POST requests for the plug-in's main resource.
3257
3258         I want to provide a solid API for plug-in networking, but time constraints require that I first provide this simple
3259         SPI for internal clients.
3260
3261         * Plugins/WebPluginViewFactoryPrivate.h:
3262         Added a new plugin argument, WebPlugInShouldLoadMainResourceKey.  If YES, the plugin is responsible
3263         for loading its own content.  If NO, the plugin should wait for WebKit to send it the data via the
3264         new request-sharing SPI.
3265
3266         * Plugins/WebPluginPrivate.h: Added.
3267         Request-sharing SPI.  See comments in code.
3268
3269         * Plugins/WebPluginDocumentView.h:
3270         Hang onto the plugin view as an ivar so we can call the new resource loading methods on it.
3271         * Plugins/WebPluginDocumentView.m:
3272         (-[WebPluginDocumentView dealloc]):
3273         Release pluginView ivar.
3274         (-[WebPluginDocumentView setDataSource:]):
3275         Pass NO for WebPlugInShouldLoadMainResourceKey to indicate to the plugin that it should not 
3276         load its own main resource -- the data will come from WebKit.  This is only necessary for plugin
3277         documents.  By the time we create the view for a plugin document, we already have fetched some
3278         of its main resource's data.  Embedded plugins do not have this issue because WebKit is not
3279         involved in loading their content.
3280         Call -webPlugInMainResourceDidReceivResponse: on the plugin if necessary.  This lets the plugin
3281         know how much and what kind of data is going to be received.
3282         (-[WebPluginDocumentView dataSourceUpdated:]):
3283         If the plugin implements the new request-sharing SPI, don't cancel the in-progress request.
3284         (-[WebPluginDocumentView receivedData:withDataSource:]):
3285         Forward to the plugin via the new request-sharing SPI.
3286         (-[WebPluginDocumentView receivedError:withDataSource:]):
3287         ditto
3288         (-[WebPluginDocumentView finishedLoadingWithDataSource:]):
3289         ditto
3290
3291         * Plugins/WebPluginPackage.m:
3292         Added WebPlugInShouldLoadMainResourceKey, tweaked some style a bit.
3293
3294         * WebCoreSupport/WebFrameBridge.m:
3295         (-[WebFrameBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:]):
3296         Pass YES for WebPlugInShouldLoadMainResourceKey.  Embedded plugins must load their own data.
3297         (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]):
3298         ditto
3299         
3300         * WebKit.xcodeproj/project.pbxproj:
3301         Added WebPluginPrivate.h
3302
3303 2006-04-24  Maciej Stachowiak  <mjs@apple.com>
3304
3305         Reviewed by Geoff.
3306         
3307         <rdar://problem/4525364> REGRESSION (yesterday?): LOG() mechanism is broken
3308         
3309         - initialize WebKit's log channels
3310
3311         * Misc/WebKitLogging.h:
3312         * Misc/WebKitLogging.m:
3313         (initializeLogChannel):
3314         (WebKitInitializeLoggingChannelsIfNecessary):
3315         * WebView/WebPreferences.m:
3316         (+[WebPreferences initialize]):
3317         * WebView/WebView.m:
3318         (-[WebView _commonInitializationWithFrameName:groupName:]):
3319
3320 2006-04-24  Maciej Stachowiak  <mjs@apple.com>
3321
3322         Build fix:
3323         
3324         - move some prematurely moved code back
3325
3326         * WebCoreSupport/WebFrameBridge.h:
3327         * WebCoreSupport/WebFrameBridge.m:
3328         (-[WebFrameBridge fini]):
3329         (-[WebFrameBridge _preferences]):
3330         (-[WebFrameBridge _retrieveKeyboardUIModeFromPreferences:]):
3331         (-[WebFrameBridge keyboardUIMode]):
3332
3333 2006-04-24  Maciej Stachowiak  <mjs@apple.com>
3334
3335         Reviewed by Darin.
3336
3337         - move more code from WebFrameBridge to WebCoreFrameBridge
3338
3339         * WebCoreSupport/WebFrameBridge.h:
3340         * WebCoreSupport/WebFrameBridge.m:
3341         (-[WebFrameBridge fini]):
3342         (-[WebFrameBridge expiresTimeForResponse:]):
3343         (-[WebFrameBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]):
3344         (-[WebFrameBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
3345         (-[WebFrameBridge valueForKey:keys:values:]):
3346         (-[WebFrameBridge _preferences]):
3347
3348 2006-04-24  Maciej Stachowiak  <mjs@apple.com>
3349
3350         Reviewed by Anders.
3351         
3352         - Remove use of _webSuperviewOfClass: and related
3353         http://bugzilla.opendarwin.org/show_bug.cgi?id=8562
3354         
3355         I removed all use of these, now objects get at each other via
3356         actual pointers, not using the view hierarchy. However, I left two
3357         of the calls in because other clients rely on them as SPI (ugh).
3358
3359         * History/WebHistoryItem.m:
3360         * Misc/WebNSViewExtras.h:
3361         * Misc/WebNSViewExtras.m:
3362         (-[NSView _web_superviewOfClass:]):
3363         (-[NSView _web_parentWebFrameView]):
3364         * Plugins/WebNetscapePluginDocumentView.m:
3365         (-[WebNetscapePluginDocumentView layout]):
3366         * Plugins/WebNetscapePluginEmbeddedView.h:
3367         * Plugins/WebNetscapePluginEmbeddedView.m:
3368         (-[WebNetscapePluginEmbeddedView setWebFrame:]):
3369         (-[WebNetscapePluginEmbeddedView dataSource]):
3370         * Plugins/WebNullPluginView.h:
3371         * Plugins/WebNullPluginView.m:
3372         (-[WebNullPluginView setWebFrame:]):
3373         (-[WebNullPluginView viewDidMoveToWindow]):
3374         * Plugins/WebPluginController.h:
3375         * Plugins/WebPluginController.m:
3376         (-[WebPluginController setDataSource:]):
3377         (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
3378         (-[WebPluginController webPlugInContainerShowStatus:]):
3379         (-[WebPluginController webPlugInContainerSelectionColor]):
3380         (-[WebPluginController webFrame]):
3381         * Plugins/WebPluginDocumentView.h:
3382         * Plugins/WebPluginDocumentView.m:
3383         (-[WebPluginDocumentView setDataSource:]):
3384         (-[WebPluginDocumentView layout]):
3385         (-[WebPluginDocumentView currentWindow]):
3386         (-[WebPluginDocumentView viewWillMoveToWindow:]):
3387         * WebCoreSupport/WebFrameBridge.m:
3388         (-[WebFrameBridge formControlIsBecomingFirstResponder:]):
3389         (-[WebFrameBridge formControlIsResigningFirstResponder:]):
3390         (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]):
3391         * WebCoreSupport/WebViewFactory.m:
3392         (-[WebViewFactory bridgeForView:]):
3393         * WebView/WebClipView.m:
3394         (-[NSView initWithFrame:]):
3395         * WebView/WebFrameView.m:
3396         (-[WebFrameView _shouldDrawBorder]):
3397         (-[WebFrameView webCoreBridge]):
3398         * WebView/WebHTMLView.m:
3399         (-[WebTextCompleteController dealloc]):
3400         (-[WebHTMLView _dataSource]):
3401         (-[WebHTMLView _bridge]):
3402         (-[WebHTMLView _webView]):
3403         (-[WebHTMLView _frameView]):
3404         (-[WebHTMLView _web_firstResponderCausesFocusDisplay]):
3405         (-[NSArray becomeFirstResponder]):
3406         (-[NSArray setDataSource:]):
3407         (-[NSArray pageUp:]):
3408         (-[NSArray pageDown:]):
3409         (-[NSArray pageUpAndModifySelection:]):
3410         (-[NSArray pageDownAndModifySelection:]):
3411         (-[WebHTMLView _frame]):
3412         * WebView/WebHTMLViewInternal.h:
3413         * WebView/WebImageView.h:
3414         * WebView/WebImageView.m:
3415         (-[WebImageView drawRect:]):
3416         (-[WebImageView adjustFrameSize]):
3417         (-[WebImageView setDataSource:]):
3418         (-[WebImageView webView]):
3419         (-[WebImageView writeImageToPasteboard:types:]):
3420         (-[WebImageView copy:]):
3421         (-[WebImageView elementAtPoint:]):
3422         (-[WebImageView mouseDragged:]):
3423         * WebView/WebPDFView.h:
3424         * WebView/WebPDFView.m:
3425         (-[WebPDFView _applyPDFDefaults]):
3426         (-[WebPDFView _trackFirstResponder]):
3427         (-[PDFPrefUpdatingProxy forwardInvocation:]):
3428         * WebView/WebRenderNode.m:
3429         (-[WebRenderNode initWithWebFrameView:]):
3430         * WebView/WebTextView.h:
3431         * WebView/WebTextView.m:
3432         (-[WebTextView _textSizeMultiplierFromWebView]):
3433         (-[WebTextView _preferences]):
3434         (-[WebTextView setDataSource:]):
3435         (-[WebTextView _webFrame]):
3436         (-[WebTextView dragSelectionWithEvent:offset:slideBack:]):
3437         (-[WebTextView menuForEvent:]):
3438         (-[WebTextView resignFirstResponder]):
3439         (-[WebTextView drawPageBorderWithSize:]):
3440         (-[WebTextView knowsPageRange:]):
3441         * WebView/WebView.m:
3442         (-[WebView searchFor:direction:caseSensitive:wrap:]):
3443         (containingFrameView):
3444         (-[WebView _focusedFrame]):
3445         (-[WebView _frameViewAtWindowPoint:]):
3446
3447 2006-04-23  Maciej Stachowiak  <mjs@apple.com>
3448
3449         Reviewed by Darin.
3450         
3451         - push WebFileButton and WebStringTruncator code down to WebCore
3452         http://bugzilla.opendarwin.org/show_bug.cgi?id=8552
3453
3454         * Misc/WebStringTruncator.m:
3455         (+[WebStringTruncator centerTruncateString:toWidth:]):
3456         (+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
3457         (+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
3458         (+[WebStringTruncator widthOfString:font:]):
3459         * WebCoreSupport/WebFileButton.h: Removed.
3460         * WebCoreSupport/WebFileButton.m: Removed.
3461         * WebCoreSupport/WebFrameBridge.h:
3462         * WebCoreSupport/WebFrameBridge.m:
3463         (-[WebFrameBridge runOpenPanelForFileButtonWithResultListener:]):
3464         * WebCoreSupport/WebViewFactory.m:
3465         (-[WebViewFactory fileButtonChooseFileLabel]):
3466         (-[WebViewFactory fileButtonNoFileSelectedLabel]):
3467         * WebKit.xcodeproj/project.pbxproj:
3468
3469 2006-04-23  Maciej Stachowiak  <mjs@apple.com>
3470
3471         Reviewed by Eric.
3472         
3473         - remove WebCookieAdapter, WebCore can just use Foundation directly.
3474
3475         * WebCoreSupport/WebCookieAdapter.h: Removed.
3476         * WebCoreSupport/WebCookieAdapter.m: Removed.
3477         * WebKit.xcodeproj/project.pbxproj:
3478         * WebView/WebFrameView.m:
3479         (-[WebFrameView initWithFrame:]):
3480
3481 2006-04-23  Maciej Stachowiak  <mjs@apple.com>
3482
3483         Reviewed by Adele.
3484         
3485         - prune WebView SPI of unused calls
3486         
3487         Specifically I moved methods that have no callers outside WebKit
3488         to WebViewInternal.h or removed them entirely.
3489
3490         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
3491         * Plugins/WebBaseNetscapePluginView.m:
3492         * Plugins/WebNetscapePluginDocumentView.m:
3493         * Plugins/WebNetscapePluginStream.m:
3494         * Plugins/WebNullPluginView.m:
3495         * Plugins/WebPluginContainerCheck.m:
3496         * Plugins/WebPluginController.m:
3497         * WebCoreSupport/WebFrameBridge.m:
3498         * WebCoreSupport/WebPageBridge.m:
3499         * WebCoreSupport/WebSubresourceLoader.m:
3500         * WebView/WebDataSource.m:
3501         * WebView/WebHTMLView.m:
3502         * WebView/WebImageView.m:
3503         * WebView/WebLoader.m:
3504         * WebView/WebMainResourceLoader.m:
3505         * WebView/WebPDFView.m:
3506         * WebView/WebScriptDebugDelegate.m:
3507         * WebView/WebView.m:
3508         (-[WebView _downloadURL:]):
3509         * WebView/WebViewInternal.h:
3510         * WebView/WebViewPrivate.h:
3511
3512 2006-04-22  Maciej Stachowiak  <mjs@apple.com>
3513
3514         Reviewed by Eric.
3515
3516         - remove WebKit copy of assertions code, use the assertions
3517         stuff from JavaScriptCore instead.
3518
3519         * Carbon/HIViewAdapter.m:
3520         * DOM/WebDOMOperations.m:
3521         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
3522         * DefaultDelegates/WebDefaultPolicyDelegate.m:
3523         (-[WebDefaultPolicyDelegate webView:unableToImplementPolicyWithError:frame:]):
3524         * History/WebBackForwardList.m:
3525         * History/WebHistory.m:
3526         (-[WebHistoryPrivate _loadHistoryGuts:URL:error:]):
3527         (-[WebHistoryPrivate _saveHistoryGuts:URL:error:]):
3528         * History/WebHistoryItem.m:
3529         * Misc/WebAssertions.h: Removed.
3530         * Misc/WebAssertions.m: Removed.
3531         * Misc/WebDatabase.m:
3532         * Misc/WebDownload.m:
3533         * Misc/WebFileDatabase.m: