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