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