WebCore:
[WebKit-https.git] / WebKit / ChangeLog
1 2006-08-29  Brady Eidson  <beidson@apple.com>
2
3         Reviewed by Kevin Decker (Sarge)
4
5         <rdar://problem/4678414> - New IconDB needs to delete icons when asked
6
7         * Misc/WebIconDatabase.m:
8         (-[WebIconDatabase removeAllIcons]): Call through to WebCore to remove icons, then send notification
9
10 2006-08-29  Brady Eidson  <beidson@apple.com>
11
12         Reviewed by Alice
13
14         Added a truth value check for to setIconURL:forURL so WebKit can avoid sending a notification
15         This is a win on the iBench
16
17         * Misc/WebIconDatabase.m:
18         (-[WebIconDatabase _setIconURL:forURL:]):
19
20 2006-08-29  Brady Eidson  <beidson@apple.com>
21
22         Reviewed by Tim Hatchers rubber stamp
23
24         Removed some accidentally left-in console spew during the conversion to the new DB
25  
26         * Misc/WebIconDatabase.m:
27         (objectFromPathForKey): Nuked some NSLogs
28
29 2006-08-29  Tim Omernick  <timo@apple.com>
30
31         Reviewed by Darin Adler.
32
33         <rdar://problem/4688618> REGRESSION(10.4.7-9A241): JMol java applet fails in Safari not Firefox
34
35         No layout test for now because Java doesn't work in DumpRenderTree.
36
37         * Plugins/WebPluginDatabase.m:
38         (-[WebPluginDatabase refresh]):
39         Add each plug-in MIME type to registeredMIMETypes, even if we don't register a document view class for the
40         MIME type.  This fixes -[WebPluginDatabase isMIMETypeRegistered:] and thus fallback content for Java applets
41         (we were always rendering fallback content, if any, for Java applets).
42
43 2006-08-29  Sam Weinig  <sam.weinig@gmail.com>
44
45         Reviewed by Tim H.
46
47         - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10628
48           Auto-generate the remaining Objective-C DOM bindings
49
50           Auto-generates DOMHTMLCollection, DOMHTMLElement, DOMHTMLFormElement,
51           and DOMHTMLOptionsCollection.
52
53         * WebKit.xcodeproj/project.pbxproj:
54
55 2006-08-28  Brady Eidson  <beidson@apple.com>
56
57         Reviewed by Darin
58
59         Short of a few small snippets that still need to be pushed to WebCore, this
60         is a final prune of WebIconDatabase.  WebFileDatabase and WebLRUFileList are gone
61         and the small remaining snippets of WebFileDatabase code that were still important
62         are now in static functions in WebIconDatabase.m
63
64         * Loader/WebIconLoader.m:
65         (-[WebIconLoader didFinishLoading]): Removed the flag
66         * Misc/WebFileDatabase.h: Removed.
67         * Misc/WebFileDatabase.m: Removed.
68         * Misc/WebIconDatabase.m:
69         (+[WebIconDatabase sharedIconDatabase]):
70         (-[WebIconDatabase init]):
71         (-[WebIconDatabase iconForURL:withSize:cache:]):
72         (-[WebIconDatabase iconURLForURL:]):
73         (-[WebIconDatabase defaultIconWithSize:]):
74         (-[WebIconDatabase retainIconForURL:]):
75         (-[WebIconDatabase releaseIconForURL:]):
76         (-[WebIconDatabase _isEnabled]):
77         (-[WebIconDatabase _setIconData:forIconURL:]):
78         (-[WebIconDatabase _setHaveNoIconForIconURL:]):
79         (-[WebIconDatabase _setIconURL:forURL:]):
80         (-[WebIconDatabase _hasEntryForIconURL:]):
81         (-[WebIconDatabase _applicationWillTerminate:]):
82         (-[WebIconDatabase _resetCachedWebPreferences:]):
83         (uniqueFilePathForKey): Added from WebFileDatabase
84         (objectFromPathForKey): Added from WebFileDatabase
85         (iconDataFromPathForIconURL):
86         (-[WebIconDatabase _convertToWebCoreFormat]): Make use of static functions and local variables
87           instead of using WebFileDatabase and WebIconDatabase variables that are now obsolete
88         * Misc/WebIconDatabasePrivate.h: Removed alot of obsoleted members
89         * Misc/WebLRUFileList.h: Removed.
90         * Misc/WebLRUFileList.m: Removed.
91         * WebKit.xcodeproj/project.pbxproj: Deleted 4 files
92         * WebKitPrefix.h: Removed ICONDEBUG
93
94 2006-08-28  Tim Omernick  <timo@apple.com>
95
96         Reviewed by Darin Adler.
97
98         * Plugins/WebBaseNetscapePluginView.m:
99         (-[WebBaseNetscapePluginView createPluginScriptableObject]):
100         Removed a bogus typecast.
101
102 2006-08-28  Tim Omernick  <timo@apple.com>
103
104         Reviewed by John Sullivan.
105
106         Part of <rdar://problem/4481553> NetscapeMoviePlugIn example code scripting doesn't work in Firefox (4319)
107         <http://bugzilla.opendarwin.org/show_bug.cgi?id=4319>: NetscapeMoviePlugIn example code scripting doesn't work
108         in Firefox
109
110         * Plugins/WebBaseNetscapePluginView.h:
111         * Plugins/WebBaseNetscapePluginView.m:
112         (-[WebBaseNetscapePluginView createPluginScriptableObject]):
113         Renamed this method (see corresponding WebCore ChangeLog entry for an explanation).
114         Style changes.
115
116 2006-08-28  Brady Eidson  <beidson@apple.com>
117
118         Reviewed by Tim Hatcher's rubberstamp
119
120         Rolled out my last change (16070 - pruning WebFileDatabase code) as it caused a difficult-to-track down
121         failure in layout tests on a release build.
122
123         * Misc/WebFileDatabase.h:
124         * Misc/WebFileDatabase.m:
125         (+[WebFileDatabaseOp opWithCode:key:object:]):
126         (-[WebFileDatabaseOp initWithCode:key:object:]):
127         (-[WebFileDatabaseOp opcode]):
128         (-[WebFileDatabaseOp key]):
129         (-[WebFileDatabaseOp object]):
130         (-[WebFileDatabaseOp perform:]):
131         (-[WebFileDatabaseOp dealloc]):
132         (SetThreadPriority):
133         (-[WebFileDatabase _createLRUList:]):
134         (-[WebFileDatabase _truncateToSizeLimit:]):
135         (+[WebFileDatabase _syncLoop:]):
136         (databaseInit):
137         (-[WebFileDatabase setTimer]):
138         (-[WebFileDatabase setObject:forKey:]):
139         (-[WebFileDatabase removeObjectForKey:]):
140         (-[WebFileDatabase removeAllObjects]):
141         (-[WebFileDatabase objectForKey:]):
142         (-[WebFileDatabase performSetObject:forKey:]):
143         (-[WebFileDatabase performRemoveObjectForKey:]):
144         (-[WebFileDatabase open]):
145         (-[WebFileDatabase close]):
146         (-[WebFileDatabase lazySync:]):
147         (-[WebFileDatabase sync]):
148         (-[WebFileDatabase sizeLimit]):
149         (-[WebFileDatabase count]):
150         (-[WebFileDatabase usage]):
151         (-[WebFileDatabase setSizeLimit:]):
152         * Misc/WebIconDatabase.m:
153         (-[WebIconDatabase _createFileDatabase]):
154         (-[WebIconDatabase _loadIconDictionaries]):
155         * WebKit.xcodeproj/project.pbxproj:
156
157 2006-08-28  Darin Adler  <darin@apple.com>
158
159         Reviewed by Tim Hatcher.
160
161         * WebInspector/webInspector/inspector.js: Add "resize: none" to the list of
162         default values for CSS properties so it will be omitted from most displays
163         of computed style.
164
165 2006-08-28  Brady Eidson  <beidson@apple.com>
166
167         Reviewed by Maciej
168
169         Major prune of unnecessary WebFileDatabase code.  In the end, what
170         useful code that remains in WebFileDatabase will likely be moved directly
171         into WebIconDatabase
172
173         * Misc/WebFileDatabase.h:
174         * Misc/WebFileDatabase.m:
175         (-[WebFileDatabase initWithPath:]):
176         (-[WebFileDatabase objectForKey:]):
177         (-[WebFileDatabase open]):
178         (-[WebFileDatabase close]):
179         * Misc/WebIconDatabase.m:
180         (-[WebIconDatabase _createFileDatabase]):
181         (-[WebIconDatabase _loadIconDictionaries]):
182         * Misc/WebLRUFileList.h: Removed.
183         * Misc/WebLRUFileList.m: Removed.
184         * WebKit.xcodeproj/project.pbxproj:
185
186 2006-08-27  Sam Weinig  <sam.weinig@gmail.com>
187
188         Reviewed by Tim H.
189
190         - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=4624
191           WebCore needs autogenerated Obj-C DOM bindings
192
193           First round of auto-generated Objective C DOM bindings, starting
194           with the DOM Core.
195
196         * WebKit.xcodeproj/project.pbxproj:
197
198 2006-08-25  Brady Eidson  <beidson@apple.com>
199
200         Reviewed by Tim Hatcher
201
202         Fixed up some leaks on [WebIconDatabase init]
203
204         * Misc/WebIconDatabase.m:
205         (-[WebIconDatabase init]):
206
207 2006-08-24  Timothy Hatcher  <timothy@apple.com>
208
209         Reviewed by Darin.
210
211         * WebView/WebFrame.m:
212         (-[WebFrame _updateBackground]): reworded the comment about scroll view and setDrawsBackground:YES
213         * WebView/WebView.m:
214         (-[WebViewPrivate dealloc]): release the background color
215
216 2006-08-24  Timothy Hatcher  <timothy@apple.com>
217
218         Reviewed by Hyatt.
219
220         WebView API to allow changing the background color that draws under transparent page backgrounds.
221
222         * WebView/WebFrame.m:
223         (-[WebFrame _makeDocumentView]):
224         (-[WebFrame _updateBackground]):
225         * WebView/WebFrameInternal.h:
226         * WebView/WebFrameView.m:
227         (-[WebFrameView drawRect:]):
228         * WebView/WebView.m:
229         (-[WebView setBackgroundColor:]):
230         (-[WebView backgroundColor]):
231         (-[WebView _commonInitializationWithFrameName:groupName:]):
232         (-[WebView setDrawsBackground:]):
233         * WebView/WebViewPrivate.h:
234
235 2006-08-24  Timothy Hatcher  <timothy@apple.com>
236
237         Reviewed by Darin.
238
239         Fix for Mail stationary. Selecting a stationary item would cause this exception.
240         *** -[WebSubresourceLoader copyWithZone:]: selector not recognized
241         Uncaught exception - *** -[WebSubresourceLoader copyWithZone:]: selector not recognized
242
243         * Loader/WebFrameLoader.m:
244         (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]):
245         Use _webkit_setObject:forUncopiedKey: when addign the resource to pendingArchivedResources.
246
247 2006-08-23  Maciej Stachowiak  <mjs@apple.com>
248
249         Reviewed by Adele.
250         
251         - fix assertion which I accidentally changed to one that sometimes fails
252         http://bugzilla.opendarwin.org/show_bug.cgi?id=10531
253         
254         * Loader/WebDocumentLoadState.m:
255         (-[WebDocumentLoadState dealloc]):
256         * WebView/WebDataSource.m:
257         (-[WebDataSourcePrivate dealloc]):
258         (-[WebDataSource dealloc]):
259
260 2006-08-23  Maciej Stachowiak  <mjs@apple.com>
261
262         Reviewed by Brady.
263         
264         - move WebFrame code that creates WebDataSources down to WebFrameLoader, in preparation
265         for WebFrameLoader just holding on to WebDocumentLoadState
266
267         * Loader/WebFrameLoader.h:
268         * Loader/WebFrameLoader.m:
269         (-[WebFrameLoader _loadRequest:archive:]):
270         (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]):
271         (-[WebFrameLoader _reloadAllowingStaleDataWithOverrideEncoding:]):
272         (-[WebFrameLoader reload]):
273         * WebView/WebFrame.m:
274         (-[WebFrame _loadItem:withLoadType:]):
275         (-[WebFrame _continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
276         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
277         (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
278         (-[WebFrame _shouldReloadToHandleUnreachableURLFromRequest:]):
279         (-[WebFrame loadRequest:]):
280         (-[WebFrame loadArchive:]):
281         (-[WebFrame reload]):
282         * WebView/WebFrameInternal.h:
283         * WebView/WebFramePrivate.h:
284         * WebView/WebView.m:
285         (-[WebView setCustomTextEncodingName:]):
286
287 2006-08-23  Brady Eidson  <beidson@apple.com>
288
289         Reviewed by Maciej
290
291         First pass at pruning unused WebIconDatabase code.  Focus on removing methods that simply
292         have no place in the new DB at all.  A few renames and a few important FIXMEs result, but no
293         functionality changes.
294
295         * Loader/WebIconLoader.m:
296         (-[WebIconLoader didFinishLoading]): Call to WebIconDatabase instead of directly to the bridge
297         * Misc/WebIconDatabase.h:
298         * Misc/WebIconDatabase.m:
299         (-[WebIconDatabase init]):
300         (-[WebIconDatabase iconForURL:withSize:cache:]):
301         (-[WebIconDatabase iconURLForURL:]):
302         (-[WebIconDatabase defaultIconWithSize:]):
303         (-[WebIconDatabase retainIconForURL:]):
304         (-[WebIconDatabase releaseIconForURL:]):
305         (-[WebIconDatabase removeAllIcons]):
306         (-[WebIconDatabase _setIconData:forIconURL:]):
307         (-[WebIconDatabase _setHaveNoIconForIconURL:]):
308         (-[WebIconDatabase _setIconURL:forURL:]):
309         (-[WebIconDatabase _hasEntryForIconURL:]):
310         (-[WebIconDatabase _applicationWillTerminate:]):
311         (-[WebIconDatabase _resetCachedWebPreferences:]):
312         * Misc/WebIconDatabasePrivate.h: Changed setIcon: to setIconData:
313
314 2006-08-23  Maciej Stachowiak  <mjs@apple.com>
315
316         Reviewed by Adele.
317         
318         - started factoring most of the guts of WebDataSource into a new class
319         
320         WebDocumentLoadState is decoupled from the rest of WebKit and will
321         be moved down to WebCore. I only moved one of the data fields of
322         WebDataSource for now.
323
324         * Loader/WebDocumentLoadState.h: Added.
325         * Loader/WebDocumentLoadState.m: Added.
326         (-[WebDocumentLoadState initWithRequest:]): New class.
327         (-[WebDocumentLoadState dealloc]):
328         (-[WebDocumentLoadState setFrameLoader:]):
329         (-[WebDocumentLoadState setMainResourceData:]):
330         (-[WebDocumentLoadState mainResourceData]):
331         * Loader/WebFrameLoader.m:
332         (-[WebFrameLoader _setDataSource:]): Remove redundant _setWebFrame: call,
333         it would have been called already by this point.
334         (-[WebFrameLoader _setProvisionalDataSource:]): ditto.
335         * WebKit.xcodeproj/project.pbxproj:
336         * WebView/WebDataSource.m:
337         (-[WebDataSourcePrivate dealloc]):
338         (-[WebDataSource _setWebFrame:]):
339         (-[WebDataSource _setPrimaryLoadComplete:]):
340         (-[WebDataSource initWithRequest:]):
341         (-[WebDataSource data]):
342
343 2006-08-23  Maciej Stachowiak  <mjs@apple.com>
344
345         Reviewed by Adele.
346         
347         - refactoring of WebDataSource in preparation for moving a bunch of it to a new class
348         
349         - minimize WebDataSourceInternal.h to be only methods called from outside WebDataSource
350         - reduce Private category implementation to be only the SPI methods
351         - make new Internal and FileInternal categories which contain the
352         remainder (depending on whether they are called from outside of
353         WebDataSource)
354
355         * WebView/WebDataSource.m:
356         (-[WebDataSource _setMainDocumentError:]):
357         (addTypesFromClass):
358         (+[WebDataSource _representationClassForMIMEType:]):
359         (-[WebDataSource _commitIfReady]):
360         (-[WebDataSource _commitLoadWithData:]):
361         (-[WebDataSource _doesProgressiveLoadWithMIMEType:]):
362         (-[WebDataSource _addResponse:]):
363         (-[WebDataSource _revertToProvisionalState]):
364         (-[WebDataSource _mainDocumentError]):
365         (-[WebDataSource _addSubframeArchives:]):
366         (-[WebDataSource _fileWrapperForURL:]):
367         (+[WebDataSource _repTypesAllowImageTypeOmission:]):
368         (-[WebDataSource _decidePolicyForMIMEType:decisionListener:]):
369         (-[WebDataSource _finishedLoading]):
370         (-[WebDataSource _setResponse:]):
371         (-[WebDataSource _setRequest:]):
372         (-[WebDataSource _setupForReplaceByMIMEType:]):
373         (-[WebDataSource _receivedMainResourceError:complete:]):
374         (-[WebDataSource _mainReceivedError:complete:]):
375         (-[WebDataSource _defersCallbacks]):
376         (-[WebDataSource _downloadWithLoadingConnection:request:response:proxy:]):
377         (-[WebDataSource _didFailLoadingWithError:forResource:]):
378         (-[WebDataSource _didFinishLoadingForResource:]):
379         (-[WebDataSource _didReceiveData:contentLength:forResource:]):
380         (-[WebDataSource _didReceiveResponse:forResource:]):
381         (-[WebDataSource _didCancelAuthenticationChallenge:forResource:]):
382         (-[WebDataSource _didReceiveAuthenticationChallenge:forResource:]):
383         (-[WebDataSource _willSendRequest:forResource:redirectResponse:]):
384         (-[WebDataSource _identifierForInitialRequest:]):
385         (-[WebDataSource _archivedSubresourceForURL:]):
386         (-[WebDataSource _startLoading]):
387         (-[WebDataSource _stopRecordingResponses]):
388         (-[WebDataSource _loadingStartedTime]):
389         (-[WebDataSource _replaceSelectionWithArchive:selectReplacement:]):
390         (-[WebDataSource _documentFragmentWithArchive:]):
391         (-[WebDataSource _documentFragmentWithImageResource:]):
392         (-[WebDataSource _imageElementWithImageResource:]):
393         (-[WebDataSource _title]):
394         (-[WebDataSource _isStopping]):
395         (-[WebDataSource _setWebFrame:]):
396         (-[WebDataSource _URL]):
397         (-[WebDataSource _loadFromPageCache:]):
398         (-[WebDataSource _popSubframeArchiveWithName:]):
399         (-[WebDataSource _setIsClientRedirect:]):
400         (-[WebDataSource _setURL:]):
401         (-[WebDataSource _setLastCheckedRequest:]):
402         (-[WebDataSource _defersCallbacksChanged]):
403         (-[WebDataSource _lastCheckedRequest]):
404         (-[WebDataSource _stopLoading]):
405         (-[WebDataSource _bridge]):
406         (-[WebDataSource _webView]):
407         (-[WebDataSource _triggeringAction]):
408         (-[WebDataSource _setTriggeringAction:]):
409         (-[WebDataSource __adoptRequest:]):
410         (-[WebDataSource _isDocumentHTML]):
411         (-[WebDataSource _stopLoadingWithError:]):
412         (-[WebDataSource _setPrimaryLoadComplete:]):
413         (-[WebDataSource _responses]):
414         (-[WebDataSource _makeRepresentation]):
415         (-[WebDataSource _isClientRedirect]):
416         (-[WebDataSource _originalRequest]):
417         (-[WebDataSource _URLForHistory]):
418         (-[WebDataSource _addToUnarchiveState:]):
419         (-[WebDataSource _setOverrideEncoding:]):
420         (-[WebDataSource _setIconURL:]):
421         (-[WebDataSource _setIconURL:withType:]):
422         (-[WebDataSource _overrideEncoding]):
423         (-[WebDataSource _setTitle:]):
424         * WebView/WebDataSourceInternal.h:
425
426 2006-08-23  Brady Eidson  <beidson@apple.com>
427
428         Reviewed by John Sullivan
429
430         /me crosses fingers
431         Flip the switch to the new Icon Database
432         Massive code pruning is coming up
433
434         * WebKitPrefix.h: Flipped the switch
435
436 2006-08-23  Brady Eidson  <beidson@apple.com>
437
438         Reviewed by Beth
439         Since I just pushed the default URL icon from WebKit to WebCore, but
440         WebKit was still using its version of the default icon, this patch makes it
441         use the WebCore version
442
443         * Misc/WebIconDatabase.m:
444         (-[WebIconDatabase defaultIconWithSize:]):
445
446 2006-08-22  Maciej Stachowiak  <mjs@apple.com>
447
448         Reviewed by Brady.
449         
450         - remove "loading" flag from WebDataSource and code that manages it; it is redundat.
451
452         * Loader/WebFrameLoader.m:
453         (-[WebFrameLoader addPlugInStreamLoader:]):
454         (-[WebFrameLoader removePlugInStreamLoader:]):
455         (-[WebFrameLoader addSubresourceLoader:]):
456         (-[WebFrameLoader removeSubresourceLoader:]):
457         * WebView/WebDataSource.m:
458         (-[WebDataSourcePrivate dealloc]):
459         (-[WebDataSource _setPrimaryLoadComplete:]):
460         (-[WebDataSource _stopLoading]):
461         (-[WebDataSource _prepareForLoadStart]):
462         (-[WebDataSource _startLoading]):
463         (-[WebDataSource isLoading]):
464         * WebView/WebDataSourceInternal.h:
465
466 2006-08-22  Maciej Stachowiak  <mjs@apple.com>
467
468         Reviewed by Eric.
469
470         <rdar://problem/4683948> REGRESSION: Assertion failure in [FrameProgressEntry addChild:forDataSource:] (fandango.com)
471         
472         * Loader/WebFrameLoader.m:
473         (-[WebFrameLoader addSubresourceLoader:]): Add a WebKit-level assertion that should fire when this bad
474         situation occurs.
475         * Loader/WebSubresourceLoader.m:
476         (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]): Prevent
477         the situation from occuring.
478
479 2006-08-22  Maciej Stachowiak  <mjs@apple.com>
480
481         Reviewed by Anders.
482         
483         - pull more WebDataSource code into WebFrameLoader
484         - make WebMainResourceLoader not depend on WebKit or on SPI
485
486         * Loader/WebFrameLoader.h:
487         * Loader/WebFrameLoader.m:
488         (-[WebFrameLoader _downloadWithLoadingConnection:request:response:proxy:]):
489         (-[WebFrameLoader _updateIconDatabaseWithURL:]):
490         (-[WebFrameLoader _notifyIconChanged:]):
491         (-[WebFrameLoader _iconLoaderReceivedPageIcon:]):
492         (-[WebFrameLoader _checkNavigationPolicyForRequest:andCall:withSelector:]):
493         (-[WebFrameLoader _checkContentPolicyForMIMEType:andCall:withSelector:]):
494         (-[WebFrameLoader cancelContentPolicy]):
495         * Loader/WebIconLoader.m:
496         (-[WebIconLoader didFinishLoading]):
497         * Loader/WebLoader.m:
498         (-[NSURLProtocol loadWithRequest:]):
499         (-[NSURLProtocol setDefersCallbacks:]):
500         * Loader/WebMainResourceLoader.h:
501         * Loader/WebMainResourceLoader.m:
502         (-[WebMainResourceLoader initWithFrameLoader:]):
503         (-[WebMainResourceLoader dealloc]):
504         (-[WebMainResourceLoader cancelWithError:]):
505         (-[WebMainResourceLoader continueAfterNavigationPolicy:formState:]):
506         (-[WebMainResourceLoader willSendRequest:redirectResponse:]):
507         (-[WebMainResourceLoader continueAfterContentPolicy:]):
508         (-[WebMainResourceLoader checkContentPolicy]):
509         (-[WebMainResourceLoader didReceiveResponse:]):
510         * Plugins/WebPluginContainerCheck.m:
511         * WebCoreSupport/WebSystemInterface.m:
512         (InitWebCoreSystemInterface):
513         * WebView/WebDataSource.m:
514         (-[WebDataSource _loadIcon]):
515         (-[WebDataSource _cancelledError]):
516         (+[WebDataSource _repTypesAllowImageTypeOmission:]):
517         (+[WebDataSource _representationClassForMIMEType:]):
518         (-[WebDataSource _commitLoadWithData:]):
519         (-[WebDataSource _isDocumentHTML]):
520         * WebView/WebDataSourceInternal.h:
521         * WebView/WebFramePrivate.h:
522         * WebView/WebPolicyDelegate.m:
523         * WebView/WebPolicyDelegatePrivate.h:
524
525 2006-08-21  Maciej Stachowiak  <mjs@apple.com>
526
527         Reviewed by Brady.
528         
529         - move more code from WebDataSource to WebFrameLoader
530         
531         Also marked a few more methods in WebDataSource as likely MOVABLE in a future round, since they do not
532         use any of WebDataSource's private data.
533
534         * Loader/WebFrameLoader.h:
535         * Loader/WebFrameLoader.m:
536         (-[WebFrameLoader addPlugInStreamLoader:]):
537         (-[WebFrameLoader removePlugInStreamLoader:]):
538         (-[WebFrameLoader addSubresourceLoader:]):
539         (-[WebFrameLoader removeSubresourceLoader:]):
540         (-[WebFrameLoader _didReceiveAuthenticationChallenge:forResource:]):
541         (-[WebFrameLoader _didCancelAuthenticationChallenge:forResource:]):
542         (-[WebFrameLoader _didReceiveResponse:forResource:]):
543         (-[WebFrameLoader _didReceiveData:contentLength:forResource:]):
544         (-[WebFrameLoader _didFinishLoadingForResource:]):
545         (-[WebFrameLoader _didFailLoadingWithError:forResource:]):
546         (-[WebFrameLoader _privateBrowsingEnabled]):
547         (-[WebFrameLoader _finishedLoadingResource]):
548         (-[WebFrameLoader _receivedError:]):
549         (-[WebFrameLoader _finishedLoading]):
550         * Loader/WebMainResourceLoader.m:
551         (-[WebMainResourceLoader didReceiveData:lengthReceived:allAtOnce:]):
552         (-[WebMainResourceLoader didFinishLoading]):
553         * Loader/WebNetscapePlugInStreamLoader.m:
554         (-[WebNetscapePlugInStreamLoader didFinishLoading]):
555         (-[WebNetscapePlugInStreamLoader didFailWithError:]):
556         (-[WebNetscapePlugInStreamLoader cancelWithError:]):
557         * Loader/WebSubresourceLoader.m:
558         (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]):
559         (-[WebSubresourceLoader signalFinish]):
560         (-[WebSubresourceLoader didFailWithError:]):
561         (-[WebSubresourceLoader cancel]):
562         * Plugins/WebNetscapePluginStream.m:
563         (-[WebNetscapePluginStream start]):
564         * WebView/WebDataSource.m:
565         (-[WebDataSource _replaceSelectionWithArchive:selectReplacement:]):
566         (-[WebDataSource _updateIconDatabaseWithURL:]):
567         (-[WebDataSource _loadIcon]):
568         (-[WebDataSource _setPrimaryLoadComplete:]):
569         (-[WebDataSource _cancelledError]):
570         (+[WebDataSource _repTypesAllowImageTypeOmission:]):
571         (+[WebDataSource _representationClassForMIMEType:]):
572         (-[WebDataSource _commitLoadWithData:]):
573         (-[WebDataSource _receivedMainResourceError:complete:]):
574         (-[WebDataSource _iconLoaderReceivedPageIcon:]):
575         (-[WebDataSource _isDocumentHTML]):
576         * WebView/WebDataSourceInternal.h:
577
578 2006-08-21  Brady Eidson  <beidson@apple.com>
579
580         Reviewed by John
581
582         Quick ICONDEBUG flag fix
583
584         * Misc/WebIconDatabase.m:
585         (-[WebIconDatabase _applicationWillTerminate:]):
586
587 2006-08-21  Brady Eidson  <beidson@apple.com>
588
589         Reviewed by Anders
590
591         -Renamed an internal only method for clarity
592         -Tweaked WebDataSource for notification purposes with the new expiring icons
593         -Fixed a bug with the ICONDEBUG flag
594
595         * Misc/WebIconDatabase.m:
596         (-[WebIconDatabase init]):
597         (-[WebIconDatabase iconForURL:withSize:cache:]): #ifdef bug fixed
598         (-[WebIconDatabase _hasEntryForIconURL:]): Renamed for clarity
599         * Misc/WebIconDatabasePrivate.h:
600         * WebView/WebDataSource.m:
601         (-[WebDataSource _updateIconDatabaseWithURL:]):
602         (-[WebDataSource _notifyIconChanged:]):
603         (-[WebDataSource _loadIcon]):
604         (-[WebDataSource _iconLoaderReceivedPageIcon:]):
605
606 2006-08-17  Maciej Stachowiak  <mjs@apple.com>
607
608         Reviewed by Brady.
609         
610         - pull a bit of WebDataSource code into WebFrameLoader
611
612         * Loader/WebFrameLoader.m:
613         (-[WebFrameLoader _receivedError:]):
614         (-[WebFrameLoader webFrame]):
615         (-[WebFrameLoader _handleFallbackContent]):
616         (+[WebFrameLoader _canShowMIMEType:]):
617         (+[WebFrameLoader _representationExistsForURLScheme:]):
618         (+[WebFrameLoader _generatedMIMETypeForURLScheme:]):
619         * WebView/WebDataSource.m:
620         * WebView/WebDataSourceInternal.h:
621
622 2006-08-17  Timothy Hatcher  <timothy@apple.com>
623
624         Reviewed by Kevin Decker.
625
626         <rdar://problem/4606857> WebKit: WebPreferencesChangedNotification not exported in 64-bit
627
628         * WebKit.LP64.exp:
629
630 2006-08-17  Timothy Hatcher  <timothy@apple.com>
631
632         Reviewed by Kevin Decker.
633
634         <rdar://problem/4633896> -[WebView close] should clear all delegates and call setHostWindow:nil
635         <rdar://problem/4649759> Crash when selecting View Source menu using Chinese (-[WebView _close])
636
637         Check to make sure _private is not null. A WebView can be dealloced before _private is setup.
638         Set the _private->closed flag at the beginning of _close to prevent reentry.
639         Set the host window and all the delegates to nil in _close.
640
641         * WebView/WebView.m:
642         (-[WebView _close]):
643
644 2006-08-16  Brady Eidson  <beidson@apple.com>
645
646         Reviewed by Maciej
647
648         * Misc/WebIconDatabase.m: Pruned unused method
649         * Misc/WebIconDatabasePrivate.h: Ditto
650
651
652 2006-08-15  Maciej Stachowiak  <mjs@apple.com>
653
654         Reviewed by Adele (preliminary version) and later by Kevin.
655         
656         - remove most WebKit dependencies from WebMainResourceLoader.
657
658         * Loader/WebFrameLoader.h:
659         * Loader/WebFrameLoader.m:
660         (-[WebFrameLoader cannotShowMIMETypeForURL:]):
661         (-[WebFrameLoader interruptForPolicyChangeErrorWithRequest:]):
662         (-[WebFrameLoader isHostedByObjectElement]):
663         (-[WebFrameLoader isLoadingMainFrame]):
664         (+[WebFrameLoader _canShowMIMEType:]):
665         (+[WebFrameLoader _representationExistsForURLScheme:]):
666         (+[WebFrameLoader _generatedMIMETypeForURLScheme:]):
667         * Loader/WebMainResourceLoader.h:
668         * Loader/WebMainResourceLoader.m:
669         (-[WebMainResourceLoader interruptForPolicyChangeError]):
670         (-[WebMainResourceLoader willSendRequest:redirectResponse:]):
671         (isCaseInsensitiveEqual):
672         (shouldLoadAsEmptyDocument):
673         (-[WebMainResourceLoader continueAfterContentPolicy:response:]):
674         (-[WebMainResourceLoader didReceiveResponse:]):
675         (-[WebMainResourceLoader didReceiveData:lengthReceived:allAtOnce:]):
676         (-[WebMainResourceLoader didFinishLoading]):
677         (-[WebMainResourceLoader loadWithRequestNow:]):
678         (-[WebMainResourceLoader loadWithRequest:]):
679
680 2006-08-15  Tim Omernick  <timo@apple.com>
681
682         Reviewed by Kevin Decker.
683
684         * Plugins/WebNetscapePluginPackage.m:
685         (-[WebNetscapePluginPackage _unloadWithShutdown:]):
686         Fixed a subtle problem with the 64-bit debug build -- as written, this would LOG() on 64-bit and do nothing on
687         32-bit!
688         * Plugins/WebPluginDatabase.m:
689         (-[WebPluginDatabase _scanForNewPlugins]):
690         Use +[NSMutableSet set] here.
691
692 2006-08-15  Tim Omernick  <timo@apple.com>
693
694         Reviewed by Darin Adler.
695
696         <http://bugzilla.opendarwin.org/show_bug.cgi?id=8980>
697         ASSERTION FAILED: !isLoaded (WebKit/WebKit/Plugins/WebBasePluginPackage.m:228 -[WebBasePluginPackage dealloc])
698
699         <rdar://problem/4526052> intermittent assertion failure in -[WebBasePluginPackage dealloc] running layout tests (8980)
700         
701         * Plugins/WebPluginDatabase.h:
702         * Plugins/WebPluginDatabase.m:
703         (+[WebPluginDatabase installedPlugins]):
704         Observe NSApplicationWillTerminateNotification so we can unload plug-ins on quit.
705         (-[WebPluginDatabase plugins]):
706         'plugins' is now a dictionary.
707         (-[WebPluginDatabase close]):
708         Call new -_removePlugin: method.
709         (-[WebPluginDatabase refresh]):
710         Moved parts of this method out into other methods: -_addPlugin:, -_removePlugin:, and -_scanForNewPlugins.
711         (-[WebPluginDatabase _plugInPaths]):
712         No changes; just moved in file.
713         (-[WebPluginDatabase _addPlugin:]):
714         New method.  Refactored from -refresh.  Adds a plug-in to the database.
715         (-[WebPluginDatabase _removePlugin:]):
716         New method.  Refactored from -refresh.  Remove a plug-in from the database.
717         (-[WebPluginDatabase _scanForNewPlugins]):
718         New method.  Refactored from -refresh.  Returns the list of plug-in packages on disk.
719         (-[WebPluginDatabase _applicationWillTerminate]):
720         New method.  Called when the application terminates.  Closes the plug-in database so that all plug-ins are
721         removed from the DB (and unloaded if necessary).
722
723         * Plugins/WebBasePluginPackage.h:
724         * Plugins/WebBasePluginPackage.m:
725         (-[WebBasePluginPackage initWithPath:]):
726         Try to create the NSBundle first, so if the file is not a valid bundle we bail out early.  This
727         avoids some stat()s and allocations during the plug-in refresh process.
728         (-[WebBasePluginPackage isLoaded]):
729         Removed.
730         (-[WebBasePluginPackage load]):
731         Base class for plug-in packages now always loads "successfully".
732         (-[WebBasePluginPackage dealloc]):
733         Removed this assertion.  The base plug-in package class has no concept of
734         "unloading".
735         (-[WebBasePluginPackage finalize]):
736         ditto.
737         (-[WebBasePluginPackage wasRemovedFromPluginDatabase:]):
738         Moved code to unload plug-in package to WebNetscapePluginPackage.  Not all plug-in
739         packages can be "unloaded".
740
741         * Plugins/WebNetscapePluginPackage.h:
742         * Plugins/WebNetscapePluginPackage.m:
743         (-[WebNetscapePluginPackage _unloadWithShutdown:]):
744         Combined old -unload and -unloadWithoutShutdown methods into this new one.
745         (-[WebNetscapePluginPackage initWithPath:]):
746         Call new unload method.
747         (-[WebNetscapePluginPackage load]):
748         ditto
749         (-[WebNetscapePluginPackage wasRemovedFromPluginDatabase:]):
750         ditto
751         (-[WebNetscapePluginPackage open]):
752         New method.  Called when a plug-in instance starts running.
753         (-[WebNetscapePluginPackage close]):
754         New method.  Called when a plug-in instance stops running.  When all plug-in instances
755         close the plug-in package, and the plug-in package is removed from the database, the plug-in
756         is unloaded.
757
758         * Plugins/WebPluginPackage.m:
759         (-[WebPluginPackage initWithPath:]):
760         (-[WebPluginPackage load]):
761         Made this a bit more efficient by checking if the bundle is already loaded.
762         (-[WebBasePluginPackage unload]):
763         Removed.
764         (-[WebBasePluginPackage isLoaded]):
765         Removed.
766
767         * Plugins/WebBaseNetscapePluginView.m:
768         (-[WebBaseNetscapePluginView start]):
769         Open the plug-in package so it remains loaded while this instance uses it.
770         (-[WebBaseNetscapePluginView stop]):
771         Close the plug-in package when the plug-in instance is stopped.
772         
773         * Plugins/WebBaseNetscapePluginStream.m:
774         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]):
775         This check is not necessary.  Netscape plug-in packages are never unloaded until all their instances have
776         been stopped, and a Netscape plug-in instance will stop its streams when it is stopped.
777         (-[WebBaseNetscapePluginStream _destroyStream]):
778         ditto
779         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
780         ditto
781         (-[WebBaseNetscapePluginStream _deliverData]):
782         ditto
783
784 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
785
786         Reviewed by Tim H.
787
788         Build fix:  DWARF and -gfull are incompatible with symbol separation.
789
790         * WebKit.xcodeproj/project.pbxproj:
791
792 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
793
794         Reviewed by Tim H.
795
796         http://bugzilla.opendarwin.org/show_bug.cgi?id=10394
797         Bug 10394: WebKit Release and Production configurations should enable dead code stripping
798
799         * WebKit.xcodeproj/project.pbxproj:
800
801 2006-08-15  Maciej Stachowiak  <mjs@apple.com>
802
803         Reviewed by Anders.
804         
805         - remove WebKit dependencies from WebPlugInStreamLoader via a protocol veil of ignorance
806
807         * Loader/WebNetscapePlugInStreamLoader.h:
808         * Loader/WebNetscapePlugInStreamLoader.m:
809         (-[WebNetscapePlugInStreamLoader initWithDelegate:frameLoader:]):
810         * Loader/WebPlugInStreamLoaderDelegate.h: Added.
811         * Plugins/WebBaseNetscapePluginStream.h:
812         * Plugins/WebNetscapePluginStream.m:
813         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
814         * WebKit.xcodeproj/project.pbxproj:
815
816 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
817
818         Reviewed by Tim H.
819
820         http://bugzilla.opendarwin.org/show_bug.cgi?id=10384
821         Bug 10384: Switch to DWARF for Release configuration
822
823         * WebKit.xcodeproj/project.pbxproj:
824
825 2006-08-15  Graham Dennis  <graham.dennis@gmail.com>
826
827         Reviewed by Darin.
828         
829         - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10314
830           WebUnarchivingState archivedResourceForURL: doesn't work
831
832         * WebView/WebUnarchivingState.m:
833         (-[WebUnarchivingState archivedResourceForURL:]):
834         Fixed to get objects from the archived resources dictionary using
835         the URL as a string instead of as the URL itself (as this is how
836         the data is put into the dictionary).
837
838 2006-08-14  Maciej Stachowiak  <mjs@apple.com>
839
840         Reviewed by Beth.
841         
842         - remove many (but not all) WebKit dependencies from WebNetscapePlugInStreamLoader (it still 
843         depends on WebNetscapePluginStream).
844
845         * Loader/WebFrameLoader.h:
846         * Loader/WebFrameLoader.m:
847         (-[WebFrameLoader fileDoesNotExistErrorWithResponse:]):
848         * Loader/WebNetscapePlugInStreamLoader.h:
849         * Loader/WebNetscapePlugInStreamLoader.m:
850         (-[WebNetscapePlugInStreamLoader initWithStream:frameLoader:]):
851         (-[WebNetscapePlugInStreamLoader releaseResources]):
852         (-[WebNetscapePlugInStreamLoader didReceiveResponse:]):
853         * Plugins/WebNetscapePluginStream.m:
854         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
855
856 2006-08-14  Maciej Stachowiak  <mjs@apple.com>
857
858         Reviewed by Tim Omernick.
859         
860         - fixed REGRESSION: crash when leaving youtube page while movie is still loading
861         http://bugzilla.opendarwin.org/show_bug.cgi?id=10398
862
863         * Loader/WebNetscapePlugInStreamLoader.m:
864         (-[WebNetscapePlugInStreamLoader initWithStream:view:]): Set the frame loader for this stream.
865         (-[WebNetscapePlugInStreamLoader cancelWithError:]): Make sure to destroy the stream as well;
866         otherwise, when we try to clean up later, we won't have the right context.
867
868 2006-08-14  David Hyatt  <hyatt@apple.com>
869
870         Fix for Radar bug 4478840, Safari should not reduce null events sent to
871         plug-ins in windows that are inactive but visible.
872
873         With this fix you can view videos in visible background windows on YouTube
874         (for example) and not see any drop in frame rate.
875
876         Reviewed by timo
877
878         * Plugins/WebBaseNetscapePluginView.m:
879         (-[WebBaseNetscapePluginView restartNullEvents]):
880
881 2006-08-14  Maciej Stachowiak  <mjs@apple.com>
882
883         Reviewed by Brady.
884         
885         - removed WebKit-level dependencies from WebFormDataStream. Use WebCore version of system interface
886
887         * Loader/WebFormDataStream.m:
888         (formCanRead):
889         (formEventCallback):
890         (webSetHTTPBody):
891         * WebCoreSupport/WebSystemInterface.m:
892         (InitWebCoreSystemInterface):
893
894 2006-08-14  Maciej Stachowiak  <mjs@apple.com>
895
896         Rubber stamped by Brady.
897         
898         - move WebFormDataStream from WebView to Loader
899
900         * WebKit.xcodeproj/project.pbxproj:
901         * WebView/WebFormDataStream.h: Removed.
902         * WebView/WebFormDataStream.m: Removed.
903
904 2006-08-13  Maciej Stachowiak  <mjs@apple.com>
905
906         Reviewed by Brady.
907         
908         - remove WebKit dependencies from WebSubresourceLoader, except WebFormDataStream
909         
910         (WebFormDataStream will be moved into the Loader directory soon)
911
912         * Loader/WebFrameLoader.h:
913         * Loader/WebFrameLoader.m:
914         (-[WebFrameLoader _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]):
915         * Loader/WebSubresourceLoader.m:
916         (isConditionalRequest):
917         (hasCaseInsensitivePrefix):
918         (isFileURLString):
919         (setHTTPReferrer):
920         (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]):
921
922 2006-08-13  Brady Eidson  <beidson@apple.com>
923
924         Reviewed by Maciej
925
926         Relocated the WebIconLoaders
927
928         * Misc/WebIconLoader.h: Moved to Loader/
929         * Misc/WebIconLoader.m: Moved to Loader/
930         * WebKit.xcodeproj/project.pbxproj:
931
932 2006-08-13  Maciej Stachowiak  <mjs@apple.com>
933
934         Reviewed by Beth.
935         
936         - removed non-Loader WebKit dependencies from WebDataProtocol for
937         real (whoops) and fix some typos.
938
939         * Loader/WebDataProtocol.m:
940         (isCaseInsensitiveEqual): Added.
941         (+[WebDataProtocol _webIsDataProtocolURL:]): Avoid WebKit calls.
942         (-[WebDataProtocol startLoading]): ditto
943         * Loader/WebFrameLoader.m:
944         (isCaseInsensitiveEqual): Fixed spelling from isCaseSensitiveEqual.
945         (-[WebFrameLoader _canUseResourceForRequest:]): Use proper call.
946
947 2006-08-13  Brady Eidson  <beidson@apple.com>
948
949         Reviewed by Maciej
950
951         The way of detecting a failed icon load before was to try and construct
952         an image from the icon and if that image construction failed, mark the icon
953         as missing.  
954         A much more efficient way is to check for an error response.  We'll still
955         check for invalid image data, but most servers will correctly return an HTTP 
956         error on a missing icon.
957         
958         * Misc/WebIconLoader.m:
959         (-[WebIconLoader didFinishLoading]): Added check for http error response
960
961 2006-08-13  Maciej Stachowiak  <mjs@apple.com>
962
963         Reviewed by Darin.
964         
965         - remove all non-Loader dependencies from WebLoader
966         
967         As part of this I moved WebDataProtocol to the loader directory
968         and removed dependencies on the rest of WebKit from that too.
969
970         * Loader/WebFrameLoader.h:
971         * Loader/WebFrameLoader.m:
972         (-[WebFrameLoader setDefersCallbacks:]):
973         (-[WebFrameLoader stopLoading]):
974         (-[WebFrameLoader cancelledErrorWithRequest:]):
975         (-[WebFrameLoader clearArchivedResources]):
976         (-[WebFrameLoader deliverArchivedResources]):
977         (-[WebFrameLoader deliverArchivedResourcesAfterDelay]):
978         (isCaseSensitiveEqual):
979         (-[WebFrameLoader _canUseResourceForRequest:]):
980         (-[WebFrameLoader _canUseResourceWithResponse:]):
981         (-[WebFrameLoader pendingArchivedResources]):
982         (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]):
983         (-[WebFrameLoader archiveLoadPendingForLoader:]):
984         (-[WebFrameLoader cancelPendingArchiveLoadForLoader:]):
985         * Loader/WebLoader.h:
986         * Loader/WebLoader.m:
987         (-[NSURLProtocol releaseResources]):
988         (-[NSURLProtocol loadWithRequest:]):
989         (-[NSURLProtocol setDefersCallbacks:]):
990         (-[NSURLProtocol addData:allAtOnce:]):
991         (-[NSURLProtocol resourceData]):
992         (-[NSURLProtocol didReceiveData:lengthReceived:allAtOnce:]):
993         (-[NSURLProtocol connection:didReceiveData:lengthReceived:]):
994         (-[NSURLProtocol cancelWithError:]):
995         (-[NSURLProtocol cancelledError]):
996         * Loader/WebMainResourceLoader.m:
997         (-[WebMainResourceLoader addData:allAtOnce:]):
998         (-[WebMainResourceLoader didReceiveData:lengthReceived:allAtOnce:]):
999         * Loader/WebNetscapePlugInStreamLoader.m:
1000         (-[WebNetscapePlugInStreamLoader didReceiveData:lengthReceived:allAtOnce:]):
1001         * Loader/WebSubresourceLoader.m:
1002         (-[WebSubresourceLoader didReceiveData:lengthReceived:allAtOnce:]):
1003         * WebKit.xcodeproj/project.pbxproj:
1004         * WebView/WebDataProtocol.h: Removed.
1005         * WebView/WebDataProtocol.m: Removed.
1006
1007 2006-08-11  Tim Omernick  <timo@apple.com>
1008
1009         Reviewed by Darin.
1010
1011         <http://bugzilla.opendarwin.org/show_bug.cgi?id=10111> - Menu flickers over Flash content
1012         <rdar://problem/3052546> Plugins don't work with z-index (overlapping elements, etc.)
1013
1014         * Plugins/WebBaseNetscapePluginView.m:
1015         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
1016         Don't just clip to the dirty region for "transparent" plug-ins -- do it for all plug-ins.  This is a
1017         generally useful thing to do, as it prevents the plug-in from drawing over parts of the window that
1018         have already been drawn and are not expected to be redrawn in the same update.
1019
1020 2006-08-11  Brady Eidson  <beidson@apple.com>
1021
1022         Reviewed by John, Timo, Adele, and Darin
1023
1024         In addition to a few style/good-practice cleanups, this patch will convert the old icon database
1025         format to the WebCore format if the WebCore db is empty (implying this conversion has yet to take
1026         place).  After the conversion, it will delete all traces of the old format to free the unneeded space
1027
1028         * Misc/WebIconDatabase.m:
1029         (-[WebIconDatabase init]):  
1030         (-[WebIconDatabase _setIconURL:forURL:]):  Changed the bridge's name for this method to be more clear
1031         (-[WebIconDatabase _createFileDatabase]):  
1032         (-[WebIconDatabase _iconDataForIconURL:]):  This grabs the raw data for use in the conversion function
1033         (-[WebIconDatabase _convertToWebCoreFormat]):  This does the actual conversion
1034
1035 2006-08-11  Tim Omernick  <timo@apple.com>
1036
1037         Reviewed by John Sullivan.
1038         
1039         Needed for <rdar://problem/4678070>.
1040
1041         * Plugins/WebBaseNetscapePluginView.m:
1042         (-[WebBaseNetscapePluginView sendEvent:]):
1043         Changed an assertion to an early return.  It should be possible to send events, especially updateEvt (for image capturing
1044         purposes), to off-screen plug-ins.  It just doesn't work right now.  See <rdar://problem/4318269>.
1045
1046 2006-08-11  John Sullivan  <sullivan@apple.com>
1047
1048         Reviewed by Darin
1049         
1050         - fixed <rdar://problem/4522894> Would be nice if Safari shrank pages a little if necessary 
1051         to avoid printing an almost-empty page
1052
1053         * WebView/WebHTMLView.m:
1054         (-[NSArray knowsPageRange:]):
1055         If the last page has a short-enough orphan (< 1/10 of the page height is the number I pulled
1056         out of ... the air), then we adjust the scale factor slightly and check whether this reduces
1057         the page count and thus eliminates the orphan.
1058         
1059 2006-08-07  Brady Eidson  <beidson@apple.com>
1060
1061         Reviewed by Anders and John
1062
1063         * Misc/WebIconDatabase.m:
1064         (-[WebIconDatabase init]):
1065         (-[WebIconDatabase isIconExpiredForIconURL:]): Get if an icon expired
1066         (-[WebIconDatabase isIconExpiredForPageURL:]): Ditto
1067         (-[WebIconDatabase _setIconURL:forURL:]):
1068         (-[WebIconDatabase _sendNotificationForURL:]): Moved to WebKitPendingPublic for use outside of WebIconDatabase
1069         (-[WebIconDatabase loadIconFromURL:]): Allow a load outside the context of a page load
1070         * Misc/WebIconDatabasePrivate.h:
1071
1072         * Misc/WebIconLoader.m:
1073         (-[WebIconLoader didFinishLoading]): fixed up the "flipping the switch" #defs a bit
1074         (-[WebIconLoader willSendRequest:redirectResponse:]): override to allow a load
1075         outside of the context of a page load
1076
1077         * WebCoreSupport/WebIconDatabaseBridge.h: Added.
1078         * WebCoreSupport/WebIconDatabaseBridge.m: Added.
1079         (-[WebIconDatabaseBridge init]):
1080         (-[WebIconDatabaseBridge dealloc]):
1081         (-[WebIconDatabaseBridge loadIconFromURL:]):  Kick off a load on an icon outside
1082         of the context of any page load
1083         (-[WebIconDatabaseBridge _setIconData:forIconURL:]):  WebKit side of bridge method
1084         (-[WebIconDatabaseBridge _setHaveNoIconForIconURL:]):  WebKit side of bridge method
1085         (-[WebIconDatabaseBridge releaseCachedLoaderForIconURL:]): 
1086         (+[WebIconDatabaseBridge sharedBridgeInstance]): Moved this from WebCore to WebKit
1087         so both sides of the bridge get the WebKit version
1088         * WebKit.xcodeproj/project.pbxproj: Added some files
1089         * WebView/WebDataSource.m:
1090         (-[WebDataSource _loadIcon]): Added check for reload/expired icon to force
1091         a load even if we already have it
1092
1093 2006-08-04  Sam Weinig  <sam.weinig@gmail.com>
1094
1095         Reviewed by Darin.
1096
1097         - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10192
1098           Make WebCore (and friends) compile with -Wshorten-64-to-32
1099
1100           * Adds 'f' to float literals where expecting a float.
1101           * Use ceilf() instead of ceil() when assigning to a float.
1102           * Adds explicit casts where OK.
1103           
1104           NOTE: The -Wshorten-64-to-32 flag was not added for WebKit
1105           because there are still a few places where no error handling 
1106           is in place.  The flag can be added as soon as those are worked
1107           out.
1108
1109         * Misc/WebNSControlExtras.m:
1110         (-[NSControl sizeToFitAndAdjustWindowHeight]):
1111         * Misc/WebNSImageExtras.m:
1112         (-[NSImage _web_scaleToMaxSize:]):
1113         * Misc/WebNSViewExtras.h:
1114         * Misc/WebNSViewExtras.m:
1115         * Plugins/WebBaseNetscapePluginView.m:
1116         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
1117         (-[WebBaseNetscapePluginView drawRect:]):
1118         * WebCoreSupport/WebFrameBridge.m:
1119         (-[WebFrameBridge expiresTimeForResponse:]):
1120         * WebInspector/WebInspector.m:
1121         (-[NSWindow window]):
1122         (-[WebInspector treeViewScrollTo:]):
1123         (-[WebInspector _updateSystemColors]):
1124         (-[WebInspector webView:plugInViewWithArguments:]):
1125         (-[WebInspector outlineView:objectValueForTableColumn:byItem:]):
1126         * WebInspector/WebInspectorOutlineView.m:
1127         (-[WebInspectorOutlineView _highlightRow:clipRect:]):
1128         * WebInspector/WebNodeHighlight.m:
1129         (-[WebNodeHighlight initWithBounds:andRects:forView:]):
1130         * WebInspector/WebNodeHighlightView.m:
1131         (-[WebNodeHighlightView roundedRect:withRadius:]):
1132         (-[WebNodeHighlightView initWithHighlight:andRects:forView:]):
1133         (-[WebNodeHighlightView drawRect:]):
1134         * WebView/WebFrame.m:
1135         (-[WebFrame _opened]):
1136         * WebView/WebFrameView.m:
1137         (-[WebFrameView initWithFrame:]):
1138         * WebView/WebHTMLView.m:
1139         (-[WebHTMLView _dragImageForLinkElement:]):
1140         (-[WebHTMLView _web_setPrintingModeRecursive]):
1141         (-[WebHTMLView _web_clearPrintingModeRecursive]):
1142         (-[NSArray layout]):
1143         (-[NSArray _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]):
1144         (-[NSArray adjustPageHeightNew:top:bottom:limit:]):
1145         (-[NSArray _scaleFactorForPrintOperation:]):
1146         (-[NSArray setPageWidthForPrinting:]):
1147         (-[NSArray _endPrintMode]):
1148         (-[NSArray knowsPageRange:]):
1149         (-[NSArray _originalFontA]):
1150         (-[NSArray _originalFontB]):
1151         (-[WebTextCompleteController _buildUI]):
1152         (-[WebTextCompleteController _placePopupWindow:]):
1153         * WebView/WebPDFView.m:
1154         (-[WebPDFView _makeTextStandardSize:]):
1155         (-[WebPDFView selectionImageForcingWhiteText:]):
1156         (-[PDFPrefUpdatingProxy forwardInvocation:]):
1157         * WebView/WebPreferences.m:
1158         (-[WebPreferences _floatValueForKey:]):
1159         * WebView/WebView.m:
1160         (-[WebView makeTextSmaller:]):
1161         (-[WebView canMakeTextStandardSize]):
1162         (-[WebView makeTextStandardSize:]):
1163
1164 2006-08-04  David Kilzer  <ddkilzer@kilzer.net>
1165
1166         Reviewed by NOBODY (build fix).
1167
1168         * WebCoreSupport/WebSubresourceLoader.m: REALLY moved to Loader/
1169         * WebView/WebFrameLoader.h: REALLY moved to Loader/
1170         * WebView/WebFrameLoader.m: REALLY moved to Loader/
1171         * WebView/WebLoader.h: REALLY moved to Loader/
1172         * WebView/WebLoader.m: REALLY moved to Loader/
1173         * WebView/WebMainResourceLoader.m: REALLY moved to Loader/
1174
1175 2006-08-03  Maciej Stachowiak  <mjs@apple.com>
1176
1177         Reviewed by Darin.
1178         
1179         - moved all loader code that is slated to be moved down to WebCore to a new Loader directory
1180         
1181         (next step is to remove dependencies on the rest of WebKit from this directory)
1182
1183         * Loader/WebNetscapePlugInStreamLoader.h: Added.
1184         * Loader/WebNetscapePlugInStreamLoader.m: Added. Cut out of WebNetscapePluginStream.m
1185         (-[WebNetscapePlugInStreamLoader initWithStream:view:]):
1186         (-[WebNetscapePlugInStreamLoader isDone]):
1187         (-[WebNetscapePlugInStreamLoader releaseResources]):
1188         (-[WebNetscapePlugInStreamLoader didReceiveResponse:]):
1189         (-[WebNetscapePlugInStreamLoader didReceiveData:lengthReceived:]):
1190         (-[WebNetscapePlugInStreamLoader didFinishLoading]):
1191         (-[WebNetscapePlugInStreamLoader didFailWithError:]):
1192         (-[WebNetscapePlugInStreamLoader cancelWithError:]):
1193         * Plugins/WebNetscapePluginStream.m:
1194         * WebKit.xcodeproj/project.pbxproj:
1195         * WebCoreSupport/WebSubresourceLoader.h: Moved to Loader/
1196         * WebCoreSupport/WebSubresourceLoader.m: Moved to Loader/
1197         * WebView/WebFrameLoader.h: Moved to Loader/
1198         * WebView/WebFrameLoader.m: Moved to Loader/
1199         * WebView/WebLoader.h: Moved to Loader/
1200         * WebView/WebLoader.m: Moved to Loader/
1201         * WebView/WebMainResourceLoader.h: Moved to Loader/
1202         * WebView/WebMainResourceLoader.m: Moved to Loader/
1203
1204 2006-08-03  Tim Omernick  <timo@apple.com>
1205
1206         Reviewed by Kevin Decker.
1207
1208         <rdar://problem/4667460> Windowless OpenGL plug-ins render incorrectly on PowerPC
1209
1210         * Plugins/WebBaseNetscapePluginView.m:
1211         (-[WebBaseNetscapePluginView _aglOffscreenImageForDrawingInRect:]):
1212         Fixed color component swapping so that it works on both x86 and PPC.  See comments.
1213
1214 2006-08-03  Brady Eidson  <beidson@apple.com>
1215
1216         Reviewed by Tim Hatcher's rubber stamp
1217         Fixed Intel build break caused by weinig's -W change in r15781
1218
1219         * WebView/WebView.m: wrapped cpu-dependent defs with defined() macro
1220
1221 2006-08-03  Maciej Stachowiak  <mjs@apple.com>
1222
1223         Reviewed by John.
1224
1225         - fixed problem that could cause assertion failures in Safari
1226         
1227         * Plugins/WebBaseNetscapePluginView.m:
1228         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): Don't
1229         allow a plugin to start new loads once its document is no longer the one actively loading.
1230
1231 2006-08-03  Maciej Stachowiak  <mjs@apple.com>
1232
1233         Reviewed by John.
1234         
1235         - remove use of WebDataSource from WebLoader and subclasses, just have them talk to the
1236         WebFrameLoader instead. 
1237         
1238         For now this is done by forarding all the calls.
1239
1240         * Misc/WebIconLoader.m:
1241         (-[WebIconLoader didFinishLoading]):
1242         * Plugins/WebNetscapePluginStream.m:
1243         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
1244         (-[WebNetscapePluginStream start]):
1245         (-[WebNetscapePlugInStreamLoader didFinishLoading]):
1246         (-[WebNetscapePlugInStreamLoader didFailWithError:]):
1247         (-[WebNetscapePlugInStreamLoader cancelWithError:]):
1248         * WebCoreSupport/WebFrameBridge.m:
1249         (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
1250         (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
1251         * WebCoreSupport/WebSubresourceLoader.h:
1252         * WebCoreSupport/WebSubresourceLoader.m:
1253         (-[WebSubresourceLoader initWithLoader:frameLoader:]):
1254         (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]):
1255         (+[WebSubresourceLoader startLoadingResource:withMethod:URL:customHeaders:referrer:forFrameLoader:]):
1256         (+[WebSubresourceLoader startLoadingResource:withMethod:URL:customHeaders:postData:referrer:forFrameLoader:]):
1257         (-[WebSubresourceLoader receivedError:]):
1258         (-[WebSubresourceLoader signalFinish]):
1259         (-[WebSubresourceLoader didFailWithError:]):
1260         (-[WebSubresourceLoader cancel]):
1261         * WebKit.xcodeproj/project.pbxproj:
1262         * WebView/WebDataSource.m:
1263         (-[WebDataSource _updateLoading]):
1264         (-[WebDataSource textEncodingName]):
1265         (-[WebDataSource _mainReceivedBytesSoFar:complete:]):
1266         * WebView/WebFrameLoader.h:
1267         * WebView/WebFrameLoader.m:
1268         (-[WebFrameLoader loadIconWithRequest:]):
1269         (-[WebFrameLoader startLoadingMainResourceWithRequest:identifier:]):
1270         (-[WebFrameLoader clearIconLoader]):
1271         (-[WebFrameLoader commitProvisionalLoad]):
1272         (-[WebFrameLoader activeDataSource]):
1273         (-[WebFrameLoader _archivedSubresourceForURL:]):
1274         (-[WebFrameLoader _defersCallbacks]):
1275         (-[WebFrameLoader _identifierForInitialRequest:]):
1276         (-[WebFrameLoader _willSendRequest:forResource:redirectResponse:]):
1277         (-[WebFrameLoader _didReceiveAuthenticationChallenge:forResource:]):
1278         (-[WebFrameLoader _didCancelAuthenticationChallenge:forResource:]):
1279         (-[WebFrameLoader _didReceiveResponse:forResource:]):
1280         (-[WebFrameLoader _didReceiveData:contentLength:forResource:]):
1281         (-[WebFrameLoader _didFinishLoadingForResource:]):
1282         (-[WebFrameLoader _didFailLoadingWithError:forResource:]):
1283         (-[WebFrameLoader _privateBrowsingEnabled]):
1284         (-[WebFrameLoader _addPlugInStreamLoader:]):
1285         (-[WebFrameLoader _removePlugInStreamLoader:]):
1286         (-[WebFrameLoader _finishedLoadingResource]):
1287         (-[WebFrameLoader _receivedError:]):
1288         (-[WebFrameLoader _addSubresourceLoader:]):
1289         (-[WebFrameLoader _removeSubresourceLoader:]):
1290         (-[WebFrameLoader _originalRequest]):
1291         (-[WebFrameLoader webFrame]):
1292         (-[WebFrameLoader _receivedMainResourceError:complete:]):
1293         (-[WebFrameLoader initialRequest]):
1294         (-[WebFrameLoader _receivedData:]):
1295         (-[WebFrameLoader _setRequest:]):
1296         (-[WebFrameLoader _downloadWithLoadingConnection:request:response:proxy:]):
1297         (-[WebFrameLoader _handleFallbackContent]):
1298         (-[WebFrameLoader _isStopping]):
1299         (-[WebFrameLoader _decidePolicyForMIMEType:decisionListener:]):
1300         (-[WebFrameLoader _setupForReplaceByMIMEType:]):
1301         (-[WebFrameLoader _setResponse:]):
1302         (-[WebFrameLoader _mainReceivedError:complete:]):
1303         (-[WebFrameLoader _finishedLoading]):
1304         (-[WebFrameLoader _mainReceivedBytesSoFar:complete:]):
1305         (-[WebFrameLoader _iconLoaderReceivedPageIcon:]):
1306         (-[WebFrameLoader _URL]):
1307         * WebView/WebLoader.h:
1308         * WebView/WebLoader.m:
1309         (-[NSURLProtocol releaseResources]):
1310         (-[NSURLProtocol loadWithRequest:]):
1311         (-[NSURLProtocol setFrameLoader:]):
1312         (-[NSURLProtocol frameLoader]):
1313         (-[NSURLProtocol willSendRequest:redirectResponse:]):
1314         (-[NSURLProtocol didReceiveAuthenticationChallenge:]):
1315         (-[NSURLProtocol didCancelAuthenticationChallenge:]):
1316         (-[NSURLProtocol didReceiveResponse:]):
1317         (-[NSURLProtocol didReceiveData:lengthReceived:]):
1318         (-[NSURLProtocol signalFinish]):
1319         (-[NSURLProtocol didFailWithError:]):
1320         (-[NSURLProtocol willCacheResponse:]):
1321         (-[NSURLProtocol cancelWithError:]):
1322         * WebView/WebMainResourceLoader.h:
1323         * WebView/WebMainResourceLoader.m:
1324         (-[WebMainResourceLoader initWithFrameLoader:]):
1325         (-[WebMainResourceLoader receivedError:]):
1326         (-[WebMainResourceLoader cancelWithError:]):
1327         (-[WebMainResourceLoader _isPostOrRedirectAfterPost:redirectResponse:]):
1328         (-[WebMainResourceLoader addData:]):
1329         (-[WebMainResourceLoader willSendRequest:redirectResponse:]):
1330         (-[WebMainResourceLoader continueAfterContentPolicy:response:]):
1331         (-[WebMainResourceLoader continueAfterContentPolicy:]):
1332         (-[WebMainResourceLoader checkContentPolicyForResponse:]):
1333         (-[WebMainResourceLoader didReceiveResponse:]):
1334         (-[WebMainResourceLoader didReceiveData:lengthReceived:]):
1335         (-[WebMainResourceLoader didFinishLoading]):
1336         (-[WebMainResourceLoader didFailWithError:]):
1337         (-[WebMainResourceLoader loadWithRequestNow:]):
1338
1339 2006-08-03  Sam Weinig  <sam.weinig@gmail.com>
1340
1341         Reviewed by Darin.
1342
1343         - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10176
1344           Make WebCore compile with -Wundef
1345
1346           * Adds -Wundef flag to Xcode project
1347           * Converts #ifs to #ifdef and #ifndefs where needed.
1348
1349         * Carbon/CarbonUtils.m:
1350         * Carbon/CarbonWindowAdapter.m:
1351         * Carbon/HIViewAdapter.m:
1352         (+[NSView bindHIViewToNSView:nsView:]):
1353         * Carbon/HIWebView.m:
1354         (HIWebViewEventHandler):
1355         * Misc/WebFileDatabase.m:
1356         (UniqueFilePathForKey):
1357         * Misc/WebNSWindowExtras.m:
1358         (swizzleInstanceMethod):
1359         * Misc/WebTypesInternal.h:
1360         * Plugins/WebNetscapeDeprecatedFunctions.c:
1361         * Plugins/WebNetscapeDeprecatedFunctions.h:
1362         * Plugins/WebNetscapePluginPackage.h:
1363         * Plugins/WebNetscapePluginPackage.m:
1364         (-[WebNetscapePluginPackage unloadWithoutShutdown]):
1365         (-[WebNetscapePluginPackage load]):
1366         * WebKit.xcodeproj/project.pbxproj:
1367
1368 2006-08-03  Darin Adler  <darin@apple.com>
1369
1370         Reviewed by Eric Seidel.
1371
1372         - fix storage leak
1373
1374         * WebView/WebFrame.m: (-[WebFramePrivate dealloc]): Release the frame loader.
1375
1376 2006-08-02  Timothy Hatcher  <timothy@apple.com>
1377
1378         Rubber stamped by Maciej.
1379
1380         Adding back resultsWithXpathQuery, removed by Darin's earlier change.
1381         This function is called from ObjC, but not used from JavaScript.
1382
1383         * WebInspector/webInspector/inspector.js:
1384
1385 2006-08-02  Timothy Hatcher  <timothy@apple.com>
1386
1387         Reviewed by Darin.
1388
1389         Bug 10200: [Drosera] Deadlock between Drosera and Safari while loading page
1390         http://bugzilla.opendarwin.org/show_bug.cgi?id=10200
1391
1392         Prevent reentrancy in our debugger callbacks. This was causing a deadlock in Drosera because
1393         suspendProcessIfPaused was being called during a DO call into Safari.
1394
1395         Preventing reentrancy also prevents scripts that Drosera injects and evaluates from showing
1396         up in rare cases (such as a iframe loading about:blank). I thought this would prevent cases
1397         where you call a function from the console and expect it to break on a breakpoint in them, but
1398         this appears to never have worked even without this change. When that is figured out we can
1399         reconsider a better solution to reentrancy. I have filed that as bug 10214.
1400
1401         I also removed the NSRunLoop runMode:beforeDate: calls since DO handles this for us since
1402         we don't use "onway void" as the return type for the callbacks. Note: using onway void for
1403         the listener callbacks causes bad synchronization issues and obscure crashes.
1404
1405         * DefaultDelegates/WebScriptDebugServer.m:
1406         (-[WebScriptDebugServer webView:didLoadMainResourceForDataSource:]):
1407         (-[WebScriptDebugServer webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]):
1408         (-[WebScriptDebugServer webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]):
1409         (-[WebScriptDebugServer webView:didEnterCallFrame:sourceId:line:forWebFrame:]):
1410         (-[WebScriptDebugServer webView:willExecuteStatement:sourceId:line:forWebFrame:]):
1411         (-[WebScriptDebugServer webView:willLeaveCallFrame:sourceId:line:forWebFrame:]):
1412         (-[WebScriptDebugServer webView:exceptionWasRaised:sourceId:line:forWebFrame:]):
1413         * DefaultDelegates/WebScriptDebugServerPrivate.h:
1414
1415 2006-08-02  Maciej Stachowiak  <mjs@apple.com>
1416
1417         Reviewed by John.
1418         
1419         - fix assertion failure on layout tests by stopping plugins from loading at a clearly defined time
1420         - add more assertions for safety
1421
1422         * WebView/WebDataSource.m:
1423         (-[WebDataSourcePrivate dealloc]): Removed obsolete comment.
1424         (-[WebDataSource _updateLoading]): Add assertion ensuring this method is only called
1425         at a time when this data source is the one that might be loading for a frame.
1426         (-[WebDataSource _stopLoading]): Stop loading plugins as a FIXME suggests we should.
1427         * WebView/WebFrameLoader.m:
1428         (-[WebFrameLoader isLoadingPlugIns]): New helper method.
1429         (-[WebFrameLoader isLoading]): Consider plugin loads too - otherwise we won't stop them
1430         at stopLoading time.
1431
1432 2006-08-02  Adam Roben  <aroben@apple.com>
1433
1434         Reviewed by Brady.
1435
1436         - Rename TransferJob to ResourceLoader (this file was forgotten in an
1437         earlier change by Maciej)
1438
1439         * COM/WebView.cpp:
1440
1441 2006-08-01  Maciej Stachowiak  <mjs@apple.com>
1442
1443         Reviewed by Adele.
1444         
1445         - Change things around so WebFrameLoader tracks the main and provisional data source,
1446         as well as the frame load state, pulling much code out of WebFrame along the way.
1447         
1448         The most significant aspects of this change are:
1449         
1450         - management of WebDataSources and WebFrameState was moved into WebFrameLoader
1451         - there is now just one WebFrameLoader shared between the primary and provisional data source
1452
1453         * WebKit.xcodeproj/project.pbxproj:
1454         * WebView/WebDataSource.m:
1455         (-[WebDataSourcePrivate dealloc]):
1456         (-[WebDataSource _updateLoading]):
1457         (-[WebDataSource _loadIcon]):
1458         (-[WebDataSource _setPrimaryLoadComplete:]):
1459         (-[WebDataSource _stopLoading]):
1460         (-[WebDataSource _startLoading]):
1461         (-[WebDataSource _addSubresourceLoader:]):
1462         (-[WebDataSource _removeSubresourceLoader:]):
1463         (-[WebDataSource _addPlugInStreamLoader:]):
1464         (-[WebDataSource _removePlugInStreamLoader:]):
1465         (-[WebDataSource _defersCallbacksChanged]):
1466         (-[WebDataSource _stopLoadingWithError:]):
1467         (-[WebDataSource _revertToProvisionalState]):
1468         (-[WebDataSource _setupForReplaceByMIMEType:]):
1469         (-[WebDataSource initWithRequest:]):
1470         (-[WebDataSource data]):
1471         (-[WebDataSource isLoading]):
1472         * WebView/WebFrame.m:
1473         (-[WebFramePrivate init]):
1474         (-[WebFramePrivate dealloc]):
1475         (-[WebFrame _closeOldDataSources]):
1476         (-[WebFrame _detachFromParent]):
1477         (-[WebFrame _makeDocumentView]):
1478         (-[WebFrame _receivedMainResourceError:]):
1479         (-[WebFrame _transitionToCommitted:]):
1480         (+[WebFrame _timeOfLastCompletedLoad]):
1481         (-[WebFrame _checkLoadCompleteForThisFrame]):
1482         (-[WebFrame _loadItem:withLoadType:]):
1483         (-[WebFrame _continueAfterWillSubmitForm:]):
1484         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
1485         (-[WebFrame _initWithWebFrameView:webView:bridge:]):
1486         (-[WebFrame _frameLoader]):
1487         (-[WebFrame _provisionalLoadStarted]):
1488         (-[WebFrame _prepareForDataSourceReplacement]):
1489         (-[WebFrame _frameLoadCompleted]):
1490         (-[WebFrame provisionalDataSource]):
1491         (-[WebFrame dataSource]):
1492         (-[WebFrame stopLoading]):
1493         * WebView/WebFrameInternal.h:
1494         * WebView/WebFrameLoader.h:
1495         * WebView/WebFrameLoader.m:
1496         (-[WebFrameLoader initWithWebFrame:]):
1497         (-[WebFrameLoader dealloc]):
1498         (-[WebFrameLoader dataSource]):
1499         (-[WebFrameLoader _setDataSource:]):
1500         (-[WebFrameLoader clearDataSource]):
1501         (-[WebFrameLoader provisionalDataSource]):
1502         (-[WebFrameLoader _setProvisionalDataSource:]):
1503         (-[WebFrameLoader _clearProvisionalDataSource]):
1504         (-[WebFrameLoader state]):
1505         (+[WebFrameLoader timeOfLastCompletedLoad]):
1506         (-[WebFrameLoader _setState:]):
1507         (-[WebFrameLoader clearProvisionalLoad]):
1508         (-[WebFrameLoader markLoadComplete]):
1509         (-[WebFrameLoader commitProvisionalLoad]):
1510         (-[WebFrameLoader stopLoading]):
1511         (-[WebFrameLoader startLoading]):
1512         (-[WebFrameLoader startProvisionalLoad:]):
1513         (-[WebFrameLoader setupForReplace]):
1514         * WebView/WebFramePrivate.h:
1515
1516 2006-08-01  Tim Omernick  <timo@apple.com>
1517
1518         Reviewed by John Sullivan.
1519
1520         <rdar://problem/4480737> Flash crashes after it replaces itself via a document.write()
1521         
1522         I kind of hate to do this, but this is the best way to work around buggy plug-ins like Flash that assume that
1523         NPP_Destroy() cannot be called while the browser is calling one of its other plug-in functions.  The classic
1524         situation is a plug-in that replaces itself via an NPN_Invoke() that executes a document.write().
1525
1526         * Plugins/WebBaseNetscapePluginView.h:
1527         * Plugins/WebBaseNetscapePluginView.m:
1528         (-[WebBaseNetscapePluginView sendEvent:]):
1529         Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions.
1530         (-[WebBaseNetscapePluginView setWindowIfNecessary]):
1531         ditto
1532         (-[WebBaseNetscapePluginView start]):
1533         It should not be possible to start a plug-in instance while we are calling into it (one of those chicken/egg
1534         problems).  Added a sanity-checking assertion.
1535         (-[WebBaseNetscapePluginView stop]):
1536         If we're already calling a plug-in function, do not call NPP_Destroy().  The plug-in function we are calling
1537         may assume that its instance->pdata, or other memory freed by NPP_Destroy(), is valid and unchanged until said
1538         plugin-function returns.
1539         (-[WebBaseNetscapePluginView pluginScriptableObject]):
1540         Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions.
1541         (-[WebBaseNetscapePluginView willCallPlugInFunction]):
1542         Increment plug-in function call depth.
1543         (-[WebBaseNetscapePluginView didCallPlugInFunction]):
1544         Decrement plug-in function call depth.  Stop if we're supposed to stop.
1545         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
1546         Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions.
1547         (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]):
1548         ditto
1549         (-[WebBaseNetscapePluginView _printedPluginBitmap]):
1550         ditto
1551
1552         * Plugins/WebBaseNetscapePluginStream.m:
1553         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]):
1554         Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions.
1555         (-[WebBaseNetscapePluginStream _destroyStream]):
1556         ditto
1557         (-[WebBaseNetscapePluginStream _deliverData]):
1558         ditto
1559
1560 2006-08-01  Maciej Stachowiak  <mjs@apple.com>
1561
1562         - fix build after last change
1563
1564         * WebView/WebFrame.m:
1565         (-[WebFrame _checkLoadCompleteForThisFrame]):
1566
1567 2006-08-01  Maciej Stachowiak  <mjs@apple.com>
1568
1569         Reviewed by Beth.
1570
1571         - revert part of my last fix that broke the Safari bookmarks view
1572         
1573         * WebView/WebFrame.m:
1574         (-[WebFrame _checkLoadCompleteForThisFrame]): still send layout message for non-HTML views
1575
1576 2006-08-01  Tim Omernick  <timo@apple.com>
1577
1578         Reviewed by Anders.
1579
1580         Fixed an assertion failure I ran into while debugging <rdar://problem/4652683>.
1581
1582         * Plugins/WebNetscapePluginEmbeddedView.m:
1583         (-[WebNetscapePluginEmbeddedView redeliverStream]):
1584         Don't clear the "instance" ivar here.  This code was refactored here from the old WebNetscapePluginRepresentation,
1585         which also had an "instance" ivar.  It is never appropriate to clear a plug-in view's instance.  That is done when
1586         the plug-in is destroyed.
1587
1588 2006-08-01  Maciej Stachowiak  <mjs@apple.com>
1589
1590         Reviewed by Geoff.
1591         
1592         - some refactoring in preparation for moving more stuff to WebFrameLoader.
1593
1594         * WebView/WebFrame.m:
1595         (-[WebFrame _clearDataSource]): 
1596         (-[WebFrame _detachFromParent]):
1597         (-[WebFrame _commitProvisionalLoad]):
1598         (-[WebFrame _transitionToCommitted:]):
1599         (-[WebFrame _clearProvisionalLoad]):
1600         (-[WebFrame _markLoadComplete]):
1601         (-[WebFrame _checkLoadCompleteForThisFrame]):
1602         (-[WebFrame _startProvisionalLoad:]):
1603         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
1604         (-[WebFrame stopLoading]):
1605
1606 2006-07-31  Maciej Stachowiak  <mjs@apple.com>
1607
1608         Reviewed by Tim Hatcher.
1609         
1610         - renamed TransferJob to ResourceLoader in WebCore
1611
1612         * COM/WebFrame.cpp:
1613         (WebFrame::loadDataSource):
1614         (WebFrame::receivedRedirect):
1615         (WebFrame::receivedResponse):
1616         (WebFrame::receivedData):
1617         (WebFrame::receivedAllData):
1618         (WebFrame::setStatusText):
1619         * COM/WebFrame.h:
1620
1621 2006-07-31  Darin Adler  <darin@apple.com>
1622
1623         Reviewed by Maciej.
1624
1625         - omit the margin and padding boxes for display types where they are ignored
1626         - use CSS instead of properties for table spacing and padding as suggested by Tim H.
1627
1628         * WebInspector/webInspector/inspector.css: Added rules for spacing and padding.
1629         Added rules that hide the margin and padding boxes (borders and all but the center cell)
1630         when the hide attribute is present.
1631         * WebInspector/webInspector/inspector.html: Added classes for the rules above.
1632         Removed cellpadding and cellspacing attributes.
1633         * WebInspector/webInspector/inspector.js: Added code to hide/show the margin and
1634         padding boxes based on the display type.
1635
1636 2006-07-31  Duncan Wilcox  <duncan@mclink.it>
1637
1638         Reviewed by Darin.
1639
1640         Fixes <http://bugzilla.opendarwin.org/show_bug.cgi?id=10159>
1641         "REGRESSION: delegate returning no menu elements crashes webkit"
1642
1643         No automated test, because there's no way to programmatically open a context menu,
1644         no manual test because there's no way to customize the context menu delegate.
1645
1646         * WebView/WebView.m:
1647         (-[WebView _menuForElement:defaultItems:]): Make sure the context menu returned
1648         some menu items before accessing the first one.
1649
1650 2006-07-31  Timothy Hatcher  <timothy@apple.com>
1651
1652         Reviewed by John.
1653
1654         <rdar://problem/4658194> REGRESSION: "Search in Google"
1655         and "Search in Spotlight" fail to work on text selected in a frame
1656
1657         Use selectedFrame to get the frame with the text selection.
1658
1659         * WebView/WebView.m:
1660         (-[WebView _searchWithGoogleFromMenu:]):
1661         (-[WebView _searchWithSpotlightFromMenu:]):
1662
1663 2006-07-31  Darin Adler  <darin@apple.com>
1664
1665         Reviewed by Tim Hatcher.
1666
1667         - http://bugzilla.opendarwin.org/show_bug.cgi?id=10168
1668           add a first cut at a Metrics pane to the inspector
1669
1670         * WebInspector/webInspector/inspector.css: Add styles for the new metrics pane.
1671         * WebInspector/webInspector/inspector.html: Add the new metrics pane, starting with
1672         the table to show the box model.
1673         * WebInspector/webInspector/inspector.js: Add the new metrics pane. Add back some
1674         "title" attributes so we have more tooltips. Removed the optional parameter to
1675         getComputedStyle.
1676
1677 2006-07-31  Anders Carlsson  <acarlsson@apple.com>
1678
1679         Reviewed by John.
1680
1681         * Plugins/WebPluginDatabase.m:
1682         (-[WebPluginDatabase refresh]):
1683         Create a mutable set instead of a mutable array.
1684
1685 2006-07-30  Darin Adler  <darin@apple.com>
1686
1687         Reviewed by Tim Hatcher.
1688
1689         * WebInspector/webInspector/inspector.js: Fix bug where a null property value
1690         leads to an empty style pane.
1691
1692 2006-07-30  Darin Adler  <darin@apple.com>
1693
1694         Reviewed by Tim Hatcher.
1695
1696         - http://bugzilla.opendarwin.org/show_bug.cgi?id=10163
1697           some improvements for the inspector
1698
1699         * WebInspector/WebInspector.m:
1700         (+[WebInspector sharedWebInspector:]): Fixed bug that could cause the inspector
1701         to be garbage collected if used in an application with GC enabled.
1702         (-[WebInspector dealloc]): Removed a call to a non-existent close method.
1703         (-[WebInspector window]): Added a custom WebPreferences object and called
1704         setPrivateBrowsingEnabled:YES so the inspector won't appear in the history menu.
1705         Also call setProhibitsMainFrameScrolling:YES to try to get rid of trouble where
1706         the inspector scrolls when dragging.
1707
1708         * WebInspector/webInspector/inspector.css: Added style for the new color swatch,
1709         and JavaScript properties. More of the style should be shared between the panes,
1710         but this should be OK for now.
1711
1712         * WebInspector/webInspector/inspector.html: Added a first cut at a JavaScript
1713         properties pane. Needs work, but better than nothing.
1714
1715         * WebInspector/webInspector/inspector.js: Lots of improvements:
1716         - Omit "typical" property values from computed style display, making it much shorter.
1717         - Use the words "black", "white", and "transparent" when appropriate for color values.
1718         - Refactored the loaded() function to get rid of repetitive scrollbar setup.
1719         - Added a new scrollarea for the JavaScript properties pane.
1720         - Simplified refreshScrollbars() -- we now refresh all scrollbars every time, which does no harm.
1721         - Removed unused resultsWithXpathQuery().
1722         - Use [] instead of "new Array()" and {} instead of "new Object()".
1723         - Removed unused xpathForNode().
1724         - Changed style pane to display the style for a text node's parent instead of saying
1725           it can't display the style for text.
1726         - Fixed regression I caused a while back by checking the length of a computed style
1727           and not trying to display anything if its length is 0. Before this change and the
1728           corresponding change in WebCore, we'd see a complete list of all styles with the
1729           empty string as the value for each one.
1730         - Changed the name of the computedStyle flag on the style rules array to isComputedStyle
1731           to make it easier to understand it's a boolean.
1732         - Fixed an error in the code that does !important scanning where it was trying to
1733           do a special case for computed style, but was checking the computed style flag on
1734           the wrong object.
1735         - Added populateStyleListItem() function to factor out things in common between the
1736           items in the top level list and the expanded tree for shorthand properties.
1737         - Added code to make a color swatch next to the textual representation for any
1738           property that contains a color.
1739         - Implemented a first cut at a simple JavaScript properties pane.
1740
1741 2006-07-29  Darin Adler  <darin@apple.com>
1742
1743         - Removed tabs from these source files that still had them.
1744           We don't use them; that way source files look fine in editors
1745           that have tabs set to 8 spaces or to 4 spaces.
1746         - Removed allow-tabs Subversion property from the files too.
1747
1748         * DefaultDelegates/WebDefaultPolicyDelegate.m:
1749         * History/WebHistory.m:
1750         * Misc/WebDownload.m:
1751         * Misc/WebIconDatabase.m:
1752         * Misc/WebKitErrors.m:
1753         * Misc/WebKitLogging.m:
1754         * Misc/WebNSDataExtras.m:
1755         * Misc/WebNSFileManagerExtras.m:
1756         * Panels/WebPanelAuthenticationHandler.m:
1757         * Plugins/WebBaseNetscapePluginView.m:
1758         * Plugins/npfunctions.h:
1759         * WebCoreSupport/WebSubresourceLoader.m:
1760         * WebView/WebMainResourceLoader.m:
1761         * WebView/WebView.h:
1762         * WebView/WebView.m:
1763
1764 2006-07-29  Sam Weinig  <sam.weinig@gmail.com>
1765
1766         Reviewed by Darin.
1767
1768         - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10080
1769           Adopt pedantic changes from the Unity project to improve 
1770           cross-compiler compatibility
1771
1772           Changes include:
1773           * Adding missing newline to the end of the file.
1774           * Turning on gcc warning for missing newline at the end of a source file
1775             (GCC_WARN_ABOUT_MISSING_NEWLINE in Xcode, -Wnewline in gcc).
1776
1777         * WebKit.xcodeproj/project.pbxproj:
1778         * WebView/WebResourcePrivate.h:
1779
1780 2006-07-29  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1781
1782         Reviewed by John Sullivan.
1783
1784          - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9984
1785           ASSERTION FAILURE: _private->mouseDownEvent != nil
1786           (WebKit/WebView/WebHTMLView.m:4863 -[WebHTMLView(WebInternal) _delegateDragSourceActionMask])
1787
1788         * WebView/WebHTMLView.m:
1789         (-[WebHTMLView _setMouseDownEvent:]): Moved into the WebHTMLViewFileInternal category and changed
1790         to accept nil.
1791         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
1792         Copy the hit HTMLView's mouse down event to the top HTMLView.
1793         (-[WebHTMLView acceptsFirstMouse:]): Added a call to _setMouseDownEvent:nil before returning.
1794         (-[WebHTMLView shouldDelayWindowOrderingForEvent:]): Added a call to _setMouseDownEvent:nil
1795         before returning.
1796         (-[WebHTMLView mouseUp:]): Added a call to _setMouseDownEvent:nil to clear the event set in
1797         mouseDown: (and used during dragging).
1798         (-[WebHTMLView _delegateDragSourceActionMask]): Copy the hit HTMLView's mouse down event to
1799         the top HTMLView.
1800
1801 2006-07-28  Timothy Hatcher  <timothy@apple.com>
1802
1803         Reviewed by John.
1804
1805         <rdar://problem/4657473> REGRESSION: Spell check not available from contextual menu in Mail
1806
1807         The context menu code should be checking isContentEditable
1808         on DOMNode not just DOMElement. This is needed because DOMText
1809         will be the node class of any text that is clicked.
1810
1811         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
1812         (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
1813
1814 2006-07-25  Geoffrey Garen  <ggaren@apple.com>
1815
1816         Reviewed by Maciej, inspired by John.
1817         
1818         - Fixed <rdar://problem/4651931> 1% REGRESSION on iBench HTML due to 
1819         repeated requests for non-existent favicon
1820         
1821         An optimization to avoid serializing favicon data for missing icons had stomped an
1822         optimization to avoid GETing a missing favicon more than once. The solution
1823         is a happy marriage of optimizations, ensuring that we *retain* the missing
1824         favicon's "i am missing" data without posting a notification or saving it to disk.
1825
1826         * Misc/WebIconDatabase.m:
1827         (-[WebIconDatabase _setIconURL:forURL:]):
1828
1829 2006-07-25  David Harrison  <harrison@apple.com>
1830
1831         Reviewed by timo and Darin.
1832
1833         <rdar://problem/4618584> "Paste and Match Style" is not working in Mail (add SPI)
1834         
1835         * WebKit.xcodeproj/project.pbxproj:
1836         * WebView/WebView.m:
1837         (-[WebView replaceSelectionWithNode:]):
1838         (-[WebView _replaceSelectionWithNode:matchStyle:]):
1839         * WebView/WebViewPrivate.h:
1840         (-[WebView _replaceSelectionWithNode:matchStyle::]):
1841         New SPI that is same as replaceSelectionWithNode: with added parameter whether to match existing style.
1842
1843 2006-07-24  Darin Adler  <darin@apple.com>
1844
1845         Reviewed by Adele and Justin.
1846
1847         - update for change to require context when creating fragments from text
1848           (needed to handle whitespace properly)
1849
1850         * WebView/WebHTMLView.m:
1851         (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]):
1852         Added context parameter, pass through to bridge.
1853         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): Pass selection range as context
1854         when calling above method.
1855         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): Pass drag caret as context when
1856         calling above method.
1857
1858 2006-07-24  Maciej Stachowiak  <mjs@apple.com>
1859
1860         Reviewed by Geoff.
1861         
1862         - fix <rdar://problem/4609195> Help Viewer loads empty window (not getting didFailLoadingWithError: callback)
1863         (without re-introducing http://bugzilla.opendarwin.org/show_bug.cgi?id=10062 )
1864
1865         * WebView/WebLoader.h:
1866         * WebView/WebMainResourceLoader.m:
1867         (-[WebMainResourceLoader receivedError:]): Copy in some code from the base class to do it in the proper
1868         order, surrounding the call to [ds _receivedMainResourceError:error complete:YES].
1869
1870 2006-07-24  Anders Carlsson  <acarlsson@apple.com>
1871
1872         Reviewed by Tim O.
1873
1874         * Misc/WebIconDatabase.m:
1875         (-[WebIconDatabase removeAllIcons]):
1876         Make an array of the keys and iterate through it to avoid modifying the
1877         dictionary while enumerating it.
1878
1879 2006-07-24  Timothy Hatcher  <timothy@apple.com>
1880
1881         Reviewed by John and Darin.
1882
1883         <rdar://problem/4634290> Cannot selectively install a custom
1884         scroller that differs from the default Aqua frame size.
1885
1886         Adds two new private methods to WebFrameView that allows
1887         an application to set a custom scroll view class. This is needed
1888         if the application wants to install a custom scroller that is wider
1889         than the typical scroller, because NSScrollView does the content
1890         rect calculations in a class method (ignoring custom scrollers.)
1891         The _setScrollViewClass method requires the class to be a subclass
1892         of WebDynamicScrollBarView, or nil can be passed to reset to the default class.
1893         A new scroll view of the specified class will then replace the previous
1894         one without the need to reload content of the frame.
1895
1896         * WebView/WebFrameView.m:
1897         (-[WebFrameView _customScrollViewClass]):
1898         (-[WebFrameView _setCustomScrollViewClass:]):
1899         * WebView/WebFrameViewPrivate.h:
1900
1901 2006-07-24  Alexey Proskuryakov  <ap@nypop.com>
1902
1903         Reviewed by Darin.
1904
1905         Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10009
1906         REGRESSION: Schubert-IT PDF Plug-in not working for full page (works in frames)
1907
1908         * WebView/WebView.m:
1909         (+[WebView _viewClass:andRepresentationClass:forMIMEType:]): If we've got a type supported by WebPDFView,
1910         make sure to initialize the plugin database, in case a plugin wants to handle it.
1911
1912 2006-07-23  Mark Rowe  <opendarwin.org@bdash.net.nz>
1913
1914         Reviewed by Maciej.
1915
1916         Bug 9686: [Drosera] Need the ability to break into Drosera on Javascript exceptions
1917         http://bugzilla.opendarwin.org/show_bug.cgi?id=9686
1918
1919         WebKit portion of the fix.
1920
1921         * DefaultDelegates/WebDefaultScriptDebugDelegate.m:
1922         (-[WebDefaultScriptDebugDelegate webView:exceptionWasRaised:sourceId:line:forWebFrame:]):
1923         * DefaultDelegates/WebScriptDebugServer.h:
1924         * DefaultDelegates/WebScriptDebugServer.m:
1925         (-[WebScriptDebugServer webView:exceptionWasRaised:sourceId:line:forWebFrame:]): Notify
1926         listeners that an exception has been raised.
1927         * WebView/WebScriptDebugDelegate.h:
1928         * WebView/WebScriptDebugDelegate.m:
1929         (-[WebScriptCallFrame exceptionRaised:sourceId:line:]): Dispatch through to delegate and
1930         WebScriptDebugServer.
1931
1932 2006-07-23  Adele Peterson  <adele@apple.com>
1933
1934         Reviewed by Darin.
1935
1936         - Fix for <rdar://problem/4646276> CrashTracer: 7 crashes in Safari at com.apple.WebCore: WebCore::RenderTableSection::paint + 155
1937
1938         * WebView/WebHTMLView.m: (-[WebHTMLView _web_layoutIfNeededRecursive:testDirtyRect:]):
1939         needsDisplay was returning NO even though the view has a dirty rect (see <rdar://problem/4647062>).  Since we know about
1940         the dirty rect, we don't actually need to check needsDisplay.
1941
1942 2006-07-22  Timothy Hatcher  <timothy@apple.com>
1943
1944         Rolling out r15572.
1945         
1946         Bug 10062: REGRESSION: dom/xhtml/level2/html/HTMLIFrameElement11.xhtml asserts/crashes
1947         http://bugzilla.opendarwin.org/show_bug.cgi?id=10062
1948
1949     2006-07-21  Timothy Hatcher  <timothy@apple.com>
1950
1951         Reviewed by Maciej.
1952
1953         <rdar://problem/4609195> Help Viewer loads empty window
1954         (not getting didFailLoadingWithError: callback)
1955
1956         Call super's didFailWithError before _receivedMainResourceError
1957         because _receivedMainResourceError will cause the datasource's
1958         frame to be set to nil before the didFailLoadingWithError delegate
1959         callback is sent. (This order is needed now that WebDataSource does
1960         not hold on to the WebView; it uses the WebFrame to get to the WebView.
1961         If the WebFrame is nil we can't get to the WebView's resource load delegate.)
1962
1963         * WebView/WebMainResourceLoader.m:
1964         (-[WebMainResourceLoader receivedError:]):
1965
1966
1967 2006-07-22  Timothy Hatcher  <timothy@apple.com>
1968
1969         Reviewed by Adele.
1970
1971         <rdar://problem/4646318> REGRESSION: Ctrl-clicking on a selection containing a word doesn't display a complete contextual menu
1972         
1973         Show the editing context menu if the WebView is editible.
1974         The original change only checked if the DOM element was editable,
1975         and isContentEditable returns NO if entire WebView is editable.
1976
1977         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
1978         (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
1979
1980 2006-07-21  Timothy Hatcher  <timothy@apple.com>
1981
1982         Reviewed by Maciej.
1983
1984         <rdar://problem/4609195> Help Viewer loads empty window
1985         (not getting didFailLoadingWithError: callback)
1986
1987         Call super's didFailWithError before _receivedMainResourceError
1988         because _receivedMainResourceError will cause the datasource's
1989         frame to be set to nil before the didFailLoadingWithError delegate
1990         callback is sent. (This order is needed now that WebDataSource does
1991         not hold on to the WebView; it uses the WebFrame to get to the WebView.
1992         If the WebFrame is nil we can't get to the WebView's resource load delegate.)
1993
1994         * WebView/WebMainResourceLoader.m:
1995         (-[WebMainResourceLoader receivedError:]):
1996
1997 === Safari-521.20 ===
1998
1999 2006-07-21  Timothy Hatcher  <timothy@apple.com>
2000
2001         Reviewed by John.
2002
2003         <rdar://problem/4607572> REGRESSION (521.10.1 - 521.13): most context menu items missing when a form field is focused (common on google.com) (9680)
2004
2005         Do not use _isEditable call since that only checks if the current
2006         selection or frame is editible. We now check if the currently clicked element
2007         is a content editible area, a textarea, an isindex or an input element that
2008         return YES to _isTextField.
2009
2010         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
2011         (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
2012
2013 2006-07-20  John Sullivan  <sullivan@apple.com>
2014
2015         Reviewed by Maciej
2016
2017         - WebKit part of fix for:
2018         <rdar://problem/4557386> REGRESSION (419.3-521.19): repro Safari world leak involving 
2019         closing tabs after clicking in a web page
2020
2021         * WebCoreSupport/WebFrameBridge.m:
2022         (-[WebFrameBridge textViewWasFirstResponderAtMouseDownTime:]):
2023         renamed to be more specific (formerly wasFirstResponderAtMouseDownTime:)        
2024         
2025         * WebView/WebHTMLViewInternal.h:
2026         * WebView/WebHTMLView.m:
2027         (-[WebTextCompleteController dealloc]):
2028         updated for name change
2029         (-[NSArray _setMouseDownEvent:]):
2030         Now only retains the first responder if it's a textView, since that's the only case that the only client
2031         actually cares about. This avoids a reference cycle caused by retaining self. This is the only substantive
2032         part of the patch; all the rest is just renaming for clarity, and comments.
2033         (-[NSArray mouseDown:]):
2034         updated for name change
2035         (-[WebHTMLView _textViewWasFirstResponderAtMouseDownTime:]):
2036         renamed to be more specific (formerly _wasFirstResponderAtMouseDownTime:)        
2037
2038 2006-07-19  Tim Omernick  <timo@apple.com>
2039
2040         Reviewed by Darin.
2041
2042         <rdar://problem/4523432> safari crashed right after disabling "block pop up windows" (or other WebPreferences changes)
2043
2044         * Plugins/WebBaseNetscapePluginView.m:
2045         (-[WebBaseNetscapePluginView viewWillMoveToSuperview:]):
2046         Stop the plug-in when it is removed from its superview.  It is not sufficient to do this in -viewWillMoveToWindow:nil, because
2047         the WebView might still has a hostWindow at that point, which prevents the plug-in from being destroyed.
2048         There is no need to start the plug-in when moving into a superview.  -viewDidMoveToWindow takes care of that.
2049
2050 === Safari-521.19 ===
2051
2052 2006-07-17  Tim Omernick  <timo@apple.com>
2053
2054         Reviewed by Maciej.
2055
2056         <rdar://problem/4612079> need a way to prevent pages from scrolling to reveal elements that are focused
2057         by script
2058
2059         * WebView/WebViewPrivate.h:
2060         * WebView/WebView.m:
2061         (-[WebView setProhibitsMainFrameScrolling:]):
2062         New method.  Prohibits scrolling in the WebView's main frame.  Used to "lock" a WebView to a specific
2063         scroll position.
2064
2065 2006-07-17  Timothy Hatcher  <timothy@apple.com>
2066
2067         Reviewed by Darin.
2068         
2069         <rdar://problem/4635311> REGRESSION: WebKit should call windowScriptObjectAvailable before attaching the script debugger
2070
2071         * WebCoreSupport/WebFrameBridge.m:
2072         (-[WebFrameBridge windowObjectCleared]):
2073
2074 2006-07-17  Timothy Hatcher  <timothy@apple.com>
2075
2076         Reviewed by Maciej.
2077
2078         <rdar://problem/4634874> WebScriptObject and WebUndefined are no longer defined by WebKit
2079
2080         Copy WebScriptObject.h from WebCore's private headers, not JavaScriptCore.
2081
2082         * WebKit.xcodeproj/project.pbxproj:
2083
2084 2006-07-17  John Sullivan  <sullivan@apple.com>
2085
2086         Reviewed by Tim Omernick.
2087         
2088         - fixed <rdar://problem/4604366> Orange Find highlight displays text in wrong size on PDF pages 
2089         if they're not at "actual size"
2090         
2091         To match WebHTMLView, I made the methods that return attributed strings take the view's scale
2092         factor into account.
2093
2094         * WebView/WebPDFView.m:
2095         (-[WebPDFView _scaledAttributedString:]):
2096         new helper method, takes an attributed string and returns one that's scaled by the view's
2097         current scale factor
2098         (-[WebPDFView attributedString]):
2099         pass result through _scaledAttributedString:
2100         (-[WebPDFView selectedAttributedString]):
2101         ditto
2102
2103 2006-07-17  Justin Garcia  <justin.garcia@apple.com>
2104
2105         Reviewed by levi
2106         
2107         Rolled the first fix for:
2108         <http://bugzilla.opendarwin.org/show_bug.cgi?id=9642>
2109         GMail Editor: Operations that use drop down menus blow away the selection
2110         back in and removed the call to _clearSelectionInOtherFrames from 
2111         -[WebHTMLView becomeFirstResponder] to fix the bug.
2112
2113         * WebView/WebHTMLView.m:
2114         (-[NSArray maintainsInactiveSelection]):
2115         (-[NSArray becomeFirstResponder]):
2116         * WebView/WebView.m:
2117         (-[WebView maintainsInactiveSelection]):
2118
2119 2006-07-15  Darin Adler  <darin@apple.com>
2120
2121         Reviewed by John Sullivan.
2122
2123         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9928
2124           REGRESSION: Text Encoding menu inoperative (after gcc protocol build fix)
2125
2126         * WebView/WebHTMLView.m:
2127         (-[WebHTMLView _documentRange]): Moved into WebHTMLViewFileInternal category.
2128         (-[WebHTMLView selectionRect]): Moved into WebDocumentPrivateProtocols category.
2129         (-[WebHTMLView selectionView]): Ditto.
2130         (-[WebHTMLView selectionImageForcingWhiteText:]): Ditto.
2131         (-[WebHTMLView selectionImageRect]): Ditto.
2132         (-[WebHTMLView pasteboardTypesForSelection]): Ditto.
2133         (-[WebHTMLView selectAll]): Ditto.
2134         (-[WebHTMLView deselectAll]): Ditto.
2135         (-[WebHTMLView string]): Ditto.
2136         (-[WebHTMLView _attributeStringFromDOMRange:]): Ditto.
2137         (-[WebHTMLView attributedString]): Ditto.
2138         (-[WebHTMLView selectedString]): Ditto.
2139         (-[WebHTMLView selectedAttributedString]): Ditto.
2140         (-[WebHTMLView supportsTextEncoding]): Ditto.
2141         (-[WebHTMLView _canProcessDragWithDraggingInfo:]): Moved into WebDocumentInternalProtocols.
2142         (-[WebHTMLView _isMoveDrag]): Ditto.
2143         (-[WebHTMLView _isNSColorDrag:]): Ditto.
2144         (-[WebHTMLView draggingUpdatedWithDraggingInfo:actionMask:]): Ditto.
2145         (-[WebHTMLView draggingCancelledWithDraggingInfo:]): Ditto.
2146         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): Ditto.
2147         (-[WebHTMLView elementAtPoint:]): Ditto.
2148         (-[WebHTMLView elementAtPoint:allowShadowContent:]): Ditto.
2149
2150         * WebKit.xcodeproj/project.pbxproj: Let Xcode 2.3 do its thing.
2151
2152 === Safari-521.17 ===
2153
2154 2006-07-14  Timothy Hatcher  <timothy@apple.com>
2155
2156         Rolling out this fix from r15358 since it isn't resolved.
2157
2158     2006-07-11  Justin Garcia  <justin.garcia@apple.com>
2159
2160         Reviewed by levi & thatcher
2161
2162         <http://bugzilla.opendarwin.org/show_bug.cgi?id=9642>
2163         GMail Editor: Operations that use drop down menus blow away the selection
2164
2165         * WebView/WebHTMLView.m:
2166         (-[WebHTMLView maintainsInactiveSelection]): Maintain an inactive selection
2167         when resigning as first responder if the selection is editable
2168         or if the WebView tells us to.
2169         * WebView/WebView.m:
2170         (-[WebView maintainsInactiveSelection]): Just because a WebView is
2171         editable doesn't mean selections inside subframes will be.  Return
2172         NO by default.
2173
2174 2006-07-14  Timothy Hatcher  <timothy@apple.com>
2175
2176         <rdar://problem/4623957> SWB: gcc-5412 (new?) objc warning causes WebCore project failure
2177
2178         Build fix with the new GCC. Removes forward declarations of protocols.
2179
2180         * Misc/WebSearchableTextView.h:
2181         * WebCoreSupport/WebSubresourceLoader.h:
2182         * WebKit.xcodeproj/project.pbxproj:
2183         * WebView/WebDocumentInternal.h:
2184         * WebView/WebDocumentPrivate.h:
2185         * WebView/WebHTMLView.h:
2186         * WebView/WebPDFView.h:
2187         * WebView/WebScriptDebugDelegatePrivate.h:
2188
2189 2006-06-28  Darin Adler  <darin@apple.com>
2190
2191         Reviewed by Adele.
2192
2193         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9625
2194           <rdar://problem/4604703>
2195           REGRESSION: Focus not removed from password field after ctrl-click in text field
2196
2197         * WebView/WebHTMLView.m: (-[WebHTMLView menuForEvent:]): Set handlingMouseDownEvent to
2198         YES while calling sendContextMenuEvent: on the bridge.
2199
2200 2006-07-14  Timothy Hatcher  <timothy@apple.com>
2201
2202         Reviewed by Maciej.
2203
2204         Moved JavaScriptCore to be a public framework.
2205
2206         * WebKit.xcodeproj/project.pbxproj:
2207
2208 2006-07-13  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2209
2210         Reviewed by Darin.
2211
2212         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9795
2213           REGRESSION: Crash in [WebHTMLView(WebPrivate) 
2214           _updateMouseoverWithEvent:]
2215           and http://bugzilla.opendarwin.org/show_bug.cgi?id=9850
2216           REGRESSION: Assertion failure (SHOULD NEVER BE REACHED) in -
2217           [WebHTMLView(WebPrivate) removeTrackingRect:]
2218
2219         * WebView/WebHTMLView.m:
2220         (-[WebHTMLView _updateMouseoverWithEvent:]): Return immediately if 
2221         the view has already been closed.
2222
2223 2006-07-13  David Harrison  <harrison@apple.com>
2224
2225         Reviewed by Justin and Levi.
2226
2227         <rdar://problem/4620743> REGRESSION: Option-Delete doesn't delete words during typing
2228
2229         * Tests:
2230         editing/deleting/delete-by-word-001.html
2231         editing/deleting/delete-by-word-002.html
2232
2233         * WebView/WebHTMLView.m:
2234         (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:granularity:]):
2235
2236 2006-07-13  Timothy Hatcher  <timothy@apple.com>
2237
2238         Rolling out this earlier change (r15378) now that it is fixed on AGL's end.
2239         Fixes <rdar://problem/4624865> Restore 64-bit OpenGL plug-in support once AGL is 64-bit
2240
2241         <rdar://problem/4624858> AGL isn't 64-bit yet; temporarily remove it from WebKit 64-bit build
2242
2243         * Plugins/WebBaseNetscapePluginView.h:
2244         * Plugins/WebBaseNetscapePluginView.m:
2245
2246 2006-07-13  Timothy Hatcher  <timothy@apple.com>
2247
2248         Reviewed by Darin.
2249
2250         <rdar://problem/4616920> REGRESSION: tabbing in mail moves focus
2251         to next control instead of inserting a tab space.
2252
2253         Change editible WebView's tabKeyCyclesThroughElements to NO only
2254         if the setTabKeyCyclesThroughElements SPI wasn't called.
2255
2256         * WebView/WebView.m:
2257         (-[WebView setEditable:]):
2258
2259 2006-07-12  Anders Carlsson  <acarlsson@apple.com>
2260
2261         Reviewed by Darin.
2262
2263         http://bugzilla.opendarwin.org/show_bug.cgi?id=9624
2264         REGRESSION: After ctrl-clicking in a EMPTY input or textarea field, the contextual menu shows "Search in Google" and "Search in Spotlight" as active menu items
2265
2266         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
2267         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
2268         Don't create Dictionary, Spotlight or Google lookup items if there's no selection.
2269
2270 2006-07-12  Mark Rowe  <opendarwin.org@bdash.net.nz>
2271
2272         Reviewed by Timothy.
2273
2274         http://bugzilla.opendarwin.org/show_bug.cgi?id=9868
2275         Applications shown in Drosera's "Attach" window remain after exit
2276
2277         * DefaultDelegates/WebScriptDebugServer.m:
2278         (-[WebScriptDebugServer init]): Register for NSApplicationWillTerminateNotification so we will
2279         know when the application is being exited.
2280         (-[WebScriptDebugServer dealloc]): Unregister notification before we are deallocated.
2281         (-[WebScriptDebugServer applicationTerminating:]): Inform anyone listening that we are going away.
2282
2283 2006-07-12  Tim Omernick  <timo@apple.com>
2284
2285         Reviewed by Tim Hatcher.
2286
2287         <rdar://problem/4624858> AGL isn't 64-bit yet; temporarily remove it from WebKit 64-bit build
2288
2289         Also, fixed a LOG_ERROR() so that it uses the CGL error instead of the AGL error; Tim H missed this in his build fix
2290         from earlier.
2291
2292         * Plugins/WebBaseNetscapePluginView.h:
2293         * Plugins/WebBaseNetscapePluginView.m:
2294
2295 2006-07-11  John Sullivan  <sullivan@apple.com>
2296
2297         Reviewed by Kevin and Tim O
2298
2299         - added support for creating a selection image with white text
2300
2301         * WebView/WebDocumentPrivate.h:
2302         added -selectionImageForcingWhiteText: and -selectionImageRect to the private
2303         <WebDocumentSelection> protocol
2304
2305         * Misc/WebSearchableTextView.m:
2306         (-[NSString selectionImageForcingWhiteText:]):
2307         added stub for this new method to this obsolete class to satisfy the compiler
2308         (-[NSString selectionImageRect]):
2309         ditto
2310         
2311         * WebView/WebHTMLView.m:
2312         (-[WebHTMLView _selectionDraggingImage]):
2313         now calls -selectionImageForcingWhiteText:NO instead of just -selectionImage
2314         (-[WebHTMLView _selectionDraggingRect]):
2315         now calls selectionImageRect, to which the implementation moved
2316         (-[WebHTMLView selectionImageForcingWhiteText:]):
2317         implemented this new method by calling through to new bridge method selectionImageForcingWhiteText:
2318         (-[WebHTMLView selectionImageRect]):
2319         implemented this new method by using existing _selectionDraggingRect implementation
2320         
2321         * WebView/WebPDFView.m:
2322         (-[WebPDFView selectionImageForcingWhiteText:]):
2323         implemented by using code that was formerly in Safari
2324         (-[WebPDFView selectionImageRect]):
2325         implemented by returning selectionRect
2326
2327 2006-07-11  Tim Omernick  <timo@apple.com>
2328
2329         Reviewed by Geoff.
2330
2331         <http://bugzilla.opendarwin.org/show_bug.cgi?id=9843>:
2332         Give Netscape plug-ins access to their own DOM element
2333
2334         * Plugins/WebBaseNetscapePluginView.h:
2335         * Plugins/WebBaseNetscapePluginView.m:
2336         (-[WebBaseNetscapePluginView dealloc]):
2337         Release DOM element.
2338         (-[WebBaseNetscapePluginView getVariable:value:]):
2339         Return NPObject for plugin DOM element.
2340
2341         * Plugins/WebNetscapePluginEmbeddedView.h:
2342         * Plugins/WebNetscapePluginEmbeddedView.m:
2343         (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]):
2344         Now takes a DOMElement, in much the same way that WebKit plug-in views take a DOMElement.
2345
2346         * WebCoreSupport/WebFrameBridge.m:
2347         (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
2348         Pass DOMElement to Netscape plug-ins.
2349         (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]):
2350         ditto
2351
2352 2006-07-11  Justin Garcia  <justin.garcia@apple.com>
2353
2354         Reviewed by levi & thatcher
2355         
2356         <http://bugzilla.opendarwin.org/show_bug.cgi?id=9642>
2357         GMail Editor: Operations that use drop down menus blow away the selection
2358         
2359         * WebView/WebHTMLView.m:
2360         (-[WebHTMLView maintainsInactiveSelection]): Maintain an inactive selection
2361         when resigning as first responder if the selection is editable
2362         or if the WebView tells us to.
2363         * WebView/WebView.m:
2364         (-[WebView maintainsInactiveSelection]): Just because a WebView is
2365         editable doesn't mean selections inside subframes will be.  Return
2366         NO by default.
2367
2368 2006-07-11  Tim Omernick  <timo@apple.com>
2369
2370         Reviewed by Tim Hatcher.
2371
2372         <rdar://problem/4622748> WebKit now uses deprecated AGL functions
2373
2374         * Plugins/WebBaseNetscapePluginView.m:
2375         (-[WebBaseNetscapePluginView _createWindowedAGLContext]):
2376         aglSetDrawable() is deprecated in AGL 3.0.  Use aglSetWindowRef() instead.
2377         (-[WebBaseNetscapePluginView _createWindowlessAGLContext]):
2378         aglSetOffScreen() is deprecated in AGL 3.0.  Use CGLSetOffScreen(), which does the same thing.
2379
2380 2006-07-11  Alexey Proskuryakov  <ap@nypop.com>
2381
2382         Reviewed by Tim O.
2383
2384         - http://bugzilla.opendarwin.org/show_bug.cgi?id=7808
2385         Assertion failure in -[WebBaseNetscapePluginStream dealloc] when requesting an invalid URL
2386
2387         * Plugins/WebNetscapePluginStream.m:
2388         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
2389         Remove the early return when requesting an invalid (unsupported) URL.
2390
2391 === Safari-521.16 ===
2392
2393 2006-07-10  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2394
2395         Reviewed by John Sullivan.
2396
2397         - fix <rdar://problem/4621541>, aka <http://bugzilla.opendarwin.org/show_bug.cgi?id=9838>
2398           REGRESSION (r14968-r14977): View Source doesn't work for pages from the back/forward cache
2399
2400         * WebView/WebDataSource.m:
2401         (-[WebDataSource _setPrimaryLoadComplete:]): Set our data only if the frame loader is
2402         has just loaded it (when coming from the back/forward cache, it hasn't).
2403
2404 2006-07-10  Brady Eidson  <beidson@apple.com>
2405
2406         Reviewed by Alexey
2407
2408         Resolved the console error messages people got from the new DB even if they didn't have it enabled
2409
2410         * Misc/WebIconDatabase.m:
2411         (-[WebIconDatabase init]):
2412         Disabled initializing the IconDatabaseBridge if user is living on the old DB
2413
2414 2006-07-10  Darin Adler  <darin@apple.com>
2415
2416         - try to fix Windows build
2417
2418         * COM/WebFrame.h: Qualify DeprecatedString and KURL with WebCore:: prefixes.
2419
2420 2006-07-09  Darin Adler  <darin@apple.com>
2421
2422         - try to fix Windows build
2423
2424         * COM/WebFrame.cpp: Rename QChar to DeprecatedChar.
2425
2426 2006-07-09  Darin Adler  <darin@apple.com>
2427
2428         - fix newlines to be consistent for all files in the COM directory
2429           (many had mixed style) and set the EOL style to "native" on them.
2430
2431         * COM/*: Set properties and changed files.
2432
2433 2006-07-09  Tim Omernick  <timo@apple.com>
2434
2435         Reviewed by Maciej.
2436
2437         <rdar://problem/4404652> Netscape plug-in mouse events broken in HiDPI
2438
2439         Multiply global mouse coordinates by the window scale factor so that plug-ins can use GlobalToLocal() in HiDPI.
2440         This fixes many bugs involving plug-in mouse event handling in HiDPI.  Most notably, the Flash player will now
2441         correctly respond to clicks.
2442
2443         * Plugins/WebBaseNetscapePluginView.m:
2444         (+[WebBaseNetscapePluginView getCarbonEvent:]):
2445         (-[WebBaseNetscapePluginView getCarbonEvent:withEvent:]):
2446
2447 2006-07-09  Darin Adler  <darin@apple.com>
2448
2449         Reviewed by Tim Hatcher.
2450
2451         - fix assertion firing in plug-in layout tests
2452
2453         * Plugins/WebBaseNetscapePluginView.m:
2454         (-[WebBaseNetscapePluginView restartNullEvents]):
2455         Don't start null events if the plug-in is not in the
2456         started state. This happens when the plug-in moves within
2457         its view hierarchy after it has been stopped.
2458
2459 2006-07-09  Timothy Hatcher  <timothy@apple.com>
2460
2461         Reviewed by Darin.
2462
2463         Bug 9820: Move new DOM API that has been through API review to public headers
2464         http://bugzilla.opendarwin.org/show_bug.cgi?id=9820
2465
2466         * Misc/WebElementDictionary.m: include DOMExtensions.h
2467         * Misc/WebNSViewExtras.m: include DOMExtensions.h
2468         * WebKit.xcodeproj/project.pbxproj: make DOMXPath.h public
2469
2470 2006-07-09  Timothy Hatcher  <timothy@apple.com>
2471
2472         Reviewed by Kevin.
2473
2474         Bug 9818: move new UIDelegate API that has been through API review to public headers
2475         http://bugzilla.opendarwin.org/show_bug.cgi?id=9818
2476
2477         <rdar://problem/4387541> API: Remove webView:setContentRect: & webViewContentRect: delegate methods?
2478         The fix for 4310363 removed the only use of webViewContentRect: in our code. webView:setContentRect:
2479         was never used to begin with. There's no harm in leaving these around in the API, but they'll cruft it up.
2480
2481         Also removes the never used webViewPrint: SPI that was replaced by webView:printFrameView:.
2482
2483         * DefaultDelegates/WebDefaultUIDelegate.m:
2484         * WebCoreSupport/WebFrameBridge.m:
2485         (-[WebFrameBridge print]):
2486         * WebView/WebFrameView.h:
2487         * WebView/WebFrameView.m:
2488         * WebView/WebFrameViewPrivate.h:
2489         * WebView/WebUIDelegate.h:
2490         * WebView/WebUIDelegatePrivate.h:
2491
2492 2006-07-09  Timothy Hatcher  <timothy@apple.com>
2493
2494         Reviewed by Darin.
2495
2496         Bug 9814: Move new WebView API that has been through API review to public headers
2497         http://bugzilla.opendarwin.org/show_bug.cgi?id=9814
2498
2499         * WebView/WebView.h:
2500         * WebView/WebView.m:
2501         (-[WebView close]):
2502         (-[WebView setShouldCloseWithWindow:]):
2503         (-[WebView shouldCloseWithWindow]):
2504         (-[WebView selectedFrame]):
2505         (-[WebView setMainFrameURL:]):
2506         (-[WebView mainFrameURL]):
2507         (-[WebView isLoading]):
2508         (-[WebView mainFrameTitle]):
2509         (-[WebView mainFrameIcon]):
2510         (-[WebView mainFrameDocument]):
2511         (-[WebView setDrawsBackground:]):
2512         (-[WebView drawsBackground]):
2513         (-[WebView toggleSmartInsertDelete:]):
2514         (-[WebView toggleContinuousSpellChecking:]):
2515         (-[WebView canMakeTextStandardSize]):
2516         (-[WebView makeTextStandardSize:]):
2517         (-[WebView maintainsInactiveSelection]):
2518         * WebView/WebViewPrivate.h:
2519
2520 2006-07-09  Timothy Hatcher  <timothy@apple.com>
2521
2522         Reviewed by Maciej.
2523
2524         Bug 9487: The XPath section should be removed and/or moved.
2525         http://bugzilla.opendarwin.org/show_bug.cgi?id=9487
2526
2527         * WebInspector/webInspector/inspector.css:
2528         * WebInspector/webInspector/inspector.html:
2529         * WebInspector/webInspector/inspector.js:
2530
2531 2006-07-09  Anders Carlsson  <acarlsson@apple.com>
2532
2533         Reviewed by Tim O.
2534
2535         * WebCoreSupport/WebSystemInterface.m:
2536         (InitWebCoreSystemInterface):
2537         Initialize wkPathFromFont.
2538
2539 2006-07-09  Darin Adler  <darin@apple.com>
2540
2541         - fix release build
2542
2543         * Plugins/WebBaseNetscapePluginView.m:
2544         (-[WebBaseNetscapePluginView restorePortState:]): Cast inside the assertion so
2545         that we don't have an unused variable in versions with assertions disabled.
2546         The alternative would be to wrap the whole thing in an #if statement.
2547
2548 2006-07-08  Tim Omernick  <timo@apple.com>
2549
2550         Reviewed by John Sullivan.
2551
2552         * Plugins/WebBaseNetscapePluginView.h:
2553         - Added ivars for OpenGL support.  Someday it would be nice to refactor this class so
2554           that each drawing model is encapsulated in a class; this would allow
2555           WebBaseNetscapePluginView to make more efficient use of space, for example by not
2556           keeping OpenGL-related ivars for Quickdraw plug-ins.
2557         
2558         * Plugins/WebBaseNetscapePluginView.m:
2559         - Declared a bunch of internal methods for OpenGL support (see below).
2560         - Removed "forUpdate" from CoreGraphics port state struct; it was always set to "YES",
2561           so I just cleaned up the silly code that used it.
2562         - Declared OpenGL port state struct.
2563         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
2564         - Moved a CoreGraphics-related assertion down to the big "switch" statement.
2565         - Don't set window.type here -- according to the Netscape Plug-in API docs, the plug-in
2566           should default to "windowed" mode, and may call NPN_SetValue() during its NPN_New() to
2567           request that the browser use a "windowless" (offscreen) context instead.
2568         - Moved the assertion from the top of this method here; removed a less restrictive
2569           assertion that is now obsolete.
2570         - Removed "forUpdate" flag from CoreGraphics port state struct.
2571         - Fill in OpenGL port state struct.  Set up the viewport appropriately for both windowed
2572           and windowless OpenGL plug-ins.  Windowed plug-ins need to have their GL viewport
2573           transformed by the amount the plug-in is clipped; windowless plug-ins are drawn off-screen
2574           into a surface whose geometry is never changed or clipped, so they may always draw with
2575           a viewport origin of (0, 0).
2576         (-[WebBaseNetscapePluginView restorePortState:]):
2577         - Removed "forUpdate" flag from CoreGraphics port state struct.
2578         - Restore the old OpenGL context saved by -saveAndSetNewPortStateForUpdate:.
2579         (-[WebBaseNetscapePluginView sendEvent:]):
2580         - Updated an assertion to also include OpenGL.  To ensure that attached plug-in window movements
2581           happen atomically with web page redisplays, we assert that the plug-in's window is set only while
2582           the plug-in view is redrawing.
2583         - Same deal as with the assertion; only save/set port state when redrawing the plug-in view.  Plug-ins
2584           that use the new drawing models are only allowed to draw when the web page draws.  I might consider
2585           changing this for windowed OpenGL plug-ins, since they always obscure the page content anyway.
2586         (-[WebBaseNetscapePluginView isNewWindowEqualToOldWindow]):
2587         - Compare new NP_GLContext structs.
2588         (-[WebBaseNetscapePluginView updateAndSetWindow]):
2589         - In OpenGL mode, can only set window when updating plug-in view.
2590         (-[WebBaseNetscapePluginView setWindowIfNecessary]):
2591         - ditto
2592         - Updated logging for OpenGL drawing mode.
2593         (-[WebBaseNetscapePluginView addWindowObservers]):
2594         - No need to observe frame/bounds change notifications for this and all parent views.  See -renewGState
2595           comments below.
2596         (-[WebBaseNetscapePluginView removeWindowObservers]):
2597         - Don't need to remove frame/bounds observers anymore.
2598         (-[WebBaseNetscapePluginView start]):
2599         - Plug-ins are "windowed" by default.  This is not a change from our previous behavior, but this is a
2600           better place to set the default value as it allows the plug-in to override it later.
2601         (-[WebBaseNetscapePluginView stop]):
2602         - Destroy AGL context when the plug-in stops.
2603         (-[WebBaseNetscapePluginView dealloc]):
2604         - Assert that the AGL stuff has been cleaned up.
2605         (-[WebBaseNetscapePluginView drawRect:]):
2606         - If this is a windowless OpenGL plugin, blit its contents back into this view.
2607         (-[WebBaseNetscapePluginView renewGState]):
2608         - This method is called when the view or one of its parents is moved or resized (see comments).
2609         (-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
2610         - Hide the AGL window if the plug-in view is about to be removed from its window.
2611         (-[WebBaseNetscapePluginView viewHasMoved:]):
2612         - Renamed and moved to the "Internal" category.
2613         (-[WebBaseNetscapePluginView invalidateRegion:]):
2614         - Style changes.
2615         - Add support for OpenGL (uses the same region type as CoreGraphics).
2616         (-[WebBaseNetscapePluginView getVariable:value:]):
2617         - Style changes.
2618         - Implemented NPNVsupportsOpenGLBool; returns YES since we now support the OpenGL drawing model.
2619         (-[WebBaseNetscapePluginView setVariable:value:]):
2620         - Implemented NPPVpluginWindowBool, which allows plug-ins to specify whether they should be rendered in
2621           "windowed" or "windowless" mode.  This is an older part of the Netscape Plug-in API that was never
2622           implemented in WebKit.  "Windowed" Quickdraw plug-ins do not actually reside in a separate window, and
2623           can already do many of the same things (such as transparency) that only "windowless" plug-ins can do on
2624           other platforms.  However, we need the "windowed" vs. "windowless" distinction for OpenGL plug-ins so
2625           that they have some way of specifying whether they should be rendered on an accelerated overlay surface,
2626           composited into the browser window.
2627         - Support for setting the drawing model to OpenGL.
2628         (-[WebBaseNetscapePluginView _viewHasMoved]):
2629         - Renamed from -viewHasMoved:, and moved down in the file.
2630         - None of this work is necessary when the plug-in is not in a window; the plug-in's state will be properly
2631           restored when it is moved back into a window.
2632         - Reshape OpenGL surface window here.
2633         (-[WebBaseNetscapePluginView _createAGLContextIfNeeded]):
2634         - Creates the AGL context of the appropriate type (windowed/windowless).
2635         (-[WebBaseNetscapePluginView _createWindowedAGLContext]):
2636         - Creates a windowed AGL context, which is an AGL context attached to a child window.  This is the only way
2637           to get true hardware acceleration.
2638         (-[WebBaseNetscapePluginView _createWindowlessAGLContext]):
2639         - Creates a windowless AGL context, which is an AGL context attached to an offscreen buffer.  This buffer can
2640           then be blitted back into the browser window with a different alpha, or scaled, or whatever.
2641         (-[WebBaseNetscapePluginView _cglContext]):
2642         - Returns the underlying CGL context from the AGL context.  We give the plug-in access to the CGL context because
2643           CGL is the more primitive of the GL drawable APIs and allows for finer control over the context.
2644         (-[WebBaseNetscapePluginView _getAGLOffscreenBuffer:width:height:]):
2645         - Returns the buffer allocated for the offscreen AGL context, if there is one.
2646         (-[WebBaseNetscapePluginView _destroyAGLContext]):
2647         - Destroys the AGL context, as well as the associated offscreen buffer or child window.
2648         (-[WebBaseNetscapePluginView _reshapeAGLWindow]):
2649         - Positions the AGL window over the browser window.
2650         (-[WebBaseNetscapePluginView _hideAGLWindow]):
2651         - Hides the AGL window.
2652         (-[WebBaseNetscapePluginView _aglOffscreenImageForDrawingInRect:]):
2653         - Returns an NSImage representation of the offscreen AGL context's framebuffer.  This is used to draw the offscreen
2654           bits back into the plug-in view.  This is kind of tricky because it has to convert the offscreen buffer in-place
2655           from BGRA to RGBA so that it can be wrapped in an NSBitmapImageRep.  See comments.
2656
2657         * WebKit.xcodeproj/project.pbxproj:
2658         Link OpenGL and AGL.
2659
2660 2006-07-09  Brady Eidson  <beidson@apple.com>
2661
2662         Reviewed by Maciej
2663
2664         The ICONDEBUG flag now chooses either the new icon database or the old one
2665         No longer any need to live side by side to compare results
2666
2667         * Misc/WebIconDatabase.m:
2668         (-[NSMutableDictionary iconURLForURL:]):
2669         (-[NSMutableDictionary retainIconForURL:]):
2670         (-[NSMutableDictionary releaseIconForURL:]):
2671         (-[WebIconDatabase _setHaveNoIconForIconURL:]):
2672         (-[WebIconDatabase _setIconURL:forURL:]):
2673         (-[WebIconDatabase _resetCachedWebPreferences:]):
2674
2675 2006-07-08  Timothy Hatcher  <timothy@apple.com>
2676
2677         Reviewed by Maciej.
2678
2679         Bug 5312: comments aren't available via DOM
2680         http://bugzilla.opendarwin.org/show_bug.cgi?id=5312
2681
2682         Makes the Web Inspector show comment node contents.
2683
2684         * WebInspector/WebInspector.m:
2685         (-[DOMNode _displayName]): return the contents of the comment
2686         * WebInspector/webInspector/inspector.js: check for comment nodes
2687
2688 2006-07-09  Alexey Proskuryakov  <ap@nypop.com>
2689
2690         Reviewed by Darin.
2691
2692         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9572
2693         Add application/xhtml+xml to the Accept header
2694
2695         * WebView/WebFrame.m:
2696         (-[WebFrame _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): Add an Accept header
2697         to main resource requests.
2698         * English.lproj/StringsNotToBeLocalized.txt: Added new strings.
2699
2700 2006-07-08  Darin Adler  <darin@apple.com>
2701
2702         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
2703         (-[WebDefaultUIDelegate contextMenuItemsForElement:defaultMenuItems:]):
2704         Removed misleading old comment.
2705
2706 === Safari-521.15 ===
2707
2708 2006-07-07  Levi Weintraub  <lweintraub@apple.com>
2709
2710         Reviewed by justin
2711
2712         Finished moving deletion selection expansion across the bridge... say that 3 times fast.
2713
2714         * WebView/WebHTMLView.m:  Pass granularity to WebCore to handle expansion
2715         (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:granularity:]):
2716         (-[WebHTMLView _deleteSelection]):
2717         (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]):
2718         (-[WebHTMLView deleteToMark:]):
2719
2720 2006-07-07  Brady Eidson  <beidson@apple.com>
2721
2722         Reviewed by John
2723
2724         Changed an ASSERT to a LOG_ERROR for an error that could be handled gracefully, but
2725         whose assertion was reproducibly causing a build bot failure
2726
2727         * Misc/WebIconDatabase.m:
2728         (-[WebIconDatabase _releaseIconForIconURLString:]):
2729
2730 2006-07-06  Levi Weintraub  <lweintraub@apple.com>
2731
2732         Reviewed by justin
2733
2734         Improved table editing
2735
2736         * WebCoreSupport/WebFrameBridge.m: Added method to allow WebCore to trigger
2737         deletion editing delegate
2738         (-[WebFrameBridge shouldDeleteSelectedDOMRange:]):
2739         * WebView/WebHTMLView.m: Moved code that expanded a selection when the delete
2740         key is pressed over to WebCore so we can be more intelligent about how to handle it
2741         (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:]):
2742         (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]):
2743
2744 2006-07-07  John Sullivan  <sullivan@apple.com>
2745
2746         Reviewed by Tim Hatcher
2747         
2748         - fixed <rdar://problem/4606857> WebKit: WebPreferencesChangedNotification not exported
2749
2750         * WebKit.exp:
2751         added surprisingly missing _WebPreferencesChangedNotification, defined in
2752         WebPreferences.h
2753
2754 2006-07-06  Brady Eidson  <beidson@apple.com>
2755
2756         Reviewed by John.
2757
2758         Small fix to my previous small fix that only lets the ASSERT off the hook if the DB
2759         is closing
2760
2761         * Misc/WebIconDatabase.m:
2762         (-[WebIconDatabase _releaseIconForIconURLString:]):
2763
2764 2006-07-05  Brady Eidson  <beidson@apple.com>
2765
2766         Reviewed by Maciej
2767
2768         Small fix that prevents an assertion from triggering if the DB is being cleaned up 
2769         (ie, the app being shut down)
2770
2771         * Misc/WebIconDatabase.h:
2772         * Misc/WebIconDatabase.m:
2773         (-[NSMutableDictionary init]):
2774         (-[WebIconDatabase _applicationWillTerminate:]):
2775         (-[WebIconDatabase _releaseIconForIconURLString:]):
2776
2777 2006-07-05  Adele Peterson  <adele@apple.com>
2778
2779         Reviewed by Maciej and Hyatt.
2780
2781         WebKit part of initial popup menu implementation.
2782
2783         * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
2784         Initialize WKPopupMenu.
2785
2786 2006-07-05  Anders Carlsson  <acarlsson@apple.com>
2787
2788         Reviewed by Maciej.
2789
2790         http://bugzilla.opendarwin.org/show_bug.cgi?id=3581
2791         iFrames set to display:none are Missing from frames array
2792         
2793         * WebCoreSupport/WebFrameBridge.m:
2794         (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]):
2795         (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]):
2796         Modify to pass the owner element instead of the owner renderer.
2797         
2798         * WebView/WebHTMLView.m:
2799         (-[WebHTMLView _topHTMLView]):
2800         Remove assertion, it's not valid anymore.
2801
2802 2006-07-05  Timothy Hatcher  <timothy@apple.com>
2803
2804         Reviewed by Harrison.
2805
2806         <rdar://problem/4608423> HIViewAdapter used but not defined
2807         Adds a new export file to fix the build.
2808
2809         * WebKit.LP64.exp: Added.
2810         * WebKit.xcodeproj/project.pbxproj:
2811
2812 2006-07-04  Timothy Hatcher  <timothy@apple.com>
2813
2814         Reviewed by Maciej.
2815
2816         Bug 9731: [Drosera] crash when trying to access the scope chain
2817         http://bugzilla.opendarwin.org/show_bug.cgi?id=9731
2818
2819         Because of <rdar://problem/4608404> the WebScriptObject, _globalObj, that
2820         WebCoreScriptDebugger holds is unprotected each time the page changes.
2821         This causes Drosera to crash Safari when trying to access the scope chain.
2822         We simply need to detach and re-attach the debugger when the window script
2823         object is cleared until 4608404 is fixed. This change also attaches the
2824         debugger before we call the windowScriptObjectAvailable: delegate method,
2825         so the debugger is ready before anyone might use the window object.
2826
2827         * WebCoreSupport/WebFrameBridge.m:
2828         (-[WebFrameBridge windowObjectCleared]):
2829
2830 2006-07-04  Timothy Hatcher  <timothy@apple.com>
2831
2832         Reviewed by Darin.
2833
2834         Bug 9732: [Drosera] calling removeListener to many times will cause
2835                   WebKit's listener count to underflow/wraparound
2836         http://bugzilla.opendarwin.org/show_bug.cgi?id=9732
2837
2838         Adds a check to make sure the listener was in our listeners set before
2839         decrementing the global listener count. Also checks for nil in addListner
2840         to prevent a possible exception when adding the object to the set.
2841
2842         * DefaultDelegates/WebScriptDebugServer.m:
2843         (-[WebScriptDebugServer addListener:]):
2844         (-[WebScriptDebugServer removeListener:]):
2845
2846 2006-07-04  Alexey Proskuryakov  <ap@nypop.com>
2847
2848         Reviewed by Maciej.
2849
2850         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8210
2851         Conditional XMLHttpRequest gets should pass 304 responses unchanged
2852
2853         Test: http/tests/xmlhttprequest/cache-override.html
2854
2855         * Misc/WebNSURLRequestExtras.h: Added _web_isConditionalRequest
2856         * Misc/WebNSURLRequestExtras.m:
2857         (-[NSURLRequest _web_isConditionalRequest]):
2858         * WebCoreSupport/WebFrameBridge.m:
2859         (-[WebFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
2860         Bypass the cache for conditional requests.
2861         * WebCoreSupport/WebSubresourceLoader.m:
2862         (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]): Ditto.
2863
2864 2006-07-01  David Kilzer  <ddkilzer@kilzer.net>
2865
2866         Reviewed by NOBODY (fixed Tim's build fix).
2867
2868         * WebView/WebView.m: Added back missing '/' at the beginning of the file.
2869
2870 2006-07-01  Tim Omernick  <timo@apple.com>
2871
2872         Reviewed by NOBODY (build fix)
2873
2874         * WebView/WebView.m:
2875         (-[WebView _isMIMETypeRegisteredAsPlugin:]):
2876         Changed nil to NO (typo).
2877
2878 === Safari-521.14 ===
2879
2880 2006-06-30  Timothy Hatcher  <timothy@apple.com>
2881
2882         Reviewed by Darin.
2883
2884         Only enable shouldCloseWithWindow when ObjC GC is enabled.
2885         This maintains backwards compatibility with applications
2886         that expect a WebView to be usable after the window closes.
2887
2888         * WebView/WebView.m:
2889         (-[WebViewPrivate init]):
2890
2891 2006-06-30  Timothy Hatcher  <timothy@apple.com>
2892
2893         Reviewed by Anders.
2894
2895         Call _close in dealloc to ensure we cleanup for backwards
2896         compatibility. This will safeguard and cleanup even if the
2897         application doesn't use the new close API yet, like Mail.
2898
2899         * WebView/WebView.m:
2900         (-[WebView dealloc]):
2901
2902 2006-06-29  Timothy Hatcher  <timothy@apple.com>
2903
2904         Reviewed by Darin.
2905
2906         <rdar://problem/4484405> WebKit leaks, improper tear-down
2907         <rdar://problem/3694059> -[WebBackForwardList finalize] is incorrect; design change needed
2908         <rdar://problem/3694103> -[WebFrame finalize] is incorrect; design change needed
2909         <rdar://problem/3694104> -[WebHTMLView finalize] is incorrect; design change needed
2910
2911         Adds a close method to WebView, this needs to be called when the 
2912         WebView is no longer needed. To make this easier for the common cases
2913         there is now an "auto close" on WebView that listens to the view's
2914         parent window. If the parent window closes and the WebView has no
2915         hostWindow then the WebView is automatically closed if autoClose is YES.
2916         To manage WebView closing yourself call setAutoClose: and pass NO.
2917
2918         When a WebView closes it will tear-down and not be usable anymore.
2919         Close will will called on various other internal objects as a part
2920         of this, to ensure proper tear-down in GC without relying on finalize.
2921
2922         * History/WebBackForwardList.m:
2923         (-[WebBackForwardList dealloc]):
2924         (-[WebBackForwardList finalize]):
2925         (-[WebBackForwardList _close]):
2926         * History/WebHistoryItem.m:
2927         (+[WebHistoryItem _closeObjectsInPendingPageCaches]):
2928         (+[WebHistoryItem _releaseAllPendingPageCaches]):
2929         * History/WebHistoryItemPrivate.h:
2930         * WebCoreSupport/WebFrameBridge.m:
2931         (-[WebFrameBridge close]):
2932         (-[WebFrameBridge saveDocumentToPageCache:]):
2933         (-[WebFrameBridge canGoBackOrForward:]):
2934         * WebView/WebFrame.m:
2935         (-[WebFrame _detachFromParent]):
2936         (-[WebFrame dealloc]):
2937         (-[WebFrame finalize]):
2938         * WebView/WebFrameView.m:
2939         (-[WebFrameView _setWebFrame:]):
2940         (-[WebFrameView finalize]):
2941         * WebView/WebHTMLView.m:
2942         (-[WebHTMLView close]):
2943         (-[WebHTMLView dealloc]):
2944         (-[WebHTMLView finalize]):
2945         * WebView/WebHTMLViewInternal.h:
2946         * WebView/WebHTMLViewPrivate.h:
2947         * WebView/WebScriptDebugDelegate.m:
2948         (-[WebScriptCallFrame _initWithFrame:initWithWebFrame:]):
2949         (-[WebScriptCallFrame parsedSource:fromURL:sourceId:startLine:errorLine:errorMessage:]):
2950         (-[WebScriptCallFrame enteredFrame:sourceId:line:]):
2951         (-[WebScriptCallFrame hitStatement:sourceId:line:]):
2952         (-[WebScriptCallFrame leavingFrame:sourceId:line:]):
2953         * WebView/WebScriptDebugDelegatePrivate.h:
2954         * WebView/WebView.m:
2955         (-[WebViewPrivate init]):
2956         (-[WebView _close]):
2957         (-[WebView dealloc]):
2958         (-[WebView finalize]):
2959         (-[WebView viewWillMoveToWindow:]):
2960         (-[WebView _windowWillClose:]):
2961         (-[WebView setPreferencesIdentifier:]):
2962         (-[WebView mainFrame]):
2963         (-[WebView setHostWindow:]):
2964         (-[WebView searchFor:direction:caseSensitive:wrap:]):
2965         (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]):
2966         (-[WebView close]):
2967         (-[WebView setAutoClose:]):
2968         (-[WebView autoClose]):
2969         (-[WebView _frameViewAtWindowPoint:]):
2970         * WebView/WebViewPrivate.h:
2971
2972 2006-06-29  Kevin Decker  <kdecker@apple.com>
2973
2974         Reviewed by mjs and timo.
2975         
2976         Fixed: <rdar://problem/4609119> handleAuthenticationFromResource was removed; needed by the Dashboard
2977
2978         * WebView/WebViewPrivate.h: Added handleAuthenticationFromResource back into the header. Needed by the
2979         Dashboard, but was removed in r.14028 on 2006-04-23. 
2980
2981 2006-06-29  Tim Omernick  <timo@apple.com>
2982
2983         Reviewed by Kevin Decker.
2984
2985         <rdar://problem/4608487> REGRESSION: reproducible crash in +[WebCoreFrameBridge supportedImageMIMETypes]
2986
2987         * Plugins/WebPluginDatabase.m:
2988         (+[WebPluginDatabase setAdditionalWebPlugInPaths:]):
2989         One might be tempted to add additionalWebPlugInPaths to the global WebPluginDatabase here.
2990         For backward compatibility with earlier versions of the +setAdditionalWebPlugInPaths: SPI,
2991         we need to save a copy of the additional paths and not cause a refresh of the plugin DB
2992         at this time.
2993         (-[WebPluginDatabase _plugInPaths]):
2994         Include additionalWebPlugInPaths if this is the global DB.
2995         (-[WebPluginDatabase refresh]):
2996         Call -_plugInPaths to get the modified array of paths.  This is similar to what the old code
2997         (before we had per-WebView plugin search paths).
2998
2999 2006-06-29  Tim Omernick  <timo@apple.com>
3000
3001         Reviewed by John Sullivan.
3002
3003         WebHistoryItem now supports getting and setting arbitrary properties via _transientPropertyForKey: and
3004         -_setTransientProperty:forKey:.
3005         For now, these properties do not persist with the rest of the history data.  They are intended to hold transient
3006         per-history-item state, which is something that was until now difficult for a WebKit client app to do.
3007         
3008         * History/WebHistoryItemPrivate.h:
3009         * History/WebHistoryItem.m:
3010         (-[WebHistoryItemPrivate dealloc]):
3011         (-[WebHistoryItem _transientPropertyForKey:]):
3012         (-[WebHistoryItem _setTransientProperty:forKey:]):
3013
3014 2006-06-29  Timothy Hatcher  <timothy@apple.com>
3015
3016         Reviewed by Harrison.
3017
3018         Smart insert and delete, continuous spell checking and autoscroll
3019         can now be used for any WebView, not just editable ones. All of
3020         these make sense for documents that might contain content editable 
3021         areas or our new text fields. Autoscroll is usefull for dragging
3022         for file input controls also.
3023
3024         Added a SPI to toggle WebViews tab key behavior, tabKeyCyclesThroughElements.
3025         WebHTMLView's _interceptEditingKeyEvent now uses WebView's
3026         tabKeyCyclesThroughElements state to determine whether or not
3027         to process tab key events. The idea here is that tabKeyCyclesThroughElements
3028         will be YES when this WebView is being used in a browser, and we
3029         desire the behavior where tab moves to the next element in tab order.
3030         If tabKeyCyclesThroughElements is NO, it is likely that the WebView
3031         is being embedded as the whole view, as in Mail, and tabs should input
3032         tabs as expected in a text editor. Using Option-Tab always cycles
3033         through elements.
3034
3035         * WebView/WebHTMLRepresentation.m:
3036         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
3037         * WebView/WebHTMLView.m:
3038         (-[WebHTMLView _interceptEditingKeyEvent:]):
3039         * WebView/WebView.m:
3040         (-[WebViewPrivate init]):
3041         (-[WebView _autoscrollForDraggingInfo:timeDelta:]):
3042         (-[WebView _shouldAutoscrollForDraggingInfo:]):
3043         (-[WebView validateUserInterfaceItem:]):
3044         (-[WebView toggleSmartInsertDelete:]):
3045         (-[WebView toggleContinuousSpellChecking:]):
3046         (-[WebView setTabKeyCyclesThroughElements:]):
3047         (-[WebView tabKeyCyclesThroughElements]):
3048         * WebView/WebViewPrivate.h:
3049
3050 2006-06-29  Anders Carlsson  <acarlsson@apple.com>
3051
3052         Reviewed by Tim O.
3053
3054         * WebKit.xcodeproj/project.pbxproj:
3055         Add DOMXPath.h header.
3056
3057 2006-06-28  David Hyatt  <hyatt@apple.com>
3058
3059         Fix custom highlighting so that you can paint the entire line (and go
3060         outside the bounds of the line).
3061
3062         Reviewed by harrison
3063
3064         * WebCoreSupport/WebFrameBridge.m:
3065         (-[WebFrameBridge customHighlightRect:forLine:]):
3066         (-[WebFrameBridge paintCustomHighlight:forBox:onLine:behindText:entireLine:]):
3067         * WebKit.xcodeproj/project.pbxproj:
3068         * WebView/WebHTMLViewPrivate.h:
3069
3070 2006-06-28  Maciej Stachowiak  <mjs@apple.com>
3071
3072         Reviewed by Anders.
3073         
3074         - fix Frame leak on layout tests
3075
3076         * WebCoreSupport/WebPageBridge.m:
3077         (-[WebPageBridge outerView]): Return WebFrameView for main frame instead
3078         of WebView to avoid reference cycle between WebView and Page.
3079
3080 2006-06-28  Timothy Hatcher  <timothy@apple.com>
3081
3082         Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
3083
3084         * WebKit.xcodeproj/project.pbxproj:
3085
3086 2006-06-28  Levi Weintraub  <lweintraub@apple.com>
3087
3088         Reviewed by justin
3089
3090         http://bugzilla.opendarwin.org/show_bug.cgi?id=7568
3091         Bug 7568: Implement Indent/Outdent
3092         Added undo action strings and enum values
3093
3094         * English.lproj/Localizable.strings:
3095         * WebCoreSupport/WebFrameBridge.m: 
3096         (-[WebFrameBridge nameForUndoAction:]):
3097
3098 2006-06-27  Brady Eidson  <beidson@apple.com>
3099
3100         Reviewed by Maciej
3101
3102         Hookup the new semi-functional SQLite icon database.
3103         For now, it is living side-by-side with the old DB so one can compare the
3104         two for debugging purposes.  Also, it is disabled (in WebKit) by default unless you
3105         compile with ICONDEBUG #defined.
3106         Note:  To repeat that, if you want to try the new DB, #define ICONDEBUG (WebKitPrefix.h is a good place to do it)
3107
3108         * Misc/WebIconDatabase.m:
3109         (-[NSMutableDictionary iconForURL:withSize:cache:]):
3110         (-[NSMutableDictionary iconURLForURL:]):
3111         (-[NSMutableDictionary retainIconForURL:]):
3112         (-[NSMutableDictionary releaseIconForURL:]):
3113         (-[WebIconDatabase _setHaveNoIconForIconURL:]):
3114         (-[WebIconDatabase _setIconURL:forURL:]):
3115         (-[WebIconDatabase _hasIconForIconURL:]):
3116         (-[WebIconDatabase _resetCachedWebPreferences:]):
3117         * Misc/WebIconLoader.m:
3118         (-[WebIconLoader didFinishLoading]):
3119         * WebKit.xcodeproj/project.pbxproj:
3120
3121 2006-06-26  David Hyatt  <hyatt@apple.com>
3122
3123         Fix for 9538, support syntax highlighting for HTML source.
3124
3125         Reviewed by darin
3126
3127         * WebKit.xcodeproj/project.pbxproj:
3128         * WebView/WebView.m:
3129         (-[WebView _setInViewSourceMode:]):
3130         (-[WebView _inViewSourceMode]):
3131         * WebView/WebViewPrivate.h:
3132
3133 2006-06-25  Timothy Hatcher  <timothy@apple.com>
3134
3135         Reviewed by Darin.
3136
3137         Bug 9574: Drosera should show inline scripts within the original HTML
3138         http://bugzilla.opendarwin.org/show_bug.cgi?id=9574
3139
3140         * Adds a new version of the didParseSource delegate callback with base line number.
3141         * Adds a new delegate callback for when a script fails to parse.
3142         * These new callbacks use NSURLs for the url parameter.
3143         * Adds a new script listener callback to notify when the main resource loads.
3144         * Adds a WebScriptErrorDomian and other keys for use with NSError.
3145
3146         * DefaultDelegates/WebDefaultScriptDebugDelegate.m:
3147         (-[WebDefaultScriptDebugDelegate webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]):
3148         (-[WebDefaultScriptDebugDelegate webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]):
3149         * DefaultDelegates/WebScriptDebugServer.h:
3150         * DefaultDelegates/WebScriptDebugServer.m:
3151         (-[WebScriptDebugServer webView:didLoadMainResourceForDataSource:]):
3152         (-[WebScriptDebugServer webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]):
3153         (-[WebScriptDebugServer webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]):
3154         * DefaultDelegates/WebScriptDebugServerPrivate.h:
3155         * WebKit.exp:
3156         * WebView/WebDataSource.m:
3157         (-[WebDataSource _setPrimaryLoadComplete:]):
3158         * WebView/WebScriptDebugDelegate.h:
3159         * WebView/WebScriptDebugDelegate.m:
3160         (-[WebScriptCallFrame parsedSource:fromURL:sourceId:startLine:errorLine:errorMessage:]):
3161
3162 2006-06-24  David Kilzer  <ddkilzer@kilzer.net>
3163
3164         Reviewed by Timothy.
3165
3166         * Info.plist: Fixed copyright to include 2003-2006.
3167
3168 2006-06-24  Alexey Proskuryakov  <ap@nypop.com>
3169
3170         Reviewed by Darin.
3171
3172         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9418
3173         WebKit will not build when Space exists in path
3174
3175         * WebKit.xcodeproj/project.pbxproj: Enclose search paths in quotes.
3176
3177 2006-06-23  Tim Omernick  <timo@apple.com>
3178
3179         Reviewed by John Sullivan.
3180
3181         * Plugins/WebBaseNetscapePluginView.m:
3182         (-[WebBaseNetscapePluginView sendEvent:]):
3183         Fixed a bug I found in the CoreGraphics drawing model that was preventing certain types of
3184         events from being dispatched to the plugin, unless the plugin was being updated.  The check
3185         for portState was only required to call -setWindowIfNecessary, not required for the entire
3186         event dispatch.
3187         Also, don't paint the green debug rect unless this is a QuickDraw plugin.  Otherwise the
3188         current QD port is not set, and the green rect fills the entire screen.  Pretty awesome
3189         looking, but not intended behavior.
3190         (-[WebBaseNetscapePluginView setWindowIfNecessary]):
3191         Improved the logging here to include the NPWindow's width and height.
3192
3193 2006-06-23  Timothy Hatcher  <timothy@apple.com>
3194
3195         Reviewed by Tim O.
3196
3197         Adds back SPI that Mail is still depending on.
3198
3199         * WebView/WebDataSource.m:
3200         (-[WebDataSource _addSubframeArchives:]):
3201         * WebView/WebDataSourcePrivate.h:
3202
3203 === WebKit-521.13 ===
3204
3205 2006-06-23  Timothy Hatcher  <timothy@apple.com>
3206
3207         Reviewed by Geoff.
3208
3209         script debugger should only attach to JavaScriptCore when there are listeners
3210         http://bugzilla.opendarwin.org/show_bug.cgi?id=9552
3211
3212         Attaches the debugger to all WebFrames when the first listener
3213         is added. Detaches when the last listener is removed.
3214         Also detach when the script debug delegate is set to nil.
3215
3216         * DefaultDelegates/WebScriptDebugServer.m:
3217         (+[WebScriptDebugServer listenerCount]):
3218         (-[WebScriptDebugServer dealloc]):
3219         (-[WebScriptDebugServer attachScriptDebuggerToAllWebViews]):
3220         (-[WebScriptDebugServer detachScriptDebuggerFromAllWebViews]):
3221         (-[WebScriptDebugServer listenerConnectionDidDie:]):
3222         (-[WebScriptDebugServer addListener:]):
3223         (-[WebScriptDebugServer removeListener:]):
3224         * DefaultDelegates/WebScriptDebugServerPrivate.h:
3225         * WebCoreSupport/WebFrameBridge.m:
3226         (-[WebFrameBridge windowObjectCleared]):
3227         * WebView/WebFrame.m:
3228         (-[WebFrame _attachScriptDebugger]):
3229         (-[WebFrame _detachScriptDebugger]):
3230         * WebView/WebFramePrivate.h:
3231         * WebView/WebScriptDebugDelegate.m:
3232         (-[WebScriptCallFrame parsedSource:fromURL:sourceId:]):
3233         (-[WebScriptCallFrame enteredFrame:sourceId:line:]):
3234         (-[WebScriptCallFrame hitStatement:sourceId:line:]):
3235         (-[WebScriptCallFrame leavingFrame:sourceId:line:]):
3236         * WebView/WebView.m:
3237         (-[WebView _attachScriptDebuggerToAllFrames]):
3238         (-[WebView _detachScriptDebuggerFromAllFrames]):
3239         (-[WebView setScriptDebugDelegate:]):
3240         * WebView/WebViewPrivate.h:
3241
3242 2006-06-22  John Sullivan  <sullivan@apple.com>
3243
3244         Reviewed by Tim Omernick
3245         
3246         - added support for UIDelegate to be notified of scrolling in any WebHTMLView
3247         - cleaned up recently-added UIDelegate code
3248
3249         * WebView/WebUIDelegatePrivate.h:
3250         declared webView:didScrollDocumentInFrameView: method
3251
3252         * DefaultDelegates/WebDefaultUIDelegate.m:
3253         (-[NSApplication webView:didDrawRect:]):
3254         provide default (empty) implementation of this recently-added method, so the
3255         DelegateForwarder mechanism will work for it
3256         (-[NSApplication webView:didScrollDocumentInFrameView:]):
3257         same thing for the new method
3258         
3259         * WebView/WebHTMLView.m:
3260         (-[WebHTMLView _frameOrBoundsChanged]):
3261         use _UIDelegateForwarder mechanism to notify delegate that scrolling occurred
3262         (-[WebHTMLView drawSingleRect:]):
3263         use _UIDelegateForwarder mechanism instead of checking respondsToSelector stuff
3264         here (that's packaged up nicely by the forwarder mechanism)
3265         
3266 2006-06-22  Tim Omernick  <timo@apple.com>
3267
3268         Reviewed by NOBODY (build fix)
3269
3270         * WebView/WebFrameLoader.m:
3271         Import WebMainResourceLoader instead of using @class so that we can call WebMainResourceLoader
3272         methods.
3273         
3274 2006-06-22  Tim Omernick  <timo@apple.com>
3275
3276         Reviewed by NOBODY (build fix)
3277
3278         * WebView/WebFrameLoader.m:
3279         Import JavaScriptCore/Assertions.h instead of WebKit/WebAssertions.h (which no longer exists)
3280
3281 2006-06-22  Maciej Stachowiak  <mjs@apple.com>
3282
3283         Reviewed by Adele.
3284         
3285         - start moving loading logic to new WebFrameLoader class; move management of WebLoaders there
3286
3287         * Misc/WebIconLoader.h:
3288         * Misc/WebIconLoader.m:
3289         (-[WebIconLoader didFinishLoading]):
3290         * WebKit.xcodeproj/project.pbxproj:
3291         * WebView/WebDataSource.m:
3292         (-[WebDataSourcePrivate dealloc]):
3293         (-[WebDataSource _updateLoading]):
3294         (-[WebDataSource _loadIcon]):
3295         (-[WebDataSource _setPrimaryLoadComplete:]):
3296         (-[WebDataSource _stopLoading]):
3297         (-[WebDataSource _startLoading]):
3298         (-[WebDataSource _addSubresourceLoader:]):
3299         (-[WebDataSource _removeSubresourceLoader:]):
3300         (-[WebDataSource _addPlugInStreamLoader:]):
3301         (-[WebDataSource _removePlugInStreamLoader:]):
3302         (-[WebDataSource _iconLoaderReceivedPageIcon:]):
3303         (-[WebDataSource _defersCallbacksChanged]):
3304         (-[WebDataSource _stopLoadingWithError:]):
3305         (-[WebDataSource _setupForReplaceByMIMEType:]):
3306         (-[WebDataSource initWithRequest:]):
3307         (-[WebDataSource dealloc]):
3308         (-[WebDataSource finalize]):
3309         (-[WebDataSource data]):
3310         (-[WebDataSource isLoading]):
3311         * WebView/WebFrameLoader.h: Added.
3312         * WebView/WebFrameLoader.m: Added.
3313         (-[WebFrameLoader initWithDataSource:]):
3314         (-[WebFrameLoader dealloc]):
3315         (-[WebFrameLoader hasIconLoader]):
3316         (-[WebFrameLoader loadIconWithRequest:]):
3317         (-[WebFrameLoader stopLoadingIcon]):
3318         (-[WebFrameLoader addPlugInStreamLoader:]):
3319         (-[WebFrameLoader removePlugInStreamLoader:]):
3320         (-[WebFrameLoader setDefersCallbacks:]):
3321         (-[WebFrameLoader stopLoadingPlugIns]):
3322         (-[WebFrameLoader isLoadingMainResource]):
3323         (-[WebFrameLoader isLoadingSubresources]):
3324         (-[WebFrameLoader isLoading]):
3325         (-[WebFrameLoader stopLoadingSubresources]):
3326         (-[WebFrameLoader addSubresourceLoader:]):
3327         (-[WebFrameLoader removeSubresourceLoader:]):
3328         (-[WebFrameLoader mainResourceData]):
3329         (-[WebFrameLoader releaseMainResourceLoader]):
3330         (-[WebFrameLoader cancelMainResourceLoad]):
3331         (-[WebFrameLoader startLoadingMainResourceWithRequest:identifier:]):
3332         (-[WebFrameLoader stopLoadingWithError:]):
3333
3334 2006-06-21  Brady Eidson  <beidson@apple.com>
3335
3336         Reviewed by Maciej
3337
3338         The WebCoreIconDatabaseBridge was getting messages sent to it after it had been closed, resulting in a crash
3339         on an ASSERT().  After closing the databaseBridge, we simply set it to nil so this can't happen.
3340         anymore.
3341
3342         * Misc/WebIconDatabase.m:
3343         (-[WebIconDatabase _applicationWillTerminate:]):
3344
3345 2006-06-21  Tim Omernick  <timo@apple.com>
3346
3347         Reviewed by Geoff Garen.
3348
3349         <rdar://problem/4564131> WebPluginDatabase setAdditionalWebPlugInPaths needs to be per WebView
3350
3351         Added some WebView SPI so that individual WebViews may have different plugin search paths.  There are some 
3352         limitations with the approach taken here:
3353
3354         - JavaScript may only access the global plugin DB.
3355         - When this SPI is in use, certain WebView methods may not give accurate results, such as +canShowMIMEType:.
3356         - This only works for plugins referenced using the <object> or <embed> tags; plugins that reside in non-standard
3357         file system locations may not be loaded directly into frames.
3358         
3359         None of these issues are important to the client that needs this SPI.  Rather than re-architect our entire
3360         plugin database, I think it is better to simply accept these limitations for now.
3361
3362         * Plugins/WebPluginDatabase.h:
3363         Added "plugInPaths" ivar, so different plugin databases can have different search paths.
3364         * Plugins/WebPluginDatabase.m:
3365         (+[WebPluginDatabase installedPlugins]):
3366         Give the global plugin database the default plugin search paths.
3367         (+[WebPluginDatabase setAdditionalWebPlugInPaths:]):
3368         Removed static global; this method now sets the plugin paths on the global plugin database.
3369         (-[WebPluginDatabase setPlugInPaths:]):
3370         Setter method for plugin paths.
3371         (-[WebPluginDatabase close]):
3372         New method; called when the plugin database is no longer needed (when its WebView is being destroyed).
3373         (-[WebPluginDatabase init]):
3374         Don't refresh in -init, so that callers can set the DB's plugin path array before it refreshes.
3375         (-[WebPluginDatabase dealloc]):
3376         Moved here from near the bottom of the file.  Release new ivar.
3377         (-[WebPluginDatabase refresh]):
3378         Use the plugInPaths ivar instead of calling pluginLocations().
3379         Notify plugin packages when they are added to and removed from a plugin database.  A plugin package will
3380         unload itself when it is removed from all of its plugin databases.
3381         The only really tricky thing here is that the global MIME <-> view class registrations are only modified
3382         by the shared plugin DB.
3383         (+[WebPluginDatabase _defaultPlugInPaths]):
3384         Refactored from the old pluginLocations() function; returns the default set of plugin search paths.
3385
3386         * Plugins/WebBasePluginPackage.h:
3387         * Plugins/WebBasePluginPackage.m:
3388         (-[WebBasePluginPackage dealloc]):
3389         Assert that this package has been removed from all of its containing plugin databases.
3390         (-[WebBasePluginPackage finalize]):
3391         ditto
3392         (-[WebBasePluginPackage wasAddedToPluginDatabase:]):
3393         Add plugin database to set.
3394         (-[WebBasePluginPackage wasRemovedFromPluginDatabase:]):
3395         Remove plugin database from set.  If it was the last DB, then unload the plugin package.
3396
3397         * WebView/WebViewInternal.h:
3398         Added instance methods to find the view class or plugin package, given a MIME type or file extension.
3399         * WebView/WebViewPrivate.h:
3400         Added SPI to set plugin search paths per WebView.
3401         * WebView/WebView.m:
3402         (-[WebView _viewClass:andRepresentationClass:forMIMEType:]):
3403         New method; tries the global MIME <-> view map first; failing that, it checks the WebView's plugin DB.
3404         (-[WebView _close]):
3405         Close the plugin DB.
3406         (-[WebView _setAdditionalWebPlugInPaths:]):
3407         Create the plugin DB if necessary, and set its plugin paths.
3408         (-[WebView _pluginForMIMEType:]):
3409         Checks global plugin DB, falls back on WebView DB.
3410         (-[WebView _pluginForExtension:]):
3411         ditto
3412         (-[WebView _isMIMETypeRegisteredAsPlugin:]):
3413         ditto
3414
3415         * WebCoreSupport/WebFrameBridge.m:
3416         (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
3417         Use new WebView instance methods to look for plugins.
3418         (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]):
3419         ditto
3420         (-[WebFrameBridge determineObjectFromMIMEType:URL:]):
3421         ditto
3422
3423 2006-06-20  Brady Eidson  <beidson@apple.com>
3424
3425         Reviewed by Maciej
3426
3427         Added calls through to the WebCoreIconDatabaseBridge for all the major WebIconDatabase API.  For now these calls
3428         are wrapped with #ifdef's and are for debugging only.
3429
3430         * Misc/WebIconDatabase.h:
3431         * Misc/WebIconDatabase.m:
3432         (-[NSMutableDictionary _scaleIcon:toSize:]):
3433         (-[NSMutableDictionary init]):
3434         (-[NSMutableDictionary iconForURL:withSize:cache:]):
3435         (-[NSMutableDictionary iconURLForURL:]):
3436         (-[NSMutableDictionary retainIconForURL:]):
3437         (-[NSMutableDictionary releaseIconForURL:]):
3438         (-[WebIconDatabase _setHaveNoIconForIconURL:]):
3439         (-[WebIconDatabase _setIconURL:forURL:]):
3440         (-[WebIconDatabase _hasIconForIconURL:]):
3441         * Misc/WebIconLoader.m:
3442         (-[WebIconLoader didFinishLoading]):
3443
3444         * Misc/WebKitLogging.h:  Added a logging channel for WebIconDatabase debugging
3445         * Misc/WebKitLogging.m:
3446         (WebKitInitializeLoggingChannelsIfNecessary):
3447
3448 2006-06-20  Adele Peterson  <adele@apple.com>
3449
3450         Reviewed by Tim Hatcher.
3451
3452         * WebView/WebMainResourceLoader.m: Added missing header to fix build on Leopard.
3453
3454 2006-06-20  Timothy Hatcher  <timothy@apple.com>
3455
3456         Reviewed by Darin.
3457
3458         Removes the @try/@catch from the callbacks to improve performance,
3459         simply check if the proxy object's connection is still valid first.
3460         Listener objects are now required to be NSDistantObjects.
3461
3462         Adds pause, resume and step support. The debugger process use to handle this,
3463         but it caused problems when there were multiple listeners.
3464
3465         Sends the bundle identifier in the notification userInfo dictionary along with
3466         process name and process ID.
3467
3468         * DefaultDelegates/WebScriptDebugServer.h:
3469         * DefaultDelegates/WebScriptDebugServer.m:
3470         (-[WebScriptDebugServer serverQuery:]):
3471         (-[WebScriptDebugServer addListener:]):
3472         (-[WebScriptDebugServer removeListener:]):
3473         (-[WebScriptDebugServer step]):
3474         (-[WebScriptDebugServer pause]):
3475         (-[WebScriptDebugServer resume]):
3476         (-[WebScriptDebugServer isPaused]):
3477         (-[WebScriptDebugServer suspendProcessIfPaused]):
3478         (-[WebScriptDebugServer webView:didParseSource:fromURL:sourceId:forWebFrame:]):
3479         (-[WebScriptDebugServer webView:didEnterCallFrame:sourceId:line:forWebFrame:]):
3480         (-[WebScriptDebugServer webView:willExecuteStatement:sourceId:line:forWebFrame:]):
3481         (-[WebScriptDebugServer webView:willLeaveCallFrame:sourceId:line:forWebFrame:]):
3482         * DefaultDelegates/WebScriptDebugServerPrivate.h:
3483         * WebKit.exp:
3484
3485 2006-06-19  Alexey Proskuryakov  <ap@nypop.com>
3486
3487         Reviewed by Darin.
3488
3489         - http://bugzilla.opendarwin.org/show_bug.cgi?id=5499
3490         Page reload does not send any cache control headers
3491
3492         * WebView/WebFrame.m:
3493         (-[WebFrame _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): Set a proper Cache-Control header for 
3494         reload requests.
3495         (-[WebFrame loadRequest:]): Reset loadType to WebFrameLoadTypeStandard (after a reload, it stayed at 
3496         WebFrameLoadTypeReload, so _addExtraFieldsToRequest erroneously added a Cache-Control header to them).
3497
3498 2006-06-19  John Sullivan  <sullivan@apple.com>
3499
3500         Reviewed by Darin.
3501         
3502         - added mechanism to notify UIDelegate when part of the webview is redrawn. For now, it only
3503           works for HTML views.
3504
3505         * WebView/WebUIDelegatePrivate.h:
3506         Define a new UIDelegate method -webView:didDrawRect:
3507         * WebView/WebHTMLView.m:
3508         (-[WebView drawSingleRect:]):
3509         Call through to UIDelegate if it implements that method. I tested that this does not impact PLT numbers
3510         in the case where the delegate implements the method but does nothing in it.
3511
3512 2006-06-19  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3513
3514         Reviewed by Maciej.
3515
3516         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9452
3517           Assertion failure in -[WebFramePrivate setProvisionalDataSource:]
3518
3519         * WebView/WebFrame.m:
3520         (-[WebFrame _checkLoadCompleteForThisFrame]): Avoid re-entering the delegate's