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