d9d82061b8062036dbe66ad9bd8b9ad284042816
[WebKit-https.git] / WebKit / ChangeLog
1 2006-12-19  John Sullivan  <sullivan@apple.com>
2
3         Reviewed by Darin
4
5         - fix for unrepro infinite recursion bug:
6         <rdar://problem/4448181> CrashTracer: 154 crashes in Safari at com.apple.AppKit: 
7         -[NSView isDescendantOf:] + 24; infinite recursion in makeFirstResponder logic
8
9         * WebView/WebView.mm:
10         added becomingFirstResponder BOOL to private struct
11         (-[WebView becomeFirstResponder]):
12         use _private->becomingFirstResponder to guard against infinite recursion; complain on
13         debug builds if we run into this problem
14
15 2006-12-19  Timothy Hatcher  <timothy@apple.com>
16
17         Reviewed by Darin.
18
19         <rdar://problem/4891774> Local WebCore/WebBrowser builds fail in 9A328 due to warning about ObjC-2.0 language features
20
21         * WebKit.xcodeproj/project.pbxproj:
22
23 2006-12-18  Ada Chan  <adachan@apple.com>
24
25         Reviewed by Adam.
26         
27         Moved canRunBeforeUnloadConfirmPanel, runBeforeUnloadConfirmPanel, and closeWindowSoon
28         from WebCoreFrameBridge to Chrome.
29
30         * COM/ChromeClientWin.cpp:
31         (ChromeClientWin::canRunBeforeUnloadConfirmPanel):
32         (ChromeClientWin::runBeforeUnloadConfirmPanel):
33         (ChromeClientWin::closeWindowSoon):
34         * COM/ChromeClientWin.h:
35         * WebCoreSupport/WebChromeClient.h:
36         * WebCoreSupport/WebChromeClient.mm:
37         (WebChromeClient::canRunBeforeUnloadConfirmPanel):
38         (WebChromeClient::runBeforeUnloadConfirmPanel):
39         (WebChromeClient::closeWindowSoon):
40         * WebCoreSupport/WebFrameBridge.mm:
41
42 2006-12-18  Alice Liu  <alice.liu@apple.com>
43
44         Reviewed by Adam.
45
46         Have the Editor handle deletion instead of WebHTMLView
47
48         * WebKitPrefix.h:
49         Turned on WebCore deletion
50
51         * WebView/WebHTMLViewInternal.h:
52         Moved ownership of startNewKillRingSequence to the WebCore::Editor
53
54         * WebView/WebHTMLView.m:
55         (-[NSArray becomeFirstResponder]):
56         Use the Editor's startNewKillRingSequence flag
57
58         (-[NSArray deleteForward:]):
59         (-[NSArray deleteBackward:]):
60         (-[NSArray deleteWordForward:]):
61         (-[NSArray deleteWordBackward:]):
62         (-[NSArray deleteToBeginningOfLine:]):
63         (-[NSArray deleteToEndOfLine:]):
64         (-[NSArray deleteToBeginningOfParagraph:]):
65         (-[NSArray deleteToEndOfParagraph:]):
66         (-[NSArray deleteToMark:]):
67         use Editor::deleteWithDirection instead of WebHTMLView's
68
69 2006-12-16  Adele Peterson  <adele@apple.com>
70
71         Reviewed by Adam.
72
73         WebKit part of fix for:
74         <rdar://problem/4463829> Switch to use new search field implementation for <input type="search">
75
76         * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Initialize WKDrawTextFieldCellFocusRing.
77         * WebInspector/webInspector/inspector.css: Set -webkit-user-select:text and text-shadow:none on the search field.
78           These are both properties that we didn't honor in the old control, and the inherited values didn't work or look right.
79
80 2006-12-16  Beth Dakin  <bdakin@apple.com>
81
82         Reviewed by Adam.
83
84         WebKit side of making WebCore context menus support state and
85         enabled/disabled.
86
87         * WebCoreSupport/WebContextMenuClient.h: contextMenuItemSelected
88         takes a pointer to the parentMenu now since menu items no longer
89         hold onto it.
90         * WebCoreSupport/WebContextMenuClient.mm: Same.
91         (WebContextMenuClient::contextMenuItemSelected): Same.
92         * WebView/WebHTMLView.m: Must call setAutoenablesItems:NO on our
93         menu.
94         (-[NSArray menuForEvent:]):
95         * WebView/WebUIDelegatePrivate.h: No need for if-def.
96
97 2006-12-15  Anders Carlsson  <acarlsson@apple.com>
98
99         Reviewed by Geoff.
100
101         Update for WebCore changes.
102         
103         * WebCoreSupport/WebFrameLoaderClient.h:
104         * WebCoreSupport/WebFrameLoaderClient.mm:
105         (WebFrameLoaderClient::dispatchIdentifierForInitialRequest):
106         * WebView/WebDataSource.mm:
107         (-[WebDataSource response]):
108
109 2006-12-15  Anders Carlsson  <acarlsson@apple.com>
110
111         Reviewed by Darin.
112
113         Update for WebCore changes.
114         
115         * WebCoreSupport/WebFrameLoaderClient.h:
116         * WebCoreSupport/WebFrameLoaderClient.mm:
117         (WebFrameLoaderClient::willUseArchive):
118         * WebView/WebDataSource.mm:
119         (-[WebDataSource _URLForHistory]):
120
121 2006-12-15  Marvin Decker  <marv.decker@gmail.com>
122
123         Reviewed by Darin and Alexey.
124
125         Fix the Windows build, move various Client implementations out of
126         WebCore and into WebKit.
127
128         * COM/ChromeClientWin.cpp: Added.
129         (ChromeClientWin::~ChromeClientWin):
130         (ChromeClientWin::chromeDestroyed):
131         (ChromeClientWin::setWindowRect):
132         (ChromeClientWin::windowRect):
133         (ChromeClientWin::pageRect):
134         (ChromeClientWin::scaleFactor):
135         (ChromeClientWin::focus):
136         (ChromeClientWin::unfocus):
137         (ChromeClientWin::createWindow):
138         (ChromeClientWin::createModalDialog):
139         (ChromeClientWin::show):
140         (ChromeClientWin::canRunModal):
141         (ChromeClientWin::runModal):
142         (ChromeClientWin::setToolbarsVisible):
143         (ChromeClientWin::toolbarsVisible):
144         (ChromeClientWin::setStatusbarVisible):
145         (ChromeClientWin::statusbarVisible):
146         (ChromeClientWin::setScrollbarsVisible):
147         (ChromeClientWin::scrollbarsVisible):
148         (ChromeClientWin::setMenubarVisible):
149         (ChromeClientWin::menubarVisible):
150         (ChromeClientWin::setResizable):
151         (ChromeClientWin::addMessageToConsole):
152         * COM/ChromeClientWin.h: Added.
153         * COM/ContextMenuClientWin.cpp: Added.
154         (ContextMenuClientWin::~ContextMenuClientWin):
155         (ContextMenuClientWin::contextMenuDestroyed):
156         (ContextMenuClientWin::addCustomContextMenuItems):
157         (ContextMenuClientWin::contextMenuItemSelected):
158         (ContextMenuClientWin::copyLinkToClipboard):
159         (ContextMenuClientWin::downloadURL):
160         (ContextMenuClientWin::copyImageToClipboard):
161         (ContextMenuClientWin::lookUpInDictionary):
162         (ContextMenuClientWin::speak):
163         (ContextMenuClientWin::stopSpeaking):
164         * COM/ContextMenuClientWin.h: Added.
165         * COM/EditorClientWin.cpp: Added.
166         (EditorClientWin::~EditorClientWin):
167         (EditorClientWin::pageDestroyed):
168         (EditorClientWin::shouldDeleteRange):
169         (EditorClientWin::shouldShowDeleteInterface):
170         (EditorClientWin::smartInsertDeleteEnabled):
171         (EditorClientWin::isContinuousSpellCheckingEnabled):
172         (EditorClientWin::toggleContinuousSpellChecking):
173         (EditorClientWin::isGrammarCheckingEnabled):
174         (EditorClientWin::toggleGrammarChecking):
175         (EditorClientWin::spellCheckerDocumentTag):
176         (EditorClientWin::selectWordBeforeMenuEvent):
177         (EditorClientWin::isEditable):
178         (EditorClientWin::shouldBeginEditing):
179         (EditorClientWin::shouldEndEditing):
180         (EditorClientWin::shouldInsertNode):
181         (EditorClientWin::shouldInsertText):
182         (EditorClientWin::shouldApplyStyle):
183         (EditorClientWin::didBeginEditing):
184         (EditorClientWin::respondToChangedContents):
185         (EditorClientWin::didEndEditing):
186         (EditorClientWin::registerCommandForUndo):
187         (EditorClientWin::registerCommandForRedo):
188         (EditorClientWin::clearUndoRedoOperations):
189         (EditorClientWin::canUndo):
190         (EditorClientWin::canRedo):
191         (EditorClientWin::undo):
192         (EditorClientWin::redo):
193         * COM/EditorClientWin.h: Added.
194         * COM/WebFrame.cpp:
195         (WebFrame::WebFrame):
196         (WebFrame::initWithName):
197         * COM/WebFrame.h:
198         * COM/WebFrameLoaderClient.cpp: Added.
199         (WebFrameLoaderClient::WebFrameLoaderClient):
200         (WebFrameLoaderClient::~WebFrameLoaderClient):
201         (WebFrameLoaderClient::frameLoaderDestroyed):
202         (WebFrameLoaderClient::hasWebView):
203         (WebFrameLoaderClient::hasFrameView):
204         (WebFrameLoaderClient::hasBackForwardList):
205         (WebFrameLoaderClient::resetBackForwardList):
206         (WebFrameLoaderClient::provisionalItemIsTarget):
207         (WebFrameLoaderClient::loadProvisionalItemFromPageCache):
208         (WebFrameLoaderClient::invalidateCurrentItemPageCache):
209         (WebFrameLoaderClient::privateBrowsingEnabled):
210         (WebFrameLoaderClient::makeDocumentView):
211         (WebFrameLoaderClient::makeRepresentation):
212         (WebFrameLoaderClient::forceLayout):
213         (WebFrameLoaderClient::forceLayoutForNonHTML):
214         (WebFrameLoaderClient::updateHistoryForCommit):
215         (WebFrameLoaderClient::updateHistoryForBackForwardNavigation):
216         (WebFrameLoaderClient::updateHistoryForReload):
217         (WebFrameLoaderClient::updateHistoryForStandardLoad):
218         (WebFrameLoaderClient::updateHistoryForInternalLoad):
219         (WebFrameLoaderClient::updateHistoryAfterClientRedirect):
220         (WebFrameLoaderClient::setCopiesOnScroll):
221         (WebFrameLoaderClient::tokenForLoadErrorReset):
222         (WebFrameLoaderClient::resetAfterLoadError):
223         (WebFrameLoaderClient::doNotResetAfterLoadError):
224         (WebFrameLoaderClient::willCloseDocument):
225         (WebFrameLoaderClient::detachedFromParent1):
226         (WebFrameLoaderClient::detachedFromParent2):
227         (WebFrameLoaderClient::detachedFromParent3):
228         (WebFrameLoaderClient::detachedFromParent4):
229         (WebFrameLoaderClient::loadedFromPageCache):
230         (WebFrameLoaderClient::dispatchDidHandleOnloadEvents):
231         (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
232         (WebFrameLoaderClient::dispatchDidCancelClientRedirect):
233         (WebFrameLoaderClient::dispatchWillPerformClientRedirect):
234         (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
235         (WebFrameLoaderClient::dispatchWillClose):
236         (WebFrameLoaderClient::dispatchDidReceiveIcon):
237         (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
238         (WebFrameLoaderClient::dispatchDidReceiveTitle):
239         (WebFrameLoaderClient::dispatchDidCommitLoad):
240         (WebFrameLoaderClient::dispatchDidFinishLoad):
241         (WebFrameLoaderClient::dispatchDidFirstLayout):
242         (WebFrameLoaderClient::dispatchShow):
243         (WebFrameLoaderClient::cancelPolicyCheck):
244         (WebFrameLoaderClient::dispatchWillSubmitForm):
245         (WebFrameLoaderClient::dispatchDidLoadMainResource):
246         (WebFrameLoaderClient::clearLoadingFromPageCache):
247         (WebFrameLoaderClient::isLoadingFromPageCache):
248         (WebFrameLoaderClient::revertToProvisionalState):
249         (WebFrameLoaderClient::clearUnarchivingState):
250         (WebFrameLoaderClient::progressStarted):
251         (WebFrameLoaderClient::progressCompleted):
252         (WebFrameLoaderClient::setMainFrameDocumentReady):
253         (WebFrameLoaderClient::willChangeTitle):
254         (WebFrameLoaderClient::didChangeTitle):
255         (WebFrameLoaderClient::finishedLoading):
256         (WebFrameLoaderClient::finalSetupForReplace):
257         (WebFrameLoaderClient::setDefersLoading):
258         (WebFrameLoaderClient::isArchiveLoadPending):
259         (WebFrameLoaderClient::cancelPendingArchiveLoad):
260         (WebFrameLoaderClient::clearArchivedResources):
261         (WebFrameLoaderClient::canHandleRequest):
262         (WebFrameLoaderClient::canShowMIMEType):
263         (WebFrameLoaderClient::representationExistsForURLScheme):
264         (WebFrameLoaderClient::generatedMIMETypeForURLScheme):
265         (WebFrameLoaderClient::frameLoadCompleted):
266         (WebFrameLoaderClient::restoreScrollPositionAndViewState):
267         (WebFrameLoaderClient::provisionalLoadStarted):
268         (WebFrameLoaderClient::shouldTreatURLAsSameAsCurrent):
269         (WebFrameLoaderClient::addHistoryItemForFragmentScroll):
270         (WebFrameLoaderClient::didFinishLoad):
271         (WebFrameLoaderClient::prepareForDataSourceReplacement):
272         (WebFrameLoaderClient::setTitle):
273         (WebFrameLoaderClient::userAgent):
274         * COM/WebFrameLoaderClient.h: Added.
275         * COM/WebKitDLL.h:
276         * WebKit.vcproj/WebKit.vcproj:
277
278 2006-12-15  Anders Carlsson  <acarlsson@apple.com>
279
280         Reviewed by Darin.
281
282         Include ResourceError.h.
283         
284         * Plugins/WebNetscapePluginStream.mm:
285         * WebKit.xcodeproj/project.pbxproj:
286
287 2006-12-14  Anders Carlsson  <acarlsson@apple.com>
288
289         Reviewed by Maciej.
290
291         Update for WebCore changes.
292         
293         * WebCoreSupport/WebFrameLoaderClient.h:
294         * WebCoreSupport/WebFrameLoaderClient.mm:
295         (WebFrameLoaderClient::incrementProgress):
296         (WebFrameLoaderClient::committedLoad):
297         (WebFrameLoaderClient::deliverArchivedResources):
298         * WebView/WebView.mm:
299         (-[WebView _incrementProgressForIdentifier:length:]):
300         * WebView/WebViewInternal.h:
301
302 2006-12-14  Timothy Hatcher  <timothy@apple.com>
303
304         Reviewed by Darin.
305
306         <rdar://problem/4827549> need NSRange-based selection support exposed.
307
308         * WebView/WebFrame.mm:
309         (-[WebFrame _selectedNSRange]):
310         (-[WebFrame _selectNSRange:]):
311         * WebView/WebFramePrivate.h:
312
313 2006-12-14  Anders Carlsson  <acarlsson@apple.com>
314
315         Reviewed by John.
316
317         Update for WebCore changes.
318         
319         * WebCoreSupport/WebFrameLoaderClient.h:
320         * WebCoreSupport/WebFrameLoaderClient.mm:
321         (WebFrameLoaderClient::dispatchDidFailLoading):
322         (WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
323         (WebFrameLoaderClient::dispatchDidFailLoad):
324         (WebFrameLoaderClient::dispatchUnableToImplementPolicy):
325         (WebFrameLoaderClient::setMainDocumentError):
326         (WebFrameLoaderClient::cancelledError):
327         (WebFrameLoaderClient::cannotShowURLError):
328         (WebFrameLoaderClient::interruptForPolicyChangeError):
329         (WebFrameLoaderClient::cannotShowMIMETypeError):
330         (WebFrameLoaderClient::fileDoesNotExistError):
331         (WebFrameLoaderClient::shouldFallBack):
332
333 2006-12-13  Maciej Stachowiak  <mjs@apple.com>
334
335         Reviewed by Anders.
336         
337         - adjusted for changes from NSURLRequest to ResourceRequest
338
339         * Plugins/WebPluginController.mm:
340         * WebCoreSupport/WebFrameLoaderClient.h:
341         * WebCoreSupport/WebFrameLoaderClient.mm:
342         (WebFrameLoaderClient::updateHistoryForReload):
343         (WebFrameLoaderClient::dispatchIdentifierForInitialRequest):
344         (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
345         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
346         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
347         (WebFrameLoaderClient::startDownload):
348         (WebFrameLoaderClient::cannotShowURLError):
349         (WebFrameLoaderClient::createDocumentLoader):
350         * WebView/WebDataSource.mm:
351         (-[WebDataSource _initWithDocumentLoader:]):
352         (-[WebDataSource initialRequest]):
353         (-[WebDataSource request]):
354         * WebView/WebDocumentLoaderMac.h:
355         * WebView/WebDocumentLoaderMac.mm:
356         (WebDocumentLoaderMac::WebDocumentLoaderMac):
357         * WebView/WebFrame.mm:
358         (-[WebFrame _createItem:]):
359         (-[WebFrame _loadItem:withLoadType:]):
360         (-[WebFrame loadArchive:]):
361
362 2006-12-12  Anders Carlsson  <acarlsson@apple.com>
363
364         Reviewed by Darin.
365
366         * WebCoreSupport/WebFrameLoaderClient.h:
367         * WebCoreSupport/WebFrameLoaderClient.mm:
368         (WebFrameLoaderClient::download):
369         Get the handle and proxy from the ResourceHandle now that they aren't passed to us.
370         
371 2006-12-11  Darin Adler  <darin@apple.com>
372
373         Reviewed by Brady.
374
375         - did some of the Mac-specific file moves mentioned in my recent mail to the WebKit list
376
377         * WebCoreSupport/WebFrameBridge.h: Updated for change to WebCoreKeyboardAccess.
378         * WebCoreSupport/WebFrameBridge.mm:
379         (-[WebFrameBridge _retrieveKeyboardUIModeFromPreferences:]): Ditto.
380         (-[WebFrameBridge keyboardUIMode]): Ditto.
381
382 2006-12-11  Beth Dakin  <bdakin@apple.com>
383
384         Reviewed by Adam.
385
386         WebKit support for editing sub-menu actions.
387
388         * WebCoreSupport/WebContextMenuClient.h: New functions for the
389         speech sub-menu.
390         * WebCoreSupport/WebContextMenuClient.mm:
391         (WebContextMenuClient::speak):
392         (WebContextMenuClient::stopSpeaking):
393         * WebCoreSupport/WebEditorClient.h: New functions to toggle
394         spelling/grammar checking.
395         * WebCoreSupport/WebEditorClient.mm:
396         (WebEditorClient::toggleContinuousSpellChecking):
397         (WebEditorClient::toggleGrammarChecking):
398         * WebView/WebUIDelegatePrivate.h: Re-named some of the spelling
399         sub-menu tags.
400
401 2006-12-11  Alice Liu  <alice.liu@apple.com>
402
403         Reviewed by Geoff, Adam.
404         
405         switch to use the Editor for copying URLs
406
407         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
408         (-[WebDefaultUIDelegate copyLinkToClipboard:]):
409         Call down to the editor for this. 
410         * WebCoreSupport/WebSystemInterface.m:
411         (InitWebCoreSystemInterface):
412         Add some calls necessary for Pasteboard::writeURL to work
413
414 2006-12-11  Darin Adler  <darin@apple.com>
415
416         Reviewed by Brady.
417
418         - http://bugs.webkit.org/show_bug.cgi?id=11794
419           fix lifetime problems affecting Frame's ownerElement pointer
420
421         * WebCoreSupport/WebFrameBridge.mm:
422         (-[WebFrameBridge finishInitializingWithPage:WebCore::frameName:frameView:ownerElement:]):
423         (-[WebFrameBridge initSubframeWithOwnerElement:frameName:frameView:]):
424         (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]):
425         Use HTMLFrameOwnerElement.
426
427         * WebCoreSupport/WebFrameLoaderClient.mm: Include the relevant headers for the
428         HTMLFormElement class.
429
430         * WebKit.xcodeproj/project.pbxproj: Let Xcode have its way.
431
432         * WebView/WebFrame.mm: (-[WebFrame frameElement]): Update includes and types for the
433         change in return type of ownerElement.
434
435 2006-12-11  David Harrison  <harrison@apple.com>
436
437         Fix previous checkin where I committed the wrong file.
438
439         <rdar://problem/4863611> Xyle Scope crashes at launch due to WebCore-521.29.3
440
441         * WebView/WebFrame.mm:
442         (-[WebFrame frameElement]):
443         Add nil check.
444         
445         * WebView/WebPreferences.m:
446         (-[WebPreferences editableLinkBehavior]):
447         Reverted to previous.
448
449 2006-12-08  David Hyatt  <hyatt@apple.com>
450
451         Land new ICU abstraction layer.  Patch by Lars.
452
453         Reviewed by me
454
455         * ForwardingHeaders/wtf/icu/UnicodeIcu.h: Added.
456         * ForwardingHeaders/wtf/unicode/Unicode.h: Added.
457         * WebKit.xcodeproj/project.pbxproj:
458
459 === Safari-521.32 ===
460
461 2006-12-08  Timothy Hatcher  <timothy@apple.com>
462
463         Rolling out a change that broke Mail stationary.
464         <rdar://problem/4699166> REGRESSION: Background images in Mail stationery do not load
465
466         * WebView/WebUnarchivingState.m:
467         (-[WebUnarchivingState archivedResourceForURL:]):
468
469 2006-12-08  Don Gibson  <dgibson77@gmail.com>
470
471         Reviewed and landed by Alexey.
472
473         http://bugs.webkit.org/show_bug.cgi?id=11759:
474         Windows build bustage
475
476         * COM/WebFrame.cpp:
477         (WebFrame::loadDataSource):
478         * COM/WebFrame.h:
479
480 2006-12-08  David Harrison  <harrison@apple.com>
481
482         Reviewed by Brady.
483
484         <rdar://problem/4863611> Xyle Scope crashes at launch due to WebCore-521.29.3
485
486         * WebView/WebPreferences.m:
487         (-[WebPreferences editableLinkBehavior]):
488         Add nil check.
489
490 2006-12-07  Beth Dakin  <bdakin@apple.com>
491
492         Reviewed by Brady.
493
494         Build fix for WebCore ContextMenus. It got broken by r18046.
495
496         * WebView/WebHTMLView.m:
497         (-[NSArray menuForEvent:]):
498
499 2006-12-07  Beth Dakin  <bdakin@apple.com>
500
501         Reviewed by Brady.
502
503         Make some parameters const and const references.
504
505         * WebCoreSupport/WebContextMenuClient.h:
506         * WebCoreSupport/WebContextMenuClient.mm:
507         (WebContextMenuClient::contextMenuItemSelected):
508         (WebContextMenuClient::copyLinkToClipboard):
509         (WebContextMenuClient::downloadURL):
510         (WebContextMenuClient::copyImageToClipboard):
511
512 2006-12-06  Brady Eidson  <beidson@apple.com>
513
514         Reviewed by John Sullivan
515
516         Fixes http://bugs.webkit.org/show_bug.cgi?id=11675 and <rdar://4857669>
517         Now we need to explicitly set the data source when loading from a page cache
518
519         * History/WebHistoryItem.mm:
520         (-[WebHistoryItem _scheduleRelease]): Enhanced a logging message
521         (+[WebHistoryItem _releasePageCache:]): Ditto
522         (+[WebHistoryItem _releaseAllPendingPageCaches]): Ditto
523         * WebCoreSupport/WebFrameLoaderClient.mm:
524         (WebFrameLoaderClient::setDocumentViewFromPageCache): Reset the View's DataSource from the cache, effectively reopening it
525         * WebView/WebHTMLView.m:
526         (-[NSArray setDataSource:]): Properly Handle resetting the DataSource and "reopening" the view
527
528 2006-12-06  Brady Eidson  <beidson@apple.com>
529
530         Reviewed by Adam and Oliver
531
532         While working on http://bugs.webkit.org/show_bug.cgi?id=11675 I
533         decided to fix much of the null-deref problems that creeped in via 
534         the loader refactoring.  This isn't changing behavior, just reintroducing
535         the free nil checking we used to have with pure ObjC
536
537         * WebView/WebHTMLView.m:
538         (-[NSArray menuForEvent:]):  Explicitly check for null frames
539         (-[NSArray mouseDown:]):  Ditto
540         (-[NSArray mouseDragged:]):  Ditto
541         (-[NSArray mouseUp:]):  Ditto
542         (-[NSArray performKeyEquivalent:]):  Ditto
543         (-[WebHTMLView elementAtPoint:allowShadowContent:]):  Ditto
544
545 2006-12-05  John Sullivan  <sullivan@apple.com>
546
547         Reviewed by Beth
548
549         Updated to match Frame -> Editor changes in WebCore
550
551         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
552         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
553         guessesForUngrammaticalSelection() is now in Editor
554
555         * WebView/WebHTMLView.m:
556         (-[WebHTMLView _isSelectionUngrammatical]):
557         isSelectionUngrammatical() is now in Editor
558         (-[WebHTMLView _isSelectionMisspelled]):
559         isSelectionMisspelled() is now in Editor
560
561         (-[WebHTMLView checkSpelling:]):
562         advanceToNextMisspelling() is now in Editor
563         (-[WebHTMLView showGuessPanel:]):
564         ditto
565
566 2006-12-05  John Sullivan  <sullivan@apple.com>
567
568         Reviewed by Adam
569         
570         Old context-menu mechanism fix for:
571         <rdar://problem/4864351> Should leave out "No Guesses Found" from context menu for bad grammar
572
573         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
574         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
575         Leave out "No Guesses Found" and separator for grammar-checking case.
576
577 2006-12-05  John Sullivan  <sullivan@apple.com>
578
579         build fix
580
581         * WebView/WebViewPrivate.h:
582         * WebView/WebView.mm:
583         (-[WebView isGrammarCheckingEnabled]):
584         define isGrammarCheckingEnabled whether on Tiger or not (just return NO on Tiger)
585
586 2006-12-04  John Sullivan  <sullivan@apple.com>
587
588         Reviewed by Darin
589
590         WebKit part of fix for:
591         <rdar://problem/4817188> Context menu for bad grammar should include suggestions and "Ignore Grammar"
592
593         The context menu mechanism is currently in flux; the old mechanism is still in place, but an
594         up-and-coming new mechanism is waiting in the wings. I updated both of them, but couldn't
595         test the new mechanism because it doesn't work well enough yet. Most of this WebKit code
596         can be deleted when the new mechanism is in place.
597
598         * WebView/WebUIDelegatePrivate.h:
599         added WebMenuItemTagIgnoreGrammar
600
601         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
602         (-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):
603         added case for WebMenuItemTagIgnoreGrammar
604         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
605         now considers adding grammar-related items as well as spelling-related items
606         
607         * WebView/WebHTMLViewPrivate.h:
608         declared _isSelectionUngrammatical
609
610         * WebView/WebHTMLView.m:
611         (-[WebHTMLView _isSelectionUngrammatical]):
612         new method, calls through to WebCore
613         (-[WebHTMLView _ignoreGrammarFromMenu:]):
614         new method, calls _ignoreSpellingFromMenu: since NSSpellChecker has one method for both
615
616         * English.lproj/Localizable.strings:
617         updated for "Ignore Grammar" menu item title
618
619 2006-12-04  Darin Adler  <darin@apple.com>
620
621         Reviewed by Adele.
622
623         * WebCoreSupport/WebFrameLoaderClient.mm:
624         (WebFrameLoaderClient::actionDictionary): Changed to use the new
625         findEventWithKeyState function in WebCore instead of a local function
626         in this file.
627
628 2006-12-04  Geoffrey Garen  <ggaren@apple.com>
629
630         Rolled out the WebDashboardBehaviorUseBackwardCompatibilityModeEnabled
631         part of my last checkin.
632         
633         We have to turn on support for backward compatibility mode to avoid Dashboard
634         regressions in the short term.
635
636         * WebView/WebView.mm:
637         (-[WebView _setDashboardBehavior:to:]):
638
639 2006-12-02  Geoffrey Garen  <ggaren@apple.com>
640
641         Reviewed by Darin Adler.
642         
643         Added SPI for enabling Dashboard backward compatibility mode. For now,
644         we enable it unconditionally for Dashboard and Dashcode. Once they 
645         implement specific support for the backward compatibility mode behavior,
646         we can change that.
647         
648         Set the default WebDashboardBehaviorUseBackwardCompatibilityModeEnabled
649         to YES in order to turn this code on.
650
651         * WebView/WebView.mm:
652         (-[WebView _setDashboardBehavior:to:]):
653         (-[WebView _dashboardBehavior:]):
654         * WebView/WebViewPrivate.h:
655
656 2006-12-04  Darin Adler  <darin@apple.com>
657
658         Reviewed by Alice.
659
660         * WebCoreSupport/WebEditorClient.h: Removed "_web_" prefix from
661         C++ userVisibleString member function.
662         * WebCoreSupport/WebEditorClient.mm: (WebEditorClient::userVisibleString):
663         Ditto.
664
665         * WebView/WebView.mm: (-[WebView selectedFrame]): Removed extra return statement.
666
667 2006-12-04  Don Gibson  <dgibson77@gmail.com>
668
669         Reviewed and landed by Alexey.
670
671         http://bugs.webkit.org/show_bug.cgi?id=11738:
672         Make link clicking work again on Windows.
673
674         The WebKit changes are to ignore WM_MOUSEMOVED messages when the mouse
675         hasn't actually moved, which were preventing clicks from actually
676         getting dispatched in many cases.  It's a peculiarity of Windows mouse
677         handling that we receive these at all.
678
679         * COM/WebView.cpp:
680         (WebView::WebView):
681         (WebView::mouseMoved):
682         * COM/WebView.h:
683
684 2006-12-04  John Sullivan  <sullivan@apple.com>
685
686         Reviewed by Anders
687
688         - fixed <rdar://problem/4857833> REGRESSION: When ctrl-clicking on a misspelled word, "Ignore Spelling" and "Learn Spelling" 
689           menu items not displayed in the contextual menu
690
691         * WebView/WebHTMLView.m:
692         (-[WebHTMLView _isSelectionMisspelled]):
693         We were computing isSelectionMisspelled by calling WebCore, but then ignoring the result and always
694         returning NO. D'oh!
695
696 2006-12-01  Beth Dakin  <bdakin@apple.com>
697
698         Reviewed by Adam.
699
700         Changes to support sub-menus in WebCore ContextMenus.
701
702         * WebCoreSupport/WebContextMenuClient.mm:
703         (WebContextMenuClient::contextMenuItemSelected): 
704         ContextMenuItem::menu() is now called parentMenu()
705         * WebView/WebUIDelegatePrivate.h: New not-yet-API tags.
706
707 2006-12-01  Darin Adler  <darin@apple.com>
708
709         Reviewed by Mitz.
710
711         - fix http://bugs.webkit.org/show_bug.cgi?id=11628
712           REGRESSION (r17597): Command-return in native text fields doesn't open a new tab or window
713
714         * WebCoreSupport/WebFrameLoaderClient.mm:
715         (findKeyStateEvent): Added. Helper that finds the mouse or keyboard event in a chain
716         of events and their underlying events.
717         (findMouseEvent): Added. Same, but specifically for mouse events.
718         (WebFrameLoaderClient::actionDictionary): Rewrote to use the above functions. This means we
719         use the modifiers from the underlying events rather than just the one from the event itself.
720         So if the event is a DOM activate event, we can still see the modifiers from the original
721         keyboard event that triggered it. Has no effect if the event is already the right type or
722         if there is no underlying event.
723
724         * WebView/WebFrame.mm: Added a newly-needed include.
725
726         * WebKit.xcodeproj/project.pbxproj: Xcode wants what it wants.
727
728 2006-12-01  Don Gibson  <dgibson77@gmail.com>
729
730         Reviewed by Mitz.
731
732         http://bugs.webkit.org/show_bug.cgi?id=11732:
733         Windows build bustage.
734
735         * COM/WebFrame.cpp:
736         (WebFrame::initWithName):
737
738 2006-12-01  Timothy Hatcher  <timothy@apple.com>
739
740         Reviewed by Adam.
741
742         <rdar://problem/4841432> 9A312: iWeb crashes on launch; _WebReportError missing from WebKit
743
744         Added back WebReportAssertionFailure and WebReportError for apps that still need these symbols.
745
746         * Misc/OldWebAssertions.c: Added.
747         (WebReportAssertionFailure):
748         (WebReportError):
749         * WebKit.LP64.exp: added the new symbols, and sorted the file
750         * WebKit.exp: added the new symbols, and sorted the file
751         * WebKit.xcodeproj/project.pbxproj:
752
753 2006-11-30  Geoffrey Garen  <ggaren@apple.com>
754
755         Rubber Stamped by Anders Carlsson.
756
757         Global rename of Document::focusNode to Document::focusedNode. 'focusNode'
758         suggested a command, and conflicted with a different meaning for 'focusNode'
759         in the Mozilla selection API.
760
761         * WebView/WebHTMLView.m:
762         (-[NSArray clearFocus]):
763
764 2006-11-30  Matt Lilek  <pewtermoose@gmail.com>
765
766         Reviewed by Mitz.
767
768         Bug 10698: Scroll wheel causes inspector to shift up
769         http://bugs.webkit.org/show_bug.cgi?id=10698
770
771         Remove size attribute from the tree popup as a workaround for
772         http://bugs.webkit.org/show_bug.cgi?id=11362 Bug 11362: Native popup with size="1" wraps options
773
774         * WebInspector/webInspector/inspector.css:
775         * WebInspector/webInspector/inspector.html:
776
777 2006-11-30  Matt Lilek  <pewtermoose@gmail.com>
778
779         Reviewed by Tim H.
780
781         Move web inspector style markup to javascript to fix http://bugs.webkit.org/show_bug.cgi?id=6724
782         Bug 6724: Text copied from Web Inspector is different from actual text
783
784         * WebInspector/webInspector/inspector.css:
785         * WebInspector/webInspector/inspector.js:
786
787 2006-11-30  Adam Roben  <aroben@apple.com>
788
789         Reviewed by Beth.
790
791         Put code in place to use WebCore context menus when they are turned
792         on.
793
794         * WebView/WebHTMLView.m:
795         (-[NSArray menuForEvent:]):
796
797 2006-11-29  Timothy Hatcher  <timothy@apple.com>
798
799         Reviewed by Oliver.
800
801         Keep preferences separate from the rest of the client, making sure we are using expected preference values.
802         This lets the inspector work when plugins are disabled for the WebView.
803
804         * WebInspector/WebInspector.m:
805         (-[NSWindow window]):
806
807 2006-11-29  Anders Carlsson  <acarlsson@apple.com>
808
809         Reviewed by Tim.
810
811         Add back methods in WebCoreStatistics that are still used by Tiger Safari.
812         
813         * Misc/WebCoreStatistics.h:
814         * Misc/WebCoreStatistics.m:
815         (+[WebCoreStatistics emptyCache]):
816         (+[WebCoreStatistics setCacheDisabled:]):
817
818 2006-11-28  Alice Liu  <alice.liu@apple.com>
819
820         Reviewed by Maciej.
821
822         A fix for a couple failing layout tests involving copy/cut in iframes.
823
824         * WebCoreSupport/WebEditorClient.h:
825         * WebCoreSupport/WebEditorClient.mm:
826         (WebEditorClient::dataForArchivedSelection):
827         Use the frame parameter instead of using the webview's selectedFrame. 
828
829 2006-11-28  Beth Dakin  <bdakin@apple.com>
830
831         Reviewed by Geoffff.
832
833         Fix for http://bugs.webkit.org/show_bug.cgi?id=11691 REGRESSION 
834         (r17399, r17511): WebElementDictionary no longer returns nil 
835         NSStrings
836
837         String's NSString* operator converts null Strings to empty 
838         NSStrings for compatibility with AppKit. We need to work around 
839         that here.
840
841         * Misc/WebElementDictionary.m:
842         (NSStringOrNil):
843         (-[WebElementDictionary _altDisplayString]):
844         (-[WebElementDictionary _spellingToolTip]):
845         (-[WebElementDictionary _title]):
846         (-[WebElementDictionary _titleDisplayString]):
847         (-[WebElementDictionary _textContent]):
848
849 2006-11-28  Geoffrey Garen  <ggaren@apple.com>
850
851         Reviewed by Beth Dakin.
852
853         Fixed <rdar://problem/4844855> Should clarify when to create clients in 
854         the WebCore client API
855         
856         All clients must now be supplied as constructor arguments. This clarifies 
857         when you need to create clients, and also guarantees that objects can't 
858         (for the most part) be in a clientless state.
859
860         Layout tests pass. No leaks reported.
861         
862         * WebCoreSupport/WebFrameBridge.mm: Shuffled around initialization and changed
863         some arguments to resolve ciruclar dependencies at init time.
864         (-[WebFrame _initWithWebFrameView:webView:bridge:]): We no longer call setClient
865         here, because the client is set up at construction time.
866
867 2006-11-28  Anders Carlsson  <acarlsson@apple.com>
868
869         Reviewed by Maciej.
870
871         Update for changes to ResourceRequest.
872         
873         * WebCoreSupport/WebChromeClient.mm:
874         (WebChromeClient::createWindow):
875         (WebChromeClient::createModalDialog):
876         * WebCoreSupport/WebFrameLoaderClient.mm:
877         (WebFrameLoaderClient::canHandleRequest):
878
879 2006-11-28  Adam Roben  <aroben@apple.com>
880
881         Reviewed by Beth.
882
883         More WebCore context menu work.
884
885         * DefaultDelegates/WebDefaultUIDelegate.m: New stub delegate method implementation.
886         (-[NSApplication webView:contextMenuItemSelected:forElement:]):
887         * WebCoreSupport/WebContextMenuClient.h: Updated to match ContextMenuClient.h changes.
888         * WebCoreSupport/WebContextMenuClient.mm:
889         (WebContextMenuClient::addCustomContextMenuItems): Updated for method name changes.
890         (WebContextMenuClient::contextMenuItemSelected): Added new client method.
891         * WebView/WebUIDelegatePrivate.h: New private delegate method declaration.
892
893 2006-11-28  Alice Liu  <alice.liu@apple.com>
894
895         Reviewed by Justin and Adam.
896
897         * WebCoreSupport/WebEditorClient.h:
898         * WebCoreSupport/WebEditorClient.mm:
899         added the following        
900         (WebEditorClient::smartInsertDeleteEnabled):
901         (WebEditorClient::dataForArchivedSelectionInFrame):
902         (WebEditorClient::_web_userVisibleString):
903         (WebEditorClient::shouldInsertNode):
904         
905         * WebKitPrefix.h:
906         Added flags to control whether WebCore cut/copy/paste is enabled.
907         Turned on Cut and Copy, left Paste and Delete off
908         
909         * WebView/WebHTMLViewPrivate.h:
910         * WebView/WebHTMLView.m:
911         removed _can[Cut|Copy|Paste|Delete]
912         (-[NSArray validateUserInterfaceItem:]):
913         call the editor for canDHTML[C|C|P|D] and _can[C|C|P|D] instead 
914         (-[NSArray delete:]):
915         added code to call the editor's delete instead (not turned on)
916         (-[WebHTMLView copy:]):
917         added code to call the editor's copy (turned on)
918         (-[WebHTMLView cut:]):
919         added code to call the editor's cut (turned on)
920         (-[WebHTMLView paste:]):
921         added code to call the editor's paste (not turned on)
922
923 2006-11-28  Geoffrey Garen  <ggaren@apple.com>
924
925         Reviewed by Adam.
926
927         Fixed <rdar://problem/4844848> REGRESSION: extra cross-library ref/deref 
928         calls cause .5% PLT regression.
929         
930         Changed ref/deref calls to a single 'xxxDestroyed' call. Moved EditorClient
931         from the Frame to the Page, since it's only responsible for
932         Webview-level delegate calls.
933         
934         I don't really love this design, but it fixes the regression and allows
935         a single WebKit object to implement multiple client interfaces.
936         
937         Layout tests pass.
938
939 2006-11-27  Beth Dakin  <bdakin@apple.com>
940
941         Reviewed by Adam.
942
943         WebKit half of getting rid of the FixMes in ContextMenu.cpp
944
945         * WebCoreSupport/WebFrameLoaderClient.h: canHandleRequest takes a 
946         ResourceRequest now.
947         * WebCoreSupport/WebFrameLoaderClient.mm:
948         (WebFrameLoaderClient::canHandleRequest): Same.
949         * WebView/WebHTMLView.m:
950         (-[WebHTMLView _isSelectionMisspelled]): Call into WebCore.
951
952 2006-11-27  Ada Chan  <adachan@apple.com>
953
954         Reviewed by Adam.
955
956         Part of the change to move WebCoreCache into WebKit:
957         Added WebCache which handles emptying and enable/disabling the cache.
958         emptyCache and setCacheDisabled have been removed from WebCoreStatistics.
959
960         * Misc/WebCache.h: Added.
961         * Misc/WebCache.mm: Added.
962         * Misc/WebCoreStatistics.h:
963         * Misc/WebCoreStatistics.m:
964         (+[WebCoreStatistics statistics]):
965         * WebKit.exp:
966         * WebKit.xcodeproj/project.pbxproj:
967
968 2006-11-27  Anders Carlsson  <acarlsson@apple.com>
969
970         Reviewed by Adam.
971
972         Move addMessageToConsole to Chrome.
973
974         * WebCoreSupport/WebChromeClient.h:
975         * WebCoreSupport/WebChromeClient.mm:
976         (WebChromeClient::addMessageToConsole):
977         * WebCoreSupport/WebFrameBridge.mm:
978
979 2006-11-27  Brady Eidson  <beidson@apple.com>
980
981         Reviewed by Anders
982
983         Moved unused Private SPI to Internal and pruned other unused code
984
985         * Misc/WebIconDatabase.m:
986         * Misc/WebIconDatabasePrivate.h:
987
988 2006-11-21  Darin Adler  <darin@apple.com>
989
990         Reviewed by Maciej.
991
992         - make the close method do a more-complete job to prevent world leaks seen when
993           running some of the layout tests
994
995         * WebView/WebHTMLViewInternal.h: Added declaration of -[WebHTMLViewPrivate clear].
996         * WebView/WebHTMLView.m:
997         (-[WebHTMLViewPrivate clear]): Added method to drop references to other objects.
998         We want to do this at "close" time, rather than waiting for deallocation time.
999         This is especially important for the data source, which indirectly keeps a number of
1000         objects alive.
1001         (-[WebHTMLView close]): Added an explicit call to clear out the data source on the
1002         plug-in controller. Without this, we'd see the plug-in controller making calls to
1003         a deallocated data source during the layout tests. Added a call to the new clear method
1004         on the private object so that we release the objects at close time instead of waiting
1005         for deallocation time.
1006
1007         * WebKit.xcodeproj/project.pbxproj: Let Xcode have its way with the project file,
1008         because I can't fight the power.
1009
1010 2006-11-20  Samuel Weinig  <sam@webkit.org>
1011
1012         Reviewed by Alexey.
1013
1014         Fix for http://bugs.webkit.org/show_bug.cgi?id=11656
1015         Fix Windows build
1016
1017         * WebKit.vcproj/WebKit.vcproj: don't include directories that no
1018         longer exist.
1019
1020 2006-11-19  Beth Dakin  <bdakin@apple.com>
1021
1022         Reviewed by Adam.
1023
1024         WebKit side of new context menu actions.
1025
1026         * WebCoreSupport/WebContextMenuClient.h: These are for the 
1027         currently-WebKit-dependent menu actions.
1028         * WebCoreSupport/WebContextMenuClient.mm:
1029         (WebContextMenuClient::copyLinkToClipboard):
1030         (WebContextMenuClient::downloadURL):
1031         (WebContextMenuClient::copyImageToClipboard):
1032         (WebContextMenuClient::searchWithSpotlight):
1033         (WebContextMenuClient::lookUpInDictionary):
1034         * WebCoreSupport/WebEditorClient.h:
1035         * WebCoreSupport/WebEditorClient.mm:
1036         (core): These are to convert between WebViewInsertAction and 
1037         EditorInsertAction.
1038         (kit):
1039         (WebEditorClient::shouldInsertText): Added implementation for 
1040         shouldInsertText.
1041         * WebKit.xcodeproj/project.pbxproj:
1042         * WebView/WebHTMLView.m:
1043         (-[WebHTMLView _lookUpInDictionaryFromMenu:]): Moved 
1044         _lookUpInDictionary to be within the implementation of WebHTMLView 
1045         internal.
1046         * WebView/WebHTMLViewInternal.h: Add _lookUpInDictionaryFromMenu
1047         * WebView/WebViewInternal.h: Add _searchWithSpotlightFromMenu
1048
1049 2006-11-18  Don Gibson  <dgibson77@gmail.com>
1050
1051         Reviewed by Sam Weinig.
1052
1053         http://bugs.webkit.org/show_bug.cgi?id=11634:
1054         Fix segfault on startup for Windows build.  Also fix segfault when
1055         typing in a URL.
1056
1057         * COM/WebFrame.cpp:
1058         (WebFrame::initWithName):
1059
1060 === Safari-521.31 ===
1061
1062 2006-11-17  Timothy Hatcher  <timothy@apple.com>
1063
1064         Reviewed by Geoff.
1065
1066         <rdar://problem/4841044> Temporarily default Mail.app editable link clicking behavior, until they do it themselves
1067
1068         * WebKit.xcodeproj/project.pbxproj:
1069         * WebView/WebView.mm:
1070         (+[WebView initialize]):
1071         (-[WebView setPreferences:]):
1072
1073 2006-11-16  Don Gibson  <dgibson77@gmail.com>
1074
1075         Reviewed and landed by ap.
1076
1077         http://bugs.webkit.org/show_bug.cgi?id=11509:
1078         Windows build bustage.
1079
1080         * COM/WebFrame.cpp:
1081         (WebFrame::initWithName):
1082         (WebFrame::loadHTMLString):
1083         (WebFrame::stopLoading):
1084         (WebFrame::reload):
1085         (WebFrame::loadDataSource):
1086         (WebFrame::didReceiveData):
1087         (WebFrame::receivedResponse):
1088         (WebFrame::receivedAllData):
1089         * COM/WebFrame.h:
1090         * COM/WebView.cpp:
1091         (WebView::mouseMoved):
1092         (WebView::mouseDown):
1093         (WebView::mouseUp):
1094         (WebView::mouseDoubleClick):
1095         * WebKit.vcproj/WebKit.vcproj:
1096
1097 2006-11-16  Anders Carlsson  <acarlsson@apple.com>
1098
1099         Reviewed by Tim.
1100
1101         <rdar://problem/4841123>
1102         REGRESSION: Crash in WebCore::Range::boundaryPointsValid when replying to a mail Message
1103         
1104         * Misc/WebNSAttributedStringExtras.m:
1105         (+[NSAttributedString _web_attributedStringFromRange:]):
1106         If the range passed in is null, return null. When this function was in the bridge, it would never get called
1107         with a null range when nothing was selected. Instead, the range would just have invalid boundary points.
1108
1109 2006-11-15  Adam Roben  <aroben@apple.com>
1110
1111         Reviewed by Anders.
1112
1113         Added new WebContextMenuClient class to act as WebCore's ChromeClient,
1114         and moved context menu-related code there from WebChromeClient.
1115
1116         * WebCoreSupport/WebChromeClient.h:
1117         * WebCoreSupport/WebChromeClient.mm:
1118         * WebCoreSupport/WebContextMenuClient.h: Added.
1119         (WebContextMenuClient::webView):
1120         * WebCoreSupport/WebContextMenuClient.mm: Added.
1121         (WebContextMenuClient::create):
1122         (WebContextMenuClient::WebContextMenuClient):
1123         (WebContextMenuClient::ref):
1124         (WebContextMenuClient::deref):
1125         (WebContextMenuClient::addCustomContextMenuItems):
1126         * WebKit.xcodeproj/project.pbxproj: Added new files.
1127         * WebView/WebView.mm:
1128         (-[WebView _commonInitializationWithFrameName:groupName:]):
1129
1130 2006-11-15  Beth Dakin  <bdakin@apple.com>
1131         &   Adam Roben  <aroben@apple.com>
1132
1133         Reviewed by Adam & Beth.
1134
1135         WebKit side of first cut at engine context menus. Use the client to 
1136         call into the UIDelegate.
1137
1138         * WebCoreSupport/WebChromeClient.h:
1139         * WebCoreSupport/WebChromeClient.mm:
1140         (WebChromeClient::addCustomContextMenuItems):
1141         * WebKit.xcodeproj/project.pbxproj:
1142
1143 2006-11-15  Brady Eidson  <beidson@apple.com>
1144
1145         Reviewed by Maciej
1146
1147         Quick change of files to ObjC++ for BF cache re-write
1148
1149         * History/WebBackForwardList.m: Removed.
1150         * History/WebBackForwardList.mm: Added.
1151         * History/WebHistoryItem.m: Removed.
1152         * History/WebHistoryItem.mm: Added.
1153         * WebKit.xcodeproj/project.pbxproj:
1154
1155 2006-11-15  Brady Eidson  <beidson@apple.com>
1156
1157         Reviewed by Sarge
1158
1159         SPI addition
1160
1161         * WebView/WebFrame.mm:
1162         (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
1163         * WebView/WebFrameInternal.h:
1164         * WebView/WebFramePrivate.h:
1165
1166 2006-11-15  Brady Eidson  <beidson@apple.com>
1167
1168         Reviewed by Adele
1169
1170         <rdar://problem/4838729> - Replace mistakenly removed SPI
1171
1172         * WebView/WebHTMLView.m:
1173         (-[WebHTMLView _handleAutoscrollForMouseDragged:]):
1174         * WebView/WebHTMLViewPrivate.h:
1175
1176 2006-11-15  Anders Carlsson  <acarlsson@apple.com>
1177
1178         Reviewed by Adele.
1179
1180         isTargetItem is used by DRT, so make it private instead of internal.
1181         
1182         * History/WebHistoryItem.m:
1183         (-[WebHistoryItem isTargetItem]):
1184         * History/WebHistoryItemInternal.h:
1185         * History/WebHistoryItemPrivate.h:
1186         * WebCoreSupport/WebFrameLoaderClient.mm:
1187
1188 2006-11-15  Brady Eidson  <beidson@apple.com>
1189
1190         Reviewed by Maciej
1191
1192         Split much of unused WebHistoryItemPrivate.h SPI into WebHistoryItemInternal.h
1193
1194         * History/WebBackForwardList.m:
1195         * History/WebHistory.m:
1196         * History/WebHistoryItem.m:
1197         (-[WebHistoryItem initWithURLString:title:lastVisitedTimeInterval:]):
1198         (-[WebHistoryItem initWithURL:title:]):
1199         (-[WebHistoryItem visitCount]):
1200         (-[WebHistoryItem RSSFeedReferrer]):
1201         (-[WebHistoryItem setRSSFeedReferrer:]):
1202         (-[WebHistoryItem children]):
1203         (-[WebHistoryItem dictionaryRepresentation]):
1204         (-[WebHistoryItem setAlwaysAttemptToUsePageCache:]):
1205         (+[WebHistoryItem _releaseAllPendingPageCaches]):
1206         (-[WebHistoryItem URL]):
1207         (-[WebHistoryItem target]):
1208         (-[WebHistoryItem _setLastVisitedTimeInterval:]):
1209         (-[WebHistoryItem _lastVisitedDate]):
1210         (-[WebHistoryItem targetItem]):
1211         * History/WebHistoryItemInternal.h: Added.
1212         * History/WebHistoryItemPrivate.h:
1213         * WebCoreSupport/WebFrameBridge.mm:
1214         * WebCoreSupport/WebFrameLoaderClient.mm:
1215         * WebKit.xcodeproj/project.pbxproj:
1216         * WebView/WebFrame.mm:
1217         * WebView/WebView.mm:
1218
1219 2006-11-14  Beth Dakin  <bdakin@apple.com>
1220
1221         Reviewed by Geoff.
1222
1223         Moving things off the bridge and onto clients.
1224
1225         * WebCoreSupport/WebEditorClient.h:
1226         * WebCoreSupport/WebEditorClient.mm:
1227         (WebEditorClient::selectWordBeforeMenuEvent):
1228         (WebEditorClient::isEditable):
1229         * WebCoreSupport/WebFrameBridge.mm:
1230         * WebKit.xcodeproj/project.pbxproj:
1231
1232 2006-11-14  Timothy Hatcher  <timothy@apple.com>
1233
1234         Reviewed by Harrison.
1235
1236         <rdar://problem/4766635> Safari should never follow links in editable areas (add a WebKitEditableLinkNeverLive option)
1237
1238         Adds an Open Link, Open Link in New Window and Copy Link to the editing context menu.
1239         Adds a new WebKitEditableLinkNeverLive preference value that maps to WebCore's EditableLinkNeverLive.
1240
1241         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
1242         (-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):
1243         (-[WebDefaultUIDelegate contextMenuItemsForElement:defaultMenuItems:]):
1244         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
1245         (-[WebDefaultUIDelegate requestWithURL:includingReferrerFromFrame:]):
1246         (-[WebDefaultUIDelegate openNewWindowWithURL:element:]):
1247         (-[WebDefaultUIDelegate openLink:]):
1248         * English.lproj/Localizable.strings:
1249         * WebKit.exp:
1250         * WebView/WebPreferences.m:
1251         (-[WebPreferences editableLinkBehavior]):
1252         * WebView/WebPreferencesPrivate.h:
1253         * WebView/WebUIDelegatePrivate.h:
1254
1255 2006-11-14  Anders Carlsson  <acarlsson@apple.com>
1256
1257         Turns out I wasn't forcing DWARF on the world at all, 
1258         it's now the default!
1259
1260         * WebKit.xcodeproj/project.pbxproj:
1261
1262 2006-11-14  Anders Carlsson  <acarlsson@apple.com>
1263
1264         I must stop trying to force DWARF on the world.
1265
1266         * WebKit.xcodeproj/project.pbxproj:
1267
1268 2006-11-14  Darin Adler  <darin@apple.com>
1269
1270         Reviewed by Anders.
1271
1272         - update for creation of EventHandler
1273
1274         * WebCoreSupport/WebFrameLoaderClient.mm:
1275         (WebFrameLoaderClient::actionDictionary):
1276         * WebView/WebHTMLView.m:
1277         (-[WebHTMLView _updateMouseoverWithEvent:]):
1278         (-[NSArray menuForEvent:]):
1279         (-[NSArray scrollWheel:]):
1280         (-[NSArray acceptsFirstMouse:]):
1281         (-[NSArray shouldDelayWindowOrderingForEvent:]):
1282         (-[NSArray mouseDown:]):
1283         (-[NSArray mouseDragged:]):
1284         (-[NSArray mouseUp:]):
1285         (-[NSArray keyDown:]):
1286         (-[NSArray keyUp:]):
1287         (-[NSArray performKeyEquivalent:]):
1288         (-[WebHTMLView elementAtPoint:allowShadowContent:]):
1289
1290 2006-11-14  Anders Carlsson  <acarlsson@apple.com>
1291
1292         Fix build for real this time.
1293         
1294         * WebCoreSupport/WebEditorClient.mm:
1295         (-[WebEditCommand initWithEditCommand:WebCore::]):
1296         (-[WebEditCommand dealloc]):
1297         (-[WebEditCommand finalize]):
1298         (+[WebEditCommand commandWithEditCommand:]):
1299         (-[WebEditCommand command]):
1300
1301 2006-11-14  Anders Carlsson  <acarlsson@apple.com>
1302
1303         Try fixing the build.
1304         
1305         * WebCoreSupport/WebEditorClient.mm:
1306         (-[WebEditorUndoTarget undoEditing:]):
1307         (-[WebEditorUndoTarget redoEditing:]):
1308
1309 2006-11-14  Anders Carlsson  <acarlsson@apple.com>
1310
1311         Reviewed by Darin.
1312
1313         Move undo/redo handling into WebEditorClient.
1314         
1315         * WebCoreSupport/WebEditorClient.h:
1316         * WebCoreSupport/WebEditorClient.mm:
1317         (WebEditorClient::WebEditorClient):
1318         (WebEditorClient::~WebEditorClient):
1319         (-[WebEditCommand initWithEditCommand:WebCore::]):
1320         (-[WebEditCommand dealloc]):
1321         (-[WebEditCommand finalize]):
1322         (+[WebEditCommand commandWithEditCommand:]):
1323         (-[WebEditCommand command]):
1324         (-[WebEditorUndoTarget undoEditing:]):
1325         (-[WebEditorUndoTarget redoEditing:]):
1326         (undoNameForEditAction):
1327         (WebEditorClient::registerCommandForUndoOrRedo):
1328         (WebEditorClient::registerCommandForUndo):
1329         (WebEditorClient::registerCommandForRedo):
1330         (WebEditorClient::clearUndoRedoOperations):
1331         (WebEditorClient::canUndo):
1332         (WebEditorClient::canRedo):
1333         (WebEditorClient::undo):
1334         (WebEditorClient::redo):
1335         * WebCoreSupport/WebFrameBridge.mm:
1336         * WebKit.xcodeproj/project.pbxproj:
1337
1338 2006-11-14  Alexey Proskuryakov  <ap@webkit.org>
1339
1340         Reviewed by Tim H.
1341
1342         http://bugs.webkit.org/show_bug.cgi?id=3387
1343         Redundant keydown, keypress, keyup events sent for arrow keys
1344
1345         Added another layer of ugly hacks around AppKit event dispatching.
1346
1347         1. For arrow keys, keyDown: is invoked after performKeyEquivalent:, so had to store
1348         _private->keyDownEvent in both methods, and make it persist after leaving them.
1349
1350         2. For Esc, AppKit calls performKeyEquivalent: with a fake event of some kind,
1351         use [NSApp currentEvent] to check for this to prevent it from being passed to  WebCore.
1352
1353         Test: manual-tests/arrow-key-events.html
1354
1355         * WebView/WebHTMLView.m:
1356         (-[NSMutableDictionary dealloc]):
1357         (-[NSArray keyDown:]):
1358         (-[NSArray keyUp:]):
1359         (-[NSArray performKeyEquivalent:]):
1360         * WebView/WebHTMLViewInternal.h:
1361
1362 2006-11-12  Brady Eidson <beidson@apple.com>
1363
1364         Rubberstamped by Anders
1365
1366         Changed some #includes from <WebKit/foo.h> to "foo.h"
1367
1368         * History/WebBackForwardList.m:
1369         * History/WebHistory.m:
1370
1371 2006-11-11  Geoffrey Garen  <ggaren@apple.com>
1372
1373         Reviewed by Maciej Stachowiak.
1374         
1375         - Fixed loader crash by clarifying ownership of WebKit client objects. 
1376         WebCore objects own their WebKit clients, and ref and deref through 
1377         virtual methods, leaving WebKit free to use whatever client / reference-counting 
1378         implementation it likes.
1379         
1380         WebKit on Mac just uses the same refcounting class that WebCore uses (Shared),
1381         but other platforms may choose to do other things.
1382
1383         * WebCoreSupport/WebChromeClient.h:
1384         (WebChromeClient::ref):
1385         (WebChromeClient::deref):
1386         (WebChromeClient::refCount):
1387         * WebCoreSupport/WebEditorClient.h: Nixed commented-out function prototypes.
1388         The ones in WebCore make clear what remains to be implemented. Replaced constructor
1389         with factory function to avoid leaks.
1390         * WebCoreSupport/WebEditorClient.mm:
1391         (WebEditorClient::create):
1392         (WebEditorClient::WebEditorClient):
1393         (WebEditorClient::setWebFrame):
1394         * WebCoreSupport/WebFrameBridge.mm:
1395         (-[WebFrameBridge initMainFrameWithPage:WebCore::frameName:view:webView:]):
1396         (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]):
1397         * WebCoreSupport/WebFrameLoaderClient.h: Replaced constructor with factory
1398         function to avoid leaks.
1399         (WebFrameLoaderClient::ref):
1400         (WebFrameLoaderClient::deref):
1401         (WebFrameLoaderClient::refCount):
1402         * WebCoreSupport/WebFrameLoaderClient.mm:
1403         (WebFrameLoaderClient::create):
1404         * WebView/WebFrame.mm:
1405         (-[WebFrame _initWithWebFrameView:webView:coreFrame:]):
1406
1407 === Safari-521.30 ===
1408
1409 2006-11-10  Maciej Stachowiak  <mjs@apple.com>
1410
1411         Reviewed by Anders.
1412         
1413         - remove some unnecessary uses of WebDataProtocol
1414
1415         * WebView/WebDataSource.mm: Remove the unneeded include.
1416         * WebView/WebView.mm:
1417         (+[WebView _canHandleRequest:]): Don't bother to check for unreachable URL here.
1418         Any request that has one will be an applewebdata: request, which will pass the check anyway.
1419
1420 2006-11-10  Anders Carlsson  <acarlsson@apple.com>
1421
1422         Reviewed by Geoff.
1423
1424         Update for changes to WebCore
1425         * WebView/WebHTMLView.m:
1426         (-[NSArray _applyStyleToSelection:withUndoAction:]):
1427         (-[NSArray _applyParagraphStyleToSelection:withUndoAction:]):
1428         (-[NSArray _toggleBold]):
1429         (-[NSArray _toggleItalic]):
1430
1431 2006-11-09  Anders Carlsson  <acarlsson@apple.com>
1432
1433         Reviewed by Maciej, Geoff.
1434
1435         Call execCommand directly here instead of going through the bridge.
1436         
1437         * WebView/WebHTMLView.m:
1438         (-[NSArray moveBackward:]):
1439         (-[NSArray moveBackwardAndModifySelection:]):
1440         (-[NSArray moveDown:]):
1441         (-[NSArray moveDownAndModifySelection:]):
1442         (-[NSArray moveForward:]):
1443         (-[NSArray moveForwardAndModifySelection:]):
1444         (-[NSArray moveLeft:]):
1445         (-[NSArray moveLeftAndModifySelection:]):
1446         (-[NSArray moveRight:]):
1447         (-[NSArray moveRightAndModifySelection:]):
1448         (-[NSArray moveToBeginningOfDocument:]):
1449         (-[NSArray moveToBeginningOfDocumentAndModifySelection:]):
1450         (-[NSArray moveToBeginningOfSentence:]):
1451         (-[NSArray moveToBeginningOfSentenceAndModifySelection:]):
1452         (-[NSArray moveToBeginningOfLine:]):
1453         (-[NSArray moveToBeginningOfLineAndModifySelection:]):
1454         (-[NSArray moveToBeginningOfParagraph:]):
1455         (-[NSArray moveToBeginningOfParagraphAndModifySelection:]):
1456         (-[NSArray moveToEndOfDocument:]):
1457         (-[NSArray moveToEndOfDocumentAndModifySelection:]):
1458         (-[NSArray moveToEndOfSentence:]):
1459         (-[NSArray moveToEndOfSentenceAndModifySelection:]):
1460         (-[NSArray moveToEndOfLine:]):
1461         (-[NSArray moveToEndOfLineAndModifySelection:]):
1462         (-[NSArray moveToEndOfParagraph:]):
1463         (-[NSArray moveToEndOfParagraphAndModifySelection:]):
1464         (-[NSArray moveParagraphBackwardAndModifySelection:]):
1465         (-[NSArray moveParagraphForwardAndModifySelection:]):
1466         (-[NSArray moveUp:]):
1467         (-[NSArray moveUpAndModifySelection:]):
1468         (-[NSArray moveWordBackward:]):
1469         (-[NSArray moveWordBackwardAndModifySelection:]):
1470         (-[NSArray moveWordForward:]):
1471         (-[NSArray moveWordForwardAndModifySelection:]):
1472         (-[NSArray moveWordLeft:]):
1473         (-[NSArray moveWordLeftAndModifySelection:]):
1474         (-[NSArray moveWordRight:]):
1475         (-[NSArray moveWordRightAndModifySelection:]):
1476
1477 2006-11-10  Brady Eidson  <beidson@apple.com>
1478
1479         Reviewed by Darin
1480   
1481         Took out WebIconDatabaseBridge and made WebKit call IconDatabase directly
1482
1483         * Misc/WebIconDatabase.m:
1484         (-[WebIconDatabase init]):
1485         (-[WebIconDatabase iconForURL:withSize:cache:]):
1486         (-[WebIconDatabase iconURLForURL:]):
1487         (-[WebIconDatabase defaultIconWithSize:]):
1488         (-[WebIconDatabase defaultIconForURL:withSize:]):
1489         (-[WebIconDatabase retainIconForURL:]):
1490         (-[WebIconDatabase releaseIconForURL:]):
1491         (-[WebIconDatabase setDelegate:]):
1492         (-[WebIconDatabase removeAllIcons]):
1493         (-[WebIconDatabase isIconExpiredForIconURL:]):
1494         (-[WebIconDatabase _isEnabled]):
1495         (-[WebIconDatabase _setIconData:forIconURL:]):
1496         (-[WebIconDatabase _setHaveNoIconForIconURL:]):
1497         (-[WebIconDatabase _setIconURL:forURL:]):
1498         (-[WebIconDatabase _hasEntryForIconURL:]):
1499         (-[WebIconDatabase _applicationWillTerminate:]):
1500         (-[WebIconDatabase _resetCachedWebPreferences:]):
1501         (-[WebIconDatabase _convertToWebCoreFormat]):
1502         (webGetNSImage):
1503         * Misc/WebIconDatabaseInternal.h: Added.
1504         * Misc/WebIconDatabasePrivate.h:
1505         * WebCoreSupport/WebFrameLoaderClient.h:
1506         * WebCoreSupport/WebFrameLoaderClient.mm:
1507         (WebFrameLoaderClient::dispatchDidReceiveIcon):
1508         * WebCoreSupport/WebIconDatabaseBridge.h: Removed.
1509         * WebCoreSupport/WebIconDatabaseBridge.m: Removed.
1510         * WebKit.xcodeproj/project.pbxproj:
1511
1512 2006-11-09  Oliver Hunt  <oliver@apple.com>
1513
1514         Reviewed by Brady.
1515         
1516         Updated to make use of MimeTypeRegistry/bridge
1517
1518         * Misc/WebNSPasteboardExtras.m:
1519         (-[NSPasteboard _web_writeImage:element:URL:title:archive:types:]):
1520         * WebCoreSupport/WebFrameBridge.mm:
1521         (-[WebFrameBridge determineObjectFromMIMEType:URL:]):
1522         * WebView/WebDataSource.mm:
1523         (-[WebDataSource _documentFragmentWithArchive:]):
1524         * WebView/WebHTMLRepresentation.m:
1525         (+[WebHTMLRepresentation supportedNonImageMIMETypes]):
1526         (+[WebHTMLRepresentation supportedImageMIMETypes]):
1527         * WebView/WebHTMLView.m:
1528         (-[WebHTMLView _imageExistsAtPaths:]):
1529         (-[WebHTMLView _documentFragmentWithPaths:]):
1530
1531 2006-11-09  Brady Eidson  <beidson@apple.com>
1532
1533         Reviewed by Darin
1534
1535         <rdar://problem/4829080>
1536         More loader re-factoring cleanup - WebFramePolicyListener was over-released
1537
1538         * WebCoreSupport/WebFrameLoaderClient.h: Changed vanilla ptr to a RetainPtr<> 
1539         * WebCoreSupport/WebFrameLoaderClient.mm:
1540         (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType): Ditto
1541         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): Ditto
1542         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): Ditto
1543         (WebFrameLoaderClient::dispatchWillSubmitForm): Ditto
1544         (WebFrameLoaderClient::setUpPolicyListener): Ditto
1545         (-[WebFramePolicyListener receivedPolicyDecision:]): Ditto 
1546
1547 2006-11-08  Anders Carlsson  <acarlsson@apple.com>
1548
1549         Reviewed by Adam, Oliver.
1550
1551         Update for changes to WebCore. Pass a specific WebFrame to WebEditorClient
1552         instead of just passing the WebView.
1553         
1554         * WebCoreSupport/WebEditorClient.h:
1555         * WebCoreSupport/WebEditorClient.mm:
1556         (WebEditorClient::WebEditorClient):
1557         (WebEditorClient::setWebFrame):
1558         (WebEditorClient::isContinuousSpellCheckingEnabled):
1559         (WebEditorClient::spellCheckerDocumentTag):
1560         (WebEditorClient::shouldDeleteRange):
1561         (WebEditorClient::shouldShowDeleteInterface):
1562         (WebEditorClient::shouldApplyStyle):
1563         (WebEditorClient::shouldBeginEditing):
1564         (WebEditorClient::shouldEndEditing):
1565         (WebEditorClient::didBeginEditing):
1566         (WebEditorClient::respondToChangedContents):
1567         (WebEditorClient::didEndEditing):
1568         * WebCoreSupport/WebFrameBridge.mm:
1569         (-[WebFrameBridge initMainFrameWithPage:WebCore::frameName:view:webView:]):
1570         (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]):
1571
1572 2006-11-08  Anders Carlsson  <acarlsson@apple.com>
1573
1574         Reviewed by Adam.
1575
1576         Move more code into editor.
1577
1578         * WebCoreSupport/WebEditorClient.h:
1579         * WebCoreSupport/WebEditorClient.mm:
1580         (WebEditorClient::shouldBeginEditing):
1581         (WebEditorClient::shouldEndEditing):
1582         (WebEditorClient::didBeginEditing):
1583         (WebEditorClient::didEndEditing):
1584         * WebCoreSupport/WebFrameBridge.mm:
1585         * WebView/WebHTMLView.m:
1586         (-[NSArray indent:]):
1587         (-[NSArray outdent:]):
1588         * WebView/WebView.mm:
1589         * WebView/WebViewInternal.h:
1590
1591 2006-11-08  Beth Dakin  <bdakin@apple.com>
1592
1593         Reviewed by Adam.
1594
1595         Add WebElementIsContentEditableKey to the WebElementDictionary, and 
1596         use it!
1597
1598         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
1599         (-[WebDefaultUIDelegate 
1600         webView:contextMenuItemsForElement:defaultMenuItems:]): Use new 
1601         WebElementIsContentEditableKey.
1602         * Misc/WebElementDictionary.m:
1603         (+[WebElementDictionary initializeLookupTable]):
1604         (-[WebElementDictionary _isContentEditable]): Call into 
1605         HitTestResult::isContentEditable()
1606         * WebView/WebView.mm: Add new key.
1607         * WebView/WebViewPrivate.h: Add new key.
1608
1609 2006-11-08  Anders Carlsson  <acarlsson@apple.com>
1610
1611         Reviewed by Oliver.
1612
1613         Call into the WebCore editor object directly.
1614         
1615         * MigrateHeaders.make:
1616         * WebCoreSupport/WebEditorClient.h:
1617         * WebCoreSupport/WebEditorClient.mm:
1618         (WebEditorClient::shouldDeleteRange):
1619         (WebEditorClient::shouldShowDeleteInterface):
1620         (WebEditorClient::shouldApplyStyle):
1621         * WebView/WebFrame.mm:
1622         (core):
1623         (kit):
1624         * WebView/WebFrameInternal.h:
1625         * WebView/WebHTMLView.m:
1626         (-[NSArray _applyStyleToSelection:withUndoAction:]):
1627         (-[NSArray _applyParagraphStyleToSelection:withUndoAction:]):
1628         (-[NSArray _toggleBold]):
1629         (-[NSArray _toggleItalic]):
1630         (-[NSArray _changeCSSColorUsingSelector:inRange:]):
1631         (-[NSArray underline:]):
1632         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]):
1633         * WebView/WebView.mm:
1634         (-[WebView applyStyle:]):
1635
1636 2006-11-08  Anders Carlsson  <acarlsson@apple.com>
1637
1638         Reviewed by Oliver.
1639
1640         <rdar://problem/4825370>
1641         REGRESSION: Selecting "Look Up In Dictionary" from contextual menu fails to open the Dictionary app
1642         
1643         * WebView/WebHTMLView.m:
1644         (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
1645         Initialize the framework pointer to 0.
1646         
1647 2006-11-07  Darin Adler  <darin@apple.com>
1648
1649         Reviewed by Geoff.
1650
1651         - udpated for changes to move from Frame/FrameMac to FrameLoader
1652
1653         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
1654         (-[WebDefaultUIDelegate openNewWindowWithURL:element:]):
1655         * Misc/WebNSAttributedStringExtras.m:
1656         (+[NSAttributedString _web_attributedStringFromRange:]):
1657         * Plugins/WebBaseNetscapePluginView.mm:
1658         (-[WebBaseNetscapePluginView requestWithURLCString:]):
1659         * Plugins/WebNetscapePluginEmbeddedView.m:
1660         (-[WebNetscapePluginEmbeddedView didStart]):
1661         * Plugins/WebNetscapePluginStream.mm:
1662         * Plugins/WebPluginController.mm:
1663         (-[WebPluginController pluginView:receivedResponse:]):
1664         * WebCoreSupport/WebFrameBridge.mm:
1665         (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
1666         * WebCoreSupport/WebFrameLoaderClient.mm:
1667         (WebFrameLoaderClient::provisionalLoadStarted):
1668         * WebView/WebFrame.mm:
1669         (-[WebFrame _canCachePage]):
1670         (+[WebFrame _timeOfLastCompletedLoad]):
1671         (-[WebFrame _loadItem:withLoadType:]):
1672         (-[WebFrame _reloadForPluginChanges]):
1673         (-[WebFrame stopLoading]):
1674
1675 2006-11-07  Anders Carlsson  <acarlsson@apple.com>
1676
1677         Reviewed by Geoff.
1678
1679         Use the WebCore editing enums.
1680         
1681         * WebCoreSupport/WebFrameBridge.mm:
1682         (-[WebFrameBridge undoNameForEditAction:]):
1683         * WebView/WebHTMLView.m:
1684         (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:granularity:]):
1685         (-[WebHTMLView _deleteSelection]):
1686         (-[WebHTMLView moveBackward:]):
1687         (-[WebHTMLView moveBackwardAndModifySelection:]):
1688         (-[WebHTMLView moveDown:]):
1689         (-[WebHTMLView moveDownAndModifySelection:]):
1690         (-[WebHTMLView moveForward:]):
1691         (-[WebHTMLView moveForwardAndModifySelection:]):
1692         (-[WebHTMLView moveLeft:]):
1693         (-[WebHTMLView moveLeftAndModifySelection:]):
1694         (-[WebHTMLView moveRight:]):
1695         (-[WebHTMLView moveRightAndModifySelection:]):
1696         (-[WebHTMLView moveToBeginningOfDocument:]):
1697         (-[WebHTMLView moveToBeginningOfDocumentAndModifySelection:]):
1698         (-[WebHTMLView moveToBeginningOfSentence:]):
1699         (-[WebHTMLView moveToBeginningOfSentenceAndModifySelection:]):
1700         (-[WebHTMLView moveToBeginningOfLine:]):
1701         (-[WebHTMLView moveToBeginningOfLineAndModifySelection:]):
1702         (-[WebHTMLView moveToBeginningOfParagraph:]):
1703         (-[WebHTMLView moveToBeginningOfParagraphAndModifySelection:]):
1704         (-[WebHTMLView moveToEndOfDocument:]):
1705         (-[WebHTMLView moveToEndOfDocumentAndModifySelection:]):
1706         (-[WebHTMLView moveToEndOfSentence:]):
1707         (-[WebHTMLView moveToEndOfSentenceAndModifySelection:]):
1708         (-[WebHTMLView moveToEndOfLine:]):
1709         (-[WebHTMLView moveToEndOfLineAndModifySelection:]):
1710         (-[WebHTMLView moveToEndOfParagraph:]):
1711         (-[WebHTMLView moveToEndOfParagraphAndModifySelection:]):
1712         (-[WebHTMLView moveParagraphBackwardAndModifySelection:]):
1713         (-[WebHTMLView moveParagraphForwardAndModifySelection:]):
1714         (-[WebHTMLView moveUp:]):
1715         (-[WebHTMLView moveUpAndModifySelection:]):
1716         (-[WebHTMLView moveWordBackward:]):
1717         (-[WebHTMLView moveWordBackwardAndModifySelection:]):
1718         (-[WebHTMLView moveWordForward:]):
1719         (-[WebHTMLView moveWordForwardAndModifySelection:]):
1720         (-[WebHTMLView moveWordLeft:]):
1721         (-[WebHTMLView moveWordLeftAndModifySelection:]):
1722         (-[WebHTMLView moveWordRight:]):
1723         (-[WebHTMLView moveWordRightAndModifySelection:]):
1724         (-[WebHTMLView pageUp:]):
1725         (-[WebHTMLView pageDown:]):
1726         (-[WebHTMLView pageUpAndModifySelection:]):
1727         (-[WebHTMLView pageDownAndModifySelection:]):
1728         (-[WebHTMLView _expandSelectionToGranularity:]):
1729         (-[WebHTMLView selectParagraph:]):
1730         (-[WebHTMLView selectLine:]):
1731         (-[WebHTMLView selectSentence:]):
1732         (-[WebHTMLView selectWord:]):
1733         (-[WebHTMLView _applyStyleToSelection:withUndoAction:]):
1734         (-[WebHTMLView _applyParagraphStyleToSelection:withUndoAction:]):
1735         (-[WebHTMLView _toggleBold]):
1736         (-[WebHTMLView _toggleItalic]):
1737         (-[WebHTMLView pasteFont:]):
1738         (-[WebHTMLView changeFont:]):
1739         (-[WebHTMLView changeAttributes:]):
1740         (-[WebHTMLView _undoActionFromColorPanelWithSelector:]):
1741         (-[WebHTMLView changeColor:]):
1742         (-[WebHTMLView _alignSelectionUsingCSSValue:withUndoAction:]):
1743         (-[WebHTMLView alignCenter:]):
1744         (-[WebHTMLView alignJustified:]):
1745         (-[WebHTMLView alignLeft:]):
1746         (-[WebHTMLView alignRight:]):
1747         (-[WebHTMLView _deleteWithDirection:SelectionController::granularity:killRing:isTypingAction:]):
1748         (-[WebHTMLView deleteForward:]):
1749         (-[WebHTMLView deleteBackward:]):
1750         (-[WebHTMLView deleteWordForward:]):
1751         (-[WebHTMLView deleteWordBackward:]):
1752         (-[WebHTMLView deleteToBeginningOfLine:]):
1753         (-[WebHTMLView deleteToEndOfLine:]):
1754         (-[WebHTMLView deleteToBeginningOfParagraph:]):
1755         (-[WebHTMLView deleteToEndOfParagraph:]):
1756         (-[WebHTMLView subscript:]):
1757         (-[WebHTMLView superscript:]):
1758         (-[WebHTMLView unscript:]):
1759         (-[WebHTMLView underline:]):
1760         (-[WebHTMLView deleteToMark:]):
1761         (-[WebHTMLView toggleBaseWritingDirection:]):
1762         (-[WebHTMLView changeBaseWritingDirection:]):
1763         (-[WebHTMLView _canSmartCopyOrDelete]):
1764         (-[WebTextCompleteController doCompletion]):
1765         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]):
1766         * WebView/WebView.mm:
1767         (-[WebView setTypingStyle:]):
1768         (-[WebView applyStyle:]):
1769
1770 2006-11-06  Geoffrey Garen  <ggaren@apple.com>
1771
1772         Reviewed by Tim Hatcher.
1773
1774         Removed ScreenClient. It was highly unpopular, risking my midterm re-election.
1775         
1776         None of Screen's responsibilities require up-calls to WebKit or delegates, 
1777         so WebCore can handle it all.
1778
1779         * WebCoreSupport/WebChromeClient.mm:
1780         (WebChromeClient::setWindowRect):
1781         (WebChromeClient::windowRect):
1782         * WebCoreSupport/WebScreenClient.h: Removed.
1783         * WebCoreSupport/WebScreenClient.mm: Removed.
1784         * WebKit.xcodeproj/project.pbxproj:
1785         * WebView/WebView.mm:
1786         (-[WebView _commonInitializationWithFrameName:groupName:]):
1787
1788 2006-11-06  Geoffrey Garen  <ggaren@apple.com>
1789
1790         Reviewed by Darin.
1791         
1792         Accidentally rolled out this change when removing the WebPageBridge. Now
1793         putting it back.
1794
1795         * WebView/WebView.mm:
1796         (-[WebView _commonInitializationWithFrameName:groupName:]):
1797
1798 2006-11-05  Geoffrey Garen  <ggaren@apple.com>
1799
1800         Reviewed by Maciej, Darin, Anders.
1801
1802         Removed the Page bridge. Beefed up Chrome. Added Screen and ScreenClient.
1803         
1804         (WebChromeClient::pageRect): It may seem weird for the page to ask the Chrome/ChromeClient
1805         about its own dimensions. The idea here is that we're asking the Chrome how
1806         much space it has devoted to the page. We have API for this (-webViewContentRect), but 
1807         it was documented incorrectly (even Safari used it wrong), so we don't use 
1808         it anymore. Once we fix our API/documentation, we can return to making a
1809         delegate callback to ask for the page's size.
1810         (WebChromeClient::createWindow): Changed to take a FrameLoadRequest with
1811         an appropriate referrer, instead of making up its own.
1812         (WebChromeClient::createModalDialog): Changed to take a FrameLoadRequest with
1813         an appropriate referrer, instead of broken out parcels.
1814         * WebCoreSupport/WebPageBridge.h: Removed. Dead Code.
1815         * WebCoreSupport/WebPageBridge.mm: Removed. Dead Code.
1816         * WebCoreSupport/WebScreenClient.h: Added.
1817         * WebCoreSupport/WebScreenClient.mm: Added.
1818         * WebView/WebView.mm: Added NULL checks for new _private->page, since
1819         it's not NULL-safe like the bridge was, and it gets cleared before
1820         dealloc.
1821
1822 2006-11-06  Graham Dennis  <graham.dennis@gmail.com>
1823
1824         Reviewed by Tim Hatcher.
1825
1826         Part of patch for http://bugs.webkit.org/show_bug.cgi?id=11323
1827         Link dragging behaviour does not obey WebKitEditableLinkBehavior WebPref
1828
1829         * DefaultDelegates/WebDefaultUIDelegate.m:
1830         (-[NSApplication webView:dragSourceActionMaskForPoint:]): Logic moved to 
1831         WebHTMLView's _mayStartDragAtEventLocation
1832         * Misc/WebElementDictionary.m: added isLiveLink
1833         (+[WebElementDictionary initializeLookupTable]):
1834         (-[WebElementDictionary _isLiveLink]):
1835         * WebView/WebHTMLView.m: 
1836         (-[WebHTMLView _mayStartDragAtEventLocation:]): Editable links should
1837         only be followed if isLiveLink is true
1838         (-[WebHTMLView _isMoveDrag:]): A drag of a live editable link is not
1839         a move
1840         (-[WebHTMLView draggingUpdatedWithDraggingInfo:actionMask:]):
1841         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]):
1842         * WebView/WebView.mm: added WebElementLinkIsLiveKey
1843         * WebView/WebViewPrivate.h: ditto
1844
1845 2006-11-04  Maciej Stachowiak  <mjs@apple.com>
1846
1847         Reviewed by Oliver.
1848         
1849         - removed unneeded (and obsolete) header includes
1850
1851         * WebCoreSupport/WebFrameBridge.mm:
1852         * WebView/WebFrame.mm:
1853
1854 2006-11-05  Darin Adler  <darin@apple.com>
1855
1856         - WebKit part of Frame.h check-in (forgot to land it)
1857
1858         * WebCoreSupport/WebFrameBridge.h:
1859         * WebCoreSupport/WebFrameBridge.mm:
1860         (-[WebFrameBridge textViewWasFirstResponderAtMouseDownTime:]):
1861         (-[WebFrameBridge shouldInterruptJavaScript]):
1862         (-[WebFrameBridge saveDocumentState:]):
1863         (-[WebFrameBridge previousKeyViewOutsideWebFrameViews]):
1864         (-[WebFrameBridge valueForKey:keys:values:]):
1865         (-[WebFrameBridge getObjectCacheSize]):
1866         (-[WebFrameBridge startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
1867         (-[WebFrameBridge mayStartDragAtEventLocation:]):
1868         (-[WebFrameBridge canGoBackOrForward:]):
1869         (-[WebFrameBridge goBackOrForward:]):
1870         (-[WebFrameBridge print]):
1871         (-[WebFrameBridge getAppletInView:]):
1872         (-[WebFrameBridge pollForAppletInView:]):
1873         (-[WebFrameBridge respondToChangedContents]):
1874         (-[WebFrameBridge respondToChangedSelection]):
1875         (-[WebFrameBridge setIsSelected:forView:]):
1876
1877 2006-11-04  Darin Adler  <darin@apple.com>
1878
1879         Reviewed by Maciej.
1880
1881         - converted more of the loader machinery to work with cross-platform
1882           data structures instead of Macintosh-specific ones
1883
1884           store the computed user agent string as a WebCore::String instead
1885           of an NSString to avoid overhead converting it every time we get it
1886
1887         * COM/WebFrame.cpp:
1888         (WebFrame::initWithName):
1889         * ChangeLog:
1890         * Misc/WebElementDictionary.m:
1891         (-[WebElementDictionary _image]):
1892         (-[WebElementDictionary _targetWebFrame]):
1893         * WebCoreSupport/WebFrameLoaderClient.h:
1894         * WebCoreSupport/WebFrameLoaderClient.mm:
1895         (WebFrameLoaderClient::dispatchWillPerformClientRedirect):
1896         (WebFrameLoaderClient::shouldTreatURLAsSameAsCurrent):
1897         (WebFrameLoaderClient::setTitle):
1898         (WebFrameLoaderClient::userAgent):
1899         (WebFrameLoaderClient::actionDictionary):
1900         * WebCoreSupport/WebPageBridge.mm:
1901         (WebCore::if):
1902         * WebView/WebDataSource.mm:
1903         (-[WebDataSource _URL]):
1904         (-[WebDataSource _URLForHistory]):
1905         (-[WebDataSource unreachableURL]):
1906         * WebView/WebHTMLView.m:
1907         (-[WebHTMLView elementAtPoint:allowShadowContent:]):
1908         * WebView/WebPDFView.mm:
1909         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
1910         (-[WebPDFView _path]):
1911         * WebView/WebView.mm:
1912         (-[WebViewPrivate init]):
1913         (-[WebViewPrivate dealloc]):
1914         (-[WebViewPrivate finalize]):
1915         (-[WebView _preferencesChangedNotification:]):
1916         (-[WebView _cachedResponseForURL:]):
1917         (-[WebView setApplicationNameForUserAgent:]):
1918         (-[WebView setCustomUserAgent:]):
1919         (-[WebView customUserAgent]):
1920         (-[WebView userAgentForURL:]):
1921         (-[WebView _computeUserAgent]):
1922         (-[WebView WebCore::]):
1923         * WebView/WebViewInternal.h:
1924
1925 2006-11-04  Bertrand Guiheneuf <guiheneuf@gmail.com>
1926
1927         Reviewed by Maciej, tweaked and landed by Alexey (using a patch by Don Gibson).
1928
1929         http://bugs.webkit.org/show_bug.cgi?id=11433
1930         Fixes to get WebKit to run on Windows; implemented AffineTransformCairo.
1931
1932         * COM/WebFrame.cpp:
1933         (WebFrame::initWithName):
1934         (WebFrame::loadDataSource):
1935         (WebFrame::receivedRedirect):
1936         (WebFrame::receivedResponse):
1937         (WebFrame::didReceiveData):
1938         (WebFrame::receivedAllData):
1939         Use resource handles now. Do not start doc loader by hand anymore. 
1940         Handle didReceiveData() callback instead of receivedData() which 
1941         is deprecated in implementation of ResourceHandleClient        
1942
1943         * COM/WebFrame.h:
1944         * COM/WebView.cpp:
1945         Applied ResourceLoader --> ResourceHandle renaming
1946
1947         * WebKit.vcproj/WebKit.rc:
1948         Got rid of MFC dependencies (build fix for VCExpress).
1949
1950         * WebKit.vcproj/WebKit.vcproj:
1951         Added platform/graphics platform/network and platform/network/win 
1952         to headers search paths
1953
1954 2006-11-03  Geoffrey Garen  <ggaren@apple.com>
1955
1956         Forgot to add these two files. Oops.
1957
1958         * WebCoreSupport/WebChromeClient.h: Added.
1959         * WebCoreSupport/WebChromeClient.mm: Added.
1960
1961 2006-11-02  Geoffrey Garen  <ggaren@apple.com>
1962
1963         Reviewed by Darin, Beth.
1964
1965         First cut at factoring Page's UIDelegate-related functions into Chrome
1966         and ChromeClient.
1967
1968         Layout tests pass.
1969         
1970         * WebCoreSupport/WebEditorClient.h:
1971         * WebCoreSupport/WebPageBridge.mm:
1972         * WebKit.xcodeproj/project.pbxproj:
1973
1974 2006-11-02  Timothy Hatcher  <timothy@apple.com>
1975
1976         Reviewed by Brady.
1977
1978         Adding outdent to the WebView responder forwarding list.
1979         Also add outdent to WebHTMLView.h and WebViewPrivate.h.
1980
1981         * WebView/WebHTMLView.h:
1982         * WebView/WebViewPrivate.h:
1983         * WebView/WebView.mm:
1984
1985 2006-11-01  John Sullivan  <sullivan@apple.com>
1986
1987         Reviewed by Adam Roben
1988         
1989         - fixed <rdar://problem/4801351> Crash reloading PDF file in new Safari (or closing a window containing a PDF file)
1990
1991         * WebView/WebPDFView.mm:
1992         (-[WebPDFView initWithFrame:]):
1993         Retain the PDFSubview in the code path where we just obtain it by asking the PDFPreviewView for it. We were
1994         unconditionally releasing it in dealloc, but only retaining it in one of the two code paths.
1995
1996 2006-10-31  Mark Rowe  <bdash@webkit.org>
1997
1998         Reviewed by Maciej.
1999
2000         Fix null pointer dereference while running editing/pasteboard/drag-drop-modifies-page.html
2001
2002         * Misc/WebElementDictionary.m:
2003         (-[WebElementDictionary _image]): Add null check.
2004
2005 2006-10-31  Beth Dakin  <bdakin@apple.com>
2006
2007         Reviewed by Maciej.
2008
2009         This creates local functions for the remaining WebElementDictionary 
2010         members that calls into HitTestResult instead of doing magical 
2011         things with the Objective-C DOM classes.
2012
2013         * ChangeLog:
2014         * Misc/WebElementDictionary.m:
2015         (addLookupKey): The values of the dictionary are now just 
2016         selectors. They used to be WebElementMethods which were 
2017         WebElementTargetObjects associated with selectors, but none of that 
2018         is needed any more.
2019         (+[WebElementDictionary initializeLookupTable]): All selectors are 
2020         now local functions, no more WebElementTargetObjects.
2021         (-[WebElementDictionary objectForKey:]): No more target objects!
2022         (-[WebElementDictionary _domNode]): Call into HitTestResult member 
2023         variable.
2024         (-[WebElementDictionary _altDisplayString]): Same.
2025         (-[WebElementDictionary _image]): Same.
2026         (-[WebElementDictionary _absoluteImageURL]): Same.
2027         (-[WebElementDictionary _title]): Same.
2028         (-[WebElementDictionary _absoluteLinkURL]): Same.
2029         (-[WebElementDictionary _targetWebFrame]): Same.
2030         (-[WebElementDictionary _titleDisplayString]): Same.
2031         (-[WebElementDictionary _textContent]): Same.
2032
2033 2006-10-31  Geoffrey Garen  <ggaren@apple.com>
2034
2035         Reviewed by Alice.
2036         
2037         Moved some Editing code from WebKit, the bridge, and WebCore::Frame down 
2038         to WebCore::Editor.
2039
2040         * WebCoreSupport/WebFrameBridge.mm:
2041         * WebView/WebHTMLView.m:
2042         (-[WebHTMLView _shouldDeleteRange:]):
2043         (-[WebHTMLView _canCopy]):
2044         (-[WebHTMLView _canCut]):
2045         (-[WebHTMLView _canDelete]):
2046         (-[WebHTMLView _canPaste]):
2047         (-[WebHTMLView _canEdit]):
2048         (-[WebHTMLView _canEditRichly]):
2049         (-[WebHTMLView _isEditable]):
2050         (-[WebHTMLView _isSelectionInPasswordField]):
2051         (-[NSArray validateUserInterfaceItem:]):
2052         (-[NSArray _expandSelectionToGranularity:]):
2053
2054 2006-10-31  John Sullivan  <sullivan@apple.com>
2055
2056         Reviewed by Beth and Adam
2057         
2058         Display a tooltip when hovering over marked bad grammar.
2059
2060         * Misc/WebElementDictionary.m:
2061         (+[WebElementDictionary initializeLookupTable]):
2062         support spelling tool tip
2063         (-[WebElementDictionary _spellingToolTip]):
2064         new method, calls through to HitTestResult
2065         
2066         * WebView/WebHTMLView.m:
2067         (-[WebHTMLView _updateMouseoverWithEvent:]):
2068         Check for a spelling tool tip; if found, prefer it over the other possible tool tips.
2069         Check for empty strings instead of just nil strings being, since values from 
2070         WebElementDictionary are empty strings.
2071         
2072         * WebView/WebViewPrivate.h:
2073         declare new string constant WebElementSpellingToolTipKey
2074         * WebView/WebView.mm:
2075         define new string constant WebElementSpellingToolTipKey
2076         
2077 2006-10-31  Beth Dakin  <bdakin@apple.com>
2078
2079         Reviewed by Maciej.
2080
2081         Small tweaks to WebKit because of http://bugs.webkit.org/
2082         show_bug.cgi?id=11461 HitTestResult should be split into 
2083         HitTestRequest and HitTestResult
2084
2085         * WebKit.xcodeproj/project.pbxproj:
2086         * WebView/WebHTMLView.m:
2087         (-[WebHTMLView elementAtPoint:allowShadowContent:]): The 
2088         HitTestResult initializer now just takes a point.
2089
2090 2006-10-31  Darin Adler  <darin@apple.com>
2091
2092         Reviewed by Brady.
2093
2094         - got "action dictionary" code out of FrameLoader,
2095           replacing with a class called NavigationAction
2096
2097         * WebCoreSupport/WebFrameLoaderClient.h: Changed parameter types to NavigationAction.
2098         Made elementForEvent non-virtual. Added actionDictionary function.
2099         * WebCoreSupport/WebFrameLoaderClient.mm:
2100         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): Changed parameter type,
2101         and used actionDictionary to make the action dictionary.
2102         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): Ditto.
2103         (WebFrameLoaderClient::actionDictionary): Added. Code that was originally in WebCore
2104         that creates the action dictionary (from a NavigationAction).
2105
2106         * WebView/WebFrame.mm: (-[WebFrame _loadItem:withLoadType:]): Use NavigationAction
2107         instead of a dictionary for the action parameters.
2108
2109 2006-10-31  Marvin Decker  <marv.decker@gmail.com>
2110
2111         Reviewed by Maciej.
2112         
2113         - fixed "Stop and reload don't work on the WebView"
2114         http://bugs.webkit.org/show_bug.cgi?id=11285
2115
2116         * COM/WebFrame.cpp:
2117         (WebFrame::stopLoading): Implement.
2118         * COM/WebView.cpp:
2119         (WebView::stopLoading): ditto
2120         (WebView::reload): ditto
2121
2122 2006-10-30  Darin Adler  <darin@apple.com>
2123
2124         * Plugins/WebBaseNetscapePluginView.mm:
2125         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
2126         Fix comment.
2127
2128 2006-10-30  John Sullivan  <sullivan@apple.com>
2129
2130         Reviewed by Geoff Garen
2131
2132         * WebView/WebHTMLView.m:
2133         (-[NSArray checkSpelling:]):
2134         removed code to update spelling panel; WebCore handles that now
2135         (-[NSArray showGuessPanel:]):
2136         ditto
2137
2138 2006-10-30  John Sullivan  <sullivan@apple.com>
2139
2140         * English.lproj/WebViewEditingContextMenu.nib/info.nib:
2141         * English.lproj/WebViewEditingContextMenu.nib/objects.nib:
2142         Another wording change to match framework, post-Tiger:
2143         "Check Spelling" -> "Check Document Now"
2144
2145 2006-10-30  John Sullivan  <sullivan@apple.com>
2146
2147         Reviewed by Geoff Garen.
2148         
2149         Moved spelling-related methods from bridge to EditorClient. Added one not-yet-used
2150         grammar-related method.
2151
2152         * WebCoreSupport/WebEditorClient.h:
2153         declare overrides of isContinuousSpellCheckingEnabled(), spellCheckerDocumentTag(), and new
2154         isGrammarCheckingEnabled()
2155         * WebCoreSupport/WebEditorClient.mm:
2156         (WebEditorClient::isContinuousSpellCheckingEnabled):
2157         implement by calling through to WebView
2158         (WebEditorClient::isGrammarCheckingEnabled):
2159         ditto
2160         (WebEditorClient::spellCheckerDocumentTag):
2161         ditto
2162         
2163         * WebCoreSupport/WebFrameBridge.mm:
2164         removed bridge equivalents of these methods
2165
2166 2006-10-30  Geoffrey Garen  <ggaren@apple.com>
2167
2168         Reviewed by Beth.
2169         
2170         Fixed nil-deref crash that I saw while using TOT (not sure how to repro,
2171         but the debugger confirmed the cause).
2172
2173         * WebView/WebFrame.mm:
2174         (core): Added check for NULL bridge.
2175
2176 2006-10-30  Geoffrey Garen  <ggaren@apple.com>
2177
2178         Reviewed by Darin.
2179
2180         Removed a number of editing and selection methods from the bridge.
2181         
2182         I moved cross-platform editing and selection code into WebCore::Editor and 
2183         WebCore::SelectionController, respecitvely.
2184         
2185         All of the seemingly new code here is just code grabbed from WebCore or
2186         merged from WebCoreFrameBridge.
2187         
2188         I changed one piece of internal API: we now pass around Ranges in places
2189         where we used to pass around broken out components of Ranges.
2190         
2191         I also added WebCore XPATH_SUPPORT AND SVG_SUPPORT #defines to the project.
2192         Since we now include WebCore headers that depend on these #defines, we need
2193         to keep in sync with them, to avoid binary incompatibility.
2194
2195 2006-10-30  Darin Adler  <darin@apple.com>
2196
2197         Reviewed by John Sullivan.
2198
2199         - work toward removing Objective-C data types from FrameLoader.h:
2200           removed NSDate, NSString, WebCorePageState, WebCoreResourceLoader,
2201           and WebCoreResourceHandle
2202         - moved bodyBackgroundColor function here from Frame
2203
2204         * History/WebHistoryItem.m: (+[WebHistoryItem _closeObjectsInPendingPageCaches]):
2205         Updated for change in WebCorePageState.
2206
2207         * WebCoreSupport/WebFrameBridge.mm: Removed saveDocumentToPageCache method.
2208
2209         * WebCoreSupport/WebFrameLoaderClient.h: Changed NSDate to double.
2210         * WebCoreSupport/WebFrameLoaderClient.mm:
2211         (WebFrameLoaderClient::invalidateCurrentItemPageCache): Moved the code that was
2212         formerly in invalidatePageCache: on the bridge here.
2213         (WebFrameLoaderClient::dispatchWillPerformClientRedirect): Added code to make the
2214         NSDate here.
2215         (WebFrameLoaderClient::createPageCache): Restructured code to create the
2216         WebCorePageState object directly instead of calling saveDocumentToPageCache on
2217         the bridge.
2218
2219         * WebView/WebFrame.mm: (-[WebFrame _bodyBackgroundColor]): Rewrote this to work
2220         directly with the DOM and renderers rather than using a function on Frame.
2221
2222 2006-10-29  Maciej Stachowiak  <mjs@apple.com>
2223
2224         Reviewed by Anders.
2225
2226         - added ResourceResponse class and didReceiveResponse delegate call
2227
2228         * WebCoreSupport/WebFrameBridge.mm: Removed no longer needed
2229         expiresTimeForResponse: method.
2230
2231 2006-10-29  Darin Adler  <darin@apple.com>
2232
2233         - update for the WebCore rename
2234
2235         * WebCoreSupport/WebFrameLoaderClient.mm:
2236         * WebView/WebFrame.mm:
2237
2238 2006-10-29  Darin Adler  <darin@apple.com>
2239
2240         - update for the WebCore renames
2241
2242         * Plugins/WebNetscapePluginStream.mm:
2243         * Plugins/WebPluginController.mm:
2244         * WebCoreSupport/WebFrameBridge.mm:
2245         * WebCoreSupport/WebFrameLoaderClient.h:
2246         * WebCoreSupport/WebFrameLoaderClient.mm:
2247         (WebFrameLoaderClient::willUseArchive):
2248         (WebFrameLoaderClient::isArchiveLoadPending):
2249         (WebFrameLoaderClient::cancelPendingArchiveLoad):
2250         (WebFrameLoaderClient::deliverArchivedResources):
2251         * WebCoreSupport/WebPageBridge.mm:
2252         (-[WebPageBridge canRunModalNow]):
2253         * WebView/WebDocumentLoaderMac.h:
2254         * WebView/WebFrame.mm:
2255         * WebView/WebHTMLRepresentation.m:
2256         * WebView/WebView.mm:
2257
2258 2006-10-29  Darin Adler  <darin@apple.com>
2259
2260         Rubber stamped by Adam Roben.
2261
2262         - renamed WebCore's WebFrameLoaderClient to match the class name inside it
2263
2264         * WebCoreSupport/WebFrameBridge.mm: Update include.
2265         * WebCoreSupport/WebFrameLoaderClient.h: Ditto.
2266
2267 2006-10-29  Darin Adler  <darin@apple.com>
2268
2269         Reviewed by Maciej.
2270
2271         - eliminate use of NSArray to carry form data around
2272           (the code in this framework was actually using the NSArray to hold a single
2273            NSData anyway, so I just went back to an NSData for now)
2274
2275         - also fixed http://bugs.webkit.org/show_bug.cgi?id=11444
2276           REGRESSION (r17378): Exception (-[NSCFDictionary setObject:forKey:]:
2277           attempt to insert nil value) when submitting a form with an empty
2278           uninitialized field
2279
2280         * History/WebHistoryItem.m:
2281         (-[WebHistoryItem _setFormInfoFromRequest:]):
2282         (-[WebHistoryItem formData]):
2283         * History/WebHistoryItemPrivate.h:
2284         * WebCoreSupport/WebFrameLoaderClient.mm:
2285         (WebFrameLoaderClient::dispatchWillSubmitForm):
2286         * WebView/WebFrame.mm:
2287         (-[WebFrame _loadItem:withLoadType:]):
2288
2289 2006-10-28  Darin Adler  <darin@apple.com>
2290
2291         Reviewed by Maciej.
2292
2293         - eliminated the use of Objective-C for the policy decider
2294           machinery, obviating the need for WebPolicyDeciderMac
2295
2296         - moved the defersLoading flag from WebView to WebCore::Page
2297
2298         - removed unused copies of four methods that in the frame bridge;
2299           the actually-used copies are in the page bridge
2300
2301         - updated for rename of PassRefPtr::release to releaseRef
2302
2303         * WebView/WebPolicyDeciderMac.h: Removed.
2304         * WebView/WebPolicyDeciderMac.m: Removed.
2305         * WebKit.xcodeproj/project.pbxproj: Updated for removal.
2306
2307         * Plugins/WebBaseNetscapePluginView.mm:
2308         (-[WebBaseNetscapePluginView sendEvent:]):
2309         * Plugins/WebNetscapePluginStream.mm:
2310         * WebCoreSupport/WebFrameBridge.mm:
2311         * WebCoreSupport/WebFrameLoaderClient.h:
2312         * WebCoreSupport/WebFrameLoaderClient.mm:
2313         (getWebView):
2314         (WebFrameLoaderClient::WebFrameLoaderClient):
2315         (WebFrameLoaderClient::willCloseDocument):
2316         (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
2317         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
2318         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
2319         (WebFrameLoaderClient::cancelPolicyCheck):
2320         (WebFrameLoaderClient::dispatchWillSubmitForm):
2321         (WebFrameLoaderClient::setDefersLoading):
2322         (WebFrameLoaderClient::setTitle):
2323         (WebFrameLoaderClient::deliverArchivedResourcesAfterDelay):
2324         (WebFrameLoaderClient::deliverArchivedResources):
2325         (WebFrameLoaderClient::setUpPolicyListener):
2326         (WebFrameLoaderClient::receivedPolicyDecison):
2327         (WebFrameLoaderClient::userAgent):
2328         (-[WebFramePolicyListener initWithWebCoreFrame:]):
2329         (-[WebFramePolicyListener invalidate]):
2330         (-[WebFramePolicyListener dealloc]):
2331         (-[WebFramePolicyListener finalize]):
2332         (-[WebFramePolicyListener receivedPolicyDecision:]):
2333         (-[WebFramePolicyListener ignore]):
2334         (-[WebFramePolicyListener download]):
2335         (-[WebFramePolicyListener use]):
2336         (-[WebFramePolicyListener continue]):
2337         * WebCoreSupport/WebPageBridge.mm:
2338         (-[WebPageBridge runModal]):
2339         * WebView/WebArchiver.m:
2340         (+[WebArchiver archiveSelectionInFrame:]):
2341         * WebView/WebFormDelegate.h:
2342         * WebView/WebFormDelegate.m:
2343         (+[WebFormDelegate _sharedWebFormDelegate]):
2344         (-[WebFormDelegate textFieldDidBeginEditing:inFrame:]):
2345         (-[WebFormDelegate textFieldDidEndEditing:inFrame:]):
2346         (-[WebFormDelegate textDidChangeInTextField:inFrame:]):
2347         (-[WebFormDelegate textDidChangeInTextArea:inFrame:]):
2348         (-[WebFormDelegate frame:sourceFrame:willSubmitForm:withValues:submissionListener:]):
2349         * WebView/WebFrame.mm:
2350         (-[WebFrame _loadURL:referrer:intoChild:]):
2351         (-[WebFrame _isFrameSet]):
2352         * WebView/WebFrameInternal.h:
2353         * WebView/WebFrameView.mm:
2354         (-[WebFrameView _shouldDrawBorder]):
2355         * WebView/WebHTMLView.m:
2356         (-[NSArray knowsPageRange:]):
2357         * WebView/WebView.mm:
2358         (-[WebView _formDelegate]):
2359         * WebView/WebViewInternal.h:
2360         * WebView/WebViewPrivate.h:
2361
2362 2006-10-28  Adam Roben  <aroben@apple.com>
2363
2364         Reviewed by Maciej.
2365
2366         Fix layout tests that broke after r17399. Mitz discovered that the
2367         failures were caused by HitTestResult::m_point being uninitialized
2368         much of the time. HitTestResults are now always constructed with a
2369         point.
2370
2371         * WebView/WebHTMLView.m:
2372         (-[WebHTMLView elementAtPoint:allowShadowContent:]): Pass point to
2373         HitTestResult constructor.
2374
2375 2006-10-28  Beth Dakin  <bdakin@apple.com>
2376
2377         Reviewed by Darin.
2378
2379         This is the WebKit half of pushing the guts of elementAtPoint and 
2380         WebElementDictionary into WebCore. Among other things, this patch 
2381         makes WebElementDictionary.m and WebHTMLView.m Objective-C++
2382
2383         * MigrateHeaders.make: Add DOMElementInternal.h to the list of 
2384         headers to migrate.
2385         * Misc/WebElementDictionary.h: Replaced DOMNode, DOMElement, and 
2386         NSPoint member variables with a HitTestResult member variable.
2387         * Misc/WebElementDictionary.m:
2388         (addLookupKey): Formatting.
2389         (-[WebElementDictionary initWithHitTestResult:]): Constructor just 
2390         takes a HitTestResult now and sets the member variable.
2391         (-[WebElementDictionary dealloc]): delete HitTestResult.
2392         (-[WebElementDictionary finalize]): Address HitTestResult.
2393         (-[WebElementDictionary _domNode]): Use HitTestResult and call into 
2394         WebCore.
2395         (-[WebElementDictionary objectForKey:]): Same.
2396         (-[WebElementDictionary _webFrame]): Same.
2397         (-[WebElementDictionary _targetWebFrame]): Same.
2398         (-[WebElementDictionary _title]): Same.
2399         (-[WebElementDictionary _imageRect]): Same.
2400         (-[WebElementDictionary _isSelected]): Same.
2401         * WebKit.xcodeproj/project.pbxproj:
2402         * WebView/WebFrame.mm:
2403         (core): Convert from DOMNode* to Node*
2404         (kit): Convert from Node* to DOMNode*
2405         * WebView/WebFrameInternal.h: Support for the above.
2406         * WebView/WebHTMLView.m:
2407         (-[WebHTMLView elementAtPoint:allowShadowContent:]): Call directly 
2408         into Frame.cpp to get HitTestResult.
2409
2410 2006-10-27  Maciej Stachowiak  <mjs@apple.com>
2411
2412         Reviewed by John & Adam.
2413         
2414         - various performance improvements for resource delegate dispatch.
2415         
2416         - avoid any ObjC messaging when fetching the WebView
2417         - avoid ObjC calls to WebView to get resource load delegate and impl cache
2418         - cache actual method pointers, not just the fact that the method is present
2419         - added a new SPI resource load delegate method which allows clients to get
2420           just one message in case of synchronously loading from memory cache; if this
2421           is implemented you don't get the normal delegate calls in that case.
2422         - various other minor tweaks
2423
2424         * WebCoreSupport/WebFrameBridge.h:
2425         * WebCoreSupport/WebFrameLoaderClient.h:
2426         * WebCoreSupport/WebFrameLoaderClient.mm:
2427         (getWebView):
2428         (WebFrameLoaderClient::hasBackForwardList):
2429         (WebFrameLoaderClient::resetBackForwardList):
2430         (WebFrameLoaderClient::privateBrowsingEnabled):
2431         (WebFrameLoaderClient::updateHistoryForStandardLoad):
2432         (WebFrameLoaderClient::resetAfterLoadError):
2433         (WebFrameLoaderClient::download):
2434         (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
2435         (WebFrameLoaderClient::dispatchIdentifierForInitialRequest):
2436         (WebFrameLoaderClient::dispatchWillSendRequest):
2437         (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
2438         (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
2439         (WebFrameLoaderClient::dispatchDidReceiveResponse):
2440         (WebFrameLoaderClient::dispatchDidReceiveContentLength):
2441         (WebFrameLoaderClient::dispatchDidFinishLoading):
2442         (WebFrameLoaderClient::dispatchDidFailLoading):
2443         (WebFrameLoaderClient::dispatchDidHandleOnloadEvents):
2444         (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
2445         (WebFrameLoaderClient::dispatchDidCancelClientRedirect):
2446         (WebFrameLoaderClient::dispatchWillPerformClientRedirect):
2447         (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
2448         (WebFrameLoaderClient::dispatchWillClose):
2449         (WebFrameLoaderClient::dispatchDidReceiveIcon):
2450         (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
2451         (WebFrameLoaderClient::dispatchDidReceiveTitle):
2452         (WebFrameLoaderClient::dispatchDidCommitLoad):
2453         (WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
2454         (WebFrameLoaderClient::dispatchDidFailLoad):
2455         (WebFrameLoaderClient::dispatchDidFinishLoad):
2456         (WebFrameLoaderClient::dispatchDidFirstLayout):
2457         (WebFrameLoaderClient::dispatchCreatePage):
2458         (WebFrameLoaderClient::dispatchShow):
2459         (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
2460         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
2461         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
2462         (WebFrameLoaderClient::dispatchUnableToImplementPolicy):
2463         (WebFrameLoaderClient::dispatchWillSubmitForm):
2464         (WebFrameLoaderClient::dispatchDidLoadMainResource):
2465         (WebFrameLoaderClient::progressStarted):
2466         (WebFrameLoaderClient::progressCompleted):
2467         (WebFrameLoaderClient::incrementProgress):
2468         (WebFrameLoaderClient::completeProgress):
2469         (WebFrameLoaderClient::setMainFrameDocumentReady):
2470         (WebFrameLoaderClient::startDownload):
2471         (WebFrameLoaderClient::willChangeTitle):
2472         (WebFrameLoaderClient::didChangeTitle):
2473         (WebFrameLoaderClient::mainFrameURL):
2474         (WebFrameLoaderClient::frameLoadCompleted):
2475         * WebCoreSupport/WebPageBridge.h:
2476         * WebKit.xcodeproj/project.pbxproj:
2477         * WebView/WebFrame.mm:
2478         (frame):
2479         (core):
2480         (kit):
2481         (getWebView):
2482         (-[WebFrame _addBackForwardItemClippedAtTarget:]):
2483         (-[WebFrame _canCachePage]):
2484         (-[WebFrame _purgePageCache]):
2485         (-[WebFrame _loadItem:withLoadType:]):
2486         (-[WebFrame _goToItem:withLoadType:]):
2487         (-[WebFrame _updateBackground]):
2488         (-[WebFrame _clearSelectionInOtherFrames]):
2489         (-[WebFrame _isMainFrame]):
2490         (-[WebFrame webView]):
2491         * WebView/WebResourceLoadDelegatePrivate.h: Added.
2492         * WebView/WebView.mm:
2493         (-[WebView _cacheResourceLoadDelegateImplementations]):
2494         (WebViewGetResourceLoadDelegate):
2495         (WebViewGetResourceLoadDelegateImplementations):
2496         * WebView/WebViewInternal.h:
2497         * WebView/WebViewPrivate.h:
2498
2499 2006-10-27  Geoffrey Garen  <ggaren@apple.com>
2500
2501         Reviewed by Maciej.
2502         
2503         Moved some WebCoreFrameBridge functions into FrameLoader.
2504
2505         * WebView/WebFrame.mm:
2506         (-[WebFrame _numPendingOrLoadingRequests:]):
2507
2508 2006-10-27  Timothy Hatcher  <timothy@apple.com>
2509
2510         Reviewed by Beth.
2511
2512         Make a DerivedSource/Webkit directory to store migrated
2513         internal headers from WebCore.
2514
2515         * MigrateHeaders.make:
2516         * WebKit.xcodeproj/project.pbxproj:
2517         * WebView/WebFrame.mm: import the new migrated DOM*Internal.h headers
2518
2519 2006-10-27  John Sullivan  <sullivan@apple.com>
2520
2521         Reviewed by Anders
2522         
2523         - fixed http://bugs.webkit.org/show_bug.cgi?id=11439 
2524           REGRESSION: Another page loading crash
2525
2526         * WebView/WebFrame.mm:
2527         (-[WebFrame _createItem:]):
2528         Handle nil documentLoader the way we did before ObjC->C++ changes
2529
2530 2006-10-27  John Sullivan  <sullivan@apple.com>
2531
2532         Reviewed by Anders
2533
2534         * WebView/WebHTMLView.m:
2535         (-[NSArray checkSpelling:]):
2536         call advanceToNextMisspelling directly on FrameMac, bypassing bridge
2537         (-[NSArray showGuessPanel:]):
2538         ditto
2539
2540 2006-10-27  Darin Adler  <darin@apple.com>
2541
2542         - build fix
2543
2544         * WebCoreSupport/WebFrameLoaderClient.mm: Corrected header file name.
2545
2546 2006-10-27  Darin Adler  <darin@apple.com>
2547
2548         Reviewed by Maciej.
2549
2550         - moved methods that are there just to be called by the frame loader client into the client
2551           in an attempt to get back some of the speed we lost yesterday
2552
2553         * DefaultDelegates/WebDefaultResourceLoadDelegate.m:
2554         (-[WebDefaultResourceLoadDelegate webView:resource:didReceiveAuthenticationChallenge:fromDataSource:]):
2555         (-[WebDefaultResourceLoadDelegate webView:resource:didCancelAuthenticationChallenge:fromDataSource:]):
2556         * WebCoreSupport/WebFrameLoaderClient.h:
2557         * WebCoreSupport/WebFrameLoaderClient.mm:
2558         (dataSource):
2559         (decisionListener):
2560         (WebFrameLoaderClient::WebFrameLoaderClient):
2561         (WebFrameLoaderClient::hasWebView):
2562         (WebFrameLoaderClient::hasFrameView):
2563         (WebFrameLoaderClient::hasBackForwardList):
2564         (WebFrameLoaderClient::resetBackForwardList):
2565         (WebFrameLoaderClient::provisionalItemIsTarget):
2566         (WebFrameLoaderClient::loadProvisionalItemFromPageCache):
2567         (WebFrameLoaderClient::invalidateCurrentItemPageCache):
2568         (WebFrameLoaderClient::privateBrowsingEnabled):
2569         (WebFrameLoaderClient::makeDocumentView):
2570         (WebFrameLoaderClient::makeRepresentation):
2571         (WebFrameLoaderClient::setDocumentViewFromPageCache):
2572         (WebFrameLoaderClient::forceLayout):
2573         (WebFrameLoaderClient::forceLayoutForNonHTML):
2574         (WebFrameLoaderClient::updateHistoryForCommit):
2575         (WebFrameLoaderClient::updateHistoryForBackForwardNavigation):
2576         (WebFrameLoaderClient::updateHistoryForReload):
2577         (WebFrameLoaderClient::updateHistoryForStandardLoad):
2578         (WebFrameLoaderClient::updateHistoryForInternalLoad):
2579         (WebFrameLoaderClient::updateHistoryAfterClientRedirect):
2580         (WebFrameLoaderClient::setCopiesOnScroll):
2581         (WebFrameLoaderClient::tokenForLoadErrorReset):
2582         (WebFrameLoaderClient::resetAfterLoadError):
2583         (WebFrameLoaderClient::doNotResetAfterLoadError):
2584         (WebFrameLoaderClient::detachedFromParent1):
2585         (WebFrameLoaderClient::detachedFromParent2):
2586         (WebFrameLoaderClient::detachedFromParent3):
2587         (WebFrameLoaderClient::detachedFromParent4):
2588         (WebFrameLoaderClient::loadedFromPageCache):
2589         (WebFrameLoaderClient::download):
2590         (WebFrameLoaderClient::dispatchIdentifierForInitialRequest):
2591         (WebFrameLoaderClient::dispatchWillSendRequest):
2592         (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
2593         (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
2594         (WebFrameLoaderClient::dispatchDidReceiveResponse):
2595         (WebFrameLoaderClient::dispatchDidReceiveContentLength):
2596         (WebFrameLoaderClient::dispatchDidFinishLoading):
2597         (WebFrameLoaderClient::dispatchDidFailLoading):
2598         (WebFrameLoaderClient::dispatchDidHandleOnloadEvents):
2599         (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
2600         (WebFrameLoaderClient::dispatchDidCancelClientRedirect):
2601         (WebFrameLoaderClient::dispatchWillPerformClientRedirect):
2602         (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
2603         (WebFrameLoaderClient::dispatchWillClose):
2604         (WebFrameLoaderClient::dispatchDidReceiveIcon):
2605         (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
2606         (WebFrameLoaderClient::dispatchDidReceiveTitle):
2607         (WebFrameLoaderClient::dispatchDidCommitLoad):
2608         (WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
2609         (WebFrameLoaderClient::dispatchDidFailLoad):
2610         (WebFrameLoaderClient::dispatchDidFinishLoad):
2611         (WebFrameLoaderClient::dispatchDidFirstLayout):
2612         (WebFrameLoaderClient::dispatchCreatePage):
2613         (WebFrameLoaderClient::dispatchShow):
2614         (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
2615         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
2616         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
2617         (WebFrameLoaderClient::dispatchUnableToImplementPolicy):
2618         (WebFrameLoaderClient::dispatchWillSubmitForm):
2619         (WebFrameLoaderClient::dispatchDidLoadMainResource):
2620         (WebFrameLoaderClient::clearLoadingFromPageCache):
2621         (WebFrameLoaderClient::isLoadingFromPageCache):
2622         (WebFrameLoaderClient::revertToProvisionalState):
2623         (WebFrameLoaderClient::setMainDocumentError):
2624         (WebFrameLoaderClient::clearUnarchivingState):
2625         (WebFrameLoaderClient::progressStarted):
2626         (WebFrameLoaderClient::progressCompleted):
2627         (WebFrameLoaderClient::incrementProgress):
2628         (WebFrameLoaderClient::completeProgress):
2629         (WebFrameLoaderClient::setMainFrameDocumentReady):
2630         (WebFrameLoaderClient::startDownload):
2631         (WebFrameLoaderClient::willChangeTitle):
2632         (WebFrameLoaderClient::didChangeTitle):
2633         (WebFrameLoaderClient::committedLoad):
2634         (WebFrameLoaderClient::finishedLoading):
2635         (WebFrameLoaderClient::finalSetupForReplace):
2636         (WebFrameLoaderClient::cancelledError):
2637         (WebFrameLoaderClient::cannotShowURLError):
2638         (WebFrameLoaderClient::interruptForPolicyChangeError):
2639         (WebFrameLoaderClient::cannotShowMIMETypeError):
2640         (WebFrameLoaderClient::fileDoesNotExistError):
2641         (WebFrameLoaderClient::shouldFallBack):
2642         (WebFrameLoaderClient::mainFrameURL):
2643         (WebFrameLoaderClient::setDefersCallbacks):
2644         (WebFrameLoaderClient::willUseArchive):
2645         (WebFrameLoaderClient::isArchiveLoadPending):
2646         (WebFrameLoaderClient::cancelPendingArchiveLoad):
2647         (WebFrameLoaderClient::clearArchivedResources):
2648         (WebFrameLoaderClient::canHandleRequest):
2649         (WebFrameLoaderClient::canShowMIMEType):
2650         (WebFrameLoaderClient::representationExistsForURLScheme):
2651         (WebFrameLoaderClient::generatedMIMETypeForURLScheme):
2652         (WebFrameLoaderClient::elementForEvent):
2653         (WebFrameLoaderClient::createPolicyDecider):
2654         (WebFrameLoaderClient::frameLoadCompleted):
2655         (WebFrameLoaderClient::restoreScrollPositionAndViewState):
2656         (WebFrameLoaderClient::provisionalLoadStarted):
2657         (WebFrameLoaderClient::shouldTreatURLAsSameAsCurrent):
2658         (WebFrameLoaderClient::addHistoryItemForFragmentScroll):
2659         (WebFrameLoaderClient::didFinishLoad):
2660         (WebFrameLoaderClient::prepareForDataSourceReplacement):
2661         (WebFrameLoaderClient::createDocumentLoader):
2662         (WebFrameLoaderClient::setTitle):
2663         (WebFrameLoaderClient::canUseArchivedResource):
2664         (WebFrameLoaderClient::deliverArchivedResourcesAfterDelay):
2665         (WebFrameLoaderClient::deliverArchivedResources):
2666         (WebFrameLoaderClient::createPageCache):
2667         * WebView/WebFrame.mm:
2668         (-[NSView setWebFrame:]):
2669         (-[WebFrame _createItem:]):
2670         (-[WebFrame _loadItem:withLoadType:]):
2671         (-[WebFrame _recursiveGoToItem:fromItem:withLoadType:]):
2672         (-[WebFrame _loadURL:referrer:intoChild:]):
2673         (-[WebFrame _saveScrollPositionAndViewStateToItem:]):
2674         (-[WebFrame _hasSelection]):
2675         (-[WebFrame _clearSelection]):
2676         (-[WebFrame _setProvisionalItem:]):
2677         (-[WebFrame _setPreviousItem:]):
2678         (-[WebFrame _setCurrentItem:]):
2679         (-[WebFrame loadArchive:]):
2680         * WebView/WebFrameInternal.h:
2681         * WebView/WebHTMLView.m:
2682         (-[WebHTMLView _topHTMLView]):
2683         * WebView/WebHTMLViewPrivate.h:
2684
2685 2006-10-26  Geoffrey Garen  <ggaren@apple.com>
2686
2687         Reviewed by Darin, Maciej.
2688
2689         Removed many uses of NSString * from WebCore.
2690         
2691         Changed a few files to ObjC++ for compatiblity with new WebCore methods
2692         taking WebCore::Strings as arguments.
2693         
2694         Added a static_cast to make the c++ compiler happy.
2695
2696 2006-10-26  John Sullivan  <sullivan@apple.com>
2697
2698         Reviewed by Anders
2699
2700         * WebView/WebFrame.mm:
2701         now includes <WebCore/Document.h> and <WebCore/DocumentMarker.h>
2702         (-[WebFrame _unmarkAllBadGrammar]):
2703         filled in guts
2704         (-[WebFrame _unmarkAllMisspellings]):
2705         rewrote to call Document directly, bypassing bridge
2706
2707 2006-10-26  John Sullivan  <sullivan@apple.com>
2708
2709         * English.lproj/WebViewEditingContextMenu.nib/info.nib:
2710         * English.lproj/WebViewEditingContextMenu.nib/objects.nib:
2711         
2712         Changed "Spelling" to "Spelling and Grammar" in context menu for post-Tiger.
2713
2714 === Safari-521.29 ===
2715
2716 2006-10-26  John Sullivan  <sullivan@apple.com>
2717
2718         No review, just two localized string changes.
2719         
2720         * WebView/WebHTMLView.m:
2721         (-[NSArray validateUserInterfaceItem:]):
2722         changed "Show/Hide Spelling" to "Show/Hide Spelling and Grammar" post-Tiger to match framework change
2723
2724         * English.lproj/Localizable.strings:
2725         updated for these changes
2726
2727 2006-10-25  Darin Adler  <darin@apple.com>
2728
2729         Reviewed by Anders.
2730
2731         - removed 55 methods from WebCoreFrameBridge
2732         - changed callers to use Frame directly instead
2733         - put FrameLoaderTypes.h types into the WebCore namespace
2734         - first steps to get FrameLoader.h ready for cross-platform duty
2735
2736         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
2737         (-[WebDefaultUIDelegate openNewWindowWithURL:element:]):
2738         * Plugins/WebBaseNetscapePluginView.mm:
2739         (-[WebBaseNetscapePluginView requestWithURLCString:]):
2740         (-[WebBaseNetscapePluginView loadPluginRequest:]):
2741         (-[WebBaseNetscapePluginView getVariable:value:]):
2742         * Plugins/WebNetscapePluginEmbeddedView.m:
2743         (-[WebNetscapePluginEmbeddedView didStart]):
2744         * Plugins/WebNetscapePluginStream.mm:
2745         * Plugins/WebPluginContainerCheck.m:
2746         (-[WebPluginContainerCheck _continueWithPolicy:]):
2747         (-[WebPluginContainerCheck _isForbiddenFileLoad]):
2748         * WebCoreSupport/WebEditorClient.mm:
2749         (WebEditorClient::shouldDeleteRange):
2750         (WebEditorClient::shouldShowDeleteInterface):
2751         * WebCoreSupport/WebFrameBridge.mm:
2752         (-[WebFrameBridge webView]):
2753         (-[WebFrameBridge finishInitializingWithFrameName:view:]):
2754         (-[WebFrameBridge createWindowWithURL:]):
2755         (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
2756         (-[WebFrameBridge windowObjectCleared]):
2757         (-[WebFrameBridge createModalDialogWithURL:]):
2758         * WebCoreSupport/WebFrameLoaderClient.mm:
2759         (WebFrameLoaderClient::dispatchCreatePage):
2760         (WebFrameLoaderClient::dispatchWillSubmitForm):
2761         * WebKit.xcodeproj/project.pbxproj:
2762         * WebView/WebArchiver.m:
2763         (+[WebArchiver archiveSelectionInFrame:]):
2764         * WebView/WebDataSource.mm:
2765         (-[WebDataSource _documentFragmentWithImageResource:]):
2766         (-[WebDataSource _imageElementWithImageResource:]):
2767         * WebView/WebEditingDelegatePrivate.h:
2768         * WebView/WebFrame.mm:
2769         (core):
2770         (kit):
2771         (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]):
2772         (-[WebFrame _canCachePage]):
2773         (-[WebFrame _childFramesMatchItem:]):
2774         (-[WebFrame _URLsMatchItem:]):
2775         (-[WebFrame _loadItem:withLoadType:]):
2776         (-[WebFrame _recursiveGoToItem:fromItem:withLoadType:]):
2777         (-[WebFrame _viewWillMoveToHostWindow:]):
2778         (-[WebFrame _viewDidMoveToHostWindow]):
2779         (-[WebFrame _addChild:]):
2780         (-[WebFrame _saveDocumentAndScrollState]):
2781         (-[WebFrame _numPendingOrLoadingRequests:]):
2782         (-[WebFrame _reloadForPluginChanges]):
2783         (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]):
2784         (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
2785         (-[WebFrame _initWithWebFrameView:webView:coreFrame:]):
2786         (-[WebFrame _documentViews]):
2787         (-[WebFrame _updateBackground]):
2788         (-[WebFrame _unmarkAllMisspellings]):
2789         (-[WebFrame _hasSelection]):
2790         (-[WebFrame _atMostOneFrameHasSelection]):
2791         (-[WebFrame _findFrameWithSelection]):
2792         (-[WebFrame _frameLoader]):
2793         (-[WebFrame _isDescendantOfFrame:]):
2794         (-[WebFrame _setShouldCreateRenderers:]):
2795         (-[WebFrame _bodyBackgroundColor]):
2796         (-[WebFrame init]):
2797         (-[WebFrame initWithName:webFrameView:webView:]):
2798         (-[WebFrame dealloc]):
2799         (-[WebFrame finalize]):
2800         (-[WebFrame name]):
2801         (-[WebFrame webView]):
2802         (-[WebFrame DOMDocument]):
2803         (-[WebFrame frameElement]):
2804         (-[WebFrame findFrameNamed:]):
2805         (-[WebFrame parentFrame]):
2806         (-[WebFrame childFrames]):
2807         (-[WebFrame _invalidateCurrentItemPageCache]):
2808         (-[WebFrame _dispatchCreateWebViewWithRequest:]):
2809         (-[WebFrame _dispatchSourceFrame:willSubmitForm:withValues:submissionDecider:]):
2810         (-[WebFrame _prepareForDataSourceReplacement]):
2811         (-[WebFrame _provisionalLoadStarted]):
2812         * WebView/WebFrameInternal.h:
2813         * WebView/WebHTMLRepresentation.m:
2814         (-[WebHTMLRepresentation DOMDocument]):
2815         (-[WebHTMLRepresentation attributedText]):
2816         * WebView/WebHTMLView.m:
2817         (-[WebHTMLView _documentRange]):
2818         (-[WebHTMLView _documentFragmentWithPaths:]):
2819         (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]):
2820         (-[WebHTMLView _selectedRange]):
2821         (-[WebHTMLView _updateMouseoverWithEvent:]):
2822         (-[WebHTMLView _canEditRichly]):
2823         (-[WebHTMLView _hasSelection]):
2824         (-[WebHTMLView _hasSelectionOrInsertionPoint]):
2825         (-[WebHTMLView _hasInsertionPoint]):
2826         (-[WebHTMLView _isEditable]):
2827         (-[WebHTMLView _isSelectionInPasswordField]):
2828         (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
2829         (-[WebHTMLView _selectionDraggingImage]):
2830         (-[WebHTMLView _canIncreaseSelectionListLevel]):
2831         (-[WebHTMLView _canDecreaseSelectionListLevel]):
2832         (-[WebHTMLView _updateActiveState]):
2833         (-[NSArray readSelectionFromPasteboard:]):
2834         (-[NSArray validateUserInterfaceItem:]):
2835         (-[NSArray maintainsInactiveSelection]):
2836         (-[NSArray menuForEvent:]):
2837         (-[NSArray scrollWheel:]):
2838         (-[NSArray acceptsFirstMouse:]):
2839         (-[NSArray shouldDelayWindowOrderingForEvent:]):
2840         (-[NSArray mouseDown:]):
2841         (-[NSArray mouseDragged:]):
2842         (-[NSArray mouseUp:]):
2843         (-[NSArray keyDown:]):
2844         (-[NSArray keyUp:]):
2845         (-[NSArray centerSelectionInVisibleArea:]):
2846         (-[NSArray _selectionStartFontAttributesAsRTF]):
2847         (-[NSArray _emptyStyle]):
2848         (-[NSArray performKeyEquivalent:]):
2849         (-[NSArray indent:]):
2850         (-[NSArray outdent:]):
2851         (-[WebHTMLView cut:]):
2852         (-[WebHTMLView paste:]):
2853         (-[WebHTMLView _selectRangeInMarkedText:]):
2854         (-[WebTextCompleteController doCompletion]):
2855         (-[WebHTMLView selectionRect]):
2856         (-[WebHTMLView selectionImageForcingWhiteText:]):
2857         (-[WebHTMLView selectionImageRect]):
2858         (-[WebHTMLView attributedString]):
2859         (-[WebHTMLView _isMoveDrag]):
2860         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]):
2861         * WebView/WebPolicyDelegate.mm:
2862         (-[WebPolicyDecisionListener _usePolicy:]):
2863         (-[WebPolicyDecisionListener use]):
2864         (-[WebPolicyDecisionListener ignore]):
2865         (-[WebPolicyDecisionListener download]):
2866         (-[WebPolicyDecisionListener continue]):
2867         * WebView/WebScriptDebugDelegate.m:
2868         (-[WebScriptCallFrame _initWithFrame:initWithWebFrame:]):
2869         (-[WebScriptCallFrame globalObject]):
2870         * WebView/WebView.mm:
2871         (-[WebView _attachScriptDebuggerToAllFrames]):
2872         (-[WebView _detachScriptDebuggerFromAllFrames]):
2873         (-[WebView windowScriptObject]):
2874         (incrementFrame):
2875         (-[WebView searchFor:direction:caseSensitive:wrap:]):
2876         (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]):
2877         (-[WebView removeDragCaret]):
2878         (-[WebView setScriptDebugDelegate:]):
2879         (-[WebView scriptDebugDelegate]):
2880         (-[WebView shouldClose]):
2881         (-[WebView selectedDOMRange]):
2882         (-[WebView styleDeclarationWithText:]):
2883
2884 2006-10-25  Geoffrey Garen  <ggaren@apple.com>
2885
2886         Reviewed by Adam.
2887
2888         Renamed WebFrameLoader to FrameLoader, to match class name.
2889
2890         * Plugins/WebBaseNetscapePluginView.mm:
2891         * Plugins/WebNetscapePluginStream.mm:
2892         * Plugins/WebPluginController.mm:
2893         * WebCoreSupport/WebFrameBridge.mm:
2894         * WebView/WebDataSource.mm:
2895         * WebView/WebFrame.mm:
2896         * WebView/WebPDFView.mm:
2897         * WebView/WebPolicyDelegate.mm:
2898         * WebView/WebView.mm:
2899
2900 2006-10-25  Mark Rowe  <bdash@webkit.org>
2901
2902         Reviewed by Anders.
2903
2904         Build fix for the Buildbot.
2905
2906         * WebView/WebHTMLView.m:
2907         (-[NSArray _addToStyle:fontA:fontB:]): Explicit cast.
2908
2909 2006-10-25  Maciej Stachowiak  <mjs@apple.com>
2910
2911         Reviewed by Anders.
2912         
2913         <rdar://problem/4785575> REGRESSION: form resubmission warning occurs twice, then Safari crashes in autorelease pool
2914         <rdar://problem/4799383> REGRESSION: Crash occurs when dismissing the "Would you like to save this password" sheet
2915
2916         * WebView/WebPolicyDeciderMac.m:
2917         (-[WebPolicyDeciderMac dealloc]): release the listener, don't dealloc it
2918
2919 2006-10-24  Anders Carlsson  <acarlsson@apple.com>
2920
2921         Reviewed by Darin.
2922
2923         * WebKitPrefix.h:
2924         Include FastMalloc.h from C++ code.
2925
2926 2006-10-24  Darin Adler  <darin@apple.com>
2927
2928         Reviewed by Anders.
2929
2930         - converted WebFrameLoaderClient to C++
2931         - renamed frame->frameLoader() function to frame->loader()
2932         - renamed [bridge impl] to [bridge _frame]
2933         - removed some bridge methods
2934
2935         * Plugins/WebNetscapePluginStream.mm:
2936         * WebCoreSupport/WebEditorClient.mm:
2937         * WebCoreSupport/WebFrameLoaderClient.h: Added.
2938         (WebFrameLoaderClient::webFrame):
2939         * WebCoreSupport/WebFrameLoaderClient.mm: Added.
2940         (WebFrameLoaderClient::detachFrameLoader):
2941         (WebFrameLoaderClient::hasWebView):
2942         (WebFrameLoaderClient::hasFrameView):
2943         (WebFrameLoaderClient::hasBackForwardList):
2944         (WebFrameLoaderClient::resetBackForwardList):
2945         (WebFrameLoaderClient::provisionalItemIsTarget):
2946         (WebFrameLoaderClient::loadProvisionalItemFromPageCache):
2947         (WebFrameLoaderClient::invalidateCurrentItemPageCache):
2948         (WebFrameLoaderClient::privateBrowsingEnabled):
2949         (WebFrameLoaderClient::makeDocumentView):
2950         (WebFrameLoaderClient::makeRepresentation):
2951         (WebFrameLoaderClient::setDocumentViewFromPageCache):
2952         (WebFrameLoaderClient::forceLayout):
2953         (WebFrameLoaderClient::forceLayoutForNonHTML):
2954         (WebFrameLoaderClient::updateHistoryForCommit):
2955         (WebFrameLoaderClient::updateHistoryForBackForwardNavigation):
2956         (WebFrameLoaderClient::updateHistoryForReload):
2957         (WebFrameLoaderClient::updateHistoryForStandardLoad):
2958         (WebFrameLoaderClient::updateHistoryForInternalLoad):
2959         (WebFrameLoaderClient::updateHistoryAfterClientRedirect):
2960         (WebFrameLoaderClient::setCopiesOnScroll):
2961         (WebFrameLoaderClient::tokenForLoadErrorReset):
2962         (WebFrameLoaderClient::resetAfterLoadError):
2963         (WebFrameLoaderClient::doNotResetAfterLoadError):
2964         (WebFrameLoaderClient::detachedFromParent1):
2965         (WebFrameLoaderClient::detachedFromParent2):
2966         (WebFrameLoaderClient::detachedFromParent3):
2967         (WebFrameLoaderClient::detachedFromParent4):
2968         (WebFrameLoaderClient::loadedFromPageCache):
2969         (WebFrameLoaderClient::download):
2970         (WebFrameLoaderClient::dispatchIdentifierForInitialRequest):
2971         (WebFrameLoaderClient::dispatchWillSendRequest):
2972         (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
2973         (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
2974         (WebFrameLoaderClient::dispatchDidReceiveResponse):
2975         (WebFrameLoaderClient::dispatchDidReceiveContentLength):
2976         (WebFrameLoaderClient::dispatchDidFinishLoading):
2977         (WebFrameLoaderClient::dispatchDidFailLoading):
2978         (WebFrameLoaderClient::dispatchDidHandleOnloadEvents):
2979         (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
2980         (WebFrameLoaderClient::dispatchDidCancelClientRedirect):
2981         (WebFrameLoaderClient::dispatchWillPerformClientRedirect):
2982         (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
2983         (WebFrameLoaderClient::dispatchWillClose):
2984         (WebFrameLoaderClient::dispatchDidReceiveIcon):
2985         (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
2986         (WebFrameLoaderClient::dispatchDidReceiveTitle):
2987         (WebFrameLoaderClient::dispatchDidCommitLoad):
2988         (WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
2989         (WebFrameLoaderClient::dispatchDidFailLoad):
2990         (WebFrameLoaderClient::dispatchDidFinishLoad):
2991         (WebFrameLoaderClient::dispatchDidFirstLayout):
2992         (WebFrameLoaderClient::dispatchCreatePage):
2993         (WebFrameLoaderClient::dispatchShow):
2994         (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType):
2995         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
2996         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
2997         (WebFrameLoaderClient::dispatchUnableToImplementPolicy):
2998         (WebFrameLoaderClient::dispatchWillSubmitForm):
2999         (WebFrameLoaderClient::dispatchDidLoadMainResource):
3000         (WebFrameLoaderClient::clearLoadingFromPageCache):
3001         (WebFrameLoaderClient::isLoadingFromPageCache):
3002         (WebFrameLoaderClient::revertToProvisionalState):
3003         (WebFrameLoaderClient::setMainDocumentError):
3004         (WebFrameLoaderClient::clearUnarchivingState):
3005         (WebFrameLoaderClient::progressStarted):
3006         (WebFrameLoaderClient::progressCompleted):
3007         (WebFrameLoaderClient::incrementProgress):
3008         (WebFrameLoaderClient::completeProgress):
3009         (WebFrameLoaderClient::setMainFrameDocumentReady):
3010         (WebFrameLoaderClient::startDownload):
3011         (WebFrameLoaderClient::willChangeTitle):
3012         (WebFrameLoaderClient::didChangeTitle):
3013         (WebFrameLoaderClient::committedLoad):
3014         (WebFrameLoaderClient::finishedLoading):
3015         (WebFrameLoaderClient::finalSetupForReplace):
3016         (WebFrameLoaderClient::cancelledError):
3017         (WebFrameLoaderClient::cannotShowURLError):
3018         (WebFrameLoaderClient::interruptForPolicyChangeError):
3019         (WebFrameLoaderClient::cannotShowMIMETypeError):
3020         (WebFrameLoaderClient::fileDoesNotExistError):
3021         (WebFrameLoaderClient::shouldFallBack):
3022         (WebFrameLoaderClient::mainFrameURL):
3023         (WebFrameLoaderClient::setDefersCallbacks):
3024         (WebFrameLoaderClient::willUseArchive):
3025         (WebFrameLoaderClient::isArchiveLoadPending):
3026         (WebFrameLoaderClient::cancelPendingArchiveLoad):
3027         (WebFrameLoaderClient::clearArchivedResources):
3028         (WebFrameLoaderClient::canHandleRequest):
3029         (WebFrameLoaderClient::canShowMIMEType):
3030         (WebFrameLoaderClient::representationExistsForURLScheme):
3031         (WebFrameLoaderClient::generatedMIMETypeForURLScheme):
3032         (WebFrameLoaderClient::elementForEvent):
3033         (WebFrameLoaderClient::createPolicyDecider):
3034         (WebFrameLoaderClient::frameLoadCompleted):
3035         (WebFrameLoaderClient::restoreScrollPositionAndViewState):
3036         (WebFrameLoaderClient::provisionalLoadStarted):
3037         (WebFrameLoaderClient::shouldTreatURLAsSameAsCurrent):
3038         (WebFrameLoaderClient::addHistoryItemForFragmentScroll):
3039         (WebFrameLoaderClient::didFinishLoad):
3040         (WebFrameLoaderClient::prepareForDataSourceReplacement):
3041         (WebFrameLoaderClient::createDocumentLoader):
3042         (WebFrameLoaderClient::setTitle):
3043         * WebKit.xcodeproj/project.pbxproj:
3044         * WebView/WebDataSource.mm:
3045         (-[WebDataSource webFrame]):
3046         * WebView/WebFrame.mm:
3047         (frame):
3048         (-[WebFrame _loadItem:withLoadType:]):
3049         (-[WebFrame _reloadForPluginChanges]):
3050         (-[WebFrame _initWithWebFrameView:webView:bridge:]):
3051         (-[WebFrame _frameLoader]):
3052         (-[WebFrame provisionalDataSource]):
3053         (-[WebFrame dataSource]):
3054         (-[WebFrame parentFrame]):
3055         (-[WebFrame _provisionalLoadStarted]):
3056         * WebView/WebFrameInternal.h:
3057         * WebView/WebHTMLRepresentation.m:
3058         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
3059         * WebView/WebHTMLView.m:
3060         (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
3061         (-[NSArray validateUserInterfaceItem:]):
3062         (-[NSArray scrollWheel:]):
3063         (-[NSArray acceptsFirstMouse:]):
3064         (-[NSArray shouldDelayWindowOrderingForEvent:]):
3065         (-[NSArray _selectionStartFontAttributesAsRTF]):
3066         (-[NSArray changeBaseWritingDirection:]):
3067         (-[NSArray indent:]):
3068         (-[NSArray outdent:]):
3069         (-[WebHTMLView copy:]):
3070         (-[WebHTMLView cut:]):
3071         (-[WebHTMLView paste:]):
3072         * WebView/WebView.mm:
3073         (-[WebView _dashboardRegions]):
3074         (-[WebView setProhibitsMainFrameScrolling:]):
3075         (-[WebView _setInViewSourceMode:]):
3076         (-[WebView _inViewSourceMode]):
3077         (-[WebView setEditable:]):
3078
3079 2006-10-24  John Sullivan  <sullivan@apple.com>
3080
3081         Reviewed by Kevin Decker
3082         
3083         - fixed <rdar://problem/4801331> "Spelling..." menu item should be "Show/Hide Spelling" post-Tiger, to match AppKit
3084
3085         * WebView/WebHTMLView.m:
3086         (-[NSArray validateUserInterfaceItem:]):
3087         post-Tiger, update the menu item text to "Show Spelling"/"Hide Spelling" based on whether
3088         the spelling panel is already showing. Also, removed else's after returns, and removed
3089         braces around one-line if clauses.
3090         (-[NSArray showGuessPanel:]):
3091         post-Tiger, make this item hide the spelling panel if it's already showing
3092
3093         * English.lproj/Localizable.strings:
3094         updated for this change
3095         
3096 2006-10-24  Timothy Hatcher  <timothy@apple.com>
3097
3098         Reviewed by Anders.
3099
3100         <rdar://problem/4588878> 'WebHTMLView' may not respond to '-_webView'
3101
3102         * Misc/WebNSViewExtras.h:
3103         * Misc/WebNSViewExtras.m:
3104         (-[NSView _webView]):
3105
3106 2006-10-24  Brady Eidson  <beidson@apple.com>
3107
3108         Reviewed by Anders
3109
3110         http://bugs.webkit.org/show_bug.cgi?id=11406 - Crash in [WebFrame dataSource]
3111         In the transition to ObjC++ we lost alot of our free nil checking that we must now do manually
3112         to prevent null dereferencing.
3113
3114         * WebView/WebFrame.mm:
3115         (-[WebFrame provisionalDataSource]):
3116         (-[WebFrame dataSource]):
3117
3118 2006-10-24  John Sullivan  <sullivan@apple.com>
3119
3120         Reviewed by Darin
3121         
3122         Initial plumbing for grammar checking. No actual grammar are checked at this time.
3123
3124         * English.lproj/WebViewEditingContextMenu.nib/classes.nib:
3125         * English.lproj/WebViewEditingContextMenu.nib/info.nib:
3126         * English.lproj/WebViewEditingContextMenu.nib/objects.nib:
3127         Added grammar-checking item, reworded to match changes in framework. This will be used
3128         post-Tiger.
3129
3130         * English.lproj/WebViewEditingContextMenuOld.nib/classes.nib: Added.
3131         * English.lproj/WebViewEditingContextMenuOld.nib/info.nib: Added.
3132         * English.lproj/WebViewEditingContextMenuOld.nib/objects.nib: Added.
3133         Copy of WebViewEditingContextMenu.nib, unchanged. This will be used on Tiger.
3134
3135         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
3136         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
3137         Choose the right context menu based on BUILDING_ON_TIGER.
3138         
3139         * WebView/WebPreferenceKeysPrivate.h:
3140         declare grammar-related NSUserDefault value
3141
3142         * WebView/WebViewPrivate.h:
3143         declare grammar-related methods
3144
3145         * WebView/WebView.mm:
3146         declare static BOOL grammarCheckingEnabled
3147         (-[WebViewPrivate init]):
3148         initialize grammarCheckingEnabled to NSUserDefaults value
3149         (-[WebView validateUserInterfaceItem:]):
3150         validate toggleGrammarChecking: menu item
3151         (-[WebView isGrammarCheckingEnabled]):
3152         return value of grammarCheckingEnabled
3153         (-[WebView setGrammarCheckingEnabled:]):
3154         set value of grammarCheckingEnabled, call frame to remove existing bad grammar markers
3155         (-[WebView toggleGrammarChecking:]):
3156         flip the value
3157         
3158         * WebView/WebFrameInternal.h:
3159         * WebView/WebFrame.mm:
3160         (-[WebFrame _unmarkAllBadGrammar]):
3161         new placeholder method, does nothing yet
3162         
3163         * WebView/WebHTMLViewInternal.h:
3164         declare grammar-related methods
3165
3166         * WebView/WebHTMLView.m:
3167         (-[NSArray validateUserInterfaceItem:]):
3168         validate toggleGrammarChecking: menu item
3169         (-[WebHTMLView isGrammarCheckingEnabled]):
3170         new method, calls through to WebView
3171         (-[WebHTMLView setGrammarCheckingEnabled:]):
3172         ditto
3173         (-[WebHTMLView toggleGrammarChecking:]):
3174         ditto
3175                 
3176         * English.lproj/StringsNotToBeLocalized.txt:
3177         Updated for these changes
3178         
3179         * WebKit.xcodeproj/project.pbxproj:
3180         updated for new files        
3181
3182 2006-10-23  Darin Adler  <darin@apple.com>
3183
3184         Reviewed by Geoff.
3185
3186         - converted WebDocumentLoader to C++
3187
3188         * Plugins/WebPluginController.mm:
3189         (-[WebPluginController pluginView:receivedResponse:]):
3190         * WebKit.xcodeproj/project.pbxproj:
3191         * WebView/WebDataSource.mm:
3192         (-[WebDataSourcePrivate dealloc]):
3193         (-[WebDataSource _mainDocumentError]):
3194         (-[WebDataSource _URL]):
3195         (-[WebDataSource _loadFromPageCache:]):
3196         (-[WebDataSource _bridge]):
3197         (-[WebDataSource _URLForHistory]):
3198         (-[WebDataSource _documentLoader]):
3199         (-[WebDataSource _initWithDocumentLoader:]):
3200         (-[WebDataSource initWithRequest:]):
3201         (-[WebDataSource data]):
3202         (-[WebDataSource webFrame]):
3203         (-[WebDataSource initialRequest]):
3204         (-[WebDataSource request]):
3205         (-[WebDataSource response]):
3206         (-[WebDataSource textEncodingName]):
3207         (-[WebDataSource isLoading]):
3208         (-[WebDataSource unreachableURL]):
3209         (-[WebDataSource webArchive]):
3210         * WebView/WebDataSourceInternal.h:
3211         * WebView/WebDocumentLoaderMac.h:
3212         * WebView/WebDocumentLoaderMac.mm:
3213         (WebDocumentLoaderMac::WebDocumentLoaderMac):
3214         (WebDocumentLoaderMac::setDataSource):
3215         (WebDocumentLoaderMac::dataSource):
3216         (WebDocumentLoaderMac::attachToFrame):
3217         (WebDocumentLoaderMac::detachFromFrame):
3218         * WebView/WebFrame.mm:
3219         (-[WebFrame _createItem:]):
3220         (-[WebFrame _loadItem:withLoadType:]):
3221         (-[WebFrame _addChild:]):
3222         (dataSource):
3223         (-[WebFrame _dataSourceForDocumentLoader:]):
3224         (-[WebFrame _addDocumentLoader:toUnarchiveState:]):
3225         (-[WebFrame loadArchive:]):
3226         (-[WebFrame _updateHistoryForReload]):
3227         (-[WebFrame _updateHistoryForStandardLoad]):
3228         (-[WebFrame _updateHistoryForInternalLoad]):
3229         (-[WebFrame _dispatchIdentifierForInitialRequest:fromDocumentLoader:]):
3230         (-[WebFrame _dispatchResource:willSendRequest:redirectResponse:fromDocumentLoader:]):
3231         (-[WebFrame _dispatchDidReceiveAuthenticationChallenge:forResource:fromDocumentLoader:]):
3232         (-[WebFrame _dispatchDidCancelAuthenticationChallenge:forResource:fromDocumentLoader:]):
3233         (-[WebFrame _dispatchResource:didReceiveResponse:fromDocumentLoader:]):
3234         (-[WebFrame _dispatchResource:didReceiveContentLength:fromDocumentLoader:]):
3235         (-[WebFrame _dispatchResource:didFinishLoadingFromDocumentLoader:]):
3236         (-[WebFrame _dispatchResource:didFailLoadingWithError:fromDocumentLoader:]):
3237         (-[WebFrame _dispatchDidLoadMainResourceForDocumentLoader:]):
3238         (-[WebFrame _clearLoadingFromPageCacheForDocumentLoader:]):
3239         (-[WebFrame _isDocumentLoaderLoadingFromPageCache:]):
3240         (-[WebFrame _makeRepresentationForDocumentLoader:]):
3241         (-[WebFrame _revertToProvisionalStateForDocumentLoader:]):
3242         (-[WebFrame _setMainDocumentError:forDocumentLoader:]):
3243         (-[WebFrame _clearUnarchivingStateForLoader:]):
3244         (-[WebFrame _willChangeTitleForDocument:]):
3245         (-[WebFrame _didChangeTitleForDocument:]):
3246         (-[WebFrame _finishedLoadingDocument:]):
3247         (-[WebFrame _committedLoadWithDocumentLoader:data:]):
3248         (-[WebFrame _documentLoader:setMainDocumentError:]):
3249         (-[WebFrame _finalSetupForReplaceWithDocumentLoader:]):
3250         (-[WebFrame _createDocumentLoaderWithRequest:]):
3251         (-[WebFrame _provisionalLoadStarted]):
3252         * WebView/WebFrameInternal.h:
3253         * WebView/WebHTMLRepresentation.m:
3254         (-[WebHTMLRepresentation title]):
3255         * WebView/WebView.mm:
3256         (-[WebView _mainFrameOverrideEncoding]):
3257
3258 2006-10-23  Geoffrey Garen  <ggaren@apple.com>
3259
3260         RS by Maciej.
3261         
3262         Gave ObjC++ files .mm extension instead of .m.
3263
3264         * WebCoreSupport/WebPageBridge.m: Removed.
3265         * WebKit.xcodeproj/project.pbxproj:
3266         * WebView/WebDocumentLoaderMac.m: Removed.
3267
3268 2006-10-23  Darin Adler  <darin@apple.com>
3269
3270         Reviewed by Maciej.
3271
3272         - converted WebFrameLoader to C++
3273
3274         * History/WebHistoryItem.m:
3275         (+[WebHistoryItem _closeObjectsInPendingPageCaches]):
3276         * Plugins/WebBaseNetscapePluginView.mm:
3277         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
3278         * Plugins/WebNetscapePluginStream.mm:
3279         (-[WebNetscapePluginStream start]):
3280         (-[WebNetscapePluginStream stop]):
3281         * Plugins/WebPluginController.mm:
3282         (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
3283         (-[WebPluginController pluginView:receivedResponse:]):
3284         * WebCoreSupport/WebFrameBridge.h:
3285         * WebKit.xcodeproj/project.pbxproj:
3286         * WebView/WebDataSource.mm:
3287         (-[WebDataSource _loadFromPageCache:]):
3288         (-[WebDataSource _webView]):
3289         (-[WebDataSource webFrame]):
3290         * WebView/WebDocumentLoaderMac.h:
3291         * WebView/WebDocumentLoaderMac.m:
3292         (-[WebDocumentLoaderMac dealloc]):
3293         (-[WebDocumentLoaderMac attachToFrame]):
3294         (-[WebDocumentLoaderMac detachFromFrame]):
3295         * WebView/WebFrame.mm:
3296         (+[WebFrame _timeOfLastCompletedLoad]):
3297         (-[WebFrame _loadItem:withLoadType:]):
3298         (-[WebFrame _loadURL:referrer:intoChild:]):
3299         (-[WebFrame _currentBackForwardListItemToResetTo]):
3300         (-[WebFrame _itemForRestoringDocState]):
3301         (-[WebFrame _frameLoader]):
3302         (-[WebFrame _firstLayoutDone]):
3303         (-[WebFrame _loadType]):
3304         (-[WebFrame provisionalDataSource]):
3305         (-[WebFrame dataSource]):
3306         (-[WebFrame loadRequest:]):
3307         (-[WebFrame loadArchive:]):
3308         (-[WebFrame stopLoading]):
3309         (-[WebFrame reload]):
3310         (-[WebFrame _updateHistoryForCommit]):
3311         (-[WebFrame _updateHistoryForReload]):
3312         (-[WebFrame _updateHistoryForInternalLoad]):
3313         (-[WebFrame _deliverArchivedResourcesAfterDelay]):
3314         (-[WebFrame _willUseArchiveForRequest:originalURL:loader:]):
3315         (-[WebFrame _deliverArchivedResources]):
3316         (-[WebFrame _prepareForDataSourceReplacement]):
3317         (-[WebFrame _provisionalLoadStarted]):
3318         * WebView/WebFrameInternal.h:
3319         * WebView/WebHTMLView.m:
3320         (-[WebHTMLView _clearLastHitViewIfSelf]):
3321         (-[WebHTMLView _updateMouseoverWithEvent:]):
3322         (-[NSArray removeMouseMovedObserverUnconditionally]):
3323         (-[NSArray removeMouseMovedObserver]):
3324         (-[NSArray viewWillMoveToWindow:]):
3325         (-[NSArray viewDidMoveToWindow]):
3326         (-[WebHTMLView _canMakeTextSmaller]):
3327         (-[WebHTMLView _canMakeTextLarger]):
3328         (-[WebHTMLView _canMakeTextStandardSize]):
3329         * WebView/WebPDFView.mm:
3330         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
3331         * WebView/WebView.mm:
3332         (-[WebView _close]):
3333         (-[WebView setDefersCallbacks:]):
3334         (-[WebView setCustomTextEncodingName:]):
3335
3336 2006-10-23  Geoffrey Garen  <ggaren@apple.com>
3337
3338         Reviewed by Bradee.
3339
3340         Moved some page-level operations from WebFrameBridge to WebPageBridge.
3341
3342         * WebCoreSupport/WebFrameBridge.m:
3343         * WebCoreSupport/WebPageBridge.m:
3344         (-[WebPageBridge createModalDialogWithURL:referrer:]):
3345         (-[WebPageBridge canRunModal]):
3346         (-[WebPageBridge canRunModalNow]):
3347         (-[WebPageBridge runModal]):
3348         * WebKit.xcodeproj/project.pbxproj: Made WebPageBridge.m ObjC++ to support
3349         WebCore #includes.
3350
3351 2006-10-23  John Sullivan  <sullivan@apple.com>
3352
3353         * WebKitPrefix.h:
3354         Removed redundant definition of BUILDING_ON_TIGER that I just added. It turns out this had
3355         already been added between the last time I updated in this tree and when I needed it locally.
3356
3357 2006-10-23  John Sullivan  <sullivan@apple.com>
3358
3359         Reviewed by Anders
3360
3361         * WebKit.xcodeproj/project.pbxproj:
3362         Move WebKitPrefix.h from Misc group to top level, to match WebCore
3363         
3364         * WebKitPrefix.h:
3365         defined BUILDING_ON_TIGER a la WebCore, in preparation for future use of post-Tiger API
3366
3367 2006-10-23  Timothy Hatcher  <timothy@apple.com>
3368
3369         Reviewed by Darin.
3370
3371         Rename the now ObjC++ files to be .mm and remove the explicit file types.
3372
3373         * DefaultDelegates/WebDefaultContextMenuDelegate.m:
3374         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
3375         * English.lproj/StringsNotToBeLocalized.txt:
3376         * Plugins/WebBaseNetscapePluginView.m: Removed.
3377         * Plugins/WebNetscapePluginStream.m: Removed.
3378         * Plugins/WebPluginController.m: Removed.
3379         * WebCoreSupport/WebFrameBridge.m: Removed.
3380         * WebKit.xcodeproj/project.pbxproj:
3381         * WebView/WebDataSource.m: Removed.
3382         * WebView/WebFrame.m: Removed.
3383         * WebView/WebFrameView.m: Removed.
3384         * WebView/WebPDFView.m: Removed.
3385         * WebView/WebPolicyDelegate.m: Removed.
3386         * WebView/WebView.m: Removed.
3387
3388 2006-10-23  Timothy Hatcher  <timothy@apple.com>
3389
3390         Reviewed by Darin.
3391
3392         Move the undef try/catch to WebKitPrefix.h and include algorithm so we get
3393         exception_defines.h and so the undef of try/catch works.
3394
3395         Break off the BGRA to ARGB code into WebGraphicsExtras.c, this lets
3396         WebBaseNetscapePluginView.m safely compile as ObjC++ and not cause the Accelerate
3397         framework to complain about C++ exceptions being disabled.
3398
3399         * Misc/WebGraphicsExtras.c: Added.
3400         (WebConvertBGRAToARGB):
3401         * Misc/WebGraphicsExtras.h: Added.
3402         * Plugins/WebBaseNetscapePluginView.m:
3403         (-[WebBaseNetscapePluginView _aglOffscreenImageForDrawingInRect:]):
3404         * WebKit.xcodeproj/project.pbxproj:
3405         * WebKitPrefix.h:
3406         * WebView/WebView.m:
3407
3408 2006-10-22  Sam Weinig  <sam.weinig@gmail.com>
3409
3410         Reviewed by Tim H.
3411
3412         - Add DOMHTMLFormElementPrivate.h to the project.
3413
3414         * MigrateHeaders.make:
3415
3416 2006-10-21  Darin Adler  <darin@apple.com>
3417
3418         Reviewed by Adele.
3419
3420         - convert WebLoader and its 3 subclasses to C++
3421
3422         * Plugins/WebNetscapePluginStream.h:
3423         * Plugins/WebNetscapePluginStream.m:
3424         (-[WebNetscapePluginStream dealloc]):
3425         (-[WebNetscapePluginStream finalize]):
3426         (-[WebNetscapePluginStream start]):
3427         (-[WebNetscapePluginStream cancelLoadWithError:]):
3428         (-[WebNetscapePluginStream stop]):
3429         * WebCoreSupport/WebFrameBridge.m:
3430         (-[WebFrameBridge canRunModalNow]):
3431         * WebView/WebFrame.m:
3432         (-[WebFramePrivate dealloc]):
3433         (-[WebFramePrivate finalize]):
3434         (frame): Changed from uppercase to lowercase so that it won't conflict
3435         with the WebCore class named Frame.
3436         (-[WebFrame _firstChildFrame]):
3437         (-[WebFrame _lastChildFrame]):
3438         (-[WebFrame _previousSiblingFrame]):
3439         (-[WebFrame _nextSiblingFrame]):
3440         (-[WebFrame _traverseNextFrameStayWithin:]):
3441         (-[WebFrame _immediateChildFrameNamed:]):
3442         (-[WebFrame _nextFrameWithWrap:]):
3443         (-[WebFrame _previousFrameWithWrap:]):
3444         (-[WebFrame findFrameNamed:]):
3445         (-[WebFrame parentFrame]):
3446         (-[WebFrame _dispatchSourceFrame:willSubmitForm:withValues:submissionDecider:]):
3447         (-[WebFrame _deliverArchivedResourcesAfterDelay]):
3448         (-[WebFrame _willUseArchiveForRequest:originalURL:loader:]):
3449         (-[WebFrame _archiveLoadPendingForLoader:]):
3450         (-[WebFrame _cancelPendingArchiveLoadForLoader:]):
3451         (-[WebFrame _clearArchivedResources]):
3452         (-[WebFrame _deliverArchivedResources]):
3453
3454 2006-10-21  Darin Adler  <darin@apple.com>
3455
3456         Reviewed by Anders.
3457
3458         - fix http://bugs.webkit.org/show_bug.cgi?id=10328
3459           REGRESSION: frame leak reported by buildbot
3460
3461         * WebCoreSupport/WebEditorClient.mm:
3462         (WebEditorClient::WebEditorClient): Don't retain the web view.
3463         (WebEditorClient::~WebEditorClient): Don't release the web view.
3464         (WebEditorClient::setWebView): Ditto.
3465
3466         * WebCoreSupport/WebFrameBridge.m:
3467         (-[WebFrameBridge finishInitializingWithFrameName:view:]): Added. Common code for use by both
3468         init methods below.
3469         (-[WebFrameBridge initMainFrameWithPage:frameName:view:]): Changed to use new method.
3470         Also added comment pointing out design flaw -- we attach the client to the web view here,
3471         but we need to be sure to detach in case the web view is deallocated first.
3472         (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]): Ditto.
3473
3474 2006-10-21  Darin Adler  <darin@apple.com>
3475
3476         Reviewed by Adam.
3477
3478         - http://bugs.webkit.org/show_bug.cgi?id=11376
3479           build scripts should invoke make with "-j" option for multiple processors
3480
3481         * WebKit.xcodeproj/project.pbxproj: Pass -j `sysctl -n hw.ncpu` to make.
3482
3483 2006-10-21  Timothy Hatcher  <timothy@apple.com>
3484
3485         Reviewed by Geoff.
3486
3487         <rdar://problem/4478625> HTML Editing: Basic table editing and culling
3488
3489         Initial implementaltion of table deletion user interface:
3490         * Adds a new editing delegate method, webView:shouldShowDeleteInterfaceForElement:.
3491         * The new delegate method is called from the new shouldShowDeleteInterface EditorClient function.
3492
3493         * DefaultDelegates/WebDefaultEditingDelegate.m:
3494         (-[WebDefaultEditingDelegate webView:shouldShowDeleteInterfaceForElement:]):
3495         * WebCoreSupport/WebEditorClient.h:
3496         * WebCoreSupport/WebEditorClient.mm:
3497         (WebEditorClient::WebEditorClient):
3498         (WebEditorClient::shouldDeleteRange):
3499         (WebEditorClient::shouldShowDeleteInterface):
3500         * WebKit.xcodeproj/project.pbxproj:
3501         * WebView/WebEditingDelegatePrivate.h: Added.
3502
3503 2006-10-21  Alice Liu  <alice.liu@apple.com>
3504
3505         Reviewed by Maciej.
3506
3507         fix leaks.
3508
3509         * WebCoreSupport/WebEditorClient.mm:
3510         (WebEditorClient::setWebView):
3511         only change webview if its different
3512
3513         * WebCoreSupport/WebFrameBridge.m:
3514         (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]):
3515         actually use the client allocated in the line above instead of
3516         allocation again, duh. 
3517
3518 2006-10-21  Alice Liu  <alice.liu@apple.com>
3519
3520         Build fix.
3521
3522         * WebCoreSupport/WebEditorClient.h:
3523         * WebCoreSupport/WebEditorClient.mm:
3524         (WebEditorClient::setWebView):
3525
3526 2006-10-20  Alice Liu  <alice.liu@apple.com>
3527
3528         Reviewed by Tim Hatcher.
3529
3530         Fixed a problem where the webview passed to the EditorClient wasn't valid yet.  
3531
3532         * WebCoreSupport/WebEditorClient.h:
3533         (WebEditorClient::setWebView):
3534         added webview setter
3535
3536         * WebCoreSupport/WebEditorClient.mm:
3537         (WebEditorClient::WebEditorClient):
3538         add default constructor
3539
3540         * WebCoreSupport/WebFrameBridge.m:
3541         (-[WebFrameBridge initMainFrameWithPage:frameName:view:]):
3542         use [page webView] since _webview isn't valid yet
3543         (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]):
3544         use webview setter on editorclient
3545
3546 2006-10-20  David Hyatt  <hyatt@apple.com>
3547
3548         Tweak cache sizes so that they are back to the way they were,
3549         except for < 512, which will stay doubled.
3550
3551         Reviewed by Tim H.
3552
3553         * WebCoreSupport/WebFrameBridge.m:
3554         (-[WebFrameBridge getObjectCacheSize]):
3555
3556 2006-10-20  Alice Liu  <alice.liu@apple.com>
3557
3558         Reviewed by Maciej.
3559
3560         Adding knowledge of EditorClient to WebKit
3561
3562         * WebCoreSupport/WebEditorClient.h: Added.
3563
3564         * WebCoreSupport/WebEditorClient.mm: Added.
3565         (WebEditorClient::WebEditorClient):
3566         (WebEditorClient::~WebEditorClient):
3567         (WebEditorClient::shouldDeleteRange):
3568         Implementation of mac EditorClient
3569
3570         * WebCoreSupport/WebFrameBridge.m:
3571         (-[WebFrameBridge initMainFrameWithPage:frameName:view:]):
3572         (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]):
3573         create an editor client to pass down the chain of constructors
3574
3575         * WebKit.xcodeproj/project.pbxproj:
3576         Added related EditorClient files
3577
3578         * WebKitPrefix.h:
3579         Added tiger build flag in order to make certain private headers from webcore compile successfully
3580
3581 2006-10-20  Darin Adler  <darin@apple.com>
3582
3583         - rolled out my loader change; caused world leak and possibly a plug-in crash
3584
3585 2006-10-20  Darin Adler  <darin@apple.com>
3586
3587         Reviewed by Adele.
3588
3589         - convert WebLoader and its 3 subclasses to C++
3590
3591         * Plugins/WebNetscapePluginStream.h:
3592         * Plugins/WebNetscapePluginStream.m:
3593         (-[WebNetscapePluginStream dealloc]):
3594         (-[WebNetscapePluginStream finalize]):
3595         (-[WebNetscapePluginStream start]):
3596         (-[WebNetscapePluginStream cancelLoadWithError:]):
3597         (-[WebNetscapePluginStream stop]):
3598         * WebCoreSupport/WebFrameBridge.m:
3599         (-[WebFrameBridge canRunModalNow]):
3600         * WebView/WebFrame.m:
3601         (-[WebFramePrivate dealloc]):
3602         (-[WebFramePrivate finalize]):
3603         (frame): Changed from uppercase to lowercase so that it won't conflict
3604         with the WebCore class named Frame.
3605         (-[WebFrame _firstChildFrame]):
3606         (-[WebFrame _lastChildFrame]):
3607         (-[WebFrame _previousSiblingFrame]):
3608         (-[WebFrame _nextSiblingFrame]):
3609         (-[WebFrame _traverseNextFrameStayWithin:]):
3610         (-[WebFrame _immediateChildFrameNamed:]):
3611         (-[WebFrame _nextFrameWithWrap:]):
3612         (-[WebFrame _previousFrameWithWrap:]):
3613         (-[WebFrame findFrameNamed:]):
3614         (-[WebFrame parentFrame]):
3615         (-[WebFrame _dispatchSourceFrame:willSubmitForm:withValues:submissionDecider:]):
3616         (-[WebFrame _deliverArchivedResourcesAfterDelay]):
3617         (-[WebFrame _willUseArchiveForRequest:originalURL:loader:]):
3618         (-[WebFrame _archiveLoadPendingForLoader:]):
3619         (-[WebFrame _cancelPendingArchiveLoadForLoader:]):
3620         (-[WebFrame _clearArchivedResources]):
3621         (-[WebFrame _deliverArchivedResources]):
3622
3623 2006-10-20  John Sullivan  <sullivan@apple.com>
3624
3625         Reviewed by Darin
3626         
3627         - fixed <rdar://problem/4794935> setAcceptsMouseMovedEvents: is called for every layout, 
3628           taking ~1% on the PLT test
3629
3630         * WebView/WebHTMLView.m:
3631         (-[NSArray layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]):
3632         Don't call setAcceptsMouseMovedEvents: and WKSetNSWindowShouldPostEventNotifications() here
3633         because this is called too often.
3634         
3635         * WebView/WebView.m:
3636         (-[WebView viewWillMoveToWindow:]):
3637         Do call them here, because this is guaranteed to be called at least once for each window
3638         containing a webview, but isn't called too often. Also restructured this method a little.
3639
3640 2006-10-19  Timothy Hatcher  <timothy@apple.com>
3641
3642         Reviewed by Anders.
3643
3644         Bug 11366: Web Inspector should show user agent style rules
3645         http://bugs.webkit.org/show_bug.cgi?id=11366
3646
3647         * WebInspector/WebInspector.m:
3648         (-[WebInspector init]):
3649         (-[WebInspector showOptionsMenu]):
3650         (-[WebInspector _toggleShowUserAgentStyles:]):
3651         * WebInspector/WebInspectorInternal.h:
3652         * WebInspector/webInspector/inspector.js:
3653
3654 2006-10-19  Brady Eidson <beidson@apple.com>
3655
3656         Build fix - 2gig is on that pesky signed/unsigned limit...
3657
3658         * WebCoreSupport/WebFrameBridge.m:
3659         (-[WebFrameBridge getObjectCacheSize]):
3660
3661 2006-10-19  Brady Eidson  <beidson@apple.com>
3662
3663         Reviewed by Hyatt.
3664
3665         Death to 16777216.  Long live 33554432.
3666         (Cache size changed needs to be reflected in localization file)
3667
3668         * English.lproj/StringsNotToBeLocalized.txt:
3669
3670 2006-10-19  Brady Eidson  <beidson@apple.com>
3671
3672         Reviewed by Hyatt
3673
3674         Added an larger in-memory level of cache for machines with 2+gb ram
3675
3676         * WebCoreSupport/WebFrameBridge.m:
3677         (-[WebFrameBridge getObjectCacheSize]):
3678
3679 2006-10-19  Brady Eidson  <beidson@apple.com>
3680
3681         Reviewed by Hyatt
3682
3683         Double the default memory cache size
3684
3685         * WebView/WebPreferences.m:
3686         (+[WebPreferences initialize]):
3687
3688 2006-10-19  John Sullivan  <sullivan@apple.com>
3689
3690         Reviewed by Kevin D and Geoff
3691
3692         * WebKit.xcodeproj/project.pbxproj:
3693         version wars
3694         
3695         Cleaned up this file, as follows:
3696         - renamed all file-internal methods to start with underscores
3697         - moved all file-internal methods into a FileInternal category block, and alphabetized them
3698         - grouped all other methods by where/how they were defined (delegate methods, protocol methods, overrides, etc.)
3699         - removed unstylish braces around one-line clauses
3700         
3701         * WebView/WebPDFView.m:
3702         (_applicationInfoForMIMEType):
3703         (_PDFSelectionsAreEqual):
3704         (+[WebPDFView supportedMIMETypes]):
3705         (-[WebPDFView setPDFDocument:]):
3706         (-[WebPDFView dealloc]):
3707         (-[WebPDFView centerSelectionInVisibleArea:]):
3708         (-[WebPDFView scrollPageDown:]):
3709         (-[WebPDFView scrollPageUp:]):
3710         (-[WebPDFView scrollLineDown:]):
3711         (-[WebPDFView scrollLineUp:]):
3712         (-[WebPDFView scrollToBeginningOfDocument:]):
3713         (-[WebPDFView scrollToEndOfDocument:]):
3714         (-[WebPDFView jumpToSelection:]):
3715         (-[WebPDFView acceptsFirstResponder]):
3716         (-[WebPDFView becomeFirstResponder]):
3717         (-[WebPDFView hitTest:]):
3718         (-[WebPDFView initWithFrame:]):
3719         (-[WebPDFView menuForEvent:]):
3720         (-[WebPDFView setNextKeyView:]):
3721         (-[WebPDFView viewDidMoveToWindow]):
3722         (-[WebPDFView viewWillMoveToWindow:]):
3723         (-[WebPDFView validateUserInterfaceItem:]):
3724         (-[WebPDFView copy:]):
3725         (-[WebPDFView takeFindStringFromSelection:]):
3726         (-[WebPDFView canPrintHeadersAndFooters]):
3727         (-[WebPDFView printOperationWithPrintInfo:]):
3728         (-[WebPDFView viewWillMoveToHostWindow:]):
3729         (-[WebPDFView viewDidMoveToHostWindow]):
3730         (-[WebPDFView elementAtPoint:]):
3731         (-[WebPDFView elementAtPoint:allowShadowContent:]):
3732         (-[WebPDFView searchFor:direction:caseSensitive:wrap:]):
3733         (-[WebPDFView viewState]):
3734         (-[WebPDFView setViewState:]):
3735         (-[WebPDFView writeSelectionWithPasteboardTypes:toPasteboard:]):
3736         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
3737         (+[WebPDFView _PDFPreviewViewClass]):
3738         (+[WebPDFView _PDFViewClass]):
3739         (-[WebPDFView _anyPDFTagsFoundInMenu:]):
3740         (-[WebPDFView _applyPDFDefaults]):
3741         (-[WebPDFView _fakeKeyEventWithFunctionKey:]):
3742         (-[WebPDFView _menuItemsFromPDFKitForEvent:]):
3743         (-[WebPDFView _openWithFinder:]):
3744         (-[WebPDFView _path]):
3745         (-[WebPDFView _PDFSubview]):
3746         (-[WebPDFView _pointIsInSelection:]):
3747         (-[WebPDFView _receivedPDFKitLaunchNotification:]):
3748         (-[WebPDFView _scaledAttributedString:]):
3749         (-[WebPDFView _trackFirstResponder]):
3750         (-[PDFPrefUpdatingProxy forwardInvocation:]):
3751         (-[PDFPrefUpdatingProxy methodSignatureForSelector:]):
3752
3753 2006-10-19  John Sullivan  <sullivan@apple.com>
3754
3755         Reviewed by Kevin Decker
3756         
3757         - fixed <rdar://problem/4792761> Safari should use fancier embedded PDFKit stuff when it's available
3758
3759         * WebKit.xcodeproj/project.pbxproj:
3760         version wars
3761         
3762         * WebView/WebFrameView.m:
3763         (-[WebFrameView _makeDocumentViewForDataSource:]):
3764         initialize document view with frame view's rect instead of empty rect. This avoids some problems when 
3765         constructing view hierarchies from nibs
3766         
3767         * WebView/WebPreferencesPrivate.h:
3768         declare new _usePDFPreviewView and _setUsePDFPreviewView:, used for debugging
3769         * WebView/WebPreferenceKeysPrivate.h:
3770         declare new preference key string
3771         * WebView/WebPreferences.m:
3772         (+[WebPreferences initialize]):
3773         initialize new preference to true (we will by default use the new view if it's available)
3774         (-[WebPreferences _usePDFPreviewView]):
3775         new accessor for new pref
3776         (-[WebPreferences _setUsePDFPreviewView:]):
3777         ditto
3778
3779         * WebView/WebPDFView.h:
3780         new previewView ivar
3781         
3782         * WebView/WebPDFView.m:
3783         (+[WebPDFView PDFPreviewViewClass]):
3784         new method, returns class to use for fancier embedded PDFKit stuff, or nil if fancy stuff isn't available
3785         (-[WebPDFView initWithFrame:]):
3786         now tries to use fancier embedded PDFKit stuff if it's available and the pref is set to use it; falls back
3787         to old behavior otherwise
3788         (-[WebPDFView dealloc]):
3789         release new previewView ivar (retained in initWithFrame:)
3790         (-[WebPDFView viewWillMoveToWindow:]):
3791         stop observing PDFKit notification when we're removed from window
3792         (-[WebPDFView viewDidMoveToWindow]):
3793         start observing PDFKit notification when we're added to window
3794         (-[WebPDFView _receivedPDFKitLaunchNotification:]):
3795         respond to this new PDFKit notification by opening the document via NSWorkspace
3796         
3797         * English.lproj/StringsNotToBeLocalized.txt:
3798         updated for lots of recent changes
3799         
3800 2006-10-19  Sam Weinig  <sam.weinig@gmail.com>
3801
3802         Reviewed by ap.
3803
3804         Win32 build fix.
3805
3806         * COM/WebFrame.cpp:
3807         (WebFrame::initWithName):
3808         (WebFrame::createNewWindow):
3809
3810 2006-10-19  Mitz Pettel  <mitz@webkit.org>
3811
3812         Reviewed and landed by ap.
3813
3814         - fixed the inspector's tree popup
3815
3816         * WebInspector/webInspector/inspector.html:
3817
3818 2006-10-18  Sam Weinig  <sam.weinig@gmail.com>
3819
3820         Reviewed by Maciej.
3821
3822         Win32 build fix.
3823
3824         * COM/WebFrame.cpp:
3825         (WebFrame::createNewWindow):
3826         * COM/WebFrame.h:
3827
3828 2006-10-18  Anders Carlsson  <acarlsson@apple.com>
3829
3830         Reviewed by Adam.
3831
3832         http://bugs.webkit.org/show_bug.cgi?id=11000
3833         REGRESSION (r16101): css2.1/t0801-c412-hz-box-00-b-a is failing because the QuickTime plugin is taking over but not rendering the png
3834         
3835         * WebCoreSupport/WebFrameBridge.m:
3836         (-[WebFrameBridge determineObjectFromMIMEType:URL:]):
3837         Return ObjectElementFrame if the MIME type is one of the image ones we support.
3838
3839 2006-10-17  Justin Garcia  <justin.garcia@apple.com>
3840
3841         Reviewed by harrison
3842         
3843         <rdar://problem/4765600>
3844         REGRESSION: Mail.app: smart deletion of words does not work
3845         
3846         Regressed when we pushed selecion expansion down into WebCore.  It's OK
3847         to try a smart delete from _deleteWithDirection:, which is called by
3848         deleteFoward: and deleteBackward: if the current selection is a 
3849         range.
3850     
3851         * WebView/WebHTMLView.m:
3852         (-[NSArray _deleteWithDirection:granularity:killRing:isTypingAction:]):
3853
3854 2006-10-13  Justin Garcia  <justin.garcia@apple.com>
3855
3856         Reviewed by harrison
3857         
3858         <rdar://problem/3655385>
3859         Editing: -indent: method unimplemented
3860
3861         * WebView/WebHTMLView.m:
3862         (-[NSArray validateUserInterfaceItem:]): Only allow indent:/outdent: in
3863         richly editable areas.
3864         (-[NSArray indent:]):
3865         (-[NSArray outdent:]):
3866
3867 2006-10-13  Maciej Stachowiak  <mjs@apple.com>
3868
3869         Not reviewed, build fix.
3870         
3871         * icu/unicode/putil.h: Added - needed for build if you don't have apple internal headers.
3872
3873 2006-10-13  Maciej Stachowiak  <mjs@apple.com>
3874
3875         Not reviewed, build fix.
3876         
3877         * icu/unicode/ustring.h: Added - needed for build if you don't have apple internal headers.
3878
3879 2006-10-13  Maciej Stachowiak  <mjs@apple.com>
3880
3881         Reviewed by Anders.
3882         
3883         - add a bunch of casts to get this compiling with older Xcode versions
3884         
3885         (I used static_cast so it will be easier to find and remove these once we have completely moved
3886         on to a new enough compiler version.)
3887
3888         * Plugins/WebBaseNetscapePluginView.m:
3889         (+[WebBaseNetscapePluginView getCarbonEvent:]):
3890         (-[WebBaseNetscapePluginView getCarbonEvent:withEvent:]):
3891         (-[WebBaseNetscapePluginView fixWindowPort]):
3892         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
3893         (-[WebBaseNetscapePluginView _createWindowlessAGLContext]):
3894         (-[WebBaseNetscapePluginView _reshapeAGLWindow]):
3895         (-[WebBaseNetscapePluginView _aglOffscreenImageForDrawingInRect:]):
3896         * WebKit.xcodeproj/project.pbxproj:
3897
3898 2006-10-13  Kevin McCullough  <KMcCullough@apple.com>
3899
3900         Changed by Darin, reviewed by me.
3901
3902         * Plugins/WebNetscapePluginStream.m: Fixed case of import so we can compile on
3903         case-sensitive file system.
3904
3905 2006-10-13  Darin Adler  <darin@apple.com>
3906
3907         Reviewed by Adele.
3908
3909         - converted WebFormState from Objective-C to C++
3910
3911         * ForwardingHeaders: Added an entire copy of WebCore's forwarding headers here.
3912         We should eventually come up with a more-elegant solution.
3913
3914         * WebKit.xcodeproj/project.pbxproj: Added ForwardingHeaders to the include paths.
3915         Converted many files from Objective-C to Objective-C++. In a later check-in, I'll
3916         rename them to .mm instead of .m. Removed C-only warning options for now. In a
3917         later check-in I will add these back in a way that omits them for C++.
3918
3919         * Plugins/WebPluginContainerCheck.m: Updated for header changes.
3920
3921         * WebView/WebFrameInternal.h: Updated for header changes. Removed WebFrameLoaderClient category
3922         so this file can still be used by Objective-C code (not just Objective-C++).
3923
3924         * WebView/WebFrame.m: Put WebFrameLoaderClient category in here.
3925         (-[WebFrame _loadItem:withLoadType:]): Changed to use 0 instead of nil for FormState and fixed
3926         enum code for C++ compatibility.
3927         (-[WebFrame _initWithWebFrameView:webView:bridge:]): Added call to setFrameLoaderClient: here.
3928         (-[WebFrame _updateHistoryForCommit]): Fixed enum code for C++ compatibility.
3929         (-[WebFrame _updateHistoryForReload]): Ditto.
3930
3931         * WebCoreSupport/WebFrameBridge.m:
3932         (-[WebFrameBridge initMainFrameWithPage:frameName:view:]): Removed call to setFrameLoaderClient:.
3933         (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]): Ditto.
3934         (-[WebFrameBridge _retrieveKeyboardUIModeFromPreferences:]): Fixed enum code for C++ compatibility.
3935         (-[WebFrameBridge runModal]): Changed code to not use "namespace" as a local variable name.
3936
3937         * WebView/WebPDFView.m: Added extern "C" so this can compile as Objective-C++.
3938
3939 2006-10-12  Maciej Stachowiak  <mjs@apple.com>
3940
3941         Reviewed by Oliver.
3942         
3943         - liberate more WebKit code down to WebCore
3944
3945         * WebCoreSupport/WebFrameBridge.h:
3946         * WebCoreSupport/WebFrameBridge.m:
3947
3948 2006-10-12  Adele Peterson  <adele@apple.com>
3949
3950         Reviewed by Maciej.
3951
3952         WebKit part of fix for <rdar://problem/4450613> need a means to attach user data to any menu that is popuped up in HTML
3953
3954         Added private delegate method for clients that want access to a PopupMenu's NSMenu.
3955
3956         * DefaultDelegates/WebDefaultUIDelegate.m: (-[NSApplication webView:willPopupMenu:]):
3957         * WebCoreSupport/WebFrameBridge.m: (-[WebFrameBridge willPopupMenu:]):
3958         * WebView/WebUIDelegatePrivate.h:
3959
3960 2006-10-12  MorganL  <morganl.webkit@yahoo.com>
3961
3962         Reviewed/landed by Adam.
3963
3964         Fixes http://bugs.webkit.org/show_bug.cgi?id=11264
3965         Windows build busted
3966
3967         * COM/WebFrame.cpp:
3968         (WebFrame::receivedResponse):
3969
3970 2006-10-11  Darin Adler  <darin@apple.com>
3971
3972         Reviewed by Adele.
3973
3974         - preparations for making more code C++
3975
3976         * WebKitPrefix.h: Fixed ifdef so that C++ files get all the precompiled stuff
3977         that non-C++ files get.
3978
3979         * Misc/WebKitLogging.h:
3980         * Misc/WebKitSystemBits.h:
3981         * Misc/WebLocalizableStrings.h:
3982         * WebCoreSupport/WebSystemInterface.h:
3983         Added extern "C".
3984
3985         * Misc/WebNSViewExtras.h:
3986         * WebView/WebDataSource.m: (addTypesFromClass):
3987         * WebView/WebFrameView.m: (addTypesFromClass):
3988         Eliminated use of the identifier "class".
3989
3990         * WebView/WebView.m: (-[WebView _goToItem:withLoadType:]): Added a type cast.
3991
3992         * Plugins/WebBaseNetscapePluginView.m: Added lots of type casts.
3993
3994 2006-10-10  Brady Eidson  <beidson@apple.com>
3995
3996         Reviewed by Maciej.
3997
3998         Moved WebFrameLoader into WebCoreFrameBridge
3999
4000         * WebCoreSupport/WebFrameBridge.h:
4001         * WebCoreSupport/WebFrameBridge.m:
4002         (-[WebFrameBridge initMainFrameWithPage:frameName:view:]):
4003         (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]):
4004         (-[WebFrameBridge dealloc]):
4005         (-[WebFrameBridge setTitle:]):
4006         (-[WebFrameBridge receivedData:textEncodingName:]):
4007         (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
4008         (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
4009         (-[WebFrameBridge objectLoadedFromCacheWithURL:response:data:]):
4010         (-[WebFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
4011         (-[WebFrameBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
4012         (-[WebFrameBridge reportClientRedirectCancelled:]):
4013         (-[WebFrameBridge close]):
4014         (-[WebFrameBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]):
4015         (-[WebFrameBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
4016         (-[WebFrameBridge tokenizerProcessedData]):
4017         (-[WebFrameBridge frameDetached]):
4018         (-[WebFrameBridge didFirstLayout]):
4019         (-[WebFrameBridge notifyIconChanged:]):
4020         (-[WebFrameBridge originalRequestURL]):
4021         (-[WebFrameBridge isLoadTypeReload]):
4022
4023 2006-10-10  Adele Peterson  <adele@apple.com>
4024
4025         Reviewed by Beth.
4026
4027         Removed handleAutoscrollForMouseDragged.  Except for autoscroll caused by drag and drop, all other
4028         autoscrolling should be done in WebCore instead of in AppKit.
4029
4030         * WebCoreSupport/WebFrameBridge.m:
4031         * WebView/WebHTMLView.m:
4032         * WebView/WebHTMLViewPrivate.h:
4033
4034 2006-10-10  Darin Adler  <darin@apple.com>
4035
4036         - corrected an archive regression caused by loader refactoring
4037           (pointed out by Graham Dennis)
4038
4039         * WebView/WebFrame.m: (-[WebFrame _deliverArchivedResourcesAfterDelay]):
4040         Fix selector name.
4041
4042 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
4043
4044         Rubber stamped by Eric.
4045         
4046         - moved a whole bunch of stuff over to WebCore - updated includes appropriately
4047
4048         * Loader/LoaderNSURLExtras.h: Removed.
4049         * Loader/LoaderNSURLExtras.m: Removed.
4050         * Loader/WebDataProtocol.h: Removed.
4051         * Loader/WebDataProtocol.m: Removed.
4052         * Loader/WebDocumentLoader.h: Removed.
4053         * Loader/WebDocumentLoader.m: Removed.
4054         * Loader/WebFormDataStream.h: Removed.
4055         * Loader/WebFormDataStream.m: Removed.
4056         * Loader/WebFormState.h: Removed.
4057         * Loader/WebFormState.m: Removed.
4058         * Loader/WebFrameLoader.h: Removed.
4059         * Loader/WebFrameLoader.m: Removed.
4060         * Loader/WebFrameLoaderClient.h: Removed.
4061         * Loader/WebLoader.h: Removed.
4062         * Loader/WebLoader.m: Removed.
4063         * Loader/WebMainResourceLoader.h: Removed.
4064         * Loader/WebMainResourceLoader.m: Removed.
4065         * Loader/WebNetscapePlugInStreamLoader.h: Removed.
4066         * Loader/WebNetscapePlugInStreamLoader.m: Removed.
4067         * Loader/WebPlugInStreamLoaderDelegate.h: Removed.
4068         * Loader/WebPolicyDecider.h: Removed.
4069         * Loader/WebPolicyDecider.m: Removed.
4070         * Loader/WebSubresourceLoader.h: Removed.
4071         * Loader/WebSubresourceLoader.m: Removed.
4072         * Misc/WebNSURLExtras.m:
4073         * Plugins/WebBaseNetscapePluginStream.h:
4074         * Plugins/WebBaseNetscapePluginView.m:
4075         * Plugins/WebNetscapePluginStream.m:
4076         * Plugins/WebPluginContainerCheck.m:
4077         * Plugins/WebPluginController.m:
4078         * WebCoreSupport/WebFrameBridge.m:
4079         * WebKit.xcodeproj/project.pbxproj:
4080         * WebView/WebDataSource.m:
4081         * WebView/WebDocumentLoaderMac.h:
4082         * WebView/WebFrame.m:
4083         * WebView/WebFrameInternal.h:
4084         * WebView/WebHTMLView.m:
4085         * WebView/WebPolicyDeciderMac.h:
4086         * WebView/WebPolicyDelegate.m:
4087         * WebView/WebView.m:
4088
4089 2006-10-10  Mark Rowe  <bdash@webkit.org>
4090
4091         Reviewed by Maciej.
4092
4093         Fix crash on launch in nightly builds after r16965.
4094
4095         Safari will sometimes call through to -[NSURL _webkit_canonicalize] before creating a WebView.  If this happens,
4096         InitWebCoreSystemInterface has not yet been called so the call to wkNSURLProtocolClassForReqest is via a garbage
4097         pointer.
4098
4099         * Misc/WebNSURLExtras.m:
4100         (-[NSURL _webkit_canonicalize]): Ensure InitWebCoreSystemInterface is called prior to canonicalURL.
4101
4102 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
4103
4104         Reviewed by Oliver.
4105         
4106         - split out some NSURL extras to be moved to WebCore
4107
4108         * Loader/LoaderNSURLExtras.h: Added.
4109         * Loader/LoaderNSURLExtras.m: Added.
4110         (urlByRemovingComponent):
4111         (urlByRemovingFragment):
4112         (urlOriginalDataAsString):
4113         (urlOriginalData):
4114         (urlWithData):
4115         (WebCFAutorelease):
4116         (urlWithDataRelativeToURL):
4117         (urlByRemovingResourceSpecifier):
4118         (urlIsFileURL):
4119         (stringIsFileURL):
4120         (urlIsEmpty):
4121         (canonicalURL):
4122         * Loader/WebFrameLoader.m:
4123         (-[WebFrameLoader shouldReloadForCurrent:andDestination:]):
4124         (setHTTPReferrer):
4125         (-[WebFrameLoader commitProvisionalLoad:]):
4126         (-[WebFrameLoader _notifyIconChanged:]):
4127         (-[WebFrameLoader didChangeTitleForDocument:]):
4128         (-[WebFrameLoader checkNavigationPolicyForRequest:documentLoader:formState:andCall:withSelector:]):
4129         (-[WebFrameLoader safeLoadURL:]):
4130         * Misc/WebNSURLExtras.m:
4131         (+[NSURL _web_URLWithData:]):
4132         (+[NSURL _web_URLWithData:relativeToURL:]):
4133         (-[NSURL _web_originalData]):
4134         (-[NSURL _web_originalDataAsString]):
4135         (-[NSURL _web_isEmpty]):
4136         (-[NSURL _webkit_canonicalize]):
4137         (-[NSURL _webkit_URLByRemovingComponent:]):
4138         (-[NSURL _webkit_URLByRemovingFragment]):
4139         (-[NSURL _webkit_URLByRemovingResourceSpecifier]):
4140         (-[NSURL _webkit_isFileURL]):
4141         (-[NSString _webkit_isFileURL]):
4142         * WebCoreSupport/WebSystemInterface.m:
4143         (InitWebCoreSystemInterface):
4144         * WebKit.xcodeproj/project.pbxproj:
4145
4146 2006-10-09  Maciej Stachowiak  <mjs@apple.com>
4147
4148         Reviewed by Anders.
4149         
4150         - sever final WebFrame dependencies
4151
4152         * Loader/WebFrameLoader.h:
4153         * Loader/WebFrameLoader.m:
4154         (-[WebFrameLoader initWithFrame:client:]):
4155         (-[WebFrameLoader defersCallbacksChanged]):
4156         (-[WebFrameLoader subframeIsLoading]):
4157         (-[WebFrameLoader transitionToCommitted:]):
4158         (-[WebFrameLoader detachChildren]):
4159         (-[WebFrameLoader checkLoadComplete]):
4160
4161 2006-10-09  Maciej Stachowiak  <mjs@apple.com>
4162
4163         Reviewed by Brady.
4164         
4165         - convert more WebFrameLoader stuff to be independent of WebFrame
4166
4167         * Loader/WebFrameLoader.h:
4168         * Loader/WebFrameLoader.m:
4169         (-[WebFrameLoader stopLoadingSubframes]):
4170         (-[WebFrameLoader _receivedMainResourceError:complete:]):
4171         (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
4172         (-[WebFrameLoader closeOldDataSources]):
4173         (-[WebFrameLoader isHostedByObjectElement]):
4174         (-[WebFrameLoader isLoadingMainFrame]):
4175         (-[WebFrameLoader loadDocumentLoader:withLoadType:formState:]):
4176         (-[WebFrameLoader transitionToCommitted:]):
4177         (-[WebFrameLoader checkLoadCompleteForThisFrame]):
4178         (-[WebFrameLoader continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
4179         (-[WebFrameLoader loadRequest:inFrameNamed:]):
4180         (-[WebFrameLoader postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
4181         (-[WebFrameLoader actionInformationForNavigationType:event:originalURL:]):
4182         (-[WebFrameLoader client]):
4183         * Loader/WebFrameLoaderClient.h:
4184         * WebView/WebDataSource.m:
4185         (-[WebDataSource _webView]):
4186         (-[WebDataSource webFrame]):
4187         * WebView/WebFrame.m:
4188         (-[WebFrame _dispatchCreateWebViewWithRequest:]):
4189
4190 2006-10-09  Maciej Stachowiak  <mjs@apple.com>
4191
4192         Reviewed by Anders and Oliver.
4193         
4194         - move a bunch of WebFrame methods from the Internal category to the WebFrameLoader protocol
4195
4196         * Loader/WebFrameLoader.h:
4197         * Loader/WebFrameLoader.m:
4198         (-[WebFrameLoader loadRequest:]):
4199         (-[WebFrameLoader loadRequest:inFrameNamed:]):
4200         * Loader/WebFrameLoaderClient.h:
4201         * WebView/WebFrame.m:
4202         (-[WebFrame loadRequest:]):
4203         (-[WebFrame _dispatchDidCommitLoadForFrame]):
4204         (-[WebFrame _hasFrameView]):
4205         (-[WebFrame _frameLoadCompleted]):
4206         (-[WebFrame _restoreScrollPositionAndViewState]):
4207         (-[WebFrame _setTitle:forURL:]):
4208         (-[WebFrame _createDocumentLoaderWithRequest:]):
4209         (-[WebFrame _prepareForDataSourceReplacement]):
4210         (-[WebFrame _didFinishLoad]):
4211         (-[WebFrame _addHistoryItemForFragmentScroll]):
4212         (-[WebFrame _shouldTreatURLAsSameAsCurrent:]):
4213         (-[WebFrame _provisionalLoadStarted]):
4214         * WebView/WebFrameInternal.h:
4215
4216 2006-10-09  Maciej Stachowiak  <mjs@apple.com>
4217
4218         Not reviewed, build fix.
4219         
4220         - added forgotten files
4221
4222         * Loader/WebPolicyDecider.h: Added.
4223         * Loader/WebPolicyDecider.m: Added.
4224         (-[WebPolicyDecider invalidate]):
4225
4226 2006-10-09  Maciej Stachowiak  <mjs@apple.com>
4227
4228         Reviewed by Brady.
4229         
4230         - add wrapper for WebPolicyDecisionListener so we can remove the dependency from WebFrameLoader.
4231
4232         * Loader/WebFrameLoader.h:
4233         * Loader/WebFrameLoader.m:
4234         (-[WebFrameLoader _checkContentPolicyForMIMEType:andCall:withSelector:]):
4235         (-[WebFrameLoader cancelContentPolicy]):
4236         (-[WebFrameLoader invalidatePendingPolicyDecisionCallingDefaultAction:]):
4237         (-[WebFrameLoader checkNewWindowPolicyForRequest:action:frameName:formState:andCall:withSelector:]):
4238         (-[WebFrameLoader checkNavigationPolicyForRequest:documentLoader:formState:andCall:withSelector:]):
4239         (-[WebFrameLoader continueAfterWillSubmitForm:]):
4240         (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]):
4241         * Loader/WebFrameLoaderClient.h:
4242         * WebKit.xcodeproj/project.pbxproj:
4243         * WebView/WebFrame.m:
4244         (-[WebFrame _createPolicyDeciderWithTarget:action:]):
4245         (decisionListener):
4246         (-[WebFrame _dispatchDecidePolicyForMIMEType:request:decider:]):
4247         (-[WebFrame _dispatchDecidePolicyForNewWindowAction:request:newFrameName:decider:]):
4248         (-[WebFrame _dispatchDecidePolicyForNavigationAction:request:decider:]):
4249         (-[WebFrame _dispatchSourceFrame:willSubmitForm:withValues:submissionDecider:]):
4250         * WebView/WebPolicyDeciderMac.h: Added.
4251         * WebView/WebPolicyDeciderMac.m: Added.
4252         (-[WebPolicyDeciderMac initWithTarget:action:]):
4253         (-[WebPolicyDeciderMac dealloc]):
4254         (-[WebPolicyDeciderMac decisionListener]):
4255         (-[WebPolicyDeciderMac invalidate]):
4256
4257 2006-10-09  Brady Eidson  <beidson@apple.com>
4258
4259         Reviewed by John
4260
4261         http://bugs.webkit.org/show_bug.cgi?id=11195
4262         Added the WebIconDatabaseDelegate.  This allows the ability to allow customization of 
4263         IconDatabase behavior in the future, starting now with the ability to override the 
4264         default icon fairly flexibly
4265
4266         * Misc/WebIconDatabase.h: Added setIconDatabaseDelegate: