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