2008-10-15 Kenneth Russell <kenneth.russell@sun.com>
[webkit/qt.git] / WebKit / mac / ChangeLog
blobee9b9e4580bef77a5507fd7aaba76112fd9043ee
1 2008-10-15  Kenneth Russell  <kenneth.russell@sun.com>
3         Reviewed and landed by Anders Carlsson.
5         https://bugs.webkit.org/show_bug.cgi?id=21572
6         
7         Initialize pluginFunc.size to the correct size before calling NP_GetEntryPoints.
8         
9         * Plugins/WebNetscapePluginPackage.m:
10         (-[WebNetscapePluginPackage load]):
12 2008-10-15  Mark Rowe  <mrowe@apple.com>
14         Reviewed by Dan Bernstein.
16         <rdar://problem/6272508> Crash occurs after loading flash content at http://www.macrumors.com/
18         Restore some code related to the CoreGraphics drawing model that was misplaced in r37131.
20         * Plugins/WebBaseNetscapePluginView.mm:
21         (-[WebBaseNetscapePluginView invalidateRegion:]):
22         (-[WebBaseNetscapePluginView setVariable:value:]):
24 2008-10-15  Geoffrey Garen  <ggaren@apple.com>
26         Reviewed by Cameron Zwarich.
28         Fixed https://bugs.webkit.org/show_bug.cgi?id=21345
29         Start the debugger without reloading the inspected page
31         * WebInspector/WebInspector.mm:
32         (-[WebInspector startDebuggingJavaScript:]): Updated for rename.
34 2008-10-14  Maxime Britto  <britto@apple.com>
36         Reviewed by Darin Adler.
38         Added SPI to use WebCore's TextIterator with WebKit.
40         * WebView/WebTextIterator.h: Added.
41         * WebView/WebTextIterator.mm: Added.
42         (-[WebTextIteratorPrivate dealloc]):
43         (-[WebTextIterator dealloc]):
44         (-[WebTextIterator initWithRange:]): Creates a TextIterator 
45         instance
46         (-[WebTextIterator advance]): Asks the iterator to advance() .
47         (-[WebTextIterator currentNode]): Returns the current DOMNode from 
48         the iterator
49         (-[WebTextIterator currentText]): Returns the current text from the 
50         iterator
51         (-[WebTextIterator atEnd]): Indicated whether the iterator has 
52         reached the end of the range.
53         * WebView/WebView.h:
54         * WebView/WebView.mm:
55         (-[WebView textIteratorForRect:]): Returns a WebTextIterator with 
56         the DOMRange contained in the rectangle given as a parameter.
58 2008-10-15  Timothy Hatcher  <timothy@apple.com>
60         Clean up user agent generation to simplify the _standardUserAgentWithApplicationName:
61         class method to not require a WebKit version.
63         Reviewed by Darin Adler.
65         * WebView/WebView.mm:
66         (+[WebView _standardUserAgentWithApplicationName:]): Create the WebKit version.
67         (-[WebView WebCore::_userAgentForURL:]): Use the simplified _standardUserAgentWithApplicationName:.
68         Remove code that created the WebKit version.
69         * WebView/WebViewPrivate.h: Change the method name of _standardUserAgentWithApplicationName:.
71 2008-10-14  Timothy Hatcher  <timothy@apple.com>
73         Make the user agent generation method a class method and cache the WebKit
74         version in a static to prevent generating it every time. This is needed
75         clean up to fix <rdar://problem/6292331>. Moved all code to WebPrivate so
76         the class method can be in the WebViewPrivate.h header.
78         Reviewed by John Sullivan.
80         * WebView/WebView.mm:
81         (callGestalt): Moved. Same code.
82         (createMacOSXVersionString): Moved. Same code.
83         (createUserVisibleWebKitVersionString): Moved from _userVisibleBundleVersionFromFullVersion:
84         and returns a copied string.
85         (+[WebView _standardUserAgentWithApplicationName:andWebKitVersion:]): Made into a class method.
86         (-[WebView WebCore::_userAgentForURL:]): Changed to cache the WebKit version.
87         * WebView/WebViewPrivate.h: Added +_standardUserAgentWithApplicationName:andWebKitVersion:.
89 2008-10-13  Maciej Stachowiak  <mjs@apple.com>
91         Rubber stamped by Mark Rowe.
92         
93         - use gcc 4.2 when building with Xcode 3.1 or newer on Leopard, even though this is not the default
95         * Configurations/DebugRelease.xcconfig:
97 2008-10-11  Dan Bernstein  <mitz@apple.com>
99         Reviewed by Sam Weinig.
101         - rename _setAlwaysUseATSU to _setAlwaysUsesComplexTextCodePath and
102           update it for the renamed WebCoreTextRenderer method; keep the old
103           method around for clients that use it
105         * WebView/WebView.mm:
106         (+[WebView _setAlwaysUseATSU:]):
107         (+[WebView _setAlwaysUsesComplexTextCodePath:]):
108         * WebView/WebViewPrivate.h:
110 2008-10-09  Timothy Hatcher  <timothy@apple.com>
112         Don't convert JavaScriptCore header include paths to WebKit paths. This was needed
113         back when NPAPI and WebScriptObject migrated from JavaScriptCore. Also remove
114         JavaScriptCore from the VPATH.
116         Reviewed by Sam Weinig.
118         * MigrateHeaders.make:
120 2008-10-08  Darin Adler  <darin@apple.com>
122         Reviewed by Cameron Zwarich.
124         - https://bugs.webkit.org/show_bug.cgi?id=21403
125           Bug 21403: use new CallFrame class rather than Register* for call frame manipulation
127         * WebView/WebScriptDebugger.mm:
128         (WebScriptDebugger::WebScriptDebugger): Update since DebuggerCallFrame is simpler now.
130 2008-10-08  Timothy Hatcher  <timothy@apple.com>
132         Roll out r37427 because it causes an infinite recursion loading about:blank.
134         https://bugs.webkit.org/show_bug.cgi?id=21476
136 2008-10-08  Darin Adler  <darin@apple.com>
138         Reviewed by Cameron Zwarich.
140         - https://bugs.webkit.org/show_bug.cgi?id=21403
141           Bug 21403: use new CallFrame class rather than Register* for call frame manipulation
143         * WebView/WebScriptDebugger.mm:
144         (WebScriptDebugger::WebScriptDebugger): Update since DebuggerCallFrame is simpler now.
146 2008-10-07  David Hyatt  <hyatt@apple.com>
148         Move viewless WebKit methods that Safari needs from WebViewInternal to WebViewPrivate.
150         Reviewed by Tim Hatcher
152         * WebView/WebView.mm:
153         (WebKitInitializeApplicationCachePathIfNecessary):
154         (-[WebView _registerDraggedTypes]):
155         (-[WebView _usesDocumentViews]):
156         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
157         (-[WebView _initWithFrame:frameName:groupName:usesDocumentViews:]):
158         (-[WebView isFlipped]):
159         (-[WebView viewWillDraw]):
160         * WebView/WebViewInternal.h:
161         * WebView/WebViewPrivate.h:
163 2008-10-07  David Hyatt  <hyatt@apple.com>
165         Fix crash in isFlipped.  Null check _private since isFlipped can get called from within AppKit
166         machinery during teardown of the WebView.
168         Reviewed by Adam Roben
170         * WebView/WebView.mm:
171         (-[WebView isFlipped]):
173 2008-10-07  David Hyatt  <hyatt@apple.com>
175         Make viewless WebKit update focused and active state when the window becomes and loses key.
176         The focus controller has been patched to understand that in viewless mode it can recur down and
177         update all of the frames, which is why this code works now when placed just on the WebView.
179         Reviewed by Adam Roben
181         * WebView/WebView.mm:
182         (-[WebView addWindowObservers]):
183         (-[WebView removeWindowObservers]):
184         (-[WebView viewWillMoveToWindow:]):
185         (-[WebView viewDidMoveToWindow]):
186         (-[WebView _updateFocusedAndActiveState]):
187         (-[WebView _windowDidBecomeKey:]):
188         (-[WebView _windowDidResignKey:]):
189         (-[WebView _windowWillOrderOnScreen:]):
191 2008-10-07  David Hyatt  <hyatt@apple.com>
193         Make sure the parent visibility state is set up properly on the outermost ScrollView widget.
194         This fixes the repainting issues with viewless WebKit on Mac.
196         Reviewed by Sam Weinig
198         * WebCoreSupport/WebFrameLoaderClient.mm:
199         (WebFrameLoaderClient::transitionToCommittedForNewPage):
201 2008-10-07  David Hyatt  <hyatt@apple.com>
203         Make sure viewless Mac WebKit does a layout if needed before drawing.
205         Reviewed by Sam Weinig
207         * WebView/WebView.mm:
208         (-[WebView viewWillDraw]):
210 2008-10-07  David Hyatt  <hyatt@apple.com>
212         Make sure observers get hooked up to watch for size changes in viewless WebKit mode.
214         Reviewed by Sam Weinig
216         * ChangeLog:
217         * WebView/WebFrame.mm:
218         (-[WebFrame _drawRect:contentsOnly:]):
219         * WebView/WebView.mm:
220         (-[WebView viewWillDraw]):
221         (-[WebView _boundsChanged]):
222         (-[WebView addSizeObservers]):
223         (-[WebView viewDidMoveToWindow]):
224         (-[WebView viewDidMoveToSuperview]):
226 2008-10-07  David Hyatt  <hyatt@apple.com>
228         Make sure WebView listens for size changes and resizes the frame view in viewless mode.
230         Reviewed by Sam Weinig
232         * WebView/WebView.mm:
233         (-[WebView addSizeObservers]):
234         (-[WebView viewDidMoveToWindow]):
235         (-[WebView viewDidMoveToSuperview]):
237 2008-10-06  David Hyatt  <hyatt@apple.com>
239         Enable viewless Mac WebKit to paint some basic pages.
240         
241         Reviewed by Sam Weinig
243         * WebCoreSupport/WebChromeClient.mm:
244         (WebChromeClient::windowResizerRect):
245         (WebChromeClient::repaint):
246         (WebChromeClient::screenToWindow):
247         (WebChromeClient::windowToScreen):
248         (WebChromeClient::platformWindow):
249         * WebCoreSupport/WebFrameLoaderClient.h:
250         * WebCoreSupport/WebFrameLoaderClient.mm:
251         (WebFrameLoaderClient::forceLayoutForNonHTML):
252         (WebFrameLoaderClient::dispatchDidCommitLoad):
253         (WebFrameLoaderClient::transitionToCommittedForNewPage):
254         (WebFrameLoaderClient::createFrame):
255         * WebView/WebFrame.mm:
256         (-[WebFrame _drawRect:contentsOnly:]):
257         * WebView/WebFrameInternal.h:
258         * WebView/WebFrameView.mm:
259         * WebView/WebFrameViewInternal.h:
260         * WebView/WebHTMLView.mm:
261         (-[WebHTMLView drawSingleRect:]):
262         (-[WebHTMLView drawRect:]):
263         * WebView/WebView.mm:
264         (-[WebView isFlipped]):
265         (-[WebView _boundsChanged]):
266         (-[WebView _mustDrawUnionedRect:singleRects:count:]):
267         (-[WebView drawSingleRect:]):
268         (-[WebView drawRect:]):
269         (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
270         (-[WebView initWithFrame:frameName:groupName:]):
271         (-[WebView _initWithFrame:frameName:groupName:usesDocumentViews:]):
272         (-[WebView initWithCoder:]):
273         (-[WebView removeSizeObservers]):
274         (-[WebView viewWillMoveToWindow:]):
275         (-[WebView viewWillMoveToSuperview:]):
276         (-[WebView _usesDocumentViews]):
277         * WebView/WebViewInternal.h:
279 2008-10-06  Kevin Decker  <kdecker@apple.com>
281         Rubber-stamped by Anders Carlsson.
283         Rename _webkit_applicationCacheDirectoryWithBundleIdentifier to _webkit_localCacheDirectoryWithBundleIdentifier.
284         
285         * Misc/WebKitNSStringExtras.h:
286         * Misc/WebKitNSStringExtras.m:
287         (+[NSString _webkit_localCacheDirectoryWithBundleIdentifier:]):
288         * WebView/WebDataSource.mm:
289         (-[WebDataSource _transferApplicationCache:]):
290         * WebView/WebView.mm:
291         (WebKitInitializeApplicationCachePathIfNecessary):
293 2008-10-06  Anders Carlsson  <andersca@apple.com>
295         Reviewed by Sam Weinig.
297         Make WebNetscapePluginStream a WebCore::NetscapePlugInStreamLoaderClient.
298         
299         * Plugins/WebBaseNetscapePluginStream.h:
300         (WebNetscapePluginStream::~WebNetscapePluginStream):
301         * Plugins/WebBaseNetscapePluginStream.mm:
302         (WebNetscapePluginStream::didReceiveResponse):
303         (-[WebBaseNetscapePluginStream startStreamWithResponse:]):
304         (WebNetscapePluginStream::wantsAllStreams):
305         (-[WebBaseNetscapePluginStream wantsAllStreams]):
306         (WebNetscapePluginStream::didFail):
307         (-[WebBaseNetscapePluginStream destroyStreamWithError:]):
308         (WebNetscapePluginStream::didFinishLoading):
309         (-[WebBaseNetscapePluginStream finishedLoading]):
310         (WebNetscapePluginStream::didReceiveData):
311         (-[WebBaseNetscapePluginStream receivedData:]):
313 2008-10-06  Anders Carlsson  <andersca@apple.com>
315         Bring back the stop method. It was called through performSelector, which
316         is why I couldn't find any references to it.
318         * Plugins/WebBaseNetscapePluginStream.h:
319         * Plugins/WebBaseNetscapePluginStream.mm:
320         (-[WebBaseNetscapePluginStream stop]):
322 2008-10-06  Anders Carlsson  <andersca@apple.com>
324         Reviewed by Sam Weinig.
326         More conversion and cleanup.
327         
328         * Plugins/WebBaseNetscapePluginStream.h:
329         * Plugins/WebBaseNetscapePluginStream.mm:
330         (WebNetscapePluginStream::startStream):
331         (-[WebBaseNetscapePluginStream startStreamWithResponse:]):
332         * Plugins/WebBaseNetscapePluginView.mm:
333         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
335 2008-10-06  Anders Carlsson  <andersca@apple.com>
337         Reviewed by Sam Weinig.
339         Fold initWithRequestURL into initWithRequest.
340         
341         * Plugins/WebBaseNetscapePluginStream.h:
342         * Plugins/WebBaseNetscapePluginStream.mm:
343         (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
345 2008-10-06  Anders Carlsson  <andersca@apple.com>
347         Reviewed by Sam Weinig.
349         Change the init methods not to return nil on failures. (These failures never occur anyway)
350         
351         Use initWithRequest as the initializer, initWithRequestURL is going to be merged with it.
352         
353         * Plugins/WebBaseNetscapePluginStream.mm:
354         (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
355         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]):
356         * Plugins/WebBaseNetscapePluginView.mm:
357         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
359 2008-10-06  Anders Carlsson  <andersca@apple.com>
361         Reviewed by David Hyatt.
363         Convert more methods over to C++.
364         
365         * Plugins/WebBaseNetscapePluginStream.h:
366         * Plugins/WebBaseNetscapePluginStream.mm:
367         (WebNetscapePluginStream::ownerForStream):
368         (WebNetscapePluginStream::pluginCancelledConnectionError):
369         (WebNetscapePluginStream::errorForReason):
370         (-[WebBaseNetscapePluginStream errorForReason:]):
371         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
372         (WebNetscapePluginStream::cancelLoadAndDestroyStreamWithError):
373         (-[WebBaseNetscapePluginStream cancelLoadAndDestroyStreamWithError:]):
374         (WebNetscapePluginStream::deliverData):
375         (WebNetscapePluginStream::deliverDataTimerFired):
376         (WebNetscapePluginStream::deliverDataToFile):
377         (-[WebBaseNetscapePluginStream finishedLoading]):
378         (-[WebBaseNetscapePluginStream receivedData:]):
379         * Plugins/WebBaseNetscapePluginView.mm:
380         (-[WebBaseNetscapePluginView destroyStream:reason:]):
382 2008-10-06  David Hyatt  <hyatt@apple.com>
384         Add SPI for a new viewless WebKit mode.  The idea is that when this flag is set there will be no
385         views created except for the outermost WebView.
387         Reviewed by Tim Hatcher
389         * WebView/WebView.mm:
390         * WebView/WebViewInternal.h:
392 2008-10-06  Anders Carlsson  <andersca@apple.com>
394         Reviewed by David Hyatt.
396         Convert more methods over to C++.
397         
398         * Plugins/WebBaseNetscapePluginStream.h:
399         * Plugins/WebBaseNetscapePluginStream.mm:
400         (WebNetscapePluginStream::reasonForError):
401         (WebNetscapePluginStream::destroyStreamWithReason):
402         (WebNetscapePluginStream::cancelLoadWithError):
403         (-[WebBaseNetscapePluginStream cancelLoadWithError:]):
404         (WebNetscapePluginStream::destroyStreamWithError):
405         (-[WebBaseNetscapePluginStream destroyStreamWithError:]):
406         (-[WebBaseNetscapePluginStream cancelLoadAndDestroyStreamWithError:]):
407         (-[WebBaseNetscapePluginStream _deliverDataToFile:]):
408         (-[WebBaseNetscapePluginStream finishedLoading]):
409         * Plugins/WebBaseNetscapePluginView.mm:
410         (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithError:]):
412 2008-10-04  Darin Adler  <darin@apple.com>
414         Reviewed by Cameron Zwarich.
416         - https://bugs.webkit.org/show_bug.cgi?id=21295
417           Bug 21295: Replace ExecState with a call frame Register pointer
419         * WebView/WebScriptDebugger.mm:
420         (WebScriptDebugger::WebScriptDebugger): Remove 0 passed for ExecState.
422 2008-10-03  John Sullivan  <sullivan@apple.com>
424         Fixed Release build
426         * Plugins/WebBaseNetscapePluginStream.mm:
427         (WebNetscapePluginStream::destroyStream):
428         added !LOG_DISABLED guard around declaration of npErr used only in LOG
430 2008-10-03  Anders Carlsson  <andersca@apple.com>
432         Reviewed by David Hyatt.
433         
434         Convert destroyStream over to C++.
435         
436         * Plugins/WebBaseNetscapePluginStream.h:
437         * Plugins/WebBaseNetscapePluginStream.mm:
438         (WebNetscapePluginStream::destroyStream):
439         (-[WebBaseNetscapePluginStream _destroyStreamWithReason:]):
440         (-[WebBaseNetscapePluginStream _deliverData]):
442 2008-10-03  Anders Carlsson  <andersca@apple.com>
444         Reviewed by David Hyatt.
446         Use a Timer instead of -[NSObject performSelector:withObject:afterDelay];
447         
448         * Plugins/WebBaseNetscapePluginStream.h:
449         (WebNetscapePluginStream::WebNetscapePluginStream):
450         * Plugins/WebBaseNetscapePluginStream.mm:
451         (-[WebBaseNetscapePluginStream _destroyStream]):
452         (-[WebBaseNetscapePluginStream _deliverData]):
453         (WebNetscapePluginStream::deliverDataTimerFired):
455 2008-10-03  Anders Carlsson  <andersca@apple.com>
457         Reviewed by David Hyatt.
459         More plug-in stream cleanup.
460         
461         * Plugins/WebBaseNetscapePluginStream.h:
462         (WebNetscapePluginStream::create):
463         (WebNetscapePluginStream::WebNetscapePluginStream):
464         * Plugins/WebBaseNetscapePluginStream.mm:
465         (-[WebBaseNetscapePluginStream initWithFrameLoader:]):
466         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]):
467         (-[WebBaseNetscapePluginStream dealloc]):
468         (-[WebBaseNetscapePluginStream finalize]):
469         (-[WebBaseNetscapePluginStream setPlugin:]):
470         (WebNetscapePluginStream::setPlugin):
471         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
472         (-[WebBaseNetscapePluginStream _destroyStream]):
474 2008-10-03  David Hyatt  <hyatt@apple.com>
476         Remove addToDirtyRegion.
477         
478         Reviewed by Oliver Hunt
479         
480         * WebCoreSupport/WebChromeClient.h:
481         * WebCoreSupport/WebChromeClient.mm:
483 2008-10-02  David Hyatt  <hyatt@apple.com>
485         https://bugs.webkit.org/show_bug.cgi?id=21328
486         
487         Make widget invalidation more cross-platform.
488         
489         (1) Make invalidateRect a pure virtual function on Widget.  All leaf widgets must now implement this function.
490         
491         (2) Scrollbars now send invalidations through the ScrollbarClient.  windowClipRect on ScrollbarClient has been removed and replaced with this invalidation call.
492         This allows all scrollbar invalidations to go through the render tree so that transforms and reflections will be respected.
493         
494         (3) Plugins now have the native window invalidation code for windowed plugins.  Windowless plugins do a repaintRectangle on the plugin's renderer.
495         
496         (4) FrameViews now do a repaintRectangle on their owner element's renderer.
498         Reviewed by Sam Weinig
500         * WebCoreSupport/WebFrameLoaderClient.mm:
501         (PluginWidget::PluginWidget):
502         (PluginWidget::invalidateRect):
503         (NetscapePluginWidget::NetscapePluginWidget):
504         (WebFrameLoaderClient::createPlugin):
506 2008-10-02  Darin Adler  <darin@apple.com>
508         Reviewed by Geoff Garen.
510         - https://bugs.webkit.org/show_bug.cgi?id=21321
511           Bug 21321: speed up JavaScriptCore by inlining Heap in JSGlobalData
513         * Misc/WebCoreStatistics.mm:
514         (+[WebCoreStatistics javaScriptObjectsCount]): Use heap. instead of heap-> to
515         work with the heap.
516         (+[WebCoreStatistics javaScriptGlobalObjectsCount]): Ditto.
517         (+[WebCoreStatistics javaScriptProtectedObjectsCount]): Ditto.
518         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]): Ditto.
519         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]): Ditto.
520         (+[WebCoreStatistics javaScriptReferencedObjectsCount]): Ditto.
522 2008-10-02  David Hyatt  <hyatt@apple.com>
524         https://bugs.webkit.org/show_bug.cgi?id=21314
525         
526         Make scrollBackingStore cross-platform.
528         Reviewed by Sam Weinig
530         * WebCoreSupport/WebChromeClient.h:
531         * WebCoreSupport/WebChromeClient.mm:
532         (WebChromeClient::repaint):
533         (WebChromeClient::scroll):
535 2008-10-01  Geoffrey Garen  <ggaren@apple.com>
537         Reviewed by Darin Adler and Cameron Zwarich.
539         Updated for JavaScriptCore API changes: use a SourceCode instead of
540         broken out parameters; treat sourceId as intptr_t.
541         
542         We still treat sourceId as int in some cases because of DashCode. See
543         <rdar://problem/6263293> WebScriptDebugDelegate should use intptr_t for
544         sourceId, not int.
546         * WebView/WebScriptDebugger.h:
547         * WebView/WebScriptDebugger.mm:
548         (toNSString):
549         (WebScriptDebugger::sourceParsed):
550         (WebScriptDebugger::callEvent):
551         (WebScriptDebugger::atStatement):
552         (WebScriptDebugger::returnEvent):
553         (WebScriptDebugger::exception):
554         (WebScriptDebugger::willExecuteProgram):
555         (WebScriptDebugger::didExecuteProgram):
556         (WebScriptDebugger::didReachBreakpoint):
558 2008-10-01  David Hyatt  <hyatt@apple.com>
560         Move prohibitsScrolling from the Frame to the ScrollView.
562         Reviewed by Sam Weinig
564         * WebView/WebView.mm:
565         (-[WebView setProhibitsMainFrameScrolling:]):
567 2008-10-01  David Hyatt  <hyatt@apple.com>
569         https://bugs.webkit.org/show_bug.cgi?id=21282
570         
571         Make contentsToScreen/screenToContents cross-platform.  Only implemented by Mac/Win right now.
572         
573         Reviewed by Adam Roben
575         * WebCoreSupport/WebChromeClient.h:
576         * WebCoreSupport/WebChromeClient.mm:
577         (WebChromeClient::repaint):
578         (WebChromeClient::screenToWindow):
579         (WebChromeClient::windowToScreen):
581 2008-09-30   Dave Hyatt  <hyatt@apple.com>
583         https://bugs.webkit.org/show_bug.cgi?id=21269
584   
585         This patch makes the ScrollView::paint method cross-platform.  The paint method calls the base class
586         Widget paint on platforms with native widgets (Mac and wx).  Otherwise it calls a virtual function,
587         paintContents, to paint the ScrollView's contents, and then it paints each of the two scrollbars and
588         the scrollbar corner.
589         
590         The scrollbar themes are now responsible for painting scrollbar corners.  At the moment ScrollbarThemeWin still
591         paints white (which is incorrect), so a future patch will actually implement proper native scroll corner painting
592         for Windows.
593         
594         paintContents is implemented by FrameView, and replaces Frame::paint.  All of the FramePrivate member
595         variables used by Frame::paint have moved to FrameViewPrivate instead.  All callers of Frame::paint have
596         been patched to use FrameView::paintContents instead.
597        
598         Reviewed by Darin Adler
600         * WebView/WebFrame.mm:
601         (-[WebFrame _drawRect:]):
603 2008-09-30  Kevin Decker  <kdecker@apple.com>
605         Reviewed by Anders Carlsson.
607         Remove the NPDrawingModelOpenGL entirely. To my knowledge no shipping plug-in ever used it, and no other browser engine
608         ever supported it.
609                               
610         * Plugins/WebBaseNetscapePluginView.h: Removed AGL.h import and OpenGL related ivars.
611         * Plugins/WebBaseNetscapePluginView.mm: Removed soft linking for OpenGL and AGL frameworks. 
612         Also removed many methods AGL/CGL support methods that are no longer necessary.
613         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Removed NPDrawingModelOpenGL related code.
614         (-[WebBaseNetscapePluginView restorePortState:]): Ditto.
615         (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]): Ditto.
616         (-[WebBaseNetscapePluginView isNewWindowEqualToOldWindow]): Ditto.
617         (-[WebBaseNetscapePluginView setWindowIfNecessary]): Ditto.
618         (-[WebBaseNetscapePluginView stop]): Ditto.
619         (-[WebBaseNetscapePluginView dealloc]): Ditto.
620         (-[WebBaseNetscapePluginView drawRect:]): 
621         (-[WebBaseNetscapePluginView viewWillMoveToWindow:]): Ditto.
622         (-[WebBaseNetscapePluginView invalidateRegion:]): Ditto.
623         (-[WebBaseNetscapePluginView getVariable:value:]): Tell plug-ins WebKit does not support NPDrawingModelOpenGL.
624         (-[WebBaseNetscapePluginView setVariable:value:]): Removed NPDrawingModelOpenGL related code. 
625         (-[WebBaseNetscapePluginView _viewHasMoved]): Ditto.
627 2008-09-30  Dave Hyatt  <hyatt@apple.com>
629         http://bugs.webkit.org/show_bug.cgi?id=21250
630         
631         Rename updateContents to repaintContentRectangle and make it cross-platform by always sending
632         repaints up through the ChromeClient.
633         
634         Reviewed by Darin Adler
636         * WebCoreSupport/WebChromeClient.h:
637         * WebCoreSupport/WebChromeClient.mm:
638         (WebChromeClient::repaint):
640 2008-09-30  Anders Carlsson  <andersca@apple.com>
642         Reviewed by Mark Rowe and Adam Roben.
644         No need to use pointers to store C++ objects as pointers in WebViewPrivate, we can just
645         store them directly.
646         
647         * Configurations/Base.xcconfig:
648         Set GCC_OBJC_CALL_CXX_CDTORS to YES.
649         
650         * WebView/WebView.mm:
651         (-[WebViewPrivate init]):
652         (-[WebViewPrivate dealloc]):
653         (-[WebViewPrivate finalize]):
654         (-[WebView _preferencesChangedNotification:]):
655         (-[WebView setApplicationNameForUserAgent:]):
656         (-[WebView setCustomUserAgent:]):
657         (-[WebView customUserAgent]):
658         (-[WebView WebCore::_userAgentForURL:WebCore::]):
659         (-[WebView _addObject:forIdentifier:]):
660         (-[WebView _objectForIdentifier:]):
661         (-[WebView _removeObjectForIdentifier:]):
663 2008-09-29  Thiago Macieira  <thiago.macieira@nokia.com>
665         Reviewed by Simon.
667         Changed copyright from Trolltech ASA to Nokia.
668         
669         Nokia acquired Trolltech ASA, assets were transferred on September 26th 2008.
670         
672         * WebCoreSupport/WebChromeClient.h:
673         * WebCoreSupport/WebChromeClient.mm:
674         * WebCoreSupport/WebEditorClient.h:
675         * WebCoreSupport/WebEditorClient.mm:
677 2008-09-28  Timothy Hatcher  <timothy@apple.com>
679         Improves the Web Inspector node highlight so it does not scroll
680         to reveal the node in the page. This makes the highlight less
681         invasive and causes less things to change on screen. Also makes
682         the highlight redraw when the WebView draws, so it stays current
683         if the node changes on the page for any reason.
685         <rdar://problem/6115804> Don't scroll when highlighting (21000)
686         https://bugs.webkit.org/show_bug.cgi?id=21000
688         Reviewed by Dan Bernstein.
690         * WebCoreSupport/WebInspectorClient.mm:
691         (-[WebInspectorWindowController highlightNode:]): Call setNeedsDisplay:YES
692         if there is an existing highlight.
693         (-[WebInspectorWindowController didAttachWebNodeHighlight:]): Set the current
694         highlight node on the inspected WebView.
695         (-[WebInspectorWindowController willDetachWebNodeHighlight:]): Set the current
696         highlight node on the inspected WebView to nil.
697         * WebInspector/WebNodeHighlight.m:
698         (-[WebNodeHighlight setNeedsUpdateInTargetViewRect:]): Disable screen updates
699         until flush for the inspected window. Invalidate the whole highlight view since
700         we don't know the rect that needs updated since the highlight can be larger than
701         the highlighted element due to the margins and other factors.
702         * WebInspector/WebNodeHighlightView.m:
703         * WebView/WebHTMLView.mm:
704         (-[WebHTMLView drawSingleRect:]): Call setNeedsUpdateInTargetViewRect: on the
705         current highlight node.
706         * WebView/WebView.mm:
707         (-[WebViewPrivate dealloc]): Release the current highlight node.
708         (-[WebView setCurrentNodeHighlight:]): Set the current highlight node.
709         (-[WebView currentNodeHighlight]): Return the current highlight node.
710         * WebView/WebViewInternal.h:
712 2008-09-28  David Kilzer  <ddkilzer@apple.com>
714         Fix build warning in WebDefaultUIDelegate.m
716         Reviewed by Dan Bernstein.
718         This fixes a warning noticed by the clang static analyzer:
719         .../WebDefaultUIDelegate.m: In function â€˜-[WebDefaultUIDelegate webViewFirstResponder:]’:
720         .../WebDefaultUIDelegate.m:92: warning: initialization from distinct Objective-C type
722         Note that this doesn't actually cause any change in behavior since
723         the gcc compiler ignores the semi-colon anyway.
725         * DefaultDelegates/WebDefaultUIDelegate.m:
726         (-[WebDefaultUIDelegate webViewFirstResponder:]): Removed semi-colon
727         from method signature.
729 2008-09-27  David Hyatt  <hyatt@apple.com>
731         Fix for https://bugs.webkit.org/show_bug.cgi?id=21182
733         Make sure Mac null checks the view like the other platforms do now that Mac goes through WebCore
734         to call setAllowsScrolling.
736         Reviewed by Mark Rowe
738         * WebCoreSupport/WebFrameLoaderClient.mm:
739         (WebFrameLoaderClient::createFrame):
741 2008-09-27  Anders Carlsson  <andersca@apple.com>
743         Reviewed by Sam Weinig.
745         https://bugs.webkit.org/show_bug.cgi?id=21178
746         <rdar://problem/6248651>
748         Check if the plug-in is allowed to load the resource. This matches Firefox.
749         
750         * Plugins/WebBaseNetscapePluginView.mm:
751         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
753 2008-09-26  Matt Lilek  <webkit@mattlilek.com>
755         Reviewed by Tim Hatcher.
757         Update FEATURE_DEFINES after ENABLE_CROSS_DOCUMENT_MESSAGING was removed.
759         * Configurations/WebKit.xcconfig:
761 2008-09-26  David Hyatt  <hyatt@apple.com>
763         https://bugs.webkit.org/show_bug.cgi?id=21164
765         Rework concept of allowsScrolling/setAllowsScrolling to be cross-platform.
767         Reviewed by Sam Weinig
769         * WebCoreSupport/WebFrameLoaderClient.mm:
770         (WebFrameLoaderClient::createFrame):
771         * WebView/WebDynamicScrollBarsView.h:
772         * WebView/WebDynamicScrollBarsView.m:
773         * WebView/WebDynamicScrollBarsViewInternal.h:
774         * WebView/WebFrameView.mm:
775         (-[WebFrameView setAllowsScrolling:]):
776         (-[WebFrameView allowsScrolling]):
778 2008-09-26  David Hyatt  <hyatt@apple.com>
780         https://bugs.webkit.org/show_bug.cgi?id=21149
782         More refactoring to make scrollbar modes cross-platform.  Reduce the protocol that
783         WebDynamicScrollBarsView has to implement for communicating with WebCore to just three methods.
785         Reviewed by Sam Weinig
787         * WebView/WebDynamicScrollBarsView.m:
788         (-[WebDynamicScrollBarsView scrollingModes:WebCore::vertical:WebCore::]):
789         (-[WebDynamicScrollBarsView setHorizontalScrollingMode:andLock:]):
790         (-[WebDynamicScrollBarsView setVerticalScrollingMode:andLock:]):
791         (-[WebDynamicScrollBarsView setScrollingModes:vertical:andLock:]):
792         * WebView/WebDynamicScrollBarsViewInternal.h:
793         * WebView/WebFrameView.mm:
794         (-[WebFrameView setAllowsScrolling:]):
795         * WebView/WebView.mm:
796         (-[WebView setAlwaysShowVerticalScroller:]):
797         (-[WebView setAlwaysShowHorizontalScroller:]):
799 2008-09-26  David Kilzer  <ddkilzer@apple.com>
801         Fix Mac build with XSLT disabled
803         Reviewed by Alexey.
805         * Misc/WebCache.mm:
806         (+[WebCache statistics]): Populate xslStyleSheet statistics with
807         zeros if XSLT is disabled.
809 2008-09-25  David Hyatt  <hyatt@apple.com>
811         https://bugs.webkit.org/show_bug.cgi?id=21101
813         Fix the updating of the active state to not be dumb, so that viewless scrollbars repaint properly.
815         Reviewed by Tim Hatcher
817         * WebView/WebHTMLView.mm:
818         (-[WebHTMLView _updateFocusedAndActiveState]):
820 2008-09-24  Darin Adler  <darin@apple.com>
822         Reviewed by Dan Bernstein.
824         - https://bugs.webkit.org/show_bug.cgi?id=21079
825           <rdar://problem/6203938> Disallow embedding Safari-generated pages
826           (e.g bookmarks collection) in subframes
828         * DefaultDelegates/WebDefaultPolicyDelegate.m:
829         (-[WebDefaultPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
830         Use the new +[WebView _canHandleRequest:forMainFrame:] so we can give
831         a different answer for the main frame and subframes.
832         * WebCoreSupport/WebFrameLoaderClient.mm:
833         (WebFrameLoaderClient::canHandleRequest): Ditto.
835         * WebView/WebView.mm:
836         (+[WebView _canHandleRequest:forMainFrame:]): Added forMainFrame. Only look
837         for scheme-specific representations for the main frame, not subframes. 
838         (+[WebView _canHandleRequest:]): Give answer for main frame -- calls the
839         method above with YES for main frame.
841         * WebView/WebViewInternal.h: Added _canHandleRequest:forMainFrame:.
843 2008-09-23  David Hyatt  <hyatt@apple.com>
845         https://bugs.webkit.org/show_bug.cgi?id=21039
847         Teach the viewless Mac scrollbar how to avoid the NSWindow resizer.
849         Reviewed by Sam Weinig
851         * WebCoreSupport/WebChromeClient.mm:
852         (WebChromeClient::windowResizerRect):
854 2008-09-23  Dan Bernstein  <mitz@apple.com>
856         Reviewed by Beth Dakin.
858         - fix <rdar://problem/6233388> Crash beneath -[WebFrameView keyDown:]
860         Test: fast/events/keydown-remove-frame.html
862         * WebView/WebFrameView.mm:
863         (-[WebFrameView keyDown:]): Added a null check.
865 2008-09-21  Dirk Schulze  <vbs85@gmx.de>
867         Reviewed and landed by Eric Seidel.
869         Moved CGFloat definition to WebKitPrefix so CGFloat can be used more
870         freely throughout WebCore without worrying about breaking Tiger.
872         * Misc/WebTypesInternal.h: Removed it from here.
873         * WebKitPrefix.h: Added it here.
875 2008-09-20  Matt Lilek  <webkit@mattlilek.com>
877         Reviewed by Tim Hatcher.
879         Revert r35688. We use a textured window on Leopard, which does not have the
880         square corners of the standard Aqua window on Tiger.
882         * WebCoreSupport/WebInspectorClient.mm:
883         (-[WebInspectorWindowController window]): Add back the call to WKNSWindowMakeBottomCornersSquare.
885 2008-09-19  Darin Adler  <darin@apple.com>
887         Reviewed by Dan Bernstein.
889         - speculative fix for https://bugs.webkit.org/show_bug.cgi?id=20943
890           Assertion failure in RefCountedLeakCounter::cancelMessageSuppression() when closing a window
892         * WebView/WebView.mm:
893         (-[WebView _commonInitializationWithFrameName:groupName:]): Moved call to
894         RefCountedLeakCounter::suppressMessages in here.
895         (-[WebView initWithFrame:frameName:groupName:]): Moved it out of here.
897 2008-09-18  Mark Rowe  <mrowe@apple.com>
899         Reviewed by Dan Bernstein.
901         Add SPI to WebView to allow DRT to clear the main frame's name between tests.
903         * WebView/WebView.mm:
904         (-[WebView _clearMainFrameName]):
905         * WebView/WebViewPrivate.h:
907 2008-09-18  Darin Adler  <darin@apple.com>
909         Reviewed by Sam Weinig.
911         - fix https://bugs.webkit.org/show_bug.cgi?id=20925
912           LEAK messages appear every time I quit
914         * WebView/WebPreferences.mm:
915         (-[WebPreferences setFullDocumentTeardownEnabled:]): Removed unneeded call
916         to setLogLeakMessages.
917         * WebView/WebView.mm:
918         (-[WebView _closeWithFastTeardown]): Call RefCountedLeakCounter::suppressMessages,
919         telling it that we can't track leaks because at least one WebView was closed with
920         fast teardown.
921         (-[WebView _close]): Removed unneeded call to setLogLeakMessages. Added a call to
922         cancelMessageSuppression since the WebView is no longer open.
923         Added an explicit garbage collect to help with the case where we're closing during
924         the quit process -- the garbageCollectSoon() calls done inside WebCore won't help
925         us in that case.
926         (-[WebView initWithFrame:frameName:groupName:]): Call
927         RefCountedLeakCounter::suppressMessages telling it that we can't track leaks
928         because at least one WebView is currently open.
930 2008-09-18  Anders Carlsson  <andersca@apple.com>
932         Reviewed by Adam Roben.
934         Move the remainder of the stream ivars to the C++ object.
935         
936         * Plugins/WebBaseNetscapePluginStream.h:
937         (WebNetscapePluginStream::WebNetscapePluginStream):
938         * Plugins/WebBaseNetscapePluginStream.mm:
939         (-[WebBaseNetscapePluginStream _pluginCancelledConnectionError]):
940         (-[WebBaseNetscapePluginStream initWithFrameLoader:]):
941         (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
942         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]):
943         (-[WebBaseNetscapePluginStream dealloc]):
944         (-[WebBaseNetscapePluginStream finalize]):
945         (-[WebBaseNetscapePluginStream setPlugin:]):
946         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
947         (-[WebBaseNetscapePluginStream start]):
948         (-[WebBaseNetscapePluginStream stop]):
949         (-[WebBaseNetscapePluginStream wantsAllStreams]):
950         (-[WebBaseNetscapePluginStream _destroyStream]):
951         (-[WebBaseNetscapePluginStream _destroyStreamWithReason:]):
952         (-[WebBaseNetscapePluginStream cancelLoadWithError:]):
953         (-[WebBaseNetscapePluginStream _deliverData]):
955 2008-09-17  David Hyatt  <hyatt@apple.com>
957         Make the notion of Widget having an underlying native widget cross-platform.
959         Reviewed by Sam Weinig
961         * WebCoreSupport/WebFrameLoaderClient.mm:
962         (NetscapePluginWidget::handleEvent):
963         * WebView/WebFrame.mm:
964         (-[WebFrame _dragSourceMovedTo:]):
965         (-[WebFrame _dragSourceEndedAt:operation:]):
966         * WebView/WebFrameView.mm:
967         (-[WebFrameView _install]):
968         * WebView/WebRenderNode.mm:
969         (copyRenderNode):
971 2008-09-16  Anders Carlsson  <andersca@apple.com>
973         Reviewed by Cameron Zwarich.
975         Move more instance variables down to the C++ class.
977         * Plugins/WebBaseNetscapePluginStream.h:
978         (WebNetscapePluginStream::WebNetscapePluginStream):
979         * Plugins/WebBaseNetscapePluginStream.mm:
980         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]):
981         (-[WebBaseNetscapePluginStream dealloc]):
982         (-[WebBaseNetscapePluginStream finalize]):
983         (-[WebBaseNetscapePluginStream transferMode]):
984         (-[WebBaseNetscapePluginStream plugin]):
985         (-[WebBaseNetscapePluginStream setPlugin:]):
986         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
987         (-[WebBaseNetscapePluginStream wantsAllStreams]):
988         (-[WebBaseNetscapePluginStream _destroyStream]):
989         (-[WebBaseNetscapePluginStream _destroyStreamWithReason:]):
990         (-[WebBaseNetscapePluginStream _deliverData]):
991         (-[WebBaseNetscapePluginStream _deliverDataToFile:]):
992         (-[WebBaseNetscapePluginStream finishedLoading]):
993         (-[WebBaseNetscapePluginStream receivedData:]):
995 2008-09-16  Anders Carlsson  <andersca@apple.com>
997         Reviewed by Dave Hyatt.
999         Move a bunch of instance variables into the C++ class.
1000         
1001         * Plugins/WebBaseNetscapePluginStream.h:
1002         * Plugins/WebBaseNetscapePluginStream.mm:
1003         (-[WebBaseNetscapePluginStream _pluginCancelledConnectionError]):
1004         (-[WebBaseNetscapePluginStream errorForReason:]):
1005         (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
1006         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]):
1007         (-[WebBaseNetscapePluginStream dealloc]):
1008         (-[WebBaseNetscapePluginStream setRequestURL:]):
1009         (-[WebBaseNetscapePluginStream setResponseURL:]):
1010         (-[WebBaseNetscapePluginStream setMIMEType:]):
1011         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
1012         (-[WebBaseNetscapePluginStream _destroyStream]):
1013         (-[WebBaseNetscapePluginStream _destroyStreamWithReason:]):
1014         (-[WebBaseNetscapePluginStream _deliverData]):
1015         (-[WebBaseNetscapePluginStream receivedData:]):
1017 2008-09-16  Anders Carlsson  <andersca@apple.com>
1019         Reviewed by Dave Hyatt.
1021         Add a new WebNetscapePluginStream C++ class. The idea is that it is supposed to replace the Obj-C 
1022         WebBaseNetscapePluginStream class. The plan is to gradually move/rewrite code from the Obj-C class to the C++ class
1023         until the C++ class can replace the Obj-C class.
1024         
1025         * Plugins/WebBaseNetscapePluginStream.h:
1026         (WebNetscapePluginStream::create):
1027         (WebNetscapePluginStream::WebNetscapePluginStream):
1028         * Plugins/WebBaseNetscapePluginStream.mm:
1029         (-[WebBaseNetscapePluginStream initWithFrameLoader:]):
1030         (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
1031         (-[WebBaseNetscapePluginStream dealloc]):
1032         (-[WebBaseNetscapePluginStream finalize]):
1034 2008-09-16  Anders Carlsson  <andersca@apple.com>
1036         Reviewed by Dave Hyatt.
1038         Instead of storing a pointer to NPP method individually, just store a pointer to the NPNetscapeFuncs vtable.
1039         
1040         * Plugins/WebBaseNetscapePluginStream.h:
1041         * Plugins/WebBaseNetscapePluginStream.mm:
1042         (-[WebBaseNetscapePluginStream setPlugin:]):
1043         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
1044         (-[WebBaseNetscapePluginStream wantsAllStreams]):
1045         (-[WebBaseNetscapePluginStream _destroyStream]):
1046         (-[WebBaseNetscapePluginStream _deliverData]):
1047         * Plugins/WebNetscapePluginPackage.h:
1048         * Plugins/WebNetscapePluginPackage.m:
1049         (-[WebNetscapePluginPackage pluginFuncs]):
1051 2008-09-16  Anders Carlsson  <andersca@apple.com>
1053         Reviewed by Dave Hyatt.
1055         Remove references to WebNetscapePluginStream.
1056         
1057         * Plugins/WebBaseNetscapePluginView.h:
1058         * Plugins/WebNetscapePluginEmbeddedView.h:
1060 2008-09-15  Dan Bernstein  <mitz@apple.com>
1062         Reviewed by Dave Hyatt.
1064         - fix https://bugs.webkit.org/show_bug.cgi?id=20860
1065           REGRESSION: Crash in RenderLayer::hasVisibleContent() loading wavy.com
1067         * WebView/WebFrame.mm:
1068         (-[WebFrame _getVisibleRect:]): Changed to check if the RenderPart has
1069         layout before accessing it, instead of checking if the frame inside it
1070         has layout.
1072 2008-09-15  Chris Fleizach  <cfleizach@apple.com>
1074         Reviewed by Darin Adler, Beth Dakin
1076         Support strings for AXLists
1078         * WebCoreSupport/WebViewFactory.mm:
1079         (-[WebViewFactory AXDefinitionListTermText]):
1080         (-[WebViewFactory AXDefinitionListDefinitionText]):
1082 2008-09-15  Anders Carlsson  <andersca@apple.com>
1084         Reviewed by Mitz.
1086         Merge WebNetscapePluginStream into WebBaseNetscapePluginStream.
1088         * Plugins/WebBaseNetscapePluginStream.h:
1089         * Plugins/WebBaseNetscapePluginStream.mm:
1090         (-[WebBaseNetscapePluginStream initWithFrameLoader:]):
1091         (-[WebBaseNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
1092         (-[WebBaseNetscapePluginStream dealloc]):
1093         (-[WebBaseNetscapePluginStream finalize]):
1094         (-[WebBaseNetscapePluginStream start]):
1095         (-[WebBaseNetscapePluginStream stop]):
1096         (-[WebBaseNetscapePluginStream cancelLoadWithError:]):
1097         * Plugins/WebBaseNetscapePluginView.mm:
1098         (-[WebBaseNetscapePluginView pluginView:receivedResponse:]):
1099         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
1100         * Plugins/WebNetscapePluginEmbeddedView.mm:
1101         * Plugins/WebNetscapePluginStream.h: Removed.
1102         * Plugins/WebNetscapePluginStream.mm: Removed.
1104 2008-09-12  John Sullivan  <sullivan@apple.com>
1106         Fixed <rdar://problem/6110941> Clicking the print button in PDF content does nothing
1108         Reviewed by Darin Adler
1110         * WebView/WebPDFView.mm:
1111         (-[WebPDFView PDFViewPerformPrint:]):
1112         Implemented PDFKit delegate method that's called after a Print action in the PDF content
1114 2008-09-12  Dan Bernstein  <mitz@apple.com>
1116         Reviewed by John Sullivan.
1118         - fix a crash in -visibleRect when it is called during WebFrameView deallocation
1120         * WebView/WebFrameView.mm:
1121         (-[WebFrameView visibleRect]): Added an early return if _private is 0.
1123 2008-09-11  Dan Bernstein  <mitz@apple.com>
1125         Reviewed by John Sullivan.
1127         - eliminate excessive repainting when a clipped iframe is moved (noticed in <rdar://problem/6204032>)
1129         * WebView/WebFrame.mm:
1130         (-[WebFrame _getVisibleRect:]): Added. If the frame is in a RenderPart
1131         and has layout, gets the visible rect of the RenderPart and returns
1132         YES. Returns NO otherwise.
1133         * WebView/WebFrameInternal.h:
1134         * WebView/WebFrameView.mm:
1135         (-[WebFrameView visibleRect]): Added. Overrides this NSView method to
1136         take clipping in the render tree into account.
1138 2008-09-09  Dan Bernstein  <mitz@apple.com>
1140         - Tiger build fix
1142         * WebCoreSupport/WebSystemInterface.m:
1143         (InitWebCoreSystemInterface):
1145 2008-09-09  Dan Bernstein  <mitz@apple.com>
1147         Reviewed by Darin Adler.
1149         - WebKit part of <rdar://problem/6206244> Use alternate character-to-glyph interface on Leopard
1151         * WebCoreSupport/WebSystemInterface.m:
1152         (InitWebCoreSystemInterface):
1154 2008-09-07  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
1156         Reviewed by Maciej Stachowiak.
1158         Bug 20704: Replace the KJS namespace
1159         <https://bugs.webkit.org/show_bug.cgi?id=20704>
1161         Rename the KJS namespace to JSC.
1163         * Misc/WebCoreStatistics.mm:
1164         * Plugins/WebBaseNetscapePluginStream.mm:
1165         (-[WebBaseNetscapePluginStream wantsAllStreams]):
1166         * Plugins/WebBaseNetscapePluginView.mm:
1167         (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]):
1168         (-[WebBaseNetscapePluginView setWindowIfNecessary]):
1169         (-[WebBaseNetscapePluginView start]):
1170         (-[WebBaseNetscapePluginView createPluginScriptableObject]):
1171         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
1172         (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]):
1173         (-[WebBaseNetscapePluginView loadPluginRequest:]):
1174         (-[WebBaseNetscapePluginView _printedPluginBitmap]):
1175         * Plugins/WebPluginController.mm:
1176         (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
1177         (-[WebPluginController startAllPlugins]):
1178         (-[WebPluginController stopAllPlugins]):
1179         (-[WebPluginController addPlugin:]):
1180         (-[WebPluginController destroyPlugin:]):
1181         (-[WebPluginController destroyAllPlugins]):
1182         * WebView/WebFrame.mm:
1183         * WebView/WebScriptDebugDelegate.mm:
1184         * WebView/WebScriptDebugger.h:
1185         * WebView/WebScriptDebugger.mm:
1186         * WebView/WebView.mm:
1187         (-[WebViewPrivate init]):
1189 2008-09-05  Timothy Hatcher  <timothy@apple.com>
1191         Correct a typo in the setApplicationChromeModeEnabledEnabled:
1192         method name, remove the extra "Enabled".
1194         * WebView/WebPreferences.mm:
1195         * WebView/WebPreferencesPrivate.h:
1197 2008-09-04  Mark Rowe  <mrowe@apple.com>
1199         Reviewed by Eric Seidel.
1201         Fix https://bugs.webkit.org/show_bug.cgi?id=20639.
1202         Bug 20639: ENABLE_DASHBOARD_SUPPORT does not need to be a FEATURE_DEFINE
1204         * Configurations/WebKit.xcconfig: Remove ENABLE_DASHBOARD_SUPPORT from FEATURE_DEFINES.
1206 2008-09-03  Eric Seidel  <eric@webkit.org>
1208         Reviewed by Sam.
1210         Clean up Platform.h and add PLATFORM(CHROMIUM), PLATFORM(SKIA) and USE(V8_BINDINGS)
1212         * Configurations/WebKit.xcconfig:
1213         * WebKitPrefix.h: add rules for V8_BINDINGS
1215 2008-09-01  Adam Barth  <abarth@webkit.org>
1217         Reviewed by Sam Weinig.
1219         https://bugs.webkit.org/show_bug.cgi?id=19760
1221         Add a linked-on-or-after check to prevent substitute data from loading
1222         local resources on newer users of WebKit.
1224         * Misc/WebKitVersionChecks.h:
1225         * WebView/WebView.mm:
1226         (-[WebView _commonInitializationWithFrameName:groupName:]):
1228 2008-08-29  Brady Eidson  <beidson@apple.com>
1230         Reviewed by Anders
1232         Fix regression I introducted in 35946
1233         Already covered by media/video-click-dlbclick-standalone.html
1235         * WebView/WebHTMLRepresentation.mm:
1236         (-[WebHTMLRepresentation receivedData:withDataSource:]): Cancel the load here after
1237           calling [WebFrame _receivedData:] which more closely follows the path taken by PluginDocuments
1239 2008-08-28  Kevin McCullough  <kmccullough@apple.com>
1241         Reviewed by Geoff.
1243         <rdar://problem/6095949> REGRESSION (5525.8-6527.1?): "this" is null
1244         when you first hit a breakpoint in Dashcode
1245         - We wanted to reset the callframe whenever eval() was called but
1246         dashcode uses eval() when broken to evaluate the state of the current
1247         call frame.
1249         * WebView/WebScriptDebugger.mm:
1250         (WebScriptDebugger::willExecuteProgram):
1251         (WebScriptDebugger::didExecuteProgram):
1253 2008-08-27  Robert Kroeger  <rjkroege@liqui.org>
1255         Tweaked by Sam Weinig.
1257         Reviewed by Eric Seidel.
1259         Fix https://bugs.webkit.org/show_bug.cgi?id=6595
1260         <rdar://problem/4432150>
1261         Right-click does not fire mouseup event
1263         Adds a rightMouseUp handler to the WebHTMLView.
1265         The added method generates mouseup events for button 2.  The result
1266         is that webkit will deliver mousedown and mouseup events for button
1267         2 in a fashion identical to FireFox and will retain event ordering
1268         identical to Internet Explorer.
1270         Test: fast/events/mouseup-from-button2.html
1272         * WebView/WebHTMLView.mm:
1273         (-[WebHTMLView rightMouseUp:]):
1275 2008-08-27  Timothy Hatcher  <timothy@apple.com>
1277         Add support for support for -webkit-appearance: default-button on the Mac platform.
1279         <rdar://problem/6173530>
1281         Reviewed by Dave Hyatt.
1283         * WebCoreSupport/WebSystemInterface.m:
1284         (InitWebCoreSystemInterface): Init AdvanceDefaultButtonPulseAnimation.
1285         * WebView/WebPreferenceKeysPrivate.h: Added WebKitApplicationChromeModeEnabledPreferenceKey.
1286         * WebView/WebPreferences.mm:
1287         (+[WebPreferences initialize]): Set WebKitApplicationChromeModeEnabledPreferenceKey to NO.
1288         (-[WebPreferences applicationChromeModeEnabled]): Added.
1289         (-[WebPreferences setApplicationChromeModeEnabledEnabled:]): Added.
1290         * WebView/WebPreferencesPrivate.h:
1291         * WebView/WebView.mm:
1292         (-[WebView _preferencesChangedNotification:]): Call Settings::setApplicationChromeMode
1293         with the value of -[WebPreferences applicationChromeModeEnabled].
1295 2008-08-27  Brady Eidson  <beidson@apple.com>
1297         Reviewed by Anders
1299         <rdar://problem/6134133> - Crash when loading large movie as a standalone document
1301         * WebCoreSupport/WebFrameLoaderClient.h:
1302         * WebCoreSupport/WebFrameLoaderClient.mm:
1303         (WebFrameLoaderClient::pluginWillHandleLoadError):
1305 2008-08-20  Dan Bernstein  <mitz@apple.com>
1307         Rubber-stamped by John Sullivan.
1309         - rename shouldUpdateWhileHidden to shouldUpdateWhileOffscreen,
1310           rename related methods and variables accordingly, and make
1311           -setShouldUpdateWhileOffscreen: and -shouldUpdateWhileOffscreen
1312           WebView API.
1314         * WebCoreSupport/WebFrameLoaderClient.mm:
1315         (WebFrameLoaderClient::transitionToCommittedForNewPage):
1316         * WebView/WebFrame.mm:
1317         (-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]):
1318         * WebView/WebFrameInternal.h:
1319         * WebView/WebHTMLView.mm:
1320         (-[WebHTMLView windowWillOrderOnScreen:]):
1321         * WebView/WebView.h:
1322         * WebView/WebView.mm:
1323         (-[WebViewPrivate init]):
1324         (-[WebView setBackgroundColor:]):
1325         (-[WebView setDrawsBackground:]):
1326         (-[WebView setShouldUpdateWhileOffscreen:]):
1327         (-[WebView shouldUpdateWhileOffscreen]):
1328         * WebView/WebViewPrivate.h:
1330 2008-08-18  Mark Rowe  <mrowe@apple.com>
1332         Reviewed by Darin Adler.
1334         Switch to non-deprecated NSFileManager API.
1336         In order to minimize #if's the new NSFileManager APIs have been implemented for
1337         Tiger and call sites updated to use the new methods.
1339         * Misc/WebIconDatabase.mm:
1340         (importToWebCoreFormat):
1341         * Misc/WebKitNSStringExtras.m:
1342         (-[NSString _webkit_fixedCarbonPOSIXPath]):
1343         * Misc/WebKitSystemBits.m:
1344         * Misc/WebNSFileManagerExtras.h:
1345         * Misc/WebNSFileManagerExtras.m: Remove implementations of methods that are not used.
1346         (-[NSFileManager _webkit_backgroundRemoveFileAtPath:]):
1347         (-[NSFileManager attributesOfFileSystemForPath:error:]): Implement new API for Tiger in terms of Tiger API.
1348         (-[NSFileManager contentsOfDirectoryAtPath:error:]): Ditto.
1349         (-[NSFileManager moveItemAtPath:toPath:error:]): Ditto.
1350         (-[NSFileManager removeItemAtPath:error:]): Ditto.
1351         * Plugins/WebPluginDatabase.mm:
1352         (-[WebPluginDatabase _scanForNewPlugins]):
1354 2008-08-20  Josh Aas  <joshmoz@gmail.com>
1356         Reviewed and landed by Anders.
1358         <rdar://problem/6163636> 
1359         rename NPCocoaEvent's "event" struct to "data" (20446)
1361         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
1362         (WebNetscapePluginEventHandlerCocoa::drawRect):
1363         (WebNetscapePluginEventHandlerCocoa::sendMouseEvent):
1364         (WebNetscapePluginEventHandlerCocoa::flagsChanged):
1365         (WebNetscapePluginEventHandlerCocoa::sendKeyEvent):
1366         (WebNetscapePluginEventHandlerCocoa::windowFocusChanged):
1367         (WebNetscapePluginEventHandlerCocoa::focusChanged):
1369 2008-08-20  Beth Dakin  <bdakin@apple.com>
1371         Reviewed by Darin Adler.
1373         Fix for <rdar://problem/6145626>
1374         Allows a WebKit client to mark a frame as not-text-searchable 
1375         through SPI.
1377         * WebView/WebFrame.mm:
1378         (-[WebFrame _setExcludeFromTextSearch:]):
1379         * WebView/WebFramePrivate.h:
1381 2008-08-19  Alexey Proskuryakov  <ap@webkit.org>
1383         Reviewed by Geoff Garen.
1385         Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
1387         * ForwardingHeaders/kjs/JSLock.h: Added.
1388         * Misc/WebCoreStatistics.mm:
1389         (+[WebCoreStatistics javaScriptObjectsCount]):
1390         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
1391         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
1392         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
1393         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
1394         (+[WebCoreStatistics shouldPrintExceptions]):
1395         (+[WebCoreStatistics setShouldPrintExceptions:]):
1396         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
1397         * Plugins/WebBaseNetscapePluginStream.mm:
1398         (-[WebBaseNetscapePluginStream wantsAllStreams]):
1399         * Plugins/WebBaseNetscapePluginView.mm:
1400         (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]):
1401         (-[WebBaseNetscapePluginView setWindowIfNecessary]):
1402         (-[WebBaseNetscapePluginView start]):
1403         (-[WebBaseNetscapePluginView createPluginScriptableObject]):
1404         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
1405         (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]):
1406         (-[WebBaseNetscapePluginView loadPluginRequest:]):
1407         (-[WebBaseNetscapePluginView _printedPluginBitmap]):
1408         * Plugins/WebPluginController.mm:
1409         (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
1410         (-[WebPluginController startAllPlugins]):
1411         (-[WebPluginController stopAllPlugins]):
1412         (-[WebPluginController addPlugin:]):
1413         (-[WebPluginController destroyPlugin:]):
1414         (-[WebPluginController destroyAllPlugins]):
1415         * WebView/WebFrame.mm:
1416         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
1417         * WebView/WebScriptDebugDelegate.mm:
1418         (-[WebScriptCallFrame evaluateWebScript:]):
1419         * WebView/WebView.mm:
1420         (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
1422 2008-08-19  Timothy Hatcher  <timothy@apple.com>
1424         Fixes the Web Inspector flashing white while resizing after
1425         highlighting a page element. Calling disableScreenUpdatesUntilFlush
1426         when attaching and detaching the Inspector page highlight is bad,
1427         since the browser window might not flush again for a while. So screen
1428         updates could be disabled for long periods of time, causing backing store
1429         flashing while resizing. There is no need to call disableScreenUpdatesUntilFlush
1430         when attaching or detaching the child window.
1432         Reviewed by John Sullivan and Kevin McCullough.
1434         * WebInspector/WebNodeHighlight.m:
1435         (-[WebNodeHighlight attach]): Remove the call to disableScreenUpdatesUntilFlush.
1436         (-[WebNodeHighlight detach]): Ditto.
1438 2008-08-19  Timothy Hatcher  <timothy@apple.com>
1440         Correctly remembers the attached state of the Web Inspector so
1441         it opens in that state for the next window, or next launch.
1443         Reviewed by Kevin McCullough.
1445         * WebCoreSupport/WebInspectorClient.mm:
1446         (-[WebInspectorWindowController attach]): Set WebKitInspectorAttachedKey
1447         to YES in the user defaults.
1448         (-[WebInspectorWindowController detach]): Set WebKitInspectorAttachedKey
1449         to NO in the user defaults.
1451 2008-08-18  Alexey Proskuryakov  <ap@webkit.org>
1453         Reviewed by Dan Bernstein.
1455         https://bugs.webkit.org/show_bug.cgi?id=19347
1456         <rdar://problem/5977562> Input methods do not work after switching to a password field
1457         and back.
1459         Fix <rdar://problem/5522011> (The content of the password field of Safari is displayed by
1460         reconversion) in a different way which doesn't conflict with context caching performed
1461         by AppKit.
1463         This original bug does not really occur in ToT or shipping Safari under Mac OS X 10.5.4,
1464         because input methods are disabled in password fields. Attempting to reconvert text typed
1465         with Romaji only yields a string of bullets. Still, it is probably better to match Cocoa
1466         password field behavior and disable reconversion completely.
1468         * WebView/WebHTMLView.mm:
1469         (isInPasswordField): Factored out code to determine that the current selection is in
1470         a password field.
1471         (inputContext): Removed a hack that was breaking TSMGetActiveDocument().
1472         (-[WebHTMLView attributedSubstringFromRange:]): Check for password fields.
1473         (-[WebHTMLView textStorage]): Ditto.
1475 2008-08-12  Darin Adler  <darin@apple.com>
1477         Reviewed by Geoff.
1479         - eliminate JSValue::type()
1481         * WebView/WebView.mm:
1482         (aeDescFromJSValue): Rewrite to use the JSValue::is functions instead
1483         of a switch on JSValue::type().
1485 2008-08-17  Geoffrey Garen  <ggaren@apple.com>
1487         Reviewed by Cameron Zwarich.
1489         Made room for a free word in JSCell.
1490         
1491         (Updated for JavaScriptCore changes.)
1493 2008-08-15  Mark Rowe  <mrowe@apple.com>
1495         Rubber-stamped by Geoff Garen.
1497         <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
1499         * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
1500         between the Debug configuration and debug Production variant.
1502 2008-08-14  Sam Weinig  <sam@webkit.org>
1504         Reviewed by Geoffrey Garen and Timothy Hatcher.
1506         Add WebView SPI to set HTMLTokenizer yielding parameters.
1508         * WebView/WebView.mm:
1509         (-[WebView _setCustomHTMLTokenizerTimeDelay:]):
1510         (-[WebView _setCustomHTMLTokenizerChunkSize:]):
1511         * WebView/WebViewPrivate.h:
1513 2008-08-13  Timothy Hatcher  <timothy@apple.com>
1515         Fixes a bug where Safari's find banner would be permanently hidden
1516         when attaching or closing the Web Inspector while attached.
1518         https://bugs.webkit.org/show_bug.cgi?id=20376
1520         Reviewed by Kevin McCullough.
1522         * WebCoreSupport/WebInspectorClient.mm:
1523         (-[WebInspectorWindowController close]):
1524         Carefully manipulate the WebFrameView's frame when closing to
1525         not assume the WebFrameView's frame fills the inspected WebView.
1526         (-[WebInspectorWindowController setAttachedWindowHeight:]):
1527         Carefully manipulate the WebFrameView's frame when docking to
1528         not assume the WebFrameView plus the Web Inspector WebViews fills
1529         the full inspected WebView.
1531 2008-08-13  Stephanie Lewis  <slewis@apple.com>
1533         fix 64bit build
1535         * WebCoreSupport/WebInspectorClient.mm:
1537 2008-08-13  Timothy Hatcher  <timothy@apple.com>
1539         Remember the docked state of the Web Inspector, so it can be
1540         reopened docked if it was last docked.
1542         https://bugs.webkit.org/show_bug.cgi?id=14271
1544         Reviewed by Kevin McCullough.
1546         * WebCoreSupport/WebInspectorClient.mm:
1547         (-[WebInspectorWindowController init]): Initialize _shouldAttach
1548         to the value stored in the user defaults. If there has never
1549         been a value stored, default to being attached.
1550         (-[WebInspectorWindowController showWindow:]): Pass the attached
1551         state to InspectorController::setWindowVisible.
1553 2008-08-12  Timothy Hatcher  <timothy@apple.com>
1555         Remove the Inspector's WebView for the view hierarchy when closed
1556         while attached. This prevents it from showing in the background
1557         while the page changes.
1559         Reviewed by Kevin McCullough.
1561         * WebCoreSupport/WebInspectorClient.mm:
1562         (-[WebInspectorWindowController close:]): Call removeFromSuperview
1563         on the Inspector's WebView if it isn't attached, so it will not
1564         be visible when navigating pages while closed.
1566 2008-08-12  Timothy Hatcher  <timothy@apple.com>
1568         Make the docked Web Inspector resizable.
1570         https://bugs.webkit.org/show_bug.cgi?id=14282
1572         Reviewed by Kevin McCullough.
1574         * WebCoreSupport/WebInspectorClient.h:
1575         * WebCoreSupport/WebInspectorClient.mm:
1576         (WebInspectorClient::setAttachedWindowHeight): Call setAttachedWindowHeight:
1577         on the WebInspectorWindowController.
1578         (-[WebInspectorWindowController showWindow:]): Call setAttachedWindowHeight:.
1579         (-[WebInspectorWindowController setAttachedWindowHeight:]): Moved code
1580         from showWindow: and generalized to allow being called multiple times.
1581         Remembers the last height passed, which is used by showWindow: the next
1582         time the Inspector attaches.
1584 2008-08-12  Timothy Hatcher  <timothy@apple.com>
1586         Remove unneeded header imports from some Web Inspector files.
1588         Reviewed by Adam Roben.
1590         * WebCoreSupport/WebInspectorClient.mm:
1591         * WebInspector/WebInspector.mm:
1592         * WebInspector/WebNodeHighlightView.m:
1594 2008-08-12  Timothy Hatcher  <timothy@apple.com>
1596         Remove the call to WKNSWindowMakeBottomCornersSquare on the
1597         Web Inspector's window. This isn't needed anymore since the
1598         window style masks used always have square bottom corners.
1600         Reviewed by Adam Roben.
1602         * WebCoreSupport/WebInspectorClient.mm:
1603         (-[WebInspectorWindowController window]): Remove the call
1604         to WKNSWindowMakeBottomCornersSquare.
1606 2008-08-12  Timothy Hatcher  <timothy@apple.com>
1608         Make attaching and detaching the Web Inspector instantaneous.
1609         This also preserves the current view, other state, and keeps
1610         the script debugger attached.
1612         https://bugs.webkit.org/show_bug.cgi?id=19301
1614         Reviewed by Adam Roben.
1616         * WebCoreSupport/WebInspectorClient.mm:
1617         (-[WebInspectorWindowController close]): Only call setWindowVisible(false)
1618         when not moving windows.
1620 2008-08-12  Dan Bernstein  <mitz@apple.com>
1622         Reviewed by John Sullivan.
1624         - replace -[WebPreferences updatesWhenOffscreen] with -[WebView shouldUpdateWhileHidden]
1626         * WebCoreSupport/WebFrameLoaderClient.mm:
1627         (WebFrameLoaderClient::transitionToCommittedForNewPage):
1628         * WebView/WebFrame.mm:
1629         (-[WebFrame _updateBackgroundAndUpdatesWhileHidden]):
1630         * WebView/WebFrameInternal.h:
1631         * WebView/WebHTMLView.mm:
1632         (-[WebHTMLView windowWillOrderOnScreen:]):
1633         * WebView/WebPreferenceKeysPrivate.h:
1634         * WebView/WebPreferences.mm:
1635         (+[WebPreferences initialize]):
1636         * WebView/WebPreferencesPrivate.h:
1637         * WebView/WebView.mm:
1638         (-[WebViewPrivate init]):
1639         (-[WebView _preferencesChangedNotification:]):
1640         (-[WebView setBackgroundColor:]):
1641         (-[WebView setDrawsBackground:]):
1642         (-[WebView shouldUpdateWhileHidden]):
1643         (-[WebView setShouldUpdateWhileHidden:]):
1644         * WebView/WebViewPrivate.h:
1646 2008-08-08  Dan Bernstein  <mitz@apple.com>
1648         Reviewed by John Sullivan.
1650         - fix <rdar://problem/6130216> Exception "windowRegionBeingDrawn != nil" in NSView when caching image of a subframe
1652         This change reintroduces <https://bugs.webkit.org/show_bug.cgi?id=5195> on Leopard.
1654         * WebView/WebHTMLView.mm:
1655         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]): Removed an
1656         unsuccessful workaround for <rdar://problem/5668489>, because invoking
1657         layout may change the view hierarchy during the drawing operation,
1658         which is not supported on Leopard.
1660 2008-08-08  Maxime Britto  <britto@apple.com>
1662         Reviewed by Adele.
1664         * WebView/WebFrame.mm:
1665         (-[WebFrame _scrollDOMRangeToVisible:]):
1667 2008-08-08  Brady Eidson  <beidson@apple.com>
1669         Reviewed by Sam Weinig
1671         Fix for <rdar://problem/5865504>
1673         This bug was actually *largely* fixed by http://trac.webkit.org/changeset/35538.
1674         But with that same patch, it became possible for a WebResource to fail to initialize.  
1675         Therefore we were trying to add nil to an NSCFArray for certain situations, which is bad.
1676         Lets fix that, shall we?
1678         * WebView/WebArchive.mm:
1679         (-[WebArchive subresources]): 
1681 2008-08-06  Eric Seidel  <eric@webkit.org>
1683         Reviewed by Cameron Zwarich.
1685         Move more methods from Frame into ScriptController
1686         https://bugs.webkit.org/show_bug.cgi?id=20294
1688         The WebKit side of this move.  Calls to frame() are now frame()->script()
1690         * Plugins/WebBaseNetscapePluginView.mm:
1691         (-[WebBaseNetscapePluginView getVariable:value:]):
1692         (-[WebBaseNetscapePluginView _destroyPlugin]):
1693         * Plugins/WebPluginController.mm:
1694         (-[WebPluginController destroyPlugin:]):
1695         (-[WebPluginController destroyAllPlugins]):
1696         * WebCoreSupport/WebFrameLoaderClient.mm:
1697         * WebView/WebFrame.mm:
1698         (-[WebFrame windowObject]):
1699         * WebView/WebScriptDebugger.mm:
1700         (WebScriptDebugger::callEvent):
1701         * WebView/WebView.mm:
1702         (-[WebView windowScriptObject]):
1704 2008-08-06  Dan Bernstein  <mitz@apple.com>
1706         Reviewed by Mark Rowe.
1708         - fix an assertion failure in Cache::setCapacities()
1710         * Misc/WebKitSystemBits.h: Changed the return type of WebMemorySize()
1711         to uint64_t.
1712         * Misc/WebKitSystemBits.m:
1713         (WebMemorySize):
1714         * WebView/WebView.mm:
1715         (+[WebView _setCacheModel:]):
1717 2008-08-05  Anders Carlsson  <andersca@apple.com>
1719         Pass in the correct class here.
1720         
1721         * WebView/WebResource.mm:
1722         (-[WebResourcePrivate dealloc]):
1724 2008-08-05  Anders Carlsson  <andersca@apple.com>
1726         Reviewed by Darin Adler.
1728         <rdar://problem/6037398>
1729         ER: Deallocate WebKit objects on the main thread, even if released on secondary thread
1730         
1731         Add calls to WebCoreObjCScheduleDeallocateOnMainThread in dealloc methods of objects we expose.
1733         * Carbon/CarbonWindowAdapter.m:
1734         (-[CarbonWindowAdapter dealloc]):
1735         * History/WebBackForwardList.mm:
1736         (-[WebBackForwardList dealloc]):
1737         * History/WebHistoryItem.mm:
1738         (-[WebHistoryItem dealloc]):
1739         * Misc/WebElementDictionary.mm:
1740         (+[WebElementDictionary initialize]):
1741         (-[WebElementDictionary dealloc]):
1742         * WebCoreSupport/WebEditorClient.mm:
1743         (-[WebEditCommand dealloc]):
1744         * WebCoreSupport/WebFrameLoaderClient.mm:
1745         * WebView/WebArchive.mm:
1746         (-[WebArchivePrivate dealloc]):
1747         * WebView/WebDataSource.mm:
1748         (-[WebDataSourcePrivate dealloc]):
1749         * WebView/WebHTMLView.mm:
1750         (-[WebHTMLViewPrivate dealloc]):
1751         (-[WebHTMLView dealloc]):
1752         * WebView/WebResource.mm:
1753         (-[WebResourcePrivate dealloc]):
1755 2008-08-05  Anders Carlsson  <andersca@apple.com>
1757         Reviewed by Darin Adler.
1759         Remove MainThreadObjectDeallocator.{h|mm}.
1761         * WebView/MainThreadObjectDeallocator.h: Removed.
1762         * WebView/MainThreadObjectDeallocator.mm: Removed.
1763         
1764         * WebView/WebView.mm:
1765         (-[WebView dealloc]):
1766         Call WebCoreObjCScheduleDeallocateOnMainThread instead.
1768 2008-08-05  Anders Carlsson  <andersca@apple.com>
1770         Reviewed by Darin Adler.
1772         Make the main thread object deallocator work with subclasses.
1773         
1774         * WebView/MainThreadObjectDeallocator.h:
1775         * WebView/MainThreadObjectDeallocator.mm:
1776         (deallocCallback):
1777         Call the correct dealloc method.
1778                 
1779         (scheduleDeallocateOnMainThread):
1780         Store both the class and the instance, so we know which dealloc method to call.
1781         
1782         * WebView/WebView.mm:
1783         (-[WebViewPrivate dealloc]):
1784         Schedule deallocation on the main thread.
1786 2008-08-05  Dan Bernstein  <mitz@apple.com>
1788         Reviewed by Mark Rowe and Anders Carlsson.
1790         - fix WebMemorySize() reporting a value capped at 2GB
1792         * misc/WebKitSystemBits.m:
1793         (WebMemorySize): Changed to return the max_mem field, which, unlike
1794         memory_size, is not capped at 2GB.
1795         * WebView/WebView.mm:
1796         (+[WebView _setCacheModel:]): Made the cache sizes for over 2GB RAM the
1797         same as for 2GB, so that behavior on machines that have more than 2GB
1798         RAM is not affected by the fix to WebMemorySize().
1800 2008-08-04  Mark Rowe  <mrowe@apple.com>
1802         Build fix.
1804         * WebView/WebHTMLView.mm:
1806 2008-08-04  Mark Rowe  <mrowe@apple.com>
1808         Reviewed by Kevin Decker.
1810         Adopt the formal protocols where necessary.
1811         Final part of fix for <rdar://problem/5853147>.
1813         * WebCoreSupport/WebInspectorClient.mm:
1814         * WebView/WebHTMLView.mm:
1815         * WebView/WebView.mm:
1816         (-[WebView _openFrameInNewWindowFromMenu:]):
1818 2008-08-04  Mark Rowe  <mrowe@apple.com>
1820         Reviewed by Darin Adler.
1822         Declare empty protocols when using versions of AppKit that do not use formal protocols for delegates and data sources.
1823         Part one of fix for <rdar://problem/5853147>.
1825         * Misc/EmptyProtocolDefinitions.h:
1826         * WebKitPrefix.h:
1828 2008-08-04  Brady Eidson  <beidson@apple.com>
1830         Reviewed by Mitz Pettel
1832         Fix <rdar://problem/5820157> - Saving WebArchives of Mail attachments broken.
1834         This broke in r31355 when we stopped returning nil WebResources when there was nil
1835         resource data.
1837         * WebView/WebResource.mm:
1838         (-[WebResource _initWithCoreResource:]): Restore previous behavior of returning nil
1839           when the resource data is null.
1841 2008-08-02  Matt Lilek  <webkit@mattlilek.com>
1843         Reviewed by Tim Hatcher.
1845         Update the window gradient offset to match the inspector toolbar's new height.
1847         * WebCoreSupport/WebInspectorClient.mm:
1848         (-[WebInspectorWindowController window]):
1850 2008-08-01  Anders Carlsson  <andersca@apple.com>
1852         Reviewed by Jon.
1854         <rdar://problem/6120206>
1855         Crash when plug-in queries for NPPVpluginWantsAllNetworkStreams.
1856         
1857         Pass in a pointer to a void* to make sure that plug-ins don't overwrite the stack.
1859         * Plugins/WebBaseNetscapePluginStream.mm:
1860         (-[WebBaseNetscapePluginStream wantsAllStreams]):
1862 2008-07-31  Anders Carlsson  <andersca@apple.com>
1864         Reviewed by Darin Adler.
1866         <rdar://problem/5949410>
1867         Add the ability to transfer a given application cache to a new database.
1869         * Misc/WebKitNSStringExtras.h:
1870         * Misc/WebKitNSStringExtras.m:
1871         (+[NSString _webkit_applicationCacheDirectoryWithBundleIdentifier:]):
1872         New method which returns the appopriate cache directory for a given bundle identifier.
1873         
1874         * WebView/WebDataSource.mm:
1875         (-[WebDataSource _transferApplicationCache:]):
1876         Transfer the application cache.
1877         
1878         * WebView/WebDataSourcePrivate.h:
1879         * WebView/WebView.mm:
1880         (WebKitInitializeApplicationCachePathIfNecessary):
1881         Change this to use _webkit_applicationCacheDirectoryWithBundleIdentifier.
1883 2008-07-31  John Sullivan  <sullivan@apple.com>
1885         WebKit part of <rdar://problem/6116650> Text-only zoom setting should be stored in WebKit prefs
1887         Reviewed by Hyatt
1889         * WebView/WebPreferenceKeysPrivate.h:
1890         added WebKitZoomsTextOnlyPreferenceKey
1891         
1892         * WebView/WebPreferences.mm:
1893         (+[WebPreferences initialize]):
1894         default value of YES for WebKitZoomsTextOnlyPreferenceKey
1895         (-[WebPreferences zoomsTextOnly]):
1896         getter for WebKitZoomsTextOnlyPreferenceKey
1897         (-[WebPreferences setZoomsTextOnly:]):
1898         setter for WebKitZoomsTextOnlyPreferenceKey
1899         
1900         * WebView/WebPreferencesPrivate.h:
1901         declare zoomsTextOnly/setZoomsTextOnly:
1902         
1903         * WebView/WebView.mm:
1904         (-[WebView _preferencesChangedNotification:]):
1905         update WebCore::Settings value for zoomsTextOnly
1907 2008-07-31  David D. Kilzer  <ddkilzer@webkit.org>
1909         Fix layout test results for webarchive/test-xml-stylesheet.xml
1911         Reviewed by Darin Adler.
1913         Needed to expose -[WebHTMLRepresentation supportedNonImageMIMETypes]
1914         for DumpRenderTree.
1916         * WebView/WebHTMLRepresentationInternal.h: Added.
1918 2008-07-31  Alexey Proskuryakov  <ap@webkit.org>
1920         Release build fix.
1922         * Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView setWindowIfNecessary]):
1923         Don't define to npErr in release builds, as it is only used for logging.
1925 2008-07-31  John Sullivan  <sullivan@apple.com>
1927         Fixed <https://bugs.webkit.org/show_bug.cgi?id=5195>
1928         drawing with cacheDisplayInRect:toBitmapImageRep: doesn't trigger layout on Leopard
1930         Reviewed by Dan
1932         * WebView/WebHTMLView.mm:
1933         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]):
1934         include Leopard in the #ifdef that forces a layout if needed
1936 2008-07-30  Brady Eidson  <beidson@apple.com>
1938         Reviewed by Adam and Hyatt
1940         Fix for <rdar://problem/6099748>
1942         * WebView/WebView.mm:
1943         (-[WebView _preferencesChangedNotification:]): Set the "don't enforce CSS mime type in strict mode" 
1944           quirk when running under iWeb 2
1946 2008-07-31  Alexey Proskuryakov  <ap@webkit.org>
1948         Rubber-stamped by Maciej.
1950         Eliminate JSLock (it was already disabled, removing the stub implementaion and all
1951         call sites now).
1953         * ForwardingHeaders/kjs/JSLock.h: Removed.
1954         * Misc/WebCoreStatistics.mm:
1955         (+[WebCoreStatistics javaScriptObjectsCount]):
1956         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
1957         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
1958         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
1959         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
1960         (+[WebCoreStatistics shouldPrintExceptions]):
1961         (+[WebCoreStatistics setShouldPrintExceptions:]):
1962         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
1963         * Plugins/WebBaseNetscapePluginStream.mm:
1964         (-[WebBaseNetscapePluginStream wantsAllStreams]):
1965         * Plugins/WebBaseNetscapePluginView.mm:
1966         (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]):
1967         (-[WebBaseNetscapePluginView setWindowIfNecessary]):
1968         (-[WebBaseNetscapePluginView start]):
1969         (-[WebBaseNetscapePluginView createPluginScriptableObject]):
1970         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
1971         (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]):
1972         (-[WebBaseNetscapePluginView loadPluginRequest:]):
1973         (-[WebBaseNetscapePluginView _printedPluginBitmap]):
1974         * Plugins/WebPluginController.mm:
1975         (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
1976         (-[WebPluginController startAllPlugins]):
1977         (-[WebPluginController stopAllPlugins]):
1978         (-[WebPluginController addPlugin:]):
1979         (-[WebPluginController destroyPlugin:]):
1980         (-[WebPluginController destroyAllPlugins]):
1981         * WebView/WebFrame.mm:
1982         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
1983         * WebView/WebScriptDebugDelegate.mm:
1984         (-[WebScriptCallFrame evaluateWebScript:]):
1985         * WebView/WebView.mm:
1986         (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
1988 2008-07-30  Beth Dakin  <bdakin@apple.com>
1990         Reviewed by Anders Carlsson.
1992         Fixes <rdar://problem/6041390>
1994         Adds the ability to have a frame that is "disconnected" from the 
1995         main frame from the perspective of top and parent in 
1996         Javascript.
1998         * WebView/WebFrame.mm:
1999         (-[WebFrame _setIsDisconnectedFrame]):
2000         * WebView/WebFramePrivate.h:
2002 2008-07-29  Mark Rowe  <mrowe@apple.com>
2004         Tweak to the build fix to keep Dan happy.
2006         * Plugins/WebBaseNetscapePluginView.mm:
2007         * WebView/WebHTMLView.mm:
2009 2008-07-29  Mark Rowe  <mrowe@apple.com>
2011         Build fix.
2013         * Plugins/WebBaseNetscapePluginView.mm:
2014         (-[WebBaseNetscapePluginView inputContext]):
2015         * WebView/WebHTMLView.mm:
2017 2008-07-28  Anders Carlsson  <andersca@apple.com>
2019         Reviewed by Kevin Decker.
2021         Based on a patch by Dimcho Balev.
2022         
2023         https://bugs.webkit.org/show_bug.cgi?id=18676
2024         <rdar://problem/6106578>
2025         Plug-In API Proposal: Enable plugins to receive response body when an HTTP error occurs
2027         * Plugins/WebBaseNetscapePluginStream.h:
2028         Add NPP_GetValue pointer.
2029         
2030         * Plugins/WebBaseNetscapePluginStream.mm:
2031         (-[WebBaseNetscapePluginStream setPlugin:]):
2032         Initialize NPP_GetValue.
2033         
2034         (-[WebBaseNetscapePluginStream wantsAllStreams]):
2035         Call NPP_GetValue.
2036         
2037         * Plugins/WebPlugInStreamLoaderDelegate.h:
2038         * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.h:
2039         * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.mm:
2040         (WebNetscapePlugInStreamLoaderClient::wantsAllStreams):
2041         Implement this and call down to the stream.
2043 2008-07-28  Anders Carlsson  <andersca@apple.com>
2045         Reviewed by Adam.
2047         <rdar://problem/6105529> 
2048         https://bugs.webkit.org/show_bug.cgi?id=19659
2049         Turning off plugins causes crash
2050         
2051         When an active page has plug-ins, and plug-ins are disabled, they will be stopped and will
2052         end up in a state where they don't have an event handler. Because of this, we need to 
2053         check that the plug-in has been started before calling the event handler.
2054         
2055         * Plugins/WebBaseNetscapePluginView.mm:
2056         (-[WebBaseNetscapePluginView sendActivateEvent:]):
2057         (-[WebBaseNetscapePluginView sendDrawRectEvent:]):
2058         (-[WebBaseNetscapePluginView setHasFocus:]):
2059         (-[WebBaseNetscapePluginView mouseDown:]):
2060         (-[WebBaseNetscapePluginView mouseUp:]):
2061         (-[WebBaseNetscapePluginView mouseEntered:]):
2062         (-[WebBaseNetscapePluginView mouseExited:]):
2063         (-[WebBaseNetscapePluginView handleMouseMoved:]):
2064         (-[WebBaseNetscapePluginView mouseDragged:]):
2065         (-[WebBaseNetscapePluginView scrollWheel:]):
2066         (-[WebBaseNetscapePluginView keyUp:]):
2067         (-[WebBaseNetscapePluginView keyDown:]):
2068         (-[WebBaseNetscapePluginView flagsChanged:]):
2069         (-[WebBaseNetscapePluginView cut:]):
2070         (-[WebBaseNetscapePluginView copy:]):
2071         (-[WebBaseNetscapePluginView paste:]):
2072         (-[WebBaseNetscapePluginView selectAll:]):
2073         (-[WebBaseNetscapePluginView drawRect:]):
2074         (-[WebBaseNetscapePluginView inputContext]):
2076 2008-07-26  Daniel Jalkut  <jalkut@red-sweater.com>
2078         Reviewed by Geoff Garen.
2080         Changes to accommodate newly named/signatured loading methods in WebCore.
2082         * Plugins/WebNetscapePluginStream.mm:
2083         (-[WebNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
2084         * Plugins/WebPluginContainerCheck.mm:
2085         (-[WebPluginContainerCheck _isForbiddenFileLoad]):
2086         * WebView/WebPDFView.mm:
2087         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
2089 2008-07-21  Mark Rowe  <mrowe@apple.com>
2091         Reviewed by Sam Weinig.
2093         <rdar://problem/6091287> Revamp the handling of CFBundleShortVersionString to be fixed at the major component of the version number.
2095         * Configurations/Version.xcconfig:
2096         * Info.plist:
2098 2008-07-21  Anders Carlsson  <andersca@apple.com>
2100         Reviewed by Geoff.
2102         <rdar://problem/5820667> 
2103         CrashTracer: [USER] 3759 crashes in Safari at FrameLoader::activeDocumentLoader const + 6 while canceling plug-in load
2104         
2105         Don't allow URLs to be loaded in response to an NPP_DestroyStream that happens when tearing down the plug-in.
2106         
2107         * Plugins/WebBaseNetscapePluginView.mm:
2108         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
2110 2008-07-21  Mark Rowe  <mrowe@apple.com>
2112         Reviewed by Adam Roben.
2114         <rdar://problem/5624143> WebView printing doesn't work correctly in x86_64
2116         Fix the return type of an NSView method that we override so that the correct data type is used in 64-bit.
2117         This prevents a garbage value being used for the scale factor that the NSView print machinery applies.
2119         * WebView/WebHTMLView.mm:
2121 2008-07-21  Mark Rowe  <mrowe@apple.com>
2123         Reviewed by Adam Roben.
2125         Fix CallDelegateReturningFloat for x86_64.  The x86_64 Objective-C runtime
2126         only uses objc_msgSend_fpret for long double return values.  For float return
2127         values the standard objc_msgSend is used, as on ppc and ppc64.
2129         * WebView/WebView.mm: Use objc_msgSend_float_return as the name of our version of
2130         objc_msgSend with the correct return type.  We can no longer call it objc_msgSend_fpret
2131         as that method is defined by the Objective-C runtime for x86_64.
2132         (CallDelegateReturningFloat):
2134 2008-07-14  Dan Bernstein  <mitz@apple.com>
2136         Reviewed by John Sullivan.
2138         - WebKit part of fixing <rdar://problem/6071850> Subviews not drawn correctly when using -cacheDisplayInRect:toBitmapImageRep:
2140         * Plugins/WebBaseNetscapePluginView.mm:
2141         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Changed
2142         to account for the case of being drawn into a bitmap context that is not
2143         a window's backing store. In that case, there are no valid "rects being
2144         drawn" to clip to.
2145         * WebView/WebHTMLView.mm:
2146         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]):
2147         Added an override of this NSView method which is used in for
2148         -cacheDisplayInRect:toBitmapImageRep:. Like two existing NSView drawing
2149         machinery overrides, it sets subviews aside before invoking the
2150         superclass implementation. On Tiger, it also updates the layout.
2152 2008-07-14  Alexey Proskuryakov  <ap@webkit.org>
2154         Reviewed by Geoff Garen.
2156         Eliminate per-thread JavaScript global data instance support and make arbitrary
2157         global data/global object combinations possible.
2159         * Misc/WebCoreStatistics.mm:
2160         (+[WebCoreStatistics javaScriptObjectsCount]):
2161         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
2162         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
2163         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
2164         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
2165         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
2166         Ask WebCore for its instance of JSGlobalData, now that it is not in per-thread storage.
2168 2008-07-11  Stephanie Lewis  <slewis@apple.com>
2170         Reviewed by Darin Adler.
2172         Disable WTF leak messages when using fast teardown.  Use full document teardown while running in debug.
2174         * WebView/WebPreferences.m: Removed.
2175         * WebView/WebPreferences.mm: Copied from http:/svn.webkit.org/repository/webkit/trunk/WebKit/mac/WebView/WebPreferences.m.
2176         (+[WebPreferences initialize]): if running in Default enable full  document teardown
2177         (-[WebPreferences editableLinkBehavior]):
2178         (-[WebPreferences setFullDocumentTeardownEnabled:]):
2179         * WebView/WebView.mm:
2180         (-[WebView _close]): disable leak messages if using fast teardown
2182 2008-07-10  Mark Rowe  <mrowe@apple.com>
2184         Reviewed by Sam Weinig.
2186         Define WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST when building WebKit to ensure that no symbols end up with the weak_import attribute.
2188         * Configurations/WebKit.xcconfig:
2190 2008-07-10  Mark Rowe  <mrowe@apple.com>
2192         Reviewed by Sam Weinig.
2194         Fix the Tiger build by omitting annotations from methods declared in categories when using old versions of GCC.
2196         * Plugins/WebPlugin.h: Wrap annotations on methods declared in categories in the WEBKIT_CATEGORY_METHOD_ANNOTATION macro.
2197         * WebView/WebFrameLoadDelegate.h: Ditto.
2198         * WebView/WebUIDelegate.h: Ditto.
2200 2008-07-10  Anders Carlsson  <andersca@apple.com>
2202         Reviewed by Mark.
2203         
2204         Add availability macros for the new WebPlugin methods.
2206         * Plugins/WebPlugin.h:
2207         * Plugins/WebPluginViewFactory.h:
2209 2008-07-09  Mark Rowe  <mrowe@apple.com>
2211         Reviewed by Geoff Garen.
2213         Don't warn about deprecated functions in production builds.
2215         * Configurations/Base.xcconfig:
2216         * Configurations/DebugRelease.xcconfig:
2218 2008-07-09  Brady Eidson  <beidson@apple.com>
2220         Reviewed by Darin
2222         <rdar://problem/5823684> - Crash manipulating frame tree of a new frame before the new frame
2223         has been installed in a frame tree.
2225         The root of this problem was that calling init() on a new frame could end up calling arbitrary
2226         javascript that might end up removing the frame from the tree.  This opened up a small can of worms
2227         such as the frame not having yet been installed in its frame tree, and other assumed behavior while
2228         destroying the frame.
2230         Note that each platforms WebKit API layer needs to make this new guarantee:
2231         "The new Frame must be installed in its FrameTree before newCoreFrame->init() is called"
2232         I am fixing Mac, and Windows and GTK already have this property.  Wx currently has subframes disabled
2233         but will need to add this guarantee when re-enabling, and Qt is currently vulnerable to this same bug.
2235         Alternately, the way frames are created right now is roundabout and asinine, and this is a key
2236         architectural improvement we can make in the future so the individual platform clients are no longer
2237         vulnerable to this problem, which should really have been a WebCore issue.
2239         * WebCoreSupport/WebFrameLoaderClient.mm:
2240         (WebFrameLoaderClient::createFrame):  Don't bother null checking the newCoreFrame - can't be NULL.
2241           Don't appendChild() the new frame here.
2242           Null-check the new frame's page before loading the URL into it, as it might already have been
2243           removed from the page.
2245         * WebView/WebFrame.mm:
2246         (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]):  If there is an ownerElement,
2247           go ahead and install the new frame in the frame tree *before* calling init() on it.
2249 2008-07-09  Anders Carlsson  <andersca@apple.com>
2251         Reviewed by Darin Adler.
2253         Make some WebPlugin and WebPluginFactory SPI public.
2254         
2255         * Plugins/WebPlugin.h:
2256         * Plugins/WebPluginPrivate.h:
2257         * Plugins/WebPluginViewFactory.h:
2258         * Plugins/WebPluginViewFactoryPrivate.h:
2260 2008-07-08  Jon Honeycutt  <jhoneycutt@apple.com>
2262         Reviewed by Anders.
2264         Port r34988 to Mac: don't call NPP_DestroyStream if NPP_NewStream was
2265         unsuccessful.
2267         * Plugins/WebBaseNetscapePluginStream.h: Added new member,
2268         newStreamSuccessful.
2269         * Plugins/WebBaseNetscapePluginStream.mm:
2270         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]): Initialize new member.
2271         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]): If NPP_NewStream is successful, set
2272         newStreamSuccessful to YES.
2273         (-[WebBaseNetscapePluginStream _destroyStream]): Only call
2274         NPP_DestroyStream if newStreamSuccessful is true.
2276 2008-07-08  Dan Bernstein  <mitz@apple.com>
2278         Reviewed by John Sullivan.
2280         - WebKit part of <rdar://problem/6008409> Need a way to disable updates in offscreen views
2282         * WebView/WebHTMLView.mm:
2283         (-[WebHTMLView addWindowObservers]): Added code to observe when the
2284         window goes onscreen.
2285         (-[WebHTMLView removeWindowObservers]): Added.
2286         (-[WebHTMLView windowWillOrderOnScreen:]): Added. If the view is set to
2287         not update when offscreen, calls -setNeedsDisplay: just before it comes
2288         onscreen.
2289         * WebView/WebPreferenceKeysPrivate.h: Added preference key.
2290         * WebView/WebPreferences.m:
2291         (+[WebPreferences initialize]): Made updates when offscreen on by
2292         default.
2293         (-[WebPreferences updatesWhenOffscreen]): Added.
2294         (-[WebPreferences setUpdatesWhenOffscreen:]): Added.
2295         * WebView/WebPreferencesPrivate.h:
2296         * WebView/WebView.mm:
2297         (-[WebView _preferencesChangedNotification:]): Added code to update the
2298         updatesWhenOffscreen setting in WebCore.
2300 2008-07-07  Anders Carlsson  <andersca@apple.com>
2302         Reviewed by Darin Adler.
2304         Speculative fix for     
2305         <rdar://problem/5839800>
2306         CrashTracer: [USER] 5802 crashes in Safari at com.apple.WebKit: -[WebHTMLView(WebPrivate) _updateMouseoverWithFakeEvent] + 389
2307         
2308         Set _private->closed to YES before calling -[WebPluginController destroyAllPlugins].
2309         
2310         My theory is that the plug-in destruction callbacks could end up rescheduling timers or re-adding notifications.
2311         This is usually protected by _private->closed, but in this case it might still be false.
2313         * WebView/WebHTMLView.mm:
2314         (-[WebHTMLView close]):
2316 2008-07-05  Mark Rowe  <mrowe@apple.com>
2318         Reviewed by John Sullivan.
2320         Remove WebSearchableTextView as it has been unused for some time now.
2322         * Misc/WebSearchableTextView.h: Removed.
2323         * Misc/WebSearchableTextView.m: Removed.
2325 2008-07-05  Mark Rowe  <mrowe@apple.com>
2327         Reviewed by John Sullivan.
2329         Don't leak the result of WKCopyCFLocalizationPreferredName when running under GC.
2331         * Misc/WebNSUserDefaultsExtras.m:
2332         (-[NSString _webkit_HTTPStyleLanguageCode]):
2334 2008-07-02  Alexey Proskuryakov  <ap@webkit.org>
2336         Inspired and reviewed by Mark Rowe.
2338         Change non-API includes from JavaScriptCore/ to kjs/ and wtf/ to match prevalent style.
2340         * Carbon/HIViewAdapter.m:
2341         * DOM/WebDOMOperations.mm:
2342         * DefaultDelegates/WebDefaultContextMenuDelegate.mm:
2343         * DefaultDelegates/WebDefaultPolicyDelegate.m:
2344         * History/WebBackForwardList.mm:
2345         * History/WebHistory.mm:
2346         * History/WebHistoryItem.mm:
2347         * History/WebHistoryItemInternal.h:
2348         * Misc/WebCoreStatistics.mm:
2349         * Misc/WebDownload.m:
2350         * Misc/WebGraphicsExtras.c:
2351         * Misc/WebKitLogging.h:
2352         * Misc/WebKitSystemBits.m:
2353         * Misc/WebLocalizableStrings.m:
2354         * Misc/WebNSArrayExtras.m:
2355         * Misc/WebNSDataExtras.m:
2356         * Misc/WebNSDictionaryExtras.m:
2357         * Misc/WebNSFileManagerExtras.m:
2358         * Misc/WebNSPasteboardExtras.mm:
2359         * Misc/WebNSURLExtras.mm:
2360         * Misc/WebNSUserDefaultsExtras.m:
2361         * Panels/WebAuthenticationPanel.m:
2362         * Panels/WebPanelAuthenticationHandler.m:
2363         * Plugins/WebBaseNetscapePluginView.mm:
2364         * Plugins/WebBasePluginPackage.m:
2365         * Plugins/WebNetscapePluginEmbeddedView.mm:
2366         * Plugins/WebPluginContainerCheck.mm:
2367         * Plugins/WebPluginController.mm:
2368         * Plugins/WebPluginDatabase.mm:
2369         * WebCoreSupport/WebJavaScriptTextInputPanel.m:
2370         * WebCoreSupport/WebKeyGenerator.m:
2371         * WebCoreSupport/WebViewFactory.mm:
2372         * WebKitPrefix.h:
2373         * WebView/WebHTMLRepresentation.mm:
2374         * WebView/WebPDFRepresentation.m:
2375         * WebView/WebPDFView.mm:
2376         * WebView/WebScriptDebugger.mm:
2378 2008-07-01  Alexey Proskuryakov  <ap@webkit.org>
2380         Reviewed by Darin Adler.
2382         Disable JSLock for per-thread contexts.
2384         * Misc/WebCoreStatistics.mm:
2385         (+[WebCoreStatistics javaScriptObjectsCount]):
2386         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
2387         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
2388         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
2389         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
2390         (+[WebCoreStatistics shouldPrintExceptions]):
2391         (+[WebCoreStatistics setShouldPrintExceptions:]):
2392         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
2393         * Plugins/WebBaseNetscapePluginView.mm:
2394         (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]):
2395         (-[WebBaseNetscapePluginView setWindowIfNecessary]):
2396         (-[WebBaseNetscapePluginView start]):
2397         (-[WebBaseNetscapePluginView createPluginScriptableObject]):
2398         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]):
2399         (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]):
2400         (-[WebBaseNetscapePluginView loadPluginRequest:]):
2401         (-[WebBaseNetscapePluginView _printedPluginBitmap]):
2402         * Plugins/WebPluginController.mm:
2403         (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
2404         (-[WebPluginController startAllPlugins]):
2405         (-[WebPluginController stopAllPlugins]):
2406         (-[WebPluginController addPlugin:]):
2407         (-[WebPluginController destroyPlugin:]):
2408         (-[WebPluginController destroyAllPlugins]):
2409         * WebView/WebFrame.mm:
2410         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
2411         * WebView/WebScriptDebugDelegate.mm:
2412         (-[WebScriptCallFrame evaluateWebScript:]):
2413         * WebView/WebView.mm:
2414         (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
2415         Pass a parameter (always false) to JSLock and JSLock::DropAllLocks to indicate that WebKit
2416         doesn't need locking. In the future, it may be possible to remove some of these if we
2417         establish that this won't make JSC assertions fail (and that we don't want to add such
2418         assertions either).
2419         Added includes that are now needed.
2421 2008-07-01  Kevin McCullough  <kmccullough@apple.com>
2423         Build fix.
2425         * WebView/WebView.mm:
2427 2008-07-01  Anders Carlsson  <andersca@apple.com>
2429         Reviewed by Darin Adler.
2431         Use the PluginMainThreadScheduler, and implement NPN_PluginThreadAsyncCall.
2432         
2433         * Plugins/WebBaseNetscapePluginView.mm:
2434         (-[WebBaseNetscapePluginView _createPlugin]):
2435         Register the plug-in instance.
2436         
2437         (-[WebBaseNetscapePluginView _destroyPlugin]):
2438         Unegister the plug-in instance.
2439         
2440         * Plugins/WebNetscapePluginPackage.m:
2441         (-[WebNetscapePluginPackage load]):
2442         Set NPN_PluginThreadAsyncCall.
2443         
2444         * Plugins/npapi.mm:
2445         (NPN_PluginThreadAsyncCall):
2446         Implement this.
2448 2008-07-01  Dan Bernstein  <mitz@apple.com>
2450         Reviewed by Darin Adler.
2452         - WebKit part of moving the method to set the base writing direction from Frame to Editor
2454         * WebView/WebHTMLView.mm:
2455         (-[WebHTMLView toggleBaseWritingDirection:]): Changed back to call the
2456         Editor method.
2457         (-[WebHTMLView changeBaseWritingDirection:]): Ditto.
2458         (-[WebHTMLView _changeBaseWritingDirectionTo:]): Ditto.
2460 2008-07-01  Geoffrey Garen  <ggaren@apple.com>
2462         Build fix: forgot to check in this file.
2464         * WebView/WebScriptDebugger.mm:
2465         (WebScriptDebugger::WebScriptDebugger):
2467 2008-06-30  Dan Bernstein  <mitz@apple.com>
2469         Reviewed by Adele Peterson.
2471         - WebKit/mac part of <rdar://problem/3881497> Writing direction context menu item has no effect on text typed in Safari
2473         * WebView/WebHTMLView.mm:
2474         (-[WebHTMLView toggleBaseWritingDirection:]): Changed to call
2475         WebCore::Frame::setSelectionBaseWritingDirection() instead of
2476         WebCore::Editor::setBaseWritingDirection().
2477         (-[WebHTMLView changeBaseWritingDirection:]): Ditto.
2478         (-[WebHTMLView _changeBaseWritingDirectionTo:]): Ditto.
2480 2008-06-28  Darin Adler  <darin@apple.com>
2482         - fix build
2484         * WebView/WebView.mm:
2485         (aeDescFromJSValue): Use get instead of getItem, which no longer exists.
2487 2008-06-26  Anders Carlsson  <andersca@apple.com>
2489         Reviewed by Darin Adler.
2491         Add a new MainThreadObjectDeallocator which can schedule dealloc calls on the main thread
2492         if necessary. Use this for the WebView class. 
2493                 
2494         * WebView/MainThreadObjectDeallocator.h: Added.
2495         * WebView/MainThreadObjectDeallocator.mm: Added.
2496         (deallocCallback):
2497         (scheduleDeallocateOnMainThread):
2498         * WebView/WebView.mm:
2499         (-[WebViewPrivate dealloc]):
2500         (+[WebView initialize]):
2502 2008-06-25  Anders Carlsson  <andersca@apple.com>
2504         Reviewed by Mark.
2506         <rdar://problem/5984270> 
2507         REGRESSION (Tiger only) : Mail crashes because message load is being processed on a secondary thread
2508         
2509         * WebView/WebView.mm:
2510         (tigerMailReleaseIMP):
2511         New method that makes sure that the final release happens on the main thread.
2512         
2513         (-[WebView release]):
2514         New method that just calls [super release];
2515         
2516         (+[WebView initialize]):
2517         When running under Tiger mail, replace the release method with tigerMailReleaseIMP.
2519 2008-06-19  Alexey Proskuryakov  <ap@webkit.org>
2521         Reviewed by Geoff.
2523         Make Machine per-JSGlobalData.
2525         * WebView/WebScriptDebugger.mm:
2526         (WebScriptDebugger::WebScriptDebugger):
2528 2008-06-17  Alexey Proskuryakov  <ap@webkit.org>
2530         Reviewed by Darin Adler.
2532         Prepare JavaScript heap for being per-thread.
2534         * Misc/WebCoreStatistics.mm:
2535         (+[WebCoreStatistics javaScriptObjectsCount]):
2536         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
2537         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
2538         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
2539         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
2540         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
2541         Use JSGlobalData::threadInstance()->heap instead of static Collector calls.
2543 2008-06-17  Darin Adler  <darin@apple.com>
2545         Reviewed by Sam.
2547         * WebView/WebHTMLView.mm:
2548         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Use create instead of new
2549         to create a CSSMutableStyleDeclaration.
2551 2008-06-16  Mark Rowe  <mrowe@apple.com>
2553         Reviewed by Darin Adler.
2555         <rdar://problem/5951874> WebHTMLHighlighter mistakenly gained two new methods, causing compile warnings
2557         _pauseNullEventsForAllNetscapePlugins and _resumeNullEventsForAllNetscapePlugins ended up being declared both in
2558         WebHTMLViewInternal.h and as members of the WebHTMLHighlighter protocol in WebHTMLViewPrivate.h.  They don't belong
2559         in the protocol, but they do need to be available outside of WebKit so they're being moved to the correct location
2560         in WebHTMLViewPrivate.h and removed from WebHTMLViewInternal.h.
2562         * WebView/WebHTMLView.mm:
2563         (-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]):
2564         (-[WebHTMLView _resumeNullEventsForAllNetscapePlugins]):
2565         * WebView/WebHTMLViewInternal.h:
2566         * WebView/WebHTMLViewPrivate.h:
2568 2008-06-15  Darin Adler  <darin@apple.com>
2570         - give Frame object functions shorter names: scriptProxy() -> script(),
2571           selectionController() -> selection(), animationController() -> animation()
2573         * Plugins/WebPluginController.mm:
2574         (-[WebPluginController webPlugInContainerSelectionColor]):
2575         * WebView/WebFrame.mm:
2576         (-[WebFrame _attachScriptDebugger]):
2577         (-[WebFrame _hasSelection]):
2578         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
2579         (-[WebFrame _rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
2580         (-[WebFrame _convertToNSRange:]):
2581         (-[WebFrame _convertToDOMRange:]):
2582         (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
2583         (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]):
2584         (-[WebFrame _insertParagraphSeparatorInQuotedContent]):
2585         (-[WebFrame _selectedNSRange]):
2586         (-[WebFrame _selectNSRange:]):
2587         (-[WebFrame globalContext]):
2588         * WebView/WebHTMLView.mm:
2589         (-[WebHTMLView _selectedRange]):
2590         (-[WebHTMLView _hasSelection]):
2591         (-[WebHTMLView _hasSelectionOrInsertionPoint]):
2592         (-[WebHTMLView _hasInsertionPoint]):
2593         (-[WebHTMLView _isEditable]):
2594         (-[WebHTMLView _updateFocusedAndActiveState]):
2595         (-[WebHTMLView readSelectionFromPasteboard:]):
2596         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
2597         (-[WebHTMLView maintainsInactiveSelection]):
2598         (-[WebHTMLView paste:]):
2599         (isTextInput):
2600         (-[WebHTMLView inputContext]):
2601         (-[WebTextCompleteController doCompletion]):
2602         (-[WebHTMLView selectAll]):
2603         (-[WebHTMLView deselectAll]):
2604         (-[WebHTMLView selectedAttributedString]):
2605         * WebView/WebView.mm:
2606         (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
2607         (-[WebView setSelectedDOMRange:affinity:]):
2608         (-[WebView selectedDOMRange]):
2609         (-[WebView selectionAffinity]):
2611 2008-06-15  Darin Adler  <darin@apple.com>
2613         - rename KJS::List to KJS::ArgList
2615         * WebView/WebScriptDebugger.h:
2617 2008-06-15  Darin Adler  <darin@apple.com>
2619         - new names for more JavaScriptCore files
2621         * WebView/WebView.mm:
2623 2008-06-15  Darin Adler  <darin@apple.com>
2625         - new names for a few key JavaScriptCore files
2627         * ForwardingHeaders/kjs/JSFunction.h: Copied from WebKit/mac/ForwardingHeaders/kjs/function.h.
2628         * ForwardingHeaders/kjs/JSObject.h: Copied from WebKit/mac/ForwardingHeaders/kjs/object.h.
2629         * ForwardingHeaders/kjs/JSString.h: Copied from WebKit/mac/ForwardingHeaders/kjs/internal.h.
2630         * ForwardingHeaders/kjs/JSValue.h: Copied from WebKit/mac/ForwardingHeaders/kjs/value.h.
2631         * ForwardingHeaders/kjs/function.h: Removed.
2632         * ForwardingHeaders/kjs/internal.h: Removed.
2633         * ForwardingHeaders/kjs/object.h: Removed.
2634         * ForwardingHeaders/kjs/value.h: Removed.
2635         * WebView/WebScriptDebugDelegate.mm:
2637 2008-06-15  Darin Adler  <darin@apple.com>
2639         Rubber stamped by Sam.
2641         - use JS prefix and simpler names for basic JavaScriptCore types,
2642           to complement JSValue and JSObject
2644         * WebView/WebView.mm:
2645         (aeDescFromJSValue):
2647 2008-06-14  Darin Adler  <darin@apple.com>
2649         Rubber stamped by Sam.
2651         - new names for kjs_binding.h and kjs_proxy.h
2653         * WebView/WebFrame.mm:
2654         * WebView/WebScriptDebugDelegate.mm:
2655         * WebView/WebView.mm:
2657 2008-06-14  Darin Adler  <darin@apple.com>
2659         Rubber stamped by Sam.
2661         - renamed HTMLGenericFormElement to HTMLFormControlElement
2663         * WebView/WebHTMLRepresentation.mm:
2664         (-[WebHTMLRepresentation elementWithName:inForm:]):
2665         (-[WebHTMLRepresentation controlsInForm:]):
2667 2008-06-14  Darin Adler  <darin@apple.com>
2669         Reviewed by Sam.
2671         - more of https://bugs.webkit.org/show_bug.cgi?id=17257
2672           start ref counts at 1 instead of 0 for speed
2674         * WebCoreSupport/WebFrameLoaderClient.mm:
2675         (WebFrameLoaderClient::createDocumentLoader): Use create instead of new.
2676         (WebFrameLoaderClient::createFrame): Remove now-obsolete adoptRef that was balanced by
2677         a ref call inside the Frame constructor. The lifetime rules for Frame are now the
2678         conventional ones without a special case.
2680         * WebView/WebDataSource.mm:
2681         (-[WebDataSource _initWithDocumentLoader:]): Changed argument to be a PassRefPtr, since
2682         this function takes ownership of the DocumentLoader.
2683         (-[WebDataSource initWithRequest:]): Use create instead of new.
2684         * WebView/WebDataSourceInternal.h: Changed _initWithDocumentLoader argument to be a
2685         PassRefPtr and also cleaned up the header a bit.
2687         * WebView/WebDocumentLoaderMac.h:
2688         (WebDocumentLoaderMac::create): Added. Also made the constructor and a couple of virtual
2689         functions private.
2691         * WebView/WebFrame.mm:
2692         (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]): Use create instead
2693         of new.
2695 2008-06-14  Darin Adler  <darin@apple.com>
2697         Reviewed by Sam.
2699         - more work on https://bugs.webkit.org/show_bug.cgi?id=17257
2700           start ref counts at 1 instead of 0 for speed
2702         * WebView/WebFrame.mm:
2703         (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
2704         * WebView/WebPDFView.mm:
2705         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
2707 2008-06-13  Darin Adler  <darin@apple.com>
2709         Reviewed by John Sullivan.
2711         - updated for addition of FormState argument to action policy functions
2712         - added WebActionFormKey
2714         * WebCoreSupport/WebFrameLoaderClient.h:
2715         * WebCoreSupport/WebFrameLoaderClient.mm:
2716         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
2717         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
2718         (WebFrameLoaderClient::actionDictionary):
2719         * WebKit.exp:
2720         * WebView/WebPolicyDelegate.mm:
2721         * WebView/WebPolicyDelegatePrivate.h:
2723 2008-06-12  John Sullivan  <sullivan@apple.com>
2725         Reviewed by Dan and Darin
2727         Clear up the confusion about _close (older private method) vs -close (newer public method).
2729         * WebView/WebView.mm:
2730         (-[WebView _isClosed]):
2731         simplified style
2732         (-[WebView _close]):
2733         added a comment about how clients and subclasses should use -close instead
2734         (-[WebView dealloc]):
2735         call -close instead of _close, so subclasses that override the public method will have the intended behavior
2736         (-[WebView close]):
2737         added a comment
2738         (-[WebView _windowWillClose:]):
2739         call -close instead of _close, so subclasses that override the public method will have the intended behavior
2741         * WebView/WebViewPrivate.h:
2742         added a comment about how clients and subclasses should use -close instead
2744 2008-06-07  Darin Adler  <darin@apple.com>
2746         Reviewed by Mitz.
2748         - work on https://bugs.webkit.org/show_bug.cgi?id=17257
2749           start ref counts at 1 instead of 0 for speed
2751         * History/WebHistoryItem.mm:
2752         (-[WebHistoryItem init]):
2753         (-[WebHistoryItem initWithURLString:title:lastVisitedTimeInterval:]):
2754         (-[WebHistoryItem initWithURL:target:parent:title:]):
2755         (-[WebHistoryItem initWithURLString:title:displayTitle:lastVisitedTimeInterval:]):
2756         * WebView/WebView.mm:
2757         (+[WebView _decodeData:]):
2759 2008-06-03  Oliver Hunt  <oliver@apple.com>
2761         Reviewed by Tim.
2763         Bug 12983: Web Inspector break on the debugger keyword
2764         <https://bugs.webkit.org/show_bug.cgi?id=12983>
2766         Add stubs to allow old webkit debugger interface to build.
2768         * WebView/WebScriptDebugger.h:
2769         * WebView/WebScriptDebugger.mm:
2771 2008-06-03  Anders Carlsson  <andersca@apple.com>
2773         Reviewed by Darin Adler.
2775         <rdar://problem/5980961>
2776         
2777         In 64-bit Web Kit, converting between float and double, can cause rounding errors which in turn causes
2778         newBottom to be larger than oldBottom which is illegal.
2779         
2780         * WebView/WebHTMLView.mm:
2781         (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]):
2783 2008-06-02  Anders Carlsson  <andersca@apple.com>
2785         Reviewed by Mitz.
2787         Speculative fix for <rdar://problem/5661112> 
2788         CrashTracer: [USER] 49 crashes in DashboardClient at com.apple.WebCore: WebCore::RenderPart::setWidget + 62
2789         
2790         Defer loads while calling NPP_New. Some plug-ins start a run-loop inside NPP_New and finished loads could cause
2791         layouts to be triggered.
2792         
2793         * Plugins/WebBaseNetscapePluginView.mm:
2794         (-[WebBaseNetscapePluginView _createPlugin]):
2796 2008-05-29  Justin Garcia  <justin.garcia@apple.com>
2798         Reviewed by Darin Adler.
2799         
2800         <rdar://problem/5949462> REGRESSION: Can't paste screen captures into Mail
2801         
2802         AppKit started putting PNG instead of PICT onto the pasteboard for screen 
2803         captures.  Added support for PNG with kUTTypePNG.  Tiger doesn't support
2804         setting and retrieving pasteboard types with UTIs, but we don't know of any
2805         applications on Tiger that put only PNG on the pasteboard.
2807         * WebView/WebHTMLView.mm:
2808         (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]):
2809         (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
2811 2008-05-29  Anders Carlsson  <andersca@apple.com>
2813         Reviewed by Brady.
2815         <rdar://problem/5970312> 
2816         icon file specified for stand alone web app causes crash if the icon can't be found
2817         
2818         Handle the case where iconData is null.
2819         
2820         * Misc/WebIconFetcher.mm:
2821         (WebIconFetcherClient::finishedFetchingIcon):
2823 2008-05-29  Anders Carlsson  <andersca@apple.com>
2825         Reviewed by Mitz.
2827         <rdar://problem/5971845>
2828         https://bugs.webkit.org/show_bug.cgi?id=19313
2829         Add version member to NPCocoaEvent
2831         Initialize the version member to 0 for all events.
2832         
2833         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
2834         (initializeEvent):
2835         (WebNetscapePluginEventHandlerCocoa::drawRect):
2836         (WebNetscapePluginEventHandlerCocoa::sendMouseEvent):
2837         (WebNetscapePluginEventHandlerCocoa::flagsChanged):
2838         (WebNetscapePluginEventHandlerCocoa::sendKeyEvent):
2839         (WebNetscapePluginEventHandlerCocoa::windowFocusChanged):
2840         (WebNetscapePluginEventHandlerCocoa::focusChanged):
2842 2008-05-29  Dan Bernstein  <mitz@apple.com>
2844         Reviewed by Jessica Kahn.
2846         - fix <rdar://problem/5965013> Page 2 does not print correctly
2848         When printing, _recursiveDisplayRectIfNeededIgnoringOpacity:... and
2849         _recursiveDisplayAllDirtyWithLockFocus:... can be invoked without
2850         -viewWillDraw being sent first, which could lead to painting without
2851         valid layout. The fix is to ensure up-to-date layout in those methods
2852         when printing.
2854         * WebView/WebHTMLView.mm:
2855         (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
2856         (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
2858 2008-05-28  Anders Carlsson  <andersca@apple.com>
2860         Reviewed by Jon.
2862         Remove workaround, this is no longer a problem.
2863         
2864         * WebView/WebView.mm:
2865         (-[WebView _removeObjectForIdentifier:]):
2867 2008-05-27  Geoffrey Garen  <ggaren@apple.com>
2869         Reviewed by Tim Hatcher.
2870         
2871         Fixed https://bugs.webkit.org/show_bug.cgi?id=19183
2872         REGRESSION (r33979): Crash in DebuggerCallFrame::functionName when
2873         clicking button in returnEvent-crash.html
2874         
2875         Added implementations for willExecuteProgram and didExecuteProgram, which
2876         take care of making sure we're not hanging on to stale data.
2878 2008-05-27  Timothy Hatcher  <timothy@apple.com>
2880         Fixes a bug where unplugging the monitor from a video card and
2881         moving it to another video card would no longer show OpenGL plugins
2882         until you relaunched Safari.
2884         <rdar://problem/5790983> Add AllowOfflineDisplays pixel format
2885         attribute to OpenGL contexts
2887         Reviewed by Kevin Decker.
2889         * Plugins/WebBaseNetscapePluginView.mm:
2890         (-[WebBaseNetscapePluginView _createWindowedAGLContext]): Added
2891         AGL_ALLOW_OFFLINE_RENDERERS for non-Tiger builds.
2892         (-[WebBaseNetscapePluginView _createWindowlessAGLContext]): Ditto.
2894 2008-05-25  Mark Rowe  <mrowe@apple.com>
2896         Reviewed by Darin Adler.
2898         <rdar://problem/5840884> _recursive_resumeNullEventsForAllNetscapePlugins and _pauseNullEvents not defined
2900         Follow-up for r33052.  _recursive_resumeNullEventsForAllNetscapePlugins and _recursive_pauseNullEventsForAllNetscapePlugins
2901         need to be declared in WebFramePrivate.h rather than WebFrameInternal.h so they can be used from outside of WebKit.
2903         * WebView/WebFrame.mm:
2904         (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
2905         (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]):
2906         * WebView/WebFrameInternal.h:
2907         * WebView/WebFramePrivate.h:
2909 2008-05-23  Timothy Hatcher  <timothy@apple.com>
2911         Fix attaching and detaching the Web Inspector. This change removes
2912         the clunky animation that never looked right and was causing issues
2913         where the inspected WebView would get into a no useable state.
2915         <rdar://problem/5958812> Attaching and Detaching the Web Inspector
2916         can cause the inspected WebVIew to be unusable
2918         Reviewed by Adam Roben.
2920         * WebCoreSupport/WebInspectorClient.mm:
2921         (-[WebInspectorWindowController close]): Removes animation code.
2922         Sets the frame directly and does a displayIfNeeded to prevent
2923         showing the Inspector in the page and in the Inspector window.
2924         (-[WebInspectorWindowController showWindow:]): Removes animation code.
2925         Sets the frame directly.
2926         (-[WebInspectorWindowController attach]): Simplified.
2927         (-[WebInspectorWindowController detach]): Ditto.
2929 2008-05-22  Dan Bernstein  <mitz@apple.com>
2931         Reviewed by Darin Adler.
2933         - fix broken documentation of
2934           webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:
2936         * WebView/WebUIDelegate.h: Fixed method name in HeaderDoc for
2937         -webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:
2939 2008-05-22  Timothy Hatcher  <timothy@apple.com>
2941         <rdar://problem/5956403> Update the Develop menu to match the new Inspector items
2943         Reviewed by Adam Roben.
2945         * WebCoreSupport/WebInspectorClient.mm:
2946         (-[WebInspectorWindowController showWebInspector:]):
2947         (-[WebInspectorWindowController showErrorConsole:]):
2948         (-[WebInspectorWindowController toggleDebuggingJavaScript:]):
2949         (-[WebInspectorWindowController toggleProfilingJavaScript:]):
2950         (-[WebInspectorWindowController validateUserInterfaceItem:]):
2951         * WebInspector/WebInspector.h:
2952         * WebInspector/WebInspector.mm:
2953         (-[WebInspector showConsole:]):
2954         (-[WebInspector showTimeline:]):
2955         (-[WebInspector isDebuggingJavaScript]):
2956         (-[WebInspector toggleDebuggingJavaScript:]):
2957         (-[WebInspector startDebuggingJavaScript:]):
2958         (-[WebInspector stopDebuggingJavaScript:]):
2959         (-[WebInspector isProfilingJavaScript]):
2960         (-[WebInspector toggleProfilingJavaScript:]):
2961         (-[WebInspector startProfilingJavaScript:]):
2962         (-[WebInspector stopProfilingJavaScript:]):
2964 2008-05-22  Josh Aas  <joshmoz@gmail.com>
2966         Reviewed by Anders.
2968         <rdar://problem/5956429> 
2969         https://bugs.webkit.org/show_bug.cgi?id=19192
2970         remove NPNVpluginEventModel, fix example plugin
2971         
2972         * Plugins/WebBaseNetscapePluginView.mm:
2973         (-[WebBaseNetscapePluginView getVariable:value:]):
2975 2008-05-21  Anders Carlsson  <andersca@apple.com>
2977         Reviewed by Maciej.
2979         Add WebIconFetcher.
2980         
2981         * Misc/WebIconFetcher.h: Added.
2982         * Misc/WebIconFetcher.mm: Added.
2983         (WebIconFetcherClient::WebIconFetcherClient):
2984         (WebIconFetcherClient::finishedFetchingIcon):
2985         (WebIconFetcherClient::setFetcher):
2986         (-[WebIconFetcher init]):
2987         (-[WebIconFetcher dealloc]):
2988         (-[WebIconFetcher finalize]):
2989         (-[WebIconFetcher cancel]):
2990         (-[WebIconFetcher _initWithIconFetcher:client:]):
2991         (+[WebIconFetcher _fetchApplicationIconForFrame:target:selector:]):
2992         * Misc/WebIconFetcherInternal.h: Added.
2993         * WebView/WebFrame.mm:
2994         (-[WebFrame fetchApplicationIcon:selector:]):
2995         * WebView/WebFramePrivate.h:
2997 === End merge of squirrelfish ===
2999 2008-05-21  Geoffrey Garen  <ggaren@apple.com>
3001         Reviewed by Tim Hatcher.
3002         
3003         Updated for API changes from merging with trunk WebCore's new debugger.
3005         * WebView/WebScriptDebugDelegate.mm:
3006         (-[WebScriptCallFrame evaluateWebScript:]): Explicitly check for an
3007         exception return, since the DebuggerCallFrame no longer automatically
3008         substitutes the exception for the return value.
3010         * WebView/WebScriptDebugger.mm: Use the dynamic global object, not the
3011         lexical global object, since the debugger attaches based on dynamic
3012         global object.
3014 2008-05-17  Geoffrey Garen  <ggaren@apple.com>
3016         Reviewed by Oliver Hunt.
3017         
3018         Re-enabled previously disabled debugging functionality.
3019         
3020         There are two major changes from how the WebKit debugger used to work:
3021         
3022         (1) All the interesting bits are implemented down in JavaScriptCore. The
3023         debugger just calls through to KJS::DebuggerCallFrame for everything.
3024         
3025         (2) Instead of copyihng a pointer to an ExecState once, the debugger
3026         copies the DebuggerCallFrame passed to it in each callback. This is
3027         because the VM no longer maintains a fully transparent execution state
3028         to which you can hold a pointer, and the DebuggerCallFrames it vends
3029         are temporaries.
3030         
3031         Also, we NULL out a WebScriptCallFrame's DebuggerCallFrame upon return
3032         from its function. This is safer than the old method, which was to
3033         hold a stale ExecState* and hope for the best.
3035 2008-05-13  Geoffrey Garen  <ggaren@apple.com>
3037         Reviewed by Oliver Hunt.
3039         Updated for API changes in KJS::Debugger.
3041         * WebView/WebFrame.mm:
3042         (-[WebFrame _attachScriptDebugger]): Changed the order of operations to
3043         fix an ASSERT that can happen when re-entering _attachScriptDebugger.
3045 2008-05-13  Geoffrey Garen  <ggaren@apple.com>
3047         Reviewed by Oliver Hunt.
3048         
3049         Updated WebScriptDebugger API to accept a SourceProvider instead
3050         of a WebCore::String, to avoid copying.
3052         (WebScriptDebugger::sourceParsed): Updated this function not to return
3053         a value.
3055 2008-04-30  Geoffrey Garen  <ggaren@apple.com>
3057         Build fix: #ifdef'd out some code that doesn't work anymore.
3059 2008-04-30  Geoffrey Garen  <ggaren@apple.com>
3061         Reviewed by Oliver Hunt.
3062         
3063         #ifdef'd out some debugger code that doesn't work anymore.
3065         * WebView/WebScriptDebugDelegate.mm:
3066         (-[WebScriptCallFrame scopeChain]):
3068 2008-04-21  Geoffrey Garen  <ggaren@apple.com>
3070         Build fix.
3072         * ChangeLog:
3073         * WebView/WebScriptDebugDelegate.mm:
3074         (-[WebScriptCallFrame scopeChain]):
3076 2008-03-30  Geoffrey Garen  <ggaren@apple.com>
3078         Reviewed by Oliver Hunt.
3079         
3080         Build fix.
3082 === Start merge of squirrelfish ===
3084 2008-05-21  Darin Adler  <darin@apple.com>
3086         - fix build
3088         * WebView/WebViewPrivate.h: Remove declaration of closeWithFastTeardown. We can add it back later
3089         if we want, but if we do, we should probably make some refinements like checking _private->closed
3090         and applicationIsTerminating.
3092 2008-05-21  Darin Adler  <darin@apple.com>
3094         Reviewed by Anders and Kevin Decker.
3096         - fix <rdar://problem/5951130> REGRESSION: crash on quit after reopening windows from previous session
3098         * WebView/WebView.mm:
3099         (-[WebViewPrivate dealloc]): Fix assertions to not complain when fast teardown is used.
3100         (-[WebView _closePluginDatabases]): Factored out some common code from both versions of close.
3101         (-[WebView _closeWithFastTeardown]): Added an underscore to this method's name, since it's internal.
3102         Streamlined the code a bit. Added a line of code to set _private->closed (this is the bug fix).
3103         (-[WebView _close]): Changed for new method name and to use _closePluginDatabases.
3105 2008-05-19  Stephanie Lewis  <slewis@apple.com>
3107         Reviewed by Darin Adler.
3108     
3109         more fast teardown performance work
3111         * Misc/WebDownload.m:
3112         (-[WebDownloadInternal downloadDidBegin:]):
3113         (-[WebDownloadInternal downloadDidFinish:]):
3114         (-[WebDownloadInternal download:didFailWithError:]):
3115         * WebCoreSupport/WebChromeClient.h:
3116         * WebCoreSupport/WebChromeClient.mm:
3117         (WebChromeClient::disableSuddenTermination):
3118         (WebChromeClient::enableSuddenTermination):
3120 2008-05-18  Dan Bernstein  <mitz@apple.com>
3122         Reviewed by Sam Weinig.
3124         - fix <rdar://problem/5944596> IDNs are displayed as punycode in the authentication panel
3126         * Panels/WebAuthenticationPanel.m:
3127         (-[WebAuthenticationPanel setUpForChallenge:]):
3129 2008-05-16  Timothy Hatcher  <timothy@apple.com>
3131         Removes WebScriptDebugServer files and related calls. This removes
3132         the hooks that Drosera uses for debugging. Now that the Web Inspector
3133         has a better debugger, we don't need these anymore.
3135         Reviewed by Sam Weinig.
3137         * DefaultDelegates/WebScriptDebugServer.h: Removed.
3138         * DefaultDelegates/WebScriptDebugServer.m: Removed.
3139         * DefaultDelegates/WebScriptDebugServerPrivate.h: Removed.
3140         * WebCoreSupport/WebFrameLoaderClient.mm:
3141         * WebKit.exp:
3142         * WebView/WebScriptDebugDelegate.mm:
3143         * WebView/WebScriptDebugger.mm:
3144         (WebScriptDebugger::sourceParsed):
3145         (WebScriptDebugger::callEvent):
3146         (WebScriptDebugger::atStatement):
3147         (WebScriptDebugger::returnEvent):
3148         (WebScriptDebugger::exception):
3149         * WebView/WebView.mm:
3150         (-[WebView _commonInitializationWithFrameName:groupName:]):
3151         * WebView/WebViewPrivate.h:
3153 2008-05-16  Brady Eidson  <beidson@apple.com>
3155         Reviewed by Anders
3157         <rdar://problem/5942616> - Need to standardize LocalStorage persistence path
3159         Took the opportunity to touch up another pref that needs the same standardization.
3160         That pref is currently not in use on Mac.
3162         * WebView/WebPreferences.m:
3163         (-[WebPreferences _setFTPDirectoryTemplatePath:]):
3164         (-[WebPreferences _localStorageDatabasePath]):
3165         (-[WebPreferences _setLocalStorageDatabasePath:]):
3166         (-[WebPreferences _ftpDirectoryTemplatePath]):
3168 2008-05-16  Chris Fleizach  <cfleizach@apple.com>
3170         Reviewed by Alice Liu
3172         <rdar://problem/5710317> REGRESSION:Selecting ranges of text should be possible using the keyboard (15310)
3174         * WebView/WebFrame.mm:
3175         (-[WebFrame _accessibilityTree]):
3177 2008-05-15  Stephanie Lewis  <slewis@apple.com>
3178         
3179         fix mac build
3181         * WebView/WebView.mm:
3182         (-[WebView closeWithFastTeardown]):
3184 2008-05-15  Stephanie Lewis  <slewis@apple.com>
3186         Reviewed by Anders.
3188         Turn on fast teardown.  I added a preference for using full teardown because 
3189         the LEAKS output will be useless without a full teardown.  
3191         preference for fullteardown
3192         * WebView/WebPreferenceKeysPrivate.h:
3193         * WebView/WebPreferences.m:
3194         (-[WebPreferences setFullDocumentTeardownEnabled:]):
3195         (-[WebPreferences fullDocumentTeardownEnabled]):
3196         * WebView/WebPreferencesPrivate.h:
3197         
3198         on application quit dispatch unload events and destroy plugins then exit
3199         * WebView/WebView.mm:
3200         (-[WebView closeWithFastTeardown]):
3201         (-[WebView _close]):
3202         * WebView/WebViewPrivate.h:
3204 2008-05-15  Stephanie Lewis  <slewis@apple.com>
3206         Reviewed by Anders.
3208         get the pending frame unload count from WebCore
3210         * WebView/WebFrame.mm:
3211         (-[WebFrame _pendingFrameUnloadEventCount]):
3212         * WebView/WebFramePrivate.h:
3214 2008-05-15  John Sullivan  <sullivan@apple.com>
3216         Reviewed by Kevin Decker
3217         
3218         - fixed <rdar://problem/5940275> Inspector highlighting moves to bottom-left corner of 
3219           screen when new tab appears
3220           
3221         The highlight should go away entirely, but this simple patch just makes it not jump away.
3222         The issue with it not going away entirely is harder to fix and covered by <rdar://problem/5322306>
3224         * WebInspector/WebNodeHighlight.m:
3225         (-[WebNodeHighlight _repositionHighlightWindow]):
3226         Bail out if target view isn't in a window
3228 2008-05-15  Stephanie Lewis  <slewis@apple.com>
3230         Reviewed by Anders.
3232         Track views that contain plugin instances so that they can be destroyed at application
3233         quit without walking the entire document tree.
3235         Add/Remove Netscape plugin views from instance list.  Start/stop are when netscape
3236         plugins are created and destroyed
3237         * Plugins/WebBaseNetscapePluginView.mm:
3238         (-[WebBaseNetscapePluginView start]):
3239         (-[WebBaseNetscapePluginView stop]):
3241         Add/remove WebKit plugin views from instance list
3242         * Plugins/WebPluginController.mm:
3243         (-[WebPluginController addPlugin:]):
3244         (-[WebPluginController destroyPlugin:]):
3245         (-[WebPluginController destroyAllPlugins]):
3247         Add a set of views with plugin instances to the WebPluginDatabase
3248         * Plugins/WebPluginDatabase.h:
3249         * Plugins/WebPluginDatabase.mm:
3250         (-[WebPluginDatabase init]):
3251         (-[WebPluginDatabase dealloc]):
3252         (-[WebPluginDatabase addPluginInstanceView:]):
3253         (-[WebPluginDatabase removePluginInstanceView:]):
3254         (-[WebPluginDatabase removePluginInstanceViewsFor:]):
3255         (-[WebPluginDatabase destroyAllPluginInstanceViews]):
3256         
3257         Handle cases where plugin views are detached before the plugin is destroyed.
3258         * WebCoreSupport/WebFrameLoaderClient.mm:
3259         (WebFrameLoaderClient::detachedFromParent2):
3260         (WebFrameLoaderClient::transitionToCommittedFromCachedPage):
3261         (WebFrameLoaderClient::transitionToCommittedForNewPage):
3263         Add plugin instances to the set in the WebPluginDatabase by way of the WebView
3264         * WebView/WebHTMLView.mm:
3265         (-[WebHTMLView _destroyAllWebPlugins]):
3266         * WebView/WebHTMLViewInternal.h:
3267         * WebView/WebView.mm:
3268         (-[WebView addPluginInstanceView:]):
3269         (-[WebView removePluginInstanceView:]):
3270         (-[WebView removePluginInstanceViewsFor:]):
3271         * WebView/WebViewInternal.h:
3273 2008-05-15  Brady Eidson  <beidson@apple.com>
3275         Reviewed by Tim Hatcher
3277         Until the settings/preferences equation can be reworked, we'll need to manually set the local storage path
3278         before setting the page group of the new page.
3279         
3280         * WebView/WebView.mm:
3281         (-[WebView _commonInitializationWithFrameName:groupName:]): Set the LocalStorage path 
3282           immediately after creating the page so it is in place for initializing the LocalStorageThread
3284 2008-05-15  Timothy Hatcher  <timothy@apple.com>
3286         Fixes the bug where the Web Inspector would flash white while resizing.
3287         This was cause by deferring the window creation.
3289         <rdar://problem/5873549> REGRESSION: Inspector flickers horribly while resizing (17979)
3291         Reviewed by Darin Adler.
3293         * WebCoreSupport/WebInspectorClient.mm:
3294         (-[WebInspectorWindowController window]): Don't defer the window creation.
3296 2008-05-15  Alexey Proskuryakov  <ap@webkit.org>
3298         Tiger build fix.
3300         * Misc/WebNSAttributedStringExtras.mm: Import WebTypesInternal.h for NSUInteger.
3302 2008-05-15  Adele Peterson  <adele@apple.com>
3304         Reviewed and landed by Alexey.
3306         Use TextIterator in +[NSAttributedString _web_attributedStringFromRange:].
3308         * Misc/WebNSAttributedStringExtras.mm:
3309         (+[NSAttributedString _web_attributedStringFromRange:]):
3311 2008-05-14  Eric Seidel  <eric@webkit.org>
3313         Reviewed by Oliver.
3315         Add missing NULL check to match rest of file, this was found by the editing fuzzer.
3317         * WebView/WebResource.mm:
3318         (-[WebResource data]):
3320 2008-05-14  Alexey Proskuryakov  <ap@webkit.org>
3322         Reviewed by Dan Bernstein.
3324         NPP_ValidAttributesForMarkedText should return NSArray*, not NSArray.
3326         * Plugins/nptextinput.h:
3328 2008-05-13  Anders Carlsson  <andersca@apple.com>
3330         Reviewed by Sam.
3332         Don't empty the application cache in _setCacheModel, since it will be called during initialization.
3333         Instead, do it in [WebCache empty].
3334         
3335         * Misc/WebCache.mm:
3336         (+[WebCache empty]):
3337         * WebView/WebView.mm:
3338         (+[WebView _setCacheModel:]):
3340 2008-05-13  chris fleizach  <cfleizach@apple.com>
3342         Reviewed by Beth Dakin
3344         <rdar://problem/4780592> WebKit application has its window announced as HTML content
3346         * WebCoreSupport/WebViewFactory.mm:
3347         (-[WebViewFactory AXWebAreaText]):
3349 2008-05-13  Timothy Hatcher  <timothy@apple.com>
3351         Fixes a crash seen in Xcode where CallUIDelegateReturningBoolean
3352         was referencing a nil WebView under validateUserInterfaceItem.
3353         The validateUserInterfaceItem methods was being called at a time
3354         when the WebHTMLView is being torndown.
3356         <rdar://problem/5806229> A crash occurs at CallUIDelegateReturningBoolean()
3357         while mousing down on menu bar after Xcode News window is opened
3359         Reviewed by Ada Chan.
3361         * WebView/WebHTMLView.mm:
3362         (-[WebHTMLView validateUserInterfaceItem:]): NULL check the WebView and
3363         return NO when it is nil. Adds a comment.
3364         * WebView/WebPDFView.mm:
3365         (-[WebPDFView validateUserInterfaceItem:]): Ditto.
3367 2008-05-13  Mark Rowe  <mrowe@apple.com>
3369         Reviewed by John Sullivan.
3371         <rdar://problem/5926425> HIWebViewCreateWithClass declared as API in HIWebView.h but never exported from WebKit.framework
3373         * Carbon/HIWebView.h: Remove HIWebViewCreateWithClass.
3374         * Carbon/HIWebView.m: Ditto.
3375         (HIWebViewCreate):
3376         (HIWebViewConstructor):
3378 2008-05-12  Dan Bernstein  <mitz@apple.com>
3380         Reviewed by Ada Chan.
3382         - WebKit/mac changes for https://bugs.webkit.org/show_bug.cgi?id=17097
3383           <rdar://problem/5715471> CGFontRefs (and HFONTs on Windows) leak because FontCache grows without bound
3385         Added font cache statistics and a function to purge inactive font data.
3387         * Misc/WebCoreStatistics.h:
3388         * Misc/WebCoreStatistics.mm:
3389         (+[WebCoreStatistics cachedFontDataCount]):
3390         (+[WebCoreStatistics cachedFontDataInactiveCount]):
3391         (+[WebCoreStatistics purgeInactiveFontData]):
3392         (+[WebCoreStatistics glyphPageCount]):
3394 2008-05-12  Mark Rowe  <mrowe@apple.com>
3396         Reviewed by Tim Hatcher.
3398         Decorate some deprecated delegate methods with the availability macros.
3400         The compiler doesn't appear to warn if a delegate implements these methods, but using the availability
3401         macros is good for consistency and documentation.
3403         * WebView/WebFrameLoadDelegate.h:
3404         * WebView/WebUIDelegate.h:
3406 2008-05-12  Mark Rowe  <mrowe@apple.com>
3408         Reviewed by Tim Hatcher.
3410         <rdar://problem/5835604> Deprecate HIWebView
3412         Use of HIWebView is deprecated in favor of embedding a WebView in a HICocoaView.
3414         * Carbon/CarbonUtils.h: Include the availability macro header and decorate the functions appropriately.
3415         * Carbon/HIWebView.h: Ditto.
3417 2008-05-12  Kevin Decker  <kdecker@apple.com>
3419         Reviewed by Anders.
3421         Fixed: <rdar://problem/5840884>_recursive_resumeNullEventsForAllNetscapePlugins and _pauseNullEvents not defined
3422         
3423         Re-added these SPI methods because they are needed by some clients. They were accidentally removed
3424         in changeset <http://trac.webkit.org/changeset/31028>
3425         
3426         * Plugins/WebBaseNetscapePluginView.h: Added stopTimers, restartTimers to the header.
3427         * WebView/WebFrame.mm:
3428         (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]): Re-addd.
3429         (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]): Ditto.
3430         * WebView/WebFrameInternal.h: Ditto.
3431         * WebView/WebHTMLView.mm: Ditto.
3432         (-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]): Ditto.
3433         (-[WebHTMLView _resumeNullEventsForAllNetscapePlugins]): Ditto.
3434         * WebView/WebHTMLViewInternal.h: Ditto.
3435         * WebView/WebHTMLViewPrivate.h: Ditto.
3437 2008-05-12  Anders Carlsson  <andersca@apple.com>
3439         Reviewed by Alexey.
3441         Empty the application cache when changing the cache model.
3442         
3443         * WebView/WebView.mm:
3444         (+[WebView _setCacheModel:]):
3446 2008-05-12  Anders Carlsson  <andersca@apple.com>
3448         Reviewed by Oliver.
3450         <rdar://problem/5774495> Make Unicode text input possible in Netscape-style plug-ins
3451         
3452         * Plugins/WebBaseNetscapePluginView.h:
3453         * Plugins/WebBaseNetscapePluginView.mm:
3454         (-[WebBaseNetscapePluginView start]):
3455         Get the plug-in text input vtable pointer.
3456         
3457         (-[WebBaseNetscapePluginView stop]):
3458         Set the plug-in text input vtable pointer to 0.
3459         
3460         (-[WebBaseNetscapePluginView inputContext]):
3461         Return 0 for Carbon plug-ins since we don't want Cocoa to handle text input for them.
3462         
3463         (-[WebBaseNetscapePluginView hasMarkedText]):        
3464         (-[WebBaseNetscapePluginView insertText:]):
3465         (-[WebBaseNetscapePluginView markedRange]):
3466         (-[WebBaseNetscapePluginView selectedRange]):
3467         (-[WebBaseNetscapePluginView setMarkedText:selectedRange:]):
3468         (-[WebBaseNetscapePluginView unmarkText]):
3469         (-[WebBaseNetscapePluginView validAttributesForMarkedText]):
3470         (-[WebBaseNetscapePluginView attributedSubstringFromRange:]):
3471         (-[WebBaseNetscapePluginView characterIndexForPoint:]):
3472         (-[WebBaseNetscapePluginView doCommandBySelector:]):
3473         (-[WebBaseNetscapePluginView firstRectForCharacterRange:]):
3474         (-[WebBaseNetscapePluginView conversationIdentifier]):
3475         Implement NSTextInput and call into the plug-in text input vtable.
3476         
3477         (browserTextInputFuncs):
3478         New method which returns the browser input vtable.
3479         
3480         (-[WebBaseNetscapePluginView getVariable:value:]):
3481         Support getting the browser input vtable pointer.
3482         
3483         * Plugins/WebNetscapePluginEventHandlerCocoa.h:
3484         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
3485         (WebNetscapePluginEventHandlerCocoa::keyDown):
3486         (WebNetscapePluginEventHandlerCocoa::sendKeyEvent):
3487         If the plug-in returns 0 when a NPCocoaEventKeyDown is passed to NPP_HandleEvent,
3488         it means that the event should be passed on to the input manager.
3489          
3490         * Plugins/npapi.mm:
3491         (NPN_MarkedTextAbandoned):
3492         (NPN_MarkedTextSelectionChanged):
3493         Add implementations of browser input method methods.
3494         
3495         * Plugins/nptextinput.h: Added.
3496         Add file with new text input API.
3498 2008-05-12  Alexey Proskuryakov  <ap@webkit.org>
3500         Roll out recent  threading changes (r32807, r32810, r32819, r32822) to simplify
3501         SquirrelFish merging.
3503         * Misc/WebCoreStatistics.mm:
3504         (+[WebCoreStatistics javaScriptObjectsCount]):
3505         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
3506         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
3507         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
3508         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
3509         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
3510         * WebView/WebScriptDebugDelegate.mm:
3511         (-[WebScriptCallFrame evaluateWebScript:]):
3513 2008-05-07  Anders Carlsson  <andersca@apple.com>
3515         Reviewed by Mitz.
3517         REGRESSION (3.1.1-TOT): Arrow keys are sticky in Google Maps street view
3518         https://bugs.webkit.org/show_bug.cgi?id=18880
3519         <rdar://problem/5909513>
3521         Stop suspending key up events before calling handleEvent.
3522         
3523         * Plugins/WebNetscapePluginEventHandlerCarbon.mm:
3524         (WebNetscapePluginEventHandlerCarbon::sendEvent):
3526 2008-05-06  Stephanie Lewis  <slewis@apple.com>
3528         Reviewed by Andersca.
3530         prepare for plugin fast teardown work - make WebPluginDatabase a objective C++ file.
3532         * Plugins/WebPluginDatabase.m: Removed.
3533         * Plugins/WebPluginDatabase.mm: Copied from WebKit/mac/Plugins/WebPluginDatabase.m.
3534         * Plugins/npapi.m: Removed.
3535         * Plugins/npapi.mm: Copied from WebKit/mac/Plugins/npapi.m.
3537 2008-05-06  Anders Carlsson  <andersca@apple.com>
3539         Reviewed by Darin Adler.
3541         Initialize numArchs to 0.
3542         
3543         * Plugins/WebBasePluginPackage.m:
3544         (-[WebBasePluginPackage isNativeLibraryData:]):
3546 2008-05-06  Anders Carlsson  <andersca@apple.com>
3548         Reviewed by Darin Adler.
3550         Add implementation of NPN_PopUpContextMenu.
3551         
3552         * Plugins/WebBaseNetscapePluginView.mm:
3553         (-[WebBaseNetscapePluginView popUpContextMenu:]):
3554         * Plugins/WebBaseNetscapePluginViewPrivate.h:
3555         * Plugins/WebNetscapePluginPackage.m:
3556         (-[WebNetscapePluginPackage load]):
3557         * Plugins/npapi.m:
3558         (NPN_PopUpContextMenu):
3560 2008-05-06  Anders Carlsson  <andersca@apple.com>
3562         Fix typo (don't read random memory).
3563         
3564         * Plugins/WebBasePluginPackage.m:
3565         (-[WebBasePluginPackage isNativeLibraryData:]):
3567 2008-05-05  Anders Carlsson  <andersca@apple.com>
3569         Reviewed by Darin Adler.
3571         Change the isNativeLibraryData: method to handle universal binaries.
3572         
3573         * Plugins/WebBasePluginPackage.m:
3574         (swapIntsInHeader):
3575         (-[WebBasePluginPackage isNativeLibraryData:]):
3577 2008-05-06  Brady Eidson  <beidson@apple.com>
3579         Reviewed by Darin Adler
3581         Preparation for upcoming work making LocalStorage persistent.
3583         When the application terminates, all LocalStorage areas must be sync'ed out to disk first.
3585         * WebView/WebView.mm:
3586         (+[WebView _applicationWillTerminate]):  Close all LocalStorage areas before quitting.
3588 2008-05-05  Sam Weinig  <sam@webkit.org>
3590         Reviewed by Darin Adler.
3592         Fix for <rdar://problem/5884383>
3593         Escape look-a-like characters from the the entire url.
3595         * Misc/WebNSURLExtras.mm:
3596         (escapeUnsafeCharacters):
3597         (-[NSURL _web_userVisibleString]):
3599 2008-05-05  Justin Garcia  <justin.garcia@apple.com>
3601         Reviewed by Darin Adler.
3602         
3603         <rdar://problem/5865171> REGRESSION: Creating a new quote places caret at beginning of quote instead of the end
3605         * WebView/WebView.mm:
3606         (-[WebView _updateSettingsFromPreferences:]): Disable Range mutation on changes to
3607         the document for Tiger and Leopard Mail.  There is code in Mail that does it, and
3608         the two interfere.
3610 2008-05-05  Sam Weinig  <sam@webkit.org>
3612         Reviewed by Tim Hatcher.
3614         Make the Inspector's localizable strings file match the format used by Dashboard widgets.
3616         * WebCoreSupport/WebInspectorClient.mm:
3617         (WebInspectorClient::localizedStringsURL):
3619 2008-05-05  Anders Carlsson  <andersca@apple.com>
3621         Reviewed by Jess.
3623         Apparently preflighting can cause hangs for some reason. Revert this for now.
3624         
3625         * Plugins/WebNetscapePluginPackage.m:
3626         (-[WebNetscapePluginPackage _initWithPath:]):
3627         * Plugins/WebPluginPackage.m:
3628         (-[WebPluginPackage initWithPath:]):
3630 2008-05-05  Darin Adler  <darin@apple.com>
3632         Reviewed by Mitz.
3634         - https://bugs.webkit.org/show_bug.cgi?id=18789
3635           fix some shouldCloseWithWindow edge cases
3637         * WebView/WebView.mm:
3638         (-[WebView viewWillMoveToWindow:]): Fix bug where we would stop observing the
3639         NSWindowWillCloseNotification if the view was moved out of the window but still
3640         had that window set as the host window. Also make sure this function doesn't do
3641         anything if the WebView is already closed.
3642         (-[WebView setHostWindow:]): Ditto.
3644 2008-05-04  David Kilzer  <ddkilzer@apple.com>
3646         Make parameters match for WebChromeClient::addMessageToConsole()
3648         Reviewed by John.
3650         * WebCoreSupport/WebChromeClient.h:
3651         (WebChromeClient::addMessageToConsole): Renamed sourceID parameter
3652         to sourceURL to match implementation in WebChromeClient.mm.
3654 2008-05-02  Anders Carlsson  <andersca@apple.com>
3656         Reviewed by Mark.
3658         Various Cocoa event model and 64-bit plug-in fixes.
3659         
3660         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
3661         (WebNetscapePluginEventHandlerCocoa::sendMouseEvent):
3662         Set click count.
3663         
3664         (WebNetscapePluginEventHandlerCocoa::flagsChanged):
3665         (WebNetscapePluginEventHandlerCocoa::sendKeyEvent):
3666         Don't try to get the mouse location for keyboard events.
3667         
3668         * Plugins/WebPluginPackage.m:
3669         (-[WebPluginPackage initWithPath:]):
3670         Preflight the bundle so we won't show 32-bit WebKit plug-ins when running as 64-bit.
3672 2008-05-02  Anders Carlsson  <andersca@apple.com>
3674         Reviewed by Sam.
3676         The event union is now named.
3677         
3678         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
3679         (WebNetscapePluginEventHandlerCocoa::drawRect):
3680         (WebNetscapePluginEventHandlerCocoa::sendMouseEvent):
3681         (WebNetscapePluginEventHandlerCocoa::flagsChanged):
3682         (WebNetscapePluginEventHandlerCocoa::sendKeyEvent):
3683         (WebNetscapePluginEventHandlerCocoa::windowFocusChanged):
3684         (WebNetscapePluginEventHandlerCocoa::focusChanged):
3686 2008-05-02  Anders Carlsson  <andersca@apple.com>
3688         Reviewed by Mark.
3690         Make sure that 32-bit only plug-ins aren't shown when running as 64-bit.
3691         
3692         Call preflightAndReturnError on the bundle, which will check if any of the architectures
3693         in the bundle match the current architecture.
3694         
3695         * Plugins/WebNetscapePluginPackage.m:
3696         (-[WebNetscapePluginPackage _initWithPath:]):
3698 2008-05-02  Alexey Proskuryakov  <ap@webkit.org>
3700         Reviewed by Geoffrey Garen.
3702         https://bugs.webkit.org/show_bug.cgi?id=18826
3703         Make JavaScript heap per-thread
3705         * Misc/WebCoreStatistics.mm:
3706         (+[WebCoreStatistics javaScriptObjectsCount]):
3707         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
3708         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
3709         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
3710         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
3711         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
3712         Replaced static Collector calls with calls to a current thread's instance.
3714         * WebView/WebScriptDebugDelegate.mm:
3715         (-[WebScriptCallFrame evaluateWebScript:]):
3716         Pass ExecState to jsString().
3718 2008-05-01  Anders Carlsson  <andersca@apple.com>
3720         Reviewed by Mark.
3722         64-bit NPAPI plugin build fixes.
3723         
3724         * Plugins/WebBaseNetscapePluginView.mm:
3725         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
3726         (-[WebBaseNetscapePluginView updateAndSetWindow]):
3727         (-[WebBaseNetscapePluginView start]):
3728         (-[WebBaseNetscapePluginView windowBecameKey:]):
3729         * Plugins/WebNetscapeDeprecatedFunctions.c:
3730         * Plugins/WebNetscapeDeprecatedFunctions.h:
3731         * Plugins/WebNetscapePluginEventHandler.mm:
3732         (WebNetscapePluginEventHandler::create):
3733         * Plugins/WebNetscapePluginEventHandlerCarbon.h:
3734         * Plugins/WebNetscapePluginEventHandlerCarbon.mm:
3735         * Plugins/WebPluginDatabase.m:
3736         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
3738 2008-05-01  Anders Carlsson  <andersca@apple.com>
3740         Reviewed by Tim.
3742         Remove duplicate npfunctions.h header from WebKit.
3744         * MigrateHeaders.make:
3745         Migrate npfunctions.h
3746         
3747         * Plugins/npfunctions.h: Removed.
3749 2008-05-01  Anders Carlsson  <andersca@apple.com>
3751         Reviewed by John.
3752         
3753         Add null checks for the event handler.
3754         
3755         * Plugins/WebBaseNetscapePluginView.mm:
3756         (-[WebBaseNetscapePluginView stopTimers]):
3757         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
3759 2008-05-01  Anders Carlsson  <andersca@apple.com>
3761         Fix 64-bit build.
3762         
3763         * Plugins/WebNetscapePluginEventHandlerCocoa.h:
3764         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
3765         * WebCoreSupport/WebFrameLoaderClient.mm:
3767 2008-05-01  Anders Carlsson  <andersca@apple.com>
3769         Fix build.
3770         
3771         * Plugins/npfunctions.h:
3773 2008-05-01  Anders Carlsson  <andersca@apple.com>
3775         Reviewed by Adam.
3777         Forward mouse move events to the Netscape plug-in view.
3778         
3779         * Plugins/WebBaseNetscapePluginView.h:
3780         * Plugins/WebBaseNetscapePluginView.mm:
3781         (-[WebBaseNetscapePluginView handleMouseMoved:]):
3782         New method that just calls the current event handler.
3783         
3784         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
3785         (WebNetscapePluginEventHandlerCocoa::flagsChanged):
3786         NSFlagsChanged is not a regular keyboard event and some of the NSEvent accessors
3787         don't work on it so don't call them.
3788         
3789         * WebCoreSupport/WebFrameLoaderClient.mm:
3790         (NetscapePluginWidget::NetscapePluginWidget):
3791         New Widget subclass to be used for Netscape plug-ins.
3792         
3793         (NetscapePluginWidget::handleEvent):
3794         Forward NSMouseMoved events to the plug-in.
3795         
3796         (WebFrameLoaderClient::createPlugin):
3797         Wrap the plug-in view in a NetscapePluginWidget.
3799 2008-05-01  Alp Toker  <alp@nuanti.com>
3801         Rubber-stamped by Anders.
3803         GTK+ build fix for changes in r32752. Use int32, not int32_t types in
3804         npapi.h.
3806         Additional fix to use same signedness in npapi.h and Mac for the
3807         interval parameter.
3809         * Plugins/WebBaseNetscapePluginView.h:
3810         * Plugins/WebBaseNetscapePluginView.mm:
3811         (PluginTimer::PluginTimer):
3812         (-[WebBaseNetscapePluginView stopTimers]):
3813         (-[WebBaseNetscapePluginView restartTimers]):
3814         (-[WebBaseNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]):
3815         (-[WebBaseNetscapePluginView unscheduleTimer:]):
3816         * Plugins/WebBaseNetscapePluginViewPrivate.h:
3817         * Plugins/npapi.m:
3818         (NPN_ScheduleTimer):
3819         (NPN_UnscheduleTimer):
3820         * Plugins/npfunctions.h:
3822 2008-04-30  Anders Carlsson  <andersca@apple.com>
3824         Reviewed by Adam.
3826         Add new Cocoa event model and the NPN_ScheduleTimer/NPN_UnscheduleTimer methods.
3827         
3828         * Plugins/WebBaseNetscapePluginView.h:
3829         * Plugins/WebBaseNetscapePluginView.mm:
3830         (PluginTimer::PluginTimer):
3831         (PluginTimer::start):
3832         (PluginTimer::fired):
3833         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
3834         (-[WebBaseNetscapePluginView stopTimers]):
3835         (-[WebBaseNetscapePluginView restartTimers]):
3836         (-[WebBaseNetscapePluginView scrollWheel:]):
3837         (-[WebBaseNetscapePluginView flagsChanged:]):
3838         (-[WebBaseNetscapePluginView start]):
3839         (-[WebBaseNetscapePluginView eventModel]):
3840         (-[WebBaseNetscapePluginView fini]):
3841         (-[WebBaseNetscapePluginView getVariable:value:]):
3842         (-[WebBaseNetscapePluginView setVariable:value:]):
3843         (-[WebBaseNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]):
3844         (-[WebBaseNetscapePluginView unscheduleTimer:]):
3845         * Plugins/WebBaseNetscapePluginViewInternal.h:
3846         * Plugins/WebBaseNetscapePluginViewPrivate.h:
3847         * Plugins/WebNetscapePluginEventHandler.h:
3848         * Plugins/WebNetscapePluginEventHandler.mm:
3849         (WebNetscapePluginEventHandler::create):
3850         * Plugins/WebNetscapePluginEventHandlerCarbon.h:
3851         * Plugins/WebNetscapePluginEventHandlerCarbon.mm:
3852         (WebNetscapePluginEventHandlerCarbon::scrollWheel):
3853         (WebNetscapePluginEventHandlerCarbon::flagsChanged):
3854         (WebNetscapePluginEventHandlerCarbon::platformWindow):
3855         * Plugins/WebNetscapePluginEventHandlerCocoa.h: Added.
3856         (WebNetscapePluginEventHandlerCocoa::startTimers):
3857         (WebNetscapePluginEventHandlerCocoa::stopTimers):
3858         * Plugins/WebNetscapePluginEventHandlerCocoa.mm: Added.
3859         (WebNetscapePluginEventHandlerCocoa::WebNetscapePluginEventHandlerCocoa):
3860         (WebNetscapePluginEventHandlerCocoa::drawRect):
3861         (WebNetscapePluginEventHandlerCocoa::mouseDown):
3862         (WebNetscapePluginEventHandlerCocoa::mouseDragged):
3863         (WebNetscapePluginEventHandlerCocoa::mouseEntered):
3864         (WebNetscapePluginEventHandlerCocoa::mouseExited):
3865         (WebNetscapePluginEventHandlerCocoa::mouseMoved):
3866         (WebNetscapePluginEventHandlerCocoa::mouseUp):
3867         (WebNetscapePluginEventHandlerCocoa::scrollWheel):
3868         (WebNetscapePluginEventHandlerCocoa::sendMouseEvent):
3869         (WebNetscapePluginEventHandlerCocoa::keyDown):
3870         (WebNetscapePluginEventHandlerCocoa::keyUp):
3871         (WebNetscapePluginEventHandlerCocoa::flagsChanged):
3872         (WebNetscapePluginEventHandlerCocoa::sendKeyEvent):
3873         (WebNetscapePluginEventHandlerCocoa::windowFocusChanged):
3874         (WebNetscapePluginEventHandlerCocoa::focusChanged):
3875         (WebNetscapePluginEventHandlerCocoa::platformWindow):
3876         (WebNetscapePluginEventHandlerCocoa::sendEvent):
3877         * Plugins/WebNetscapePluginPackage.m:
3878         (-[WebNetscapePluginPackage load]):
3879         * Plugins/npapi.m:
3880         (NPN_ScheduleTimer):
3881         (NPN_UnscheduleTimer):
3882         * Plugins/npfunctions.h:
3884 2008-04-30  Brady Eidson  <beidson@apple.com>
3886         Fix my WebPreferences revert check-in
3888         * WebView/WebView.mm:
3889         (-[WebView _preferencesChangedNotification:]):
3891 2008-04-30  Brady Eidson  <beidson@apple.com>
3893         Rubberstamped by John Sullivan
3895         Revert the remainder of my original preferences changes from last week.
3896         They caused a massive PLT regression (too many notifications being sent out
3897         or listened to that weren't previously) and it's not in my schedule to refine
3898         the preferences code instead of working on my feature!
3900         * WebView/WebView.mm:
3901         (-[WebView _updateSettingsFromPreferences:]):
3902         (-[WebView _commonInitializationWithFrameName:groupName:]):
3904 2008-04-30  Anders Carlsson  <andersca@apple.com>
3906         Fix the 64-bit build.
3907         
3908         * Plugins/WebNetscapePluginEventHandler.h:
3909         * Plugins/WebNetscapePluginEventHandler.mm:
3910         * Plugins/WebNetscapePluginEventHandlerCarbon.h:
3911         * Plugins/WebNetscapePluginEventHandlerCarbon.mm:
3913 2008-04-29  David D. Kilzer  <ddkilzer@apple.com>
3915         BUILD FIX for Release build.
3917         * Plugins/WebNetscapePluginEventHandlerCarbon.mm:
3918         (WebNetscapePluginEventHandlerCarbon::drawRect): Declare acceptedEvent
3919         separately so the compiler doesn't complain about an unused variable.
3920         (WebNetscapePluginEventHandlerCarbon::TSMEventHandler): Ditto.
3922 2008-04-29  Anders Carlsson  <andersca@apple.com>
3924         Reviewed by Adam.
3926         Refactor the Carbon event handling code out into a separate class in preparation for adding
3927         the Cocoa event handling code.
3928         
3929         * Plugins/WebBaseNetscapePluginView.h:
3930         * Plugins/WebBaseNetscapePluginView.mm:
3931         (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]):
3932         (-[WebBaseNetscapePluginView sendActivateEvent:]):
3933         (-[WebBaseNetscapePluginView sendDrawRectEvent:]):
3934         (-[WebBaseNetscapePluginView stopTimers]):
3935         (-[WebBaseNetscapePluginView restartTimers]):
3936         (-[WebBaseNetscapePluginView setHasFocus:]):
3937         (-[WebBaseNetscapePluginView mouseDown:]):
3938         (-[WebBaseNetscapePluginView mouseUp:]):
3939         (-[WebBaseNetscapePluginView mouseEntered:]):
3940         (-[WebBaseNetscapePluginView mouseExited:]):
3941         (-[WebBaseNetscapePluginView mouseDragged:]):
3942         (-[WebBaseNetscapePluginView keyUp:]):
3943         (-[WebBaseNetscapePluginView keyDown:]):
3944         (-[WebBaseNetscapePluginView cut:]):
3945         (-[WebBaseNetscapePluginView copy:]):
3946         (-[WebBaseNetscapePluginView paste:]):
3947         (-[WebBaseNetscapePluginView selectAll:]):
3948         (-[WebBaseNetscapePluginView start]):
3949         (-[WebBaseNetscapePluginView stop]):
3950         (-[WebBaseNetscapePluginView fini]):
3951         (-[WebBaseNetscapePluginView drawRect:]):
3952         (-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
3953         (-[WebBaseNetscapePluginView viewDidMoveToWindow]):
3954         (-[WebBaseNetscapePluginView windowBecameKey:]):
3955         (-[WebBaseNetscapePluginView windowResignedKey:]):
3956         (-[WebBaseNetscapePluginView windowDidMiniaturize:]):
3957         (-[WebBaseNetscapePluginView windowDidDeminiaturize:]):
3958         (-[WebBaseNetscapePluginView loginWindowDidSwitchFromUser:]):
3959         (-[WebBaseNetscapePluginView loginWindowDidSwitchToUser:]):
3960         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
3961         (-[WebBaseNetscapePluginView _viewHasMoved]):
3962         * Plugins/WebBaseNetscapePluginViewInternal.h:
3963         * Plugins/WebNetscapePluginEmbeddedView.h:
3964         * Plugins/WebNetscapePluginEventHandler.h: Added.
3965         (WebNetscapePluginEventHandler::~WebNetscapePluginEventHandler):
3966         (WebNetscapePluginEventHandler::currentEventIsUserGesture):
3967         (WebNetscapePluginEventHandler::WebNetscapePluginEventHandler):
3968         * Plugins/WebNetscapePluginEventHandler.mm: Added.
3969         (WebNetscapePluginEventHandler::create):
3970         * Plugins/WebNetscapePluginEventHandlerCarbon.h: Added.
3971         * Plugins/WebNetscapePluginEventHandlerCarbon.mm: Added.
3972         (WebNetscapePluginEventHandlerCarbon::WebNetscapePluginEventHandlerCarbon):
3973         (getCarbonEvent):
3974         (modifiersForEvent):
3975         (WebNetscapePluginEventHandlerCarbon::sendNullEvent):
3976         (WebNetscapePluginEventHandlerCarbon::drawRect):
3977         (WebNetscapePluginEventHandlerCarbon::mouseDown):
3978         (WebNetscapePluginEventHandlerCarbon::mouseUp):
3979         (WebNetscapePluginEventHandlerCarbon::mouseEntered):
3980         (WebNetscapePluginEventHandlerCarbon::mouseExited):
3981         (WebNetscapePluginEventHandlerCarbon::mouseDragged):
3982         (WebNetscapePluginEventHandlerCarbon::mouseMoved):
3983         (WebNetscapePluginEventHandlerCarbon::keyDown):
3984         (keyMessageForEvent):
3985         (WebNetscapePluginEventHandlerCarbon::keyUp):
3986         (WebNetscapePluginEventHandlerCarbon::focusChanged):
3987         (WebNetscapePluginEventHandlerCarbon::windowFocusChanged):
3988         (WebNetscapePluginEventHandlerCarbon::TSMEventHandler):
3989         (WebNetscapePluginEventHandlerCarbon::installKeyEventHandler):
3990         (WebNetscapePluginEventHandlerCarbon::removeKeyEventHandler):
3991         (WebNetscapePluginEventHandlerCarbon::nullEventTimerFired):
3992         (WebNetscapePluginEventHandlerCarbon::startTimers):
3993         (WebNetscapePluginEventHandlerCarbon::stopTimers):
3994         (WebNetscapePluginEventHandlerCarbon::sendEvent):
3996 2008-04-29  Mark Rowe  <mrowe@apple.com>
3998         Reviewed by David Harrison.
4000         Ensure that WebDynamicScrollBarsView defines WebCoreScrollbarAlwaysOn to keep Mail building.
4002         * WebKit.exp:
4003         * WebView/WebDynamicScrollBarsView.h:
4004         * WebView/WebDynamicScrollBarsView.m:
4006 2008-04-29  Greg Bolsinga  <bolsinga@apple.com>
4008         Reviewed by Darin Adler.
4010         Wrapped Dashboard code with ENABLE(DASHBOARD_SUPPORT)
4012         * WebCoreSupport/WebChromeClient.h:
4013         * WebCoreSupport/WebChromeClient.mm:
4014         * WebView/WebClipView.m:
4015         (-[WebClipView scrollWheel:]):
4016         * WebView/WebHTMLView.mm:
4017         (-[WebHTMLView addMouseMovedObserver]):
4018         (-[WebHTMLView removeMouseMovedObserver]):
4019         (-[WebHTMLView acceptsFirstMouse:]):
4020         * WebView/WebUIDelegatePrivate.h:
4021         * WebView/WebView.mm:
4022         (-[WebViewPrivate init]):
4023         * WebView/WebViewPrivate.h:
4025 2008-04-28  Rob Buis  <buis@kde.org>
4027         Reviewed by Maciej.
4029         Build fix for Tiger.
4031         * WebView/WebView.mm:
4032         (WebKitInitializeApplicationCachePathIfNecessary):
4034 2008-04-28  Adele Peterson  <adele@apple.com>
4036         Reviewed by Dan Bernstein, Tim Hatcher, Anders Carlsson, and Darin Adler.
4038         WebKit part of fix for <rdar://problem/3709505>
4039         Safari should have a way to upload bundles from the file upload control (as zip)
4041         Added UIDelegate methods to let the application handle generating replacement files for uploads.
4042         In this case, Safari will create archived files for bundles so they can be uploaded properly.
4044         * DefaultDelegates/WebDefaultUIDelegate.m:
4045         (-[WebDefaultUIDelegate webView:shouldReplaceUploadFile:usingGeneratedFilename:]):
4046         (-[WebDefaultUIDelegate webView:generateReplacementFile:]):
4047         * WebCoreSupport/WebChromeClient.h:
4048         * WebCoreSupport/WebChromeClient.mm:
4049         (WebChromeClient::shouldReplaceWithGeneratedFileForUpload):
4050         (WebChromeClient::generateReplacementFile):
4051         * WebView/WebUIDelegatePrivate.h:
4053 2008-04-28  Anders Carlsson  <andersca@apple.com>
4055         Reviewed by Sam, Mark, Adele and Darin.
4057         Initialize the application cache path.
4058         
4059         * WebView/WebView.mm:
4060         (WebKitInitializeApplicationCachePathIfNecessary):
4061         (-[WebView _commonInitializationWithFrameName:groupName:]):
4063 2008-04-28  Alice Liu  <alice.liu@apple.com>
4065         Reviewed by Darin Adler.
4067         Fix <rdar://problem/4911289> Add tabindex property to all children 
4068         of HTMLElement (7138)
4069         http://bugs.webkit.org/show_bug.cgi?id=7138
4071         * MigrateHeaders.make:
4072         Removing DOMHTMLLabelElementPrivate.h and DOMHTMLLegendElementPrivate.h
4073         because now that focus() has been moved to DOMHTMLElement.h, these
4074         files are no longer needed.
4076 2008-04-25  Alexey Proskuryakov  <ap@webkit.org>
4078         Reviewed by Darin Adler.
4080         Fix run-webkit-tests --threading
4081         and provisionally fix <https://bugs.webkit.org/show_bug.cgi?id=18661>
4082         Proxy server issue in Sunday's Nightly
4084         * WebView/WebView.mm: (-[WebViewPrivate init]): Initialize threading. Previously, this was
4085         only done from icon database code, which is not robust enough.
4087 2008-04-20 Adam Barth <hk9565@gmail.com>
4089         Reviewed by Adam Roben and Sam Weinig.
4091         Updated WebSecurityOrigin to match new SecurityOrigin API.
4093         Collin Jackson <collinj-webkit@collinjackson.com> also contributed to this patch.
4095         * Storage/WebSecurityOrigin.mm:
4096         (-[WebSecurityOrigin host]):
4097         (-[WebSecurityOrigin domain]):
4098         * Storage/WebSecurityOriginPrivate.h:
4100 2008-04-25  Mark Rowe  <mrowe@apple.com>
4102         Rubber-stamped by Sam Weinig.
4104         Add some content to an empty ICU header file to prevent verification errors.
4106         * icu/unicode/utf_old.h:
4108 2008-04-25  Anders Carlsson  <andersca@apple.com>
4110         Reviewed by Sam.
4112         Add offlineWebApplicationCacheEnabled preference.
4113         
4114         * WebView/WebPreferenceKeysPrivate.h:
4115         * WebView/WebPreferences.m:
4116         (+[WebPreferences initialize]):
4117         (-[WebPreferences offlineWebApplicationCacheEnabled]):
4118         (-[WebPreferences setOfflineWebApplicationCacheEnabled:]):
4119         * WebView/WebPreferencesPrivate.h:
4120         * WebView/WebView.mm:
4121         (-[WebView _updateSettingsFromPreferences:]):
4123 2008-04-24  Mark Rowe  <mrowe@apple.com>
4125         Reviewed by Sam Weinig.
4127         Remove code for calculating the glyph cache size.
4129         * WebCoreSupport/WebSystemInterface.m:
4130         (InitWebCoreSystemInterface): Remove unused symbol.
4132 2008-04-24  Mark Rowe  <mrowe@apple.com>
4134         Reviewed by Sam Weinig.
4136         Add a definition of BUILDING_ON_LEOPARD to complement BUILDING_ON_TIGER.
4138         * WebKitPrefix.h:
4140 2008-04-24  Brady Eidson  <beidson@apple.com>
4142         Reviewed by Darin
4144         Fix layout test regressions from my earlier preferences/settings tweak.
4146         * WebView/WebView.mm:
4147         (-[WebView _commonInitializationWithFrameName:groupName:]): Even if we're not posting
4148           the notification to update the settings, each WebView still needs to register for the
4149           notification - restore that behavior.
4151 2008-04-24  Dan Bernstein  <mitz@apple.com>
4153         Reviewed by Darin Adler.
4155         - preparation for https://bugs.webkit.org/show_bug.cgi?id=3729
4156           <rdar://problem/4036353> REGRESSION: arrow keys move insertion bar backwards in RTL text
4158         * WebView/WebFrame.mm:
4159         (-[WebFrame _caretRectAtNode:offset:affinity:]): Changed to use
4160         VisiblePosition::caretRect() instead of the RenderObject method which
4161         was removed.
4163 2008-04-24  Brady Eidson  <beidson@apple.com>
4165         Reviewed by Darin
4167         Rework the Settings population again.
4169         * WebView/WebView.mm:
4170         (-[WebView _updateSettingsFromPreferences:]): This method is called both from _preferencesChangedNotification
4171           and directly from WebView's common init function.
4172         (-[WebView _preferencesChangedNotification:]):
4173         (-[WebView _commonInitializationWithFrameName:groupName:]): Call _updateSettingsFromPreferences immediately
4174           after creating the new Page
4176 2008-04-24  Darin Adler  <darin@apple.com>
4178         Reviewed by Geoff.
4180         - fix crash in regression test where we'd ask a frame for a user agent string
4181           after the WebView was already closed
4183         * WebCoreSupport/WebFrameLoaderClient.mm:
4184         (WebFrameLoaderClient::userAgent): Assert that the WebView is not nil. Also
4185         added some code to prevent the crash in release builds if this problem happens
4186         again.
4188 2008-04-24  Anders Carlsson  <andersca@apple.com>
4190         Reviewed by Sam.
4192         Change some String arguments to be const references instead.
4194         * WebCoreSupport/WebEditorClient.h:
4195         * WebCoreSupport/WebEditorClient.mm:
4196         (WebEditorClient::shouldInsertText):
4198 2008-04-24  John Sullivan  <sullivan@apple.com>
4200         Mac build fix
4201         
4202         * WebCoreSupport/WebViewFactory.mm:
4203         (-[WebViewFactory AXButtonActionVerb]):
4204         implement this method using the text in WebCoreLocalizedStrings.cpp
4205         (-[WebViewFactory AXRadioButtonActionVerb]):
4206         ditto
4207         (-[WebViewFactory AXTextFieldActionVerb]):
4208         ditto
4209         (-[WebViewFactory AXCheckedCheckBoxActionVerb]):
4210         ditto
4211         (-[WebViewFactory AXUncheckedCheckBoxActionVerb]):
4212         ditto
4213         (-[WebViewFactory AXLinkActionVerb]):
4214         ditto
4216 2008-04-23  Brady Eidson  <beidson@apple.com>
4218         Reviewed by Sam Weinig
4220         In some current work I noticed that when a new Page is created, it is possible that it requires info from its Settings
4221         object before the Settings object is initialized.  It seems quite prudent to post the preferences changed notification,
4222         thereby populating the Settings object, immediately after the Page is created.
4224         * WebView/WebView.mm:
4225         (-[WebView _commonInitializationWithFrameName:groupName:]): Post the notification right after the Page is created
4227 2008-04-24  John Sullivan  <sullivan@apple.com>
4229         Reviewed by Jess
4230         
4231         - fixed <rdar://problem/5886655> JavaScript input panel automatic resizing doesn't work right with HiDPI
4233         * Misc/WebNSControlExtras.m:
4234         (-[NSControl sizeToFitAndAdjustWindowHeight]):
4235         deploy userSpaceScaleFactor when using view distances on the window
4237 2008-04-22  Anders Carlsson  <andersca@apple.com>
4239         Reviewed by Darin Adler.
4241         Add NPN_Construct and NPN_PluginThreadAsyncCall declarations.
4242         
4243         * Plugins/npfunctions.h:
4245 2008-04-20  Matt Lilek  <webkit@mattlilek.com>
4247         Mysteriously reviewed by mitz|away.
4249         Bug 18111: Closing a tab while dragging crashes Safari
4250         https://bugs.webkit.org/show_bug.cgi?id=18111
4252         Null check the page before handling drag events.
4254         * WebView/WebView.mm:
4255         (-[WebView draggingUpdated:]):
4256         (-[WebView draggingExited:]):
4258 2008-04-19  Brady Eidson  <beidson@apple.com>
4260         Reviewed by Tim Hatcher
4262         Add a WebPreference for the path of the local storage persistent store.
4264         * WebView/WebPreferenceKeysPrivate.h:
4266         * WebView/WebPreferences.m:
4267         (-[WebPreferences _localStorageDatabasePath]):
4268         (-[WebPreferences _setLocalStorageDatabasePath:]):
4269         * WebView/WebPreferencesPrivate.h:
4271         * WebView/WebView.mm:
4272         (-[WebView _preferencesChangedNotification:]):
4274 2008-04-18  Brady Eidson  <beidson@apple.com>
4276         Reviewed by Sam Weinig
4278         Don't clear the PageGroup on _close, as the WebCore::Page destructor already does this.
4279         No reason to do the work twice...
4281         * WebView/WebView.mm:
4282         (-[WebView _close]):
4284 2008-04-17  Eric Seidel  <eric@webkit.org>
4286         Reviewed by beth.
4288         Rename Frame::renderer() to contentRenderer() and fix uses.
4290         * Misc/WebCoreStatistics.mm:
4291         * WebView/WebRenderNode.mm:
4292         (-[WebRenderNode initWithWebFrameView:]):
4294 2008-04-17  Jon Honeycutt  <jhoneycutt@apple.com>
4296         Reviewed by mrowe.
4298         * WebView/WebFrame.mm: Remove temporary build fix.
4300 2008-04-17  Mark Rowe  <mrowe@apple.com>
4302         Reviewed by Dan Bernstein.
4304         Fix <rdar://problem/5863552> REGRESSION (r30741): Attachments don't appear in the iChat message window after sending
4306         The order of arguments to -[NSDictionary initWithObjects:andKeys:] had been transposed accidentally during refactoring.
4308         * WebCoreSupport/WebFrameLoaderClient.mm:
4309         (WebFrameLoaderClient::createPlugin): Pass the arguments in the correct order.
4311 2008-04-17  Mark Rowe  <mrowe@apple.com>
4313         Rubber-stamped by Dan Bernstein.
4315         Fix the Mac build.
4317         * WebView/WebFrame.mm: Define HAVE_ACCESSIBILITY before including AccessibilityObject.h and AXObjectCache.h to get things building
4318         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
4319         for this to live going forward.
4321 2008-04-15  Kevin Decker  <kdecker@apple.com>
4323         Reviewed by Anders.
4325         <rdar://problem/5412759> CrashTracer: [USER] 22 crashes in Safari at com.apple.quicktime.webplugin: NPN_SetValue + 15403
4326         
4327         In certain situations, code in WebBasePluginPackage would load a plug-in only for the explicit reason of asking it to create a
4328         preference file, but wouldn't actually unload the bundle. This created problems for the QuickTime WebKit plug-in by unloading
4329         a bundle out from underneath itself.
4331         * Plugins/WebBasePluginPackage.h: Added unload method.
4332         * Plugins/WebBasePluginPackage.m:
4333         (-[WebBasePluginPackage unload]): Added new method. Currently, only Netscape plug-ins support unload.
4334         (-[WebBasePluginPackage pListForPath:createFile:]): Added a call to unload.
4335         * Plugins/WebNetscapePluginPackage.m:
4336         (-[WebNetscapePluginPackage unload]): Added.
4338 2008-04-15  Anders Carlsson  <andersca@apple.com>
4340         Reviewed by Adam.
4342         Add ENABLE_OFFLINE_WEB_APPLICATIONS to FEATURE_DEFINES.
4344         * Configurations/WebKit.xcconfig:
4346 2008-04-15  Brady Eidson  <beidson@apple.com>
4348         Reviewed by John Sullivan
4350         Do a more complete job adding the "WebArchiveDebugMode" pref
4352         * WebView/WebPreferences.m: Add both getter *and* setter
4353         (-[WebPreferences webArchiveDebugModeEnabled]):
4354         (-[WebPreferences setWebArchiveDebugModeEnabled:]):
4355         * WebView/WebPreferencesPrivate.h:
4357         * WebView/WebView.mm:
4358         (-[WebView _preferencesChangedNotification:]): Call the renamed getter
4360 2008-04-14  Brady Eidson  <beidson@apple.com>
4362         Reviewed by Anders
4364         Add a hidden pref to debug WebArchive loading.  With this pref on, when loading a WebArchive,
4365         if the resource isn't in the ArchiveResourceCollection, the loader will not fall back to the 
4366         network and will instead fail the load as "cancelled."
4368         * WebView/WebPreferenceKeysPrivate.h:
4370         * WebView/WebPreferences.m:
4371         (+[WebPreferences initialize]):
4372         (-[WebPreferences _webArchiveDebugModeEnabled]):
4373         * WebView/WebPreferencesPrivate.h:
4375         * WebView/WebView.mm:
4376         (-[WebView _preferencesChangedNotification:]):
4378 2008-04-11  David Hyatt  <hyatt@apple.com>
4380         Rename CachedResource ref/deref methods to addClient/removeClient.
4382         Reviewed by olliej
4384         * WebView/WebHTMLView.mm:
4385         (-[WebHTMLViewPrivate dealloc]):
4386         (-[WebHTMLViewPrivate finalize]):
4387         (-[WebHTMLViewPrivate clear]):
4388         (-[WebHTMLView setPromisedDragTIFFDataSource:WebCore::]):
4390 2008-04-07  Brady Eidson  <beidson@apple.com>
4392         Add "ENABLE_DOM_STORAGE" to keep in sync with the rest of the project
4394         * Configurations/WebKit.xcconfig:
4396 2008-04-04  Adam Roben  <aroben@apple.com>
4398         Use WebCore's ICU headers instead of our own copy
4400         Rubberstamped by Tim Hatcher.
4402         * Configurations/WebKit.xcconfig: Pick up ICU headers from WebCore's
4403         PrivateHeaders.
4405 2008-04-04  Adam Roben  <aroben@apple.com>
4407         Fix <rdar://problem/5804776> Would like to use WebCore's
4408         ForwardingHeaders in WebKit without manually creating copies
4410         Patch by Tim Hatcher, typed by me.
4412         * Configurations/WebKit.xcconfig: Use the copy of ForwardingHeaders in
4413         WebCore's PrivateHeaders instead of our own copy.
4415 2008-04-04  Ada Chan  <adachan@apple.com>
4417         Now we pass width and height directly as integers to format
4418         the window title for a standalone image.
4420         Reviewed by Dan.
4422         * WebCoreSupport/WebViewFactory.mm:
4423         (-[WebViewFactory imageTitleForFilename:width:height:]):
4425 2008-04-03  Nicholas Shanks  <webkit@nickshanks.com>
4427         Updated by Dan Bernstein. Reviewed by Dave Hyatt.
4429         - WebKit part of fixing http://bugs.webkit.org/show_bug.cgi?id=6484
4430           font-weight does not properly support graded weights
4432         * WebView/WebHTMLView.mm:
4433         (-[WebHTMLView _styleFromFontAttributes:]):
4434         (-[WebHTMLView _originalFontB]):
4435         (-[WebHTMLView _addToStyle:fontA:fontB:]):
4437 2008-04-02  Mark Rowe  <mrowe@apple.com>
4439         Reviewed by Oliver Hunt.
4441         Ensure that debug symbols are generated for x86_64 and ppc64 builds.
4443         * Configurations/Base.xcconfig:
4445 2008-03-31  Alice Liu  <alice.liu@apple.com>
4447         Reviewed by Darin Adler.
4449         * WebView/WebFrame.mm:
4450         (-[WebFrame _accessibilityTree]):
4451         The syntax for fetching an object from the AXObjectCache changed slightly
4453 2008-03-31  Brady Eidson  <beidson@apple.com>
4455         Reviewed by Jon Honeycutt
4456         
4457         Move a WebArchive loading check into WebCore
4459         * WebView/WebHTMLRepresentation.mm:
4460         (-[WebHTMLRepresentation receivedData:withDataSource:]): Don't check "isDisplayingWebArchive" as WebCore is now
4461           responsible for checking that state
4463 2008-03-31  Brady Eidson  <beidson@apple.com>
4465         Reviewed by Darin and Mitz's rubber stamp
4467         Remove dataForArchivedSelection(WebCore::Frame*) from the EditorClient - only usage is now directly in WebCore
4469         * WebCoreSupport/WebEditorClient.mm:
4470         * WebCoreSupport/WebEditorClient.h:
4472 2008-03-28  Brady Eidson  <beidson@apple.com>
4474         Rubberstamped by Darin Adler
4476         Remove WebArchiver.h/mm
4478         * WebView/WebArchiver.h: Removed.
4479         * WebView/WebArchiver.mm: Removed.
4481         * DOM/WebDOMOperations.mm:
4482         * WebCoreSupport/WebDragClient.mm:
4483         * WebCoreSupport/WebEditorClient.mm:
4484         * WebView/WebDataSource.mm:
4485         * WebView/WebHTMLView.mm:
4487 2008-03-28  Brady Eidson  <beidson@apple.com>
4489         Reviewed by Darin Adler
4491         Now that WebCore can create archives from a frame selection directly, we don't need it in WebArchiver anymore
4493         * WebCoreSupport/WebEditorClient.mm:
4494         (WebEditorClient::dataForArchivedSelection):
4496         * WebView/WebArchiver.h: Nuke archiveSelectionInFrame, as there are no remaining users
4497         * WebView/WebArchiver.mm: Ditto
4499         * WebView/WebHTMLView.mm:
4500         (-[WebHTMLView _writeSelectionWithPasteboardTypes:toPasteboard:cachedAttributedString:]):
4502 2008-03-28  Brady Eidson  <beidson@apple.com>
4504         Reviewed by Darin Adler
4506         More Kit->Core WebArchive changes.
4508         Create an archive from the current selection in a frame
4510         * WebView/WebArchiver.mm: Remove one more *undeclared* method, the last method will drop off
4511           easily in a followup
4513 2008-03-28  Brady Eidson  <beidson@apple.com>
4515         Reviewed by Sam Weinig
4517         WebArchive saga continues - Can now make archives from ranges in WebCore
4519         * DOM/WebDOMOperations.mm:
4520         (-[DOMRange webArchive]):
4521         (-[DOMRange markupString]):
4523         * WebView/WebArchiver.h: Remove newly obsolete [WebArchiver archiveRange:]
4524         * WebView/WebArchiver.mm:
4526 2008-03-28  Brady Eidson  <beidson@apple.com>
4528         Reviewed by Sam Weinig
4530         More Kit->Core webarchive code movement
4532         * DOM/WebDOMOperations.mm:
4533         (-[DOMNode markupString]): Call createFullMarkup() instead
4535         * WebView/WebFrame.mm: Remove obsolete _markupStringFromNode
4536         * WebView/WebFrameInternal.h: Ditto
4538 2008-03-28  Brady Eidson  <beidson@apple.com>
4540         Reviewed by Sam Weinig
4542         Fold [WebArchiver archiveFrame:] into WebDataSource - the last remaining caller
4544         * WebView/WebArchiver.h:
4545         * WebView/WebArchiver.mm:
4546         * WebView/WebDataSource.mm:
4547         (-[WebDataSource webArchive]):
4549 2008-03-28  Brady Eidson  <beidson@apple.com>
4551         Reviewed by Sam Weinig
4553         Remove unused [WebArchiver archiveNode:], made obsolete in r31400
4555         * WebView/WebArchiver.h:
4556         * WebView/WebArchiver.mm:
4558 2008-03-28  Brady Eidson  <beidson@apple.com>
4560         Reviewed by Darin
4562         "Yet another transitional step" to empty out WebKit-based code for archiving.
4564         With this patch, the key operation of "Creating a WebArchive rooted at a single Node" takes place
4565         entirely within WebCore, and opens the door to saving WebArchives on Windows.
4567         * DOM/WebDOMOperations.mm:
4568         * WebView/WebArchiver.mm:
4569         (+[WebArchiver _archiveWithMarkupString:fromFrame:nodes:]):
4571 2008-03-27  Brady Eidson  <beidson@apple.com>
4573         Reviewed by Adam Roben
4575         Move [WebDataSource mainResource] and [WebDataSource subresources] down into WebCore
4576         as the push to core-ify WebArchives continues.
4578         This patch also introduces a behavior change.  WebCore allows ArchiveResources with null or empty data.  
4579         WebKit has had the inexplicable distinction of allowing empty Data in a WebResource, but not null.  
4580         Since WebResource is API, I decided to leave it be to avoid a behavior change.  But internally created resources 
4581         (as in "while archiving a page") are accepting of null or empty data.
4583         This actually fixes a bug where not all subframes are archived, and resulted in a layout test change. 
4585         * WebView/WebDataSource.mm:
4586         (-[WebDataSource mainResource]): Call DocumentLoader implementation
4587         (-[WebDataSource subresources]): Ditto
4588         * WebView/WebFrame.mm: Remove [WebFrame _getAllResourceDatas:andResponses:] as its only caller is obsolete
4589         * WebView/WebFrameInternal.h:
4591 2008-03-27  Brady Eidson  <beidson@apple.com>
4593         Reviewed by Adam
4595         Change the "init from WebCore resource" version of WebResource to take PassRefPtr
4596         (more efficient)
4598         * WebView/WebResource.mm:
4599         (-[WebResource _initWithCoreResource:]):
4600         * WebView/WebResourceInternal.h:
4602 2008-03-26  Brady Eidson  <beidson@apple.com>
4604         Build fix - accidentally checked in this change which was work in progress
4606         * DOM/WebDOMOperations.mm:
4608 2008-03-26  Brady Eidson  <beidson@apple.com>
4610         Reviewed by Darin
4612         When we create a WebArchive, we walk every node from some starting point, asking each node
4613         along the way "What are your subresource URLs?"
4615         That logic is currently in DOMNode in WebKitMac - this patch moves that ability down into
4616         WebCore::Node
4618         * DOM/WebDOMOperations.mm:
4619         (-[DOMNode _subresourceURLs]): One generic DOMNode method can now handle all DOMNodes by
4620           calling into individual WebCore::Node implementations
4621         * DOM/WebDOMOperationsPrivate.h:
4623 2008-03-26  Brady Eidson  <beidson@apple.com>
4625         Reviewed by Mark Rowe
4627         Part of the continued push to move WebArchive-related code down to WebCore, this
4628         moves [WebDataSource subresourceForURL:] down to DocumentLoader->subresource()
4630         * WebView/WebDataSource.mm:
4631         (-[WebDataSource subresourceForURL:]): Call through to the DocumentLoader 
4633         * WebView/WebFrame.mm: Remove [WebFrame _getData:andResponse:forURL:], as its only use
4634           has now been ported down to WebCore
4635         * WebView/WebFrameInternal.h:
4637 2008-03-26  Mark Rowe  <mrowe@apple.com>
4639         Rubber-stamped by Brady Eidson.
4641         Update FEATURE_DEFINES to be consistent with the other locations in which it is defined.
4643         * Configurations/WebKit.xcconfig:
4645 2008-03-26  Mark Rowe  <mrowe@apple.com>
4647         Reviewed by David Hyatt.
4649         Make the Ahem font antialias correctly on Acid3 on Tiger.
4651         * WebCoreSupport/WebSystemInterface.m:
4652         (InitWebCoreSystemInterface):
4654 2008-03-26  Mark Rowe  <mrowe@apple.com>
4656         Fix the Mac build.
4658         * MigrateHeaders.make: Copy the newly generated header into the right place.
4660 2008-03-25  Brady Eidson  <beidson@apple.com>
4662         Reviewed by Beth Dakin
4664         Remove entirely unused internal method
4666         * WebView/WebArchiver.h:
4667         * WebView/WebArchiver.mm:
4669 2008-03-25  Brady Eidson  <beidson@apple.com>
4671         Reviewed by Adam Roben
4673         <rdar://problem/5819308> - View Source is empty when view webarchives
4675         * WebCore.base.exp:
4676         * loader/DocumentLoader.cpp:
4677         (WebCore::DocumentLoader::setParsedArchiveData):
4678         (WebCore::DocumentLoader::parsedArchiveData):
4679         * loader/DocumentLoader.h:
4681         * loader/FrameLoader.cpp:
4682         (WebCore::FrameLoader::finishedLoadingDocument): Set the archive's MainResource data as the parsedArchiveData
4683           in the DocumentLoader
4685 2008-03-25  Dan Bernstein  <mitz@apple.com>
4687         Reviewed by Darin Adler.
4689         - fix http://bugs.webkit.org/show_bug.cgi?id=17933
4690           Reopen All Windows From Last Session causes crash
4692         * WebView/WebHTMLView.mm:
4693         (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Added null
4694         check.
4696 2008-03-25  Brady Eidson  <beidson@apple.com>
4698         Reviewed by Jon Honeycutt's rubberstamp
4700         Fix a leak with the new WebArchive setup
4702         * WebView/WebArchive.mm:
4703         (-[WebArchivePrivate setCoreArchive:]): Deref() the old WebArchive
4705 2008-03-25  Brady Eidson  <beidson@apple.com>
4707         Reviewed by Darin
4709         Removed the concept of "pending archive resources" and the "archive resources delivery timer"
4710         from WebFrameLoaderClient, as those concepts have been pushed into WebCore
4712         * WebCoreSupport/WebFrameLoaderClient.h:
4713         * WebCoreSupport/WebFrameLoaderClient.mm:
4714         (WebFrameLoaderClient::WebFrameLoaderClient):
4716 2008-03-25  Brady Eidson  <beidson@apple.com>
4718         Reviewed by Darin
4720         Remove newly obsolete FrameLoaderClient methods
4722         * WebCoreSupport/WebFrameLoaderClient.h:
4723         * WebCoreSupport/WebFrameLoaderClient.mm:
4725 2008-03-25  Brady Eidson  <beidson@apple.com>
4727         Release build fix
4729         * WebView/WebArchive.mm:
4730         (-[WebArchive subresources]):
4731         (-[WebArchive subframeArchives]):
4733 2008-03-25  Brady Eidson  <beidson@apple.com>
4735         Reviewed by Darin
4737         <rdar://problem/4516169> - Support WebArchives on Windows
4738         And paves the way for many future WebArchive bug fixes and enhancements
4740         This change moves most of the real workhorse code about WebArchives into WebCore.  It maintains 
4741         1-to-1 relationships between a few objects in WebCore and WebKit.  Such as:
4742          * WebArchive <-> LegacyWebArchive
4743          * WebResource <-> ArchiveResource
4744          * WebUnarchivingState <-> ArchiveResourceCollection
4746         The other biggest changes involve many FrameLoaderClient methods that existed soley for WebArchives 
4747         and now exist in WebCore
4749         * WebCoreSupport/WebFrameLoaderClient.mm:
4750         (WebFrameLoaderClient::clearUnarchivingState): Emptied - to be removed in a followup patch
4751         (WebFrameLoaderClient::finalSetupForReplace):
4752         (WebFrameLoaderClient::setDefersLoading):
4753         (WebFrameLoaderClient::willUseArchive):
4754         (WebFrameLoaderClient::isArchiveLoadPending):
4755         (WebFrameLoaderClient::cancelPendingArchiveLoad):
4756         (WebFrameLoaderClient::clearArchivedResources):
4757         (WebFrameLoaderClient::createFrame):
4759         * WebView/WebArchive.mm:
4760         (+[WebArchivePrivate initialize]):
4761         (-[WebArchivePrivate init]):
4762         (-[WebArchivePrivate initWithCoreArchive:]):
4763         (-[WebArchivePrivate coreArchive]):
4764         (-[WebArchivePrivate setCoreArchive:]):
4765         (-[WebArchivePrivate dealloc]):
4766         (-[WebArchivePrivate finalize]):
4767         (-[WebArchive init]):
4768         (-[WebArchive initWithMainResource:subresources:subframeArchives:]):
4769         (-[WebArchive initWithData:]):
4770         (-[WebArchive initWithCoder:]):
4771         (-[WebArchive encodeWithCoder:]):
4772         (-[WebArchive mainResource]):
4773         (-[WebArchive subresources]):
4774         (-[WebArchive subframeArchives]):
4775         (-[WebArchive data]):
4776         (-[WebArchive _initWithCoreLegacyWebArchive:WebCore::]):
4777         (-[WebArchive WebCore::]):
4778         * WebView/WebArchiveInternal.h: Added.
4780         * WebView/WebDataSource.mm:
4781         (-[WebDataSourcePrivate dealloc]):
4782         (-[WebDataSource _addSubframeArchives:]):
4783         (-[WebDataSource _documentFragmentWithArchive:]):
4784         (-[WebDataSource subresourceForURL:]):
4785         (-[WebDataSource addSubresource:]):
4786         * WebView/WebDataSourceInternal.h:
4788         * WebView/WebFrame.mm:
4789         (-[WebFrame loadArchive:]):
4790         * WebView/WebFrameInternal.h:
4792         * WebView/WebHTMLRepresentation.mm:
4793         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
4795         * WebView/WebResource.mm:
4796         (+[WebResourcePrivate initialize]):
4797         (-[WebResourcePrivate init]):
4798         (-[WebResourcePrivate initWithCoreResource:]):
4799         (-[WebResourcePrivate dealloc]):
4800         (-[WebResourcePrivate finalize]):
4801         (-[WebResource initWithCoder:]):
4802         (-[WebResource encodeWithCoder:]):
4803         (-[WebResource data]):
4804         (-[WebResource URL]):
4805         (-[WebResource MIMEType]):
4806         (-[WebResource textEncodingName]):
4807         (-[WebResource frameName]):
4808         (-[WebResource _initWithCoreResource:WebCore::]):
4809         (-[WebResource WebCore::]):
4810         (-[WebResource _ignoreWhenUnarchiving]):
4811         (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]):
4812         (-[WebResource _fileWrapperRepresentation]):
4813         (-[WebResource _response]):
4814         (-[WebResource _stringValue]):
4815         * WebView/WebResourceInternal.h: Added.
4816         * WebView/WebResourcePrivate.h:
4818         * WebView/WebUnarchivingState.h: Removed.
4819         * WebView/WebUnarchivingState.m: Removed.
4821 2008-03-24  Oliver Hunt  <oliver@apple.com>
4823         Reviewed by Mark Rowe.
4825         Bug 18030: REGRESSION(r31236): Space bar fails to scroll down page
4826         <http://bugs.webkit.org/show_bug.cgi?id=18030>
4828         Rollout keyDown changes from r31236 -- fix for keyDown behaviour is
4829         tracked by Bug 18057: keyDown incorrectly propagates up the frame tree
4830         <http://bugs.webkit.org/show_bug.cgi?id=18057>
4832         * WebView/WebHTMLView.mm:
4833         (-[WebHTMLView keyDown:]):
4835 2008-03-24  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
4837         Reviewed by Maciej, landed by Brady
4839         Bug 3580: iFrames Appear to be Cached
4840         <http://bugs.webkit.org/show_bug.cgi?id=3580>
4842         Bug 15486: REGRESSION: Reload causes WebKit to *forget* fragment URLs
4843         <http://bugs.webkit.org/show_bug.cgi?id=15486>
4845         Bug 15554: Reload causes <object> to use old data
4846         <http://bugs.webkit.org/show_bug.cgi?id=15554>
4848         If a page is reloaded, a child frame's URL can not be taken from a history item.
4850         * WebView/WebFrame.mm:
4851         (-[WebFrame _loadURL:referrer:intoChild:]):
4853 2008-03-24  Darin Adler  <darin@apple.com>
4855         Reviewed by Beth.
4857         - fix <rdar://problem/5817067> -[WebDataSource unreachableURL] invokes KURL's copy constructor
4859         * History/WebHistoryItem.mm:
4860         (-[WebHistoryItem URL]): Use a reference to avoid making a copy.
4861         * WebView/WebDataSource.mm:
4862         (-[WebDataSource _URL]): Ditto.
4863         (-[WebDataSource unreachableURL]): Ditto.
4864         * WebView/WebHTMLView.mm:
4865         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto.
4867         * DefaultDelegates/WebDefaultContextMenuDelegate.mm:
4868         * History/WebHistory.mm:
4869         * Misc/WebElementDictionary.mm:
4870         * Misc/WebNSAttributedStringExtras.mm:
4871         Remove unneeded imports of KURL.h.
4873 2008-03-24  Brady Eidson  <beidson@apple.com>
4875         Reviewed by Darin's rubberstamp
4877         Rename this file for upcoming work.
4879         * WebView/WebArchive.m: Removed.
4880         * WebView/WebArchive.mm: Copied from WebKit/mac/WebView/WebArchive.m.
4882 2008-03-24  Alexey Proskuryakov  <ap@webkit.org>
4884         Build fix.
4886         * MigrateHeaders.make: Added DOMSVGAltGlyphElement.h and DOMSVGAltGlyphElementInternal.h.
4888 2008-03-23  Oliver Hunt  <oliver@apple.com>
4890         Reviewed by Maciej.
4892         Bug 17670: Key events may improperly propagate from iframe to parent frame
4893         <http://bugs.webkit.org/show_bug.cgi?id=17670>
4894         Bug 16381: REGRESSION: Shift, command, option, ctrl keys in Gmail Rich Text changes focus
4895         <http://bugs.webkit.org/show_bug.cgi?id=16381>
4897         Prevent the Cocoa event system from propagating key events to the parent WebHTMLView,
4898         as that results in us dispatching the key events for each frame going up the frame
4899         tree.
4901         * WebView/WebHTMLView.mm:
4902         (-[WebHTMLView keyDown:]):
4903         (-[WebHTMLView keyUp:]):
4904         (-[WebHTMLView flagsChanged:]):
4906 2008-03-21  Timothy Hatcher  <timothy@apple.com>
4908         Bug 17980: Regression: Inspector highlighting of webpage not cleared when going to new URL
4909         http://bugs.webkit.org/show_bug.cgi?id=17980
4911         Reviewed by Adam.
4913         The new highlight drawing was not honoring the fade value, so it was
4914         always drawing at full opacity. The animation code didn't match Windows
4915         and the new highlight anyway, so it has been removed. The highlight
4916         how just detaches when it is hidden.
4918         * WebCoreSupport/WebInspectorClient.mm:
4919         (-[WebInspectorWindowController windowShouldClose:]): Call hideHighlight.
4920         (-[WebInspectorWindowController close]): Ditto.
4921         (-[WebInspectorWindowController highlightNode:]): Call attach.
4922         (-[WebInspectorWindowController hideHighlight]): Call detach and release _currentHighlight.
4923         * WebInspector/WebNodeHighlight.h:
4924         * WebInspector/WebNodeHighlight.m:
4925         (-[WebNodeHighlight initWithTargetView:inspectorController:]):
4926         (-[WebNodeHighlight dealloc]): Assert we have no _highlightView.
4927         (-[WebNodeHighlight attach]): Renamed from attachHighlight.
4928         (-[WebNodeHighlight detach]): Renamed from detachHighlight.
4929         (-[WebNodeHighlight setNeedsUpdateInTargetViewRect:]): Renamed from setHolesNeedUpdateInTargetViewRect:.
4930         * WebInspector/WebNodeHighlightView.h:
4931         * WebInspector/WebNodeHighlightView.m:
4932         (-[WebNodeHighlightView setNeedsDisplayInRect:]): Renamed from setHolesNeedUpdateInRect:.
4934 2008-03-20  Mark Rowe  <mrowe@apple.com>
4936         Reviewed by Sam Weinig.
4938         Ensure that the defines in FEATURE_DEFINES are sorted so that they will match the default settings of build-webkit.
4939         This will prevent the world from being rebuilt if you happen to switch between building in Xcode and with build-webkit on the
4940         command-line.
4942         * Configurations/WebKit.xcconfig:
4944 2008-03-20  Adam Roben  <aroben@apple.com>
4946         Make WebNodeHighlightView use InspectorController to do its painting
4948         Reviewed by Tim Hatcher.
4950         * WebCoreSupport/WebInspectorClient.mm:
4951         (-[WebInspectorWindowController highlightNode:]): Pass the
4952         InspectorController to the WebNodeHighlight, and don't call
4953         setHighlightedNode: (which has been removed).
4954         (-[WebInspectorWindowController hideHighlight]): Removed call to
4955         setHighlightedNode:.
4956         * WebInspector/WebNodeHighlight.h:
4957           - Replaced _highlightNode with _inspectorController
4958           - Removed _highlightedNode accessors
4959           - Added -inspectorController method
4960         * WebInspector/WebNodeHighlight.m:
4961         (-[WebNodeHighlight initWithTargetView:inspectorController:]): Now
4962         takes an InspectorController* and stores it in _inspectorController.
4963         (-[WebNodeHighlight dealloc]): Removed code dealing with
4964         _highlightedNode.
4965         (-[WebNodeHighlight inspectorController]): Added.
4966         * WebInspector/WebNodeHighlightView.m: Removed FileInternal category.
4967         (-[WebNodeHighlightView isFlipped]): Added. WebCore expects all
4968         GraphicsContexts to be based on a flipped CGContext, so we have to
4969         specify that this view is flipped.
4970         (-[WebNodeHighlightView drawRect:]): Changed to create a
4971         GraphicsContext and pass it to InspectorController::drawNodeHighlight.
4973 2008-03-18  David Hyatt  <hyatt@apple.com>
4975         Add support for a preference in WebKit that can be used in nightly builds to test full page
4976         zoom.
4978         Reviewed by Antti
4980         * WebView/WebPreferenceKeysPrivate.h:
4981         * WebView/WebView.mm:
4982         (-[WebView setTextSizeMultiplier:]):
4983         (-[WebView canMakeTextSmaller]):
4984         (-[WebView makeTextSmaller:]):
4985         (-[WebView canMakeTextLarger]):
4986         (-[WebView makeTextLarger:]):
4987         (-[WebView canMakeTextStandardSize]):
4988         (-[WebView makeTextStandardSize:]):
4990 2008-03-17  Eric Seidel  <eric@webkit.org>
4992         Reviewed by darin.
4994         Export _NPN_IntFromIdentifier as part of our NPAPI interface
4996         * Plugins/WebNetscapePluginPackage.m:
4997         (-[WebNetscapePluginPackage load]):
4999 2008-03-14  Brady Eidson  <beidson@apple.com>
5001         Reviewed by Brian Dash's rubberstamp
5003         Remove a class declaration for a class that has never existed
5005         * WebView/WebResource.h:
5007 2008-03-14  David D. Kilzer  <ddkilzer@apple.com>
5009         Unify concept of enabling the Mac Java bridge.
5011         Reviewed by Darin and Anders.
5013         * Plugins/WebPluginJava.h: Removed unused file.
5014         * WebCoreSupport/WebFrameLoaderClient.h:
5015         (WebFrameLoaderClient::javaApplet): Added #if ENABLE(MAC_JAVA_BRIDGE) guard.
5016         * WebCoreSupport/WebFrameLoaderClient.mm: Ditto for #import and NSView SPI method.
5017         (WebFrameLoaderClient::javaApplet): Ditto.
5019 2008-03-13  Antti Koivisto  <antti@apple.com>
5021         Reviewed by Darin Adler.
5023         * ForwardingHeaders/wtf/Deque.h: Added.
5025 2008-03-13  Anders Carlsson  <andersca@apple.com>
5027         Reviewed by Adam.
5029         Call originalRequest, not initialRequest.
5030         
5031         * WebView/WebDataSource.mm:
5032         (-[WebDataSource initialRequest]):
5034 2008-03-12  Darin Adler  <darin@apple.com>
5036         Reviewed by John Sullivan.
5038         - cleanup after removing the bridge
5040         * DOM/WebDOMOperations.mm:
5041         (-[DOMDocument URLWithAttributeString:]): Call computeURL directly.
5043         * Misc/WebCoreStatistics.mm:
5044         (-[WebFrame renderTreeAsExternalRepresentation]): Call externalRepresentation directly.
5046         * Plugins/WebBaseNetscapePluginView.mm:
5047         (-[WebBaseNetscapePluginView loadPluginRequest:]): Use core function instead of
5048         _frameLoader method.
5049         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
5050         Ditto.
5051         * Plugins/WebPluginController.mm:
5052         (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]): Ditto.
5054         * WebCoreSupport/WebFrameLoaderClient.mm:
5055         (WebFrameLoaderClient::frameLoaderDestroyed): Added a call to the new _clearCoreFrame
5056         method. Without this we could leave a stale frame pointer around.
5057         (WebFrameLoaderClient::dispatchDidReceiveIcon): Rewrote assertion so it's not the single
5058         caller of the _isMainFrame method.
5059         (WebFrameLoaderClient::transitionToCommittedForNewPage): Use core function instead of
5060         _frameLoader method.
5061         (WebFrameLoaderClient::createFrame): Moved code here from _addChild.
5063         * WebView/WebFrame.mm: Removed lots of methods. Some were moved elsewhere, others
5064         turned out to be unused.
5065         (core): Added overload for DocumentFragment.
5066         (kit): Ditto.
5067         (-[WebFrame _loadURL:referrer:intoChild:]): Get to Frame using _private->coreFrame and
5068         to FrameLoader with _private->coreFrame->loader().
5069         (-[WebFrame _attachScriptDebugger]): Ditto.
5070         (-[WebFrame _clearCoreFrame]): Added.
5071         (-[WebFrame _updateBackground]): More of the same.
5072         (-[WebFrame _unmarkAllBadGrammar]): Ditto.
5073         (-[WebFrame _unmarkAllMisspellings]): Ditto.
5074         (-[WebFrame _hasSelection]): Ditto.
5075         (-[WebFrame _atMostOneFrameHasSelection]): Ditto.
5076         (-[WebFrame _findFrameWithSelection]): Ditto.
5077         (-[WebFrame _dataSource]): Ditto.
5078         (-[WebFrame _addData:]): Streamlined code a bit.
5079         (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]): Ditto.
5080         (-[WebFrame _receivedData:textEncodingName:]): Ditto.
5081         (-[WebFrame _isDescendantOfFrame:]): Ditto.
5082         (-[WebFrame _bodyBackgroundColor]): Ditto.
5083         (-[WebFrame _isFrameSet]): Ditto.
5084         (-[WebFrame _firstLayoutDone]): Ditto.
5085         (-[WebFrame _loadType]): Ditto.
5086         (-[WebFrame _isDisplayingStandaloneImage]): Ditto.
5087         (-[WebFrame name]): Ditto.
5088         (-[WebFrame DOMDocument]): Ditto.
5089         (-[WebFrame frameElement]): Ditto.
5090         (-[WebFrame provisionalDataSource]): Ditto.
5091         (-[WebFrame dataSource]): Ditto.
5092         (-[WebFrame loadRequest:]): Ditto.
5093         (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): Ditto.
5094         (-[WebFrame loadArchive:]): Ditto.
5095         (-[WebFrame stopLoading]): Ditto.
5096         (-[WebFrame reload]): Ditto.
5097         (-[WebFrame findFrameNamed:]): Ditto.
5098         (-[WebFrame parentFrame]): Ditto.
5099         (-[WebFrame childFrames]): Ditto.
5100         (-[WebFrame windowObject]): Ditto.
5101         (-[WebFrame globalContext]): Ditto.
5103         * WebView/WebFrameInternal.h: Added overloads of core and kit.
5104         Removed method declarations.
5106         * WebView/WebHTMLRepresentation.mm:
5107         (-[WebHTMLRepresentation documentSource]): Moved code here from WebFrame.
5108         (formElementFromDOMElement): Ditto.
5109         (-[WebHTMLRepresentation elementWithName:inForm:]): Ditto.
5110         (inputElementFromDOMElement): Ditto.
5111         (-[WebHTMLRepresentation elementDoesAutoComplete:]): Ditto.
5112         (-[WebHTMLRepresentation elementIsPassword:]): Ditto.
5113         (-[WebHTMLRepresentation formForElement:]): Ditto.
5114         (-[WebHTMLRepresentation currentForm]): Ditto.
5115         (-[WebHTMLRepresentation controlsInForm:]): Ditto.
5116         (-[WebHTMLRepresentation searchForLabels:beforeElement:]): Ditto.
5117         (-[WebHTMLRepresentation matchLabels:againstElement:]): Ditto.
5119         * WebView/WebHTMLView.mm:
5120         (-[WebHTMLView _frameOrBoundsChanged]): Moved sendScrollEvent code here from WebFrame.
5121         (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
5122         Call createFragmentFromText directly instead of via WebFrame.
5123         (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]):
5124         Moved layout calls here from WebFrame.
5125         (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Ditto.
5126         (-[WebHTMLView _updateFontPanel]): Ditto, but with fontForSelection.
5127         (-[WebHTMLView _canSmartCopyOrDelete]): Ditto, but with selectionGranularity.
5128         (-[WebHTMLView markedRange]): Moved code here from _markedTextNSRange.
5129         (-[WebHTMLView attributedSubstringFromRange:]): Tweaked code a bit.
5130         (-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]):
5131         Moved code here from WebFrame.
5132         (-[WebHTMLView elementAtPoint:allowShadowContent:]): Ditto.
5133         (-[WebHTMLView markAllMatchesForText:caseSensitive:limit:]): Ditto.
5134         (-[WebHTMLView setMarkedTextMatchesAreHighlighted:]): Ditto.
5135         (-[WebHTMLView markedTextMatchesAreHighlighted]): Ditto.
5136         (-[WebHTMLView unmarkAllTextMatches]): Ditto.
5137         (-[WebHTMLView rectsForTextMatches]): Ditto.
5139         * WebView/WebHTMLViewInternal.h: Removed unused method declarations.
5141         * WebView/WebPDFView.mm:
5142         (-[WebPDFView PDFViewWillClickOnLink:withURL:]): Use core function instead of
5143         _frameLoader method.
5145         * WebView/WebRenderNode.mm:
5146         (copyRenderNode): Moved code here from WebFrame.
5147         (-[WebRenderNode initWithWebFrameView:]): Ditto.
5149         * WebView/WebResource.mm:
5150         (-[WebResource _stringValue]): Moved code here from WebFrame.
5152         * WebView/WebView.mm:
5153         (-[WebView _close]): Use core function intsead of _frameLoader method.
5154         (-[WebView setCustomTextEncodingName:]): Ditto.
5155         (-[WebView setHostWindow:]): Moved code here from WebFrame.
5156         (aeDescFromJSValue): Moved this here from WebFrame.
5157         (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Moved code here from WebFrame.
5159 2008-03-12  Darin Adler  <darin@apple.com>
5161         Reviewed by Anders.
5163         - http://bugs.webkit.org/show_bug.cgi?id=17640
5164           eliminate WebCoreFrameBridge
5166         Moved all the code from the bridge into WebFrame. This need not be the final
5167         home of these methods -- they can be moved closer to their callers and improved
5168         further -- but it eliminates the bridge without requiring a rewrite of the code.
5169         It's a fairly mechanical process (just adding underscores to method names really).
5171         There's even a chance that some of the methods are unused. Those we can remove
5172         after checking if that's so.
5174         * DOM/WebDOMOperations.mm:
5175         (-[DOMNode markupString]): Use WebFrame rather than bridge.
5176         (-[DOMDocument webFrame]): Changed to use the core and kit functions
5177         instead of using the bridge.
5178         (-[DOMDocument URLWithAttributeString:]): Use WebFrame rather than bridge.
5179         (-[DOMRange markupString]): Ditto.
5180         * DOM/WebDOMOperationsPrivate.h: Removed _bridge methods.
5182         * DefaultDelegates/WebDefaultContextMenuDelegate.mm: Removed unneeded import.
5183         * History/WebHistoryItem.mm: Ditto.
5185         * MigrateHeaders.make: Added DOMDocumentFragmentInternal.h.
5186         * Misc/WebCoreStatistics.mm:
5187         (-[WebFrame renderTreeAsExternalRepresentation]): Use WebFrame rather than bridge.
5189         * Misc/WebElementDictionary.mm: Removed unneeded import.
5191         * Misc/WebKitStatistics.m:
5192         (+[WebKitStatistics bridgeCount]): Removed WebBridgeCount and just return 0.
5193         * Misc/WebKitStatisticsPrivate.h: Ditto.
5195         * Misc/WebNSAttributedStringExtras.mm: Removed unneeded import.
5196         * Misc/WebNSPasteboardExtras.mm: Ditto.
5198         * Plugins/WebBaseNetscapePluginView.mm:
5199         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): Use WebFrame
5200         rather than bridge.
5202         * Plugins/WebNetscapePluginEmbeddedView.mm: Removed unneeded import.
5203         * Plugins/WebNetscapePluginStream.mm: Ditto.
5205         * Plugins/WebPluginContainerCheck.mm:
5206         (-[WebPluginContainerCheck _isForbiddenFileLoad]): Use WebFrame rather than
5207         bridge to get to the WebCore::Frame.
5209         * Plugins/WebPluginController.h: Declare webFrame method and remove bridge method.
5210         * Plugins/WebPluginController.mm:
5211         (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]): Use WebFrame
5212         rather than bridge.
5214         * WebCoreSupport/WebEditorClient.mm:
5215         (selectorForKeyEvent): Tweaked comment.
5217         * WebCoreSupport/WebFrameBridge.h: Removed.
5218         * WebCoreSupport/WebFrameBridge.mm: Removed.
5220         * WebCoreSupport/WebFrameLoaderClient.mm:
5221         (WebFrameLoaderClient::frameLoaderDestroyed): Removed bridge assertion.
5222         (WebFrameLoaderClient::detachedFromParent4): Removed bridge teardown code.
5223         I could remove this function entirely, but it looks like the Qt port is using it.
5225         * WebCoreSupport/WebViewFactory.mm: Removed unneeded import.
5227         * WebView/WebArchiver.mm:
5228         (+[WebArchiver archiveRange:]): Use WebFrame rather than bridge.
5229         (+[WebArchiver archiveNode:]): Ditto.
5230         (+[WebArchiver archiveSelectionInFrame:]): Ditto.
5232         * WebView/WebDataSource.mm:
5233         (-[WebDataSource _replaceSelectionWithArchive:selectReplacement:]): Ditto.
5234         (-[WebDataSource _documentFragmentWithArchive:]): Ditto.
5235         (-[WebDataSource subresources]): Ditto.
5236         (-[WebDataSource subresourceForURL:]): Ditto.
5238         * WebView/WebDataSourceInternal.h: Removed _bridge method.
5240         * WebView/WebFrame.mm:
5241         (-[WebFramePrivate dealloc]): Removed code to release the bridge.
5242         (core): Go directly to the core frame, not via the bridge.
5243         (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]):
5244         Remove the code to deal with the bridge.
5245         (-[WebFrame _initWithWebFrameView:webView:]): Ditto. Also added code to set the
5246         shouldCreateRenderers flag, formerly on the bridge.
5247         (-[WebFrame _updateBackground]): Change to call mehods on self, not bridge.
5248         (aeDescFromJSValue): Moved here from bridge.
5249         (-[WebFrame _domain]): Ditto.
5250         (-[WebFrame _addData:]): Ditto.
5251         (-[WebFrame _stringWithDocumentTypeStringAndMarkupString:]): Ditto.
5252         (-[WebFrame _nodesFromList:]): Ditto.
5253         (-[WebFrame _markupStringFromNode:nodes:]): Ditto.
5254         (-[WebFrame _markupStringFromRange:nodes:]): Ditto.
5255         (-[WebFrame _selectedString]): Ditto.
5256         (-[WebFrame _stringForRange:]): Ditto.
5257         (-[WebFrame _forceLayoutAdjustingViewSize:]): Ditto.
5258         (-[WebFrame _forceLayoutWithMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Ditto.
5259         (-[WebFrame _sendScrollEvent]): Ditto.
5260         (-[WebFrame _drawRect:]): Ditto.
5261         (-[WebFrame _computePageRectsWithPrintWidthScaleFactor:printHeight:]): Ditto.
5262         (-[WebFrame _adjustPageHeightNew:top:bottom:limit:]): Ditto.
5263         (-[WebFrame _copyRenderNode:copier:]): Ditto.
5264         (-[WebFrame _copyRenderTree:]): Ditto.
5265         (inputElementFromDOMElement): Ditto.
5266         (formElementFromDOMElement): Ditto.
5267         (-[WebFrame _elementWithName:inForm:]): Ditto.
5268         (-[WebFrame _elementDoesAutoComplete:]): Ditto.
5269         (-[WebFrame _elementIsPassword:]): Ditto.
5270         (-[WebFrame _formForElement:]): Ditto.
5271         (-[WebFrame _currentForm]): Ditto.
5272         (-[WebFrame _controlsInForm:]): Ditto.
5273         (-[WebFrame _searchForLabels:beforeElement:]): Ditto.
5274         (-[WebFrame _matchLabels:againstElement:]): Ditto.
5275         (-[WebFrame _URLWithAttributeString:]): Ditto.
5276         (-[WebFrame _searchFor:direction:caseSensitive:wrap:startInSelection:]): Ditto.
5277         (-[WebFrame _markAllMatchesForText:caseSensitive:limit:]): Ditto.
5278         (-[WebFrame _markedTextMatchesAreHighlighted]): Ditto.
5279         (-[WebFrame _setMarkedTextMatchesAreHighlighted:]): Ditto.
5280         (-[WebFrame _unmarkAllTextMatches]): Ditto.
5281         (-[WebFrame _rectsForTextMatches]): Ditto.
5282         (-[WebFrame _stringByEvaluatingJavaScriptFromString:]): Ditto.
5283         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): Ditto.
5284         (-[WebFrame _aeDescByEvaluatingJavaScriptFromString:]): Ditto.
5285         (-[WebFrame _caretRectAtNode:offset:affinity:]): Ditto.
5286         (-[WebFrame _firstRectForDOMRange:]): Ditto.
5287         (-[WebFrame _scrollDOMRangeToVisible:]): Ditto.
5288         (-[WebFrame _baseURL]): Ditto.
5289         (-[WebFrame _stringWithData:]): Ditto.
5290         (+[WebFrame _stringWithData:textEncodingName:]): Ditto.
5291         (-[WebFrame _needsLayout]): Ditto.
5292         (-[WebFrame _renderTreeAsExternalRepresentation]): Ditto.
5293         (-[WebFrame _accessibilityTree]): Ditto.
5294         (-[WebFrame _setBaseBackgroundColor:]): Ditto.
5295         (-[WebFrame _setDrawsBackground:]): Ditto.
5296         (-[WebFrame _rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
5297         Ditto.
5298         (-[WebFrame _selectionGranularity]): Ditto.
5299         (-[WebFrame _convertToNSRange:]): Ditto.
5300         (-[WebFrame _convertToDOMRange:]): Ditto.
5301         (-[WebFrame _convertNSRangeToDOMRange:]): Ditto.
5302         (-[WebFrame _convertDOMRangeToNSRange:]): Ditto.
5303         (-[WebFrame _markDOMRange]): Ditto.
5304         (-[WebFrame _markedTextNSRange]): Ditto.
5305         (-[WebFrame _smartDeleteRangeForProposedRange:]): Ditto.
5306         (-[WebFrame _smartInsertForString:replacingRange:beforeString:afterString:]): Ditto.
5307         (-[WebFrame _documentFragmentWithMarkupString:baseURLString:]): Ditto.
5308         (-[WebFrame _documentFragmentWithText:inContext:]): Ditto.
5309         (-[WebFrame _documentFragmentWithNodesAsParagraphs:]): Ditto.
5310         (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]): Ditto.
5311         (-[WebFrame _replaceSelectionWithNode:selectReplacement:smartReplace:matchStyle:]): Ditto.
5312         (-[WebFrame _replaceSelectionWithMarkupString:baseURLString:selectReplacement:smartReplace:]): Ditto.
5313         (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]): Ditto.
5314         (-[WebFrame _insertParagraphSeparatorInQuotedContent]): Ditto.
5315         (-[WebFrame _visiblePositionForPoint:]): Ditto.
5316         (-[WebFrame _characterRangeAtPoint:]): Ditto.
5317         (-[WebFrame _typingStyle]): Ditto.
5318         (-[WebFrame _setTypingStyle:withUndoAction:]): Ditto.
5319         (-[WebFrame _fontForSelection:]): Ditto.
5320         (-[WebFrame _dragSourceMovedTo:]): Ditto.
5321         (-[WebFrame _dragSourceEndedAt:operation:]): Ditto.
5322         (-[WebFrame _getData:andResponse:forURL:]): Ditto.
5323         (-[WebFrame _getAllResourceDatas:andResponses:]): Ditto.
5324         (-[WebFrame _canProvideDocumentSource]): Ditto.
5325         (-[WebFrame _canSaveAsWebArchive]): Ditto.
5326         (-[WebFrame _receivedData:textEncodingName:]): Ditto.
5327         (-[WebFrame _setShouldCreateRenderers:]): Put the code from the bridge in this preexisting
5328         function. Couldn't just keep the bridge method because this was already here with the same name.
5329         (-[WebFrame _selectedNSRange]): Ditto.
5330         (-[WebFrame _selectNSRange:]): Ditto.
5331         (-[WebFrame dealloc]): Remove bridge-related code.
5332         (-[WebFrame finalize]): Ditto.
5334         * WebView/WebFrameInternal.h: Added all the method declarations from the bridge.
5335         Removed the bridge parameter from the init method. Removed the #if blocks that
5336         tried to make this header work in non-C++ ObjC files -- they were broken and unused.
5337         Removed the _bridge method.
5339         * WebView/WebFrameView.mm: Removed the _bridge method.
5341         * WebView/WebHTMLRepresentation.mm:
5342         (-[WebHTMLRepresentation setDataSource:]): Removed the code to set up the bridge
5343         field.
5344         (-[WebHTMLRepresentation receivedData:withDataSource:]): Use WebFrame instead of bridge.
5345         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]): Ditto.
5346         (-[WebHTMLRepresentation canProvideDocumentSource]): Ditto.
5347         (-[WebHTMLRepresentation canSaveAsWebArchive]): Ditto.
5348         (-[WebHTMLRepresentation documentSource]): Ditto.
5349         (-[WebHTMLRepresentation DOMDocument]): Ditto.
5350         (-[WebHTMLRepresentation elementWithName:inForm:]): Ditto.
5351         (-[WebHTMLRepresentation elementDoesAutoComplete:]): Ditto.
5352         (-[WebHTMLRepresentation elementIsPassword:]): Ditto.
5353         (-[WebHTMLRepresentation formForElement:]): Ditto.
5354         (-[WebHTMLRepresentation currentForm]): Ditto.
5355         (-[WebHTMLRepresentation controlsInForm:]): Ditto.
5356         (-[WebHTMLRepresentation searchForLabels:beforeElement:]): Ditto.
5357         (-[WebHTMLRepresentation matchLabels:againstElement:]): Ditto.
5359         * WebView/WebHTMLRepresentationPrivate.h: Removed the _bridge method.
5361         * WebView/WebHTMLView.mm:
5362         (-[WebHTMLView _documentFragmentWithPaths:]): Use WebFrame instead of bridge.
5363         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): Ditto.
5364         (-[WebHTMLView _pasteAsPlainTextWithPasteboard:]): Ditto.
5365         (-[WebHTMLView _updateTextSizeMultiplier]): Ditto.
5366         (-[WebHTMLView _frameOrBoundsChanged]): Ditto.
5367         (-[WebHTMLView _smartInsertForString:replacingRange:beforeString:afterString:]): Ditto.
5368         (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]): Ditto.
5369         (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Ditto.
5370         (-[WebHTMLView drawSingleRect:]): Ditto.
5371         (-[WebHTMLView draggedImage:movedTo:]): Ditto.
5372         (-[WebHTMLView draggedImage:endedAt:operation:]): Ditto.
5373         (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Ditto.
5374         (-[WebHTMLView knowsPageRange:]): Ditto.
5375         (-[WebHTMLView accessibilityAttributeValue:]): Ditto.
5376         (-[WebHTMLView accessibilityFocusedUIElement]): Ditto.
5377         (-[WebHTMLView accessibilityHitTest:]): Ditto.
5378         (-[WebHTMLView _accessibilityParentForSubview:]): Ditto.
5379         (-[WebHTMLView changeDocumentBackgroundColor:]): Ditto.
5380         (-[WebHTMLView _changeWordCaseWithSelector:]): Ditto.
5381         (-[WebHTMLView _changeSpellingToWord:]): Ditto.
5382         (-[WebHTMLView startSpeaking:]): Ditto.
5383         (-[WebHTMLView _updateFontPanel]): Ditto.
5384         (-[WebHTMLView _canSmartCopyOrDelete]): Ditto.
5385         (-[WebHTMLView _layoutIfNeeded]): Ditto.
5386         (-[WebHTMLView characterIndexForPoint:]): Ditto.
5387         (-[WebHTMLView firstRectForCharacterRange:]): Ditto.
5388         (-[WebHTMLView selectedRange]): Ditto.
5389         (-[WebHTMLView markedRange]): Ditto.
5390         (-[WebHTMLView attributedSubstringFromRange:]): Ditto.
5391         (-[WebHTMLView setMarkedText:selectedRange:]): Ditto.
5392         (-[WebHTMLView insertText:]): Ditto.
5393         (-[WebTextCompleteController _insertMatch:]): Ditto.
5394         (-[WebTextCompleteController doCompletion]): Ditto.
5395         (-[WebTextCompleteController endRevertingChange:moveLeft:]): Ditto.
5396         (-[WebHTMLView string]): Ditto.
5397         (-[WebHTMLView selectedString]): Ditto.
5398         (-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]): Ditto.
5399         (-[WebHTMLView markAllMatchesForText:caseSensitive:limit:]): Ditto.
5400         (-[WebHTMLView setMarkedTextMatchesAreHighlighted:]): Ditto.
5401         (-[WebHTMLView markedTextMatchesAreHighlighted]): Ditto.
5402         (-[WebHTMLView unmarkAllTextMatches]): Ditto.
5403         (-[WebHTMLView rectsForTextMatches]): Ditto.
5404         * WebView/WebRenderNode.mm:
5405         (-[WebRenderNode initWithWebFrameView:]): Ditto.
5406         * WebView/WebResource.mm:
5407         (-[WebResource _stringValue]): Ditto.
5409         * WebView/WebScriptDebugDelegate.mm: Removed unneeded include.
5411         * WebView/WebView.mm:
5412         (-[WebView _dashboardRegions]): Use WebFrame instead of bridge.
5413         (-[WebView setProhibitsMainFrameScrolling:]): Ditto.
5414         (-[WebView _setInViewSourceMode:]): Ditto.
5415         (-[WebView _inViewSourceMode]): Ditto.
5416         (-[WebView _executeCoreCommandByName:value:]): Ditto.
5417         (-[WebView stringByEvaluatingJavaScriptFromString:]): Ditto.
5418         (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Ditto.
5419         (-[WebView scrollDOMRangeToVisible:]): Ditto.
5420         (-[WebView setSelectedDOMRange:affinity:]): Ditto.
5421         (-[WebView setEditable:]): Ditto.
5422         (-[WebView setTypingStyle:]): Ditto.
5423         (-[WebView typingStyle]): Ditto.
5424         (-[WebView replaceSelectionWithNode:]): Ditto.
5425         (-[WebView replaceSelectionWithText:]): Ditto.
5426         (-[WebView replaceSelectionWithMarkupString:]): Ditto.
5427         (-[WebView replaceSelectionWithArchive:]): Ditto.
5428         (-[WebView _insertNewlineInQuotedContent]): Ditto.
5429         (-[WebView _replaceSelectionWithNode:matchStyle:]): Ditto.
5431 2008-03-12  David Hyatt  <hyatt@apple.com>
5433         Make the zoom factor a float and not a percent.
5435         Reviewed by antti
5437         * WebView/WebView.mm:
5438         (-[WebView _setZoomMultiplier:isTextOnly:]):
5440 2008-03-11  David Hyatt  <hyatt@apple.com>
5442         This patch prepares Mac WebKit to handle two different zooming modes (full page zoom and text only zoom).
5443         New API is added that is parallel to the text zoom public API.  You can get/set a pageSizeMultiplier and you
5444         can zoom the page in, out or reset it to the standard size.
5446         In the implementation only one zoom factor is stored, and setting one multiplier will shift you into that mode
5447         and set the common zoom factor.  In other words you can't combine text zoom and page zoom.  One will always
5448         win.
5450         Reviewed by Tim H.
5452         * WebCoreSupport/WebFrameBridge.mm:
5453         (-[WebFrameBridge finishInitializingWithPage:frameName:WebCore::frameView:ownerElement:]):
5454         * WebView/WebDocumentInternal.h:
5455         * WebView/WebHTMLView.mm:
5456         (-[WebHTMLView viewDidMoveToSuperview]):
5457         * WebView/WebPDFView.h:
5458         * WebView/WebPDFView.mm:
5459         (-[WebPDFView _zoomOut:]):
5460         (-[WebPDFView _zoomIn:]):
5461         (-[WebPDFView _resetZoom:]):
5462         (-[WebPDFView _canZoomOut]):
5463         (-[WebPDFView _canZoomIn]):
5464         (-[WebPDFView _canResetZoom]):
5465         * WebView/WebView.mm:
5466         (-[WebViewPrivate init]):
5467         (-[WebView setTextSizeMultiplier:]):
5468         (-[WebView textSizeMultiplier]):
5469         (-[WebView _setZoomMultiplier:isTextOnly:]):
5470         (-[WebView _zoomMultiplier:]):
5471         (-[WebView _realZoomMultiplier]):
5472         (-[WebView _realZoomMultiplierIsTextOnly]):
5473         (-[WebView _canZoomOut:]):
5474         (-[WebView _canZoomIn:]):
5475         (-[WebView _zoomOut:isTextOnly:]):
5476         (-[WebView _zoomIn:isTextOnly:]):
5477         (-[WebView _canResetZoom:]):
5478         (-[WebView _resetZoom:isTextOnly:]):
5479         (-[WebView canMakeTextSmaller]):
5480         (-[WebView makeTextSmaller:]):
5481         (-[WebView canMakeTextLarger]):
5482         (-[WebView makeTextLarger:]):
5483         (-[WebView canMakeTextStandardSize]):
5484         (-[WebView makeTextStandardSize:]):
5485         (-[WebView setPageSizeMultiplier:]):
5486         (-[WebView pageSizeMultiplier]):
5487         (-[WebView canZoomPageIn]):
5488         (-[WebView zoomPageIn:]):
5489         (-[WebView canZoomPageOut]):
5490         (-[WebView zoomPageOut:]):
5491         (-[WebView canResetPageZoom]):
5492         (-[WebView resetPageZoom:]):
5493         (-[WebView _searchWithSpotlightFromMenu:]):
5494         * WebView/WebViewInternal.h:
5495         * WebView/WebViewPrivate.h:
5497 2008-03-12  Dan Bernstein  <mitz@apple.com>
5499         Reviewed by Darin Adler and Sam Weinig.
5501         - <rdar://problem/4433248> use CoreText API instead of SPI on Leopard
5503         * WebCoreSupport/WebSystemInterface.m:
5504         (InitWebCoreSystemInterface): Made WKGetCGFontFromNSFont and
5505         WKGetNSFontATSUFontId Tiger-only.
5507 2008-03-12  Darin Adler  <darin@apple.com>
5509         - fix http://bugs.webkit.org/show_bug.cgi?id=17794
5510           REGRESSION (r30980): 23 tests hanging on the Mac buildbot
5512         * WebView/WebFrame.mm:
5513         (-[WebFrame _initWithWebFrameView:webView:bridge:]): Added missing call to set
5514         up pointer from the bridge to the frame. (My next check-in removes the bridge
5515         entirely, but we need this until then.)
5517 2008-03-11  Darin Adler  <darin@apple.com>
5519         Reviewed by Sam.
5521         - remove all bridge-related things from WebCore except the bridge itself
5523         * DOM/WebDOMOperations.mm:
5524         (-[DOMNode _bridge]): Reimplemented to not use the bridgeForDOMDocument: method.
5526         * DefaultDelegates/WebDefaultContextMenuDelegate.mm: Removed unneeded include.
5528         * Plugins/WebPluginController.mm: Ditto.
5530         * WebCoreSupport/WebFrameBridge.h: Removed unneeded things, including the
5531         init and close methods. Added a setWebFrame: method.
5533         * WebCoreSupport/WebFrameBridge.mm:
5534         (-[WebFrameBridge setWebFrame:]): Added.
5536         * WebCoreSupport/WebFrameLoaderClient.mm:
5537         (WebFrameLoaderClient::frameLoaderDestroyed): Added an assertion.
5538         (WebFrameLoaderClient::detachedFromParent4): Moved the call to close on the
5539         bridge here. Soon we will be able to remove this entirely!
5540         (WebFrameLoaderClient::createFrame): Rewrote this to use the method moved
5541         into WebFrame from the bridge.
5543         * WebView/WebFrame.mm:
5544         (-[WebFramePrivate dealloc]): Added code to release the bridge, because it's
5545         now owned by the frame.
5546         (-[WebFramePrivate finalize]): Added this missing method. We'd leak the script
5547         debugger under GC without this!
5548         (kit): Rewrote the function that maps from a WebCore::Frame to a WebFrame to
5549         use WebFrameLoaderClient instead of the bridge.
5550         (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]): Added.
5551         This is code that used to live in the bridge's init function.
5552         (+[WebFrame _createMainFrameWithPage:frameName:frameView:]): Ditto.
5553         (+[WebFrame WebCore::_createSubframeWithOwnerElement:frameName:frameView:]): Ditto.
5554         (-[WebFrame _initWithWebFrameView:webView:bridge:]): Retain the bridge, since
5555         the WebView is now the bridge's owner.
5556         (-[WebFrame _updateBackground]): Changed this one call site that was calling the
5557         WebCore::Frame::bridge function directly to use the kit function instead.
5558         (-[WebFrame dealloc]): Added code to clear the WebFrame pointer in the bridge.
5559         This code won't last long -- we're eliminating the bridge soon.
5560         (-[WebFrame finalize]): Ditto.
5562         * WebView/WebFrameInternal.h: Added a coreFrame backpointer and two new methods
5563         for creating frames.
5565         * WebView/WebView.mm:
5566         (-[WebView _commonInitializationWithFrameName:groupName:]): Rewrote this to use
5567         the method moved into WebFrame from the bridge. Gets rid of the unpleasant idiom
5568         where we have to allocate a WebFrameBridge and then immediately release it.
5570 2008-03-11  Darin Adler  <darin@apple.com>
5572         Reviewed by Anders.
5574         - remove code depending on the bridge to get from an NSView to a WebCore::Frame
5576         * WebCoreSupport/WebFrameLoaderClient.mm:
5577         (WebFrameLoaderClient::transitionToCommittedForNewPage): Remove incorrect call
5578         to setView. A couple lines later, there is a call to _install, which sets the
5579         view to the scroll view.
5581         * WebCoreSupport/WebViewFactory.mm: Removed bridgeForView method.
5583         * WebView/WebDynamicScrollBarsView.h: Moved most of the declarations out of
5584         this file, since it's used by Safari.
5585         * WebView/WebDynamicScrollBarsViewInternal.h: Added.
5586         * WebView/WebDynamicScrollBarsView.m:
5587         (-[WebDynamicScrollBarsView updateScrollers]): Ditto.
5588         (-[WebDynamicScrollBarsView setAllowsScrolling:]): Ditto.
5589         (-[WebDynamicScrollBarsView allowsScrolling]): Ditto.
5590         (-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]): Ditto.
5591         (-[WebDynamicScrollBarsView setAllowsVerticalScrolling:]): Ditto.
5592         (-[WebDynamicScrollBarsView allowsHorizontalScrolling]): Ditto.
5593         (-[WebDynamicScrollBarsView allowsVerticalScrolling]): Ditto.
5594         (-[WebDynamicScrollBarsView horizontalScrollingMode]): Ditto.
5595         (-[WebDynamicScrollBarsView verticalScrollingMode]): Ditto.
5596         (-[WebDynamicScrollBarsView setHorizontalScrollingMode:]): Ditto.
5597         (-[WebDynamicScrollBarsView setHorizontalScrollingMode:andLock:]): Ditto.
5598         (-[WebDynamicScrollBarsView setVerticalScrollingMode:]): Ditto.
5599         (-[WebDynamicScrollBarsView setVerticalScrollingMode:andLock:]): Ditto.
5600         (-[WebDynamicScrollBarsView setScrollingMode:]): Ditto.
5601         (-[WebDynamicScrollBarsView setScrollingMode:andLock:]): Ditto.
5603         * WebView/WebFrameView.mm:
5604         (-[WebFrameView _web_frame]): Added. Replaces the webCoreBridge method.
5606         * WebView/WebView.mm:
5607         (-[WebView setAlwaysShowVerticalScroller:]): Updated for changes to WebCoreFrameView.h.
5608         (-[WebView alwaysShowVerticalScroller]): Ditto.
5609         (-[WebView setAlwaysShowHorizontalScroller:]): Ditto.
5610         (-[WebView alwaysShowHorizontalScroller]): Ditto.
5612 2008-03-11  Darin Adler  <darin@apple.com>
5614         Reviewed by Sam.
5616         - eliminate the remaining parts of WebCoreBridge used for calls to WebKit from WebCore
5618         * WebCoreSupport/WebChromeClient.h: Added new virtual functions that replace
5619         bridge methods.
5620         * WebCoreSupport/WebChromeClient.mm: Added lots of BEGIN_BLOCK_OBJC_EXCEPTIONS
5621         to recently-created functions.
5622         (WebChromeClient::firstResponder): Moved code here from the bridge.
5623         (WebChromeClient::makeFirstResponder): Ditto.
5624         (WebChromeClient::runOpenPanel): Ditto.
5625         (WebChromeClient::willPopUpMenu): Ditto.
5627         * WebCoreSupport/WebFrameBridge.h: Removed almost everything. What's left
5628         is related to creating the bridge and connecting it to WebCore, which will
5629         go next when I eliminate use of the bridge to get to/from the Frame*.
5630         * WebCoreSupport/WebFrameBridge.mm:
5631         (-[WebFrameBridge close]): Moved the code to track the bridge count here
5632         instead of the dealloc and finalize methods.
5634 2008-03-11  Darin Adler  <darin@apple.com>
5636         Reviewed by Mitz.
5638         - update code affected by Range changes
5640         * Misc/WebNSAttributedStringExtras.mm:
5641         (+[NSAttributedString _web_attributedStringFromRange:]): Update for name changes.
5642         * WebView/WebHTMLRepresentation.mm:
5643         (-[WebHTMLRepresentation attributedStringFrom:startOffset:to:endOffset:]):
5644         Use Range::create.
5645         * WebView/WebHTMLView.mm:
5646         (-[WebHTMLView attributedString]): Ditto.
5648 2008-03-10  Darin Adler  <darin@apple.com>
5650         Reviewed by Sam.
5652         - eliminate keyboard UI mode method from WebCoreFrameBridge
5654         * WebCoreSupport/WebChromeClient.h: Added keyboardUIMode function.
5655         * WebCoreSupport/WebChromeClient.mm:
5656         (WebChromeClient::keyboardUIMode): Ditto. Calls WebView.
5657         * WebCoreSupport/WebFrameBridge.h: Removed unused things, including the
5658         fields for keyboard UI mode.
5659         * WebCoreSupport/WebFrameBridge.mm:
5660         (-[WebFrameBridge dealloc]): Removed unneeded code; eliminated the fini
5661         method.
5662         (-[WebFrameBridge finalize]): Ditto.
5663         * WebView/WebView.mm: Moved the keyboard mode code in here.
5664         (-[WebView _close]): Remove observer from the distributed notification
5665         center as well as the normal one.
5666         (-[WebView _retrieveKeyboardUIModeFromPreferences:]): Added. Code moved
5667         here from the bridge.
5668         (-[WebView _keyboardUIMode]): Ditto.
5669         * WebView/WebViewInternal.h: Added _keyboardUIMode method.
5671 2008-03-10  Darin Adler  <darin@apple.com>
5673         Reviewed by Sam.
5675         - eliminate Java applet methods from WebCoreFrameBridge
5677         * WebCoreSupport/WebChromeClient.mm: Removed unneeded headers and declarations.
5678         * WebCoreSupport/WebFrameBridge.mm: Ditto. Also removed unneeded methods, including
5679         the ones that load Java applets.
5680         * WebCoreSupport/WebFrameLoaderClient.h: Added javaApplet function.
5681         * WebCoreSupport/WebFrameLoaderClient.mm: Ditto.
5683 2008-03-07  Simon Hausmann  <hausmann@webkit.org>
5685         Reviewed by Darin Adler.
5687         Done with Lars.
5689         Simplified WebViewFactory's refreshPlugins method to only refresh the
5690         plugins and not reload the frames anymore since that's now done in a
5691         platform independent manner by WebCore::Page.
5693         Also removed the now unused pluginNameForMIMEType and
5694         pluginSupportsMIMEType methods.
5696         * WebCoreSupport/WebViewFactory.mm:
5697         * WebView/WebFrame.mm:
5698         * WebView/WebFrameInternal.h:
5699         * WebView/WebView.mm:
5701 2008-03-08  Mark Rowe  <mrowe@apple.com>
5703         Reviewed by Darin Adler.
5705         Fix 64-bit build with GCC 4.2.
5707         * DefaultDelegates/WebDefaultScriptDebugDelegate.m: Use NSUInteger in place of unsigned where required.
5708         * DefaultDelegates/WebDefaultUIDelegate.m: Ditto.
5709         * History/WebHistoryItem.mm: Ditto.
5710         * Misc/WebElementDictionary.mm: Ditto.
5711         * WebCoreSupport/WebFrameLoaderClient.mm:
5712         (WebFrameLoaderClient::objectContentType): Move variable declaration outside of if to avoid warning about the
5713         variable being unused in 64-bit.
5714         * WebCoreSupport/WebInspectorClient.mm: Use NSUInteger in place of unsigned where required.
5715         * WebView/WebHTMLView.mm:
5716         (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Use CGFloat in place of float where required.
5717         (-[WebTextCompleteController numberOfRowsInTableView:]): Use NSInteger in place of int where required.
5719 2008-03-08  Darin Adler  <darin@apple.com>
5721         Reviewed by Adele.
5723         - eliminate custom highlight methods from WebCoreFrameBridge
5725         * WebCoreSupport/WebChromeClient.h: Added custom highlight functions.
5726         * WebCoreSupport/WebChromeClient.mm:
5727         (WebChromeClient::customHighlightRect): Moved code here from bridge.
5728         (WebChromeClient::paintCustomHighlight): Ditto.
5729         * WebCoreSupport/WebFrameBridge.mm: Removed code here.
5731 2008-03-07  David D. Kilzer  <ddkilzer@apple.com>
5733         Unify concept of enabling Netscape Plug-in API (NPAPI).
5735         Reviewed by Darin Adler.
5737         * WebKit.exp: Removed unused class export for WebBaseNetscapePluginView.
5739         * WebKitPrefix.h: Removed WTF_USE_NPOBJECT since we now use
5740         ENABLE(NETSCAPE_PLUGIN_API) as defined in Platform.h.
5742         * Plugins/WebBaseNetscapePluginStream.h: Replaced #ifndef __LP64__ with
5743         #if ENABLE(NETSCAPE_PLUGIN_API).
5744         * Plugins/WebBaseNetscapePluginStream.mm: Ditto.
5745         * Plugins/WebBaseNetscapePluginView.h: Ditto.
5746         * Plugins/WebBaseNetscapePluginView.mm: Ditto.
5747         * Plugins/WebBaseNetscapePluginViewInternal.h: Ditto.
5748         * Plugins/WebBaseNetscapePluginViewPrivate.h: Ditto.
5749         * Plugins/WebBasePluginPackage.h: Ditto.
5750         * Plugins/WebBasePluginPackage.m: Ditto.
5751         (+[WebBasePluginPackage pluginWithPath:]):
5752         * Plugins/WebNetscapeDeprecatedFunctions.c: Ditto.
5753         * Plugins/WebNetscapeDeprecatedFunctions.h: Ditto.
5754         * Plugins/WebNetscapePluginEmbeddedView.h: Ditto.
5755         * Plugins/WebNetscapePluginEmbeddedView.mm: Ditto.
5756         * Plugins/WebNetscapePluginPackage.h: Ditto.
5757         * Plugins/WebNetscapePluginPackage.m: Ditto.
5758         * Plugins/WebNetscapePluginStream.h: Ditto.
5759         * Plugins/WebNetscapePluginStream.mm: Ditto.
5760         * Plugins/WebPluginDatabase.m: Ditto.
5761         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
5762         * Plugins/npapi.m: Ditto.
5763         * WebCoreSupport/WebFrameLoaderClient.mm: Ditto.
5764         (WebFrameLoaderClient::objectContentType):
5765         (WebFrameLoaderClient::createPlugin):
5766         * WebView/WebHTMLView.mm: Ditto.
5767         (-[NSArray _web_makePluginViewsPerformSelector:withObject:]):
5768         * WebView/WebHTMLViewInternal.h: Ditto.
5770         * WebView/WebFrame.mm: Replaced #ifndef __LP64__ with
5771         #if ENABLE(NETSCAPE_PLUGIN_API). Moved methods below from (WebPrivate)
5772         category to (WebInternal) category so we don't expose the ENABLE() macro
5773         from the private header.
5774         (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
5775         (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]):
5776         * WebView/WebFrameInternal.h: Ditto.
5777         * WebView/WebFramePrivate.h: Ditto.
5779 2008-03-07  Alexey Proskuryakov  <ap@webkit.org>
5781         Reviewed by Darin Adler.
5783         <rdar://problem/5579292> REGRESSION: (safari 2-3): "Default default" encoding for Korean
5784         changed from Korean (Windows, DOS) to Korean (ISO 2022-KR), which breaks some sites
5786         * WebView/WebPreferences.m:
5787         (+[WebPreferences _setInitialDefaultTextEncodingToSystemEncoding]): Make encoding name match
5788         the one used in Safari.
5790 2008-03-07  Mark Rowe  <mrowe@apple.com>
5792         Reviewed by Oliver Hunt.
5794         Fix WebKit build with GCC 4.2.
5796         * Plugins/WebBaseNetscapePluginView.mm: Use the correct return type in method signature.
5798 2008-03-07  Darin Adler  <darin@apple.com>
5800         Reviewed by Adam.
5802         - eliminated WebCoreFrameBridge runOpenPanel
5804         * WebCoreSupport/WebChromeClient.h: Added runOpenPanel.
5805         * WebCoreSupport/WebChromeClient.mm:
5806         (WebChromeClient::runOpenPanel): Added.
5807         (-[WebOpenPanelResultListener initWithChooser:]): Added. Used to wrap the
5808         FileChooser so it can get a result from the UI delegate.
5809         (-[WebOpenPanelResultListener dealloc]): Added.
5810         (-[WebOpenPanelResultListener finalize]): Added.
5811         (-[WebOpenPanelResultListener cancel]): Added.
5812         (-[WebOpenPanelResultListener chooseFilename:]): Added.
5814 2008-03-06  Darin Adler  <darin@apple.com>
5816         Reviewed by Mitz.
5818         - fix regression test failures from the visited-link change
5820         * History/WebHistory.mm:
5821         (+[WebHistory setOptionalSharedHistory:]): Call PageGroup::setShouldTrackVisitedLinks
5822         to turn off visited links if there is no history object. Also call
5823         removeAllVisitedLinks so we can start over from scratch with the new history.
5825 2008-03-06  Dan Bernstein  <mitz@apple.com>
5827         Reviewed by Darin Adler.
5829         - fix a regression from r30741: a crash under
5830           WebFrameLoaderClient::createPlugin() when showing a Mail message with
5831           an attachment
5833         * WebCoreSupport/WebFrameLoaderClient.mm:
5834         (WebFrameLoaderClient::createPlugin):
5836 2008-03-06  Darin Adler  <darin@apple.com>
5838         - fix Tiger build
5840         * History/WebHistory.mm: Added include of WebTypesInternal.h.
5842 2008-03-06  Darin Adler  <darin@apple.com>
5844         - fix Release build
5846         * History/WebHistory.mm:
5847         (-[WebHistoryPrivate setLastVisitedTimeInterval:forItem:]): Removed underscore.
5848         (-[WebHistoryPrivate loadFromURL:collectDiscardedItemsInto:error:]): Added #if.
5849         (-[WebHistoryPrivate saveToURL:error:]): Ditto.
5851 2008-03-06  Darin Adler  <darin@apple.com>
5853         Reviewed by Mitz.
5855         - fix http://bugs.webkit.org/show_bug.cgi?id=17526
5856           REGRESSION: iframes are added to Safari's History menu
5857           by separating the visited link machinery from global history
5859         * History/WebHistory.mm: Moved WebHistoryPrivate inside this file.
5860         (-[WebHistoryPrivate removeItemFromDateCaches:]): Removed the underscore from this
5861         method name, since it's on a private object.
5862         (-[WebHistoryPrivate removeItemForURLString:]): Added a call to the
5863         PageGroup::removeAllVisitedLinks function if the last URL was removed.
5864         (-[WebHistoryPrivate addItemToDateCaches:]): Removed the underscore from this
5865         method name, since it's on a private object.
5866         (-[WebHistoryPrivate removeAllItems]): Call PageGroup::removeAllVisitedLinks.
5867         (-[WebHistoryPrivate ageLimitDate]): Removed the underscore from this
5868         method name, since it's on a private object.
5869         (-[WebHistoryPrivate loadHistoryGutsFromURL:savedItemsCount:collectDiscardedItemsInto:error:]):
5870         Ditto.
5871         (-[WebHistoryPrivate saveHistoryGuts:URL:error:]): Ditto. Also changed this
5872         to correctly return the error by using the newer version of writeToURL: and
5873         removed the FIXME about that.
5874         (-[WebHistoryPrivate addVisitedLinksToPageGroup:]): Added. Calls addVisitedLink
5875         for every link in the history.
5876         (-[WebHistory saveToURL:error:]): Removed the FIXME, since we do get the error now.
5877         (-[WebHistory addItem:]): Moved into the WebPrivate category.
5878         (-[WebHistory addItemForURL:]): Ditto.
5879         (-[WebHistory _addItemForURL:title:]): Added. Used for the normal case where we
5880         create an item and already know its title.
5881         (-[WebHistory ageLimitDate]): Moved into the WebPrivate category.
5882         (-[WebHistory containsItemForURLString:]): Ditto.
5883         (-[WebHistory removeItem:]): Ditto.
5884         (-[WebHistory setLastVisitedTimeInterval:forItem:]): Ditto.
5885         (-[WebHistory _itemForURLString:]): Ditto.
5886         (-[WebHistory _addVisitedLinksToPageGroup:]): Added. For use only inside WebKit.
5888         * History/WebHistoryInternal.h: Added.
5889         * History/WebHistoryItemInternal.h: Tweaked formatting and includes.
5890         * History/WebHistoryPrivate.h: Moved the WebHistoryPrivate class out of this header.
5891         Also reorganized what was left behind.
5893         * WebCoreSupport/WebChromeClient.h: Added populateVisitedLinks.
5894         * WebCoreSupport/WebChromeClient.mm:
5895         (WebChromeClient::populateVisitedLinks): Added a call to the new
5896         -[WebHistory _addVisitedLinksToPageGroup:] method.
5898         * WebCoreSupport/WebFrameLoaderClient.mm:
5899         (WebFrameLoaderClient::updateGlobalHistory): Changed code to use the new
5900         -[WebHistory _addItemForURL:title:] method.
5902 2008-03-05  Adam Roben  <aroben@apple.com>
5904         Rename WebCoreScriptDebuggerImp.{h,mm} to WebScriptDebugger.{h,mm}
5906         Reviewed by Kevin M.
5908         * WebView/WebFrame.mm:
5909         * WebView/WebScriptDebugDelegate.mm:
5910         * WebView/WebScriptDebugger.h: Renamed from WebKit/mac/WebView/WebCoreScriptDebuggerImp.h.
5911         * WebView/WebScriptDebugger.mm: Renamed from WebKit/mac/WebView/WebCoreScriptDebuggerImp.mm.
5913 2008-03-05  Adam Roben  <aroben@apple.com>
5915         Rename WebCoreScriptDebuggerImp to WebScriptDebugger
5917         Reviewed by Kevin M.
5919         * WebView/WebCoreScriptDebuggerImp.h:
5920         * WebView/WebCoreScriptDebuggerImp.mm:
5921         * WebView/WebFrame.mm:
5922         (-[WebFrame _attachScriptDebugger]):
5923         * WebView/WebFrameInternal.h:
5925 2008-03-05  Adam Roben  <aroben@apple.com>
5927         Remove WebScriptDebugger
5929         Uses of WebScriptDebugger have been replaced with
5930         WebCoreScriptDebuggerImp.
5932         Reviewed by Kevin M.
5934         * WebView/WebFrame.mm:
5935         (-[WebFramePrivate dealloc]): Use delete instead of release since
5936         WebCoreScriptDebuggerImp is a C++ class.
5937         (-[WebFrame _attachScriptDebugger]): Updated to use early returns and
5938         WebCoreScriptDebuggerImp.
5939         (-[WebFrame _detachScriptDebugger]): Ditto.
5940         * WebView/WebFrameInternal.h:
5941         * WebView/WebScriptDebugDelegate.mm: Removed WebScriptDebugger
5942         * WebView/WebScriptDebugDelegatePrivate.h: Removed.
5943         * WebView/WebView.mm:
5945 2008-03-05  Adam Roben  <aroben@apple.com>
5947         Remove -webFrame and -globalObject from WebScriptDebugger
5949         WebCoreScriptDebuggerImp is now unaware of WebScriptDebugger
5951         Reviewed by Kevin M.
5953         * WebView/WebCoreScriptDebuggerImp.h: Removed WebScriptDebugger*
5954         parameter to the constructor.
5955         * WebView/WebCoreScriptDebuggerImp.mm:
5956         (toWebFrame): Added.
5957         (WebCoreScriptDebuggerImp::sourceParsed): Call toWebFrame.
5958         (WebCoreScriptDebuggerImp::callEvent): Ditto, and get the Frame's
5959         WindowScriptObject ourselves instead of asking WebScriptDebugger for
5960         it.
5961         (WebCoreScriptDebuggerImp::atStatement): Call toWebFrame.
5962         (WebCoreScriptDebuggerImp::returnEvent): Ditto.
5963         (WebCoreScriptDebuggerImp::exception): Ditto.
5964         * WebView/WebScriptDebugDelegate.mm:
5965         (-[WebScriptDebugger initWithWebFrame:]): Updated for change to
5966         WebScriptDebuggerImp's constructor.
5967         * WebView/WebScriptDebugDelegatePrivate.h: Removed
5968         -webFrame/-globalObject.
5970 2008-03-05  Adam Roben  <aroben@apple.com>
5972         Remove -enterFrame: and -leaveFrame from WebScriptDebugger
5974         Reviewed by Kevin M.
5976         * WebView/WebCoreScriptDebuggerImp.h: Changed to store m_topCallFrame
5977         in a RetainPtr, now that WebCoreScriptDebuggerImp is in charge of its
5978         lifetime.
5979         * WebView/WebCoreScriptDebuggerImp.mm:
5980           - Added declaration of -[WebScriptCallFrame
5981             _initWithGlobalObject:caller:state:].
5982           - Changed most uses of m_topCallFrame to m_topCallFrame.get()
5983         (WebCoreScriptDebuggerImp::WebCoreScriptDebuggerImp): Removed
5984         now-unnecessary initialization of m_topCallFrame.
5985         (WebCoreScriptDebuggerImp::callEvent): Replaced call to enterFrame:
5986         with its implementation. The one difference between this
5987         implementation and the old enterFrame: method is that we don't hand
5988         our reference to m_topCallFrame to _initWithGlobalObject: -- that
5989         method must now retain the passed-in WebScriptCallFrame manually.
5990         (WebCoreScriptDebuggerImp::atStatement):
5991         (WebCoreScriptDebuggerImp::returnEvent): Replaced call to leaveFrame
5992         with its implementation.
5993         (WebCoreScriptDebuggerImp::exception):
5994         * WebView/WebScriptDebugDelegate.mm: Removed declaration of
5995         -[WebScriptCallFrame _initWithGlobalObject:caller:state:].
5996         (-[WebScriptCallFrame _initWithGlobalObject:caller:state:]): Changed
5997         to retain the passed-in caller.
5998         * WebView/WebScriptDebugDelegatePrivate.h:
5999           - Removed _current ivar
6000           - Removed enterFrame:/leaveFrame declarations.
6002 2008-03-05  Adam Roben  <aroben@apple.com>
6004         Remove -parsedSource: from WebScriptDebugger
6006         Reviewed by Kevin M.
6008         * WebView/WebCoreScriptDebuggerImp.mm:
6009         (WebCoreScriptDebuggerImp::sourceParsed): Moved code here from
6010         -[WebScriptDebugger parsedSource:fromURL:sourceId:startLine:errorLine:errorMessage:]
6011         * WebView/WebScriptDebugDelegate.mm: Removed -parsedSource:.
6012         * WebView/WebScriptDebugDelegatePrivate.h: Ditto.
6014 2008-03-05  Adam Roben  <aroben@apple.com>
6016         Remove -enteredFrame:, -leavingFrame:, and -exceptionRaised: from WebScriptDebugger
6018         Reviewed by Kevin M.
6020         * WebView/WebCoreScriptDebuggerImp.mm:
6021         (WebCoreScriptDebuggerImp::WebCoreScriptDebuggerImp): Changed to call
6022         trhough to callEvent instead of duplicating its code here.
6023         (WebCoreScriptDebuggerImp::callEvent): Moved code from
6024         -[WebScriptDebugger enteredFrame:sourceId:line:] here.
6025         (WebCoreScriptDebuggerImp::returnEvent): Moved code from
6026         -[WebScriptDebugger leavingFrame:sourceId:line:] here.
6027         (WebCoreScriptDebuggerImp::exception): Moved code from
6028         -[WebScriptDebugger exceptionRaised:sourceId:line:] here.
6029         * WebView/WebScriptDebugDelegate.mm: Removed -enteredFrame:,
6030         -leavingFrame:, and -exceptionRaised:.
6031         * WebView/WebScriptDebugDelegatePrivate.h: Ditto.
6033 2008-03-05  Adam Roben  <aroben@apple.com>
6035         Remove -[WebScriptDebugger hitStatement:sourceId:line:]
6037         Reviewed by Kevin M.
6039         * WebView/WebCoreScriptDebuggerImp.mm:
6040         (WebCoreScriptDebuggerImp::atStatement): Moved code here from
6041         -[WebScriptDebugger hitStatement:sourceId:line:].
6042         * WebView/WebScriptDebugDelegate.mm:
6043         (-[WebScriptDebugger webFrame]): Added.
6044         * WebView/WebScriptDebugDelegatePrivate.h:
6046 2008-03-05  Adam Roben  <aroben@apple.com>
6048         Remove WebCoreScriptDebugger
6050         Reviewed by Kevin M.
6052         * WebView/WebCoreScriptDebugger.h: Removed.
6053         * WebView/WebCoreScriptDebugger.mm: Removed.
6054         * WebView/WebCoreScriptDebuggerImp.h: Replaced WebCoreScriptDebugger
6055         with WebScriptDebugger.
6056         * WebView/WebCoreScriptDebuggerImp.mm: Ditto, and replaced [m_debugger
6057         delegate] with just m_debugger.
6058         (toNSString): Moved here from WebCoreScriptDebugger.mm.
6059         (toNSURL): Ditto.
6060         (WebCoreScriptDebuggerImp::WebCoreScriptDebuggerImp):
6061         (WebCoreScriptDebuggerImp::sourceParsed):
6062         (WebCoreScriptDebuggerImp::callEvent):
6063         (WebCoreScriptDebuggerImp::atStatement):
6064         (WebCoreScriptDebuggerImp::returnEvent):
6065         (WebCoreScriptDebuggerImp::exception):
6066         * WebView/WebScriptDebugDelegate.mm:
6067         (-[WebScriptDebugger initWithWebFrame:]): _debugger now holds a
6068         WebCoreScriptDebuggerImp, so initialize it properly.
6069         * WebView/WebScriptDebugDelegatePrivate.h: Changed _debugger to hold a
6070         WebCoreScriptDebuggerImp.
6072 2008-03-05  Adam Roben  <aroben@apple.com>
6074         Move WebCoreScriptDebuggerImp to its own source files
6076         Also changed WebCoreScriptDebuggerImp coding style to match our style
6077         guidelines.
6079         Reviewed by Kevin M.
6081         * WebView/WebCoreScriptDebugger.h: Added declaration of toNSURL
6082         function.
6083         * WebView/WebCoreScriptDebugger.mm: Removed WebCoreScriptDebuggerImp
6084         implementation.
6085         (toNSURL): Made no longer static.
6086         * WebView/WebCoreScriptDebuggerImp.h: Added.
6087         * WebView/WebCoreScriptDebuggerImp.mm: Added. Code was moved here from
6088         WebCoreScriptDebugger.mm and cleaned up.
6089         (WebCoreScriptDebuggerImp::WebCoreScriptDebuggerImp):
6090         (WebCoreScriptDebuggerImp::sourceParsed):
6091         (WebCoreScriptDebuggerImp::callEvent):
6092         (WebCoreScriptDebuggerImp::atStatement):
6093         (WebCoreScriptDebuggerImp::returnEvent):
6094         (WebCoreScriptDebuggerImp::exception):
6096 2008-03-05  Adam Roben  <aroben@apple.com>
6098         Move -_enterFrame and -_leaveFrame from WebCoreScriptDebugger to WebScriptDebugger
6100         Reviewed by Kevin M.
6102         * WebView/WebCoreScriptDebugger.h:
6103           - Removed newFrameWithGlobalObject:caller:state: from
6104             WebScriptDebugger protocol
6105           - Added enterFrame: and leaveFrame: to WebScriptDebugger protocol
6106           - Removed _current ivar from WebCoreScriptDebugger
6107         * WebView/WebCoreScriptDebugger.mm:
6108         (WebCoreScriptDebuggerImp::callEvent): Changed to call enterFrame on
6109         the delegate.
6110         (WebCoreScriptDebuggerImp::returnEvent): Ditto for leaveFrame.
6111         * WebView/WebScriptDebugDelegate.mm:
6112         (-[WebScriptDebugger dealloc]): Added code to release _current.
6113         (-[WebScriptDebugger enterFrame:]): Added. Code came from
6114         WebCoreScriptDebugger.
6115         (-[WebScriptDebugger leaveFrame]): Ditto.
6116         * WebView/WebScriptDebugDelegatePrivate.h: Added _current ivar.
6118 2008-03-05  Adam Roben  <aroben@apple.com>
6120         Remove WebCoreScriptCallFrame
6122         Reviewed by Tim.
6124         * WebView/WebCoreScriptDebugger.h:
6125           - Replaced WebCoreScriptCallFrame with WebScriptCallFrame
6126           - Replaced -newWrapperForFrame: with
6127             -newFrameWithGlobalObject:caller:state:
6128           - Removed WebCoreScriptCallFrame interface.
6129         * WebView/WebCoreScriptDebugger.mm: Replaced WebCoreScriptCallFrame
6130         with WebScriptCallFrame.
6131         (-[WebCoreScriptDebugger _enterFrame:]): Changed to call
6132         -newFrameWithGlobalObject:caller:state.
6133         (-[WebCoreScriptDebugger _leaveFrame]):
6134         * WebView/WebScriptDebugDelegate.h: Changed WebScriptCallFrame's
6135         _private ivar to be of type WebScriptCallFramePrivate*.
6136         * WebView/WebScriptDebugDelegate.mm:
6137           - Replaced WebCoreScriptCallFrame with WebScriptCallFrame
6138           - Added WebScriptCallFramePrivate
6139         (-[WebScriptDebugger enteredFrame:sourceId:line:]):
6140         (-[WebScriptDebugger hitStatement:sourceId:line:]):
6141         (-[WebScriptDebugger leavingFrame:sourceId:line:]):
6142         (-[WebScriptDebugger exceptionRaised:sourceId:line:]):
6143         (-[WebScriptCallFramePrivate dealloc]): Added.
6144         (-[WebScriptCallFrame _initWithGlobalObject:caller:state:]): Added.
6145         Code came from WebCoreScriptCallFrame.
6146         (-[WebScriptCallFrame dealloc]): Added a call to release the _private
6147         ivar.
6148         (-[WebScriptCallFrame _convertValueToObjcValue:]): Replaced calls to
6149         _private with direct access of _private's ivars.
6150         (-[WebScriptCallFrame caller]): Ditto.
6151         (-[WebScriptCallFrame scopeChain]): Ditto.
6152         (-[WebScriptCallFrame evaluateWebScript:]): Ditto.
6154 2008-03-05  Adam Roben  <aroben@apple.com>
6156         Move -_convertValueToObjcValue to WebScriptCallFrame
6158         Reviewed by Darin Adler.
6160         * WebView/WebCoreScriptDebugger.h: Removed declaration of
6161         -_convertValueToObjcValue.
6162         * WebView/WebCoreScriptDebugger.mm: Removed -_convertValueToObjcValue.
6163         * WebView/WebScriptDebugDelegate.mm:
6164         (-[WebScriptCallFrame _convertValueToObjcValue:]): Added. Code came
6165         from -[WebCoreScriptCallFrame _convertValueToObjcValue].
6166         (-[WebScriptCallFrame scopeChain]): Changed to call
6167         -_convertValueToObjcValue on self instead of _private.
6168         (-[WebScriptCallFrame exception]): Ditto.
6169         (-[WebScriptCallFrame evaluateWebScript:]): Ditto.
6171 2008-03-05  Adam Roben  <aroben@apple.com>
6173         Move -exception and -evaluateWebScript: to WebScriptCallFrame
6175         Reviewed by Darin Adler.
6177         * WebView/WebCoreScriptDebugger.h: Removed declarations of -exception
6178         and -evaluateWebScript:.
6179         * WebView/WebCoreScriptDebugger.mm: Removed -exception and
6180         -evaluateWebScript:.
6181         * WebView/WebScriptDebugDelegate.mm:
6182         (-[WebScriptCallFrame exception]): Added. Code came from
6183         -[WebCoreScriptCallFrame exception].
6184         (-[WebScriptCallFrame evaluateWebScript:]): Added. Code came from
6185         -[WebCoreScriptCallFrame evaluateWebScript:].
6187 2008-03-05  Adam Roben  <aroben@apple.com>
6189         Move -scopeChain to WebScriptCallFrame
6191         Reviewed by Darin Adler.
6193         * WebView/WebCoreScriptDebugger.h:
6194           - Added declarations of -globalObject and -_convertValueToObjcValue:
6195             to WebCoreScriptCallFrame
6196           - Removed declaration of -scopeChain.
6197         * WebView/WebCoreScriptDebugger.mm: Moved -_convertValueToObjcValue
6198         within the main WebCoreScriptCallFrame implementation.
6199         (-[WebCoreScriptCallFrame globalObject]): Added.
6200         * WebView/WebScriptDebugDelegate.mm:
6201         (-[WebScriptCallFrame scopeChain]): Added. Code came from
6202         -[WebCoreScriptCallFrame scopeChain].
6204 2008-03-05  Adam Roben  <aroben@apple.com>
6206         Move -functionName from WebCoreScriptCallFrame to WebScriptCallFrame
6208         Reviewed by Darin Adler.
6210         * WebView/WebCoreScriptDebugger.h:
6211           - Removed #else case of #ifdef __cplusplus since this file is only
6212             ever used by C++ Objective-C files
6213           - Removed 'using KJS::ExecState' statement since we prefer not to
6214             have using statements in header files
6215           - Consequently prefixed uses of ExecState with KJS::
6216           - Added declaration of toNSString method that takes a const
6217             UString&
6218           - Added declaration of -[WebCoreScriptCallFrame state]
6219           - Removed declaration of -[WebCoreScriptCallFrame functionName]
6220         * WebView/WebCoreScriptDebugger.mm:
6221         (toNSString): Made this no longer static.
6222         (-[WebCoreScriptCallFrame state]): Added.
6223         * WebView/WebScriptDebugDelegate.mm:
6224         (-[WebScriptCallFrame functionName]): Added. Code came from
6225         -[WebCoreScriptCallFrame functionName], though I changed some nested
6226         ifs into early returns.
6228 2008-03-05  Adam Roben  <aroben@apple.com>
6230         Move WebCoreScriptDebugger to WebKit
6232         Reviewed by Darin Adler.
6234         * WebView/WebCoreScriptDebugger.h: Renamed from WebCore/page/mac/WebCoreScriptDebugger.h.
6235         * WebView/WebCoreScriptDebugger.mm: Renamed from WebCore/page/mac/WebCoreScriptDebugger.mm.
6236         (toNSString):
6237         (toNSURL):
6238         (WebCoreScriptDebuggerImp::WebCoreScriptDebuggerImp):
6239         (WebCoreScriptDebuggerImp::sourceParsed):
6240         (WebCoreScriptDebuggerImp::callEvent):
6241         (WebCoreScriptDebuggerImp::atStatement):
6242         (WebCoreScriptDebuggerImp::returnEvent):
6243         (WebCoreScriptDebuggerImp::exception):
6244         (+[WebCoreScriptDebugger initialize]):
6245         (-[WebCoreScriptDebugger initWithDelegate:]):
6246         (-[WebCoreScriptDebugger dealloc]):
6247         (-[WebCoreScriptDebugger finalize]):
6248         (-[WebCoreScriptDebugger delegate]):
6249         (-[WebCoreScriptDebugger _enterFrame:]):
6250         (-[WebCoreScriptDebugger _leaveFrame]):
6251         (-[WebCoreScriptCallFrame _initWithGlobalObject:caller:state:]):
6252         (-[WebCoreScriptCallFrame _setWrapper:]):
6253         (-[WebCoreScriptCallFrame _convertValueToObjcValue:]):
6254         (-[WebCoreScriptCallFrame dealloc]):
6255         (-[WebCoreScriptCallFrame wrapper]):
6256         (-[WebCoreScriptCallFrame caller]):
6257         (-[WebCoreScriptCallFrame scopeChain]):
6258         (-[WebCoreScriptCallFrame functionName]):
6259         (-[WebCoreScriptCallFrame exception]):
6260         (-[WebCoreScriptCallFrame evaluateWebScript:]):
6261         * WebView/WebScriptDebugDelegate.mm: Updated header path.
6262         * WebView/WebScriptDebugDelegatePrivate.h: Ditto.
6264 2008-03-05  Anders Carlsson  <andersca@apple.com>
6266         Reviewed by Geoff.
6268         Include file changes.
6269         
6270         * Plugins/WebBaseNetscapePluginView.mm:
6271         * Plugins/WebNetscapePluginPackage.m:
6273 2008-03-04  Timothy Hatcher  <timothy@apple.com>
6275         Reviewed by Darin Adler.
6277         <rdar://problem/5720160> Browser windows "do nothing" while modal
6278         dialog or menu is up due to run loop modes (or while scrolling)
6280         Add new API that lets a WebView be scheduled with multiple runloops and modes.
6281         This lets loading continue when in a nested runloop or in a different mode.
6283         * Misc/WebKitVersionChecks.h: Add a new version define:
6284         WEBKIT_FIRST_VERSION_WITH_LOADING_DURING_COMMON_RUNLOOP_MODES.
6285         * WebView/WebView.mm:
6286         (-[WebView _commonInitializationWithFrameName:groupName:]): Schedule in the main runloop and with
6287         the default runloop mode if we are linked on an earlier WebKit version, use common modes otherwise.
6288         (-[WebView scheduleInRunLoop:forMode:]): New API, that calls through to Page.
6289         (-[WebView unscheduleFromRunLoop:forMode:]): Ditto.
6290         * WebView/WebViewPrivate.h: Add the new pending API methods.
6292 2008-03-04  Anders Carlsson  <andersca@apple.com>
6294         Reviewed by Darin Adler.
6296         Fix crash that happens when trying to load a page with a Java applet.
6297         
6298         * WebCoreSupport/WebFrameLoaderClient.mm:
6299         Don't release the names and values array - the kit method returns an autoreleased array.
6301 2008-03-04  Darin Adler  <darin@apple.com>
6303         Reviewed by Adam.
6305         - fix 200+ failing regression tests
6306         - fix http://bugs.webkit.org/show_bug.cgi?id=17668
6307           Vertical scrollbar at slashdot.org is randomly not shown
6309         * WebCoreSupport/WebFrameLoaderClient.mm:
6310         (WebFrameLoaderClient::transitionToCommittedForNewPage): Changed the refcounting
6311         code here to exactly match the way it was before it was moved from WebCore. I had
6312         introduced a storage leak and that was causing problems with scroll bars!
6314 2008-03-04  Darin Adler  <darin@apple.com>
6316         Reviewed by Adam.
6318         - remove WebCoreFrameBridge reapplyStyles method
6320         * WebView/WebHTMLView.mm:
6321         (-[WebHTMLView reapplyStyles]): Moved code to reapply styles here from the bridge.
6323 2008-03-04  Darin Adler  <darin@apple.com>
6325         Reviewed by Adam.
6327         - eliminate WebCoreFrameBridge createFrameViewWithNSView
6329         * WebCoreSupport/WebFrameLoaderClient.mm:
6330         (WebFrameLoaderClient::transitionToCommittedForNewPage):
6331         Moved code here from createFrameViewWithNSView.
6333 2008-03-04  Darin Adler  <darin@apple.com>
6335         Reviewed by Adam.
6337         - removed WebCoreFrameBridge scrollOverflowInDirection
6339         * WebView/WebFrameView.mm:
6340         (-[WebFrameView _scrollOverflowInDirection:granularity:]): Changed to call
6341         EventHandler directly instead of using the bridge.
6342         (-[WebFrameView scrollToBeginningOfDocument:]): Updated to use WebCore enums instead
6343         of the ones from the bridge.
6344         (-[WebFrameView scrollToEndOfDocument:]): Ditto.
6345         (-[WebFrameView _pageVertically:]): Ditto.
6346         (-[WebFrameView _pageHorizontally:]): Ditto.
6347         (-[WebFrameView _scrollLineVertically:]): Ditto.
6348         (-[WebFrameView _scrollLineHorizontally:]): Ditto.
6350 2008-03-04  Darin Adler  <darin@apple.com>
6352         Reviewed by Adam.
6354         - remove WebCoreFrameBridge installInFrame: method
6356         * WebCoreSupport/WebFrameLoaderClient.mm:
6357         (WebFrameLoaderClient::transitionToCommittedForNewPage): Call
6358         -[WebFrameView _install] instead of -[WebCoreFrameBridge installInFrame:].
6359         * WebView/WebFrameView.mm:
6360         (-[WebFrameView _install]): Added. Has code from -[WebCoreFrameBridge installInFrame:].
6361         (-[WebFrameView _setCustomScrollViewClass:]): Used early return idiom so the entire
6362         method isn't nested inside an if statement. Call
6363         -[WebFrameView _install] instead of -[WebCoreFrameBridge installInFrame:].
6364         * WebView/WebFrameViewInternal.h: Added declaration of _install method so it can be
6365         used in WebFrameLoaderClient.mm.
6367 2008-03-04  Darin Adler  <darin@apple.com>
6369         Reviewed by Adam.
6371         - remove WebCoreFrameBridge window method
6373         * WebCoreSupport/WebFrameBridge.mm: Removed window method.
6375 2008-03-04  Darin Adler  <darin@apple.com>
6377         Reviewed by Adam.
6379         - move code from WebFrameBridge into WebFrameLoaderClient
6381         * WebCoreSupport/WebFrameBridge.h: Removed unused fields, changed frame name parameters
6382         to use WebCore::String instead of NSString, add initSubframeWithOwnerElement declaration,
6383         removed viewForPluginWithFrame, viewForJavaAppletWithFrame, createChildFrameNamed,
6384         redirectDataToPlugin, determineObjectFromMIMEType, and windowObjectCleared methods.
6385         * WebCoreSupport/WebFrameBridge.mm:
6386         (-[WebFrameBridge finishInitializingWithPage:frameName:WebCore::frameView:ownerElement:]):
6387         Changed to use WebCore::String.
6388         (-[WebFrameBridge initMainFrameWithPage:frameName:WebCore::frameView:]): Ditto.
6389         (-[WebFrameBridge initSubframeWithOwnerElement:frameName:WebCore::frameView:]): Ditto.
6391         * WebCoreSupport/WebFrameLoaderClient.mm:
6392         (WebFrameLoaderClient::setOriginalURLForDownload): Removed some dead code I found here
6393         and added a FIXME.
6394         (WebFrameLoaderClient::createFrame): Moved the code from WebFrameBridge here.
6395         (WebFrameLoaderClient::objectContentType): Ditto.
6396         (parameterValue): Added.  Helper function, based on code originally in WebFrameBridge.
6397         (pluginView): Ditto.
6398         (WebFrameLoaderClient::createPlugin): Moved the code from WebFrameBridge here.
6400 2008-03-04  Darin Adler  <darin@apple.com>
6402         Reviewed by Adam.
6404         - remove -[WebCoreFrameBridge dashboardRegionsChanged:]
6406         * WebCoreSupport/WebChromeClient.h:
6407         * WebCoreSupport/WebChromeClient.mm:
6408         (WebChromeClient::dashboardRegionsChanged): Moved code here from the bridge.
6409         The WebCore side now calls this only when there's an actual change.
6410         * WebCoreSupport/WebFrameBridge.h: Removed lastDashboardRegions.
6411         * WebCoreSupport/WebFrameBridge.mm:
6412         (-[WebFrameBridge dealloc]): Removed code to release lastDashboardRegions.
6413         Removed _compareDashboardRegions: and dashboardRegionsChanged: methods.
6415 2008-03-04  Darin Adler  <darin@apple.com>
6417         Reviewed by Adam.
6419         - remove WebCoreFrameBridge issuePasteComand method
6421         * WebCoreSupport/WebFrameBridge.mm: Removed issuePasteCommand method.
6422         * WebView/WebHTMLViewInternal.h: Removed declaration of paste: method.
6424 2008-03-03  Darin Adler  <darin@apple.com>
6426         Reviewed by Adam.
6428         - some "cleanup" on the path to removing WebCoreFrameBridge
6430         * Storage/WebDatabaseManager.mm: Tweak includes.
6431         * Storage/WebDatabaseTrackerClient.mm: Ditto.
6432         * Storage/WebSecurityOrigin.mm: Ditto.
6433         * Storage/WebSecurityOriginInternal.h: Ditto.
6435         * WebView/WebFrame.mm:
6436         (core): Changed to get rid of the requirement that WebKitEditableLinkBehavior exactly
6437         match WebCore::EditableLinkBehavior.
6438         * WebView/WebFrameInternal.h: Removed unused kit function.
6440         * WebView/WebHTMLView.mm: Moved WebHTMLViewPrivate class in here.
6441         * WebView/WebHTMLViewInternal.h: Moved WebHTMLVewPrivate class out of here.
6442         * WebView/WebHTMLViewPrivate.h: Tweaked formatting and removed some unneeded declarations.
6444         * WebView/WebPreferencesPrivate.h: Removed a no-longer-needed comment.
6446 2008-03-01  Mark Rowe  <mrowe@apple.com>
6448         Reviewed by Tim Hatcher.
6450         Update Xcode configuration to support building debug and release from the mysterious future.
6452         * Configurations/DebugRelease.xcconfig:
6454 2008-02-29  Mark Rowe  <mrowe@apple.com>
6456         Reviewed by Anders Carlsson.
6458         Replace use of WKPathFromFont with implementation in terms of public API.
6460         * WebCoreSupport/WebSystemInterface.m:
6461         (InitWebCoreSystemInterface): Remove unused symbol.
6463 2008-02-29  Mark Rowe  <mrowe@apple.com>
6465         Reviewed by Oliver Hunt.
6467         Fix spelling of "request" in name of WKNSURLProtocolClassForRequest.
6469         * Misc/WebNSURLExtras.mm:
6470         (-[NSURL _webkit_canonicalize]):
6471         * WebKit.order:
6473 2008-02-29  Mark Rowe  <mrowe@apple.com>
6475         Reviewed by Oliver Hunt.
6477         Don't use WKSupportsMultipartXMixedReplace on Leopard as multipart/x-mixed-replace is always handled by NSURLRequest.
6479         * WebCoreSupport/WebSystemInterface.m:
6480         (InitWebCoreSystemInterface):
6482 2008-02-29  Mark Rowe  <mrowe@apple.com>
6484         Reviewed by Oliver Hunt.
6486         Remove obsolete code that had been left intact to support users running WebKit with older versions of Safari.
6488         * Misc/WebNSViewExtras.m:  Remove _web_superviewOfClass:stoppingAtClass:.
6489         * Misc/WebNSWindowExtras.m:  Remove _webkit_displayThrottledWindows.
6490         * Misc/WebSearchableTextView.m:  Remove selectionImageForcingWhiteText:.
6491         * WebCoreSupport/WebImageRendererFactory.m:  Update comment to mention the last version of Safari that
6492         requires this class.
6493         * WebInspector/WebInspector.mm:  Remove sharedWebInspector and update comments to mention the last version
6494         of Safari that calls other obsolete methods.
6495         * WebView/WebDocumentPrivate.h:  Remove selectionImageForcingWhiteText:.
6496         * WebView/WebHTMLView.mm:  Ditto.
6497         * WebView/WebPDFView.mm:  Ditto.
6498         * WebView/WebView.mm:  Update comment to mentoin the last version of Safari that requires the obsolete method.
6500 2008-02-29  Mark Rowe  <mrowe@apple.com>
6502         Rubber-stamped by Eric Seidel.
6504         Remove unneeded includes of WebKitSystemInterface.h.
6506         * History/WebHistoryItem.mm:
6507         * Misc/WebNSViewExtras.m:
6508         * WebCoreSupport/WebFrameLoaderClient.mm:
6509         * WebView/WebDataSource.mm:
6510         * WebView/WebPDFView.mm:
6512 2008-02-29  Mark Rowe  <mrowe@apple.com>
6514         Reviewed by Oliver Hunt and Oliver Hunt.
6516         <rdar://problem/4753845> WebKit should use CGEventSourceSecondsSinceLastEventType in place of WKSecondsSinceLastInputEvent SPI.
6518         * WebCoreSupport/WebSystemInterface.m:
6519         (InitWebCoreSystemInterface):  Remove unused symbol.
6520         * WebKit.order:  Ditto.
6522 2008-02-28  Mark Rowe  <mrowe@apple.com>
6524         Reviewed by Dave Hyatt.
6526         Make use of new CGFont APIs on Leopard rather than making a WebKitSystemInterface call.
6528         * WebCoreSupport/WebSystemInterface.m:
6529         (InitWebCoreSystemInterface): Only initialize wkGetFontMetrics on Tiger.
6531 2008-02-27  Brady Eidson  <beidson@apple.com>
6533         Reviewed by Mark Rowe (code) and Darin (concept)
6535         Much better fix for <rdar://problem/4930688> (see r19549)
6536         Original fix for <rdar://problem/3947312> (and 14 dupes)
6537         
6538         Let me tell you a story:
6539         A long time ago, in a cvs repository far, far away, loader code was almost all up in WebKit.
6540         WebArchive code was intertwined with that code in bizarre and complex ways.
6541         During the months long loader re-factoring where we pushed much loader code down into WebCore,
6542         many portions of the WebKit loader were thinned out until they ceased to exist.  Others remained
6543         with a sole purpose.
6545         One such section of code whose lineage traces back from WebFrameLoaderClient to WebFrameLoader
6546         to WebLoader was originally rooted in the method [WebLoader loadRequest:].  This method was the 
6547         single entry point for almost all loading (network or web archives)
6549         This method would check various headers and other fields on the NSURLRequest and NSURLResponse 
6550         to make decisions about the load.  If the cache control fields were expired or other conditions 
6551         in the headers were met, the load would be forced to go out to the network.
6553         As the loader was moved and tweaked repeatedly, most of this code was pruned or re-factored.  
6554         At some point, all that remained was the special cases for loading WebArchives.  
6555         
6556         Somewhere in the r16,000s, this remaining responsibility was noticed and related methods we renamed
6557         to be WebArchive specific, further cementing the assumed design.
6559         Problem is, the design was bad.  A WebArchive is meant to be a static snapshot of a WebPage at a
6560         specific point in time.  Referring to the request to see if the resource should be reloaded seems
6561         nonsensical, as does referring to the response headers to see if the resource is "expired".  In the 
6562         context of loading a WebArchive, available data should *always* be loaded from the WebArchive, at least
6563         during the initial load!
6565         After discovering the secret to reproducing all of these bugs is both emptying our your Foundation 
6566         cache and disconnecting your network, it was easy to reproduce the 16 individually reported cases 
6567         that were all symptoms of this bug, and easy to verify that they are fixed with this patch.
6569         * WebCoreSupport/WebFrameLoaderClient.h:
6570         * WebCoreSupport/WebFrameLoaderClient.mm:
6571         (WebFrameLoaderClient::willUseArchive): Do not call either form of "canUseArchivedResource()" that
6572           inspect the request or response objects - We are loading from a WebArchive, and we should never
6573           make the decision to go out to the network when we actually have the resource available.
6575         * WebCoreSupport/WebSystemInterface.m:
6576         (InitWebCoreSystemInterface):  Remove two methods that are no longer used anywhere in WebKit
6578 2008-02-27  Matt Lilek  <webkit@mattlilek.com>
6580         Reviewed by Adam Roben.
6582         Bug 14348: Messing up the inspector by dragging an URL into it
6583         http://bugs.webkit.org/show_bug.cgi?id=14348
6584         <rdar://problem/5283620> and <rdar://problem/5712808>
6586         * WebCoreSupport/WebInspectorClient.mm:
6587         (-[WebInspectorWindowController init]): Remove duplicate preference setting.
6588         (-[WebInspectorWindowController webView:dragDestinationActionMaskForDraggingInfo:]):
6590 2008-02-25  Darin Adler  <darin@apple.com>
6592         Reviewed by Adam.
6594         * WebView/WebArchiver.mm:
6595         (+[WebArchiver archiveSelectionInFrame:]): Use blankURL.
6596         * WebView/WebFrame.mm:
6597         (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): Avoid the
6598         variable name URL to avoid clashing with the renamed KURL in the future. Also use
6599         blankURL.
6600         (-[WebFrame loadData:MIMEType:textEncodingName:baseURL:]): Ditto.
6601         (-[WebFrame _loadHTMLString:baseURL:unreachableURL:]): Ditto.
6602         (-[WebFrame loadHTMLString:baseURL:]): Ditto.
6603         (-[WebFrame loadAlternateHTMLString:baseURL:forUnreachableURL:]): Ditto.
6605 2008-02-24  Darin Adler  <darin@apple.com>
6607         Reviewed by Sam.
6609         - remove separate client calls for "standard" and "reload' history
6611         * WebCoreSupport/WebFrameLoaderClient.h:
6612         * WebCoreSupport/WebFrameLoaderClient.mm:
6613         (WebFrameLoaderClient::updateGlobalHistory):
6615 2008-02-23  Alexey Proskuryakov  <ap@webkit.org>
6617         Reviewed by Darin Adler.
6619         Move basic threading support from WebCore to WTF.
6621         * ForwardingHeaders/wtf/Threading.h: Added.
6622         * ForwardingHeaders/wtf/Locker.h: Added.
6624 2008-02-23  David Kilzer  <ddkilzer@apple.com>
6626         Please clarify licensing for some files
6627         <http://bugs.webkit.org/show_bug.cgi?id=14970>
6629         Reviewed by Darin Adler.
6631         * Plugins/WebNetscapeDeprecatedFunctions.c: Updated copyright statement
6632         and added Apple BSD-style license.
6633         * Plugins/WebNetscapeDeprecatedFunctions.h: Ditto.
6635 2008-02-22  John Sullivan  <sullivan@apple.com>
6637         Reviewed by Adam Roben
6638         
6639         Reverted the changed from yesterday to add pasteAndMatchStyle:, as the existing
6640         pasteAsPlainText: has the same behavior.
6642         * WebView/WebHTMLView.mm:
6643         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
6644         (-[WebHTMLView readSelectionFromPasteboard:]):
6645         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
6646         (-[WebHTMLView pasteAsRichText:]):
6647         (-[WebHTMLView paste:]):
6648         * WebView/WebView.mm:
6649         * WebView/WebViewPrivate.h:
6651 2008-02-21  Anders Carlsson  <andersca@apple.com>
6653         Reviewed by Sam.
6655         Use BackForwardList::create instead.
6656         
6657         * History/WebBackForwardList.mm:
6658         (-[WebBackForwardList init]):
6660 2008-02-21  John Sullivan  <sullivan@apple.com>
6662         Reviewed by Jessica Kahn
6663         
6664         support for pasteAndMatchStyle: command (see <rdar://problem/5723952>)
6666         * WebView/WebHTMLView.mm:
6667         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:matchStyle:]):
6668         added matchStyle parameter, passed along to bridge (formerly always passed NO to bridge)
6669         (-[WebHTMLView readSelectionFromPasteboard:]):
6670         pass NO for new matchStyle parameter to match old behavior
6671         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
6672         validate pasteAndMatchStyle the same way as pasteAsRichText
6673         (-[WebHTMLView pasteAndMatchStyle:]):
6674         just like pasteAsRichText but passes YES for matchStyle
6675         (-[WebHTMLView pasteAsRichText:]):
6676         pass NO for new matchStyle parameter to match old behavior
6677         (-[WebHTMLView paste:]):
6678         ditto
6679         
6680         * WebView/WebView.mm:
6681         added macro(pasteAndMatchStyle)
6682         
6683         * WebView/WebViewPrivate.h:
6684         added pasteAndMatchStyle: to WebViewEditingActionsPendingPublic category
6686 2008-02-20  Sam Weinig  <sam@webkit.org>
6688         Reviewed by Darin and Geoff.
6690         - WebKit part of <rdar://problem/5754378> work around missing video on YouTube front page with a site-specific hack
6692         * WebView/WebView.mm:
6693         (-[WebView _preferencesChangedNotification:]): Added a call to Settings::setNeedsSiteSpecificQuirks.
6694         There are currently no site-specific quirks on Mac, but we will propagate the state
6695         to WebCore to avoid possible mistakes later.
6697 2008-02-19  Anders Carlsson  <andersca@apple.com>
6699         Reviewed by Darin Adler.
6701         Move back WebKit methods that were unused in WebCore.
6702         
6703         * Misc/WebNSURLExtras.mm:
6704         (+[NSURL _web_URLWithData:]):
6705         (+[NSURL _web_URLWithData:relativeToURL:]):
6706         (-[NSURL _web_originalData]):
6707         (-[NSURL _web_originalDataAsString]):
6708         (-[NSURL _web_isEmpty]):
6709         (-[NSURL _webkit_canonicalize]):
6710         (-[NSURL _webkit_URLByRemovingComponent:]):
6711         (-[NSURL _webkit_URLByRemovingFragment]):
6712         (-[NSURL _webkit_URLByRemovingResourceSpecifier]):
6713         (-[NSURL _webkit_isFileURL]):
6714         (-[NSString _webkit_isFileURL]):
6715         * WebCoreSupport/WebFrameLoaderClient.mm:
6716         (WebFrameLoaderClient::setTitle):
6717         * WebCoreSupport/WebSystemInterface.m:
6718         (InitWebCoreSystemInterface):
6720 2008-02-18  Darin Adler  <darin@apple.com>
6722         Reviewed by Sam.
6724         * Misc/WebNSAttributedStringExtras.mm:
6725         (+[NSAttributedString _web_attributedStringFromRange:]): Eliminate use of
6726         DeprecatedString.
6728 2008-02-17  Sam Weinig  <sam@webkit.org>
6730         Reviewed by Dan Bernstein.
6732         Fix for http://bugs.webkit.org/show_bug.cgi?id=17365
6733         document.createEvent("MessageEvent") throws NOT_SUPPORTED_ERR
6735         * MigrateHeaders.make: Migrate DOMProgressEvent.h and DOMTextPrivate.h which were
6736         mistakenly not migrated.
6738 2008-02-15  Dan Bernstein  <mitz@apple.com>
6740         Reviewed by Alexey Proskuryakov.
6742         - WebKit part of fixing http://bugs.webkit.org/show_bug.cgi?id=17360
6743           <rdar://problem/5743131> REGRESSION: mp4 file downloaded from server is downloaded as html
6745         * WebView/WebDataSource.mm:
6746         (+[WebDataSource _representationClassForMIMEType:]):
6747         (-[WebDataSource _responseMIMEType]):
6748         (-[WebDataSource subresources]):
6749         (-[WebDataSource subresourceForURL:]):
6750         * WebView/WebResource.mm:
6751         (-[WebResource _initWithData:URL:response:]):
6752         * WebView/WebResourcePrivate.h:
6754 2008-02-15  Adam Roben  <aroben@apple.com>
6756         Make WebKit's FEATURE_DEFINES match WebCore's
6758         Reviewed by Mark.
6760         * Configurations/WebKit.xcconfig:
6762 2008-02-14  Darin Adler  <darin@apple.com>
6764         Reviewed by Eric Seidel.
6766         - updated for WebCore KURL changes
6768         * History/WebHistoryItem.mm:
6769         (-[WebHistoryItem URL]): Removed getNSURL call.
6770         * Misc/WebElementDictionary.mm:
6771         (-[WebElementDictionary _absoluteImageURL]): Ditto.
6772         (-[WebElementDictionary _absoluteLinkURL]): Ditto.
6773         * Misc/WebNSAttributedStringExtras.mm:
6774         (fileWrapperForElement): Ditto.
6775         (+[NSAttributedString _web_attributedStringFromRange:]): Ditto.
6776         * Misc/WebNSURLExtras.mm:
6777         (-[NSString _webkit_stringByReplacingValidPercentEscapes]): Updated
6778         for function name change.
6779         * WebCoreSupport/WebContextMenuClient.mm:
6780         (WebContextMenuClient::downloadURL): Removed getNSURL call.
6781         * WebCoreSupport/WebDragClient.mm:
6782         (WebDragClient::createDragImageForLink): Ditto.
6783         * WebCoreSupport/WebFrameLoaderClient.mm:
6784         (WebFrameLoaderClient::dispatchWillPerformClientRedirect): Ditto.
6785         (WebFrameLoaderClient::startDownload): Ditto.
6786         (WebFrameLoaderClient::updateGlobalHistoryForStandardLoad): Ditto.
6787         (WebFrameLoaderClient::updateGlobalHistoryForReload): Ditto.
6788         (WebFrameLoaderClient::cancelledError): Ditto.
6789         (WebFrameLoaderClient::blockedError): Ditto.
6790         (WebFrameLoaderClient::cannotShowURLError): Ditto.
6791         (WebFrameLoaderClient::interruptForPolicyChangeError): Ditto.
6792         (WebFrameLoaderClient::cannotShowMIMETypeError): Ditto.
6793         (WebFrameLoaderClient::fileDoesNotExistError): Ditto.
6794         (WebFrameLoaderClient::willUseArchive): Ditto.
6795         (WebFrameLoaderClient::setTitle): Ditto.
6796         (WebFrameLoaderClient::actionDictionary): Ditto.
6797         (WebFrameLoaderClient::createFrame): Ditto.
6798         (WebFrameLoaderClient::objectContentType): Ditto.
6799         (WebFrameLoaderClient::createPlugin): Ditto.
6800         (WebFrameLoaderClient::createJavaAppletWidget): Ditto.
6801         * WebView/WebDataSource.mm:
6802         (-[WebDataSource _URL]): Ditto.
6803         (-[WebDataSource _initWithDocumentLoader:]): Ditto.
6804         (-[WebDataSource unreachableURL]): Ditto.
6805         * WebView/WebHTMLView.mm:
6806         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto.
6808 2008-02-14  Stephanie Lewis  <slewis@apple.com>
6810         Reviewed by Geoff.
6812         Update order files.
6814         * WebKit.order:
6816 2008-02-14  Alexey Proskuryakov  <ap@webkit.org>
6818         Reviewed by Adam Roben.
6820         http://bugs.webkit.org/show_bug.cgi?id=17207
6821         Database example doesn't work (requires not-yet-released Safari)
6823         * WebCoreSupport/WebChromeClient.mm:
6824         (WebChromeClient::exceededDatabaseQuota): Check Safari version, and allow 5 megabytes of storage
6825         if it's too old.
6827 2008-02-11  Darin Adler  <darin@apple.com>
6829         - roll out fix for <rdar://problem/5726016> REGRESSION: Xcode News window renders
6830           incorrectly due to visibility fix
6832         Removed the Xcode-specific quirk at the request of some folks on the Xcode team.
6834         * Misc/WebKitVersionChecks.h: Removed the constant.
6836         * WebView/WebView.mm:
6837         (-[WebView _needsXcodeVisibilityQuirk]): Removed.
6838         (-[WebView _preferencesChangedNotification:]): Removed call to
6839         setNeedsXcodeVisibilityQuirk.
6841 2008-02-12  Anders Carlsson  <andersca@apple.com>
6843         Reviewed by Mitz.
6845         * WebCoreSupport/WebFrameBridge.mm:
6846         * WebCoreSupport/WebViewFactory.mm:
6847         (-[WebViewFactory imageTitleForFilename:size:]):
6848         Move implementation from WebFrameBridge to WebViewFactory.
6850 2008-02-11  Darin Adler  <darin@apple.com>
6852         Reviewed by Mitz.
6854         - fix <rdar://problem/5726016> REGRESSION: Xcode News window renders
6855           incorrectly due to visibility fix
6857         Added an Xcode-specific quirk.
6859         * Misc/WebKitVersionChecks.h: Added a constant for the "linked on or after"
6860         part of the check.
6862         * WebView/WebView.mm:
6863         (-[WebView _needsXcodeVisibilityQuirk]): Added.
6864         (-[WebView _preferencesChangedNotification:]): Added a call to
6865         setNeedsXcodeVisibilityQuirk based on _needsXcodeVisibilityQuirk.
6867 2008-02-10  Darin Adler  <darin@apple.com>
6869         - fix http://bugs.webkit.org/show_bug.cgi?id=17274
6870           REGRESSION: User Agent string broken in r30119
6872         * WebView/WebView.mm:
6873         (-[WebView _userAgentWithApplicationName:andWebKitVersion:]):
6874         Fix wrong variable name. Doh!
6876 2008-02-09  Darin Adler  <darin@apple.com>
6878         Reviewed by Tim Hatcher.
6880         - fix <rdar://problem/5725996> crash every time you open the Xcode documentation window
6882         * WebView/WebView.mm:
6883         (-[WebView _userAgentWithApplicationName:andWebKitVersion:]): Work around a bug in the
6884         garbage collector's Objective C++ support by not initializing a static to an object
6885         that needs to be marked when running under GC.
6887 2008-02-05  Dan Bernstein  <mitz@apple.com>
6889         Reviewed by Darin Adler.
6891         - WebKit part of <rdar://problem/5724303> Should implement writing direction shortcuts
6893         The key bindings are Command-Control-left arrow and
6894         Command-Control-right arrow. To match AppKit, the bindings are enabled
6895         only when certain user defaults are set.
6897         * WebView/WebHTMLView.mm:
6898         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
6899         (-[WebHTMLView toggleBaseWritingDirection:]): Changed to call
6900         Frame::baseWritingDirectionForSelectionStart() and
6901         Editor::setBaseWritingDirection() directly.
6902         (-[WebHTMLView changeBaseWritingDirection:]): Ditto.
6903         (writingDirectionKeyBindingsEnabled): Added.
6904         (-[WebHTMLView _changeBaseWritingDirectionTo:]): Added this helper
6905         method.
6906         (-[WebHTMLView changeBaseWritingDirectionToLTR:]): Added.
6907         (-[WebHTMLView changeBaseWritingDirectionToRTL:]): Added.
6908         * WebView/WebView.mm:
6910 2008-02-05  Mark Rowe  <mrowe@apple.com>
6912         Unreviewed build fix.
6914         * WebView/WebView.mm: Add missing #import.
6916 2008-02-05  Mark Rowe  <mrowe@apple.com>
6918         Reviewed by Oliver Hunt.
6920         Update versioning to support the mysterious future.
6922         * Configurations/Version.xcconfig: Add SYSTEM_VERSION_PREFIX_1060.
6924 2008-01-30  Justin Garcia  <justin.garcia@apple.com>
6926         Reviewed by Darin Adler.
6927         
6928         <rdar://problem/5708115> REGRESSION: Words selected with a double click and copied won't paste into Mail
6930         * WebView/WebHTMLView.mm:
6931         (-[WebHTMLView _smartInsertForString:replacingRange:beforeString:afterString:]): Brought 
6932         this back, it's used by Mail.
6933         (-[WebHTMLView _canSmartReplaceWithPasteboard:]): This WebInternal method is
6934         also used by Mail.  Moved to WebPrivate.
6935         * WebView/WebHTMLViewPrivate.h: Expose two methods that Mail uses here, so that we don't
6936         accidently remove them in the future.
6938 2008-01-30  Mark Rowe  <mrowe@apple.com>
6940         Reviewed by Oliver Hunt.
6942         Move off deprecated NSTableView methods.
6944         * WebView/WebHTMLView.mm:
6945         (-[WebTextCompleteController _buildUI]): Switch from -setDrawsGrid: to -setGridStyleMask:.
6946         (-[WebTextCompleteController _placePopupWindow:]): Switch from -selectRow:byExtendingSelection: to -selectRowIndexes:byExtendingSelection:.
6947         (-[WebTextCompleteController filterKeyDown:]): Ditto.
6949 2008-01-26  Mark Rowe  <mrowe@apple.com>
6951         Reviewed by Darin Adler.
6953         Fix leaks seen after loading <http://www.funnyordie.com/videos/d70b5a11cb>.
6955         * Misc/WebNSDataExtras.m:
6956         (-[NSString _web_capitalizeRFC822HeaderFieldName]): Transfer ownerhip of the allocated buffers
6957         to the new CFString so that they will be freed when no longer needed.
6959 2008-01-26  Greg Bolsinga  <bolsinga@apple.com>
6961         <rdar://problem/5708388> WebDashboardRegion.h duplicated between WebCore / WebKit
6963         Reviewed by Darin Adler.
6965         * WebCoreSupport/WebDashboardRegion.h: Removed.
6966         * WebView/WebView.mm: Updated #import to use copy of WebDashboardRegion.h from WebCore.
6968 2008-01-21  Darin Adler  <darin@apple.com>
6970         Reviewed by John Sullivan.
6972         - fix <rdar://problem/5644324> Delegate-less WebKit clients should have no databases
6973         - add a missing export of WebDatabaseExpectedSizeKey
6974         - implement deleteOrigin: and remove deleteDatabasesWithOrigin:
6976         * Storage/WebDatabaseManager.mm:
6977         (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Updated to check for a null
6978         name instead of calling isValid().
6979         (-[WebDatabaseManager deleteOrigin:]): Implemented.
6980         (WebKitInitializeDatabasesIfNecessary): Updated for name change.
6982         * Storage/WebDatabaseManagerPrivate.h: Removed deleteDatabasesWithOrigin:.
6984         * WebCoreSupport/WebChromeClient.h: Updated for changes to ChromeClient.
6985         * WebCoreSupport/WebChromeClient.mm:
6986         (WebChromeClient::exceededDatabaseQuota): Replaced the two different client functions
6987         we had before with a single one.
6989         * WebKit.exp: Added missing export for WebDatabaseExpectedSizeKey.
6991         * WebView/WebPreferenceKeysPrivate.h: Removed WebKitDefaultDatabaseQuotaKey.
6992         * WebView/WebPreferences.m:
6993         (+[WebPreferences initialize]): Removed the default for WebKitDefaultDatabaseQuotaKey.
6994         * WebView/WebPreferencesPrivate.h: Removed defaultDatabaseQuota and
6995         setDefaultDatabaseQuota:.
6997         * WebView/WebUIDelegatePrivate.h: Replaced the two different database quota delegate
6998         methods we had before with a single one.
7000         * WebView/WebView.mm:
7001         (-[WebView _preferencesChangedNotification:]): Removed the code to set the
7002         default database origin quota in WebCore::Settings based on WebPreferences.
7004         * WebView/WebViewInternal.h: Removed delegate method dispatch functions for unusual
7005         types of parameters that the database UI delegate methods had before.
7007 2008-01-20  Mark Rowe  <mrowe@apple.com>
7009         Reviewed by Dan Bernstein.
7011         Remove code bracketed by REMOVE_SAFARI_DOM_TREE_DEBUG_ITEM as we are no longer
7012         interested in supporting Safari 2 with TOT WebKit.
7014         * WebView/WebView.mm:
7015         (+[WebView initialize]):
7017 2008-01-17  Timothy Hatcher  <timothy@apple.com>
7019         Reviewed by Adam Roben.
7021         <rdar://problem/5693558> REGRESSION (r29581): no form field focus rings
7022         and inactive text selection after loading a page
7023         Bug 16917: REGRESSION (r29581/2): Google Maps search box loses focused appearance
7025         The problem was other frames were changing the FocusController's active
7026         status to false after the first responder frame set it to true. The last
7027         frame to call _updateActiveState would win.
7029         * WebView/WebHTMLView.mm:
7030         (-[WebHTMLView _updateActiveState]): Only call page->focusController()->setActive()
7031         if the first responder is the current WebHTMLView or the WebFrameView.
7032         (-[WebHTMLView _web_firstResponderCausesFocusDisplay]): Removed, inlined code in _updateActiveState.
7034 2008-01-18  Adam Roben  <aroben@apple.com>
7036         Rename _updateActiveState to _updateFocusedAndActiveState
7038         Also renamed any related methods/members similarly.
7040         Reviewed by Adele.
7042         * WebView/WebHTMLView.mm:
7043         (-[WebHTMLViewPrivate dealloc]):
7044         (-[WebHTMLView _cancelUpdateFocusedAndActiveStateTimer]):
7045         (-[WebHTMLView close]):
7046         (_updateFocusedAndActiveStateTimerCallback):
7047         (-[WebHTMLView viewWillMoveToWindow:]):
7048         (-[WebHTMLView viewDidMoveToWindow]):
7049         (-[WebHTMLView windowDidBecomeKey:]):
7050         (-[WebHTMLView windowDidResignKey:]):
7051         (-[WebHTMLView becomeFirstResponder]):
7052         (-[WebHTMLView resignFirstResponder]):
7053         * WebView/WebHTMLViewInternal.h:
7054         * WebView/WebHTMLViewPrivate.h:
7056 2008-01-17  John Sullivan  <sullivan@apple.com>
7058         Reviewed by Darin
7059         
7060         - fixed <rdar://problem/5692068> -1 WebFrameView world leaks reported after closing view source window
7062         * WebView/WebFrameView.mm:
7063         (-[WebFrameView initWithCoder:]):
7064         override to bump the global WebFrameView count
7066 2008-01-16  Adam Roben  <aroben@apple.com>
7068         Updated for renames/removal of WebCore methods.
7070         Reviewed by Darin Adler.
7072         * Plugins/WebPluginController.mm:
7073         (-[WebPluginController webPlugInContainerSelectionColor]): Changed to
7074         ask isFocusedAndActive directly, instead of going through the frame
7075         bridge.
7076         * WebView/WebHTMLView.mm:
7077         (-[WebHTMLView _updateActiveState]): Updated for method renames.
7079 2008-01-16  John Sullivan  <sullivan@apple.com>
7081         Reviewed by Adam and Dan
7082         
7083         - cleaned up some existing logging
7085         * WebView/WebHTMLView.mm:
7086         (-[WebHTMLView setNeedsDisplay:]):
7087         add method name to log, use "YES" and "NO" instead of (int)flag
7088         (-[WebHTMLView setNeedsLayout:]):
7089         ditto
7090         (-[WebHTMLView setNeedsToApplyStyles:]):
7091         ditto
7093 2008-01-15  Geoffrey Garen  <ggaren@apple.com>
7095         Reviewed by Andre Boule.
7097         Fixed <rdar://problem/5667627> [WebCache empty] implementation should
7098         not disable/enable the cache
7099         
7100         Toggle the cache model instead -- toggling disable/enable just causes
7101         the cache to forget about resources, not reclaim their memory.
7103         * Misc/WebCache.mm:
7104         (+[WebCache empty]):
7105         * WebView/WebView.mm:
7106         * WebView/WebViewInternal.h:
7108 2008-01-15  Adele Peterson  <adele@apple.com>
7110         Reviewed by Adam and Antti.
7112         WebKit part of fix for <rdar://problem/5619062> Add load progress indicator to video controls
7114         * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
7115           Removed initialization for GetMediaControlBackgroundImageData.  Added initialization for DrawMediaSliderTrack.
7117 2008-01-10  Geoffrey Garen  <ggaren@apple.com>
7119         Reviewed by John Sullivan.
7121         Fixed some world leak reports:
7122         * <rdar://problem/5669436> PLT complains about world leak of 1 JavaScript
7123         Interpreter after running cvs-base suite
7125         * <rdar://problem/5669423> PLT complains about world leak if browser
7126         window is open when PLT starts
7127         
7128         These were both bugs in the reporting mechanism, so I took the
7129         opportunity to do some house cleaning there.
7131         * Misc/WebCoreStatistics.h: Did a little renaming, to match
7132         JavaScriptCore better. I kept the methods with the old names around,
7133         though, because old versions of Safari need them.
7135         * Misc/WebCoreStatistics.mm: Removed dependence on
7136         WebCore::JavaScriptStatistics, which is gone now. 
7137         
7138         These two methods are now distinct, for the sake of world leak reporting:
7139         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
7140         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
7142 2008-01-10  Maciej Stachowiak  <mjs@apple.com>
7144         Not reviewed. Build fix.
7145         
7146         - Attempt to fix mac build.
7148         * Storage/WebDatabaseManager.mm:
7150 2008-01-10  Maciej Stachowiak  <mjs@apple.com>
7152         Reviewed by Sam.
7154         - remove SecurityOriginData and fold its functionality into SecurityOrigin
7156         * Storage/WebDatabaseManager.mm:
7157         (-[WebDatabaseManager origins]):
7158         (-[WebDatabaseManager databasesWithOrigin:]):
7159         (-[WebDatabaseManager detailsForDatabase:withOrigin:]):
7160         (-[WebDatabaseManager deleteDatabasesWithOrigin:]):
7161         (-[WebDatabaseManager deleteDatabase:withOrigin:]):
7162         * Storage/WebDatabaseTrackerClient.h:
7163         * Storage/WebDatabaseTrackerClient.mm:
7164         (WebDatabaseTrackerClient::dispatchDidModifyOrigin):
7165         (WebDatabaseTrackerClient::dispatchDidModifyDatabase):
7166         * Storage/WebSecurityOrigin.mm:
7167         (-[WebSecurityOrigin initWithProtocol:domain:port:]):
7168         (-[WebSecurityOrigin protocol]):
7169         (-[WebSecurityOrigin domain]):
7170         (-[WebSecurityOrigin port]):
7171         (-[WebSecurityOrigin usage]):
7172         (-[WebSecurityOrigin quota]):
7173         (-[WebSecurityOrigin setQuota:]):
7174         (-[WebSecurityOrigin isEqual:]):
7175         (-[WebSecurityOrigin dealloc]):
7176         (-[WebSecurityOrigin finalize]):
7177         (-[WebSecurityOrigin _initWithWebCoreSecurityOrigin:]):
7178         (-[WebSecurityOrigin _core]):
7179         * Storage/WebSecurityOriginInternal.h:
7180         * WebCoreSupport/WebChromeClient.h:
7181         * WebCoreSupport/WebChromeClient.mm:
7182         (WebChromeClient::requestQuotaIncreaseForNewDatabase):
7183         (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
7185 2008-01-10  Sam Weinig  <sam@webkit.org>
7187         Reviewed by Anders Carlsson.
7189         Fixes: http://bugs.webkit.org/show_bug.cgi?id=16522
7190         <rdar://problem/5657355>
7192         * Plugins/WebBaseNetscapePluginView.mm:
7193         (-[WebBaseNetscapePluginView loadPluginRequest:]): call findFrameForNavigation
7194         to ensure the shouldAllowNavigation check is made.
7196 2008-01-07  Nikolas Zimmermann  <zimmermann@kde.org>
7198         Reviewed by Mark.
7200         Enable SVG_FONTS by default.
7202         * Configurations/WebKit.xcconfig:
7204 2008-01-07  Adele Peterson  <adele@apple.com>
7206         Reviewed by Antti, Adam, and Mitz.
7208         WebKit part of fix for 
7209         <rdar://problem/5619073> Updated look for <video> controls
7210         <rdar://problem/5619057> Add volume control to video controls
7212         * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
7214 2008-01-07  Dan Bernstein  <mitz@apple.com>
7216         Reviewed by Dave Hyatt.
7218         - <rdar://problem/5665216> Support the unicode-range property in @font-face rules
7220         * Misc/WebNSAttributedStringExtras.mm:
7222 2008-01-03  Alexey Proskuryakov  <ap@webkit.org>
7224         Reviewed by Darin Adler.
7226         <rdar://problem/5463489> A number of layout tests should be using execCommand instead of textInputController
7228         * WebView/WebView.mm:
7229         (-[WebView _executeCoreCommandByName:value:]):
7230         * WebView/WebViewPrivate.h:
7231         Added an SPI to implement layoutTestController.execCommand.
7233 2008-01-03  Kevin Decker  <kdecker@apple.com>
7235         Reviewed by Darin Adler.
7237         Fixed: <rdar://problem/4106190> Include "Where from" metadata in drag-and-dropped images
7238         
7239         * Misc/WebNSFileManagerExtras.h:
7240         * Misc/WebNSFileManagerExtras.m:
7241         (-[NSFileManager _webkit_setMetadataURL:referrer:atPath:]): Added new method. Uses WebKitSystemInterface to set
7242         "Where from:" metadata information.
7243         * WebView/WebHTMLView.mm:
7244         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Added "Where from:" metadata for drag and dropped images.
7245         
7246 2008-01-03  Alice Liu  <alice.liu@apple.com>
7248         Reviewed by Darin Adler.
7250         This fixes pageup/down in iframes.  test for this is fast/frames/iframe-scroll-page-up-down.html
7252         * WebView/WebHTMLView.mm:
7253         (-[WebHTMLView doCommandBySelector:]):
7254         Have the editor handle all the commands it supports instead of just text commands.
7255         If not handled by the editor, the webview will handle the command. 
7257 2008-01-02  Kevin Decker  <kdecker@apple.com>
7259         Reviewed by Darin Adler.
7260         
7261         Fixed: <rdar://problem/5660603> QuickDraw plug-ins can cause a 100% reproducible assertion failure in AppKit (breaks Safari UI)
7263         * Plugins/WebBaseNetscapePluginView.mm:
7264         (-[WebBaseNetscapePluginView updateAndSetWindow]): Simplified an early return for non-QuickDraw plug-ins and switched
7265         to using the more NSView friendly version of lockFocus, lockFocusIfCanDraw.
7267 2008-01-01  David D. Kilzer  <ddkilzer@webkit.org>
7269         Reviewed by Dan.
7271         - fix http://bugs.webkit.org/show_bug.cgi?id=16700
7272           Fix -[WebDefaultPolicyDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:]
7274         * DefaultDelegates/WebDefaultPolicyDelegate.m: Check return value of
7275         -[NSFileManager fileExistsAtPath:isDirectory:] before using the value
7276         of isDirectory.
7278 2007-12-29  Nikolas Zimmermann  <zimmermann@kde.org>
7280         Reviewed by Eric.
7282         Add DOMSVGFontElement/DOMSVGGlyphElement/DOMSVGMissingGlyphElement to MigrateHeaders.make
7284         * MigrateHeaders.make:
7286 2007-12-25  Dan Bernstein  <mitz@apple.com>
7288         Reviewed by Oliver Hunt.
7290         - fix an assertion failure when pressing the num lock key
7292         * WebView/WebHTMLView.mm:
7293         (-[WebHTMLView flagsChanged:]): Avoid passing key code 10 down to
7294         WebCore.
7296 2007-12-20  Darin Adler  <darin@apple.com>
7298         Reviewed by Oliver.
7300         - fix <rdar://problem/5658787> Selector -[WebView insertLineBreak:] is not implemented
7302         * WebView/WebView.mm: Added all selectors implemented by WebHTMLView to the list of
7303         selectors to forward here. The new ones are: changeBaseWritingDirection:, changeSpelling:,
7304         deleteToMark:, insertLineBreak:, moveParagraphBackwardAndModifySelection:,
7305         moveParagraphForwardAndModifySelection:, pageDownAndModifySelection:, pageUpAndModifySelection:,
7306         selectToMark:, setMark:, swapWithMark:, takeFindStringFromSelection:, toggleBaseWritingDirection:,
7307         and transpose:.
7309 2007-12-20  Kevin Decker  <kdecker@apple.com>
7311         Reviewed by Anders.
7312         
7313         Fixed: <rdar://problem/5638288> REGRESSION: Flash movies show up in other tabs above the page (16373)
7315         * Plugins/WebBaseNetscapePluginView.mm:
7316         (-[WebBaseNetscapePluginView updateAndSetWindow]): QuickDraw plug-ins must manually be told when to stop
7317          writing to the window backing store. The problem was that change-set 28400 introduced an early return 
7318          which prevented this necessary operation. The fix is to limit the scope of the early return to CG and GL
7319          plug-ins and to tweak the needsFocus check to prevent an exception from occurring in QuickDraw-based plug-ins.
7321 2007-12-19  Geoffrey Garen  <ggaren@apple.com>
7323         Reviewed by Oliver Hunt.
7325         Build fix.
7327         * ForwardingHeaders/kjs/SymbolTable.h: Added.
7328         * ForwardingHeaders/wtf/VectorTraits.h: Added.
7330 2007-12-16  Mark Rowe  <mrowe@apple.com>
7332         Reviewed by Maciej Stachowiak.
7334         Refactor Mac plugin stream code to use the shared NetscapePlugInStreamLoader implementation.
7336         * Plugins/WebBaseNetscapePluginStream.h:
7337         * Plugins/WebNetscapePluginStream.h:
7338         * Plugins/WebNetscapePluginStream.mm:
7339         (-[WebNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]):
7340         (-[WebNetscapePluginStream dealloc]):
7341         (-[WebNetscapePluginStream finalize]):
7342         * Plugins/WebPlugInStreamLoaderDelegate.h: Moved from WebCore.
7343         * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.h: Added.
7344         (WebNetscapePlugInStreamLoaderClient::WebNetscapePlugInStreamLoaderClient):
7345         * WebCoreSupport/WebNetscapePlugInStreamLoaderClient.mm: Added.
7346         (WebNetscapePlugInStreamLoaderClient::didReceiveResponse): Call through to the equivalent WebPlugInStreamLoaderDelegate method.
7347         (WebNetscapePlugInStreamLoaderClient::didReceiveData): Ditto.
7348         (WebNetscapePlugInStreamLoaderClient::didFail): Ditto.
7349         (WebNetscapePlugInStreamLoaderClient::didFinishLoading): Ditto.
7351 2007-12-16  Alexey Proskuryakov  <ap@webkit.org>
7353         Reviewed by Darin Adler.
7355         http://bugs.webkit.org/show_bug.cgi?id=14140
7356         <rdar://problem/5270958> REGRESSION: Complex system KeyBindings don't work properly
7358         * WebView/WebHTMLView.mm:
7359         (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): Made command replaying work
7360         when handling keypress, too.
7361         (-[WebHTMLView doCommandBySelector:]): Adapted for the new way to store commands in events.
7362         (-[WebHTMLView insertText:]): Append a command, not replace the whole existing vector. Also,
7363         restore the state for additional commands to be saved correctly.
7365 2007-12-14  David D. Kilzer  <ddkilzer@apple.com>
7367         <rdar://problem/5647272> Remove user agent string hack for flickr.com
7369         Reviewed by Darin Adler.
7371         * WebView/WebView.mm:
7372         (-[WebView _userAgentForURL:]): Removed hack.
7374 2007-12-14  David D. Kilzer  <ddkilzer@apple.com>
7376         <rdar://problem/5647261> Remove user agent string hack for yahoo.com
7378         Reviewed by Darin Adler.
7380         * WebView/WebView.mm:
7381         (-[WebView _userAgentForURL:]): Removed hack.
7383 2007-12-14  Darin Adler  <darin@apple.com>
7385         Reviewed by Brady.
7387         - fix http://bugs.webkit.org/show_bug.cgi?id=16296
7388           <rdar://problem/5635641> -[WebFrameLoadDelegate didReceiveIcon:forFrame:] never called
7390         * WebView/WebView.mm:
7391         (-[WebView setFrameLoadDelegate:]): Call [WebIconDatabase sharedIconDatabase] if the
7392         a didReceiveIcon method is present.
7394 2007-12-14  Darin Adler  <darin@apple.com>
7396         Reviewed by Alexey.
7398         - Changed a few more editing operations to use WebCore instead of WebKit.
7399         - Removed some obsolete unused code.
7401         * WebCoreSupport/WebFrameBridge.h: Moved declarations of methods that are both
7402         defined and used on the WebKit side to here. These no longer belong on the bridge
7403         and should be moved to the WebFrame class (or elsewhere).
7404         * WebCoreSupport/WebFrameBridge.mm: Removed some unused methods.
7406         * WebView/WebFrameView.mm:
7407         (+[WebFrameView _viewTypesAllowImageTypeOmission:]): Fix typo in comment.
7409         * WebView/WebHTMLView.mm:
7410         (-[WebHTMLViewPrivate dealloc]): Removed unused firstResponderTextViewAtMouseDownTime.
7411         (-[WebHTMLViewPrivate clear]): Ditto.
7412         (-[WebHTMLView _setMouseDownEvent:]): Ditto.
7413         (commandNameForSelector): Added special cases for pageDown:, pageDownAndModifySelection:,
7414         pageUp:, and pageUpAndModifySelection:, since those names probably aren't specific enough
7415         to be used in WebCore (what AppKit calls scrollPageDown: vs. pageDown: needs to be
7416         disambiguated with the word "Move"). Added deleteBackward:,
7417         deleteBackwardByDecomposingPreviousCharacter:, deleteForward:, deleteToBeginningOfLine:,
7418         deleteToBeginningOfParagraph:, deleteToEndOfLine:, deleteToEndOfParagraph:, pageDown:,
7419         pageDownAndModifySelection:, pageUp:, pageUpAndModifySelection:, selectLine:,
7420         selectParagraph:, selectSentence:, and selectWord: to the list of commands that are
7421         forwarded to WebCore.
7422         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Eliminated the long list of
7423         operations that we forward to WebCore. Instead, look up any command that WebCore can
7424         handle, after any that we handle specially in WebHTMLView. Also fixed a bug where
7425         an item that's not a menu item with changeBaseWritingDirection:NSWritingDirectionNatural
7426         would end up enabled instead of disabled and streamlined the logic for toggleGrammarChecking:.
7427         (-[WebHTMLView mouseDown:]): Removed unused firstResponderTextViewAtMouseDownTime.
7428         (-[WebHTMLView becomeFirstResponder]): Removed unused willBecomeFirstResponderForNodeFocus.
7429         (-[WebHTMLView resignFirstResponder]): Ditto.
7430         (-[WebHTMLView checkSpelling:]): Took unneeded extra initialization of NSSpellChecker.
7432         * WebView/WebHTMLViewInternal.h: Removed unused willBecomeFirstResponderForNodeFocus,
7433         firstResponderTextViewAtMouseDownTime, _textViewWasFirstResponderAtMouseDownTime: and
7434         _willMakeFirstResponderForNodeFocus.
7436 2007-12-13  Alexey Proskuryakov  <ap@webkit.org>
7438         Reviewed by Darin Adler.
7440         Turn on keyboard event processing quirks for feed views and old applications on Mac OS X.
7442         * Misc/WebKitVersionChecks.h:
7443         * WebView/WebView.mm:
7444         (-[WebView _needsKeyboardEventHandlingQuirks]):
7445         (-[WebView _preferencesChangedNotification:]):
7447 2007-12-12  Brady Eidson  <beidson@apple.com>
7449         Reviewed by Sam Weinig
7451         Fix for <rdar://problem/4886844> and lay groundwork for <rdar://problem/4516170> (Back/Forward Cache on Windows)
7453         * WebCoreSupport/WebCachedPagePlatformData.h: Added.
7454         (WebCachedPagePlatformData::WebCachedPagePlatformData): Constructor takes a WebDocumentView for later restoration
7455         (WebCachedPagePlatformData::clear):
7456         (WebCachedPagePlatformData::webDocumentView):
7458         * WebCoreSupport/WebFrameLoaderClient.h:
7459         * WebCoreSupport/WebFrameLoaderClient.mm:
7460         (WebFrameLoaderClient::savePlatformDataToCachedPage):
7461         (WebFrameLoaderClient::transitionToCommittedFromCachedPage): Don't set the DocumentLoader to the Frame here, 
7462           because that is now done in WebCore.
7463         (WebFrameLoaderClient::transitionToCommittedForNewPage):
7465 2007-12-12  Mark Rowe  <mrowe@apple.com>
7467         Reviewed by Dave Kilzer.
7469         Remove abuse of projectDirPath from WebKit.xcodeproj to fix Production builds.
7471         * Configurations/WebKit.xcconfig:
7473 2007-12-11  Sam Weinig  <sam@webkit.org>
7475         Reviewed by Darin Adler.
7477         Scrub URL out of the tree in preparation for renaming KURL to URL.
7479         * WebCoreSupport/WebFrameLoaderClient.mm:
7480         (WebFrameLoaderClient::actionDictionary):
7481         * WebView/WebDataSource.mm:
7482         (-[WebDataSource _URL]):
7483         * WebView/WebView.mm:
7484         (-[WebView _dispatchDidReceiveIconFromWebFrame:]):
7486 2007-12-11  Darin Adler  <darin@apple.com>
7488         Reviewed by Geoff.
7490         - change more editing commands to use WebCore::Editor
7491         - change to use the new WebCore::Editor::command() function
7493         * WebView/WebHTMLView.mm: Changed alignCenter, alignJustified, alignLeft,
7494         alignRight, cut, copy, deleteToMark, indent, insertNewlineIgnoringFieldEditor,
7495         insertTabIgnoringFieldEditor, outdent, selectAll, selectToMark, setMark,
7496         subscript, superscript, swapWithMark, underline, unscript, yank, and yankAndSelect
7497         to use the "forward to WebCore" macro instead of having hand-written implementations.
7498         (kit): Added function to change a TriState to an AppKit-style tri-state value.
7499         (-[WebHTMLView coreCommandBySelector:]): Added. No longer converts case of the
7500         first character or copies the selector name, since the Editor commands are not case
7501         sensitive any more. Returns a command object.
7502         (-[WebHTMLView coreCommandByName:]): Added.
7503         (-[WebHTMLView executeCoreCommandBySelector:]): Renamed from callWebCoreCommand:,
7504         and changed to use the new coreCommandBySelector: method.
7505         (-[WebHTMLView executeCoreCommandByName:]): Added.
7506         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Changed all the
7507         methods that call through to WebCore to also use the state() and isEnabled()
7508         functions on the commands for the menu item state and user interface item enabling.
7509         (-[WebHTMLView _handleStyleKeyEquivalent:]): Use ToggleBold and ToggleItalic by
7510         name rather than having local methods for them; no need for methods with a single
7511         call site.
7512         (-[WebHTMLView insertParagraphSeparator:]): Use executeCoreCommandByName: rather
7513         than the deprecated execCommand().
7514         (-[WebHTMLView doCommandBySelector:]): Changed to use command().execute() rather
7515         than the deprecated execCommand().
7516         * WebView/WebHTMLViewInternal.h: Removed some unneeded method declarations.
7518 2007-12-07  Alexey Proskuryakov  <ap@webkit.org>
7520         Reviewed by Darin Adler.
7522         <rdar://problem/5535636>
7523         Have to press 4 times instead of 2 times to get the expected result of ^^ with german keyboard.
7525         http://bugs.webkit.org/show_bug.cgi?id=13916
7526         JavaScript detects Tab as a character input on a textfield validation
7528         * WebCoreSupport/WebEditorClient.h:
7529         Renamed handleKeypress() to handleKeyboardEvent(), as it gets both keydowns and keypresses.
7530         Renamed handleInputMethodKeypress() to handleInputMethodKeydown().
7531         * WebCoreSupport/WebEditorClient.mm:
7532         (WebEditorClient::handleKeyboardEvent): This change makes sense only remotely, but it helped
7533         to get tests working. I guess Mac keyboard event handling needs further refactoring.
7535         * WebView/WebHTMLView.mm:
7536         (selectorToCommandName): Convert AppKit editing selector name to Editor command name - extracted
7537         from callWebCoreCommand:.
7538         (_interceptEditingKeyEvent:shouldSaveCommand:): Insert text from keypress.
7540         * WebView/WebPDFView.mm:
7541         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
7542         Convert incoming platform KeyDown into RawKeyDown, as this is what the view is interested in.
7544 2007-12-10  Brady Eidson  <beidson@apple.com>
7546         Reviewed by John Sullivan
7548         Fix for <rdar://problem/5640080> - Database UI delegate calls need to specify WebFrame
7550         This is because a common UI case is to want to know the originating URL of a Database
7552         * WebCoreSupport/WebChromeClient.mm:
7553         (WebChromeClient::requestQuotaIncreaseForNewDatabase):
7554         (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
7556         * WebView/WebUIDelegatePrivate.h:
7558         * WebView/WebView.mm:
7559         (CallDelegateReturningUnsignedLongLong):
7560         (CallUIDelegateReturningUnsignedLongLong):
7561         * WebView/WebViewInternal.h:
7563 2007-12-10  Timothy Hatcher  <timothy@apple.com>
7565         Reviewed by Mark Rowe.
7567         <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x
7569         * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR,
7570           so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX.
7572 2007-12-10  Kevin Decker  <kdecker@apple.com>
7574         Reviewed by Darin Adler.
7576         Fixed: <rdar://problem/4290098> Right-mouse click on element doesn't call onmousedown handler
7577         
7578         * WebView/WebHTMLView.mm:
7579         (-[WebHTMLView menuForEvent:]): Match behavior of other browsers by sending an onmousedown event for right clicks.
7581 2007-12-08  Oliver Hunt  <oliver@apple.com>
7583         Reviewed by Sam W.
7585         Split the ENABLE_SVG_EXPERIMENTAL_FEATURES flag into separate flags.
7586         
7587         Fixes <rdar://problem/5620249> Must disable SVG animation
7588         <rdar://problem/5612772> Disable SVG filters on Mac to match Windows behavior
7589         
7590         Minor updates to the feature flags used.
7592         * Configurations/WebKit.xcconfig:
7593         * DOM/WebDOMOperations.mm:
7595 2007-12-07  Darin Adler  <darin@apple.com>
7597         Reviewed by Kevin Decker and Tim Hatcher.
7599         - speculative fix for <rdar://problem/5400159> CrashTracer: [USER] 726 crashes
7600           in Safari at com.apple.WebKit: -[WebHTMLView(WebPrivate) _updateMouseoverWithFakeEvent] + 389
7602         * WebView/WebHTMLView.mm:
7603         (-[WebHTMLView _frameOrBoundsChanged]): Only schedule the mouseover timer if we are in a window
7604         and not closed. That's because viewDidMoveToWindow and close are the entry points for cancelling.
7605         (-[WebHTMLView close]): Add code to cancel both timers. Needed for the case where the entire
7606         window goes away, and the view is never removed from the window.
7607         (-[WebHTMLView viewDidMoveToWindow]): Don't do work if the view is closed.
7609 2007-12-07  Darin Adler  <darin@apple.com>
7611         Reviewed by Mitz.
7613         - http://bugs.webkit.org/show_bug.cgi?id=15981
7614           speed up visited-link code a bit
7616         * History/WebHistory.mm: Removed unused Latin-1 code path.
7617         (-[_WebCoreHistoryProvider containsURL:length:]): Updated for method name change.
7619 2007-12-07  Geoffrey Garen  <ggaren@apple.com>
7621         Reviewed by Sam Weinig.
7622         
7623         Added a forwarding header, since we now #include nodes.h through some
7624         JavaScriptCore headers.
7626         * ForwardingHeaders/wtf/ListRefPtr.h: Added.
7628 2007-12-06  Brady Eidson  <beidson@apple.com>
7630         Reviewed by Oliver's rubber stamp
7632         Let's go ahead and call the correct UI Delegate method, shall we?
7634         * WebCoreSupport/WebChromeClient.mm:
7635         (WebChromeClient::requestQuotaIncreaseForDatabaseOperation): Call the correct UI delegate
7637 2007-12-06  Adam Roben  <aroben@apple.com>
7639         Remove some assertions we know can fire and replace them with a FIXME
7641         Reviewed by Anders.
7643         * WebCoreSupport/WebFrameLoaderClient.mm:
7645 2007-12-06  Timothy Hatcher  <timothy@apple.com>
7647         Change the ASSERT added for the previous fix. The ASSERT was firing for 10.5.0.
7648         Only assert if the major version is zero, since zero is handled in the other cases.
7650         * WebView/WebView.mm:
7651         (callGestalt): Remove the ASSERT.
7652         (createMacOSXVersionString): ASSERT that major is not zero.
7654 2007-12-06  Darin Adler  <darin@apple.com>
7656         Reviewed by Tim Hatcher.
7658         - fix <rdar://problem/5513394> No way to detect Tiger vs Leopard from Safari's user agent string
7660         * WebView/WebView.mm:
7661         (callGestalt): Added.
7662         (createMacOSXVersionString): Added.
7663         (-[WebView _userAgentWithApplicationName:andWebKitVersion:]): Added Mac OS X version string,
7664         right after the string "Mac OS X", but with underscores instead of dots to avoid the dreaded
7665         "4." problem (old libraries that think a "4." anywhere in the user agent means Netscape 4).
7666         (-[WebView _userAgentForURL:]): Fixed incorrect bug numbers.
7668 2007-12-04  Geoffrey Garen  <ggaren@apple.com>
7670         Reviewed by Darin Adler.
7672         Third step in refactoring JSGlobalObject: Moved data members and data
7673         member access from Interpreter to JSGlobalObject.
7674         
7675         * WebView/WebFrame.mm:
7676         (-[WebFrame _attachScriptDebugger]):
7678 2007-12-04  Kevin McCullough  <kmccullough@apple.com>
7680         Reviewed by Darin Adler.
7682         - <rdar://5621435>
7683         - Security Fix. Instead of having it off by default, WebKit now must
7684         explicitly turn off local-resource restriction when needed for backwards
7685         coimpatibility reasons.
7687         * WebView/WebView.mm:
7688         (-[WebView _commonInitializationWithFrameName:groupName:]):
7690 2007-12-05  Brady Eidson  <beidson@apple.com>
7692         Reviewed by Kevin Deckers rubberstamp
7694         Disclose and export the Databases Directory defaults key
7696         * Storage/WebDatabaseManager.mm:
7697         * Storage/WebDatabaseManagerPrivate.h:
7698         * WebKit.exp:
7700 2007-12-04  Kevin Decker  <kdecker@apple.com>
7702         Reviewed by Anders.
7704         <rdar://problem/5629125> PluginInfoStore needs the ability to return the name of a plug-in for a given MIME type
7706         * WebCoreSupport/WebViewFactory.mm:
7707         (-[WebViewFactory pluginNameForMIMEType:]): Added.
7709 2007-12-04  Brady Eidson  <beidson@apple.com>
7711         Reviewed by Mark Rowe
7713         Tweaked the way we typedef and cast these objc_msgSend calls
7715         * WebView/WebView.mm:
7716         (CallDelegateReturningUnsignedLongLong):
7718 2007-12-04  John Sullivan  <sullivan@apple.com>
7720         Reviewed by Brady Eidson (with help from Mark Rowe)
7721         
7722         Fixed return values for unsigned-long-long delegate methods
7724         * WebView/WebView.mm:
7725         (CallDelegateReturningUnsignedLongLong):
7726         redid the change that Brady did at home over the weekend but forgot to check in
7728 2007-11-27  Adam Roben  <aroben@apple.com>
7730         Remove -[WebFrameBridge setNeedsReapplyStyles]
7732         This functionality is now WebCore's responsibility.
7734         Reviewed by Hyatt.
7736         * WebCoreSupport/WebFrameBridge.mm:
7737         * WebKit.order:
7739 2007-12-04  John Sullivan  <sullivan@apple.com>
7741         Reviewed by Darin
7742         
7743         Added deleteOrigin: SPI, which isn't fully implemented
7745         * Storage/WebDatabaseManagerPrivate.h:
7746         * Storage/WebDatabaseManager.mm:
7747         (-[WebDatabaseManager deleteOrigin:]):
7748         just calls deleteDatabasesWithOrigin: for now, but needs to delete origin itself too
7750 2007-12-04  Timothy Hatcher  <timothy@apple.com>
7752         Reviewed by Mark Rowe.
7754         Remove a check for early versions of Leopard CFNetwork now that
7755         Leopard has shipped.
7757         * Misc/WebKitVersionChecks.h: Remove WEBKIT_FIRST_CFNETWORK_VERSION_WITH_LARGE_DISK_CACHE_FIX.
7758         * WebView/WebView.mm:
7759         (+[WebView _setCacheModel:]): Remove the early Leopard CFNetwork check.
7761 2007-12-04  Kevin Decker  <kdecker@apple.com>
7763         Reviewed by Darin Adler.
7765         Revised fix for: <rdar://problem/5586978> REGRESSION (Safari 2-3): WebKit sometimes doesn't invoke Flash's NPP_SetWindow function and causes a hang
7767         This fix is exactly the same as chageset 28359 with the exception of an added early return in
7768         updateAndSetWindow to cover the additional case of when a plug-in isn't drawable.
7769         
7770         The CG-based Flash player would sometimes hang because (for CoreGraphics-based plug-ins) our code would
7771         only call into the NPP_SetWindow() function when we tell the plug-in to draw. This created havoc with 
7772         Flash because Flash expects the browser to call NPP_SetWindow() and provide a valid graphics context 
7773         regardless of whether or not it actually needs to draw. 
7774         
7775         * Plugins/WebBaseNetscapePluginView.mm:
7776         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Removed an incorrect comment and toned
7777         down an ASSERT that was too strict. 
7778         (-[WebBaseNetscapePluginView updateAndSetWindow]): Removed an early return for CoreGraphics-based plug-ins
7779         which would sometimes altogether prevent updating the PortState and calling into a plug-ins NPP_SetWindow()
7780         function. Also tweaked a comment and added an early return if the plug-in can't draw.
7782 2007-12-04  Darin Adler  <darin@apple.com>
7784         Reviewed by Kevin Decker.
7786         * WebCoreSupport/WebFrameLoaderClient.h: Removed obsolete privateBrowsingEnabled.
7787         * WebCoreSupport/WebFrameLoaderClient.mm: Ditto.
7788         * WebKit.order: Ditto.
7790 2007-12-03  Dan Bernstein  <mitz@apple.com>
7792         Reviewed by Dave Hyatt.
7794         - fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
7796         * WebView/WebHTMLView.mm:
7797         (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Removed the code
7798         that checked if the view had resized and sent the resize event, since
7799         FrameView sends resize events now.
7800         * WebView/WebHTMLViewInternal.h:
7802 2007-12-03  Timothy Hatcher  <timothy@apple.com>
7804         Reviewed by Darin Adler.
7806         Change WebViewGetResourceLoadDelegateImplementations and WebViewGetFrameLoadDelegateImplementations
7807         to return a pointer to the implementation struct instead of a copy of the struct. This changes
7808         all of the callers to dereference the pointer to access the struct fields.
7810         * Plugins/WebNullPluginView.mm:
7811         (-[WebNullPluginView reportFailure]):
7812         * WebCoreSupport/WebFrameBridge.mm:
7813         * WebCoreSupport/WebFrameLoaderClient.mm:
7814         (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
7815         (WebFrameLoaderClient::assignIdentifierToInitialRequest):
7816         (WebFrameLoaderClient::dispatchWillSendRequest):
7817         (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
7818         (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
7819         (WebFrameLoaderClient::dispatchDidReceiveResponse):
7820         (WebFrameLoaderClient::willCacheResponse):
7821         (WebFrameLoaderClient::dispatchDidReceiveContentLength):
7822         (WebFrameLoaderClient::dispatchDidFinishLoading):
7823         (WebFrameLoaderClient::dispatchDidFailLoading):
7824         (WebFrameLoaderClient::dispatchDidHandleOnloadEvents):
7825         (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
7826         (WebFrameLoaderClient::dispatchDidCancelClientRedirect):
7827         (WebFrameLoaderClient::dispatchWillPerformClientRedirect):
7828         (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
7829         (WebFrameLoaderClient::dispatchWillClose):
7830         (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
7831         (WebFrameLoaderClient::dispatchDidReceiveTitle):
7832         (WebFrameLoaderClient::dispatchDidCommitLoad):
7833         (WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
7834         (WebFrameLoaderClient::dispatchDidFailLoad):
7835         (WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
7836         (WebFrameLoaderClient::dispatchDidFinishLoad):
7837         (WebFrameLoaderClient::dispatchDidFirstLayout):
7838         * WebView/WebView.mm:
7839         (WebViewGetResourceLoadDelegateImplementations):
7840         (WebViewGetFrameLoadDelegateImplementations):
7841         (-[WebView _dispatchDidReceiveIconFromWebFrame:]):
7842         * WebView/WebViewInternal.h:
7844 2007-12-03  Timothy Hatcher  <timothy@apple.com>
7846         Reviewed by Brady Eidson.
7848         <rdar://problem/5539913> 188 crashes in WebViewGetFrameLoadDelegateImplementations
7849         <rdar://problem/5586095> CrashTracer: [USER] 5000+ crashes in Safari and Dashboard in dispatchDidFailLoading
7850         <rdar://problem/5607081> CrashTracer: [USER] 2150 crashes in Safari at com.apple.WebKit:
7851         WebViewGetResourceLoadDelegateImplementations + 28
7853         * WebView/WebView.mm:
7854         (-[WebView _cacheResourceLoadDelegateImplementations]): If the delegate is nil, bzero the
7855         implementation cache. This just prevents us from calling getMethod() multiple times just to zero.
7856         (-[WebView _cacheFrameLoadDelegateImplementations]): Ditto.
7857         (WebViewGetResourceLoadDelegateImplementations): Return a zeroed implementations struct
7858         if the WebView is nil. This fixes the crashes.
7859         (WebViewGetFrameLoadDelegateImplementations): Ditto.
7861 2007-12-02  Geoffrey Garen  <ggaren@apple.com>
7863         Reviewed by Eric Seidel.
7865         Updated to match the JavaScriptCore change to move virtual methods from
7866         Interpreter to JSGlobalObject.
7868         * WebView/WebFrame.mm:
7869         (-[WebFrame globalContext]): Use the toRef function instead of manually
7870         casting.
7872 2007-12-01  Brady Eidson  <beidson@apple.com>
7874         Reviewed by Tim
7876         Added a default database quota of 5mb to the default WebPreferences
7878         * WebView/WebPreferences.m:
7879         (+[WebPreferences initialize]):
7881 2007-11-30  John Sullivan  <sullivan@apple.com>
7883         Reviewed by Geoff Garen
7884         
7885         Added another symbol for WebDatabaseManager clients
7887         * WebKit.exp:
7888         added .objc_class_name_WebSecurityOrigin
7890 2007-11-30  Brady Eidson  <beidson@apple.com>
7892         Reviewed by Geoff
7894         Add isEqual operator to WebSecurityOrigin
7896         * Storage/WebSecurityOrigin.mm:
7897         (-[WebSecurityOrigin isEqual:]):
7899 2007-11-30  John Sullivan  <sullivan@apple.com>
7901         Reviewed by Darin
7902         
7903         Tweaks to newly-declared NSString * constants to make them usable from clients
7905         * Storage/WebDatabaseManagerPrivate.h:
7906         * Storage/WebDatabaseManager.mm:
7907         removed "const" from new NSNotification names and userInfo keys; these generate compiler warnings when used
7908         
7909         * WebKit.exp:
7910         export new NSNotification names and userInfo keys so clients can use them
7912 2007-11-29  Anders Carlsson  <andersca@apple.com>
7914         Reviewed by John.
7916         Rename WebKitShrinksStandaloneImagesToFitKey to WebKitShrinksStandaloneImagesToFit.
7917         
7918         This is safe to do because the preference is off by default and Safari 3, which is the only client that turns it on,
7919         is using the setter and not messing around with NSUserDefaults.
7920         
7921         * WebView/WebPreferenceKeysPrivate.h:
7922         * WebView/WebPreferences.m:
7923         (+[WebPreferences initialize]):
7924         (-[WebPreferences shrinksStandaloneImagesToFit]):
7925         (-[WebPreferences setShrinksStandaloneImagesToFit:]):
7927 2007-11-29  Brady Eidson  <beidson@apple.com>
7929         Reviewed by Anders
7931         Support for <rdar://problem/5556381> and <rdar://problem/5556379>
7933         Hook up UI Delegate calls for the database engine feature and other small tweaks
7935         * Storage/WebDatabaseManager.mm:
7936         (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Renamed databaseName parameter to databaseIdentifier for clarity
7937         (-[WebDatabaseManager deleteDatabase:withOrigin:]): Renamed databaseName parameter to databaseIdentifier for clarity
7938         * Storage/WebDatabaseManagerPrivate.h:
7940         * Storage/WebDatabaseTrackerClient.h:
7941         * Storage/WebDatabaseTrackerClient.mm:
7942         (WebDatabaseTrackerClient::dispatchDidModifyDatabase): Renamed databaseName parameter to databaseIdentifier for clarity
7944         * WebCoreSupport/WebChromeClient.h:
7945         * WebCoreSupport/WebChromeClient.mm:
7946         (WebChromeClient::requestQuotaIncreaseForNewDatabase): Call through to the UI Delegate
7947         (WebChromeClient::requestQuotaIncreaseForDatabaseOperation): Ditto
7949         * WebView/WebUIDelegatePrivate.h: Added the two UI Delegate methods
7951         * WebView/WebView.mm:
7952         (CallDelegateReturningUnsignedLongLong):
7953         (CallUIDelegateReturningUnsignedLongLong):
7954         * WebView/WebViewInternal.h:
7956 2007-11-28  Kevin McCullough  <kmccullough@apple.com>
7958         Reviewed by Sam.
7960         - Added recursive runloop guards.
7962         * DefaultDelegates/WebScriptDebugServer.m:
7963         (-[WebScriptDebugServer suspendProcessIfPaused]):
7965 2007-11-29  Mark Rowe  <mrowe@apple.com>
7967         Reviewed by Oliver Hunt.
7969         Fix an assertion failure seen on the layout tests, and when closing the window after
7970         visiting <http://www.coudal.com/losalamos/>.
7972         * Plugins/WebBaseNetscapePluginStream.mm:
7973         (-[WebBaseNetscapePluginStream _destroyStream]): Unlink the file and close the file
7974         descriptor even when the stream is being destroyed without the load completing. This
7975         avoids leaking the path and file descriptor, and leaving the temporary file on disk.
7977 2007-11-28  Adele Peterson  <adele@apple.com>
7979         Reviewed by Darin Adler.
7981         Fix for <rdar://problem/5524216> CrashTracer: [USER] 496 crashes in Safari at com.apple.WebCore: WebCore::Frame::eventHandler const + 6
7983         The CrashTracer shows a variety of crashes in different methods (including keyDown and keyUp). This change adds nil checks for the frame in 
7984         WebHTMLView to prevent future problems in other methods as well.
7986         * WebView/WebHTMLView.mm:
7987         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
7988         (-[WebHTMLView keyDown:]):
7989         (-[WebHTMLView keyUp:]):
7990         (-[WebHTMLView flagsChanged:]):
7991         (-[WebHTMLView _selectionStartFontAttributesAsRTF]):
7992         (-[WebHTMLView _changeCSSColorUsingSelector:inRange:]):
7993         (-[WebHTMLView checkSpelling:]):
7994         (-[WebHTMLView showGuessPanel:]):
7995         (-[WebHTMLView indent:]):
7996         (-[WebHTMLView outdent:]):
7997         (-[WebHTMLView paste:]):
7998         (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
7999         (-[WebHTMLView insertText:]):
8000         (-[WebHTMLView selectionTextRects]):
8002 2007-11-28  Dan Bernstein  <mitz@apple.com>
8004         Reviewed by Maciej Stachowiak.
8006         - fix <rdar://problem/5596160> fast/events/objc-event-api.html fails when run alone (or first)
8008         * WebView/WebHTMLView.mm:
8009         (-[WebHTMLView setDataSource:]): This method calls addMouseMovedObserver
8010         because addMouseMovedObserver returns early if the dataSource
8011         is not nil. But if the dataSource is already set (which happens when
8012         a WebHTMLView is being reused) then addMouseMovedObserver must not
8013         be called again.
8015 2007-11-27  Anders Carlsson  <andersca@apple.com>
8017         Reviewed by Brady.
8019         * Storage/WebDatabaseManager.mm:
8020         * Storage/WebDatabaseManagerPrivate.h:
8021         * Storage/WebDatabaseTrackerClient.mm:
8022         (WebDatabaseTrackerClient::dispatchDidModifyOrigin):
8023         (WebDatabaseTrackerClient::dispatchDidModifyDatabase):
8024         * Storage/WebSecurityOrigin.mm:
8025         (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:]):
8026         * Storage/WebSecurityOriginInternal.h:
8028 2007-11-27  Kevin Decker  <kdecker@apple.com>
8030         Reviewed by Darin, landed by Anders.
8032         Fixed: <rdar://problem/4610818> CrashTracer: 1533 crashes in Safari at com.macromedia.Flash Player.plugin: native_ShockwaveFlash_TCallLabel + 271131
8034         The problem was that some Leopard users were still inadvertently using the old Flash 8 plug-in, even though Leopard
8035         shipped with Flash 9. To avoid loading an older version of a plug-in when a newer version is installed, the plug-in
8036         database will compare bundle versions and always load the latest version.
8038         * Plugins/WebBasePluginPackage.h:
8039         * Plugins/WebBasePluginPackage.m:
8040         (-[WebBasePluginPackage versionNumber]): New method. CFBundleGetVersionNumber doesn't work with all possible versioning schemes,
8041         but we think for now it's good enough for us.
8042         * Plugins/WebPluginDatabase.m:
8043         (considerCandidate): Added a C utility function which compares the current plug-in against a candidate plug-in's version number.
8044         If both plug-ins have the same bundle ID and the candiate is newer, the current plug-in becomes the candidate.
8045         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]): Calls the new considerCandidate() function.
8047 2007-11-26  Timothy Hatcher  <timothy@apple.com>
8049         Reviewed by Dave Hyatt.
8051         <rdar://problem/5569233> Add the ability to disable author and user CSS styles
8053         * WebView/WebPreferenceKeysPrivate.h: Define WebKitRespectStandardStyleKeyEquivalentsPreferenceKey.
8054         * WebView/WebPreferences.m:
8055         (+[WebPreferences initialize]): Default WebKitRespectStandardStyleKeyEquivalentsPreferenceKey to YES.
8056         (-[WebPreferences authorAndUserStylesEnabled]): Return the setting's BOOL value.
8057         (-[WebPreferences setAuthorAndUserStylesEnabled:]): Set the setting's BOOL value.
8058         * WebView/WebPreferencesPrivate.h: Add authorAndUserStylesEnabled and setAuthorAndUserStylesEnabled:.
8059         * WebView/WebView.mm:
8060         (-[WebView _preferencesChangedNotification:]): Update WebCore::Settings::authorAndUserStylesEnabled.
8062 2007-11-26  Brady Eidson  <beidson@apple.com>
8064         Reviewed by Mark Rowe
8066         Provide API for setting the default storage quota per database origin
8068         * Misc/WebNSDictionaryExtras.h:
8069         * Misc/WebNSDictionaryExtras.m:
8070         (-[NSMutableDictionary _webkit_setUnsignedLongLong:forKey:]): Helper for UINT64 preferences
8072         * WebView/WebPreferenceKeysPrivate.h:
8073         * WebView/WebPreferences.m:
8074         (-[WebPreferences _unsignedLongLongValueForKey:]): Helper for UINT64 prefs
8075         (-[WebPreferences _setUnsignedLongLongValue:forKey:]): Ditto
8076         (-[WebPreferences defaultDatabaseQuota]):
8077         (-[WebPreferences setDefaultDatabaseQuota:]):
8078         * WebView/WebPreferencesPrivate.h:
8080         * WebView/WebView.mm:
8081         (-[WebView _preferencesChangedNotification:]): Set the WebCore Settings version of the default storage pref
8083 2007-11-26  Darin Adler  <darin@apple.com>
8085         Reviewed by Adele.
8087         - some middle-mouse-button-related fixes
8089         These don't affect Safari since it maps the middle mouse button to the command key,
8090         but that might not always be the case for future versions.
8092         * WebView/WebHTMLView.mm:
8093         (-[WebHTMLView otherMouseDown:]): Pass through middle mouse down events to WebCore.
8094         (-[WebHTMLView otherMouseDragged:]): Ditto, for drag events.
8095         (-[WebHTMLView otherMouseUp:]): Ditto, for up events.
8097         * WebView/WebPolicyDelegate.h: Fixed inaccurate documentation of WebActionButtonKey.
8099 2007-11-26  Anders Carlsson  <andersca@apple.com>
8101         Reviewed by Brady.
8103         Get rid of the WebSecurityOriginPrivate object and store 
8104         the WebCore::SecurityOriginData pointer in the _private field of
8105         the WebSecurityOrigin object instead.
8106         
8107         * Storage/WebDatabaseManager.mm:
8108         (-[WebDatabaseManager databasesWithOrigin:]):
8109         (-[WebDatabaseManager detailsForDatabase:withOrigin:]):
8110         (-[WebDatabaseManager deleteDatabasesWithOrigin:]):
8111         (-[WebDatabaseManager deleteDatabase:withOrigin:]):
8112         * Storage/WebSecurityOrigin.mm:
8113         (-[WebSecurityOrigin initWithProtocol:domain:port:]):
8114         (-[WebSecurityOrigin protocol]):
8115         (-[WebSecurityOrigin domain]):
8116         (-[WebSecurityOrigin port]):
8117         (-[WebSecurityOrigin usage]):
8118         (-[WebSecurityOrigin quota]):
8119         (-[WebSecurityOrigin setQuota:]):
8120         (-[WebSecurityOrigin dealloc]):
8121         (-[WebSecurityOrigin finalize]):
8122         (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:]):
8123         (-[WebSecurityOrigin _core]):
8124         * Storage/WebSecurityOriginInternal.h:
8126 2007-11-26  Timothy Hatcher  <timothy@apple.com>
8128         Reviewed by Adam Roben.
8130         Bug 16137: Web Inspector window on Leopard should have a unified toolbar and window title
8131         http://bugs.webkit.org/show_bug.cgi?id=16137
8133         Create the Web Inspector window with the textured style. Set the content border
8134         thickness for the top of the window or the height of the toolbar. Also make the
8135         window's bottom corners square, since a normal textured window normally has
8136         rounded bottom corners.
8138         * WebCoreSupport/WebInspectorClient.mm:
8139         (-[WebInspectorWindowController window]):
8141 2007-11-24  Mark Rowe  <mrowe@apple.com>
8143         Tiger build fix.
8145         * Plugins/WebBaseNetscapePluginStream.mm:
8146         (CarbonPathFromPOSIXPath): Use WebCFAutorelease as this also works on Tiger.
8148 2007-11-24  Mark Rowe  <mrowe@apple.com>
8150         Reviewed by Tim Hatcher.
8152         Fix <rdar://problem/5432686> 333MB RPRVT seems to leak @ www.43folders.com (1hr plug-in stream).
8153         http://bugs.webkit.org/show_bug.cgi?id=13705
8155         Have NP_ASFILE and NP_ASFILEONLY streams write the data to disk as they receive it rather than
8156         dumping the data to disk in a single go when the stream has completed loading.  On a test case
8157         involving a 150MB Flash movie being streamed from a local web server this reduces memory consumption
8158         on page load from around 400MB to 22MB.
8160         The only plugin I have found that uses NP_ASFILE or NP_ASFILEONLY on the Mac is our NetscapeMoviePlugin
8161         example code so the NP_ASFILE portion of this change has not had any testing with a real-world plugin.
8163         * Plugins/WebBaseNetscapePluginStream.h:
8164         * Plugins/WebBaseNetscapePluginStream.mm:
8165         (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]):
8166         (-[WebBaseNetscapePluginStream dealloc]):
8167         (-[WebBaseNetscapePluginStream finalize]):
8168         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]):
8169         (-[WebBaseNetscapePluginStream _destroyStream]): Update to work with paths as NSStrings.
8170         (-[WebBaseNetscapePluginStream _deliverDataToFile:]): Open the file if it is not already open, and write any data
8171         to disk.
8172         (-[WebBaseNetscapePluginStream finishedLoading]): If the stream is NP_ASFILE or NP_ASFILEONLY we need to ensure
8173         that the file exists before _destroyStream passes it to the plugin.  Simulating the arrival of an empty data block
8174         ensure that the file will be created if it has not already.
8175         (-[WebBaseNetscapePluginStream receivedData:]):
8176         (CarbonPathFromPOSIXPath):
8177         * Plugins/WebBaseNetscapePluginView.mm:
8178         (-[WebBaseNetscapePluginView pluginViewFinishedLoading:]): Data is dealt with incrementally so there's no need to pass
8179         it to finishedLoading.
8180         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): Ditto.
8182 2007-11-23  Oliver Hunt  <oliver@apple.com>
8184         Reviewed by Mark Rowe.
8185         
8186         Fixed <rdar://problem/3759190> allow input methods the option of processing mouse events themselves
8188         * WebView/WebHTMLView.mm:
8189         (-[WebHTMLView mouseDown:]):
8191 2007-11-22  Dan Bernstein  <mitz@apple.com>
8193         Reviewed by Antti Koivisto.
8195         - http://bugs.webkit.org/show_bug.cgi?id=15811
8196           WebKit plug-ins can re-enter WebKit under attach()
8197           <rdar://problem/5577978>
8199         * Plugins/WebNullPluginView.mm:
8200         (-[WebNullPluginView viewDidMoveToWindow]): Removed workaround for the
8201         above bug that added as part of fixing
8202         <http://bugs.webkit.org/show_bug.cgi?id=15804>.
8204 2007-11-21  Mark Rowe  <mrowe@apple.com>
8206         Reviewed by Eric.
8208         Fix WebKit to build without warnings under GCC 4.2.
8210         * Configurations/Base.xcconfig:
8212 2007-11-21  Mark Rowe  <mrowe@apple.com>
8214         Reviewed by Tim Hatcher.
8216         Changes due to <rdar://problem/5602936> Need to resolve new GCC 4.2 warnings
8218         Update format strings to use format specifiers that match the argument types.
8220         * Misc/WebGraphicsExtras.c:
8221         (WebConvertBGRAToARGB):
8223 2007-11-19  Brady Eidson <beidson@apple.com>
8225         Reviewed by Maciej
8227         Finished hooking up the WebKit API for database management.
8228         Most of the API is actually implemented in WebCore and some of those methods might
8229         only be stubs for now.
8231         * Storage/WebDatabaseManager.mm:
8232         (-[WebDatabaseManager origins]): Call through to the WebCore tracker and construct an API result
8233         (-[WebDatabaseManager databasesWithOrigin:]): Ditto
8234         (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Ditto
8236         * Storage/WebSecurityOrigin.mm:
8237         (-[WebSecurityOrigin usage]): Call through to WebCore
8238         (-[WebSecurityOrigin quota]): Ditto
8239         (-[WebSecurityOrigin setQuota:]): Ditto
8240         (-[WebSecurityOrigin _core]): Get WebCore version of this object
8241         * Storage/WebSecurityOriginInternal.h:
8243 2007-11-17  Timothy Hatcher  <timothy@apple.com>
8245         Reviewed by Mark Rowe.
8247         Bug 13470: i18n: The Web Inspector is not localizable
8248         http://bugs.webkit.org/show_bug.cgi?id=13470
8250         Implement the localizedStringsURL() client method to return the
8251         localized URL of InspectorLocalizedStrings.js in WebCore.
8253         * WebCoreSupport/WebInspectorClient.h: Added localizedStringsURL.
8254         * WebCoreSupport/WebInspectorClient.mm:
8255         (WebInspectorClient::localizedStringsURL): Added.
8256         (WebInspectorClient::updateWindowTitle): Localized the window title.
8257         (-[WebInspectorWindowController init]): Remove a FIXME that dosen't make sense anymore.
8258         (-[WebInspectorWindowController initWithInspectedWebView:]): Code style cleanup.
8260 2007-11-17  Alexey Proskuryakov  <ap@webkit.org>
8262         Reviewed by Darin Adler.
8264         http://bugs.webkit.org/show_bug.cgi?id=15969
8265         Eliminate Editor::deleteRange()
8267         * WebView/WebHTMLView.mm:
8268         (+[WebHTMLView initialize]):
8269         (-[WebHTMLView yank:]):
8270         (-[WebHTMLView yankAndSelect:]):
8271         (-[WebHTMLView setMark:]):
8272         (-[WebHTMLView deleteToMark:]):
8273         (-[WebHTMLView selectToMark:]):
8274         (-[WebHTMLView swapWithMark:]):
8275         Pushed all kill ring methods to WebCore. They were guilty of using Editor::deleteRange()!
8277 2007-11-16  Mark Rowe  <mrowe@apple.com>
8279         Reviewed by Tim Hatcher.
8281         Build WebCore as a sub-framework of WebKit in all configurations.
8283         * Configurations/WebKit.xcconfig:
8285 2007-11-16  John Sullivan  <sullivan@apple.com>
8287         Reviewed by Brady
8289         * WebKit.exp:
8290         Exported some new database-related symbols
8292 2007-11-16  Brady Eidson  <beidson@apple.com>
8294         Reviewed by John
8296         Database management API tweaks
8298         Fleshed out "WebSecurityOrigin" to be the API object representing an origin.  This relieves some
8299         burden off WebDatabaseManager and allows usage/quota operations on the SecurityOrigin object itself
8301         Also added a new subdirectory for Storage related API - Why are we afraid to add new directories to
8302         the WebKit tree?
8304         * Misc/WebSecurityOrigin.mm: Removed.
8305         * Misc/WebSecurityOriginInternal.h: Removed.
8306         * Misc/WebSecurityOriginPrivate.h: Removed.
8308         * Storage/WebDatabaseManager.mm: Work in terms of WebSecurityOrigin
8309         * Storage/WebDatabaseManagerPrivate.h:
8311         * Storage/WebSecurityOrigin.mm: Added.
8312         (-[WebSecurityOriginPrivate initWithProtocol:domain:port:]):
8313         (-[WebSecurityOriginPrivate initWithWebCoreSecurityOrigin:]):
8314         (-[WebSecurityOriginPrivate finalize]):
8315         (-[WebSecurityOriginPrivate dealloc]):
8316         (-[WebSecurityOrigin initWithProtocol:domain:]):
8317         (-[WebSecurityOrigin initWithProtocol:domain:port:]):
8318         (-[WebSecurityOrigin protocol]):
8319         (-[WebSecurityOrigin domain]):
8320         (-[WebSecurityOrigin port]):
8321         (-[WebSecurityOrigin usage]): 
8322         (-[WebSecurityOrigin quota]):
8323         (-[WebSecurityOrigin setQuota:]): Clients will set quotas on the WebSecurityOrigin object itself
8324         (-[WebSecurityOrigin dealloc]):
8325         (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:]):
8326         * Storage/WebSecurityOriginInternal.h: Added.
8327         * Storage/WebSecurityOriginPrivate.h: Added.
8329 2007-11-15  Brady Eidson  <beidson@apple.com>
8331         Reviewed by John
8333         Stubbing out everything required for a WebKit API for databases
8335         These interfaces seem to provide everything we need for UI and management at the browser level
8337         * Misc/WebDatabaseManager.h: Removed.
8338         * Misc/WebDatabaseManager.mm: Removed.
8339         * Misc/WebDatabaseManagerPrivate.h: Removed.
8341         * Misc/WebSecurityOrigin.mm: Added. Object that acts as a container for the "SecurityOrigin tuple"
8342           (protocol, domain, and port)
8343         (-[WebSecurityOriginPrivate initWithProtocol:domain:port:]):
8344         (-[WebSecurityOriginPrivate dealloc]):
8345         (-[WebSecurityOrigin initWithProtocol:domain:]):
8346         (-[WebSecurityOrigin initWithProtocol:domain:port:]):
8347         (-[WebSecurityOrigin protocol]):
8348         (-[WebSecurityOrigin domain]):
8349         (-[WebSecurityOrigin port]):
8350         (-[WebSecurityOrigin dealloc]):
8351         (-[WebSecurityOrigin _initWithWebCoreSecurityOriginData:WebCore::]):
8352         * Misc/WebSecurityOriginInternal.h: Added.
8353         * Misc/WebSecurityOriginPrivate.h: Added.
8355         * Storage/WebDatabaseManager.mm: Added.
8356         (+[WebDatabaseManager sharedWebDatabaseManager]):
8357         (-[WebDatabaseManager origins]):  Get a list of all origins currently tracked
8358         (-[WebDatabaseManager detailsForOrigin:]): Get the current usage and current quota for the given origin
8359         (-[WebDatabaseManager databasesWithOrigin:]): Get all databases for a certain origin
8360         (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Get all details about a specific database
8361         (-[WebDatabaseManager setQuota:forOrigin:]): Change origin-wide quota
8362         (-[WebDatabaseManager deleteAllDatabases]):
8363         (-[WebDatabaseManager deleteAllDatabasesWithOrigin:]):
8364         (-[WebDatabaseManager deleteDatabase:withOrigin:]):
8365         * Storage/WebDatabaseManagerPrivate.h: Added.
8366         * Storage/WebDatabaseManagerInternal.h: Added.
8367         (WebKitInitializeDatabasesIfNecessary): One-time initialization of database-related things
8369         * Storage/WebDatabaseTrackerClient.h: Added. Stubbed out client for notifications
8370         * Storage/WebDatabaseTrackerClient.mm: Added.
8371         (WebDatabaseTrackerClient::sharedWebDatabaseTrackerClient):
8372         (WebDatabaseTrackerClient::WebDatabaseTrackerClient):
8373         (WebDatabaseTrackerClient::~WebDatabaseTrackerClient):
8374         (WebDatabaseTrackerClient::dispatchDidModifyOrigin):
8375         (WebDatabaseTrackerClient::dispatchDidModifyDatabase):
8377         * WebView/WebView.mm:
8378         (-[WebView _commonInitializationWithFrameName:groupName:]): Do one-time initialization of
8379           Database-related things here
8381 2007-11-13  Geoffrey Garen  <ggaren@apple.com>
8383         Reviewed by Anders Carlsson.
8384         
8385         Renamed Shared to RefCounted.
8387         * ForwardingHeaders/wtf/RefCounted.h: Copied from WebKit/mac/ForwardingHeaders/wtf/Shared.h.
8388         * ForwardingHeaders/wtf/Shared.h: Removed.
8389         * WebCoreSupport/WebContextMenuClient.h:
8391 2007-11-13  Geoffrey Garen  <ggaren@apple.com>
8393         Reviewed by Sam Weinig.
8395         Moved Shared.h into wtf so it could be used in more places.
8397         * ChangeLog:
8398         * WebCoreSupport/WebContextMenuClient.h:
8400 2007-11-13  John Sullivan  <sullivan@apple.com>
8402         Reviewed by Darin Adler.
8404         removed recently-added PreferredType concept; we found a better way to do what
8405         ths was accomplishing
8407         * WebCoreSupport/WebChromeClient.mm:
8408         (WebChromeClient::createWindow):
8409         removed use of PreferredType
8411 2007-11-13  John Sullivan  <sullivan@apple.com>
8413         Reviewed by Dan Bernstein.
8414         
8415         - fixed <rdar://problem/5567954> REGRESSION (Safari 2-3): Autofill no longer automatically fills in 
8416         form fields other than the one you're typing into
8418         * WebCoreSupport/WebEditorClient.mm:
8419         (selectorForKeyEvent):
8420         correct the key identifier strings for Tab and Esc; these were updated in WebCore as part of r21445
8421         but didn't get updated here.
8423 2007-11-12  Josh Aas  <joshmoz@gmail.com>
8425         Reviewed by Darin Adler.
8427         - http://bugs.webkit.org/show_bug.cgi?id=15946
8428           add NPPValue NPPVpluginDrawingModel (Mozilla bug 403418 compat)
8430         * Plugins/WebBaseNetscapePluginView.mm:
8431         (-[WebBaseNetscapePluginView setVariable:value:]):
8433 2007-11-12  Alexey Proskuryakov  <ap@webkit.org>
8435         Reviewed by Darin Adler.
8437         http://bugs.webkit.org/show_bug.cgi?id=15954
8438         Move DOM Selection operations out of SelectionController
8440         * WebView/WebHTMLView.mm:
8441         (-[WebHTMLView _expandSelectionToGranularity:]):
8442         (-[WebHTMLView selectToMark:]):
8443         (-[WebHTMLView swapWithMark:]):
8444         * WebView/WebView.mm:
8445         (-[WebView setSelectedDOMRange:affinity:]):
8446         Adapted for SelectionController::setSelectedRange() now returning a bool.
8448 2007-11-12  Oliver Hunt  <oliver@apple.com>
8450         Reviewed by Darin and Geoff.
8452         <rdar://problem/5522011> The content of the password field of 
8453         Safari is displayed by reconversion.
8455         Some input methods (notably Kotoeri) can incorrectly provide 
8456         access to the raw text of a password field.  To work around 
8457         this we forcefully override the inputContext whenever a password
8458         field is active.
8460         * WebView/WebHTMLView.mm:
8461         (-[WebHTMLView inputContext]):
8463 2007-11-12  John Sullivan  <sullivan@apple.com>
8465         Reviewed by Tim Hatcher
8466         
8467         - speculative fix for <rdar://problem/5509989> CrashTracer: [USER] 1 crash in Safari at com.apple.WebKit: 
8468         -[WebPDFView(FileInternal) _updatePreferencesSoon] + 56
8469         
8470         The crash is probably due to messaging a dealloc'ed dataSource ivar. The dataSource ivar isn't retained
8471         by this class, but should be. (It is retained by WebHTMLView, e.g.).
8473         * WebView/WebPDFView.mm:
8474         (-[WebPDFView dealloc]):
8475         release dataSource ivar
8476         (-[WebPDFView setDataSource:]):
8477         retain dataSource ivar
8479 2007-11-09  Tristan O'Tierney  <tristan@apple.com>
8481         Reviewed by Timothy Hatcher.
8482         
8483         This patch is for the WebKit side of <rdar://problem/5591115>.
8484         We need a way to tell context menu navigations, such as "Open in New Window"
8485         to override any sort of browser preference for tab based navigation.
8487         * WebCoreSupport/WebChromeClient.mm:
8488         (WebChromeClient::createWindow):
8489         Pass up the new preferredType parameter as a string.
8490         
8491 2007-11-09  Timothy Hatcher  <timothy@apple.com>
8493         Reviewed by John.
8495         <rdar://problem/5103720> REGRESSION: [WebView stringByEvaluatingJavaScriptFromString:] fails if "return" is used
8497         Extend the linked on or after check to every application when a script passed to
8498         stringByEvaluatingJavaScriptFromString: has a return statement. Before the check
8499         was limited to VitalSource Bookshelf, but other developers are running into this.
8501         * Misc/WebKitVersionChecks.h: Add the WEBKIT_FIRST_VERSION_WITHOUT_JAVASCRIPT_RETURN_QUIRK define.
8502         * WebView/WebDocumentLoaderMac.mm:
8503         (needsDataLoadWorkaround): Use WEBKIT_FIRST_VERSION_WITHOUT_ADOBE_INSTALLER_QUIRK sicne the
8504           WebKitLinkedOnOrAfter check here was about the Adobe installer, not VitalSource.
8505         * WebView/WebView.mm:
8506         (-[WebView stringByEvaluatingJavaScriptFromString:]): Remove the bundle ID check and use
8507           WEBKIT_FIRST_VERSION_WITHOUT_JAVASCRIPT_RETURN_QUIRK for the WebKitLinkedOnOrAfter call.
8509 2007-11-08  Kevin McCullough  <kmccullough@apple.com>
8511         Build Fix.
8513         * WebCoreSupport/WebFrameLoaderClient.h:
8514         * WebCoreSupport/WebFrameLoaderClient.mm:
8515         (WebFrameLoaderClient::windowObjectCleared):
8517 2007-11-07  Darin Adler  <darin@apple.com>
8519         Reviewed by Steve.
8521         - removed some unused WebCore bridge methods
8523         * WebCoreSupport/WebFrameBridge.mm: Removed issueTransposeCommand and overrideMediaType.
8525         * WebCoreSupport/WebFrameLoaderClient.mm:
8526         (WebFrameLoaderClient::overrideMediaType): Changed to call WebView directly instead of
8527         using the bridge object.
8529 2007-11-06  Mark Rowe  <mrowe@apple.com>
8531         Rubber-stamped by Dave Kilzer.
8533         Move Mac files from WebKit into WebKit/mac.
8535         * Carbon: Copied from WebKit/Carbon.
8536         * ChangeLog: Copied from WebKit/ChangeLog.
8537         * ChangeLog-2002-12-03: Copied from WebKit/ChangeLog-2002-12-03.
8538         * ChangeLog-2006-02-09: Copied from WebKit/ChangeLog-2006-02-09.
8539         * ChangeLog-2007-10-14: Copied from WebKit/ChangeLog-2007-10-14.
8540         * Configurations: Copied from WebKit/Configurations.
8541         * DOM: Copied from WebKit/DOM.
8542         * DefaultDelegates: Copied from WebKit/DefaultDelegates.
8543         * ForwardingHeaders: Copied from WebKit/ForwardingHeaders.
8544         * History: Copied from WebKit/History.
8545         * Info.plist: Copied from WebKit/Info.plist.
8546         * MigrateHeaders.make: Copied from WebKit/MigrateHeaders.make.
8547         * Misc: Copied from WebKit/Misc.
8548         * Panels: Copied from WebKit/Panels.
8549         * Plugins: Copied from WebKit/Plugins.
8550         * PublicHeaderChangesFromTiger.txt: Copied from WebKit/PublicHeaderChangesFromTiger.txt.
8551         * Resources: Copied from WebKit/Resources.
8552         * WebCoreSupport: Copied from WebKit/WebCoreSupport.
8553         * WebInspector: Copied from WebKit/WebInspector.
8554         * WebKit.exp: Copied from WebKit/WebKit.exp.
8555         * WebKit.order: Copied from WebKit/WebKit.order.
8556         * WebKitPrefix.h: Copied from WebKit/WebKitPrefix.h.
8557         * WebView: Copied from WebKit/WebView.
8558         * icu: Copied from WebKit/icu.
8560 2007-11-06  Alexey Proskuryakov  <ap@webkit.org>
8562         Reviewed by Darin Adler.
8564         http://bugs.webkit.org/show_bug.cgi?id=15847
8565         Some editing cleanup
8567         No change in functionality.
8569         * WebView/WebHTMLView.mm:
8570         (-[WebHTMLView deleteToEndOfLine:]):
8571         (-[WebHTMLView deleteToEndOfParagraph:]):
8572         WebCore had a duplicate of the same logic already. We are passing a boundary value to
8573         a function that expects granularity, this may need to be straightened out in the future.
8575 2007-11-05  John Sullivan  <sullivan@apple.com>
8577         * WebView/WebView.mm:
8578         (-[WebView _searchWithSpotlightFromMenu:]):
8580         Teeny style tweak to test svn access on other machine
8582 2007-11-05  John Sullivan  <sullivan@apple.com>
8584         * WebView/WebView.mm:
8585         (-[WebView computedStyleForElement:pseudoElement:]):
8586         
8587         Teeny style tweak to test svn access
8589 2007-11-02  Tristan O'Tierney  <tristan@apple.com>
8591         Reviewed by Darin Adler.
8593         * DefaultDelegates/WebDefaultUIDelegate.m:
8594         (-[WebDefaultUIDelegate webView:createWebViewWithRequest:windowFeatures:]):
8595         Forward the UI delegate to call webView:createWebViewWithRequest: if
8596         this method doesn't exist.
8597         
8598         * WebCoreSupport/WebFrameLoaderClient.mm:
8599         (WebFrameLoaderClient::dispatchCreatePage):
8600         * Plugins/WebBaseNetscapePluginView.mm:
8601         (-[WebBaseNetscapePluginView loadPluginRequest:]):
8602         * WebView/WebView.mm:
8603         (-[WebView _openNewWindowWithRequest:]):
8604         Revised to use new webView:createWebViewWithRequest:windowFeatures: callback.
8605         
8606         * WebCoreSupport/WebChromeClient.h:
8607         * WebCoreSupport/WebChromeClient.mm:
8608         (WebChromeClient::createWindow):
8609         Added a new createWindow that accepts 3 parameters, so we can pass up windowFeatures to the chrome.
8610         Removed createModalDialog to use new createWindow function.
8611         
8612         * WebView/WebUIDelegatePrivate.h:
8613         Added new webView:createWebViewWithRequest:windowFeatures: method.
8615 2007-11-05  Geoffrey Garen  <ggaren@apple.com>
8617         Reviewed by Darin Adler.
8618         
8619         http://bugs.webkit.org/show_bug.cgi?id=15835
8621         Small adaptations to new KJS::List class.
8623         * ForwardingHeaders/kjs/value.h: Added.
8625 2007-11-03  David D. Kilzer  <ddkilzer@webkit.org>
8627         Sort files(...); sections of Xcode project files.
8629         Rubber-stamped by Darin Adler.
8631         * WebKit.xcodeproj/project.pbxproj:
8633 2007-11-02  Antti Koivisto  <antti@apple.com>
8635         Reviewed by Darin Adler.
8636         
8637         Add method to enable video composition.
8639         * WebCoreSupport/WebSystemInterface.m:
8640         (InitWebCoreSystemInterface):
8642 2007-11-02  Darin Adler  <darin@apple.com>
8644         Reviewed by Mitz.
8646         - fix problem I ran into while doing some testing on Mac for
8647           <rdar://problem/5530185> WebKit does not show <object>
8648           fallback content when both URL and MIME type is omitted
8650         I don't know how to reproduce this failure in DumpRenderTree, so there is no
8651         regression test.
8653         * Plugins/WebNullPluginView.h: Removed some unneeded declarations, including
8654         the didSendError local variable. Instead we just set the error to nil once
8655         we've sent it.
8656         * Plugins/WebNullPluginView.mm:
8657         (-[WebNullPluginView initWithFrame:error:DOMElement:]): Refactored so that
8658         the null plug-in image code is separate from the rest of the function and
8659         so that the whole thing is not inside an if statement. Also don't hold a
8660         reference to the DOM element if there is no error to report.
8661         (-[WebNullPluginView reportFailure]): Added. Does the actual delegate
8662         callback. Happens back at the top level of the run loop so it doesn't
8663         fire deep inside layout. Also wrote this so that it is guaranteed not to
8664         reenter and so that it can handle the case where the delegate destroys
8665         the world (including this object). NOTE: This is not a real, general
8666         solution to the problem of plug-ins that do work inside layout. We will need
8667         a more general fix that works for other plug-ins, and we'll track that with
8668         a separate bug report.
8669         (-[WebNullPluginView viewDidMoveToWindow]): Removed most of the code;
8670         changed so it just does a performSelector:afterDelay:0.
8672 2007-11-02  Mark Rowe  <mrowe@apple.com>
8674         Reviewed by Darin Adler.
8676         Fix http://bugs.webkit.org/show_bug.cgi?id=15780
8677         Bug 15780: WebFrameLoaderClient: WebActionElementKey wrong if view is scrolled
8679         * WebCoreSupport/WebFrameLoaderClient.mm:
8680         (WebFrameLoaderClient::actionDictionary): Retrieve the mouse event coordinates
8681         in the page coordinate system rather than the client area coordinate system.
8683 2007-11-01  Dan Bernstein  <mitz@apple.com>
8685         Reviewed by Oliver Hunt.
8687         - fix an assertion failure when Command-Tabbing out of Safari
8689         * WebView/WebHTMLView.mm:
8690         (-[WebHTMLView flagsChanged:]): Avoid passing key code 0 down to
8691         WebCore.
8693 2007-11-01  Justin Garcia  <justin.garcia@apple.com>
8695         Reviewed by Oliver Hunt.
8696         
8697         <rdar://problem/5195056> Huge plain text pastes are slow, time spent in ApplyStyleCommand::doApply
8698         
8699         No need to match style when pasting plain text, since the fragment we build for plain text
8700         won't have any style information on it.
8702         * WebView/WebHTMLView.mm:
8703         (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]): There's no
8704         longer a need to know whether this function chosePlaintext.
8705         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
8706         (-[WebHTMLView _documentFragmentFromPasteboard:]):
8708 2007-10-31  Timothy Hatcher  <timothy@apple.com>
8710         Reviewed by John Sullivan.
8712         Move the developer extras preference to WebPreferences.
8714         * WebView/WebPreferenceKeysPrivate.h: Add WebKitDeveloperExtrasEnabledPreferenceKey
8715         * WebView/WebPreferences.m:
8716         (+[WebPreferences initialize]): Initialize WebKitDeveloperExtrasEnabledPreferenceKey to NO.
8717         (-[WebPreferences developerExtrasEnabled]): Check DisableWebKitDeveloperExtras, WebKitDeveloperExtras
8718           and IncludeDebugMenu in addition to WebKitDeveloperExtrasEnabledPreferenceKey.
8719         (-[WebPreferences setDeveloperExtrasEnabled:]): Set WebKitDeveloperExtrasEnabledPreferenceKey.
8720         * WebView/WebPreferencesPrivate.h: Add developerExtrasEnabled and setDeveloperExtrasEnabled:.
8721         * WebView/WebView.mm:
8722         (+[WebView _developerExtrasEnabled]): Removed.
8723         (-[WebView _preferencesChangedNotification:]): Check the WebPreferences object for developerExtrasEnabled.
8724         * WebView/WebViewPrivate.h: Removed _developerExtrasEnabled.
8726 2007-10-30  David D. Kilzer  <ddkilzer@webkit.org>
8728         Generated files missing from WebCore's Xcode project file
8729         <http://bugs.webkit.org/show_bug.cgi?id=15406>
8731         Reviewed by Darin Adler.
8733         Added the following private header files to MigrateHeaders.make:
8735         - DOMCSSStyleSheetPrivate.h
8736         - DOMEventPrivate.h
8737         - DOMHTMLCollectionPrivate.h
8738         - DOMHTMLEmbedElementPrivate.h
8739         - DOMHTMLIFrameElementPrivate.h
8740         - DOMHTMLObjectElementPrivate.h
8741         - DOMHTMLSelectElementPrivate.h
8743         * MigrateHeaders.make:
8745 2007-10-29  Antti Koivisto  <antti@apple.com>
8747         Reviewed by Maciej.
8748         
8749         Some SPIs for media support.
8751         * WebCoreSupport/WebSystemInterface.m:
8752         (InitWebCoreSystemInterface):
8754 2007-10-29  Timothy Hatcher  <timothy@apple.com>
8756         Reviewed by John Sullivan.
8758         Various semi-related changes:
8759         - A WebView can now be asked for it's WebInspector. There is one
8760           WebInspector per WebView. 
8761         - Refactor the WebInspector class and move obsolete methods to
8762           a special category.
8763         - Add new WebInspector methods to show, hide and show the
8764           console/timeline panels.
8765         - Add an isDisabled method to WebCache.
8766         - Allow WebLocalizableStrings.h to be used in C files.
8768         * Misc/WebCache.h: Add isDisabled.
8769         * Misc/WebCache.mm:
8770         (+[WebCache isDisabled]): New method.
8772         * Misc/WebLocalizableStrings.h: Changes to allow use in plain C files.
8774         * WebCoreSupport/WebInspectorClient.mm:
8775         (-[WebInspectorWindowController showWindow:]): Call super if already visible
8776           so the window will be ordered front.
8777         (-[WebInspectorWindowController showWebInspector:]): Method used by menu items,
8778           so they are enabled and work when the Inspector window is key.
8779         (-[WebInspectorWindowController showErrorConsole:]): Ditto.
8780         (-[WebInspectorWindowController showNetworkTimeline:]): Ditto.
8782         * WebInspector/WebInspector.h: Add and remove methods.
8783         * WebInspector/WebInspector.mm:
8784         (-[WebInspector webViewClosed]): Called when the WebView is closed/dealloced.
8785           Clears the _webView pointer.
8786         (-[WebInspector show:]): Calls thru to the Page's InspectorController.
8787         (-[WebInspector showConsole:]): Ditto.
8788         (-[WebInspector showTimeline:]): Ditto.
8789         (-[WebInspector close:]): Ditto.
8790         (-[WebInspector attach:]): Ditto.
8791         (-[WebInspector detach:]): Ditto.
8792         (+[WebInspector sharedWebInspector]): Moved to the obsolete category.
8793         (+[WebInspector webInspector]): Ditto.
8794         (-[WebInspector setWebFrame:]): Ditto.
8795         (-[WebInspector window]): Ditto.
8796         (-[WebInspector showWindow:]): Ditto.
8798         * WebView/WebView.mm:
8799         (-[WebViewPrivate dealloc]): Release the WebInspector.
8800         (-[WebView _close]): Call webViewClosed on the WebInspector.
8801         (-[WebView inspector]): Create a WebInspector if needed and return it.
8802         * WebView/WebViewPrivate.h: Add the inspector method.
8804 2007-10-30  Adele Peterson  <adele@apple.com>
8806         Reviewed by Darin Adler.
8808         WebKit part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
8809         <rdar://problem/5103625> REGRESSION: Caps lock icon should show in password fields
8811         * WebView/WebHTMLView.mm:
8812         (-[WebHTMLView flagsChanged:]): Call capsLockStateMayHaveChanged so WebCore knows it may have to update a password field.
8813         (+[WebHTMLView _postFlagsChangedEvent:]): Added a comment with a Radar number for why this isn't just in flagsChanged.
8814         (-[WebHTMLView scrollWheel:]): Instead of calling the next responder explicitly, we can just call super, which will take care of this.
8816 2007-10-27  Mark Ambachtsheer  <mark.a@apple.com>
8818         Reviewed by Darin Adler.
8820         Fix for bug 15710, When QD plugins draw to an offscreen bitmap and the plugin is not at 
8821         (0, 0) the clipping rectangle is not correct.
8822         Added the origin to the window clip rectangle coordinates to account for plugins that
8823         don't originate at (0,0); affects code for offscreen GWorlds only.
8825         * Plugins/WebBaseNetscapePluginView.mm:
8826         (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
8828 2007-10-26  Adele Peterson  <adele@apple.com>
8830         Reviewed by Oliver.
8832         Adding WebKitSystemInterface support for the caps lock indicator
8834         * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
8836 2007-10-25  David Hyatt  <hyatt@apple.com>
8838         Fix for bug 15672, backgrounds don't tile properly inside transforms.  This patch fixes tiling
8839         of backgrounds inside CSS transforms and also of HTML content with background images inside SVG
8840         transforms.
8842         Reviewed by aroben and mmitz
8844         * WebCoreSupport/WebSystemInterface.m:
8845         (InitWebCoreSystemInterface):
8846         * WebKit.xcodeproj/project.pbxproj:
8848 2007-10-25  John Sullivan  <sullivan@apple.com>
8850         Reviewed by Tim Hatcher
8851         
8852         Removed the support for toggling whether WebKit uses the 10.5 PDFKit improvements. Now it
8853         always does, when available.
8855         * WebView/WebPreferencesPrivate.h:
8856         removed _usePDFPreviewView and _setUsePDFPreviewView:. Note that these were guarded with
8857         a comment that says that they can be removed when no longer needed. That time is now.
8859         * WebView/WebPreferences.m:
8860         (+[WebPreferences initialize]):
8861         removed WebKitUsePDFPreviewViewPreferenceKey
8862         (-[WebPreferences _usePDFPreviewView]):
8863         removed
8864         (-[WebPreferences _setUsePDFPreviewView:]):
8865         removed
8867         * WebView/WebPDFView.mm:
8868         (-[WebPDFView initWithFrame:]):
8869         don't check _usePDFPreviewView
8870         
8871         * WebView/WebPreferenceKeysPrivate.h:
8872         removed WebKitUsePDFPreviewViewPreferenceKey
8873         
8874 2007-10-24  Timothy Hatcher  <timothy@apple.com>
8876         Reviewed by Mark Rowe.
8878         <rdar://problem/5069711> OpenSource version of libWebKitSystemInterface.a is Tiger only, causes issues if used on Leopard
8880         Use the WebKitSystemInterface that matches the system version.
8882         * Configurations/DebugRelease.xcconfig:
8883         * WebKit.xcodeproj/project.pbxproj:
8885 2007-10-24  Brady Eidson  <beidson@apple.com>
8887         Reviewed by Anders
8889         <rdar://problem/5554130> DatabaseTracker.o has a global initializer
8891         * Misc/WebDatabaseManager.mm:
8892         (WebKitSetWebDatabasesPathIfNecessary): Call the member function instead of a static one
8894 2007-10-23  Mark Rowe  <mrowe@apple.com>
8896         Build fix for Eric's build fix in r26916.
8898         * MigrateHeaders.make:
8900 2007-10-22  Eric Seidel  <eric@webkit.org>
8902         Reviewed by Maciej.
8904         * MigrateHeaders.make: copy over font-face related DOM headers
8906 2007-10-22  Andrew Wellington  <proton@wiretapped.net>
8908         Reviewed by Mark Rowe.
8909         
8910         Fix for local database support after r26879
8911         Ensure that ENABLE_DATABASE and ENABLE_ICONDATABASE are correctly set
8913         * Configurations/WebKit.xcconfig:
8915 2007-10-19  Brady Eidson <beidson@apple.com>
8917         Reviewed by Tim Hatcher
8919         Added support for Chrome prompts required by the Storage API
8920         Added support API for future managing of databases from the WebKit client
8921         Added preference and initialization for the databases path
8923         * Misc/WebDatabaseManager.h: Added.  WebDatabaseManager is how a WebKit application can list and
8924           remove the current available databases
8925         * Misc/WebDatabaseManager.mm: Added.
8926         (+[WebDatabaseManager origins]):
8927         (+[WebDatabaseManager databasesWithOrigin:]):
8928         (+[WebDatabaseManager deleteAllDatabases]):
8929         (+[WebDatabaseManager deleteAllDatabasesWithOrigin:]):
8930         (+[WebDatabaseManager deleteDatabaseWithOrigin:named:]):
8931         (WebKitSetWebDatabasesPathIfNecessary): Setup the database path
8932         * Misc/WebDatabaseManagerPrivate.h: Added.
8934         * WebCoreSupport/WebChromeClient.h: Support for calling the delegate to run the prompt for 
8935           an origin exceeding its size limit
8936         * WebCoreSupport/WebChromeClient.mm:
8937         (WebChromeClient::runDatabaseSizeLimitPrompt):
8938         * WebKit.xcodeproj/project.pbxproj:
8939         * WebView/WebUIDelegate.h:
8941         * WebView/WebView.mm:
8942         (-[WebView _commonInitializationWithFrameName:groupName:]): Setup the database path
8943         * WebView/WebViewInternal.h:
8945 2007-10-19  John Sullivan  <sullivan@apple.com>
8947         Reviewed by Tim Hatcher
8948         
8949         - fixed <rdar://problem/5540325> REGRESSION (2.0.4-3): History menu looks odd after clearing history
8951         * History/WebHistory.mm:
8952         (-[WebHistoryPrivate removeAllItems]):
8953         This was fallout from r25275. We need to clear the orderedLastVisitedDays cache here, in addition
8954         to the other places where it's cleared.
8956 2007-10-18  Dan Bernstein  <mitz@apple.com>
8958         Tiger build fix.
8960         * WebView/WebDataSource.mm:
8961         (-[WebDataSource _MIMETypeOfResponse:]):
8963 2007-10-18  Dan Bernstein  <mitz@apple.com>
8965         Reviewed by Adam Roben.
8967         - fix <rdar://problem/5313523>
8968         REGRESSION(Leopard): http/tests/incremental/slow-utf8-text.pl fails on Leopard
8970         * WebCoreSupport/WebFrameLoaderClient.mm:
8971         (WebFrameLoaderClient::makeDocumentView): Changed to use _responseMIMEType.
8972         * WebView/WebDataSource.mm:
8973         (-[WebDataSource _MIMETypeOfResponse:]): Added. Works around
8974         <rdar://problem/5321972> by testing for the case of an NSHTTPURLResponse
8975         with a MIMEType of application/octet-stream and a Content-Type header
8976         starting with text/plain and returning text/plain as the MIME type in
8977         that case.
8978         (-[WebDataSource _responseMIMEType]): Added. Used to get the correct
8979         response MIME type.
8980         (-[WebDataSource _isDocumentHTML]): Changed to use _responseMIMEType.
8981         (-[WebDataSource _makeRepresentation]): Ditto.
8982         (-[WebDataSource mainResource]): Ditto.
8983         (-[WebDataSource subresources]): Changed to use _MIMETypeOfResponse and
8984         pass the MIME type explicitly.
8985         (-[WebDataSource subresourceForURL:]): Ditto.
8986         * WebView/WebDataSourcePrivate.h:
8987         * WebView/WebFrameView.mm:
8988         (-[WebFrameView _makeDocumentViewForDataSource:]): Changed to use
8989         _responseMIMEType.
8990         * WebView/WebResource.mm:
8991         (-[WebResource _initWithData:URL:response:MIMEType:]): Changed this
8992         method to take a MIME type instead of extracting it from the response,
8993         so that WebDataSource could pass the correct MIME type.
8994         * WebView/WebResourcePrivate.h:
8996 2007-10-17  Darin Adler  <darin@apple.com>
8998         Reviewed by Mark Rowe.
9000         - fix <rdar://problem/5183775> Uninitialized memory in -[WebDynamicScrollBarsView updateScrollers]
9002         * WebView/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView updateScrollers]):
9003         Change code path so it doesn't dispatch a method that returns an NSSize passing a nil object.
9004         It's safe to do that for functions that return integers or pointers, but not structures.
9006 2007-10-16  David Kilzer  <ddkilzer@apple.com>
9008         Reviewed by Timothy.
9010         <rdar://problem/5544354> Wrong delegate method called in
9011         WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad()
9013         * WebCoreSupport/WebFrameLoaderClient.mm:
9014         (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): Fixed selector name.
9016 2007-10-16  Darin Adler  <darin@apple.com>
9018         Reviewed by Adele.
9020         - moved transpose command implementation into WebCore
9022         * WebView/WebHTMLView.mm: Removed transpose: and replaced it with standard WebCore forwarding.
9024 2007-10-16  Darin Adler  <darin@apple.com>
9026         Reviewed by Maciej and Geoff (and looked over by Eric).
9028         - http://bugs.webkit.org/show_bug.cgi?id=15519
9029           eliminate use of <ctype.h> for processing ASCII
9031         * ForwardingHeaders/wtf/ASCIICType.h: Added.
9032         * ForwardingHeaders/wtf/DisallowCType.h: Added.
9034         * WebKitPrefix.h: Include DisallowCType.h.
9036         * Misc/WebNSURLExtras.mm: (-[NSURL _web_URLWithLowercasedScheme]): Use toASCIILower.
9037         * WebView/WebHTMLView.mm:
9038         (-[WebHTMLView callWebCoreCommand:]): Use toASCIIUpper.
9039         (-[WebTextCompleteController filterKeyDown:]): Add a list of specific character codes,
9040         instead of using ispunct.
9042 2007-10-16  John Sullivan  <sullivan@apple.com>
9044         Reviewed by Adam Roben
9045         
9046         Cleaned up localizable strings
9048         * English.lproj/Localizable.strings:
9049         updated
9050         * StringsNotToBeLocalized.txt:
9051         updated
9052         * WebKit.xcodeproj/project.pbxproj:
9053         StringsNotToBeLocalized.txt recently moved but project file wasn't updated to match; now it is
9055 2007-10-15  Kevin Decker  <kdecker@apple.com>
9057         Reviewed by Darin Adler.
9058         
9059         Fixed: <rdar://problem/5520541> REGRESSION: Broken image when forwarding certain email on Tiger
9060         
9061         * WebCoreSupport/WebFrameBridge.mm: The problem was that we were loading Mail's WebKit plug-in
9062         too soon, which borked some necessary housekeeping on behalf of Mail. The fix is to add a quirk
9063         that treats Tiger Mail's WebKit plug-in like a Netscape plug-in, thus ensuring the plug-in will
9064         load during first layout and not attach time. For this plug-in, loading at first layout is 
9065         expected and is consistent with Safari 2 behavior.
9067 2007-10-15  John Sullivan  <sullivan@apple.com>
9069         Reviewed by Geoff Garen
9070         
9071         Replaced NS_DURING/NS_HANDLER with @try/@catch throughout WebKit
9073         I made the following changes:
9074         - replaced NS_DURING with @try, and added opening brace if there wasn't one
9075         - replaced NS_HANDLER with @catch (NSException *localException), and added braces if there weren't any
9076         - removed NS_ENDHANDLER, and added a closing brace if there wasn't one
9077         - in a couple of places, fixed indentation therein
9079         * Misc/WebIconDatabase.mm:
9080         (objectFromPathForKey):
9081         * WebView/WebHTMLView.mm:
9082         (-[WebHTMLView drawSingleRect:]):
9083         (-[WebHTMLView beginDocument]):
9084         (-[WebHTMLView deleteToMark:]):
9085         * WebView/WebView.mm:
9086         (-[WebView initWithCoder:]):
9088 == Rolled over to ChangeLog-2007-10-14 ==