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