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