7ce7f79447c578a3c3d90649d0621895200fb8a9
[WebKit-https.git] / WebKit / ChangeLog
1 2007-02-26  John Sullivan  <sullivan@apple.com>
2
3         Reviewed by Darin and Geoff
4
5         * WebView/WebHTMLView.mm:
6         (coreGraphicsScreenPointForAppKitScreenPoint):
7         This method was copied from WebBrowser, and it was wrong. Fixed it. This only
8         affects the Dictionary pop-up panel.
9
10 2007-02-26  David Hyatt  <hyatt@apple.com>
11
12         Update web inspector to account for border-fit.
13
14         Reviewed by darin
15
16         * WebInspector/webInspector/inspector.js:
17
18 2007-02-26  Geoffrey Garen  <ggaren@apple.com>
19
20         Reviewed by Darin Adler.
21         
22         Re-arranged things to put deprecated methods at the bottom.
23
24         * Misc/WebCoreStatistics.h:
25         * Misc/WebCoreStatistics.mm:
26         (+[WebCoreStatistics javaScriptNoGCAllowedObjectsCount]):
27         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
28         (+[WebCoreStatistics javaScriptRootObjectClasses]):
29         * WebKit.xcodeproj/project.pbxproj:
30
31 2007-02-26  Maciej Stachowiak  <mjs@apple.com>
32
33         Rubber stamped by Mitz.
34         
35         - fix layout tests by fixing discrepancy in feature macros.
36
37         * WebInspector/WebInspector.m:
38         (-[WebInspector _highlightNode:]):
39         * WebKit.xcodeproj/project.pbxproj:
40
41 2007-02-23  Mitz Pettel  <mitz@webkit.org>
42
43         Reviewed by Maciej.
44
45         - fix http://bugs.webkit.org/show_bug.cgi?id=11573
46           REGRESSION: pressing option-left arrow while in suggestion popup moves the insertion point to the left
47
48         * WebView/WebHTMLView.mm:
49         (-[WebTextCompleteController endRevertingChange:moveLeft:]):
50
51 2007-02-23  Timothy Hatcher  <timothy@apple.com>
52
53         Reviewed by Brady.
54
55         <rdar://problem/5016395> _recursive_pauseNullEventsForAllNetscapePlugins still gone
56
57         * WebView/WebFrameInternal.h: Remove _recursive_pauseNullEventsForAllNetscapePlugins
58         * WebView/WebFramePrivate.h: Add _recursive_pauseNullEventsForAllNetscapePlugins
59         * WebView/WebFrame.mm: More _recursive_pauseNullEventsForAllNetscapePlugins
60
61 2007-02-22  Adele Peterson  <adele@apple.com>
62
63         Reviewed by John.
64
65         Updating this image to match the one in WebCore.
66
67         * WebKit.vcproj/textAreaResizeCorner.png:
68
69 2007-02-22  Beth Dakin  <bdakin@apple.com>
70
71         Reviewed by Adam.
72
73         Fix for http://bugs.webkit.org/show_bug.cgi?id=12399 REGRESSION: 
74         Unable to prevent default context menu from appearing. <rdar://
75         problem/5017416>
76
77         * WebView/WebHTMLView.mm:
78         (-[WebHTMLView menuForEvent:]): Clear the controller's context menu 
79         before propagating a new context menu event through the DOM.
80
81 2007-02-22  John Sullivan  <sullivan@apple.com>
82
83         Reviewed by Darin
84         
85         Removed some unused keyView-related code that I happened to run across.
86         Replacement code is now in WebChromeClient.
87
88         * WebCoreSupport/WebFrameBridge.h:
89         * WebCoreSupport/WebFrameBridge.mm:
90         removed unused stuff
91
92 2007-02-22  Mitz Pettel  <mitz@webkit.org>
93
94         Reviewed by Maciej.
95
96         - fix http://bugs.webkit.org/show_bug.cgi?id=12804
97           REGRESSION (r19043-r19063): suggestion popup doesn't work after pressing Option+Esc
98
99         This patch also fixes a bug where using the arrow keys while
100         the suggestion popup is open moves the caret instead of changing the
101         selection in the popup (for up/down) or accepting the selection and
102         closing the popup (for left/right).
103
104         * WebView/WebHTMLView.mm:
105         (-[WebHTMLView keyDown:]): Changed to close the popup only if it was open
106         before the current event, so that the Option-Esc that opens the popup will
107         not close it immediately.
108         (-[WebHTMLView _interceptEditingKeyEvent:]): Give the completion popup a
109         chance to intercept keydown events.
110         (-[WebTextCompleteController popupWindowIsOpen]): Added. Returns whether the
111         suggestion popup is open.
112
113 2007-02-22  Mitz Pettel  <mitz@webkit.org>
114
115         Reviewed by Mark (age 21).
116
117         - fix http://bugs.webkit.org/show_bug.cgi?id=12805
118           REGRESSION: suggestion popup has a disabled scroll bar
119
120         * WebView/WebHTMLView.mm:
121         (-[WebTextCompleteController _buildUI]): Uncommented the call to the NSWindow
122         SPI that forces the scroll bar to look active. Also replaced a call to
123         the deprecated NSTableView method setAutoresizesAllColumnsToFit: with
124         the new method setColumnAutoresizingStyle: to eliminate console spew.
125
126 2007-02-20  Beth Dakin  <bdakin@apple.com>
127
128         Reviewed by Maciej.
129
130         WebKit changes needed to implement writeImage() in WebCore's 
131         Pasteboard class.
132
133         * Misc/WebKitNSStringExtras.m: Call into WebCore for these 
134         implementations.
135         (-[NSString _webkit_hasCaseInsensitiveSuffix:]):
136         (-[NSString _webkit_hasCaseInsensitiveSubstring:]):
137         (-[NSString _webkit_filenameByFixingIllegalCharacters]):
138         * Misc/WebNSURLExtras.m: Same.
139         (-[NSURL _webkit_suggestedFilenameWithMIMEType:]):
140         * WebCoreSupport/WebContextMenuClient.h: Remove 
141         copyImageToClipboard()
142         * WebCoreSupport/WebContextMenuClient.mm:
143         * WebCoreSupport/WebSystemInterface.m: Expose 
144         GetExtensionsForMIMEType and GetPreferredExtensionForMIMEType to 
145         WebCore.
146         (InitWebCoreSystemInterface):
147         * WebCoreSupport/WebViewFactory.mm: New localized string for 
148         WebCore. 
149         (-[WebViewFactory copyImageUnknownFileLabel]):
150
151 2007-02-20  Adam Roben  <aroben@apple.com>
152
153         Reviewed by Darin and Anders.
154
155         Update WebKit for WebCore fix for <rdar://problem/4736215> Make
156         WebCoreStringTruncator use WebCore types.
157
158         * Misc/WebStringTruncator.m:
159         (defaultMenuFont): Moved from WebCoreStringTruncator.mm.
160         (core): Added.
161         (+[WebStringTruncator centerTruncateString:toWidth:]):
162         (+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
163         (+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
164         (+[WebStringTruncator widthOfString:font:]):
165         * WebKit.xcodeproj/project.pbxproj: Changed WebStringTruncator to ObjC++.
166
167 2007-02-20  Timothy Hatcher  <timothy@apple.com>
168
169         Reviewed by John.
170
171         Fixes the version number returned when using a CFBundleVersion of "420+".
172
173         * WebView/WebView.mm:
174         (-[WebView _userVisibleBundleVersionFromFullVersion:]): Check the length up to the first
175         non-decimal digit, so this works with versions that have "." and "+".
176
177 2007-02-20  John Sullivan  <sullivan@apple.com>
178
179         Reviewed by Kevin Decker
180         
181         - fixed <rdar://problem/4989344> REGRESSION: After clicking on page, Find
182         won't find anything if all hits are before the clicked point
183         
184         This was caused by a mismatch between WebCore's search code's notion of "selection" and
185         WebView's search code's notion of "selection". WebCore's search code was starting 
186         just before or just after the "selection", which included collapsed, zero-length
187         selections. WebKit's search code was only considering non-zero-length selections,
188         and would not search all of the content when there was a zero-length selection.
189         The fix was to make WebKit ignore the selection. This has a side effect of increasing 
190         the amount of redundantly-searched content in the case where no matches are found. To
191         compensate for that, I special-cased the most common case of WebViews with a single frame, 
192         to avoid ever searching redundantly in those.
193
194         * WebView/WebView.mm:
195         (-[WebView searchFor:direction:caseSensitive:wrap:startInSelection:]):
196         remove startHasSelection ivar; special-case WebViews with only one frame; clarify the
197         code that leads to redundant searching with comments.
198
199 2007-02-20  Timothy Hatcher  <timothy@apple.com>
200
201         Reviewed by Darin.
202
203         <rdar://problem/4900579> WebKit -finalize methods are not thread-safe; design change needed
204
205         Call WebCoreObjCFinalizeOnMainThread from the initialize method of all the classes
206         that have a finalizer that needs called on the main thread. Assert in finalize that we
207         are on the main thread.
208
209         * Carbon/CarbonWindowAdapter.m:
210         (+[CarbonWindowAdapter initialize]):
211         (-[CarbonWindowAdapter finalize]):
212         * History/WebBackForwardList.mm:
213         (+[WebBackForwardList initialize]):
214         (-[WebBackForwardList finalize]):
215         * History/WebHistoryItem.mm:
216         (+[WebHistoryItem initialize]):
217         * Misc/WebElementDictionary.mm:
218         (+[WebElementDictionary initialize]):
219         (-[WebElementDictionary finalize]):
220         * Plugins/WebBaseNetscapePluginStream.m:
221         (+[WebBaseNetscapePluginStream initialize]):
222         (-[WebBaseNetscapePluginStream finalize]):
223         * Plugins/WebBaseNetscapePluginView.mm:
224         (+[WebBaseNetscapePluginView initialize]):
225         (-[WebBaseNetscapePluginView finalize]):
226         * Plugins/WebBasePluginPackage.m:
227         (+[WebBasePluginPackage initialize]):
228         (-[WebBasePluginPackage finalize]):
229         * Plugins/WebNetscapePluginStream.mm:
230         (-[WebNetscapePluginStream finalize]):
231         * WebCoreSupport/WebEditorClient.mm:
232         (+[WebEditCommand initialize]):
233         (-[WebEditCommand finalize]):
234         * WebCoreSupport/WebFrameBridge.mm:
235         (+[WebFrameBridge initialize]):
236         (-[WebFrameBridge finalize]):
237         * WebCoreSupport/WebFrameLoaderClient.mm:
238         (+[WebFramePolicyListener initialize]):
239         (-[WebFramePolicyListener finalize]):
240         * WebView/WebHTMLView.mm:
241         (+[WebHTMLView initialize]):
242         (-[WebHTMLView finalize]):
243         * WebView/WebView.mm:
244         (+[WebViewPrivate initialize]):
245         (-[WebViewPrivate finalize]):
246
247 2007-02-20  Justin Garcia  <justin.garcia@apple.com>
248
249         Reviewed by darin
250         
251         <rdar://problem/4838199>
252         Integrate Mail and WebKit paste operations
253         
254         Mail overrides paste: because it has different
255         preferred pasteboard types, but it should use our
256         fragment creation code.
257
258         * WebView/WebHTMLView.mm:
259         (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]):
260         Moved fragment creation code into a new method.
261         (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:]):
262         Moved fragment creation code here.
263         * WebView/WebHTMLViewPrivate.h: Exposed 
264         _documentFragmentFromPasteboard:forType:inContext: as SPI.
265
266 2007-02-20  John Sullivan  <sullivan@apple.com>
267
268         Reviewed by Tim Hatcher
269
270         * Misc/WebKitNSStringExtras.h:
271         * Misc/WebKitNSStringExtras.m:
272         removed _webkit_userVisibleBundleVersionFromFullVersion; we decided to do this without
273         adding SPI for it.
274
275         * WebView/WebView.mm:
276         (-[WebView _userVisibleBundleVersionFromFullVersion:]):
277         new method, moved here from WebKitNSStringExtras, and is now a WebView method rather than
278         an NSString method
279         (-[WebView _computeUserAgent]):
280         updated for method signature change
281
282 2007-02-20  Timothy Hatcher  <timothy@apple.com>
283
284         Reviewed by John.
285
286         * Misc/WebKitNSStringExtras.h: Added _webkit_userVisibleBundleVersionFromFullVersion.
287         * Misc/WebKitNSStringExtras.m:
288         (-[NSString _webkit_userVisibleBundleVersionFromFullVersion]): If the version is 4 digits long or longer,
289         then the first digit represents the version of the OS. Our user agent string should not
290         include this first digit, so strip it off and report the rest as the version.
291         * WebView/WebView.mm:
292         (-[WebView _computeUserAgent]): Call _webkit_userVisibleBundleVersionFromFullVersion on the CFBundleVersion.
293
294 2007-02-20  Darin Adler  <darin@apple.com>
295
296         Reviewed by Anders.
297
298         * Plugins/WebPluginController.mm: (-[WebPluginController pluginView:receivedResponse:]):
299         Call cancelMainResourceLoad on the document loader instead of the frame loader.
300
301 2007-02-20  Anders Carlsson  <acarlsson@apple.com>
302
303         Reviewed by Mitz.
304
305         <rdar://problem/5009627> REGRESSION: Repro overrelease of WebView in failed load, seen in DumpRenderTree
306         
307         * WebView/WebView.mm:
308         (-[WebView _removeObjectForIdentifier:]):
309         Return early if the identifier can't be found in the map.
310
311 2007-02-19  Timothy Hatcher  <timothy@apple.com>
312
313         Reviewed by Darin Adler.
314
315         <rdar://problem/4841078> Remove the Mail.app editable link clicking behavior workaround when it is no longer needed
316
317         * WebKit.xcodeproj/project.pbxproj:
318         * WebView/WebView.mm:
319         (-[WebView setPreferences:]):
320
321 2007-02-19  Anders Carlsson  <acarlsson@apple.com>
322
323         Reviewed by Adam.
324
325         <rdar://problem/4868242>
326         http://bugs.webkit.org/show_bug.cgi?id=12670
327         REGRESSION: Many 3rd Party Apps crash in WebCore::DocumentLoader::frameLoader() (12670)
328         
329         Bring back the semantic we had that a web view should be retained for as long as something is loading. Use the identifier
330         to object hash map for this.
331
332         * WebView/WebView.mm:
333         (-[WebView _addObject:forIdentifier:]):
334         (-[WebView _removeObjectForIdentifier:]):
335
336 2007-02-18  Brady Eidson  <beidson@apple.com>
337
338         Reviewed by Oliver
339
340         <rdar://problem/4985321> - Can't edit templates for Web Gallery/Web Page Export in Aperture
341
342         * Misc/WebKitVersionChecks.h: Add a #define for this APERTURE quirk
343         * WebView/WebView.mm:
344         (-[WebView _shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting:]):
345          If the current app is Aperture and it was linked against Tiger WebKit, always allow selection change
346
347 2007-02-17  Lars Knoll <lars@trolltech.com>
348
349         Reviewed by Maciej.
350
351         Additional coding by Maciej, additional review by Oliver.
352
353         Added implementations for the new callbacks in EditorClient
354         and ChromeClient (basically moved from WebFrameBridge).
355         Cleaned up some code paths that are not called anymore
356         and done fully inside WebCore now.
357
358         * DefaultDelegates/WebDefaultContextMenuDelegate.mm:
359         * Misc/WebElementDictionary.mm:
360         * Misc/WebNSAttributedStringExtras.mm:
361         * Plugins/WebBaseNetscapePluginView.mm:
362         (-[WebBaseNetscapePluginView getVariable:value:]):
363         * Plugins/WebNetscapePluginEmbeddedView.mm:
364         * Plugins/WebNetscapePluginStream.mm:
365         * Plugins/WebPluginContainerCheck.mm:
366         * WebCoreSupport/WebChromeClient.h:
367         * WebCoreSupport/WebChromeClient.mm:
368         (WebChromeClient::shouldInterruptJavaScript):
369         * WebCoreSupport/WebEditorClient.h:
370         * WebCoreSupport/WebEditorClient.mm:
371         (WebEditorClient::shouldChangeSelectedRange):
372         * WebCoreSupport/WebFrameBridge.mm:
373         (-[WebFrameBridge finishInitializingWithPage:frameName:frameView:ownerElement:]):
374         (-[WebFrameBridge fini]):
375         * WebCoreSupport/WebFrameLoaderClient.mm:
376         * WebView/WebArchiver.mm:
377         * WebView/WebFrame.mm:
378         (core):
379         (kit):
380         (-[WebFrame _updateBackground]):
381         * WebView/WebFrameInternal.h:
382         * WebView/WebFrameView.mm:
383         * WebView/WebHTMLRepresentation.mm:
384         * WebView/WebHTMLView.mm:
385         (-[WebHTMLView _updateMouseoverWithEvent:]):
386         (-[WebHTMLView _isEditable]):
387         (-[WebHTMLView validateUserInterfaceItem:]):
388         (-[WebHTMLView maintainsInactiveSelection]):
389         (-[WebHTMLView scrollWheel:]):
390         (-[WebHTMLView acceptsFirstMouse:]):
391         (-[WebHTMLView shouldDelayWindowOrderingForEvent:]):
392         (-[WebHTMLView cut:]):
393         (-[WebHTMLView paste:]):
394         (-[WebHTMLView selectedAttributedString]):
395         * WebView/WebScriptDebugDelegate.mm:
396         * WebView/WebView.mm:
397         (-[WebView _dashboardRegions]):
398         (-[WebView setProhibitsMainFrameScrolling:]):
399         (-[WebView _setInViewSourceMode:]):
400         (-[WebView _inViewSourceMode]):
401         (-[WebView shouldClose]):
402         (-[WebView setEditable:]):
403
404 2007-02-18  Oliver Hunt  <oliver@apple.com>
405
406         Reviewed by Adam.
407
408         Moving the drag initiation logic to WebCore.
409         The redundant code in webkit will be moved out in a later patch.
410
411         * WebCoreSupport/WebDragClient.h:
412         * WebCoreSupport/WebDragClient.mm:
413         (getTopHTMLView):
414           Helper function
415         (WebDragClient::willPerformDragSourceAction):
416         (WebDragClient::startDrag):
417         (WebDragClient::createDragImageForLink):
418           Implemented new DragClient methods
419         (WebDragClient::declareAndWriteDragImage):
420           Helper function for the Mac to allow new drag and drop
421           code to match behaviour
422           
423         * WebView/WebHTMLView.mm:
424         (-[WebHTMLView _dragImageForURL:withLabel:]):
425         (-[WebHTMLView _dragImageForLinkElement:]):
426           Refactoring old _dragImageForLinkElement function so that 
427           the link drag image can be created with just a URL and label, 
428           rather than requiring the original element
429         (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]):
430           Removed logic that is no longer necessary                 
431         (-[WebHTMLView _mouseDownEvent]):
432           The WebDragClient may need the original mouseDownEvent of a drag when initiating
433           a drag
434         * WebView/WebHTMLViewInternal.h:
435           Declaring _mouseDownEvent
436
437         * WebView/WebHTMLViewPrivate.h:
438           Declaring _dragImageForURL
439
440 2007-02-16  John Sullivan  <sullivan@apple.com>
441
442         Reviewed by Tim Hatcher
443
444         - fixed <rdar://problem/4811446> "Check Grammar" checkbox in Spelling+Grammar window doesn't 
445         live update with menu change in WebKit
446
447         * WebView/WebView.mm:
448         (-[WebView setGrammarCheckingEnabled:]):
449         Use sekrit AppKit knowledge to tell NSSpellChecker about the change, since there's no API
450         for this yet. Also restructured a little to avoid extra work when the value hasn't changed.
451
452 2007-02-15  Brady Eidson  <beidson@apple.com>
453
454         Reviewed by Adam
455
456         Save scroll state for back/forward navigation in FrameLoader, not the client
457
458         * WebCoreSupport/WebFrameLoaderClient.h: Renamed the save/restore methods
459         * WebCoreSupport/WebFrameLoaderClient.mm:
460         (WebFrameLoaderClient::saveViewStateToItem): Save viewstate only
461         (WebFrameLoaderClient::restoreViewState): Restore viewstate only
462
463 2007-02-14  Alexey Proskuryakov  <ap@webkit.org>
464
465         Reviewed by Darin.
466
467         http://bugs.webkit.org/show_bug.cgi?id=12643
468         NPN_Status is using latin-1 encoding for the message instead of UTF-8
469
470         * Plugins/WebBaseNetscapePluginView.mm:
471         (-[WebBaseNetscapePluginView status:]): Check for possible conversion failure.
472
473 2007-02-13  Oliver Hunt  <oliver@apple.com>
474
475         Reviewed by John.
476
477         Modify entry point ASSERTs for dragging functions to allow for the case
478         where a load has occurred mid-drag.  The load may detach the HTMLView 
479         from the WebView so it is no longer possible to check _isTopHTMLView.
480
481         The assertion changes match that of revision 14897 which fixed the 
482         more common case ([WebHTMLView draggedImage:endedAt:operation:])
483
484         It's also necessary to check for a null Page now prior to accessing 
485         the DragController, which is necessary in all of these methods.
486
487         See rdar://problem/4994870
488                                              
489         * WebView/WebHTMLView.mm:
490         (-[WebHTMLView draggingSourceOperationMaskForLocal:]):
491         (-[WebHTMLView draggedImage:movedTo:]):
492         (-[WebHTMLView draggedImage:endedAt:operation:]):
493         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
494
495 2007-02-13  Alexey Proskuryakov  <ap@webkit.org>
496
497         Reviewed by Maciej.
498
499         http://bugs.webkit.org/show_bug.cgi?id=12643
500         NPN_Status is using latin-1 encoding for the message instead of UTF-8
501
502         * Plugins/WebBaseNetscapePluginView.mm:
503         (-[WebBaseNetscapePluginView status:]): Use kCFStringEncodingUTF8.
504
505 2007-02-13  Mark Rowe  <mrowe@apple.com>
506
507         Reviewed by Timothy Hatcher.
508
509         Fix http://bugs.webkit.org/show_bug.cgi?id=12745
510         Bug 12745: REGRESSION: Webkit will not load a plugin that Safari can load (symbol missing _objc_msgSend_fpret)
511
512         Treat libobjc as a sub-library of WebKit in Debug/Release so that plugins and applications linked against an
513         umbrella framework version of WebKit that expect to find libobjc symbols in WebKit can do so.
514
515         * WebKit.xcodeproj/project.pbxproj:
516
517 2007-02-12  Kevin McCullough  <kmccullough@apple.com>
518
519         Reviewed by .
520
521         - reverting change to not cause regressions and performance problems.
522
523         * Misc/WebNSAttributedStringExtras.mm:
524         (fileWrapperForElement):
525
526 2007-02-12  Darin Adler  <darin@apple.com>
527
528         Reviewed by Oliver.
529
530         - fix http://bugs.webkit.org/show_bug.cgi?id=12677
531           <rdar://problem/4759563> REGRESSION: Return key is always sent when you confirm
532           a clause in kotoeri (12677)
533
534         - fix http://bugs.webkit.org/show_bug.cgi?id=12596
535           <rdar://problem/4794346> REGRESSION: Tab key shifts form field focus instead of
536           navigating prediction window (12596)
537
538         - fix http://bugs.webkit.org/show_bug.cgi?id=10010
539           <rdar://problem/4822935> REGRESSION: Pressing Return with unconfirmed text in
540           Hangul inserts carriage return (10010)
541
542         - fix http://bugs.webkit.org/show_bug.cgi?id=12531
543           <rdar://problem/4975126> REGRESSION: Inline text input types repeated keys in
544           latest nightly (r19336) (12531)
545
546         - fix http://bugs.webkit.org/show_bug.cgi?id=12539
547           <rdar://problem/4975130> REGRESSION: Pressing Backspace while in inline input
548           area moves to the previous page in history (12539)
549
550         * WebCoreSupport/WebEditorClient.h:
551         * WebCoreSupport/WebEditorClient.mm: (WebEditorClient::markedTextAbandoned):
552         Added.
553
554         * WebView/WebHTMLView.mm:
555         (-[WebHTMLView menuForEvent:]): Added explicit constructor needed now that the
556         function takes a const&.
557         (-[WebHTMLView becomeFirstResponder]): Removed fake event code, no longer needed
558         since advanceFocus now works fine with 0 for a DOM event.
559         (-[WebHTMLView _expandSelectionToGranularity:]): Changed to use the normal
560         selection controller function instead of selectRange.
561         (-[WebHTMLView insertTab:]): Changed to call bottleneck that receives the DOM
562         event.
563         (-[WebHTMLView insertBacktab:]): Ditto.
564         (-[WebHTMLView insertNewline:]): Ditto.
565         (-[WebHTMLView insertLineBreak:]): Ditto.
566         (-[WebHTMLView insertParagraphSeparator:]): Ditto.
567         (-[WebHTMLView insertNewlineIgnoringFieldEditor:]): Ditto.
568         (-[WebHTMLView insertTabIgnoringFieldEditor:]): Ditto.
569         (-[WebHTMLView yank:]): Updated to call Editor directly since the insertText
570         code now works via a text input event which is not what we want for paste-like
571         things such as yank.
572         (-[WebHTMLView yankAndSelect:]): Ditto.
573         (-[WebHTMLView selectToMark:]): Changed to use the normal selection controller
574         function instead of selectRange, which also allows us to remove the ObjC exception
575         handling code.
576         (-[WebHTMLView swapWithMark:]): Ditto.
577         (-[WebHTMLView transpose:]): Ditto.
578         (-[WebHTMLView unmarkText]): Since this is one of the calls back from the input
579         manager, added code to set the "event was handled" flag. Moved the actual work
580         into the Editor class in WebCore and just call that from here.
581         (-[WebHTMLView _selectRangeInMarkedText:]): Changed to use the normal selection
582         controller function instead of selectRange.
583         (-[WebHTMLView setMarkedText:selectedRange:]): Since this is one of the calls
584         back from the input manager, added code to set the "event was handled" flag.
585         Also changed the ignoreMarkedTextSelectionChange to use the flag over on the
586         WebCore side, since we moved it there and to call selectMarkedText over on
587         the WebCore side too.
588         (-[WebHTMLView doCommandBySelector:]): Added special cases for newline and tab
589         selectors so that the event is passed along. These selectors are special because
590         they are ones that turn into text input events.
591         (-[WebHTMLView _discardMarkedText]): Moved the body of this function into the
592         Editor class in WebCore and just call that from here.
593         (-[WebHTMLView insertText:]): Added code to send a text input event instead of
594         calling the editor to do text insertion. The insertion is then done in the
595         default handler for the text input event.
596         (-[WebHTMLView _insertNewlineWithEvent:isLineBreak:]): Added. Sends a text
597         input event.
598         (-[WebHTMLView _insertTabWithEvent:isBackTab:]): Ditto.
599         (-[WebHTMLView _updateSelectionForInputManager]): Changed to use the
600         ignoreMarkedTextSelectionChange flag in Editor now that the one here is gone.
601
602         * WebView/WebHTMLViewInternal.h: Remove ignoreMarkedTextSelectionChange field.
603
604         * WebView/WebView.mm: (-[WebView setSelectedDOMRange:affinity:]): Changed to
605         use the normal selection controller function instead of selectRange.
606
607 2007-02-11  Sam Weinig  <sam@webkit.org>
608
609         Reviewed by Mark.
610
611         Switch the initial value of box-sizing property from "border-box" to "content-box".
612
613         * WebInspector/webInspector/inspector.js:
614
615 2007-02-10  Mitz Pettel  <mitz@webkit.org>
616
617         Reviewed by Maciej.
618
619         - fix http://bugs.webkit.org/show_bug.cgi?id=11847
620           REGRESSION (SearchField): Dragging to select in the Web Inspector's search fields drags the inspector window
621
622         * WebInspector/webInspector/inspector.css: Added the search field to the
623         undraggable dashboard-region.
624
625 2007-02-09  Kevin Decker <kdecker@apple.com>
626
627         Reviewed by Darin & Maciej.
628
629         Fixed: <rdar://problem/4930688> REGRESSION: missing images when reloading webarchives (11962)
630         
631         * WebCoreSupport/WebFrameLoaderClient.mm:
632         (WebFrameLoaderClient::canUseArchivedResource): The bug here is that because a reload sets a cache
633         policy of NSURLRequestReloadIgnoringCacheData (rightfully so), this method was refusing to load
634         subresources in WebArchives. It's OK to use archive subresources for the NSURLRequestReloadIgnoringCacheData
635         cache policy because we're not worried about the actual contents of a WebArchive changing on disk. 
636
637 2007-02-09  Justin Garcia  <justin.garcia@apple.com>
638
639         Reviewed by darin
640         
641         <rdar://problem/4975120>
642         REGRESSION: double-cursor after switching window away/back (11770)
643         <http://bugs.webkit.org/show_bug.cgi?id=11328>
644         Gmail Editor: Caret can simultaneously appear in both the TO: and message body fields
645
646         * WebCoreSupport/WebFrameBridge.mm: Removed unused methods.
647         * WebView/WebHTMLView.mm: Ditto.
648         (-[WebHTMLView _web_firstResponderCausesFocusDisplay]): Don't 
649         appear focused if a descendant view is firstResponder.
650         (-[WebHTMLView _updateActiveState]): Removed the check for a BOOL
651         that was always false.
652         * WebView/WebHTMLViewInternal.h: Removed a BOOL that's always false.
653
654 2007-02-09  Beth Dakin  <bdakin@apple.com>
655
656         Reviewed by Darin.
657
658         Fix for <rdar://problem/4674537> REGRESSION: Adobe Acrobat 8 - Text 
659         blinks when mouse is moved, and is invisible otherwise
660
661         Allow quirk if the Application was linked before 3.0 and if the 
662         application is Adobe Acrobat.
663
664         * Misc/WebKitVersionChecks.h:
665         * WebView/WebView.mm:
666         (-[WebView _updateWebCoreSettingsFromPreferences:]):
667
668 2007-02-09  Timothy Hatcher  <timothy@apple.com>
669
670         Reviewed by Brady.
671
672         * WebKit.exp: Add WebBaseNetscapePluginView to the export list.
673
674 2007-02-09  John Sullivan  <sullivan@apple.com>
675
676         Reviewed by Beth
677
678         - WebKit part of fix for radar 4939636, problems with context menu items and binaries linked
679           against WebKit 2.0.
680
681         * WebKit.xcodeproj/project.pbxproj:
682         Changed DYLIB_CURRENT_VERSION to 2 (was 1)
683
684         * Misc/WebKitVersionChecks.h:
685         Added constant WEBKIT_FIRST_VERSION_WITH_3_0_CONTEXT_MENU_TAGS, which is 2 but in the weird
686         format that these version checks use.
687
688         * WebView/WebUIDelegatePrivate.h:
689         Tweaked comments; included the old values for three tags for context menu items that changed
690         from SPI to API in 3.0; renamed WEBMENUITEMTAG_SPI_START to WEBMENUITEMTAG_WEBKIT_3_0_SPI_START 
691         for clarity, and bumped its value to avoid conflict with the three old values
692
693         * WebCoreSupport/WebContextMenuClient.mm:
694         (isAppleMail):
695         new helper function that checks the bundle identifier
696         (fixMenusToSendToOldClients):
697         Removed return value for clarity; now checks linked-on version and also makes special case
698         for Mail; now replaces three API tags with their old SPI values for clients that linked
699         against old WebKit version, in addition to replacing new API with WebMenuItemTagOther for
700         items that had no specific tag before.
701         (fixMenusReceivedFromOldClients):
702         Removed return value for clarity; removed defaultMenuItems parameter because it's no longer 
703         necessary; removed code that tried to recognize menus that got confused by the SPI -> API 
704         change (we now pass the old SPI values to these clients to avoid confusing them); now 
705         restores the tags for the items whose tags were replaced in fixMenusToSendToOldClients 
706         (this used to restore the tags of the default items rather than the new items, which was 
707         incorrect but happened to work since the clients we tested were using the objects from the
708         default items array in their new items array)
709         (WebContextMenuClient::getCustomMenuFromDefaultItems):
710         Updated to account for the removed return values for the two fix-up methods; moved the
711         autorelease of newItems here, which is clearer and was the source of a leak before.
712
713 2007-02-08  Kevin McCullough  <KMcCullough@apple.com>
714
715         Reviewed by
716
717         - fixing a build breakage. 
718
719         * Misc/WebNSAttributedStringExtras.mm:
720         (fileWrapperForElement):
721
722 2007-02-07  Charles Ying  <charles_ying@yahoo.com>
723
724         Reviewed by Adam.
725
726         Code suggestion by aroben
727         
728         Fix http://bugs.webkit.org/show_bug.cgi?id=12688
729
730         REGRESSION (r19469): ASSERT when right clicking on hyperlinks! in TOT webkit
731         
732         * WebCoreSupport/WebContextMenuClient.mm:
733         (fixMenusReceivedFromOldClients):
734
735         - fixMenusReceivedFromOldClients was hitting an ASSERT incorrectly
736         because it could not match [item title] to any of the contentMenuItemTags
737         using pointer comparison ==. Instead, it needs to do a string comparison
738         between [item title] and the various contentMenuItemTags using
739         isEqualToString instead of ==. You would encounter this whenever the
740         context menu was activated, e.g., from a hyperlink right click (or
741         control click).
742
743
744 2007-02-07  Anders Carlsson  <acarlsson@apple.com>
745
746         Reviewed by Maciej.
747
748         Move shouldInterruptJavaScript to the Chrome.
749         
750         * WebCoreSupport/WebChromeClient.h:
751         * WebCoreSupport/WebChromeClient.mm:
752         (WebChromeClient::shouldInterruptJavaScript):
753         * WebCoreSupport/WebFrameBridge.mm:
754
755 2007-02-07  John Sullivan  <sullivan@apple.com>
756
757         Reviewed by Kevin Decker
758
759         - fixed all places in WebKit where _web_userVisibleString was used where
760         _web_originalDataAsString should have been used instead.
761
762         * History/WebURLsWithTitles.m:
763         (+[WebURLsWithTitles writeURLs:andTitles:toPasteboard:]):
764         use _web_originalDataAsString when writing since these aren't displayed to the user
765         (+[WebURLsWithTitles URLsFromPasteboard:]):
766         use _web_URLWithDataAsString when reading, to match what we used when writing
767
768         * Misc/WebNSPasteboardExtras.mm:
769         (-[NSPasteboard _web_writeURL:andTitle:types:]):
770         use _web_originalDataAsString when writing the NSURL type; continue using
771         _web_userVisibleString when writing the plain text type
772
773         * WebView/WebHTMLView.mm:
774         (-[WebHTMLView _documentFragmentWithPaths:]):
775         added comment about why _web_userVisibleString is appropriate here
776         (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]):
777         use _web_originalDataAsString when setting the href attribute of an anchor tag
778
779 2007-02-07  David Harrison  <harrison@apple.com>
780
781         Reviewed by Adam.
782
783         <rdar://problem/4943650> REGRESSION: insertion point blink redraws entire web page, making everything slow
784
785         Problem is that AppKit recently changed NSControl to trigger a full redraw if the control has a focus ring.
786         WebHTMLView is a subclass of NSControl, but the focus ring type was the default value, though we actually
787         draw no focus ring. Fix is to formally set our focus ring type.
788
789         * WebView/WebHTMLView.mm:
790         (-[WebHTMLView initWithFrame:]):
791         Send [self setFocusRingType:NSFocusRingTypeNone].
792
793 2007-02-07  John Sullivan  <sullivan@apple.com>
794
795         Undid changes that I hadn't intended to check in
796
797         * WebView/WebHTMLView.mm:
798         (-[WebHTMLView _documentFragmentWithPaths:]):
799         (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]):
800
801 2007-02-07  John Sullivan  <sullivan@apple.com>
802
803         Reviewed by Ollie and Geoff
804
805         - fixed <rdar://problem/4982345> KURL::createCFURL leak inside -[WebFrameBridge startDraggingImage...] 
806         reported by buildbot
807
808         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
809         don't retain the imageURL we pass to the drag controller -- it's just automagically
810         converted to a KURL anyway
811
812 2007-02-07  John Sullivan  <sullivan@apple.com>
813
814         Reviewed by Darin
815
816         - fixed <rdar://problem/4974420> REGRESSION: Dragging a saved image into the browser window 
817         displays a error (No File exists at the address "null") (12662)
818
819         * WebCoreSupport/WebPasteboardHelper.mm:
820         (WebPasteboardHelper::urlFromPasteboard):
821         use _web_originalDataAsString instead of _web_userVisibleString, since _web_userVisibleString
822         can return a string with non-ASCII characters -- suitable for display but not for code
823
824 2007-02-07  John Sullivan  <sullivan@apple.com>
825
826         Reviewed by Darin
827
828         - added some clarity to some menu-handling shenanigans
829
830         * WebCoreSupport/WebContextMenuClient.mm:
831         (fixMenusToSendToOldClients):
832         renamed from fixMenusForOldClients; added comments, FIXME, and assertion
833         (fixMenusReceivedFromOldClients):
834         renamed from fixMenusFromOldClients; added comments, FIXME, and assertion
835         (WebContextMenuClient::getCustomMenuFromDefaultItems):
836         updated for name changes
837
838 2007-02-06  Kevin Decker <kdecker@apple.com>
839
840         Fixed: <rdar://problem/4976681> ASSERTION failure on quit @ talkcrunch.com in _NPN_ReleaseObject
841         
842         Reviewed by Anders.
843
844         * Plugins/WebPluginDatabase.m:
845         (+[WebPluginDatabase sharedDatabase]): Removed NSApplicationWillTerminateNotification observer and thus
846         also removed code that would unload the entire plug-in database when receiving that notification. 
847         
848         The bug here was that this notification callback would happen first before anything else thus unloading
849         plug-ins and releasing plug-in memory. That was crash prone because the JavaScriptCore collector would at
850         a later time attempt to release its CInstance references (references that point to plug-in memory)
851         without knowing WebKit already unloaded the plug-in out from underneath it. The WebPluginDatabase simply
852         does not have enough context to make this decision.
853         
854         * WebView/WebView.mm: Added two statics: applicationIsTerminating, pluginDatabaseClientCount.
855         (+[WebView initialize]): Added NSApplicationWillTerminateNotification observer.
856         (+[WebView _applicationWillTerminate]): Added. 
857         (-[WebView _close]): WebKit has both a global plug-in database and a separate, per WebView plug-in database. 
858          We need to release both sets of plug-ins because Netscape plug-ins have "destructor functions" that should be
859          called when the browser unloads the plug-in.  These functions can do important things, such as closing/deleting
860          files so it is important to ensure that they are properly called when the application terminates.
861          
862          The new change is that on app shutdown, we unload WebKit's global plug-in database if and only if the last WebView
863          was closed. To do so otherwise would unload plug-ins out from underneath other WebViews.
864          
865 2007-02-06  Darin Adler  <darin@apple.com>
866
867         Reviewed by John Sullivan.
868
869         - fix http://bugs.webkit.org/show_bug.cgi?id=11080
870           <rdar://problem/4826648> REGRESSION: Incorrect vertical positioning of Safari
871           status bar text containing @ character (11080)
872
873         * Misc/WebKitNSStringExtras.m:
874         (canUseFastRenderer): Fix code that mistakenly used the slow renderer for strings
875         that have a direction of "other neutral", which includes the "@" character.
876         (-[NSString _web_drawAtPoint:font:textColor:]): Add code to make the baseline of
877         the text in the status bar right. AppKit's rule for rounding is complicated enough
878         that this is obviously not perfectly correct, but it does make both code paths
879         use the same baseline in all the places this is currently used in AppKit.
880
881 2007-02-06  Darin Adler  <darin@apple.com>
882
883         Spotted by Steve F.
884
885         * Misc/WebNSURLExtras.m:
886         (-[NSString _web_mapHostNameWithRange:encode:makeString:]):
887         Fix obvious logic mistake I introduced back in revision 8255.
888         I can't see how to exercise this code path, but I also can't
889         bear to leave this obviously-broken code as-is.
890
891 2007-02-05  David Kilzer  <ddkilzer@webkit.org>
892
893         Reviewed by Darin.
894
895         http://bugs.webkit.org/show_bug.cgi?id=7266
896         Webarchive format saves duplicate WebSubresources to .webarchive file
897
898         Tests: webarchive/test-duplicate-resources.html
899                webarchive/test-frameset.html
900
901         * WebView/WebArchiver.mm:
902         (+[WebArchiver _archiveWithMarkupString:fromFrame:nodes:]): Use an NSMutableSet to prevent
903         duplicate subresources from being added to the webarchive.
904
905 2007-02-06  Mark Rowe  <mrowe@apple.com>
906
907         Roll out incomplete support for font-stretch (r19350) at Dave Hyatt's request.
908         See http://bugs.webkit.org/show_bug.cgi?id=12530#c9 for more info.
909
910         * WebInspector/webInspector/inspector.js:
911         * WebView/WebHTMLView.mm:
912         (-[WebHTMLView _addToStyle:fontA:fontB:]):
913
914 2007-02-05  Beth Dakin  <bdakin@apple.com>
915
916         Reviewed by Adam.
917
918         Fix for <rdar://problem/4975161> REGRESSION: With BumperCar 2.1.1, 
919         the contextual menu fails to appear when I ctrl-click on page
920
921         * WebCoreSupport/WebContextMenuClient.mm:
922         (WebContextMenuClient::getCustomMenuFromDefaultItems): If the 
923         delegate does not respond to contextMenuItemsForElement, return the 
924         default menu instead of nil.
925
926 2007-02-01  Geoffrey Garen  <ggaren@apple.com>
927
928         Reviewed by Maciej Stachowiak.
929         
930         Added support for selectively ignoring WebCore::Node leaks during layout
931         tests, so that we can ignore known leaks in other components.
932
933         * Misc/WebCoreStatistics.h:
934         * Misc/WebCoreStatistics.mm:
935         (+[WebCoreStatistics startIgnoringWebCoreNodeLeaks]):
936         (+[WebCoreStatistics stopIgnoringWebCoreNodeLeaks]):
937
938 2007-02-01  Nicholas Shanks  <webkit@nickshanks.com>
939
940         Reviewed by Mark.
941
942         Add support for CSS2 font-stretch property.
943
944         * WebInspector/webInspector/inspector.js:
945         * WebView/WebHTMLView.mm:
946         (-[WebHTMLView _addToStyle:fontA:fontB:]):
947
948 2007-02-01  Maciej Stachowiak  <mjs@apple.com>
949
950         Reviewed by Adam.
951         
952         <rdar://problem/4730469> REGRESSION: Assertion failure in -[WebDataSource(WebInternal) _bridge] when forwarding message
953
954         * WebView/WebDataSource.mm:
955         (-[WebDataSource subresources]): Check for being uncommitted and return emtpy result.
956         (-[WebDataSource subresourceForURL:]): ditto
957
958 2007-01-31  Oliver Hunt  <oliver@apple.com>
959
960         Reviewed by Adam.     
961
962         Migrating methods to WebCore
963
964         * WebCoreSupport/WebFrameBridge.mm:
965         * WebView/WebHTMLView.mm:
966         * WebView/WebHTMLViewPrivate.h:
967
968 2007-01-31  Anders Carlsson  <acarlsson@apple.com>
969
970         Reviewed by Maciej.
971
972         <rdar://problem/4886776>
973         REGRESSION: After opening a web archive, location shows the actual URL, not the webarchive file
974         
975         "Revert" the change done in 13734.
976         
977         * WebView/WebHTMLRepresentation.mm:
978         (-[WebHTMLRepresentation loadArchive]):
979         Don't do a new load here, as this would cancel the current load and call the resource load
980         delegate's didFailLoadingWithError: method. Instead, call continueLoadWithData.
981
982 2007-02-01  Nikolas Zimmermann  <zimmermann@kde.org>
983
984         Reviewed by Maciej.
985
986         Fix run-pageloadtest to actually work again.
987
988         * Misc/WebNSWindowExtras.m:
989         (+[NSWindow _webkit_displayThrottledWindows]):
990
991 2007-01-31  Adele Peterson  <adele@apple.com>
992
993         Reviewed by Darin.
994
995         WebKit part of fix for <rdar://problem/4521461> REGRESSION: when keyPress event changes form focus, inserted key goes to wrong control
996
997         * WebCoreSupport/WebEditorClient.mm: (WebEditorClient::handleKeyPress): Instead of using the selected frame, use the
998           frame for the target of the keyboard event.  Also, don't do the canEdit check here, since the target's frame might not
999           have a selection at this point.  Do the canEdit check within Editor::insertText, where we determine which selection to use
1000           for inserting text.
1001         * WebView/WebEditingDelegatePrivate.h: Added forward declaration of DOMHTMLElement. This is needed after reordering includes in WebEditorClient.mm.
1002
1003 2007-01-31  Alice Liu  <alice.liu@apple.com>
1004
1005         Reviewed by Tim Hatcher.
1006
1007         Turning an accidental API change to an SPI change
1008
1009         * WebView/WebEditingDelegate.h:
1010         * WebView/WebEditingDelegatePrivate.h:
1011         move some declarations into private header.  
1012
1013 2007-01-31  Darin Adler  <darin@apple.com>
1014
1015         - fix build
1016
1017         * ForwardingHeaders/wtf/ListHashSet.h: Added.
1018
1019 2007-01-31  Maciej Stachowiak  <mjs@apple.com>
1020
1021         Reviewed by Anders.
1022
1023         - related fix for <rdar://problem/4964407> REGRESSION: Mail hangs when replying, forwarding , or creating a new message
1024         
1025         * WebView/WebFrame.mm:
1026         (-[WebFrame loadArchive:]): This method also needs to add the lame WebDataRequest property or other things, like
1027         Mail Contents of Page, break.
1028
1029 2007-01-31  Maciej Stachowiak  <mjs@apple.com>
1030
1031         Reviewed by Eric.
1032         
1033         - add back no-op version of silly method so that shipping Safari can still run the PLT
1034
1035         * Misc/WebNSWindowExtras.m:
1036         (-[NSWindow _webkit_displayThrottledWindows]):
1037
1038 2007-01-31  Mark Rowe  <mrowe@apple.com>
1039
1040         More build fixing.
1041
1042         * Misc/WebKitLogging.h: Use !defined() rather than !.
1043         * Plugins/WebNetscapePluginStream.h: Remove #if __cplusplus as this file is only included from Obj-C++ files.
1044         * WebView/WebHTMLView.mm:
1045         (-[WebHTMLView _lookUpInDictionaryFromMenu:]): Use #ifdef rather than #if.
1046         * WebView/WebView.mm:
1047         (-[WebView isGrammarCheckingEnabled]): Ditto.
1048
1049 2007-01-31  Mark Rowe  <mrowe@apple.com>
1050
1051         Build fix.
1052
1053         * WebView/WebView.mm:
1054         (-[WebView initWithFrame:frameName:groupName:]):
1055
1056 2007-01-31  Mark Rowe  <mrowe@apple.com>
1057
1058         Reviewed by Oliver.
1059
1060         Enable -Wundef in WebKit, and change misuses of #if to #ifdef or #ifndef as appropriate.
1061
1062         * Misc/WebKitLogging.h:
1063         * WebKit.xcodeproj/project.pbxproj:
1064         * WebView/WebFrame.mm:
1065         * WebView/WebFrameInternal.h:
1066         * WebView/WebHTMLView.mm:
1067         (-[WebHTMLView validateUserInterfaceItem:]):
1068         (-[WebHTMLView delete:]):
1069         (-[WebHTMLView showGuessPanel:]):
1070         (-[WebHTMLView copy:]):
1071         (-[WebHTMLView cut:]):
1072         (-[WebHTMLView paste:]):
1073         * WebView/WebHTMLViewInternal.h:
1074         * WebView/WebView.mm:
1075         (-[WebViewPrivate init]):
1076         (-[WebView validateUserInterfaceItem:]):
1077         * WebView/WebViewPrivate.h:
1078
1079 2007-01-30  Brady Eidson  <beidson@apple.com>
1080
1081         Reviewed by Oliver
1082
1083         This is a corollary to <rdar://problem/4944887> where certain things happened on an alternate thread.
1084         To help catch such behavior in the future, add ASSERT_MAIN_THREAD() to key WebKit API points
1085
1086         * History/WebHistoryItem.mm: Added ASSERT_MAIN_THREAD() to suspected API entry points
1087         (-[WebHistoryItem dealloc]):
1088         (-[WebHistoryItem finalize]):
1089         (-[WebHistoryItem copyWithZone:]):
1090         (-[WebHistoryItem URLString]):
1091         (-[WebHistoryItem originalURLString]):
1092         (-[WebHistoryItem title]):
1093         (-[WebHistoryItem lastVisitedTimeInterval]):
1094         (-[WebHistoryItem isEqual:]):
1095         (-[WebHistoryItem description]):
1096         (-[WebHistoryItem initWithWebCoreHistoryItem:]):
1097         (-[WebHistoryItem initFromDictionaryRepresentation:]):
1098         (-[WebHistoryItem scrollPoint]):
1099         (-[WebHistoryItem dictionaryRepresentation]):
1100         (-[WebHistoryItem target]):
1101         (-[WebHistoryItem visitCount]):
1102         (-[WebHistoryItem children]):
1103         (-[WebHistoryItem URL]):
1104         (-[WebHistoryItem _lastVisitedDate]):
1105         (-[WebHistoryItem targetItem]):
1106
1107         * Misc/WebIconDatabase.mm: Added ASSERT_MAIN_THREAD() to suspected API entry points
1108         (-[WebIconDatabase iconForURL:withSize:cache:]):
1109         (-[WebIconDatabase iconURLForURL:]):
1110         (-[WebIconDatabase defaultIconWithSize:]):
1111         (-[WebIconDatabase retainIconForURL:]):
1112         (-[WebIconDatabase releaseIconForURL:]):
1113         (-[WebIconDatabase removeAllIcons]):
1114         (-[WebIconDatabase _iconForFileURL:withSize:]):
1115         (webGetNSImage):
1116
1117         * Misc/WebKitLogging.h: Added ASSERT_MAIN_THREAD()
1118         * Misc/WebKitLogging.m:
1119         (WebKitRunningOnMainThread): Added
1120
1121         * WebKit.xcodeproj/project.pbxproj: Define DISABLE_THREAD_CHECK until it is
1122           safe to run with ASSERT_MAIN_THREAD() active
1123
1124 2007-01-30  Timothy Hatcher  <timothy@apple.com>
1125
1126         Reviewed by Darin.
1127
1128         <rdar://problem/4961953> Stop using NSString deprecated methods like initWithCString:
1129
1130         * Misc/WebNSImageExtras.m:
1131         (-[NSImage _web_saveAndOpen]):
1132         * WebKit.xcodeproj/project.pbxproj:
1133
1134 2007-01-30  Mitz Pettel  <mitz@webkit.org>
1135
1136         Reviewed by Geoff.
1137
1138         - fix http://bugs.webkit.org/show_bug.cgi?id=12050
1139           REGRESSION: Assertion failure in -[WebBaseNetscapePluginView willCallPlugInFunction] (plugin)
1140
1141         Test: plugins/createScriptableObject-before-start.html
1142
1143         * Plugins/WebBaseNetscapePluginView.mm:
1144         (-[WebBaseNetscapePluginView createPluginScriptableObject]): Return NULL if
1145         the plugin is not started.
1146
1147 2007-01-30  Maciej Stachowiak  <mjs@apple.com>
1148
1149         Reviewed by Anders.
1150         
1151         <rdar://problem/4964407> REGRESSION: Mail hangs when replying, forwarding , or creating a new message
1152         
1153         * WebView/WebFrame.mm:
1154         (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): Set WebDataRequest property on data
1155         load requests since Mail specifically checks for this.
1156
1157 2007-01-30  Graham Dennis  <graham.dennis@gmail.com>
1158
1159         Reviewed by Maciej.
1160
1161         Part of fix for http://bugs.webkit.org/show_bug.cgi?id=10725
1162         Image data in from RTFD clipboard data thrown away
1163         
1164         The URLs for images in RTFD data must not be loaded until the resources
1165         have been added to the WebUnarchivingState. This can't happen until
1166         after the RTFD data has been parsed, so we must delay loading while this
1167         RTFD data is being parsed to a document fragment.
1168
1169         * WebView/WebHTMLView.mm:
1170         (uniqueURLWithRelativePart):
1171         (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]): defer loading the resources while RTFD data is being parsed.
1172         (+[NSURL _web_uniqueWebDataURL]): Added this back because AppKit uses it.
1173         * WebView/WebUnarchivingState.m:
1174         (-[WebUnarchivingState archivedResourceForURL:]): orkaround for workaround for rdar://problem/4699166 so that other people can use archivedResourceForURL: too.
1175
1176 2007-01-29  Jim Correia  <jim.correia@pobox.com>
1177
1178         Reviewed by Mark.
1179
1180         Added support for -allowsUndo/-setAllowsUndo: to allow editable WebView
1181         clients to completely disable undo registration. This is functionally
1182         equivalent to the methods with the same names on NSTextView.
1183
1184         * WebView/WebView.mm:
1185         (-[WebViewPrivate init]):
1186         (-[WebView initWithCoder:]):
1187         (-[WebView encodeWithCoder:]):
1188         (-[WebView allowsUndo]):
1189         (-[WebView setAllowsUndo:]):
1190         (-[WebView undoManager]):
1191         * WebView/WebViewPrivate.h:
1192
1193 2007-01-29  Ada Chan  <adachan@apple.com>
1194
1195         Reviewed by Brady.
1196
1197         Moved the update of the title of the current entry in the backforward list to WebCore.
1198
1199         * WebCoreSupport/WebFrameLoaderClient.mm:
1200         (WebFrameLoaderClient::setTitle):
1201
1202 2007-01-29  Adele Peterson  <adele@apple.com>
1203
1204         Reviewed by Darin.
1205
1206         More preparation for event handling fixes.
1207
1208         * WebCoreSupport/WebEditorClient.h: Removed EventTargetNode parameter, since you can
1209           just get this from the KeyboardEvent.
1210         * WebCoreSupport/WebEditorClient.mm: (WebEditorClient::handleKeyPress): ditto.
1211
1212         * WebView/WebHTMLViewInternal.h: Added interpretKeyEventsParameters struct.
1213         * WebView/WebViewInternal.h: Changed parameter from NSEvent to WebCoreKeyboardEvent in _interceptEditingKeyEvent.
1214         * WebView/WebHTMLView.mm:
1215         (-[WebHTMLView yankAndSelect:]): Updated for new triggeringEvent parameter.
1216         (-[WebHTMLView _interceptEditingKeyEvent:]): Set the WebHTMLViewInterpretKeyEventsParameters.
1217         (-[WebHTMLView doCommandBySelector:]): Access WebHTMLViewInterpretKeyEventsParameters.
1218         (-[WebHTMLView insertText:]): ditto.
1219         (-[WebHTMLView _insertText:selectInsertedText:triggeringEvent:]): Added parameter for triggeringEvent.
1220
1221 2007-01-29  Oliver Hunt  <oliver@apple.com>
1222
1223         build fix  
1224
1225         * WebView/WebHTMLView.mm:
1226         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
1227
1228 2007-01-25  Oliver Hunt  <oliver@apple.com>
1229
1230         Reviewed by Adam.
1231
1232         Migrated drag state and logic to WebCore, removed superfluous methods
1233
1234         * ChangeLog:
1235         * WebCoreSupport/WebDragClient.h:
1236         * WebCoreSupport/WebDragClient.mm:
1237         (WebDragClient::dragSourceActionMaskForPoint):
1238         * WebCoreSupport/WebFrameBridge.mm:
1239            allowDHTMLDrag move to WebCore::EventHandler
1240         * WebView/WebHTMLView.mm:
1241         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
1242         (-[WebHTMLView draggedImage:movedTo:]):
1243         (-[WebHTMLView draggedImage:endedAt:operation:]):
1244           dragOffset and dragSourecAction is now stored in WebCore::DragController
1245           migrated _delegateDragSourceActionMask to WebCore::DragController
1246         * WebView/WebHTMLViewInternal.h:
1247           Removed dragOffset declaration, migrated to WebCore::DragController
1248         * WebView/WebView.mm:
1249           removed unnecessary method, _loadingDragOperationForDraggingInfo
1250
1251 2007-01-29  Maciej Stachowiak  <mjs@apple.com>
1252
1253         Reviewed by Mark.
1254
1255         - updated for cross-platform data loading support
1256         
1257         * WebCoreSupport/WebFrameLoaderClient.h:
1258         * WebCoreSupport/WebFrameLoaderClient.mm:
1259         (WebFrameLoaderClient::createDocumentLoader):
1260         * WebView/WebDataSource.mm:
1261         (-[WebDataSource initWithRequest:]):
1262         * WebView/WebDocumentLoaderMac.h:
1263         * WebView/WebDocumentLoaderMac.mm:
1264         (WebDocumentLoaderMac::WebDocumentLoaderMac):
1265         * WebView/WebFrame.mm:
1266         (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
1267         (-[WebFrame loadData:MIMEType:textEncodingName:baseURL:]):
1268         (-[WebFrame _loadHTMLString:baseURL:unreachableURL:]):
1269         (-[WebFrame loadArchive:]):
1270         * WebView/WebFrameInternal.h:
1271         * WebView/WebHTMLView.mm:
1272         (uniqueURLWithRelativePart):
1273         (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]):
1274
1275 2007-01-27  David Kilzer  <ddkilzer@webkit.org>
1276
1277         Reviewed by Adam.
1278
1279         - fix http://bugs.webkit.org/show_bug.cgi?id=12260
1280           Windows platform build is not maintained
1281
1282         * COM/ChromeClientWin.cpp:
1283         (ChromeClientWin::canTakeFocus):
1284         (ChromeClientWin::takeFocus):
1285         * COM/ChromeClientWin.h:
1286         * COM/ContextMenuClientWin.cpp:
1287         (ContextMenuClientWin::getCustomMenuFromDefaultItems):
1288         (ContextMenuClientWin::searchWithGoogle):
1289         * COM/ContextMenuClientWin.h:
1290         * COM/WebFrameLoaderClient.cpp:
1291         (WebFrameLoaderClient::assignIdentifierToInitialRequest):
1292         (WebFrameLoaderClient::dispatchWillSendRequest):
1293         (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
1294         (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
1295         (WebFrameLoaderClient::dispatchDidReceiveResponse):
1296         (WebFrameLoaderClient::dispatchDidReceiveContentLength):
1297         (WebFrameLoaderClient::dispatchDidFinishLoading):
1298         (WebFrameLoaderClient::dispatchDidFailLoading):
1299         (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
1300         (WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
1301         (WebFrameLoaderClient::dispatchDidFailLoad):
1302         (WebFrameLoaderClient::dispatchCreatePage):
1303         (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
1304         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
1305         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
1306         (WebFrameLoaderClient::dispatchUnableToImplementPolicy):
1307         (WebFrameLoaderClient::setMainDocumentError):
1308         (WebFrameLoaderClient::incrementProgress):
1309         (WebFrameLoaderClient::completeProgress):
1310         (WebFrameLoaderClient::startDownload):
1311         (WebFrameLoaderClient::committedLoad):
1312         (WebFrameLoaderClient::cancelledError):
1313         (WebFrameLoaderClient::cannotShowURLError):
1314         (WebFrameLoaderClient::interruptForPolicyChangeError):
1315         (WebFrameLoaderClient::cannotShowMIMETypeError):
1316         (WebFrameLoaderClient::fileDoesNotExistError):
1317         (WebFrameLoaderClient::shouldFallBack):
1318         (WebFrameLoaderClient::willUseArchive):
1319         (WebFrameLoaderClient::createDocumentLoader):
1320         (WebFrameLoaderClient::download):
1321         * COM/WebFrameLoaderClient.h:
1322
1323 2007-01-27  David Harrison  <harrison@apple.com>
1324
1325         Reviewed by Kevin.
1326
1327         <rdar://problem/4958902> REGRESSION: Dashboard widgets fail to load
1328         
1329         This was caused by the WebView preferences rework in r18417. Specifically, in
1330         _updateWebCoreSettingsFromPreferences when calling setUserStyleSheetLocation,
1331         [NSURL URLWithString:] is now messaged directly with the result of
1332         [[preferences userStyleSheetLocation] _web_originalDataAsString]], which will
1333         be nil if the userStyleSheetLocation has not been set yet. [NSURL URLWithString:]
1334         throws an exception when the string is nil. DashboardClient.app calls
1335         setUserStyleSheetEnabled *before* calling setUserStyleSheetLocation.
1336
1337         * WebView/WebView.mm:
1338         (-[WebView _updateWebCoreSettingsFromPreferences:]):
1339         Pass empty string instead of nil string to [NSURL URLWithString:].
1340
1341 2007-01-26  Darin Adler  <darin@apple.com>
1342
1343         Reviewed by Timothy.
1344
1345         Fixes crash drawing avatar on mail.yahoo.com.
1346
1347         * Plugins/WebBaseNetscapePluginStream.m: Retain the object since destroyStreamWithError: might
1348         release the last reference to it.
1349
1350 2007-01-26  Darin Adler  <darin@apple.com>
1351
1352         Reviewed by Beth.
1353
1354         * WebInspector/webInspector/inspector.js: Updated for new computed style properties.
1355
1356 2007-01-26  Kevin Decker <kdecker@apple.com>
1357
1358         Reviewed by andersca.
1359
1360         Fixed: <rdar://problem/4946922> WebBaseNetscapePluginView leaks memory
1361         http://bugs.webkit.org/show_bug.cgi?id=11523
1362
1363         * Plugins/WebBaseNetscapePluginStream.m:
1364        (-[WebBaseNetscapePluginStream setPlugin:]): Calls -[WebBaseNetscapePluginView disconnectStream:]
1365         * Plugins/WebBaseNetscapePluginView.h: Added disconnectStream: to header.
1366         * Plugins/WebBaseNetscapePluginView.mm:
1367         (-[WebBaseNetscapePluginView stop]): Make a copy of the streams collection prior to calling stop all streams.
1368         This is necessary because calling stop has the side effect of removing the stream from this same collection.
1369         (-[WebBaseNetscapePluginView disconnectStream:]): Added. Removes the stream from the streams collection.
1370
1371 2007-01-25  Kevin Decker <kdecker@apple.com>
1372
1373         Backed out my last patch because it crashes espn.com. Stay tuned for a newer version..
1374
1375         * Plugins/WebBaseNetscapePluginStream.m:
1376         (-[WebBaseNetscapePluginStream setPlugin:]): Removed call to streamIsDead.
1377         * Plugins/WebBaseNetscapePluginView.h: Removed streamIsDead.
1378         * Plugins/WebBaseNetscapePluginView.mm: Ditto.
1379
1380 2007-01-25  Darin Adler  <darin@apple.com>
1381
1382         Reviewed by Beth.
1383
1384         - fix <rdar://problem/4952766> Safari has a top secret color picker that can be used to... uhh... I don't know
1385
1386         * Panels/English.lproj/WebAuthenticationPanel.nib/info.nib: Let Interface Builder have its way.
1387         * Panels/English.lproj/WebAuthenticationPanel.nib/objects.nib: Remove the NSColorWell that was
1388         in here (for no good reason).
1389
1390 2007-01-25  Kevin Decker  <kdecker@apple.com>
1391
1392         Reviewed by andersca.
1393
1394         A few tweaks with of a fix done by Steve Gehrman.
1395
1396         Fixed: <rdar://problem/4946922> WebBaseNetscapePluginView leaks memory
1397                http://bugs.webkit.org/show_bug.cgi?id=11523
1398
1399         * Plugins/WebBaseNetscapePluginStream.m:
1400         (-[WebBaseNetscapePluginStream setPlugin:]): Calls -[WebBaseNetscapePluginView streamIsDead:]
1401         * Plugins/WebBaseNetscapePluginView.h: Added streamIsDead to header.
1402         * Plugins/WebBaseNetscapePluginView.mm:
1403         (-[WebBaseNetscapePluginView streamIsDead:]): Added. Removes the stream from the streams collection.
1404
1405 2007-01-25  John Sullivan  <sullivan@apple.com>
1406
1407         Reviewed by Kevin, Geoff, Brady, and Darin
1408         
1409         - fixed <rdar://problem/4918446> Safari's temp files (PDF's) should be in a sub-folder when calling Preview
1410         
1411         * WebView/WebPDFView.mm:
1412         (-[WebPDFView _path]):
1413         use _temporaryPDFDirectoryPath method instead of #defines for hardwiring strings; stop bad practice
1414         of modifying the const char* returned by fileSystemRepresentation
1415         (-[WebPDFView _temporaryPDFDirectoryPath]):
1416         new method, lazily creates and returns a secure temporary directory created with NSTemporaryDirectory()
1417         and mkdtemp
1418
1419         * English.lproj/StringsNotToBeLocalized.txt:
1420         Updated for these and other recent changes
1421
1422 2007-01-24  Oliver Hunt  <oliver@apple.com>
1423
1424         Build fix 
1425
1426         * WebView/WebHTMLView.mm:
1427         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
1428         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
1429
1430 2007-01-24  Oliver Hunt  <ioliver@apple.com>
1431
1432         Reviewed by Maciej.
1433
1434         Migrating more drag state information to WebCore
1435
1436         * WebKit.xcodeproj/project.pbxproj:
1437         * WebView/WebHTMLView.mm:
1438         (-[WebHTMLViewPrivate dealloc]):
1439         (-[WebHTMLViewPrivate clear]):
1440         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
1441         (-[WebHTMLView _mayStartDragAtEventLocation:]):
1442         (-[WebHTMLView close]):
1443         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
1444         (-[WebHTMLView _delegateDragSourceActionMask]):
1445         * WebView/WebHTMLViewInternal.h:
1446
1447 2007-01-24  Adele Peterson  <adele@apple.com>
1448
1449         Reviewed by Darin.
1450
1451         Small improvement to my last checkin to prevent the keyEventWasInterpreted bool from
1452         being overwritten by reentrancy.
1453
1454         * WebView/WebHTMLView.mm:
1455         (-[WebHTMLView _interceptEditingKeyEvent:]): Point keyEventWasInterpreted pointer to local variable.
1456         (-[WebHTMLView doCommandBySelector:]):
1457         (-[WebHTMLView insertText:]):
1458         * WebView/WebHTMLViewInternal.h: Added BOOL pointer that will point to the local variable on the stack in _interceptEditingKeyEvent
1459
1460 2007-01-24  Adele Peterson  <adele@apple.com>
1461
1462         Reviewed by Darin.
1463
1464         - Fix for <rdar://problem/4950527> REGRESSION: Can't use arrow keys (left/right) to navigate caret in input (type=text) or textarea fields
1465
1466         Keep track of whether interpretKeyEvents handles the key event based on whether or not we get
1467         called in insertText or doCommandBySelector.
1468
1469         Test: fast/events/arrow-navigation.html
1470
1471         * WebView/WebHTMLView.mm:
1472         (-[WebHTMLView performKeyEquivalent:]):
1473         (-[WebHTMLView _interceptEditingKeyEvent:]):
1474         (-[WebHTMLView doCommandBySelector:]):
1475         (-[WebHTMLView insertText:]):
1476         * WebView/WebHTMLViewInternal.h:
1477
1478 2007-01-25  Mark Rowe  <mrowe@apple.com>
1479
1480         Reviewed by Maciej.
1481
1482         * Info.plist: Update copyright string.
1483
1484 2007-01-24  Darin Adler  <darin@apple.com>
1485
1486         Reviewed by Mark Rowe.
1487
1488         * WebKit.xcodeproj/project.pbxproj: Changed to /usr/sbin/sysctl
1489         so we don't rely on people's paths.
1490
1491 2007-01-24  Darin Adler  <darin@apple.com>
1492
1493         Reviewed by Adele.
1494
1495         - fix small regression and GC problems noticed by code inspection
1496
1497         * WebView/WebHTMLView.mm: Move global declarations to the start of the file.
1498         (+[WebHTMLView _excludedElementsForAttributedStringConversion]):
1499         Add a CFRetain here for GC compatibility.
1500         (+[WebHTMLView _insertablePasteboardTypes]): Ditto.
1501         (-[WebHTMLView performKeyEquivalent:]): Fix small logic mistake that prevents
1502         super from being called if EventHandler::keyEvent returns false. Reformatted
1503         the code a bit and added a local variable for the frame.
1504         (-[WebHTMLView _interceptEditingKeyEvent:]): Added some comments.
1505         (-[WebHTMLView validAttributesForMarkedText]): Add a CFRetain here for
1506         GC compatibility.
1507
1508 2007-01-23  Adele Peterson  <adele@apple.com>
1509
1510         Reviewed by Adam.
1511
1512         Fixed 2 layout tests that I broke with my last checkin.
1513
1514         * WebCoreSupport/WebEditorClient.mm: (WebEditorClient::handleKeyPress): Use the selected frame to get the WebHTMLView.
1515         * WebView/WebHTMLView.mm:
1516         (-[WebHTMLView performKeyEquivalent:]): Added global to keep track of NSEvent used here.
1517         (-[WebHTMLView _interceptEditingKeyEvent:]): Check NSEvent against the event used in performKeyEquivalent.
1518           We don't want to intercept these events.
1519
1520 2007-01-23  Adele Peterson  <adele@apple.com>
1521
1522         Reviewed by Darin.
1523
1524         WebKit part of fix for <rdar://problem/4946753>REGRESSION: Inserting tabs is broken in Mail
1525         
1526         In addition to this fix, I also reorganized some event handling code for keyPress events to
1527         prepare for another fix.
1528
1529         * WebCoreSupport/WebEditorClient.h: Added handleKeyPress method.
1530         * WebCoreSupport/WebEditorClient.mm:
1531         (WebEditorClient::handleKeyPress): Added.  Code moved from WebHTMLView keyDown method.
1532          This is called from the defaultEventHandler so that in the future, we can make the right 
1533          decision about which selection the keyPress should apply to.
1534         * WebView/WebHTMLView.mm:
1535         (-[WebHTMLView keyDown:]): Moved _interceptEditingKeyEvent call to handleKeyPress.
1536         (-[WebHTMLView _interceptEditingKeyEvent:]): Prevents intercepting keys for cmd-modified events. Removed tabCycling checks
1537          since this is now handled in WebCore.
1538         * WebView/WebHTMLViewInternal.h: Made _interceptEditingKeyEvent SPI.
1539         * WebView/WebView.mm: Use new tabKeyCyclesThroughElements methods on the page.
1540         (-[WebViewPrivate init]): ditto.
1541         (-[WebView setTabKeyCyclesThroughElements:]): ditto.
1542         (-[WebView tabKeyCyclesThroughElements]): ditto.
1543         (-[WebView setEditable:]): ditto
1544
1545 2007-01-23  Lars Knoll <lars@trolltech.com>
1546
1547         Reviewed by Maciej
1548
1549         Make the last remaining pieces of the FrameLoader platform 
1550         independent. Move most of the code over to WebFrameLoaderClient.
1551         Some smaller cleanups in the WebFrameBridge, and moved some
1552         platform independent functionality over to the shared code
1553         in WebCore.
1554
1555         * Webcoresupport/WebFrameBridge.mm:
1556         (-[WebFrameBridge finishInitializingWithPage:frameName:frameView:ownerElement:]):
1557         (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]):
1558         (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
1559         * WebCoreSupport/WebFrameLoaderClient.h:
1560         * WebCoreSupport/WebFrameLoaderClient.mm:
1561         (WebFrameLoaderClient::setTitle):
1562         (WebFrameLoaderClient::createFrame):
1563         (WebFrameLoaderClient::objectContentType):
1564         (nsArray):
1565         (WebFrameLoaderClient::createPlugin):
1566         (WebFrameLoaderClient::redirectDataToPlugin):
1567         (nsMutableArray):
1568         (WebFrameLoaderClient::createJavaAppletWidget):
1569         (WebFrameLoaderClient::overrideMediaType):
1570         (WebFrameLoaderClient::windowObjectCleared):
1571
1572 2007-01-23  Oliver Hunt  <oliver@apple.com>
1573
1574         Reviewed by Adam.
1575
1576         Drop logic bindings for WebKit
1577
1578         * WebCoreSupport/WebDragClient.h: Added.
1579         * WebCoreSupport/WebDragClient.mm: Added.
1580         (WebDragClient::WebDragClient):
1581         (WebDragClient::actionMaskForDrag):
1582         (WebDragClient::willPerformDragDestinationAction):
1583           Standard client impl
1584         * WebCoreSupport/WebFrameBridge.mm:
1585         (-[WebFrameBridge startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
1586           Updated to use DragController to track drag state
1587     
1588         * WebCoreSupport/WebPasteboardHelper.h: Added.
1589         (WebPasteboardHelper::WebPasteboardHelper):
1590           A *temporary* Helper class to access NSPasteboard access and 
1591           manipulation functions present in WebKit
1592         * WebCoreSupport/WebPasteboardHelper.mm: Added.
1593         (WebPasteboardHelper::urlFromPasteboard):
1594         (WebPasteboardHelper::plainTextFromPasteboard):
1595         (WebPasteboardHelper::fragmentFromPasteboard):
1596         (WebPasteboardHelper::insertablePasteboardTypes):
1597           See header comment
1598         * WebKit.xcodeproj/project.pbxproj:
1599         * WebView/WebDocumentInternal.h:
1600           Remove unnecessary protocol
1601         * WebView/WebFrameView.mm:
1602         (-[WebFrameView _setDocumentView:]):
1603           Updating to use DragController to track drag state
1604         * WebView/WebHTMLView.mm:
1605         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
1606           ditto
1607         (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]):
1608           ditto
1609         (-[WebHTMLView draggingSourceOperationMaskForLocal:]):
1610           ditto
1611         (-[WebHTMLView draggedImage:endedAt:operation:]):
1612           ditto          
1613         (-[WebHTMLView _documentFragmentForPasteboard:]):
1614           Helper method to generate DocumentFragment from NSPasteboard without regressing 
1615         (-[WebHTMLView _canProcessDragWithDraggingInfo:]):
1616           Updating to use DragController to track drag state
1617         (-[WebHTMLView _isMoveDrag:]):
1618         (-[WebHTMLView _isNSColorDrag:]):
1619         * WebView/WebHTMLViewInternal.h:
1620           Removing unnecessary fields and methods
1621         * WebView/WebView.mm:
1622         (-[WebViewPrivate dealloc]):
1623           Remove obsolete ASSERT
1624         (-[WebView _setInitiatedDrag:]):
1625           Now passes directly through to DragController
1626         (-[WebView _commonInitializationWithFrameName:groupName:]):
1627         (-[WebView _loadingDragOperationForDraggingInfo:]):
1628           Removed
1629         (-[WebView draggingEntered:]):
1630           Updated to use DragController
1631         (-[WebView draggingUpdated:]):
1632           ditto
1633         (-[WebView draggingExited:]):
1634           ditto
1635         (-[WebView performDragOperation:]):
1636           ditto
1637         (-[WebView _hitTest:dragTypes:]):
1638         * WebView/WebViewInternal.h:
1639           remove unnecessary method def
1640
1641 2007-01-22  John Sullivan  <sullivan@apple.com>
1642
1643         * WebView/WebHTMLView.mm:
1644         (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
1645         Tiger build fix: remove unused variable for return value of dictionaryServiceWindowShow
1646
1647 2007-01-22  John Sullivan  <sullivan@apple.com>
1648
1649         Reviewed by Adam and Darin
1650
1651         - fixed <rdar://problem/4794320> "Look Up in Dictionary" does nothing in WebKit 
1652         (need to adopt new API)
1653
1654         * Misc/WebNSURLExtras.m:
1655         (-[NSString _web_isUserVisibleURL]):
1656         random typo correction in comment
1657
1658         * English.lproj/StringsNotToBeLocalized.txt:
1659         updated for these changes
1660
1661         * WebView/WebHTMLView.mm:
1662         (coreGraphicsScreenPointForAppKitScreenPoint):
1663         new function to convert an AppKit screen point to a CG screen point
1664         (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
1665         on Leopard now uses new API. There's something of an impedance mismatch between
1666         this API and WebKit, but that was true for the SPI we were using in Tiger also.
1667         Bug 4945808 covers the ways in which this is not perfect.
1668
1669 2007-01-21  Darin Adler  <darin@apple.com>
1670
1671         Reviewed by Tim H.
1672
1673         * WebInspector/webInspector/inspector.css: Use row-resize for the splitter cursor
1674         instead of move. It's a horizontal splitter resizer.
1675
1676 2007-01-19  Adam Roben  <aroben@apple.com>
1677
1678         Reviewed by Beth.
1679
1680         Fix <rdar://problem/4942294> REGRESSION: "Spelling and Grammar",
1681         "Font", "Speech", and "Writing Direction" are missing from contextual
1682         menu
1683
1684         * WebCoreSupport/WebContextMenuClient.mm:
1685         (fixMenusForOldClients): Change our new SPI tags to
1686         WebMenuItemTagOther because old clients aren't expecting the new tags.
1687         (fixMenusFromOldClients): Use each menu item's title to figure out its
1688         correct tag again.
1689         (WebContextMenuClient::getCustomMenuFromDefaultItems): Call
1690         fixMenusForOldClients before calling up to the delegate.
1691         * WebView/WebUIDelegatePrivate.h: Define WEBMENUITEMTAG_SPI_START so
1692         that we can use it in WebContextMenuClient.
1693
1694 2007-01-19  John Sullivan  <sullivan@apple.com>
1695
1696         Reviewed by Darin
1697
1698         - WebKit part of fix for: <rdar://problem/4451715> REGRESSION: On some sites, have to 
1699           type a character before username/password autofill kicks in
1700           
1701         Added new webView:didFinishDocumentLoadForFrame: SPI and wired it up
1702
1703         * WebView/WebViewPrivate.h:
1704         declare new delegate method
1705
1706         * WebCoreSupport/WebFrameLoaderClient.h:
1707         declare dispatchDidFinishDocumentLoad()
1708
1709         * WebCoreSupport/WebFrameLoaderClient.mm:
1710         (WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
1711         new method, calls new delegate method
1712
1713         * DefaultDelegates/WebDefaultFrameLoadDelegate.m:
1714         (-[WebDefaultFrameLoadDelegate webView:didFinishDocumentLoadForFrame:]):
1715         empty default implementation of new delegate method
1716
1717 2007-01-19  Anders Carlsson  <acarlsson@apple.com>
1718
1719         Reviewed by John Sullivan.
1720
1721         http://bugs.webkit.org/show_bug.cgi?id=12308
1722         REGRESSION(r18910): Crash in WebBaseNetscapePluginStream cancelLoadAndDestroyStreamWithError
1723         
1724         * Plugins/WebBaseNetscapePluginView.mm:
1725         (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]):
1726         Move code from initWithFrame in here.
1727
1728 2007-01-19  Anders Carlsson  <acarlsson@apple.com>
1729
1730         Yet another build fix.
1731         
1732         * WebCoreSupport/WebChromeClient.h:
1733         * WebCoreSupport/WebChromeClient.mm:
1734         (WebChromeClient::setStatusbarText):
1735
1736 2007-01-18  Anders Carlsson  <acarlsson@apple.com>
1737
1738         Reviewed by Adam.
1739
1740         Move functions from the bridge to the chrome client.
1741         
1742         * WebCoreSupport/WebChromeClient.h:
1743         * WebCoreSupport/WebChromeClient.mm:
1744         (WebChromeClient::runJavaScriptAlert):
1745         (WebChromeClient::runJavaScriptConfirm):
1746         (WebChromeClient::runJavaScriptPrompt):
1747         (WebChromeClient::setStatusBarText):
1748         * WebCoreSupport/WebFrameBridge.mm:
1749
1750 2007-01-18  Adam Roben  <aroben@apple.com>
1751
1752         Reviewed by Beth.
1753
1754         Fix <rdar://problem/4939672> REGRESSION: With text selected that is
1755         not a link, the "Remove Link" contextual menu item remains active
1756
1757         * WebView/WebHTMLView.mm:
1758         (-[WebHTMLView menuForEvent:]): Leave autoenabling of menu items on so
1759         that clients can implement validateMenuItem:.
1760
1761 2007-01-18  Brady Eidson  <beidson@apple.com>
1762
1763         Reviewed by Adele
1764
1765         <rdar://problem/4917290> - 
1766         Null deref in WebFrameLoaderClient::restoreScrollPositionAndViewState() 
1767         after regaining network connection
1768
1769         * WebCoreSupport/WebFrameLoaderClient.mm:
1770         (WebFrameLoaderClient::restoreScrollPositionAndViewState): Bail early with a null currentItem, preventing 
1771         a crash in release builds.  Leave the ASSERT to help find other cases where this might happen in debug builds.
1772
1773 2007-01-18  Kevin Decker  <kdecker@apple.com>
1774
1775         Reviewed by John.
1776
1777         <rdar://problem/4939511> WebKit should set the CG clip path for plug-ins that draw using CoreGraphics
1778
1779         * Plugins/WebBaseNetscapePluginView.mm:
1780         (-[WebBaseNetscapePluginView drawRect:]):  Set the CG clip path to the plug-in dirty rect. This allows plug-ins to obtain their
1781         dirty rect using functions like CGContextGetClipBoundingBox().
1782
1783 2007-01-17  Alice Liu  <alice.liu@apple.com>
1784
1785         Reviewed by Harrison.
1786
1787         Fix for <rdar://problem/4894155> REGRESSION: Extra line break is pasted with content into message body after choosing File - Paste
1788
1789         Migration of some editing code from WebHTMView to WebCore::Editor
1790         resulted in not calling pasteboardTypesForSelection, which Mail was
1791         overriding for the special purpose of adding a type to the
1792         pasteboard after WebKit did.  This patch adds 2 separate code paths
1793         for Tiger and Leopard.  On Tiger we give in and call the WebView's
1794         pasteboardTypesForSelection.  On Leopard we call a delegate after
1795         the pasteboard types are set. 
1796
1797         * DefaultDelegates/WebDefaultEditingDelegate.m:
1798         (-[WebDefaultEditingDelegate webView:didSetSelectionTypesForPasteboard:]):
1799         * WebCoreSupport/WebEditorClient.h:
1800         * WebCoreSupport/WebEditorClient.mm:
1801         (WebEditorClient::didSetSelectionTypesForPasteboard):
1802         (WebEditorClient::pasteboardTypesForSelection):
1803         * WebView/WebEditingDelegate.h:
1804
1805 2007-01-17  John Sullivan  <sullivan@apple.com>
1806
1807         Reviewed by Darin
1808
1809         - WebKit part of fix for <rdar://problem/4462420> REGRESSION: Mail hangs during 
1810           Replace All if the replacement string contains the search string
1811
1812         * Misc/WebKitVersionChecks.h:
1813         Added extern "C" so this can be used from .mm files. I don't need this change anymore for
1814         this fix, but it's still worth fixing now so it doesn't bite anyone later.
1815
1816         * WebView/WebDocumentPrivate.h:
1817         Invented new private protocol WebDocumentIncrementalSearching, that has one method. The one
1818         method is just like the one WebDocumentSearching method, but with an additional parameter.
1819         We hope to eliminate this dependence on protocols someday, but adding another one as SPI
1820         seems like it won't make anything worse.
1821         
1822         * WebView/WebHTMLView.mm:
1823         (-[WebHTMLView searchFor:direction:caseSensitive:wrap:]):
1824         now calls through to new method that has one additional parameter, passing NO to match old behavior
1825         (-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]):
1826         pass new parameter to bridge
1827         
1828         * WebView/WebPDFView.h:
1829         Declare conformance to WebDocumentIncrementalSearching protocol
1830         
1831         * WebView/WebPDFView.mm:
1832         (-[WebPDFView searchFor:direction:caseSensitive:wrap:]):
1833         now calls through to new method that has one additional parameter, passing NO to match old behavior
1834         (-[WebPDFView searchFor:direction:caseSensitive:wrap:startInSelection:]):
1835         new method, former guts of searchFor:direction:caseSensitive:wrap: but now handles startInSelection
1836         parameter
1837         
1838         * WebView/WebViewPrivate.h:
1839         Declare new searchFor:direction:caseSensitive:wrap:startInSelection: method, just like existing
1840         method but with one additional parameter
1841
1842         * WebView/WebView.mm:
1843         (-[WebView searchFor:direction:caseSensitive:wrap:]):
1844         now calls through to new method that has one additional parameter, passing NO to match old behavior
1845         (-[WebView searchFor:direction:caseSensitive:wrap:startInSelection:]):
1846         new method, former guts of searchFor:direction:caseSensitive:wrap: but now handles startInSelection
1847         parameter
1848         
1849 2007-01-17  Brady Eidson  <beidson@apple.com>
1850
1851         Reviewed by Deth Bakin and Brian Dash
1852
1853         Drop Panther Support (?!?) and change the comment explaining some SPI forward decls
1854
1855         * Misc/WebDownload.m:
1856
1857 2007-01-17  Darin Adler  <darin@apple.com>
1858
1859         Reviewed by Maciej.
1860
1861         - fix http://bugs.webkit.org/show_bug.cgi?id=12278
1862           <rdar://problem/4928705> REGRESSION(r13070): Dragged image size includes padding (12278)
1863
1864         * Misc/WebElementDictionary.mm: (-[WebElementDictionary _imageRect]):
1865         Call HitTestResult::imageRect, not HitTestResult::boundingBox.
1866
1867 2007-01-17  Anders Carlsson  <acarlsson@apple.com>
1868
1869         Reviewed by John Sullivan.
1870         
1871         Move all code in WebNetscapePluginEmbeddedView down to WebBaseNetscapePluginView.
1872         
1873         * Plugins/WebBaseNetscapePluginView.h:
1874         * Plugins/WebBaseNetscapePluginView.mm:
1875         (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]):
1876         (-[WebBaseNetscapePluginView didStart]):
1877         (-[WebBaseNetscapePluginView dataSource]):
1878         (-[WebBaseNetscapePluginView dealloc]):
1879         (-[WebBaseNetscapePluginView pluginView:receivedResponse:]):
1880         (-[WebBaseNetscapePluginView pluginView:receivedData:]):
1881         (-[WebBaseNetscapePluginView pluginView:receivedError:]):
1882         (-[WebBaseNetscapePluginView pluginViewFinishedLoading:]):
1883         (-[WebBaseNetscapePluginView _redeliverStream]):
1884         * Plugins/WebNetscapePluginEmbeddedView.h:
1885         * Plugins/WebNetscapePluginEmbeddedView.mm:
1886
1887 2007-01-17  Maciej Stachowiak  <mjs@apple.com>
1888
1889         Reviewed by Eric.
1890         
1891         <rdar://problem/4887781> Seed: Repro Safari crash in -[WebHTMLRepresentation receivedData:withDataSource:] (music.aol.com)
1892
1893         * WebView/WebDataSource.mm:
1894         (-[WebDataSource _receivedData:]): Protect self against destruction partway through this method.
1895
1896 2007-01-16  Alice Liu  <alice.liu@apple.com>
1897
1898         Reviewed by harrison.
1899
1900         Fixed <rdar://problem/4921134> WebKit needs extensible cut/copy to allow additional types to be written to pasteboard
1901
1902         * DefaultDelegates/WebDefaultEditingDelegate.m:
1903         (-[WebDefaultEditingDelegate webView:didWriteSelectionToPasteboard:]):
1904         * WebCoreSupport/WebEditorClient.h:
1905         * WebCoreSupport/WebEditorClient.mm:
1906         (WebEditorClient::didWriteSelectionToPasteboard):
1907         * WebKit.xcodeproj/project.pbxproj:
1908         * WebView/WebEditingDelegate.h:
1909
1910 2007-01-15  Justin Garcia  <justin.garcia@apple.com>
1911
1912         Reviewed by mjs
1913
1914         <rdar://problem/4810960>
1915         Gmail Editor: window.focus() called on keyDown (9640)
1916
1917         The window's keydown event handler was being called
1918         instead of the editable subframe's if there was a key binding
1919         for the key event.
1920
1921         * WebView/WebHTMLView.mm:
1922         (-[WebHTMLView performKeyEquivalent:]): Don't send the event
1923         to WebCore unless this WebHTMLView is the firstResponder.
1924
1925 2007-01-15  Anders Carlsson  <acarlsson@apple.com>
1926
1927         Reviewed by Darin.
1928
1929         Update to match WebCore.
1930         
1931         * WebCoreSupport/WebFrameLoaderClient.h:
1932         * WebCoreSupport/WebFrameLoaderClient.mm:
1933         (WebFrameLoaderClient::willChangeEstimatedProgress):
1934         (WebFrameLoaderClient::didChangeEstimatedProgress):
1935         (WebFrameLoaderClient::postProgressStartedNotification):
1936         (WebFrameLoaderClient::postProgressEstimateChangedNotification):
1937         (WebFrameLoaderClient::postProgressFinishedNotification):
1938         Post the correct notifications.
1939         
1940         * WebView/WebView.mm:
1941         (-[WebViewPrivate init]):
1942         (-[WebViewPrivate dealloc]):
1943         Get rid of all progress tracking code.
1944         
1945         (-[WebView estimatedProgress]):
1946         Call ProgressTracker::estimatedProgress()
1947
1948 2007-01-15  Adam Roben  <aroben@apple.com>
1949
1950         Reviewed by Darin.
1951
1952         Fix: http://bugs.webkit.org/show_bug.cgi?id=12134
1953         REGRESSION: Assertion failure and crash when right clicking selection
1954         in forms
1955
1956         * WebCoreSupport/WebContextMenuClient.mm:
1957         (fixMenusFromOldApps): Static helper to fix up menus from applications
1958         compiled against Tiger WebKit.
1959         (WebContextMenuClient::getCustomMenuFromDefaultItems): Call helper to
1960         fix menus.
1961         * WebView/WebUIDelegatePrivate.h: Fixed typo.
1962
1963 2007-01-14  David Kilzer  <ddkilzer@kilzer.net>
1964
1965         Reviewed by Darin.
1966
1967         - fix http://bugs.webkit.org/show_bug.cgi?id=12251
1968           REGRESSION (r18822-r18823): Assertion failure opening document with non-existent resources
1969           (dom/xhtml/level2/html/HTMLIFrameElement11.xhtml)
1970
1971         * WebView/WebView.mm:
1972         (-[WebView _objectForIdentifier:]): Removed assertion.
1973         (-[WebView _removeObjectForIdentifier:]): Removed assertion.
1974
1975 2007-01-12  Anders Carlsson  <acarlsson@apple.com>
1976
1977         Reviewed by Darin.
1978
1979         Add a HashMap between unsigned longs and Objective-C objects and use it for
1980         the resource load delegate.
1981         
1982         * WebCoreSupport/WebFrameLoaderClient.h:
1983         * WebCoreSupport/WebFrameLoaderClient.mm:
1984         (WebFrameLoaderClient::assignIdentifierToInitialRequest):
1985         (WebFrameLoaderClient::dispatchIdentifierForInitialRequest):
1986         (WebFrameLoaderClient::dispatchWillSendRequest):
1987         (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
1988         (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
1989         (WebFrameLoaderClient::dispatchDidReceiveResponse):
1990         (WebFrameLoaderClient::dispatchDidReceiveContentLength):
1991         (WebFrameLoaderClient::dispatchDidFinishLoading):
1992         (WebFrameLoaderClient::dispatchDidFailLoading):
1993         (WebFrameLoaderClient::incrementProgress):
1994         (WebFrameLoaderClient::completeProgress):
1995         * WebView/WebView.mm:
1996         (-[WebViewPrivate init]):
1997         (-[WebViewPrivate dealloc]):
1998         (-[WebView _addObject:forIdentifier:]):
1999         (-[WebView _objectForIdentifier:]):
2000         (-[WebView _removeObjectForIdentifier:]):
2001         * WebView/WebViewInternal.h:
2002
2003 2007-01-11  Brady Eidson  <beidson@apple.com>
2004
2005         Reviewed by Anders
2006
2007         Rewrites HTTP Authentication setting up a more platform-independent structure
2008
2009         * WebCoreSupport/WebFrameLoaderClient.h:
2010         * WebCoreSupport/WebFrameLoaderClient.mm:
2011         (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
2012         (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
2013         * WebKit.xcodeproj/project.pbxproj:
2014
2015 2007-01-11  Darin Adler  <darin@apple.com>
2016
2017         Reviewed by Mitz.
2018
2019         - fix http://bugs.webkit.org/show_bug.cgi?id=12180
2020           REGRESSION: Double-clicking on JS exception in JS log crashes in -[SharedBufferData initWithSharedBuffer:]
2021
2022         * WebView/WebDataSource.mm: (-[WebDataSource data]): Added null check.
2023
2024 2007-01-11  Darin Adler  <darin@apple.com>
2025
2026         Reviewed by Hyatt.
2027
2028         - moved code from a couple WebCore bridging classes here instead
2029
2030         * Misc/WebNSPasteboardExtras.mm:
2031         (-[NSPasteboard _web_writeImage:element:URL:title:archive:types:]):
2032         Use MimeTypeRegistry instead of WebMimeTypeRegistryBridge.
2033
2034         * WebView/WebHTMLRepresentation.mm:
2035         (stringArray): Added. Helper to convert a HashSet to an NSArray.
2036         (concatenateArrays): Added. Helper to concatenate two NSArray objects.
2037         (+[WebHTMLRepresentation supportedMIMETypes]): Use MimeTypeRegistry instead of
2038         WebMimeTypeRegistryBridge. Also fix a potential GC problem by using a RetainPtr
2039         instead of a [retain] on a global variable.
2040         (+[WebHTMLRepresentation supportedNonImageMIMETypes]): Ditto.
2041         (+[WebHTMLRepresentation supportedImageMIMETypes]): Ditto.
2042
2043         * WebView/WebHTMLView.mm:
2044         (-[WebHTMLView _imageExistsAtPaths:]): Use MimeTypeRegistry instead of
2045         WebMimeTypeRegistryBridge.
2046         (-[WebHTMLView _documentFragmentWithPaths:]): Ditto.
2047
2048         * WebView/WebView.mm: (+[WebView _decodeData:]): Moved code here from
2049         the old WebCoreEncodings class.
2050
2051         * WebKit.xcodeproj/project.pbxproj: Let Xcode have its way with this file.
2052         Moved WebRenderNode into the appropriate group.
2053
2054 2007-01-10  Mitz Pettel  <mitz@webkit.org>
2055
2056         Reviewed by Darin.
2057
2058         - fix http://bugs.webkit.org/show_bug.cgi?id=11775
2059           'Show URLs in Tool Tips' preference is ignored
2060
2061         * WebView/WebHTMLView.mm:
2062         (-[WebHTMLView _resetCachedWebPreferences:]):
2063         (-[WebHTMLView setDataSource:]): Added a call to _resetCachedWebPreferences:.
2064         Added an assertion that the view is not closed, instead of reopening it.
2065         Reopening should not occur, now that <http://bugs.webkit.org/show_bug.cgi?id=12087>
2066         is fixed.
2067
2068 2007-01-10  Beth Dakin  <bdakin@apple.com>
2069
2070         Reviewed by John.
2071
2072         Fix for <rdar://problem/4914258> REGRESSION: Search in Google now 
2073         operates on the current WebView instead of invoking Safari's 
2074         service
2075
2076         * WebCoreSupport/WebContextMenuClient.h:
2077         * WebCoreSupport/WebContextMenuClient.mm:
2078         (WebContextMenuClient::searchWithGoogle): Call into WebView to 
2079         search in Google.
2080         * WebView/WebViewInternal.h: Make _searchWithGoogleFromMenu 
2081         available.
2082
2083 2007-01-09  Timothy Hatcher  <timothy@apple.com>
2084
2085         Reviewed by Darin.
2086
2087         Rename the now ObjC++ files to be .mm and remove the explicit file types.
2088
2089         * DOM/WebDOMOperations.m: Removed.
2090         * DefaultDelegates/WebDefaultContextMenuDelegate.m: Removed.
2091         * English.lproj/StringsNotToBeLocalized.txt:
2092         * Misc/WebCoreStatistics.m: Removed.
2093         * Misc/WebElementDictionary.m: Removed.
2094         * Misc/WebIconDatabase.m: Removed.
2095         * Misc/WebNSAttributedStringExtras.m: Removed.
2096         * Misc/WebNSPasteboardExtras.m: Removed.
2097         * Plugins/WebNetscapePluginEmbeddedView.m: Removed.
2098         * Plugins/WebNullPluginView.m: Removed.
2099         * Plugins/WebPluginContainerCheck.m: Removed.
2100         * WebCoreSupport/WebViewFactory.m: Removed.
2101         * WebKit.xcodeproj/project.pbxproj:
2102         * WebView/WebArchiver.m: Removed.
2103         * WebView/WebHTMLRepresentation.m: Removed.
2104         * WebView/WebHTMLView.m: Removed.
2105         * WebView/WebRenderNode.m: Removed.
2106         * WebView/WebResource.m: Removed.
2107         * WebView/WebScriptDebugDelegate.m: Removed.
2108
2109 2007-01-09  Maciej Stachowiak  <mjs@apple.com>
2110
2111         Reviewed by Darin.
2112         
2113         - remove window display throttling code; no longer used
2114
2115         * Misc/WebNSWindowExtras.h:
2116         * Misc/WebNSWindowExtras.m:
2117         * WebView/WebFrameView.mm:
2118         (-[WebFrameView initWithFrame:]):
2119         * WebView/WebPreferenceKeysPrivate.h:
2120
2121 2007-01-08  Anders Carlsson  <acarlsson@apple.com>
2122
2123         Reviewed by Brady.
2124
2125         Remove bridge functions that are implemented directly in FrameLoader now.
2126         
2127         * WebCoreSupport/WebFrameBridge.mm:
2128
2129 2007-01-08  Sam Weinig  <sam@webkit.org>
2130
2131         Reviewed by Mark.
2132
2133         Adds default value for outline-color and fixes default
2134         values of the recently fixed *-color properties.
2135
2136         * WebInspector/webInspector/inspector.js:
2137
2138 2007-01-08  Beth Dakin  <bdakin@apple.com>
2139
2140         Reviewed by Adam.
2141
2142         Fix for http://bugs.webkit.org/show_bug.cgi?id=12161 REGRESSION: 
2143         Crash when control-clicking on an image for contextual menu
2144
2145         * WebView/WebHTMLView.m:
2146         (-[WebHTMLView menuForEvent:]): We need to nil-check coreMenu since 
2147         it will be nil if the DOM popped up a menu instead. I cleaned up 
2148         the function to make all the nil checks early returns instead of 
2149         nesting all of the content. Also moved the autorelease to be with 
2150         the creation of the menu instead of at the return.
2151
2152 2007-01-08  Sam Weinig  <sam@webkit.org>
2153
2154         Reviewed by Tim H.
2155
2156         Adds default value for -webkit-box-shadow and fixes default
2157         value of -webkit-column-count to be "auto".  Also sorts the
2158         list of defaults.
2159
2160         * WebInspector/webInspector/inspector.js:
2161
2162 2007-01-08  Andrew Wellington  <proton@wiretapped.net>
2163
2164         Reviewed by Mark.
2165
2166         * WebInspector/webInspector/inspector.js: Hide default values of
2167         -webkit-column styles in WebInspector.
2168
2169 2007-01-05  Darin Adler  <darin@apple.com>
2170
2171         Reviewed by Hyatt.
2172
2173         * Misc/WebNSAttributedStringExtras.m:
2174         (+[NSAttributedString _web_attributedStringFromRange:]):
2175         Updated to use new list marker text API that is String rather than
2176         DeprecatedString. Also removed code to do text form of non-text list
2177         markers since the list marker class now deals with that.
2178
2179 2007-01-05  Anders Carlsson  <acarlsson@apple.com>
2180
2181         Reviewed by Darin.
2182
2183         Fix build.
2184         
2185         * WebCoreSupport/WebFrameLoaderClient.h:
2186         * WebCoreSupport/WebFrameLoaderClient.mm:
2187         (WebFrameLoaderClient::dispatchCreatePage):
2188
2189 2007-01-05  Anders Carlsson  <acarlsson@apple.com>
2190
2191         Reviewed by Maciej.
2192
2193         The data returned is now a SharedBuffer so wrap it in an NSData object.
2194         
2195         * WebView/WebDataSource.mm:
2196         (-[WebDataSource data]):
2197
2198 2007-01-04  Adam Roben  <aroben@apple.com>
2199
2200         Reviewed by Geoff, cheered by others.
2201
2202         Dead code elimination.
2203
2204         * WebView/WebHTMLView.m:
2205
2206 2007-01-04  Adam Roben  <aroben@apple.com>
2207
2208         Boo on me for undoing Beth's hard work.
2209
2210         * WebView/WebHTMLView.m:
2211         (-[WebHTMLView menuForEvent:]): Undo a mistaken roll out of r18597.
2212
2213 2007-01-04  David Kilzer  <ddkilzer@webkit.org>
2214
2215         Reviewed by Brady.
2216
2217         - fix http://bugs.webkit.org/show_bug.cgi?id=12111
2218           Uninitialized variable in -[WebDefaultPolicyDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:]
2219
2220         * DefaultDelegates/WebDefaultPolicyDelegate.m: Initialize isDirectory.
2221
2222 2007-01-04  Adam Roben  <aroben@apple.com>
2223
2224         Reviewed by Geoff.
2225
2226         Remove WebKit/AppKit from handling tabbing between subframes.
2227
2228         * WebCoreSupport/WebChromeClient.h: Added new ChromeClient methods for
2229         moving focus out of the WebView.
2230         * WebCoreSupport/WebChromeClient.mm: Ditto.
2231         (WebChromeClient::canTakeFocus):
2232         (WebChromeClient::takeFocus):
2233         * WebCoreSupport/WebFrameBridge.mm:
2234         (-[WebFrameBridge webView]): Added null-check of m_frame.
2235         * WebView/WebHTMLView.m: Removed -[WebHTMLView nextValidKeyView].
2236         (-[WebHTMLView _updateActiveState]): Changed to focus the frame if
2237         WebCore believes it to be the focused frame.
2238         (-[WebHTMLView becomeFirstResponder]): Rewrote to call into
2239         FocusController to place focus correctly within the WebView.
2240
2241 2007-01-04  Anders Carlsson  <acarlsson@apple.com>
2242
2243         Reviewed by Brady.
2244
2245         FrameLoaderClient changed yet again.
2246         
2247         * WebCoreSupport/WebFrameLoaderClient.h:
2248         * WebCoreSupport/WebFrameLoaderClient.mm:
2249         (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
2250         (WebFrameLoaderClient::dispatchWillSendRequest):
2251
2252 2007-01-04  Anders Carlsson  <acarlsson@apple.com>
2253
2254         Reviewed by Adam.
2255
2256         FrameLoaderClient changed again.
2257         
2258         * WebCoreSupport/WebFrameLoaderClient.h:
2259         * WebCoreSupport/WebFrameLoaderClient.mm:
2260         (WebFrameLoaderClient::download):
2261         (WebFrameLoaderClient::willUseArchive):
2262
2263 2007-01-04  Beth Dakin  <bdakin@apple.com>
2264
2265         Reviewed by Adam.
2266
2267         No need to hit test twice.
2268
2269         * WebView/WebHTMLView.m:
2270         (-[WebHTMLView menuForEvent:]):
2271
2272 2007-01-04  Beth Dakin  <bdakin@apple.com>
2273
2274         Reviewed by Adam.
2275
2276         Turn on WebCore context menus. Delete a bunch of WebKit context 
2277         menu code that is no longer needed.
2278
2279         * DefaultDelegates/WebDefaultContextMenuDelegate.m: Removed a lot 
2280         of code from this class. This class only still needs to exist for 
2281         PDF context menus, so we only need to deal with the menu items that 
2282         might possibly be added to a PDF context menu.
2283         (-[WebDefaultUIDelegate 
2284         menuItemWithTag:target:representedObject:]): Same.
2285         (-[WebDefaultUIDelegate 
2286         webView:contextMenuItemsForElement:defaultMenuItems:]): Same.
2287         * WebCoreSupport/WebContextMenuClient.h: Name change and have the 
2288         former getCustomMenuFromDefaultItems function return the 
2289         PlatformMenuDescription since it feels funny to have the client set 
2290         the new platform description.
2291         * WebCoreSupport/WebContextMenuClient.mm: Same.
2292         (WebContextMenuClient::getCustomMenuFromDefaultItems): Same. Also 
2293         move in some code that used to be in _menuForElement.
2294         * WebView/WebHTMLView.m: Deleted a bunch of un-used functions
2295         (-[WebHTMLView menuForEvent:]): Turn on menus, and append the 
2296         Inspect Element item. 
2297         * WebView/WebHTMLViewPrivate.h: Deleted a bunch of un-used 
2298         functions.
2299         * WebView/WebView.mm:
2300         (-[WebView _menuForElement:defaultItems:]): Removed a lot of code 
2301         from _menuForElement that now makes more sense elsewhere. Only PDF 
2302         context menus use this function now. Hopefully we can just get rid 
2303         of it soon, too.
2304
2305 2007-01-04  Anders Carlsson  <acarlsson@apple.com>
2306
2307         Reviewed by Brady.
2308
2309         Update for WebCore changes.
2310         
2311         * WebCoreSupport/WebFrameLoaderClient.h:
2312         * WebCoreSupport/WebFrameLoaderClient.mm:
2313         (WebFrameLoaderClient::download):
2314         (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
2315         (WebFrameLoaderClient::dispatchWillSendRequest):
2316         (WebFrameLoaderClient::dispatchDidReceiveResponse):
2317         (WebFrameLoaderClient::incrementProgress):
2318
2319 2007-01-04  Don Gibson  <dgibson77@gmail.com>
2320
2321         Reviewed by Alexey.
2322
2323         http://bugs.webkit.org/show_bug.cgi?id=11900:
2324         Windows build bustage
2325
2326         * COM/ChromeClientWin.cpp:
2327         (ChromeClientWin::addMessageToConsole):
2328         (ChromeClientWin::runBeforeUnloadConfirmPanel):
2329         * COM/ChromeClientWin.h:
2330         * COM/ContextMenuClientWin.cpp:
2331         (ContextMenuClientWin::contextMenuItemSelected):
2332         * COM/ContextMenuClientWin.h:
2333         * COM/WebFrameLoaderClient.cpp:
2334         (WebFrameLoaderClient::setDocumentViewFromPageCache):
2335         (WebFrameLoaderClient::forceLayout):
2336         (WebFrameLoaderClient::forceLayoutForNonHTML):
2337         (WebFrameLoaderClient::updateGlobalHistoryForStandardLoad):
2338         (WebFrameLoaderClient::updateGlobalHistoryForReload):
2339         (WebFrameLoaderClient::shouldGoToHistoryItem):
2340         (WebFrameLoaderClient::saveScrollPositionAndViewStateToItem):
2341         (WebFrameLoaderClient::restoreScrollPositionAndViewState):
2342         (WebFrameLoaderClient::provisionalLoadStarted):
2343         (WebFrameLoaderClient::saveDocumentViewToPageCache):
2344         (WebFrameLoaderClient::canCachePage):
2345         * COM/WebFrameLoaderClient.h:
2346         * WebKit.vcproj/WebKit.vcproj:
2347
2348 2007-01-03  John Sullivan  <sullivan@apple.com>
2349
2350         * WebView/WebPDFView.mm:
2351         (-[WebPDFView _openWithFinder:]):
2352         Tiger build fix: use [NSNumber initWithInt:] rather than the new [NSNumber initWithInteger:]
2353
2354 2007-01-03  John Sullivan  <sullivan@apple.com>
2355
2356         Reviewed by Kevin Decker
2357
2358         - fixed <rdar://problem/4145714> WebKit's PDFView's "Open in Preview" puts the 
2359           PDF in /tmp, both group and world-readable
2360
2361         * WebView/WebPDFView.mm:
2362         (-[WebPDFView _openWithFinder:]):
2363         Make the file only readable by the current user
2364
2365 2007-01-03  Beth Dakin  <bdakin@apple.com>
2366
2367         Reviewed by John.
2368
2369         Make localized strings for all of the context menu item titles that 
2370         are accessible to WebCore.
2371
2372         * English.lproj/Localizable.strings:
2373         * WebCoreSupport/WebViewFactory.m:
2374         (-[WebViewFactory contextMenuItemTagOpenLinkInNewWindow]):
2375         (-[WebViewFactory contextMenuItemTagDownloadLinkToDisk]):
2376         (-[WebViewFactory contextMenuItemTagCopyLinkToClipboard]):
2377         (-[WebViewFactory contextMenuItemTagOpenImageInNewWindow]):
2378         (-[WebViewFactory contextMenuItemTagDownloadImageToDisk]):
2379         (-[WebViewFactory contextMenuItemTagCopyImageToClipboard]):
2380         (-[WebViewFactory contextMenuItemTagOpenFrameInNewWindow]):
2381         (-[WebViewFactory contextMenuItemTagCopy]):
2382         (-[WebViewFactory contextMenuItemTagGoBack]):
2383         (-[WebViewFactory contextMenuItemTagGoForward]):
2384         (-[WebViewFactory contextMenuItemTagStop]):
2385         (-[WebViewFactory contextMenuItemTagReload]):
2386         (-[WebViewFactory contextMenuItemTagCut]):
2387         (-[WebViewFactory contextMenuItemTagPaste]):
2388         (-[WebViewFactory contextMenuItemTagNoGuessesFound]):
2389         (-[WebViewFactory contextMenuItemTagIgnoreSpelling]):
2390         (-[WebViewFactory contextMenuItemTagLearnSpelling]):
2391         (-[WebViewFactory contextMenuItemTagSearchInSpotlight]):
2392         (-[WebViewFactory contextMenuItemTagSearchWeb]):
2393         (-[WebViewFactory contextMenuItemTagLookUpInDictionary]):
2394         (-[WebViewFactory contextMenuItemTagOpenLink]):
2395         (-[WebViewFactory contextMenuItemTagIgnoreGrammar]):
2396         (-[WebViewFactory contextMenuItemTagSpellingMenu]):
2397         (-[WebViewFactory contextMenuItemTagShowSpellingPanel:]):
2398         (-[WebViewFactory contextMenuItemTagCheckSpelling]):
2399         (-[WebViewFactory contextMenuItemTagCheckSpellingWhileTyping]):
2400         (-[WebViewFactory contextMenuItemTagCheckGrammarWithSpelling]):
2401         (-[WebViewFactory contextMenuItemTagFontMenu]):
2402         (-[WebViewFactory contextMenuItemTagShowFonts]):
2403         (-[WebViewFactory contextMenuItemTagBold]):
2404         (-[WebViewFactory contextMenuItemTagItalic]):
2405         (-[WebViewFactory contextMenuItemTagUnderline]):
2406         (-[WebViewFactory contextMenuItemTagOutline]):
2407         (-[WebViewFactory contextMenuItemTagStyles]):
2408         (-[WebViewFactory contextMenuItemTagShowColors]):
2409         (-[WebViewFactory contextMenuItemTagSpeechMenu]):
2410         (-[WebViewFactory contextMenuItemTagStartSpeaking]):
2411         (-[WebViewFactory contextMenuItemTagStopSpeaking]):
2412         (-[WebViewFactory contextMenuItemTagWritingDirectionMenu]):
2413         (-[WebViewFactory contextMenuItemTagDefaultDirection]):
2414         (-[WebViewFactory contextMenuItemTagLeftToRight]):
2415         (-[WebViewFactory contextMenuItemTagRightToLeft]):
2416
2417 2007-01-03  Brady Eidson  <beidson@apple.com>
2418
2419         Reviewed by John Sullivan
2420
2421         In the Bookmarks View/History View, favicon may be the incorrect size
2422
2423         * History/WebHistoryItem.mm:
2424         (-[WebHistoryItem icon]): Call to the WebIconDatabase until a WebCore issue is resolved
2425
2426 2007-01-03  Adele Peterson  <adele@apple.com>
2427
2428         Reviewed by Darin.
2429
2430         - Fix for <rdar://problem/4455147> Safari allows division slash character in URLs, which looks like slash character (not fixed by IDNScriptWhiteList.txt)
2431
2432         * Misc/WebNSURLExtras.m: (allCharactersInIDNScriptWhiteList): Always disallow the division slash character.
2433
2434 2007-01-02  Brady Eidson <beidson@apple.com>
2435
2436         Controversially reviewed by Tim H. and Maciej
2437
2438         Fixes http://bugs.webkit.org/show_bug.cgi?id=12086, http://bugs.webkit.org/show_bug.cgi?id=12088, 
2439         possibly http://bugs.webkit.org/show_bug.cgi?id=12087, and probably a slew of others
2440
2441         WebHistoryItems returned from the WebBackForwardList accessors were being release/retained out-of-order
2442         by the Safari app.  This bug never surfaced before because the WebBackForwardList had a retain on the 
2443         item, preventing deallocation. Since the items are now just temporary wrappers, the list 
2444         is no longer actually retaining them.
2445
2446         This solution is to simulate the ownership with a [[id retain] autorelease] - gross, but maybe the 
2447         only solution for now...  =/
2448
2449         We can possibly consider reverting this fix at a later date - that task is marked by
2450         <rdar://problem/4905705>
2451
2452         * History/WebBackForwardList.mm:
2453         (-[WebBackForwardList backItem]):
2454         (-[WebBackForwardList currentItem]):
2455         (-[WebBackForwardList forwardItem]):
2456         (-[WebBackForwardList itemAtIndex:]):
2457
2458 2007-01-02  Beth Dakin  <bdakin@apple.com>
2459
2460         Reviewed by Geoff.
2461
2462         Remove un-used function.
2463
2464         * WebCoreSupport/WebContextMenuClient.h:
2465         * WebCoreSupport/WebContextMenuClient.mm:
2466
2467 2007-01-02  Brady Eidson  <beidson@apple.com>
2468
2469         Reviewed extensively and repeatedly by Darin
2470
2471         <rdar://problem/4887137> - WebCore Back/Forward Cache 
2472         Most things not specifically commented on in the ChangeLog can be summed up as 
2473         "Do things exactly the same way as we used to, but just stick in WebCore-land as much as possible"
2474
2475         * History/WebBackForwardList.mm:
2476         (kitPrivate): Convenience functions to help with subbing "WebBackForwardListPrivate" for WebCore::BackForwardList
2477         (core):
2478         (backForwardListWrappers): A HashMap pattern used to map WebCore objects to their WebKit counterpart
2479         (kit):
2480         (+[WebBackForwardList setDefaultPageCacheSizeIfNecessary]):
2481         (-[WebBackForwardList initWithWebCoreBackForwardList:]):
2482         (-[WebBackForwardList init]):
2483         (-[WebBackForwardList dealloc]):
2484         (-[WebBackForwardList finalize]):
2485         (-[WebBackForwardList _close]):
2486         (-[WebBackForwardList addItem:]):
2487         (-[WebBackForwardList removeItem:]):
2488         (-[WebBackForwardList containsItem:]):
2489         (-[WebBackForwardList goBack]):
2490         (-[WebBackForwardList goForward]):
2491         (-[WebBackForwardList goToItem:]):
2492         (-[WebBackForwardList backItem]):
2493         (-[WebBackForwardList currentItem]):
2494         (-[WebBackForwardList forwardItem]):
2495         (vectorToNSArray):
2496         (-[WebBackForwardList backListWithLimit:]):
2497         (-[WebBackForwardList forwardListWithLimit:]):
2498         (-[WebBackForwardList capacity]):
2499         (-[WebBackForwardList setCapacity:]):
2500         (-[WebBackForwardList description]):
2501         (-[WebBackForwardList _clearPageCache]):
2502         (-[WebBackForwardList setPageCacheSize:]):
2503         (-[WebBackForwardList pageCacheSize]):
2504         (-[WebBackForwardList _usesPageCache]):
2505         (-[WebBackForwardList backListCount]):
2506         (-[WebBackForwardList forwardListCount]):
2507         (-[WebBackForwardList itemAtIndex:]):
2508         * History/WebBackForwardListInternal.h: Added.
2509
2510         * History/WebHistory.m: Removed.
2511         * History/WebHistory.mm: Added - Needed to be .mm to accept C++ header style
2512         (-[_WebCoreHistoryProvider containsItemForURLLatin1:length:]):
2513         (-[_WebCoreHistoryProvider containsItemForURLUnicode:length:]):
2514
2515         * History/WebHistoryItem.mm:
2516         (kitPrivate): Same pattern as WebBackForwardList
2517         (core):
2518         (historyItemWrappers):
2519         (WKNotifyHistoryItemChanged):
2520         (-[WebHistoryItem init]):
2521         (-[WebHistoryItem initWithURLString:title:lastVisitedTimeInterval:]):
2522         (-[WebHistoryItem dealloc]):
2523         (-[WebHistoryItem finalize]):
2524         (-[WebHistoryItem copyWithZone:]):
2525         (-[WebHistoryItem URLString]):
2526         (-[WebHistoryItem originalURLString]):
2527         (-[WebHistoryItem title]):
2528         (-[WebHistoryItem setAlternateTitle:]):
2529         (-[WebHistoryItem alternateTitle]):
2530         (-[WebHistoryItem icon]):
2531         (-[WebHistoryItem lastVisitedTimeInterval]):
2532         (-[WebHistoryItem hash]):
2533         (-[WebHistoryItem isEqual:]):
2534         (-[WebHistoryItem description]):
2535         (kit):
2536         (+[WebHistoryItem entryWithURL:]):
2537         (+[WebHistoryItem initWindowWatcherIfNecessary]):
2538         (-[WebHistoryItem initWithURL:target:parent:title:]):
2539         (-[WebHistoryItem initWithWebCoreHistoryItem:]):
2540         (-[WebHistoryItem setTitle:]):
2541         (-[WebHistoryItem setVisitCount:]):
2542         (-[WebHistoryItem setViewState:]):
2543         (-[WebHistoryItem _mergeAutoCompleteHints:]):
2544         (-[WebHistoryItem initFromDictionaryRepresentation:]):
2545         (-[WebHistoryItem scrollPoint]):
2546         (-[WebHistoryItem _transientPropertyForKey:]):
2547         (-[WebHistoryItem _setTransientProperty:forKey:]):
2548         (-[WebHistoryItem dictionaryRepresentation]):
2549         (-[WebHistoryItem target]):
2550         (-[WebHistoryItem isTargetItem]):
2551         (-[WebHistoryItem visitCount]):
2552         (-[WebHistoryItem RSSFeedReferrer]):
2553         (-[WebHistoryItem setRSSFeedReferrer:]):
2554         (-[WebHistoryItem children]):
2555         (-[WebHistoryItem setAlwaysAttemptToUsePageCache:]):
2556         (-[WebHistoryItem URL]):
2557         (-[WebHistoryItem _setLastVisitedTimeInterval:]):
2558         (-[WebHistoryItem _lastVisitedDate]):
2559         (-[WebHistoryItem targetItem]):
2560         (+[WebHistoryItem _releaseAllPendingPageCaches]):
2561         (-[WebWindowWatcher windowWillClose:]):
2562         * History/WebHistoryItemInternal.h:
2563         * History/WebHistoryItemPrivate.h:
2564
2565         * WebCoreSupport/WebFrameBridge.mm:
2566         * WebCoreSupport/WebFrameLoaderClient.h:
2567         * WebCoreSupport/WebFrameLoaderClient.mm:
2568         (WebFrameLoaderClient::setDocumentViewFromPageCache):
2569         (WebFrameLoaderClient::detachedFromParent1):
2570         (WebFrameLoaderClient::loadedFromPageCache):
2571         (WebFrameLoaderClient::updateGlobalHistoryForStandardLoad):
2572         (WebFrameLoaderClient::updateGlobalHistoryForReload):
2573         (WebFrameLoaderClient::shouldGoToHistoryItem):
2574         (WebFrameLoaderClient::frameLoadCompleted):
2575         (WebFrameLoaderClient::saveScrollPositionAndViewStateToItem):
2576         (WebFrameLoaderClient::restoreScrollPositionAndViewState):
2577         (WebFrameLoaderClient::provisionalLoadStarted):
2578         (WebFrameLoaderClient::setTitle):
2579         (WebFrameLoaderClient::saveDocumentViewToPageCache):
2580         (WebFrameLoaderClient::canCachePage):
2581
2582         * WebCoreSupport/WebSystemInterface.m:
2583         (InitWebCoreSystemInterface):
2584
2585         * WebKit.xcodeproj/project.pbxproj:
2586
2587         * WebView/WebDataSource.mm:
2588         * WebView/WebDataSourceInternal.h:
2589
2590         * WebView/WebFrame.mm:
2591         (-[WebFramePrivate dealloc]):
2592         (-[WebFrame _canCachePage]):
2593         (-[WebFrame _loadURL:referrer:intoChild:]):
2594         * WebView/WebFrameInternal.h:
2595
2596         * WebView/WebFrameView.mm:
2597         (-[WebFrameView initWithFrame:]):
2598         (-[WebFrameView keyDown:]):
2599
2600         * WebView/WebHTMLView.m:
2601         (-[WebHTMLView closeIfNotCurrentView]): Added for a dirty hack in WebCore that is marked with a FIXME Radar
2602         * WebView/WebHTMLViewInternal.h:
2603
2604         * WebView/WebView.mm:
2605         (-[WebViewPrivate init]):
2606         (-[WebViewPrivate dealloc]):
2607         (-[WebView _close]):
2608         (-[WebView _loadBackForwardListFromOtherView:]):
2609         (-[WebView _commonInitializationWithFrameName:groupName:]):
2610         (-[WebView initWithCoder:]):
2611         (-[WebView backForwardList]):
2612         (-[WebView goBack]):
2613         (-[WebView goForward]):
2614         (-[WebView goToBackForwardItem:]):
2615         (-[WebView canGoBack]):
2616         (-[WebView canGoForward]):
2617
2618 2007-01-02  John Sullivan  <sullivan@apple.com>
2619
2620         Reviewed by Kevin Decker
2621
2622         - fixed <rdar://problem/4892525> Cannot open PDF in Preview if you attempted to 
2623           open it in Preview while PDF was loading
2624
2625         * WebView/WebPDFView.mm:
2626         (-[WebPDFView menuForEvent:]):
2627         added comment
2628         (-[WebPDFView validateUserInterfaceItem:]):
2629         disable this menu item when there's no document yet
2630         (-[WebPDFView _openWithFinder:]):
2631         If this is invoked when there is no document yet (e.g. via the PDFKit delegate method), 
2632         just beep and return. I should make a nice error message here, but I'll do that separately.
2633
2634 2007-01-03  Nikolas Zimmermann  <zimmermann@kde.org>
2635
2636         Reviewed by Timothy.
2637
2638         Fix inspection of RenderSVGInlineText objects (#text nodes in SVG documents).
2639
2640         * WebInspector/WebInspector.m:
2641         (-[WebInspector _highlightNode:]):
2642
2643 2007-01-02  Beth Dakin  <bdakin@apple.com>
2644
2645         Reviewed by Darin.
2646
2647         Fix bug with WebCore context menu item "Copy Image."
2648
2649         * WebCoreSupport/WebContextMenuClient.mm:
2650         (WebContextMenuClient::copyImageToClipboard): We must call 
2651         declareTypes on the pasteboard.
2652
2653 2006-12-27  Mitz Pettel  <mitz@webkit.org>
2654
2655         Reviewed by Geoff.
2656
2657         - fix http://bugs.webkit.org/show_bug.cgi?id=9403
2658           Red outline from Web Inspector appears above all other OS X windows
2659
2660         Made the window containing the highlight a child window of the window
2661         containing the view.
2662
2663         * WebInspector/WebNodeHighlight.m:
2664         (-[WebNodeHighlight initWithBounds:andRects:forView:]):
2665         (-[WebNodeHighlight dealloc]):
2666         (-[WebNodeHighlight expire]):
2667
2668 2006-12-27  Matt Lilek  <pewtermoose@gmail.com>
2669
2670         Reviewed by Tim H.
2671         
2672         Bug 11993: REGRESSION(r18320): Web Inspector scroll bars not drawn
2673         http://bugs.webkit.org/show_bug.cgi?id=11993
2674         
2675         AppleVerticalScrollbar tries to set a NaN value as the scroll height which
2676         causes DOM Exceptions after r18320.  This overrides the _setObjectLength
2677         method and checks for NaN until a system update can fix this.  See rdar://4901491
2678
2679         * WebInspector/webInspector/inspector.html:
2680         * WebInspector/webInspector/inspector.js:
2681
2682 2006-12-27  Geoffrey Garen  <ggaren@apple.com>
2683
2684         Reviewed by Oliver Hunt.
2685         
2686         Fixed <rdar://problem/4901629> Crash occurs at WebCore::Frame::page() 
2687         after closing window containing flash content
2688         
2689         No testcase because we can't open and close windows in DRT.
2690         
2691         I can't reproduce this crash, but from the backtrace it's clear that it 
2692         occured because of a NULL frame object. Since it's valid for a frame to
2693         be NULL, I've added NULL checks.
2694
2695         * Plugins/WebBaseNetscapePluginView.mm:
2696         (-[WebBaseNetscapePluginView sendEvent:]):
2697         (-[WebBaseNetscapePluginView requestWithURLCString:]):
2698         (-[WebBaseNetscapePluginView getVariable:value:]):
2699
2700 2006-12-27  Geoffrey Garen  <ggaren@apple.com>
2701
2702         Reviewed by Darin Adler.
2703         
2704         Updated <rdar://problem/4871518> fix based on Darin's comments.
2705
2706         Instead of searching the frame tree to retrieve the new frame, put it in
2707         a RefPtr, and then explicitly check for its removal. This option is slightly
2708         more efficient, and it avoids problems that can occur due to frame name collision.
2709         
2710         * WebCoreSupport/WebFrameBridge.mm:
2711         (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]):
2712
2713 2006-12-26  Geoffrey Garen  <ggaren@apple.com>
2714
2715         Reviewed by Eric Seidel.
2716
2717         Fixed <rdar://problem/4740328> Safari crash on quit in _NPN_ReleaseObject 
2718         from KJS::Bindings::CInstance::~CInstance
2719         
2720         The essence of this change is that WebKit shouldn't meddle in plug-in
2721         lifetime, since WebCore already manages it. The rest is details.
2722         
2723         * Plugins/WebBaseNetscapePluginView.mm:
2724         (-[WebBaseNetscapePluginView removeTrackingRect]): Autorelease our window
2725         instead of releasing it, since we might hold the last reference to our window,
2726         and releasing it immediately would crash AppKit.
2727         (-[WebBaseNetscapePluginView resetTrackingRect]):
2728
2729         * Plugins/WebNetscapePluginEmbeddedView.h:
2730         * Plugins/WebNetscapePluginEmbeddedView.m:
2731         (-[WebNetscapePluginEmbeddedView dataSource]): Use our DOMElement to access
2732         our WebFrame, since we don't keep around a direct pointer to our WebFrame
2733         anymore.
2734
2735         * Plugins/WebNullPluginView.h:
2736         * Plugins/WebNullPluginView.m:
2737         (-[WebNullPluginView initWithFrame:error:DOMElement:]):
2738         (-[WebNullPluginView dealloc]):
2739         (-[WebNullPluginView viewDidMoveToWindow]): Use our DOMElement to access
2740         our WebFrame, as above.
2741
2742         * WebCoreSupport/WebFrameBridge.mm: Don't call _addPlugInView because it
2743         doesn't exist anymore. Do pass a DOMElement to WebNullPluginView's initializer,
2744         so it can access its frame like WebNetscapePluginEmbeddedView does.
2745         (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
2746         (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]):
2747
2748         * WebCoreSupport/WebFrameLoaderClient.h:
2749         * WebCoreSupport/WebFrameLoaderClient.mm: Removed didCloseDocument. It had
2750         two purposes -- one unnecessary, one harmful:
2751         (1) NULL out plug-ins' weak references to their frames. Unnecessary. Having 
2752         plug-ins access their frames through their DOM elements solves this problem.
2753         (2) Unload plug-ins. Harmful. If a plug-in unloads before WebCore is done
2754         with it, WebCore will access unmapped memory. Also unnecessary. WebCore
2755         Widgets take care of calling -removeFromSuperview on their NSViews, which
2756         is sufficient for stopping plug-ins.
2757
2758         * WebKit.xcodeproj/project.pbxproj: Made WebNullPluginView.m ObjC++.
2759
2760         * WebView/WebFrame.mm: Removed _addPlugInView, since it was only used to
2761         call -setWebFrame, which is gone.
2762         (-[WebFramePrivate dealloc]):
2763         * WebView/WebFrameInternal.h: Removed plugInViews, since it was only used
2764         by _addPlugInView, which is gone.
2765
2766 2006-12-26  Geoffrey Garen  <ggaren@apple.com>
2767
2768         Reviewed by Eric Seidel.
2769
2770         Some cleanup in preparation for fixing <rdar://problem/4740328> Safari 
2771         crash on quit in _NPN_ReleaseObject from KJS::Bindings::CInstance::~CInstance
2772         
2773         Renamed "installedPlugins" to "sharedDatabase." This better follows 
2774         the Cocoa naming scheme, and calls out the key attribute that produced this 
2775         crash -- namely, that the database is shared throughout the process.
2776         
2777         -installedPlugins is actually a part of SPI, but a global search showed
2778         that it had no users.
2779
2780         * Plugins/WebPluginDatabase.h:
2781         * Plugins/WebPluginDatabase.m:
2782         (+[WebPluginDatabase sharedDatabase]):
2783         (-[WebPluginDatabase refresh]):
2784         (-[WebPluginDatabase _plugInPaths]):
2785         (-[WebPluginDatabase _removePlugin:]):
2786         * WebCoreSupport/WebViewFactory.m:
2787         (-[WebViewFactory pluginsInfo]):
2788         (-[WebViewFactory refreshPlugins:]):
2789         (-[WebViewFactory pluginSupportsMIMEType:]):
2790         * WebView/WebView.mm:
2791         (+[WebView _supportedMIMETypes]):
2792         (+[WebView _viewClass:andRepresentationClass:forMIMEType:]):
2793         (-[WebView _close]):
2794         (-[WebView _pluginForMIMEType:]):
2795         (-[WebView _pluginForExtension:]):
2796         (-[WebView _isMIMETypeRegisteredAsPlugin:]):
2797
2798 2006-12-25  Geoffrey Garen  <ggaren@apple.com>
2799
2800         Reviewed by Adam Roben.
2801         
2802         Fixed <rdar://problem/4778898> REGRESSION: crash in getInstanceForView() 
2803         when quitting from kcbs.com
2804
2805         No testcase because we can't open and close windows in DRT.
2806
2807         The crash was caused by deallocating plug-ins that were later referenced
2808         in the unload event handler.
2809
2810         * Plugins/WebBaseNetscapePluginView.mm: Don't call stop on ourselves because
2811         we may destroy our plugin before the unload handler fires. Also, we don't
2812         need to, since didCloseDocument will do it for us.
2813
2814         (-[WebBaseNetscapePluginView addWindowObservers]): We don't need to listen
2815         for windowWillClose anymore, since we don't want to call -stop on ourselves.
2816         (-[WebBaseNetscapePluginView removeWindowObservers]): ditto.
2817
2818         * WebCoreSupport/WebFrameLoaderClient.h:
2819         * WebCoreSupport/WebFrameLoaderClient.mm:
2820         (WebFrameLoaderClient::didCloseDocument): Renamed from "willCloseDocument."
2821
2822 2006-12-25  Geoffrey Garen  <ggaren@apple.com>
2823
2824         More "plugin" => "pluginPackage" renaming that I forgot to check in.
2825         
2826         * Plugins/WebBaseNetscapePluginView.h:
2827         * Plugins/WebBaseNetscapePluginView.mm:
2828         (-[WebBaseNetscapePluginView setPluginPackage:]):
2829         * Plugins/WebNetscapePluginEmbeddedView.h:
2830         * Plugins/WebNetscapePluginEmbeddedView.m:
2831         (-[WebNetscapePluginEmbeddedView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]):
2832         * WebCoreSupport/WebFrameBridge.mm:
2833         (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
2834         (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]):
2835
2836 2006-12-25  Geoffrey Garen  <ggaren@apple.com>
2837
2838         Reviewed by Eric Seidel.
2839         
2840         Fixed crash when opening view source window.
2841
2842         * WebView/WebView.mm:
2843         (-[WebView initWithCoder:]): Don't use the WebView until calling
2844         _commonInitialization...
2845
2846 2006-12-25  Geoffrey Garen  <ggaren@apple.com>
2847
2848         Reviewed by Oliver Hunt.
2849         
2850         Removed WebCoreSettings, cleaned up WebCore::Settings.
2851
2852         * WebView/WebFrame.mm: Added helper functions for converting between
2853         WebKitEditableLinkBehavior and WebCore::EditableLinkBehavior. I'm not sure
2854         that this is the best place for these functions, but it's where all the
2855         other functions like them reside.
2856         (core):
2857         (kit):
2858         * WebView/WebFrameInternal.h:
2859
2860         * WebView/WebView.mm: Removed uses of WebCoreSettings. Replaced with direct
2861         use of underlying page's settings.
2862
2863 2006-12-25  Geoffrey Garen  <ggaren@apple.com>
2864
2865         Reviewed by Oliver Hunt.
2866         
2867         Some refactoring in preparation for fixing <rdar://problem/4778898> 
2868         REGRESSION: crash in getInstanceForView() when quitting from kcbs.com
2869         
2870         Two renames:
2871             - "plugin" => "pluginPackage" (since the type is WebNetscapePluginPackage *)
2872             - "instance" and/or "pluginPointer" => plugin (since NPP is an opaque handle to a plug-in)
2873         
2874         Removed braces around single-line 'if' statements.
2875         
2876         Made plugin a pointer instead of an inline ivar. This allows us to NULL
2877         it out once we call NPP_Destroy on it.
2878         
2879         Added helper functions for creating and destroying plugin. The destroy function
2880         NULLs out plugin, which helps with debugging.
2881             
2882         (-[WebBaseNetscapePluginView willCallPlugInFunction]): Added an ASSERT
2883         to catch attempts to call functions on destroyed plug-ins.
2884
2885         (-[WebBaseNetscapePluginView _createPlugin]): New helper function.
2886         (-[WebBaseNetscapePluginView _destroyPlugin]): New helper function.
2887
2888 2006-12-24  David Kilzer  <ddkilzer@webkit.org>
2889
2890         Removed empty directory.
2891
2892         * WebKit/Loader: Removed.
2893
2894 2006-12-22  Geoffrey Garen  <ggaren@apple.com>
2895
2896         Reviewed by Brady Eidson.
2897         
2898         Fixed <rdar://problem/4871518> Leopard9A321: Crash visiting www.audible.com 
2899         (WebCore::FrameLoader::loadSubframe)
2900
2901         * WebCoreSupport/WebFrameBridge.mm:
2902         (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]):
2903         - The fix: 
2904             Changed to re-fetch the child frame we're trying to load before returning it,
2905             since its onload handler may have removed it from the document. This
2906             allows us to treat a removed frame like a frame that never loaded.
2907         
2908         - Plus some cleanup:
2909             - Changed to return a WebCore::Frame* instead of a WebFrameBridge *,
2910             to simplify some code.
2911             - Grouped ObjC objects by usage, and moved calls to -release so that they
2912             immediately follow the calls that retain.
2913
2914 2006-12-21  John Sullivan  <sullivan@apple.com>
2915
2916         Reviewed by Geoff Garen
2917
2918         - improved concept and implementation of my previous checkin after discussing with Darin
2919
2920         * WebView/WebViewPrivate.h:
2921         * WebView/WebView.mm:
2922         (-[WebView setHoverFeedbackSuspended:]):
2923         renamed from setIgnoresMouseMovedEvents, and now tells the main WebHTMLView (if any) that this state has
2924         changed. Telling just the main WebHTMLView is a bit of an implementation hack. Hopefully someday we can
2925         rework the document architecture and make this kind of thing less hacky (but this is following existing
2926         customs, so I don't feel too bad)
2927         (-[WebView isHoverFeedbackSuspended]):
2928         renamed from ignoresMouseMovedEvents
2929
2930         * WebView/WebHTMLViewInternal.h:
2931         declare _hoverFeedbackSuspendedChanged
2932
2933         * WebView/WebHTMLView.m:
2934         (-[WebHTMLView _updateMouseoverWithEvent:]):
2935         test the webView's state of the hit-tested WebHTMLView rather than self 
2936         (-[WebHTMLView _hoverFeedbackSuspendedChanged]):
2937         generate a fake mouse-moved event, which simulates the mouse moving away from
2938         the current element or back over it
2939
2940 2006-12-21  Darin Adler  <darin@apple.com>
2941
2942         Reviewed by Oliver.
2943
2944         * WebInspector/webInspector/inspector.js: Added default values for the new CSS
2945         properties so they don't appear in the inspector when their values are
2946         uninteresting.
2947
2948 2006-12-21  John Sullivan  <sullivan@apple.com>
2949
2950         Reviewed by Geoff Garen
2951
2952         - added WebKit support for making a web page temporarily ignore mouse movements
2953
2954         * WebView/WebViewPrivate.h:
2955         declare ignoresMouseMovedEvents and setIgnoresMouseMovedEvents:
2956
2957         * WebView/WebView.mm:
2958         added ignoresMouseMovedEvents boolean field to _private data structure
2959         (-[WebView setIgnoresMouseMovedEvents:]):
2960         set new boolean field
2961         (-[WebView ignoresMouseMovedEvents]):
2962         return new boolean field
2963
2964         * WebView/WebHTMLView.m:
2965         (-[WebHTMLView _updateMouseoverWithEvent:]):
2966         bail out right away if [[self _webView] ignoresMouseMovedEvents]
2967
2968 2006-12-21  Mark Rowe  <bdash@webkit.org>
2969
2970         Reviewed by Geoff.
2971
2972         http://bugs.webkit.org/show_bug.cgi?id=11888
2973         Bug 11888: REGRESSION (r18320): Web Inspector panes broken
2974
2975         * WebInspector/webInspector/inspector.js: Use removeProperty to reset a style property to its
2976         initial value.  Bail out early from updateNodePane if Inspector has not yet been set.
2977
2978 2006-12-19  John Sullivan  <sullivan@apple.com>
2979
2980         Reviewed by Darin
2981
2982         - fix for unrepro infinite recursion bug:
2983         <rdar://problem/4448181> CrashTracer: 154 crashes in Safari at com.apple.AppKit: 
2984         -[NSView isDescendantOf:] + 24; infinite recursion in makeFirstResponder logic
2985
2986         * WebView/WebView.mm:
2987         added becomingFirstResponder BOOL to private struct
2988         (-[WebView becomeFirstResponder]):
2989         use _private->becomingFirstResponder to guard against infinite recursion; complain on
2990         debug builds if we run into this problem
2991
2992 2006-12-19  Timothy Hatcher  <timothy@apple.com>
2993
2994         Reviewed by Darin.
2995
2996         <rdar://problem/4891774> Local WebCore/WebBrowser builds fail in 9A328 due to warning about ObjC-2.0 language features
2997
2998         * WebKit.xcodeproj/project.pbxproj:
2999
3000 2006-12-18  Ada Chan  <adachan@apple.com>
3001
3002         Reviewed by Adam.
3003         
3004         Moved canRunBeforeUnloadConfirmPanel, runBeforeUnloadConfirmPanel, and closeWindowSoon
3005         from WebCoreFrameBridge to Chrome.
3006
3007         * COM/ChromeClientWin.cpp:
3008         (ChromeClientWin::canRunBeforeUnloadConfirmPanel):
3009         (ChromeClientWin::runBeforeUnloadConfirmPanel):
3010         (ChromeClientWin::closeWindowSoon):
3011         * COM/ChromeClientWin.h:
3012         * WebCoreSupport/WebChromeClient.h:
3013         * WebCoreSupport/WebChromeClient.mm:
3014         (WebChromeClient::canRunBeforeUnloadConfirmPanel):
3015         (WebChromeClient::runBeforeUnloadConfirmPanel):
3016         (WebChromeClient::closeWindowSoon):
3017         * WebCoreSupport/WebFrameBridge.mm:
3018
3019 2006-12-18  Alice Liu  <alice.liu@apple.com>
3020
3021         Reviewed by Adam.
3022
3023         Have the Editor handle deletion instead of WebHTMLView
3024
3025         * WebKitPrefix.h:
3026         Turned on WebCore deletion
3027
3028         * WebView/WebHTMLViewInternal.h:
3029         Moved ownership of startNewKillRingSequence to the WebCore::Editor
3030
3031         * WebView/WebHTMLView.m:
3032         (-[NSArray becomeFirstResponder]):
3033         Use the Editor's startNewKillRingSequence flag
3034
3035         (-[NSArray deleteForward:]):
3036         (-[NSArray deleteBackward:]):
3037         (-[NSArray deleteWordForward:]):
3038         (-[NSArray deleteWordBackward:]):
3039         (-[NSArray deleteToBeginningOfLine:]):
3040         (-[NSArray deleteToEndOfLine:]):
3041         (-[NSArray deleteToBeginningOfParagraph:]):
3042         (-[NSArray deleteToEndOfParagraph:]):
3043         (-[NSArray deleteToMark:]):
3044         use Editor::deleteWithDirection instead of WebHTMLView's
3045
3046 2006-12-16  Adele Peterson  <adele@apple.com>
3047
3048         Reviewed by Adam.
3049
3050         WebKit part of fix for:
3051         <rdar://problem/4463829> Switch to use new search field implementation for <input type="search">
3052
3053         * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Initialize WKDrawTextFieldCellFocusRing.
3054         * WebInspector/webInspector/inspector.css: Set -webkit-user-select:text and text-shadow:none on the search field.
3055           These are both properties that we didn't honor in the old control, and the inherited values didn't work or look right.
3056
3057 2006-12-16  Beth Dakin  <bdakin@apple.com>
3058
3059         Reviewed by Adam.
3060
3061         WebKit side of making WebCore context menus support state and
3062         enabled/disabled.
3063
3064         * WebCoreSupport/WebContextMenuClient.h: contextMenuItemSelected
3065         takes a pointer to the parentMenu now since menu items no longer
3066         hold onto it.
3067         * WebCoreSupport/WebContextMenuClient.mm: Same.
3068         (WebContextMenuClient::contextMenuItemSelected): Same.
3069         * WebView/WebHTMLView.m: Must call setAutoenablesItems:NO on our
3070         menu.
3071         (-[NSArray menuForEvent:]):
3072         * WebView/WebUIDelegatePrivate.h: No need for if-def.
3073
3074 2006-12-15  Anders Carlsson  <acarlsson@apple.com>
3075
3076         Reviewed by Geoff.
3077
3078         Update for WebCore changes.
3079         
3080         * WebCoreSupport/WebFrameLoaderClient.h:
3081         * WebCoreSupport/WebFrameLoaderClient.mm:
3082         (WebFrameLoaderClient::dispatchIdentifierForInitialRequest):
3083         * WebView/WebDataSource.mm:
3084         (-[WebDataSource response]):
3085
3086 2006-12-15  Anders Carlsson  <acarlsson@apple.com>
3087
3088         Reviewed by Darin.
3089
3090         Update for WebCore changes.
3091         
3092         * WebCoreSupport/WebFrameLoaderClient.h:
3093         * WebCoreSupport/WebFrameLoaderClient.mm:
3094         (WebFrameLoaderClient::willUseArchive):
3095         * WebView/WebDataSource.mm:
3096         (-[WebDataSource _URLForHistory]):
3097
3098 2006-12-15  Marvin Decker  <marv.decker@gmail.com>
3099
3100         Reviewed by Darin and Alexey.
3101
3102         Fix the Windows build, move various Client implementations out of
3103         WebCore and into WebKit.
3104
3105         * COM/ChromeClientWin.cpp: Added.
3106         (ChromeClientWin::~ChromeClientWin):
3107         (ChromeClientWin::chromeDestroyed):
3108         (ChromeClientWin::setWindowRect):
3109         (ChromeClientWin::windowRect):
3110         (ChromeClientWin::pageRect):
3111         (ChromeClientWin::scaleFactor):
3112         (ChromeClientWin::focus):
3113         (ChromeClientWin::unfocus):
3114         (ChromeClientWin::createWindow):
3115         (ChromeClientWin::createModalDialog):
3116         (ChromeClientWin::show):
3117         (ChromeClientWin::canRunModal):
3118         (ChromeClientWin::runModal):
3119         (ChromeClientWin::setToolbarsVisible):
3120         (ChromeClientWin::toolbarsVisible):
3121         (ChromeClientWin::setStatusbarVisible):
3122         (ChromeClientWin::statusbarVisible):
3123         (ChromeClientWin::setScrollbarsVisible):
3124         (ChromeClientWin::scrollbarsVisible):
3125         (ChromeClientWin::setMenubarVisible):
3126         (ChromeClientWin::menubarVisible):
3127         (ChromeClientWin::setResizable):
3128         (ChromeClientWin::addMessageToConsole):
3129         * COM/ChromeClientWin.h: Added.
3130         * COM/ContextMenuClientWin.cpp: Added.
3131         (ContextMenuClientWin::~ContextMenuClientWin):
3132         (ContextMenuClientWin::contextMenuDestroyed):
3133         (ContextMenuClientWin::addCustomContextMenuItems):
3134         (ContextMenuClientWin::contextMenuItemSelected):
3135         (ContextMenuClientWin::copyLinkToClipboard):
3136         (ContextMenuClientWin::downloadURL):
3137         (ContextMenuClientWin::copyImageToClipboard):
3138         (ContextMenuClientWin::lookUpInDictionary):
3139         (ContextMenuClientWin::speak):
3140         (ContextMenuClientWin::stopSpeaking):
3141         * COM/ContextMenuClientWin.h: Added.
3142         * COM/EditorClientWin.cpp: Added.
3143         (EditorClientWin::~EditorClientWin):
3144         (EditorClientWin::pageDestroyed):
3145         (EditorClientWin::shouldDeleteRange):
3146         (EditorClientWin::shouldShowDeleteInterface):
3147         (EditorClientWin::smartInsertDeleteEnabled):
3148         (EditorClientWin::isContinuousSpellCheckingEnabled):
3149         (EditorClientWin::toggleContinuousSpellChecking):
3150         (EditorClientWin::isGrammarCheckingEnabled):
3151         (EditorClientWin::toggleGrammarChecking):
3152         (EditorClientWin::spellCheckerDocumentTag):
3153         (EditorClientWin::selectWordBeforeMenuEvent):
3154         (EditorClientWin::isEditable):
3155         (EditorClientWin::shouldBeginEditing):
3156         (EditorClientWin::shouldEndEditing):
3157         (EditorClientWin::shouldInsertNode):
3158         (EditorClientWin::shouldInsertText):
3159         (EditorClientWin::shouldApplyStyle):
3160         (EditorClientWin::didBeginEditing):
3161         (EditorClientWin::respondToChangedContents):
3162         (EditorClientWin::didEndEditing):
3163         (EditorClientWin::registerCommandForUndo):
3164         (EditorClientWin::registerCommandForRedo):
3165         (EditorClientWin::clearUndoRedoOperations):
3166         (EditorClientWin::canUndo):
3167         (EditorClientWin::canRedo):
3168         (EditorClientWin::undo):
3169         (EditorClientWin::redo):
3170         * COM/EditorClientWin.h: Added.
3171         * COM/WebFrame.cpp:
3172         (WebFrame::WebFrame):
3173         (WebFrame::initWithName):
3174         * COM/WebFrame.h:
3175         * COM/WebFrameLoaderClient.cpp: Added.
3176         (WebFrameLoaderClient::WebFrameLoaderClient):
3177         (WebFrameLoaderClient::~WebFrameLoaderClient):
3178         (WebFrameLoaderClient::frameLoaderDestroyed):
3179         (WebFrameLoaderClient::hasWebView):
3180         (WebFrameLoaderClient::hasFrameView):
3181         (WebFrameLoaderClient::hasBackForwardList):
3182         (WebFrameLoaderClient::resetBackForwardList):
3183         (WebFrameLoaderClient::provisionalItemIsTarget):
3184         (WebFrameLoaderClient::loadProvisionalItemFromPageCache):
3185         (WebFrameLoaderClient::invalidateCurrentItemPageCache):
3186         (WebFrameLoaderClient::privateBrowsingEnabled):
3187         (WebFrameLoaderClient::makeDocumentView):
3188         (WebFrameLoaderClient::makeRepresentation):
3189         (WebFrameLoaderClient::forceLayout):
3190         (WebFrameLoaderClient::forceLayoutForNonHTML):
3191         (WebFrameLoaderClient::updateHistoryForCommit):
3192         (WebFrameLoaderClient::updateHistoryForBackForwardNavigation):
3193         (WebFrameLoaderClient::updateHistoryForReload):
3194         (WebFrameLoaderClient::updateHistoryForStandardLoad):
3195         (WebFrameLoaderClient::updateHistoryForInternalLoad):
3196         (WebFrameLoaderClient::updateHistoryAfterClientRedirect):
3197         (WebFrameLoaderClient::setCopiesOnScroll):
3198         (WebFrameLoaderClient::tokenForLoadErrorReset):
3199         (WebFrameLoaderClient::resetAfterLoadError):
3200         (WebFrameLoaderClient::doNotResetAfterLoadError):
3201         (WebFrameLoaderClient::willCloseDocument):
3202         (WebFrameLoaderClient::detachedFromParent1):
3203         (WebFrameLoaderClient::detachedFromParent2):
3204         (WebFrameLoaderClient::detachedFromParent3):
3205         (WebFrameLoaderClient::detachedFromParent4):
3206         (WebFrameLoaderClient::loadedFromPageCache):
3207         (WebFrameLoaderClient::dispatchDidHandleOnloadEvents):
3208         (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
3209         (WebFrameLoaderClient::dispatchDidCancelClientRedirect):
3210         (WebFrameLoaderClient::dispatchWillPerformClientRedirect):
3211         (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
3212         (WebFrameLoaderClient::dispatchWillClose):
3213         (WebFrameLoaderClient::dispatchDidReceiveIcon):
3214         (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
3215         (WebFrameLoaderClient::dispatchDidReceiveTitle):
3216         (WebFrameLoaderClient::dispatchDidCommitLoad):
3217         (WebFrameLoaderClient::dispatchDidFinishLoad):
3218         (WebFrameLoaderClient::dispatchDidFirstLayout):
3219         (WebFrameLoaderClient::dispatchShow):
3220         (WebFrameLoaderClient::cancelPolicyCheck):
3221         (WebFrameLoaderClient::dispatchWillSubmitForm):
3222         (WebFrameLoaderClient::dispatchDidLoadMainResource):
3223         (WebFrameLoaderClient::clearLoadingFromPageCache):
3224         (WebFrameLoaderClient::isLoadingFromPageCache):
3225         (WebFrameLoaderClient::revertToProvisionalState):
3226         (WebFrameLoaderClient::clearUnarchivingState):
3227         (WebFrameLoaderClient::progressStarted):
3228         (WebFrameLoaderClient::progressCompleted):
3229         (WebFrameLoaderClient::setMainFrameDocumentReady):
3230         (WebFrameLoaderClient::willChangeTitle):
3231         (WebFrameLoaderClient::didChangeTitle):
3232         (WebFrameLoaderClient::finishedLoading):
3233         (WebFrameLoaderClient::finalSetupForReplace):
3234         (WebFrameLoaderClient::setDefersLoading):
3235         (WebFrameLoaderClient::isArchiveLoadPending):
3236         (WebFrameLoaderClient::cancelPendingArchiveLoad):
3237         (WebFrameLoaderClient::clearArchivedResources):
3238         (WebFrameLoaderClient::canHandleRequest):
3239         (WebFrameLoaderClient::canShowMIMEType):
3240         (WebFrameLoaderClient::representationExistsForURLScheme):
3241         (WebFrameLoaderClient::generatedMIMETypeForURLScheme):
3242         (WebFrameLoaderClient::frameLoadCompleted):
3243         (WebFrameLoaderClient::restoreScrollPositionAndViewState):
3244         (WebFrameLoaderClient::provisionalLoadStarted):
3245         (WebFrameLoaderClient::shouldTreatURLAsSameAsCurrent):
3246         (WebFrameLoaderClient::addHistoryItemForFragmentScroll):
3247         (WebFrameLoaderClient::didFinishLoad):
3248         (WebFrameLoaderClient::prepareForDataSourceReplacement):
3249         (WebFrameLoaderClient::setTitle):
3250         (WebFrameLoaderClient::userAgent):
3251         * COM/WebFrameLoaderClient.h: Added.
3252         * COM/WebKitDLL.h:
3253         * WebKit.vcproj/WebKit.vcproj:
3254
3255 2006-12-15  Anders Carlsson  <acarlsson@apple.com>
3256
3257         Reviewed by Darin.
3258
3259         Include ResourceError.h.
3260         
3261         * Plugins/WebNetscapePluginStream.mm:
3262         * WebKit.xcodeproj/project.pbxproj:
3263
3264 2006-12-14  Anders Carlsson  <acarlsson@apple.com>
3265
3266         Reviewed by Maciej.
3267
3268         Update for WebCore changes.
3269         
3270         * WebCoreSupport/WebFrameLoaderClient.h:
3271         * WebCoreSupport/WebFrameLoaderClient.mm:
3272         (WebFrameLoaderClient::incrementProgress):
3273         (WebFrameLoaderClient::committedLoad):
3274         (WebFrameLoaderClient::deliverArchivedResources):
3275         * WebView/WebView.mm:
3276         (-[WebView _incrementProgressForIdentifier:length:]):
3277         * WebView/WebViewInternal.h:
3278
3279 2006-12-14  Timothy Hatcher  <timothy@apple.com>
3280
3281         Reviewed by Darin.
3282
3283         <rdar://problem/4827549> need NSRange-based selection support exposed.
3284
3285         * WebView/WebFrame.mm:
3286         (-[WebFrame _selectedNSRange]):
3287         (-[WebFrame _selectNSRange:]):
3288         * WebView/WebFramePrivate.h:
3289
3290 2006-12-14  Anders Carlsson  <acarlsson@apple.com>
3291
3292         Reviewed by John.
3293
3294         Update for WebCore changes.
3295         
3296         * WebCoreSupport/WebFrameLoaderClient.h:
3297         * WebCoreSupport/WebFrameLoaderClient.mm:
3298         (WebFrameLoaderClient::dispatchDidFailLoading):
3299         (WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
3300         (WebFrameLoaderClient::dispatchDidFailLoad):
3301         (WebFrameLoaderClient::dispatchUnableToImplementPolicy):
3302         (WebFrameLoaderClient::setMainDocumentError):
3303         (WebFrameLoaderClient::cancelledError):
3304         (WebFrameLoaderClient::cannotShowURLError):
3305         (WebFrameLoaderClient::interruptForPolicyChangeError):
3306         (WebFrameLoaderClient::cannotShowMIMETypeError):
3307         (WebFrameLoaderClient::fileDoesNotExistError):
3308         (WebFrameLoaderClient::shouldFallBack):
3309
3310 2006-12-13  Maciej Stachowiak  <mjs@apple.com>
3311
3312         Reviewed by Anders.
3313         
3314         - adjusted for changes from NSURLRequest to ResourceRequest
3315
3316         * Plugins/WebPluginController.mm:
3317         * WebCoreSupport/WebFrameLoaderClient.h:
3318         * WebCoreSupport/WebFrameLoaderClient.mm:
3319         (WebFrameLoaderClient::updateHistoryForReload):
3320         (WebFrameLoaderClient::dispatchIdentifierForInitialRequest):
3321         (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
3322         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
3323         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
3324         (WebFrameLoaderClient::startDownload):
3325         (WebFrameLoaderClient::cannotShowURLError):
3326         (WebFrameLoaderClient::createDocumentLoader):
3327         * WebView/WebDataSource.mm:
3328         (-[WebDataSource _initWithDocumentLoader:]):
3329         (-[WebDataSource initialRequest]):
3330         (-[WebDataSource request]):
3331         * WebView/WebDocumentLoaderMac.h:
3332         * WebView/WebDocumentLoaderMac.mm:
3333         (WebDocumentLoaderMac::WebDocumentLoaderMac):
3334         * WebView/WebFrame.mm:
3335         (-[WebFrame _createItem:]):
3336         (-[WebFrame _loadItem:withLoadType:]):
3337         (-[WebFrame loadArchive:]):
3338
3339 2006-12-12  Anders Carlsson  <acarlsson@apple.com>
3340
3341         Reviewed by Darin.
3342
3343         * WebCoreSupport/WebFrameLoaderClient.h:
3344         * WebCoreSupport/WebFrameLoaderClient.mm:
3345         (WebFrameLoaderClient::download):
3346         Get the handle and proxy from the ResourceHandle now that they aren't passed to us.
3347         
3348 2006-12-11  Darin Adler  <darin@apple.com>
3349
3350         Reviewed by Brady.
3351
3352         - did some of the Mac-specific file moves mentioned in my recent mail to the WebKit list
3353
3354         * WebCoreSupport/WebFrameBridge.h: Updated for change to WebCoreKeyboardAccess.
3355         * WebCoreSupport/WebFrameBridge.mm:
3356         (-[WebFrameBridge _retrieveKeyboardUIModeFromPreferences:]): Ditto.
3357         (-[WebFrameBridge keyboardUIMode]): Ditto.
3358
3359 2006-12-11  Beth Dakin  <bdakin@apple.com>
3360
3361         Reviewed by Adam.
3362
3363         WebKit support for editing sub-menu actions.
3364
3365         * WebCoreSupport/WebContextMenuClient.h: New functions for the
3366         speech sub-menu.
3367         * WebCoreSupport/WebContextMenuClient.mm:
3368         (WebContextMenuClient::speak):
3369         (WebContextMenuClient::stopSpeaking):
3370         * WebCoreSupport/WebEditorClient.h: New functions to toggle
3371         spelling/grammar checking.
3372         * WebCoreSupport/WebEditorClient.mm:
3373         (WebEditorClient::toggleContinuousSpellChecking):
3374         (WebEditorClient::toggleGrammarChecking):
3375         * WebView/WebUIDelegatePrivate.h: Re-named some of the spelling
3376         sub-menu tags.
3377
3378 2006-12-11  Alice Liu  <alice.liu@apple.com>
3379
3380         Reviewed by Geoff, Adam.
3381         
3382         switch to use the Editor for copying URLs
3383
3384         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
3385         (-[WebDefaultUIDelegate copyLinkToClipboard:]):
3386         Call down to the editor for this. 
3387         * WebCoreSupport/WebSystemInterface.m:
3388         (InitWebCoreSystemInterface):
3389         Add some calls necessary for Pasteboard::writeURL to work
3390
3391 2006-12-11  Darin Adler  <darin@apple.com>
3392
3393         Reviewed by Brady.
3394
3395         - http://bugs.webkit.org/show_bug.cgi?id=11794
3396           fix lifetime problems affecting Frame's ownerElement pointer
3397
3398         * WebCoreSupport/WebFrameBridge.mm:
3399         (-[WebFrameBridge finishInitializingWithPage:WebCore::frameName:frameView:ownerElement:]):
3400         (-[WebFrameBridge initSubframeWithOwnerElement:frameName:frameView:]):
3401         (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]):
3402         Use HTMLFrameOwnerElement.
3403
3404         * WebCoreSupport/WebFrameLoaderClient.mm: Include the relevant headers for the
3405         HTMLFormElement class.
3406
3407         * WebKit.xcodeproj/project.pbxproj: Let Xcode have its way.
3408
3409         * WebView/WebFrame.mm: (-[WebFrame frameElement]): Update includes and types for the
3410         change in return type of ownerElement.
3411
3412 2006-12-11  David Harrison  <harrison@apple.com>
3413
3414         Fix previous checkin where I committed the wrong file.
3415
3416         <rdar://problem/4863611> Xyle Scope crashes at launch due to WebCore-521.29.3
3417
3418         * WebView/WebFrame.mm:
3419         (-[WebFrame frameElement]):
3420         Add nil check.
3421         
3422         * WebView/WebPreferences.m:
3423         (-[WebPreferences editableLinkBehavior]):
3424         Reverted to previous.
3425
3426 2006-12-08  David Hyatt  <hyatt@apple.com>
3427
3428         Land new ICU abstraction layer.  Patch by Lars.
3429
3430         Reviewed by me
3431
3432         * ForwardingHeaders/wtf/icu/UnicodeIcu.h: Added.
3433         * ForwardingHeaders/wtf/unicode/Unicode.h: Added.
3434         * WebKit.xcodeproj/project.pbxproj:
3435
3436 === Safari-521.32 ===
3437
3438 2006-12-08  Timothy Hatcher  <timothy@apple.com>
3439
3440         Rolling out a change that broke Mail stationary.
3441         <rdar://problem/4699166> REGRESSION: Background images in Mail stationery do not load
3442
3443         * WebView/WebUnarchivingState.m:
3444         (-[WebUnarchivingState archivedResourceForURL:]):
3445
3446 2006-12-08  Don Gibson  <dgibson77@gmail.com>
3447
3448         Reviewed and landed by Alexey.
3449
3450         http://bugs.webkit.org/show_bug.cgi?id=11759:
3451         Windows build bustage
3452
3453         * COM/WebFrame.cpp:
3454         (WebFrame::loadDataSource):
3455         * COM/WebFrame.h:
3456
3457 2006-12-08  David Harrison  <harrison@apple.com>
3458
3459         Reviewed by Brady.
3460
3461         <rdar://problem/4863611> Xyle Scope crashes at launch due to WebCore-521.29.3
3462
3463         * WebView/WebPreferences.m:
3464         (-[WebPreferences editableLinkBehavior]):
3465         Add nil check.
3466
3467 2006-12-07  Beth Dakin  <bdakin@apple.com>
3468
3469         Reviewed by Brady.
3470
3471         Build fix for WebCore ContextMenus. It got broken by r18046.
3472
3473         * WebView/WebHTMLView.m:
3474         (-[NSArray menuForEvent:]):
3475
3476 2006-12-07  Beth Dakin  <bdakin@apple.com>
3477
3478         Reviewed by Brady.
3479
3480         Make some parameters const and const references.
3481
3482         * WebCoreSupport/WebContextMenuClient.h:
3483         * WebCoreSupport/WebContextMenuClient.mm:
3484         (WebContextMenuClient::contextMenuItemSelected):
3485         (WebContextMenuClient::copyLinkToClipboard):
3486         (WebContextMenuClient::downloadURL):
3487         (WebContextMenuClient::copyImageToClipboard):
3488
3489 2006-12-06  Brady Eidson  <beidson@apple.com>
3490
3491         Reviewed by John Sullivan
3492
3493         Fixes http://bugs.webkit.org/show_bug.cgi?id=11675 and <rdar://4857669>
3494         Now we need to explicitly set the data source when loading from a page cache
3495
3496         * History/WebHistoryItem.mm:
3497         (-[WebHistoryItem _scheduleRelease]): Enhanced a logging message
3498         (+[WebHistoryItem _releasePageCache:]): Ditto
3499         (+[WebHistoryItem _releaseAllPendingPageCaches]): Ditto
3500         * WebCoreSupport/WebFrameLoaderClient.mm:
3501         (WebFrameLoaderClient::setDocumentViewFromPageCache): Reset the View's DataSource from the cache, effectively reopening it
3502         * WebView/WebHTMLView.m:
3503         (-[NSArray setDataSource:]): Properly Handle resetting the DataSource and "reopening" the view
3504
3505 2006-12-06  Brady Eidson  <beidson@apple.com>
3506
3507         Reviewed by Adam and Oliver
3508
3509         While working on http://bugs.webkit.org/show_bug.cgi?id=11675 I
3510         decided to fix much of the null-deref problems that creeped in via 
3511         the loader refactoring.  This isn't changing behavior, just reintroducing
3512         the free nil checking we used to have with pure ObjC
3513
3514         * WebView/WebHTMLView.m:
3515         (-[NSArray menuForEvent:]):  Explicitly check for null frames
3516         (-[NSArray mouseDown:]):  Ditto
3517         (-[NSArray mouseDragged:]):  Ditto
3518         (-[NSArray mouseUp:]):  Ditto
3519         (-[NSArray performKeyEquivalent:]):  Ditto
3520         (-[WebHTMLView elementAtPoint:allowShadowContent:]):  Ditto
3521
3522 2006-12-05  John Sullivan  <sullivan@apple.com>
3523
3524         Reviewed by Beth
3525
3526         Updated to match Frame -> Editor changes in WebCore
3527
3528         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
3529         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
3530         guessesForUngrammaticalSelection() is now in Editor
3531
3532         * WebView/WebHTMLView.m:
3533         (-[WebHTMLView _isSelectionUngrammatical]):
3534         isSelectionUngrammatical() is now in Editor
3535         (-[WebHTMLView _isSelectionMisspelled]):
3536         isSelectionMisspelled() is now in Editor
3537
3538         (-[WebHTMLView checkSpelling:]):
3539         advanceToNextMisspelling() is now in Editor
3540         (-[WebHTMLView showGuessPanel:]):
3541         ditto
3542
3543 2006-12-05  John Sullivan  <sullivan@apple.com>
3544
3545         Reviewed by Adam
3546         
3547         Old context-menu mechanism fix for:
3548         <rdar://problem/4864351> Should leave out "No Guesses Found" from context menu for bad grammar
3549
3550         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
3551         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
3552         Leave out "No Guesses Found" and separator for grammar-checking case.
3553
3554 2006-12-05  John Sullivan  <sullivan@apple.com>
3555
3556         build fix
3557
3558         * WebView/WebViewPrivate.h:
3559         * WebView/WebView.mm:
3560         (-[WebView isGrammarCheckingEnabled]):
3561         define isGrammarCheckingEnabled whether on Tiger or not (just return NO on Tiger)
3562
3563 2006-12-04  John Sullivan  <sullivan@apple.com>
3564
3565         Reviewed by Darin
3566
3567         WebKit part of fix for:
3568         <rdar://problem/4817188> Context menu for bad grammar should include suggestions and "Ignore Grammar"
3569
3570         The context menu mechanism is currently in flux; the old mechanism is still in place, but an
3571         up-and-coming new mechanism is waiting in the wings. I updated both of them, but couldn't
3572         test the new mechanism because it doesn't work well enough yet. Most of this WebKit code
3573         can be deleted when the new mechanism is in place.
3574
3575         * WebView/WebUIDelegatePrivate.h:
3576         added WebMenuItemTagIgnoreGrammar
3577
3578         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
3579         (-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):
3580         added case for WebMenuItemTagIgnoreGrammar
3581         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
3582         now considers adding grammar-related items as well as spelling-related items
3583         
3584         * WebView/WebHTMLViewPrivate.h:
3585         declared _isSelectionUngrammatical
3586
3587         * WebView/WebHTMLView.m:
3588         (-[WebHTMLView _isSelectionUngrammatical]):
3589         new method, calls through to WebCore
3590         (-[WebHTMLView _ignoreGrammarFromMenu:]):
3591         new method, calls _ignoreSpellingFromMenu: since NSSpellChecker has one method for both
3592
3593         * English.lproj/Localizable.strings:
3594         updated for "Ignore Grammar" menu item title
3595
3596 2006-12-04  Darin Adler  <darin@apple.com>
3597
3598         Reviewed by Adele.
3599
3600         * WebCoreSupport/WebFrameLoaderClient.mm:
3601         (WebFrameLoaderClient::actionDictionary): Changed to use the new
3602         findEventWithKeyState function in WebCore instead of a local function
3603         in this file.
3604
3605 2006-12-04  Geoffrey Garen  <ggaren@apple.com>
3606
3607         Rolled out the WebDashboardBehaviorUseBackwardCompatibilityModeEnabled
3608         part of my last checkin.
3609         
3610         We have to turn on support for backward compatibility mode to avoid Dashboard
3611         regressions in the short term.
3612
3613         * WebView/WebView.mm:
3614         (-[WebView _setDashboardBehavior:to:]):
3615
3616 2006-12-02  Geoffrey Garen  <ggaren@apple.com>
3617
3618         Reviewed by Darin Adler.
3619         
3620         Added SPI for enabling Dashboard backward compatibility mode. For now,
3621         we enable it unconditionally for Dashboard and Dashcode. Once they 
3622         implement specific support for the backward compatibility mode behavior,
3623         we can change that.
3624         
3625         Set the default WebDashboardBehaviorUseBackwardCompatibilityModeEnabled
3626         to YES in order to turn this code on.
3627
3628         * WebView/WebView.mm:
3629         (-[WebView _setDashboardBehavior:to:]):
3630         (-[WebView _dashboardBehavior:]):
3631         * WebView/WebViewPrivate.h:
3632
3633 2006-12-04  Darin Adler  <darin@apple.com>
3634
3635         Reviewed by Alice.
3636
3637         * WebCoreSupport/WebEditorClient.h: Removed "_web_" prefix from
3638         C++ userVisibleString member function.
3639         * WebCoreSupport/WebEditorClient.mm: (WebEditorClient::userVisibleString):
3640         Ditto.
3641
3642         * WebView/WebView.mm: (-[WebView selectedFrame]): Removed extra return statement.
3643
3644 2006-12-04  Don Gibson  <dgibson77@gmail.com>
3645
3646         Reviewed and landed by Alexey.
3647
3648         http://bugs.webkit.org/show_bug.cgi?id=11738:
3649         Make link clicking work again on Windows.
3650
3651         The WebKit changes are to ignore WM_MOUSEMOVED messages when the mouse
3652         hasn't actually moved, which were preventing clicks from actually
3653         getting dispatched in many cases.  It's a peculiarity of Windows mouse
3654         handling that we receive these at all.
3655
3656         * COM/WebView.cpp:
3657         (WebView::WebView):
3658         (WebView::mouseMoved):
3659         * COM/WebView.h:
3660
3661 2006-12-04  John Sullivan  <sullivan@apple.com>
3662
3663         Reviewed by Anders
3664
3665         - fixed <rdar://problem/4857833> REGRESSION: When ctrl-clicking on a misspelled word, "Ignore Spelling" and "Learn Spelling" 
3666           menu items not displayed in the contextual menu
3667
3668         * WebView/WebHTMLView.m:
3669         (-[WebHTMLView _isSelectionMisspelled]):
3670         We were computing isSelectionMisspelled by calling WebCore, but then ignoring the result and always
3671         returning NO. D'oh!
3672
3673 2006-12-01  Beth Dakin  <bdakin@apple.com>
3674
3675         Reviewed by Adam.
3676
3677         Changes to support sub-menus in WebCore ContextMenus.
3678
3679         * WebCoreSupport/WebContextMenuClient.mm:
3680         (WebContextMenuClient::contextMenuItemSelected): 
3681         ContextMenuItem::menu() is now called parentMenu()
3682         * WebView/WebUIDelegatePrivate.h: New not-yet-API tags.
3683
3684 2006-12-01  Darin Adler  <darin@apple.com>
3685
3686         Reviewed by Mitz.
3687
3688         - fix http://bugs.webkit.org/show_bug.cgi?id=11628
3689           REGRESSION (r17597): Command-return in native text fields doesn't open a new tab or window
3690
3691         * WebCoreSupport/WebFrameLoaderClient.mm:
3692         (findKeyStateEvent): Added. Helper that finds the mouse or keyboard event in a chain
3693         of events and their underlying events.
3694         (findMouseEvent): Added. Same, but specifically for mouse events.
3695         (WebFrameLoaderClient::actionDictionary): Rewrote to use the above functions. This means we
3696         use the modifiers from the underlying events rather than just the one from the event itself.
3697         So if the event is a DOM activate event, we can still see the modifiers from the original
3698         keyboard event that triggered it. Has no effect if the event is already the right type or
3699         if there is no underlying event.
3700
3701         * WebView/WebFrame.mm: Added a newly-needed include.
3702
3703         * WebKit.xcodeproj/project.pbxproj: Xcode wants what it wants.
3704
3705 2006-12-01  Don Gibson  <dgibson77@gmail.com>
3706
3707         Reviewed by Mitz.
3708
3709         http://bugs.webkit.org/show_bug.cgi?id=11732:
3710         Windows build bustage.
3711
3712         * COM/WebFrame.cpp:
3713         (WebFrame::initWithName):
3714
3715 2006-12-01  Timothy Hatcher  <timothy@apple.com>
3716
3717         Reviewed by Adam.
3718
3719         <rdar://problem/4841432> 9A312: iWeb crashes on launch; _WebReportError missing from WebKit
3720
3721         Added back WebReportAssertionFailure and WebReportError for apps that still need these symbols.
3722
3723         * Misc/OldWebAssertions.c: Added.
3724         (WebReportAssertionFailure):
3725         (WebReportError):
3726         * WebKit.LP64.exp: added the new symbols, and sorted the file
3727         * WebKit.exp: added the new symbols, and sorted the file
3728         * WebKit.xcodeproj/project.pbxproj:
3729
3730 2006-11-30  Geoffrey Garen  <ggaren@apple.com>
3731
3732         Rubber Stamped by Anders Carlsson.
3733
3734         Global rename of Document::focusNode to Document::focusedNode. 'focusNode'
3735         suggested a command, and conflicted with a different meaning for 'focusNode'
3736         in the Mozilla selection API.
3737
3738         * WebView/WebHTMLView.m:
3739         (-[NSArray clearFocus]):
3740
3741 2006-11-30  Matt Lilek  <pewtermoose@gmail.com>
3742
3743         Reviewed by Mitz.
3744
3745         Bug 10698: Scroll wheel causes inspector to shift up
3746         http://bugs.webkit.org/show_bug.cgi?id=10698
3747
3748         Remove size attribute from the tree popup as a workaround for
3749         http://bugs.webkit.org/show_bug.cgi?id=11362 Bug 11362: Native popup with size="1" wraps options
3750
3751         * WebInspector/webInspector/inspector.css:
3752         * WebInspector/webInspector/inspector.html:
3753
3754 2006-11-30  Matt Lilek  <pewtermoose@gmail.com>
3755
3756         Reviewed by Tim H.
3757
3758         Move web inspector style markup to javascript to fix http://bugs.webkit.org/show_bug.cgi?id=6724
3759         Bug 6724: Text copied from Web Inspector is different from actual text
3760
3761         * WebInspector/webInspector/inspector.css:
3762         * WebInspector/webInspector/inspector.js:
3763
3764 2006-11-30  Adam Roben  <aroben@apple.com>
3765
3766         Reviewed by Beth.
3767
3768         Put code in place to use WebCore context menus when they are turned
3769         on.
3770
3771         * WebView/WebHTMLView.m:
3772         (-[NSArray menuForEvent:]):
3773
3774 2006-11-29  Timothy Hatcher  <timothy@apple.com>
3775
3776         Reviewed by Oliver.
3777
3778         Keep preferences separate from the rest of the client, making sure we are using expected preference values.
3779         This lets the inspector work when plugins are disabled for the WebView.
3780
3781         * WebInspector/WebInspector.m:
3782         (-[NSWindow window]):
3783
3784 2006-11-29  Anders Carlsson  <acarlsson@apple.com>
3785
3786         Reviewed by Tim.
3787
3788         Add back methods in WebCoreStatistics that are still used by Tiger Safari.
3789         
3790         * Misc/WebCoreStatistics.h:
3791         * Misc/WebCoreStatistics.m:
3792         (+[WebCoreStatistics emptyCache]):
3793         (+[WebCoreStatistics setCacheDisabled:]):
3794
3795 2006-11-28  Alice Liu  <alice.liu@apple.com>
3796
3797         Reviewed by Maciej.
3798
3799         A fix for a couple failing layout tests involving copy/cut in iframes.
3800
3801         * WebCoreSupport/WebEditorClient.h:
3802         * WebCoreSupport/WebEditorClient.mm:
3803         (WebEditorClient::dataForArchivedSelection):
3804         Use the frame parameter instead of using the webview's selectedFrame. 
3805
3806 2006-11-28  Beth Dakin  <bdakin@apple.com>
3807
3808         Reviewed by Geoffff.
3809
3810         Fix for http://bugs.webkit.org/show_bug.cgi?id=11691 REGRESSION 
3811         (r17399, r17511): WebElementDictionary no longer returns nil 
3812         NSStrings
3813
3814         String's NSString* operator converts null Strings to empty 
3815         NSStrings for compatibility with AppKit. We need to work around 
3816         that here.
3817
3818         * Misc/WebElementDictionary.m:
3819         (NSStringOrNil):
3820         (-[WebElementDictionary _altDisplayString]):
3821         (-[WebElementDictionary _spellingToolTip]):
3822         (-[WebElementDictionary _title]):
3823         (-[WebElementDictionary _titleDisplayString]):
3824         (-[WebElementDictionary _textContent]):
3825
3826 2006-11-28  Geoffrey Garen  <ggaren@apple.com>
3827
3828         Reviewed by Beth Dakin.
3829
3830         Fixed <rdar://problem/4844855> Should clarify when to create clients in 
3831         the WebCore client API
3832         
3833         All clients must now be supplied as constructor arguments. This clarifies 
3834         when you need to create clients, and also guarantees that objects can't 
3835         (for the most part) be in a clientless state.
3836
3837         Layout tests pass. No leaks reported.
3838         
3839         * WebCoreSupport/WebFrameBridge.mm: Shuffled around initialization and changed
3840         some arguments to resolve ciruclar dependencies at init time.
3841         (-[WebFrame _initWithWebFrameView:webView:bridge:]): We no longer call setClient
3842         here, because the client is set up at construction time.
3843
3844 2006-11-28  Anders Carlsson  <acarlsson@apple.com>
3845
3846         Reviewed by Maciej.
3847
3848         Update for changes to ResourceRequest.
3849         
3850         * WebCoreSupport/WebChromeClient.mm:
3851         (WebChromeClient::createWindow):
3852         (WebChromeClient::createModalDialog):
3853         * WebCoreSupport/WebFrameLoaderClient.mm:
3854         (WebFrameLoaderClient::canHandleRequest):
3855
3856 2006-11-28  Adam Roben  <aroben@apple.com>
3857
3858         Reviewed by Beth.
3859
3860         More WebCore context menu work.
3861
3862         * DefaultDelegates/WebDefaultUIDelegate.m: New stub delegate method implementation.
3863         (-[NSApplication webView:contextMenuItemSelected:forElement:]):
3864         * WebCoreSupport/WebContextMenuClient.h: Updated to match ContextMenuClient.h changes.
3865         * WebCoreSupport/WebContextMenuClient.mm:
3866         (WebContextMenuClient::addCustomContextMenuItems): Updated for method name changes.
3867         (WebContextMenuClient::contextMenuItemSelected): Added new client method.
3868         * WebView/WebUIDelegatePrivate.h: New private delegate method declaration.
3869
3870 2006-11-28  Alice Liu  <alice.liu@apple.com>
3871
3872         Reviewed by Justin and Adam.
3873
3874         * WebCoreSupport/WebEditorClient.h:
3875         * WebCoreSupport/WebEditorClient.mm:
3876         added the following        
3877         (WebEditorClient::smartInsertDeleteEnabled):
3878         (WebEditorClient::dataForArchivedSelectionInFrame):
3879         (WebEditorClient::_web_userVisibleString):
3880         (WebEditorClient::shouldInsertNode):
3881         
3882         * WebKitPrefix.h:
3883         Added flags to control whether WebCore cut/copy/paste is enabled.
3884         Turned on Cut and Copy, left Paste and Delete off
3885         
3886         * WebView/WebHTMLViewPrivate.h:
3887         * WebView/WebHTMLView.m:
3888         removed _can[Cut|Copy|Paste|Delete]
3889         (-[NSArray validateUserInterfaceItem:]):
3890         call the editor for canDHTML[C|C|P|D] and _can[C|C|P|D] instead 
3891         (-[NSArray delete:]):
3892         added code to call the editor's delete instead (not turned on)
3893         (-[WebHTMLView copy:]):
3894         added code to call the editor's copy (turned on)
3895         (-[WebHTMLView cut:]):
3896         added code to call the editor's cut (turned on)
3897         (-[WebHTMLView paste:]):
3898         added code to call the editor's paste (not turned on)
3899
3900 2006-11-28  Geoffrey Garen  <ggaren@apple.com>
3901
3902         Reviewed by Adam.
3903
3904         Fixed <rdar://problem/4844848> REGRESSION: extra cross-library ref/deref 
3905         calls cause .5% PLT regression.
3906         
3907         Changed ref/deref calls to a single 'xxxDestroyed' call. Moved EditorClient
3908         from the Frame to the Page, since it's only responsible for
3909         Webview-level delegate calls.
3910         
3911         I don't really love this design, but it fixes the regression and allows
3912         a single WebKit object to implement multiple client interfaces.
3913         
3914         Layout tests pass.
3915
3916 2006-11-27  Beth Dakin  <bdakin@apple.com>
3917
3918         Reviewed by Adam.
3919
3920         WebKit half of getting rid of the FixMes in ContextMenu.cpp
3921
3922         * WebCoreSupport/WebFrameLoaderClient.h: canHandleRequest takes a 
3923         ResourceRequest now.
3924         * WebCoreSupport/WebFrameLoaderClient.mm:
3925         (WebFrameLoaderClient::canHandleRequest): Same.
3926         * WebView/WebHTMLView.m:
3927         (-[WebHTMLView _isSelectionMisspelled]): Call into WebCore.
3928
3929 2006-11-27  Ada Chan  <adachan@apple.com>
3930
3931         Reviewed by Adam.
3932
3933         Part of the change to move WebCoreCache into WebKit:
3934         Added WebCache which handles emptying and enable/disabling the cache.
3935         emptyCache and setCacheDisabled have been removed from WebCoreStatistics.
3936
3937         * Misc/WebCache.h: Added.
3938         * Misc/WebCache.mm: Added.
3939         * Misc/WebCoreStatistics.h:
3940         * Misc/WebCoreStatistics.m:
3941         (+[WebCoreStatistics statistics]):
3942         * WebKit.exp:
3943         * WebKit.xcodeproj/project.pbxproj:
3944
3945 2006-11-27  Anders Carlsson  <acarlsson@apple.com>
3946
3947         Reviewed by Adam.
3948
3949         Move addMessageToConsole to Chrome.
3950
3951         * WebCoreSupport/WebChromeClient.h:
3952         * WebCoreSupport/WebChromeClient.mm:
3953         (WebChromeClient::addMessageToConsole):
3954         * WebCoreSupport/WebFrameBridge.mm:
3955
3956 2006-11-27  Brady Eidson  <beidson@apple.com>
3957
3958         Reviewed by Anders
3959
3960         Moved unused Private SPI to Internal and pruned other unused code
3961
3962         * Misc/WebIconDatabase.m:
3963         * Misc/WebIconDatabasePrivate.h:
3964
3965 2006-11-21  Darin Adler  <darin@apple.com>
3966
3967         Reviewed by Maciej.
3968
3969         - make the close method do a more-complete job to prevent world leaks seen when
3970           running some of the layout tests
3971
3972         * WebView/WebHTMLViewInternal.h: Added declaration of -[WebHTMLViewPrivate clear].
3973         * WebView/WebHTMLView.m:
3974         (-[WebHTMLViewPrivate clear]): Added method to drop references to other objects.
3975         We want to do this at "close" time, rather than waiting for deallocation time.
3976         This is especially important for the data source, which indirectly keeps a number of
3977         objects alive.
3978         (-[WebHTMLView close]): Added an explicit call to clear out the data source on the
3979         plug-in controller. Without this, we'd see the plug-in controller making calls to
3980         a deallocated data source during the layout tests. Added a call to the new clear method
3981         on the private object so that we release the objects at close time instead of waiting
3982         for deallocation time.
3983
3984         * WebKit.xcodeproj/project.pbxproj: Let Xcode have its way with the project file,
3985         because I can't fight the power.
3986
3987 2006-11-20  Samuel Weinig  <sam@webkit.org>
3988
3989         Reviewed by Alexey.
3990
3991         Fix for http://bugs.webkit.org/show_bug.cgi?id=11656
3992         Fix Windows build
3993
3994         * WebKit.vcproj/WebKit.vcproj: don't include directories that no
3995         longer exist.
3996
3997 2006-11-19  Beth Dakin  <bdakin@apple.com>
3998
3999         Reviewed by Adam.
4000
4001         WebKit side of new context menu actions.
4002
4003         * WebCoreSupport/WebContextMenuClient.h: These are for the 
4004         currently-WebKit-dependent menu actions.
4005         * WebCoreSupport/WebContextMenuClient.mm:
4006         (WebContextMenuClient::copyLinkToClipboard):
4007         (WebContextMenuClient::downloadURL):
4008         (WebContextMenuClient::copyImageToClipboard):
4009         (WebContextMenuClient::searchWithSpotlight):
4010         (WebContextMenuClient::lookUpInDictionary):
4011         * WebCoreSupport/WebEditorClient.h:
4012         * WebCoreSupport/WebEditorClient.mm:
4013         (core): These are to convert between WebViewInsertAction and 
4014         EditorInsertAction.
4015         (kit):
4016         (WebEditorClient::shouldInsertText): Added implementation for 
4017         shouldInsertText.
4018         * WebKit.xcodeproj/project.pbxproj:
4019         * WebView/WebHTMLView.m:
4020         (-[WebHTMLView _lookUpInDictionaryFromMenu:]): Moved 
4021         _lookUpInDictionary to be within the implementation of WebHTMLView 
4022         internal.
4023         * WebView/WebHTMLViewInternal.h: Add _lookUpInDictionaryFromMenu
4024         * WebView/WebViewInternal.h: Add _searchWithSpotlightFromMenu
4025
4026 2006-11-18  Don Gibson  <dgibson77@gmail.com>
4027
4028         Reviewed by Sam Weinig.
4029
4030         http://bugs.webkit.org/show_bug.cgi?id=11634:
4031         Fix segfault on startup for Windows build.  Also fix segfault when
4032         typing in a URL.
4033
4034         * COM/WebFrame.cpp:
4035         (WebFrame::initWithName):
4036
4037 === Safari-521.31 ===
4038
4039 2006-11-17  Timothy Hatcher  <timothy@apple.com>
4040
4041         Reviewed by Geoff.
4042
4043         <rdar://problem/4841044> Temporarily default Mail.app editable link clicking behavior, until they do it themselves
4044
4045         * WebKit.xcodeproj/project.pbxproj:
4046         * WebView/WebView.mm:
4047         (+[WebView initialize]):
4048         (-[WebView setPreferences:]):
4049
4050 2006-11-16  Don Gibson  <dgibson77@gmail.com>
4051
4052         Reviewed and landed by ap.
4053
4054         http://bugs.webkit.org/show_bug.cgi?id=11509:
4055         Windows build bustage.
4056
4057         * COM/WebFrame.cpp:
4058         (WebFrame::initWithName):
4059         (WebFrame::loadHTMLString):
4060         (WebFrame::stopLoading):
4061         (WebFrame::reload):
4062         (WebFrame::loadDataSource):
4063         (WebFrame::didReceiveData):
4064         (WebFrame::receivedResponse):
4065         (WebFrame::receivedAllData):
4066         * COM/WebFrame.h:
4067         * COM/WebView.cpp:
4068         (WebView::mouseMoved):
4069         (WebView::mouseDown):
4070         (WebView::mouseUp):
4071         (WebView::mouseDoubleClick):
4072         * WebKit.vcproj/WebKit.vcproj:
4073
4074 2006-11-16  Anders Carlsson  <acarlsson@apple.com>
4075
4076         Reviewed by Tim.
4077
4078         <rdar://problem/4841123>
4079         REGRESSION: Crash in WebCore::Range::boundaryPointsValid when replying to a mail Message
4080         
4081         * Misc/WebNSAttributedStringExtras.m:
4082         (+[NSAttributedString _web_attributedStringFromRange:]):
4083         If the range passed in is null, return null. When this function was in the bridge, it would never get called
4084         with a null range when nothing was selected. Instead, the range would just have invalid boundary points.
4085
4086 2006-11-15  Adam Roben  <aroben@apple.com>
4087
4088         Reviewed by Anders.
4089
4090         Added new WebContextMenuClient class to act as WebCore's ChromeClient,
4091         and moved context menu-related code there from WebChromeClient.
4092
4093         * WebCoreSupport/WebChromeClient.h:
4094         * WebCoreSupport/WebChromeClient.mm:
4095         * WebCoreSupport/WebContextMenuClient.h: Added.
4096         (WebContextMenuClient::webView):
4097         * WebCoreSupport/WebContextMenuClient.mm: Added.
4098         (WebContextMenuClient::create):
4099         (WebContextMenuClient::WebContextMenuClient):
4100         (WebContextMenuClient::ref):
4101         (WebContextMenuClient::deref):
4102         (WebContextMenuClient::addCustomContextMenuItems):
4103         * WebKit.xcodeproj/project.pbxproj: Added new files.
4104         * WebView/WebView.mm:
4105         (-[WebView _commonInitializationWithFrameName:groupName:]):
4106
4107 2006-11-15  Beth Dakin  <bdakin@apple.com>
4108         &   Adam Roben  <aroben@apple.com>
4109
4110         Reviewed by Adam & Beth.
4111
4112         WebKit side of first cut at engine context menus. Use the client to 
4113         call into the UIDelegate.
4114
4115         * WebCoreSupport/WebChromeClient.h:
4116         * WebCoreSupport/WebChromeClient.mm:
4117         (WebChromeClient::addCustomContextMenuItems):
4118         * WebKit.xcodeproj/project.pbxproj:
4119
4120 2006-11-15  Brady Eidson  <beidson@apple.com>
4121
4122         Reviewed by Maciej
4123
4124         Quick change of files to ObjC++ for BF cache re-write
4125
4126         * History/WebBackForwardList.m: Removed.
4127         * History/WebBackForwardList.mm: Added.
4128         * History/WebHistoryItem.m: Removed.
4129         * History/WebHistoryItem.mm: Added.
4130         * WebKit.xcodeproj/project.pbxproj:
4131
4132 2006-11-15  Brady Eidson  <beidson@apple.com>
4133
4134         Reviewed by Sarge
4135
4136         SPI addition
4137
4138         * WebView/WebFrame.mm:
4139         (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
4140         * WebView/WebFrameInternal.h:
4141         * WebView/WebFramePrivate.h:
4142
4143 2006-11-15  Brady Eidson  <beidson@apple.com>
4144
4145         Reviewed by Adele
4146
4147         <rdar://problem/4838729> - Replace mistakenly removed SPI
4148
4149         * WebView/WebHTMLView.m:
4150         (-[WebHTMLView _handleAutoscrollForMouseDragged:]):
4151         * WebView/WebHTMLViewPrivate.h:
4152
4153 2006-11-15  Anders Carlsson  <acarlsson@apple.com>
4154
4155         Reviewed by Adele.
4156
4157         isTargetItem is used by DRT, so make it private instead of internal.
4158         
4159         * History/WebHistoryItem.m:
4160         (-[WebHistoryItem isTargetItem]):
4161         * History/WebHistoryItemInternal.h:
4162         * History/WebHistoryItemPrivate.h:
4163         * WebCoreSupport/WebFrameLoaderClient.mm:
4164
4165 2006-11-15  Brady Eidson  <beidson@apple.com>
4166
4167         Reviewed by Maciej
4168
4169         Split much of unused WebHistoryItemPrivate.h SPI into WebHistoryItemInternal.h
4170
4171         * History/WebBackForwardList.m:
4172         * History/WebHistory.m:
4173         * History/WebHistoryItem.m:
4174         (-[WebHistoryItem initWithURLString:title:lastVisitedTimeInterval:]):
4175         (-[WebHistoryItem initWithURL:title:]):
4176         (-[WebHistoryItem visitCount]):
4177         (-[WebHistoryItem RSSFeedReferrer]):
4178         (-[WebHistoryItem setRSSFeedReferrer:]):
4179         (-[WebHistoryItem children]):
4180         (-[WebHistoryItem dictionaryRepresentation]):
4181         (-[WebHistoryItem setAlwaysAttemptToUsePageCache:]):
4182         (+[WebHistoryItem _releaseAllPendingPageCaches]):
4183         (-[WebHistoryItem URL]):
4184         (-[WebHistoryItem target]):
4185         (-[WebHistoryItem _setLastVisitedTimeInterval:]):
4186         (-[WebHistoryItem _lastVisitedDate]):
4187         (-[WebHistoryItem targetItem]):
4188         * History/WebHistoryItemInternal.h: Added.
4189         * History/WebHistoryItemPrivate.h:
4190         * WebCoreSupport/WebFrameBridge.mm:
4191         * WebCoreSupport/WebFrameLoaderClient.mm:
4192         * WebKit.xcodeproj/project.pbxproj:
4193         * WebView/WebFrame.mm:
4194         * WebView/WebView.mm:
4195
4196 2006-11-14  Beth Dakin  <bdakin@apple.com>
4197
4198         Reviewed by Geoff.
4199
4200         Moving things off the bridge and onto clients.
4201
4202         * WebCoreSupport/WebEditorClient.h:
4203         * WebCoreSupport/WebEditorClient.mm:
4204         (WebEditorClient::selectWordBeforeMenuEvent):
4205         (WebEditorClient::isEditable):
4206         * WebCoreSupport/WebFrameBridge.mm:
4207         * WebKit.xcodeproj/project.pbxproj:
4208
4209 2006-11-14  Timothy Hatcher  <timothy@apple.com>
4210
4211         Reviewed by Harrison.
4212
4213         <rdar://problem/4766635> Safari should never follow links in editable areas (add a WebKitEditableLinkNeverLive option)
4214
4215         Adds an Open Link, Open Link in New Window and Copy Link to the editing context menu.
4216         Adds a new WebKitEditableLinkNeverLive preference value that maps to WebCore's EditableLinkNeverLive.
4217
4218         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
4219         (-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):
4220         (-[WebDefaultUIDelegate contextMenuItemsForElement:defaultMenuItems:]):
4221         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
4222         (-[WebDefaultUIDelegate requestWithURL:includingReferrerFromFrame:]):
4223         (-[WebDefaultUIDelegate openNewWindowWithURL:element:]):
4224         (-[WebDefaultUIDelegate openLink:]):
4225         * English.lproj/Localizable.strings:
4226         * WebKit.exp:
4227         * WebView/WebPreferences.m:
4228         (-[WebPreferences editableLinkBehavior]):
4229         * WebView/WebPreferencesPrivate.h:
4230         * WebView/WebUIDelegatePrivate.h:
4231
4232 2006-11-14  Anders Carlsson  <acarlsson@apple.com>
4233
4234         Turns out I wasn't forcing DWARF on the world at all, 
4235         it's now the default!
4236
4237         * WebKit.xcodeproj/project.pbxproj: