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