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