WebCore:
[WebKit-https.git] / WebKit / mac / ChangeLog
1 2008-07-30  Beth Dakin  <bdakin@apple.com>
2
3         Reviewed by Anders Carlsson.
4
5         Fixes <rdar://problem/6041390>
6
7         Adds the ability to have a frame that is "disconnected" from the 
8         main frame from the perspective of top and parent in 
9         Javascript.
10
11         * WebView/WebFrame.mm:
12         (-[WebFrame _setIsDisconnectedFrame]):
13         * WebView/WebFramePrivate.h:
14
15 2008-07-29  Mark Rowe  <mrowe@apple.com>
16
17         Tweak to the build fix to keep Dan happy.
18
19         * Plugins/WebBaseNetscapePluginView.mm:
20         * WebView/WebHTMLView.mm:
21
22 2008-07-29  Mark Rowe  <mrowe@apple.com>
23
24         Build fix.
25
26         * Plugins/WebBaseNetscapePluginView.mm:
27         (-[WebBaseNetscapePluginView inputContext]):
28         * WebView/WebHTMLView.mm:
29
30 2008-07-28  Anders Carlsson  <andersca@apple.com>
31
32         Reviewed by Kevin Decker.
33
34         Based on a patch by Dimcho Balev.
35         
36         https://bugs.webkit.org/show_bug.cgi?id=18676
37         <rdar://problem/6106578>
38         Plug-In API Proposal: Enable plugins to receive response body when an HTTP error occurs
39
40         * Plugins/WebBaseNetscapePluginStream.h:
41         Add NPP_GetValue pointer.
42         
43         * Plugins/WebBaseNetscapePluginStream.mm:
44         (-[WebBaseNetscapePluginStream setPlugin:]):
45         Initialize NPP_GetValue.
46         
47         (-[WebBaseNetscapePluginStream wantsAllStreams]):
48         Call NPP_GetValue.
49         
50         * Plugins/WebPlugInStreamLoaderDelegate.h:
51         * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.h:
52         * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.mm:
53         (WebNetscapePlugInStreamLoaderClient::wantsAllStreams):
54         Implement this and call down to the stream.
55
56 2008-07-28  Anders Carlsson  <andersca@apple.com>
57
58         Reviewed by Adam.
59
60         <rdar://problem/6105529> 
61         https://bugs.webkit.org/show_bug.cgi?id=19659
62         Turning off plugins causes crash
63         
64         When an active page has plug-ins, and plug-ins are disabled, they will be stopped and will
65         end up in a state where they don't have an event handler. Because of this, we need to 
66         check that the plug-in has been started before calling the event handler.
67         
68         * Plugins/WebBaseNetscapePluginView.mm:
69         (-[WebBaseNetscapePluginView sendActivateEvent:]):
70         (-[WebBaseNetscapePluginView sendDrawRectEvent:]):
71         (-[WebBaseNetscapePluginView setHasFocus:]):
72         (-[WebBaseNetscapePluginView mouseDown:]):
73         (-[WebBaseNetscapePluginView mouseUp:]):
74         (-[WebBaseNetscapePluginView mouseEntered:]):
75         (-[WebBaseNetscapePluginView mouseExited:]):
76         (-[WebBaseNetscapePluginView handleMouseMoved:]):
77         (-[WebBaseNetscapePluginView mouseDragged:]):
78         (-[WebBaseNetscapePluginView scrollWheel:]):
79         (-[WebBaseNetscapePluginView keyUp:]):
80         (-[WebBaseNetscapePluginView keyDown:]):
81         (-[WebBaseNetscapePluginView flagsChanged:]):
82         (-[WebBaseNetscapePluginView cut:]):
83         (-[WebBaseNetscapePluginView copy:]):
84         (-[WebBaseNetscapePluginView paste:]):
85         (-[WebBaseNetscapePluginView selectAll:]):
86         (-[WebBaseNetscapePluginView drawRect:]):
87         (-[WebBaseNetscapePluginView inputContext]):
88
89 2008-07-26  Daniel Jalkut  <jalkut@red-sweater.com>
90
91         Reviewed by Geoff Garen.
92
93         Changes to accommodate newly named/signatured loading methods in WebCore.
94
95         * Plugins/WebNetscapePluginStream.mm:
96         (-[WebNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
97         * Plugins/WebPluginContainerCheck.mm:
98         (-[WebPluginContainerCheck _isForbiddenFileLoad]):
99         * WebView/WebPDFView.mm:
100         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
101
102 2008-07-21  Mark Rowe  <mrowe@apple.com>
103
104         Reviewed by Sam Weinig.
105
106         <rdar://problem/6091287> Revamp the handling of CFBundleShortVersionString to be fixed at the major component of the version number.
107
108         * Configurations/Version.xcconfig:
109         * Info.plist:
110
111 2008-07-21  Anders Carlsson  <andersca@apple.com>
112
113         Reviewed by Geoff.
114
115         <rdar://problem/5820667> 
116         CrashTracer: [USER] 3759 crashes in Safari at FrameLoader::activeDocumentLoader const + 6 while canceling plug-in load
117         
118         Don't allow URLs to be loaded in response to an NPP_DestroyStream that happens when tearing down the plug-in.
119         
120         * Plugins/WebBaseNetscapePluginView.mm:
121         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
122
123 2008-07-21  Mark Rowe  <mrowe@apple.com>
124
125         Reviewed by Adam Roben.
126
127         <rdar://problem/5624143> WebView printing doesn't work correctly in x86_64
128
129         Fix the return type of an NSView method that we override so that the correct data type is used in 64-bit.
130         This prevents a garbage value being used for the scale factor that the NSView print machinery applies.
131
132         * WebView/WebHTMLView.mm:
133
134 2008-07-21  Mark Rowe  <mrowe@apple.com>
135
136         Reviewed by Adam Roben.
137
138         Fix CallDelegateReturningFloat for x86_64.  The x86_64 Objective-C runtime
139         only uses objc_msgSend_fpret for long double return values.  For float return
140         values the standard objc_msgSend is used, as on ppc and ppc64.
141
142         * WebView/WebView.mm: Use objc_msgSend_float_return as the name of our version of
143         objc_msgSend with the correct return type.  We can no longer call it objc_msgSend_fpret
144         as that method is defined by the Objective-C runtime for x86_64.
145         (CallDelegateReturningFloat):
146
147 2008-07-14  Dan Bernstein  <mitz@apple.com>
148
149         Reviewed by John Sullivan.
150
151         - WebKit part of fixing <rdar://problem/6071850> Subviews not drawn correctly when using -cacheDisplayInRect:toBitmapImageRep:
152
153         * Plugins/WebBaseNetscapePluginView.mm:
154         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Changed
155         to account for the case of being drawn into a bitmap context that is not
156         a window's backing store. In that case, there are no valid "rects being
157         drawn" to clip to.
158         * WebView/WebHTMLView.mm:
159         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]):
160         Added an override of this NSView method which is used in for
161         -cacheDisplayInRect:toBitmapImageRep:. Like two existing NSView drawing
162         machinery overrides, it sets subviews aside before invoking the
163         superclass implementation. On Tiger, it also updates the layout.
164
165 2008-07-14  Alexey Proskuryakov  <ap@webkit.org>
166
167         Reviewed by Geoff Garen.
168
169         Eliminate per-thread JavaScript global data instance support and make arbitrary
170         global data/global object combinations possible.
171
172         * Misc/WebCoreStatistics.mm:
173         (+[WebCoreStatistics javaScriptObjectsCount]):
174         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
175         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
176         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
177         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
178         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
179         Ask WebCore for its instance of JSGlobalData, now that it is not in per-thread storage.
180
181 2008-07-11  Stephanie Lewis  <slewis@apple.com>
182
183         Reviewed by Darin Adler.
184
185         Disable WTF leak messages when using fast teardown.  Use full document teardown while running in debug.
186
187         * WebView/WebPreferences.m: Removed.
188         * WebView/WebPreferences.mm: Copied from http:/svn.webkit.org/repository/webkit/trunk/WebKit/mac/WebView/WebPreferences.m.
189         (+[WebPreferences initialize]): if running in Default enable full  document teardown
190         (-[WebPreferences editableLinkBehavior]):
191         (-[WebPreferences setFullDocumentTeardownEnabled:]):
192         * WebView/WebView.mm:
193         (-[WebView _close]): disable leak messages if using fast teardown
194
195 2008-07-10  Mark Rowe  <mrowe@apple.com>
196
197         Reviewed by Sam Weinig.
198
199         Define WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST when building WebKit to ensure that no symbols end up with the weak_import attribute.
200
201         * Configurations/WebKit.xcconfig:
202
203 2008-07-10  Mark Rowe  <mrowe@apple.com>
204
205         Reviewed by Sam Weinig.
206
207         Fix the Tiger build by omitting annotations from methods declared in categories when using old versions of GCC.
208
209         * Plugins/WebPlugin.h: Wrap annotations on methods declared in categories in the WEBKIT_CATEGORY_METHOD_ANNOTATION macro.
210         * WebView/WebFrameLoadDelegate.h: Ditto.
211         * WebView/WebUIDelegate.h: Ditto.
212
213 2008-07-10  Anders Carlsson  <andersca@apple.com>
214
215         Reviewed by Mark.
216         
217         Add availability macros for the new WebPlugin methods.
218
219         * Plugins/WebPlugin.h:
220         * Plugins/WebPluginViewFactory.h:
221
222 2008-07-09  Mark Rowe  <mrowe@apple.com>
223
224         Reviewed by Geoff Garen.
225
226         Don't warn about deprecated functions in production builds.
227
228         * Configurations/Base.xcconfig:
229         * Configurations/DebugRelease.xcconfig:
230
231 2008-07-09  Brady Eidson  <beidson@apple.com>
232
233         Reviewed by Darin
234
235         <rdar://problem/5823684> - Crash manipulating frame tree of a new frame before the new frame
236         has been installed in a frame tree.
237
238         The root of this problem was that calling init() on a new frame could end up calling arbitrary
239         javascript that might end up removing the frame from the tree.  This opened up a small can of worms
240         such as the frame not having yet been installed in its frame tree, and other assumed behavior while
241         destroying the frame.
242
243         Note that each platforms WebKit API layer needs to make this new guarantee:
244         "The new Frame must be installed in its FrameTree before newCoreFrame->init() is called"
245         I am fixing Mac, and Windows and GTK already have this property.  Wx currently has subframes disabled
246         but will need to add this guarantee when re-enabling, and Qt is currently vulnerable to this same bug.
247
248         Alternately, the way frames are created right now is roundabout and asinine, and this is a key
249         architectural improvement we can make in the future so the individual platform clients are no longer
250         vulnerable to this problem, which should really have been a WebCore issue.
251
252         * WebCoreSupport/WebFrameLoaderClient.mm:
253         (WebFrameLoaderClient::createFrame):  Don't bother null checking the newCoreFrame - can't be NULL.
254           Don't appendChild() the new frame here.
255           Null-check the new frame's page before loading the URL into it, as it might already have been
256           removed from the page.
257
258         * WebView/WebFrame.mm:
259         (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]):  If there is an ownerElement,
260           go ahead and install the new frame in the frame tree *before* calling init() on it.
261
262 2008-07-09  Anders Carlsson  <andersca@apple.com>
263
264         Reviewed by Darin.
265
266         Make some WebPlugin and WebPluginFactory SPI public.
267         
268         * Plugins/WebPlugin.h:
269         * Plugins/WebPluginPrivate.h:
270         * Plugins/WebPluginViewFactory.h:
271         * Plugins/WebPluginViewFactoryPrivate.h:
272
273 2008-07-08  Jon Honeycutt  <jhoneycutt@apple.com>
274
275         Reviewed by Anders.
276
277         Port r34988 to Mac: don't call NPP_DestroyStream if NPP_NewStream was
278         unsuccessful.
279
280         * Plugins/WebBaseNetscapePluginStream.h: Added new member,
281         newStreamSuccessful.
282         * Plugins/WebBaseNetscapePluginStream.mm:
283         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]): Initialize new member.
284         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]): If NPP_NewStream is successful, set
285         newStreamSuccessful to YES.
286         (-[WebBaseNetscapePluginStream _destroyStream]): Only call
287         NPP_DestroyStream if newStreamSuccessful is true.
288
289 2008-07-08  Dan Bernstein  <mitz@apple.com>
290
291         Reviewed by John Sullivan.
292
293         - WebKit part of <rdar://problem/6008409> Need a way to disable updates in offscreen views
294
295         * WebView/WebHTMLView.mm:
296         (-[WebHTMLView addWindowObservers]): Added code to observe when the
297         window goes onscreen.
298         (-[WebHTMLView removeWindowObservers]): Added.
299         (-[WebHTMLView windowWillOrderOnScreen:]): Added. If the view is set to
300         not update when offscreen, calls -setNeedsDisplay: just before it comes
301         onscreen.
302         * WebView/WebPreferenceKeysPrivate.h: Added preference key.
303         * WebView/WebPreferences.m:
304         (+[WebPreferences initialize]): Made updates when offscreen on by
305         default.
306         (-[WebPreferences updatesWhenOffscreen]): Added.
307         (-[WebPreferences setUpdatesWhenOffscreen:]): Added.
308         * WebView/WebPreferencesPrivate.h:
309         * WebView/WebView.mm:
310         (-[WebView _preferencesChangedNotification:]): Added code to update the
311         updatesWhenOffscreen setting in WebCore.
312
313 2008-07-07  Anders Carlsson  <andersca@apple.com>
314
315         Reviewed by Darin.
316
317         Speculative fix for     
318         <rdar://problem/5839800>
319         CrashTracer: [USER] 5802 crashes in Safari at com.apple.WebKit: -[WebHTMLView(WebPrivate) _updateMouseoverWithFakeEvent] + 389
320         
321         Set _private->closed to YES before calling -[WebPluginController destroyAllPlugins].
322         
323         My theory is that the plug-in destruction callbacks could end up rescheduling timers or re-adding notifications.
324         This is usually protected by _private->closed, but in this case it might still be false.
325
326         * WebView/WebHTMLView.mm:
327         (-[WebHTMLView close]):
328
329 2008-07-05  Mark Rowe  <mrowe@apple.com>
330
331         Reviewed by John Sullivan.
332
333         Remove WebSearchableTextView as it has been unused for some time now.
334
335         * Misc/WebSearchableTextView.h: Removed.
336         * Misc/WebSearchableTextView.m: Removed.
337
338 2008-07-05  Mark Rowe  <mrowe@apple.com>
339
340         Reviewed by John Sullivan.
341
342         Don't leak the result of WKCopyCFLocalizationPreferredName when running under GC.
343
344         * Misc/WebNSUserDefaultsExtras.m:
345         (-[NSString _webkit_HTTPStyleLanguageCode]):
346
347 2008-07-02  Alexey Proskuryakov  <ap@webkit.org>
348
349         Inspired and reviewed by Mark Rowe.
350
351         Change non-API includes from JavaScriptCore/ to kjs/ and wtf/ to match prevalent style.
352
353         * Carbon/HIViewAdapter.m:
354         * DOM/WebDOMOperations.mm:
355         * DefaultDelegates/WebDefaultContextMenuDelegate.mm:
356         * DefaultDelegates/WebDefaultPolicyDelegate.m:
357         * History/WebBackForwardList.mm:
358         * History/WebHistory.mm:
359         * History/WebHistoryItem.mm:
360         * History/WebHistoryItemInternal.h:
361         * Misc/WebCoreStatistics.mm:
362         * Misc/WebDownload.m:
363         * Misc/WebGraphicsExtras.c:
364         * Misc/WebKitLogging.h:
365         * Misc/WebKitSystemBits.m:
366         * Misc/WebLocalizableStrings.m:
367         * Misc/WebNSArrayExtras.m:
368         * Misc/WebNSDataExtras.m:
369         * Misc/WebNSDictionaryExtras.m:
370         * Misc/WebNSFileManagerExtras.m:
371         * Misc/WebNSPasteboardExtras.mm:
372         * Misc/WebNSURLExtras.mm:
373         * Misc/WebNSUserDefaultsExtras.m:
374         * Panels/WebAuthenticationPanel.m:
375         * Panels/WebPanelAuthenticationHandler.m:
376         * Plugins/WebBaseNetscapePluginView.mm:
377         * Plugins/WebBasePluginPackage.m:
378         * Plugins/WebNetscapePluginEmbeddedView.mm:
379         * Plugins/WebPluginContainerCheck.mm:
380         * Plugins/WebPluginController.mm:
381         * Plugins/WebPluginDatabase.mm:
382         * WebCoreSupport/WebJavaScriptTextInputPanel.m:
383         * WebCoreSupport/WebKeyGenerator.m:
384         * WebCoreSupport/WebViewFactory.mm:
385         * WebKitPrefix.h:
386         * WebView/WebHTMLRepresentation.mm:
387         * WebView/WebPDFRepresentation.m:
388         * WebView/WebPDFView.mm:
389         * WebView/WebScriptDebugger.mm:
390
391 2008-07-01  Alexey Proskuryakov  <ap@webkit.org>
392
393         Reviewed by Darin.
394
395         Disable JSLock for per-thread contexts.
396
397         * Misc/WebCoreStatistics.mm:
398         (+[WebCoreStatistics javaScriptObjectsCount]):
399         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
400         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
401         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
402         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
403         (+[WebCoreStatistics shouldPrintExceptions]):
404         (+[WebCoreStatistics setShouldPrintExceptions:]):
405         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
406         * Plugins/WebBaseNetscapePluginView.mm:
407         (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]):
408         (-[WebBaseNetscapePluginView setWindowIfNecessary]):
409         (-[WebBaseNetscapePluginView start]):
410         (-[WebBaseNetscapePluginView createPluginScriptableObject]):
411         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
412         (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]):
413         (-[WebBaseNetscapePluginView loadPluginRequest:]):
414         (-[WebBaseNetscapePluginView _printedPluginBitmap]):
415         * Plugins/WebPluginController.mm:
416         (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
417         (-[WebPluginController startAllPlugins]):
418         (-[WebPluginController stopAllPlugins]):
419         (-[WebPluginController addPlugin:]):
420         (-[WebPluginController destroyPlugin:]):
421         (-[WebPluginController destroyAllPlugins]):
422         * WebView/WebFrame.mm:
423         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
424         * WebView/WebScriptDebugDelegate.mm:
425         (-[WebScriptCallFrame evaluateWebScript:]):
426         * WebView/WebView.mm:
427         (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
428         Pass a parameter (always false) to JSLock and JSLock::DropAllLocks to indicate that WebKit
429         doesn't need locking. In the future, it may be possible to remove some of these if we
430         establish that this won't make JSC assertions fail (and that we don't want to add such
431         assertions either).
432         Added includes that are now needed.
433
434 2008-07-01  Kevin McCullough  <kmccullough@apple.com>
435
436         Build fix.
437
438         * WebView/WebView.mm:
439
440 2008-07-01  Anders Carlsson  <andersca@apple.com>
441
442         Reviewed by Darin.
443
444         Use the PluginMainThreadScheduler, and implement NPN_PluginThreadAsyncCall.
445         
446         * Plugins/WebBaseNetscapePluginView.mm:
447         (-[WebBaseNetscapePluginView _createPlugin]):
448         Register the plug-in instance.
449         
450         (-[WebBaseNetscapePluginView _destroyPlugin]):
451         Unegister the plug-in instance.
452         
453         * Plugins/WebNetscapePluginPackage.m:
454         (-[WebNetscapePluginPackage load]):
455         Set NPN_PluginThreadAsyncCall.
456         
457         * Plugins/npapi.mm:
458         (NPN_PluginThreadAsyncCall):
459         Implement this.
460
461 2008-07-01  Dan Bernstein  <mitz@apple.com>
462
463         Reviewed by Darin Adler.
464
465         - WebKit part of moving the method to set the base writing direction from Frame to Editor
466
467         * WebView/WebHTMLView.mm:
468         (-[WebHTMLView toggleBaseWritingDirection:]): Changed back to call the
469         Editor method.
470         (-[WebHTMLView changeBaseWritingDirection:]): Ditto.
471         (-[WebHTMLView _changeBaseWritingDirectionTo:]): Ditto.
472
473 2008-07-01  Geoffrey Garen  <ggaren@apple.com>
474
475         Build fix: forgot to check in this file.
476
477         * WebView/WebScriptDebugger.mm:
478         (WebScriptDebugger::WebScriptDebugger):
479
480 2008-06-30  Dan Bernstein  <mitz@apple.com>
481
482         Reviewed by Adele Peterson.
483
484         - WebKit/mac part of <rdar://problem/3881497> Writing direction context menu item has no effect on text typed in Safari
485
486         * WebView/WebHTMLView.mm:
487         (-[WebHTMLView toggleBaseWritingDirection:]): Changed to call
488         WebCore::Frame::setSelectionBaseWritingDirection() instead of
489         WebCore::Editor::setBaseWritingDirection().
490         (-[WebHTMLView changeBaseWritingDirection:]): Ditto.
491         (-[WebHTMLView _changeBaseWritingDirectionTo:]): Ditto.
492
493 2008-06-28  Darin Adler  <darin@apple.com>
494
495         - fix build
496
497         * WebView/WebView.mm:
498         (aeDescFromJSValue): Use get instead of getItem, which no longer exists.
499
500 2008-06-26  Anders Carlsson  <andersca@apple.com>
501
502         Reviewed by Darin.
503
504         Add a new MainThreadObjectDeallocator which can schedule dealloc calls on the main thread
505         if necessary. Use this for the WebView class. 
506                 
507         * WebView/MainThreadObjectDeallocator.h: Added.
508         * WebView/MainThreadObjectDeallocator.mm: Added.
509         (deallocCallback):
510         (scheduleDeallocateOnMainThread):
511         * WebView/WebView.mm:
512         (-[WebViewPrivate dealloc]):
513         (+[WebView initialize]):
514
515 2008-06-25  Anders Carlsson  <andersca@apple.com>
516
517         Reviewed by Mark.
518
519         <rdar://problem/5984270> 
520         REGRESSION (Tiger only) : Mail crashes because message load is being processed on a secondary thread
521         
522         * WebView/WebView.mm:
523         (tigerMailReleaseIMP):
524         New method that makes sure that the final release happens on the main thread.
525         
526         (-[WebView release]):
527         New method that just calls [super release];
528         
529         (+[WebView initialize]):
530         When running under Tiger mail, replace the release method with tigerMailReleaseIMP.
531
532 2008-06-19  Alexey Proskuryakov  <ap@webkit.org>
533
534         Reviewed by Geoff.
535
536         Make Machine per-JSGlobalData.
537
538         * WebView/WebScriptDebugger.mm:
539         (WebScriptDebugger::WebScriptDebugger):
540
541 2008-06-17  Alexey Proskuryakov  <ap@webkit.org>
542
543         Reviewed by Darin.
544
545         Prepare JavaScript heap for being per-thread.
546
547         * Misc/WebCoreStatistics.mm:
548         (+[WebCoreStatistics javaScriptObjectsCount]):
549         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
550         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
551         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
552         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
553         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
554         Use JSGlobalData::threadInstance()->heap instead of static Collector calls.
555
556 2008-06-17  Darin Adler  <darin@apple.com>
557
558         Reviewed by Sam.
559
560         * WebView/WebHTMLView.mm:
561         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Use create instead of new
562         to create a CSSMutableStyleDeclaration.
563
564 2008-06-16  Mark Rowe  <mrowe@apple.com>
565
566         Reviewed by Darin Adler.
567
568         <rdar://problem/5951874> WebHTMLHighlighter mistakenly gained two new methods, causing compile warnings
569
570         _pauseNullEventsForAllNetscapePlugins and _resumeNullEventsForAllNetscapePlugins ended up being declared both in
571         WebHTMLViewInternal.h and as members of the WebHTMLHighlighter protocol in WebHTMLViewPrivate.h.  They don't belong
572         in the protocol, but they do need to be available outside of WebKit so they're being moved to the correct location
573         in WebHTMLViewPrivate.h and removed from WebHTMLViewInternal.h.
574
575         * WebView/WebHTMLView.mm:
576         (-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]):
577         (-[WebHTMLView _resumeNullEventsForAllNetscapePlugins]):
578         * WebView/WebHTMLViewInternal.h:
579         * WebView/WebHTMLViewPrivate.h:
580
581 2008-06-15  Darin Adler  <darin@apple.com>
582
583         - give Frame object functions shorter names: scriptProxy() -> script(),
584           selectionController() -> selection(), animationController() -> animation()
585
586         * Plugins/WebPluginController.mm:
587         (-[WebPluginController webPlugInContainerSelectionColor]):
588         * WebView/WebFrame.mm:
589         (-[WebFrame _attachScriptDebugger]):
590         (-[WebFrame _hasSelection]):
591         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
592         (-[WebFrame _rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
593         (-[WebFrame _convertToNSRange:]):
594         (-[WebFrame _convertToDOMRange:]):
595         (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
596         (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]):
597         (-[WebFrame _insertParagraphSeparatorInQuotedContent]):
598         (-[WebFrame _selectedNSRange]):
599         (-[WebFrame _selectNSRange:]):
600         (-[WebFrame globalContext]):
601         * WebView/WebHTMLView.mm:
602         (-[WebHTMLView _selectedRange]):
603         (-[WebHTMLView _hasSelection]):
604         (-[WebHTMLView _hasSelectionOrInsertionPoint]):
605         (-[WebHTMLView _hasInsertionPoint]):
606         (-[WebHTMLView _isEditable]):
607         (-[WebHTMLView _updateFocusedAndActiveState]):
608         (-[WebHTMLView readSelectionFromPasteboard:]):
609         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
610         (-[WebHTMLView maintainsInactiveSelection]):
611         (-[WebHTMLView paste:]):
612         (isTextInput):
613         (-[WebHTMLView inputContext]):
614         (-[WebTextCompleteController doCompletion]):
615         (-[WebHTMLView selectAll]):
616         (-[WebHTMLView deselectAll]):
617         (-[WebHTMLView selectedAttributedString]):
618         * WebView/WebView.mm:
619         (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
620         (-[WebView setSelectedDOMRange:affinity:]):
621         (-[WebView selectedDOMRange]):
622         (-[WebView selectionAffinity]):
623
624 2008-06-15  Darin Adler  <darin@apple.com>
625
626         - rename KJS::List to KJS::ArgList
627
628         * WebView/WebScriptDebugger.h:
629
630 2008-06-15  Darin Adler  <darin@apple.com>
631
632         - new names for more JavaScriptCore files
633
634         * WebView/WebView.mm:
635
636 2008-06-15  Darin Adler  <darin@apple.com>
637
638         - new names for a few key JavaScriptCore files
639
640         * ForwardingHeaders/kjs/JSFunction.h: Copied from WebKit/mac/ForwardingHeaders/kjs/function.h.
641         * ForwardingHeaders/kjs/JSObject.h: Copied from WebKit/mac/ForwardingHeaders/kjs/object.h.
642         * ForwardingHeaders/kjs/JSString.h: Copied from WebKit/mac/ForwardingHeaders/kjs/internal.h.
643         * ForwardingHeaders/kjs/JSValue.h: Copied from WebKit/mac/ForwardingHeaders/kjs/value.h.
644         * ForwardingHeaders/kjs/function.h: Removed.
645         * ForwardingHeaders/kjs/internal.h: Removed.
646         * ForwardingHeaders/kjs/object.h: Removed.
647         * ForwardingHeaders/kjs/value.h: Removed.
648         * WebView/WebScriptDebugDelegate.mm:
649
650 2008-06-15  Darin Adler  <darin@apple.com>
651
652         Rubber stamped by Sam.
653
654         - use JS prefix and simpler names for basic JavaScriptCore types,
655           to complement JSValue and JSObject
656
657         * WebView/WebView.mm:
658         (aeDescFromJSValue):
659
660 2008-06-14  Darin Adler  <darin@apple.com>
661
662         Rubber stamped by Sam.
663
664         - new names for kjs_binding.h and kjs_proxy.h
665
666         * WebView/WebFrame.mm:
667         * WebView/WebScriptDebugDelegate.mm:
668         * WebView/WebView.mm:
669
670 2008-06-14  Darin Adler  <darin@apple.com>
671
672         Rubber stamped by Sam.
673
674         - renamed HTMLGenericFormElement to HTMLFormControlElement
675
676         * WebView/WebHTMLRepresentation.mm:
677         (-[WebHTMLRepresentation elementWithName:inForm:]):
678         (-[WebHTMLRepresentation controlsInForm:]):
679
680 2008-06-14  Darin Adler  <darin@apple.com>
681
682         Reviewed by Sam.
683
684         - more of https://bugs.webkit.org/show_bug.cgi?id=17257
685           start ref counts at 1 instead of 0 for speed
686
687         * WebCoreSupport/WebFrameLoaderClient.mm:
688         (WebFrameLoaderClient::createDocumentLoader): Use create instead of new.
689         (WebFrameLoaderClient::createFrame): Remove now-obsolete adoptRef that was balanced by
690         a ref call inside the Frame constructor. The lifetime rules for Frame are now the
691         conventional ones without a special case.
692
693         * WebView/WebDataSource.mm:
694         (-[WebDataSource _initWithDocumentLoader:]): Changed argument to be a PassRefPtr, since
695         this function takes ownership of the DocumentLoader.
696         (-[WebDataSource initWithRequest:]): Use create instead of new.
697         * WebView/WebDataSourceInternal.h: Changed _initWithDocumentLoader argument to be a
698         PassRefPtr and also cleaned up the header a bit.
699
700         * WebView/WebDocumentLoaderMac.h:
701         (WebDocumentLoaderMac::create): Added. Also made the constructor and a couple of virtual
702         functions private.
703
704         * WebView/WebFrame.mm:
705         (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]): Use create instead
706         of new.
707
708 2008-06-14  Darin Adler  <darin@apple.com>
709
710         Reviewed by Sam.
711
712         - more work on https://bugs.webkit.org/show_bug.cgi?id=17257
713           start ref counts at 1 instead of 0 for speed
714
715         * WebView/WebFrame.mm:
716         (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
717         * WebView/WebPDFView.mm:
718         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
719
720 2008-06-13  Darin Adler  <darin@apple.com>
721
722         Reviewed by John Sullivan.
723
724         - updated for addition of FormState argument to action policy functions
725         - added WebActionFormKey
726
727         * WebCoreSupport/WebFrameLoaderClient.h:
728         * WebCoreSupport/WebFrameLoaderClient.mm:
729         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
730         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
731         (WebFrameLoaderClient::actionDictionary):
732         * WebKit.exp:
733         * WebView/WebPolicyDelegate.mm:
734         * WebView/WebPolicyDelegatePrivate.h:
735
736 2008-06-12  John Sullivan  <sullivan@apple.com>
737
738         Reviewed by Dan and Darin
739
740         Clear up the confusion about _close (older private method) vs -close (newer public method).
741
742         * WebView/WebView.mm:
743         (-[WebView _isClosed]):
744         simplified style
745         (-[WebView _close]):
746         added a comment about how clients and subclasses should use -close instead
747         (-[WebView dealloc]):
748         call -close instead of _close, so subclasses that override the public method will have the intended behavior
749         (-[WebView close]):
750         added a comment
751         (-[WebView _windowWillClose:]):
752         call -close instead of _close, so subclasses that override the public method will have the intended behavior
753
754         * WebView/WebViewPrivate.h:
755         added a comment about how clients and subclasses should use -close instead
756
757 2008-06-07  Darin Adler  <darin@apple.com>
758
759         Reviewed by Mitz.
760
761         - work on https://bugs.webkit.org/show_bug.cgi?id=17257
762           start ref counts at 1 instead of 0 for speed
763
764         * History/WebHistoryItem.mm:
765         (-[WebHistoryItem init]):
766         (-[WebHistoryItem initWithURLString:title:lastVisitedTimeInterval:]):
767         (-[WebHistoryItem initWithURL:target:parent:title:]):
768         (-[WebHistoryItem initWithURLString:title:displayTitle:lastVisitedTimeInterval:]):
769         * WebView/WebView.mm:
770         (+[WebView _decodeData:]):
771
772 2008-06-03  Oliver Hunt  <oliver@apple.com>
773
774         Reviewed by Tim.
775
776         Bug 12983: Web Inspector break on the debugger keyword
777         <https://bugs.webkit.org/show_bug.cgi?id=12983>
778
779         Add stubs to allow old webkit debugger interface to build.
780
781         * WebView/WebScriptDebugger.h:
782         * WebView/WebScriptDebugger.mm:
783
784 2008-06-03  Anders Carlsson  <andersca@apple.com>
785
786         Reviewed by Darin.
787
788         <rdar://problem/5980961>
789         
790         In 64-bit Web Kit, converting between float and double, can cause rounding errors which in turn causes
791         newBottom to be larger than oldBottom which is illegal.
792         
793         * WebView/WebHTMLView.mm:
794         (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]):
795
796 2008-06-02  Anders Carlsson  <andersca@apple.com>
797
798         Reviewed by Mitz.
799
800         Speculative fix for <rdar://problem/5661112> 
801         CrashTracer: [USER] 49 crashes in DashboardClient at com.apple.WebCore: WebCore::RenderPart::setWidget + 62
802         
803         Defer loads while calling NPP_New. Some plug-ins start a run-loop inside NPP_New and finished loads could cause
804         layouts to be triggered.
805         
806         * Plugins/WebBaseNetscapePluginView.mm:
807         (-[WebBaseNetscapePluginView _createPlugin]):
808
809 2008-05-29  Justin Garcia  <justin.garcia@apple.com>
810
811         Reviewed by Darin.
812         
813         <rdar://problem/5949462> REGRESSION: Can't paste screen captures into Mail
814         
815         AppKit started putting PNG instead of PICT onto the pasteboard for screen 
816         captures.  Added support for PNG with kUTTypePNG.  Tiger doesn't support
817         setting and retrieving pasteboard types with UTIs, but we don't know of any
818         applications on Tiger that put only PNG on the pasteboard.
819
820         * WebView/WebHTMLView.mm:
821         (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]):
822         (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
823
824 2008-05-29  Anders Carlsson  <andersca@apple.com>
825
826         Reviewed by Brady.
827
828         <rdar://problem/5970312> 
829         icon file specified for stand alone web app causes crash if the icon can't be found
830         
831         Handle the case where iconData is null.
832         
833         * Misc/WebIconFetcher.mm:
834         (WebIconFetcherClient::finishedFetchingIcon):
835
836 2008-05-29  Anders Carlsson  <andersca@apple.com>
837
838         Reviewed by Mitz.
839
840         <rdar://problem/5971845>
841         https://bugs.webkit.org/show_bug.cgi?id=19313
842         Add version member to NPCocoaEvent
843
844         Initialize the version member to 0 for all events.
845         
846         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
847         (initializeEvent):
848         (WebNetscapePluginEventHandlerCocoa::drawRect):
849         (WebNetscapePluginEventHandlerCocoa::sendMouseEvent):
850         (WebNetscapePluginEventHandlerCocoa::flagsChanged):
851         (WebNetscapePluginEventHandlerCocoa::sendKeyEvent):
852         (WebNetscapePluginEventHandlerCocoa::windowFocusChanged):
853         (WebNetscapePluginEventHandlerCocoa::focusChanged):
854
855 2008-05-29  Dan Bernstein  <mitz@apple.com>
856
857         Reviewed by Jessica Kahn.
858
859         - fix <rdar://problem/5965013> Page 2 does not print correctly
860
861         When printing, _recursiveDisplayRectIfNeededIgnoringOpacity:... and
862         _recursiveDisplayAllDirtyWithLockFocus:... can be invoked without
863         -viewWillDraw being sent first, which could lead to painting without
864         valid layout. The fix is to ensure up-to-date layout in those methods
865         when printing.
866
867         * WebView/WebHTMLView.mm:
868         (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
869         (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
870
871 2008-05-28  Anders Carlsson  <andersca@apple.com>
872
873         Reviewed by Jon.
874
875         Remove workaround, this is no longer a problem.
876         
877         * WebView/WebView.mm:
878         (-[WebView _removeObjectForIdentifier:]):
879
880 2008-05-27  Geoffrey Garen  <ggaren@apple.com>
881
882         Reviewed by Tim Hatcher.
883         
884         Fixed https://bugs.webkit.org/show_bug.cgi?id=19183
885         REGRESSION (r33979): Crash in DebuggerCallFrame::functionName when
886         clicking button in returnEvent-crash.html
887         
888         Added implementations for willExecuteProgram and didExecuteProgram, which
889         take care of making sure we're not hanging on to stale data.
890
891 2008-05-27  Timothy Hatcher  <timothy@apple.com>
892
893         Fixes a bug where unplugging the monitor from a video card and
894         moving it to another video card would no longer show OpenGL plugins
895         until you relaunched Safari.
896
897         <rdar://problem/5790983> Add AllowOfflineDisplays pixel format
898         attribute to OpenGL contexts
899
900         Reviewed by Kevin Decker.
901
902         * Plugins/WebBaseNetscapePluginView.mm:
903         (-[WebBaseNetscapePluginView _createWindowedAGLContext]): Added
904         AGL_ALLOW_OFFLINE_RENDERERS for non-Tiger builds.
905         (-[WebBaseNetscapePluginView _createWindowlessAGLContext]): Ditto.
906
907 2008-05-25  Mark Rowe  <mrowe@apple.com>
908
909         Reviewed by Darin Adler.
910
911         <rdar://problem/5840884> _recursive_resumeNullEventsForAllNetscapePlugins and _pauseNullEvents not defined
912
913         Follow-up for r33052.  _recursive_resumeNullEventsForAllNetscapePlugins and _recursive_pauseNullEventsForAllNetscapePlugins
914         need to be declared in WebFramePrivate.h rather than WebFrameInternal.h so they can be used from outside of WebKit.
915
916         * WebView/WebFrame.mm:
917         (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
918         (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]):
919         * WebView/WebFrameInternal.h:
920         * WebView/WebFramePrivate.h:
921
922 2008-05-23  Timothy Hatcher  <timothy@apple.com>
923
924         Fix attaching and detaching the Web Inspector. This change removes
925         the clunky animation that never looked right and was causing issues
926         where the inspected WebView would get into a no useable state.
927
928         <rdar://problem/5958812> Attaching and Detaching the Web Inspector
929         can cause the inspected WebVIew to be unusable
930
931         Reviewed by Adam Roben.
932
933         * WebCoreSupport/WebInspectorClient.mm:
934         (-[WebInspectorWindowController close]): Removes animation code.
935         Sets the frame directly and does a displayIfNeeded to prevent
936         showing the Inspector in the page and in the Inspector window.
937         (-[WebInspectorWindowController showWindow:]): Removes animation code.
938         Sets the frame directly.
939         (-[WebInspectorWindowController attach]): Simplified.
940         (-[WebInspectorWindowController detach]): Ditto.
941
942 2008-05-22  Dan Bernstein  <mitz@apple.com>
943
944         Reviewed by Darin Adler.
945
946         - fix broken documentation of
947           webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:
948
949         * WebView/WebUIDelegate.h: Fixed method name in HeaderDoc for
950         -webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:
951
952 2008-05-22  Timothy Hatcher  <timothy@apple.com>
953
954         <rdar://problem/5956403> Update the Develop menu to match the new Inspector items
955
956         Reviewed by Adam Roben.
957
958         * WebCoreSupport/WebInspectorClient.mm:
959         (-[WebInspectorWindowController showWebInspector:]):
960         (-[WebInspectorWindowController showErrorConsole:]):
961         (-[WebInspectorWindowController toggleDebuggingJavaScript:]):
962         (-[WebInspectorWindowController toggleProfilingJavaScript:]):
963         (-[WebInspectorWindowController validateUserInterfaceItem:]):
964         * WebInspector/WebInspector.h:
965         * WebInspector/WebInspector.mm:
966         (-[WebInspector showConsole:]):
967         (-[WebInspector showTimeline:]):
968         (-[WebInspector isDebuggingJavaScript]):
969         (-[WebInspector toggleDebuggingJavaScript:]):
970         (-[WebInspector startDebuggingJavaScript:]):
971         (-[WebInspector stopDebuggingJavaScript:]):
972         (-[WebInspector isProfilingJavaScript]):
973         (-[WebInspector toggleProfilingJavaScript:]):
974         (-[WebInspector startProfilingJavaScript:]):
975         (-[WebInspector stopProfilingJavaScript:]):
976
977 2008-05-22  Josh Aas  <joshmoz@gmail.com>
978
979         Reviewed by Anders.
980
981         <rdar://problem/5956429> 
982         https://bugs.webkit.org/show_bug.cgi?id=19192
983         remove NPNVpluginEventModel, fix example plugin
984         
985         * Plugins/WebBaseNetscapePluginView.mm:
986         (-[WebBaseNetscapePluginView getVariable:value:]):
987
988 2008-05-21  Anders Carlsson  <andersca@apple.com>
989
990         Reviewed by Maciej.
991
992         Add WebIconFetcher.
993         
994         * Misc/WebIconFetcher.h: Added.
995         * Misc/WebIconFetcher.mm: Added.
996         (WebIconFetcherClient::WebIconFetcherClient):
997         (WebIconFetcherClient::finishedFetchingIcon):
998         (WebIconFetcherClient::setFetcher):
999         (-[WebIconFetcher init]):
1000         (-[WebIconFetcher dealloc]):
1001         (-[WebIconFetcher finalize]):
1002         (-[WebIconFetcher cancel]):
1003         (-[WebIconFetcher _initWithIconFetcher:client:]):
1004         (+[WebIconFetcher _fetchApplicationIconForFrame:target:selector:]):
1005         * Misc/WebIconFetcherInternal.h: Added.
1006         * WebView/WebFrame.mm:
1007         (-[WebFrame fetchApplicationIcon:selector:]):
1008         * WebView/WebFramePrivate.h:
1009
1010 === End merge of squirrelfish ===
1011
1012 2008-05-21  Geoffrey Garen  <ggaren@apple.com>
1013
1014         Reviewed by Tim Hatcher.
1015         
1016         Updated for API changes from merging with trunk WebCore's new debugger.
1017
1018         * WebView/WebScriptDebugDelegate.mm:
1019         (-[WebScriptCallFrame evaluateWebScript:]): Explicitly check for an
1020         exception return, since the DebuggerCallFrame no longer automatically
1021         substitutes the exception for the return value.
1022
1023         * WebView/WebScriptDebugger.mm: Use the dynamic global object, not the
1024         lexical global object, since the debugger attaches based on dynamic
1025         global object.
1026
1027 2008-05-17  Geoffrey Garen  <ggaren@apple.com>
1028
1029         Reviewed by Oliver Hunt.
1030         
1031         Re-enabled previously disabled debugging functionality.
1032         
1033         There are two major changes from how the WebKit debugger used to work:
1034         
1035         (1) All the interesting bits are implemented down in JavaScriptCore. The
1036         debugger just calls through to KJS::DebuggerCallFrame for everything.
1037         
1038         (2) Instead of copyihng a pointer to an ExecState once, the debugger
1039         copies the DebuggerCallFrame passed to it in each callback. This is
1040         because the VM no longer maintains a fully transparent execution state
1041         to which you can hold a pointer, and the DebuggerCallFrames it vends
1042         are temporaries.
1043         
1044         Also, we NULL out a WebScriptCallFrame's DebuggerCallFrame upon return
1045         from its function. This is safer than the old method, which was to
1046         hold a stale ExecState* and hope for the best.
1047
1048 2008-05-13  Geoffrey Garen  <ggaren@apple.com>
1049
1050         Reviewed by Oliver Hunt.
1051
1052         Updated for API changes in KJS::Debugger.
1053
1054         * WebView/WebFrame.mm:
1055         (-[WebFrame _attachScriptDebugger]): Changed the order of operations to
1056         fix an ASSERT that can happen when re-entering _attachScriptDebugger.
1057
1058 2008-05-13  Geoffrey Garen  <ggaren@apple.com>
1059
1060         Reviewed by Oliver Hunt.
1061         
1062         Updated WebScriptDebugger API to accept a SourceProvider instead
1063         of a WebCore::String, to avoid copying.
1064
1065         (WebScriptDebugger::sourceParsed): Updated this function not to return
1066         a value.
1067
1068 2008-04-30  Geoffrey Garen  <ggaren@apple.com>
1069
1070         Build fix: #ifdef'd out some code that doesn't work anymore.
1071
1072 2008-04-30  Geoffrey Garen  <ggaren@apple.com>
1073
1074         Reviewed by Oliver Hunt.
1075         
1076         #ifdef'd out some debugger code that doesn't work anymore.
1077
1078         * WebView/WebScriptDebugDelegate.mm:
1079         (-[WebScriptCallFrame scopeChain]):
1080
1081 2008-04-21  Geoffrey Garen  <ggaren@apple.com>
1082
1083         Build fix.
1084
1085         * ChangeLog:
1086         * WebView/WebScriptDebugDelegate.mm:
1087         (-[WebScriptCallFrame scopeChain]):
1088
1089 2008-03-30  Geoffrey Garen  <ggaren@apple.com>
1090
1091         Reviewed by Oliver Hunt.
1092         
1093         Build fix.
1094
1095 === Start merge of squirrelfish ===
1096
1097 2008-05-21  Darin Adler  <darin@apple.com>
1098
1099         - fix build
1100
1101         * WebView/WebViewPrivate.h: Remove declaration of closeWithFastTeardown. We can add it back later
1102         if we want, but if we do, we should probably make some refinements like checking _private->closed
1103         and applicationIsTerminating.
1104
1105 2008-05-21  Darin Adler  <darin@apple.com>
1106
1107         Reviewed by Anders and Kevin Decker.
1108
1109         - fix <rdar://problem/5951130> REGRESSION: crash on quit after reopening windows from previous session
1110
1111         * WebView/WebView.mm:
1112         (-[WebViewPrivate dealloc]): Fix assertions to not complain when fast teardown is used.
1113         (-[WebView _closePluginDatabases]): Factored out some common code from both versions of close.
1114         (-[WebView _closeWithFastTeardown]): Added an underscore to this method's name, since it's internal.
1115         Streamlined the code a bit. Added a line of code to set _private->closed (this is the bug fix).
1116         (-[WebView _close]): Changed for new method name and to use _closePluginDatabases.
1117
1118 2008-05-19  Stephanie Lewis  <slewis@apple.com>
1119
1120         Reviewed by Darin.
1121     
1122         more fast teardown performance work
1123
1124         * Misc/WebDownload.m:
1125         (-[WebDownloadInternal downloadDidBegin:]):
1126         (-[WebDownloadInternal downloadDidFinish:]):
1127         (-[WebDownloadInternal download:didFailWithError:]):
1128         * WebCoreSupport/WebChromeClient.h:
1129         * WebCoreSupport/WebChromeClient.mm:
1130         (WebChromeClient::disableSuddenTermination):
1131         (WebChromeClient::enableSuddenTermination):
1132
1133 2008-05-18  Dan Bernstein  <mitz@apple.com>
1134
1135         Reviewed by Sam Weinig.
1136
1137         - fix <rdar://problem/5944596> IDNs are displayed as punycode in the authentication panel
1138
1139         * Panels/WebAuthenticationPanel.m:
1140         (-[WebAuthenticationPanel setUpForChallenge:]):
1141
1142 2008-05-16  Timothy Hatcher  <timothy@apple.com>
1143
1144         Removes WebScriptDebugServer files and related calls. This removes
1145         the hooks that Drosera uses for debugging. Now that the Web Inspector
1146         has a better debugger, we don't need these anymore.
1147
1148         Reviewed by Sam Weinig.
1149
1150         * DefaultDelegates/WebScriptDebugServer.h: Removed.
1151         * DefaultDelegates/WebScriptDebugServer.m: Removed.
1152         * DefaultDelegates/WebScriptDebugServerPrivate.h: Removed.
1153         * WebCoreSupport/WebFrameLoaderClient.mm:
1154         * WebKit.exp:
1155         * WebView/WebScriptDebugDelegate.mm:
1156         * WebView/WebScriptDebugger.mm:
1157         (WebScriptDebugger::sourceParsed):
1158         (WebScriptDebugger::callEvent):
1159         (WebScriptDebugger::atStatement):
1160         (WebScriptDebugger::returnEvent):
1161         (WebScriptDebugger::exception):
1162         * WebView/WebView.mm:
1163         (-[WebView _commonInitializationWithFrameName:groupName:]):
1164         * WebView/WebViewPrivate.h:
1165
1166 2008-05-16  Brady Eidson  <beidson@apple.com>
1167
1168         Reviewed by Anders
1169
1170         <rdar://problem/5942616> - Need to standardize LocalStorage persistence path
1171
1172         Took the opportunity to touch up another pref that needs the same standardization.
1173         That pref is currently not in use on Mac.
1174
1175         * WebView/WebPreferences.m:
1176         (-[WebPreferences _setFTPDirectoryTemplatePath:]):
1177         (-[WebPreferences _localStorageDatabasePath]):
1178         (-[WebPreferences _setLocalStorageDatabasePath:]):
1179         (-[WebPreferences _ftpDirectoryTemplatePath]):
1180
1181 2008-05-16  Chris Fleizach  <cfleizach@apple.com>
1182
1183         Reviewed by Alice Liu
1184
1185         <rdar://problem/5710317> REGRESSION:Selecting ranges of text should be possible using the keyboard (15310)
1186
1187         * WebView/WebFrame.mm:
1188         (-[WebFrame _accessibilityTree]):
1189
1190 2008-05-15  Stephanie Lewis  <slewis@apple.com>
1191         
1192         fix mac build
1193
1194         * WebView/WebView.mm:
1195         (-[WebView closeWithFastTeardown]):
1196
1197 2008-05-15  Stephanie Lewis  <slewis@apple.com>
1198
1199         Reviewed by Anders.
1200
1201         Turn on fast teardown.  I added a preference for using full teardown because 
1202         the LEAKS output will be useless without a full teardown.  
1203
1204         preference for fullteardown
1205         * WebView/WebPreferenceKeysPrivate.h:
1206         * WebView/WebPreferences.m:
1207         (-[WebPreferences setFullDocumentTeardownEnabled:]):
1208         (-[WebPreferences fullDocumentTeardownEnabled]):
1209         * WebView/WebPreferencesPrivate.h:
1210         
1211         on application quit dispatch unload events and destroy plugins then exit
1212         * WebView/WebView.mm:
1213         (-[WebView closeWithFastTeardown]):
1214         (-[WebView _close]):
1215         * WebView/WebViewPrivate.h:
1216
1217 2008-05-15  Stephanie Lewis  <slewis@apple.com>
1218
1219         Reviewed by Anders.
1220
1221         get the pending frame unload count from WebCore
1222
1223         * WebView/WebFrame.mm:
1224         (-[WebFrame _pendingFrameUnloadEventCount]):
1225         * WebView/WebFramePrivate.h:
1226
1227 2008-05-15  John Sullivan  <sullivan@apple.com>
1228
1229         Reviewed by Kevin Decker
1230         
1231         - fixed <rdar://problem/5940275> Inspector highlighting moves to bottom-left corner of 
1232           screen when new tab appears
1233           
1234         The highlight should go away entirely, but this simple patch just makes it not jump away.
1235         The issue with it not going away entirely is harder to fix and covered by <rdar://problem/5322306>
1236
1237         * WebInspector/WebNodeHighlight.m:
1238         (-[WebNodeHighlight _repositionHighlightWindow]):
1239         Bail out if target view isn't in a window
1240
1241 2008-05-15  Stephanie Lewis  <slewis@apple.com>
1242
1243         Reviewed by Anders.
1244
1245         Track views that contain plugin instances so that they can be destroyed at application
1246         quit without walking the entire document tree.
1247
1248         Add/Remove Netscape plugin views from instance list.  Start/stop are when netscape
1249         plugins are created and destroyed
1250         * Plugins/WebBaseNetscapePluginView.mm:
1251         (-[WebBaseNetscapePluginView start]):
1252         (-[WebBaseNetscapePluginView stop]):
1253  
1254         Add/remove WebKit plugin views from instance list
1255         * Plugins/WebPluginController.mm:
1256         (-[WebPluginController addPlugin:]):
1257         (-[WebPluginController destroyPlugin:]):
1258         (-[WebPluginController destroyAllPlugins]):
1259
1260         Add a set of views with plugin instances to the WebPluginDatabase
1261         * Plugins/WebPluginDatabase.h:
1262         * Plugins/WebPluginDatabase.mm:
1263         (-[WebPluginDatabase init]):
1264         (-[WebPluginDatabase dealloc]):
1265         (-[WebPluginDatabase addPluginInstanceView:]):
1266         (-[WebPluginDatabase removePluginInstanceView:]):
1267         (-[WebPluginDatabase removePluginInstanceViewsFor:]):
1268         (-[WebPluginDatabase destroyAllPluginInstanceViews]):
1269         
1270         Handle cases where plugin views are detached before the plugin is destroyed.
1271         * WebCoreSupport/WebFrameLoaderClient.mm:
1272         (WebFrameLoaderClient::detachedFromParent2):
1273         (WebFrameLoaderClient::transitionToCommittedFromCachedPage):
1274         (WebFrameLoaderClient::transitionToCommittedForNewPage):
1275
1276         Add plugin instances to the set in the WebPluginDatabase by way of the WebView
1277         * WebView/WebHTMLView.mm:
1278         (-[WebHTMLView _destroyAllWebPlugins]):
1279         * WebView/WebHTMLViewInternal.h:
1280         * WebView/WebView.mm:
1281         (-[WebView addPluginInstanceView:]):
1282         (-[WebView removePluginInstanceView:]):
1283         (-[WebView removePluginInstanceViewsFor:]):
1284         * WebView/WebViewInternal.h:
1285
1286 2008-05-15  Brady Eidson  <beidson@apple.com>
1287
1288         Reviewed by Tim Hatcher
1289
1290         Until the settings/preferences equation can be reworked, we'll need to manually set the local storage path
1291         before setting the page group of the new page.
1292         
1293         * WebView/WebView.mm:
1294         (-[WebView _commonInitializationWithFrameName:groupName:]): Set the LocalStorage path 
1295           immediately after creating the page so it is in place for initializing the LocalStorageThread
1296
1297 2008-05-15  Timothy Hatcher  <timothy@apple.com>
1298
1299         Fixes the bug where the Web Inspector would flash white while resizing.
1300         This was cause by deferring the window creation.
1301
1302         <rdar://problem/5873549> REGRESSION: Inspector flickers horribly while resizing (17979)
1303
1304         Reviewed by Darin Adler.
1305
1306         * WebCoreSupport/WebInspectorClient.mm:
1307         (-[WebInspectorWindowController window]): Don't defer the window creation.
1308
1309 2008-05-15  Alexey Proskuryakov  <ap@webkit.org>
1310
1311         Tiger build fix.
1312
1313         * Misc/WebNSAttributedStringExtras.mm: Import WebTypesInternal.h for NSUInteger.
1314
1315 2008-05-15  Adele Peterson  <adele@apple.com>
1316
1317         Reviewed and landed by Alexey.
1318
1319         Use TextIterator in +[NSAttributedString _web_attributedStringFromRange:].
1320
1321         * Misc/WebNSAttributedStringExtras.mm:
1322         (+[NSAttributedString _web_attributedStringFromRange:]):
1323
1324 2008-05-14  Eric Seidel  <eric@webkit.org>
1325
1326         Reviewed by Oliver.
1327
1328         Add missing NULL check to match rest of file, this was found by the editing fuzzer.
1329
1330         * WebView/WebResource.mm:
1331         (-[WebResource data]):
1332
1333 2008-05-14  Alexey Proskuryakov  <ap@webkit.org>
1334
1335         Reviewed by Dan Bernstein.
1336
1337         NPP_ValidAttributesForMarkedText should return NSArray*, not NSArray.
1338
1339         * Plugins/nptextinput.h:
1340
1341 2008-05-13  Anders Carlsson  <andersca@apple.com>
1342
1343         Reviewed by Sam.
1344
1345         Don't empty the application cache in _setCacheModel, since it will be called during initialization.
1346         Instead, do it in [WebCache empty].
1347         
1348         * Misc/WebCache.mm:
1349         (+[WebCache empty]):
1350         * WebView/WebView.mm:
1351         (+[WebView _setCacheModel:]):
1352
1353 2008-05-13  chris fleizach  <cfleizach@apple.com>
1354
1355         Reviewed by Beth Dakin
1356
1357         <rdar://problem/4780592> WebKit application has its window announced as HTML content
1358
1359         * WebCoreSupport/WebViewFactory.mm:
1360         (-[WebViewFactory AXWebAreaText]):
1361
1362 2008-05-13  Timothy Hatcher  <timothy@apple.com>
1363
1364         Fixes a crash seen in Xcode where CallUIDelegateReturningBoolean
1365         was referencing a nil WebView under validateUserInterfaceItem.
1366         The validateUserInterfaceItem methods was being called at a time
1367         when the WebHTMLView is being torndown.
1368
1369         <rdar://problem/5806229> A crash occurs at CallUIDelegateReturningBoolean()
1370         while mousing down on menu bar after Xcode News window is opened
1371
1372         Reviewed by Ada Chan.
1373
1374         * WebView/WebHTMLView.mm:
1375         (-[WebHTMLView validateUserInterfaceItem:]): NULL check the WebView and
1376         return NO when it is nil. Adds a comment.
1377         * WebView/WebPDFView.mm:
1378         (-[WebPDFView validateUserInterfaceItem:]): Ditto.
1379
1380 2008-05-13  Mark Rowe  <mrowe@apple.com>
1381
1382         Reviewed by John Sullivan.
1383
1384         <rdar://problem/5926425> HIWebViewCreateWithClass declared as API in HIWebView.h but never exported from WebKit.framework
1385
1386         * Carbon/HIWebView.h: Remove HIWebViewCreateWithClass.
1387         * Carbon/HIWebView.m: Ditto.
1388         (HIWebViewCreate):
1389         (HIWebViewConstructor):
1390
1391 2008-05-12  Dan Bernstein  <mitz@apple.com>
1392
1393         Reviewed by Ada Chan.
1394
1395         - WebKit/mac changes for https://bugs.webkit.org/show_bug.cgi?id=17097
1396           <rdar://problem/5715471> CGFontRefs (and HFONTs on Windows) leak because FontCache grows without bound
1397
1398         Added font cache statistics and a function to purge inactive font data.
1399
1400         * Misc/WebCoreStatistics.h:
1401         * Misc/WebCoreStatistics.mm:
1402         (+[WebCoreStatistics cachedFontDataCount]):
1403         (+[WebCoreStatistics cachedFontDataInactiveCount]):
1404         (+[WebCoreStatistics purgeInactiveFontData]):
1405         (+[WebCoreStatistics glyphPageCount]):
1406
1407 2008-05-12  Mark Rowe  <mrowe@apple.com>
1408
1409         Reviewed by Tim Hatcher.
1410
1411         Decorate some deprecated delegate methods with the availability macros.
1412
1413         The compiler doesn't appear to warn if a delegate implements these methods, but using the availability
1414         macros is good for consistency and documentation.
1415
1416         * WebView/WebFrameLoadDelegate.h:
1417         * WebView/WebUIDelegate.h:
1418
1419 2008-05-12  Mark Rowe  <mrowe@apple.com>
1420
1421         Reviewed by Tim Hatcher.
1422
1423         <rdar://problem/5835604> Deprecate HIWebView
1424
1425         Use of HIWebView is deprecated in favor of embedding a WebView in a HICocoaView.
1426
1427         * Carbon/CarbonUtils.h: Include the availability macro header and decorate the functions appropriately.
1428         * Carbon/HIWebView.h: Ditto.
1429
1430 2008-05-12  Kevin Decker  <kdecker@apple.com>
1431
1432         Reviewed by Anders.
1433
1434         Fixed: <rdar://problem/5840884>_recursive_resumeNullEventsForAllNetscapePlugins and _pauseNullEvents not defined
1435         
1436         Re-added these SPI methods because they are needed by some clients. They were accidentally removed
1437         in changeset <http://trac.webkit.org/changeset/31028>
1438         
1439         * Plugins/WebBaseNetscapePluginView.h: Added stopTimers, restartTimers to the header.
1440         * WebView/WebFrame.mm:
1441         (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]): Re-addd.
1442         (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]): Ditto.
1443         * WebView/WebFrameInternal.h: Ditto.
1444         * WebView/WebHTMLView.mm: Ditto.
1445         (-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]): Ditto.
1446         (-[WebHTMLView _resumeNullEventsForAllNetscapePlugins]): Ditto.
1447         * WebView/WebHTMLViewInternal.h: Ditto.
1448         * WebView/WebHTMLViewPrivate.h: Ditto.
1449
1450 2008-05-12  Anders Carlsson  <andersca@apple.com>
1451
1452         Reviewed by Alexey.
1453
1454         Empty the application cache when changing the cache model.
1455         
1456         * WebView/WebView.mm:
1457         (+[WebView _setCacheModel:]):
1458
1459 2008-05-12  Anders Carlsson  <andersca@apple.com>
1460
1461         Reviewed by Oliver.
1462
1463         <rdar://problem/5774495> Make Unicode text input possible in Netscape-style plug-ins
1464         
1465         * Plugins/WebBaseNetscapePluginView.h:
1466         * Plugins/WebBaseNetscapePluginView.mm:
1467         (-[WebBaseNetscapePluginView start]):
1468         Get the plug-in text input vtable pointer.
1469         
1470         (-[WebBaseNetscapePluginView stop]):
1471         Set the plug-in text input vtable pointer to 0.
1472         
1473         (-[WebBaseNetscapePluginView inputContext]):
1474         Return 0 for Carbon plug-ins since we don't want Cocoa to handle text input for them.
1475         
1476         (-[WebBaseNetscapePluginView hasMarkedText]):        
1477         (-[WebBaseNetscapePluginView insertText:]):
1478         (-[WebBaseNetscapePluginView markedRange]):
1479         (-[WebBaseNetscapePluginView selectedRange]):
1480         (-[WebBaseNetscapePluginView setMarkedText:selectedRange:]):
1481         (-[WebBaseNetscapePluginView unmarkText]):
1482         (-[WebBaseNetscapePluginView validAttributesForMarkedText]):
1483         (-[WebBaseNetscapePluginView attributedSubstringFromRange:]):
1484         (-[WebBaseNetscapePluginView characterIndexForPoint:]):
1485         (-[WebBaseNetscapePluginView doCommandBySelector:]):
1486         (-[WebBaseNetscapePluginView firstRectForCharacterRange:]):
1487         (-[WebBaseNetscapePluginView conversationIdentifier]):
1488         Implement NSTextInput and call into the plug-in text input vtable.
1489         
1490         (browserTextInputFuncs):
1491         New method which returns the browser input vtable.
1492         
1493         (-[WebBaseNetscapePluginView getVariable:value:]):
1494         Support getting the browser input vtable pointer.
1495         
1496         * Plugins/WebNetscapePluginEventHandlerCocoa.h:
1497         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
1498         (WebNetscapePluginEventHandlerCocoa::keyDown):
1499         (WebNetscapePluginEventHandlerCocoa::sendKeyEvent):
1500         If the plug-in returns 0 when a NPCocoaEventKeyDown is passed to NPP_HandleEvent,
1501         it means that the event should be passed on to the input manager.
1502          
1503         * Plugins/npapi.mm:
1504         (NPN_MarkedTextAbandoned):
1505         (NPN_MarkedTextSelectionChanged):
1506         Add implementations of browser input method methods.
1507         
1508         * Plugins/nptextinput.h: Added.
1509         Add file with new text input API.
1510
1511 2008-05-12  Alexey Proskuryakov  <ap@webkit.org>
1512
1513         Roll out recent  threading changes (r32807, r32810, r32819, r32822) to simplify
1514         SquirrelFish merging.
1515
1516         * Misc/WebCoreStatistics.mm:
1517         (+[WebCoreStatistics javaScriptObjectsCount]):
1518         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
1519         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
1520         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
1521         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
1522         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
1523         * WebView/WebScriptDebugDelegate.mm:
1524         (-[WebScriptCallFrame evaluateWebScript:]):
1525
1526 2008-05-07  Anders Carlsson  <andersca@apple.com>
1527
1528         Reviewed by Mitz.
1529
1530         REGRESSION (3.1.1-TOT): Arrow keys are sticky in Google Maps street view
1531         https://bugs.webkit.org/show_bug.cgi?id=18880
1532         <rdar://problem/5909513>
1533
1534         Stop suspending key up events before calling handleEvent.
1535         
1536         * Plugins/WebNetscapePluginEventHandlerCarbon.mm:
1537         (WebNetscapePluginEventHandlerCarbon::sendEvent):
1538
1539 2008-05-06  Stephanie Lewis  <slewis@apple.com>
1540
1541         Reviewed by Andersca.
1542
1543         prepare for plugin fast teardown work - make WebPluginDatabase a objective C++ file.
1544
1545         * Plugins/WebPluginDatabase.m: Removed.
1546         * Plugins/WebPluginDatabase.mm: Copied from WebKit/mac/Plugins/WebPluginDatabase.m.
1547         * Plugins/npapi.m: Removed.
1548         * Plugins/npapi.mm: Copied from WebKit/mac/Plugins/npapi.m.
1549
1550 2008-05-06  Anders Carlsson  <andersca@apple.com>
1551
1552         Reviewed by Darin.
1553
1554         Initialize numArchs to 0.
1555         
1556         * Plugins/WebBasePluginPackage.m:
1557         (-[WebBasePluginPackage isNativeLibraryData:]):
1558
1559 2008-05-06  Anders Carlsson  <andersca@apple.com>
1560
1561         Reviewed by Darin.
1562
1563         Add implementation of NPN_PopUpContextMenu.
1564         
1565         * Plugins/WebBaseNetscapePluginView.mm:
1566         (-[WebBaseNetscapePluginView popUpContextMenu:]):
1567         * Plugins/WebBaseNetscapePluginViewPrivate.h:
1568         * Plugins/WebNetscapePluginPackage.m:
1569         (-[WebNetscapePluginPackage load]):
1570         * Plugins/npapi.m:
1571         (NPN_PopUpContextMenu):
1572
1573 2008-05-06  Anders Carlsson  <andersca@apple.com>
1574
1575         Fix typo (don't read random memory).
1576         
1577         * Plugins/WebBasePluginPackage.m:
1578         (-[WebBasePluginPackage isNativeLibraryData:]):
1579
1580 2008-05-05  Anders Carlsson  <andersca@apple.com>
1581
1582         Reviewed by Darin.
1583
1584         Change the isNativeLibraryData: method to handle universal binaries.
1585         
1586         * Plugins/WebBasePluginPackage.m:
1587         (swapIntsInHeader):
1588         (-[WebBasePluginPackage isNativeLibraryData:]):
1589
1590 2008-05-06  Brady Eidson  <beidson@apple.com>
1591
1592         Reviewed by Darin Adler
1593
1594         Preparation for upcoming work making LocalStorage persistent.
1595
1596         When the application terminates, all LocalStorage areas must be sync'ed out to disk first.
1597
1598         * WebView/WebView.mm:
1599         (+[WebView _applicationWillTerminate]):  Close all LocalStorage areas before quitting.
1600
1601 2008-05-05  Sam Weinig  <sam@webkit.org>
1602
1603         Reviewed by Darin Adler.
1604
1605         Fix for <rdar://problem/5884383>
1606         Escape look-a-like characters from the the entire url.
1607
1608         * Misc/WebNSURLExtras.mm:
1609         (escapeUnsafeCharacters):
1610         (-[NSURL _web_userVisibleString]):
1611
1612 2008-05-05  Justin Garcia  <justin.garcia@apple.com>
1613
1614         Reviewed by Darin.
1615         
1616         <rdar://problem/5865171> REGRESSION: Creating a new quote places caret at beginning of quote instead of the end
1617
1618         * WebView/WebView.mm:
1619         (-[WebView _updateSettingsFromPreferences:]): Disable Range mutation on changes to
1620         the document for Tiger and Leopard Mail.  There is code in Mail that does it, and
1621         the two interfere.
1622
1623 2008-05-05  Sam Weinig  <sam@webkit.org>
1624
1625         Reviewed by Tim Hatcher.
1626
1627         Make the Inspector's localizable strings file match the format used by Dashboard widgets.
1628
1629         * WebCoreSupport/WebInspectorClient.mm:
1630         (WebInspectorClient::localizedStringsURL):
1631
1632 2008-05-05  Anders Carlsson  <andersca@apple.com>
1633
1634         Reviewed by Jess.
1635
1636         Apparently preflighting can cause hangs for some reason. Revert this for now.
1637         
1638         * Plugins/WebNetscapePluginPackage.m:
1639         (-[WebNetscapePluginPackage _initWithPath:]):
1640         * Plugins/WebPluginPackage.m:
1641         (-[WebPluginPackage initWithPath:]):
1642
1643 2008-05-05  Darin Adler  <darin@apple.com>
1644
1645         Reviewed by Mitz.
1646
1647         - https://bugs.webkit.org/show_bug.cgi?id=18789
1648           fix some shouldCloseWithWindow edge cases
1649
1650         * WebView/WebView.mm:
1651         (-[WebView viewWillMoveToWindow:]): Fix bug where we would stop observing the
1652         NSWindowWillCloseNotification if the view was moved out of the window but still
1653         had that window set as the host window. Also make sure this function doesn't do
1654         anything if the WebView is already closed.
1655         (-[WebView setHostWindow:]): Ditto.
1656
1657 2008-05-04  David Kilzer  <ddkilzer@apple.com>
1658
1659         Make parameters match for WebChromeClient::addMessageToConsole()
1660
1661         Reviewed by John.
1662
1663         * WebCoreSupport/WebChromeClient.h:
1664         (WebChromeClient::addMessageToConsole): Renamed sourceID parameter
1665         to sourceURL to match implementation in WebChromeClient.mm.
1666
1667 2008-05-02  Anders Carlsson  <andersca@apple.com>
1668
1669         Reviewed by Mark.
1670
1671         Various Cocoa event model and 64-bit plug-in fixes.
1672         
1673         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
1674         (WebNetscapePluginEventHandlerCocoa::sendMouseEvent):
1675         Set click count.
1676         
1677         (WebNetscapePluginEventHandlerCocoa::flagsChanged):
1678         (WebNetscapePluginEventHandlerCocoa::sendKeyEvent):
1679         Don't try to get the mouse location for keyboard events.
1680         
1681         * Plugins/WebPluginPackage.m:
1682         (-[WebPluginPackage initWithPath:]):
1683         Preflight the bundle so we won't show 32-bit WebKit plug-ins when running as 64-bit.
1684
1685 2008-05-02  Anders Carlsson  <andersca@apple.com>
1686
1687         Reviewed by Sam.
1688
1689         The event union is now named.
1690         
1691         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
1692         (WebNetscapePluginEventHandlerCocoa::drawRect):
1693         (WebNetscapePluginEventHandlerCocoa::sendMouseEvent):
1694         (WebNetscapePluginEventHandlerCocoa::flagsChanged):
1695         (WebNetscapePluginEventHandlerCocoa::sendKeyEvent):
1696         (WebNetscapePluginEventHandlerCocoa::windowFocusChanged):
1697         (WebNetscapePluginEventHandlerCocoa::focusChanged):
1698
1699 2008-05-02  Anders Carlsson  <andersca@apple.com>
1700
1701         Reviewed by Mark.
1702
1703         Make sure that 32-bit only plug-ins aren't shown when running as 64-bit.
1704         
1705         Call preflightAndReturnError on the bundle, which will check if any of the architectures
1706         in the bundle match the current architecture.
1707         
1708         * Plugins/WebNetscapePluginPackage.m:
1709         (-[WebNetscapePluginPackage _initWithPath:]):
1710
1711 2008-05-02  Alexey Proskuryakov  <ap@webkit.org>
1712
1713         Reviewed by Geoffrey Garen.
1714
1715         https://bugs.webkit.org/show_bug.cgi?id=18826
1716         Make JavaScript heap per-thread
1717
1718         * Misc/WebCoreStatistics.mm:
1719         (+[WebCoreStatistics javaScriptObjectsCount]):
1720         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
1721         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
1722         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
1723         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
1724         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
1725         Replaced static Collector calls with calls to a current thread's instance.
1726
1727         * WebView/WebScriptDebugDelegate.mm:
1728         (-[WebScriptCallFrame evaluateWebScript:]):
1729         Pass ExecState to jsString().
1730
1731 2008-05-01  Anders Carlsson  <andersca@apple.com>
1732
1733         Reviewed by Mark.
1734
1735         64-bit NPAPI plugin build fixes.
1736         
1737         * Plugins/WebBaseNetscapePluginView.mm:
1738         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
1739         (-[WebBaseNetscapePluginView updateAndSetWindow]):
1740         (-[WebBaseNetscapePluginView start]):
1741         (-[WebBaseNetscapePluginView windowBecameKey:]):
1742         * Plugins/WebNetscapeDeprecatedFunctions.c:
1743         * Plugins/WebNetscapeDeprecatedFunctions.h:
1744         * Plugins/WebNetscapePluginEventHandler.mm:
1745         (WebNetscapePluginEventHandler::create):
1746         * Plugins/WebNetscapePluginEventHandlerCarbon.h:
1747         * Plugins/WebNetscapePluginEventHandlerCarbon.mm:
1748         * Plugins/WebPluginDatabase.m:
1749         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
1750
1751 2008-05-01  Anders Carlsson  <andersca@apple.com>
1752
1753         Reviewed by Tim.
1754
1755         Remove duplicate npfunctions.h header from WebKit.
1756
1757         * MigrateHeaders.make:
1758         Migrate npfunctions.h
1759         
1760         * Plugins/npfunctions.h: Removed.
1761
1762 2008-05-01  Anders Carlsson  <andersca@apple.com>
1763
1764         Reviewed by John.
1765         
1766         Add null checks for the event handler.
1767         
1768         * Plugins/WebBaseNetscapePluginView.mm:
1769         (-[WebBaseNetscapePluginView stopTimers]):
1770         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
1771
1772 2008-05-01  Anders Carlsson  <andersca@apple.com>
1773
1774         Fix 64-bit build.
1775         
1776         * Plugins/WebNetscapePluginEventHandlerCocoa.h:
1777         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
1778         * WebCoreSupport/WebFrameLoaderClient.mm:
1779
1780 2008-05-01  Anders Carlsson  <andersca@apple.com>
1781
1782         Fix build.
1783         
1784         * Plugins/npfunctions.h:
1785
1786 2008-05-01  Anders Carlsson  <andersca@apple.com>
1787
1788         Reviewed by Adam.
1789
1790         Forward mouse move events to the Netscape plug-in view.
1791         
1792         * Plugins/WebBaseNetscapePluginView.h:
1793         * Plugins/WebBaseNetscapePluginView.mm:
1794         (-[WebBaseNetscapePluginView handleMouseMoved:]):
1795         New method that just calls the current event handler.
1796         
1797         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
1798         (WebNetscapePluginEventHandlerCocoa::flagsChanged):
1799         NSFlagsChanged is not a regular keyboard event and some of the NSEvent accessors
1800         don't work on it so don't call them.
1801         
1802         * WebCoreSupport/WebFrameLoaderClient.mm:
1803         (NetscapePluginWidget::NetscapePluginWidget):
1804         New Widget subclass to be used for Netscape plug-ins.
1805         
1806         (NetscapePluginWidget::handleEvent):
1807         Forward NSMouseMoved events to the plug-in.
1808         
1809         (WebFrameLoaderClient::createPlugin):
1810         Wrap the plug-in view in a NetscapePluginWidget.
1811
1812 2008-05-01  Alp Toker  <alp@nuanti.com>
1813
1814         Rubber-stamped by Anders.
1815
1816         GTK+ build fix for changes in r32752. Use int32, not int32_t types in
1817         npapi.h.
1818
1819         Additional fix to use same signedness in npapi.h and Mac for the
1820         interval parameter.
1821
1822         * Plugins/WebBaseNetscapePluginView.h:
1823         * Plugins/WebBaseNetscapePluginView.mm:
1824         (PluginTimer::PluginTimer):
1825         (-[WebBaseNetscapePluginView stopTimers]):
1826         (-[WebBaseNetscapePluginView restartTimers]):
1827         (-[WebBaseNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]):
1828         (-[WebBaseNetscapePluginView unscheduleTimer:]):
1829         * Plugins/WebBaseNetscapePluginViewPrivate.h:
1830         * Plugins/npapi.m:
1831         (NPN_ScheduleTimer):
1832         (NPN_UnscheduleTimer):
1833         * Plugins/npfunctions.h:
1834
1835 2008-04-30  Anders Carlsson  <andersca@apple.com>
1836
1837         Reviewed by Adam.
1838
1839         Add new Cocoa event model and the NPN_ScheduleTimer/NPN_UnscheduleTimer methods.
1840         
1841         * Plugins/WebBaseNetscapePluginView.h:
1842         * Plugins/WebBaseNetscapePluginView.mm:
1843         (PluginTimer::PluginTimer):
1844         (PluginTimer::start):
1845         (PluginTimer::fired):
1846         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
1847         (-[WebBaseNetscapePluginView stopTimers]):
1848         (-[WebBaseNetscapePluginView restartTimers]):
1849         (-[WebBaseNetscapePluginView scrollWheel:]):
1850         (-[WebBaseNetscapePluginView flagsChanged:]):
1851         (-[WebBaseNetscapePluginView start]):
1852         (-[WebBaseNetscapePluginView eventModel]):
1853         (-[WebBaseNetscapePluginView fini]):
1854         (-[WebBaseNetscapePluginView getVariable:value:]):
1855         (-[WebBaseNetscapePluginView setVariable:value:]):
1856         (-[WebBaseNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]):
1857         (-[WebBaseNetscapePluginView unscheduleTimer:]):
1858         * Plugins/WebBaseNetscapePluginViewInternal.h:
1859         * Plugins/WebBaseNetscapePluginViewPrivate.h:
1860         * Plugins/WebNetscapePluginEventHandler.h:
1861         * Plugins/WebNetscapePluginEventHandler.mm:
1862         (WebNetscapePluginEventHandler::create):
1863         * Plugins/WebNetscapePluginEventHandlerCarbon.h:
1864         * Plugins/WebNetscapePluginEventHandlerCarbon.mm:
1865         (WebNetscapePluginEventHandlerCarbon::scrollWheel):
1866         (WebNetscapePluginEventHandlerCarbon::flagsChanged):
1867         (WebNetscapePluginEventHandlerCarbon::platformWindow):
1868         * Plugins/WebNetscapePluginEventHandlerCocoa.h: Added.
1869         (WebNetscapePluginEventHandlerCocoa::startTimers):
1870         (WebNetscapePluginEventHandlerCocoa::stopTimers):
1871         * Plugins/WebNetscapePluginEventHandlerCocoa.mm: Added.
1872         (WebNetscapePluginEventHandlerCocoa::WebNetscapePluginEventHandlerCocoa):
1873         (WebNetscapePluginEventHandlerCocoa::drawRect):
1874         (WebNetscapePluginEventHandlerCocoa::mouseDown):
1875         (WebNetscapePluginEventHandlerCocoa::mouseDragged):
1876         (WebNetscapePluginEventHandlerCocoa::mouseEntered):
1877         (WebNetscapePluginEventHandlerCocoa::mouseExited):
1878         (WebNetscapePluginEventHandlerCocoa::mouseMoved):
1879         (WebNetscapePluginEventHandlerCocoa::mouseUp):
1880         (WebNetscapePluginEventHandlerCocoa::scrollWheel):
1881         (WebNetscapePluginEventHandlerCocoa::sendMouseEvent):
1882         (WebNetscapePluginEventHandlerCocoa::keyDown):
1883         (WebNetscapePluginEventHandlerCocoa::keyUp):
1884         (WebNetscapePluginEventHandlerCocoa::flagsChanged):
1885         (WebNetscapePluginEventHandlerCocoa::sendKeyEvent):
1886         (WebNetscapePluginEventHandlerCocoa::windowFocusChanged):
1887         (WebNetscapePluginEventHandlerCocoa::focusChanged):
1888         (WebNetscapePluginEventHandlerCocoa::platformWindow):
1889         (WebNetscapePluginEventHandlerCocoa::sendEvent):
1890         * Plugins/WebNetscapePluginPackage.m:
1891         (-[WebNetscapePluginPackage load]):
1892         * Plugins/npapi.m:
1893         (NPN_ScheduleTimer):
1894         (NPN_UnscheduleTimer):
1895         * Plugins/npfunctions.h:
1896
1897 2008-04-30  Brady Eidson  <beidson@apple.com>
1898
1899         Fix my WebPreferences revert check-in
1900
1901         * WebView/WebView.mm:
1902         (-[WebView _preferencesChangedNotification:]):
1903
1904 2008-04-30  Brady Eidson  <beidson@apple.com>
1905
1906         Rubberstamped by John Sullivan
1907
1908         Revert the remainder of my original preferences changes from last week.
1909         They caused a massive PLT regression (too many notifications being sent out
1910         or listened to that weren't previously) and it's not in my schedule to refine
1911         the preferences code instead of working on my feature!
1912
1913         * WebView/WebView.mm:
1914         (-[WebView _updateSettingsFromPreferences:]):
1915         (-[WebView _commonInitializationWithFrameName:groupName:]):
1916
1917 2008-04-30  Anders Carlsson  <andersca@apple.com>
1918
1919         Fix the 64-bit build.
1920         
1921         * Plugins/WebNetscapePluginEventHandler.h:
1922         * Plugins/WebNetscapePluginEventHandler.mm:
1923         * Plugins/WebNetscapePluginEventHandlerCarbon.h:
1924         * Plugins/WebNetscapePluginEventHandlerCarbon.mm:
1925
1926 2008-04-29  David D. Kilzer  <ddkilzer@apple.com>
1927
1928         BUILD FIX for Release build.
1929
1930         * Plugins/WebNetscapePluginEventHandlerCarbon.mm:
1931         (WebNetscapePluginEventHandlerCarbon::drawRect): Declare acceptedEvent
1932         separately so the compiler doesn't complain about an unused variable.
1933         (WebNetscapePluginEventHandlerCarbon::TSMEventHandler): Ditto.
1934
1935 2008-04-29  Anders Carlsson  <andersca@apple.com>
1936
1937         Reviewed by Adam.
1938
1939         Refactor the Carbon event handling code out into a separate class in preparation for adding
1940         the Cocoa event handling code.
1941         
1942         * Plugins/WebBaseNetscapePluginView.h:
1943         * Plugins/WebBaseNetscapePluginView.mm:
1944         (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]):
1945         (-[WebBaseNetscapePluginView sendActivateEvent:]):
1946         (-[WebBaseNetscapePluginView sendDrawRectEvent:]):
1947         (-[WebBaseNetscapePluginView stopTimers]):
1948         (-[WebBaseNetscapePluginView restartTimers]):
1949         (-[WebBaseNetscapePluginView setHasFocus:]):
1950         (-[WebBaseNetscapePluginView mouseDown:]):
1951         (-[WebBaseNetscapePluginView mouseUp:]):
1952         (-[WebBaseNetscapePluginView mouseEntered:]):
1953         (-[WebBaseNetscapePluginView mouseExited:]):
1954         (-[WebBaseNetscapePluginView mouseDragged:]):
1955         (-[WebBaseNetscapePluginView keyUp:]):
1956         (-[WebBaseNetscapePluginView keyDown:]):
1957         (-[WebBaseNetscapePluginView cut:]):
1958         (-[WebBaseNetscapePluginView copy:]):
1959         (-[WebBaseNetscapePluginView paste:]):
1960         (-[WebBaseNetscapePluginView selectAll:]):
1961         (-[WebBaseNetscapePluginView start]):
1962         (-[WebBaseNetscapePluginView stop]):
1963         (-[WebBaseNetscapePluginView fini]):
1964         (-[WebBaseNetscapePluginView drawRect:]):
1965         (-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
1966         (-[WebBaseNetscapePluginView viewDidMoveToWindow]):
1967         (-[WebBaseNetscapePluginView windowBecameKey:]):
1968         (-[WebBaseNetscapePluginView windowResignedKey:]):
1969         (-[WebBaseNetscapePluginView windowDidMiniaturize:]):
1970         (-[WebBaseNetscapePluginView windowDidDeminiaturize:]):
1971         (-[WebBaseNetscapePluginView loginWindowDidSwitchFromUser:]):
1972         (-[WebBaseNetscapePluginView loginWindowDidSwitchToUser:]):
1973         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
1974         (-[WebBaseNetscapePluginView _viewHasMoved]):
1975         * Plugins/WebBaseNetscapePluginViewInternal.h:
1976         * Plugins/WebNetscapePluginEmbeddedView.h:
1977         * Plugins/WebNetscapePluginEventHandler.h: Added.
1978         (WebNetscapePluginEventHandler::~WebNetscapePluginEventHandler):
1979         (WebNetscapePluginEventHandler::currentEventIsUserGesture):
1980         (WebNetscapePluginEventHandler::WebNetscapePluginEventHandler):
1981         * Plugins/WebNetscapePluginEventHandler.mm: Added.
1982         (WebNetscapePluginEventHandler::create):
1983         * Plugins/WebNetscapePluginEventHandlerCarbon.h: Added.
1984         * Plugins/WebNetscapePluginEventHandlerCarbon.mm: Added.
1985         (WebNetscapePluginEventHandlerCarbon::WebNetscapePluginEventHandlerCarbon):
1986         (getCarbonEvent):
1987         (modifiersForEvent):
1988         (WebNetscapePluginEventHandlerCarbon::sendNullEvent):
1989         (WebNetscapePluginEventHandlerCarbon::drawRect):
1990         (WebNetscapePluginEventHandlerCarbon::mouseDown):
1991         (WebNetscapePluginEventHandlerCarbon::mouseUp):
1992         (WebNetscapePluginEventHandlerCarbon::mouseEntered):
1993         (WebNetscapePluginEventHandlerCarbon::mouseExited):
1994         (WebNetscapePluginEventHandlerCarbon::mouseDragged):
1995         (WebNetscapePluginEventHandlerCarbon::mouseMoved):
1996         (WebNetscapePluginEventHandlerCarbon::keyDown):
1997         (keyMessageForEvent):
1998         (WebNetscapePluginEventHandlerCarbon::keyUp):
1999         (WebNetscapePluginEventHandlerCarbon::focusChanged):
2000         (WebNetscapePluginEventHandlerCarbon::windowFocusChanged):
2001         (WebNetscapePluginEventHandlerCarbon::TSMEventHandler):
2002         (WebNetscapePluginEventHandlerCarbon::installKeyEventHandler):
2003         (WebNetscapePluginEventHandlerCarbon::removeKeyEventHandler):
2004         (WebNetscapePluginEventHandlerCarbon::nullEventTimerFired):
2005         (WebNetscapePluginEventHandlerCarbon::startTimers):
2006         (WebNetscapePluginEventHandlerCarbon::stopTimers):
2007         (WebNetscapePluginEventHandlerCarbon::sendEvent):
2008
2009 2008-04-29  Mark Rowe  <mrowe@apple.com>
2010
2011         Reviewed by David Harrison.
2012
2013         Ensure that WebDynamicScrollBarsView defines WebCoreScrollbarAlwaysOn to keep Mail building.
2014
2015         * WebKit.exp:
2016         * WebView/WebDynamicScrollBarsView.h:
2017         * WebView/WebDynamicScrollBarsView.m:
2018
2019 2008-04-29  Greg Bolsinga  <bolsinga@apple.com>
2020
2021         Reviewed by Darin.
2022
2023         Wrapped Dashboard code with ENABLE(DASHBOARD_SUPPORT)
2024
2025         * WebCoreSupport/WebChromeClient.h:
2026         * WebCoreSupport/WebChromeClient.mm:
2027         * WebView/WebClipView.m:
2028         (-[WebClipView scrollWheel:]):
2029         * WebView/WebHTMLView.mm:
2030         (-[WebHTMLView addMouseMovedObserver]):
2031         (-[WebHTMLView removeMouseMovedObserver]):
2032         (-[WebHTMLView acceptsFirstMouse:]):
2033         * WebView/WebUIDelegatePrivate.h:
2034         * WebView/WebView.mm:
2035         (-[WebViewPrivate init]):
2036         * WebView/WebViewPrivate.h:
2037
2038 2008-04-28  Rob Buis  <buis@kde.org>
2039
2040         Reviewed by Maciej.
2041
2042         Build fix for Tiger.
2043
2044         * WebView/WebView.mm:
2045         (WebKitInitializeApplicationCachePathIfNecessary):
2046
2047 2008-04-28  Adele Peterson  <adele@apple.com>
2048
2049         Reviewed by Dan Bernstein, Tim Hatcher, Anders Carlsson, and Darin Adler.
2050
2051         WebKit part of fix for <rdar://problem/3709505>
2052         Safari should have a way to upload bundles from the file upload control (as zip)
2053
2054         Added UIDelegate methods to let the application handle generating replacement files for uploads.
2055         In this case, Safari will create archived files for bundles so they can be uploaded properly.
2056
2057         * DefaultDelegates/WebDefaultUIDelegate.m:
2058         (-[WebDefaultUIDelegate webView:shouldReplaceUploadFile:usingGeneratedFilename:]):
2059         (-[WebDefaultUIDelegate webView:generateReplacementFile:]):
2060         * WebCoreSupport/WebChromeClient.h:
2061         * WebCoreSupport/WebChromeClient.mm:
2062         (WebChromeClient::shouldReplaceWithGeneratedFileForUpload):
2063         (WebChromeClient::generateReplacementFile):
2064         * WebView/WebUIDelegatePrivate.h:
2065
2066 2008-04-28  Anders Carlsson  <andersca@apple.com>
2067
2068         Reviewed by Sam, Mark, Adele and Darin.
2069
2070         Initialize the application cache path.
2071         
2072         * WebView/WebView.mm:
2073         (WebKitInitializeApplicationCachePathIfNecessary):
2074         (-[WebView _commonInitializationWithFrameName:groupName:]):
2075
2076 2008-04-28  Alice Liu  <alice.liu@apple.com>
2077
2078         Reviewed by Darin.
2079
2080         Fix <rdar://problem/4911289> Add tabindex property to all children 
2081         of HTMLElement (7138)
2082         http://bugs.webkit.org/show_bug.cgi?id=7138
2083
2084         * MigrateHeaders.make:
2085         Removing DOMHTMLLabelElementPrivate.h and DOMHTMLLegendElementPrivate.h
2086         because now that focus() has been moved to DOMHTMLElement.h, these
2087         files are no longer needed.
2088
2089 2008-04-25  Alexey Proskuryakov  <ap@webkit.org>
2090
2091         Reviewed by Darin.
2092
2093         Fix run-webkit-tests --threading
2094         and provisionally fix <https://bugs.webkit.org/show_bug.cgi?id=18661>
2095         Proxy server issue in Sunday's Nightly
2096
2097         * WebView/WebView.mm: (-[WebViewPrivate init]): Initialize threading. Previously, this was
2098         only done from icon database code, which is not robust enough.
2099
2100 2008-04-20 Adam Barth <hk9565@gmail.com>
2101
2102         Reviewed by Adam Roben and Sam Weinig.
2103
2104         Updated WebSecurityOrigin to match new SecurityOrigin API.
2105
2106         Collin Jackson <collinj-webkit@collinjackson.com> also contributed to this patch.
2107
2108         * Storage/WebSecurityOrigin.mm:
2109         (-[WebSecurityOrigin host]):
2110         (-[WebSecurityOrigin domain]):
2111         * Storage/WebSecurityOriginPrivate.h:
2112
2113 2008-04-25  Mark Rowe  <mrowe@apple.com>
2114
2115         Rubber-stamped by Sam Weinig.
2116
2117         Add some content to an empty ICU header file to prevent verification errors.
2118
2119         * icu/unicode/utf_old.h:
2120
2121 2008-04-25  Anders Carlsson  <andersca@apple.com>
2122
2123         Reviewed by Sam.
2124
2125         Add offlineWebApplicationCacheEnabled preference.
2126         
2127         * WebView/WebPreferenceKeysPrivate.h:
2128         * WebView/WebPreferences.m:
2129         (+[WebPreferences initialize]):
2130         (-[WebPreferences offlineWebApplicationCacheEnabled]):
2131         (-[WebPreferences setOfflineWebApplicationCacheEnabled:]):
2132         * WebView/WebPreferencesPrivate.h:
2133         * WebView/WebView.mm:
2134         (-[WebView _updateSettingsFromPreferences:]):
2135
2136 2008-04-24  Mark Rowe  <mrowe@apple.com>
2137
2138         Reviewed by Sam Weinig.
2139
2140         Remove code for calculating the glyph cache size.
2141
2142         * WebCoreSupport/WebSystemInterface.m:
2143         (InitWebCoreSystemInterface): Remove unused symbol.
2144
2145 2008-04-24  Mark Rowe  <mrowe@apple.com>
2146
2147         Reviewed by Sam Weinig.
2148
2149         Add a definition of BUILDING_ON_LEOPARD to complement BUILDING_ON_TIGER.
2150
2151         * WebKitPrefix.h:
2152
2153 2008-04-24  Brady Eidson  <beidson@apple.com>
2154
2155         Reviewed by Darin
2156
2157         Fix layout test regressions from my earlier preferences/settings tweak.
2158
2159         * WebView/WebView.mm:
2160         (-[WebView _commonInitializationWithFrameName:groupName:]): Even if we're not posting
2161           the notification to update the settings, each WebView still needs to register for the
2162           notification - restore that behavior.
2163
2164 2008-04-24  Dan Bernstein  <mitz@apple.com>
2165
2166         Reviewed by Darin Adler.
2167
2168         - preparation for https://bugs.webkit.org/show_bug.cgi?id=3729
2169           <rdar://problem/4036353> REGRESSION: arrow keys move insertion bar backwards in RTL text
2170
2171         * WebView/WebFrame.mm:
2172         (-[WebFrame _caretRectAtNode:offset:affinity:]): Changed to use
2173         VisiblePosition::caretRect() instead of the RenderObject method which
2174         was removed.
2175
2176 2008-04-24  Brady Eidson  <beidson@apple.com>
2177
2178         Reviewed by Darin
2179
2180         Rework the Settings population again.
2181
2182         * WebView/WebView.mm:
2183         (-[WebView _updateSettingsFromPreferences:]): This method is called both from _preferencesChangedNotification
2184           and directly from WebView's common init function.
2185         (-[WebView _preferencesChangedNotification:]):
2186         (-[WebView _commonInitializationWithFrameName:groupName:]): Call _updateSettingsFromPreferences immediately
2187           after creating the new Page
2188
2189 2008-04-24  Darin Adler  <darin@apple.com>
2190
2191         Reviewed by Geoff.
2192
2193         - fix crash in regression test where we'd ask a frame for a user agent string
2194           after the WebView was already closed
2195
2196         * WebCoreSupport/WebFrameLoaderClient.mm:
2197         (WebFrameLoaderClient::userAgent): Assert that the WebView is not nil. Also
2198         added some code to prevent the crash in release builds if this problem happens
2199         again.
2200
2201 2008-04-24  Anders Carlsson  <andersca@apple.com>
2202
2203         Reviewed by Sam.
2204
2205         Change some String arguments to be const references instead.
2206
2207         * WebCoreSupport/WebEditorClient.h:
2208         * WebCoreSupport/WebEditorClient.mm:
2209         (WebEditorClient::shouldInsertText):
2210
2211 2008-04-24  John Sullivan  <sullivan@apple.com>
2212
2213         Mac build fix
2214         
2215         * WebCoreSupport/WebViewFactory.mm:
2216         (-[WebViewFactory AXButtonActionVerb]):
2217         implement this method using the text in WebCoreLocalizedStrings.cpp
2218         (-[WebViewFactory AXRadioButtonActionVerb]):
2219         ditto
2220         (-[WebViewFactory AXTextFieldActionVerb]):
2221         ditto
2222         (-[WebViewFactory AXCheckedCheckBoxActionVerb]):
2223         ditto
2224         (-[WebViewFactory AXUncheckedCheckBoxActionVerb]):
2225         ditto
2226         (-[WebViewFactory AXLinkActionVerb]):
2227         ditto
2228
2229 2008-04-23  Brady Eidson  <beidson@apple.com>
2230
2231         Reviewed by Sam Weinig
2232
2233         In some current work I noticed that when a new Page is created, it is possible that it requires info from its Settings
2234         object before the Settings object is initialized.  It seems quite prudent to post the preferences changed notification,
2235         thereby populating the Settings object, immediately after the Page is created.
2236
2237         * WebView/WebView.mm:
2238         (-[WebView _commonInitializationWithFrameName:groupName:]): Post the notification right after the Page is created
2239
2240 2008-04-24  John Sullivan  <sullivan@apple.com>
2241
2242         Reviewed by Jess
2243         
2244         - fixed <rdar://problem/5886655> JavaScript input panel automatic resizing doesn't work right with HiDPI
2245
2246         * Misc/WebNSControlExtras.m:
2247         (-[NSControl sizeToFitAndAdjustWindowHeight]):
2248         deploy userSpaceScaleFactor when using view distances on the window
2249
2250 2008-04-22  Anders Carlsson  <andersca@apple.com>
2251
2252         Reviewed by Darin.
2253
2254         Add NPN_Construct and NPN_PluginThreadAsyncCall declarations.
2255         
2256         * Plugins/npfunctions.h:
2257
2258 2008-04-20  Matt Lilek  <webkit@mattlilek.com>
2259
2260         Mysteriously reviewed by mitz|away.
2261
2262         Bug 18111: Closing a tab while dragging crashes Safari
2263         https://bugs.webkit.org/show_bug.cgi?id=18111
2264
2265         Null check the page before handling drag events.
2266
2267         * WebView/WebView.mm:
2268         (-[WebView draggingUpdated:]):
2269         (-[WebView draggingExited:]):
2270
2271 2008-04-19  Brady Eidson  <beidson@apple.com>
2272
2273         Reviewed by Tim Hatcher
2274
2275         Add a WebPreference for the path of the local storage persistent store.
2276
2277         * WebView/WebPreferenceKeysPrivate.h:
2278
2279         * WebView/WebPreferences.m:
2280         (-[WebPreferences _localStorageDatabasePath]):
2281         (-[WebPreferences _setLocalStorageDatabasePath:]):
2282         * WebView/WebPreferencesPrivate.h:
2283
2284         * WebView/WebView.mm:
2285         (-[WebView _preferencesChangedNotification:]):
2286
2287 2008-04-18  Brady Eidson  <beidson@apple.com>
2288
2289         Reviewed by Sam Weinig
2290
2291         Don't clear the PageGroup on _close, as the WebCore::Page destructor already does this.
2292         No reason to do the work twice...
2293
2294         * WebView/WebView.mm:
2295         (-[WebView _close]):
2296
2297 2008-04-17  Eric Seidel  <eric@webkit.org>
2298
2299         Reviewed by beth.
2300
2301         Rename Frame::renderer() to contentRenderer() and fix uses.
2302
2303         * Misc/WebCoreStatistics.mm:
2304         * WebView/WebRenderNode.mm:
2305         (-[WebRenderNode initWithWebFrameView:]):
2306
2307 2008-04-17  Jon Honeycutt  <jhoneycutt@apple.com>
2308
2309         Reviewed by mrowe.
2310
2311         * WebView/WebFrame.mm: Remove temporary build fix.
2312
2313 2008-04-17  Mark Rowe  <mrowe@apple.com>
2314
2315         Reviewed by Dan Bernstein.
2316
2317         Fix <rdar://problem/5863552> REGRESSION (r30741): Attachments don't appear in the iChat message window after sending
2318
2319         The order of arguments to -[NSDictionary initWithObjects:andKeys:] had been transposed accidentally during refactoring.
2320
2321         * WebCoreSupport/WebFrameLoaderClient.mm:
2322         (WebFrameLoaderClient::createPlugin): Pass the arguments in the correct order.
2323
2324 2008-04-17  Mark Rowe  <mrowe@apple.com>
2325
2326         Rubber-stamped by Dan Bernstein.
2327
2328         Fix the Mac build.
2329
2330         * WebView/WebFrame.mm: Define HAVE_ACCESSIBILITY before including AccessibilityObject.h and AXObjectCache.h to get things building
2331         for now.  This comes from config.h in WebCore but we don't have an equivalent in WebKit so we'll need to work out the correct place
2332         for this to live going forward.
2333
2334 2008-04-15  Kevin Decker  <kdecker@apple.com>
2335
2336         Reviewed by Anders.
2337
2338         <rdar://problem/5412759> CrashTracer: [USER] 22 crashes in Safari at com.apple.quicktime.webplugin: NPN_SetValue + 15403
2339         
2340         In certain situations, code in WebBasePluginPackage would load a plug-in only for the explicit reason of asking it to create a
2341         preference file, but wouldn't actually unload the bundle. This created problems for the QuickTime WebKit plug-in by unloading
2342         a bundle out from underneath itself.
2343
2344         * Plugins/WebBasePluginPackage.h: Added unload method.
2345         * Plugins/WebBasePluginPackage.m:
2346         (-[WebBasePluginPackage unload]): Added new method. Currently, only Netscape plug-ins support unload.
2347         (-[WebBasePluginPackage pListForPath:createFile:]): Added a call to unload.
2348         * Plugins/WebNetscapePluginPackage.m:
2349         (-[WebNetscapePluginPackage unload]): Added.
2350
2351 2008-04-15  Anders Carlsson  <andersca@apple.com>
2352
2353         Reviewed by Adam.
2354
2355         Add ENABLE_OFFLINE_WEB_APPLICATIONS to FEATURE_DEFINES.
2356
2357         * Configurations/WebKit.xcconfig:
2358
2359 2008-04-15  Brady Eidson  <beidson@apple.com>
2360
2361         Reviewed by John Sullivan
2362
2363         Do a more complete job adding the "WebArchiveDebugMode" pref
2364
2365         * WebView/WebPreferences.m: Add both getter *and* setter
2366         (-[WebPreferences webArchiveDebugModeEnabled]):
2367         (-[WebPreferences setWebArchiveDebugModeEnabled:]):
2368         * WebView/WebPreferencesPrivate.h:
2369
2370         * WebView/WebView.mm:
2371         (-[WebView _preferencesChangedNotification:]): Call the renamed getter
2372
2373 2008-04-14  Brady Eidson  <beidson@apple.com>
2374
2375         Reviewed by Anders
2376
2377         Add a hidden pref to debug WebArchive loading.  With this pref on, when loading a WebArchive,
2378         if the resource isn't in the ArchiveResourceCollection, the loader will not fall back to the 
2379         network and will instead fail the load as "cancelled."
2380
2381         * WebView/WebPreferenceKeysPrivate.h:
2382
2383         * WebView/WebPreferences.m:
2384         (+[WebPreferences initialize]):
2385         (-[WebPreferences _webArchiveDebugModeEnabled]):
2386         * WebView/WebPreferencesPrivate.h:
2387
2388         * WebView/WebView.mm:
2389         (-[WebView _preferencesChangedNotification:]):
2390
2391 2008-04-11  David Hyatt  <hyatt@apple.com>
2392
2393         Rename CachedResource ref/deref methods to addClient/removeClient.
2394
2395         Reviewed by olliej
2396
2397         * WebView/WebHTMLView.mm:
2398         (-[WebHTMLViewPrivate dealloc]):
2399         (-[WebHTMLViewPrivate finalize]):
2400         (-[WebHTMLViewPrivate clear]):
2401         (-[WebHTMLView setPromisedDragTIFFDataSource:WebCore::]):
2402
2403 2008-04-07  Brady Eidson  <beidson@apple.com>
2404
2405         Add "ENABLE_DOM_STORAGE" to keep in sync with the rest of the project
2406
2407         * Configurations/WebKit.xcconfig:
2408
2409 2008-04-04  Adam Roben  <aroben@apple.com>
2410
2411         Use WebCore's ICU headers instead of our own copy
2412
2413         Rubberstamped by Tim Hatcher.
2414
2415         * Configurations/WebKit.xcconfig: Pick up ICU headers from WebCore's
2416         PrivateHeaders.
2417
2418 2008-04-04  Adam Roben  <aroben@apple.com>
2419
2420         Fix <rdar://problem/5804776> Would like to use WebCore's
2421         ForwardingHeaders in WebKit without manually creating copies
2422
2423         Patch by Tim Hatcher, typed by me.
2424
2425         * Configurations/WebKit.xcconfig: Use the copy of ForwardingHeaders in
2426         WebCore's PrivateHeaders instead of our own copy.
2427
2428 2008-04-04  Ada Chan  <adachan@apple.com>
2429
2430         Now we pass width and height directly as integers to format
2431         the window title for a standalone image.
2432
2433         Reviewed by Dan.
2434
2435         * WebCoreSupport/WebViewFactory.mm:
2436         (-[WebViewFactory imageTitleForFilename:width:height:]):
2437
2438 2008-04-03  Nicholas Shanks  <webkit@nickshanks.com>
2439
2440         Updated by Dan Bernstein. Reviewed by Dave Hyatt.
2441
2442         - WebKit part of fixing http://bugs.webkit.org/show_bug.cgi?id=6484
2443           font-weight does not properly support graded weights
2444
2445         * WebView/WebHTMLView.mm:
2446         (-[WebHTMLView _styleFromFontAttributes:]):
2447         (-[WebHTMLView _originalFontB]):
2448         (-[WebHTMLView _addToStyle:fontA:fontB:]):
2449
2450 2008-04-02  Mark Rowe  <mrowe@apple.com>
2451
2452         Reviewed by Oliver Hunt.
2453
2454         Ensure that debug symbols are generated for x86_64 and ppc64 builds.
2455
2456         * Configurations/Base.xcconfig:
2457
2458 2008-03-31  Alice Liu  <alice.liu@apple.com>
2459
2460         Reviewed by Darin.
2461
2462         * WebView/WebFrame.mm:
2463         (-[WebFrame _accessibilityTree]):
2464         The syntax for fetching an object from the AXObjectCache changed slightly
2465
2466 2008-03-31  Brady Eidson  <beidson@apple.com>
2467
2468         Reviewed by Jon Honeycutt
2469         
2470         Move a WebArchive loading check into WebCore
2471
2472         * WebView/WebHTMLRepresentation.mm:
2473         (-[WebHTMLRepresentation receivedData:withDataSource:]): Don't check "isDisplayingWebArchive" as WebCore is now
2474           responsible for checking that state
2475
2476 2008-03-31  Brady Eidson  <beidson@apple.com>
2477
2478         Reviewed by Darin and Mitz's rubber stamp
2479
2480         Remove dataForArchivedSelection(WebCore::Frame*) from the EditorClient - only usage is now directly in WebCore
2481
2482         * WebCoreSupport/WebEditorClient.mm:
2483         * WebCoreSupport/WebEditorClient.h:
2484
2485 2008-03-28  Brady Eidson  <beidson@apple.com>
2486
2487         Rubberstamped by Darin Adler
2488
2489         Remove WebArchiver.h/mm
2490
2491         * WebView/WebArchiver.h: Removed.
2492         * WebView/WebArchiver.mm: Removed.
2493
2494         * DOM/WebDOMOperations.mm:
2495         * WebCoreSupport/WebDragClient.mm:
2496         * WebCoreSupport/WebEditorClient.mm:
2497         * WebView/WebDataSource.mm:
2498         * WebView/WebHTMLView.mm:
2499
2500 2008-03-28  Brady Eidson  <beidson@apple.com>
2501
2502         Reviewed by Darin Adler
2503
2504         Now that WebCore can create archives from a frame selection directly, we don't need it in WebArchiver anymore
2505
2506         * WebCoreSupport/WebEditorClient.mm:
2507         (WebEditorClient::dataForArchivedSelection):
2508
2509         * WebView/WebArchiver.h: Nuke archiveSelectionInFrame, as there are no remaining users
2510         * WebView/WebArchiver.mm: Ditto
2511
2512         * WebView/WebHTMLView.mm:
2513         (-[WebHTMLView _writeSelectionWithPasteboardTypes:toPasteboard:cachedAttributedString:]):
2514
2515 2008-03-28  Brady Eidson  <beidson@apple.com>
2516
2517         Reviewed by Darin Adler
2518
2519         More Kit->Core WebArchive changes.
2520
2521         Create an archive from the current selection in a frame
2522
2523         * WebView/WebArchiver.mm: Remove one more *undeclared* method, the last method will drop off
2524           easily in a followup
2525
2526 2008-03-28  Brady Eidson  <beidson@apple.com>
2527
2528         Reviewed by Sam Weinig
2529
2530         WebArchive saga continues - Can now make archives from ranges in WebCore
2531
2532         * DOM/WebDOMOperations.mm:
2533         (-[DOMRange webArchive]):
2534         (-[DOMRange markupString]):
2535
2536         * WebView/WebArchiver.h: Remove newly obsolete [WebArchiver archiveRange:]
2537         * WebView/WebArchiver.mm:
2538
2539 2008-03-28  Brady Eidson  <beidson@apple.com>
2540
2541         Reviewed by Sam Weinig
2542
2543         More Kit->Core webarchive code movement
2544
2545         * DOM/WebDOMOperations.mm:
2546         (-[DOMNode markupString]): Call createFullMarkup() instead
2547
2548         * WebView/WebFrame.mm: Remove obsolete _markupStringFromNode
2549         * WebView/WebFrameInternal.h: Ditto
2550
2551 2008-03-28  Brady Eidson  <beidson@apple.com>
2552
2553         Reviewed by Sam Weinig
2554
2555         Fold [WebArchiver archiveFrame:] into WebDataSource - the last remaining caller
2556
2557         * WebView/WebArchiver.h:
2558         * WebView/WebArchiver.mm:
2559         * WebView/WebDataSource.mm:
2560         (-[WebDataSource webArchive]):
2561
2562 2008-03-28  Brady Eidson  <beidson@apple.com>
2563
2564         Reviewed by Sam Weinig
2565
2566         Remove unused [WebArchiver archiveNode:], made obsolete in r31400
2567
2568         * WebView/WebArchiver.h:
2569         * WebView/WebArchiver.mm:
2570
2571 2008-03-28  Brady Eidson  <beidson@apple.com>
2572
2573         Reviewed by Darin
2574
2575         "Yet another transitional step" to empty out WebKit-based code for archiving.
2576
2577         With this patch, the key operation of "Creating a WebArchive rooted at a single Node" takes place
2578         entirely within WebCore, and opens the door to saving WebArchives on Windows.
2579
2580         * DOM/WebDOMOperations.mm:
2581         * WebView/WebArchiver.mm:
2582         (+[WebArchiver _archiveWithMarkupString:fromFrame:nodes:]):
2583
2584 2008-03-27  Brady Eidson  <beidson@apple.com>
2585
2586         Reviewed by Adam Roben
2587
2588         Move [WebDataSource mainResource] and [WebDataSource subresources] down into WebCore
2589         as the push to core-ify WebArchives continues.
2590
2591         This patch also introduces a behavior change.  WebCore allows ArchiveResources with null or empty data.  
2592         WebKit has had the inexplicable distinction of allowing empty Data in a WebResource, but not null.  
2593         Since WebResource is API, I decided to leave it be to avoid a behavior change.  But internally created resources 
2594         (as in "while archiving a page") are accepting of null or empty data.
2595
2596         This actually fixes a bug where not all subframes are archived, and resulted in a layout test change. 
2597
2598         * WebView/WebDataSource.mm:
2599         (-[WebDataSource mainResource]): Call DocumentLoader implementation
2600         (-[WebDataSource subresources]): Ditto
2601         * WebView/WebFrame.mm: Remove [WebFrame _getAllResourceDatas:andResponses:] as its only caller is obsolete
2602         * WebView/WebFrameInternal.h:
2603
2604 2008-03-27  Brady Eidson  <beidson@apple.com>
2605
2606         Reviewed by Adam
2607
2608         Change the "init from WebCore resource" version of WebResource to take PassRefPtr
2609         (more efficient)
2610
2611         * WebView/WebResource.mm:
2612         (-[WebResource _initWithCoreResource:]):
2613         * WebView/WebResourceInternal.h:
2614
2615 2008-03-26  Brady Eidson  <beidson@apple.com>
2616
2617         Build fix - accidentally checked in this change which was work in progress
2618
2619         * DOM/WebDOMOperations.mm:
2620
2621 2008-03-26  Brady Eidson  <beidson@apple.com>
2622
2623         Reviewed by Darin
2624
2625         When we create a WebArchive, we walk every node from some starting point, asking each node
2626         along the way "What are your subresource URLs?"
2627
2628         That logic is currently in DOMNode in WebKitMac - this patch moves that ability down into
2629         WebCore::Node
2630
2631         * DOM/WebDOMOperations.mm:
2632         (-[DOMNode _subresourceURLs]): One generic DOMNode method can now handle all DOMNodes by
2633           calling into individual WebCore::Node implementations
2634         * DOM/WebDOMOperationsPrivate.h:
2635
2636 2008-03-26  Brady Eidson  <beidson@apple.com>
2637
2638         Reviewed by Mark Rowe
2639
2640         Part of the continued push to move WebArchive-related code down to WebCore, this
2641         moves [WebDataSource subresourceForURL:] down to DocumentLoader->subresource()
2642
2643         * WebView/WebDataSource.mm:
2644         (-[WebDataSource subresourceForURL:]): Call through to the DocumentLoader 
2645
2646         * WebView/WebFrame.mm: Remove [WebFrame _getData:andResponse:forURL:], as its only use
2647           has now been ported down to WebCore
2648         * WebView/WebFrameInternal.h:
2649
2650 2008-03-26  Mark Rowe  <mrowe@apple.com>
2651
2652         Rubber-stamped by Brady Eidson.
2653
2654         Update FEATURE_DEFINES to be consistent with the other locations in which it is defined.
2655
2656         * Configurations/WebKit.xcconfig:
2657
2658 2008-03-26  Mark Rowe  <mrowe@apple.com>
2659
2660         Reviewed by David Hyatt.
2661
2662         Make the Ahem font antialias correctly on Acid3 on Tiger.
2663
2664         * WebCoreSupport/WebSystemInterface.m:
2665         (InitWebCoreSystemInterface):
2666
2667 2008-03-26  Mark Rowe  <mrowe@apple.com>
2668
2669         Fix the Mac build.
2670
2671         * MigrateHeaders.make: Copy the newly generated header into the right place.
2672
2673 2008-03-25  Brady Eidson  <beidson@apple.com>
2674
2675         Reviewed by Beth Dakin
2676
2677         Remove entirely unused internal method
2678
2679         * WebView/WebArchiver.h:
2680         * WebView/WebArchiver.mm:
2681
2682 2008-03-25  Brady Eidson  <beidson@apple.com>
2683
2684         Reviewed by Adam Roben
2685
2686         <rdar://problem/5819308> - View Source is empty when view webarchives
2687
2688         * WebCore.base.exp:
2689         * loader/DocumentLoader.cpp:
2690         (WebCore::DocumentLoader::setParsedArchiveData):
2691         (WebCore::DocumentLoader::parsedArchiveData):
2692         * loader/DocumentLoader.h:
2693
2694         * loader/FrameLoader.cpp:
2695         (WebCore::FrameLoader::finishedLoadingDocument): Set the archive's MainResource data as the parsedArchiveData
2696           in the DocumentLoader
2697
2698 2008-03-25  Dan Bernstein  <mitz@apple.com>
2699
2700         Reviewed by Darin Adler.
2701
2702         - fix http://bugs.webkit.org/show_bug.cgi?id=17933
2703           Reopen All Windows From Last Session causes crash
2704
2705         * WebView/WebHTMLView.mm:
2706         (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Added null
2707         check.
2708
2709 2008-03-25  Brady Eidson  <beidson@apple.com>
2710
2711         Reviewed by Jon Honeycutt's rubberstamp
2712
2713         Fix a leak with the new WebArchive setup
2714
2715         * WebView/WebArchive.mm:
2716         (-[WebArchivePrivate setCoreArchive:]): Deref() the old WebArchive
2717
2718 2008-03-25  Brady Eidson  <beidson@apple.com>
2719
2720         Reviewed by Darin
2721
2722         Removed the concept of "pending archive resources" and the "archive resources delivery timer"
2723         from WebFrameLoaderClient, as those concepts have been pushed into WebCore
2724
2725         * WebCoreSupport/WebFrameLoaderClient.h:
2726         * WebCoreSupport/WebFrameLoaderClient.mm:
2727         (WebFrameLoaderClient::WebFrameLoaderClient):
2728
2729 2008-03-25  Brady Eidson  <beidson@apple.com>
2730
2731         Reviewed by Darin
2732
2733         Remove newly obsolete FrameLoaderClient methods
2734
2735         * WebCoreSupport/WebFrameLoaderClient.h:
2736         * WebCoreSupport/WebFrameLoaderClient.mm:
2737
2738 2008-03-25  Brady Eidson  <beidson@apple.com>
2739
2740         Release build fix
2741
2742         * WebView/WebArchive.mm:
2743         (-[WebArchive subresources]):
2744         (-[WebArchive subframeArchives]):
2745
2746 2008-03-25  Brady Eidson  <beidson@apple.com>
2747
2748         Reviewed by Darin
2749
2750         <rdar://problem/4516169> - Support WebArchives on Windows
2751         And paves the way for many future WebArchive bug fixes and enhancements
2752
2753         This change moves most of the real workhorse code about WebArchives into WebCore.  It maintains 
2754         1-to-1 relationships between a few objects in WebCore and WebKit.  Such as:
2755          * WebArchive <-> LegacyWebArchive
2756          * WebResource <-> ArchiveResource
2757          * WebUnarchivingState <-> ArchiveResourceCollection
2758  
2759         The other biggest changes involve many FrameLoaderClient methods that existed soley for WebArchives 
2760         and now exist in WebCore
2761
2762         * WebCoreSupport/WebFrameLoaderClient.mm:
2763         (WebFrameLoaderClient::clearUnarchivingState): Emptied - to be removed in a followup patch
2764         (WebFrameLoaderClient::finalSetupForReplace):
2765         (WebFrameLoaderClient::setDefersLoading):
2766         (WebFrameLoaderClient::willUseArchive):
2767         (WebFrameLoaderClient::isArchiveLoadPending):
2768         (WebFrameLoaderClient::cancelPendingArchiveLoad):
2769         (WebFrameLoaderClient::clearArchivedResources):
2770         (WebFrameLoaderClient::createFrame):
2771
2772         * WebView/WebArchive.mm:
2773         (+[WebArchivePrivate initialize]):
2774         (-[WebArchivePrivate init]):
2775         (-[WebArchivePrivate initWithCoreArchive:]):
2776         (-[WebArchivePrivate coreArchive]):
2777         (-[WebArchivePrivate setCoreArchive:]):
2778         (-[WebArchivePrivate dealloc]):
2779         (-[WebArchivePrivate finalize]):
2780         (-[WebArchive init]):
2781         (-[WebArchive initWithMainResource:subresources:subframeArchives:]):
2782         (-[WebArchive initWithData:]):
2783         (-[WebArchive initWithCoder:]):
2784         (-[WebArchive encodeWithCoder:]):
2785         (-[WebArchive mainResource]):
2786         (-[WebArchive subresources]):
2787         (-[WebArchive subframeArchives]):
2788         (-[WebArchive data]):
2789         (-[WebArchive _initWithCoreLegacyWebArchive:WebCore::]):
2790         (-[WebArchive WebCore::]):
2791         * WebView/WebArchiveInternal.h: Added.
2792
2793         * WebView/WebDataSource.mm:
2794         (-[WebDataSourcePrivate dealloc]):
2795         (-[WebDataSource _addSubframeArchives:]):
2796         (-[WebDataSource _documentFragmentWithArchive:]):
2797         (-[WebDataSource subresourceForURL:]):
2798         (-[WebDataSource addSubresource:]):
2799         * WebView/WebDataSourceInternal.h:
2800
2801         * WebView/WebFrame.mm:
2802         (-[WebFrame loadArchive:]):
2803         * WebView/WebFrameInternal.h:
2804
2805         * WebView/WebHTMLRepresentation.mm:
2806         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
2807
2808         * WebView/WebResource.mm:
2809         (+[WebResourcePrivate initialize]):
2810         (-[WebResourcePrivate init]):
2811         (-[WebResourcePrivate initWithCoreResource:]):
2812         (-[WebResourcePrivate dealloc]):
2813         (-[WebResourcePrivate finalize]):
2814         (-[WebResource initWithCoder:]):
2815         (-[WebResource encodeWithCoder:]):
2816         (-[WebResource data]):
2817         (-[WebResource URL]):
2818         (-[WebResource MIMEType]):
2819         (-[WebResource textEncodingName]):
2820         (-[WebResource frameName]):
2821         (-[WebResource _initWithCoreResource:WebCore::]):
2822         (-[WebResource WebCore::]):
2823         (-[WebResource _ignoreWhenUnarchiving]):
2824         (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]):
2825         (-[WebResource _fileWrapperRepresentation]):
2826         (-[WebResource _response]):
2827         (-[WebResource _stringValue]):
2828         * WebView/WebResourceInternal.h: Added.
2829         * WebView/WebResourcePrivate.h:
2830
2831         * WebView/WebUnarchivingState.h: Removed.
2832         * WebView/WebUnarchivingState.m: Removed.
2833
2834 2008-03-24  Oliver Hunt  <oliver@apple.com>
2835
2836         Reviewed by Mark Rowe.
2837
2838         Bug 18030: REGRESSION(r31236): Space bar fails to scroll down page
2839         <http://bugs.webkit.org/show_bug.cgi?id=18030>
2840
2841         Rollout keyDown changes from r31236 -- fix for keyDown behaviour is
2842         tracked by Bug 18057: keyDown incorrectly propagates up the frame tree
2843         <http://bugs.webkit.org/show_bug.cgi?id=18057>
2844
2845         * WebView/WebHTMLView.mm:
2846         (-[WebHTMLView keyDown:]):
2847
2848 2008-03-24  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
2849
2850         Reviewed by Maciej, landed by Brady
2851
2852         Bug 3580: iFrames Appear to be Cached
2853         <http://bugs.webkit.org/show_bug.cgi?id=3580>
2854
2855         Bug 15486: REGRESSION: Reload causes WebKit to *forget* fragment URLs
2856         <http://bugs.webkit.org/show_bug.cgi?id=15486>
2857
2858         Bug 15554: Reload causes <object> to use old data
2859         <http://bugs.webkit.org/show_bug.cgi?id=15554>
2860
2861         If a page is reloaded, a child frame's URL can not be taken from a history item.
2862
2863         * WebView/WebFrame.mm:
2864         (-[WebFrame _loadURL:referrer:intoChild:]):
2865
2866 2008-03-24  Darin Adler  <darin@apple.com>
2867
2868         Reviewed by Beth.
2869
2870         - fix <rdar://problem/5817067> -[WebDataSource unreachableURL] invokes KURL's copy constructor
2871
2872         * History/WebHistoryItem.mm:
2873         (-[WebHistoryItem URL]): Use a reference to avoid making a copy.
2874         * WebView/WebDataSource.mm:
2875         (-[WebDataSource _URL]): Ditto.
2876         (-[WebDataSource unreachableURL]): Ditto.
2877         * WebView/WebHTMLView.mm:
2878         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto.
2879
2880         * DefaultDelegates/WebDefaultContextMenuDelegate.mm:
2881         * History/WebHistory.mm:
2882         * Misc/WebElementDictionary.mm:
2883         * Misc/WebNSAttributedStringExtras.mm:
2884         Remove unneeded imports of KURL.h.
2885
2886 2008-03-24  Brady Eidson  <beidson@apple.com>
2887
2888         Reviewed by Darin's rubberstamp
2889
2890         Rename this file for upcoming work.
2891
2892         * WebView/WebArchive.m: Removed.
2893         * WebView/WebArchive.mm: Copied from WebKit/mac/WebView/WebArchive.m.
2894
2895 2008-03-24  Alexey Proskuryakov  <ap@webkit.org>
2896
2897         Build fix.
2898
2899         * MigrateHeaders.make: Added DOMSVGAltGlyphElement.h and DOMSVGAltGlyphElementInternal.h.
2900
2901 2008-03-23  Oliver Hunt  <oliver@apple.com>
2902
2903         Reviewed by Maciej.
2904
2905         Bug 17670: Key events may improperly propagate from iframe to parent frame
2906         <http://bugs.webkit.org/show_bug.cgi?id=17670>
2907         Bug 16381: REGRESSION: Shift, command, option, ctrl keys in Gmail Rich Text changes focus
2908         <http://bugs.webkit.org/show_bug.cgi?id=16381>
2909
2910         Prevent the Cocoa event system from propagating key events to the parent WebHTMLView,
2911         as that results in us dispatching the key events for each frame going up the frame
2912         tree.
2913
2914         * WebView/WebHTMLView.mm:
2915         (-[WebHTMLView keyDown:]):
2916         (-[WebHTMLView keyUp:]):
2917         (-[WebHTMLView flagsChanged:]):
2918
2919 2008-03-21  Timothy Hatcher  <timothy@apple.com>
2920
2921         Bug 17980: Regression: Inspector highlighting of webpage not cleared when going to new URL
2922         http://bugs.webkit.org/show_bug.cgi?id=17980
2923
2924         Reviewed by Adam.
2925
2926         The new highlight drawing was not honoring the fade value, so it was
2927         always drawing at full opacity. The animation code didn't match Windows
2928         and the new highlight anyway, so it has been removed. The highlight
2929         how just detaches when it is hidden.
2930
2931         * WebCoreSupport/WebInspectorClient.mm:
2932         (-[WebInspectorWindowController windowShouldClose:]): Call hideHighlight.
2933         (-[WebInspectorWindowController close]): Ditto.
2934         (-[WebInspectorWindowController highlightNode:]): Call attach.
2935         (-[WebInspectorWindowController hideHighlight]): Call detach and release _currentHighlight.
2936         * WebInspector/WebNodeHighlight.h:
2937         * WebInspector/WebNodeHighlight.m:
2938         (-[WebNodeHighlight initWithTargetView:inspectorController:]):
2939         (-[WebNodeHighlight dealloc]): Assert we have no _highlightView.
2940         (-[WebNodeHighlight attach]): Renamed from attachHighlight.
2941         (-[WebNodeHighlight detach]): Renamed from detachHighlight.
2942         (-[WebNodeHighlight setNeedsUpdateInTargetViewRect:]): Renamed from setHolesNeedUpdateInTargetViewRect:.
2943         * WebInspector/WebNodeHighlightView.h:
2944         * WebInspector/WebNodeHighlightView.m:
2945         (-[WebNodeHighlightView setNeedsDisplayInRect:]): Renamed from setHolesNeedUpdateInRect:.
2946
2947 2008-03-20  Mark Rowe  <mrowe@apple.com>
2948
2949         Reviewed by Sam Weinig.
2950
2951         Ensure that the defines in FEATURE_DEFINES are sorted so that they will match the default settings of build-webkit.
2952         This will prevent the world from being rebuilt if you happen to switch between building in Xcode and with build-webkit on the
2953         command-line.
2954
2955         * Configurations/WebKit.xcconfig:
2956
2957 2008-03-20  Adam Roben  <aroben@apple.com>
2958
2959         Make WebNodeHighlightView use InspectorController to do its painting
2960
2961         Reviewed by Tim Hatcher.
2962
2963         * WebCoreSupport/WebInspectorClient.mm:
2964         (-[WebInspectorWindowController highlightNode:]): Pass the
2965         InspectorController to the WebNodeHighlight, and don't call
2966         setHighlightedNode: (which has been removed).
2967         (-[WebInspectorWindowController hideHighlight]): Removed call to
2968         setHighlightedNode:.
2969         * WebInspector/WebNodeHighlight.h:
2970           - Replaced _highlightNode with _inspectorController
2971           - Removed _highlightedNode accessors
2972           - Added -inspectorController method
2973         * WebInspector/WebNodeHighlight.m:
2974         (-[WebNodeHighlight initWithTargetView:inspectorController:]): Now
2975         takes an InspectorController* and stores it in _inspectorController.
2976         (-[WebNodeHighlight dealloc]): Removed code dealing with
2977         _highlightedNode.
2978         (-[WebNodeHighlight inspectorController]): Added.
2979         * WebInspector/WebNodeHighlightView.m: Removed FileInternal category.
2980         (-[WebNodeHighlightView isFlipped]): Added. WebCore expects all
2981         GraphicsContexts to be based on a flipped CGContext, so we have to
2982         specify that this view is flipped.
2983         (-[WebNodeHighlightView drawRect:]): Changed to create a
2984         GraphicsContext and pass it to InspectorController::drawNodeHighlight.
2985
2986 2008-03-18  David Hyatt  <hyatt@apple.com>
2987
2988         Add support for a preference in WebKit that can be used in nightly builds to test full page
2989         zoom.
2990
2991         Reviewed by Antti
2992
2993         * WebView/WebPreferenceKeysPrivate.h:
2994         * WebView/WebView.mm:
2995         (-[WebView setTextSizeMultiplier:]):
2996         (-[WebView canMakeTextSmaller]):
2997         (-[WebView makeTextSmaller:]):
2998         (-[WebView canMakeTextLarger]):
2999         (-[WebView makeTextLarger:]):
3000         (-[WebView canMakeTextStandardSize]):
3001         (-[WebView makeTextStandardSize:]):
3002
3003 2008-03-17  Eric Seidel  <eric@webkit.org>
3004
3005         Reviewed by darin.
3006
3007         Export _NPN_IntFromIdentifier as part of our NPAPI interface
3008
3009         * Plugins/WebNetscapePluginPackage.m:
3010         (-[WebNetscapePluginPackage load]):
3011
3012 2008-03-14  Brady Eidson  <beidson@apple.com>
3013
3014         Reviewed by Brian Dash's rubberstamp
3015
3016         Remove a class declaration for a class that has never existed
3017
3018         * WebView/WebResource.h:
3019
3020 2008-03-14  David D. Kilzer  <ddkilzer@apple.com>
3021
3022         Unify concept of enabling the Mac Java bridge.
3023
3024         Reviewed by Darin and Anders.
3025
3026         * Plugins/WebPluginJava.h: Removed unused file.
3027         * WebCoreSupport/WebFrameLoaderClient.h:
3028         (WebFrameLoaderClient::javaApplet): Added #if ENABLE(MAC_JAVA_BRIDGE) guard.
3029         * WebCoreSupport/WebFrameLoaderClient.mm: Ditto for #import and NSView SPI method.
3030         (WebFrameLoaderClient::javaApplet): Ditto.
3031
3032 2008-03-13  Antti Koivisto  <antti@apple.com>
3033
3034         Reviewed by Darin.
3035
3036         * ForwardingHeaders/wtf/Deque.h: Added.
3037
3038 2008-03-13  Anders Carlsson  <andersca@apple.com>
3039
3040         Reviewed by Adam.
3041
3042         Call originalRequest, not initialRequest.
3043         
3044         * WebView/WebDataSource.mm:
3045         (-[WebDataSource initialRequest]):
3046
3047 2008-03-12  Darin Adler  <darin@apple.com>
3048
3049         Reviewed by John Sullivan.
3050
3051         - cleanup after removing the bridge
3052
3053         * DOM/WebDOMOperations.mm:
3054         (-[DOMDocument URLWithAttributeString:]): Call computeURL directly.
3055
3056         * Misc/WebCoreStatistics.mm:
3057         (-[WebFrame renderTreeAsExternalRepresentation]): Call externalRepresentation directly.
3058
3059         * Plugins/WebBaseNetscapePluginView.mm:
3060         (-[WebBaseNetscapePluginView loadPluginRequest:]): Use core function instead of
3061         _frameLoader method.
3062         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
3063         Ditto.
3064         * Plugins/WebPluginController.mm:
3065         (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]): Ditto.
3066
3067         * WebCoreSupport/WebFrameLoaderClient.mm:
3068         (WebFrameLoaderClient::frameLoaderDestroyed): Added a call to the new _clearCoreFrame
3069         method. Without this we could leave a stale frame pointer around.
3070         (WebFrameLoaderClient::dispatchDidReceiveIcon): Rewrote assertion so it's not the single
3071         caller of the _isMainFrame method.
3072         (WebFrameLoaderClient::transitionToCommittedForNewPage): Use core function instead of
3073         _frameLoader method.
3074         (WebFrameLoaderClient::createFrame): Moved code here from _addChild.
3075
3076         * WebView/WebFrame.mm: Removed lots of methods. Some were moved elsewhere, others
3077         turned out to be unused.
3078         (core): Added overload for DocumentFragment.
3079         (kit): Ditto.
3080         (-[WebFrame _loadURL:referrer:intoChild:]): Get to Frame using _private->coreFrame and
3081         to FrameLoader with _private->coreFrame->loader().
3082         (-[WebFrame _attachScriptDebugger]): Ditto.
3083         (-[WebFrame _clearCoreFrame]): Added.
3084         (-[WebFrame _updateBackground]): More of the same.
3085         (-[WebFrame _unmarkAllBadGrammar]): Ditto.
3086         (-[WebFrame _unmarkAllMisspellings]): Ditto.
3087         (-[WebFrame _hasSelection]): Ditto.
3088         (-[WebFrame _atMostOneFrameHasSelection]): Ditto.
3089         (-[WebFrame _findFrameWithSelection]): Ditto.
3090         (-[WebFrame _dataSource]): Ditto.
3091         (-[WebFrame _addData:]): Streamlined code a bit.
3092         (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]): Ditto.
3093         (-[WebFrame _receivedData:textEncodingName:]): Ditto.
3094         (-[WebFrame _isDescendantOfFrame:]): Ditto.
3095         (-[WebFrame _bodyBackgroundColor]): Ditto.
3096         (-[WebFrame _isFrameSet]): Ditto.
3097         (-[WebFrame _firstLayoutDone]): Ditto.
3098         (-[WebFrame _loadType]): Ditto.
3099         (-[WebFrame _isDisplayingStandaloneImage]): Ditto.
3100         (-[WebFrame name]): Ditto.
3101         (-[WebFrame DOMDocument]): Ditto.
3102         (-[WebFrame frameElement]): Ditto.
3103         (-[WebFrame provisionalDataSource]): Ditto.
3104         (-[WebFrame dataSource]): Ditto.
3105         (-[WebFrame loadRequest:]): Ditto.
3106         (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): Ditto.
3107         (-[WebFrame loadArchive:]): Ditto.
3108         (-[WebFrame stopLoading]): Ditto.
3109         (-[WebFrame reload]): Ditto.
3110         (-[WebFrame findFrameNamed:]): Ditto.
3111         (-[WebFrame parentFrame]): Ditto.
3112         (-[WebFrame childFrames]): Ditto.
3113         (-[WebFrame windowObject]): Ditto.
3114         (-[WebFrame globalContext]): Ditto.
3115
3116         * WebView/WebFrameInternal.h: Added overloads of core and kit.
3117         Removed method declarations.
3118
3119         * WebView/WebHTMLRepresentation.mm:
3120         (-[WebHTMLRepresentation documentSource]): Moved code here from WebFrame.
3121         (formElementFromDOMElement): Ditto.
3122         (-[WebHTMLRepresentation elementWithName:inForm:]): Ditto.
3123         (inputElementFromDOMElement): Ditto.
3124         (-[WebHTMLRepresentation elementDoesAutoComplete:]): Ditto.
3125         (-[WebHTMLRepresentation elementIsPassword:]): Ditto.
3126         (-[WebHTMLRepresentation formForElement:]): Ditto.
3127         (-[WebHTMLRepresentation currentForm]): Ditto.
3128         (-[WebHTMLRepresentation controlsInForm:]): Ditto.
3129         (-[WebHTMLRepresentation searchForLabels:beforeElement:]): Ditto.
3130         (-[WebHTMLRepresentation matchLabels:againstElement:]): Ditto.
3131
3132         * WebView/WebHTMLView.mm:
3133         (-[WebHTMLView _frameOrBoundsChanged]): Moved sendScrollEvent code here from WebFrame.
3134         (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
3135         Call createFragmentFromText directly instead of via WebFrame.
3136         (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]):
3137         Moved layout calls here from WebFrame.
3138         (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Ditto.
3139         (-[WebHTMLView _updateFontPanel]): Ditto, but with fontForSelection.
3140         (-[WebHTMLView _canSmartCopyOrDelete]): Ditto, but with selectionGranularity.
3141         (-[WebHTMLView markedRange]): Moved code here from _markedTextNSRange.
3142         (-[WebHTMLView attributedSubstringFromRange:]): Tweaked code a bit.
3143         (-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]):
3144         Moved code here from WebFrame.
3145         (-[WebHTMLView elementAtPoint:allowShadowContent:]): Ditto.
3146         (-[WebHTMLView markAllMatchesForText:caseSensitive:limit:]): Ditto.
3147         (-[WebHTMLView setMarkedTextMatchesAreHighlighted:]): Ditto.
3148         (-[WebHTMLView markedTextMatchesAreHighlighted]): Ditto.
3149         (-[WebHTMLView unmarkAllTextMatches]): Ditto.
3150         (-[WebHTMLView rectsForTextMatches]): Ditto.
3151
3152         * WebView/WebHTMLViewInternal.h: Removed unused method declarations.
3153
3154         * WebView/WebPDFView.mm:
3155         (-[WebPDFView PDFViewWillClickOnLink:withURL:]): Use core function instead of
3156         _frameLoader method.
3157
3158         * WebView/WebRenderNode.mm:
3159         (copyRenderNode): Moved code here from WebFrame.
3160         (-[WebRenderNode initWithWebFrameView:]): Ditto.
3161
3162         * WebView/WebResource.mm:
3163         (-[WebResource _stringValue]): Moved code here from WebFrame.
3164
3165         * WebView/WebView.mm:
3166         (-[WebView _close]): Use core function intsead of _frameLoader method.
3167         (-[WebView setCustomTextEncodingName:]): Ditto.
3168         (-[WebView setHostWindow:]): Moved code here from WebFrame.
3169         (aeDescFromJSValue): Moved this here from WebFrame.
3170         (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Moved code here from WebFrame.
3171
3172 2008-03-12  Darin Adler  <darin@apple.com>
3173
3174         Reviewed by Anders.
3175
3176         - http://bugs.webkit.org/show_bug.cgi?id=17640
3177           eliminate WebCoreFrameBridge
3178
3179         Moved all the code from the bridge into WebFrame. This need not be the final
3180         home of these methods -- they can be moved closer to their callers and improved
3181         further -- but it eliminates the bridge without requiring a rewrite of the code.
3182         It's a fairly mechanical process (just adding underscores to method names really).
3183
3184         There's even a chance that some of the methods are unused. Those we can remove
3185         after checking if that's so.
3186
3187         * DOM/WebDOMOperations.mm:
3188         (-[DOMNode markupString]): Use WebFrame rather than bridge.
3189         (-[DOMDocument webFrame]): Changed to use the core and kit functions
3190         instead of using the bridge.
3191         (-[DOMDocument URLWithAttributeString:]): Use WebFrame rather than bridge.
3192         (-[DOMRange markupString]): Ditto.
3193         * DOM/WebDOMOperationsPrivate.h: Removed _bridge methods.
3194
3195         * DefaultDelegates/WebDefaultContextMenuDelegate.mm: Removed unneeded import.
3196         * History/WebHistoryItem.mm: Ditto.
3197
3198         * MigrateHeaders.make: Added DOMDocumentFragmentInternal.h.
3199         * Misc/WebCoreStatistics.mm:
3200         (-[WebFrame renderTreeAsExternalRepresentation]): Use WebFrame rather than bridge.
3201
3202         * Misc/WebElementDictionary.mm: Removed unneeded import.
3203
3204         * Misc/WebKitStatistics.m:
3205         (+[WebKitStatistics bridgeCount]): Removed WebBridgeCount and just return 0.
3206         * Misc/WebKitStatisticsPrivate.h: Ditto.
3207
3208         * Misc/WebNSAttributedStringExtras.mm: Removed unneeded import.
3209         * Misc/WebNSPasteboardExtras.mm: Ditto.
3210
3211         * Plugins/WebBaseNetscapePluginView.mm:
3212         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): Use WebFrame
3213         rather than bridge.
3214
3215         * Plugins/WebNetscapePluginEmbeddedView.mm: Removed unneeded import.
3216         * Plugins/WebNetscapePluginStream.mm: Ditto.
3217
3218         * Plugins/WebPluginContainerCheck.mm:
3219         (-[WebPluginContainerCheck _isForbiddenFileLoad]): Use WebFrame rather than
3220         bridge to get to the WebCore::Frame.
3221
3222         * Plugins/WebPluginController.h: Declare webFrame method and remove bridge method.
3223         * Plugins/WebPluginController.mm:
3224         (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]): Use WebFrame
3225         rather than bridge.
3226
3227         * WebCoreSupport/WebEditorClient.mm:
3228         (selectorForKeyEvent): Tweaked comment.
3229
3230         * WebCoreSupport/WebFrameBridge.h: Removed.
3231         * WebCoreSupport/WebFrameBridge.mm: Removed.
3232
3233         * WebCoreSupport/WebFrameLoaderClient.mm:
3234         (WebFrameLoaderClient::frameLoaderDestroyed): Removed bridge assertion.
3235         (WebFrameLoaderClient::detachedFromParent4): Removed bridge teardown code.
3236         I could remove this function entirely, but it looks like the Qt port is using it.
3237
3238         * WebCoreSupport/WebViewFactory.mm: Removed unneeded import.
3239
3240         * WebView/WebArchiver.mm:
3241         (+[WebArchiver archiveRange:]): Use WebFrame rather than bridge.
3242         (+[WebArchiver archiveNode:]): Ditto.
3243         (+[WebArchiver archiveSelectionInFrame:]): Ditto.
3244
3245         * WebView/WebDataSource.mm:
3246         (-[WebDataSource _replaceSelectionWithArchive:selectReplacement:]): Ditto.
3247         (-[WebDataSource _documentFragmentWithArchive:]): Ditto.
3248         (-[WebDataSource subresources]): Ditto.
3249         (-[WebDataSource subresourceForURL:]): Ditto.
3250
3251         * WebView/WebDataSourceInternal.h: Removed _bridge method.
3252
3253         * WebView/WebFrame.mm:
3254         (-[WebFramePrivate dealloc]): Removed code to release the bridge.
3255         (core): Go directly to the core frame, not via the bridge.
3256         (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]):
3257         Remove the code to deal with the bridge.
3258         (-[WebFrame _initWithWebFrameView:webView:]): Ditto. Also added code to set the
3259         shouldCreateRenderers flag, formerly on the bridge.
3260         (-[WebFrame _updateBackground]): Change to call mehods on self, not bridge.
3261         (aeDescFromJSValue): Moved here from bridge.
3262         (-[WebFrame _domain]): Ditto.
3263         (-[WebFrame _addData:]): Ditto.
3264         (-[WebFrame _stringWithDocumentTypeStringAndMarkupString:]): Ditto.
3265         (-[WebFrame _nodesFromList:]): Ditto.
3266         (-[WebFrame _markupStringFromNode:nodes:]): Ditto.
3267         (-[WebFrame _markupStringFromRange:nodes:]): Ditto.
3268         (-[WebFrame _selectedString]): Ditto.
3269         (-[WebFrame _stringForRange:]): Ditto.
3270         (-[WebFrame _forceLayoutAdjustingViewSize:]): Ditto.
3271         (-[WebFrame _forceLayoutWithMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Ditto.
3272         (-[WebFrame _sendScrollEvent]): Ditto.
3273         (-[WebFrame _drawRect:]): Ditto.
3274         (-[WebFrame _computePageRectsWithPrintWidthScaleFactor:printHeight:]): Ditto.
3275         (-[WebFrame _adjustPageHeightNew:top:bottom:limit:]): Ditto.
3276         (-[WebFrame _copyRenderNode:copier:]): Ditto.
3277         (-[WebFrame _copyRenderTree:]): Ditto.
3278         (inputElementFromDOMElement): Ditto.
3279         (formElementFromDOMElement): Ditto.
3280         (-[WebFrame _elementWithName:inForm:]): Ditto.
3281         (-[WebFrame _elementDoesAutoComplete:]): Ditto.
3282         (-[WebFrame _elementIsPassword:]): Ditto.
3283         (-[WebFrame _formForElement:]): Ditto.
3284         (-[WebFrame _currentForm]): Ditto.
3285         (-[WebFrame _controlsInForm:]): Ditto.
3286         (-[WebFrame _searchForLabels:beforeElement:]): Ditto.
3287         (-[WebFrame _matchLabels:againstElement:]): Ditto.
3288         (-[WebFrame _URLWithAttributeString:]): Ditto.
3289         (-[WebFrame _searchFor:direction:caseSensitive:wrap:startInSelection:]): Ditto.
3290         (-[WebFrame _markAllMatchesForText:caseSensitive:limit:]): Ditto.
3291         (-[WebFrame _markedTextMatchesAreHighlighted]): Ditto.
3292         (-[WebFrame _setMarkedTextMatchesAreHighlighted:]): Ditto.
3293         (-[WebFrame _unmarkAllTextMatches]): Ditto.
3294         (-[WebFrame _rectsForTextMatches]): Ditto.
3295         (-[WebFrame _stringByEvaluatingJavaScriptFromString:]): Ditto.
3296         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): Ditto.
3297         (-[WebFrame _aeDescByEvaluatingJavaScriptFromString:]): Ditto.
3298         (-[WebFrame _caretRectAtNode:offset:affinity:]): Ditto.
3299         (-[WebFrame _firstRectForDOMRange:]): Ditto.
3300         (-[WebFrame _scrollDOMRangeToVisible:]): Ditto.
3301         (-[WebFrame _baseURL]): Ditto.
3302         (-[WebFrame _stringWithData:]): Ditto.
3303         (+[WebFrame _stringWithData:textEncodingName:]): Ditto.
3304         (-[WebFrame _needsLayout]): Ditto.
3305         (-[WebFrame _renderTreeAsExternalRepresentation]): Ditto.
3306         (-[WebFrame _accessibilityTree]): Ditto.
3307         (-[WebFrame _setBaseBackgroundColor:]): Ditto.
3308         (-[WebFrame _setDrawsBackground:]): Ditto.
3309         (-[WebFrame _rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
3310         Ditto.
3311         (-[WebFrame _selectionGranularity]): Ditto.
3312         (-[WebFrame _convertToNSRange:]): Ditto.
3313         (-[WebFrame _convertToDOMRange:]): Ditto.
3314         (-[WebFrame _convertNSRangeToDOMRange:]): Ditto.
3315         (-[WebFrame _convertDOMRangeToNSRange:]): Ditto.
3316         (-[WebFrame _markDOMRange]): Ditto.
3317         (-[WebFrame _markedTextNSRange]): Ditto.
3318         (-[WebFrame _smartDeleteRangeForProposedRange:]): Ditto.
3319         (-[WebFrame _smartInsertForString:replacingRange:beforeString:afterString:]): Ditto.
3320         (-[WebFrame _documentFragmentWithMarkupString:baseURLString:]): Ditto.
3321         (-[WebFrame _documentFragmentWithText:inContext:]): Ditto.
3322         (-[WebFrame _documentFragmentWithNodesAsParagraphs:]): Ditto.
3323         (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]): Ditto.
3324         (-[WebFrame _replaceSelectionWithNode:selectReplacement:smartReplace:matchStyle:]): Ditto.
3325         (-[WebFrame _replaceSelectionWithMarkupString:baseURLString:selectReplacement:smartReplace:]): Ditto.
3326         (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]): Ditto.
3327         (-[WebFrame _insertParagraphSeparatorInQuotedContent]): Ditto.
3328         (-[WebFrame _visiblePositionForPoint:]): Ditto.
3329         (-[WebFrame _characterRangeAtPoint:]): Ditto.
3330         (-[WebFrame _typingStyle]): Ditto.
3331         (-[WebFrame _setTypingStyle:withUndoAction:]): Ditto.
3332         (-[WebFrame _fontForSelection:]): Ditto.
3333         (-[WebFrame _dragSourceMovedTo:]): Ditto.
3334         (-[WebFrame _dragSourceEndedAt:operation:]): Ditto.
3335         (-[WebFrame _getData:andResponse:forURL:]): Ditto.
3336         (-[WebFrame _getAllResourceDatas:andResponses:]): Ditto.
3337         (-[WebFrame _canProvideDocumentSource]): Ditto.
3338         (-[WebFrame _canSaveAsWebArchive]): Ditto.
3339         (-[WebFrame _receivedData:textEncodingName:]): Ditto.
3340         (-[WebFrame _setShouldCreateRenderers:]): Put the code from the bridge in this preexisting
3341         function. Couldn't just keep the bridge method because this was already here with the same name.
3342         (-[WebFrame _selectedNSRange]): Ditto.
3343         (-[WebFrame _selectNSRange:]): Ditto.
3344         (-[WebFrame dealloc]): Remove bridge-related code.
3345         (-[WebFrame finalize]): Ditto.
3346
3347         * WebView/WebFrameInternal.h: Added all the method declarations from the bridge.
3348         Removed the bridge parameter from the init method. Removed the #if blocks that
3349         tried to make this header work in non-C++ ObjC files -- they were broken and unused.
3350         Removed the _bridge method.
3351
3352         * WebView/WebFrameView.mm: Removed the _bridge method.
3353
3354         * WebView/WebHTMLRepresentation.mm:
3355         (-[WebHTMLRepresentation setDataSource:]): Removed the code to set up the bridge
3356         field.
3357         (-[WebHTMLRepresentation receivedData:withDataSource:]): Use WebFrame instead of bridge.
3358         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]): Ditto.
3359         (-[WebHTMLRepresentation canProvideDocumentSource]): Ditto.
3360         (-[WebHTMLRepresentation canSaveAsWebArchive]): Ditto.
3361         (-[WebHTMLRepresentation documentSource]): Ditto.
3362         (-[WebHTMLRepresentation DOMDocument]): Ditto.
3363         (-[WebHTMLRepresentation elementWithName:inForm:]): Ditto.
3364         (-[WebHTMLRepresentation elementDoesAutoComplete:]): Ditto.
3365         (-[WebHTMLRepresentation elementIsPassword:]): Ditto.
3366         (-[WebHTMLRepresentation formForElement:]): Ditto.
3367         (-[WebHTMLRepresentation currentForm]): Ditto.
3368         (-[WebHTMLRepresentation controlsInForm:]): Ditto.
3369         (-[WebHTMLRepresentation searchForLabels:beforeElement:]): Ditto.
3370         (-[WebHTMLRepresentation matchLabels:againstElement:]): Ditto.
3371
3372         * WebView/WebHTMLRepresentationPrivate.h: Removed the _bridge method.
3373
3374         * WebView/WebHTMLView.mm:
3375         (-[WebHTMLView _documentFragmentWithPaths:]): Use WebFrame instead of bridge.
3376         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): Ditto.
3377         (-[WebHTMLView _pasteAsPlainTextWithPasteboard:]): Ditto.
3378         (-[WebHTMLView _updateTextSizeMultiplier]): Ditto.
3379         (-[WebHTMLView _frameOrBoundsChanged]): Ditto.
3380         (-[WebHTMLView _smartInsertForString:replacingRange:beforeString:afterString:]): Ditto.
3381         (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]): Ditto.
3382         (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Ditto.
3383         (-[WebHTMLView drawSingleRect:]): Ditto.
3384         (-[WebHTMLView draggedImage:movedTo:]): Ditto.
3385         (-[WebHTMLView draggedImage:endedAt:operation:]): Ditto.
3386         (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Ditto.
3387         (-[WebHTMLView knowsPageRange:]): Ditto.
3388         (-[WebHTMLView accessibilityAttributeValue:]): Ditto.
3389         (-[WebHTMLView accessibilityFocusedUIElement]): Ditto.
3390         (-[WebHTMLView accessibilityHitTest:]): Ditto.
3391         (-[WebHTMLView _accessibilityParentForSubview:]): Ditto.
3392         (-[WebHTMLView changeDocumentBackgroundColor:]): Ditto.
3393         (-[WebHTMLView _changeWordCaseWithSelector:]): Ditto.
3394         (-[WebHTMLView _changeSpellingToWord:]): Ditto.
3395         (-[WebHTMLView startSpeaking:]): Ditto.
3396         (-[WebHTMLView _updateFontPanel]): Ditto.
3397         (-[WebHTMLView _canSmartCopyOrDelete]): Ditto.
3398         (-[WebHTMLView _layoutIfNeeded]): Ditto.
3399         (-[WebHTMLView characterIndexForPoint:]): Ditto.
3400         (-[WebHTMLView firstRectForCharacterRange:]): Ditto.
3401         (-[WebHTMLView selectedRange]): Ditto.
3402         (-[WebHTMLView markedRange]): Ditto.
3403         (-[WebHTMLView attributedSubstringFromRange:]): Ditto.
3404         (-[WebHTMLView setMarkedText:selectedRange:]): Ditto.
3405         (-[WebHTMLView insertText:]): Ditto.
3406         (-[WebTextCompleteController _insertMatch:]): Ditto.
3407         (-[WebTextCompleteController doCompletion]): Ditto.
3408         (-[WebTextCompleteController endRevertingChange:moveLeft:]): Ditto.
3409         (-[WebHTMLView string]): Ditto.
3410         (-[WebHTMLView selectedString]): Ditto.
3411         (-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]): Ditto.
3412         (-[WebHTMLView markAllMatchesForText:caseSensitive:limit:]): Ditto.
3413         (-[WebHTMLView setMarkedTextMatchesAreHighlighted:]): Ditto.
3414         (-[WebHTMLView markedTextMatchesAreHighlighted]): Ditto.
3415         (-[WebHTMLView unmarkAllTextMatches]): Ditto.
3416         (-[WebHTMLView rectsForTextMatches]): Ditto.
3417         * WebView/WebRenderNode.mm:
3418         (-[WebRenderNode initWithWebFrameView:]): Ditto.
3419         * WebView/WebResource.mm:
3420         (-[WebResource _stringValue]): Ditto.
3421
3422         * WebView/WebScriptDebugDelegate.mm: Removed unneeded include.
3423
3424         * WebView/WebView.mm:
3425         (-[WebView _dashboardRegions]): Use WebFrame instead of bridge.
3426         (-[WebView setProhibitsMainFrameScrolling:]): Ditto.
3427         (-[WebView _setInViewSourceMode:]): Ditto.
3428         (-[WebView _inViewSourceMode]): Ditto.
3429         (-[WebView _executeCoreCommandByName:value:]): Ditto.
3430         (-[WebView stringByEvaluatingJavaScriptFromString:]): Ditto.
3431         (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Ditto.
3432         (-[WebView scrollDOMRangeToVisible:]): Ditto.
3433         (-[WebView setSelectedDOMRange:affinity:]): Ditto.
3434         (-[WebView setEditable:]): Ditto.
3435         (-[WebView setTypingStyle:]): Ditto.
3436         (-[WebView typingStyle]): Ditto.
3437         (-[WebView replaceSelectionWithNode:]): Ditto.
3438         (-[WebView replaceSelectionWithText:]): Ditto.
3439         (-[WebView replaceSelectionWithMarkupString:]): Ditto.
3440         (-[WebView replaceSelectionWithArchive:]): Ditto.
3441         (-[WebView _insertNewlineInQuotedContent]): Ditto.
3442         (-[WebView _replaceSelectionWithNode:matchStyle:]): Ditto.
3443
3444 2008-03-12  David Hyatt  <hyatt@apple.com>
3445
3446         Make the zoom factor a float and not a percent.
3447
3448         Reviewed by antti
3449
3450         * WebView/WebView.mm:
3451         (-[WebView _setZoomMultiplier:isTextOnly:]):
3452
3453 2008-03-11  David Hyatt  <hyatt@apple.com>
3454
3455         This patch prepares Mac WebKit to handle two different zooming modes (full page zoom and text only zoom).
3456         New API is added that is parallel to the text zoom public API.  You can get/set a pageSizeMultiplier and you
3457         can zoom the page in, out or reset it to the standard size.
3458
3459         In the implementation only one zoom factor is stored, and setting one multiplier will shift you into that mode
3460         and set the common zoom factor.  In other words you can't combine text zoom and page zoom.  One will always
3461         win.
3462
3463         Reviewed by Tim H.
3464
3465         * WebCoreSupport/WebFrameBridge.mm:
3466         (-[WebFrameBridge finishInitializingWithPage:frameName:WebCore::frameView:ownerElement:]):
3467         * WebView/WebDocumentInternal.h:
3468         * WebView/WebHTMLView.mm:
3469         (-[WebHTMLView viewDidMoveToSuperview]):
3470         * WebView/WebPDFView.h:
3471         * WebView/WebPDFView.mm:
3472         (-[WebPDFView _zoomOut:]):
3473         (-[WebPDFView _zoomIn:]):
3474         (-[WebPDFView _resetZoom:]):
3475         (-[WebPDFView _canZoomOut]):
3476         (-[WebPDFView _canZoomIn]):
3477         (-[WebPDFView _canResetZoom]):
3478         * WebView/WebView.mm:
3479         (-[WebViewPrivate init]):
3480         (-[WebView setTextSizeMultiplier:]):
3481         (-[WebView textSizeMultiplier]):
3482         (-[WebView _setZoomMultiplier:isTextOnly:]):
3483         (-[WebView _zoomMultiplier:]):
3484         (-[WebView _realZoomMultiplier]):
3485         (-[WebView _realZoomMultiplierIsTextOnly]):
3486         (-[WebView _canZoomOut:]):
3487         (-[WebView _canZoomIn:]):
3488         (-[WebView _zoomOut:isTextOnly:]):
3489         (-[WebView _zoomIn:isTextOnly:]):
3490         (-[WebView _canResetZoom:]):
3491         (-[WebView _resetZoom:isTextOnly:]):
3492         (-[WebView canMakeTextSmaller]):
3493         (-[WebView makeTextSmaller:]):
3494         (-[WebView canMakeTextLarger]):
3495         (-[WebView makeTextLarger:]):
3496         (-[WebView canMakeTextStandardSize]):
3497         (-[WebView makeTextStandardSize:]):
3498         (-[WebView setPageSizeMultiplier:]):
3499         (-[WebView pageSizeMultiplier]):
3500         (-[WebView canZoomPageIn]):
3501         (-[WebView zoomPageIn:]):
3502         (-[WebView canZoomPageOut]):
3503         (-[WebView zoomPageOut:]):
3504         (-[WebView canResetPageZoom]):
3505         (-[WebView resetPageZoom:]):
3506         (-[WebView _searchWithSpotlightFromMenu:]):
3507         * WebView/WebViewInternal.h:
3508         * WebView/WebViewPrivate.h:
3509
3510 2008-03-12  Dan Bernstein  <mitz@apple.com>
3511
3512         Reviewed by Darin Adler and Sam Weinig.
3513
3514         - <rdar://problem/4433248> use CoreText API instead of SPI on Leopard
3515
3516         * WebCoreSupport/WebSystemInterface.m:
3517         (InitWebCoreSystemInterface): Made WKGetCGFontFromNSFont and
3518         WKGetNSFontATSUFontId Tiger-only.
3519
3520 2008-03-12  Darin Adler  <darin@apple.com>
3521
3522         - fix http://bugs.webkit.org/show_bug.cgi?id=17794
3523           REGRESSION (r30980): 23 tests hanging on the Mac buildbot
3524
3525         * WebView/WebFrame.mm:
3526         (-[WebFrame _initWithWebFrameView:webView:bridge:]): Added missing call to set
3527         up pointer from the bridge to the frame. (My next check-in removes the bridge
3528         entirely, but we need this until then.)
3529
3530 2008-03-11  Darin Adler  <darin@apple.com>
3531
3532         Reviewed by Sam.
3533
3534         - remove all bridge-related things from WebCore except the bridge itself
3535
3536         * DOM/WebDOMOperations.mm:
3537         (-[DOMNode _bridge]): Reimplemented to not use the bridgeForDOMDocument: method.
3538
3539         * DefaultDelegates/WebDefaultContextMenuDelegate.mm: Removed unneeded include.
3540
3541         * Plugins/WebPluginController.mm: Ditto.
3542
3543         * WebCoreSupport/WebFrameBridge.h: Removed unneeded things, including the
3544         init and close methods. Added a setWebFrame: method.
3545
3546         * WebCoreSupport/WebFrameBridge.mm:
3547         (-[WebFrameBridge setWebFrame:]): Added.
3548
3549         * WebCoreSupport/WebFrameLoaderClient.mm:
3550         (WebFrameLoaderClient::frameLoaderDestroyed): Added an assertion.
3551         (WebFrameLoaderClient::detachedFromParent4): Moved the call to close on the
3552         bridge here. Soon we will be able to remove this entirely!
3553         (WebFrameLoaderClient::createFrame): Rewrote this to use the method moved
3554         into WebFrame from the bridge.
3555
3556         * WebView/WebFrame.mm:
3557         (-[WebFramePrivate dealloc]): Added code to release the bridge, because it's
3558         now owned by the frame.
3559         (-[WebFramePrivate finalize]): Added this missing method. We'd leak the script
3560         debugger under GC without this!
3561         (kit): Rewrote the function that maps from a WebCore::Frame to a WebFrame to
3562         use WebFrameLoaderClient instead of the bridge.
3563         (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]): Added.
3564         This is code that used to live in the bridge's init function.
3565         (+[WebFrame _createMainFrameWithPage:frameName:frameView:]): Ditto.
3566         (+[WebFrame WebCore::_createSubframeWithOwnerElement:frameName:frameView:]): Ditto.
3567         (-[WebFrame _initWithWebFrameView:webView:bridge:]): Retain the bridge, since
3568         the WebView is now the bridge's owner.
3569         (-[WebFrame _updateBackground]): Changed this one call site that was calling the
3570         WebCore::Frame::bridge function directly to use the kit function instead.
3571         (-[WebFrame dealloc]): Added code to clear the WebFrame pointer in the bridge.
3572         This code won't last long -- we're eliminating the bridge soon.
3573         (-[WebFrame finalize]): Ditto.
3574
3575         * WebView/WebFrameInternal.h: Added a coreFrame backpointer and two new methods
3576         for creating frames.
3577
3578         * WebView/WebView.mm:
3579         (-[WebView _commonInitializationWithFrameName:groupName:]): Rewrote this to use
3580         the method moved into WebFrame from the bridge. Gets rid of the unpleasant idiom
3581         where we have to allocate a WebFrameBridge and then immediately release it.
3582
3583 2008-03-11  Darin Adler  <darin@apple.com>
3584
3585         Reviewed by Anders.
3586
3587         - remove code depending on the bridge to get from an NSView to a WebCore::Frame
3588
3589         * WebCoreSupport/WebFrameLoaderClient.mm:
3590         (WebFrameLoaderClient::transitionToCommittedForNewPage): Remove incorrect call
3591         to setView. A couple lines later, there is a call to _install, which sets the
3592         view to the scroll view.
3593
3594         * WebCoreSupport/WebViewFactory.mm: Removed bridgeForView method.
3595
3596         * WebView/WebDynamicScrollBarsView.h: Moved most of the declarations out of
3597         this file, since it's used by Safari.
3598         * WebView/WebDynamicScrollBarsViewInternal.h: Added.
3599         * WebView/WebDynamicScrollBarsView.m:
3600         (-[WebDynamicScrollBarsView updateScrollers]): Ditto.
3601         (-[WebDynamicScrollBarsView setAllowsScrolling:]): Ditto.
3602         (-[WebDynamicScrollBarsView allowsScrolling]): Ditto.
3603         (-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]): Ditto.
3604         (-[WebDynamicScrollBarsView setAllowsVerticalScrolling:]): Ditto.
3605         (-[WebDynamicScrollBarsView allowsHorizontalScrolling]): Ditto.
3606         (-[WebDynamicScrollBarsView allowsVerticalScrolling]): Ditto.
3607         (-[WebDynamicScrollBarsView horizontalScrollingMode]): Ditto.
3608         (-[WebDynamicScrollBarsView verticalScrollingMode]): Ditto.
3609         (-[WebDynamicScrollBarsView setHorizontalScrollingMode:]): Ditto.
3610         (-[WebDynamicScrollBarsView setHorizontalScrollingMode:andLock:]): Ditto.
3611         (-[WebDynamicScrollBarsView setVerticalScrollingMode:]): Ditto.
3612         (-[WebDynamicScrollBarsView setVerticalScrollingMode:andLock:]): Ditto.
3613         (-[WebDynamicScrollBarsView setScrollingMode:]): Ditto.
3614         (-[WebDynamicScrollBarsView setScrollingMode:andLock:]): Ditto.
3615
3616         * WebView/WebFrameView.mm:
3617         (-[WebFrameView _web_frame]): Added. Replaces the webCoreBridge method.
3618
3619         * WebView/WebView.mm:
3620         (-[WebView setAlwaysShowVerticalScroller:]): Updated for changes to WebCoreFrameView.h.
3621         (-[WebView alwaysShowVerticalScroller]): Ditto.
3622         (-[WebView setAlwaysShowHorizontalScroller:]): Ditto.
3623         (-[WebView alwaysShowHorizontalScroller]): Ditto.
3624
3625 2008-03-11  Darin Adler  <darin@apple.com>
3626
3627         Reviewed by Sam.
3628
3629         - eliminate the remaining parts of WebCoreBridge used for calls to WebKit from WebCore
3630
3631         * WebCoreSupport/WebChromeClient.h: Added new virtual functions that replace
3632         bridge methods.
3633         * WebCoreSupport/WebChromeClient.mm: Added lots of BEGIN_BLOCK_OBJC_EXCEPTIONS
3634         to recently-created functions.
3635         (WebChromeClient::firstResponder): Moved code here from the bridge.
3636         (WebChromeClient::makeFirstResponder): Ditto.
3637         (WebChromeClient::runOpenPanel): Ditto.
3638         (WebChromeClient::willPopUpMenu): Ditto.
3639
3640         * WebCoreSupport/WebFrameBridge.h: Removed almost everything. What's left
3641         is related to creating the bridge and connecting it to WebCore, which will
3642         go next when I eliminate use of the bridge to get to/from the Frame*.
3643         * WebCoreSupport/WebFrameBridge.mm:
3644         (-[WebFrameBridge close]): Moved the code to track the bridge count here
3645         instead of the dealloc and finalize methods.
3646
3647 2008-03-11  Darin Adler  <darin@apple.com>
3648
3649         Reviewed by Mitz.
3650
3651         - update code affected by Range changes
3652
3653         * Misc/WebNSAttributedStringExtras.mm:
3654         (+[NSAttributedString _web_attributedStringFromRange:]): Update for name changes.
3655         * WebView/WebHTMLRepresentation.mm:
3656         (-[WebHTMLRepresentation attributedStringFrom:startOffset:to:endOffset:]):
3657         Use Range::create.
3658         * WebView/WebHTMLView.mm:
3659         (-[WebHTMLView attributedString]): Ditto.
3660
3661 2008-03-10  Darin Adler  <darin@apple.com>
3662
3663         Reviewed by Sam.
3664
3665         - eliminate keyboard UI mode method from WebCoreFrameBridge
3666
3667         * WebCoreSupport/WebChromeClient.h: Added keyboardUIMode function.
3668         * WebCoreSupport/WebChromeClient.mm:
3669         (WebChromeClient::keyboardUIMode): Ditto. Calls WebView.
3670         * WebCoreSupport/WebFrameBridge.h: Removed unused things, including the
3671         fields for keyboard UI mode.
3672         * WebCoreSupport/WebFrameBridge.mm:
3673         (-[WebFrameBridge dealloc]): Removed unneeded code; eliminated the fini
3674         method.
3675         (-[WebFrameBridge finalize]): Ditto.
3676         * WebView/WebView.mm: Moved the keyboard mode code in here.
3677         (-[WebView _close]): Remove observer from the distributed notification
3678         center as well as the normal one.
3679         (-[WebView _retrieveKeyboardUIModeFromPreferences:]): Added. Code moved
3680         here from the bridge.
3681         (-[WebView _keyboardUIMode]): Ditto.
3682         * WebView/WebViewInternal.h: Added _keyboardUIMode method.
3683
3684 2008-03-10  Darin Adler  <darin@apple.com>
3685
3686         Reviewed by Sam.
3687
3688         - eliminate Java applet methods from WebCoreFrameBridge
3689
3690         * WebCoreSupport/WebChromeClient.mm: Removed unneeded headers and declarations.
3691         * WebCoreSupport/WebFrameBridge.mm: Ditto. Also removed unneeded methods, including
3692         the ones that load Java applets.
3693         * WebCoreSupport/WebFrameLoaderClient.h: Added javaApplet function.
3694         * WebCoreSupport/WebFrameLoaderClient.mm: Ditto.
3695
3696 2008-03-07  Simon Hausmann  <hausmann@webkit.org>
3697
3698         Reviewed by Darin.
3699
3700         Done with Lars.
3701
3702         Simplified WebViewFactory's refreshPlugins method to only refresh the
3703         plugins and not reload the frames anymore since that's now done in a
3704         platform independent manner by WebCore::Page.
3705
3706         Also removed the now unused pluginNameForMIMEType and
3707         pluginSupportsMIMEType methods.
3708
3709         * WebCoreSupport/WebViewFactory.mm:
3710         * WebView/WebFrame.mm:
3711         * WebView/WebFrameInternal.h:
3712         * WebView/WebView.mm:
3713
3714 2008-03-08  Mark Rowe  <mrowe@apple.com>
3715
3716         Reviewed by Darin Adler.
3717
3718         Fix 64-bit build with GCC 4.2.
3719
3720         * DefaultDelegates/WebDefaultScriptDebugDelegate.m: Use NSUInteger in place of unsigned where required.
3721         * DefaultDelegates/WebDefaultUIDelegate.m: Ditto.
3722         * History/WebHistoryItem.mm: Ditto.
3723         * Misc/WebElementDictionary.mm: Ditto.
3724         * WebCoreSupport/WebFrameLoaderClient.mm:
3725         (WebFrameLoaderClient::objectContentType): Move variable declaration outside of if to avoid warning about the
3726         variable being unused in 64-bit.
3727         * WebCoreSupport/WebInspectorClient.mm: Use NSUInteger in place of unsigned where required.
3728         * WebView/WebHTMLView.mm:
3729         (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Use CGFloat in place of float where required.
3730         (-[WebTextCompleteController numberOfRowsInTableView:]): Use NSInteger in place of int where required.
3731
3732 2008-03-08  Darin Adler  <darin@apple.com>
3733
3734         Reviewed by Adele.
3735
3736         - eliminate custom highlight methods from WebCoreFrameBridge
3737
3738         * WebCoreSupport/WebChromeClient.h: Added custom highlight functions.
3739         * WebCoreSupport/WebChromeClient.mm:
3740         (WebChromeClient::customHighlightRect): Moved code here from bridge.
3741         (WebChromeClient::paintCustomHighlight): Ditto.
3742         * WebCoreSupport/WebFrameBridge.mm: Removed code here.
3743
3744 2008-03-07  David D. Kilzer  <ddkilzer@apple.com>
3745
3746         Unify concept of enabling Netscape Plug-in API (NPAPI).
3747
3748         Reviewed by Darin.
3749
3750         * WebKit.exp: Removed unused class export for WebBaseNetscapePluginView.
3751
3752         * WebKitPrefix.h: Removed WTF_USE_NPOBJECT since we now use
3753         ENABLE(NETSCAPE_PLUGIN_API) as defined in Platform.h.
3754
3755         * Plugins/WebBaseNetscapePluginStream.h: Replaced #ifndef __LP64__ with
3756         #if ENABLE(NETSCAPE_PLUGIN_API).
3757         * Plugins/WebBaseNetscapePluginStream.mm: Ditto.
3758         * Plugins/WebBaseNetscapePluginView.h: Ditto.
3759         * Plugins/WebBaseNetscapePluginView.mm: Ditto.
3760         * Plugins/WebBaseNetscapePluginViewInternal.h: Ditto.
3761         * Plugins/WebBaseNetscapePluginViewPrivate.h: Ditto.
3762         * Plugins/WebBasePluginPackage.h: Ditto.
3763         * Plugins/WebBasePluginPackage.m: Ditto.
3764         (+[WebBasePluginPackage pluginWithPath:]):
3765         * Plugins/WebNetscapeDeprecatedFunctions.c: Ditto.
3766         * Plugins/WebNetscapeDeprecatedFunctions.h: Ditto.
3767         * Plugins/WebNetscapePluginEmbeddedView.h: Ditto.
3768         * Plugins/WebNetscapePluginEmbeddedView.mm: Ditto.
3769         * Plugins/WebNetscapePluginPackage.h: Ditto.
3770         * Plugins/WebNetscapePluginPackage.m: Ditto.
3771         * Plugins/WebNetscapePluginStream.h: Ditto.
3772         * Plugins/WebNetscapePluginStream.mm: Ditto.
3773         * Plugins/WebPluginDatabase.m: Ditto.
3774         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
3775         * Plugins/npapi.m: Ditto.
3776         * WebCoreSupport/WebFrameLoaderClient.mm: Ditto.
3777         (WebFrameLoaderClient::objectContentType):
3778         (WebFrameLoaderClient::createPlugin):
3779         * WebView/WebHTMLView.mm: Ditto.
3780         (-[NSArray _web_makePluginViewsPerformSelector:withObject:]):
3781         * WebView/WebHTMLViewInternal.h: Ditto.
3782
3783         * WebView/WebFrame.mm: Replaced #ifndef __LP64__ with
3784         #if ENABLE(NETSCAPE_PLUGIN_API). Moved methods below from (WebPrivate)
3785         category to (WebInternal) category so we don't expose the ENABLE() macro
3786         from the private header.
3787         (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
3788         (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]):
3789         * WebView/WebFrameInternal.h: Ditto.
3790         * WebView/WebFramePrivate.h: Ditto.
3791
3792 2008-03-07  Alexey Proskuryakov  <ap@webkit.org>
3793
3794         Reviewed by Darin.
3795
3796         <rdar://problem/5579292> REGRESSION: (safari 2-3): "Default default" encoding for Korean
3797         changed from Korean (Windows, DOS) to Korean (ISO 2022-KR), which breaks some sites
3798
3799         * WebView/WebPreferences.m:
3800         (+[WebPreferences _setInitialDefaultTextEncodingToSystemEncoding]): Make encoding name match
3801         the one used in Safari.
3802
3803 2008-03-07  Mark Rowe  <mrowe@apple.com>
3804
3805         Reviewed by Oliver Hunt.
3806
3807         Fix WebKit build with GCC 4.2.
3808
3809         * Plugins/WebBaseNetscapePluginView.mm: Use the correct return type in method signature.
3810
3811 2008-03-07  Darin Adler  <darin@apple.com>
3812
3813         Reviewed by Adam.
3814
3815         - eliminated WebCoreFrameBridge runOpenPanel
3816
3817         * WebCoreSupport/WebChromeClient.h: Added runOpenPanel.
3818         * WebCoreSupport/WebChromeClient.mm:
3819         (WebChromeClient::runOpenPanel): Added.
3820         (-[WebOpenPanelResultListener initWithChooser:]): Added. Used to wrap the
3821         FileChooser so it can get a result from the UI delegate.
3822         (-[WebOpenPanelResultListener dealloc]): Added.
3823         (-[WebOpenPanelResultListener finalize]): Added.
3824         (-[WebOpenPanelResultListener cancel]): Added.
3825         (-[WebOpenPanelResultListener chooseFilename:]): Added.
3826
3827 2008-03-06  Darin Adler  <darin@apple.com>
3828
3829         Reviewed by Mitz.
3830
3831         - fix regression test failures from the visited-link change
3832
3833         * History/WebHistory.mm:
3834         (+[WebHistory setOptionalSharedHistory:]): Call PageGroup::setShouldTrackVisitedLinks
3835         to turn off visited links if there is no history object. Also call
3836         removeAllVisitedLinks so we can start over from scratch with the new history.
3837
3838 2008-03-06  Dan Bernstein  <mitz@apple.com>
3839
3840         Reviewed by Darin Adler.
3841
3842         - fix a regression from r30741: a crash under
3843           WebFrameLoaderClient::createPlugin() when showing a Mail message with
3844           an attachment
3845
3846         * WebCoreSupport/WebFrameLoaderClient.mm:
3847         (WebFrameLoaderClient::createPlugin):
3848
3849 2008-03-06  Darin Adler  <darin@apple.com>
3850
3851         - fix Tiger build
3852
3853         * History/WebHistory.mm: Added include of WebTypesInternal.h.
3854
3855 2008-03-06  Darin Adler  <darin@apple.com>
3856
3857         - fix Release build
3858
3859         * History/WebHistory.mm:
3860         (-[WebHistoryPrivate setLastVisitedTimeInterval:forItem:]): Removed underscore.
3861         (-[WebHistoryPrivate loadFromURL:collectDiscardedItemsInto:error:]): Added #if.
3862         (-[WebHistoryPrivate saveToURL:error:]): Ditto.
3863
3864 2008-03-06  Darin Adler  <darin@apple.com>
3865
3866         Reviewed by Mitz.
3867
3868         - fix http://bugs.webkit.org/show_bug.cgi?id=17526
3869           REGRESSION: iframes are added to Safari's History menu
3870           by separating the visited link machinery from global history
3871
3872         * History/WebHistory.mm: Moved WebHistoryPrivate inside this file.
3873         (-[WebHistoryPrivate removeItemFromDateCaches:]): Removed the underscore from this
3874         method name, since it's on a private object.
3875         (-[WebHistoryPrivate removeItemForURLString:]): Added a call to the
3876         PageGroup::removeAllVisitedLinks function if the last URL was removed.
3877         (-[WebHistoryPrivate addItemToDateCaches:]): Removed the underscore from this
3878         method name, since it's on a private object.
3879         (-[WebHistoryPrivate removeAllItems]): Call PageGroup::removeAllVisitedLinks.
3880         (-[WebHistoryPrivate ageLimitDate]): Removed the underscore from this
3881         method name, since it's on a private object.
3882         (-[WebHistoryPrivate loadHistoryGutsFromURL:savedItemsCount:collectDiscardedItemsInto:error:]):
3883         Ditto.
3884         (-[WebHistoryPrivate saveHistoryGuts:URL:error:]): Ditto. Also changed this
3885         to correctly return the error by using the newer version of writeToURL: and
3886         removed the FIXME about that.
3887         (-[WebHistoryPrivate addVisitedLinksToPageGroup:]): Added. Calls addVisitedLink
3888         for every link in the history.
3889         (-[WebHistory saveToURL:error:]): Removed the FIXME, since we do get the error now.
3890         (-[WebHistory addItem:]): Moved into the WebPrivate category.
3891         (-[WebHistory addItemForURL:]): Ditto.
3892         (-[WebHistory _addItemForURL:title:]): Added. Used for the normal case where we
3893         create an item and already know its title.
3894         (-[WebHistory ageLimitDate]): Moved into the WebPrivate category.
3895         (-[WebHistory containsItemForURLString:]): Ditto.
3896         (-[WebHistory removeItem:]): Ditto.
3897         (-[WebHistory setLastVisitedTimeInterval:forItem:]): Ditto.
3898         (-[WebHistory _itemForURLString:]): Ditto.
3899         (-[WebHistory _addVisitedLinksToPageGroup:]): Added. For use only inside WebKit.
3900
3901         * History/WebHistoryInternal.h: Added.
3902         * History/WebHistoryItemInternal.h: Tweaked formatting and includes.
3903         * History/WebHistoryPrivate.h: Moved the WebHistoryPrivate class out of this header.
3904         Also reorganized what was left behind.
3905
3906         * WebCoreSupport/WebChromeClient.h: Added populateVisitedLinks.
3907         * WebCoreSupport/WebChromeClient.mm:
3908         (WebChromeClient::populateVisitedLinks): Added a call to the new
3909         -[WebHistory _addVisitedLinksToPageGroup:] method.
3910
3911         * WebCoreSupport/WebFrameLoaderClient.mm:
3912         (WebFrameLoaderClient::updateGlobalHistory): Changed code to use the new
3913         -[WebHistory _addItemForURL:title:] method.
3914
3915 2008-03-05  Adam Roben  <aroben@apple.com>
3916
3917         Rename WebCoreScriptDebuggerImp.{h,mm} to WebScriptDebugger.{h,mm}
3918
3919         Reviewed by Kevin M.
3920
3921         * WebView/WebFrame.mm:
3922         * WebView/WebScriptDebugDelegate.mm:
3923         * WebView/WebScriptDebugger.h: Renamed from WebKit/mac/WebView/WebCoreScriptDebuggerImp.h.
3924         * WebView/WebScriptDebugger.mm: Renamed from WebKit/mac/WebView/WebCoreScriptDebuggerImp.mm.
3925
3926 2008-03-05  Adam Roben  <aroben@apple.com>
3927
3928         Rename WebCoreScriptDebuggerImp to WebScriptDebugger
3929
3930         Reviewed by Kevin M.
3931
3932         * WebView/WebCoreScriptDebuggerImp.h:
3933         * WebView/WebCoreScriptDebuggerImp.mm:
3934         * WebView/WebFrame.mm:
3935         (-[WebFrame _attachScriptDebugger]):
3936         * WebView/WebFrameInternal.h:
3937
3938 2008-03-05  Adam Roben  <aroben@apple.com>
3939
3940         Remove WebScriptDebugger
3941
3942         Uses of WebScriptDebugger have been replaced with
3943         WebCoreScriptDebuggerImp.
3944
3945         Reviewed by Kevin M.
3946
3947         * WebView/WebFrame.mm:
3948         (-[WebFramePrivate dealloc]): Use delete instead of release since
3949         WebCoreScriptDebuggerImp is a C++ class.
3950         (-[WebFrame _attachScriptDebugger]): Updated to use early returns and
3951         WebCoreScriptDebuggerImp.
3952         (-[WebFrame _detachScriptDebugger]): Ditto.
3953         * WebView/WebFrameInternal.h:
3954         * WebView/WebScriptDebugDelegate.mm: Removed WebScriptDebugger
3955         * WebView/WebScriptDebugDelegatePrivate.h: Removed.
3956         * WebView/WebView.mm:
3957
3958 2008-03-05  Adam Roben  <aroben@apple.com>
3959
3960         Remove -webFrame and -globalObject from WebScriptDebugger
3961
3962         WebCoreScriptDebuggerImp is now unaware of WebScriptDebugger
3963
3964         Reviewed by Kevin M.
3965
3966         * WebView/WebCoreScriptDebuggerImp.h: Removed WebScriptDebugger*
3967         parameter to the constructor.
3968         * WebView/WebCoreScriptDebuggerImp.mm:
3969         (toWebFrame): Added.
3970         (WebCoreScriptDebuggerImp::sourceParsed): Call toWebFrame.
3971         (WebCoreScriptDebuggerImp::callEvent): Ditto, and get the Frame's
3972         WindowScriptObject ourselves instead of asking WebScriptDebugger for
3973         it.
3974         (WebCoreScriptDebuggerImp::atStatement): Call toWebFrame.
3975         (WebCoreScriptDebuggerImp::returnEvent): Ditto.
3976         (WebCoreScriptDebuggerImp::exception): Ditto.
3977         * WebView/WebScriptDebugDelegate.mm:
3978         (-[WebScriptDebugger initWithWebFrame:]): Updated for change to
3979         WebScriptDebuggerImp's constructor.
3980         * WebView/WebScriptDebugDelegatePrivate.h: Removed
3981         -webFrame/-globalObject.
3982
3983 2008-03-05  Adam Roben  <aroben@apple.com>
3984
3985         Remove -enterFrame: and -leaveFrame from WebScriptDebugger
3986
3987         Reviewed by Kevin M.
3988
3989         * WebView/WebCoreScriptDebuggerImp.h: Changed to store m_topCallFrame
3990         in a RetainPtr, now that WebCoreScriptDebuggerImp is in charge of its
3991         lifetime.
3992         * WebView/WebCoreScriptDebuggerImp.mm:
3993           - Added declaration of -[WebScriptCallFrame
3994             _initWithGlobalObject:caller:state:].
3995           - Changed most uses of m_topCallFrame to m_topCallFrame.get()
3996         (WebCoreScriptDebuggerImp::WebCoreScriptDebuggerImp): Removed
3997         now-unnecessary initialization of m_topCallFrame.
3998         (WebCoreScriptDebuggerImp::callEvent): Replaced call to enterFrame:
3999         with its implementation. The one difference between this
4000         implementation and the old enterFrame: method is that we don't hand
4001         our reference to m_topCallFrame to _initWithGlobalObject: -- that
4002         method must now retain the passed-in WebScriptCallFrame manually.
4003         (WebCoreScriptDebuggerImp::atStatement):
4004         (WebCoreScriptDebuggerImp::returnEvent): Replaced call to leaveFrame
4005         with its implementation.
4006         (WebCoreScriptDebuggerImp::exception):
4007         * WebView/WebScriptDebugDelegate.mm: Removed declaration of
4008         -[WebScriptCallFrame _initWithGlobalObject:caller:state:].
4009         (-[WebScriptCallFrame _initWithGlobalObject:caller:state:]): Changed
4010         to retain the passed-in caller.
4011         * WebView/WebScriptDebugDelegatePrivate.h:
4012           - Removed _current ivar
4013           - Removed enterFrame:/leaveFrame declarations.
4014
4015 2008-03-05  Adam Roben  <aroben@apple.com>
4016
4017         Remove -parsedSource: from WebScriptDebugger
4018
4019         Reviewed by Kevin M.
4020
4021         * WebView/WebCoreScriptDebuggerImp.mm:
4022         (WebCoreScriptDebuggerImp::sourceParsed): Moved code here from
4023         -[WebScriptDebugger parsedSource:fromURL:sourceId:startLine:errorLine:errorMessage:]
4024         * WebView/WebScriptDebugDelegate.mm: Removed -parsedSource:.
4025         * WebView/WebScriptDebugDelegatePrivate.h: Ditto.
4026
4027 2008-03-05  Adam Roben  <aroben@apple.com>
4028
4029         Remove -enteredFrame:, -leavingFrame:, and -exceptionRaised: from WebScriptDebugger
4030
4031         Reviewed by Kevin M.
4032
4033         * WebView/WebCoreScriptDebuggerImp.mm:
4034         (WebCoreScriptDebuggerImp::WebCoreScriptDebuggerImp): Changed to call
4035         trhough to callEvent instead of duplicating its code here.
4036         (WebCoreScriptDebuggerImp::callEvent): Moved code from
4037         -[WebScriptDebugger enteredFrame:sourceId:line:] here.
4038         (WebCoreScriptDebuggerImp::returnEvent): Moved code from
4039         -[WebScriptDebugger leavingFrame:sourceId:line:] here.
4040         (WebCoreScriptDebuggerImp::exception): Moved code from
4041         -[WebScriptDebugger exceptionRaised:sourceId:line:] here.
4042         * WebView/WebScriptDebugDelegate.mm: Removed -enteredFrame:,
4043         -leavingFrame:, and -exceptionRaised:.
4044         * WebView/WebScriptDebugDelegatePrivate.h: Ditto.
4045
4046 2008-03-05  Adam Roben  <aroben@apple.com>
4047
4048         Remove -[WebScriptDebugger hitStatement:sourceId:line:]
4049
4050         Reviewed by Kevin M.
4051
4052         * WebView/WebCoreScriptDebuggerImp.mm:
4053         (WebCoreScriptDebuggerImp::atStatement): Moved code here from
4054         -[WebScriptDebugger hitStatement:sourceId:line:].
4055         * WebView/WebScriptDebugDelegate.mm:
4056         (-[WebScriptDebugger webFrame]): Added.
4057         * WebView/WebScriptDebugDelegatePrivate.h:
4058
4059 2008-03-05  Adam Roben  <aroben@apple.com>
4060
4061         Remove WebCoreScriptDebugger
4062
4063         Reviewed by Kevin M.
4064
4065         * WebView/WebCoreScriptDebugger.h: Removed.
4066         * WebView/WebCoreScriptDebugger.mm: Removed.
4067         * WebView/WebCoreScriptDebuggerImp.h: Replaced WebCoreScriptDebugger
4068         with WebScriptDebugger.
4069         * WebView/WebCoreScriptDebuggerImp.mm: Ditto, and replaced [m_debugger
4070         delegate] with just m_debugger.
4071         (toNSString): Moved here from WebCoreScriptDebugger.mm.
4072         (toNSURL): Ditto.
4073         (WebCoreScriptDebuggerImp::WebCoreScriptDebuggerImp):
4074         (WebCoreScriptDebuggerImp::sourceParsed):
4075         (WebCoreScriptDebuggerImp::callEvent):
4076         (WebCoreScriptDebuggerImp::atStatement):
4077         (WebCoreScriptDebuggerImp::returnEvent):
4078         (WebCoreScriptDebuggerImp::exception):
4079         * WebView/WebScriptDebugDelegate.mm:
4080         (-[WebScriptDebugger initWithWebFrame:]): _debugger now holds a
4081         WebCoreScriptDebuggerImp, so initialize it properly.
4082         * WebView/WebScriptDebugDelegatePrivate.h: Changed _debugger to hold a
4083         WebCoreScriptDebuggerImp.
4084
4085 2008-03-05  Adam Roben  <aroben@apple.com>
4086
4087         Move WebCoreScriptDebuggerImp to its own source files
4088
4089         Also changed WebCoreScriptDebuggerImp coding style to match our style
4090         guidelines.
4091
4092         Reviewed by Kevin M.
4093
4094         * WebView/WebCoreScriptDebugger.h: Added declaration of toNSURL
4095         function.
4096         * WebView/WebCoreScriptDebugger.mm: Removed WebCoreScriptDebuggerImp
4097         implementation.
4098         (toNSURL): Made no longer static.
4099         * WebView/WebCoreScriptDebuggerImp.h: Added.
4100         * WebView/WebCoreScriptDebuggerImp.mm: Added. Code was moved here from
4101         WebCoreScriptDebugger.mm and cleaned up.
4102         (WebCoreScriptDebuggerImp::WebCoreScriptDebuggerImp):
4103         (WebCoreScriptDebuggerImp::sourceParsed):
4104         (WebCoreScriptDebuggerImp::callEvent):
4105         (WebCoreScriptDebuggerImp::atStatement):
4106         (WebCoreScriptDebuggerImp::returnEvent):
4107         (WebCoreScriptDebuggerImp::exception):
4108
4109 2008-03-05  Adam Roben  <aroben@apple.com>
4110
4111         Move -_enterFrame and -_leaveFrame from WebCoreScriptDebugger to WebScriptDebugger
4112
4113         Reviewed by Kevin M.
4114
4115         * WebView/WebCoreScriptDebugger.h:
4116           - Removed newFrameWithGlobalObject:caller:state: from
4117             WebScriptDebugger protocol
4118           - Added enterFrame: and leaveFrame: to WebScriptDebugger protocol
4119           - Removed _current ivar from WebCoreScriptDebugger
4120         * WebView/WebCoreScriptDebugger.mm:
4121         (WebCoreScriptDebuggerImp::callEvent): Changed to call enterFrame on
4122         the delegate.
4123         (WebCoreScriptDebuggerImp::returnEvent): Ditto for leaveFrame.
4124         * WebView/WebScriptDebugDelegate.mm:
4125         (-[WebScriptDebugger dealloc]): Added code to release _current.
4126         (-[WebScriptDebugger enterFrame:]): Added. Code came from
4127         WebCoreScriptDebugger.
4128         (-[WebScriptDebugger leaveFrame]): Ditto.
4129         * WebView/WebScriptDebugDelegatePrivate.h: Added _current ivar.
4130
4131 2008-03-05  Adam Roben  <aroben@apple.com>
4132
4133         Remove WebCoreScriptCallFrame
4134
4135         Reviewed by Tim.
4136
4137         * WebView/WebCoreScriptDebugger.h:
4138           - Replaced WebCoreScriptCallFrame with WebScriptCallFrame
4139           - Replaced -newWrapperForFrame: with
4140             -newFrameWithGlobalObject:caller:state:
4141           - Removed WebCoreScriptCallFrame interface.
4142         * WebView/WebCoreScriptDebugger.mm: Replaced WebCoreScriptCallFrame
4143         with WebScriptCallFrame.
4144         (-[WebCoreScriptDebugger _enterFrame:]): Changed to call
4145         -newFrameWithGlobalObject:caller:state.
4146         (-[WebCoreScriptDebugger _leaveFrame]):
4147         * WebView/WebScriptDebugDelegate.h: Changed WebScriptCallFrame's
4148         _private ivar to be of type WebScriptCallFramePrivate*.
4149         * WebView/WebScriptDebugDelegate.mm:
4150           - Replaced WebCoreScriptCallFrame with WebScriptCallFrame
4151           - Added WebScriptCallFramePrivate
4152         (-[WebScriptDebugger enteredFrame:sourceId:line:]):
4153         (-[WebScriptDebugger hitStatement:sourceId:line:]):
4154         (-[WebScriptDebugger leavingFrame:sourceId:line:]):
4155         (-[WebScriptDebugger exceptionRaised:sourceId:line:]):
4156         (-[WebScriptCallFramePrivate dealloc]): Added.
4157         (-[WebScriptCallFrame _initWithGlobalObject:caller:state:]): Added.
4158         Code came from WebCoreScriptCallFrame.
4159         (-[WebScriptCallFrame dealloc]): Added a call to release the _private
4160         ivar.
4161         (-[WebScriptCallFrame _convertValueToObjcValue:]): Replaced calls to
4162         _private with direct access of _private's ivars.
4163         (-[WebScriptCallFrame caller]): Ditto.
4164         (-[WebScriptCallFrame scopeChain]): Ditto.
4165         (-[WebScriptCallFrame evaluateWebScript:]): Ditto.
4166
4167 2008-03-05  Adam Roben  <aroben@apple.com>
4168
4169         Move -_convertValueToObjcValue to WebScriptCallFrame
4170
4171         Reviewed by Darin.
4172
4173         * WebView/WebCoreScriptDebugger.h: Removed declaration of
4174         -_convertValueToObjcValue.
4175         * WebView/WebCoreScriptDebugger.mm: Removed -_convertValueToObjcValue.
4176         * WebView/WebScriptDebugDelegate.mm: