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