diff -r 000000000000 -r dd21522fd290 webengine/osswebengine/WebKit/ChangeLog-2007-10-14 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/webengine/osswebengine/WebKit/ChangeLog-2007-10-14 Mon Mar 30 12:54:55 2009 +0300 @@ -0,0 +1,24451 @@ +2007-10-11 Mark Rowe + + Reviewed by Tim Hatcher. + + Fix for . Disable debugging symbols in production builds for 10.4 + PowerPC to prevent a huge STABS section from being generated. + + * Configurations/Base.xcconfig: + +2007-10-10 Alice Liu + + Reviewed by Geoff Garen. + + Fixed Crash when running fast/frames/onload-remove-iframe-crash.html in DRT + createFrame() now returns a RefPtr instead of a raw Frame pointer. + Making this change improves the way we handle frames on Windows WebKit. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::createFrame): + +2007-10-04 Beth Dakin + + Reviewed by John Sullivan. + + Fix for REGRESSION (r25142, Tiger only): + Vertical scroll bar not redrawn properly when going back in history + (15033) + + This fix if-defs r25142 to be Leopard-only since it causes + correctness issues on Tiger and does not seem to have any + performance impact on Tiger either. + + * WebView/WebDynamicScrollBarsView.m: + (-[WebDynamicScrollBarsView setScrollBarsSuppressed:repaintOnUnsuppress:]): + (-[WebDynamicScrollBarsView reflectScrolledClipView:]): + +2007-10-04 Mark Rowe + + Reviewed by Oliver. + + Switch to default level of debugging symbols to resolve . + The "full" level appears to offer no observable benefits even though the documentation + suggests it be used for dead code stripping. This should also decrease link times. + + * Configurations/Base.xcconfig: + +2007-10-04 Adele Peterson + + Reviewed by Darin. + + WebKit part of fix for REGRESSION: Can't tab to webview that doesn't have editable content + + * WebView/WebHTMLView.mm: (-[WebHTMLView becomeFirstResponder]): Pass in the FocusDirection. + +2007-10-04 Darin Adler + + * WebView/WebHTMLView.mm: (-[WebHTMLView _updateActiveState]): + Removed a bogus comment. + +2007-10-02 Kevin Decker + + Reviewed by Mark Rowe. + + Re-added _minimumRequiredSafariBuildNumber. It turns out older version of Safari still rely + on this method, so we need to keep it around at least until the next major Safari release. + + * StringsNotToBeLocalized.txt: + * WebView/WebView.mm: + (+[WebView _minimumRequiredSafariBuildNumber]): + * WebView/WebViewPrivate.h: + +2007-10-02 Kevin Decker + + Reviewed by John Sullivan. + + + + * WebView/WebView.mm: Removed -[WebView _minimumRequiredSafariBuildNumber] because newer + versions of Safari no longer use this method. This won't break existing Safaris because + they always use a respondsToSelector check before calling this. + + * WebView/WebViewPrivate.h: Ditto. + +2007-09-27 John Sullivan + + Reviewed by Ollie + + - fixed REGRESSION (5522-5523.9): Safari leaks every browser window + + The leak started occurring when we removed the code to clear the delegates and the host window + from Safari as part of the fix for 5479443. But it turns out that Safari code was masking a + bug here in WebView: setHostWindow:nil needs to be called before setting _private->closed to + YES, or it will do nothing at all, causing a world leak due to a circular reference between + the window and the WebView. + + I toyed with a more complex fix, but this is the simplest one that retains the fix for 5479443 + while otherwise restoring the code order to be as close as possible to what it was before + 5479443 was fixed. + + * WebView/WebView.mm: + (-[WebView _close]): + Moved the call that sets _private->closed to YES to be after the code that clears the delegates + and the host window. Added a comment about this order. + +2007-09-27 Kevin Decker + + Rubber stamped by Darin. + + + + * WebKit.order: Added. + * WebKit.xcodeproj/project.pbxproj: We're changing from using an order file built by + another team to using one we actually check into our project repository. Linker settings for + Symbol Ordering Flags have been updated accordingly. + +2007-09-26 Geoffrey Garen + + Reviewed by Adele Peterson. + + Fixed Promote cache model SPI to API + + Promoted cache model SPI to API. This was just a move, with some small + edits to the documentation (changing 'application' to 'WebView' in + some cases, since the interface is now per-WebView). + + * WebView/WebPreferences.h: + * WebView/WebPreferences.m: + (-[WebPreferences setCacheModel:]): + (-[WebPreferences cacheModel]): + * WebView/WebPreferencesPrivate.h: + +2007-09-24 Timothy Hatcher + + Reviewed by Darin. + + Photoshop CS3: Adobe Help Viewer 1.1 crashes in 9A553 + + WebKit started calling the mouseDidMoveOverElement delegate method with a nil dictionary in r14982. + We originally intended to call this delegate method sometimes with a nil dictionary, but due to + a bug dating back to WebKit 1.0 this delegate was never called with nil! Unfortunately we can't + start calling this with nil since it will break Adobe Help Viewer, and possibly other clients. + + * WebView/WebView.mm: + (-[WebView _mouseDidMoveOverElement:modifierFlags:]): + +2007-09-21 Kevin Decker + + * Plugins/WebBaseNetscapePluginView.mm: Build fix. + The first argument of aglChoosePixelFormat() has changed from const AGLDevice *gdevs on Tiger to + const void *gdevs on Leopard. + +2007-09-20 Kevin Decker + + Reviewed by Darin Adler. + + + + Reduced launch time by lazily linking both the AGL and OpenGL frameworks until they are really needed. + + * Plugins/WebBaseNetscapePluginView.mm: Soft link all AGL and OpenGL functions used by + WebBaseNetscapePluginView. + + * WebKit.xcodeproj/project.pbxproj: Removed AGL and OpenGL from the project. + +2007-09-20 John Sullivan + + Build fix for stoooopid old PPC gcc compiler + + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::checkSpellingOfString): + replace perfectly valid ?: syntax with if/else + +2007-09-19 John Sullivan + + Reviewed by Darin Adler. + + - WebKit part of speculative fix for , about crashes constructing a + String using the values filled in by checkSpellingOfString() + + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::checkSpellingOfString): + convert NSNotFound to -1, since WebCore code expects -1 for this purpose. We already do this + in checkGrammarOfString. + +2007-09-19 Kevin Decker + + Reviewed by Darin Adler. + + soft link Accelerate.framework + + * Misc/WebGraphicsExtras.c: + (WebConvertBGRAToARGB): Improve launch time performance and reduce vsize + footprint by soft linking the Accelerate.framework. + * WebKit.xcodeproj/project.pbxproj: Remove no longer needed frameworks. + +2007-09-18 Geoffrey Garen + + Reviewed by Darin Adler. + + Fixed In some cases, WebKit can make the + Foundation disk cache way too big or way too small + + Use the actual location of the foundation disk cache, rather than + the user's home directory, when determining how big to make it. + + * WebView/WebView.mm: + (+[WebView _setCacheModel:]): + +2007-09-17 Geoffrey Garen + + Reviewed by Darin Adler. + + Fixed a hang due to an infinite script running in the window's unload + event handler, which may be the cause of + REGRESSION: Hang due to infinite JS recursion on close @ engadget.com + (onunload-based ad) + + * WebView/WebUIDelegatePrivate.h: Added FIXME. + + * WebView/WebView.h: Clarified headerdoc ambiguity about when delegate + methods stop firing. + + * WebView/WebView.mm: + (-[WebView _close]): The fix: don't nil out our delegates until after + detaching the FrameLoader, because the act of detaching the FrameLoader + might fire important delegate methods, like webViewShouldInterruptJavaScript:. + Don't do other tear-down either, because the unload event handler needs + to run in a fully constructed page. + + This change is fairly low risk because niling out our delegates is a + very recent, never-shipped feature in WebKit, so it's unlikely that any + apps rely on it in a crazy way. + +2007-09-15 Darin Adler + + Reviewed by John Sullivan. + + - fix REGRESSION: Can't drag images from Safari to applications + in the dock (Tiger Preview, others in Leopard) + + * Misc/WebNSPasteboardExtras.mm: + (-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]): + Re-implement code here that has been missing for the last couple of years since we + did some image refactoring. Was pretty easy now that we can freely call C++ code + in WebKit. + +2007-09-14 Mark Rowe + + Build fix for Tiger. + + * WebView/WebArchive.m: + (-[WebArchive initWithCoder:]): Use @catch(id) rather than @catch(...). + * WebView/WebPreferences.m: + (-[WebPreferences initWithCoder:]): Ditto. + * WebView/WebResource.mm: + (-[WebResource initWithCoder:]): Ditto. + (-[WebResource _initWithPropertyList:]): Ditto. + +2007-09-14 Darin Adler + + Reviewed by Geoff Garen and Tim Hatcher. + + - fixed initFromCoder: and initWithPropertyList: functions + should guard against incorrect types + + * WebView/WebArchive.m: + (isArrayOfClass): Added helper function. + (-[WebArchive _initWithPropertyList:]): Tweaked function to remove the need for a + type cast. + (-[WebArchive initWithCoder:]): Added type checking for the main resource, + subresources array, and subframe archives array. Also replaced NS_DURING with @try. + * WebView/WebPreferences.m: (-[WebPreferences initWithCoder:]): Added type checking + for the identifier and the values dictionary, including ensuring that it's a mutable + dictionary. + * WebView/WebResource.mm: + (-[WebResource initWithCoder:]): Added type checking for all the fields. + (-[WebResource _initWithPropertyList:]): Added type checking for the NSURLResponse. + + * WebKit.exp: Removed accidentally exported internal symbol; I checked and it's not + used anywhere. + +2007-09-13 Darin Adler + + Reviewed by Oliver. + + - fix REGRESSION: Input method inline hole is mishandled in text + elements with maxlength limit + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _selectionChanged]): Tweaked code a bit. + (-[WebHTMLView markedRange]): Simplified logic, since markedTextNSRange works when there's + no composition range. + (-[WebHTMLView hasMarkedText]): Call directly to Editor instead of bridge. + (-[WebHTMLView unmarkText]): Call new confirmComposition to make it clear that this is + confirming text, not just unmarking it to discard it. + (extractUnderlines): Added. Converts directly from an NSAttributedString to the + CompositionUnderline vector that's used by WebCore. + (-[WebHTMLView setMarkedText:selectedRange:]): Changed to use the new setComposition. + (-[WebHTMLView insertText:]): Changed to use confirmComposition when appropriate, instead + of relying on special behavior of Editor::insertText. + (-[WebHTMLView _updateSelectionForInputManager]): Rewrote to use getCompositionSelection + and confirmCompositionWithoutDisturbingSelection. + + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + Removed obsolete markedTextAbandoned function. + +2007-09-12 David Kilzer + + Rubber-stamped by Darin and reviewed by Adam. + + Removed import of unused icon database headers. + + * WebCoreSupport/WebFrameBridge.mm: + +2007-09-11 Timothy Hatcher + + Reviewed by Darin. + + Remove the unused class_getMethodImplementation function. + + * Misc/WebNSObjectExtras.h: + +2007-09-11 Geoffrey Garen + + Reviewed by Oliver Hunt. + + Fixed CFNetwork version check so it actually works. + + * Misc/WebKitVersionChecks.h: + * WebView/WebView.mm: + (+[WebView _setCacheModel:]): Don't use NSVersionOfLinkTimeLibrary because + we don't link against CFNetwork directly, so it returns -1. Also, use + the proper hex encoding instead of decimal numbers. + +2007-09-11 Darin Adler + + - redo fix for REGRESSION (TOT): Crash in FrameLoadDelegate loading stationery + + * WebView/WebView.mm: + (getMethod): Added. + (-[WebView _cacheResourceLoadDelegateImplementations]): Use getMethod. + (-[WebView _cacheFrameLoadDelegateImplementations]): Ditto. + +2007-09-11 Darin Adler + + Rubber-stamped by Dave Harrison. + + * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): + Removed wkCreateURLPasteboardFlavorTypeName and wkCreateURLNPasteboardFlavorTypeName. + +2007-09-11 Darin Adler + + Reviewed by Mark Rowe. + + - fix REGRESSION (TOT): Crash in FrameLoadDelegate loading stationery + + * Misc/WebNSObjectExtras.h: + (class_getMethodImplementation): Added. + (method_setImplementation): Added. + + * WebView/WebHTMLView.mm: (+[WebHTMLViewPrivate initialize]): + * Carbon/HIViewAdapter.m: (+[HIViewAdapter bindHIViewToNSView:nsView:]): + Remove old-ObjC code path, since WebNSObjectExtras.h now implements everything we need. + + * WebView/WebView.mm: + (-[WebView _cacheResourceLoadDelegateImplementations]): Don't bother doing a separate + respondsToSelector call, since class_getMethodImplementation will return 0 for selectors + that we don't respond to. The bug fix is to actually set the cached pointer to 0. + Also get rid of the unnecessary use of a macro; instead use the functions from + WebNSObjectExtras.h on Tiger and the appropriate function directly on Leopard. + (-[WebView _cacheFrameLoadDelegateImplementations]): Ditto. + +2007-09-11 Darin Adler + + Reviewed by Sam, Ollie. + + * WebView/WebView.mm: (+[WebView _setCacheModel:]): A slightly cleaner 64-bit + fix for the NSURLCache capacity code in this file. + +2007-09-11 Darin Adler + + Rubber-stamped by Mark Rowe. + + * Misc/WebNSPasteboardExtras.mm: Fix incorrect strings in my last check-in. + The strings I checked in were wrong and were breaking layout tests too. + These new ones match what WebKitSystemInterface was returning. + +2007-09-10 Geoffrey Garen + + Fixed 64-bit build (I think). + + * WebView/WebView.mm: + (max): Added. In 64-bit land, -diskCapacity magically starts returning + unsigned long instead of unsigned, so we define a custom max() that's + willing to compare unsigned to unsigned long. + +2007-09-10 Darin Adler + + Reviewed by Tim Hatcher. + + - Removing WebURLPboardType from headers broke SPI-using applications + + Rolled out my fix for bug 4582212 and fixed it in a much simpler way. + + * Misc/WebNSPasteboardExtras.h: + * Misc/WebNSPasteboardExtras.mm: + * WebCoreSupport/WebPasteboardHelper.mm: + * WebKit.exp: + * WebView/WebHTMLView.mm: + * WebView/WebView.mm: + Rolled out the new PasteboardType functions and changed the PboardType globals to be initialized + with constant values. + +2007-09-10 Timothy Hatcher + + Reviewed by Darin. + + Always animate when calling _scrollTo. + + * WebView/WebFrameView.mm: + (-[WebFrameView _scrollVerticallyBy:]): + (-[WebFrameView _scrollHorizontallyBy:]): + +2007-09-08 Brady Eidson + + Reviewed by Darin + + - Asynchronous Icon Database + + WebKit side of things + Mainly, there are Notifications WebKit has to listen for now that tell it when to either call back into WebCore + for some purpose or to send the webView:didReceiveIcon: delegate call + + Many smaller tweaks as well. + + * Misc/WebIconDatabase.h: + * Misc/WebIconDatabase.mm: + (defaultClient): + (-[WebIconDatabase init]): + (+[WebIconDatabase delayDatabaseCleanup]): Accessor so clients can prevent the thread from cleaning up the database + before they've done all their necessary retaining of icons. + (+[WebIconDatabase allowDatabaseCleanup]): + (-[WebIconDatabase removeAllIcons]): + (-[WebIconDatabase _isEnabled]): + (-[WebIconDatabase _sendNotificationForURL:]): + (-[WebIconDatabase _sendDidRemoveAllIconsNotification]): + (-[WebIconDatabase _databaseDirectory]): + + (-[ThreadEnabler threadEnablingSelector:]): Quick and dirty class to enabled Cocoa multithreading + (+[ThreadEnabler enableThreading]): + (importToWebCoreFormat): + * Misc/WebIconDatabaseInternal.h: Expose the internal methods of WebIconDatabase that are required by WebIconDatabaseClient + + * Misc/WebNSNotificationCenterExtras.h: Added. - Great utility class whose design was borrowed from Colloquy + that allows the posting of a Cocoa notification on the main thread from *any* thread + * Misc/WebNSNotificationCenterExtras.m: Added. + (-[NSNotificationCenter postNotificationOnMainThreadWithName:object:]): + (-[NSNotificationCenter postNotificationOnMainThreadWithName:object:userInfo:]): + (-[NSNotificationCenter postNotificationOnMainThreadWithName:object:userInfo:waitUntilDone:]): + (+[NSNotificationCenter _postNotificationName:]): + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchDidReceiveIcon): Send the webView:didReceiveIcon: delegate call + (WebFrameLoaderClient::registerForIconNotification): + + * WebCoreSupport/WebIconDatabaseClient.h: Added. + * WebCoreSupport/WebIconDatabaseClient.mm: Added. + (WebIconDatabaseClient::performImport): Perform the Safari 2 icon import + (WebIconDatabaseClient::dispatchDidRemoveAllIcons): Send the NSNotification + (WebIconDatabaseClient::dispatchDidAddIconForPageURL): Ditto + + * WebView/WebView.mm: + (-[WebView _receivedIconChangedNotification:]): Check and see if this notification is for this WebView's current URL by + calling back into the IconDatabase + (-[WebView _registerForIconNotification:]): Support for WebIconDatabaseClient + (-[WebView _dispatchDidReceiveIconFromWebFrame:]): Dispatch this delegate call as well as unregister for the notification + * WebView/WebViewInternal.h: + + * WebKit.xcodeproj/project.pbxproj: + +2007-09-07 Geoffrey Garen + + Suggested by Maciej Stachowiak. + + Added wKiosk Browser to the browser list. Pretty sweet app. + + * WebView/WebPreferences.m: + (cacheModelForMainBundle): + +2007-09-07 Geoffrey Garen + + Build fix. + + * WebView/WebView.mm: + (+[WebView _setCacheModel:]): + +2007-09-05 Geoffrey Garen + + Reviewed by Darin Adler, Maciej Stachowiak, Mark Rowe, Tim Hatcher. + + Fixed Make non-browser WebKit clients have no + memory cache, or a very tiny one + + High level explanation: + - Added SPI for specifying a cache model on a per-WebView basis. + (Hopefully, this will become API soon.) We balance competing + cache models simply by using the largest one that pertains at a + given time. + + - Added heuristic for guessing a default cache model in WebViews + that don't specify one: + 1) Default to DocumentViewer for apps linked on or after this + WebKit. Default to DocumentBrowser otherwise. + + 2) Assign specific defaults to well-known clients based on + bundle ID. + + 3) Grow the default to DocumentBrowser if a navigation takes + place. + + - As a part of the DocumentBrowser & PrimaryWebBrowser settings: + 1) Make the Foundation disk cache much much bigger than the + default 20MB, if space allows. (This is a hedge against a small + WebCore cache in DocumentBrowser mode, but also an all-around + win for page load speed.) + + 2) Scaled the Foundation memory cache's capacity with physical + RAM, just like we do with other caches. This is a small win on + low memory systems. + + * Misc/WebKitSystemBits.h: + * Misc/WebKitSystemBits.m: + (WebMemorySize): Renamed from "WebSystemMainMemory." + (WebHomeDirectoryFreeSize): Added function to measure the free space + on the user's home directory. We use this as a factor in determining + the disk cache's cacpacity. + + * Misc/WebKitVersionChecks.h: Support for linked on or after check. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::didPerformFirstNavigation): Implementation of + heuristic rule #3. + + * WebView/WebPreferenceKeysPrivate.h: + * WebView/WebPreferences.m: + (cacheModelForMainBundle): Implementation of heuristic rule #2. + (-[NSMutableDictionary _web_checkLastReferenceForIdentifier:]): Added + notification for when a WebPreferences instance becomes inert. We use + this to shrink the cache model back down if possible. Moved this code + into a WebPreferences method, since it's not really a feature of + NSDictionary. + + * WebView/WebPreferencesPrivate.h: SPI declarations. + + * WebView/WebView.mm: Replaced manual notification posts with calls to + the _postPreferencesChangesNotification convenience method. + + (-[WebView _preferencesChangedNotification:]): Merged dispersed code + for updating preferences-related settings into this one function. This + was needed for an earlier version of the patch, even though the + current version could probably do without it. + + (+[WebView _preferencesChangedNotification:]): Added a class-level + listener for WebPreferences changes. This listener takes care of + modifying the class-level global cache model setting if necessary. + + (+[WebPreferences standardPreferences]): Removed call to + _postPreferencesChangesNotification because the notification already + posts when you create the WebPreferences object. (I noticed this + inefficiency because my new _preferencesChangedNotification: method was + called excessively at startup.) + + Also Added explicit tracking of WebPreferences clients, so we know when + a WebPreferences instance becomes inert: + + (-[WebPreferences didRemoveFromWebView]): + (-[WebPreferences willAddToWebView]): + + (+[WebView _setCacheModel:]): Translates a cache model into actual + settings in various APIs. Caches that have unbounded value grow + linearly relative to available space. Caches that have bounded value + grow inverse-squaredly relative to available space. + +>>>>>>> .r25438 +2007-09-05 Timothy Hatcher + + Reviewed by Darin. + + Uncaught Objective-C exceptions in WebKit clients lead to hard-to-diagnose crashes + + Changed all the direct delegate calls to use helper functions that have direct access to + WebView's delegate objects. These helper methods will catch any ObjC exceptions and call + ReportDiscardedDelegateException to log the discarded exception. WebView's that have + catchesDelegateExceptions set to NO will not pay the cost of a @try/@catch. The delegate + forwarders also have the same behavior. + + * Misc/WebKitLogging.h: + * Misc/WebKitLogging.m: + (ReportDiscardedDelegateException): + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView loadPluginRequest:]): + * Plugins/WebNullPluginView.mm: + (-[WebNullPluginView viewDidMoveToWindow]): + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::createWindow): + (WebChromeClient::createModalDialog): + (WebChromeClient::runModal): + (WebChromeClient::toolbarsVisible): + (WebChromeClient::statusbarVisible): + (WebChromeClient::addMessageToConsole): + (WebChromeClient::canRunBeforeUnloadConfirmPanel): + (WebChromeClient::runBeforeUnloadConfirmPanel): + (WebChromeClient::runJavaScriptAlert): + (WebChromeClient::runJavaScriptConfirm): + (WebChromeClient::runJavaScriptPrompt): + (WebChromeClient::shouldInterruptJavaScript): + (WebChromeClient::setStatusbarText): + (WebChromeClient::print): + * WebCoreSupport/WebContextMenuClient.mm: + (WebContextMenuClient::getCustomMenuFromDefaultItems): + (WebContextMenuClient::contextMenuItemSelected): + * WebCoreSupport/WebDragClient.mm: + (WebDragClient::startDrag): + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::textFieldDidBeginEditing): + (WebEditorClient::textFieldDidEndEditing): + (WebEditorClient::textDidChangeInTextField): + (WebEditorClient::doTextFieldCommandFromEvent): + (WebEditorClient::textWillBeDeletedInTextField): + (WebEditorClient::textDidChangeInTextArea): + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge viewForPluginWithFrame:URL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]): + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache): + (WebFrameLoaderClient::assignIdentifierToInitialRequest): + (WebFrameLoaderClient::dispatchWillSendRequest): + (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): + (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge): + (WebFrameLoaderClient::dispatchDidReceiveResponse): + (WebFrameLoaderClient::willCacheResponse): + (WebFrameLoaderClient::dispatchDidReceiveContentLength): + (WebFrameLoaderClient::dispatchDidFinishLoading): + (WebFrameLoaderClient::dispatchDidFailLoading): + (WebFrameLoaderClient::dispatchDidHandleOnloadEvents): + (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): + (WebFrameLoaderClient::dispatchDidCancelClientRedirect): + (WebFrameLoaderClient::dispatchWillPerformClientRedirect): + (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage): + (WebFrameLoaderClient::dispatchWillClose): + (WebFrameLoaderClient::dispatchDidReceiveIcon): + (WebFrameLoaderClient::dispatchDidStartProvisionalLoad): + (WebFrameLoaderClient::dispatchDidReceiveTitle): + (WebFrameLoaderClient::dispatchDidCommitLoad): + (WebFrameLoaderClient::dispatchDidFailProvisionalLoad): + (WebFrameLoaderClient::dispatchDidFailLoad): + (WebFrameLoaderClient::dispatchDidFinishDocumentLoad): + (WebFrameLoaderClient::dispatchDidFinishLoad): + (WebFrameLoaderClient::dispatchDidFirstLayout): + (WebFrameLoaderClient::dispatchCreatePage): + (WebFrameLoaderClient::dispatchUnableToImplementPolicy): + (WebFrameLoaderClient::dispatchWillSubmitForm): + (WebFrameLoaderClient::dispatchDidLoadMainResource): + * WebView/WebHTMLView.mm: + (-[WebHTMLView callDelegateDoCommandBySelectorIfNeeded:]): + (-[WebHTMLView validateUserInterfaceItem:]): + * WebView/WebPDFView.mm: + (-[WebPDFView validateUserInterfaceItem:]): + (-[WebPDFView PDFViewSavePDFToDownloadFolder:]): + * WebView/WebView.mm: + (-[WebView _openNewWindowWithRequest:]): + (-[WebView _menuForElement:defaultItems:]): + (-[WebView _mouseDidMoveOverElement:modifierFlags:]): + (-[WebView _cacheResourceLoadDelegateImplementations]): + (-[WebView _cacheFrameLoadDelegateImplementations]): + (-[WebView _policyDelegateForwarder]): + (-[WebView _UIDelegateForwarder]): + (-[WebView _editingDelegateForwarder]): + (-[WebView _scriptDebugDelegateForwarder]): + (-[WebView _setCatchesDelegateExceptions:]): + (-[WebView _catchesDelegateExceptions]): + (-[_WebSafeForwarder initWithTarget:defaultTarget:]): + (-[_WebSafeForwarder forwardInvocation:]): + (-[_WebSafeForwarder methodSignatureForSelector:]): + (-[WebView _commonInitializationWithFrameName:groupName:]): + (-[WebView validateUserInterfaceItem:]): + (-[WebView _headerHeight]): + (-[WebView _footerHeight]): + (-[WebView _drawHeaderInRect:]): + (-[WebView _drawFooterInRect:]): + (-[WebView _shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting:]): + (CallDelegate): + (CallDelegateReturningFloat): + (CallDelegateReturningBoolean): + (CallUIDelegate): + (CallUIDelegateReturningFloat): + (CallUIDelegateReturningBoolean): + (CallFrameLoadDelegate): + (CallResourceLoadDelegate): + (CallFormDelegate): + (CallFormDelegateReturningBoolean): + * WebView/WebViewInternal.h: + * WebView/WebViewPrivate.h: + +>>>>>>> .r25411 +2007-09-04 Timothy Hatcher + + Reviewed by Darin. + + NIBs saved in the Pre-10.2 format while Safari 3 installed do not work without Safari 3 + + This happened because we encoded a new field that the old WebKit does not know how to read. + And NSCoder throws an exception if initWithCoder finishes while there is still unread data in the archive. + + The WebViewVersion is now 4 to distinguish that we do not encode/decode allowsUndo. + + * WebView/WebView.mm: + (-[WebView initWithCoder:]): Only try to read allowsUndo if the version is 3. + (-[WebView encodeWithCoder:]): No longer encode allowsUndo. + +2007-09-04 David Hyatt + + Fix for , resizing iChat window is slower than in + Tiger. This patch implements a fast scaling mode that can be used by + WebViews, e.g., during window resizing. + + Reviewed by John Sullivan + + * WebView/WebView.mm: + (-[WebView _setUseFastImageScalingMode:]): + (-[WebView _inFastImageScalingMode]): + * WebView/WebViewPrivate.h: + +2007-09-04 Darin Adler + + Reviewed by Hyatt. + + * WebView/WebView.mm: + (-[WebView _loadBackForwardListFromOtherView:]): Added missing null check. + (-[WebView _setInitiatedDrag:]): Ditto. + (-[WebView _clearUndoRedoOperations]): Ditto. + (-[WebView encodeWithCoder:]): Ditto. + (-[WebView backForwardList]): Ditto. + (-[WebView setMaintainsBackForwardList:]): Ditto. + +2007-09-04 Tristan O'Tierney + + Reviewed by John Sullivan. + + Can't reply to this message in Mail -- -[DOMRange webArchive] is throwing an exception + + * WebView/WebArchiver.mm: + (+[WebArchiver _archiveWithMarkupString:fromFrame:nodes:]): + Guard the creation of WebResource by ensuring that the passed in + responseURL is never nil. + +2007-09-03 Mark Rowe + + Reviewed by Tim Hatcher. + + Production build with in symbols directory has no debug info + + Enable debug symbol generation on all build configurations. Production builds are stripped + of symbols by Xcode during deployment post-processing. + + * Configurations/Base.xcconfig: + * WebKit.xcodeproj/project.pbxproj: + +2007-09-02 Brady Eidson + + Reviewed by John Sullivan and Mark Rowe + + Groundwork for support for monitoring IconDatabase in-memory statistics + + * Misc/WebCoreStatistics.h: + * Misc/WebCoreStatistics.mm: + (+[WebCoreStatistics iconPageURLMappingCount]): + (+[WebCoreStatistics iconRetainedPageURLCount]): + (+[WebCoreStatistics iconRecordCount]): + (+[WebCoreStatistics iconsWithDataCount]): + +2007-09-01 Oliver Hunt + + Reviewed by Sam. + + IME is incorrectly used for key events when on non-editable regions + + EditorClient::setInputMethodState stub + + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::setInputMethodState): + +2007-08-30 Maciej Stachowiak + + Reviewed by Tim. + + REGRESSION: Cannot load feeds in widgets in Dashcode due to change in WebKit delegate methods + + * WebView/WebFrame.mm: + (-[WebFrame _attachScriptDebugger]): Don't create the debugger object if the frame has not yet + created its script interpreter, to avoid premature dispatch of windowScriptObjectAvailable/Cleared + delegate methods. The script debugger will be created in any case when the window object does appear. + +2007-08-29 Darin Adler + + Reviewed by Tim Hatcher. + + - fix WebKit inappropriately adds +initialize to + NSPasteboard via a category, prevents AppKit initialize + http://bugs.webkit.org/show_bug.cgi?id=9417 + + * Misc/WebNSPasteboardExtras.h: Got rid of the global data objects and replaced + them with global functions. + + * Misc/WebNSPasteboardExtras.mm: + (initializePasteboardTypes): Changed the initialize method to be this function. + (WebURLPasteboardType): Added, calls the initialize function and then returns + the value of the global. + (WebURLNamePasteboardType): Ditto. + (+[NSPasteboard _web_writableTypesForURL]): Changed to call the new function instead + of getting at the global directly. + (+[NSPasteboard _web_dragTypesForURL]): Ditto. + (-[NSPasteboard _web_writeURL:andTitle:types:]): Ditto. + * WebCoreSupport/WebPasteboardHelper.mm: + (WebPasteboardHelper::urlFromPasteboard): Ditto. + * WebView/WebHTMLView.mm: + (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]): Ditto. + + * WebView/WebView.mm: + (+[WebView initialize]): Added a call to one of the functions to take advantage + of the side effect that initializes the globals; this is to help out old versions + of Safari. + (+[WebView URLTitleFromPasteboard:]): Changed to call the new function instead + of getting at the global directly. + + * WebKit.exp: Add exports of the new functions. + +2007-08-29 Adele Peterson + + Reviewed by Darin. + + Fix for http://bugs.webkit.org/show_bug.cgi?id=15098 + REGRESSION (9A530-9A534): Double scroll bar on pdfs + + * WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::makeDocumentView): + Don't suppress scrollbars before the view creation if we're making the view for a non-html view + + * WebView/WebFrameViewInternal.h: Make _scrollView return a WebDynamicScrollBarsView since so many clients were relying on it being that type anyway. + * WebView/WebFrameView.mm: + (-[WebFrameView _setDocumentView:]): + (-[WebFrameView _scrollView]): + (-[WebFrameView setAllowsScrolling:]): + (-[WebFrameView allowsScrolling]): + * WebView/WebView.mm: + (-[WebView setAlwaysShowVerticalScroller:]): + (-[WebView alwaysShowVerticalScroller]): + (-[WebView setAlwaysShowHorizontalScroller:]): + (-[WebView alwaysShowHorizontalScroller]): + +2007-08-29 David Hyatt + + The method that was swizzled to fix 5441281 does not exist on Tiger. + Tiger has to do a double swizzle instead (of resetCursorRects and NSCursor's + set method) in order to roughly achieve the same effect. + + Reviewed by darin + + * WebView/WebHTMLView.mm: + (resetCursorRects): + (setCursor): + (+[WebHTMLViewPrivate initialize]): + +2007-08-29 Anders Carlsson + + Fix 64-bit build. + + * WebCoreSupport/WebFrameBridge.mm: + +2007-08-29 David Hyatt + + Fix for 5441281, remove our dependency on cursor rects and drag margins + in AppKit for a large performance boost on the PLT and iBench. + + Reviewed by darin + + * Plugins/WebBaseNetscapePluginView.h: + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView sendNullEvent]): + (-[WebBaseNetscapePluginView mouseEntered:]): + (-[WebBaseNetscapePluginView mouseExited:]): + (-[WebBaseNetscapePluginView stop]): + Clean up cursor setting from Netscape plugins. Don't unconditionally mutate + the cursor when a plugin stops. + + * WebView/WebFrameView.mm: + (-[WebFrameView _setDocumentView:]): + Suppress the resetting of drag margins while the new document view is being + added to the view hierarchy. + + * WebView/WebHTMLView.mm: + (-[NSWindow _web_borderView]): + Expose the border view of the NSWindow so that it can be hit tested. + + (setCursorForMouseLocation): + Apply a method swizzle to override the private AppKit method, _setCursorForMouseLocation. + We have to do this to suppress the cursor rect invalidation handling from resetting + the cursor for no reason. + + The swizzle will do a hit test and allow the cursor set to occur if the mouse ends up + being over a plugin or over a view other than a WebHTMLView. + + (+[WebHTMLViewPrivate initialize]): + The swizzle for setCursorForMouseLocation is set up here. + + (-[WebHTMLView _frameOrBoundsChanged]): + Add a 100ms delay to the fake mouse moved event that fires when the view moves + under the mouse (without the mouse moving). This happens on iBench when the + pages get scrolled. By adding a delay we ensure that even with the mouse inside + the window, we don't experience cursor thrashing when pages are updating and + scrolling rapidly. + +2007-08-28 Anders Carlsson + + Reviewed by Darin. + + Bottom portion of any Web Clip widget appears transparent + + * WebCoreSupport/WebFrameBridge.mm: + Use the enum from FrameLoaderTypes.h. + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::objectContentType): + Return ObjectContentNetscapePlugin and ObjectContentOtherPlugin depending on the plug-in type. + +2007-08-28 Mark Rowe + + Reviewed by Maciej Stachowiak. + + Fix fallout from the fix for (Loading history containing 100,000 entries adds 20s to Safari's startup) + in r25275. The array of entries for each day was being maintained in the reverse of the order that was expected. + + * History/WebHistory.mm: + (-[WebHistoryPrivate insertItem:forDateKey:]): Maintain the array of entries in descending order. + +2007-08-28 Mark Rowe + + Fix the buildbot build. + + * History/WebHistory.mm: + (timeIntervalForBeginningOfDay): Explicitly cast to silence compiler warning. + +2007-08-28 Mark Rowe + + Reviewed by Darin Adler. + + Loading history containing 100,000 entries adds 20s to Safari's startup + + Move WebHistoryItemPrivate from using a sorted array of NSCalendarDate's that map to a sorted array of arrays + of WebHistoryItem's over to using a HashMap of NSTimeIntervals and arrays of WebHistoryItems. NSTimeInterval + uses less memory and is substantially cheaper during comparisons than NSCalendarDate. The use of the HashMap + avoids the needs to repeatedly search within an array to locate the array that corresponds to the given days + history items. + + The result of these changes is that loading 100,000 history items drops from around 25s to 1.6s. Loading + 100 items drops from 0.003s to 0.002s. + + * History/WebHistory.mm: + (-[WebHistoryPrivate init]): + (-[WebHistoryPrivate dealloc]): + (timeIntervalForBeginningOfDay): Return the NSTimeInterval representing the beginning of the specified day. + (-[WebHistoryPrivate findKey:forDay:]): + (-[WebHistoryPrivate insertItem:forDateKey:]): Perform a binary search within the day's history items rather than a linear search. + (-[WebHistoryPrivate _removeItemFromDateCaches:]): + (-[WebHistoryPrivate _addItemToDateCaches:]): + (-[WebHistoryPrivate removeAllItems]): + (-[WebHistoryPrivate orderedLastVisitedDays]): Generate and cache the sorted NSArray of NSCalendarDate's exposed in the API. + This cache is invalidated by _removeItemFromDateCaches: and _addItemToDateCaches: when needed. + (-[WebHistoryPrivate orderedItemsLastVisitedOnDay:]): + (-[WebHistoryPrivate arrayRepresentation]): + (-[WebHistoryPrivate _loadHistoryGutsFromURL:savedItemsCount:collectDiscardedItemsInto:error:]): Use an autorelease pool to keep the + number of live autoreleased objects generated to a reasonable level. + * History/WebHistoryItem.mm: + (-[WebHistoryItem initWithURLString:title:displayTitle:lastVisitedTimeInterval:]): + (-[WebHistoryItem initFromDictionaryRepresentation:]): Use the new HistoryItem constructor that accepts the alternate title + rather than setting it after construction. This prevents a modification notification from being sent for each WebHistoryItem that is loaded. + * History/WebHistoryItemInternal.h: + * History/WebHistoryPrivate.h: + * Misc/WebNSCalendarDateExtras.h: Removed as _webkit_compareDay: is no longer used. + * Misc/WebNSCalendarDateExtras.m: Removed. + * WebKit.xcodeproj/project.pbxproj: + +2007-08-28 Anders Carlsson + + Reviewed by Darin. + + XMLHttpRequest readyState 3 & responseText buffer issues + + Expose WKSetNSURLRequestShouldContentSniff to WebCore. + + * WebCoreSupport/WebSystemInterface.m: + (InitWebCoreSystemInterface): + +2007-08-24 Kevin McCullough + + Reviewed by Darin. + + 1 credential object leaked for each call to credentialWithUser:password:persistence + - Use initWithUser instead of credentialWithUser because credentialWithUser leaks. + + * Panels/WebAuthenticationPanel.m: + (-[WebAuthenticationPanel runAsModalDialogWithChallenge:]): + (-[WebAuthenticationPanel sheetDidEnd:returnCode:contextInfo:]): + +2007-08-24 Adele Peterson + + Fix by Darin, reviewed by Adele. + + Fix for Upon quitting, WebKit loads the WebPlugin shared database and immediately closes it + + * Plugins/WebPluginDatabase.h: Added closeSharedDatabase, which won't create a new database if we're just trying to close it. + * Plugins/WebPluginDatabase.m: (+[WebPluginDatabase closeSharedDatabase]): Added. + * WebView/WebView.mm: + (-[WebView _close]): Call closeSharedDatabase. + (+[WebView _applicationWillTerminate]): Call closeSharedDatabase. + +2007-08-24 Timothy Hatcher + + Reviewed by John Sullivan. + + HIWebView in SimpleCarbonWeb doesn't seem to be getting adequate invalidation when window is resized + + This is a more localized fix for yesterday's change. Now explicitly call _web_layoutIfNeededRecursive inside the + HIWebView Draw() function. Adds a FIXME to explain that we need to do layout before Carbon has decided what regions to draw. + Doing layout in Draw() will potentially cause drawing to happen in two passes, but this has always been a problem in Carbon. + + * Carbon/HIWebView.m: + (Draw): Call _web_layoutIfNeededRecursive on the main WebHTMLView. + (SetFocusPart): Fix to work in ObjC++ (now that HIWebView.m is treated as a ObjC++ file.) + * WebView/WebView.mm: Removes the 4 displayIfNeeded methods from yesterday's change. + * WebKit.xcodeproj/project.pbxproj: Force the file type of HIWebView.m to ObjC++ so WebHTMLViewInternal.h can be included. + +2007-08-23 Timothy Hatcher + + Reviewed by Dave Hyatt. + + HIWebView in SimpleCarbonWeb doesn't seem to be getting adequate invalidation when window is resized + + The Carbon HIWebView was relying on layout happening when displayIfNeededInRect: was called on the WebView. + This would happen on Tiger because _recursiveDisplayRectIfNeededIgnoringOpacity: would always do a layout if needed. + Doing a layout in _recursiveDisplayRectIfNeededIgnoringOpacity was removed in Leopard in favor of viewWillDraw, and + the fact that adding new dirty rects inside _recursiveDisplayRectIfNeededIgnoringOpacity on Leopard will not + cause a drawRect in the same display loop. + + So any client on Leopard calling displayIfNeeded* on the WebView would get a layout and any new dirty rects. So + _web_layoutIfNeededRecursive needs to be called on the main frame's WebHTMLView to make sure we layout and + display anything that is really needed. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _layoutIfNeeded]): + (-[WebHTMLView _web_layoutIfNeededRecursive]): + * WebView/WebHTMLViewInternal.h: + * WebView/WebView.mm: + (-[WebView displayIfNeeded]): Call _web_layoutIfNeededRecursive on the main WebHTMLView. + (-[WebView displayIfNeededIgnoringOpacity]): Ditto. + (-[WebView displayIfNeededInRect:]): Ditto. + (-[WebView displayIfNeededInRectIgnoringOpacity:]): Ditto. + +2007-08-22 Timothy Hatcher + + Rolling out r25102 for until + is resolved. + + * Carbon/CarbonUtils.m: + (WebInitForCarbon): + (PoolCleaner): + * Carbon/CarbonWindowAdapter.h: + * Carbon/CarbonWindowAdapter.m: + * Carbon/CarbonWindowContentView.h: + * Carbon/CarbonWindowContentView.m: + * Carbon/CarbonWindowFrame.h: + * Carbon/CarbonWindowFrame.m: + * Carbon/HIViewAdapter.h: + * Carbon/HIViewAdapter.m: + * Carbon/HIWebView.h: + * Carbon/HIWebView.m: + +2007-08-20 John Sullivan + + Reviewed by Adam Roben + + WebKit part of fix for: + WebKit focus ring color no longer matches system focus rings + + * Misc/WebNSAttributedStringExtras.mm: + now includes to account for moved declaration + * WebView/WebFrame.mm: + ditto + + * WebView/WebViewPrivate.h: + * WebView/WebView.mm: + (+[WebView _setUsesTestModeFocusRingColor:]): + new SPI, calls through to new WebCore function. This is used by DumpRenderTree to make sure the + focus ring color is always the same when performing layout tests, regardless of OS X version. + (+[WebView _usesTestModeFocusRingColor]): + new SPI, calls through to new WebCore function + +2007-08-20 Antti Koivisto + + Reviewed by John. + + Fix + Crash at Range::startContainer() when creating multiple ToDos on the same line + + Null check range. + + No layout test, this only happens with ObjC API. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _expandSelectionToGranularity:]): + +2007-08-20 Maciej Stachowiak + + Not reviewed, fix for crash on launch bug in last patch. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView setDataSource:]): Remove an assertion, fix code to work right in the + face of that condition. + +2007-08-18 Maciej Stachowiak + + Reviewed by Darin. + + - fixed REGRESSION: PLT 1.5% slower due to r21367 (change to start frames with empty documents) + + There were three main cuases of extra time due to creating the initial empty document: + + 1) Creating an extra WebHTMLView and swapping it for a new one for each frame created. + 2) Parsing the minimal markup for the initial document's contents. + 3) Clearing the Window object an extra time and dispatching the corresponding delegate method. + + The WebKit part of the fixes addresses 1. + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::makeDocumentView): When switching from the initial + empty document to the first real document, reuse the WebHTMLView. + + It might actually be a significant performance improvement to always + reuse the WebHTMLView, but that is a much riskier change and not + needed to fix the regression right now. + +2007-08-17 Maciej Stachowiak + + Reviewed by Darin. + + - WebKit part of fix to scrollbar suppression hack for Leopard + + * WebView/WebDynamicScrollBarsView.m: + (-[WebDynamicScrollBarsView reflectScrolledClipView:]): Don't call the superclass method + when scrollbars are suppressed. + (-[WebDynamicScrollBarsView setScrollBarsSuppressed:repaintOnUnsuppress:]): Instead call it + here, when unsuppressing. + +2007-08-17 Darin Adler + + Reviewed by Maciej. + + - fix Use root URL as origin URL when quarantining downloads + + * WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::setOriginalURLForDownload): + Extract only the scheme and host name and make the originating URL from that. + + * WebKit/StringsNotToBeLocalized.txt: Updated for recent changes. + +2007-08-17 Timothy Hatcher + + Reviewed by Darin. + + Xcode threw mutation exception while enumerating subviews (GC only) + + I was never able to reproduce this exception. But there can be cases where layout will + trigger JavaScript or plugin code that can modify the WebView view hierarchy during a + recursive enumeration of all the subviews. + + This patch does two things: + 1) Adds a check in debug builds that will LOG when any view is added or removed during layout. + Noting that added views will not recieve layout this round and might paint without first recieving layout. + + 2) Recursivly builds up an array of descendant WebHTMLViews before calling layout on them. + This matches the behavior of makeObjectsPerformSelector: in the non-GC case (making a copy + before enumerating.) + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _web_setPrintingModeRecursive]): Use _web_addDescendantWebHTMLViewsToArray to build up an array + of WebHTMLViews to enumerate. + (-[WebHTMLView _web_clearPrintingModeRecursive]): Ditto. + (-[WebHTMLView _web_setPrintingModeRecursiveAndAdjustViewSize]): Ditto. + (-[WebHTMLView _web_layoutIfNeededRecursive]): Ditto. + (-[WebHTMLView _layoutIfNeeded]): Moved to WebHTMLViewFileInternal category. + (-[WebHTMLView didAddSubview:]): LOG in debug builds. + (-[WebHTMLView willRemoveSubview:]): Ditto. + (-[NSView _web_addDescendantWebHTMLViewsToArray:]): Recursivly build an array of descendant WebHTMLViews. + * WebView/WebHTMLViewInternal.h: Added a BOOL in WebHTMLViewPrivate to track subview changes (debug only.) + +2007-08-17 Anders Carlsson + + Reviewed by Dave Hyatt. + + + REGRESSION (Tiger-Leopard): ADOBE: Safari calls NPP_SetWindow with bad values sometimes + + Pass the right size when creating the views. + + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge viewForPluginWithFrame:URL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]): + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::createPlugin): + +2007-08-13 Geoffrey Garen + + Reviewed by Dave Hyatt. + + WebKit changes to support new cache eviction model in WebCore. + + * WebView/WebPreferences.m: + (+[WebPreferences initialize]): Modified to reflect new API in WebCore. + * WebView/WebView.mm: + (+[WebView _initializeCacheSizesIfNecessary]): Slightly increased cache + size on low memory systems to avoid affecting the PLT for now. + +2007-08-15 Timothy Hatcher + + Reviewed by Darin. + + HIWebView in SimpleCarbonWeb doesn't seem to be getting adequate invalidation when window is resized + + HIWebViewCreate now just returns a HIViewRef created with HICocoaViewCreate. This eliminates lots of old code and + makes HIWebView a better citizen starting with Leopard. The old code paths are still needed for Tiger, so now + most of the files in the WebKit/Carbon directory are #ifdef BUILDING_ON_TIGER. + + The Tiger code is unchanged and dosen't exhibit the invalidation problem when the window resizes. + + * Carbon/CarbonUtils.m: + (WebInitForCarbon): #ifdef BUILDING_ON_TIGER portions of this code that is not needed on Leopard. + * Carbon/CarbonWindowAdapter.h: #ifdef BUILDING_ON_TIGER + * Carbon/CarbonWindowAdapter.m: Ditto. + * Carbon/CarbonWindowContentView.h: Ditto. + * Carbon/CarbonWindowContentView.m: Ditto. + * Carbon/CarbonWindowFrame.h: Ditto. + * Carbon/CarbonWindowFrame.m: Ditto. + * Carbon/HIViewAdapter.h: Ditto. + * Carbon/HIViewAdapter.m: Ditto. + * Carbon/HIWebView.h: Consolidate two #ifdef __OBJC__ blocks into one. + * Carbon/HIWebView.m: Implement Leopard specific HIWebViewCreate, HIWebViewCreateWithClass and HIWebViewGetWebView. + (HIWebViewCreate): Call HIWebViewCreateWithClass passing [WebView class]. + (HIWebViewCreateWithClass): Call HICocoaViewCreate with an instance of the class passed in. + (HIWebViewGetWebView): Call HICocoaViewGetView. + +2007-08-14 Brady Eidson + + Reviewed by Darin, John, Maciej, Oliver, and Tim + + - Crash on launch with corrupt icon database + + Expose some new SPI to help recover from this case should it happen again + + * Misc/WebIconDatabase.mm: + (-[WebIconDatabase init]): Use the new _databaseDirectory to determine where to open the database on disk + (+[WebIconDatabase _checkIntegrityBeforeOpening]): Tell the icon database to check integrity when it opens + (-[WebIconDatabase _databaseDirectory]): Moved the database-directory-determining logic here as it's now used in two places + * Misc/WebIconDatabasePrivate.h: Added _checkIntegrityBeforeOpening SPI for clients to give hints about when the + integrity check should run + +2007-08-12 Alexey Proskuryakov + + Reviewed by Darin. + + http://bugs.webkit.org/show_bug.cgi?id=4648 + Shockwave unable to load GZip'd text resources when server sends Content-Length header + + * Plugins/WebBaseNetscapePluginStream.mm: + (-[WebBaseNetscapePluginStream startStreamWithResponse:]): Don't trust + -[NSURLResponse expectedContentLength] if Content-Encoding is not identity. + +2007-08-10 Timothy Hatcher + + Reviewed by Mark Rowe. + + HIWebView.h should be #ifdefed out for 64-bit + + * Carbon/HIWebView.h: #ifdef out the header in 64-bit. Adds a comment about 32-bit only. + * Carbon/CarbonUtils.h: Ditto. + +2007-08-10 Timothy Hatcher + + Reviewed by Adam. + + Stop using some Carbon UI APIs for 64 bit + + Disable NPObject use in 64-bit on Mac OS X. Also generate the 64-bit export file. + + * Configurations/WebKit.xcconfig: Point to the generated 64-bit export file. + * Plugins/WebBasePluginPackage.h: + * Plugins/npfunctions.h: #ifdef out this header in 64-bit on Mac OS X. + * WebKit.LP64.exp: Removed. + * WebKit.xcodeproj/project.pbxproj: Generate the the 64-bit export file. + * WebKitPrefix.h: Define WTF_USE_NPOBJECT. + +2007-08-10 Anders Carlsson + + Reviewed by Geoff. + + + REGRESSION: -[WebFrame loadHTMLString:baseURL:] leaks the data source + + If the identifier is not in the map, just bail out instead of asserting. This is a better fix for + because WebCore shouldn't have to worry about the lifetime of WebKit objects. + + * WebView/WebDocumentLoaderMac.mm: + (WebDocumentLoaderMac::decreaseLoadCount): + +2007-08-10 Oliver Hunt + + Reviewed by Darin. + + Fixed REGRESSION: ATOK IM: reconvert returns incorrect symbol due to inconsistent range domains in TSM by working around [NSAttributedString(WebKitExtras) _web_attributedStringFromRange:] adds whitespace to the requested range + + We truncate the returned string to the expected length. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView attributedSubstringFromRange:]): + +2007-08-09 Mark Rowe + + Reviewed by Antti. + + Versioning in debug and release builds should include minor and tiny version before + + + * Configurations/Version.xcconfig: + * WebKit.xcodeproj/project.pbxproj: Add a shell script phase to make to dependency between + Version.xcconfig and Info.plist explicit to Xcode. + +2007-08-08 Kevin Decker + + Reviewed by Anders Carlsson. + + Fixed: Stop using some Carbon UI APIs for 64 bit + + #ifdef'd out Netscape style plug-ins on 64-bit because Mac OS X doesn't support 64-bit Carbon UI. + + * Plugins/WebBaseNetscapePluginStream.h: + * Plugins/WebBaseNetscapePluginStream.mm: + * Plugins/WebBaseNetscapePluginView.h: + * Plugins/WebBaseNetscapePluginView.mm: + (+[WebBaseNetscapePluginView getCarbonEvent:]): + (TSMEventHandler): + * Plugins/WebBaseNetscapePluginViewInternal.h: + * Plugins/WebBaseNetscapePluginViewPrivate.h: + * Plugins/WebBasePluginPackage.m: + (+[WebBasePluginPackage pluginWithPath:]): + * Plugins/WebNetscapePluginEmbeddedView.h: + * Plugins/WebNetscapePluginEmbeddedView.mm: + * Plugins/WebNetscapePluginPackage.h: + * Plugins/WebNetscapePluginPackage.m: + * Plugins/WebNetscapePluginStream.h: + * Plugins/WebNetscapePluginStream.mm: + * Plugins/WebPluginDatabase.m: + (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]): + * Plugins/npapi.m: + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]): + * WebView/WebFrame.mm: + * WebView/WebFramePrivate.h: + * WebView/WebHTMLView.mm: + (-[NSArray _web_makePluginViewsPerformSelector:withObject:]): + * WebView/WebHTMLViewInternal.h: + +2007-08-07 David Hyatt + + Fix a botched backout of the Quicktime plugin clipping fix that broke Java. The plugin view should not + be set to autosize with the parent view. Also, cleanup of script objects was removed accidentally as + well. + + Reviewed by olliej + + * Plugins/WebPluginController.mm: + (-[WebPluginController destroyPlugin:]): + (-[WebPluginController destroyAllPlugins]): + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:DOMElement:loadManually:]): + +2007-08-03 Brady Eidson + + Reviewed by Oliver + + Fix for http://bugs.webkit.org/show_bug.cgi?id=14824 and + + When unregistering a MIMEType, remove it from the WebCore registry unconditionally + When registrying a MIMEType whose view class is WebHTMLView, add it to the WebCore registry + + * WebView/WebView.mm: + (+[WebView _unregisterViewClassAndRepresentationClassForMIMEType:]): + (+[WebView _registerViewClass:representationClass:forURLScheme:]): + (+[WebView registerViewClass:representationClass:forMIMEType:]): + +2007-08-03 Timothy Hatcher + + Reviewed by Mark Rowe. + + Correct the bundle version check to work in Debug and Release builds too. + + * WebKit.xcodeproj/project.pbxproj: + +2007-08-02 Brady Eidson + + Reviewed by Tim + + - setMIMETypesShownAsHTML mutates while enumerating + + * WebView/WebView.mm: + (+[WebView setMIMETypesShownAsHTML:]): Copy the dictionary before we work with it. + +2007-08-02 Alice Liu + + Reviewed by Kevin McCullough. + + fixed REGRESSION: javascript is mis-escaped at http://labs.zarate.org/passwd causing bookmarklet to break + + * Misc/WebNSURLExtras.mm: + (+[NSURL _web_URLWithUserTypedString:relativeToURL:]): + (-[NSURL _web_userVisibleString]): + (-[NSURL _web_URLWithLowercasedScheme]): + (-[NSURL _web_dataForURLComponentType:]): + These 4 changes are just casting changes. + + (-[NSString _webkit_stringByReplacingValidPercentEscapes]): + This change replaces the call to an NSURL method with a webcore one that doesn't abort the escaping effort once an illegal character is encountered. + +2007-08-01 Anders Carlsson + + Fix build. + + * Misc/WebNSURLExtras.mm: + (+[NSURL _web_URLWithUserTypedString:relativeToURL:]): + (-[NSURL _web_userVisibleString]): + (-[NSURL _web_URLWithLowercasedScheme]): + (-[NSURL _web_dataForURLComponentType:]): + +2007-08-01 Alice Liu + + Reviewed by . + + Making WebNSURLExtras objc++ + + * Misc/WebNSURLExtras.m: Removed. + * Misc/WebNSURLExtras.mm: Copied from WebKit/Misc/WebNSURLExtras.m. + * WebKit.xcodeproj/project.pbxproj: + +2007-08-01 Darin Adler + + Reviewed by Anders Carlsson and Kevin Decker. + + - fix Removal of MakeDataExecutable from 64-bit breaks WebKit build + + The trick was to ifdef out more of the code that's only needed to support CFM, which exists + only for 32-bit PowerPC. + + * Plugins/WebNetscapePluginPackage.h: Define a SUPPORT_CFM symbol in this internal header when + we support CFM. We support it only on 32-bit PowerPC. Only define the isBundle, isCFM, and + connID fields when SUPPORT_CFM is on. Also use ResFileRefNum instead of SInt16. + * Plugins/WebNetscapePluginPackage.m: Only compile the function pointer and transition vector + functions when SUPPORT_CFM is on. + (-[WebNetscapePluginPackage openResourceFile]): Put the non-bundle case inside a SUPPORT_CFM + ifdef, since all non-CFM plug-ins are bundles. + (-[WebNetscapePluginPackage closeResourceFile:]): Ditto. + (-[WebNetscapePluginPackage _initWithPath:]): Use SUPPORT_CFM to compile out the code for + non-bundle and bundle-based CFM plug-ins, and code that sets isBundle and isCFM. + (-[WebNetscapePluginPackage executableType]): Put the CFM case inside SUPPORT_CFM. + (-[WebNetscapePluginPackage load]): Put the non-bundle and CFM cases inside SUPPORT_CFM. + There was a bit of dead code here. + (-[WebNetscapePluginPackage _unloadWithShutdown:]): Put the non-bundle case inside + SUPPORT_CFM. + +2007-07-31 Timothy Hatcher + + Reviewed by Oliver and Beth. + + ADOBE Leopard 9A410: At the first Launching InDesign after deactivate, EULA page gets blanked. + + Check for more Adobe applications that need the frame reload quirk. Also cache the answer + so the version check dosen't happen more than once. + + * WebView/WebView.mm: + (-[WebView _needsAdobeFrameReloadingQuirk]): + (-[WebView _updateWebCoreSettingsFromPreferences:]): + +2007-07-30 Adele Peterson + + Reviewed by Oliver. + + Fix for REGRESSION: Command-N with Dvorak-Qwerty keyboard layout stopped working inside web page text fields + + * WebView/WebHTMLView.mm: (-[WebHTMLView _handleStyleKeyEquivalent:]): + The input method may have modified the character we get, so don't use charactersIgnoringModifiers to interpret the character we get. + +2007-07-30 John Sullivan + + Reviewed by Darin + + - fixed Need WebKit SPI to allow clients using embedded WebViews to avoid + clipping ends of some printed pages + + This provides Mail, and other clients that print views that embed WebViews, a way to ensure that + the HTML is laid out for printing before pagination occurs. + + * WebView/WebHTMLViewPrivate.h: + new SPI method -_layoutForPrinting + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _web_setPrintingModeRecursiveAndAdjustViewSize]): + new method, just like existing _web_setPrintingModeRecursive except passes YES for adjustViewSize + (-[WebHTMLView _layoutForPrinting]): + new SPI method, sets printing mode temporarily to adjust the view size for printing + (-[NSView _web_setPrintingModeRecursiveAndAdjustViewSize]): + new helper method to do the recursion + +2007-07-30 Adele Peterson + + Reviewed by Darin. + + Fix for A crash occurs at WebCore::Frame::isFrameSet() when attempting to print a iframe before it loads at http://www.monster.com/ + + * WebView/WebHTMLView.mm: (-[WebHTMLView knowsPageRange:]): Nil check for frame. + +2007-07-30 Anders Carlsson + + Reviewed by Darin. + + + REGRESSION: After switching from Bookmark view, the Find Banner won't appear while displaying a PDF file + + Implement hasHTMLView. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::hasHTMLView): + +2007-07-30 Justin Garcia + + Reviewed by Tristan. + + Attachments are lost when they are moved into a ToDo after a delete + + Mail needs to be asked if it is OK to do the content movement that happens + after a deleting in a situation like this one: +
foo
^bar
+ so that they can prevent the move or so that they can save content that + will be stripped by the move. This could have been done with shouldInsertNode + and a new WebViewInsertAction for "moves", but WebKit clients like Mail and + DashCode think that a shouldInsert* means that the user pasted something and + perform actions only appropriate for pastes. This change is less risky because + it won't require those clients to change their code. + + * DefaultDelegates/WebDefaultEditingDelegate.m: + (-[WebDefaultEditingDelegate webView:shouldMoveRangeAfterDelete:replacingRange:]): + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::shouldMoveRangeAfterDelete): + * WebView/WebEditingDelegatePrivate.h: + +2007-07-29 Adele Peterson + + Reviewed by John. + + WebKit part of fix for REGRESSION: Can't tab to webview that doesn't have editable content + + * WebView/WebHTMLView.mm: (-[WebHTMLView becomeFirstResponder]): Call new setInitialFocus method instead of advanceFocus. + +2007-07-27 Darin Adler + + - fix build + + * WebKitPrefix.h: Removed the USING_WEBCORE_XXX definitions. + * WebView/WebHTMLView.mm: + (-[WebHTMLView delete:]): Fixed this to use WebCore again; I accidentally revived a dead + code path that didn't work in the last patch! + (-[WebHTMLView deleteToMark:]): Ditto. + (-[WebHTMLView copy:]): Removed the unused side of the ifdef. + (-[WebHTMLView cut:]): Ditto. + (-[WebHTMLView paste:]): Ditto. + +2007-07-27 Darin Adler + + Reviewed by Tim Hatcher and Oliver Hunt. + + - fix webView:doCommandBySelector: isn't getting called for copy: + + Added code so that webView:doCommandBySelector: is called for every command. + + * WebView/WebHTMLView.mm: Made 44 of the commands use the WEBCORE_COMMAND macro instead + of being handwritten. For all the others, added invocation of COMMAND_PROLOGUE macro at + the start of the command. + (-[WebHTMLView callDelegateDoCommandBySelectorIfNeeded:]): Added. + (-[WebHTMLView callWebCoreCommand:]): Added. + (-[WebHTMLView delete:]): Removed unused code path -- easy to bring back some day, but + we don't need it compiled in. + (-[WebHTMLView deleteBackwardByDecomposingPreviousCharacter:]): Changed so this doesn't + call deleteBackward: any more so we don't call the delegate two times. + (-[WebHTMLView deleteToMark:]): Changed so this doesn't call delete: any more so we don't + call the delegate two times. + (-[WebHTMLView selectToMark:]): Changed so this doesn't call setMark: any more so we don't + call the delegate two times. + (-[WebHTMLView doCommandBySelector:]): Added code to set the private variable + selectorForDoCommandBySelector. This allows callDelegateDoCommandBySelectorIfNeeded to + detect that we've already called the delegate and avoids calling it twice. + + * WebView/WebHTMLViewInternal.h: Added the selectorForDoCommandBySelector field. + +2007-07-26 Alexey Proskuryakov + + Reviewed by Oliver. + + http://bugs.webkit.org/show_bug.cgi?id=14733 + Add a logging channel for text input + + + * Misc/WebKitLogging.h: + * Misc/WebKitLogging.m: + (WebKitInitializeLoggingChannelsIfNecessary): + * WebView/WebHTMLView.mm: + (-[WebHTMLView validAttributesForMarkedText]): + (-[WebHTMLView textStorage]): + (-[WebHTMLView characterIndexForPoint:]): + (-[WebHTMLView firstRectForCharacterRange:]): + (-[WebHTMLView selectedRange]): + (-[WebHTMLView markedRange]): + (-[WebHTMLView attributedSubstringFromRange:]): + (-[WebHTMLView hasMarkedText]): + (-[WebHTMLView unmarkText]): + (-[WebHTMLView setMarkedText:selectedRange:]): + (-[WebHTMLView doCommandBySelector:]): + (-[WebHTMLView insertText:]): + +2007-07-26 Darin Adler + + - fix Tiger build + + * Misc/WebTypesInternal.h: For use inside the library, use NSInteger and + NSUInteger, just like on Leopard. WebNSInteger and WebNSUInteger are still + present, but they are used in public and private headers only. + + * Carbon/CarbonWindowAdapter.m: + * Carbon/CarbonWindowFrame.m: + * DefaultDelegates/WebScriptDebugServer.m: + * History/WebBackForwardList.mm: + * Misc/WebDownload.m: + * Misc/WebSearchableTextView.m: + * Plugins/WebBaseNetscapePluginView.mm: + * WebCoreSupport/WebFrameLoaderClient.mm: + * WebView/WebHTMLView.mm: + * WebView/WebPDFView.mm: + * WebView/WebView.mm: + * WebView/WebViewInternal.h: + Update all implementation files and internal headers to use NSInteger and + NSUInteger rather than WebNSInteger and WebNSUInteger. + +2007-07-26 John Sullivan + + Reviewed by Kevin Decker + + - fixed Searching a pdf in some modes shows hilights for all instances + of the word, even those not on the current page + + It turns out that there were three different issues here, all contributing to incorrect display + of multiple matches for PDF pages in certain display modes. (1) in non-continuous display modes, + we weren't updating the match rects when the displayed page is changed with page up/down (e.g.); + (2) the mechanism to update the match rects on scrolling was busted except for the first scroll + away from 0,0; (3) the PDFKit API returns selection bounds for non-displayed pages in non-continuous + modes just as if they were the displayed pages. This patch fixes all three issues. + + * WebView/WebPDFView.h: + made ivar name even longer + + * WebView/WebPDFView.mm: + (-[WebPDFView setPDFDocument:]): + updated for ivar name change + (-[WebPDFView viewDidMoveToWindow]): + observe page-change notifications as well as the others; this is necessary because in the + non-continuous modes the view can be completely updated without any scrolling involved (problem 1) + (-[WebPDFView viewWillMoveToWindow:]): + stop observing page-change notifications + (-[WebPDFView rectsForTextMatches]): + skip any pages that aren't visible; this avoids treating matches on non-displayed non-continous + modes as if they were on the displayed page (problem 3) + (-[WebPDFView _PDFDocumentViewMightHaveScrolled:]): + after checking whether scroll position has changed since we last checked it, remember the new + one (d'oh!) (problem 2) + + (-[WebPDFView _scaleOrDisplayModeOrPageChanged:]): + renamed to include page changes + + (-[WebPDFView _visiblePDFPages]): + new method, returns the set of pages that are at least partly visible + +2007-07-24 Oliver Hunt + + Reviewed by Adam and Justin. + + WebView editableDOMRangeForPoint: & moveDragCaretToPoint: returns last position in DOMText range + + editableDOMRangeForPoint:, moveDragCaretToPoint:, and removeDragCaret now call directly into + WebCore without relying on bridge look up through the now removed _bridgeAtPoint:. + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebView.mm: + (-[WebView moveDragCaretToPoint:]): + (-[WebView removeDragCaret]): + (-[WebView editableDOMRangeForPoint:]): + +2007-07-24 Kevin Decker + + Reviewed by Anders. + + REGRESSION (Safari 2->Safari 3): Adobe Reader 7.0.8 plug-in doesn't work + + * Plugins/WebNetscapePluginEmbeddedView.h: Added a #define that renames this class to "WebNetscapePluginDocumentView" + This is necessary because the Adobe 7.x Acrobat plug-in has a hard coded check for a view named "WebNetscapePluginDocumentView" + and will not function correctly if it doesn't find a view in the hierarchy without the old class name. + +2007-07-24 Mark Rowe + + Reviewed by Antti. + + NSMenuItem's seen leaking on buildbot + + * WebCoreSupport/WebContextMenuClient.mm: + (WebContextMenuClient::contextMenuItemSelected): Release platformItem as we were transferred its ownership by releasePlatformDescription. + +2007-07-23 Oliver Hunt + + Reviewed by Darin. + + We have to be able to support insertText: followed by doCommandBySelector: in + order to support the 2- and 3-Set Korean and RuSwitcher IMs at least. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView insertText:]): + +2007-07-23 Alice Liu + + Reverting change 24535 now that a solution has been found that doesn't + involve exposing an interface unnecessarily. + + * WebView/WebHTMLView.mm: + * WebView/WebHTMLViewPrivate.h: + +2007-07-23 Alice Liu + + Reviewed by Oliver Hunt. + + Expose [WebHTMLView hasMarkedText] to + fix autocomplete breaks Japanese typing + + * WebView/WebHTMLView.mm: + * WebView/WebHTMLViewPrivate.h: + +2007-07-22 Darin Adler + + * StringsNotToBeLocalized.txt: Updated for recent changes. + +2007-07-21 Adam Roben + + Fix REGRESSION: Right-click/control-click broken + + http://bugs.webkit.org/show_bug.cgi?id=14658 + + + Reviewed by Mitz. + + * WebCoreSupport/WebContextMenuClient.mm: + (fixMenusToSendToOldClients): Update defaultItemsCount after removing + items from the defaultItems array. + +2007-07-20 Oliver Hunt + + Reviewed by Adele. + + REGRESSION: Cannot paste into an active inline input area (14522) + http://bugs.webkit.org/show_bug.cgi?id=14522 + + AppKit sends noop: to -[WebHTMLView doCommandBySelector:] when an IM does not handle event, + we now check this as it is necessary to work around some IMs that do send messages + (such as insertText: rather than unmarkText: to confirm a composition) + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): + (-[WebHTMLView doCommandBySelector:]): + * WebView/WebHTMLViewInternal.h: + +2007-07-20 Brady Eidson + + Reviewed by Adele and Andersca + + - WebBackForwardList created from scratch is unusable (always leads to crash) + + * History/WebBackForwardList.mm: + (-[WebBackForwardList init]): Have a default initializer that uses an empty BackFowardList not associated with a page. + + * WebView/WebFrame.mm: + (kit): For clarity's sake, this should return nil, not 0 + +2007-07-20 Justin Garcia + + Reviewed by Darin. + + Ctrl-click on word in non-editable text doesn't select it + + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: Removed the method + for enabling/disabling word selection on right click. + * WebView/WebView.mm: Ditto. + * WebView/WebViewPrivate.h: Removed the getter/setter entirely, + it was in a private Category for Mail, but wasn't used by Mail + on Tiger or Leopard, they apparently implement word selection on + their own. + +2007-07-20 Timothy Hatcher + + Reviewed by Darin. + + WebView needs to adopt viewWillDraw (moving off of _propagateDirtyRectsToOpaqueAncestors) + REGRESSION: Scroller in Widget Manager splits down the middle while scrolling + + On Leopard _propagateDirtyRectsToOpaqueAncestors is no longer called by AppKit. Also marking new dirty rects + underneath _recursiveDisplayRectIfNeededIgnoringOpacity will wait until the next runloop to draw them, + causing rendering to happen in two steps instead of one as WebCore expected. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _topHTMLView]): Move to the file internal category so we can use it in viewWillDraw. + (-[WebHTMLView _isTopHTMLView]): Ditto. + (-[WebHTMLView _propagateDirtyRectsToOpaqueAncestors]): #ifdef for Tiger only. + (-[WebHTMLView viewWillDraw]): Do a recursive layout if this is the top WebHTMLView. + (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]): + Don't do layout here on Leopard since viewWillDraw handled it. + (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]): Ditto. + +2007-07-20 Beth Dakin + + Reviewed by Tim and Geoff. + + Fix for Mail crashes at + WebCore::RenderTableSection:paint + 846 when attempting to display + a HTML based message + + After reapplying styles, the RenderView needs layout. However, + layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize used to + return early if the WebHTMLView itself does not need layout. + Because the WebHTMLView is not necessarily in synch with the + RenderTree, returning early here can get us into a bad situation + where we paint before laying out the Render Tree. This patch checks + both the WebHTMLView and the bridge (which checks the RenderView, + etc), so that we do not return early without laying out the Render + Tree. + + Some day, we should phase out WebHTMLView keeping track of + needsLayout at all. But that is a bit beyond the scope of this fix. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): + +2007-07-20 John Sullivan + + Reviewed by Darin Adler and David Harrison + + - fixed REGRESSION: Bottom of some printed pages are truncated + + The "avoid orphan" code I added a year ago was causing the page to be imaged to a larger + height (good), but not shrinking everything to compensate (bad). Bad one-year-ago me! + + * WebView/WebHTMLViewInternal.h: + added avoidingPrintOrphan boolean + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]): + clear _private->avoidingPrintOrphan when clearing _private->printing + (-[WebHTMLView _scaleFactorForPrintOperation:]): + take _private->avoidingPrintOrphan into account when computing the scale factor + (-[WebHTMLView knowsPageRange:]): + set _private->avoidingPrintOrphan when we're shrinking to avoid an orphan + +2007-07-19 Adam Roben + + Fix REGRESSION: A error dialog occurs when + attempting to ctrl-click in a iChat message window (webview) + + Reviewed by Oliver. + + * WebCoreSupport/WebContextMenuClient.mm: + (fixMenusToSendToOldClients): Don't check for the Inspect Element item + if we have fewer than 2 items. + +2007-07-18 Geoffrey Garen + + Reviewed by Dave Hyatt. + + + + Reduced default WebCore cache size from 32 MB to 23 MB on systems below + 512 MB RAM. This improves RPRVT usage in the Safari pageout test by + ~10% on a system with 384 MB RAM. + + At 23 MB, no extra resources are evicted from the cache during a PLT + run, so this is a safe change PLT-wise. 23 MB is also seems to be a + generous number in real world usage. + + * WebView/WebPreferences.m: + (+[WebPreferences initialize]): + +2007-07-18 Anders Carlsson + + Reviewed by Geoff. + + REGRESSION (Safari 2->Safari 3): DjVu plug-in doesn't load in Safari 3 + + The DjVu plug-in uses the size of the passed in NPNetscapeFuncs struct to copy it over to a NPNetscapeFuncs struct + whose size was determined when DjVu was compiled. This means that when we add extra functions to the vtable, + DjVu will segfault copying it into the (too small) destination struct. + + Fix this by special-casing the DjVu plug-in and setting the NPNetscapeFuncs size to be the same size as what DjVu expects. + + * Plugins/WebNetscapePluginPackage.m: + (-[WebNetscapePluginPackage _applyDjVuWorkaround]): + (-[WebNetscapePluginPackage load]): + +2007-07-18 Timothy Hatcher + + Reviewed by Adam. + + Should have a way to disable the Web Inspector + + Adds a new DisableWebKitDeveloperExtras default that will force the Web Inspector to be disabled. + This overrides the WebKitDeveloperExtras and IncludeDebugMenu default. It also disables + the Web Inspector in Debug builds. + + * WebView/WebView.mm: + (+[WebView _developerExtrasEnabled]): Check for the DisableWebKitDeveloperExtras default. + (-[WebView _commonInitializationWithFrameName:groupName:]): Make a new WebInspectorClient when making the Page. + +2007-07-18 Anders Carlsson + + Build fix. + + * Misc/WebNSAttributedStringExtras.mm: + +2007-07-18 Sam Weinig + + Rubber-stamped by Adam Roben. + + Update after renaming MimeTypeRegistry to MIMETypeRegistry. + + * Misc/WebNSPasteboardExtras.mm: + (-[NSPasteboard _web_writePromisedRTFDFromArchive:containsImage:]): + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge determineObjectFromMIMEType:URL:]): + * WebView/WebDataSource.mm: + (-[WebDataSource _documentFragmentWithArchive:]): + * WebView/WebHTMLRepresentation.mm: + (+[WebHTMLRepresentation supportedNonImageMIMETypes]): + (+[WebHTMLRepresentation supportedImageMIMETypes]): + * WebView/WebHTMLView.mm: + (-[WebHTMLView _imageExistsAtPaths:]): + +2007-07-18 Tristan O'Tierney + + Reviewed by Maciej Stachowiak. + + Alt-clicking a link in Safari does not register original URL info with gatekeeper + REGRESSION: A hang occurs when attempting to open a attached file from a .Mac web mail message + + * WebCoreSupport/WebFrameLoaderClient.h: + Added a new method, setOriginalURLForDownload, for both download() + and startDownload() to share. + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::download): + Moved all the gatekeeper code into setOriginalURLForDownload. + + (WebFrameLoaderClient::setOriginalURLForDownload): + Same code that was in download() but moved into a single place for both + startDownload and download to use. Also returned the boolean logic + for detecting _wasUserGesture back to it's previous state, since my prior change + was incorrect. Additionally I found a loop index bug with backListCount and fixed it. + + (WebFrameLoaderClient::startDownload): + Calls out to setOriginalURLForDownload after a download is created. + + * WebView/WebView.mm: + (-[WebView _downloadURL:]): + Changed to return the WebDownload object created inside _downloadURL + + * WebView/WebViewInternal.h: + Changed _downloadURL to return the WebDownload it creates. + +2007-07-17 Timothy Hatcher + + Reviewed by Geoff. + + loadData:MIMEType:textEncodingName:baseURL: doesn't like relative URLs + + Get the absoluteURL from any user supplied NSURL before we pass it down to WebCore. + + * WebView/WebFrame.mm: + (-[WebFrame _loadURL:referrer:intoChild:]): + (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): + * WebView/WebView.mm: + (-[WebView userAgentForURL:]): + +2007-07-17 Adam Roben + + Fix Bug 14324: Cannot remove/customize the "Inspect Element" contextual menu item + http://bugs.webkit.org/show_bug.cgi?id=14324 + + Only clients linking against new versions of WebKit will see the item. + I've maintained our behavior for old clients of not including the + Inspect Element item in the menu items passed to the UI delegate. + + Reviewed by Tim. + + * Misc/WebKitVersionChecks.h: Added a new constant. + * WebCoreSupport/WebContextMenuClient.mm: + (isPreInspectElementTagClient): Added. + (fixMenusToSendToOldClients): Return an array of items that should be + appended to the menu received from the delegate. + (fixMenusReceivedFromOldClients): Append the saved items to the array. + (WebContextMenuClient::getCustomMenuFromDefaultItems): Retain/release + the saved items. + +2007-07-17 Adam Roben + + Remove WebContextMenuClient::shouldIncludeInspectElementItem + + Reviewed by Tim. + + * WebCoreSupport/WebContextMenuClient.h: + * WebCoreSupport/WebContextMenuClient.mm: + +2007-07-17 Adam Roben + + Initialize Settings::developerExtrasEnabled + + Reviewed by Tim. + + * WebView/WebView.mm: + (-[WebView _updateWebCoreSettingsFromPreferences:]): + +2007-07-17 Geoffrey Garen + + Build fix. + + * WebView/WebFrame.mm: + (-[WebFrame _loadURL:referrer:intoChild:]): + * WebView/WebFramePrivate.h: + +2007-07-17 Tristan O'Tierney + + Reviewed by Maciej Stachowiak. + + Source of file is misrepresented if downloaded by typing in URL in Safari address bar + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::download): + Revised code to check the initial request's referrer before assuming it has a history to check. + +2007-07-16 Brady Eidson + + Reviewed by Adam + + Begin the arduous task of localizing FTP directory listings while removing a global initializer! + + * English.lproj/Localizable.strings: + * WebCoreSupport/WebViewFactory.mm: + (-[WebViewFactory unknownFileSizeText]): + +2007-07-16 Adam Roben + + Move printing from WebFrameBridge to WebChromeClient + + Reviewed by Darin. + + * WebCoreSupport/WebChromeClient.h: Updated for ChromeClient changes. + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::print): Moved code from WebFrameBridge. + * WebCoreSupport/WebFrameBridge.mm: Removed -print. + +2007-07-16 Darin Adler + + * StringsNotToBeLocalized.txt: Update for recent changes. + +2007-07-16 John Sullivan + + Reviewed by Kevin Decker and Darin Adler + + - fixed Holes in Find banner overlay on PDF pages are left in wrong place after changing scale + + * WebView/WebPDFView.mm: + (-[WebPDFView _scaleOrDisplayModeChanged:]): + tell UI delegate that the entire PDF view has been redrawn + +2007-07-14 Brady Eidson + + Reviewed by Sam Weinig + + Initial check-in for - Supporting FTP directory listings in the browser + + * WebView/WebPreferenceKeysPrivate.h: Added preference keys for the FTP template location, as well as to force + FTP directory listings, bypassing the policy delegate. This is necessary to test the new feature until browser + policy delegate support is added. + + * WebView/WebPreferences.m: + (-[WebPreferences _setFTPDirectoryTemplatePath:]): + (-[WebPreferences _ftpDirectoryTemplatePath]): + (-[WebPreferences _setForceFTPDirectoryListings:]): + (-[WebPreferences _forceFTPDirectoryListings]): + * WebView/WebPreferencesPrivate.h: + * WebView/WebView.mm: + (-[WebView _updateWebCoreSettingsFromPreferences:]): + +2007-07-13 Anders Carlsson + + Reviewed by Maciej. + + Assert failure when loading page with multipart resource + + Don't try to call the delegate method if the resource object doesn't exist in the + identifier map. When a multipart resource has finished loading one part, it is removed from the + web view identifier map. + + This is not an ideal fix, a better fix would be to special-case multipart resources and not remove + them when the first part has finished loading. I've filed to track doing that. + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): + (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge): + (WebFrameLoaderClient::dispatchDidReceiveResponse): + (WebFrameLoaderClient::willCacheResponse): + (WebFrameLoaderClient::dispatchDidReceiveContentLength): + (WebFrameLoaderClient::dispatchDidFinishLoading): + (WebFrameLoaderClient::dispatchDidFailLoading): + +2007-07-13 Timothy Hatcher + + Reviewed by Oliver Hunt. + + Can't include WebEditingDelegatePrivate.h + + * WebView/WebEditingDelegatePrivate.h: Changed the include to be a framework include, + so other projects can use this header. + +2007-07-12 Anders Carlsson + + Reviewed by Darin and Maciej. + + panic after Safari stress test, caused by port leak + + Replace uses of -[NSObject performSelector:withObject:afterDelay:] with CFRunLoopTimer. performSelector + causes the target (the WebHTMLView in this case) to be retained until the timer fires. Furthermore, when + running the PLT or iBench, the timers will not fire until the main loop is entered (usually after running all tests). + + This means that the timers and ports will not be released until after the test has finished running. + + * WebView/WebHTMLView.mm: + (-[WebHTMLViewPrivate dealloc]): + (-[WebHTMLView _cancelUpdateMouseoverTimer]): + (-[WebHTMLView _updateMouseoverWithFakeEvent]): + (-[WebHTMLView _updateMouseoverTimerCallback:]): + (-[WebHTMLView _frameOrBoundsChanged]): + (-[WebHTMLView _updateActiveState]): + (-[WebHTMLView _updateActiveStateTimerCallback:]): + (-[WebHTMLView viewWillMoveToWindow:]): + (-[WebHTMLView viewDidMoveToWindow]): + (-[WebHTMLView mouseDown:]): + (-[WebTextCompleteController dealloc]): + * WebView/WebHTMLViewInternal.h: + +2007-07-13 Mark Rowe + + Reviewed by Mitz. + + Build fix. Stub out WebChromeClient::print. + + * WebCoreSupport/WebChromeClient.h: + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::print): + +2007-07-11 Timothy Hatcher + + Reviewed by Oliver. + + WEBVIEW: Drawing artifacts when dragging in IB + + Interface Builder 3 is relying on KVO notifications for frameOrigin and frameSize, + among other standard NSView keys. Change automaticallyNotifiesObserversForKey to + return NO only for keys WebView manually fires notifications for. + + * WebView/WebView.mm: + (+[WebView automaticallyNotifiesObserversForKey:]): Selectivly return NO for keys we manually fire. + (-[WebView _declaredKeys]): Code clean up. + +2007-07-10 Antti Koivisto + + Reviewed by John. + + Fix + Hang in layout/layoutBlock/layoutBlockChildren preparing to print certain Mail messages + + When printing from Mail, WebHTMLView is a subview of the view that is actually printed and does not + receive calls that would set it to printing mode. Method adjustPageHeightNew is called repeatedly (for each page) during + printing and it enables printing mode temporarily for each call. This triggers two full style recalcs and layouts + each time making printing at least O(n^2). + + Instead of enabling printing mode and resetting it back immediatly do the resetting asynchronously, after + all adjustPageHeightNew calls are done. Normal Safari printing is not affected as adjustPageHeightNew is only + called in case WebHTMLView is embedded in the view that is being printed. + + No automatic test possible, requires printing and non-Safari client. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): + +2007-07-10 Geoffrey Garen + + Reviewed by Maciej Stachowiak. + + - Fixed REGRESSION(10.4.9-9A377a): REAP Suite + installer shows empty modal alert window (hangs) if user cancels during + "installing shared components" phase + + Added Adobe installers to the family of apps that need a data load + loading quirk. + + Added a linked-on-or-after check because this code is no longer + Tiger-only. + + I tested this code on Tiger and Leopard. + + * Misc/WebKitVersionChecks.h: + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDocumentLoaderMac.mm: + (needsDataLoadWorkaround): + (WebDocumentLoaderMac::setDataSource): + +2007-07-10 Darin Adler + + - fix build + + * WebView/WebHTMLView.mm: Add include of ContextMenu.h. + +2007-07-10 Darin Adler + + Reviewed by John Sullivan. + + - remove workaround for fixed AppKit mouse moved bug + + * WebView/WebHTMLView.mm: Put the workaround for bug 3429631 inside an + ifdef BUILDING_ON_TIGER. + +2007-07-09 Anders Carlsson + + Reviewed by Oliver. + + + Acrobat 7 / Safari crash: CrashTracer: 99 crashes in Safari at + com.apple.WebCore: WebCore::NetscapePlugInStreamLoader::isDone const + 0 + + Add a new initWithFrameLoader: method to WebNetscapePluginStream which is to be used when + the stream is a "fake" stream for full frame plug-ins. + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView pluginView:receivedResponse:]): + * Plugins/WebNetscapePluginStream.h: + * Plugins/WebNetscapePluginStream.mm: + (-[WebNetscapePluginStream initWithFrameLoader:]): + (-[WebNetscapePluginStream initWithRequest:plugin:notifyData:sendNotification:]): + (-[WebNetscapePluginStream start]): + (-[WebNetscapePluginStream cancelLoadWithError:]): + (-[WebNetscapePluginStream stop]): + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::createFrame): + +2007-07-09 John Sullivan + + Reviewed by Darin + + - fixed WebKit should prevent Time Machine from backing up WebKit clients' icon databases + + * Misc/WebIconDatabase.mm: + (-[WebIconDatabase init]): + Re-added the code to exclude the icon database from backups. We now do this at the same time we (try to) import + the old icon database format, which happens only once per icon database's lifetime. + (-[WebIconDatabase _importToWebCoreFormat]): + Assert that we haven't imported yet rather than bailing out. It's now the caller's responsibility to check + whether we've imported yet. + +2007-07-08 John Sullivan + + * Misc/WebIconDatabase.mm: + (-[WebIconDatabase init]): + Removed the code to exclude the icon database from backups. We still want to do this, but in a way + that only runs once ever, instead of once per launch, due to performance concerns. + +2007-07-07 Darin Adler + + Reviewed by Maciej. + + - fix WebCore secondary-thread assertion should use linked-on-or-after check instead of building on Tiger check + + * Misc/WebKitVersionChecks.h: Added WEBKIT_FIRST_VERSION_WITH_MAIN_THREAD_EXCEPTIONS. + + * WebView/WebFrameView.mm: (-[WebFrameView initWithFrame:]): In first-time initialization block, + check for binaries linked against older versions of WebKit, and set the default thread violation + behavior to LogOnFirstThreadViolation. + + * WebView/WebView.mm: (+[WebView initialize]): Improved comments. + +2007-07-06 Oliver Hunt + + Reviewed by Maciej. + + Need to refactor IM/Marked text code to share logic with windows. + + Moved a number of methods from WebHTMLView into WebCore. + Replaced bridge methods with calls directly into WebCore objects. + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebHTMLView.mm: + (-[WebHTMLView setMarkedText:selectedRange:]): + Now calls WebCore object methods directly, rather than calling + via the bridge. + +2007-07-06 John Sullivan + + Reviewed by Brady + + - WebKit part of fix for: + Time Machine shouldn't back up WebKit's icon database files + + * Misc/WebIconDatabase.mm: + (-[WebIconDatabase init]): + Use CSBackupSetItemExcluded to tell Time Machine not to back up the icon database file + +2007-07-07 Mark Rowe + + Build fix. Update WebDynamicScrollBarsView.h to include methods added and used in r24060. + + * WebView/WebDynamicScrollBarsView.h: + +2007-07-05 Timothy Hatcher + + Reviewed by John. + + REGRESSION-9A458: SPI for setting scroll bar behavior doesn't work + + Calling setHorizontalScrollingMode: calls updateScrollers before returning, this will cause + WebCore to reset the scrolling mode based on the CSS overflow rules. So the setAlwaysShowHorizontalScroller: + and setAlwaysShowVerticalScroller: methods needed a way to lock the scrolling mode before + calling updateScrollers. + + * WebView/WebDynamicScrollBarsView.m: + (-[WebDynamicScrollBarsView updateScrollers]): + (-[WebDynamicScrollBarsView setHorizontalScrollingMode:]): + (-[WebDynamicScrollBarsView setHorizontalScrollingMode:andLock:]): + (-[WebDynamicScrollBarsView setVerticalScrollingMode:]): + (-[WebDynamicScrollBarsView setVerticalScrollingMode:andLock:]): + (-[WebDynamicScrollBarsView setScrollingMode:]): + (-[WebDynamicScrollBarsView setScrollingMode:andLock:]): + * WebView/WebView.mm: + (-[WebView setAlwaysShowVerticalScroller:]): + (-[WebView setAlwaysShowHorizontalScroller:]): + +2007-07-06 Mitz Pettel + + Reviewed by Maciej. + + - fix http://bugs.webkit.org/show_bug.cgi?id=10267 + Can't scroll page downwards with scroll wheel, when pointer is on top of non-scrolling iframe + + * WebView/WebDynamicScrollBarsView.m: + (-[WebDynamicScrollBarsView scrollWheel:]): Override the superclass + implementation to forward the wheel event to the next responder if this view + does not allow scrolling in the event's direction. + +2007-07-05 John Sullivan + + Reviewed by Adam + + - WebKit part of fix for + + * WebView/WebDocumentPrivate.h: + new selectionImageForcingBlackText: method. selectionImageForcingWhiteText: is no longer used and was never + in an official release of WebKit, so it could be removed, except that doing so would cause trouble for people + using nightly WebKit with Safari 3.0 beta. So I left it in, but made it just force black text instead of + white text, which will look different for those nightly WebKit/Safari 3.0 beta people but not break anything. + + * Misc/WebSearchableTextView.m: + (-[WebSearchableTextView selectionImageForcingBlackText:]): + new unimplemented protocol method for this obsolete class + + * WebView/WebHTMLView.mm: + (-[WebHTMLView selectionImageForcingBlackText:]): + calls through to WebCore the way selectionImageForcingWhiteText: used to + (-[WebHTMLView selectionImageForcingWhiteText:]): + now just calls selectionImageForcingBlackText:, thus not working as you would expect from the name + + * WebView/WebPDFView.mm: + (-[WebPDFView selectionImageForcingBlackText:]): + guts of old selectionImageForcingWhiteText:, but with black substituted for white + (-[WebPDFView selectionImageForcingWhiteText:]): + now just calls selectionImageForcingBlackText:, thus not working as you would expect from the name + +2007-07-05 Timothy Hatcher + + Reviewed by John. + + Shiira 2.1 throws an exception open a new window: -[WebInspector window]: unrecognized selector + + Add an empty implementation of this method to prevent Shiira from throwing an exception. + Also log that this method is obsolete and the class will be removed. + + * WebInspector/WebInspector.mm: + (-[WebInspector window]): + +2007-07-04 Adam Roben + + Move tooltip logic down into WebCore so that it can be shared cross-platform + + Reviewed by Sam. + + * WebCoreSupport/WebChromeClient.h: + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::setToolTip): Added. + * WebView/WebHTMLView.mm: Removed _resetCachedWebPreferences. + (-[WebHTMLView _updateMouseoverWithEvent:]): Removed tooltip code. + (-[WebHTMLView initWithFrame:]): Removed call to + _resetCachedWebPreferences. + (-[WebHTMLView setDataSource:]): Ditto. + * WebView/WebHTMLViewInternal.h: Removed showsURLsInToolTips ivar. + * WebView/WebHTMLViewPrivate.h: Added declaration for _setTooltip so + that WebChromeClient can call it. + +2007-07-04 Adam Roben + + Initialize Settings::showsURLsInToolTips + + Reviewed by Sam. + + * WebView/WebView.mm: + (-[WebView _updateWebCoreSettingsFromPreferences:]): + +2007-07-04 Adam Roben + + Removed call to mouseDidMoveOverElement now that WebCore handles it + + Reviewed by Sam. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _updateMouseoverWithEvent:]): + +2007-07-04 Adam Roben + + Add WebChromeClient::mouseDidMoveOverElement + + This is not called yet. + + Reviewed by Sam. + + * WebCoreSupport/WebChromeClient.h: + * WebCoreSupport/WebChromeClient.mm: + +2007-07-03 Darin Adler + + * StringsNotToBeLocalized.txt: Updated for recent changes. + +2007-07-03 Timothy Hatcher + + Reviewed by Darin. + + Remove HIWebView in 64-bit. + + Also disable a few calls that are now gone in 64-bit and filed these bugs: + + WebKit needs to adopt HIGetMousePosition where we used GetGlobalMouse before + WebKit needs to move off of CopyEvent in WebBaseNetscapePluginView + WebKit needs a new solution for HISearchWindowShow on 64-bit + + * Carbon/CarbonUtils.m: + * Carbon/CarbonWindowAdapter.m: + * Carbon/CarbonWindowContentView.m: + * Carbon/CarbonWindowFrame.m: + * Carbon/HIViewAdapter.m: + (SetViewNeedsDisplay): + * Carbon/HIWebView.m: + (Draw): + (SyncFrame): + * Configurations/WebKit.xcconfig: + * Plugins/WebBaseNetscapePluginView.mm: + (+[WebBaseNetscapePluginView getCarbonEvent:]): + (TSMEventHandler): + * WebKit.LP64.exp: Added. + * WebView/WebView.mm: + (-[WebView _searchWithSpotlightFromMenu:]): + +2007-07-03 Adam Roben + + Merge the Windows and Mac localized strings and exceptions files + + Reviewed by Darin and Anders. + + * English.lproj/Localizable.strings: Added Windows strings. + * StringsNotToBeLocalized.txt: Renamed from WebKit/English.lproj/StringsNotToBeLocalized.txt. + +2007-07-03 Adele Peterson + + Removed printf I accidently left in. + + * Misc/WebNSURLExtras.m: (mapHostNames): + +2007-07-03 Adele Peterson + + Reviewed by Darin. + + Fix for: domain names shouldn't contain ignorable characters + + * Misc/WebNSURLExtras.m: + (isLookalikeCharacter): Renamed. Also excludes any non-printable character, + any character considered as whitespace that isn't already converted to a space by ICU, any ignorable character, + and any character excluded in Mozilla's blacklist: http://kb.mozillazine.org/Network.IDN.blacklist_chars + (allCharactersInIDNScriptWhiteList): + +2007-07-03 Darin Adler + + Reviewed by Maciej. + + - fix WebDataSource lifetime problem -- may be cause of the leaks seen on the buildbot + + * WebView/WebDataSource.mm: + (-[WebDataSourcePrivate dealloc]): Added a call to the new detachDataSource function. + (-[WebDataSourcePrivate finalize]): Ditto. + + * WebView/WebDocumentLoaderMac.h: Added detachDataSource function to be used when the + WebDataSource is deallocated. Added retain/releaseDataSource helper functions to be + used to retain and release the data source object. Replaced the m_hasEverBeenDetached + boolean with a more primitive and hence easier to understand m_isDataSourceRetained boolean. + + * WebView/WebDocumentLoaderMac.mm: + (WebDocumentLoaderMac::WebDocumentLoaderMac): Initialize m_isDataSourceRetained to false. + (WebDocumentLoaderMac::setDataSource): Call retainDataSource instead of calling HardRetain + on the dataSource parameter. Also updated a comment. + (WebDocumentLoaderMac::attachToFrame): Call retainDataSource unconditionally rather than + trying to use m_hasEverBeenDetached to decide if a retain is needed. Also got rid of an + assertion that m_loadingResources is empty -- not important any more. + (WebDocumentLoaderMac::detachFromFrame): Call releaseDataSource instead of using + HardRelease, but only if m_loadingResources is empty. If it's non-empty, then we'll + do the releaseDataSource later in decreaseLoadCount. + (WebDocumentLoaderMac::increaseLoadCount): Call retainDataSource unconditionally + rather than calling HardRetain only if the old set of resources was empty. + (WebDocumentLoaderMac::decreaseLoadCount): Call releaseDataSource if m_loadingResources + is empty and we're not attached to a frame. If we are attached to a frame, then + we'll do the releaseDataSource later in detachFromFrame. + (WebDocumentLoaderMac::retainDataSource): Added. Calls CFRetain, but only if the data + source is not already retained (according to the boolean). + (WebDocumentLoaderMac::releaseDataSource): Added. Calls CFRelease, but only if the data + source is currently retained (according to the boolean). + (WebDocumentLoaderMac::detachDataSource): Added. Sets m_dataSource to nil. Since this + is only called from WebDataSource's dealloc and finalize methods, it won't ever be called + when the m_isDataSourceRetained boolean is true. + +2007-07-03 Darin Adler + + - forgot to check in one file in the fix for + some classes need finalize methods because of non-trivial work done in dealloc methods + + * WebView/WebView.mm: (-[WebViewPrivate finalize]): Delete identifierMap so it doesn't leak. + +2007-07-03 Anders Carlsson + + Reviewed by Darin. + + * WebView/WebView.mm: + (-[WebView stringByEvaluatingJavaScriptFromString:]): + ASSERT that the value returned isn't nil. It can't be nil when invoked on the main frame. + +2007-07-04 Mark Rowe + + Unreviewed 64-bit build fixes. + + * WebCoreSupport/WebInspectorClient.mm: Let the compiler know that WebFrameView is a subclass of NSView. + * WebView/WebDocumentInternal.h: Remove our preprocessor macro once we're done with it. + * WebView/WebHTMLView.mm: + (-[WebHTMLView markAllMatchesForText:caseSensitive:limit:]): Fix argument types. + +2007-07-02 Darin Adler + + Reviewed by Kevin Decker and Tim Hatcher. + + - fix some classes need finalize methods + because of non-trivial work done in dealloc methods + + * DefaultDelegates/WebScriptDebugServer.m: + (-[WebScriptDebugServer dealloc]): Added a comment about how this probably won't + work under GC. + * WebInspector/WebNodeHighlight.m: + (-[WebNodeHighlight dealloc]): Ditto. + + * WebView/WebDataSource.mm: + (+[WebDataSourcePrivate initialize]): Added. Makes finalize run on main thread. + (-[WebDataSourcePrivate finalize]): Added. Calls deref on the document loader. + * WebView/WebHTMLView.mm: + (+[WebHTMLViewPrivate initialize]): Added. Makes finalize run on main thread. + (-[WebHTMLViewPrivate finalize]): Added. Calls deref on promisedDragTIFFDataSource. + + * WebKit.xcodeproj/project.pbxproj: Let Xcode be Xcode. + +2007-07-02 Oliver Hunt + + Reviewed by Justin. + + Fix for + WebKit does not correctly handle replacement ranges from the IM in -[WebHTMLView insertText:] + http://bugs.webkit.org/show_bug.cgi?id=13664 + + We replicate the logic of -[WebHTMLView setMarkedText:selectedRange:] to handle the Input Method + feeding us a replacement string through insertText: so we can handle IMs that use insertText to + replace text. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView insertText:]): + +2007-07-01 Oliver Hunt + + Reviewed by Alexey. + + Fix for Some events are still passed to WebCore despite being handled by the IM + http://bugs.webkit.org/show_bug.cgi?id=14457 + + We have to assume that the IM will consume all events, so we remove the dependency + on -[WebHTMLView hasMarkedText]. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): + +2007-06-29 John Sullivan + + Reviewed by Oliver Hunt. + + - WebKit support for accessing the set of rectangles that encompass the selected text + + * WebView/WebDocumentPrivate.h: + added -selectionTextRects to WebDocumentSelection protocol; tweaked comments + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _selectionDraggingRect]): + use selectionRect instead of selectionImageRect since they're the same and maybe we can get + rid of selectionImageRect someday + (-[WebHTMLView selectionTextRects]): + added implementation of new protocol method, which calls through to WebCore + + * WebView/WebPDFView.mm: + (-[WebPDFView selectionTextRects]): + added simple implementation of new protocol method, which just returns the single selection rect. + PDFKit doesn't support obtaining multiple rects to describe a multi-line selection. + (-[WebPDFView selectionImageForcingWhiteText:]): + use selectionRect instead of selectionImageRect since they're the same and maybe we can get + rid of selectionImageRect someday + + * Misc/WebSearchableTextView.m: + (-[WebSearchableTextView selectionTextRects]): + added no-op implementation of new protocol method to this obsolete class + +2007-06-28 Timothy Hatcher + + Reviewed by Darin. + + WEBVIEW: Creating a webview in IB 3.0 (v2.0) NIB later crashes Interface Builder 2.5.4 on Tiger + + Prevent encoding any of the WebView subviews. The subviews are ignored by -[WebView initWithCoder:] and will be recreated. + The Tiger 2.0 code crashed when the WebView released the subviews in initWithCoder:, so now there are no subviews to release. + This never happened before because the Tiger 2.0 code and IB wouldn't encode a WebView that has a WebHTMLView. + + * WebView/WebView.mm: + (-[WebView encodeWithCoder:]): + +2007-06-26 John Sullivan + + Reviewed by Darin + + - WebKit support for displaying multiple text matches in PDF views () + + * WebView/WebPDFView.h: + new ivars textMatches and lastScrollPosition; now conforms to WebMultipleTextMatches protocol + + * WebView/WebPDFView.mm: + (-[WebPDFView dealloc]): + release textMatches + (-[WebPDFView viewDidMoveToWindow]): + start observing bounds changes in the PDF document's enclosing clip view, so we can notice when + scrolling takes place + (-[WebPDFView viewWillMoveToWindow:]): + stop observing bounds changes in the PDF document's enclosing clip view + (-[WebPDFView searchFor:direction:caseSensitive:wrap:startInSelection:]): + most of the code here has been moved into the new method _nextMatchFor::::, which this now calls + (-[WebPDFView setMarkedTextMatchesAreHighlighted:]): + implementation of WebMultipleTextMatches protocol method, does nothing useful here because we don't + support inline highlighting of matches in PDF documents + (-[WebPDFView markedTextMatchesAreHighlighted]): + implementation of WebMultipleTextMatches protocol method + (-[WebPDFView markAllMatchesForText:caseSensitive:limit:]): + implementation of WebMultipleTextMatches protocol method; calls _nextMatchFor:::: in a loop until + entire document is searched or limit is hit; records results by saving PDFSelections in textMatches ivar + (-[WebPDFView unmarkAllTextMatches]): + implementation of WebMultipleTextMatches protocol method; clears saved textMatches + (-[WebPDFView rectsForTextMatches]): + implementation of WebMultipleTextMatches protocol method; converts saved PDFSelections into NSValue + objects that represent NSRects + (-[WebPDFView _clipViewForPDFDocumentView]): + new helper method to find the clip view whose bounds determine the current scroll position + (-[WebPDFView _nextMatchFor:direction:caseSensitive:wrap:fromSelection:startInSelection:]): + new helper method, extracted from searchFor::::: + (-[WebPDFView _PDFDocumentViewMightHaveScrolled:]): + new notification callback; tells webView's delegate when document has scrolled + (-[WebPDFView _setTextMatches:]): + new helper method, stores value in ivar + +2007-06-26 Oliver Hunt + + Reviewed by Maciej. + + Hopefully fix remainder of the IME issues on Mac. + We now assume that the IME silently consumes any event given + to it during text composition, and only override this assumption + if the NSTextInput or NSResponder callbacks are made. + + This prevents us from treating those events that the IME has + consumed internally (eg. candidate window navigation) as unhandled + events that should be bubbled. + + This fixes: + Major problems handling key press event with non-english Input Methods + REGRESSION: Mail: Inputting space (U+0020) with IM deletes subsequent line breaks on Mail.app + REGRESSION: Reverse conversion keyboard command does not work in Safari. + REGRESSION: Inline is confirmed after press left/right arrow keys, happens in Mail but not in TextEdit. + REGRESSION: Can't undo conversion of inline text (by hitting ESC) + REGRESSION: Active input area lost "selected" highlight + space key pressed to close the associated words candidate window gets inserted as text + Candidate item for character matrix is sometimes skipped + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebHTMLView.mm: + (-[WebHTMLView launchKeyEvent:]): + (-[WebHTMLView keyDown:]): + (-[WebHTMLView keyUp:]): + (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): + (-[WebHTMLView unmarkText]): + (-[WebHTMLView setMarkedText:selectedRange:]): + (-[WebHTMLView doCommandBySelector:]): + (-[WebHTMLView insertText:]): + +2007-06-26 Jim Correia + + Reviewed by Darin. + + Fix http://bugs.webkit.org/show_bug.cgi?id=14411 + Bug 14411: WebNetscapePluginPackage overagressively sets CurApRefNum, which affects shipping versions of BBEdit. + + + * Plugins/WebNetscapePluginPackage.m: + (+[WebNetscapePluginPackage initialize]): Force the Resource Manager to + lazy initialize, and only set CurApRefNum to the system file if + CurApRefNum is still -1 after that forced lazy initialization. + +2007-06-25 Kevin Decker + + Reviewed by Darin. + + -[WebView customTextEncodingName] API may return empty string instead of nil + + * WebView/WebView.mm: + (-[WebView _mainFrameOverrideEncoding]): Addded the nsStringNilIfEmpty() inline to the data being returned because + our API says "The custom text encoding name or nil if no custom text encoding name has been set." I also verified + the standing Tiger WebKit behavior for this method and it does indeed return nil if a custom encoding wasn't set. + +2007-06-25 John Sullivan + + Reviewed by Darin + + - WebKit part of , needed to support multiple matches in PDFs + + * WebView/WebDocumentInternal.h: + Added WebMultipleTextMatches protocol, containing five methods that were formerly implemented in WebHTMLView + * WebView/WebHTMLViewPrivate.h: + Removed declarations for the methods that are now in WebMultipleTextMatches protocol + + * WebView/WebHTMLView.mm: + (-[WebHTMLView markAllMatchesForText:caseSensitive:limit:]): + moved this method into the WebDocumentInternalProtocols portion of the file + (-[WebHTMLView setMarkedTextMatchesAreHighlighted:]): + ditto + (-[WebHTMLView markedTextMatchesAreHighlighted]): + ditto + (-[WebHTMLView unmarkAllTextMatches]): + ditto + (-[WebHTMLView rectsForTextMatches]): + ditto + + * WebView/WebView.mm: + (-[WebView canMarkAllTextMatches]): + new method, returns YES only if the documentView of every frame implements WebMultipleTextMatches + (-[WebView markAllMatchesForText:caseSensitive:highlight:limit:]): + check for WebMultipleTextMatches protocol instead of checking for WebHTMLView class + (-[WebView unmarkAllTextMatches]): + ditto + (-[WebView rectsForTextMatches]): + ditto + + * WebView/WebViewPrivate.h: + declared new method canMarkAllTextMatches + +2007-06-25 John Sullivan + + Reviewed by Darin + + Fixed Find on Page doesn't work (throws exception) on page that includes PDF in a subframe + + * WebView/WebView.mm: + (-[WebView markAllMatchesForText:caseSensitive:highlight:limit:]): + We were testing whether the view was an HTMLView, but then running code that assumed it was an HTMLView outside of + that test. That's a bad idea. + +2007-06-22 Adele Peterson + + Reviewed by Geoff and Darin. + + Fix for: Other slash characters should not be permitted as part of a domain name + + * Misc/WebNSURLExtras.m: + (isSlashOrPeriodLookalike): + (allCharactersInIDNScriptWhiteList): + +2007-06-21 Sam Weinig + + Reviewed by Antti. + + Remove empty directories + + * WebInspector/webInspector: directory removed. + * WebInspector/webInspector/Images: directory removed + +2007-06-21 Justin Garcia + + Reviewed by Tim. + + + REGRESSION: Keyboard commands don't work in a message window until you click inside the message + + When you open a message in its own window, Mail creates an empty + WebView, makes that WebView firstResponder and then sets off a + load inside that WebView. + + When we're asked to create the empty WebView, we put an empty + WebHTMLView inside it (in r21367 we began creating a document + for empty frames). When Mail makes the WebView first responder + we make that empty WebHTMLView firstResponder. Then when the + load finishes we create a new WebHTMLView and set it as the + document view. + + Inside _setDocumentView, if the old document view or one of its + descendants was the first responder, we'd makeFirstResponder:nil + so that the window wouldn't be left with a firstResponder that + was no longer inside of it. This change fixes the bug by instead + transferring firstResponder status to the new document view. + + We could also fix this by not allowing the WebHTMLView to become + firstResponder when it's in the provisional state mentioned above. + + * WebView/WebFrameView.mm: + (-[WebFrameView _setDocumentView:]): + +2007-06-21 John Sullivan + + Reviewed by Adele + + - fixed REGRESSION: Context menu missing for PDF in frame when there's no selection + + This was surprisingly interesting. It turns out that at least for Safari, the method [WebDefaultUIDelegate + webView:contextMenuItemsForElement:defaultMenuItems:] is only exercised from WebPDFView these days. It mimics + some of the code that was moved to WebCore as part of the Great Context Menu Refactoring of 2006, but is + independent of that code. And it was partly broken/incomplete, probably as a result of said refactoring. + + * DefaultDelegates/WebDefaultContextMenuDelegate.mm: + (localizedMenuTitleFromAppKit()): + deleted this function since I removed all callers + (-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]): + Handle WebMenuItemTagOpenFrameInNewWindow tag, since code later in this file was relying on it. Added + ASSERT_NOT_REACHED to the default case, since returning nil from this method is bad. + Also, use WebKit versions of menu title strings rather than AppKit versions. We added these strings to WebKit + a while back so we don't need to sneakily find them in AppKit anymore. + (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]): + make the WebView be the target of the Open Frame in New Window item; previously it was self, but that was + just silly (probably a leftover from some code shuffling when context menus were reimplemented) + + * WebView/WebView.mm: + (-[WebView _openFrameInNewWindowFromMenu:]): + new method, used by Open Frame in New Window menu item. + + * WebView/WebViewInternal.h: + Declare new method used by menu item. This isn't necessary for compilation, but could prevent the accidental + deletion of the method implementation. + +2007-06-20 Mark Rowe + + Reviewed by Adam. + + Fix http://bugs.webkit.org/show_bug.cgi?id=14255. + Bug 14255: Reproducible crash opening web inspector from debug menu + + Reinstate the WebInspector class so WebKit clients that currently depend on it + will build and run correctly. + + * WebInspector/WebInspector.h: Added. + * WebInspector/WebInspector.mm: Added. + (+[WebInspector webInspector]): + (-[WebInspector dealloc]): + (-[WebInspector setWebFrame:]): + (-[WebInspector showWindow:]): + * WebKit.exp: + * WebKit.xcodeproj/project.pbxproj: + +2007-06-20 Adam Roben + + Land the new Inspector. + + Co-written with Tim Hatcher. + + Reviewed by Anders, Adele, Hyatt, and Sam. + + Implement the InspectorClient interface. + + * WebCoreSupport/WebInspectorClient.h: Added. + * WebCoreSupport/WebInspectorClient.mm: Added. + (WebInspectorClient::WebInspectorClient): + (WebInspectorClient::inspectorDestroyed): + (WebInspectorClient::createPage): + (WebInspectorClient::showWindow): + (WebInspectorClient::closeWindow): + (WebInspectorClient::attachWindow): + (WebInspectorClient::detachWindow): + (WebInspectorClient::highlight): + (WebInspectorClient::hideHighlight): + (WebInspectorClient::inspectedURLChanged): + (WebInspectorClient::updateWindowTitle): + (-[WebInspectorWindowController init]): + (-[WebInspectorWindowController initWithInspectedWebView:]): + (-[WebInspectorWindowController dealloc]): + (-[WebInspectorWindowController inspectorVisible]): + (-[WebInspectorWindowController webView]): + (-[WebInspectorWindowController window]): + (-[WebInspectorWindowController windowShouldClose:]): + (-[WebInspectorWindowController close]): + (-[WebInspectorWindowController showWindow:]): + (-[WebInspectorWindowController attach]): + (-[WebInspectorWindowController detach]): + (-[WebInspectorWindowController highlightAndScrollToNode:]): + (-[WebInspectorWindowController highlightNode:]): + (-[WebInspectorWindowController hideHighlight]): + (-[WebInspectorWindowController animationDidEnd:]): + + Add an easier-to-see highlight. + + * Misc/WebNSViewExtras.h: + * Misc/WebNSViewExtras.m: + (-[NSView _web_convertRect:toView:]): + * WebInspector/WebNodeHighlight.h: + * WebInspector/WebNodeHighlight.m: + (-[WebNodeHighlightFadeInAnimation setCurrentProgress:]): + (-[WebNodeHighlight initWithTargetView:]): + (-[WebNodeHighlight setHighlightedNode:]): + (-[WebNodeHighlight highlightedNode]): + (-[WebNodeHighlight dealloc]): + (-[WebNodeHighlight attachHighlight]): + (-[WebNodeHighlight delegate]): + (-[WebNodeHighlight detachHighlight]): + (-[WebNodeHighlight show]): + (-[WebNodeHighlight hide]): + (-[WebNodeHighlight animationDidEnd:]): + (-[WebNodeHighlight ignoresMouseEvents]): + (-[WebNodeHighlight highlightView]): + (-[WebNodeHighlight setDelegate:]): + (-[WebNodeHighlight setHolesNeedUpdateInTargetViewRect:]): + (-[WebNodeHighlight setIgnoresMouseEvents:]): + (-[WebNodeHighlight targetView]): + (-[WebNodeHighlight _computeHighlightWindowFrame]): + (-[WebNodeHighlight _repositionHighlightWindow]): + * WebInspector/WebNodeHighlightView.h: + * WebInspector/WebNodeHighlightView.m: + (-[WebNodeHighlightView initWithWebNodeHighlight:]): + (-[WebNodeHighlightView dealloc]): + (-[WebNodeHighlightView detachFromWebNodeHighlight]): + (-[WebNodeHighlightView drawRect:]): + (-[WebNodeHighlightView webNodeHighlight]): + (-[WebNodeHighlightView fractionFadedIn]): + (-[WebNodeHighlightView setFractionFadedIn:]): + (-[WebNodeHighlightView setHolesNeedUpdateInRect:]): + (-[WebNodeHighlightView _holes]): + + WebView changes needed for the new Inspector. + + * WebView/WebView.mm: Remove the old _inspectElement method now that + this is handled by WebCore. + (-[WebView _isClosed]): Added. + (-[WebView initWithFrame]): Give each Page an InspectorClient to + enable the Inspector. + * WebView/WebViewPrivate.h: + + Updates needed for WebCore changes. + + * WebCoreSupport/WebContextMenuClient.h: + * WebCoreSupport/WebContextMenuClient.mm: + * WebCoreSupport/WebViewFactory.mm: + (-[WebViewFactory contextMenuItemTagInspectElement]): + * WebView/WebUIDelegatePrivate.h: + + Remove old Inspector code. + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache): + (WebFrameLoaderClient::assignIdentifierToInitialRequest): + (WebFrameLoaderClient::dispatchDidFinishLoading): + * WebInspector/WebInspector.m: Removed. + * WebInspector/WebInspectorPanel.h: Removed. + * WebInspector/WebInspectorPanel.m: Removed. + * WebInspector/webInspector/Images/button.png: Removed. + * WebInspector/webInspector/Images/buttonDivider.png: Removed. + * WebInspector/webInspector/Images/buttonPressed.png: Removed. + * WebInspector/webInspector/Images/close.png: Removed. + * WebInspector/webInspector/Images/closePressed.png: Removed. + * WebInspector/webInspector/Images/downTriangle.png: Removed. + * WebInspector/webInspector/Images/menu.png: Removed. + * WebInspector/webInspector/Images/menuPressed.png: Removed. + * WebInspector/webInspector/Images/popup.png: Removed. + * WebInspector/webInspector/Images/popupPressed.png: Removed. + * WebInspector/webInspector/Images/resize.png: Removed. + * WebInspector/webInspector/Images/rightTriangle.png: Removed. + * WebInspector/webInspector/Images/scrollThumbBottom.png: Removed. + * WebInspector/webInspector/Images/scrollThumbMiddle.png: Removed. + * WebInspector/webInspector/Images/scrollTrackBottom.png: Removed. + * WebInspector/webInspector/Images/upTriangle.png: Removed. + * WebInspector/webInspector/inspector.css: Removed. + * WebInspector/webInspector/inspector.html: Removed. + * WebInspector/webInspector/inspector.js: Removed. + * WebInspector/webInspector/scrollarea.js: Removed. + * WebInspector/webInspector/scrollbar.js: Removed. + * WebInspector/webInspector/utilities.js: Removed. + * WebView/WebFrame.mm: + (-[WebFramePrivate dealloc]): + * WebView/WebFrameInternal.h: + * WebView/WebHTMLView.mm: + (-[WebHTMLView menuForEvent:]): + + Build-fu: + + * WebKit.exp: + * WebKit.xcodeproj/project.pbxproj: + +2007-06-20 Justin Garcia + + Reviewed by Darin. + + REGRESSION (Safari 3 Beta 1): Pressing Delete doesn't delete an HTML message in Mail + + Mail wasn't receiving the keyDown event because WebFrameView was blocking it. + It blocks the event and moves back/forward on Delete/Shift+Delete if the + back/forward list is enabled. + + * WebView/WebFrameView.mm: + (-[WebFrameView keyDown:]): Check to see if the BackForwardList is + enabled. It always exists. + +2007-06-19 Anders Carlsson + + Reviewed by Kevin Decker. + + REGRESSION (Safari 3 Beta 1): Incoming iChat messages are delayed + + * WebView/WebDocumentLoaderMac.mm: + (needsAppKitWorkaround): + New function which checks if the frame load delegate belongs to AppKit. + + (WebDocumentLoaderMac::setDataSource): + If the frame load delegate belongs to AppKit, set m_deferMainResourceDataLoad to false. + +2007-06-19 John Sullivan + + Reviewed by Tim Hatcher + + - fixed Hole for find-on-page match in subframe isn't clipped by frame bounds + + * WebView/WebView.mm: + (-[WebView rectsForTextMatches]): + intersect the HTMLView's computed rect with the visible rect for that view + +2007-06-19 Jim Correia + + Reviewed by Kevin Decker + + * Carbon/HIWebView.m: + (WindowHandler): HIObjectIsOfClass requires non-NULL input on Tiger. Reworked Kevin Decker's patch to remove the conditional compilation for Tiger, yet still avoid crashing BBEdit. + +2007-06-18 Sam Weinig + + Reviewed by Beth. + + Build fix. + + * WebCoreSupport/WebChromeClient.mm: + +2007-06-18 Kevin Decker + + * Carbon/HIWebView.m: + (WindowHandler): Fixed the Tiger build; ControlKind wasn't defined. + +2007-06-18 Kevin Decker + + Reviewed by Tim Hatcher. + + Fixed: With Safari 3 Tiger Beta installed, a crash occurs in BBEdit while mousing down and dragging outside of HTML preview window + + * Carbon/HIWebView.m: + (WindowHandler): Because the fix for 5051616 causes Tiger to crash in HIToolbox (but not on Leopard), I reverted back to using GetControlKind + on Tiger only, instead of HIObjectIsOfClass. + +2007-06-16 David Hyatt + + Back out fix for 13972. Quicktime will no longer clip correctly. :( + Too many regressions in Mail caused by inserting an extra view into the + hierarchy. Can revisit later. + + Reviewed by olliej + + * Plugins/WebPluginController.mm: + (-[WebPluginController destroyPlugin:]): + (-[WebPluginController destroyAllPlugins]): + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:DOMElement:loadManually:]): + * WebView/WebHTMLView.mm: + (-[WebHTMLView addSubview:]): + (-[WebHTMLView willRemoveSubview:]): + +2007-06-15 Sam Weinig + + Reviewed by Darin. + + Patch for http://bugs.webkit.org/show_bug.cgi?id=14053 + Autogenerate JS binding for Rect + + - Fix conflicts by using ::Rect instead of Rect. + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): + (-[WebBaseNetscapePluginView sendEvent:]): + (-[WebBaseNetscapePluginView tellQuickTimeToChill]): + (-[WebBaseNetscapePluginView invalidateRegion:]): + (-[WebBaseNetscapePluginView _printedPluginBitmap]): + +2007-06-15 Anders Carlsson + + Reviewed by Kevin. + + A better fix for . Only try to access the element if the + view has an associated window. This also works with GC. (Fix suggested by Kevin.) + + * Plugins/WebKitPluginContainerView.mm: + (-[WebKitPluginContainerView dealloc]): + (-[WebKitPluginContainerView visibleRect]): + +2007-06-15 Anders Carlsson + + Reviewed by Kevin. + + REGRESSION: A crash occurs when closing a window that contains a QT movie + + In some cases, calling [super dealloc] might end up calling visibleRect, so make sure to + set _element to 0 so we won't send a message to a freed object and crash. + + * Plugins/WebKitPluginContainerView.mm: + (-[WebKitPluginContainerView dealloc]): + (-[WebKitPluginContainerView visibleRect]): + +2007-06-14 Anders Carlsson + + Reviewed by Geoff. + + Call cleanupScriptObjectsForPlugin on the frame after destroying the plug-in. + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView _destroyPlugin]): + * Plugins/WebPluginController.mm: + (-[WebPluginController destroyPlugin:]): + (-[WebPluginController destroyAllPlugins]): + +2007-06-13 John Sullivan + + Reviewed by Adele Peterson + + - fixed Clicking the "Save to Downloads" button in + PDF overlay too soon results in corrupt file + + * WebView/WebPDFView.mm: + (-[WebPDFView PDFViewSavePDFToDownloadFolder:]): + Just beep if the document isn't available yet, since trying to save it as a file + really isn't a good idea. + +2007-06-12 Oliver Hunt + + Reviewed by Darin. + + Use correct size for BITMAPINFOHEADER -- whoops. + + * win/WebIconDatabase.cpp: + (createDIB): + (WebIconDatabase::getOrCreateDefaultIconBitmap): + +2007-06-10 David Hyatt + + Fix for bug 14037, make sure respondsToSelector does the write thing + when invoked on a WebKit plugin's container view. + + Reviewed by Mark Rowe + + * Plugins/WebKitPluginContainerView.mm: + (-[WebKitPluginContainerView respondsToSelector:]): + +2007-06-08 John Sullivan + + * WebView/WebViewPrivate.h: + Added a FIXME + +2007-06-07 Justin Garcia + + Reviewed by Tristan. + + A crash occurs when selecting Undo Typing for a page that has been closed in tab + + * WebView/WebView.mm: + (-[WebView _clearUndoRedoOperations]): Added. + * WebView/WebViewPrivate.h: + +2007-06-07 Oliver Hunt + + Reviewed by Sam "The Intern" Weinig. + + Don't be overzealous with the input checks, firstRectForCharacterRange + can be determined even when there is not an active editable region. + + This unbreaks editing/input/range-for-empty-document which was broken + by aforementioned overzealousness. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView firstRectForCharacterRange:]): + +2007-06-07 Oliver Hunt + + Reviewed by Justin. + + Add checks to make sure we don't try to create, use + or return invalid ranges to TSM when it calls us despite + not currently being in an editable region. + + * WebView/WebHTMLView.mm: + (isTextInput): + (-[WebHTMLView textStorage]): + (-[WebHTMLView firstRectForCharacterRange:]): + (-[WebHTMLView selectedRange]): + (-[WebHTMLView attributedSubstringFromRange:]): + +2007-06-06 David Hyatt + + Make sure to hand back a script object for webkit plugins (the container + view forwards to its plugin child). + + Reviewed by sullivan + + * Plugins/WebKitPluginContainerView.h: + * Plugins/WebKitPluginContainerView.mm: + (-[WebKitPluginContainerView objectForWebScript]): + +2007-06-06 David Hyatt + + Fix for bug 13972, quicktime doesn't respect CSS clip and overflow properties. + Make sure that calls to [NSView visibleRect] will do the right thing for both + Netscape plugins and WebKit plugins. + + Reviewed by olliej + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView visibleRect]): + (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): + (-[WebBaseNetscapePluginView isOpaque]): + * Plugins/WebKitPluginContainerView.h: Added. + * Plugins/WebKitPluginContainerView.mm: Added. + (-[WebKitPluginContainerView initWithFrame:DOMElement:]): + (-[WebKitPluginContainerView dealloc]): + (-[WebKitPluginContainerView visibleRect]): + * Plugins/WebPluginController.mm: + (-[WebPluginController destroyAllPlugins]): + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:DOMElement:loadManually:]): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebHTMLView.mm: + (-[WebHTMLView addSubview:]): + (-[WebHTMLView willRemoveSubview:]): + +2007-06-04 Oliver Hunt + + Reviewed by Geoff and Justin. + + Fix for Clicking URL field on + Safari causes halt for a minute when using input methods. + and Safari hangs for several + seconds when trying to select text using mouse + + This is a by product of the textStorage hack used to fix + rdar://problem/5000470 -- TSM calls textStorage repeatedly + when changing focus, on certain mouse events, etc. If there + is no selection/editable region we repeatedly create an + NSAttributedString from the full document. If the document is + sufficiently long this starts consuming an inordinate amount of + time. + + This check should really have been present in the original + patch. + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebHTMLView.mm: + (-[WebHTMLView textStorage]): + +2007-05-31 David Hyatt + + Fix for 11768, Flash plugin does not respect clips set by CSS. + + Reviewed by olliej + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): + +2007-05-30 Mark Rowe + + Build fixes after r21889. + + * ForwardingHeaders/kjs/function.h: Added. + +2007-05-29 Mark Rowe + + Reviewed by Geoff. + + 64-bit build fix. Ensure that use of WebNSUInteger in headers is matched by WebNSUInteger in implementations. + + * DefaultDelegates/WebScriptDebugServer.h: + * DefaultDelegates/WebScriptDebugServer.m: + (-[WebScriptDebugServer webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]): + (-[WebScriptDebugServer webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]): + * DefaultDelegates/WebScriptDebugServerPrivate.h: + * History/WebBackForwardList.mm: + (-[WebBackForwardList setPageCacheSize:]): + (-[WebBackForwardList pageCacheSize]): + * WebView/WebView.mm: + (-[WebView markAllMatchesForText:caseSensitive:highlight:limit:]): + +2007-05-26 Darin Adler + + Reviewed by Tim Hatcher. + + * MigrateHeaders.make: Added dependency on this makefile itself, which is + useful when you change the sed command or other aspect of this file. My build + failed until I made this fix. + +2007-05-25 Geoffrey Garen + + Reviewed by Darin Adler. + + Fixed The page cache has no global cap. + + The main WebKit changes are: + 1. Changed -[WebBackForwardList setPageCacheSize] and -[WebBackForwardList + pageCacheSize] to accomodate the new global page cache model, updating + their documentation. + + 2. Added -[WebPreferences setShouldUsePageCache] and -[WebPreferences + shouldUsePageCache] as pending public API. + + 3. Centralized calculation of object cache and page cache sizes inside + WebPreferences. + + Cchanged our old behavior of reading a preference and applying a fudge + factor with a new behavior of just using the preference directly. The + old behavior was confusing and often inappropriate. (For example, if + you set a page cache size of 100, a 256MB machine would somewhat + arbitrarily reduce that number to 98. ???) + + * WebView/WebView.mm: Added support for two flags to determine whether + to use the page cache. If either -[WebBackForwardList setPageCacheSize:0] + or -[WebPreferences setShouldUsePageCache:NO] is called, we don't use + the page cache. + +2007-05-25 Timothy Hatcher + + Reviewed by Kevin Decker. + + Changes for migration of DictionaryServices + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _lookUpInDictionaryFromMenu:]): look for the HIDictionaryWindowShow symbol in HIToolbox + +2007-05-25 Geoffrey Garen + + Reviewed by Oliver Hunt. + + Fixed global initializer (like you fix a dog). + + I'm not sure how our script missed this. I tested, and it generally doesn't + seem to work very well. + + * WebView/WebHTMLView.mm: Allocate lazily to avoid the performance hit of + a global initializer. + (promisedDataClient): + (-[WebHTMLViewPrivate dealloc]): + (-[WebHTMLViewPrivate clear]): + (-[WebHTMLView setPromisedDragTIFFDataSource:WebCore::]): + +2007-05-25 Brady Eidson + + Reviewed by Darin + + - REGRESSION - Certain mail message bodies display as empty + + This is due to http://trac.webkit.org/projects/webkit/changeset/21480 which unintentionally + made applewebdata urls result in check.call(false) instead of check.call(true) + + Best place for a fix is to have the FrameLoaderClient::canHandleRequest() call return true, which + really is rooted in WebView + + tracks adding a layout test + + * WebView/WebView.mm: + (+[WebView _canHandleRequest:]): Return true for applewebdata URLs + +2007-05-25 Geoffrey Garen + + Reviewed by Darin Adler, Tim Hatcher. + + "unsigned" => "WebNSUInteger" in public API. + + * History/WebBackForwardList.h: + * WebView/WebScriptDebugDelegate.h: + * WebView/WebUIDelegate.h: + * WebView/WebViewPrivate.h: + +2007-05-25 Geoffrey Garen + + Reviewed by Darin Adler. + + Moved JavaScriptCore-related pending public API to public API. + + * MigrateHeaders.make: Hack to prevent from + automatically converting to + + Moved -windowObject and -globalContext + + * WebView/WebFramePrivate.h: from here + * WebView/WebFrame.h: to here + * WebView/WebFrame.mm: and out of its temporary category + + Moved -didClearWindowObject:forFrame: + + * WebView/WebViewPrivate.h: from here + * WebView/WebFrameLoadDelegate.h: to here + +2007-05-25 John Sullivan + + Reviewed by Anders and Tim + + - fixed REGRESSION: In Gmail and Mail, a hang occurs when attempting + to grammar/spellcheck a word in a reply + + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::checkGrammarOfString): + Fixed recently-introduced false assumption that NSNotFound == -1 + +2007-05-24 dethbakin + + Reviewed by Geoff. + + Fix for QuickBooks Pro 2007:hang/crash + after closing QuickBooks Tutorial Center with Leopard9A377 + + We can hit a race condition where drawRect will be called after the + WebView has closed. Quickbooks does not properly close the WebView + and set the UIDelegate to nil, so the UIDelegate is stale and we + crash. This is a regression because the code that uses the + UIDelegate in the drawRect code path was only added recently. The + method that the UIDelegate calls into is new -- it does not exist + on Tiger -- so there is no harm in not running this code for + applications linked against older WebKits. Other applications may + run into this same bug so I am not doing a bundle + check...particularly because, as I mentioned, the new UIDelegate + call would not be implemented by older clients anyway. + + * Misc/WebKitVersionChecks.h: + * WebView/WebHTMLView.mm: + (-[WebHTMLView drawSingleRect:]): + +2007-05-24 Darin Adler + + * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes. + +2007-05-24 Oliver Hunt + + Reviewed by Adam, Darin, and Geoff. + + Fix for REGRESSION: The IM reconvert + function returns incorrect symbol due to inconsistent range + domains in TSM + + Text Services Management uses ranges provided by the + NSTextInput API to index into the string return by + -[WebHTMLView string]. As a result some input methods + incorrectly get their candidate text from the beginning + of the document instead of from the input element. + + TSM prefers to query -textStorage over -string so as a + workaround we provide an implementation of -textStorage that + returns the content of the current text input. TSM only ever + queries the result of textStorage as an NSAttributedString so + we do not need to implement a fake NSTextStorage class + + This should not cause harm to anything else as textStorage is + actually a method on NSTextView, which we clearly are not. TSM + only queries the method because it uses respondsToSelector to + control behaviour. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView textStorage]): + + +2007-05-24 David Harrison + + Reviewed by Tim Hatcher. + + REGRESSION: With View Source window opened, navigating to a different URL in the browser window results in a crash at WebCore::FrameLoader::frameHasLoaded() + + _private->loader->frameLoader() was not being nil checked. + * WebView/WebDataSource.mm: + (-[WebDataSource request]): + Add nil check for _private->loader->frameLoader() + +2007-05-23 Anders Carlsson + + Reviewed by Geoff. + + Resize large images to fit in the browser window + + Add new WebPreferences SPI. + + * WebView/WebPreferenceKeysPrivate.h: + * WebView/WebPreferences.m: + (+[WebPreferences initialize]): + (-[WebPreferences enableAutomaticImageResizing]): + (-[WebPreferences setEnableAutomaticImageResizing:]): + * WebView/WebPreferencesPrivate.h: + * WebView/WebView.mm: + (-[WebView _updateWebCoreSettingsFromPreferences:]): + +2007-05-23 Sam Weinig + + Reviewed by Darin. + + Patch for http://bugs.webkit.org/show_bug.cgi?id=13830 + Auto-generate JS DOM bindings for HTMLDocument and most of the rest + of HTMLElement + + * MigrateHeaders.make: add DOMHTMLDocumentPrivate.h + * WebKit.xcodeproj/project.pbxproj: + +2007-05-23 Oliver Hunt + + Reviewed by Geoff. + + Fix for REGRESSION: Can't drag and drop a standalone image + + The main resource for a standalone image webarchive has the same mimetype as the + underlying image. + + * Misc/WebNSPasteboardExtras.mm: + (-[NSPasteboard _web_writePromisedRTFDFromArchive:containsImage:]): + +2007-05-22 Sam Weinig + + Reviewed by Adam. + + Patch for http://bugs.webkit.org/show_bug.cgi?id=13833 + Add ObjC DOM binding for HTMLMarqeeElement + + - Also adds missing DOMHTMLFramePrivate. + + * MigrateHeaders.make: + +2007-05-22 Darin Adler + + Reviewed by Geoff. + + * WebInspector/webInspector/treeoutline.js: Use ownerDocument instead of non-standard + document property. + +2007-05-22 Adele Peterson + + Reviewed by Darin. + + Adding some asserts to help detect other cases of + + * WebCoreSupport/WebFrameBridge.mm: (-[WebFrameBridge makeFirstResponder:]): + +2007-05-22 Brady Eidson + + Reviewed by Kevin (Sarge) + + - Crash after closing a inline popup ad at http://news.yahoo.com/ + + This regressed in http://trac.webkit.org/projects/webkit/changeset/21618 + + * WebView/WebFrame.mm: + (-[WebFrame dataSource]): Null check the frameloader + +2007-05-21 Adele Peterson + + Fix by Darin, reviewed by me. + + Fix for Safari crashed closing tab in NSInputContext updateInputContexts + + * WebView/WebFrameView.mm: (-[WebFrameView _setDocumentView:]): If the old view is the first responder, + then set the window's first responder to nil so we don't leave the window pointing to a view that's no longer in it. + +2007-05-21 Brady Eidson + + Making the importance of my last change more clear + + * WebView/WebViewPrivate.h: "Leave for Dashboard, people!" + +2007-05-21 Brady Eidson + + Reviewed by Kevin (Sarge) + + - Re-add mistakenly removed SPI + + * WebView/WebView.mm: + (-[WebView handleAuthenticationForResource:challenge:fromDataSource:]): + * WebView/WebViewPrivate.h: + +2007-05-21 Anders Carlsson + + Reviewed by Ada. + + REGRESSION: With Shiira 1.2.2 , I can't open embedded link in flash object by clicking (http:/www.adobe.com ) + + Null check the request. + + * WebView/WebView.mm: + (+[WebView _canHandleRequest:]): + +2007-05-19 Maciej Stachowiak + + Reviewed by Geoff. + + REGRESSION (r21367): All messages appear entirely blank when running Mail off of tip of tree WebKit + + The fix is to return nil from [WebFrame dataSource] when it has not loaded anything but the fake + empty initial document. However, WebKit still needs the real data source internally, so I also + added a [WebFrame _dataSource] method that skips this check, and made WebKit use it throughout. + + * Misc/WebNSAttributedStringExtras.mm: + (fileWrapperForElement): + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView dataSource]): + * Plugins/WebNullPluginView.mm: + (-[WebNullPluginView viewDidMoveToWindow]): + * Plugins/WebPluginController.mm: + (-[WebPluginController URLPolicyCheckReferrer]): + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge dataSource]): + (-[WebFrameBridge redirectDataToPlugin:]): + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::makeDocumentView): + (WebFrameLoaderClient::forceLayoutForNonHTML): + (WebFrameLoaderClient::prepareForDataSourceReplacement): + (WebFrameLoaderClient::canCachePage): + * WebCoreSupport/WebViewFactory.mm: + (-[WebViewFactory bridgeForView:]): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebArchiver.mm: + (+[WebArchiver archiveFrame:]): + (+[WebArchiver archiveMainResourceForFrame:]): + (+[WebArchiver _archiveWithMarkupString:fromFrame:nodes:]): + (+[WebArchiver archiveSelectionInFrame:]): + * WebView/WebFrame.mm: + (-[WebFrame _loadURL:referrer:intoChild:]): + (-[WebFrame _addChild:]): + (-[WebFrame _dataSource]): + (-[WebFrame DOMDocument]): + (-[WebFrame dataSource]): + * WebView/WebFrameInternal.h: + * WebView/WebHTMLView.mm: + (-[WebHTMLView _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]): + * WebView/WebRenderNode.mm: + (-[WebRenderNode initWithWebFrameView:]): + * WebView/WebView.mm: + (-[WebView _mainFrameOverrideEncoding]): + (-[WebView mainFrameURL]): + (-[WebView mainFrameTitle]): + (-[WebView mainFrameIcon]): + (-[WebView validateUserInterfaceItemWithoutDelegate:]): + (-[WebView replaceSelectionWithArchive:]): + (-[WebView _isLoading]): + (-[WebView _performTextSizingSelector:withObject:onTrackingDocs:selForNonTrackingDocs:newScaleFactor:]): + (-[WebView _notifyTextSizeMultiplierChanged]): + +2007-05-18 Oliver Hunt + + Reviewed by Sam. + + Fix for http://bugs.webkit.org/show_bug.cgi?id=13782 + REGRESSION (r21528-r21533): Failing editing/selection/drag-in-iframe in pixel mode + + r21533 made used a DOMElement as the source for promise data, this meant it had to + clear the dragging pasteboard following the drag. In DRT a drag is non-blocking + so this resulted in us prematurely clearing the pasteboard. + + This patch avoids this problem by referencing the source CachedImage rather than the + DOMElement, so we don't need to worry about retaining an entire document forever, so + we don't need to clear the dragging pasteboard following the drag. + + * Misc/WebNSPasteboardExtras.mm: + (imageFromElement): + Extract the underlying CachedImage from a DOMElement + (-[NSPasteboard _web_writeImage:element:URL:title:archive:types:source:]): + Use a CachedImage instead of a DOMElement + + * WebCoreSupport/WebDragClient.mm: + (WebDragClient::startDrag): + + * WebKit.xcodeproj/project.pbxproj: + + * WebView/WebHTMLView.mm: + (-[WebHTMLViewPrivate dealloc]): + (-[WebHTMLViewPrivate clear]): + (-[WebHTMLView pasteboardChangedOwner:]): + (-[WebHTMLView pasteboard:provideDataForType:]): + (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): + (-[WebHTMLView WebCore::]): + (-[WebHTMLView setPromisedDragTIFFDataSource:WebCore::]): + Use CachedImage rather than DOMElement as promised data source + + * WebView/WebHTMLViewInternal.h: + * WebView/WebHTMLViewPrivate.h: + +2007-05-18 Tristan O'Tierney + + Reviewed by Brady E. + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::download): + asked the webframeloaderclient for its webview's history and + injected the originated url into the created WebDownload + +2007-05-18 John Sullivan + + Reviewed by Kevin Decker + + Improvement to WebKit part of fix for 5201499 based on more modern understanding. (That is, + a couple of hours more modern.) + + * WebView/WebUIDelegatePrivate.h: + add showPanel: parameter to just-introduced delegate method webView:saveFrameView: + + * WebView/WebPDFView.mm: + (-[WebPDFView PDFViewSavePDFToDownloadFolder:]): + pass NO for new showPanel: parameter, and update comment + +2007-05-18 Maciej Stachowiak + + Reviewed by John. + + REGRESSION (r21367): System widgets are drawn with vertical/horizontal scroll bars + + No test because the bug requires calling setAllowsScrolling: to reproduce. + + * WebView/WebFrameView.mm: + (-[WebFrameView setAllowsScrolling:]): Update the FrameView's scroll state as well as the one + on WebDynamicScrollBarsView, otherwise this setting won't stick if the frame has already loaded + a document. + +2007-05-18 Geoffrey Garen + + Fixed spelling error. + + * WebView/WebViewPrivate.h: + +2007-05-18 John Sullivan + + Reviewed by Kevin Decker + + WebKit part of fix for 5201499 (support for PDFKit UI for saving PDFs to disk) + + Also, the PDFKit mechanism for notifying clients about "Open File Externally" was + changed from a notification to a delegate method. The notification was new to + Leopard, so removing it doesn't affect clients in the field. + + * WebView/WebUIDelegatePrivate.h: + Declared new UI delegate method webView:saveFrameView:, analogous to the existing + webView:printFrameView: + + * WebView/WebPDFView.mm: + removed declaration of _webkit_PDFKitLaunchNotification + (-[WebPDFView viewDidMoveToWindow]): + don't observe _webkit_PDFKitLaunchNotification + (-[WebPDFView viewWillMoveToWindow:]): + ditto + (-[WebPDFView PDFViewOpenPDFInNativeApplication:]): + new PDFKit delegate method, replaces our use of _webkit_PDFKitLaunchNotification + (-[WebPDFView PDFViewSavePDFToDownloadFolder:]): + new PDFKit delegate method, calls through to new WebKit UI delegate method + +2007-05-17 Oliver Hunt + + Reviewed by Justin. + + Fix for Safari fails to create image file + after releasing dragged image that has changed on source page + + This patch fixes this bug by manually creating an NSFileWrapper from + the TIFF promise data for a drag if it is available. This bypasses + the problem of the required resource no longer being held due to page + loads or other constraints. + + We need to leave the old path in place to allow for the case where + the promised data is not available. + + * WebCoreSupport/WebDragClient.mm: + (WebDragClient::declareAndWriteDragImage): + Always use the top WebHTMLView as the pasteboard owner, this is + safe as we only use the owner for resolving promised types. + * WebView/WebHTMLView.mm: + (-[WebHTMLView _writeSelectionToPasteboard:]): + (-[WebHTMLView writeSelectionToPasteboard:types:]): + Always use the top WebHTMLView as the pasteboard owner. + (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): + Add path to create NSFileWrapper from promise data. + +2007-05-17 Oliver Hunt + + Reviewed by Adam. + + Fix for Trying to drag a large 6.2MB jpeg image + out of Safari is unexpectedly slow (4 copies of image plus RTF document on pasteboard) + + This patch causes the construction of the RTF and TIFF data to be delayed until requested. + + We delay TIFF construction from a DOMElement as this may require generating TIFF data + from the CachedImage, which is slow. To allow the TIFF data to be created later the + it's necessary to add a reference to the source DOMElement to the view. + + * Misc/WebNSPasteboardExtras.h: + * Misc/WebNSPasteboardExtras.mm: + (-[NSPasteboard _web_writePromisedRTFDFromArchive:containsImage:]): + Implements the delayed write of RTF data + (-[NSPasteboard _web_writeImage:element:URL:title:archive:types:source:]): + Set up the pasteboard to allow the data writing to be delayed + (-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]): + Now we need to pass the WebHTMLView on to _web_writeImage:element:URL:title:archive:types:source: + * WebCoreSupport/WebDragClient.mm: + (WebDragClient::startDrag): + Clear the dragging pasteboard once the drag has ended to ensure we don't hold references + to anything longer than we need to. + (WebDragClient::declareAndWriteDragImage): + + * WebView/WebHTMLView.mm: + (-[WebHTMLViewPrivate dealloc]): + (-[WebHTMLViewPrivate clear]): + (-[WebHTMLView pasteboardChangedOwner:]): + Make sure we clear out the DOMElement reference once it is no longer needed + (-[WebHTMLView pasteboard:provideDataForType:]): + Provide delayed data + (-[WebHTMLView _writeSelectionToPasteboard:]): + Make sure we set pasteboard ownership correctly + (-[WebHTMLView promisedDragTIFFDataSource]): + (-[WebHTMLView setPromisedDragTIFFDataSource:]): + (-[WebHTMLView writeSelectionToPasteboard:types:]): + * WebView/WebHTMLViewInternal.h: + * WebView/WebHTMLViewPrivate.h: + + * WebView/WebView.mm: + (-[WebView _writeImageForElement:withPasteboardTypes:toPasteboard:]): + +2007-05-16 Anders Carlsson + + Reviewed by Darin. + + Hamachi test tool causes assertion in FormCompletionController in Safari + + Update for WebCore changes. + + * WebView/WebFrame.mm: + (-[WebFrame _loadURL:referrer:intoChild:]): + +2007-05-15 Oliver Hunt + + Reviewed by Sam and Geoff. + + Removing dead code left behind from drag and drop refactoring. + + * WebCoreSupport/WebFrameBridge.mm: + * WebView/WebHTMLView.mm: + * WebView/WebHTMLViewPrivate.h: + +2007-05-15 Bruce Q Hammond + + Reviewed by Darin. + + Correction of previous patch for http://bugs.webkit.org/show_bug.cgi?id=13578 + This corrects the sign of the Y-Axis origin adjustment. + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): + +2007-05-15 Geoffrey Garen + + Reviewed by Maciej Stachowiak. + + Patch: fixed .5% performance regression caused + by r21307 + + The only code r21307 added that runs during the PLT is a frame load delegate + -respondsToSelector: call inside windowObjectCleared(), so it seems like + our message dispatch overhead for the frame load delegate is significant. + + This patch is a straight port of Maciej's fix for the same problem in the + resource load delegate. The solution is simple enough: don't use Objective-C. + Instead, use a special structure that caches which methods the delegate + implements, along with pointers to those methods. + + I verified each frame load delegate callback in the debugger, except for + -webView:didFailLoadWithError:forFrame:, which is not implemented by Safari + or DumpRenderTree. + + * WebKit/DefaultDelegates/WebDefaultFrameLoadDelegate.h: Removed. + * WebKit/DefaultDelegates/WebDefaultFrameLoadDelegate.m: Removed. + + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge windowObjectCleared]): I also removed a misleading + comment here. The JS debugger caches the windowScriptObject, so you do + need to re-create the debugger every time you invalidate the old + WebScriptObject wrapper for the window object and create a new one, or + the debugger will stop working. We could fix this in a number of ways, + but is not the key issue. + +2007-05-15 Maciej Stachowiak + + Reviewed by Hyatt and Lars. + + - fixed REGRESSION: Stop button enabled and other problems caused by [WebView currentURL] returning non-nil for empty window + + * WebView/WebDataSource.mm: + (-[WebDataSource request]): Return nil when we are still showing the initial empty doc + +2007-05-14 Geoffrey Garen + + Reviewed by Darin Adler. + + Updated for WebCore move to PageCache singleton. Also removed some WebCore:: + prefixes and replaced them with 'using namespace WebCore'. + + * History/WebHistoryItem.mm: + (+[WebHistoryItem _releaseAllPendingPageCaches]): + (-[WebWindowWatcher windowWillClose:]): + +2007-05-13 Darin Adler + + - one more retain/release for a tiny bit more robustness + + * WebView/WebPDFView.mm: + (-[WebPDFView _updatePreferences:]): [prefs release] + (-[WebPDFView _updatePreferencesSoon]): [prefs retain] + +2007-05-13 Darin Adler + + Reviewed by Geoff. + + - fix Webkit crashes going back from PDF at perl.org site + + * WebView/WebPDFView.h: Replace _updatePreferencesTimer with _willUpdatePreferencesSoon BOOL. + Also remove unneeded @public that gives other classes access to our dataSource member. + + * WebView/WebPDFView.mm: Rearrange top of file a bit, remove forward declaration of the + _cancelUpdatePreferencesTimer method. + (-[WebPDFView dealloc]): Removed call to _cancelUpdatePreferencesTimer. + (-[WebPDFView _updatePreferencesNow:]): Added WebPreferences parameter. This sidesteps problems + where the dataSource is no longer present by not looking at the dataSource field at all. + Also removed the call to _cancelUpdatePreferencesTimer, added code to set _willUpdatePreferencesSoon + to NO and added a release to balance a retain I did in _updatePreferencesSoon. + (-[WebPDFView _updatePreferencesSoon]): Changed to use performSelectorAfterDelay instead of + an NSTimer. Pass in the preferences object as a parameter, since we might not be able to get to + the dataSource when the timer fires. + +2007-05-10 Geoffrey Garen + + Reviewed by Darin Adler. + + "IconDatabase::sharedIconDatabase()" => "iconDatabase()" for terseness. + +2007-05-10 Adele Peterson + + Reviewed by Hyatt. + + WebKit part of fix for Doing a "find" in RSS doesn't scroll to result + + Updated to use selectionRect instead of visibleSelectionRect. selectionRect() now returns the visible rect by default. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _lookUpInDictionaryFromMenu:]): + (-[WebHTMLView selectionImageRect]): + +2007-05-10 dethbakin + + Reviewed by Darin. + + Fix for Leopard: Adobe Acrobat 8: + Distiller 8 needs same check fix as 4992521 + + * WebView/WebView.mm: + (-[WebView _updateWebCoreSettingsFromPreferences:]): Adobe + Distiller needs the same quirk. + +2007-05-10 Maciej Stachowiak + + Reviewed by Oliver. + + - WebKit part of fix for: + blank screen after login to Citibank Online (accessing document before frame starts loading cancels load) + REGRESSION (r20972): Wall Street Journal pages replaced by advertisements (13465) + + The basic approach is to have Frames start out containing an empty document instead of absolutely nothing, + so there is no need to initialize them on demand. Various side effects of that cause both of these bugs. + + However, this caused many regressions so I had to fix the fallout. + + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::takeFocus): Avoid focus cycle problems (can happen in DumpRenderTree + with initial empty document now). + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge finishInitializingWithPage:frameName:frameView:ownerElement:]): init the frame. + (-[WebFrameBridge determineObjectFromMIMEType:URL:]): return image type when appropriate + * WebView/WebFrame.mm: + (-[WebFrame stopLoading]): use stopForUserCancel(). + * WebView/WebFrameView.mm: + (-[WebFrameView _makeDocumentViewForDataSource:]): assume html when no mime type available. + * WebView/WebView.mm: + (-[WebView becomeFirstResponder]): Track whether we are becoming first responder from + outside the view. + (-[WebView _becomingFirstResponderFromOutside]): Return this value. + * WebView/WebViewInternal.h: + +2007-05-09 Oliver Hunt + + rs=Adele. + + The previous patch (r21346) broke editing, rolling out + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): + (-[WebHTMLView doCommandBySelector:]): + +2007-05-09 Adele Peterson + + Reviewed by Oliver. + + Re-applying fix for REGRESSION: Page scroll when selecting characters from inline input candidate window by arrow buttons + http://bugs.webkit.org/show_bug.cgi?id=13263 + + We don't need to call interpretKeyEvents for cmd-key events as + they events will be interpreted by performKeyEquivalent. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): + (-[WebHTMLView doCommandBySelector:]): + +2007-05-09 Mark Rowe + + Build fix to keep the buildbot happy. + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): + +2007-05-08 Bruce Q Hammond + + Reviewed by Darin. + + http://bugs.webkit.org/show_bug.cgi?id=13578 + Bug 13578: When QD plugins draw to an offscreen bitmap the origin is not correct + + Now we have correct handling of the origin when QD plugins draw to + offscreen bitmaps. + Also the clipping code for this path was doing unnecessary work which + caused incorrect results; it has been removed. + + This change should not affect Safari and in general will only affect + plugins (e.g. Flash) drawing to a CGBitmapContext. + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): + +2007-05-08 Steve Falkenburg + + Reviewed by Darin. + + Implemented spelling/grammar related WebEditorClient methods. + + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::ignoreWordInSpellDocument): Added. Call through to NSSpellChecker. + (WebEditorClient::learnWord): Added. Call through to NSSpellChecker. + (WebEditorClient::checkSpellingOfString): Added. Call through to NSSpellChecker. + (WebEditorClient::checkGrammarOfString): Added. Call through to NSSpellChecker. + (WebEditorClient::updateSpellingUIWithGrammarString): Added. Call through to NSSpellChecker. + (WebEditorClient::updateSpellingUIWithMisspelledWord): Added. Call through to NSSpellChecker. + (WebEditorClient::showSpellingUI): Added. Call through to NSSpellChecker. + (WebEditorClient::spellingUIIsShowing): Added. Call through to NSSpellChecker. + (WebEditorClient::getGuessesForWord): Added. Call through to NSSpellChecker. + +2007-05-08 Steve Falkenburg + + Reviewed by Ada. + + Slight modification to last editor method fix. + + * WebCoreSupport/WebEditorClient.h: + (WebEditorClient::updateSpellingUIWithGrammarString): + +2007-05-07 Geoffrey Garen + + Reviewed by Maciej Stachowiak. + + Fixed API for fetching JSGlobalContextRef from + WebView or WebFrame + + Added -[WebFrame windowObject] and -[WebFrame globalContext], along with + a new frame load delegate method, - (void)webView:(WebView *)webView + didClearWindowObject:(WebScriptObject *)windowObject forFrame:(WebFrame *)frame. + This is all to support briding between the WebScriptObject and JavaScriptCore + APIs. + + Also fixed more of API: WebScriptObject.h incorrectly + reports that -isSelectorExcludedFromWebScript returns NO by default, and + generally cleaned up the WebScriptObject headerdoc. + + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge windowObjectCleared]): + * WebView/WebFrame.mm: + (-[WebFrame windowObject]): + (-[WebFrame globalContext]): + * WebView/WebFramePrivate.h: + * WebView/WebViewPrivate.h: + +2007-05-07 Timothy Hatcher + + Reviewed by Darin. + + webView:validateUserInterfaceItem:defaultValidation: does not get called on WebUIDelegates + + Call the delegate when the one of our views gets a validateUserInterfaceItem: call. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Validate without the delegate. + (-[WebHTMLView validateUserInterfaceItem:]): Call the delegate with the result of validateUserInterfaceItemWithoutDelegate:. + * WebView/WebPDFView.mm: + (-[WebPDFView validateUserInterfaceItemWithoutDelegate:]): Validate without the delegate. + (-[WebPDFView validateUserInterfaceItem:]): Call the delegate with the result of validateUserInterfaceItemWithoutDelegate:. + * WebView/WebView.mm: + (-[WebView _responderValidateUserInterfaceItem:]): Call validateUserInterfaceItemWithoutDelegate: to prevent asking the delegate twice. + (-[WebView validateUserInterfaceItemWithoutDelegate:]): Validate without the delegate. + (-[WebView validateUserInterfaceItem:]): Call the delegate with the result of validateUserInterfaceItemWithoutDelegate:. + +2007-05-07 Brady Eidson + + Actually finish the code move from my last checkin + + * History/WebHistoryItem.mm: + (-[WebHistoryItem _transientPropertyForKey:]): + (-[WebHistoryItem _setTransientProperty:forKey:]): + +2007-05-07 Brady Eidson + + Rubberstamped by Kevin (Sarge) + + Make _transientPropertyForKey: and _setTransientProperty:forKey: SPI + + * History/WebHistoryItemInternal.h: + * History/WebHistoryItemPrivate.h: + +2007-05-04 Geoffrey Garen + + Reviewed by Tim Hatcher. + + First step in fixing The back cache has no global cap + + Stop giving SnapBack infinite cache-ability. Instead, make SnapBack rely + on the underlying back cache. + + I left -setAlwaysAttemptToUsePageCache: as an empty stub because we don't + want to break Safari 2.0, but I removed its header declaration so nobody + else starts using it. + + * History/WebHistoryItem.mm: + (-[WebHistoryItem setAlwaysAttemptToUsePageCache:]): + * History/WebHistoryItemPrivate.h: + +2007-05-04 Geoffrey Garen + + Reviewed by Brady Eidson. + + Some cleanup in preparation for fixing The + back/forward cache has no global cap + + Unified naming of WebKit/WebCore b/f lists -- instead of the potpourri + of webBackForwardList, backForwardList, list, kitList, coreList, listWrapper, + and webCoreBackForwardList, we use webBackForwardList for WebKit and + backForwardList for WebCore, matching their respective class names. + + Removed "private" versions of kit() and core() -- kit() and core() are + canonically used for converting between WebKit API objects and WebCore + API objects. I think it's clearer to have only one way to do this. + + Removed COMPUTE_DEFAULT_PAGE_CACHE_SIZE, since it was unused. + + Removed _clearPageCache, since it was unused and it duplicated -setPageCacheSize:0. + + Removed _usesPageCache, since it was unused and it duplicated -pageCacheSize. + +2007-05-04 Brady Eidson + + Reviewed by Mark Rowe + + Added main thread assertion to WebHTMLView to help make sure 3rd party clients aren't trying + to draw on secondary threads + + * WebView/WebHTMLView.mm: + (-[WebHTMLView drawRect:]): Added ASSERT_MAIN_THREAD() + +2007-05-04 Anders Carlsson + + Reviewed by Antti. + + Use the correct URLs when dispatching delegate methods for data loads. + + * WebView/WebFrame.mm: + (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): + If the base URL is nil, set it to "about:blank", and set the response URL to a generated applewebdata URL. + + * WebView/WebView.mm: + (+[WebView _canHandleRequest:]): + No need to special-case applewebdata URLs here anymore, they're only used in responses. + +2007-05-03 Steve Falkenburg + + Reviewed by Oliver. + + Add missing user description parameter to spelling-related editor client method. + + * WebCoreSupport/WebEditorClient.h: + (WebEditorClient::updateSpellingUIWithGrammarString): + +2007-05-03 TImothy Hatcher + + Reviewed by Kevin. + + REGRESSION: With NetNewsWire 2.1.1, the contextual menu shows extra menu items when focus + is placed in input or textarea field + + The NetNewsWire UI delegate isn't expecting calls for form controls, so we need to do a linked-on-or-after check. + If the application was linked against Tiger or earlier and the element is a text form control, just return the + default menu items and bypass the delegate call completely. + + * WebCoreSupport/WebContextMenuClient.mm: + (isPreVersion3Client): Cache the result of the WebKitLinkedOnOrAfter call + (fixMenusToSendToOldClients): Call the new isPreVersion3Client() + (fixMenusReceivedFromOldClients): Ditto. + (WebContextMenuClient::getCustomMenuFromDefaultItems): Return the default menu items if the element is a text form control. + +2007-05-03 Mark Rowe + + Reviewed by Geoff and Kevin. + + WebAssertions.h is still needed by some internal clients + + Second shot at fixing this error. Stub out the macros rather than forwarding to JavaScriptCore, which would + leave clients using this header trying to resolve JavaScriptCore symbols against WebKit when linking. This + should only happen in production builds when assertions should be disabled anyway as anyone building a + development configuration should be in a position to move away from using this header. + + * Misc/WebAssertions.h: + +2007-05-03 Timothy Hatcher + + Reviewed by Kevin. + + REGRESSION: "Open Link" contextual menu item appears twice in Mail + + Remove the check for Mail in fixMenusToSendToOldClients and fixMenusReceivedFromOldClients + when linked on or after Leopard. The isAppleMail() function is still used for Tiger Mail fixups. + + * WebCoreSupport/WebContextMenuClient.mm: + (fixMenusToSendToOldClients): + (fixMenusReceivedFromOldClients): + +2007-05-02 Anders Carlsson + + Reviewed by Brady. + + Assertion firing in [FrameProgressEntry addChild:forDataSource:] when navigating cnn.com + + The assertion fired because a plug-in was trying to load a subresource when a new load had started but not yet + committed. The check that would have prevented this was removed in order to fix . + + This puts back the check but changes it to allow loads where the target is the same frame as the plugin's parent frame. + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): + +2007-04-27 Timothy Hatcher + + Reviewed by Darin. + + There were only a couple calls to ResourceLoadDelegate forwarder left, + this removes the calls and adds a new cached method for didFailLoad. + + * WebKit/DefaultDelegates/WebDefaultResourceLoadDelegate.h: Removed. + * WebKit/DefaultDelegates/WebDefaultResourceLoadDelegate.m: Removed. + * WebKit/Plugins/WebNullPluginView.mm: Call the resource load delegate directly. + * WebKit/WebCoreSupport/WebFrameLoaderClient.mm: Call the cached didFailLoad delegate function. + * WebKit/WebKit.xcodeproj/project.pbxproj: Remove WebDefaultResourceLoadDelegate. + * WebKit/WebView/WebDataSource.mm: Remove the #import for WebDefaultResourceLoadDelegate.h + * WebKit/WebView/WebView.mm: Remove the ResourceLoadDelegate forwarder, and remove a method that isn't used. + * WebKit/WebView/WebViewInternal.h: Ditto. + * WebKit/WebView/WebViewPrivate.h: Remove a method that is no longer used. + +2007-04-27 David Harrison + + Reviewed by Darin. + + Export JS list creation support as ObjC SPI for Mail + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebHTMLView.mm: + (-[WebHTMLView _selectedRange]): + (-[WebHTMLView _shouldDeleteRange:]): + (-[WebHTMLView _canEdit]): + (-[WebHTMLView _canEditRichly]): + (-[WebHTMLView _hasSelection]): + (-[WebHTMLView _hasSelectionOrInsertionPoint]): + (-[WebHTMLView _hasInsertionPoint]): + (-[WebHTMLView _isEditable]): + Condense the check for nil [self frame]. + Remove canEditRichly checks and rely on the editor to do the check instead. + + (-[WebHTMLView _insertOrderedList]): + (-[WebHTMLView _insertUnorderedList]): + New. + + (-[WebHTMLView _canIncreaseSelectionListLevel]): + (-[WebHTMLView _canDecreaseSelectionListLevel]): + (-[WebHTMLView _increaseSelectionListLevel]): + (-[WebHTMLView _increaseSelectionListLevelOrdered]): + (-[WebHTMLView _increaseSelectionListLevelUnordered]): + (-[WebHTMLView _decreaseSelectionListLevel]): + Moved from bridge to frame editor. + + * WebView/WebHTMLViewPrivate.h: + Add _insertOrderedList and _insertUnorderedList to WebHTMLView(WebPrivate) + +2007-04-27 Brady Eidson + + Rubberstamped by Mark + + Remove default implementation of UIDelegate method that was removed + + I have also been instructed to give Tim a hard time about this one - apparently + it was his job to clean it out and he failed... failed miserably. + + :) + + * DefaultDelegates/WebDefaultUIDelegate.m: Removed webViewPrint: + +2007-04-27 Maciej Stachowiak + + Reviewed by Mark. + + Repro ASSERT (would be crash) in KJS::GCLock::GCLock (13462) + http://bugs.webkit.org/show_bug.cgi?id=13462 + + * WebInspector/WebInspector.m: + (-[WebInspectorPrivate dealloc]): Delay release of WebView to avoid GC re-entrancy. + +2007-04-27 Anders Carlsson + + Reviewed by Mitz. + + + View Source is broken; empty window is shown + + Return YES for applewebdata URLs. + + * WebView/WebView.mm: + (+[WebView _canHandleRequest:]): + +2007-04-26 Oliver Hunt + + Reviewed by Adam. + + Fix REGRESSION: In Gmail, image fails + to be inserted into message field after dragging + + Don't try to create tags for local image files as it results + in the potential to submit forms that look like they have an image, + when in reality they don't. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _documentFragmentWithPaths:]): + +2007-04-26 Anders Carlsson + + Reviewed by Maciej. + + documents no longer have a default base URL + + If the base URL is nil, then create a unique applewebdata URL to match what Tiger WebKit does. + + * WebView/WebFrame.mm: + (createUniqueWebDataURL): + (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): + +2007-04-25 Oliver Hunt + + Rubber stamped by Adele. + + Roll out WebKit changes from from r21052 to fix regression noted in + REGRESSION: In Mail, pressing option-command- ' doesn't decrease block quote in selection + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): + (-[WebHTMLView doCommandBySelector:]): + +2007-04-25 Steve Falkenburg + + Reviewed by Adam. + + Mac callbacks for new spelling methods in WebEditorClient. + Not used yet. + + * WebCoreSupport/WebEditorClient.h: + (WebEditorClient::ignoreWordInSpellDocument): + (WebEditorClient::learnWord): + (WebEditorClient::checkSpellingOfString): + (WebEditorClient::checkGrammarOfString): + (WebEditorClient::updateSpellingUIWithGrammarString): + (WebEditorClient::updateSpellingUIWithMisspelledWord): + (WebEditorClient::showSpellingUI): + (WebEditorClient::spellingUIIsShowing): + (WebEditorClient::getGuessesForWord): + +2007-04-24 Geoffrey Garen + + Reviewed by Darin Adler, Tim Hatcher. + + Fixed a few NSAutoreleasePool issues I noticed while reviewing Brady's patch. + + * Carbon/CarbonUtils.m: + (PoolCleaner): Call -drain instead of -release, since -release is a + no-op in a GC world. + + * Misc/WebKitErrors.m: + (registerErrors): Condensed onto one line. + + * Plugins/WebPluginDatabase.m: + (-[WebPluginDatabase refresh]): Call -drain instead of -release, since + -release is a no-op in a GC world. + + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::setStatusbarText): + + * WebInspector/WebNodeHighlightView.m: + (-[WebNodeHighlightView initWithHighlight:andRects:forView:]): Don't drain + and then release because drain deallocates the receiver, so the release + is an over-release. + + * WebView/WebView.mm: + (-[WebView rectsForTextMatches]): Re-allocate the pool after draining it, + because drain deallocates the receiver, so the drain would leave you without + any autorelease pool, causing a leak and then an over-release at the bottom + of the loop. + +2007-04-24 Brady Eidson + + Reviewed by Beth, Hyatt, Ada, and Darin + + and + Provide support for the icon.db to be moved to a different directory from the old WebKit-style + icons, and remove the old directory if that is the case + + * Misc/WebIconDatabase.mm: + (-[WebIconDatabase init]): + (-[WebIconDatabase _importToWebCoreFormat]): Check "imported()" to determine if a conversion is needed + - Look for WebIconDatabaseImportDirectoryDefaultsKey for the source location for the conversion + - Set "imported" to true in the Icons.db + - If the new Icons.db isn't in the same patch as the old icons, delete the entire directory when finished + - Move old icon.db to Icons.db to reflect rename + * Misc/WebIconDatabasePrivate.h: Add WebIconDatabaseImportDirectoryDefaultsKey so a WebKit client can tell WebKit + where to look for the old icons if their location is different from the icon.db + * WebKit.exp: + +2007-04-24 Mitz Pettel + + Reviewed by Oliver Hunt. + + Changed an apostrophe (') into a right single quotation mark (U+2019). + + * WebInspector/webInspector/inspector.js: + +2007-04-24 Mitz Pettel + + Reviewed by Timothy Hatcher. + + - fix http://bugs.webkit.org/show_bug.cgi?id=13459 + The "mapped style" link next to an attribute doesn't work + + * WebInspector/webInspector/inspector.js: Added a check that the rule is + mapped from an attribute. + +2007-04-23 Adele Peterson + + Fixed and reviewed by Darin, Adele, and Oliver. + + WebKit part of fix for REGRESSION: Page scroll when selecting characters from inline input candidate window by arrow buttons + http://bugs.webkit.org/show_bug.cgi?id=13263 + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): If we have no command after calling interpretKeyEvents, we assume the input method handled the key. + (-[WebHTMLView doCommandBySelector:]): Add noop: to the command vector, but then when actually performing actions, ignore it. + +2007-04-23 Timothy Hatcher + + Reviewed by Darin. + + IB3 crashes when loading a nib containing a WebView that has a WebHTMLView encoded inside + + Since WebView's initWithCoder throws away all the decoded subviews, the WebHTMLView gets dealoced while it has a nil _private pointer. + Checking for a nil _private in WehHTMLView's close fixes this crash. No need to implement a full initWithCoder for WebHTMLView since + it will be thrown away by the WebView anyway. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView close]): Return earily if _priviate is nil. + (-[WebHTMLView initWithFrame:]): Unrelated change that removes an AppKit version check that predates Tiger. + +2007-04-23 Timothy Hatcher + + Reviewed by Mark Rowe. + + Remove the "No Selection" message after leaving search mode. + This was a regression caused by the inspector refresh. + + * WebInspector/webInspector/inspector.js: + +2007-04-23 Timothy Hatcher + + Reviewed by Darin. + + Bug 6658: World leak when closing inspected window + http://bugs.webkit.org/show_bug.cgi?id=6658 and + + Removes over-retains of the inspector WebView, WebInspector and WebInspectorPanel. + + * WebInspector/WebInspector.m: + (+[WebInspector sharedWebInspector]): Return the global sharedWebInspector variable. + (-[WebInspector window]): Release the window after calling setWindow:. + (-[WebInspector windowWillClose:]): Set the JavaScript Inspector variable to null and expire the current highlight. + Also clear the global sharedWebInspector variable and release it if self equals sharedWebInspector. + (-[WebInspector showWindow:]): Set the JavaScript Inspector variable back to self. + * WebInspector/WebInspectorInternal.h: Remove the isSharedInspector member variable. + * WebView/WebView.mm: + (-[WebView windowScriptObject]): Return nil if core([self mainFrame]) is NULL. + +2007-04-23 Darin Adler + + Reviewed by Hyatt. + + - rename box-sizing to -webkit-box-sizing + + * WebInspector/webInspector/inspector.css: Here. + * WebInspector/webInspector/inspector.js: And here, in the expected default CSS values list. + +2007-04-22 Timothy Hatcher + + Reviewed by Darin. + + The fix for ASSERTION failure on quit @ talkcrunch.com in _NPN_ReleaseObject + was #ifdefed out in Production builds. + + * WebView/WebView.mm: + (+[WebView initialize]): Move the #ifdef REMOVE_SAFARI_DOM_TREE_DEBUG_ITEM inside initialize around the specific code + (+[WebView _applicationWillTerminate]): Moved outside the #ifdef REMOVE_SAFARI_DOM_TREE_DEBUG_ITEM block + +2007-04-22 Timothy Hatcher + + Reviewed by Mitz. + + Bug 13436: Make Option-clicking a disclosure triangle expand the entire subtree + http://bugs.webkit.org/show_bug.cgi?id=13436 + + Makes option-click recursively expand and collapse the sub-tree. Pressing option-left + and -right also recursively expands and collapses the sub-tree. + + * WebInspector/webInspector/treeoutline.js: + +2007-04-22 Timothy Hatcher + + Reviewed by Mitz. + + Bug 13437: Inspector does not update when navigating to a different page + http://bugs.webkit.org/show_bug.cgi?id=13437 + + * WebInspector/webInspector/inspector.js: Correctly update to a new root node + if the new focus node and the old focus node don't have a common ancestor. + +2007-04-22 Darin Adler + + Reviewed by Adele. + + - fix for REGRESSION: Control-O broken + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): Update to handle a vector of + command names instead of a single command. + (-[WebHTMLView doCommandBySelector:]): Change logic so that we add the command to a vector + and also so that the interpretKeyEvents parameters are still intact for a second call to + doCommandBySelector:, since the key bindings mechanism can do more than one. + (-[WebHTMLView insertText:]): Added comment. + +2007-04-21 Darin Adler + + Reviewed by Oliver. + + - fix some problems I ran into using the inspector + + * WebInspector/webInspector/inspector.js: Add some null checks. + +2007-04-20 Timothy Hatcher + + Reviewed by Darin. + + Merge over the WebInspectorRefresh branch. This change removes the NSOutlineView and + is replaced with a HTML/JavaScript tree. Most of the inspector logic is now in the JavaScript. + + A few bugs are fixed by these changes: + + Bug 6615: Parent node drop-down list is upside-down + http://bugs.webkit.org/show_bug.cgi?id=6615 + + Bug 6643: REGRESSION: Tree view repaints lines without erasing them first + http://bugs.webkit.org/show_bug.cgi?id=6643 + + Bug 6650: Web Inspector HTML Hierarchy can't be scrolled with scrollwheel + http://bugs.webkit.org/show_bug.cgi?id=6650 + + Bug 6677: Can't drag inspector when tree view has focus + http://bugs.webkit.org/show_bug.cgi?id=6677 + + Bug 7326: Web Inspector tree scrollbar always shows up when resizing the top pane down + http://bugs.webkit.org/show_bug.cgi?id=7326 + + * WebInspector/WebInspector.h: Removed the searchQuery methods. + * WebInspector/WebInspector.m: Removed the DOMNode category and code for the old outline view. + * WebInspector/WebInspectorOutlineView.h: Removed. + * WebInspector/WebInspectorOutlineView.m: Removed. + * WebInspector/WebInspectorInternal.h: Remove some methods and instance variables. + * WebInspector/webInspector/Images/resize.png: Added. + * WebInspector/webInspector/inspector.css: + * WebInspector/webInspector/inspector.html: Include the new classes and remove the plugin. + * WebInspector/webInspector/inspector.js: Changes to use the new tree outline and other fixes. + * WebInspector/webInspector/scrollarea.js: Copied from the Dashboard widget resources. + * WebInspector/webInspector/scrollbar.js: Ditto. + * WebInspector/webInspector/treeoutline.js: New tree outline class. + * WebInspector/webInspector/utilities.js: DOM and String prototype additions. + * WebKit.xcodeproj/project.pbxproj: Remove WebInspectorOutlineView. + +2007-04-20 Brady Eidson + + Reviewed by Oliver (Black Sheep) + + + [WebView setMaintainsBackForwardList:] doesn't actually flush out the current page caches + + * WebView/WebView.mm: Remove _private->useBackForwardList + (-[WebView _setInitiatedDrag:]): Use _private->page instead of [self page] + (-[WebView initWithCoder:]): Manipulate the flag that is now in WebCore::BackForwardList + (-[WebView encodeWithCoder:]): Ditto + (-[WebView backForwardList]): Use _private->page instead of [self page] + (-[WebView setMaintainsBackForwardList:]): Manipulate the flag that is now in WebCore::BackForwardList + +2007-04-20 Anders Carlsson + + Reviewed by Maciej. + + REGRESSION: Some Flash links at www.jumpskyhigh.com just reload the page + + Get rid of the check that would prevent plugin requests from being loaded if a new page load was underway. + www.jumpskyhigh.com had a flash movie that was embedded inside an tag and clicking on the plug-in would cause the + URL pointed to by the tag to start loading and thus preventing the plug-in from loading the real URL. + + This check was added by Maciej and we should be able to remove it with the loader changes that have happened now, + (mainly the fact that resource loaders are handled by the document loader instead of the frame loader). + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): + +2007-04-19 Oliver Hunt + + Reviewed by Adam. + + Fix for -- REGRESSION: Content-Disposition: + filename is ignored for drag-and-drop. + + * WebView/WebResource.mm: + (-[WebResource _fileWrapperRepresentation]): + When creating the NSFileWrapper check the response for a preferred + filename, rather than just blindly hoping for the best. + +2007-04-19 Anders Carlsson + + Reviewed by John. + + + REGRESSION (r20812): [WebFrame DOMDocument] is returning non-nil value in bookmarks view, causing trouble in Safari + + Put back the MIME type check as a workaround. + * WebView/WebFrame.mm: + (-[WebFrame DOMDocument]): + +2007-04-19 Mark Rowe + + Reviewed by Oliver and Adam. + + WebAssertions.h is still needed by some internal clients. + + * Misc/WebAssertions.h: Added. + * WebKit.xcodeproj/project.pbxproj: + +2007-04-17 Brady Eidson + + Reviewed by Tim + + + Expose the NSURLConnection delegate willCacheResponse API to WebResourceLoadDelegate + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::willCacheResponse): Call + [WebResourceLoadDelegate webView:resource:willCacheResponse:fromDataSource:]; + + * WebView/WebView.mm: + (-[WebView _cacheResourceLoadDelegateImplementations]): Pull out the willCacheResponse impl + + * WebView/WebViewPrivate.h: Add WebResourceLoadDelegatePrivate category for this new SPI + +2007-04-18 John Sullivan + + Reviewed by Adam + + - fixed REGRESSION: Activity window shows blank name for untitled pages + + * WebView/WebHTMLRepresentation.mm: + (-[WebHTMLRepresentation title]): + return nil for empty string, to match old behavior + +2007-04-17 John Sullivan + + Reviewed by Tim Hatcher + + - fixed Safari doesn't remember some changes to the PDF scale and display mode + + Some of the user interactions that could change the PDF scale and display mode were not going through + the proxy mechanism in WebPDFView that updates preferences. Now we also listen to PDFKit notifications + in order to catch the other cases. + + * WebView/WebPDFView.h: + new _ignoreScaleAndDisplayModeNotifications and _updatePreferencesTimer ivars + + * WebView/WebPDFView.mm: + (-[WebPDFView setPDFDocument:]): + ignore scale and display mode notifications while we're setting up a fresh document + (-[WebPDFView dealloc]): + cancel the new timer (which releases it) + (-[WebPDFView viewDidMoveToWindow]): + listen for two PDFKit notifications + (-[WebPDFView viewWillMoveToWindow:]): + stop listening to the two PDFKit notifications + (-[WebPDFView _applyPDFDefaults]): + white space change + (-[WebPDFView _cancelUpdatePreferencesTimer]): + invalidate, release, and nil out the timer + (-[WebPDFView _scaleOrDisplayModeChanged:]): + update preferences soon, unless deliberately ignoring these notifications + (-[WebPDFView _updatePreferencesNow]): + cancel timer, then save data to preferences (code for saving the data was extracted from + -[PDFPrefUpdatingProxy forwardInvocation:]) + (-[WebPDFView _updatePreferencesSoon]): + use timer to consolidate multiple calls into one action; formerly we were setting preferences + multiple times for some atomic user actions + (-[PDFPrefUpdatingProxy forwardInvocation:]): + call _updatePreferencesSoon where we used to immediately set preferences + +2007-04-17 John Sullivan + + Reviewed by Kevin Decker + + - fixed "Look Up in Dictionary" item is always disabled for PDF pages + + * WebView/WebPDFView.mm: + (-[WebPDFView validateUserInterfaceItem:]): + enable "Look Up in Dictionary" only if we're using a version of PDFKit that knows how to do so + (-[WebPDFView _canLookUpInDictionary]): + use respondsToSelector to test whether the current version of PDFKit supports this non-API feature + (-[WebPDFView _lookUpInDictionaryFromMenu:]): + implement this method, which WebKit includes in the context menu when there's selected text + (-[WebPDFView _menuItemsFromPDFKitForEvent:]): + updated comment for this change + +2007-04-16 Darin Adler + + Rubber stamped by Tim Hatcher. + + * WebKit.xcodeproj/project.pbxproj: Added Radar bug number to the error message + for the "version number ending in 4" check so folks from Apple can find the + original bug that motivated for this. To summarize what's in that bug, it says that + was failing, that it was because of the OpenCube DHTML Menu, + and that some other affected sites were not using OpenCube (so the error is presumably + more widespread). + +2007-04-16 Darin Adler + + Reviewed by John Sullivan. + + - fix http://bugs.webkit.org/show_bug.cgi?id=13303 + REGRESSION: controls in a background Safari window + maintain active appearance if the address bar has focus (13303) + + * WebView/WebHTMLView.mm: (-[WebHTMLView _windowChangedKeyState]): + Added. Calls FrameView::updateControlTints. + +2007-04-13 Oliver Hunt + + Reviewed by Adam. + + Due to rdar://problem/5133910 -- WebArchives should not be constructed + using resource from the cache -- We may try to create a potentially + incorrect WebArchive when dragging an image multiple times. + + This patch retains the assertion for invalid behaviour, but adds a + branch to make sure we don't try to do anything with the WebArchive + in release builds. + + * Misc/WebNSPasteboardExtras.mm: + (-[NSPasteboard _web_writeImage:element:URL:title:archive:types:]): + +2007-04-13 Timothy Hatcher + + Reviewed by Dave Harrison. + + Soho Mail build fails because of renamed SPI + + * WebView/WebUIDelegatePrivate.h: define WebMenuItemTagSearchInGoogle as OldWebMenuItemTagSearchWeb + +2007-04-13 Mark Rowe + + Reviewed by Oliver. + + Using WebPreferencesPrivate.h requires modifying framework search path + + * WebView/WebPreferencesPrivate.h: Remove unneeded #ifdef. + +2007-04-12 Deneb Meketa + + Reviewed by Darin Adler. + + http://bugs.webkit.org/show_bug.cgi?id=13029 + rdar://problem/4994849 + Bug 13029: Permit NPAPI plug-ins to see HTTP response headers. + + * Plugins/WebBaseNetscapePluginStream.h: declarations. + * Plugins/WebBaseNetscapePluginStream.mm: main implementation. + (-[WebBaseNetscapePluginStream dealloc]): cleanup. + (-[WebBaseNetscapePluginStream finalize]): cleanup. + (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:headers:]): + Pass headers along. + (-[WebBaseNetscapePluginStream startStreamWithResponse:]): + Main work is here. Extract headers from NSHTTPURLResponse object into a byte sequence. + See comments here about how it would be nice to have low-level access to the HTTP response. + (-[WebBaseNetscapePluginStream _destroyStream]): cleanup. + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): + Conform to new startStream params. Not applicable here, pass nil. + +2007-04-12 Brady Eidson + + Build fix for case sensitive file systems + + * Misc/WebNSPasteboardExtras.mm: + * WebCoreSupport/WebPasteboardHelper.mm: + +2007-04-11 John Sullivan + + Reviewed by Anders + + - WebKit part of fix for: + REGRESSION: At least one PDF context menu item isn't appearing on Leopard + + * Misc/WebNSArrayExtras.h: Added. + * Misc/WebNSArrayExtras.m: Added. + (-[NSMutableArray _webkit_removeUselessMenuItemSeparators]): + New file, includes this method to strip leading, trailing, and duplicate separators from arrays + of NSMenuItems (copied from Safari) + + * WebView/WebUIDelegatePrivate.h: + new MenuItemTag enum values for new PDFKit context menu items + + * WebKit.xcodeproj/project.pbxproj: + updated for new files + + * WebView/WebPDFView.mm: + (-[WebPDFView _anyPDFTagsFoundInMenu:]): + check for new PDFKit context menu items + (-[WebPDFView _menuItemsFromPDFKitForEvent:]): + associate new PDFKit context menu item selectors with the new tags; skip certain selectors that + correspond to menu items that WebKit already includes; remove useless menu item separators when + we're done, since we might have removed arbitrarily-placed menu items + +2007-04-11 Oliver Hunt + + Reviewed by Maciej. + + Adding RetainPtr to the many global obj-c pointers we use in + C/C++ methods. This is necessary to prevent GC from collecting + globals we want to keep around. + + We use RetainPtr in obj-c++ and c++ files, and CFRetain/Release in pure + obj-c. + + This fixes -- Crash in + WebCore::DragData::containsCompatibleContent due to early release + of types array + + * Misc/WebLocalizableStrings.m: + (WebLocalizedString): + * Misc/WebNSPasteboardExtras.mm: + (+[NSPasteboard _web_writableTypesForURL]): + (_writableTypesForImageWithoutArchive): + (_writableTypesForImageWithArchive): + * Misc/WebNSURLExtras.m: + (applyHostNameFunctionToMailToURLString): + (applyHostNameFunctionToURLString): + * Misc/WebStringTruncator.m: + (defaultMenuFont): + (fontFromNSFont): + * WebCoreSupport/WebPasteboardHelper.mm: + (WebPasteboardHelper::insertablePasteboardTypes): + +2007-04-11 MorganL + + Reviewed by Maciej. + + Add a Frame pointer to ChromeClient methods: + http://bugs.webkit.org/show_bug.cgi?id=13127 + + * COM/ChromeClientWin.cpp: + (ChromeClientWin::createWindow): + (ChromeClientWin::createModalDialog): + * COM/ChromeClientWin.h: + * WebCoreSupport/WebChromeClient.h: + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::createWindow): + (WebChromeClient::createModalDialog): + +2007-04-10 Brady Eidson + + Reviewed by Darin + + - PageCache and PageState should be combined + + WebKit side of the change to reflect the new object name of CachedPage and new Client method names + + * History/WebHistoryItem.mm: + (-[WebHistoryItem setAlwaysAttemptToUsePageCache:]): + (+[WebHistoryItem _releaseAllPendingPageCaches]): + (-[WebWindowWatcher windowWillClose:]): + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::setDocumentViewFromCachedPage): + (WebFrameLoaderClient::loadedFromCachedPage): + (WebFrameLoaderClient::saveDocumentViewToCachedPage): + +2007-04-09 Geoffrey Garen + + Reviewed by Maciej Stachowiak. + + Support for fixing fast/forms/textarea-paste-newline.html. + + Added SPI for specifying whether a WebView should allow pasting through the + DOM API. + + * ChangeLog: + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebPreferenceKeysPrivate.h: + * WebView/WebPreferences.m: + (+[WebPreferences standardPreferences]): + (-[WebPreferences isDOMPasteAllowed]): + (-[WebPreferences setDOMPasteAllowed:]): + * WebView/WebPreferencesPrivate.h: + * WebView/WebView.mm: + (-[WebView _updateWebCoreSettingsFromPreferences:]): + +2007-04-09 Anders Carlsson + + Reviewed by John. + + + REGRESSION: Select All for standalone image has no visible effect but does change state + + + REGRESSION: context menu in white space beyond standalone image is different after Select All + + Have validateUserInterface emulate the old behavior for full-frame images and plugins, which is: + + - For full-frame plugins, always return false. + - For images, only return true if the selector is copy: and the image has finished loading. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView validateUserInterfaceItem:]): + +2007-04-09 Anders Carlsson + + Reviewed by Darin. + + + REGRESSION: "Mail Contents of this Page" for standalone image in Safari results in a broken image in Mail + + * WebView/WebFrame.mm: + (-[WebFrame DOMDocument]): + We can't check for _isHTMLDocument here since image and plugin documents inherit from HTMLDocument. Instead, + check for those two document types explicitly. + +2007-04-09 Anders Carlsson + + Reviewed by Geoff, Ada and John. + + Would like a way to test whether a WebView is displaying a standalone image + + * WebView/WebFrame.mm: + (-[WebFrame _isDisplayingStandaloneImage]): + * WebView/WebFramePrivate.h: + Add _isDisplayingStandaloneImage SPI. + +2007-04-06 Timothy Hatcher + + Reviewed by Mark Rowe. + + Adds a build phase script that ensures WebKit's version dosen't end in a 4. + If our version ends in 4, some sites might think we are Netscape 4 in their + user agent checks. + + * Configurations/Version.xcconfig: + * WebKit.xcodeproj/project.pbxproj: + +2007-04-05 Anders Carlsson + + Reviewed by Adam. + + + REGRESSION: In Real Player (10.1.0), video continues to play after closing window + + This broke in revision 18422 because now the plugin isn't stopped when the window is closed. Since the window is retained + by the plugin view for as long as it is running (so that removeTrackingRect works even though the window has been closed), + we would end up with a reference cycle (NSWindow -> WebView -> PluginView -> NSWindow) and stopping the plug-in when the window + was closed would break that cycle. + + Applications that call -[WebView close] when closing aren't affected, but RealPlayer doesn't do this. + + The bug that 18422 was supposed to fix was fixed by 19275, which is why it's safe to add back the check. + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView addWindowObservers]): + (-[WebBaseNetscapePluginView removeWindowObservers]): + (-[WebBaseNetscapePluginView windowWillClose:]): + +2007-04-05 Kevin McCullough + + Reviewed by Darin. + + - Moved registerURLSchemeAsLocal to the public API. + + * WebView/WebView.h: + * WebView/WebView.mm: + (+[WebView registerURLSchemeAsLocal:]): + * WebView/WebViewPrivate.h: + +=== Safari-5522.6 === + +2007-04-04 Anders Carlsson + + Reviewed by John. + + + http://bugs.webkit.org/show_bug.cgi?id=13264 + REGRESSION: Crash when canceling about:blank in Activity viewer + + * WebView/WebFrame.mm: + (-[WebFrame stopLoading]): + Add a null check for the frame loader - it can be null when the frame has been disconnected + from the web page. + +2007-04-03 Anders Carlsson + + Reviewed by Darin. + + + Crash occurs at WebCore::FrameLoader::activeDocumentLoader() after loading Froggster widget + + * Plugins/WebNetscapePluginStream.mm: + (-[WebNetscapePluginStream start]): + If load returns no the plugin loader has already been removed by the didFail callback. + +2007-04-02 Anders Carlsson + + Reviewed by Geoff. + + Fix crash when running plugins/destroy-stream-twice.html under GuardMalloc + + * Plugins/WebBaseNetscapePluginStream.h: + * Plugins/WebBaseNetscapePluginStream.mm: + (+[WebBaseNetscapePluginStream ownerForStream:]): + (-[WebBaseNetscapePluginStream initWithRequestURL:plugin:notifyData:sendNotification:]): + (-[WebBaseNetscapePluginStream dealloc]): + (-[WebBaseNetscapePluginStream finalize]): + Change the streams hash map to contain an NPStream*, and change ownerForStream to take an NPStream*. + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView destroyStream:reason:]): + Check that the NPStream pointer is valid before accessing stream->ndata. + +2007-04-02 Darin Adler + + Reviewed by Geoff. + + - fix http://bugs.webkit.org/show_bug.cgi?id=13026 + incomplete render of menu + (assertion failing in -[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]) + + - fix http://bugs.webkit.org/show_bug.cgi?id=13120 + Plug-ins that draw through the QuickDraw interface may crash + by hanging onto old GWorlds. + + - set clip path for CoreGraphics plug-ins in the same way we do for QuickDraw plug-ins + this is a better fix for WebKit should set the the CG clip + path for plug-ins that draw using Core Graphics + + Incorporates changes from a patch by Mark Ambachtsheer. + + Here are the changes: + + 1) Don't try to use the offscreen code path if GGBitmapContextGetData returns 0. + 2) Handle kCGBitmapByteOrderDefault when computing the QD pixel format, even though + we don't have any evidence that this happens in practice. + 3) Keep the GWorld around until we create a new one or the plug-in is destroyed. + 4) Use the GWorld pointer itself as a flag to indicate whether we are using an + offscreen GWorld. + 5) Set up clipping for CoreGraphics in the same way we do for QuickDraw; remove an + earlier attempt that handled CoreGraphics differently. + + * Plugins/WebBaseNetscapePluginView.h: Added a field named offscreenGWorld to hold + the GWorld until it's needed. + * Plugins/WebBaseNetscapePluginView.mm: + (getQDPixelFormatForBitmapContext): Replaced QDPixelFormatFromCGBitmapInfo. Used the + "get" prefix so we don't intrude on the QD namespace. Added code to handle the + kCGBitmapByteOrderDefault case, although I'm not sure it will really come up in + practice -- it wasn't really coming up in the buggy case. + (getNPRect): Added helper functions. Used to make the code below clearer. + (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Use getNPRect to + streamline code. Use GetGWorld to save the port since we use SetGWorld to restore + it later. Store the GWorld we create in the offscreenGWorld field and dispose the + existing one. Don't treat the CGBitmapContext as an offscreen bitmap if it + has a data pointer of 0. Set up the clip based on the result of + -[NSView getRectsBeingDrawn:count] when setting up the port for CoreGraphics + (after saving the port state). + (-[WebBaseNetscapePluginView restorePortState:]): Remove now-unneeded code to + destroy the offscreen GWorld, and simplified the code that restores the port so we + don't need a separate case for offscreen. + (-[WebBaseNetscapePluginView fini]): Renamed from freeAttributeKeysAndValues, since + this method now does more than just the attributes. This is the shared method that + does things needed in both dealloc and finalize. Added a call to DisposeGWorld here. + (-[WebBaseNetscapePluginView dealloc]): Updated for name change. + (-[WebBaseNetscapePluginView finalize]): Ditto. + (-[WebBaseNetscapePluginView drawRect:]): Removed code to set clip. This is done in + the saveAndSetNewPortStateForUpdate: method instead. + +2007-03-30 Adele Peterson + + Reviewed by Darin. + + Call execCommand for deleteWordForward and deleteWordBackward instead of calling + deleteWithDirection directly. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView deleteWordForward:]): + (-[WebHTMLView deleteWordBackward:]): + +2007-03-30 Anders Carlsson + + Reviewed by Geoff. + + * Plugins/WebNetscapePluginPackage.m: + (-[WebNetscapePluginPackage load]): + Initialize pushpopupsenabledstate, poppopupsenabledstate and enumerate. + + * Plugins/npapi.m: + (NPN_PushPopupsEnabledState): + (NPN_PopPopupsEnabledState): + Add stubs for these functions. + + * Plugins/npfunctions.h: + Add new methods to NPNetscapeFuncs. + +2007-03-29 Geoffrey Garen + + Reviewed by Beth Dakin, reviewed by Maciej Stachowiak. + + Layout test for REGRESSION: Repro crash in + -[WebBaseNetscapePluginView(WebNPPCallbacks) destroyStream:reason:] + navigating away from page with DivX movie plug-in (13203) + + Changed LOG_ERROR to LOG so the layout test doesn't produce console spew + every time you run it. + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView destroyStream:reason:]): + +2007-03-29 Beth Dakin + + Reviewed by Brady. + + Fix for REGRESSION: Adobe Acrobat 8 - Text + blinks when mouse is moved, and is invisible otherwise + + -and- + + Please adjust WebKit's Acrobat-workaround + methodology + + The fix for the first bug is to compare against the bundle + identifiers for Adobe Reader and the non-Pro Adobe Acrobat in + addition to Adobe Acrobat Pro. The fix for the second bug is to + check the version number of Acrobat/Reader through + WebKitSystemInterface instead of checking which version of WebKit + it has been linked against. + + * English.lproj/StringsNotToBeLocalized.txt: Two new bundle + identifiers. + * Misc/WebKitVersionChecks.h: Remove Acrobat quirk constant. + * WebView/WebView.mm: + (-[WebView _updateWebCoreSettingsFromPreferences:]): + +2007-03-29 Geoffrey Garen + + Rubber stamped by Beth Dakin. + + WebBaseNetscapePluginStream.m => WebBaseNetscapePluginStream.mm, since + it's ObjC++ now. + + * Plugins/WebBaseNetscapePluginStream.m: Removed. + * WebKit.xcodeproj/project.pbxproj: + +2007-03-27 Geoffrey Garen + + Reluctantly tolerated by Darin Adler. + + Fixed REGRESSION: Repro crash in + -[WebBaseNetscapePluginView(WebNPPCallbacks) destroyStream:reason:] + navigating away from page with DivX movie plug-in (13203) + + The problem was that the DivX plug-in would ask us to destroy an NPStream + that had already been destroyed, causing us to wander off into freed + memory. (I believe the reason this was a regression was that we never used + to destroy plug-in streams, period.) + + The solution here is to track the NPStreams belonging to a plug-in, and + guard against plug-ins making calls with NPStreams that don't belong to + them. (It turns out that NPN_DestroyStream is the only stream-based + plug-in call we support.) + + (CarbonPathFromPOSIXPath): Fixed up a cast to be C++ compatible. + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView destroyStream:reason:]): The actual fix. + Use helper method to guard against a plug-in using an NPStream that doesn't + belong to it. + * WebKit.xcodeproj/project.pbxproj: Made WebBaseNetscapePluginView ObjC++ + so I could use HashMap. + +2007-03-28 Adele Peterson + + Reviewed by Brady. + + Update to last fix. + + * Misc/WebKitVersionChecks.h: Added WEBKIT_FIRST_VERSION_WITHOUT_VITALSOURCE_QUIRK. + * WebView/WebView.mm: (-[WebView stringByEvaluatingJavaScriptFromString:]): + Added check to only use the VitalSource workaround if the app is not linked on or after + the defined WEBKIT_FIRST_VERSION_WITHOUT_VITALSOURCE_QUIRK version number. + +2007-03-28 Adele Peterson + + Reviewed by Kevin M. + + WebKit part of fix for VitalSource Bookshelf should not pass return statements into stringByEvaluatingJavaScriptFromString + + Added an app specific workaround for VitalSource Bookshelf that strips "return" from the beginning of their script strings. We used to allow this + but now we throw a JavaScript exception for return statements that aren't in functions. + + Filed this evangelism bug so we can notify VitalSource of the problem: + VitalSource Bookshelf should not pass return statements into stringByEvaluatingJavaScriptFromString + + * WebView/WebView.mm: (-[WebView stringByEvaluatingJavaScriptFromString:]): + +2007-03-27 John Sullivan + + Reviewed by Tim + + - fixed Default UA spoofing is always off until explicitly toggled + + * WebView/WebView.mm: + (-[WebView _commonInitializationWithFrameName:groupName:]): + initialize the cached value of _private->useSiteSpecificSpoofing here; formerly it would not + be initialized correctly in the common case of WebViews that use [WebPreferences standardPreferences] + +2007-03-27 Mark Rowe + + Reviewed by Dave Harrison. + + * Configurations/WebKit.xcconfig: Include UMBRELLA_FRAMEWORKS_DIR in framework search path. + +2007-03-26 Antti Koivisto + + Reviewed by Darin. + + On Mac, support fine grained wheel events generated by trackpad and Mighty Mouse. + http://bugs.webkit.org/show_bug.cgi?id=13134 + + + * WebCoreSupport/WebSystemInterface.m: + (InitWebCoreSystemInterface): Expose GetWheelEventDeltas() + +2007-03-26 John Sullivan + + Reviewed by Dave Harrison + + - fixed Problem with Find on certain PDF page + + * WebView/WebPDFView.mm: + (-[WebPDFView _scaledAttributedString:]): + We were hitting an exception trying to set the font attribute to nil, which was happening because + the result of -[PDFSelection attributedString] had no attributes. That PDFSelection bug is now + filed separately, but this works around the exception. + +2007-03-24 David Hyatt + + Amend the statistics reporting for the WebCore cache to include XSL and to report live/decoded sizes. + + * Misc/WebCache.mm: + (+[WebCache statistics]): + +2007-03-24 Brady Eidson + + Reviewed by Adam + + RetainPtr is no longer in the WebCore namespace + + * History/WebBackForwardList.mm: + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebFrameLoaderClient.h: + * WebView/WebDocumentLoaderMac.h: + +2007-03-24 Brady Eidson + + Reviewed by Adam + + - Move RetainPtr to WTF + + * ForwardingHeaders/wtf/RetainPtr.h: Added. + * History/WebBackForwardList.mm: Changed #import to + * WebCoreSupport/WebEditorClient.h: Ditto + * WebCoreSupport/WebFrameLoaderClient.h: Ditto + * WebView/WebDocumentLoaderMac.h: Ditto + +2007-03-24 John Sullivan + + Reviewed by Adele + + - fixed Need to add flickr to spoof list in WebKit + - only do site-specific spoofing if a preference is set + + * WebView/WebPreferenceKeysPrivate.h: + added WebKitUseSiteSpecificSpoofingPreferenceKey + + * WebView/WebPreferences.m: + (+[WebPreferences initialize]): + initialize WebKitUseSiteSpecificSpoofingPreferenceKey to false + (-[WebPreferences _useSiteSpecificSpoofing]): + get value of WebKitUseSiteSpecificSpoofingPreferenceKey + (-[WebPreferences _setUseSiteSpecificSpoofing:]): + set value of WebKitUseSiteSpecificSpoofingPreferenceKey + + * WebView/WebPreferencesPrivate.h: + declare _useSiteSpecificSpoofing and _setUseSiteSpecificSpoofing + + * WebView/WebView.mm: + cache the value of WebKitUseSiteSpecificSpoofingPreferenceKey in a bool in _private + (-[WebView _preferencesChangedNotification:]): + update the cached value + (-[WebView setPreferences:]): + ditto + (-[WebView WebCore::_userAgentForURL:WebCore::]): + Only spoof here if the new site-specific spoofing preference is enabled. If it is, pass + Safari 2.0.4's user agent string for flickr.com. We can remove this case when 5081617 is addressed. + +2007-03-24 Mark Rowe + + Rubber-stamped by Darin. + + * Configurations/WebKit.xcconfig: Remove unnecessary INFOPLIST_PREPROCESS. + +2007-03-23 Mark Rowe + + Build fix for when BUILDING_ON_TIGER is not defined. + + * Misc/WebTypesInternal.h: + * WebView/WebHTMLView.mm: + +2007-03-22 David Kilzer + + Reviewed by Darin. + + Use BUILDING_ON_TIGER from WebKitPrefix.h instead of local + MAC_OS_X_VERSION_MAX_ALLOWED <= MAC_OS_X_VERSION_10_4 tests. + + * Misc/WebTypesInternal.h: + * WebView/WebHTMLView.mm: + +2007-03-22 Darin Adler + + Reviewed by Adele. + + - fix detachChildren call should move from WebKit to WebCore + + * WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::prepareForDataSourceReplacement): + Remove call to detachChildren. This should be a WebCore responsibility. + +2007-03-19 Anders Carlsson + + Reviewed by Dave Hyatt. + + + iSale: Crash occurs at WebFrameLoaderClient::dispatchDecidePolicyForMIMEType() when attempting to load a HTML template + + Restore old behavior (broke in r14533) where the resource load and download delegates are retained for as long as the + data source is loading. + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::createDocumentLoader): + * WebView/WebDocumentLoaderMac.h: + * WebView/WebDocumentLoaderMac.mm: + (WebDocumentLoaderMac::setDataSource): + (WebDocumentLoaderMac::decreaseLoadCount): + +2007-03-19 Geoffrey Garen + + Speculative fix for why ASSERT_MAIN_THREAD didn't work for me. (The + documentation says "non-zero," not "1." + + * Misc/WebKitLogging.m: + (WebKitRunningOnMainThread): + +2007-03-19 Andrew Wellington + + Reviewed by Maciej. + + Really set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html) + + * WebKit.xcodeproj/project.pbxproj: + +2007-03-19 Darin Adler + + * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes. + +2007-03-19 John Sullivan + + Reviewed by Justin + + - fixed REGRESSION: opt-cmd-B to show Bookmarks view does + nothing when form field has focus + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _handleStyleKeyEquivalent:]): + we were counting any set of modifiers plus 'b' as the standard key equivalent for + toggling Bold; now we only accept command+'b' + +2007-03-19 Adam Roben + + Reviewed by Hyatt and Maciej. + + Updated WebCoreStatistics for the conversion of WebCoreJavaScript to + C++. + + * Misc/WebCoreStatistics.mm: + (+[WebCoreStatistics javaScriptObjectsCount]): + (+[WebCoreStatistics javaScriptInterpretersCount]): + (+[WebCoreStatistics javaScriptProtectedObjectsCount]): + (+[WebCoreStatistics javaScriptRootObjectTypeCounts]): Moved + conversion to NSCountedSet here from WebCore. + (+[WebCoreStatistics garbageCollectJavaScriptObjects]): + (+[WebCoreStatistics garbageCollectJavaScriptObjectsOnAlternateThread:]): + (+[WebCoreStatistics shouldPrintExceptions]): + (+[WebCoreStatistics setShouldPrintExceptions:]): + (+[WebCoreStatistics javaScriptReferencedObjectsCount]): + (+[WebCoreStatistics javaScriptRootObjectClasses]): + +2007-03-18 Andrew Wellington + + Reviewed by Mark Rowe + + Set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html) + + * WebKit.xcodeproj/project.pbxproj: + +2007-03-19 Mark Rowe + + Rubber-stamped by Brady. + + Update references to bugzilla.opendarwin.org with bugs.webkit.org. + + * WebInspector/webInspector/inspector.css: + * WebView/WebHTMLView.mm: + (-[WebHTMLView firstRectForCharacterRange:]): + * WebView/WebView.mm: + (-[WebView initWithFrame:frameName:groupName:]): + +2007-03-18 David Hyatt + + Move frame borders out of WebKit and into WebCore. + + Reviewed by aroben, olliej + + * WebCoreSupport/WebFrameBridge.mm: + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebFrameView.mm: + (-[WebFrameView drawRect:]): + (-[WebFrameView setFrameSize:]): + * WebView/WebFrameViewInternal.h: + +2007-03-17 John Sullivan + + Reviewed by Tim Hatcher + + Discovered while working on that many WebView calls will crash if called + after -[WebView close] has executed because _private->page is deferenced after it's been set to 0. + It might be silly/wrong to call these methods after -close, but obviously it shouldn't crash. Made + each use of _private->page robust against nil-dereferencing. + + * WebView/WebView.mm: + (-[WebView _loadBackForwardListFromOtherView:]): + (-[WebView _updateWebCoreSettingsFromPreferences:]): + (-[WebView _setDashboardBehavior:to:]): + (-[WebView _dashboardBehavior:]): + (-[WebView goBack]): + (-[WebView goForward]): + (-[WebView goToBackForwardItem:]): + (-[WebView canGoBack]): + (-[WebView canGoForward]): + (-[WebView setTabKeyCyclesThroughElements:]): + (-[WebView tabKeyCyclesThroughElements]): + (-[WebView setEditable:]): + +2007-03-17 Timothy Hatcher + + Reviewed by Mark Rowe. + + Made Version.xcconfig smarter when building for different configurations. + Now uses the 522+ OpenSource version for Debug and Release, while using the + full 522.4 version for Production builds. The system prefix is also computed + based on the current system, so 4522.4 on Tiger and 5522.4 on Leopard. + + * Configurations/Version.xcconfig: + * Configurations/WebKit.xcconfig: + +2007-03-16 Oliver Hunt + + Reviewed by Hyatt. + + The old canSaveAsWebArchive call was necessary as stand alone + images used to be rendered by ImageDocument. + + Fixes rdar://problem/5061252 + + * WebCoreSupport/WebDragClient.h: + * WebCoreSupport/WebDragClient.mm: + (WebDragClient::declareAndWriteDragImage): + * WebKit.xcodeproj/project.pbxproj: + +2007-03-15 Brady Eidson + + Reviewed by Maciej + + + Implements a port blocking black list that matches Firefox's + + * English.lproj/Localizable.strings: Added localizable string for port blocked error code + + * Misc/WebKitErrors.h: + * Misc/WebKitErrors.m: + (registerErrors): Add new port blocked error code to WebKitErrorDomain + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::cancelledError): Fixed coding style + (WebFrameLoaderClient::blockedError): Return a ResourceError with the new custom error code + +2007-03-15 Timothy Hatcher + + Reviewed by John. + + * Fixes: WebKit's Current Library Version number should match the Info.plist Version + * Factored out most of our common build settings into .xcconfig files. Anything that was common in + each build configuration was factored out into the shared .xcconfig file. + * Adds a Version.xcconfig file to define the current framework version, to be used in other places. + * Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist. + * Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION). + * Make WebKit use the same warning flags as the other projects. This required two casts to be added to fix new warnings. + + * Configurations/Base.xcconfig: Added. + * Configurations/DebugRelease.xcconfig: Added. + * Configurations/Version.xcconfig: Added. + * Configurations/WebKit.xcconfig: Added. + * Info.plist: + * Misc/WebKitVersionChecks.h: + * Plugins/WebBaseNetscapePluginStream.m: + (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]): + * WebKit.xcodeproj/project.pbxproj: + +2007-03-15 Kevin Decker + + Reviewed by Anders. + + Fixed: stationery background images do not display + + Change 19244 fixed the method -[WebResource _shouldIgnoreWhenUnarchiving], but also broke Mail stationery. + + The problem was that with archivedResourceForURL now fixed, the engine will try to decode the images. These images wouldn't decode because + Mail re-encodes and directly manipulates the image data in such a way that prevented WebKit from decoding the image. Because Mail was giving + us bad data, the images wouldn't render. This was never an issue before because archivedResourceForURL (broken) always returned nil, thus the + engine would never attempt to decode the resource, therefore the responsibility was delegated to Mail's protocol handler, which would do the + right thing and load the image. + + Since Mail is relying on the fact it can store arbitrary data in WebArchives, I've introduced SPI that acts as a hint for us to ignore certain + subresources while unarchiving. This SPI is -[WebResource _shouldIgnoreWhenUnarchiving]. + + * WebView/WebResource.mm: Addd private ivar shouldIgnoreWhenUnarchiving. + (-[WebResource _ignoreWhenUnarchiving]): Added. + (-[WebResource _shouldIgnoreWhenUnarchiving]): Added. + * WebView/WebResourcePrivate.h: Added two methods to private header. + * WebView/WebUnarchivingState.m: + (-[WebUnarchivingState archivedResourceForURL:]): Check if we should ignore the resource. + +2007-03-15 Mark Rowe + + Reviewed by Antti. + + Fix for ASSERTION FAILURE: newUsername && newPassword + when submitting an authentication form without password. + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchWillSubmitForm): Don't omit form fields with empty values from the dictionary + passed to the delegate. + +2007-03-14 Anders Carlsson + + Reviewed by Dave Hyatt. + + Don't add the data twice, it's also done by didReceiveData. + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::deliverArchivedResources): + +2007-03-14 Anders Carlsson + + Fix segmentation fault when running layout tests. + + Remove bogus check that that I added on purpose to see how good Geoff is at spotting mistakes when reviewing code. + (Turns out he's not that good!) + + * WebView/WebDocumentLoaderMac.mm: + (WebDocumentLoaderMac::increaseLoadCount): + +2007-03-14 Anders Carlsson + + Reviewed by Geoff. + + http://bugs.webkit.org/show_bug.cgi?id=13076 + REGRESSION: Multiple loading tabs cause assertion in WebDocumentLoaderMac::decreaseLoadCount(unsigned long) + + Store the identifier set in the document loader since identifiers are per-webview and not global. + + * WebView/WebDocumentLoaderMac.h: + * WebView/WebDocumentLoaderMac.mm: + (WebDocumentLoaderMac::WebDocumentLoaderMac): + (WebDocumentLoaderMac::attachToFrame): + (WebDocumentLoaderMac::increaseLoadCount): + (WebDocumentLoaderMac::decreaseLoadCount): + +2007-03-14 David Harrison + + Reviewed by Maciej. + + REGRESSION: Aperture 1.5: Can't select entire line of text after correcting a misspelled word + + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::respondToChangedSelection): + * WebCoreSupport/WebFrameBridge.mm: + Provide compatibility by not sending WebViewDidChangeSelectionNotification if + the app is Aperture and is linked against WebKit 2.0. + +=== Safari-5522.4 === + +2007-03-14 Anders Carlsson + + Reviewed by Geoff. + + + http://bugs.webkit.org/show_bug.cgi?id=13050 + + World leaks seen on Leopard after opening then closing tab (13050) + + Add a hash set to prevent the load count to be increased twice for the same resource. + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchWillSendRequest): + (WebFrameLoaderClient::dispatchDidFinishLoading): + (WebFrameLoaderClient::dispatchDidFailLoading): + * WebView/WebDocumentLoaderMac.h: + * WebView/WebDocumentLoaderMac.mm: + (loadingResources): + (WebDocumentLoaderMac::increaseLoadCount): + (WebDocumentLoaderMac::decreaseLoadCount): + +2007-03-14 Adele Peterson + + Reviewed by Darin. + + Removed _insertTextWithEvent, _insertNewlineWithEvent, and _insertTextWithEvent. + Instead, use execCommand and insertText methods on the Editor. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView insertTab:]): + (-[WebHTMLView insertBacktab:]): + (-[WebHTMLView insertNewline:]): + (-[WebHTMLView insertLineBreak:]): + (-[WebHTMLView insertParagraphSeparator:]): + (-[WebHTMLView insertNewlineIgnoringFieldEditor:]): + (-[WebHTMLView insertTabIgnoringFieldEditor:]): + (-[WebHTMLView yank:]): + (-[WebHTMLView yankAndSelect:]): + (-[WebHTMLView doCommandBySelector:]): + (-[WebHTMLView insertText:]): + +2007-03-14 David Hyatt + + Fixes to ensure that the resource loader's shared buffer can always be used. + + Reviewed by olliej, mjs + + * Misc/WebIconDatabase.mm: + (-[WebIconDatabase _convertToWebCoreFormat]): + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::deliverArchivedResources): + +2007-03-13 Oliver Hunt + + Reviewed by Brady. + + Modify subresourceForURL to take NSString argument + so we can avoid [NSURL absoluteString] + + * WebView/WebDataSource.mm: + (-[WebDataSource subresourceForURL:]): + +2007-03-13 Brady Eidson + + Rubberstamped by Alice + + Meant to be part of my previous checkin... pruning unused code from WebKit + + * WebView/WebFrame.mm: Removed _canCachePage + * WebView/WebFrameInternal.h: Ditto + +2007-03-13 Beth Dakin + + Reviewed by Maciej. + + Fix for 8F32: Help Viewer crashed on + clicking link - KHTMLView::viewportMouseReleaseEvent (12647) + + Re-set the DocumentLoader's frame when loading it from the page + cache before setting the document view. + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::setDocumentViewFromPageCache): + +2007-03-13 Timothy Hatcher + + Reviewed by Geoff. + + Spoof user agent on Yahoo.com with Safari and WebKit as version 4xx + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView userAgent]): Stop using the deprecated lossyCString method. + * WebCoreSupport/WebFrameBridge.mm: Removed dead code, userAgentForURL: wasn't used. + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::userAgent): Call WebView's _userAgentForURL:. + * WebView/WebView.mm: + (-[WebView _cachedResponseForURL:]): Call userAgentForURL: instead of _userAgent. + (-[WebView userAgentForURL:]): Call _userAgentForURL:. + (-[WebView _userAgentWithApplicationName:andWebKitVersion:]): New method to construct a UA. + (-[WebView _computeUserAgent]): Ractored out into _userAgentWithApplicationName:andWebKitVersion: + (-[WebView _userAgentForURL:]): Tail compare for Yahoo.com, and return a UA with an older WebKit version. + * WebView/WebViewInternal.h: Declare _userAgentForURL:. + +2007-03-12 David Harrison + + Reviewed by Darin. + + ctrl-y key binding (yank) should do nothing when kill ring is empty + + Test updated: + * editing/pasteboard/emacs-cntl-y-001.html: + + * WebView/WebHTMLView.mm: + (-[WebHTMLView yank:]): + (-[WebHTMLView yankAndSelect:]): + Do nothing if the killring is empty. + +2007-03-12 Darin Adler + + Reviewed by Tim Hatcher. + + - update for the new naming scheme for the Objective-C wrapper-creation + functions: _wrapElement: instead of _elementWith:, etc. + + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::textFieldDidBeginEditing): + (WebEditorClient::textFieldDidEndEditing): + (WebEditorClient::textDidChangeInTextField): + (WebEditorClient::doTextFieldCommandFromEvent): + (WebEditorClient::textWillBeDeletedInTextField): + (WebEditorClient::textDidChangeInTextArea): + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::createPlugin): + (WebFrameLoaderClient::createJavaAppletWidget): + * WebView/WebFrame.mm: (kit): + Use the _wrapElement-style functions. + +2007-03-12 Anders Carlsson + + Reviewed by Maciej. + + + REGRESSION: Repro Crash in FrameLoader::frame loading about:blank in PLT + + Always get the web view from the current web frame, since the document loader's frame can have been zeroed out + (for example when detaching the document loader). + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache): + (WebFrameLoaderClient::assignIdentifierToInitialRequest): + (WebFrameLoaderClient::dispatchWillSendRequest): + (WebFrameLoaderClient::dispatchDidReceiveResponse): + (WebFrameLoaderClient::dispatchDidReceiveContentLength): + (WebFrameLoaderClient::dispatchDidFinishLoading): + +2007-03-11 Oliver Hunt + + Reviewed by Adele. + + Moved respondToChangedSelection from FrameBridge to EditorClient + + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::respondToChangedSelection): + * WebCoreSupport/WebFrameBridge.mm: + Removed respondToChangedSelection from bridge + +2007-03-11 Darin Adler + + Reviewed by Adele. + + - fix http://bugs.webkit.org/show_bug.cgi?id=12964 + REGRESSION: crash in -[WebBaseNetscapePluginStream _deliverData] + at simpsonsmovie.com (12964) + + * Plugins/WebBaseNetscapePluginStream.m: + (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]): + At every place we call the plug-in, since it could destroy the stream, get pluginView into a local + variable; it will be set to nil if the stream is destroyed. + (-[WebBaseNetscapePluginStream _destroyStream]): Added calls to retain/release to handle the case where + one of the calls to the plug-in destroys the stream. Added a call to cancelPreviousPerformRequestsWithTarget + in case _deliverData has been scheduled but not yet delivered. Also get pluginView into a local variable + as mentioned above, and check at strategic points and exit if the stream was already destroyed to avoid + multiple calls to NPP_DestroyStream or NPP_URLNotify. + (-[WebBaseNetscapePluginStream _deliverData]): Ditto. + +2007-03-10 Geoffrey Garen + + Reviewed by Darin Adler. + + Fixed PAC file: lock inversion between QT and + JSCore causes a hang @ www.panoramas.dk + + See JavaScriptCore ChangeLog for details. + + Drop the JSLock before making calls through the plug-in API from functions + that may have been called by JavaScript. + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView sendEvent:]): + (-[WebBaseNetscapePluginView setWindowIfNecessary]): + (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]): + (-[WebBaseNetscapePluginView createPluginScriptableObject]): + (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): + (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]): + (-[WebBaseNetscapePluginView loadPluginRequest:]): + (-[WebBaseNetscapePluginView _printedPluginBitmap]): + * Plugins/WebPluginController.mm: + (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]): + (-[WebPluginController startAllPlugins]): + (-[WebPluginController stopAllPlugins]): + (-[WebPluginController addPlugin:]): + (-[WebPluginController destroyPlugin:]): + (-[WebPluginController destroyAllPlugins]): + +2007-03-10 David Kilzer + + Reviewed by Darin. + + - fix http://bugs.webkit.org/show_bug.cgi?id=9609 + REGRESSION: Missing image icon needs to be moved back to WebKit + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): + Use WebCore::Image::loadPlatformResource(const char*) to load the missingImage image. + +2007-03-10 Mark Rowe + + Reviewed by John. + + HIWebView handling of kEventControlGetData is broken in 64-bit + + On Leopard the kEventParamControlDataBufferSize event parameter is of type typeByteCount. + The 32-bit implementation of GetEventParameter will coerce between integer types and + typeByteCount while the 64-bit version will return a failure. As typeByteCount is new + in Leopard we must continue using typeSInt32 when building for Tiger. + + * Carbon/HIWebView.m: + (HIWebViewEventHandler): + +2007-03-09 Timothy Hatcher + + Reviewed by Darin. + + Please get off _NSSoftLinkingGetFrameworkFuncPtr + + Use dlopen and dlsym to access the DCSShowDictionaryServiceWindow function. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _lookUpInDictionaryFromMenu:]): + +2007-03-09 Darin Adler + + Reviewed by Justin. + + - fix http://bugs.webkit.org/show_bug.cgi?id=8928 + REPRODUCIBLE ASSERT: Cannot paste HTML into a + contenteditable region in an XHTML document (8928) + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _hasHTMLDocument]): Added. + (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]): + Don't call AppKit's conversion from the DOM to an attributed string if the document + is not an HTML document, to work around an AppKit limitation (Radar 5052390). + +2007-03-09 Darin Adler + + * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes. + +2007-03-08 Mark Rowe + + Reviewed by Tim Hatcher. + + Mouse clicks and movement are ignored in HIWebView on 64-bit + + Mouse events are not being handled correctly as GetControlKind is returning an error + on 64-bit. The more modern HIObjectIsOfClass behaves correctly for this use. + + * Carbon/HIWebView.m: + (HIWebViewDestructor): + (WindowHandler): Use HIObjectIsOfClass in place of GetControlKind. + (HIWebViewEventHandler): Don't leak the NSEvent. + +2007-03-08 Bruce Q Hammond + + Reviewed by Darin. + + Fix for http://bugs.webkit.org/show_bug.cgi?id=13009 + Console spews "CGContextGetType: invalid context" non-stop on web site + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): + (-[WebBaseNetscapePluginView restorePortState:]): + +2007-03-08 Mark Rowe + + Reviewed by Tim Hatcher. + + HIWebView does not exist for 64-bit + + Update HIWebView and friends to work without QuickDraw. + + Changes are gleaned from the 64-bit support inside HICocoaView. The main + fact of interest are that all Carbon windows must have compositing enabled + so the code paths that aren't accessible are #ifdef'd out. Conveniently + these are the exact code paths that make use of QuickDraw. + + There are currently minor event-handling and invalidation issues running as + 64-bit that are not present in 32-bit. + + * Carbon/CarbonUtils.m: + * Carbon/CarbonWindowAdapter.m: + * Carbon/CarbonWindowFrame.m: + * Carbon/HIViewAdapter.m: + (SetViewNeedsDisplay): + * Carbon/HIWebView.m: + (Draw): + (Click): + (SyncFrame): + (StartUpdateObserver): + (StopUpdateObserver): + (UpdateObserver): + * WebKit.LP64.exp: Removed. + * WebKit.xcodeproj/project.pbxproj: Always use WebKit.exp. + +2007-03-08 Timothy Hatcher + + Reviewed by John. + + highlighter SPI needs a node parameter to give more context + + Added new methods to the WebHTMLHighlighter protocol that include the DOMNode being painted. + + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge customHighlightRect:forLine:representedNode:WebCore::]): + (-[WebFrameBridge paintCustomHighlight:forBox:onLine:behindText:entireLine:representedNode:WebCore::]): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebHTMLViewPrivate.h: + +2007-03-08 Anders Carlsson + + Try fixing the buildbot build. + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): + +2007-03-07 Anders Carlsson + + Leopard build fix. + + * Plugins/WebBaseNetscapePluginView.mm: + +2007-03-07 Bruce Q Hammond + + Reviewed by Darin. + + - fix http://bugs.webkit.org/show_bug.cgi?id=12515 + Plug-ins that draw through the Quickdraw interface fail in a CGBitmapContex. + + + This fixes a problem with Netscape-style Plug-ins which draw through the Quickdraw APIs + being unable to render into offscreen bitmap contexts. + + This patches both saveAndSetNewPortStateForUpdate: and restorePortState: + These methods now check the current context and see if appropriate setup/cleanup needs to be done + for offscreen rendering. + + * Plugins/WebBaseNetscapePluginView.mm: + (QDPixelFormatFromCGBitmapInfo): + (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): + (-[WebBaseNetscapePluginView restorePortState:]): + +2007-03-07 Anders Carlsson + + Reviewed by Darin. + + Use HardRetain/HardRelease. + + * WebView/WebDocumentLoaderMac.mm: + (WebDocumentLoaderMac::setDataSource): + (WebDocumentLoaderMac::attachToFrame): + (WebDocumentLoaderMac::detachFromFrame): + (WebDocumentLoaderMac::increaseLoadCount): + (WebDocumentLoaderMac::decreaseLoadCount): + +2007-03-07 Anders Carlsson + + Reviewed by Maciej. + + + REGRESSION: Bumper Car 2.1.1 - Crash at WebCore::FrameLoader::receivedMainResourceError when encountering a invalid URL address + + (The crash was already fixed, this actually makes Bumper Car load the error page correctly.) + + This adds a "load counter" to the document loader and keeps the data source retained for as long as something is loading. + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchWillSendRequest): + Increase the load counter. + + (WebFrameLoaderClient::dispatchDidFinishLoading): + (WebFrameLoaderClient::dispatchDidFailLoading): + Decrease the load counter, + + * WebView/WebDocumentLoaderMac.h: + * WebView/WebDocumentLoaderMac.mm: + (WebDocumentLoaderMac::WebDocumentLoaderMac): + + (WebDocumentLoaderMac::attachToFrame): + If the document loader has been detached, make sure to retain its data source here. + + (WebDocumentLoaderMac::detachFromFrame): + Release the data source. + + (WebDocumentLoaderMac::increaseLoadCount): + Retain the data source if load count was 0. + + (WebDocumentLoaderMac::decreaseLoadCount): + Release the data source if load count becomes 0 + +2007-03-07 Adele Peterson + + Reviewed by Darin. + + WebKit part of fix for: + http://bugs.webkit.org/show_bug.cgi?id=10871 + http://bugs.webkit.org/show_bug.cgi?id=12677 + REGRESSION: IME key events different in nightly + REGRESSION: Return key is always sent when you confirm a clause in kotoeri + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _interceptEditingKeyEvent: shouldSaveCommand:]): Added shouldSaveCommand field to WebHTMLViewInterpretKeyEventsParameters. + When shouldSaveCommand is true, we call interpretKeyEvents and in doCommandBySelector and insertText, we just save the information without performing any action. + When shouldSaveCommand is false, we used the saved information and call doCommandBySelector and insertText directly. + If there's no saved command data in the KeyboardEvent, call interpretKeyEvents, and honor the shouldSaveCommand argument. This allows repeating keypress events + to function normally. + (-[WebHTMLView doCommandBySelector:]): If the WebHTMLViewInterpretKeyEventsParameters shouldSaveCommand field is set, then + just save the selector information in the KeyboardEvent, and don't perform the action. + (-[WebHTMLView insertText:]): ditto. + insertText can be called from an input method or from normal key event processing + If its from an input method, then we should go ahead and insert the text now. + The only way we know if its from an input method is to check hasMarkedText. There might be a better way to do this. + + * WebView/WebHTMLViewInternal.h: Added shouldSaveCommand argument. + * WebView/WebViewInternal.h: ditto. + + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::handleKeypress): Changed handleKeyPress to handleKeypress. Call _interceptEditingKeyEvent with shouldSaveCommand:NO. + (WebEditorClient::handleInputMethodKeypress): Call _interceptEditingKeyEvent with shouldSaveCommand:YES. + +2007-03-07 Anders Carlsson + + Reviewed by Brady. + + Update to match WebCore. + + * Plugins/WebNetscapePluginStream.mm: + (-[WebNetscapePluginStream start]): + +2007-03-07 Jim Correia + + Reviewed by Darin. + + - WebCore part of fix for http://bugs.webkit.org/show_bug.cgi?id=12463 + WebArchiver - attempt to insert nil exception when archive empty iframe + + When dealing with an iframe element with no src attribute, the element contains + a src attribute in the DOM with a URL of "about:blank" and some HTML to implement + the blank page. In the original page source, however, the iframe element does + not include a src attribute, which caused a nil archive to be returned for the + childFrameArchive and thus caused the bug. The fix is a simple nil check. + + Test: webarchive/archive-empty-frame-source.html + + * WebView/WebArchiver.mm: + (+ (NSArray *)_subframeArchivesForFrame:(WebFrame *)frame): Don't add childFrameArchive + to the subframeArchives array if it is nil. + +2007-03-06 John Sullivan + + Reviewed by Darin + + Made WebAuthenticationHandler.h SPI so Safari can call it directly. + + * WebKit.exp: + added .objc_class_name_WebPanelAuthenticationHandler + * WebKit.xcodeproj/project.pbxproj: + changed status of WebAuthenticationHandler.h from "project" to "private" + +2007-03-06 Kevin McCullough + + Reviewed by Darin. + + - Rename a function to clarify its purpose. + + * WebView/WebView.mm: + (+[WebView registerURLSchemeAsLocal:]): + * WebView/WebViewPrivate.h: + +2007-03-06 Anders Carlsson + + Reviewed by Adam. + + Update for WebCore changes. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::userAgent): + +2007-03-05 Anders Carlsson + + Reviewed by Adam, Darin. + + + In Mail, a crash occurs at WebCore::Frame::tree() when clicking on embedded flash object + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView loadPluginRequest:]): + Handle the case where the web view returned from the delegate method is null. Also, send out an error notification + in that case so we can catch it. + +2007-03-05 John Sullivan + + Reviewed by Darin and Kevin D + + - fixed Header and footer on printed page are too large after certain steps + + * WebView/WebView.mm: + (-[WebView _adjustPrintingMarginsForHeaderAndFooter]): + This method was modifying the margins in the NSPrintInfo object without any sort of check whether + this had already been done. In some cases this can be called multiple times with the same + NSPrintInfo, so now we stash information in the NSPrintInfo's dictionary such that we always + start with a fresh copy of the original margins. + +2007-03-02 Kevin McCullough + + Reviewed by Geoff. + + - rdar://problem/4922454 + - This fixes a security issue by making remote referrers not able to access local + resources, unless they register their schemes to be treated as local. The result is + that those schemes can access local resources and cannot be accessed by remote + referrers. + Because this behavior is new a link-on-or-after check is made to determine if the + app should use the older, less safe, behavior. + + * Misc/WebKitVersionChecks.h: added linked-on-or-after check + * Misc/WebNSAttributedStringExtras.mm: Moved functionalit into the base class. + (fileWrapperForElement): + * Plugins/WebNetscapePluginStream.mm: uses new canLoad functions + * Plugins/WebPluginContainerCheck.mm: uses new canLoad functions + (-[WebPluginContainerCheck _isForbiddenFileLoad]): + * WebView/WebView.mm: make linked-on-or-after check and cache value, exposes SPI + for registering a scheme as local. + (-[WebView _commonInitializationWithFrameName:groupName:]): + (+[WebView registerSchemeAsLocal:]): + * WebView/WebViewPrivate.h: exposes SPI for registering a scheme as local. + +2007-03-01 Justin Garcia + + Reviewed by harrison + + + Integrate Mail and WebKit paste operations + + Provide subresources used to create the fragment as a + convenience. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]): + Update the calls to the changed method. + (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]): + Give the caller the subresources in the WebArchive and RTF cases. + * WebView/WebHTMLViewPrivate.h: + +2007-02-28 Oliver Hunt + + Reviewed by Maciej. + + Fixes + + When looking for a requested resource we should also check + the set of manually added subresources if WebCore can't find it. + + * WebView/WebDataSource.mm: + (-[WebDataSource subresourceForURL:]): + +2007-02-28 Brady Eidson + + Reviewed by Beth + + Start using the Thread Safety Check implemented in WebCore for the DOM bindings in the rest of + the WebKit API instead of the ASSERT_MAIN_THREAD() hack + + * History/WebBackForwardList.mm: + (-[WebBackForwardList initWithWebCoreBackForwardList:]): + (-[WebBackForwardList init]): + (-[WebBackForwardList dealloc]): + (-[WebBackForwardList finalize]): + * History/WebHistoryItem.mm: + (-[WebHistoryItem initWithURLString:title:lastVisitedTimeInterval:]): + (-[WebHistoryItem dealloc]): + (-[WebHistoryItem finalize]): + (-[WebHistoryItem copyWithZone:]): + (-[WebHistoryItem initWithWebCoreHistoryItem:]): + * Misc/WebIconDatabase.mm: + (-[WebIconDatabase init]): + +2007-02-28 Adele Peterson + + Reviewed by Beth. + + Fix for REGRESSION: search results popup menu strings are not localized + and accessibility-related strings in WebCore are not localized + + * WebCoreSupport/WebViewFactory.mm: + (-[WebViewFactory searchMenuNoRecentSearchesText]): + (-[WebViewFactory searchMenuRecentSearchesText]): + (-[WebViewFactory searchMenuClearRecentSearchesText]): + (-[WebViewFactory AXWebAreaText]): + (-[WebViewFactory AXLinkText]): + (-[WebViewFactory AXListMarkerText]): + (-[WebViewFactory AXImageMapText]): + (-[WebViewFactory AXHeadingText]): + +2007-02-28 Mark Rowe + + Reviewed by Maciej. + + WebKit allocates a huge number of NSCalendarDates while loading history file + + * History/WebHistory.mm: + (-[WebHistoryPrivate insertItem:atDateIndex:]): Use lastVisitedTimeInterval rather than _lastVisitedDate to avoid allocating NSCalendarDates. + +2007-02-28 Mark Rowe + + Reviewed by Tim Hatcher. + + Problem with Blot and ToT WebKit (decoding WebCoreScrollView) + + References to WebCoreScrollView as a subview of a WebHTMLView may be present in some NIB + files, so NSUnarchiver must be still able to look up the WebCoreScrollView class. + + * WebKit.exp: Export WebCoreScrollView symbol. + * WebView/WebHTMLView.mm: Add empty WebCoreScrollView class. + +2007-02-27 Adam Roben + + Reviewed by Beth. + + Fix REGRESSION: "Open Link" contextual menu + item appears twice + + * WebCoreSupport/WebContextMenuClient.mm: + (fixMenusToSendToOldClients): Remove the "Open Link" item from the + default menu items array before sending it off to Tiger Mail. + (WebContextMenuClient::getCustomMenuFromDefaultItems): Set the + representedObject on every NSMenuItem to match our old (correct) API + behavior. + +2007-02-27 Mitz Pettel + + Reviewed by Darin. + + - http://bugs.webkit.org/show_bug.cgi?id=12906 + REGRESSION: Canvas is pixelated when the page is opened in a background tab + + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::scaleFactor): If the view is not in a window, use the main + screen's scale factor as a best guess. + +2007-02-26 John Sullivan + + Reviewed by Darin and Geoff + + * WebView/WebHTMLView.mm: + (coreGraphicsScreenPointForAppKitScreenPoint): + This method was copied from WebBrowser, and it was wrong. Fixed it. This only + affects the Dictionary pop-up panel. + +2007-02-26 David Hyatt + + Update web inspector to account for border-fit. + + Reviewed by darin + + * WebInspector/webInspector/inspector.js: + +2007-02-26 Geoffrey Garen + + Reviewed by Darin Adler. + + Re-arranged things to put deprecated methods at the bottom. + + * Misc/WebCoreStatistics.h: + * Misc/WebCoreStatistics.mm: + (+[WebCoreStatistics javaScriptNoGCAllowedObjectsCount]): + (+[WebCoreStatistics javaScriptReferencedObjectsCount]): + (+[WebCoreStatistics javaScriptRootObjectClasses]): + * WebKit.xcodeproj/project.pbxproj: + +2007-02-26 Maciej Stachowiak + + Rubber stamped by Mitz. + + - fix layout tests by fixing discrepancy in feature macros. + + * WebInspector/WebInspector.m: + (-[WebInspector _highlightNode:]): + * WebKit.xcodeproj/project.pbxproj: + +2007-02-23 Mitz Pettel + + Reviewed by Maciej. + + - fix http://bugs.webkit.org/show_bug.cgi?id=11573 + REGRESSION: pressing option-left arrow while in suggestion popup moves the insertion point to the left + + * WebView/WebHTMLView.mm: + (-[WebTextCompleteController endRevertingChange:moveLeft:]): + +2007-02-23 Timothy Hatcher + + Reviewed by Brady. + + _recursive_pauseNullEventsForAllNetscapePlugins still gone + + * WebView/WebFrameInternal.h: Remove _recursive_pauseNullEventsForAllNetscapePlugins + * WebView/WebFramePrivate.h: Add _recursive_pauseNullEventsForAllNetscapePlugins + * WebView/WebFrame.mm: More _recursive_pauseNullEventsForAllNetscapePlugins + +2007-02-22 Adele Peterson + + Reviewed by John. + + Updating this image to match the one in WebCore. + + * WebKit.vcproj/textAreaResizeCorner.png: + +2007-02-22 Beth Dakin + + Reviewed by Adam. + + Fix for http://bugs.webkit.org/show_bug.cgi?id=12399 REGRESSION: + Unable to prevent default context menu from appearing. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView menuForEvent:]): Clear the controller's context menu + before propagating a new context menu event through the DOM. + +2007-02-22 John Sullivan + + Reviewed by Darin + + Removed some unused keyView-related code that I happened to run across. + Replacement code is now in WebChromeClient. + + * WebCoreSupport/WebFrameBridge.h: + * WebCoreSupport/WebFrameBridge.mm: + removed unused stuff + +2007-02-22 Mitz Pettel + + Reviewed by Maciej. + + - fix http://bugs.webkit.org/show_bug.cgi?id=12804 + REGRESSION (r19043-r19063): suggestion popup doesn't work after pressing Option+Esc + + This patch also fixes a bug where using the arrow keys while + the suggestion popup is open moves the caret instead of changing the + selection in the popup (for up/down) or accepting the selection and + closing the popup (for left/right). + + * WebView/WebHTMLView.mm: + (-[WebHTMLView keyDown:]): Changed to close the popup only if it was open + before the current event, so that the Option-Esc that opens the popup will + not close it immediately. + (-[WebHTMLView _interceptEditingKeyEvent:]): Give the completion popup a + chance to intercept keydown events. + (-[WebTextCompleteController popupWindowIsOpen]): Added. Returns whether the + suggestion popup is open. + +2007-02-22 Mitz Pettel + + Reviewed by Mark (age 21). + + - fix http://bugs.webkit.org/show_bug.cgi?id=12805 + REGRESSION: suggestion popup has a disabled scroll bar + + * WebView/WebHTMLView.mm: + (-[WebTextCompleteController _buildUI]): Uncommented the call to the NSWindow + SPI that forces the scroll bar to look active. Also replaced a call to + the deprecated NSTableView method setAutoresizesAllColumnsToFit: with + the new method setColumnAutoresizingStyle: to eliminate console spew. + +2007-02-20 Beth Dakin + + Reviewed by Maciej. + + WebKit changes needed to implement writeImage() in WebCore's + Pasteboard class. + + * Misc/WebKitNSStringExtras.m: Call into WebCore for these + implementations. + (-[NSString _webkit_hasCaseInsensitiveSuffix:]): + (-[NSString _webkit_hasCaseInsensitiveSubstring:]): + (-[NSString _webkit_filenameByFixingIllegalCharacters]): + * Misc/WebNSURLExtras.m: Same. + (-[NSURL _webkit_suggestedFilenameWithMIMEType:]): + * WebCoreSupport/WebContextMenuClient.h: Remove + copyImageToClipboard() + * WebCoreSupport/WebContextMenuClient.mm: + * WebCoreSupport/WebSystemInterface.m: Expose + GetExtensionsForMIMEType and GetPreferredExtensionForMIMEType to + WebCore. + (InitWebCoreSystemInterface): + * WebCoreSupport/WebViewFactory.mm: New localized string for + WebCore. + (-[WebViewFactory copyImageUnknownFileLabel]): + +2007-02-20 Adam Roben + + Reviewed by Darin and Anders. + + Update WebKit for WebCore fix for Make + WebCoreStringTruncator use WebCore types. + + * Misc/WebStringTruncator.m: + (defaultMenuFont): Moved from WebCoreStringTruncator.mm. + (core): Added. + (+[WebStringTruncator centerTruncateString:toWidth:]): + (+[WebStringTruncator centerTruncateString:toWidth:withFont:]): + (+[WebStringTruncator rightTruncateString:toWidth:withFont:]): + (+[WebStringTruncator widthOfString:font:]): + * WebKit.xcodeproj/project.pbxproj: Changed WebStringTruncator to ObjC++. + +2007-02-20 Timothy Hatcher + + Reviewed by John. + + Fixes the version number returned when using a CFBundleVersion of "420+". + + * WebView/WebView.mm: + (-[WebView _userVisibleBundleVersionFromFullVersion:]): Check the length up to the first + non-decimal digit, so this works with versions that have "." and "+". + +2007-02-20 John Sullivan + + Reviewed by Kevin Decker + + - fixed REGRESSION: After clicking on page, Find + won't find anything if all hits are before the clicked point + + This was caused by a mismatch between WebCore's search code's notion of "selection" and + WebView's search code's notion of "selection". WebCore's search code was starting + just before or just after the "selection", which included collapsed, zero-length + selections. WebKit's search code was only considering non-zero-length selections, + and would not search all of the content when there was a zero-length selection. + The fix was to make WebKit ignore the selection. This has a side effect of increasing + the amount of redundantly-searched content in the case where no matches are found. To + compensate for that, I special-cased the most common case of WebViews with a single frame, + to avoid ever searching redundantly in those. + + * WebView/WebView.mm: + (-[WebView searchFor:direction:caseSensitive:wrap:startInSelection:]): + remove startHasSelection ivar; special-case WebViews with only one frame; clarify the + code that leads to redundant searching with comments. + +2007-02-20 Timothy Hatcher + + Reviewed by Darin. + + WebKit -finalize methods are not thread-safe; design change needed + + Call WebCoreObjCFinalizeOnMainThread from the initialize method of all the classes + that have a finalizer that needs called on the main thread. Assert in finalize that we + are on the main thread. + + * Carbon/CarbonWindowAdapter.m: + (+[CarbonWindowAdapter initialize]): + (-[CarbonWindowAdapter finalize]): + * History/WebBackForwardList.mm: + (+[WebBackForwardList initialize]): + (-[WebBackForwardList finalize]): + * History/WebHistoryItem.mm: + (+[WebHistoryItem initialize]): + * Misc/WebElementDictionary.mm: + (+[WebElementDictionary initialize]): + (-[WebElementDictionary finalize]): + * Plugins/WebBaseNetscapePluginStream.m: + (+[WebBaseNetscapePluginStream initialize]): + (-[WebBaseNetscapePluginStream finalize]): + * Plugins/WebBaseNetscapePluginView.mm: + (+[WebBaseNetscapePluginView initialize]): + (-[WebBaseNetscapePluginView finalize]): + * Plugins/WebBasePluginPackage.m: + (+[WebBasePluginPackage initialize]): + (-[WebBasePluginPackage finalize]): + * Plugins/WebNetscapePluginStream.mm: + (-[WebNetscapePluginStream finalize]): + * WebCoreSupport/WebEditorClient.mm: + (+[WebEditCommand initialize]): + (-[WebEditCommand finalize]): + * WebCoreSupport/WebFrameBridge.mm: + (+[WebFrameBridge initialize]): + (-[WebFrameBridge finalize]): + * WebCoreSupport/WebFrameLoaderClient.mm: + (+[WebFramePolicyListener initialize]): + (-[WebFramePolicyListener finalize]): + * WebView/WebHTMLView.mm: + (+[WebHTMLView initialize]): + (-[WebHTMLView finalize]): + * WebView/WebView.mm: + (+[WebViewPrivate initialize]): + (-[WebViewPrivate finalize]): + +2007-02-20 Justin Garcia + + Reviewed by darin + + + Integrate Mail and WebKit paste operations + + Mail overrides paste: because it has different + preferred pasteboard types, but it should use our + fragment creation code. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]): + Moved fragment creation code into a new method. + (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:]): + Moved fragment creation code here. + * WebView/WebHTMLViewPrivate.h: Exposed + _documentFragmentFromPasteboard:forType:inContext: as SPI. + +2007-02-20 John Sullivan + + Reviewed by Tim Hatcher + + * Misc/WebKitNSStringExtras.h: + * Misc/WebKitNSStringExtras.m: + removed _webkit_userVisibleBundleVersionFromFullVersion; we decided to do this without + adding SPI for it. + + * WebView/WebView.mm: + (-[WebView _userVisibleBundleVersionFromFullVersion:]): + new method, moved here from WebKitNSStringExtras, and is now a WebView method rather than + an NSString method + (-[WebView _computeUserAgent]): + updated for method signature change + +2007-02-20 Timothy Hatcher + + Reviewed by John. + + * Misc/WebKitNSStringExtras.h: Added _webkit_userVisibleBundleVersionFromFullVersion. + * Misc/WebKitNSStringExtras.m: + (-[NSString _webkit_userVisibleBundleVersionFromFullVersion]): If the version is 4 digits long or longer, + then the first digit represents the version of the OS. Our user agent string should not + include this first digit, so strip it off and report the rest as the version. + * WebView/WebView.mm: + (-[WebView _computeUserAgent]): Call _webkit_userVisibleBundleVersionFromFullVersion on the CFBundleVersion. + +2007-02-20 Darin Adler + + Reviewed by Anders. + + * Plugins/WebPluginController.mm: (-[WebPluginController pluginView:receivedResponse:]): + Call cancelMainResourceLoad on the document loader instead of the frame loader. + +2007-02-20 Anders Carlsson + + Reviewed by Mitz. + + REGRESSION: Repro overrelease of WebView in failed load, seen in DumpRenderTree + + * WebView/WebView.mm: + (-[WebView _removeObjectForIdentifier:]): + Return early if the identifier can't be found in the map. + +2007-02-19 Timothy Hatcher + + Reviewed by Darin Adler. + + Remove the Mail.app editable link clicking behavior workaround when it is no longer needed + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebView.mm: + (-[WebView setPreferences:]): + +2007-02-19 Anders Carlsson + + Reviewed by Adam. + + + http://bugs.webkit.org/show_bug.cgi?id=12670 + REGRESSION: Many 3rd Party Apps crash in WebCore::DocumentLoader::frameLoader() (12670) + + Bring back the semantic we had that a web view should be retained for as long as something is loading. Use the identifier + to object hash map for this. + + * WebView/WebView.mm: + (-[WebView _addObject:forIdentifier:]): + (-[WebView _removeObjectForIdentifier:]): + +2007-02-18 Brady Eidson + + Reviewed by Oliver + + - Can't edit templates for Web Gallery/Web Page Export in Aperture + + * Misc/WebKitVersionChecks.h: Add a #define for this APERTURE quirk + * WebView/WebView.mm: + (-[WebView _shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting:]): + If the current app is Aperture and it was linked against Tiger WebKit, always allow selection change + +2007-02-17 Lars Knoll + + Reviewed by Maciej. + + Additional coding by Maciej, additional review by Oliver. + + Added implementations for the new callbacks in EditorClient + and ChromeClient (basically moved from WebFrameBridge). + Cleaned up some code paths that are not called anymore + and done fully inside WebCore now. + + * DefaultDelegates/WebDefaultContextMenuDelegate.mm: + * Misc/WebElementDictionary.mm: + * Misc/WebNSAttributedStringExtras.mm: + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView getVariable:value:]): + * Plugins/WebNetscapePluginEmbeddedView.mm: + * Plugins/WebNetscapePluginStream.mm: + * Plugins/WebPluginContainerCheck.mm: + * WebCoreSupport/WebChromeClient.h: + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::shouldInterruptJavaScript): + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::shouldChangeSelectedRange): + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge finishInitializingWithPage:frameName:frameView:ownerElement:]): + (-[WebFrameBridge fini]): + * WebCoreSupport/WebFrameLoaderClient.mm: + * WebView/WebArchiver.mm: + * WebView/WebFrame.mm: + (core): + (kit): + (-[WebFrame _updateBackground]): + * WebView/WebFrameInternal.h: + * WebView/WebFrameView.mm: + * WebView/WebHTMLRepresentation.mm: + * WebView/WebHTMLView.mm: + (-[WebHTMLView _updateMouseoverWithEvent:]): + (-[WebHTMLView _isEditable]): + (-[WebHTMLView validateUserInterfaceItem:]): + (-[WebHTMLView maintainsInactiveSelection]): + (-[WebHTMLView scrollWheel:]): + (-[WebHTMLView acceptsFirstMouse:]): + (-[WebHTMLView shouldDelayWindowOrderingForEvent:]): + (-[WebHTMLView cut:]): + (-[WebHTMLView paste:]): + (-[WebHTMLView selectedAttributedString]): + * WebView/WebScriptDebugDelegate.mm: + * WebView/WebView.mm: + (-[WebView _dashboardRegions]): + (-[WebView setProhibitsMainFrameScrolling:]): + (-[WebView _setInViewSourceMode:]): + (-[WebView _inViewSourceMode]): + (-[WebView shouldClose]): + (-[WebView setEditable:]): + +2007-02-18 Oliver Hunt + + Reviewed by Adam. + + Moving the drag initiation logic to WebCore. + The redundant code in webkit will be moved out in a later patch. + + * WebCoreSupport/WebDragClient.h: + * WebCoreSupport/WebDragClient.mm: + (getTopHTMLView): + Helper function + (WebDragClient::willPerformDragSourceAction): + (WebDragClient::startDrag): + (WebDragClient::createDragImageForLink): + Implemented new DragClient methods + (WebDragClient::declareAndWriteDragImage): + Helper function for the Mac to allow new drag and drop + code to match behaviour + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _dragImageForURL:withLabel:]): + (-[WebHTMLView _dragImageForLinkElement:]): + Refactoring old _dragImageForLinkElement function so that + the link drag image can be created with just a URL and label, + rather than requiring the original element + (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): + Removed logic that is no longer necessary + (-[WebHTMLView _mouseDownEvent]): + The WebDragClient may need the original mouseDownEvent of a drag when initiating + a drag + * WebView/WebHTMLViewInternal.h: + Declaring _mouseDownEvent + + * WebView/WebHTMLViewPrivate.h: + Declaring _dragImageForURL + +2007-02-16 John Sullivan + + Reviewed by Tim Hatcher + + - fixed "Check Grammar" checkbox in Spelling+Grammar window doesn't + live update with menu change in WebKit + + * WebView/WebView.mm: + (-[WebView setGrammarCheckingEnabled:]): + Use sekrit AppKit knowledge to tell NSSpellChecker about the change, since there's no API + for this yet. Also restructured a little to avoid extra work when the value hasn't changed. + +2007-02-15 Brady Eidson + + Reviewed by Adam + + Save scroll state for back/forward navigation in FrameLoader, not the client + + * WebCoreSupport/WebFrameLoaderClient.h: Renamed the save/restore methods + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::saveViewStateToItem): Save viewstate only + (WebFrameLoaderClient::restoreViewState): Restore viewstate only + +2007-02-14 Alexey Proskuryakov + + Reviewed by Darin. + + http://bugs.webkit.org/show_bug.cgi?id=12643 + NPN_Status is using latin-1 encoding for the message instead of UTF-8 + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView status:]): Check for possible conversion failure. + +2007-02-13 Oliver Hunt + + Reviewed by John. + + Modify entry point ASSERTs for dragging functions to allow for the case + where a load has occurred mid-drag. The load may detach the HTMLView + from the WebView so it is no longer possible to check _isTopHTMLView. + + The assertion changes match that of revision 14897 which fixed the + more common case ([WebHTMLView draggedImage:endedAt:operation:]) + + It's also necessary to check for a null Page now prior to accessing + the DragController, which is necessary in all of these methods. + + See rdar://problem/4994870 + + * WebView/WebHTMLView.mm: + (-[WebHTMLView draggingSourceOperationMaskForLocal:]): + (-[WebHTMLView draggedImage:movedTo:]): + (-[WebHTMLView draggedImage:endedAt:operation:]): + (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): + +2007-02-13 Alexey Proskuryakov + + Reviewed by Maciej. + + http://bugs.webkit.org/show_bug.cgi?id=12643 + NPN_Status is using latin-1 encoding for the message instead of UTF-8 + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView status:]): Use kCFStringEncodingUTF8. + +2007-02-13 Mark Rowe + + Reviewed by Timothy Hatcher. + + Fix http://bugs.webkit.org/show_bug.cgi?id=12745 + Bug 12745: REGRESSION: Webkit will not load a plugin that Safari can load (symbol missing _objc_msgSend_fpret) + + Treat libobjc as a sub-library of WebKit in Debug/Release so that plugins and applications linked against an + umbrella framework version of WebKit that expect to find libobjc symbols in WebKit can do so. + + * WebKit.xcodeproj/project.pbxproj: + +2007-02-12 Kevin McCullough + + Reviewed by . + + - reverting change to not cause regressions and performance problems. + + * Misc/WebNSAttributedStringExtras.mm: + (fileWrapperForElement): + +2007-02-12 Darin Adler + + Reviewed by Oliver. + + - fix http://bugs.webkit.org/show_bug.cgi?id=12677 + REGRESSION: Return key is always sent when you confirm + a clause in kotoeri (12677) + + - fix http://bugs.webkit.org/show_bug.cgi?id=12596 + REGRESSION: Tab key shifts form field focus instead of + navigating prediction window (12596) + + - fix http://bugs.webkit.org/show_bug.cgi?id=10010 + REGRESSION: Pressing Return with unconfirmed text in + Hangul inserts carriage return (10010) + + - fix http://bugs.webkit.org/show_bug.cgi?id=12531 + REGRESSION: Inline text input types repeated keys in + latest nightly (r19336) (12531) + + - fix http://bugs.webkit.org/show_bug.cgi?id=12539 + REGRESSION: Pressing Backspace while in inline input + area moves to the previous page in history (12539) + + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: (WebEditorClient::markedTextAbandoned): + Added. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView menuForEvent:]): Added explicit constructor needed now that the + function takes a const&. + (-[WebHTMLView becomeFirstResponder]): Removed fake event code, no longer needed + since advanceFocus now works fine with 0 for a DOM event. + (-[WebHTMLView _expandSelectionToGranularity:]): Changed to use the normal + selection controller function instead of selectRange. + (-[WebHTMLView insertTab:]): Changed to call bottleneck that receives the DOM + event. + (-[WebHTMLView insertBacktab:]): Ditto. + (-[WebHTMLView insertNewline:]): Ditto. + (-[WebHTMLView insertLineBreak:]): Ditto. + (-[WebHTMLView insertParagraphSeparator:]): Ditto. + (-[WebHTMLView insertNewlineIgnoringFieldEditor:]): Ditto. + (-[WebHTMLView insertTabIgnoringFieldEditor:]): Ditto. + (-[WebHTMLView yank:]): Updated to call Editor directly since the insertText + code now works via a text input event which is not what we want for paste-like + things such as yank. + (-[WebHTMLView yankAndSelect:]): Ditto. + (-[WebHTMLView selectToMark:]): Changed to use the normal selection controller + function instead of selectRange, which also allows us to remove the ObjC exception + handling code. + (-[WebHTMLView swapWithMark:]): Ditto. + (-[WebHTMLView transpose:]): Ditto. + (-[WebHTMLView unmarkText]): Since this is one of the calls back from the input + manager, added code to set the "event was handled" flag. Moved the actual work + into the Editor class in WebCore and just call that from here. + (-[WebHTMLView _selectRangeInMarkedText:]): Changed to use the normal selection + controller function instead of selectRange. + (-[WebHTMLView setMarkedText:selectedRange:]): Since this is one of the calls + back from the input manager, added code to set the "event was handled" flag. + Also changed the ignoreMarkedTextSelectionChange to use the flag over on the + WebCore side, since we moved it there and to call selectMarkedText over on + the WebCore side too. + (-[WebHTMLView doCommandBySelector:]): Added special cases for newline and tab + selectors so that the event is passed along. These selectors are special because + they are ones that turn into text input events. + (-[WebHTMLView _discardMarkedText]): Moved the body of this function into the + Editor class in WebCore and just call that from here. + (-[WebHTMLView insertText:]): Added code to send a text input event instead of + calling the editor to do text insertion. The insertion is then done in the + default handler for the text input event. + (-[WebHTMLView _insertNewlineWithEvent:isLineBreak:]): Added. Sends a text + input event. + (-[WebHTMLView _insertTabWithEvent:isBackTab:]): Ditto. + (-[WebHTMLView _updateSelectionForInputManager]): Changed to use the + ignoreMarkedTextSelectionChange flag in Editor now that the one here is gone. + + * WebView/WebHTMLViewInternal.h: Remove ignoreMarkedTextSelectionChange field. + + * WebView/WebView.mm: (-[WebView setSelectedDOMRange:affinity:]): Changed to + use the normal selection controller function instead of selectRange. + +2007-02-11 Sam Weinig + + Reviewed by Mark. + + Switch the initial value of box-sizing property from "border-box" to "content-box". + + * WebInspector/webInspector/inspector.js: + +2007-02-10 Mitz Pettel + + Reviewed by Maciej. + + - fix http://bugs.webkit.org/show_bug.cgi?id=11847 + REGRESSION (SearchField): Dragging to select in the Web Inspector's search fields drags the inspector window + + * WebInspector/webInspector/inspector.css: Added the search field to the + undraggable dashboard-region. + +2007-02-09 Kevin Decker + + Reviewed by Darin & Maciej. + + Fixed: REGRESSION: missing images when reloading webarchives (11962) + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::canUseArchivedResource): The bug here is that because a reload sets a cache + policy of NSURLRequestReloadIgnoringCacheData (rightfully so), this method was refusing to load + subresources in WebArchives. It's OK to use archive subresources for the NSURLRequestReloadIgnoringCacheData + cache policy because we're not worried about the actual contents of a WebArchive changing on disk. + +2007-02-09 Justin Garcia + + Reviewed by darin + + + REGRESSION: double-cursor after switching window away/back (11770) + + Gmail Editor: Caret can simultaneously appear in both the TO: and message body fields + + * WebCoreSupport/WebFrameBridge.mm: Removed unused methods. + * WebView/WebHTMLView.mm: Ditto. + (-[WebHTMLView _web_firstResponderCausesFocusDisplay]): Don't + appear focused if a descendant view is firstResponder. + (-[WebHTMLView _updateActiveState]): Removed the check for a BOOL + that was always false. + * WebView/WebHTMLViewInternal.h: Removed a BOOL that's always false. + +2007-02-09 Beth Dakin + + Reviewed by Darin. + + Fix for REGRESSION: Adobe Acrobat 8 - Text + blinks when mouse is moved, and is invisible otherwise + + Allow quirk if the Application was linked before 3.0 and if the + application is Adobe Acrobat. + + * Misc/WebKitVersionChecks.h: + * WebView/WebView.mm: + (-[WebView _updateWebCoreSettingsFromPreferences:]): + +2007-02-09 Timothy Hatcher + + Reviewed by Brady. + + * WebKit.exp: Add WebBaseNetscapePluginView to the export list. + +2007-02-09 John Sullivan + + Reviewed by Beth + + - WebKit part of fix for radar 4939636, problems with context menu items and binaries linked + against WebKit 2.0. + + * WebKit.xcodeproj/project.pbxproj: + Changed DYLIB_CURRENT_VERSION to 2 (was 1) + + * Misc/WebKitVersionChecks.h: + Added constant WEBKIT_FIRST_VERSION_WITH_3_0_CONTEXT_MENU_TAGS, which is 2 but in the weird + format that these version checks use. + + * WebView/WebUIDelegatePrivate.h: + Tweaked comments; included the old values for three tags for context menu items that changed + from SPI to API in 3.0; renamed WEBMENUITEMTAG_SPI_START to WEBMENUITEMTAG_WEBKIT_3_0_SPI_START + for clarity, and bumped its value to avoid conflict with the three old values + + * WebCoreSupport/WebContextMenuClient.mm: + (isAppleMail): + new helper function that checks the bundle identifier + (fixMenusToSendToOldClients): + Removed return value for clarity; now checks linked-on version and also makes special case + for Mail; now replaces three API tags with their old SPI values for clients that linked + against old WebKit version, in addition to replacing new API with WebMenuItemTagOther for + items that had no specific tag before. + (fixMenusReceivedFromOldClients): + Removed return value for clarity; removed defaultMenuItems parameter because it's no longer + necessary; removed code that tried to recognize menus that got confused by the SPI -> API + change (we now pass the old SPI values to these clients to avoid confusing them); now + restores the tags for the items whose tags were replaced in fixMenusToSendToOldClients + (this used to restore the tags of the default items rather than the new items, which was + incorrect but happened to work since the clients we tested were using the objects from the + default items array in their new items array) + (WebContextMenuClient::getCustomMenuFromDefaultItems): + Updated to account for the removed return values for the two fix-up methods; moved the + autorelease of newItems here, which is clearer and was the source of a leak before. + +2007-02-08 Kevin McCullough + + Reviewed by + + - fixing a build breakage. + + * Misc/WebNSAttributedStringExtras.mm: + (fileWrapperForElement): + +2007-02-07 Charles Ying + + Reviewed by Adam. + + Code suggestion by aroben + + Fix http://bugs.webkit.org/show_bug.cgi?id=12688 + + REGRESSION (r19469): ASSERT when right clicking on hyperlinks! in TOT webkit + + * WebCoreSupport/WebContextMenuClient.mm: + (fixMenusReceivedFromOldClients): + + - fixMenusReceivedFromOldClients was hitting an ASSERT incorrectly + because it could not match [item title] to any of the contentMenuItemTags + using pointer comparison ==. Instead, it needs to do a string comparison + between [item title] and the various contentMenuItemTags using + isEqualToString instead of ==. You would encounter this whenever the + context menu was activated, e.g., from a hyperlink right click (or + control click). + + +2007-02-07 Anders Carlsson + + Reviewed by Maciej. + + Move shouldInterruptJavaScript to the Chrome. + + * WebCoreSupport/WebChromeClient.h: + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::shouldInterruptJavaScript): + * WebCoreSupport/WebFrameBridge.mm: + +2007-02-07 John Sullivan + + Reviewed by Kevin Decker + + - fixed all places in WebKit where _web_userVisibleString was used where + _web_originalDataAsString should have been used instead. + + * History/WebURLsWithTitles.m: + (+[WebURLsWithTitles writeURLs:andTitles:toPasteboard:]): + use _web_originalDataAsString when writing since these aren't displayed to the user + (+[WebURLsWithTitles URLsFromPasteboard:]): + use _web_URLWithDataAsString when reading, to match what we used when writing + + * Misc/WebNSPasteboardExtras.mm: + (-[NSPasteboard _web_writeURL:andTitle:types:]): + use _web_originalDataAsString when writing the NSURL type; continue using + _web_userVisibleString when writing the plain text type + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _documentFragmentWithPaths:]): + added comment about why _web_userVisibleString is appropriate here + (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]): + use _web_originalDataAsString when setting the href attribute of an anchor tag + +2007-02-07 David Harrison + + Reviewed by Adam. + + REGRESSION: insertion point blink redraws entire web page, making everything slow + + Problem is that AppKit recently changed NSControl to trigger a full redraw if the control has a focus ring. + WebHTMLView is a subclass of NSControl, but the focus ring type was the default value, though we actually + draw no focus ring. Fix is to formally set our focus ring type. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView initWithFrame:]): + Send [self setFocusRingType:NSFocusRingTypeNone]. + +2007-02-07 John Sullivan + + Undid changes that I hadn't intended to check in + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _documentFragmentWithPaths:]): + (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]): + +2007-02-07 John Sullivan + + Reviewed by Ollie and Geoff + + - fixed KURL::createCFURL leak inside -[WebFrameBridge startDraggingImage...] + reported by buildbot + + (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): + don't retain the imageURL we pass to the drag controller -- it's just automagically + converted to a KURL anyway + +2007-02-07 John Sullivan + + Reviewed by Darin + + - fixed REGRESSION: Dragging a saved image into the browser window + displays a error (No File exists at the address "null") (12662) + + * WebCoreSupport/WebPasteboardHelper.mm: + (WebPasteboardHelper::urlFromPasteboard): + use _web_originalDataAsString instead of _web_userVisibleString, since _web_userVisibleString + can return a string with non-ASCII characters -- suitable for display but not for code + +2007-02-07 John Sullivan + + Reviewed by Darin + + - added some clarity to some menu-handling shenanigans + + * WebCoreSupport/WebContextMenuClient.mm: + (fixMenusToSendToOldClients): + renamed from fixMenusForOldClients; added comments, FIXME, and assertion + (fixMenusReceivedFromOldClients): + renamed from fixMenusFromOldClients; added comments, FIXME, and assertion + (WebContextMenuClient::getCustomMenuFromDefaultItems): + updated for name changes + +2007-02-06 Kevin Decker + + Fixed: ASSERTION failure on quit @ talkcrunch.com in _NPN_ReleaseObject + + Reviewed by Anders. + + * Plugins/WebPluginDatabase.m: + (+[WebPluginDatabase sharedDatabase]): Removed NSApplicationWillTerminateNotification observer and thus + also removed code that would unload the entire plug-in database when receiving that notification. + + The bug here was that this notification callback would happen first before anything else thus unloading + plug-ins and releasing plug-in memory. That was crash prone because the JavaScriptCore collector would at + a later time attempt to release its CInstance references (references that point to plug-in memory) + without knowing WebKit already unloaded the plug-in out from underneath it. The WebPluginDatabase simply + does not have enough context to make this decision. + + * WebView/WebView.mm: Added two statics: applicationIsTerminating, pluginDatabaseClientCount. + (+[WebView initialize]): Added NSApplicationWillTerminateNotification observer. + (+[WebView _applicationWillTerminate]): Added. + (-[WebView _close]): WebKit has both a global plug-in database and a separate, per WebView plug-in database. + We need to release both sets of plug-ins because Netscape plug-ins have "destructor functions" that should be + called when the browser unloads the plug-in. These functions can do important things, such as closing/deleting + files so it is important to ensure that they are properly called when the application terminates. + + The new change is that on app shutdown, we unload WebKit's global plug-in database if and only if the last WebView + was closed. To do so otherwise would unload plug-ins out from underneath other WebViews. + +2007-02-06 Darin Adler + + Reviewed by John Sullivan. + + - fix http://bugs.webkit.org/show_bug.cgi?id=11080 + REGRESSION: Incorrect vertical positioning of Safari + status bar text containing @ character (11080) + + * Misc/WebKitNSStringExtras.m: + (canUseFastRenderer): Fix code that mistakenly used the slow renderer for strings + that have a direction of "other neutral", which includes the "@" character. + (-[NSString _web_drawAtPoint:font:textColor:]): Add code to make the baseline of + the text in the status bar right. AppKit's rule for rounding is complicated enough + that this is obviously not perfectly correct, but it does make both code paths + use the same baseline in all the places this is currently used in AppKit. + +2007-02-06 Darin Adler + + Spotted by Steve F. + + * Misc/WebNSURLExtras.m: + (-[NSString _web_mapHostNameWithRange:encode:makeString:]): + Fix obvious logic mistake I introduced back in revision 8255. + I can't see how to exercise this code path, but I also can't + bear to leave this obviously-broken code as-is. + +2007-02-05 David Kilzer + + Reviewed by Darin. + + http://bugs.webkit.org/show_bug.cgi?id=7266 + Webarchive format saves duplicate WebSubresources to .webarchive file + + Tests: webarchive/test-duplicate-resources.html + webarchive/test-frameset.html + + * WebView/WebArchiver.mm: + (+[WebArchiver _archiveWithMarkupString:fromFrame:nodes:]): Use an NSMutableSet to prevent + duplicate subresources from being added to the webarchive. + +2007-02-06 Mark Rowe + + Roll out incomplete support for font-stretch (r19350) at Dave Hyatt's request. + See http://bugs.webkit.org/show_bug.cgi?id=12530#c9 for more info. + + * WebInspector/webInspector/inspector.js: + * WebView/WebHTMLView.mm: + (-[WebHTMLView _addToStyle:fontA:fontB:]): + +2007-02-05 Beth Dakin + + Reviewed by Adam. + + Fix for REGRESSION: With BumperCar 2.1.1, + the contextual menu fails to appear when I ctrl-click on page + + * WebCoreSupport/WebContextMenuClient.mm: + (WebContextMenuClient::getCustomMenuFromDefaultItems): If the + delegate does not respond to contextMenuItemsForElement, return the + default menu instead of nil. + +2007-02-01 Geoffrey Garen + + Reviewed by Maciej Stachowiak. + + Added support for selectively ignoring WebCore::Node leaks during layout + tests, so that we can ignore known leaks in other components. + + * Misc/WebCoreStatistics.h: + * Misc/WebCoreStatistics.mm: + (+[WebCoreStatistics startIgnoringWebCoreNodeLeaks]): + (+[WebCoreStatistics stopIgnoringWebCoreNodeLeaks]): + +2007-02-01 Nicholas Shanks + + Reviewed by Mark. + + Add support for CSS2 font-stretch property. + + * WebInspector/webInspector/inspector.js: + * WebView/WebHTMLView.mm: + (-[WebHTMLView _addToStyle:fontA:fontB:]): + +2007-02-01 Maciej Stachowiak + + Reviewed by Adam. + + REGRESSION: Assertion failure in -[WebDataSource(WebInternal) _bridge] when forwarding message + + * WebView/WebDataSource.mm: + (-[WebDataSource subresources]): Check for being uncommitted and return emtpy result. + (-[WebDataSource subresourceForURL:]): ditto + +2007-01-31 Oliver Hunt + + Reviewed by Adam. + + Migrating methods to WebCore + + * WebCoreSupport/WebFrameBridge.mm: + * WebView/WebHTMLView.mm: + * WebView/WebHTMLViewPrivate.h: + +2007-01-31 Anders Carlsson + + Reviewed by Maciej. + + + REGRESSION: After opening a web archive, location shows the actual URL, not the webarchive file + + "Revert" the change done in 13734. + + * WebView/WebHTMLRepresentation.mm: + (-[WebHTMLRepresentation loadArchive]): + Don't do a new load here, as this would cancel the current load and call the resource load + delegate's didFailLoadingWithError: method. Instead, call continueLoadWithData. + +2007-02-01 Nikolas Zimmermann + + Reviewed by Maciej. + + Fix run-pageloadtest to actually work again. + + * Misc/WebNSWindowExtras.m: + (+[NSWindow _webkit_displayThrottledWindows]): + +2007-01-31 Adele Peterson + + Reviewed by Darin. + + WebKit part of fix for REGRESSION: when keyPress event changes form focus, inserted key goes to wrong control + + * WebCoreSupport/WebEditorClient.mm: (WebEditorClient::handleKeyPress): Instead of using the selected frame, use the + frame for the target of the keyboard event. Also, don't do the canEdit check here, since the target's frame might not + have a selection at this point. Do the canEdit check within Editor::insertText, where we determine which selection to use + for inserting text. + * WebView/WebEditingDelegatePrivate.h: Added forward declaration of DOMHTMLElement. This is needed after reordering includes in WebEditorClient.mm. + +2007-01-31 Alice Liu + + Reviewed by Tim Hatcher. + + Turning an accidental API change to an SPI change + + * WebView/WebEditingDelegate.h: + * WebView/WebEditingDelegatePrivate.h: + move some declarations into private header. + +2007-01-31 Darin Adler + + - fix build + + * ForwardingHeaders/wtf/ListHashSet.h: Added. + +2007-01-31 Maciej Stachowiak + + Reviewed by Anders. + + - related fix for REGRESSION: Mail hangs when replying, forwarding , or creating a new message + + * WebView/WebFrame.mm: + (-[WebFrame loadArchive:]): This method also needs to add the lame WebDataRequest property or other things, like + Mail Contents of Page, break. + +2007-01-31 Maciej Stachowiak + + Reviewed by Eric. + + - add back no-op version of silly method so that shipping Safari can still run the PLT + + * Misc/WebNSWindowExtras.m: + (-[NSWindow _webkit_displayThrottledWindows]): + +2007-01-31 Mark Rowe + + More build fixing. + + * Misc/WebKitLogging.h: Use !defined() rather than !. + * Plugins/WebNetscapePluginStream.h: Remove #if __cplusplus as this file is only included from Obj-C++ files. + * WebView/WebHTMLView.mm: + (-[WebHTMLView _lookUpInDictionaryFromMenu:]): Use #ifdef rather than #if. + * WebView/WebView.mm: + (-[WebView isGrammarCheckingEnabled]): Ditto. + +2007-01-31 Mark Rowe + + Build fix. + + * WebView/WebView.mm: + (-[WebView initWithFrame:frameName:groupName:]): + +2007-01-31 Mark Rowe + + Reviewed by Oliver. + + Enable -Wundef in WebKit, and change misuses of #if to #ifdef or #ifndef as appropriate. + + * Misc/WebKitLogging.h: + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebFrame.mm: + * WebView/WebFrameInternal.h: + * WebView/WebHTMLView.mm: + (-[WebHTMLView validateUserInterfaceItem:]): + (-[WebHTMLView delete:]): + (-[WebHTMLView showGuessPanel:]): + (-[WebHTMLView copy:]): + (-[WebHTMLView cut:]): + (-[WebHTMLView paste:]): + * WebView/WebHTMLViewInternal.h: + * WebView/WebView.mm: + (-[WebViewPrivate init]): + (-[WebView validateUserInterfaceItem:]): + * WebView/WebViewPrivate.h: + +2007-01-30 Brady Eidson + + Reviewed by Oliver + + This is a corollary to where certain things happened on an alternate thread. + To help catch such behavior in the future, add ASSERT_MAIN_THREAD() to key WebKit API points + + * History/WebHistoryItem.mm: Added ASSERT_MAIN_THREAD() to suspected API entry points + (-[WebHistoryItem dealloc]): + (-[WebHistoryItem finalize]): + (-[WebHistoryItem copyWithZone:]): + (-[WebHistoryItem URLString]): + (-[WebHistoryItem originalURLString]): + (-[WebHistoryItem title]): + (-[WebHistoryItem lastVisitedTimeInterval]): + (-[WebHistoryItem isEqual:]): + (-[WebHistoryItem description]): + (-[WebHistoryItem initWithWebCoreHistoryItem:]): + (-[WebHistoryItem initFromDictionaryRepresentation:]): + (-[WebHistoryItem scrollPoint]): + (-[WebHistoryItem dictionaryRepresentation]): + (-[WebHistoryItem target]): + (-[WebHistoryItem visitCount]): + (-[WebHistoryItem children]): + (-[WebHistoryItem URL]): + (-[WebHistoryItem _lastVisitedDate]): + (-[WebHistoryItem targetItem]): + + * Misc/WebIconDatabase.mm: Added ASSERT_MAIN_THREAD() to suspected API entry points + (-[WebIconDatabase iconForURL:withSize:cache:]): + (-[WebIconDatabase iconURLForURL:]): + (-[WebIconDatabase defaultIconWithSize:]): + (-[WebIconDatabase retainIconForURL:]): + (-[WebIconDatabase releaseIconForURL:]): + (-[WebIconDatabase removeAllIcons]): + (-[WebIconDatabase _iconForFileURL:withSize:]): + (webGetNSImage): + + * Misc/WebKitLogging.h: Added ASSERT_MAIN_THREAD() + * Misc/WebKitLogging.m: + (WebKitRunningOnMainThread): Added + + * WebKit.xcodeproj/project.pbxproj: Define DISABLE_THREAD_CHECK until it is + safe to run with ASSERT_MAIN_THREAD() active + +2007-01-30 Timothy Hatcher + + Reviewed by Darin. + + Stop using NSString deprecated methods like initWithCString: + + * Misc/WebNSImageExtras.m: + (-[NSImage _web_saveAndOpen]): + * WebKit.xcodeproj/project.pbxproj: + +2007-01-30 Mitz Pettel + + Reviewed by Geoff. + + - fix http://bugs.webkit.org/show_bug.cgi?id=12050 + REGRESSION: Assertion failure in -[WebBaseNetscapePluginView willCallPlugInFunction] (plugin) + + Test: plugins/createScriptableObject-before-start.html + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView createPluginScriptableObject]): Return NULL if + the plugin is not started. + +2007-01-30 Maciej Stachowiak + + Reviewed by Anders. + + REGRESSION: Mail hangs when replying, forwarding , or creating a new message + + * WebView/WebFrame.mm: + (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): Set WebDataRequest property on data + load requests since Mail specifically checks for this. + +2007-01-30 Graham Dennis + + Reviewed by Maciej. + + Part of fix for http://bugs.webkit.org/show_bug.cgi?id=10725 + Image data in from RTFD clipboard data thrown away + + The URLs for images in RTFD data must not be loaded until the resources + have been added to the WebUnarchivingState. This can't happen until + after the RTFD data has been parsed, so we must delay loading while this + RTFD data is being parsed to a document fragment. + + * WebView/WebHTMLView.mm: + (uniqueURLWithRelativePart): + (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]): defer loading the resources while RTFD data is being parsed. + (+[NSURL _web_uniqueWebDataURL]): Added this back because AppKit uses it. + * WebView/WebUnarchivingState.m: + (-[WebUnarchivingState archivedResourceForURL:]): orkaround for workaround for rdar://problem/4699166 so that other people can use archivedResourceForURL: too. + +2007-01-29 Jim Correia + + Reviewed by Mark. + + Added support for -allowsUndo/-setAllowsUndo: to allow editable WebView + clients to completely disable undo registration. This is functionally + equivalent to the methods with the same names on NSTextView. + + * WebView/WebView.mm: + (-[WebViewPrivate init]): + (-[WebView initWithCoder:]): + (-[WebView encodeWithCoder:]): + (-[WebView allowsUndo]): + (-[WebView setAllowsUndo:]): + (-[WebView undoManager]): + * WebView/WebViewPrivate.h: + +2007-01-29 Ada Chan + + Reviewed by Brady. + + Moved the update of the title of the current entry in the backforward list to WebCore. + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::setTitle): + +2007-01-29 Adele Peterson + + Reviewed by Darin. + + More preparation for event handling fixes. + + * WebCoreSupport/WebEditorClient.h: Removed EventTargetNode parameter, since you can + just get this from the KeyboardEvent. + * WebCoreSupport/WebEditorClient.mm: (WebEditorClient::handleKeyPress): ditto. + + * WebView/WebHTMLViewInternal.h: Added interpretKeyEventsParameters struct. + * WebView/WebViewInternal.h: Changed parameter from NSEvent to WebCoreKeyboardEvent in _interceptEditingKeyEvent. + * WebView/WebHTMLView.mm: + (-[WebHTMLView yankAndSelect:]): Updated for new triggeringEvent parameter. + (-[WebHTMLView _interceptEditingKeyEvent:]): Set the WebHTMLViewInterpretKeyEventsParameters. + (-[WebHTMLView doCommandBySelector:]): Access WebHTMLViewInterpretKeyEventsParameters. + (-[WebHTMLView insertText:]): ditto. + (-[WebHTMLView _insertText:selectInsertedText:triggeringEvent:]): Added parameter for triggeringEvent. + +2007-01-29 Oliver Hunt + + build fix + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): + +2007-01-25 Oliver Hunt + + Reviewed by Adam. + + Migrated drag state and logic to WebCore, removed superfluous methods + + * ChangeLog: + * WebCoreSupport/WebDragClient.h: + * WebCoreSupport/WebDragClient.mm: + (WebDragClient::dragSourceActionMaskForPoint): + * WebCoreSupport/WebFrameBridge.mm: + allowDHTMLDrag move to WebCore::EventHandler + * WebView/WebHTMLView.mm: + (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): + (-[WebHTMLView draggedImage:movedTo:]): + (-[WebHTMLView draggedImage:endedAt:operation:]): + dragOffset and dragSourecAction is now stored in WebCore::DragController + migrated _delegateDragSourceActionMask to WebCore::DragController + * WebView/WebHTMLViewInternal.h: + Removed dragOffset declaration, migrated to WebCore::DragController + * WebView/WebView.mm: + removed unnecessary method, _loadingDragOperationForDraggingInfo + +2007-01-29 Maciej Stachowiak + + Reviewed by Mark. + + - updated for cross-platform data loading support + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::createDocumentLoader): + * WebView/WebDataSource.mm: + (-[WebDataSource initWithRequest:]): + * WebView/WebDocumentLoaderMac.h: + * WebView/WebDocumentLoaderMac.mm: + (WebDocumentLoaderMac::WebDocumentLoaderMac): + * WebView/WebFrame.mm: + (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): + (-[WebFrame loadData:MIMEType:textEncodingName:baseURL:]): + (-[WebFrame _loadHTMLString:baseURL:unreachableURL:]): + (-[WebFrame loadArchive:]): + * WebView/WebFrameInternal.h: + * WebView/WebHTMLView.mm: + (uniqueURLWithRelativePart): + (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]): + +2007-01-27 David Kilzer + + Reviewed by Adam. + + - fix http://bugs.webkit.org/show_bug.cgi?id=12260 + Windows platform build is not maintained + + * COM/ChromeClientWin.cpp: + (ChromeClientWin::canTakeFocus): + (ChromeClientWin::takeFocus): + * COM/ChromeClientWin.h: + * COM/ContextMenuClientWin.cpp: + (ContextMenuClientWin::getCustomMenuFromDefaultItems): + (ContextMenuClientWin::searchWithGoogle): + * COM/ContextMenuClientWin.h: + * COM/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::assignIdentifierToInitialRequest): + (WebFrameLoaderClient::dispatchWillSendRequest): + (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): + (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge): + (WebFrameLoaderClient::dispatchDidReceiveResponse): + (WebFrameLoaderClient::dispatchDidReceiveContentLength): + (WebFrameLoaderClient::dispatchDidFinishLoading): + (WebFrameLoaderClient::dispatchDidFailLoading): + (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache): + (WebFrameLoaderClient::dispatchDidFailProvisionalLoad): + (WebFrameLoaderClient::dispatchDidFailLoad): + (WebFrameLoaderClient::dispatchCreatePage): + (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType): + (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): + (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): + (WebFrameLoaderClient::dispatchUnableToImplementPolicy): + (WebFrameLoaderClient::setMainDocumentError): + (WebFrameLoaderClient::incrementProgress): + (WebFrameLoaderClient::completeProgress): + (WebFrameLoaderClient::startDownload): + (WebFrameLoaderClient::committedLoad): + (WebFrameLoaderClient::cancelledError): + (WebFrameLoaderClient::cannotShowURLError): + (WebFrameLoaderClient::interruptForPolicyChangeError): + (WebFrameLoaderClient::cannotShowMIMETypeError): + (WebFrameLoaderClient::fileDoesNotExistError): + (WebFrameLoaderClient::shouldFallBack): + (WebFrameLoaderClient::willUseArchive): + (WebFrameLoaderClient::createDocumentLoader): + (WebFrameLoaderClient::download): + * COM/WebFrameLoaderClient.h: + +2007-01-27 David Harrison + + Reviewed by Kevin. + + REGRESSION: Dashboard widgets fail to load + + This was caused by the WebView preferences rework in r18417. Specifically, in + _updateWebCoreSettingsFromPreferences when calling setUserStyleSheetLocation, + [NSURL URLWithString:] is now messaged directly with the result of + [[preferences userStyleSheetLocation] _web_originalDataAsString]], which will + be nil if the userStyleSheetLocation has not been set yet. [NSURL URLWithString:] + throws an exception when the string is nil. DashboardClient.app calls + setUserStyleSheetEnabled *before* calling setUserStyleSheetLocation. + + * WebView/WebView.mm: + (-[WebView _updateWebCoreSettingsFromPreferences:]): + Pass empty string instead of nil string to [NSURL URLWithString:]. + +2007-01-26 Darin Adler + + Reviewed by Timothy. + + Fixes crash drawing avatar on mail.yahoo.com. + + * Plugins/WebBaseNetscapePluginStream.m: Retain the object since destroyStreamWithError: might + release the last reference to it. + +2007-01-26 Darin Adler + + Reviewed by Beth. + + * WebInspector/webInspector/inspector.js: Updated for new computed style properties. + +2007-01-26 Kevin Decker + + Reviewed by andersca. + + Fixed: WebBaseNetscapePluginView leaks memory + http://bugs.webkit.org/show_bug.cgi?id=11523 + + * Plugins/WebBaseNetscapePluginStream.m: + (-[WebBaseNetscapePluginStream setPlugin:]): Calls -[WebBaseNetscapePluginView disconnectStream:] + * Plugins/WebBaseNetscapePluginView.h: Added disconnectStream: to header. + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView stop]): Make a copy of the streams collection prior to calling stop all streams. + This is necessary because calling stop has the side effect of removing the stream from this same collection. + (-[WebBaseNetscapePluginView disconnectStream:]): Added. Removes the stream from the streams collection. + +2007-01-25 Kevin Decker + + Backed out my last patch because it crashes espn.com. Stay tuned for a newer version.. + + * Plugins/WebBaseNetscapePluginStream.m: + (-[WebBaseNetscapePluginStream setPlugin:]): Removed call to streamIsDead. + * Plugins/WebBaseNetscapePluginView.h: Removed streamIsDead. + * Plugins/WebBaseNetscapePluginView.mm: Ditto. + +2007-01-25 Darin Adler + + Reviewed by Beth. + + - fix Safari has a top secret color picker that can be used to... uhh... I don't know + + * Panels/English.lproj/WebAuthenticationPanel.nib/info.nib: Let Interface Builder have its way. + * Panels/English.lproj/WebAuthenticationPanel.nib/objects.nib: Remove the NSColorWell that was + in here (for no good reason). + +2007-01-25 Kevin Decker + + Reviewed by andersca. + + A few tweaks with of a fix done by Steve Gehrman. + + Fixed: WebBaseNetscapePluginView leaks memory + http://bugs.webkit.org/show_bug.cgi?id=11523 + + * Plugins/WebBaseNetscapePluginStream.m: + (-[WebBaseNetscapePluginStream setPlugin:]): Calls -[WebBaseNetscapePluginView streamIsDead:] + * Plugins/WebBaseNetscapePluginView.h: Added streamIsDead to header. + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView streamIsDead:]): Added. Removes the stream from the streams collection. + +2007-01-25 John Sullivan + + Reviewed by Kevin, Geoff, Brady, and Darin + + - fixed Safari's temp files (PDF's) should be in a sub-folder when calling Preview + + * WebView/WebPDFView.mm: + (-[WebPDFView _path]): + use _temporaryPDFDirectoryPath method instead of #defines for hardwiring strings; stop bad practice + of modifying the const char* returned by fileSystemRepresentation + (-[WebPDFView _temporaryPDFDirectoryPath]): + new method, lazily creates and returns a secure temporary directory created with NSTemporaryDirectory() + and mkdtemp + + * English.lproj/StringsNotToBeLocalized.txt: + Updated for these and other recent changes + +2007-01-24 Oliver Hunt + + Build fix + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): + (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): + +2007-01-24 Oliver Hunt + + Reviewed by Maciej. + + Migrating more drag state information to WebCore + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebHTMLView.mm: + (-[WebHTMLViewPrivate dealloc]): + (-[WebHTMLViewPrivate clear]): + (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): + (-[WebHTMLView _mayStartDragAtEventLocation:]): + (-[WebHTMLView close]): + (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): + (-[WebHTMLView _delegateDragSourceActionMask]): + * WebView/WebHTMLViewInternal.h: + +2007-01-24 Adele Peterson + + Reviewed by Darin. + + Small improvement to my last checkin to prevent the keyEventWasInterpreted bool from + being overwritten by reentrancy. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _interceptEditingKeyEvent:]): Point keyEventWasInterpreted pointer to local variable. + (-[WebHTMLView doCommandBySelector:]): + (-[WebHTMLView insertText:]): + * WebView/WebHTMLViewInternal.h: Added BOOL pointer that will point to the local variable on the stack in _interceptEditingKeyEvent + +2007-01-24 Adele Peterson + + Reviewed by Darin. + + - Fix for REGRESSION: Can't use arrow keys (left/right) to navigate caret in input (type=text) or textarea fields + + Keep track of whether interpretKeyEvents handles the key event based on whether or not we get + called in insertText or doCommandBySelector. + + Test: fast/events/arrow-navigation.html + + * WebView/WebHTMLView.mm: + (-[WebHTMLView performKeyEquivalent:]): + (-[WebHTMLView _interceptEditingKeyEvent:]): + (-[WebHTMLView doCommandBySelector:]): + (-[WebHTMLView insertText:]): + * WebView/WebHTMLViewInternal.h: + +2007-01-25 Mark Rowe + + Reviewed by Maciej. + + * Info.plist: Update copyright string. + +2007-01-24 Darin Adler + + Reviewed by Mark Rowe. + + * WebKit.xcodeproj/project.pbxproj: Changed to /usr/sbin/sysctl + so we don't rely on people's paths. + +2007-01-24 Darin Adler + + Reviewed by Adele. + + - fix small regression and GC problems noticed by code inspection + + * WebView/WebHTMLView.mm: Move global declarations to the start of the file. + (+[WebHTMLView _excludedElementsForAttributedStringConversion]): + Add a CFRetain here for GC compatibility. + (+[WebHTMLView _insertablePasteboardTypes]): Ditto. + (-[WebHTMLView performKeyEquivalent:]): Fix small logic mistake that prevents + super from being called if EventHandler::keyEvent returns false. Reformatted + the code a bit and added a local variable for the frame. + (-[WebHTMLView _interceptEditingKeyEvent:]): Added some comments. + (-[WebHTMLView validAttributesForMarkedText]): Add a CFRetain here for + GC compatibility. + +2007-01-23 Adele Peterson + + Reviewed by Adam. + + Fixed 2 layout tests that I broke with my last checkin. + + * WebCoreSupport/WebEditorClient.mm: (WebEditorClient::handleKeyPress): Use the selected frame to get the WebHTMLView. + * WebView/WebHTMLView.mm: + (-[WebHTMLView performKeyEquivalent:]): Added global to keep track of NSEvent used here. + (-[WebHTMLView _interceptEditingKeyEvent:]): Check NSEvent against the event used in performKeyEquivalent. + We don't want to intercept these events. + +2007-01-23 Adele Peterson + + Reviewed by Darin. + + WebKit part of fix for REGRESSION: Inserting tabs is broken in Mail + + In addition to this fix, I also reorganized some event handling code for keyPress events to + prepare for another fix. + + * WebCoreSupport/WebEditorClient.h: Added handleKeyPress method. + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::handleKeyPress): Added. Code moved from WebHTMLView keyDown method. + This is called from the defaultEventHandler so that in the future, we can make the right + decision about which selection the keyPress should apply to. + * WebView/WebHTMLView.mm: + (-[WebHTMLView keyDown:]): Moved _interceptEditingKeyEvent call to handleKeyPress. + (-[WebHTMLView _interceptEditingKeyEvent:]): Prevents intercepting keys for cmd-modified events. Removed tabCycling checks + since this is now handled in WebCore. + * WebView/WebHTMLViewInternal.h: Made _interceptEditingKeyEvent SPI. + * WebView/WebView.mm: Use new tabKeyCyclesThroughElements methods on the page. + (-[WebViewPrivate init]): ditto. + (-[WebView setTabKeyCyclesThroughElements:]): ditto. + (-[WebView tabKeyCyclesThroughElements]): ditto. + (-[WebView setEditable:]): ditto + +2007-01-23 Lars Knoll + + Reviewed by Maciej + + Make the last remaining pieces of the FrameLoader platform + independent. Move most of the code over to WebFrameLoaderClient. + Some smaller cleanups in the WebFrameBridge, and moved some + platform independent functionality over to the shared code + in WebCore. + + * Webcoresupport/WebFrameBridge.mm: + (-[WebFrameBridge finishInitializingWithPage:frameName:frameView:ownerElement:]): + (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]): + (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]): + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::setTitle): + (WebFrameLoaderClient::createFrame): + (WebFrameLoaderClient::objectContentType): + (nsArray): + (WebFrameLoaderClient::createPlugin): + (WebFrameLoaderClient::redirectDataToPlugin): + (nsMutableArray): + (WebFrameLoaderClient::createJavaAppletWidget): + (WebFrameLoaderClient::overrideMediaType): + (WebFrameLoaderClient::windowObjectCleared): + +2007-01-23 Oliver Hunt + + Reviewed by Adam. + + Drop logic bindings for WebKit + + * WebCoreSupport/WebDragClient.h: Added. + * WebCoreSupport/WebDragClient.mm: Added. + (WebDragClient::WebDragClient): + (WebDragClient::actionMaskForDrag): + (WebDragClient::willPerformDragDestinationAction): + Standard client impl + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): + Updated to use DragController to track drag state + + * WebCoreSupport/WebPasteboardHelper.h: Added. + (WebPasteboardHelper::WebPasteboardHelper): + A *temporary* Helper class to access NSPasteboard access and + manipulation functions present in WebKit + * WebCoreSupport/WebPasteboardHelper.mm: Added. + (WebPasteboardHelper::urlFromPasteboard): + (WebPasteboardHelper::plainTextFromPasteboard): + (WebPasteboardHelper::fragmentFromPasteboard): + (WebPasteboardHelper::insertablePasteboardTypes): + See header comment + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDocumentInternal.h: + Remove unnecessary protocol + * WebView/WebFrameView.mm: + (-[WebFrameView _setDocumentView:]): + Updating to use DragController to track drag state + * WebView/WebHTMLView.mm: + (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): + ditto + (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): + ditto + (-[WebHTMLView draggingSourceOperationMaskForLocal:]): + ditto + (-[WebHTMLView draggedImage:endedAt:operation:]): + ditto + (-[WebHTMLView _documentFragmentForPasteboard:]): + Helper method to generate DocumentFragment from NSPasteboard without regressing + (-[WebHTMLView _canProcessDragWithDraggingInfo:]): + Updating to use DragController to track drag state + (-[WebHTMLView _isMoveDrag:]): + (-[WebHTMLView _isNSColorDrag:]): + * WebView/WebHTMLViewInternal.h: + Removing unnecessary fields and methods + * WebView/WebView.mm: + (-[WebViewPrivate dealloc]): + Remove obsolete ASSERT + (-[WebView _setInitiatedDrag:]): + Now passes directly through to DragController + (-[WebView _commonInitializationWithFrameName:groupName:]): + (-[WebView _loadingDragOperationForDraggingInfo:]): + Removed + (-[WebView draggingEntered:]): + Updated to use DragController + (-[WebView draggingUpdated:]): + ditto + (-[WebView draggingExited:]): + ditto + (-[WebView performDragOperation:]): + ditto + (-[WebView _hitTest:dragTypes:]): + * WebView/WebViewInternal.h: + remove unnecessary method def + +2007-01-22 John Sullivan + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _lookUpInDictionaryFromMenu:]): + Tiger build fix: remove unused variable for return value of dictionaryServiceWindowShow + +2007-01-22 John Sullivan + + Reviewed by Adam and Darin + + - fixed "Look Up in Dictionary" does nothing in WebKit + (need to adopt new API) + + * Misc/WebNSURLExtras.m: + (-[NSString _web_isUserVisibleURL]): + random typo correction in comment + + * English.lproj/StringsNotToBeLocalized.txt: + updated for these changes + + * WebView/WebHTMLView.mm: + (coreGraphicsScreenPointForAppKitScreenPoint): + new function to convert an AppKit screen point to a CG screen point + (-[WebHTMLView _lookUpInDictionaryFromMenu:]): + on Leopard now uses new API. There's something of an impedance mismatch between + this API and WebKit, but that was true for the SPI we were using in Tiger also. + Bug 4945808 covers the ways in which this is not perfect. + +2007-01-21 Darin Adler + + Reviewed by Tim H. + + * WebInspector/webInspector/inspector.css: Use row-resize for the splitter cursor + instead of move. It's a horizontal splitter resizer. + +2007-01-19 Adam Roben + + Reviewed by Beth. + + Fix REGRESSION: "Spelling and Grammar", + "Font", "Speech", and "Writing Direction" are missing from contextual + menu + + * WebCoreSupport/WebContextMenuClient.mm: + (fixMenusForOldClients): Change our new SPI tags to + WebMenuItemTagOther because old clients aren't expecting the new tags. + (fixMenusFromOldClients): Use each menu item's title to figure out its + correct tag again. + (WebContextMenuClient::getCustomMenuFromDefaultItems): Call + fixMenusForOldClients before calling up to the delegate. + * WebView/WebUIDelegatePrivate.h: Define WEBMENUITEMTAG_SPI_START so + that we can use it in WebContextMenuClient. + +2007-01-19 John Sullivan + + Reviewed by Darin + + - WebKit part of fix for: REGRESSION: On some sites, have to + type a character before username/password autofill kicks in + + Added new webView:didFinishDocumentLoadForFrame: SPI and wired it up + + * WebView/WebViewPrivate.h: + declare new delegate method + + * WebCoreSupport/WebFrameLoaderClient.h: + declare dispatchDidFinishDocumentLoad() + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchDidFinishDocumentLoad): + new method, calls new delegate method + + * DefaultDelegates/WebDefaultFrameLoadDelegate.m: + (-[WebDefaultFrameLoadDelegate webView:didFinishDocumentLoadForFrame:]): + empty default implementation of new delegate method + +2007-01-19 Anders Carlsson + + Reviewed by John Sullivan. + + http://bugs.webkit.org/show_bug.cgi?id=12308 + REGRESSION(r18910): Crash in WebBaseNetscapePluginStream cancelLoadAndDestroyStreamWithError + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]): + Move code from initWithFrame in here. + +2007-01-19 Anders Carlsson + + Yet another build fix. + + * WebCoreSupport/WebChromeClient.h: + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::setStatusbarText): + +2007-01-18 Anders Carlsson + + Reviewed by Adam. + + Move functions from the bridge to the chrome client. + + * WebCoreSupport/WebChromeClient.h: + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::runJavaScriptAlert): + (WebChromeClient::runJavaScriptConfirm): + (WebChromeClient::runJavaScriptPrompt): + (WebChromeClient::setStatusBarText): + * WebCoreSupport/WebFrameBridge.mm: + +2007-01-18 Adam Roben + + Reviewed by Beth. + + Fix REGRESSION: With text selected that is + not a link, the "Remove Link" contextual menu item remains active + + * WebView/WebHTMLView.mm: + (-[WebHTMLView menuForEvent:]): Leave autoenabling of menu items on so + that clients can implement validateMenuItem:. + +2007-01-18 Brady Eidson + + Reviewed by Adele + + - + Null deref in WebFrameLoaderClient::restoreScrollPositionAndViewState() + after regaining network connection + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::restoreScrollPositionAndViewState): Bail early with a null currentItem, preventing + a crash in release builds. Leave the ASSERT to help find other cases where this might happen in debug builds. + +2007-01-18 Kevin Decker + + Reviewed by John. + + WebKit should set the CG clip path for plug-ins that draw using CoreGraphics + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView drawRect:]): Set the CG clip path to the plug-in dirty rect. This allows plug-ins to obtain their + dirty rect using functions like CGContextGetClipBoundingBox(). + +2007-01-17 Alice Liu + + Reviewed by Harrison. + + Fix for REGRESSION: Extra line break is pasted with content into message body after choosing File - Paste + + Migration of some editing code from WebHTMView to WebCore::Editor + resulted in not calling pasteboardTypesForSelection, which Mail was + overriding for the special purpose of adding a type to the + pasteboard after WebKit did. This patch adds 2 separate code paths + for Tiger and Leopard. On Tiger we give in and call the WebView's + pasteboardTypesForSelection. On Leopard we call a delegate after + the pasteboard types are set. + + * DefaultDelegates/WebDefaultEditingDelegate.m: + (-[WebDefaultEditingDelegate webView:didSetSelectionTypesForPasteboard:]): + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::didSetSelectionTypesForPasteboard): + (WebEditorClient::pasteboardTypesForSelection): + * WebView/WebEditingDelegate.h: + +2007-01-17 John Sullivan + + Reviewed by Darin + + - WebKit part of fix for REGRESSION: Mail hangs during + Replace All if the replacement string contains the search string + + * Misc/WebKitVersionChecks.h: + Added extern "C" so this can be used from .mm files. I don't need this change anymore for + this fix, but it's still worth fixing now so it doesn't bite anyone later. + + * WebView/WebDocumentPrivate.h: + Invented new private protocol WebDocumentIncrementalSearching, that has one method. The one + method is just like the one WebDocumentSearching method, but with an additional parameter. + We hope to eliminate this dependence on protocols someday, but adding another one as SPI + seems like it won't make anything worse. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView searchFor:direction:caseSensitive:wrap:]): + now calls through to new method that has one additional parameter, passing NO to match old behavior + (-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]): + pass new parameter to bridge + + * WebView/WebPDFView.h: + Declare conformance to WebDocumentIncrementalSearching protocol + + * WebView/WebPDFView.mm: + (-[WebPDFView searchFor:direction:caseSensitive:wrap:]): + now calls through to new method that has one additional parameter, passing NO to match old behavior + (-[WebPDFView searchFor:direction:caseSensitive:wrap:startInSelection:]): + new method, former guts of searchFor:direction:caseSensitive:wrap: but now handles startInSelection + parameter + + * WebView/WebViewPrivate.h: + Declare new searchFor:direction:caseSensitive:wrap:startInSelection: method, just like existing + method but with one additional parameter + + * WebView/WebView.mm: + (-[WebView searchFor:direction:caseSensitive:wrap:]): + now calls through to new method that has one additional parameter, passing NO to match old behavior + (-[WebView searchFor:direction:caseSensitive:wrap:startInSelection:]): + new method, former guts of searchFor:direction:caseSensitive:wrap: but now handles startInSelection + parameter + +2007-01-17 Brady Eidson + + Reviewed by Deth Bakin and Brian Dash + + Drop Panther Support (?!?) and change the comment explaining some SPI forward decls + + * Misc/WebDownload.m: + +2007-01-17 Darin Adler + + Reviewed by Maciej. + + - fix http://bugs.webkit.org/show_bug.cgi?id=12278 + REGRESSION(r13070): Dragged image size includes padding (12278) + + * Misc/WebElementDictionary.mm: (-[WebElementDictionary _imageRect]): + Call HitTestResult::imageRect, not HitTestResult::boundingBox. + +2007-01-17 Anders Carlsson + + Reviewed by John Sullivan. + + Move all code in WebNetscapePluginEmbeddedView down to WebBaseNetscapePluginView. + + * Plugins/WebBaseNetscapePluginView.h: + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]): + (-[WebBaseNetscapePluginView didStart]): + (-[WebBaseNetscapePluginView dataSource]): + (-[WebBaseNetscapePluginView dealloc]): + (-[WebBaseNetscapePluginView pluginView:receivedResponse:]): + (-[WebBaseNetscapePluginView pluginView:receivedData:]): + (-[WebBaseNetscapePluginView pluginView:receivedError:]): + (-[WebBaseNetscapePluginView pluginViewFinishedLoading:]): + (-[WebBaseNetscapePluginView _redeliverStream]): + * Plugins/WebNetscapePluginEmbeddedView.h: + * Plugins/WebNetscapePluginEmbeddedView.mm: + +2007-01-17 Maciej Stachowiak + + Reviewed by Eric. + + Seed: Repro Safari crash in -[WebHTMLRepresentation receivedData:withDataSource:] (music.aol.com) + + * WebView/WebDataSource.mm: + (-[WebDataSource _receivedData:]): Protect self against destruction partway through this method. + +2007-01-16 Alice Liu + + Reviewed by harrison. + + Fixed WebKit needs extensible cut/copy to allow additional types to be written to pasteboard + + * DefaultDelegates/WebDefaultEditingDelegate.m: + (-[WebDefaultEditingDelegate webView:didWriteSelectionToPasteboard:]): + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::didWriteSelectionToPasteboard): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebEditingDelegate.h: + +2007-01-15 Justin Garcia + + Reviewed by mjs + + + Gmail Editor: window.focus() called on keyDown (9640) + + The window's keydown event handler was being called + instead of the editable subframe's if there was a key binding + for the key event. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView performKeyEquivalent:]): Don't send the event + to WebCore unless this WebHTMLView is the firstResponder. + +2007-01-15 Anders Carlsson + + Reviewed by Darin. + + Update to match WebCore. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::willChangeEstimatedProgress): + (WebFrameLoaderClient::didChangeEstimatedProgress): + (WebFrameLoaderClient::postProgressStartedNotification): + (WebFrameLoaderClient::postProgressEstimateChangedNotification): + (WebFrameLoaderClient::postProgressFinishedNotification): + Post the correct notifications. + + * WebView/WebView.mm: + (-[WebViewPrivate init]): + (-[WebViewPrivate dealloc]): + Get rid of all progress tracking code. + + (-[WebView estimatedProgress]): + Call ProgressTracker::estimatedProgress() + +2007-01-15 Adam Roben + + Reviewed by Darin. + + Fix: http://bugs.webkit.org/show_bug.cgi?id=12134 + REGRESSION: Assertion failure and crash when right clicking selection + in forms + + * WebCoreSupport/WebContextMenuClient.mm: + (fixMenusFromOldApps): Static helper to fix up menus from applications + compiled against Tiger WebKit. + (WebContextMenuClient::getCustomMenuFromDefaultItems): Call helper to + fix menus. + * WebView/WebUIDelegatePrivate.h: Fixed typo. + +2007-01-14 David Kilzer + + Reviewed by Darin. + + - fix http://bugs.webkit.org/show_bug.cgi?id=12251 + REGRESSION (r18822-r18823): Assertion failure opening document with non-existent resources + (dom/xhtml/level2/html/HTMLIFrameElement11.xhtml) + + * WebView/WebView.mm: + (-[WebView _objectForIdentifier:]): Removed assertion. + (-[WebView _removeObjectForIdentifier:]): Removed assertion. + +2007-01-12 Anders Carlsson + + Reviewed by Darin. + + Add a HashMap between unsigned longs and Objective-C objects and use it for + the resource load delegate. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::assignIdentifierToInitialRequest): + (WebFrameLoaderClient::dispatchIdentifierForInitialRequest): + (WebFrameLoaderClient::dispatchWillSendRequest): + (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): + (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge): + (WebFrameLoaderClient::dispatchDidReceiveResponse): + (WebFrameLoaderClient::dispatchDidReceiveContentLength): + (WebFrameLoaderClient::dispatchDidFinishLoading): + (WebFrameLoaderClient::dispatchDidFailLoading): + (WebFrameLoaderClient::incrementProgress): + (WebFrameLoaderClient::completeProgress): + * WebView/WebView.mm: + (-[WebViewPrivate init]): + (-[WebViewPrivate dealloc]): + (-[WebView _addObject:forIdentifier:]): + (-[WebView _objectForIdentifier:]): + (-[WebView _removeObjectForIdentifier:]): + * WebView/WebViewInternal.h: + +2007-01-11 Brady Eidson + + Reviewed by Anders + + Rewrites HTTP Authentication setting up a more platform-independent structure + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): + (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge): + * WebKit.xcodeproj/project.pbxproj: + +2007-01-11 Darin Adler + + Reviewed by Mitz. + + - fix http://bugs.webkit.org/show_bug.cgi?id=12180 + REGRESSION: Double-clicking on JS exception in JS log crashes in -[SharedBufferData initWithSharedBuffer:] + + * WebView/WebDataSource.mm: (-[WebDataSource data]): Added null check. + +2007-01-11 Darin Adler + + Reviewed by Hyatt. + + - moved code from a couple WebCore bridging classes here instead + + * Misc/WebNSPasteboardExtras.mm: + (-[NSPasteboard _web_writeImage:element:URL:title:archive:types:]): + Use MimeTypeRegistry instead of WebMimeTypeRegistryBridge. + + * WebView/WebHTMLRepresentation.mm: + (stringArray): Added. Helper to convert a HashSet to an NSArray. + (concatenateArrays): Added. Helper to concatenate two NSArray objects. + (+[WebHTMLRepresentation supportedMIMETypes]): Use MimeTypeRegistry instead of + WebMimeTypeRegistryBridge. Also fix a potential GC problem by using a RetainPtr + instead of a [retain] on a global variable. + (+[WebHTMLRepresentation supportedNonImageMIMETypes]): Ditto. + (+[WebHTMLRepresentation supportedImageMIMETypes]): Ditto. + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _imageExistsAtPaths:]): Use MimeTypeRegistry instead of + WebMimeTypeRegistryBridge. + (-[WebHTMLView _documentFragmentWithPaths:]): Ditto. + + * WebView/WebView.mm: (+[WebView _decodeData:]): Moved code here from + the old WebCoreEncodings class. + + * WebKit.xcodeproj/project.pbxproj: Let Xcode have its way with this file. + Moved WebRenderNode into the appropriate group. + +2007-01-10 Mitz Pettel + + Reviewed by Darin. + + - fix http://bugs.webkit.org/show_bug.cgi?id=11775 + 'Show URLs in Tool Tips' preference is ignored + + * WebView/WebHTMLView.mm: + (-[WebHTMLView _resetCachedWebPreferences:]): + (-[WebHTMLView setDataSource:]): Added a call to _resetCachedWebPreferences:. + Added an assertion that the view is not closed, instead of reopening it. + Reopening should not occur, now that + is fixed. + +2007-01-10 Beth Dakin + + Reviewed by John. + + Fix for REGRESSION: Search in Google now + operates on the current WebView instead of invoking Safari's + service + + * WebCoreSupport/WebContextMenuClient.h: + * WebCoreSupport/WebContextMenuClient.mm: + (WebContextMenuClient::searchWithGoogle): Call into WebView to + search in Google. + * WebView/WebViewInternal.h: Make _searchWithGoogleFromMenu + available. + +2007-01-09 Timothy Hatcher + + Reviewed by Darin. + + Rename the now ObjC++ files to be .mm and remove the explicit file types. + + * DOM/WebDOMOperations.m: Removed. + * DefaultDelegates/WebDefaultContextMenuDelegate.m: Removed. + * English.lproj/StringsNotToBeLocalized.txt: + * Misc/WebCoreStatistics.m: Removed. + * Misc/WebElementDictionary.m: Removed. + * Misc/WebIconDatabase.m: Removed. + * Misc/WebNSAttributedStringExtras.m: Removed. + * Misc/WebNSPasteboardExtras.m: Removed. + * Plugins/WebNetscapePluginEmbeddedView.m: Removed. + * Plugins/WebNullPluginView.m: Removed. + * Plugins/WebPluginContainerCheck.m: Removed. + * WebCoreSupport/WebViewFactory.m: Removed. + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebArchiver.m: Removed. + * WebView/WebHTMLRepresentation.m: Removed. + * WebView/WebHTMLView.m: Removed. + * WebView/WebRenderNode.m: Removed. + * WebView/WebResource.m: Removed. + * WebView/WebScriptDebugDelegate.m: Removed. + +2007-01-09 Maciej Stachowiak + + Reviewed by Darin. + + - remove window display throttling code; no longer used + + * Misc/WebNSWindowExtras.h: + * Misc/WebNSWindowExtras.m: + * WebView/WebFrameView.mm: + (-[WebFrameView initWithFrame:]): + * WebView/WebPreferenceKeysPrivate.h: + +2007-01-08 Anders Carlsson + + Reviewed by Brady. + + Remove bridge functions that are implemented directly in FrameLoader now. + + * WebCoreSupport/WebFrameBridge.mm: + +2007-01-08 Sam Weinig + + Reviewed by Mark. + + Adds default value for outline-color and fixes default + values of the recently fixed *-color properties. + + * WebInspector/webInspector/inspector.js: + +2007-01-08 Beth Dakin + + Reviewed by Adam. + + Fix for http://bugs.webkit.org/show_bug.cgi?id=12161 REGRESSION: + Crash when control-clicking on an image for contextual menu + + * WebView/WebHTMLView.m: + (-[WebHTMLView menuForEvent:]): We need to nil-check coreMenu since + it will be nil if the DOM popped up a menu instead. I cleaned up + the function to make all the nil checks early returns instead of + nesting all of the content. Also moved the autorelease to be with + the creation of the menu instead of at the return. + +2007-01-08 Sam Weinig + + Reviewed by Tim H. + + Adds default value for -webkit-box-shadow and fixes default + value of -webkit-column-count to be "auto". Also sorts the + list of defaults. + + * WebInspector/webInspector/inspector.js: + +2007-01-08 Andrew Wellington + + Reviewed by Mark. + + * WebInspector/webInspector/inspector.js: Hide default values of + -webkit-column styles in WebInspector. + +2007-01-05 Darin Adler + + Reviewed by Hyatt. + + * Misc/WebNSAttributedStringExtras.m: + (+[NSAttributedString _web_attributedStringFromRange:]): + Updated to use new list marker text API that is String rather than + DeprecatedString. Also removed code to do text form of non-text list + markers since the list marker class now deals with that. + +2007-01-05 Anders Carlsson + + Reviewed by Darin. + + Fix build. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchCreatePage): + +2007-01-05 Anders Carlsson + + Reviewed by Maciej. + + The data returned is now a SharedBuffer so wrap it in an NSData object. + + * WebView/WebDataSource.mm: + (-[WebDataSource data]): + +2007-01-04 Adam Roben + + Reviewed by Geoff, cheered by others. + + Dead code elimination. + + * WebView/WebHTMLView.m: + +2007-01-04 Adam Roben + + Boo on me for undoing Beth's hard work. + + * WebView/WebHTMLView.m: + (-[WebHTMLView menuForEvent:]): Undo a mistaken roll out of r18597. + +2007-01-04 David Kilzer + + Reviewed by Brady. + + - fix http://bugs.webkit.org/show_bug.cgi?id=12111 + Uninitialized variable in -[WebDefaultPolicyDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:] + + * DefaultDelegates/WebDefaultPolicyDelegate.m: Initialize isDirectory. + +2007-01-04 Adam Roben + + Reviewed by Geoff. + + Remove WebKit/AppKit from handling tabbing between subframes. + + * WebCoreSupport/WebChromeClient.h: Added new ChromeClient methods for + moving focus out of the WebView. + * WebCoreSupport/WebChromeClient.mm: Ditto. + (WebChromeClient::canTakeFocus): + (WebChromeClient::takeFocus): + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge webView]): Added null-check of m_frame. + * WebView/WebHTMLView.m: Removed -[WebHTMLView nextValidKeyView]. + (-[WebHTMLView _updateActiveState]): Changed to focus the frame if + WebCore believes it to be the focused frame. + (-[WebHTMLView becomeFirstResponder]): Rewrote to call into + FocusController to place focus correctly within the WebView. + +2007-01-04 Anders Carlsson + + Reviewed by Brady. + + FrameLoaderClient changed yet again. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache): + (WebFrameLoaderClient::dispatchWillSendRequest): + +2007-01-04 Anders Carlsson + + Reviewed by Adam. + + FrameLoaderClient changed again. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::download): + (WebFrameLoaderClient::willUseArchive): + +2007-01-04 Beth Dakin + + Reviewed by Adam. + + No need to hit test twice. + + * WebView/WebHTMLView.m: + (-[WebHTMLView menuForEvent:]): + +2007-01-04 Beth Dakin + + Reviewed by Adam. + + Turn on WebCore context menus. Delete a bunch of WebKit context + menu code that is no longer needed. + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: Removed a lot + of code from this class. This class only still needs to exist for + PDF context menus, so we only need to deal with the menu items that + might possibly be added to a PDF context menu. + (-[WebDefaultUIDelegate + menuItemWithTag:target:representedObject:]): Same. + (-[WebDefaultUIDelegate + webView:contextMenuItemsForElement:defaultMenuItems:]): Same. + * WebCoreSupport/WebContextMenuClient.h: Name change and have the + former getCustomMenuFromDefaultItems function return the + PlatformMenuDescription since it feels funny to have the client set + the new platform description. + * WebCoreSupport/WebContextMenuClient.mm: Same. + (WebContextMenuClient::getCustomMenuFromDefaultItems): Same. Also + move in some code that used to be in _menuForElement. + * WebView/WebHTMLView.m: Deleted a bunch of un-used functions + (-[WebHTMLView menuForEvent:]): Turn on menus, and append the + Inspect Element item. + * WebView/WebHTMLViewPrivate.h: Deleted a bunch of un-used + functions. + * WebView/WebView.mm: + (-[WebView _menuForElement:defaultItems:]): Removed a lot of code + from _menuForElement that now makes more sense elsewhere. Only PDF + context menus use this function now. Hopefully we can just get rid + of it soon, too. + +2007-01-04 Anders Carlsson + + Reviewed by Brady. + + Update for WebCore changes. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::download): + (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache): + (WebFrameLoaderClient::dispatchWillSendRequest): + (WebFrameLoaderClient::dispatchDidReceiveResponse): + (WebFrameLoaderClient::incrementProgress): + +2007-01-04 Don Gibson + + Reviewed by Alexey. + + http://bugs.webkit.org/show_bug.cgi?id=11900: + Windows build bustage + + * COM/ChromeClientWin.cpp: + (ChromeClientWin::addMessageToConsole): + (ChromeClientWin::runBeforeUnloadConfirmPanel): + * COM/ChromeClientWin.h: + * COM/ContextMenuClientWin.cpp: + (ContextMenuClientWin::contextMenuItemSelected): + * COM/ContextMenuClientWin.h: + * COM/WebFrameLoaderClient.cpp: + (WebFrameLoaderClient::setDocumentViewFromPageCache): + (WebFrameLoaderClient::forceLayout): + (WebFrameLoaderClient::forceLayoutForNonHTML): + (WebFrameLoaderClient::updateGlobalHistoryForStandardLoad): + (WebFrameLoaderClient::updateGlobalHistoryForReload): + (WebFrameLoaderClient::shouldGoToHistoryItem): + (WebFrameLoaderClient::saveScrollPositionAndViewStateToItem): + (WebFrameLoaderClient::restoreScrollPositionAndViewState): + (WebFrameLoaderClient::provisionalLoadStarted): + (WebFrameLoaderClient::saveDocumentViewToPageCache): + (WebFrameLoaderClient::canCachePage): + * COM/WebFrameLoaderClient.h: + * WebKit.vcproj/WebKit.vcproj: + +2007-01-03 John Sullivan + + * WebView/WebPDFView.mm: + (-[WebPDFView _openWithFinder:]): + Tiger build fix: use [NSNumber initWithInt:] rather than the new [NSNumber initWithInteger:] + +2007-01-03 John Sullivan + + Reviewed by Kevin Decker + + - fixed WebKit's PDFView's "Open in Preview" puts the + PDF in /tmp, both group and world-readable + + * WebView/WebPDFView.mm: + (-[WebPDFView _openWithFinder:]): + Make the file only readable by the current user + +2007-01-03 Beth Dakin + + Reviewed by John. + + Make localized strings for all of the context menu item titles that + are accessible to WebCore. + + * English.lproj/Localizable.strings: + * WebCoreSupport/WebViewFactory.m: + (-[WebViewFactory contextMenuItemTagOpenLinkInNewWindow]): + (-[WebViewFactory contextMenuItemTagDownloadLinkToDisk]): + (-[WebViewFactory contextMenuItemTagCopyLinkToClipboard]): + (-[WebViewFactory contextMenuItemTagOpenImageInNewWindow]): + (-[WebViewFactory contextMenuItemTagDownloadImageToDisk]): + (-[WebViewFactory contextMenuItemTagCopyImageToClipboard]): + (-[WebViewFactory contextMenuItemTagOpenFrameInNewWindow]): + (-[WebViewFactory contextMenuItemTagCopy]): + (-[WebViewFactory contextMenuItemTagGoBack]): + (-[WebViewFactory contextMenuItemTagGoForward]): + (-[WebViewFactory contextMenuItemTagStop]): + (-[WebViewFactory contextMenuItemTagReload]): + (-[WebViewFactory contextMenuItemTagCut]): + (-[WebViewFactory contextMenuItemTagPaste]): + (-[WebViewFactory contextMenuItemTagNoGuessesFound]): + (-[WebViewFactory contextMenuItemTagIgnoreSpelling]): + (-[WebViewFactory contextMenuItemTagLearnSpelling]): + (-[WebViewFactory contextMenuItemTagSearchInSpotlight]): + (-[WebViewFactory contextMenuItemTagSearchWeb]): + (-[WebViewFactory contextMenuItemTagLookUpInDictionary]): + (-[WebViewFactory contextMenuItemTagOpenLink]): + (-[WebViewFactory contextMenuItemTagIgnoreGrammar]): + (-[WebViewFactory contextMenuItemTagSpellingMenu]): + (-[WebViewFactory contextMenuItemTagShowSpellingPanel:]): + (-[WebViewFactory contextMenuItemTagCheckSpelling]): + (-[WebViewFactory contextMenuItemTagCheckSpellingWhileTyping]): + (-[WebViewFactory contextMenuItemTagCheckGrammarWithSpelling]): + (-[WebViewFactory contextMenuItemTagFontMenu]): + (-[WebViewFactory contextMenuItemTagShowFonts]): + (-[WebViewFactory contextMenuItemTagBold]): + (-[WebViewFactory contextMenuItemTagItalic]): + (-[WebViewFactory contextMenuItemTagUnderline]): + (-[WebViewFactory contextMenuItemTagOutline]): + (-[WebViewFactory contextMenuItemTagStyles]): + (-[WebViewFactory contextMenuItemTagShowColors]): + (-[WebViewFactory contextMenuItemTagSpeechMenu]): + (-[WebViewFactory contextMenuItemTagStartSpeaking]): + (-[WebViewFactory contextMenuItemTagStopSpeaking]): + (-[WebViewFactory contextMenuItemTagWritingDirectionMenu]): + (-[WebViewFactory contextMenuItemTagDefaultDirection]): + (-[WebViewFactory contextMenuItemTagLeftToRight]): + (-[WebViewFactory contextMenuItemTagRightToLeft]): + +2007-01-03 Brady Eidson + + Reviewed by John Sullivan + + In the Bookmarks View/History View, favicon may be the incorrect size + + * History/WebHistoryItem.mm: + (-[WebHistoryItem icon]): Call to the WebIconDatabase until a WebCore issue is resolved + +2007-01-03 Adele Peterson + + Reviewed by Darin. + + - Fix for Safari allows division slash character in URLs, which looks like slash character (not fixed by IDNScriptWhiteList.txt) + + * Misc/WebNSURLExtras.m: (allCharactersInIDNScriptWhiteList): Always disallow the division slash character. + +2007-01-02 Brady Eidson + + Controversially reviewed by Tim H. and Maciej + + Fixes http://bugs.webkit.org/show_bug.cgi?id=12086, http://bugs.webkit.org/show_bug.cgi?id=12088, + possibly http://bugs.webkit.org/show_bug.cgi?id=12087, and probably a slew of others + + WebHistoryItems returned from the WebBackForwardList accessors were being release/retained out-of-order + by the Safari app. This bug never surfaced before because the WebBackForwardList had a retain on the + item, preventing deallocation. Since the items are now just temporary wrappers, the list + is no longer actually retaining them. + + This solution is to simulate the ownership with a [[id retain] autorelease] - gross, but maybe the + only solution for now... =/ + + We can possibly consider reverting this fix at a later date - that task is marked by + + + * History/WebBackForwardList.mm: + (-[WebBackForwardList backItem]): + (-[WebBackForwardList currentItem]): + (-[WebBackForwardList forwardItem]): + (-[WebBackForwardList itemAtIndex:]): + +2007-01-02 Beth Dakin + + Reviewed by Geoff. + + Remove un-used function. + + * WebCoreSupport/WebContextMenuClient.h: + * WebCoreSupport/WebContextMenuClient.mm: + +2007-01-02 Brady Eidson + + Reviewed extensively and repeatedly by Darin + + - WebCore Back/Forward Cache + Most things not specifically commented on in the ChangeLog can be summed up as + "Do things exactly the same way as we used to, but just stick in WebCore-land as much as possible" + + * History/WebBackForwardList.mm: + (kitPrivate): Convenience functions to help with subbing "WebBackForwardListPrivate" for WebCore::BackForwardList + (core): + (backForwardListWrappers): A HashMap pattern used to map WebCore objects to their WebKit counterpart + (kit): + (+[WebBackForwardList setDefaultPageCacheSizeIfNecessary]): + (-[WebBackForwardList initWithWebCoreBackForwardList:]): + (-[WebBackForwardList init]): + (-[WebBackForwardList dealloc]): + (-[WebBackForwardList finalize]): + (-[WebBackForwardList _close]): + (-[WebBackForwardList addItem:]): + (-[WebBackForwardList removeItem:]): + (-[WebBackForwardList containsItem:]): + (-[WebBackForwardList goBack]): + (-[WebBackForwardList goForward]): + (-[WebBackForwardList goToItem:]): + (-[WebBackForwardList backItem]): + (-[WebBackForwardList currentItem]): + (-[WebBackForwardList forwardItem]): + (vectorToNSArray): + (-[WebBackForwardList backListWithLimit:]): + (-[WebBackForwardList forwardListWithLimit:]): + (-[WebBackForwardList capacity]): + (-[WebBackForwardList setCapacity:]): + (-[WebBackForwardList description]): + (-[WebBackForwardList _clearPageCache]): + (-[WebBackForwardList setPageCacheSize:]): + (-[WebBackForwardList pageCacheSize]): + (-[WebBackForwardList _usesPageCache]): + (-[WebBackForwardList backListCount]): + (-[WebBackForwardList forwardListCount]): + (-[WebBackForwardList itemAtIndex:]): + * History/WebBackForwardListInternal.h: Added. + + * History/WebHistory.m: Removed. + * History/WebHistory.mm: Added - Needed to be .mm to accept C++ header style + (-[_WebCoreHistoryProvider containsItemForURLLatin1:length:]): + (-[_WebCoreHistoryProvider containsItemForURLUnicode:length:]): + + * History/WebHistoryItem.mm: + (kitPrivate): Same pattern as WebBackForwardList + (core): + (historyItemWrappers): + (WKNotifyHistoryItemChanged): + (-[WebHistoryItem init]): + (-[WebHistoryItem initWithURLString:title:lastVisitedTimeInterval:]): + (-[WebHistoryItem dealloc]): + (-[WebHistoryItem finalize]): + (-[WebHistoryItem copyWithZone:]): + (-[WebHistoryItem URLString]): + (-[WebHistoryItem originalURLString]): + (-[WebHistoryItem title]): + (-[WebHistoryItem setAlternateTitle:]): + (-[WebHistoryItem alternateTitle]): + (-[WebHistoryItem icon]): + (-[WebHistoryItem lastVisitedTimeInterval]): + (-[WebHistoryItem hash]): + (-[WebHistoryItem isEqual:]): + (-[WebHistoryItem description]): + (kit): + (+[WebHistoryItem entryWithURL:]): + (+[WebHistoryItem initWindowWatcherIfNecessary]): + (-[WebHistoryItem initWithURL:target:parent:title:]): + (-[WebHistoryItem initWithWebCoreHistoryItem:]): + (-[WebHistoryItem setTitle:]): + (-[WebHistoryItem setVisitCount:]): + (-[WebHistoryItem setViewState:]): + (-[WebHistoryItem _mergeAutoCompleteHints:]): + (-[WebHistoryItem initFromDictionaryRepresentation:]): + (-[WebHistoryItem scrollPoint]): + (-[WebHistoryItem _transientPropertyForKey:]): + (-[WebHistoryItem _setTransientProperty:forKey:]): + (-[WebHistoryItem dictionaryRepresentation]): + (-[WebHistoryItem target]): + (-[WebHistoryItem isTargetItem]): + (-[WebHistoryItem visitCount]): + (-[WebHistoryItem RSSFeedReferrer]): + (-[WebHistoryItem setRSSFeedReferrer:]): + (-[WebHistoryItem children]): + (-[WebHistoryItem setAlwaysAttemptToUsePageCache:]): + (-[WebHistoryItem URL]): + (-[WebHistoryItem _setLastVisitedTimeInterval:]): + (-[WebHistoryItem _lastVisitedDate]): + (-[WebHistoryItem targetItem]): + (+[WebHistoryItem _releaseAllPendingPageCaches]): + (-[WebWindowWatcher windowWillClose:]): + * History/WebHistoryItemInternal.h: + * History/WebHistoryItemPrivate.h: + + * WebCoreSupport/WebFrameBridge.mm: + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::setDocumentViewFromPageCache): + (WebFrameLoaderClient::detachedFromParent1): + (WebFrameLoaderClient::loadedFromPageCache): + (WebFrameLoaderClient::updateGlobalHistoryForStandardLoad): + (WebFrameLoaderClient::updateGlobalHistoryForReload): + (WebFrameLoaderClient::shouldGoToHistoryItem): + (WebFrameLoaderClient::frameLoadCompleted): + (WebFrameLoaderClient::saveScrollPositionAndViewStateToItem): + (WebFrameLoaderClient::restoreScrollPositionAndViewState): + (WebFrameLoaderClient::provisionalLoadStarted): + (WebFrameLoaderClient::setTitle): + (WebFrameLoaderClient::saveDocumentViewToPageCache): + (WebFrameLoaderClient::canCachePage): + + * WebCoreSupport/WebSystemInterface.m: + (InitWebCoreSystemInterface): + + * WebKit.xcodeproj/project.pbxproj: + + * WebView/WebDataSource.mm: + * WebView/WebDataSourceInternal.h: + + * WebView/WebFrame.mm: + (-[WebFramePrivate dealloc]): + (-[WebFrame _canCachePage]): + (-[WebFrame _loadURL:referrer:intoChild:]): + * WebView/WebFrameInternal.h: + + * WebView/WebFrameView.mm: + (-[WebFrameView initWithFrame:]): + (-[WebFrameView keyDown:]): + + * WebView/WebHTMLView.m: + (-[WebHTMLView closeIfNotCurrentView]): Added for a dirty hack in WebCore that is marked with a FIXME Radar + * WebView/WebHTMLViewInternal.h: + + * WebView/WebView.mm: + (-[WebViewPrivate init]): + (-[WebViewPrivate dealloc]): + (-[WebView _close]): + (-[WebView _loadBackForwardListFromOtherView:]): + (-[WebView _commonInitializationWithFrameName:groupName:]): + (-[WebView initWithCoder:]): + (-[WebView backForwardList]): + (-[WebView goBack]): + (-[WebView goForward]): + (-[WebView goToBackForwardItem:]): + (-[WebView canGoBack]): + (-[WebView canGoForward]): + +2007-01-02 John Sullivan + + Reviewed by Kevin Decker + + - fixed Cannot open PDF in Preview if you attempted to + open it in Preview while PDF was loading + + * WebView/WebPDFView.mm: + (-[WebPDFView menuForEvent:]): + added comment + (-[WebPDFView validateUserInterfaceItem:]): + disable this menu item when there's no document yet + (-[WebPDFView _openWithFinder:]): + If this is invoked when there is no document yet (e.g. via the PDFKit delegate method), + just beep and return. I should make a nice error message here, but I'll do that separately. + +2007-01-03 Nikolas Zimmermann + + Reviewed by Timothy. + + Fix inspection of RenderSVGInlineText objects (#text nodes in SVG documents). + + * WebInspector/WebInspector.m: + (-[WebInspector _highlightNode:]): + +2007-01-02 Beth Dakin + + Reviewed by Darin. + + Fix bug with WebCore context menu item "Copy Image." + + * WebCoreSupport/WebContextMenuClient.mm: + (WebContextMenuClient::copyImageToClipboard): We must call + declareTypes on the pasteboard. + +2006-12-27 Mitz Pettel + + Reviewed by Geoff. + + - fix http://bugs.webkit.org/show_bug.cgi?id=9403 + Red outline from Web Inspector appears above all other OS X windows + + Made the window containing the highlight a child window of the window + containing the view. + + * WebInspector/WebNodeHighlight.m: + (-[WebNodeHighlight initWithBounds:andRects:forView:]): + (-[WebNodeHighlight dealloc]): + (-[WebNodeHighlight expire]): + +2006-12-27 Matt Lilek + + Reviewed by Tim H. + + Bug 11993: REGRESSION(r18320): Web Inspector scroll bars not drawn + http://bugs.webkit.org/show_bug.cgi?id=11993 + + AppleVerticalScrollbar tries to set a NaN value as the scroll height which + causes DOM Exceptions after r18320. This overrides the _setObjectLength + method and checks for NaN until a system update can fix this. See rdar://4901491 + + * WebInspector/webInspector/inspector.html: + * WebInspector/webInspector/inspector.js: + +2006-12-27 Geoffrey Garen + + Reviewed by Oliver Hunt. + + Fixed Crash occurs at WebCore::Frame::page() + after closing window containing flash content + + No testcase because we can't open and close windows in DRT. + + I can't reproduce this crash, but from the backtrace it's clear that it + occured because of a NULL frame object. Since it's valid for a frame to + be NULL, I've added NULL checks. + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView sendEvent:]): + (-[WebBaseNetscapePluginView requestWithURLCString:]): + (-[WebBaseNetscapePluginView getVariable:value:]): + +2006-12-27 Geoffrey Garen + + Reviewed by Darin Adler. + + Updated fix based on Darin's comments. + + Instead of searching the frame tree to retrieve the new frame, put it in + a RefPtr, and then explicitly check for its removal. This option is slightly + more efficient, and it avoids problems that can occur due to frame name collision. + + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]): + +2006-12-26 Geoffrey Garen + + Reviewed by Eric Seidel. + + Fixed Safari crash on quit in _NPN_ReleaseObject + from KJS::Bindings::CInstance::~CInstance + + The essence of this change is that WebKit shouldn't meddle in plug-in + lifetime, since WebCore already manages it. The rest is details. + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView removeTrackingRect]): Autorelease our window + instead of releasing it, since we might hold the last reference to our window, + and releasing it immediately would crash AppKit. + (-[WebBaseNetscapePluginView resetTrackingRect]): + + * Plugins/WebNetscapePluginEmbeddedView.h: + * Plugins/WebNetscapePluginEmbeddedView.m: + (-[WebNetscapePluginEmbeddedView dataSource]): Use our DOMElement to access + our WebFrame, since we don't keep around a direct pointer to our WebFrame + anymore. + + * Plugins/WebNullPluginView.h: + * Plugins/WebNullPluginView.m: + (-[WebNullPluginView initWithFrame:error:DOMElement:]): + (-[WebNullPluginView dealloc]): + (-[WebNullPluginView viewDidMoveToWindow]): Use our DOMElement to access + our WebFrame, as above. + + * WebCoreSupport/WebFrameBridge.mm: Don't call _addPlugInView because it + doesn't exist anymore. Do pass a DOMElement to WebNullPluginView's initializer, + so it can access its frame like WebNetscapePluginEmbeddedView does. + (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]): + (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]): + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: Removed didCloseDocument. It had + two purposes -- one unnecessary, one harmful: + (1) NULL out plug-ins' weak references to their frames. Unnecessary. Having + plug-ins access their frames through their DOM elements solves this problem. + (2) Unload plug-ins. Harmful. If a plug-in unloads before WebCore is done + with it, WebCore will access unmapped memory. Also unnecessary. WebCore + Widgets take care of calling -removeFromSuperview on their NSViews, which + is sufficient for stopping plug-ins. + + * WebKit.xcodeproj/project.pbxproj: Made WebNullPluginView.m ObjC++. + + * WebView/WebFrame.mm: Removed _addPlugInView, since it was only used to + call -setWebFrame, which is gone. + (-[WebFramePrivate dealloc]): + * WebView/WebFrameInternal.h: Removed plugInViews, since it was only used + by _addPlugInView, which is gone. + +2006-12-26 Geoffrey Garen + + Reviewed by Eric Seidel. + + Some cleanup in preparation for fixing Safari + crash on quit in _NPN_ReleaseObject from KJS::Bindings::CInstance::~CInstance + + Renamed "installedPlugins" to "sharedDatabase." This better follows + the Cocoa naming scheme, and calls out the key attribute that produced this + crash -- namely, that the database is shared throughout the process. + + -installedPlugins is actually a part of SPI, but a global search showed + that it had no users. + + * Plugins/WebPluginDatabase.h: + * Plugins/WebPluginDatabase.m: + (+[WebPluginDatabase sharedDatabase]): + (-[WebPluginDatabase refresh]): + (-[WebPluginDatabase _plugInPaths]): + (-[WebPluginDatabase _removePlugin:]): + * WebCoreSupport/WebViewFactory.m: + (-[WebViewFactory pluginsInfo]): + (-[WebViewFactory refreshPlugins:]): + (-[WebViewFactory pluginSupportsMIMEType:]): + * WebView/WebView.mm: + (+[WebView _supportedMIMETypes]): + (+[WebView _viewClass:andRepresentationClass:forMIMEType:]): + (-[WebView _close]): + (-[WebView _pluginForMIMEType:]): + (-[WebView _pluginForExtension:]): + (-[WebView _isMIMETypeRegisteredAsPlugin:]): + +2006-12-25 Geoffrey Garen + + Reviewed by Adam Roben. + + Fixed REGRESSION: crash in getInstanceForView() + when quitting from kcbs.com + + No testcase because we can't open and close windows in DRT. + + The crash was caused by deallocating plug-ins that were later referenced + in the unload event handler. + + * Plugins/WebBaseNetscapePluginView.mm: Don't call stop on ourselves because + we may destroy our plugin before the unload handler fires. Also, we don't + need to, since didCloseDocument will do it for us. + + (-[WebBaseNetscapePluginView addWindowObservers]): We don't need to listen + for windowWillClose anymore, since we don't want to call -stop on ourselves. + (-[WebBaseNetscapePluginView removeWindowObservers]): ditto. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::didCloseDocument): Renamed from "willCloseDocument." + +2006-12-25 Geoffrey Garen + + More "plugin" => "pluginPackage" renaming that I forgot to check in. + + * Plugins/WebBaseNetscapePluginView.h: + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView setPluginPackage:]): + * Plugins/WebNetscapePluginEmbeddedView.h: + * Plugins/WebNetscapePluginEmbeddedView.m: + (-[WebNetscapePluginEmbeddedView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]): + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]): + (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]): + +2006-12-25 Geoffrey Garen + + Reviewed by Eric Seidel. + + Fixed crash when opening view source window. + + * WebView/WebView.mm: + (-[WebView initWithCoder:]): Don't use the WebView until calling + _commonInitialization... + +2006-12-25 Geoffrey Garen + + Reviewed by Oliver Hunt. + + Removed WebCoreSettings, cleaned up WebCore::Settings. + + * WebView/WebFrame.mm: Added helper functions for converting between + WebKitEditableLinkBehavior and WebCore::EditableLinkBehavior. I'm not sure + that this is the best place for these functions, but it's where all the + other functions like them reside. + (core): + (kit): + * WebView/WebFrameInternal.h: + + * WebView/WebView.mm: Removed uses of WebCoreSettings. Replaced with direct + use of underlying page's settings. + +2006-12-25 Geoffrey Garen + + Reviewed by Oliver Hunt. + + Some refactoring in preparation for fixing + REGRESSION: crash in getInstanceForView() when quitting from kcbs.com + + Two renames: + - "plugin" => "pluginPackage" (since the type is WebNetscapePluginPackage *) + - "instance" and/or "pluginPointer" => plugin (since NPP is an opaque handle to a plug-in) + + Removed braces around single-line 'if' statements. + + Made plugin a pointer instead of an inline ivar. This allows us to NULL + it out once we call NPP_Destroy on it. + + Added helper functions for creating and destroying plugin. The destroy function + NULLs out plugin, which helps with debugging. + + (-[WebBaseNetscapePluginView willCallPlugInFunction]): Added an ASSERT + to catch attempts to call functions on destroyed plug-ins. + + (-[WebBaseNetscapePluginView _createPlugin]): New helper function. + (-[WebBaseNetscapePluginView _destroyPlugin]): New helper function. + +2006-12-24 David Kilzer + + Removed empty directory. + + * WebKit/Loader: Removed. + +2006-12-22 Geoffrey Garen + + Reviewed by Brady Eidson. + + Fixed Leopard9A321: Crash visiting www.audible.com + (WebCore::FrameLoader::loadSubframe) + + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]): + - The fix: + Changed to re-fetch the child frame we're trying to load before returning it, + since its onload handler may have removed it from the document. This + allows us to treat a removed frame like a frame that never loaded. + + - Plus some cleanup: + - Changed to return a WebCore::Frame* instead of a WebFrameBridge *, + to simplify some code. + - Grouped ObjC objects by usage, and moved calls to -release so that they + immediately follow the calls that retain. + +2006-12-21 John Sullivan + + Reviewed by Geoff Garen + + - improved concept and implementation of my previous checkin after discussing with Darin + + * WebView/WebViewPrivate.h: + * WebView/WebView.mm: + (-[WebView setHoverFeedbackSuspended:]): + renamed from setIgnoresMouseMovedEvents, and now tells the main WebHTMLView (if any) that this state has + changed. Telling just the main WebHTMLView is a bit of an implementation hack. Hopefully someday we can + rework the document architecture and make this kind of thing less hacky (but this is following existing + customs, so I don't feel too bad) + (-[WebView isHoverFeedbackSuspended]): + renamed from ignoresMouseMovedEvents + + * WebView/WebHTMLViewInternal.h: + declare _hoverFeedbackSuspendedChanged + + * WebView/WebHTMLView.m: + (-[WebHTMLView _updateMouseoverWithEvent:]): + test the webView's state of the hit-tested WebHTMLView rather than self + (-[WebHTMLView _hoverFeedbackSuspendedChanged]): + generate a fake mouse-moved event, which simulates the mouse moving away from + the current element or back over it + +2006-12-21 Darin Adler + + Reviewed by Oliver. + + * WebInspector/webInspector/inspector.js: Added default values for the new CSS + properties so they don't appear in the inspector when their values are + uninteresting. + +2006-12-21 John Sullivan + + Reviewed by Geoff Garen + + - added WebKit support for making a web page temporarily ignore mouse movements + + * WebView/WebViewPrivate.h: + declare ignoresMouseMovedEvents and setIgnoresMouseMovedEvents: + + * WebView/WebView.mm: + added ignoresMouseMovedEvents boolean field to _private data structure + (-[WebView setIgnoresMouseMovedEvents:]): + set new boolean field + (-[WebView ignoresMouseMovedEvents]): + return new boolean field + + * WebView/WebHTMLView.m: + (-[WebHTMLView _updateMouseoverWithEvent:]): + bail out right away if [[self _webView] ignoresMouseMovedEvents] + +2006-12-21 Mark Rowe + + Reviewed by Geoff. + + http://bugs.webkit.org/show_bug.cgi?id=11888 + Bug 11888: REGRESSION (r18320): Web Inspector panes broken + + * WebInspector/webInspector/inspector.js: Use removeProperty to reset a style property to its + initial value. Bail out early from updateNodePane if Inspector has not yet been set. + +2006-12-19 John Sullivan + + Reviewed by Darin + + - fix for unrepro infinite recursion bug: + CrashTracer: 154 crashes in Safari at com.apple.AppKit: + -[NSView isDescendantOf:] + 24; infinite recursion in makeFirstResponder logic + + * WebView/WebView.mm: + added becomingFirstResponder BOOL to private struct + (-[WebView becomeFirstResponder]): + use _private->becomingFirstResponder to guard against infinite recursion; complain on + debug builds if we run into this problem + +2006-12-19 Timothy Hatcher + + Reviewed by Darin. + + Local WebCore/WebBrowser builds fail in 9A328 due to warning about ObjC-2.0 language features + + * WebKit.xcodeproj/project.pbxproj: + +2006-12-18 Ada Chan + + Reviewed by Adam. + + Moved canRunBeforeUnloadConfirmPanel, runBeforeUnloadConfirmPanel, and closeWindowSoon + from WebCoreFrameBridge to Chrome. + + * COM/ChromeClientWin.cpp: + (ChromeClientWin::canRunBeforeUnloadConfirmPanel): + (ChromeClientWin::runBeforeUnloadConfirmPanel): + (ChromeClientWin::closeWindowSoon): + * COM/ChromeClientWin.h: + * WebCoreSupport/WebChromeClient.h: + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::canRunBeforeUnloadConfirmPanel): + (WebChromeClient::runBeforeUnloadConfirmPanel): + (WebChromeClient::closeWindowSoon): + * WebCoreSupport/WebFrameBridge.mm: + +2006-12-18 Alice Liu + + Reviewed by Adam. + + Have the Editor handle deletion instead of WebHTMLView + + * WebKitPrefix.h: + Turned on WebCore deletion + + * WebView/WebHTMLViewInternal.h: + Moved ownership of startNewKillRingSequence to the WebCore::Editor + + * WebView/WebHTMLView.m: + (-[NSArray becomeFirstResponder]): + Use the Editor's startNewKillRingSequence flag + + (-[NSArray deleteForward:]): + (-[NSArray deleteBackward:]): + (-[NSArray deleteWordForward:]): + (-[NSArray deleteWordBackward:]): + (-[NSArray deleteToBeginningOfLine:]): + (-[NSArray deleteToEndOfLine:]): + (-[NSArray deleteToBeginningOfParagraph:]): + (-[NSArray deleteToEndOfParagraph:]): + (-[NSArray deleteToMark:]): + use Editor::deleteWithDirection instead of WebHTMLView's + +2006-12-16 Adele Peterson + + Reviewed by Adam. + + WebKit part of fix for: + Switch to use new search field implementation for + + * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Initialize WKDrawTextFieldCellFocusRing. + * WebInspector/webInspector/inspector.css: Set -webkit-user-select:text and text-shadow:none on the search field. + These are both properties that we didn't honor in the old control, and the inherited values didn't work or look right. + +2006-12-16 Beth Dakin + + Reviewed by Adam. + + WebKit side of making WebCore context menus support state and + enabled/disabled. + + * WebCoreSupport/WebContextMenuClient.h: contextMenuItemSelected + takes a pointer to the parentMenu now since menu items no longer + hold onto it. + * WebCoreSupport/WebContextMenuClient.mm: Same. + (WebContextMenuClient::contextMenuItemSelected): Same. + * WebView/WebHTMLView.m: Must call setAutoenablesItems:NO on our + menu. + (-[NSArray menuForEvent:]): + * WebView/WebUIDelegatePrivate.h: No need for if-def. + +2006-12-15 Anders Carlsson + + Reviewed by Geoff. + + Update for WebCore changes. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchIdentifierForInitialRequest): + * WebView/WebDataSource.mm: + (-[WebDataSource response]): + +2006-12-15 Anders Carlsson + + Reviewed by Darin. + + Update for WebCore changes. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::willUseArchive): + * WebView/WebDataSource.mm: + (-[WebDataSource _URLForHistory]): + +2006-12-15 Marvin Decker + + Reviewed by Darin and Alexey. + + Fix the Windows build, move various Client implementations out of + WebCore and into WebKit. + + * COM/ChromeClientWin.cpp: Added. + (ChromeClientWin::~ChromeClientWin): + (ChromeClientWin::chromeDestroyed): + (ChromeClientWin::setWindowRect): + (ChromeClientWin::windowRect): + (ChromeClientWin::pageRect): + (ChromeClientWin::scaleFactor): + (ChromeClientWin::focus): + (ChromeClientWin::unfocus): + (ChromeClientWin::createWindow): + (ChromeClientWin::createModalDialog): + (ChromeClientWin::show): + (ChromeClientWin::canRunModal): + (ChromeClientWin::runModal): + (ChromeClientWin::setToolbarsVisible): + (ChromeClientWin::toolbarsVisible): + (ChromeClientWin::setStatusbarVisible): + (ChromeClientWin::statusbarVisible): + (ChromeClientWin::setScrollbarsVisible): + (ChromeClientWin::scrollbarsVisible): + (ChromeClientWin::setMenubarVisible): + (ChromeClientWin::menubarVisible): + (ChromeClientWin::setResizable): + (ChromeClientWin::addMessageToConsole): + * COM/ChromeClientWin.h: Added. + * COM/ContextMenuClientWin.cpp: Added. + (ContextMenuClientWin::~ContextMenuClientWin): + (ContextMenuClientWin::contextMenuDestroyed): + (ContextMenuClientWin::addCustomContextMenuItems): + (ContextMenuClientWin::contextMenuItemSelected): + (ContextMenuClientWin::copyLinkToClipboard): + (ContextMenuClientWin::downloadURL): + (ContextMenuClientWin::copyImageToClipboard): + (ContextMenuClientWin::lookUpInDictionary): + (ContextMenuClientWin::speak): + (ContextMenuClientWin::stopSpeaking): + * COM/ContextMenuClientWin.h: Added. + * COM/EditorClientWin.cpp: Added. + (EditorClientWin::~EditorClientWin): + (EditorClientWin::pageDestroyed): + (EditorClientWin::shouldDeleteRange): + (EditorClientWin::shouldShowDeleteInterface): + (EditorClientWin::smartInsertDeleteEnabled): + (EditorClientWin::isContinuousSpellCheckingEnabled): + (EditorClientWin::toggleContinuousSpellChecking): + (EditorClientWin::isGrammarCheckingEnabled): + (EditorClientWin::toggleGrammarChecking): + (EditorClientWin::spellCheckerDocumentTag): + (EditorClientWin::selectWordBeforeMenuEvent): + (EditorClientWin::isEditable): + (EditorClientWin::shouldBeginEditing): + (EditorClientWin::shouldEndEditing): + (EditorClientWin::shouldInsertNode): + (EditorClientWin::shouldInsertText): + (EditorClientWin::shouldApplyStyle): + (EditorClientWin::didBeginEditing): + (EditorClientWin::respondToChangedContents): + (EditorClientWin::didEndEditing): + (EditorClientWin::registerCommandForUndo): + (EditorClientWin::registerCommandForRedo): + (EditorClientWin::clearUndoRedoOperations): + (EditorClientWin::canUndo): + (EditorClientWin::canRedo): + (EditorClientWin::undo): + (EditorClientWin::redo): + * COM/EditorClientWin.h: Added. + * COM/WebFrame.cpp: + (WebFrame::WebFrame): + (WebFrame::initWithName): + * COM/WebFrame.h: + * COM/WebFrameLoaderClient.cpp: Added. + (WebFrameLoaderClient::WebFrameLoaderClient): + (WebFrameLoaderClient::~WebFrameLoaderClient): + (WebFrameLoaderClient::frameLoaderDestroyed): + (WebFrameLoaderClient::hasWebView): + (WebFrameLoaderClient::hasFrameView): + (WebFrameLoaderClient::hasBackForwardList): + (WebFrameLoaderClient::resetBackForwardList): + (WebFrameLoaderClient::provisionalItemIsTarget): + (WebFrameLoaderClient::loadProvisionalItemFromPageCache): + (WebFrameLoaderClient::invalidateCurrentItemPageCache): + (WebFrameLoaderClient::privateBrowsingEnabled): + (WebFrameLoaderClient::makeDocumentView): + (WebFrameLoaderClient::makeRepresentation): + (WebFrameLoaderClient::forceLayout): + (WebFrameLoaderClient::forceLayoutForNonHTML): + (WebFrameLoaderClient::updateHistoryForCommit): + (WebFrameLoaderClient::updateHistoryForBackForwardNavigation): + (WebFrameLoaderClient::updateHistoryForReload): + (WebFrameLoaderClient::updateHistoryForStandardLoad): + (WebFrameLoaderClient::updateHistoryForInternalLoad): + (WebFrameLoaderClient::updateHistoryAfterClientRedirect): + (WebFrameLoaderClient::setCopiesOnScroll): + (WebFrameLoaderClient::tokenForLoadErrorReset): + (WebFrameLoaderClient::resetAfterLoadError): + (WebFrameLoaderClient::doNotResetAfterLoadError): + (WebFrameLoaderClient::willCloseDocument): + (WebFrameLoaderClient::detachedFromParent1): + (WebFrameLoaderClient::detachedFromParent2): + (WebFrameLoaderClient::detachedFromParent3): + (WebFrameLoaderClient::detachedFromParent4): + (WebFrameLoaderClient::loadedFromPageCache): + (WebFrameLoaderClient::dispatchDidHandleOnloadEvents): + (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): + (WebFrameLoaderClient::dispatchDidCancelClientRedirect): + (WebFrameLoaderClient::dispatchWillPerformClientRedirect): + (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage): + (WebFrameLoaderClient::dispatchWillClose): + (WebFrameLoaderClient::dispatchDidReceiveIcon): + (WebFrameLoaderClient::dispatchDidStartProvisionalLoad): + (WebFrameLoaderClient::dispatchDidReceiveTitle): + (WebFrameLoaderClient::dispatchDidCommitLoad): + (WebFrameLoaderClient::dispatchDidFinishLoad): + (WebFrameLoaderClient::dispatchDidFirstLayout): + (WebFrameLoaderClient::dispatchShow): + (WebFrameLoaderClient::cancelPolicyCheck): + (WebFrameLoaderClient::dispatchWillSubmitForm): + (WebFrameLoaderClient::dispatchDidLoadMainResource): + (WebFrameLoaderClient::clearLoadingFromPageCache): + (WebFrameLoaderClient::isLoadingFromPageCache): + (WebFrameLoaderClient::revertToProvisionalState): + (WebFrameLoaderClient::clearUnarchivingState): + (WebFrameLoaderClient::progressStarted): + (WebFrameLoaderClient::progressCompleted): + (WebFrameLoaderClient::setMainFrameDocumentReady): + (WebFrameLoaderClient::willChangeTitle): + (WebFrameLoaderClient::didChangeTitle): + (WebFrameLoaderClient::finishedLoading): + (WebFrameLoaderClient::finalSetupForReplace): + (WebFrameLoaderClient::setDefersLoading): + (WebFrameLoaderClient::isArchiveLoadPending): + (WebFrameLoaderClient::cancelPendingArchiveLoad): + (WebFrameLoaderClient::clearArchivedResources): + (WebFrameLoaderClient::canHandleRequest): + (WebFrameLoaderClient::canShowMIMEType): + (WebFrameLoaderClient::representationExistsForURLScheme): + (WebFrameLoaderClient::generatedMIMETypeForURLScheme): + (WebFrameLoaderClient::frameLoadCompleted): + (WebFrameLoaderClient::restoreScrollPositionAndViewState): + (WebFrameLoaderClient::provisionalLoadStarted): + (WebFrameLoaderClient::shouldTreatURLAsSameAsCurrent): + (WebFrameLoaderClient::addHistoryItemForFragmentScroll): + (WebFrameLoaderClient::didFinishLoad): + (WebFrameLoaderClient::prepareForDataSourceReplacement): + (WebFrameLoaderClient::setTitle): + (WebFrameLoaderClient::userAgent): + * COM/WebFrameLoaderClient.h: Added. + * COM/WebKitDLL.h: + * WebKit.vcproj/WebKit.vcproj: + +2006-12-15 Anders Carlsson + + Reviewed by Darin. + + Include ResourceError.h. + + * Plugins/WebNetscapePluginStream.mm: + * WebKit.xcodeproj/project.pbxproj: + +2006-12-14 Anders Carlsson + + Reviewed by Maciej. + + Update for WebCore changes. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::incrementProgress): + (WebFrameLoaderClient::committedLoad): + (WebFrameLoaderClient::deliverArchivedResources): + * WebView/WebView.mm: + (-[WebView _incrementProgressForIdentifier:length:]): + * WebView/WebViewInternal.h: + +2006-12-14 Timothy Hatcher + + Reviewed by Darin. + + need NSRange-based selection support exposed. + + * WebView/WebFrame.mm: + (-[WebFrame _selectedNSRange]): + (-[WebFrame _selectNSRange:]): + * WebView/WebFramePrivate.h: + +2006-12-14 Anders Carlsson + + Reviewed by John. + + Update for WebCore changes. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchDidFailLoading): + (WebFrameLoaderClient::dispatchDidFailProvisionalLoad): + (WebFrameLoaderClient::dispatchDidFailLoad): + (WebFrameLoaderClient::dispatchUnableToImplementPolicy): + (WebFrameLoaderClient::setMainDocumentError): + (WebFrameLoaderClient::cancelledError): + (WebFrameLoaderClient::cannotShowURLError): + (WebFrameLoaderClient::interruptForPolicyChangeError): + (WebFrameLoaderClient::cannotShowMIMETypeError): + (WebFrameLoaderClient::fileDoesNotExistError): + (WebFrameLoaderClient::shouldFallBack): + +2006-12-13 Maciej Stachowiak + + Reviewed by Anders. + + - adjusted for changes from NSURLRequest to ResourceRequest + + * Plugins/WebPluginController.mm: + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::updateHistoryForReload): + (WebFrameLoaderClient::dispatchIdentifierForInitialRequest): + (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType): + (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): + (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): + (WebFrameLoaderClient::startDownload): + (WebFrameLoaderClient::cannotShowURLError): + (WebFrameLoaderClient::createDocumentLoader): + * WebView/WebDataSource.mm: + (-[WebDataSource _initWithDocumentLoader:]): + (-[WebDataSource initialRequest]): + (-[WebDataSource request]): + * WebView/WebDocumentLoaderMac.h: + * WebView/WebDocumentLoaderMac.mm: + (WebDocumentLoaderMac::WebDocumentLoaderMac): + * WebView/WebFrame.mm: + (-[WebFrame _createItem:]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame loadArchive:]): + +2006-12-12 Anders Carlsson + + Reviewed by Darin. + + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::download): + Get the handle and proxy from the ResourceHandle now that they aren't passed to us. + +2006-12-11 Darin Adler + + Reviewed by Brady. + + - did some of the Mac-specific file moves mentioned in my recent mail to the WebKit list + + * WebCoreSupport/WebFrameBridge.h: Updated for change to WebCoreKeyboardAccess. + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge _retrieveKeyboardUIModeFromPreferences:]): Ditto. + (-[WebFrameBridge keyboardUIMode]): Ditto. + +2006-12-11 Beth Dakin + + Reviewed by Adam. + + WebKit support for editing sub-menu actions. + + * WebCoreSupport/WebContextMenuClient.h: New functions for the + speech sub-menu. + * WebCoreSupport/WebContextMenuClient.mm: + (WebContextMenuClient::speak): + (WebContextMenuClient::stopSpeaking): + * WebCoreSupport/WebEditorClient.h: New functions to toggle + spelling/grammar checking. + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::toggleContinuousSpellChecking): + (WebEditorClient::toggleGrammarChecking): + * WebView/WebUIDelegatePrivate.h: Re-named some of the spelling + sub-menu tags. + +2006-12-11 Alice Liu + + Reviewed by Geoff, Adam. + + switch to use the Editor for copying URLs + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + (-[WebDefaultUIDelegate copyLinkToClipboard:]): + Call down to the editor for this. + * WebCoreSupport/WebSystemInterface.m: + (InitWebCoreSystemInterface): + Add some calls necessary for Pasteboard::writeURL to work + +2006-12-11 Darin Adler + + Reviewed by Brady. + + - http://bugs.webkit.org/show_bug.cgi?id=11794 + fix lifetime problems affecting Frame's ownerElement pointer + + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge finishInitializingWithPage:WebCore::frameName:frameView:ownerElement:]): + (-[WebFrameBridge initSubframeWithOwnerElement:frameName:frameView:]): + (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]): + Use HTMLFrameOwnerElement. + + * WebCoreSupport/WebFrameLoaderClient.mm: Include the relevant headers for the + HTMLFormElement class. + + * WebKit.xcodeproj/project.pbxproj: Let Xcode have its way. + + * WebView/WebFrame.mm: (-[WebFrame frameElement]): Update includes and types for the + change in return type of ownerElement. + +2006-12-11 David Harrison + + Fix previous checkin where I committed the wrong file. + + Xyle Scope crashes at launch due to WebCore-521.29.3 + + * WebView/WebFrame.mm: + (-[WebFrame frameElement]): + Add nil check. + + * WebView/WebPreferences.m: + (-[WebPreferences editableLinkBehavior]): + Reverted to previous. + +2006-12-08 David Hyatt + + Land new ICU abstraction layer. Patch by Lars. + + Reviewed by me + + * ForwardingHeaders/wtf/icu/UnicodeIcu.h: Added. + * ForwardingHeaders/wtf/unicode/Unicode.h: Added. + * WebKit.xcodeproj/project.pbxproj: + +=== Safari-521.32 === + +2006-12-08 Timothy Hatcher + + Rolling out a change that broke Mail stationary. + REGRESSION: Background images in Mail stationery do not load + + * WebView/WebUnarchivingState.m: + (-[WebUnarchivingState archivedResourceForURL:]): + +2006-12-08 Don Gibson + + Reviewed and landed by Alexey. + + http://bugs.webkit.org/show_bug.cgi?id=11759: + Windows build bustage + + * COM/WebFrame.cpp: + (WebFrame::loadDataSource): + * COM/WebFrame.h: + +2006-12-08 David Harrison + + Reviewed by Brady. + + Xyle Scope crashes at launch due to WebCore-521.29.3 + + * WebView/WebPreferences.m: + (-[WebPreferences editableLinkBehavior]): + Add nil check. + +2006-12-07 Beth Dakin + + Reviewed by Brady. + + Build fix for WebCore ContextMenus. It got broken by r18046. + + * WebView/WebHTMLView.m: + (-[NSArray menuForEvent:]): + +2006-12-07 Beth Dakin + + Reviewed by Brady. + + Make some parameters const and const references. + + * WebCoreSupport/WebContextMenuClient.h: + * WebCoreSupport/WebContextMenuClient.mm: + (WebContextMenuClient::contextMenuItemSelected): + (WebContextMenuClient::copyLinkToClipboard): + (WebContextMenuClient::downloadURL): + (WebContextMenuClient::copyImageToClipboard): + +2006-12-06 Brady Eidson + + Reviewed by John Sullivan + + Fixes http://bugs.webkit.org/show_bug.cgi?id=11675 and + Now we need to explicitly set the data source when loading from a page cache + + * History/WebHistoryItem.mm: + (-[WebHistoryItem _scheduleRelease]): Enhanced a logging message + (+[WebHistoryItem _releasePageCache:]): Ditto + (+[WebHistoryItem _releaseAllPendingPageCaches]): Ditto + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::setDocumentViewFromPageCache): Reset the View's DataSource from the cache, effectively reopening it + * WebView/WebHTMLView.m: + (-[NSArray setDataSource:]): Properly Handle resetting the DataSource and "reopening" the view + +2006-12-06 Brady Eidson + + Reviewed by Adam and Oliver + + While working on http://bugs.webkit.org/show_bug.cgi?id=11675 I + decided to fix much of the null-deref problems that creeped in via + the loader refactoring. This isn't changing behavior, just reintroducing + the free nil checking we used to have with pure ObjC + + * WebView/WebHTMLView.m: + (-[NSArray menuForEvent:]): Explicitly check for null frames + (-[NSArray mouseDown:]): Ditto + (-[NSArray mouseDragged:]): Ditto + (-[NSArray mouseUp:]): Ditto + (-[NSArray performKeyEquivalent:]): Ditto + (-[WebHTMLView elementAtPoint:allowShadowContent:]): Ditto + +2006-12-05 John Sullivan + + Reviewed by Beth + + Updated to match Frame -> Editor changes in WebCore + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]): + guessesForUngrammaticalSelection() is now in Editor + + * WebView/WebHTMLView.m: + (-[WebHTMLView _isSelectionUngrammatical]): + isSelectionUngrammatical() is now in Editor + (-[WebHTMLView _isSelectionMisspelled]): + isSelectionMisspelled() is now in Editor + + (-[WebHTMLView checkSpelling:]): + advanceToNextMisspelling() is now in Editor + (-[WebHTMLView showGuessPanel:]): + ditto + +2006-12-05 John Sullivan + + Reviewed by Adam + + Old context-menu mechanism fix for: + Should leave out "No Guesses Found" from context menu for bad grammar + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]): + Leave out "No Guesses Found" and separator for grammar-checking case. + +2006-12-05 John Sullivan + + build fix + + * WebView/WebViewPrivate.h: + * WebView/WebView.mm: + (-[WebView isGrammarCheckingEnabled]): + define isGrammarCheckingEnabled whether on Tiger or not (just return NO on Tiger) + +2006-12-04 John Sullivan + + Reviewed by Darin + + WebKit part of fix for: + Context menu for bad grammar should include suggestions and "Ignore Grammar" + + The context menu mechanism is currently in flux; the old mechanism is still in place, but an + up-and-coming new mechanism is waiting in the wings. I updated both of them, but couldn't + test the new mechanism because it doesn't work well enough yet. Most of this WebKit code + can be deleted when the new mechanism is in place. + + * WebView/WebUIDelegatePrivate.h: + added WebMenuItemTagIgnoreGrammar + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + (-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]): + added case for WebMenuItemTagIgnoreGrammar + (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]): + now considers adding grammar-related items as well as spelling-related items + + * WebView/WebHTMLViewPrivate.h: + declared _isSelectionUngrammatical + + * WebView/WebHTMLView.m: + (-[WebHTMLView _isSelectionUngrammatical]): + new method, calls through to WebCore + (-[WebHTMLView _ignoreGrammarFromMenu:]): + new method, calls _ignoreSpellingFromMenu: since NSSpellChecker has one method for both + + * English.lproj/Localizable.strings: + updated for "Ignore Grammar" menu item title + +2006-12-04 Darin Adler + + Reviewed by Adele. + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::actionDictionary): Changed to use the new + findEventWithKeyState function in WebCore instead of a local function + in this file. + +2006-12-04 Geoffrey Garen + + Rolled out the WebDashboardBehaviorUseBackwardCompatibilityModeEnabled + part of my last checkin. + + We have to turn on support for backward compatibility mode to avoid Dashboard + regressions in the short term. + + * WebView/WebView.mm: + (-[WebView _setDashboardBehavior:to:]): + +2006-12-02 Geoffrey Garen + + Reviewed by Darin Adler. + + Added SPI for enabling Dashboard backward compatibility mode. For now, + we enable it unconditionally for Dashboard and Dashcode. Once they + implement specific support for the backward compatibility mode behavior, + we can change that. + + Set the default WebDashboardBehaviorUseBackwardCompatibilityModeEnabled + to YES in order to turn this code on. + + * WebView/WebView.mm: + (-[WebView _setDashboardBehavior:to:]): + (-[WebView _dashboardBehavior:]): + * WebView/WebViewPrivate.h: + +2006-12-04 Darin Adler + + Reviewed by Alice. + + * WebCoreSupport/WebEditorClient.h: Removed "_web_" prefix from + C++ userVisibleString member function. + * WebCoreSupport/WebEditorClient.mm: (WebEditorClient::userVisibleString): + Ditto. + + * WebView/WebView.mm: (-[WebView selectedFrame]): Removed extra return statement. + +2006-12-04 Don Gibson + + Reviewed and landed by Alexey. + + http://bugs.webkit.org/show_bug.cgi?id=11738: + Make link clicking work again on Windows. + + The WebKit changes are to ignore WM_MOUSEMOVED messages when the mouse + hasn't actually moved, which were preventing clicks from actually + getting dispatched in many cases. It's a peculiarity of Windows mouse + handling that we receive these at all. + + * COM/WebView.cpp: + (WebView::WebView): + (WebView::mouseMoved): + * COM/WebView.h: + +2006-12-04 John Sullivan + + Reviewed by Anders + + - fixed REGRESSION: When ctrl-clicking on a misspelled word, "Ignore Spelling" and "Learn Spelling" + menu items not displayed in the contextual menu + + * WebView/WebHTMLView.m: + (-[WebHTMLView _isSelectionMisspelled]): + We were computing isSelectionMisspelled by calling WebCore, but then ignoring the result and always + returning NO. D'oh! + +2006-12-01 Beth Dakin + + Reviewed by Adam. + + Changes to support sub-menus in WebCore ContextMenus. + + * WebCoreSupport/WebContextMenuClient.mm: + (WebContextMenuClient::contextMenuItemSelected): + ContextMenuItem::menu() is now called parentMenu() + * WebView/WebUIDelegatePrivate.h: New not-yet-API tags. + +2006-12-01 Darin Adler + + Reviewed by Mitz. + + - fix http://bugs.webkit.org/show_bug.cgi?id=11628 + REGRESSION (r17597): Command-return in native text fields doesn't open a new tab or window + + * WebCoreSupport/WebFrameLoaderClient.mm: + (findKeyStateEvent): Added. Helper that finds the mouse or keyboard event in a chain + of events and their underlying events. + (findMouseEvent): Added. Same, but specifically for mouse events. + (WebFrameLoaderClient::actionDictionary): Rewrote to use the above functions. This means we + use the modifiers from the underlying events rather than just the one from the event itself. + So if the event is a DOM activate event, we can still see the modifiers from the original + keyboard event that triggered it. Has no effect if the event is already the right type or + if there is no underlying event. + + * WebView/WebFrame.mm: Added a newly-needed include. + + * WebKit.xcodeproj/project.pbxproj: Xcode wants what it wants. + +2006-12-01 Don Gibson + + Reviewed by Mitz. + + http://bugs.webkit.org/show_bug.cgi?id=11732: + Windows build bustage. + + * COM/WebFrame.cpp: + (WebFrame::initWithName): + +2006-12-01 Timothy Hatcher + + Reviewed by Adam. + + 9A312: iWeb crashes on launch; _WebReportError missing from WebKit + + Added back WebReportAssertionFailure and WebReportError for apps that still need these symbols. + + * Misc/OldWebAssertions.c: Added. + (WebReportAssertionFailure): + (WebReportError): + * WebKit.LP64.exp: added the new symbols, and sorted the file + * WebKit.exp: added the new symbols, and sorted the file + * WebKit.xcodeproj/project.pbxproj: + +2006-11-30 Geoffrey Garen + + Rubber Stamped by Anders Carlsson. + + Global rename of Document::focusNode to Document::focusedNode. 'focusNode' + suggested a command, and conflicted with a different meaning for 'focusNode' + in the Mozilla selection API. + + * WebView/WebHTMLView.m: + (-[NSArray clearFocus]): + +2006-11-30 Matt Lilek + + Reviewed by Mitz. + + Bug 10698: Scroll wheel causes inspector to shift up + http://bugs.webkit.org/show_bug.cgi?id=10698 + + Remove size attribute from the tree popup as a workaround for + http://bugs.webkit.org/show_bug.cgi?id=11362 Bug 11362: Native popup with size="1" wraps options + + * WebInspector/webInspector/inspector.css: + * WebInspector/webInspector/inspector.html: + +2006-11-30 Matt Lilek + + Reviewed by Tim H. + + Move web inspector style markup to javascript to fix http://bugs.webkit.org/show_bug.cgi?id=6724 + Bug 6724: Text copied from Web Inspector is different from actual text + + * WebInspector/webInspector/inspector.css: + * WebInspector/webInspector/inspector.js: + +2006-11-30 Adam Roben + + Reviewed by Beth. + + Put code in place to use WebCore context menus when they are turned + on. + + * WebView/WebHTMLView.m: + (-[NSArray menuForEvent:]): + +2006-11-29 Timothy Hatcher + + Reviewed by Oliver. + + Keep preferences separate from the rest of the client, making sure we are using expected preference values. + This lets the inspector work when plugins are disabled for the WebView. + + * WebInspector/WebInspector.m: + (-[NSWindow window]): + +2006-11-29 Anders Carlsson + + Reviewed by Tim. + + Add back methods in WebCoreStatistics that are still used by Tiger Safari. + + * Misc/WebCoreStatistics.h: + * Misc/WebCoreStatistics.m: + (+[WebCoreStatistics emptyCache]): + (+[WebCoreStatistics setCacheDisabled:]): + +2006-11-28 Alice Liu + + Reviewed by Maciej. + + A fix for a couple failing layout tests involving copy/cut in iframes. + + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::dataForArchivedSelection): + Use the frame parameter instead of using the webview's selectedFrame. + +2006-11-28 Beth Dakin + + Reviewed by Geoffff. + + Fix for http://bugs.webkit.org/show_bug.cgi?id=11691 REGRESSION + (r17399, r17511): WebElementDictionary no longer returns nil + NSStrings + + String's NSString* operator converts null Strings to empty + NSStrings for compatibility with AppKit. We need to work around + that here. + + * Misc/WebElementDictionary.m: + (NSStringOrNil): + (-[WebElementDictionary _altDisplayString]): + (-[WebElementDictionary _spellingToolTip]): + (-[WebElementDictionary _title]): + (-[WebElementDictionary _titleDisplayString]): + (-[WebElementDictionary _textContent]): + +2006-11-28 Geoffrey Garen + + Reviewed by Beth Dakin. + + Fixed Should clarify when to create clients in + the WebCore client API + + All clients must now be supplied as constructor arguments. This clarifies + when you need to create clients, and also guarantees that objects can't + (for the most part) be in a clientless state. + + Layout tests pass. No leaks reported. + + * WebCoreSupport/WebFrameBridge.mm: Shuffled around initialization and changed + some arguments to resolve ciruclar dependencies at init time. + (-[WebFrame _initWithWebFrameView:webView:bridge:]): We no longer call setClient + here, because the client is set up at construction time. + +2006-11-28 Anders Carlsson + + Reviewed by Maciej. + + Update for changes to ResourceRequest. + + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::createWindow): + (WebChromeClient::createModalDialog): + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::canHandleRequest): + +2006-11-28 Adam Roben + + Reviewed by Beth. + + More WebCore context menu work. + + * DefaultDelegates/WebDefaultUIDelegate.m: New stub delegate method implementation. + (-[NSApplication webView:contextMenuItemSelected:forElement:]): + * WebCoreSupport/WebContextMenuClient.h: Updated to match ContextMenuClient.h changes. + * WebCoreSupport/WebContextMenuClient.mm: + (WebContextMenuClient::addCustomContextMenuItems): Updated for method name changes. + (WebContextMenuClient::contextMenuItemSelected): Added new client method. + * WebView/WebUIDelegatePrivate.h: New private delegate method declaration. + +2006-11-28 Alice Liu + + Reviewed by Justin and Adam. + + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + added the following + (WebEditorClient::smartInsertDeleteEnabled): + (WebEditorClient::dataForArchivedSelectionInFrame): + (WebEditorClient::_web_userVisibleString): + (WebEditorClient::shouldInsertNode): + + * WebKitPrefix.h: + Added flags to control whether WebCore cut/copy/paste is enabled. + Turned on Cut and Copy, left Paste and Delete off + + * WebView/WebHTMLViewPrivate.h: + * WebView/WebHTMLView.m: + removed _can[Cut|Copy|Paste|Delete] + (-[NSArray validateUserInterfaceItem:]): + call the editor for canDHTML[C|C|P|D] and _can[C|C|P|D] instead + (-[NSArray delete:]): + added code to call the editor's delete instead (not turned on) + (-[WebHTMLView copy:]): + added code to call the editor's copy (turned on) + (-[WebHTMLView cut:]): + added code to call the editor's cut (turned on) + (-[WebHTMLView paste:]): + added code to call the editor's paste (not turned on) + +2006-11-28 Geoffrey Garen + + Reviewed by Adam. + + Fixed REGRESSION: extra cross-library ref/deref + calls cause .5% PLT regression. + + Changed ref/deref calls to a single 'xxxDestroyed' call. Moved EditorClient + from the Frame to the Page, since it's only responsible for + Webview-level delegate calls. + + I don't really love this design, but it fixes the regression and allows + a single WebKit object to implement multiple client interfaces. + + Layout tests pass. + +2006-11-27 Beth Dakin + + Reviewed by Adam. + + WebKit half of getting rid of the FixMes in ContextMenu.cpp + + * WebCoreSupport/WebFrameLoaderClient.h: canHandleRequest takes a + ResourceRequest now. + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::canHandleRequest): Same. + * WebView/WebHTMLView.m: + (-[WebHTMLView _isSelectionMisspelled]): Call into WebCore. + +2006-11-27 Ada Chan + + Reviewed by Adam. + + Part of the change to move WebCoreCache into WebKit: + Added WebCache which handles emptying and enable/disabling the cache. + emptyCache and setCacheDisabled have been removed from WebCoreStatistics. + + * Misc/WebCache.h: Added. + * Misc/WebCache.mm: Added. + * Misc/WebCoreStatistics.h: + * Misc/WebCoreStatistics.m: + (+[WebCoreStatistics statistics]): + * WebKit.exp: + * WebKit.xcodeproj/project.pbxproj: + +2006-11-27 Anders Carlsson + + Reviewed by Adam. + + Move addMessageToConsole to Chrome. + + * WebCoreSupport/WebChromeClient.h: + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::addMessageToConsole): + * WebCoreSupport/WebFrameBridge.mm: + +2006-11-27 Brady Eidson + + Reviewed by Anders + + Moved unused Private SPI to Internal and pruned other unused code + + * Misc/WebIconDatabase.m: + * Misc/WebIconDatabasePrivate.h: + +2006-11-21 Darin Adler + + Reviewed by Maciej. + + - make the close method do a more-complete job to prevent world leaks seen when + running some of the layout tests + + * WebView/WebHTMLViewInternal.h: Added declaration of -[WebHTMLViewPrivate clear]. + * WebView/WebHTMLView.m: + (-[WebHTMLViewPrivate clear]): Added method to drop references to other objects. + We want to do this at "close" time, rather than waiting for deallocation time. + This is especially important for the data source, which indirectly keeps a number of + objects alive. + (-[WebHTMLView close]): Added an explicit call to clear out the data source on the + plug-in controller. Without this, we'd see the plug-in controller making calls to + a deallocated data source during the layout tests. Added a call to the new clear method + on the private object so that we release the objects at close time instead of waiting + for deallocation time. + + * WebKit.xcodeproj/project.pbxproj: Let Xcode have its way with the project file, + because I can't fight the power. + +2006-11-20 Samuel Weinig + + Reviewed by Alexey. + + Fix for http://bugs.webkit.org/show_bug.cgi?id=11656 + Fix Windows build + + * WebKit.vcproj/WebKit.vcproj: don't include directories that no + longer exist. + +2006-11-19 Beth Dakin + + Reviewed by Adam. + + WebKit side of new context menu actions. + + * WebCoreSupport/WebContextMenuClient.h: These are for the + currently-WebKit-dependent menu actions. + * WebCoreSupport/WebContextMenuClient.mm: + (WebContextMenuClient::copyLinkToClipboard): + (WebContextMenuClient::downloadURL): + (WebContextMenuClient::copyImageToClipboard): + (WebContextMenuClient::searchWithSpotlight): + (WebContextMenuClient::lookUpInDictionary): + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (core): These are to convert between WebViewInsertAction and + EditorInsertAction. + (kit): + (WebEditorClient::shouldInsertText): Added implementation for + shouldInsertText. + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebHTMLView.m: + (-[WebHTMLView _lookUpInDictionaryFromMenu:]): Moved + _lookUpInDictionary to be within the implementation of WebHTMLView + internal. + * WebView/WebHTMLViewInternal.h: Add _lookUpInDictionaryFromMenu + * WebView/WebViewInternal.h: Add _searchWithSpotlightFromMenu + +2006-11-18 Don Gibson + + Reviewed by Sam Weinig. + + http://bugs.webkit.org/show_bug.cgi?id=11634: + Fix segfault on startup for Windows build. Also fix segfault when + typing in a URL. + + * COM/WebFrame.cpp: + (WebFrame::initWithName): + +=== Safari-521.31 === + +2006-11-17 Timothy Hatcher + + Reviewed by Geoff. + + Temporarily default Mail.app editable link clicking behavior, until they do it themselves + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebView.mm: + (+[WebView initialize]): + (-[WebView setPreferences:]): + +2006-11-16 Don Gibson + + Reviewed and landed by ap. + + http://bugs.webkit.org/show_bug.cgi?id=11509: + Windows build bustage. + + * COM/WebFrame.cpp: + (WebFrame::initWithName): + (WebFrame::loadHTMLString): + (WebFrame::stopLoading): + (WebFrame::reload): + (WebFrame::loadDataSource): + (WebFrame::didReceiveData): + (WebFrame::receivedResponse): + (WebFrame::receivedAllData): + * COM/WebFrame.h: + * COM/WebView.cpp: + (WebView::mouseMoved): + (WebView::mouseDown): + (WebView::mouseUp): + (WebView::mouseDoubleClick): + * WebKit.vcproj/WebKit.vcproj: + +2006-11-16 Anders Carlsson + + Reviewed by Tim. + + + REGRESSION: Crash in WebCore::Range::boundaryPointsValid when replying to a mail Message + + * Misc/WebNSAttributedStringExtras.m: + (+[NSAttributedString _web_attributedStringFromRange:]): + If the range passed in is null, return null. When this function was in the bridge, it would never get called + with a null range when nothing was selected. Instead, the range would just have invalid boundary points. + +2006-11-15 Adam Roben + + Reviewed by Anders. + + Added new WebContextMenuClient class to act as WebCore's ChromeClient, + and moved context menu-related code there from WebChromeClient. + + * WebCoreSupport/WebChromeClient.h: + * WebCoreSupport/WebChromeClient.mm: + * WebCoreSupport/WebContextMenuClient.h: Added. + (WebContextMenuClient::webView): + * WebCoreSupport/WebContextMenuClient.mm: Added. + (WebContextMenuClient::create): + (WebContextMenuClient::WebContextMenuClient): + (WebContextMenuClient::ref): + (WebContextMenuClient::deref): + (WebContextMenuClient::addCustomContextMenuItems): + * WebKit.xcodeproj/project.pbxproj: Added new files. + * WebView/WebView.mm: + (-[WebView _commonInitializationWithFrameName:groupName:]): + +2006-11-15 Beth Dakin + & Adam Roben + + Reviewed by Adam & Beth. + + WebKit side of first cut at engine context menus. Use the client to + call into the UIDelegate. + + * WebCoreSupport/WebChromeClient.h: + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::addCustomContextMenuItems): + * WebKit.xcodeproj/project.pbxproj: + +2006-11-15 Brady Eidson + + Reviewed by Maciej + + Quick change of files to ObjC++ for BF cache re-write + + * History/WebBackForwardList.m: Removed. + * History/WebBackForwardList.mm: Added. + * History/WebHistoryItem.m: Removed. + * History/WebHistoryItem.mm: Added. + * WebKit.xcodeproj/project.pbxproj: + +2006-11-15 Brady Eidson + + Reviewed by Sarge + + SPI addition + + * WebView/WebFrame.mm: + (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]): + * WebView/WebFrameInternal.h: + * WebView/WebFramePrivate.h: + +2006-11-15 Brady Eidson + + Reviewed by Adele + + - Replace mistakenly removed SPI + + * WebView/WebHTMLView.m: + (-[WebHTMLView _handleAutoscrollForMouseDragged:]): + * WebView/WebHTMLViewPrivate.h: + +2006-11-15 Anders Carlsson + + Reviewed by Adele. + + isTargetItem is used by DRT, so make it private instead of internal. + + * History/WebHistoryItem.m: + (-[WebHistoryItem isTargetItem]): + * History/WebHistoryItemInternal.h: + * History/WebHistoryItemPrivate.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + +2006-11-15 Brady Eidson + + Reviewed by Maciej + + Split much of unused WebHistoryItemPrivate.h SPI into WebHistoryItemInternal.h + + * History/WebBackForwardList.m: + * History/WebHistory.m: + * History/WebHistoryItem.m: + (-[WebHistoryItem initWithURLString:title:lastVisitedTimeInterval:]): + (-[WebHistoryItem initWithURL:title:]): + (-[WebHistoryItem visitCount]): + (-[WebHistoryItem RSSFeedReferrer]): + (-[WebHistoryItem setRSSFeedReferrer:]): + (-[WebHistoryItem children]): + (-[WebHistoryItem dictionaryRepresentation]): + (-[WebHistoryItem setAlwaysAttemptToUsePageCache:]): + (+[WebHistoryItem _releaseAllPendingPageCaches]): + (-[WebHistoryItem URL]): + (-[WebHistoryItem target]): + (-[WebHistoryItem _setLastVisitedTimeInterval:]): + (-[WebHistoryItem _lastVisitedDate]): + (-[WebHistoryItem targetItem]): + * History/WebHistoryItemInternal.h: Added. + * History/WebHistoryItemPrivate.h: + * WebCoreSupport/WebFrameBridge.mm: + * WebCoreSupport/WebFrameLoaderClient.mm: + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebFrame.mm: + * WebView/WebView.mm: + +2006-11-14 Beth Dakin + + Reviewed by Geoff. + + Moving things off the bridge and onto clients. + + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::selectWordBeforeMenuEvent): + (WebEditorClient::isEditable): + * WebCoreSupport/WebFrameBridge.mm: + * WebKit.xcodeproj/project.pbxproj: + +2006-11-14 Timothy Hatcher + + Reviewed by Harrison. + + Safari should never follow links in editable areas (add a WebKitEditableLinkNeverLive option) + + Adds an Open Link, Open Link in New Window and Copy Link to the editing context menu. + Adds a new WebKitEditableLinkNeverLive preference value that maps to WebCore's EditableLinkNeverLive. + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + (-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]): + (-[WebDefaultUIDelegate contextMenuItemsForElement:defaultMenuItems:]): + (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]): + (-[WebDefaultUIDelegate requestWithURL:includingReferrerFromFrame:]): + (-[WebDefaultUIDelegate openNewWindowWithURL:element:]): + (-[WebDefaultUIDelegate openLink:]): + * English.lproj/Localizable.strings: + * WebKit.exp: + * WebView/WebPreferences.m: + (-[WebPreferences editableLinkBehavior]): + * WebView/WebPreferencesPrivate.h: + * WebView/WebUIDelegatePrivate.h: + +2006-11-14 Anders Carlsson + + Turns out I wasn't forcing DWARF on the world at all, + it's now the default! + + * WebKit.xcodeproj/project.pbxproj: + +2006-11-14 Anders Carlsson + + I must stop trying to force DWARF on the world. + + * WebKit.xcodeproj/project.pbxproj: + +2006-11-14 Darin Adler + + Reviewed by Anders. + + - update for creation of EventHandler + + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::actionDictionary): + * WebView/WebHTMLView.m: + (-[WebHTMLView _updateMouseoverWithEvent:]): + (-[NSArray menuForEvent:]): + (-[NSArray scrollWheel:]): + (-[NSArray acceptsFirstMouse:]): + (-[NSArray shouldDelayWindowOrderingForEvent:]): + (-[NSArray mouseDown:]): + (-[NSArray mouseDragged:]): + (-[NSArray mouseUp:]): + (-[NSArray keyDown:]): + (-[NSArray keyUp:]): + (-[NSArray performKeyEquivalent:]): + (-[WebHTMLView elementAtPoint:allowShadowContent:]): + +2006-11-14 Anders Carlsson + + Fix build for real this time. + + * WebCoreSupport/WebEditorClient.mm: + (-[WebEditCommand initWithEditCommand:WebCore::]): + (-[WebEditCommand dealloc]): + (-[WebEditCommand finalize]): + (+[WebEditCommand commandWithEditCommand:]): + (-[WebEditCommand command]): + +2006-11-14 Anders Carlsson + + Try fixing the build. + + * WebCoreSupport/WebEditorClient.mm: + (-[WebEditorUndoTarget undoEditing:]): + (-[WebEditorUndoTarget redoEditing:]): + +2006-11-14 Anders Carlsson + + Reviewed by Darin. + + Move undo/redo handling into WebEditorClient. + + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::WebEditorClient): + (WebEditorClient::~WebEditorClient): + (-[WebEditCommand initWithEditCommand:WebCore::]): + (-[WebEditCommand dealloc]): + (-[WebEditCommand finalize]): + (+[WebEditCommand commandWithEditCommand:]): + (-[WebEditCommand command]): + (-[WebEditorUndoTarget undoEditing:]): + (-[WebEditorUndoTarget redoEditing:]): + (undoNameForEditAction): + (WebEditorClient::registerCommandForUndoOrRedo): + (WebEditorClient::registerCommandForUndo): + (WebEditorClient::registerCommandForRedo): + (WebEditorClient::clearUndoRedoOperations): + (WebEditorClient::canUndo): + (WebEditorClient::canRedo): + (WebEditorClient::undo): + (WebEditorClient::redo): + * WebCoreSupport/WebFrameBridge.mm: + * WebKit.xcodeproj/project.pbxproj: + +2006-11-14 Alexey Proskuryakov + + Reviewed by Tim H. + + http://bugs.webkit.org/show_bug.cgi?id=3387 + Redundant keydown, keypress, keyup events sent for arrow keys + + Added another layer of ugly hacks around AppKit event dispatching. + + 1. For arrow keys, keyDown: is invoked after performKeyEquivalent:, so had to store + _private->keyDownEvent in both methods, and make it persist after leaving them. + + 2. For Esc, AppKit calls performKeyEquivalent: with a fake event of some kind, + use [NSApp currentEvent] to check for this to prevent it from being passed to WebCore. + + Test: manual-tests/arrow-key-events.html + + * WebView/WebHTMLView.m: + (-[NSMutableDictionary dealloc]): + (-[NSArray keyDown:]): + (-[NSArray keyUp:]): + (-[NSArray performKeyEquivalent:]): + * WebView/WebHTMLViewInternal.h: + +2006-11-12 Brady Eidson + + Rubberstamped by Anders + + Changed some #includes from to "foo.h" + + * History/WebBackForwardList.m: + * History/WebHistory.m: + +2006-11-11 Geoffrey Garen + + Reviewed by Maciej Stachowiak. + + - Fixed loader crash by clarifying ownership of WebKit client objects. + WebCore objects own their WebKit clients, and ref and deref through + virtual methods, leaving WebKit free to use whatever client / reference-counting + implementation it likes. + + WebKit on Mac just uses the same refcounting class that WebCore uses (Shared), + but other platforms may choose to do other things. + + * WebCoreSupport/WebChromeClient.h: + (WebChromeClient::ref): + (WebChromeClient::deref): + (WebChromeClient::refCount): + * WebCoreSupport/WebEditorClient.h: Nixed commented-out function prototypes. + The ones in WebCore make clear what remains to be implemented. Replaced constructor + with factory function to avoid leaks. + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::create): + (WebEditorClient::WebEditorClient): + (WebEditorClient::setWebFrame): + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge initMainFrameWithPage:WebCore::frameName:view:webView:]): + (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]): + * WebCoreSupport/WebFrameLoaderClient.h: Replaced constructor with factory + function to avoid leaks. + (WebFrameLoaderClient::ref): + (WebFrameLoaderClient::deref): + (WebFrameLoaderClient::refCount): + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::create): + * WebView/WebFrame.mm: + (-[WebFrame _initWithWebFrameView:webView:coreFrame:]): + +=== Safari-521.30 === + +2006-11-10 Maciej Stachowiak + + Reviewed by Anders. + + - remove some unnecessary uses of WebDataProtocol + + * WebView/WebDataSource.mm: Remove the unneeded include. + * WebView/WebView.mm: + (+[WebView _canHandleRequest:]): Don't bother to check for unreachable URL here. + Any request that has one will be an applewebdata: request, which will pass the check anyway. + +2006-11-10 Anders Carlsson + + Reviewed by Geoff. + + Update for changes to WebCore + * WebView/WebHTMLView.m: + (-[NSArray _applyStyleToSelection:withUndoAction:]): + (-[NSArray _applyParagraphStyleToSelection:withUndoAction:]): + (-[NSArray _toggleBold]): + (-[NSArray _toggleItalic]): + +2006-11-09 Anders Carlsson + + Reviewed by Maciej, Geoff. + + Call execCommand directly here instead of going through the bridge. + + * WebView/WebHTMLView.m: + (-[NSArray moveBackward:]): + (-[NSArray moveBackwardAndModifySelection:]): + (-[NSArray moveDown:]): + (-[NSArray moveDownAndModifySelection:]): + (-[NSArray moveForward:]): + (-[NSArray moveForwardAndModifySelection:]): + (-[NSArray moveLeft:]): + (-[NSArray moveLeftAndModifySelection:]): + (-[NSArray moveRight:]): + (-[NSArray moveRightAndModifySelection:]): + (-[NSArray moveToBeginningOfDocument:]): + (-[NSArray moveToBeginningOfDocumentAndModifySelection:]): + (-[NSArray moveToBeginningOfSentence:]): + (-[NSArray moveToBeginningOfSentenceAndModifySelection:]): + (-[NSArray moveToBeginningOfLine:]): + (-[NSArray moveToBeginningOfLineAndModifySelection:]): + (-[NSArray moveToBeginningOfParagraph:]): + (-[NSArray moveToBeginningOfParagraphAndModifySelection:]): + (-[NSArray moveToEndOfDocument:]): + (-[NSArray moveToEndOfDocumentAndModifySelection:]): + (-[NSArray moveToEndOfSentence:]): + (-[NSArray moveToEndOfSentenceAndModifySelection:]): + (-[NSArray moveToEndOfLine:]): + (-[NSArray moveToEndOfLineAndModifySelection:]): + (-[NSArray moveToEndOfParagraph:]): + (-[NSArray moveToEndOfParagraphAndModifySelection:]): + (-[NSArray moveParagraphBackwardAndModifySelection:]): + (-[NSArray moveParagraphForwardAndModifySelection:]): + (-[NSArray moveUp:]): + (-[NSArray moveUpAndModifySelection:]): + (-[NSArray moveWordBackward:]): + (-[NSArray moveWordBackwardAndModifySelection:]): + (-[NSArray moveWordForward:]): + (-[NSArray moveWordForwardAndModifySelection:]): + (-[NSArray moveWordLeft:]): + (-[NSArray moveWordLeftAndModifySelection:]): + (-[NSArray moveWordRight:]): + (-[NSArray moveWordRightAndModifySelection:]): + +2006-11-10 Brady Eidson + + Reviewed by Darin + + Took out WebIconDatabaseBridge and made WebKit call IconDatabase directly + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase init]): + (-[WebIconDatabase iconForURL:withSize:cache:]): + (-[WebIconDatabase iconURLForURL:]): + (-[WebIconDatabase defaultIconWithSize:]): + (-[WebIconDatabase defaultIconForURL:withSize:]): + (-[WebIconDatabase retainIconForURL:]): + (-[WebIconDatabase releaseIconForURL:]): + (-[WebIconDatabase setDelegate:]): + (-[WebIconDatabase removeAllIcons]): + (-[WebIconDatabase isIconExpiredForIconURL:]): + (-[WebIconDatabase _isEnabled]): + (-[WebIconDatabase _setIconData:forIconURL:]): + (-[WebIconDatabase _setHaveNoIconForIconURL:]): + (-[WebIconDatabase _setIconURL:forURL:]): + (-[WebIconDatabase _hasEntryForIconURL:]): + (-[WebIconDatabase _applicationWillTerminate:]): + (-[WebIconDatabase _resetCachedWebPreferences:]): + (-[WebIconDatabase _convertToWebCoreFormat]): + (webGetNSImage): + * Misc/WebIconDatabaseInternal.h: Added. + * Misc/WebIconDatabasePrivate.h: + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchDidReceiveIcon): + * WebCoreSupport/WebIconDatabaseBridge.h: Removed. + * WebCoreSupport/WebIconDatabaseBridge.m: Removed. + * WebKit.xcodeproj/project.pbxproj: + +2006-11-09 Oliver Hunt + + Reviewed by Brady. + + Updated to make use of MimeTypeRegistry/bridge + + * Misc/WebNSPasteboardExtras.m: + (-[NSPasteboard _web_writeImage:element:URL:title:archive:types:]): + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge determineObjectFromMIMEType:URL:]): + * WebView/WebDataSource.mm: + (-[WebDataSource _documentFragmentWithArchive:]): + * WebView/WebHTMLRepresentation.m: + (+[WebHTMLRepresentation supportedNonImageMIMETypes]): + (+[WebHTMLRepresentation supportedImageMIMETypes]): + * WebView/WebHTMLView.m: + (-[WebHTMLView _imageExistsAtPaths:]): + (-[WebHTMLView _documentFragmentWithPaths:]): + +2006-11-09 Brady Eidson + + Reviewed by Darin + + + More loader re-factoring cleanup - WebFramePolicyListener was over-released + + * WebCoreSupport/WebFrameLoaderClient.h: Changed vanilla ptr to a RetainPtr<> + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType): Ditto + (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): Ditto + (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): Ditto + (WebFrameLoaderClient::dispatchWillSubmitForm): Ditto + (WebFrameLoaderClient::setUpPolicyListener): Ditto + (-[WebFramePolicyListener receivedPolicyDecision:]): Ditto + +2006-11-08 Anders Carlsson + + Reviewed by Adam, Oliver. + + Update for changes to WebCore. Pass a specific WebFrame to WebEditorClient + instead of just passing the WebView. + + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::WebEditorClient): + (WebEditorClient::setWebFrame): + (WebEditorClient::isContinuousSpellCheckingEnabled): + (WebEditorClient::spellCheckerDocumentTag): + (WebEditorClient::shouldDeleteRange): + (WebEditorClient::shouldShowDeleteInterface): + (WebEditorClient::shouldApplyStyle): + (WebEditorClient::shouldBeginEditing): + (WebEditorClient::shouldEndEditing): + (WebEditorClient::didBeginEditing): + (WebEditorClient::respondToChangedContents): + (WebEditorClient::didEndEditing): + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge initMainFrameWithPage:WebCore::frameName:view:webView:]): + (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]): + +2006-11-08 Anders Carlsson + + Reviewed by Adam. + + Move more code into editor. + + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::shouldBeginEditing): + (WebEditorClient::shouldEndEditing): + (WebEditorClient::didBeginEditing): + (WebEditorClient::didEndEditing): + * WebCoreSupport/WebFrameBridge.mm: + * WebView/WebHTMLView.m: + (-[NSArray indent:]): + (-[NSArray outdent:]): + * WebView/WebView.mm: + * WebView/WebViewInternal.h: + +2006-11-08 Beth Dakin + + Reviewed by Adam. + + Add WebElementIsContentEditableKey to the WebElementDictionary, and + use it! + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + (-[WebDefaultUIDelegate + webView:contextMenuItemsForElement:defaultMenuItems:]): Use new + WebElementIsContentEditableKey. + * Misc/WebElementDictionary.m: + (+[WebElementDictionary initializeLookupTable]): + (-[WebElementDictionary _isContentEditable]): Call into + HitTestResult::isContentEditable() + * WebView/WebView.mm: Add new key. + * WebView/WebViewPrivate.h: Add new key. + +2006-11-08 Anders Carlsson + + Reviewed by Oliver. + + Call into the WebCore editor object directly. + + * MigrateHeaders.make: + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::shouldDeleteRange): + (WebEditorClient::shouldShowDeleteInterface): + (WebEditorClient::shouldApplyStyle): + * WebView/WebFrame.mm: + (core): + (kit): + * WebView/WebFrameInternal.h: + * WebView/WebHTMLView.m: + (-[NSArray _applyStyleToSelection:withUndoAction:]): + (-[NSArray _applyParagraphStyleToSelection:withUndoAction:]): + (-[NSArray _toggleBold]): + (-[NSArray _toggleItalic]): + (-[NSArray _changeCSSColorUsingSelector:inRange:]): + (-[NSArray underline:]): + (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): + * WebView/WebView.mm: + (-[WebView applyStyle:]): + +2006-11-08 Anders Carlsson + + Reviewed by Oliver. + + + REGRESSION: Selecting "Look Up In Dictionary" from contextual menu fails to open the Dictionary app + + * WebView/WebHTMLView.m: + (-[WebHTMLView _lookUpInDictionaryFromMenu:]): + Initialize the framework pointer to 0. + +2006-11-07 Darin Adler + + Reviewed by Geoff. + + - udpated for changes to move from Frame/FrameMac to FrameLoader + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + (-[WebDefaultUIDelegate openNewWindowWithURL:element:]): + * Misc/WebNSAttributedStringExtras.m: + (+[NSAttributedString _web_attributedStringFromRange:]): + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView requestWithURLCString:]): + * Plugins/WebNetscapePluginEmbeddedView.m: + (-[WebNetscapePluginEmbeddedView didStart]): + * Plugins/WebNetscapePluginStream.mm: + * Plugins/WebPluginController.mm: + (-[WebPluginController pluginView:receivedResponse:]): + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]): + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::provisionalLoadStarted): + * WebView/WebFrame.mm: + (-[WebFrame _canCachePage]): + (+[WebFrame _timeOfLastCompletedLoad]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _reloadForPluginChanges]): + (-[WebFrame stopLoading]): + +2006-11-07 Anders Carlsson + + Reviewed by Geoff. + + Use the WebCore editing enums. + + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge undoNameForEditAction:]): + * WebView/WebHTMLView.m: + (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:granularity:]): + (-[WebHTMLView _deleteSelection]): + (-[WebHTMLView moveBackward:]): + (-[WebHTMLView moveBackwardAndModifySelection:]): + (-[WebHTMLView moveDown:]): + (-[WebHTMLView moveDownAndModifySelection:]): + (-[WebHTMLView moveForward:]): + (-[WebHTMLView moveForwardAndModifySelection:]): + (-[WebHTMLView moveLeft:]): + (-[WebHTMLView moveLeftAndModifySelection:]): + (-[WebHTMLView moveRight:]): + (-[WebHTMLView moveRightAndModifySelection:]): + (-[WebHTMLView moveToBeginningOfDocument:]): + (-[WebHTMLView moveToBeginningOfDocumentAndModifySelection:]): + (-[WebHTMLView moveToBeginningOfSentence:]): + (-[WebHTMLView moveToBeginningOfSentenceAndModifySelection:]): + (-[WebHTMLView moveToBeginningOfLine:]): + (-[WebHTMLView moveToBeginningOfLineAndModifySelection:]): + (-[WebHTMLView moveToBeginningOfParagraph:]): + (-[WebHTMLView moveToBeginningOfParagraphAndModifySelection:]): + (-[WebHTMLView moveToEndOfDocument:]): + (-[WebHTMLView moveToEndOfDocumentAndModifySelection:]): + (-[WebHTMLView moveToEndOfSentence:]): + (-[WebHTMLView moveToEndOfSentenceAndModifySelection:]): + (-[WebHTMLView moveToEndOfLine:]): + (-[WebHTMLView moveToEndOfLineAndModifySelection:]): + (-[WebHTMLView moveToEndOfParagraph:]): + (-[WebHTMLView moveToEndOfParagraphAndModifySelection:]): + (-[WebHTMLView moveParagraphBackwardAndModifySelection:]): + (-[WebHTMLView moveParagraphForwardAndModifySelection:]): + (-[WebHTMLView moveUp:]): + (-[WebHTMLView moveUpAndModifySelection:]): + (-[WebHTMLView moveWordBackward:]): + (-[WebHTMLView moveWordBackwardAndModifySelection:]): + (-[WebHTMLView moveWordForward:]): + (-[WebHTMLView moveWordForwardAndModifySelection:]): + (-[WebHTMLView moveWordLeft:]): + (-[WebHTMLView moveWordLeftAndModifySelection:]): + (-[WebHTMLView moveWordRight:]): + (-[WebHTMLView moveWordRightAndModifySelection:]): + (-[WebHTMLView pageUp:]): + (-[WebHTMLView pageDown:]): + (-[WebHTMLView pageUpAndModifySelection:]): + (-[WebHTMLView pageDownAndModifySelection:]): + (-[WebHTMLView _expandSelectionToGranularity:]): + (-[WebHTMLView selectParagraph:]): + (-[WebHTMLView selectLine:]): + (-[WebHTMLView selectSentence:]): + (-[WebHTMLView selectWord:]): + (-[WebHTMLView _applyStyleToSelection:withUndoAction:]): + (-[WebHTMLView _applyParagraphStyleToSelection:withUndoAction:]): + (-[WebHTMLView _toggleBold]): + (-[WebHTMLView _toggleItalic]): + (-[WebHTMLView pasteFont:]): + (-[WebHTMLView changeFont:]): + (-[WebHTMLView changeAttributes:]): + (-[WebHTMLView _undoActionFromColorPanelWithSelector:]): + (-[WebHTMLView changeColor:]): + (-[WebHTMLView _alignSelectionUsingCSSValue:withUndoAction:]): + (-[WebHTMLView alignCenter:]): + (-[WebHTMLView alignJustified:]): + (-[WebHTMLView alignLeft:]): + (-[WebHTMLView alignRight:]): + (-[WebHTMLView _deleteWithDirection:SelectionController::granularity:killRing:isTypingAction:]): + (-[WebHTMLView deleteForward:]): + (-[WebHTMLView deleteBackward:]): + (-[WebHTMLView deleteWordForward:]): + (-[WebHTMLView deleteWordBackward:]): + (-[WebHTMLView deleteToBeginningOfLine:]): + (-[WebHTMLView deleteToEndOfLine:]): + (-[WebHTMLView deleteToBeginningOfParagraph:]): + (-[WebHTMLView deleteToEndOfParagraph:]): + (-[WebHTMLView subscript:]): + (-[WebHTMLView superscript:]): + (-[WebHTMLView unscript:]): + (-[WebHTMLView underline:]): + (-[WebHTMLView deleteToMark:]): + (-[WebHTMLView toggleBaseWritingDirection:]): + (-[WebHTMLView changeBaseWritingDirection:]): + (-[WebHTMLView _canSmartCopyOrDelete]): + (-[WebTextCompleteController doCompletion]): + (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): + * WebView/WebView.mm: + (-[WebView setTypingStyle:]): + (-[WebView applyStyle:]): + +2006-11-06 Geoffrey Garen + + Reviewed by Tim Hatcher. + + Removed ScreenClient. It was highly unpopular, risking my midterm re-election. + + None of Screen's responsibilities require up-calls to WebKit or delegates, + so WebCore can handle it all. + + * WebCoreSupport/WebChromeClient.mm: + (WebChromeClient::setWindowRect): + (WebChromeClient::windowRect): + * WebCoreSupport/WebScreenClient.h: Removed. + * WebCoreSupport/WebScreenClient.mm: Removed. + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebView.mm: + (-[WebView _commonInitializationWithFrameName:groupName:]): + +2006-11-06 Geoffrey Garen + + Reviewed by Darin. + + Accidentally rolled out this change when removing the WebPageBridge. Now + putting it back. + + * WebView/WebView.mm: + (-[WebView _commonInitializationWithFrameName:groupName:]): + +2006-11-05 Geoffrey Garen + + Reviewed by Maciej, Darin, Anders. + + Removed the Page bridge. Beefed up Chrome. Added Screen and ScreenClient. + + (WebChromeClient::pageRect): It may seem weird for the page to ask the Chrome/ChromeClient + about its own dimensions. The idea here is that we're asking the Chrome how + much space it has devoted to the page. We have API for this (-webViewContentRect), but + it was documented incorrectly (even Safari used it wrong), so we don't use + it anymore. Once we fix our API/documentation, we can return to making a + delegate callback to ask for the page's size. + (WebChromeClient::createWindow): Changed to take a FrameLoadRequest with + an appropriate referrer, instead of making up its own. + (WebChromeClient::createModalDialog): Changed to take a FrameLoadRequest with + an appropriate referrer, instead of broken out parcels. + * WebCoreSupport/WebPageBridge.h: Removed. Dead Code. + * WebCoreSupport/WebPageBridge.mm: Removed. Dead Code. + * WebCoreSupport/WebScreenClient.h: Added. + * WebCoreSupport/WebScreenClient.mm: Added. + * WebView/WebView.mm: Added NULL checks for new _private->page, since + it's not NULL-safe like the bridge was, and it gets cleared before + dealloc. + +2006-11-06 Graham Dennis + + Reviewed by Tim Hatcher. + + Part of patch for http://bugs.webkit.org/show_bug.cgi?id=11323 + Link dragging behaviour does not obey WebKitEditableLinkBehavior WebPref + + * DefaultDelegates/WebDefaultUIDelegate.m: + (-[NSApplication webView:dragSourceActionMaskForPoint:]): Logic moved to + WebHTMLView's _mayStartDragAtEventLocation + * Misc/WebElementDictionary.m: added isLiveLink + (+[WebElementDictionary initializeLookupTable]): + (-[WebElementDictionary _isLiveLink]): + * WebView/WebHTMLView.m: + (-[WebHTMLView _mayStartDragAtEventLocation:]): Editable links should + only be followed if isLiveLink is true + (-[WebHTMLView _isMoveDrag:]): A drag of a live editable link is not + a move + (-[WebHTMLView draggingUpdatedWithDraggingInfo:actionMask:]): + (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): + * WebView/WebView.mm: added WebElementLinkIsLiveKey + * WebView/WebViewPrivate.h: ditto + +2006-11-04 Maciej Stachowiak + + Reviewed by Oliver. + + - removed unneeded (and obsolete) header includes + + * WebCoreSupport/WebFrameBridge.mm: + * WebView/WebFrame.mm: + +2006-11-05 Darin Adler + + - WebKit part of Frame.h check-in (forgot to land it) + + * WebCoreSupport/WebFrameBridge.h: + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge textViewWasFirstResponderAtMouseDownTime:]): + (-[WebFrameBridge shouldInterruptJavaScript]): + (-[WebFrameBridge saveDocumentState:]): + (-[WebFrameBridge previousKeyViewOutsideWebFrameViews]): + (-[WebFrameBridge valueForKey:keys:values:]): + (-[WebFrameBridge getObjectCacheSize]): + (-[WebFrameBridge startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): + (-[WebFrameBridge mayStartDragAtEventLocation:]): + (-[WebFrameBridge canGoBackOrForward:]): + (-[WebFrameBridge goBackOrForward:]): + (-[WebFrameBridge print]): + (-[WebFrameBridge getAppletInView:]): + (-[WebFrameBridge pollForAppletInView:]): + (-[WebFrameBridge respondToChangedContents]): + (-[WebFrameBridge respondToChangedSelection]): + (-[WebFrameBridge setIsSelected:forView:]): + +2006-11-04 Darin Adler + + Reviewed by Maciej. + + - converted more of the loader machinery to work with cross-platform + data structures instead of Macintosh-specific ones + + store the computed user agent string as a WebCore::String instead + of an NSString to avoid overhead converting it every time we get it + + * COM/WebFrame.cpp: + (WebFrame::initWithName): + * ChangeLog: + * Misc/WebElementDictionary.m: + (-[WebElementDictionary _image]): + (-[WebElementDictionary _targetWebFrame]): + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchWillPerformClientRedirect): + (WebFrameLoaderClient::shouldTreatURLAsSameAsCurrent): + (WebFrameLoaderClient::setTitle): + (WebFrameLoaderClient::userAgent): + (WebFrameLoaderClient::actionDictionary): + * WebCoreSupport/WebPageBridge.mm: + (WebCore::if): + * WebView/WebDataSource.mm: + (-[WebDataSource _URL]): + (-[WebDataSource _URLForHistory]): + (-[WebDataSource unreachableURL]): + * WebView/WebHTMLView.m: + (-[WebHTMLView elementAtPoint:allowShadowContent:]): + * WebView/WebPDFView.mm: + (-[WebPDFView PDFViewWillClickOnLink:withURL:]): + (-[WebPDFView _path]): + * WebView/WebView.mm: + (-[WebViewPrivate init]): + (-[WebViewPrivate dealloc]): + (-[WebViewPrivate finalize]): + (-[WebView _preferencesChangedNotification:]): + (-[WebView _cachedResponseForURL:]): + (-[WebView setApplicationNameForUserAgent:]): + (-[WebView setCustomUserAgent:]): + (-[WebView customUserAgent]): + (-[WebView userAgentForURL:]): + (-[WebView _computeUserAgent]): + (-[WebView WebCore::]): + * WebView/WebViewInternal.h: + +2006-11-04 Bertrand Guiheneuf + + Reviewed by Maciej, tweaked and landed by Alexey (using a patch by Don Gibson). + + http://bugs.webkit.org/show_bug.cgi?id=11433 + Fixes to get WebKit to run on Windows; implemented AffineTransformCairo. + + * COM/WebFrame.cpp: + (WebFrame::initWithName): + (WebFrame::loadDataSource): + (WebFrame::receivedRedirect): + (WebFrame::receivedResponse): + (WebFrame::didReceiveData): + (WebFrame::receivedAllData): + Use resource handles now. Do not start doc loader by hand anymore. + Handle didReceiveData() callback instead of receivedData() which + is deprecated in implementation of ResourceHandleClient + + * COM/WebFrame.h: + * COM/WebView.cpp: + Applied ResourceLoader --> ResourceHandle renaming + + * WebKit.vcproj/WebKit.rc: + Got rid of MFC dependencies (build fix for VCExpress). + + * WebKit.vcproj/WebKit.vcproj: + Added platform/graphics platform/network and platform/network/win + to headers search paths + +2006-11-03 Geoffrey Garen + + Forgot to add these two files. Oops. + + * WebCoreSupport/WebChromeClient.h: Added. + * WebCoreSupport/WebChromeClient.mm: Added. + +2006-11-02 Geoffrey Garen + + Reviewed by Darin, Beth. + + First cut at factoring Page's UIDelegate-related functions into Chrome + and ChromeClient. + + Layout tests pass. + + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebPageBridge.mm: + * WebKit.xcodeproj/project.pbxproj: + +2006-11-02 Timothy Hatcher + + Reviewed by Brady. + + Adding outdent to the WebView responder forwarding list. + Also add outdent to WebHTMLView.h and WebViewPrivate.h. + + * WebView/WebHTMLView.h: + * WebView/WebViewPrivate.h: + * WebView/WebView.mm: + +2006-11-01 John Sullivan + + Reviewed by Adam Roben + + - fixed Crash reloading PDF file in new Safari (or closing a window containing a PDF file) + + * WebView/WebPDFView.mm: + (-[WebPDFView initWithFrame:]): + Retain the PDFSubview in the code path where we just obtain it by asking the PDFPreviewView for it. We were + unconditionally releasing it in dealloc, but only retaining it in one of the two code paths. + +2006-10-31 Mark Rowe + + Reviewed by Maciej. + + Fix null pointer dereference while running editing/pasteboard/drag-drop-modifies-page.html + + * Misc/WebElementDictionary.m: + (-[WebElementDictionary _image]): Add null check. + +2006-10-31 Beth Dakin + + Reviewed by Maciej. + + This creates local functions for the remaining WebElementDictionary + members that calls into HitTestResult instead of doing magical + things with the Objective-C DOM classes. + + * ChangeLog: + * Misc/WebElementDictionary.m: + (addLookupKey): The values of the dictionary are now just + selectors. They used to be WebElementMethods which were + WebElementTargetObjects associated with selectors, but none of that + is needed any more. + (+[WebElementDictionary initializeLookupTable]): All selectors are + now local functions, no more WebElementTargetObjects. + (-[WebElementDictionary objectForKey:]): No more target objects! + (-[WebElementDictionary _domNode]): Call into HitTestResult member + variable. + (-[WebElementDictionary _altDisplayString]): Same. + (-[WebElementDictionary _image]): Same. + (-[WebElementDictionary _absoluteImageURL]): Same. + (-[WebElementDictionary _title]): Same. + (-[WebElementDictionary _absoluteLinkURL]): Same. + (-[WebElementDictionary _targetWebFrame]): Same. + (-[WebElementDictionary _titleDisplayString]): Same. + (-[WebElementDictionary _textContent]): Same. + +2006-10-31 Geoffrey Garen + + Reviewed by Alice. + + Moved some Editing code from WebKit, the bridge, and WebCore::Frame down + to WebCore::Editor. + + * WebCoreSupport/WebFrameBridge.mm: + * WebView/WebHTMLView.m: + (-[WebHTMLView _shouldDeleteRange:]): + (-[WebHTMLView _canCopy]): + (-[WebHTMLView _canCut]): + (-[WebHTMLView _canDelete]): + (-[WebHTMLView _canPaste]): + (-[WebHTMLView _canEdit]): + (-[WebHTMLView _canEditRichly]): + (-[WebHTMLView _isEditable]): + (-[WebHTMLView _isSelectionInPasswordField]): + (-[NSArray validateUserInterfaceItem:]): + (-[NSArray _expandSelectionToGranularity:]): + +2006-10-31 John Sullivan + + Reviewed by Beth and Adam + + Display a tooltip when hovering over marked bad grammar. + + * Misc/WebElementDictionary.m: + (+[WebElementDictionary initializeLookupTable]): + support spelling tool tip + (-[WebElementDictionary _spellingToolTip]): + new method, calls through to HitTestResult + + * WebView/WebHTMLView.m: + (-[WebHTMLView _updateMouseoverWithEvent:]): + Check for a spelling tool tip; if found, prefer it over the other possible tool tips. + Check for empty strings instead of just nil strings being, since values from + WebElementDictionary are empty strings. + + * WebView/WebViewPrivate.h: + declare new string constant WebElementSpellingToolTipKey + * WebView/WebView.mm: + define new string constant WebElementSpellingToolTipKey + +2006-10-31 Beth Dakin + + Reviewed by Maciej. + + Small tweaks to WebKit because of http://bugs.webkit.org/ + show_bug.cgi?id=11461 HitTestResult should be split into + HitTestRequest and HitTestResult + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebHTMLView.m: + (-[WebHTMLView elementAtPoint:allowShadowContent:]): The + HitTestResult initializer now just takes a point. + +2006-10-31 Darin Adler + + Reviewed by Brady. + + - got "action dictionary" code out of FrameLoader, + replacing with a class called NavigationAction + + * WebCoreSupport/WebFrameLoaderClient.h: Changed parameter types to NavigationAction. + Made elementForEvent non-virtual. Added actionDictionary function. + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): Changed parameter type, + and used actionDictionary to make the action dictionary. + (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): Ditto. + (WebFrameLoaderClient::actionDictionary): Added. Code that was originally in WebCore + that creates the action dictionary (from a NavigationAction). + + * WebView/WebFrame.mm: (-[WebFrame _loadItem:withLoadType:]): Use NavigationAction + instead of a dictionary for the action parameters. + +2006-10-31 Marvin Decker + + Reviewed by Maciej. + + - fixed "Stop and reload don't work on the WebView" + http://bugs.webkit.org/show_bug.cgi?id=11285 + + * COM/WebFrame.cpp: + (WebFrame::stopLoading): Implement. + * COM/WebView.cpp: + (WebView::stopLoading): ditto + (WebView::reload): ditto + +2006-10-30 Darin Adler + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): + Fix comment. + +2006-10-30 John Sullivan + + Reviewed by Geoff Garen + + * WebView/WebHTMLView.m: + (-[NSArray checkSpelling:]): + removed code to update spelling panel; WebCore handles that now + (-[NSArray showGuessPanel:]): + ditto + +2006-10-30 John Sullivan + + * English.lproj/WebViewEditingContextMenu.nib/info.nib: + * English.lproj/WebViewEditingContextMenu.nib/objects.nib: + Another wording change to match framework, post-Tiger: + "Check Spelling" -> "Check Document Now" + +2006-10-30 John Sullivan + + Reviewed by Geoff Garen. + + Moved spelling-related methods from bridge to EditorClient. Added one not-yet-used + grammar-related method. + + * WebCoreSupport/WebEditorClient.h: + declare overrides of isContinuousSpellCheckingEnabled(), spellCheckerDocumentTag(), and new + isGrammarCheckingEnabled() + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::isContinuousSpellCheckingEnabled): + implement by calling through to WebView + (WebEditorClient::isGrammarCheckingEnabled): + ditto + (WebEditorClient::spellCheckerDocumentTag): + ditto + + * WebCoreSupport/WebFrameBridge.mm: + removed bridge equivalents of these methods + +2006-10-30 Geoffrey Garen + + Reviewed by Beth. + + Fixed nil-deref crash that I saw while using TOT (not sure how to repro, + but the debugger confirmed the cause). + + * WebView/WebFrame.mm: + (core): Added check for NULL bridge. + +2006-10-30 Geoffrey Garen + + Reviewed by Darin. + + Removed a number of editing and selection methods from the bridge. + + I moved cross-platform editing and selection code into WebCore::Editor and + WebCore::SelectionController, respecitvely. + + All of the seemingly new code here is just code grabbed from WebCore or + merged from WebCoreFrameBridge. + + I changed one piece of internal API: we now pass around Ranges in places + where we used to pass around broken out components of Ranges. + + I also added WebCore XPATH_SUPPORT AND SVG_SUPPORT #defines to the project. + Since we now include WebCore headers that depend on these #defines, we need + to keep in sync with them, to avoid binary incompatibility. + +2006-10-30 Darin Adler + + Reviewed by John Sullivan. + + - work toward removing Objective-C data types from FrameLoader.h: + removed NSDate, NSString, WebCorePageState, WebCoreResourceLoader, + and WebCoreResourceHandle + - moved bodyBackgroundColor function here from Frame + + * History/WebHistoryItem.m: (+[WebHistoryItem _closeObjectsInPendingPageCaches]): + Updated for change in WebCorePageState. + + * WebCoreSupport/WebFrameBridge.mm: Removed saveDocumentToPageCache method. + + * WebCoreSupport/WebFrameLoaderClient.h: Changed NSDate to double. + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::invalidateCurrentItemPageCache): Moved the code that was + formerly in invalidatePageCache: on the bridge here. + (WebFrameLoaderClient::dispatchWillPerformClientRedirect): Added code to make the + NSDate here. + (WebFrameLoaderClient::createPageCache): Restructured code to create the + WebCorePageState object directly instead of calling saveDocumentToPageCache on + the bridge. + + * WebView/WebFrame.mm: (-[WebFrame _bodyBackgroundColor]): Rewrote this to work + directly with the DOM and renderers rather than using a function on Frame. + +2006-10-29 Maciej Stachowiak + + Reviewed by Anders. + + - added ResourceResponse class and didReceiveResponse delegate call + + * WebCoreSupport/WebFrameBridge.mm: Removed no longer needed + expiresTimeForResponse: method. + +2006-10-29 Darin Adler + + - update for the WebCore rename + + * WebCoreSupport/WebFrameLoaderClient.mm: + * WebView/WebFrame.mm: + +2006-10-29 Darin Adler + + - update for the WebCore renames + + * Plugins/WebNetscapePluginStream.mm: + * Plugins/WebPluginController.mm: + * WebCoreSupport/WebFrameBridge.mm: + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::willUseArchive): + (WebFrameLoaderClient::isArchiveLoadPending): + (WebFrameLoaderClient::cancelPendingArchiveLoad): + (WebFrameLoaderClient::deliverArchivedResources): + * WebCoreSupport/WebPageBridge.mm: + (-[WebPageBridge canRunModalNow]): + * WebView/WebDocumentLoaderMac.h: + * WebView/WebFrame.mm: + * WebView/WebHTMLRepresentation.m: + * WebView/WebView.mm: + +2006-10-29 Darin Adler + + Rubber stamped by Adam Roben. + + - renamed WebCore's WebFrameLoaderClient to match the class name inside it + + * WebCoreSupport/WebFrameBridge.mm: Update include. + * WebCoreSupport/WebFrameLoaderClient.h: Ditto. + +2006-10-29 Darin Adler + + Reviewed by Maciej. + + - eliminate use of NSArray to carry form data around + (the code in this framework was actually using the NSArray to hold a single + NSData anyway, so I just went back to an NSData for now) + + - also fixed http://bugs.webkit.org/show_bug.cgi?id=11444 + REGRESSION (r17378): Exception (-[NSCFDictionary setObject:forKey:]: + attempt to insert nil value) when submitting a form with an empty + uninitialized field + + * History/WebHistoryItem.m: + (-[WebHistoryItem _setFormInfoFromRequest:]): + (-[WebHistoryItem formData]): + * History/WebHistoryItemPrivate.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchWillSubmitForm): + * WebView/WebFrame.mm: + (-[WebFrame _loadItem:withLoadType:]): + +2006-10-28 Darin Adler + + Reviewed by Maciej. + + - eliminated the use of Objective-C for the policy decider + machinery, obviating the need for WebPolicyDeciderMac + + - moved the defersLoading flag from WebView to WebCore::Page + + - removed unused copies of four methods that in the frame bridge; + the actually-used copies are in the page bridge + + - updated for rename of PassRefPtr::release to releaseRef + + * WebView/WebPolicyDeciderMac.h: Removed. + * WebView/WebPolicyDeciderMac.m: Removed. + * WebKit.xcodeproj/project.pbxproj: Updated for removal. + + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView sendEvent:]): + * Plugins/WebNetscapePluginStream.mm: + * WebCoreSupport/WebFrameBridge.mm: + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (getWebView): + (WebFrameLoaderClient::WebFrameLoaderClient): + (WebFrameLoaderClient::willCloseDocument): + (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType): + (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): + (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): + (WebFrameLoaderClient::cancelPolicyCheck): + (WebFrameLoaderClient::dispatchWillSubmitForm): + (WebFrameLoaderClient::setDefersLoading): + (WebFrameLoaderClient::setTitle): + (WebFrameLoaderClient::deliverArchivedResourcesAfterDelay): + (WebFrameLoaderClient::deliverArchivedResources): + (WebFrameLoaderClient::setUpPolicyListener): + (WebFrameLoaderClient::receivedPolicyDecison): + (WebFrameLoaderClient::userAgent): + (-[WebFramePolicyListener initWithWebCoreFrame:]): + (-[WebFramePolicyListener invalidate]): + (-[WebFramePolicyListener dealloc]): + (-[WebFramePolicyListener finalize]): + (-[WebFramePolicyListener receivedPolicyDecision:]): + (-[WebFramePolicyListener ignore]): + (-[WebFramePolicyListener download]): + (-[WebFramePolicyListener use]): + (-[WebFramePolicyListener continue]): + * WebCoreSupport/WebPageBridge.mm: + (-[WebPageBridge runModal]): + * WebView/WebArchiver.m: + (+[WebArchiver archiveSelectionInFrame:]): + * WebView/WebFormDelegate.h: + * WebView/WebFormDelegate.m: + (+[WebFormDelegate _sharedWebFormDelegate]): + (-[WebFormDelegate textFieldDidBeginEditing:inFrame:]): + (-[WebFormDelegate textFieldDidEndEditing:inFrame:]): + (-[WebFormDelegate textDidChangeInTextField:inFrame:]): + (-[WebFormDelegate textDidChangeInTextArea:inFrame:]): + (-[WebFormDelegate frame:sourceFrame:willSubmitForm:withValues:submissionListener:]): + * WebView/WebFrame.mm: + (-[WebFrame _loadURL:referrer:intoChild:]): + (-[WebFrame _isFrameSet]): + * WebView/WebFrameInternal.h: + * WebView/WebFrameView.mm: + (-[WebFrameView _shouldDrawBorder]): + * WebView/WebHTMLView.m: + (-[NSArray knowsPageRange:]): + * WebView/WebView.mm: + (-[WebView _formDelegate]): + * WebView/WebViewInternal.h: + * WebView/WebViewPrivate.h: + +2006-10-28 Adam Roben + + Reviewed by Maciej. + + Fix layout tests that broke after r17399. Mitz discovered that the + failures were caused by HitTestResult::m_point being uninitialized + much of the time. HitTestResults are now always constructed with a + point. + + * WebView/WebHTMLView.m: + (-[WebHTMLView elementAtPoint:allowShadowContent:]): Pass point to + HitTestResult constructor. + +2006-10-28 Beth Dakin + + Reviewed by Darin. + + This is the WebKit half of pushing the guts of elementAtPoint and + WebElementDictionary into WebCore. Among other things, this patch + makes WebElementDictionary.m and WebHTMLView.m Objective-C++ + + * MigrateHeaders.make: Add DOMElementInternal.h to the list of + headers to migrate. + * Misc/WebElementDictionary.h: Replaced DOMNode, DOMElement, and + NSPoint member variables with a HitTestResult member variable. + * Misc/WebElementDictionary.m: + (addLookupKey): Formatting. + (-[WebElementDictionary initWithHitTestResult:]): Constructor just + takes a HitTestResult now and sets the member variable. + (-[WebElementDictionary dealloc]): delete HitTestResult. + (-[WebElementDictionary finalize]): Address HitTestResult. + (-[WebElementDictionary _domNode]): Use HitTestResult and call into + WebCore. + (-[WebElementDictionary objectForKey:]): Same. + (-[WebElementDictionary _webFrame]): Same. + (-[WebElementDictionary _targetWebFrame]): Same. + (-[WebElementDictionary _title]): Same. + (-[WebElementDictionary _imageRect]): Same. + (-[WebElementDictionary _isSelected]): Same. + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebFrame.mm: + (core): Convert from DOMNode* to Node* + (kit): Convert from Node* to DOMNode* + * WebView/WebFrameInternal.h: Support for the above. + * WebView/WebHTMLView.m: + (-[WebHTMLView elementAtPoint:allowShadowContent:]): Call directly + into Frame.cpp to get HitTestResult. + +2006-10-27 Maciej Stachowiak + + Reviewed by John & Adam. + + - various performance improvements for resource delegate dispatch. + + - avoid any ObjC messaging when fetching the WebView + - avoid ObjC calls to WebView to get resource load delegate and impl cache + - cache actual method pointers, not just the fact that the method is present + - added a new SPI resource load delegate method which allows clients to get + just one message in case of synchronously loading from memory cache; if this + is implemented you don't get the normal delegate calls in that case. + - various other minor tweaks + + * WebCoreSupport/WebFrameBridge.h: + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (getWebView): + (WebFrameLoaderClient::hasBackForwardList): + (WebFrameLoaderClient::resetBackForwardList): + (WebFrameLoaderClient::privateBrowsingEnabled): + (WebFrameLoaderClient::updateHistoryForStandardLoad): + (WebFrameLoaderClient::resetAfterLoadError): + (WebFrameLoaderClient::download): + (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache): + (WebFrameLoaderClient::dispatchIdentifierForInitialRequest): + (WebFrameLoaderClient::dispatchWillSendRequest): + (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): + (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge): + (WebFrameLoaderClient::dispatchDidReceiveResponse): + (WebFrameLoaderClient::dispatchDidReceiveContentLength): + (WebFrameLoaderClient::dispatchDidFinishLoading): + (WebFrameLoaderClient::dispatchDidFailLoading): + (WebFrameLoaderClient::dispatchDidHandleOnloadEvents): + (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): + (WebFrameLoaderClient::dispatchDidCancelClientRedirect): + (WebFrameLoaderClient::dispatchWillPerformClientRedirect): + (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage): + (WebFrameLoaderClient::dispatchWillClose): + (WebFrameLoaderClient::dispatchDidReceiveIcon): + (WebFrameLoaderClient::dispatchDidStartProvisionalLoad): + (WebFrameLoaderClient::dispatchDidReceiveTitle): + (WebFrameLoaderClient::dispatchDidCommitLoad): + (WebFrameLoaderClient::dispatchDidFailProvisionalLoad): + (WebFrameLoaderClient::dispatchDidFailLoad): + (WebFrameLoaderClient::dispatchDidFinishLoad): + (WebFrameLoaderClient::dispatchDidFirstLayout): + (WebFrameLoaderClient::dispatchCreatePage): + (WebFrameLoaderClient::dispatchShow): + (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType): + (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): + (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): + (WebFrameLoaderClient::dispatchUnableToImplementPolicy): + (WebFrameLoaderClient::dispatchWillSubmitForm): + (WebFrameLoaderClient::dispatchDidLoadMainResource): + (WebFrameLoaderClient::progressStarted): + (WebFrameLoaderClient::progressCompleted): + (WebFrameLoaderClient::incrementProgress): + (WebFrameLoaderClient::completeProgress): + (WebFrameLoaderClient::setMainFrameDocumentReady): + (WebFrameLoaderClient::startDownload): + (WebFrameLoaderClient::willChangeTitle): + (WebFrameLoaderClient::didChangeTitle): + (WebFrameLoaderClient::mainFrameURL): + (WebFrameLoaderClient::frameLoadCompleted): + * WebCoreSupport/WebPageBridge.h: + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebFrame.mm: + (frame): + (core): + (kit): + (getWebView): + (-[WebFrame _addBackForwardItemClippedAtTarget:]): + (-[WebFrame _canCachePage]): + (-[WebFrame _purgePageCache]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _goToItem:withLoadType:]): + (-[WebFrame _updateBackground]): + (-[WebFrame _clearSelectionInOtherFrames]): + (-[WebFrame _isMainFrame]): + (-[WebFrame webView]): + * WebView/WebResourceLoadDelegatePrivate.h: Added. + * WebView/WebView.mm: + (-[WebView _cacheResourceLoadDelegateImplementations]): + (WebViewGetResourceLoadDelegate): + (WebViewGetResourceLoadDelegateImplementations): + * WebView/WebViewInternal.h: + * WebView/WebViewPrivate.h: + +2006-10-27 Geoffrey Garen + + Reviewed by Maciej. + + Moved some WebCoreFrameBridge functions into FrameLoader. + + * WebView/WebFrame.mm: + (-[WebFrame _numPendingOrLoadingRequests:]): + +2006-10-27 Timothy Hatcher + + Reviewed by Beth. + + Make a DerivedSource/Webkit directory to store migrated + internal headers from WebCore. + + * MigrateHeaders.make: + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebFrame.mm: import the new migrated DOM*Internal.h headers + +2006-10-27 John Sullivan + + Reviewed by Anders + + - fixed http://bugs.webkit.org/show_bug.cgi?id=11439 + REGRESSION: Another page loading crash + + * WebView/WebFrame.mm: + (-[WebFrame _createItem:]): + Handle nil documentLoader the way we did before ObjC->C++ changes + +2006-10-27 John Sullivan + + Reviewed by Anders + + * WebView/WebHTMLView.m: + (-[NSArray checkSpelling:]): + call advanceToNextMisspelling directly on FrameMac, bypassing bridge + (-[NSArray showGuessPanel:]): + ditto + +2006-10-27 Darin Adler + + - build fix + + * WebCoreSupport/WebFrameLoaderClient.mm: Corrected header file name. + +2006-10-27 Darin Adler + + Reviewed by Maciej. + + - moved methods that are there just to be called by the frame loader client into the client + in an attempt to get back some of the speed we lost yesterday + + * DefaultDelegates/WebDefaultResourceLoadDelegate.m: + (-[WebDefaultResourceLoadDelegate webView:resource:didReceiveAuthenticationChallenge:fromDataSource:]): + (-[WebDefaultResourceLoadDelegate webView:resource:didCancelAuthenticationChallenge:fromDataSource:]): + * WebCoreSupport/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameLoaderClient.mm: + (dataSource): + (decisionListener): + (WebFrameLoaderClient::WebFrameLoaderClient): + (WebFrameLoaderClient::hasWebView): + (WebFrameLoaderClient::hasFrameView): + (WebFrameLoaderClient::hasBackForwardList): + (WebFrameLoaderClient::resetBackForwardList): + (WebFrameLoaderClient::provisionalItemIsTarget): + (WebFrameLoaderClient::loadProvisionalItemFromPageCache): + (WebFrameLoaderClient::invalidateCurrentItemPageCache): + (WebFrameLoaderClient::privateBrowsingEnabled): + (WebFrameLoaderClient::makeDocumentView): + (WebFrameLoaderClient::makeRepresentation): + (WebFrameLoaderClient::setDocumentViewFromPageCache): + (WebFrameLoaderClient::forceLayout): + (WebFrameLoaderClient::forceLayoutForNonHTML): + (WebFrameLoaderClient::updateHistoryForCommit): + (WebFrameLoaderClient::updateHistoryForBackForwardNavigation): + (WebFrameLoaderClient::updateHistoryForReload): + (WebFrameLoaderClient::updateHistoryForStandardLoad): + (WebFrameLoaderClient::updateHistoryForInternalLoad): + (WebFrameLoaderClient::updateHistoryAfterClientRedirect): + (WebFrameLoaderClient::setCopiesOnScroll): + (WebFrameLoaderClient::tokenForLoadErrorReset): + (WebFrameLoaderClient::resetAfterLoadError): + (WebFrameLoaderClient::doNotResetAfterLoadError): + (WebFrameLoaderClient::detachedFromParent1): + (WebFrameLoaderClient::detachedFromParent2): + (WebFrameLoaderClient::detachedFromParent3): + (WebFrameLoaderClient::detachedFromParent4): + (WebFrameLoaderClient::loadedFromPageCache): + (WebFrameLoaderClient::download): + (WebFrameLoaderClient::dispatchIdentifierForInitialRequest): + (WebFrameLoaderClient::dispatchWillSendRequest): + (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): + (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge): + (WebFrameLoaderClient::dispatchDidReceiveResponse): + (WebFrameLoaderClient::dispatchDidReceiveContentLength): + (WebFrameLoaderClient::dispatchDidFinishLoading): + (WebFrameLoaderClient::dispatchDidFailLoading): + (WebFrameLoaderClient::dispatchDidHandleOnloadEvents): + (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): + (WebFrameLoaderClient::dispatchDidCancelClientRedirect): + (WebFrameLoaderClient::dispatchWillPerformClientRedirect): + (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage): + (WebFrameLoaderClient::dispatchWillClose): + (WebFrameLoaderClient::dispatchDidReceiveIcon): + (WebFrameLoaderClient::dispatchDidStartProvisionalLoad): + (WebFrameLoaderClient::dispatchDidReceiveTitle): + (WebFrameLoaderClient::dispatchDidCommitLoad): + (WebFrameLoaderClient::dispatchDidFailProvisionalLoad): + (WebFrameLoaderClient::dispatchDidFailLoad): + (WebFrameLoaderClient::dispatchDidFinishLoad): + (WebFrameLoaderClient::dispatchDidFirstLayout): + (WebFrameLoaderClient::dispatchCreatePage): + (WebFrameLoaderClient::dispatchShow): + (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType): + (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): + (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): + (WebFrameLoaderClient::dispatchUnableToImplementPolicy): + (WebFrameLoaderClient::dispatchWillSubmitForm): + (WebFrameLoaderClient::dispatchDidLoadMainResource): + (WebFrameLoaderClient::clearLoadingFromPageCache): + (WebFrameLoaderClient::isLoadingFromPageCache): + (WebFrameLoaderClient::revertToProvisionalState): + (WebFrameLoaderClient::setMainDocumentError): + (WebFrameLoaderClient::clearUnarchivingState): + (WebFrameLoaderClient::progressStarted): + (WebFrameLoaderClient::progressCompleted): + (WebFrameLoaderClient::incrementProgress): + (WebFrameLoaderClient::completeProgress): + (WebFrameLoaderClient::setMainFrameDocumentReady): + (WebFrameLoaderClient::startDownload): + (WebFrameLoaderClient::willChangeTitle): + (WebFrameLoaderClient::didChangeTitle): + (WebFrameLoaderClient::committedLoad): + (WebFrameLoaderClient::finishedLoading): + (WebFrameLoaderClient::finalSetupForReplace): + (WebFrameLoaderClient::cancelledError): + (WebFrameLoaderClient::cannotShowURLError): + (WebFrameLoaderClient::interruptForPolicyChangeError): + (WebFrameLoaderClient::cannotShowMIMETypeError): + (WebFrameLoaderClient::fileDoesNotExistError): + (WebFrameLoaderClient::shouldFallBack): + (WebFrameLoaderClient::mainFrameURL): + (WebFrameLoaderClient::setDefersCallbacks): + (WebFrameLoaderClient::willUseArchive): + (WebFrameLoaderClient::isArchiveLoadPending): + (WebFrameLoaderClient::cancelPendingArchiveLoad): + (WebFrameLoaderClient::clearArchivedResources): + (WebFrameLoaderClient::canHandleRequest): + (WebFrameLoaderClient::canShowMIMEType): + (WebFrameLoaderClient::representationExistsForURLScheme): + (WebFrameLoaderClient::generatedMIMETypeForURLScheme): + (WebFrameLoaderClient::elementForEvent): + (WebFrameLoaderClient::createPolicyDecider): + (WebFrameLoaderClient::frameLoadCompleted): + (WebFrameLoaderClient::restoreScrollPositionAndViewState): + (WebFrameLoaderClient::provisionalLoadStarted): + (WebFrameLoaderClient::shouldTreatURLAsSameAsCurrent): + (WebFrameLoaderClient::addHistoryItemForFragmentScroll): + (WebFrameLoaderClient::didFinishLoad): + (WebFrameLoaderClient::prepareForDataSourceReplacement): + (WebFrameLoaderClient::createDocumentLoader): + (WebFrameLoaderClient::setTitle): + (WebFrameLoaderClient::canUseArchivedResource): + (WebFrameLoaderClient::deliverArchivedResourcesAfterDelay): + (WebFrameLoaderClient::deliverArchivedResources): + (WebFrameLoaderClient::createPageCache): + * WebView/WebFrame.mm: + (-[NSView setWebFrame:]): + (-[WebFrame _createItem:]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _recursiveGoToItem:fromItem:withLoadType:]): + (-[WebFrame _loadURL:referrer:intoChild:]): + (-[WebFrame _saveScrollPositionAndViewStateToItem:]): + (-[WebFrame _hasSelection]): + (-[WebFrame _clearSelection]): + (-[WebFrame _setProvisionalItem:]): + (-[WebFrame _setPreviousItem:]): + (-[WebFrame _setCurrentItem:]): + (-[WebFrame loadArchive:]): + * WebView/WebFrameInternal.h: + * WebView/WebHTMLView.m: + (-[WebHTMLView _topHTMLView]): + * WebView/WebHTMLViewPrivate.h: + +2006-10-26 Geoffrey Garen + + Reviewed by Darin, Maciej. + + Removed many uses of NSString * from WebCore. + + Changed a few files to ObjC++ for compatiblity with new WebCore methods + taking WebCore::Strings as arguments. + + Added a static_cast to make the c++ compiler happy. + +2006-10-26 John Sullivan + + Reviewed by Anders + + * WebView/WebFrame.mm: + now includes and + (-[WebFrame _unmarkAllBadGrammar]): + filled in guts + (-[WebFrame _unmarkAllMisspellings]): + rewrote to call Document directly, bypassing bridge + +2006-10-26 John Sullivan + + * English.lproj/WebViewEditingContextMenu.nib/info.nib: + * English.lproj/WebViewEditingContextMenu.nib/objects.nib: + + Changed "Spelling" to "Spelling and Grammar" in context menu for post-Tiger. + +=== Safari-521.29 === + +2006-10-26 John Sullivan + + No review, just two localized string changes. + + * WebView/WebHTMLView.m: + (-[NSArray validateUserInterfaceItem:]): + changed "Show/Hide Spelling" to "Show/Hide Spelling and Grammar" post-Tiger to match framework change + + * English.lproj/Localizable.strings: + updated for these changes + +2006-10-25 Darin Adler + + Reviewed by Anders. + + - removed 55 methods from WebCoreFrameBridge + - changed callers to use Frame directly instead + - put FrameLoaderTypes.h types into the WebCore namespace + - first steps to get FrameLoader.h ready for cross-platform duty + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + (-[WebDefaultUIDelegate openNewWindowWithURL:element:]): + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView requestWithURLCString:]): + (-[WebBaseNetscapePluginView loadPluginRequest:]): + (-[WebBaseNetscapePluginView getVariable:value:]): + * Plugins/WebNetscapePluginEmbeddedView.m: + (-[WebNetscapePluginEmbeddedView didStart]): + * Plugins/WebNetscapePluginStream.mm: + * Plugins/WebPluginContainerCheck.m: + (-[WebPluginContainerCheck _continueWithPolicy:]): + (-[WebPluginContainerCheck _isForbiddenFileLoad]): + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::shouldDeleteRange): + (WebEditorClient::shouldShowDeleteInterface): + * WebCoreSupport/WebFrameBridge.mm: + (-[WebFrameBridge webView]): + (-[WebFrameBridge finishInitializingWithFrameName:view:]): + (-[WebFrameBridge createWindowWithURL:]): + (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]): + (-[WebFrameBridge windowObjectCleared]): + (-[WebFrameBridge createModalDialogWithURL:]): + * WebCoreSupport/WebFrameLoaderClient.mm: + (WebFrameLoaderClient::dispatchCreatePage): + (WebFrameLoaderClient::dispatchWillSubmitForm): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebArchiver.m: + (+[WebArchiver archiveSelectionInFrame:]): + * WebView/WebDataSource.mm: + (-[WebDataSource _documentFragmentWithImageResource:]): + (-[WebDataSource _imageElementWithImageResource:]): + * WebView/WebEditingDelegatePrivate.h: + * WebView/WebFrame.mm: + (core): + (kit): + (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]): + (-[WebFrame _canCachePage]): + (-[WebFrame _childFramesMatchItem:]): + (-[WebFrame _URLsMatchItem:]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _recursiveGoToItem:fromItem:withLoadType:]): + (-[WebFrame _viewWillMoveToHostWindow:]): + (-[WebFrame _viewDidMoveToHostWindow]): + (-[WebFrame _addChild:]): + (-[WebFrame _saveDocumentAndScrollState]): + (-[WebFrame _numPendingOrLoadingRequests:]): + (-[WebFrame _reloadForPluginChanges]): + (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]): + (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]): + (-[WebFrame _initWithWebFrameView:webView:coreFrame:]): + (-[WebFrame _documentViews]): + (-[WebFrame _updateBackground]): + (-[WebFrame _unmarkAllMisspellings]): + (-[WebFrame _hasSelection]): + (-[WebFrame _atMostOneFrameHasSelection]): + (-[WebFrame _findFrameWithSelection]): + (-[WebFrame _frameLoader]): + (-[WebFrame _isDescendantOfFrame:]): + (-[WebFrame _setShouldCreateRenderers:]): + (-[WebFrame _bodyBackgroundColor]): + (-[WebFrame init]): + (-[WebFrame initWithName:webFrameView:webView:]): + (-[WebFrame dealloc]): + (-[WebFrame finalize]): + (-[WebFrame name]): + (-[WebFrame webView]): + (-[WebFrame DOMDocument]): + (-[WebFrame frameElement]): + (-[WebFrame findFrameNamed:]): + (-[WebFrame parentFrame]): + (-[WebFrame childFrames]): + (-[WebFrame _invalidateCurrentItemPageCache]): + (-[WebFrame _dispatchCreateWebViewWithRequest:]): + (-[WebFrame _dispatchSourceFrame:willSubmitForm:withValues:submissionDecider:]): + (-[WebFrame _prepareForDataSourceReplacement]): + (-[WebFrame _provisionalLoadStarted]): + * WebView/WebFrameInternal.h: + * WebView/WebHTMLRepresentation.m: + (-[WebHTMLRepresentation DOMDocument]): + (-[WebHTMLRepresentation attributedText]): + * WebView/WebHTMLView.m: + (-[WebHTMLView _documentRange]): + (-[WebHTMLView _documentFragmentWithPaths:]): + (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]): + (-[WebHTMLView _selectedRange]): + (-[WebHTMLView _updateMouseoverWithEvent:]): + (-[WebHTMLView _canEditRichly]): + (-[WebHTMLView _hasSelection]): + (-[WebHTMLView _hasSelectionOrInsertionPoint]): + (-[WebHTMLView _hasInsertionPoint]): + (-[WebHTMLView _isEditable]): + (-[WebHTMLView _isSelectionInPasswordField]): + (-[WebHTMLView _lookUpInDictionaryFromMenu:]): + (-[WebHTMLView _selectionDraggingImage]): + (-[WebHTMLView _canIncreaseSelectionListLevel]): + (-[WebHTMLView _canDecreaseSelectionListLevel]): + (-[WebHTMLView _updateActiveState]): + (-[NSArray readSelectionFromPasteboard:]): + (-[NSArray validateUserInterfaceItem:]): + (-[NSArray maintainsInactiveSelection]): + (-[NSArray menuForEvent:]): + (-[NSArray scrollWheel:]): + (-[NSArray acceptsFirstMouse:]): + (-[NSArray shouldDelayWindowOrderingForEvent:]): + (-[NSArray mouseDown:]): + (-[NSArray mouseDragged:]): + (-[NSArray mouseUp:]): + (-[NSArray keyDown:]): + (-[NSArray keyUp:]): + (-[NSArray centerSelectionInVisibleArea:]): + (-[NSArray _selectionStartFontAttributesAsRTF]): + (-[NSArray _emptyStyle]): + (-[NSArray performKeyEquivalent:]): + (-[NSArray indent:]): + (-[NSArray outdent:]): + (-[WebHTMLView cut:]): + (-[WebHTMLView paste:]): + (-[WebHTMLView _selectRangeInMarkedText:]): + (-[WebTextCompleteController doCompletion]): + (-[WebHTMLView selectionRect]): + (-[WebHTMLView selectionImageForcingWhiteText:]): + (-[WebHTMLView selectionImageRect]): + (-[WebHTMLView attributedString]): + (-[WebHTMLView _isMoveDrag]): + (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): + * WebView/WebPolicyDelegate.mm: + (-[WebPolicyDecisionListener _usePolicy:]): + (-[WebPolicyDecisionListener use]): + (-[WebPolicyDecisionListener ignore]): + (-[WebPolicyDecisionListener download]): + (-[WebPolicyDecisionListener continue]): + * WebView/WebScriptDebugDelegate.m: + (-[WebScriptCallFrame _initWithFrame:initWithWebFrame:]): + (-[WebScriptCallFrame globalObject]): + * WebView/WebView.mm: + (-[WebView _attachScriptDebuggerToAllFrames]): + (-[WebView _detachScriptDebuggerFromAllFrames]): + (-[WebView windowScriptObject]): + (incrementFrame): + (-[WebView searchFor:direction:caseSensitive:wrap:]): + (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]): + (-[WebView removeDragCaret]): + (-[WebView setScriptDebugDelegate:]): + (-[WebView scriptDebugDelegate]): + (-[WebView shouldClose]): + (-[WebView selectedDOMRange]): + (-[WebView styleDeclarationWithText:]): + +2006-10-25 Geoffrey Garen + + Reviewed by Adam. + + Renamed WebFrameLoader to FrameLoader, to match class name. + + * Plugins/WebBaseNetscapePluginView.mm: + * Plugins/WebNetscapePluginStream.mm: + * Plugins/WebPluginController.mm: + * WebCoreSupport/WebFrameBridge.mm: + * WebView/WebDataSource.mm: + * WebView/WebFrame.mm: + * WebView/WebPDFView.mm: + * WebView/WebPolicyDelegate.mm: + * WebView/WebView.mm: + +2006-10-25 Mark Rowe + + Reviewed by Anders. + + Build fix for the Buildbot. + + * WebView/WebHTMLView.m: + (-[NSArray _addToStyle:fontA:fontB:]): Explicit cast. + +2006-10-25 Maciej Stachowiak + + Reviewed by Anders. + + REGRESSION: form resubmission warning occurs twice, then Safari crashes in autorelease pool + REGRESSION: Crash occurs when dismissing the "Would you like to save this password" sheet + + * WebView/WebPolicyDeciderMac.m: + (-[WebPolicyDeciderMac dealloc]): release the listener, don't dealloc it + +2006-10-24 Anders Carlsson + + Reviewed by Darin. + + * WebKitPrefix.h: + Include FastMalloc.h from C++ code. + +2006-10-24 Darin Adler + + Reviewed by Anders. + + - converted WebFrameLoaderClient to C++ + - renamed frame->frameLoader() function to frame->loader() + - renamed [bridge impl] to [bridge _frame] + - removed some bridge methods + + * Plugins/WebNetscapePluginStream.mm: + * WebCoreSupport/WebEditorClient.mm: + * WebCoreSupport/WebFrameLoaderClient.h: Added. + (WebFrameLoaderClient::webFrame): + * WebCoreSupport/WebFrameLoaderClient.mm: Added. + (WebFrameLoaderClient::detachFrameLoader): + (WebFrameLoaderClient::hasWebView): + (WebFrameLoaderClient::hasFrameView): + (WebFrameLoaderClient::hasBackForwardList): + (WebFrameLoaderClient::resetBackForwardList): + (WebFrameLoaderClient::provisionalItemIsTarget): + (WebFrameLoaderClient::loadProvisionalItemFromPageCache): + (WebFrameLoaderClient::invalidateCurrentItemPageCache): + (WebFrameLoaderClient::privateBrowsingEnabled): + (WebFrameLoaderClient::makeDocumentView): + (WebFrameLoaderClient::makeRepresentation): + (WebFrameLoaderClient::setDocumentViewFromPageCache): + (WebFrameLoaderClient::forceLayout): + (WebFrameLoaderClient::forceLayoutForNonHTML): + (WebFrameLoaderClient::updateHistoryForCommit): + (WebFrameLoaderClient::updateHistoryForBackForwardNavigation): + (WebFrameLoaderClient::updateHistoryForReload): + (WebFrameLoaderClient::updateHistoryForStandardLoad): + (WebFrameLoaderClient::updateHistoryForInternalLoad): + (WebFrameLoaderClient::updateHistoryAfterClientRedirect): + (WebFrameLoaderClient::setCopiesOnScroll): + (WebFrameLoaderClient::tokenForLoadErrorReset): + (WebFrameLoaderClient::resetAfterLoadError): + (WebFrameLoaderClient::doNotResetAfterLoadError): + (WebFrameLoaderClient::detachedFromParent1): + (WebFrameLoaderClient::detachedFromParent2): + (WebFrameLoaderClient::detachedFromParent3): + (WebFrameLoaderClient::detachedFromParent4): + (WebFrameLoaderClient::loadedFromPageCache): + (WebFrameLoaderClient::download): + (WebFrameLoaderClient::dispatchIdentifierForInitialRequest): + (WebFrameLoaderClient::dispatchWillSendRequest): + (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): + (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge): + (WebFrameLoaderClient::dispatchDidReceiveResponse): + (WebFrameLoaderClient::dispatchDidReceiveContentLength): + (WebFrameLoaderClient::dispatchDidFinishLoading): + (WebFrameLoaderClient::dispatchDidFailLoading): + (WebFrameLoaderClient::dispatchDidHandleOnloadEvents): + (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): + (WebFrameLoaderClient::dispatchDidCancelClientRedirect): + (WebFrameLoaderClient::dispatchWillPerformClientRedirect): + (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage): + (WebFrameLoaderClient::dispatchWillClose): + (WebFrameLoaderClient::dispatchDidReceiveIcon): + (WebFrameLoaderClient::dispatchDidStartProvisionalLoad): + (WebFrameLoaderClient::dispatchDidReceiveTitle): + (WebFrameLoaderClient::dispatchDidCommitLoad): + (WebFrameLoaderClient::dispatchDidFailProvisionalLoad): + (WebFrameLoaderClient::dispatchDidFailLoad): + (WebFrameLoaderClient::dispatchDidFinishLoad): + (WebFrameLoaderClient::dispatchDidFirstLayout): + (WebFrameLoaderClient::dispatchCreatePage): + (WebFrameLoaderClient::dispatchShow): + (WebFrameLoaderClient::dispatchDecidePolicyForMIMEType): + (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): + (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): + (WebFrameLoaderClient::dispatchUnableToImplementPolicy): + (WebFrameLoaderClient::dispatchWillSubmitForm): + (WebFrameLoaderClient::dispatchDidLoadMainResource): + (WebFrameLoaderClient::clearLoadingFromPageCache): + (WebFrameLoaderClient::isLoadingFromPageCache): + (WebFrameLoaderClient::revertToProvisionalState): + (WebFrameLoaderClient::setMainDocumentError): + (WebFrameLoaderClient::clearUnarchivingState): + (WebFrameLoaderClient::progressStarted): + (WebFrameLoaderClient::progressCompleted): + (WebFrameLoaderClient::incrementProgress): + (WebFrameLoaderClient::completeProgress): + (WebFrameLoaderClient::setMainFrameDocumentReady): + (WebFrameLoaderClient::startDownload): + (WebFrameLoaderClient::willChangeTitle): + (WebFrameLoaderClient::didChangeTitle): + (WebFrameLoaderClient::committedLoad): + (WebFrameLoaderClient::finishedLoading): + (WebFrameLoaderClient::finalSetupForReplace): + (WebFrameLoaderClient::cancelledError): + (WebFrameLoaderClient::cannotShowURLError): + (WebFrameLoaderClient::interruptForPolicyChangeError): + (WebFrameLoaderClient::cannotShowMIMETypeError): + (WebFrameLoaderClient::fileDoesNotExistError): + (WebFrameLoaderClient::shouldFallBack): + (WebFrameLoaderClient::mainFrameURL): + (WebFrameLoaderClient::setDefersCallbacks): + (WebFrameLoaderClient::willUseArchive): + (WebFrameLoaderClient::isArchiveLoadPending): + (WebFrameLoaderClient::cancelPendingArchiveLoad): + (WebFrameLoaderClient::clearArchivedResources): + (WebFrameLoaderClient::canHandleRequest): + (WebFrameLoaderClient::canShowMIMEType): + (WebFrameLoaderClient::representationExistsForURLScheme): + (WebFrameLoaderClient::generatedMIMETypeForURLScheme): + (WebFrameLoaderClient::elementForEvent): + (WebFrameLoaderClient::createPolicyDecider): + (WebFrameLoaderClient::frameLoadCompleted): + (WebFrameLoaderClient::restoreScrollPositionAndViewState): + (WebFrameLoaderClient::provisionalLoadStarted): + (WebFrameLoaderClient::shouldTreatURLAsSameAsCurrent): + (WebFrameLoaderClient::addHistoryItemForFragmentScroll): + (WebFrameLoaderClient::didFinishLoad): + (WebFrameLoaderClient::prepareForDataSourceReplacement): + (WebFrameLoaderClient::createDocumentLoader): + (WebFrameLoaderClient::setTitle): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDataSource.mm: + (-[WebDataSource webFrame]): + * WebView/WebFrame.mm: + (frame): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _reloadForPluginChanges]): + (-[WebFrame _initWithWebFrameView:webView:bridge:]): + (-[WebFrame _frameLoader]): + (-[WebFrame provisionalDataSource]): + (-[WebFrame dataSource]): + (-[WebFrame parentFrame]): + (-[WebFrame _provisionalLoadStarted]): + * WebView/WebFrameInternal.h: + * WebView/WebHTMLRepresentation.m: + (-[WebHTMLRepresentation finishedLoadingWithDataSource:]): + * WebView/WebHTMLView.m: + (-[WebHTMLView _lookUpInDictionaryFromMenu:]): + (-[NSArray validateUserInterfaceItem:]): + (-[NSArray scrollWheel:]): + (-[NSArray acceptsFirstMouse:]): + (-[NSArray shouldDelayWindowOrderingForEvent:]): + (-[NSArray _selectionStartFontAttributesAsRTF]): + (-[NSArray changeBaseWritingDirection:]): + (-[NSArray indent:]): + (-[NSArray outdent:]): + (-[WebHTMLView copy:]): + (-[WebHTMLView cut:]): + (-[WebHTMLView paste:]): + * WebView/WebView.mm: + (-[WebView _dashboardRegions]): + (-[WebView setProhibitsMainFrameScrolling:]): + (-[WebView _setInViewSourceMode:]): + (-[WebView _inViewSourceMode]): + (-[WebView setEditable:]): + +2006-10-24 John Sullivan + + Reviewed by Kevin Decker + + - fixed "Spelling..." menu item should be "Show/Hide Spelling" post-Tiger, to match AppKit + + * WebView/WebHTMLView.m: + (-[NSArray validateUserInterfaceItem:]): + post-Tiger, update the menu item text to "Show Spelling"/"Hide Spelling" based on whether + the spelling panel is already showing. Also, removed else's after returns, and removed + braces around one-line if clauses. + (-[NSArray showGuessPanel:]): + post-Tiger, make this item hide the spelling panel if it's already showing + + * English.lproj/Localizable.strings: + updated for this change + +2006-10-24 Timothy Hatcher + + Reviewed by Anders. + + 'WebHTMLView' may not respond to '-_webView' + + * Misc/WebNSViewExtras.h: + * Misc/WebNSViewExtras.m: + (-[NSView _webView]): + +2006-10-24 Brady Eidson + + Reviewed by Anders + + http://bugs.webkit.org/show_bug.cgi?id=11406 - Crash in [WebFrame dataSource] + In the transition to ObjC++ we lost alot of our free nil checking that we must now do manually + to prevent null dereferencing. + + * WebView/WebFrame.mm: + (-[WebFrame provisionalDataSource]): + (-[WebFrame dataSource]): + +2006-10-24 John Sullivan + + Reviewed by Darin + + Initial plumbing for grammar checking. No actual grammar are checked at this time. + + * English.lproj/WebViewEditingContextMenu.nib/classes.nib: + * English.lproj/WebViewEditingContextMenu.nib/info.nib: + * English.lproj/WebViewEditingContextMenu.nib/objects.nib: + Added grammar-checking item, reworded to match changes in framework. This will be used + post-Tiger. + + * English.lproj/WebViewEditingContextMenuOld.nib/classes.nib: Added. + * English.lproj/WebViewEditingContextMenuOld.nib/info.nib: Added. + * English.lproj/WebViewEditingContextMenuOld.nib/objects.nib: Added. + Copy of WebViewEditingContextMenu.nib, unchanged. This will be used on Tiger. + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]): + Choose the right context menu based on BUILDING_ON_TIGER. + + * WebView/WebPreferenceKeysPrivate.h: + declare grammar-related NSUserDefault value + + * WebView/WebViewPrivate.h: + declare grammar-related methods + + * WebView/WebView.mm: + declare static BOOL grammarCheckingEnabled + (-[WebViewPrivate init]): + initialize grammarCheckingEnabled to NSUserDefaults value + (-[WebView validateUserInterfaceItem:]): + validate toggleGrammarChecking: menu item + (-[WebView isGrammarCheckingEnabled]): + return value of grammarCheckingEnabled + (-[WebView setGrammarCheckingEnabled:]): + set value of grammarCheckingEnabled, call frame to remove existing bad grammar markers + (-[WebView toggleGrammarChecking:]): + flip the value + + * WebView/WebFrameInternal.h: + * WebView/WebFrame.mm: + (-[WebFrame _unmarkAllBadGrammar]): + new placeholder method, does nothing yet + + * WebView/WebHTMLViewInternal.h: + declare grammar-related methods + + * WebView/WebHTMLView.m: + (-[NSArray validateUserInterfaceItem:]): + validate toggleGrammarChecking: menu item + (-[WebHTMLView isGrammarCheckingEnabled]): + new method, calls through to WebView + (-[WebHTMLView setGrammarCheckingEnabled:]): + ditto + (-[WebHTMLView toggleGrammarChecking:]): + ditto + + * English.lproj/StringsNotToBeLocalized.txt: + Updated for these changes + + * WebKit.xcodeproj/project.pbxproj: + updated for new files + +2006-10-23 Darin Adler + + Reviewed by Geoff. + + - converted WebDocumentLoader to C++ + + * Plugins/WebPluginController.mm: + (-[WebPluginController pluginView:receivedResponse:]): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDataSource.mm: + (-[WebDataSourcePrivate dealloc]): + (-[WebDataSource _mainDocumentError]): + (-[WebDataSource _URL]): + (-[WebDataSource _loadFromPageCache:]): + (-[WebDataSource _bridge]): + (-[WebDataSource _URLForHistory]): + (-[WebDataSource _documentLoader]): + (-[WebDataSource _initWithDocumentLoader:]): + (-[WebDataSource initWithRequest:]): + (-[WebDataSource data]): + (-[WebDataSource webFrame]): + (-[WebDataSource initialRequest]): + (-[WebDataSource request]): + (-[WebDataSource response]): + (-[WebDataSource textEncodingName]): + (-[WebDataSource isLoading]): + (-[WebDataSource unreachableURL]): + (-[WebDataSource webArchive]): + * WebView/WebDataSourceInternal.h: + * WebView/WebDocumentLoaderMac.h: + * WebView/WebDocumentLoaderMac.mm: + (WebDocumentLoaderMac::WebDocumentLoaderMac): + (WebDocumentLoaderMac::setDataSource): + (WebDocumentLoaderMac::dataSource): + (WebDocumentLoaderMac::attachToFrame): + (WebDocumentLoaderMac::detachFromFrame): + * WebView/WebFrame.mm: + (-[WebFrame _createItem:]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _addChild:]): + (dataSource): + (-[WebFrame _dataSourceForDocumentLoader:]): + (-[WebFrame _addDocumentLoader:toUnarchiveState:]): + (-[WebFrame loadArchive:]): + (-[WebFrame _updateHistoryForReload]): + (-[WebFrame _updateHistoryForStandardLoad]): + (-[WebFrame _updateHistoryForInternalLoad]): + (-[WebFrame _dispatchIdentifierForInitialRequest:fromDocumentLoader:]): + (-[WebFrame _dispatchResource:willSendRequest:redirectResponse:fromDocumentLoader:]): + (-[WebFrame _dispatchDidReceiveAuthenticationChallenge:forResource:fromDocumentLoader:]): + (-[WebFrame _dispatchDidCancelAuthenticationChallenge:forResource:fromDocumentLoader:]): + (-[WebFrame _dispatchResource:didReceiveResponse:fromDocumentLoader:]): + (-[WebFrame _dispatchResource:didReceiveContentLength:fromDocumentLoader:]): + (-[WebFrame _dispatchResource:didFinishLoadingFromDocumentLoader:]): + (-[WebFrame _dispatchResource:didFailLoadingWithError:fromDocumentLoader:]): + (-[WebFrame _dispatchDidLoadMainResourceForDocumentLoader:]): + (-[WebFrame _clearLoadingFromPageCacheForDocumentLoader:]): + (-[WebFrame _isDocumentLoaderLoadingFromPageCache:]): + (-[WebFrame _makeRepresentationForDocumentLoader:]): + (-[WebFrame _revertToProvisionalStateForDocumentLoader:]): + (-[WebFrame _setMainDocumentError:forDocumentLoader:]): + (-[WebFrame _clearUnarchivingStateForLoader:]): + (-[WebFrame _willChangeTitleForDocument:]): + (-[WebFrame _didChangeTitleForDocument:]): + (-[WebFrame _finishedLoadingDocument:]): + (-[WebFrame _committedLoadWithDocumentLoader:data:]): + (-[WebFrame _documentLoader:setMainDocumentError:]): + (-[WebFrame _finalSetupForReplaceWithDocumentLoader:]): + (-[WebFrame _createDocumentLoaderWithRequest:]): + (-[WebFrame _provisionalLoadStarted]): + * WebView/WebFrameInternal.h: + * WebView/WebHTMLRepresentation.m: + (-[WebHTMLRepresentation title]): + * WebView/WebView.mm: + (-[WebView _mainFrameOverrideEncoding]): + +2006-10-23 Geoffrey Garen + + RS by Maciej. + + Gave ObjC++ files .mm extension instead of .m. + + * WebCoreSupport/WebPageBridge.m: Removed. + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDocumentLoaderMac.m: Removed. + +2006-10-23 Darin Adler + + Reviewed by Maciej. + + - converted WebFrameLoader to C++ + + * History/WebHistoryItem.m: + (+[WebHistoryItem _closeObjectsInPendingPageCaches]): + * Plugins/WebBaseNetscapePluginView.mm: + (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): + * Plugins/WebNetscapePluginStream.mm: + (-[WebNetscapePluginStream start]): + (-[WebNetscapePluginStream stop]): + * Plugins/WebPluginController.mm: + (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]): + (-[WebPluginController pluginView:receivedResponse:]): + * WebCoreSupport/WebFrameBridge.h: + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDataSource.mm: + (-[WebDataSource _loadFromPageCache:]): + (-[WebDataSource _webView]): + (-[WebDataSource webFrame]): + * WebView/WebDocumentLoaderMac.h: + * WebView/WebDocumentLoaderMac.m: + (-[WebDocumentLoaderMac dealloc]): + (-[WebDocumentLoaderMac attachToFrame]): + (-[WebDocumentLoaderMac detachFromFrame]): + * WebView/WebFrame.mm: + (+[WebFrame _timeOfLastCompletedLoad]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _loadURL:referrer:intoChild:]): + (-[WebFrame _currentBackForwardListItemToResetTo]): + (-[WebFrame _itemForRestoringDocState]): + (-[WebFrame _frameLoader]): + (-[WebFrame _firstLayoutDone]): + (-[WebFrame _loadType]): + (-[WebFrame provisionalDataSource]): + (-[WebFrame dataSource]): + (-[WebFrame loadRequest:]): + (-[WebFrame loadArchive:]): + (-[WebFrame stopLoading]): + (-[WebFrame reload]): + (-[WebFrame _updateHistoryForCommit]): + (-[WebFrame _updateHistoryForReload]): + (-[WebFrame _updateHistoryForInternalLoad]): + (-[WebFrame _deliverArchivedResourcesAfterDelay]): + (-[WebFrame _willUseArchiveForRequest:originalURL:loader:]): + (-[WebFrame _deliverArchivedResources]): + (-[WebFrame _prepareForDataSourceReplacement]): + (-[WebFrame _provisionalLoadStarted]): + * WebView/WebFrameInternal.h: + * WebView/WebHTMLView.m: + (-[WebHTMLView _clearLastHitViewIfSelf]): + (-[WebHTMLView _updateMouseoverWithEvent:]): + (-[NSArray removeMouseMovedObserverUnconditionally]): + (-[NSArray removeMouseMovedObserver]): + (-[NSArray viewWillMoveToWindow:]): + (-[NSArray viewDidMoveToWindow]): + (-[WebHTMLView _canMakeTextSmaller]): + (-[WebHTMLView _canMakeTextLarger]): + (-[WebHTMLView _canMakeTextStandardSize]): + * WebView/WebPDFView.mm: + (-[WebPDFView PDFViewWillClickOnLink:withURL:]): + * WebView/WebView.mm: + (-[WebView _close]): + (-[WebView setDefersCallbacks:]): + (-[WebView setCustomTextEncodingName:]): + +2006-10-23 Geoffrey Garen + + Reviewed by Bradee. + + Moved some page-level operations from WebFrameBridge to WebPageBridge. + + * WebCoreSupport/WebFrameBridge.m: + * WebCoreSupport/WebPageBridge.m: + (-[WebPageBridge createModalDialogWithURL:referrer:]): + (-[WebPageBridge canRunModal]): + (-[WebPageBridge canRunModalNow]): + (-[WebPageBridge runModal]): + * WebKit.xcodeproj/project.pbxproj: Made WebPageBridge.m ObjC++ to support + WebCore #includes. + +2006-10-23 John Sullivan + + * WebKitPrefix.h: + Removed redundant definition of BUILDING_ON_TIGER that I just added. It turns out this had + already been added between the last time I updated in this tree and when I needed it locally. + +2006-10-23 John Sullivan + + Reviewed by Anders + + * WebKit.xcodeproj/project.pbxproj: + Move WebKitPrefix.h from Misc group to top level, to match WebCore + + * WebKitPrefix.h: + defined BUILDING_ON_TIGER a la WebCore, in preparation for future use of post-Tiger API + +2006-10-23 Timothy Hatcher + + Reviewed by Darin. + + Rename the now ObjC++ files to be .mm and remove the explicit file types. + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]): + * English.lproj/StringsNotToBeLocalized.txt: + * Plugins/WebBaseNetscapePluginView.m: Removed. + * Plugins/WebNetscapePluginStream.m: Removed. + * Plugins/WebPluginController.m: Removed. + * WebCoreSupport/WebFrameBridge.m: Removed. + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDataSource.m: Removed. + * WebView/WebFrame.m: Removed. + * WebView/WebFrameView.m: Removed. + * WebView/WebPDFView.m: Removed. + * WebView/WebPolicyDelegate.m: Removed. + * WebView/WebView.m: Removed. + +2006-10-23 Timothy Hatcher + + Reviewed by Darin. + + Move the undef try/catch to WebKitPrefix.h and include algorithm so we get + exception_defines.h and so the undef of try/catch works. + + Break off the BGRA to ARGB code into WebGraphicsExtras.c, this lets + WebBaseNetscapePluginView.m safely compile as ObjC++ and not cause the Accelerate + framework to complain about C++ exceptions being disabled. + + * Misc/WebGraphicsExtras.c: Added. + (WebConvertBGRAToARGB): + * Misc/WebGraphicsExtras.h: Added. + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView _aglOffscreenImageForDrawingInRect:]): + * WebKit.xcodeproj/project.pbxproj: + * WebKitPrefix.h: + * WebView/WebView.m: + +2006-10-22 Sam Weinig + + Reviewed by Tim H. + + - Add DOMHTMLFormElementPrivate.h to the project. + + * MigrateHeaders.make: + +2006-10-21 Darin Adler + + Reviewed by Adele. + + - convert WebLoader and its 3 subclasses to C++ + + * Plugins/WebNetscapePluginStream.h: + * Plugins/WebNetscapePluginStream.m: + (-[WebNetscapePluginStream dealloc]): + (-[WebNetscapePluginStream finalize]): + (-[WebNetscapePluginStream start]): + (-[WebNetscapePluginStream cancelLoadWithError:]): + (-[WebNetscapePluginStream stop]): + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge canRunModalNow]): + * WebView/WebFrame.m: + (-[WebFramePrivate dealloc]): + (-[WebFramePrivate finalize]): + (frame): Changed from uppercase to lowercase so that it won't conflict + with the WebCore class named Frame. + (-[WebFrame _firstChildFrame]): + (-[WebFrame _lastChildFrame]): + (-[WebFrame _previousSiblingFrame]): + (-[WebFrame _nextSiblingFrame]): + (-[WebFrame _traverseNextFrameStayWithin:]): + (-[WebFrame _immediateChildFrameNamed:]): + (-[WebFrame _nextFrameWithWrap:]): + (-[WebFrame _previousFrameWithWrap:]): + (-[WebFrame findFrameNamed:]): + (-[WebFrame parentFrame]): + (-[WebFrame _dispatchSourceFrame:willSubmitForm:withValues:submissionDecider:]): + (-[WebFrame _deliverArchivedResourcesAfterDelay]): + (-[WebFrame _willUseArchiveForRequest:originalURL:loader:]): + (-[WebFrame _archiveLoadPendingForLoader:]): + (-[WebFrame _cancelPendingArchiveLoadForLoader:]): + (-[WebFrame _clearArchivedResources]): + (-[WebFrame _deliverArchivedResources]): + +2006-10-21 Darin Adler + + Reviewed by Anders. + + - fix http://bugs.webkit.org/show_bug.cgi?id=10328 + REGRESSION: frame leak reported by buildbot + + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::WebEditorClient): Don't retain the web view. + (WebEditorClient::~WebEditorClient): Don't release the web view. + (WebEditorClient::setWebView): Ditto. + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge finishInitializingWithFrameName:view:]): Added. Common code for use by both + init methods below. + (-[WebFrameBridge initMainFrameWithPage:frameName:view:]): Changed to use new method. + Also added comment pointing out design flaw -- we attach the client to the web view here, + but we need to be sure to detach in case the web view is deallocated first. + (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]): Ditto. + +2006-10-21 Darin Adler + + Reviewed by Adam. + + - http://bugs.webkit.org/show_bug.cgi?id=11376 + build scripts should invoke make with "-j" option for multiple processors + + * WebKit.xcodeproj/project.pbxproj: Pass -j `sysctl -n hw.ncpu` to make. + +2006-10-21 Timothy Hatcher + + Reviewed by Geoff. + + HTML Editing: Basic table editing and culling + + Initial implementaltion of table deletion user interface: + * Adds a new editing delegate method, webView:shouldShowDeleteInterfaceForElement:. + * The new delegate method is called from the new shouldShowDeleteInterface EditorClient function. + + * DefaultDelegates/WebDefaultEditingDelegate.m: + (-[WebDefaultEditingDelegate webView:shouldShowDeleteInterfaceForElement:]): + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::WebEditorClient): + (WebEditorClient::shouldDeleteRange): + (WebEditorClient::shouldShowDeleteInterface): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebEditingDelegatePrivate.h: Added. + +2006-10-21 Alice Liu + + Reviewed by Maciej. + + fix leaks. + + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::setWebView): + only change webview if its different + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]): + actually use the client allocated in the line above instead of + allocation again, duh. + +2006-10-21 Alice Liu + + Build fix. + + * WebCoreSupport/WebEditorClient.h: + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::setWebView): + +2006-10-20 Alice Liu + + Reviewed by Tim Hatcher. + + Fixed a problem where the webview passed to the EditorClient wasn't valid yet. + + * WebCoreSupport/WebEditorClient.h: + (WebEditorClient::setWebView): + added webview setter + + * WebCoreSupport/WebEditorClient.mm: + (WebEditorClient::WebEditorClient): + add default constructor + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge initMainFrameWithPage:frameName:view:]): + use [page webView] since _webview isn't valid yet + (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]): + use webview setter on editorclient + +2006-10-20 David Hyatt + + Tweak cache sizes so that they are back to the way they were, + except for < 512, which will stay doubled. + + Reviewed by Tim H. + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge getObjectCacheSize]): + +2006-10-20 Alice Liu + + Reviewed by Maciej. + + Adding knowledge of EditorClient to WebKit + + * WebCoreSupport/WebEditorClient.h: Added. + + * WebCoreSupport/WebEditorClient.mm: Added. + (WebEditorClient::WebEditorClient): + (WebEditorClient::~WebEditorClient): + (WebEditorClient::shouldDeleteRange): + Implementation of mac EditorClient + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge initMainFrameWithPage:frameName:view:]): + (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]): + create an editor client to pass down the chain of constructors + + * WebKit.xcodeproj/project.pbxproj: + Added related EditorClient files + + * WebKitPrefix.h: + Added tiger build flag in order to make certain private headers from webcore compile successfully + +2006-10-20 Darin Adler + + - rolled out my loader change; caused world leak and possibly a plug-in crash + +2006-10-20 Darin Adler + + Reviewed by Adele. + + - convert WebLoader and its 3 subclasses to C++ + + * Plugins/WebNetscapePluginStream.h: + * Plugins/WebNetscapePluginStream.m: + (-[WebNetscapePluginStream dealloc]): + (-[WebNetscapePluginStream finalize]): + (-[WebNetscapePluginStream start]): + (-[WebNetscapePluginStream cancelLoadWithError:]): + (-[WebNetscapePluginStream stop]): + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge canRunModalNow]): + * WebView/WebFrame.m: + (-[WebFramePrivate dealloc]): + (-[WebFramePrivate finalize]): + (frame): Changed from uppercase to lowercase so that it won't conflict + with the WebCore class named Frame. + (-[WebFrame _firstChildFrame]): + (-[WebFrame _lastChildFrame]): + (-[WebFrame _previousSiblingFrame]): + (-[WebFrame _nextSiblingFrame]): + (-[WebFrame _traverseNextFrameStayWithin:]): + (-[WebFrame _immediateChildFrameNamed:]): + (-[WebFrame _nextFrameWithWrap:]): + (-[WebFrame _previousFrameWithWrap:]): + (-[WebFrame findFrameNamed:]): + (-[WebFrame parentFrame]): + (-[WebFrame _dispatchSourceFrame:willSubmitForm:withValues:submissionDecider:]): + (-[WebFrame _deliverArchivedResourcesAfterDelay]): + (-[WebFrame _willUseArchiveForRequest:originalURL:loader:]): + (-[WebFrame _archiveLoadPendingForLoader:]): + (-[WebFrame _cancelPendingArchiveLoadForLoader:]): + (-[WebFrame _clearArchivedResources]): + (-[WebFrame _deliverArchivedResources]): + +2006-10-20 John Sullivan + + Reviewed by Darin + + - fixed setAcceptsMouseMovedEvents: is called for every layout, + taking ~1% on the PLT test + + * WebView/WebHTMLView.m: + (-[NSArray layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): + Don't call setAcceptsMouseMovedEvents: and WKSetNSWindowShouldPostEventNotifications() here + because this is called too often. + + * WebView/WebView.m: + (-[WebView viewWillMoveToWindow:]): + Do call them here, because this is guaranteed to be called at least once for each window + containing a webview, but isn't called too often. Also restructured this method a little. + +2006-10-19 Timothy Hatcher + + Reviewed by Anders. + + Bug 11366: Web Inspector should show user agent style rules + http://bugs.webkit.org/show_bug.cgi?id=11366 + + * WebInspector/WebInspector.m: + (-[WebInspector init]): + (-[WebInspector showOptionsMenu]): + (-[WebInspector _toggleShowUserAgentStyles:]): + * WebInspector/WebInspectorInternal.h: + * WebInspector/webInspector/inspector.js: + +2006-10-19 Brady Eidson + + Build fix - 2gig is on that pesky signed/unsigned limit... + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge getObjectCacheSize]): + +2006-10-19 Brady Eidson + + Reviewed by Hyatt. + + Death to 16777216. Long live 33554432. + (Cache size changed needs to be reflected in localization file) + + * English.lproj/StringsNotToBeLocalized.txt: + +2006-10-19 Brady Eidson + + Reviewed by Hyatt + + Added an larger in-memory level of cache for machines with 2+gb ram + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge getObjectCacheSize]): + +2006-10-19 Brady Eidson + + Reviewed by Hyatt + + Double the default memory cache size + + * WebView/WebPreferences.m: + (+[WebPreferences initialize]): + +2006-10-19 John Sullivan + + Reviewed by Kevin D and Geoff + + * WebKit.xcodeproj/project.pbxproj: + version wars + + Cleaned up this file, as follows: + - renamed all file-internal methods to start with underscores + - moved all file-internal methods into a FileInternal category block, and alphabetized them + - grouped all other methods by where/how they were defined (delegate methods, protocol methods, overrides, etc.) + - removed unstylish braces around one-line clauses + + * WebView/WebPDFView.m: + (_applicationInfoForMIMEType): + (_PDFSelectionsAreEqual): + (+[WebPDFView supportedMIMETypes]): + (-[WebPDFView setPDFDocument:]): + (-[WebPDFView dealloc]): + (-[WebPDFView centerSelectionInVisibleArea:]): + (-[WebPDFView scrollPageDown:]): + (-[WebPDFView scrollPageUp:]): + (-[WebPDFView scrollLineDown:]): + (-[WebPDFView scrollLineUp:]): + (-[WebPDFView scrollToBeginningOfDocument:]): + (-[WebPDFView scrollToEndOfDocument:]): + (-[WebPDFView jumpToSelection:]): + (-[WebPDFView acceptsFirstResponder]): + (-[WebPDFView becomeFirstResponder]): + (-[WebPDFView hitTest:]): + (-[WebPDFView initWithFrame:]): + (-[WebPDFView menuForEvent:]): + (-[WebPDFView setNextKeyView:]): + (-[WebPDFView viewDidMoveToWindow]): + (-[WebPDFView viewWillMoveToWindow:]): + (-[WebPDFView validateUserInterfaceItem:]): + (-[WebPDFView copy:]): + (-[WebPDFView takeFindStringFromSelection:]): + (-[WebPDFView canPrintHeadersAndFooters]): + (-[WebPDFView printOperationWithPrintInfo:]): + (-[WebPDFView viewWillMoveToHostWindow:]): + (-[WebPDFView viewDidMoveToHostWindow]): + (-[WebPDFView elementAtPoint:]): + (-[WebPDFView elementAtPoint:allowShadowContent:]): + (-[WebPDFView searchFor:direction:caseSensitive:wrap:]): + (-[WebPDFView viewState]): + (-[WebPDFView setViewState:]): + (-[WebPDFView writeSelectionWithPasteboardTypes:toPasteboard:]): + (-[WebPDFView PDFViewWillClickOnLink:withURL:]): + (+[WebPDFView _PDFPreviewViewClass]): + (+[WebPDFView _PDFViewClass]): + (-[WebPDFView _anyPDFTagsFoundInMenu:]): + (-[WebPDFView _applyPDFDefaults]): + (-[WebPDFView _fakeKeyEventWithFunctionKey:]): + (-[WebPDFView _menuItemsFromPDFKitForEvent:]): + (-[WebPDFView _openWithFinder:]): + (-[WebPDFView _path]): + (-[WebPDFView _PDFSubview]): + (-[WebPDFView _pointIsInSelection:]): + (-[WebPDFView _receivedPDFKitLaunchNotification:]): + (-[WebPDFView _scaledAttributedString:]): + (-[WebPDFView _trackFirstResponder]): + (-[PDFPrefUpdatingProxy forwardInvocation:]): + (-[PDFPrefUpdatingProxy methodSignatureForSelector:]): + +2006-10-19 John Sullivan + + Reviewed by Kevin Decker + + - fixed Safari should use fancier embedded PDFKit stuff when it's available + + * WebKit.xcodeproj/project.pbxproj: + version wars + + * WebView/WebFrameView.m: + (-[WebFrameView _makeDocumentViewForDataSource:]): + initialize document view with frame view's rect instead of empty rect. This avoids some problems when + constructing view hierarchies from nibs + + * WebView/WebPreferencesPrivate.h: + declare new _usePDFPreviewView and _setUsePDFPreviewView:, used for debugging + * WebView/WebPreferenceKeysPrivate.h: + declare new preference key string + * WebView/WebPreferences.m: + (+[WebPreferences initialize]): + initialize new preference to true (we will by default use the new view if it's available) + (-[WebPreferences _usePDFPreviewView]): + new accessor for new pref + (-[WebPreferences _setUsePDFPreviewView:]): + ditto + + * WebView/WebPDFView.h: + new previewView ivar + + * WebView/WebPDFView.m: + (+[WebPDFView PDFPreviewViewClass]): + new method, returns class to use for fancier embedded PDFKit stuff, or nil if fancy stuff isn't available + (-[WebPDFView initWithFrame:]): + now tries to use fancier embedded PDFKit stuff if it's available and the pref is set to use it; falls back + to old behavior otherwise + (-[WebPDFView dealloc]): + release new previewView ivar (retained in initWithFrame:) + (-[WebPDFView viewWillMoveToWindow:]): + stop observing PDFKit notification when we're removed from window + (-[WebPDFView viewDidMoveToWindow]): + start observing PDFKit notification when we're added to window + (-[WebPDFView _receivedPDFKitLaunchNotification:]): + respond to this new PDFKit notification by opening the document via NSWorkspace + + * English.lproj/StringsNotToBeLocalized.txt: + updated for lots of recent changes + +2006-10-19 Sam Weinig + + Reviewed by ap. + + Win32 build fix. + + * COM/WebFrame.cpp: + (WebFrame::initWithName): + (WebFrame::createNewWindow): + +2006-10-19 Mitz Pettel + + Reviewed and landed by ap. + + - fixed the inspector's tree popup + + * WebInspector/webInspector/inspector.html: + +2006-10-18 Sam Weinig + + Reviewed by Maciej. + + Win32 build fix. + + * COM/WebFrame.cpp: + (WebFrame::createNewWindow): + * COM/WebFrame.h: + +2006-10-18 Anders Carlsson + + Reviewed by Adam. + + http://bugs.webkit.org/show_bug.cgi?id=11000 + REGRESSION (r16101): css2.1/t0801-c412-hz-box-00-b-a is failing because the QuickTime plugin is taking over but not rendering the png + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge determineObjectFromMIMEType:URL:]): + Return ObjectElementFrame if the MIME type is one of the image ones we support. + +2006-10-17 Justin Garcia + + Reviewed by harrison + + + REGRESSION: Mail.app: smart deletion of words does not work + + Regressed when we pushed selecion expansion down into WebCore. It's OK + to try a smart delete from _deleteWithDirection:, which is called by + deleteFoward: and deleteBackward: if the current selection is a + range. + + * WebView/WebHTMLView.m: + (-[NSArray _deleteWithDirection:granularity:killRing:isTypingAction:]): + +2006-10-13 Justin Garcia + + Reviewed by harrison + + + Editing: -indent: method unimplemented + + * WebView/WebHTMLView.m: + (-[NSArray validateUserInterfaceItem:]): Only allow indent:/outdent: in + richly editable areas. + (-[NSArray indent:]): + (-[NSArray outdent:]): + +2006-10-13 Maciej Stachowiak + + Not reviewed, build fix. + + * icu/unicode/putil.h: Added - needed for build if you don't have apple internal headers. + +2006-10-13 Maciej Stachowiak + + Not reviewed, build fix. + + * icu/unicode/ustring.h: Added - needed for build if you don't have apple internal headers. + +2006-10-13 Maciej Stachowiak + + Reviewed by Anders. + + - add a bunch of casts to get this compiling with older Xcode versions + + (I used static_cast so it will be easier to find and remove these once we have completely moved + on to a new enough compiler version.) + + * Plugins/WebBaseNetscapePluginView.m: + (+[WebBaseNetscapePluginView getCarbonEvent:]): + (-[WebBaseNetscapePluginView getCarbonEvent:withEvent:]): + (-[WebBaseNetscapePluginView fixWindowPort]): + (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): + (-[WebBaseNetscapePluginView _createWindowlessAGLContext]): + (-[WebBaseNetscapePluginView _reshapeAGLWindow]): + (-[WebBaseNetscapePluginView _aglOffscreenImageForDrawingInRect:]): + * WebKit.xcodeproj/project.pbxproj: + +2006-10-13 Kevin McCullough + + Changed by Darin, reviewed by me. + + * Plugins/WebNetscapePluginStream.m: Fixed case of import so we can compile on + case-sensitive file system. + +2006-10-13 Darin Adler + + Reviewed by Adele. + + - converted WebFormState from Objective-C to C++ + + * ForwardingHeaders: Added an entire copy of WebCore's forwarding headers here. + We should eventually come up with a more-elegant solution. + + * WebKit.xcodeproj/project.pbxproj: Added ForwardingHeaders to the include paths. + Converted many files from Objective-C to Objective-C++. In a later check-in, I'll + rename them to .mm instead of .m. Removed C-only warning options for now. In a + later check-in I will add these back in a way that omits them for C++. + + * Plugins/WebPluginContainerCheck.m: Updated for header changes. + + * WebView/WebFrameInternal.h: Updated for header changes. Removed WebFrameLoaderClient category + so this file can still be used by Objective-C code (not just Objective-C++). + + * WebView/WebFrame.m: Put WebFrameLoaderClient category in here. + (-[WebFrame _loadItem:withLoadType:]): Changed to use 0 instead of nil for FormState and fixed + enum code for C++ compatibility. + (-[WebFrame _initWithWebFrameView:webView:bridge:]): Added call to setFrameLoaderClient: here. + (-[WebFrame _updateHistoryForCommit]): Fixed enum code for C++ compatibility. + (-[WebFrame _updateHistoryForReload]): Ditto. + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge initMainFrameWithPage:frameName:view:]): Removed call to setFrameLoaderClient:. + (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]): Ditto. + (-[WebFrameBridge _retrieveKeyboardUIModeFromPreferences:]): Fixed enum code for C++ compatibility. + (-[WebFrameBridge runModal]): Changed code to not use "namespace" as a local variable name. + + * WebView/WebPDFView.m: Added extern "C" so this can compile as Objective-C++. + +2006-10-12 Maciej Stachowiak + + Reviewed by Oliver. + + - liberate more WebKit code down to WebCore + + * WebCoreSupport/WebFrameBridge.h: + * WebCoreSupport/WebFrameBridge.m: + +2006-10-12 Adele Peterson + + Reviewed by Maciej. + + WebKit part of fix for need a means to attach user data to any menu that is popuped up in HTML + + Added private delegate method for clients that want access to a PopupMenu's NSMenu. + + * DefaultDelegates/WebDefaultUIDelegate.m: (-[NSApplication webView:willPopupMenu:]): + * WebCoreSupport/WebFrameBridge.m: (-[WebFrameBridge willPopupMenu:]): + * WebView/WebUIDelegatePrivate.h: + +2006-10-12 MorganL + + Reviewed/landed by Adam. + + Fixes http://bugs.webkit.org/show_bug.cgi?id=11264 + Windows build busted + + * COM/WebFrame.cpp: + (WebFrame::receivedResponse): + +2006-10-11 Darin Adler + + Reviewed by Adele. + + - preparations for making more code C++ + + * WebKitPrefix.h: Fixed ifdef so that C++ files get all the precompiled stuff + that non-C++ files get. + + * Misc/WebKitLogging.h: + * Misc/WebKitSystemBits.h: + * Misc/WebLocalizableStrings.h: + * WebCoreSupport/WebSystemInterface.h: + Added extern "C". + + * Misc/WebNSViewExtras.h: + * WebView/WebDataSource.m: (addTypesFromClass): + * WebView/WebFrameView.m: (addTypesFromClass): + Eliminated use of the identifier "class". + + * WebView/WebView.m: (-[WebView _goToItem:withLoadType:]): Added a type cast. + + * Plugins/WebBaseNetscapePluginView.m: Added lots of type casts. + +2006-10-10 Brady Eidson + + Reviewed by Maciej. + + Moved WebFrameLoader into WebCoreFrameBridge + + * WebCoreSupport/WebFrameBridge.h: + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge initMainFrameWithPage:frameName:view:]): + (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]): + (-[WebFrameBridge dealloc]): + (-[WebFrameBridge setTitle:]): + (-[WebFrameBridge receivedData:textEncodingName:]): + (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:]): + (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]): + (-[WebFrameBridge objectLoadedFromCacheWithURL:response:data:]): + (-[WebFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]): + (-[WebFrameBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]): + (-[WebFrameBridge reportClientRedirectCancelled:]): + (-[WebFrameBridge close]): + (-[WebFrameBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]): + (-[WebFrameBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): + (-[WebFrameBridge tokenizerProcessedData]): + (-[WebFrameBridge frameDetached]): + (-[WebFrameBridge didFirstLayout]): + (-[WebFrameBridge notifyIconChanged:]): + (-[WebFrameBridge originalRequestURL]): + (-[WebFrameBridge isLoadTypeReload]): + +2006-10-10 Adele Peterson + + Reviewed by Beth. + + Removed handleAutoscrollForMouseDragged. Except for autoscroll caused by drag and drop, all other + autoscrolling should be done in WebCore instead of in AppKit. + + * WebCoreSupport/WebFrameBridge.m: + * WebView/WebHTMLView.m: + * WebView/WebHTMLViewPrivate.h: + +2006-10-10 Darin Adler + + - corrected an archive regression caused by loader refactoring + (pointed out by Graham Dennis) + + * WebView/WebFrame.m: (-[WebFrame _deliverArchivedResourcesAfterDelay]): + Fix selector name. + +2006-10-10 Maciej Stachowiak + + Rubber stamped by Eric. + + - moved a whole bunch of stuff over to WebCore - updated includes appropriately + + * Loader/LoaderNSURLExtras.h: Removed. + * Loader/LoaderNSURLExtras.m: Removed. + * Loader/WebDataProtocol.h: Removed. + * Loader/WebDataProtocol.m: Removed. + * Loader/WebDocumentLoader.h: Removed. + * Loader/WebDocumentLoader.m: Removed. + * Loader/WebFormDataStream.h: Removed. + * Loader/WebFormDataStream.m: Removed. + * Loader/WebFormState.h: Removed. + * Loader/WebFormState.m: Removed. + * Loader/WebFrameLoader.h: Removed. + * Loader/WebFrameLoader.m: Removed. + * Loader/WebFrameLoaderClient.h: Removed. + * Loader/WebLoader.h: Removed. + * Loader/WebLoader.m: Removed. + * Loader/WebMainResourceLoader.h: Removed. + * Loader/WebMainResourceLoader.m: Removed. + * Loader/WebNetscapePlugInStreamLoader.h: Removed. + * Loader/WebNetscapePlugInStreamLoader.m: Removed. + * Loader/WebPlugInStreamLoaderDelegate.h: Removed. + * Loader/WebPolicyDecider.h: Removed. + * Loader/WebPolicyDecider.m: Removed. + * Loader/WebSubresourceLoader.h: Removed. + * Loader/WebSubresourceLoader.m: Removed. + * Misc/WebNSURLExtras.m: + * Plugins/WebBaseNetscapePluginStream.h: + * Plugins/WebBaseNetscapePluginView.m: + * Plugins/WebNetscapePluginStream.m: + * Plugins/WebPluginContainerCheck.m: + * Plugins/WebPluginController.m: + * WebCoreSupport/WebFrameBridge.m: + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDataSource.m: + * WebView/WebDocumentLoaderMac.h: + * WebView/WebFrame.m: + * WebView/WebFrameInternal.h: + * WebView/WebHTMLView.m: + * WebView/WebPolicyDeciderMac.h: + * WebView/WebPolicyDelegate.m: + * WebView/WebView.m: + +2006-10-10 Mark Rowe + + Reviewed by Maciej. + + Fix crash on launch in nightly builds after r16965. + + Safari will sometimes call through to -[NSURL _webkit_canonicalize] before creating a WebView. If this happens, + InitWebCoreSystemInterface has not yet been called so the call to wkNSURLProtocolClassForReqest is via a garbage + pointer. + + * Misc/WebNSURLExtras.m: + (-[NSURL _webkit_canonicalize]): Ensure InitWebCoreSystemInterface is called prior to canonicalURL. + +2006-10-10 Maciej Stachowiak + + Reviewed by Oliver. + + - split out some NSURL extras to be moved to WebCore + + * Loader/LoaderNSURLExtras.h: Added. + * Loader/LoaderNSURLExtras.m: Added. + (urlByRemovingComponent): + (urlByRemovingFragment): + (urlOriginalDataAsString): + (urlOriginalData): + (urlWithData): + (WebCFAutorelease): + (urlWithDataRelativeToURL): + (urlByRemovingResourceSpecifier): + (urlIsFileURL): + (stringIsFileURL): + (urlIsEmpty): + (canonicalURL): + * Loader/WebFrameLoader.m: + (-[WebFrameLoader shouldReloadForCurrent:andDestination:]): + (setHTTPReferrer): + (-[WebFrameLoader commitProvisionalLoad:]): + (-[WebFrameLoader _notifyIconChanged:]): + (-[WebFrameLoader didChangeTitleForDocument:]): + (-[WebFrameLoader checkNavigationPolicyForRequest:documentLoader:formState:andCall:withSelector:]): + (-[WebFrameLoader safeLoadURL:]): + * Misc/WebNSURLExtras.m: + (+[NSURL _web_URLWithData:]): + (+[NSURL _web_URLWithData:relativeToURL:]): + (-[NSURL _web_originalData]): + (-[NSURL _web_originalDataAsString]): + (-[NSURL _web_isEmpty]): + (-[NSURL _webkit_canonicalize]): + (-[NSURL _webkit_URLByRemovingComponent:]): + (-[NSURL _webkit_URLByRemovingFragment]): + (-[NSURL _webkit_URLByRemovingResourceSpecifier]): + (-[NSURL _webkit_isFileURL]): + (-[NSString _webkit_isFileURL]): + * WebCoreSupport/WebSystemInterface.m: + (InitWebCoreSystemInterface): + * WebKit.xcodeproj/project.pbxproj: + +2006-10-09 Maciej Stachowiak + + Reviewed by Anders. + + - sever final WebFrame dependencies + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader initWithFrame:client:]): + (-[WebFrameLoader defersCallbacksChanged]): + (-[WebFrameLoader subframeIsLoading]): + (-[WebFrameLoader transitionToCommitted:]): + (-[WebFrameLoader detachChildren]): + (-[WebFrameLoader checkLoadComplete]): + +2006-10-09 Maciej Stachowiak + + Reviewed by Brady. + + - convert more WebFrameLoader stuff to be independent of WebFrame + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader stopLoadingSubframes]): + (-[WebFrameLoader _receivedMainResourceError:complete:]): + (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrameLoader closeOldDataSources]): + (-[WebFrameLoader isHostedByObjectElement]): + (-[WebFrameLoader isLoadingMainFrame]): + (-[WebFrameLoader loadDocumentLoader:withLoadType:formState:]): + (-[WebFrameLoader transitionToCommitted:]): + (-[WebFrameLoader checkLoadCompleteForThisFrame]): + (-[WebFrameLoader continueLoadRequestAfterNewWindowPolicy:frameName:formState:]): + (-[WebFrameLoader loadRequest:inFrameNamed:]): + (-[WebFrameLoader postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): + (-[WebFrameLoader actionInformationForNavigationType:event:originalURL:]): + (-[WebFrameLoader client]): + * Loader/WebFrameLoaderClient.h: + * WebView/WebDataSource.m: + (-[WebDataSource _webView]): + (-[WebDataSource webFrame]): + * WebView/WebFrame.m: + (-[WebFrame _dispatchCreateWebViewWithRequest:]): + +2006-10-09 Maciej Stachowiak + + Reviewed by Anders and Oliver. + + - move a bunch of WebFrame methods from the Internal category to the WebFrameLoader protocol + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader loadRequest:]): + (-[WebFrameLoader loadRequest:inFrameNamed:]): + * Loader/WebFrameLoaderClient.h: + * WebView/WebFrame.m: + (-[WebFrame loadRequest:]): + (-[WebFrame _dispatchDidCommitLoadForFrame]): + (-[WebFrame _hasFrameView]): + (-[WebFrame _frameLoadCompleted]): + (-[WebFrame _restoreScrollPositionAndViewState]): + (-[WebFrame _setTitle:forURL:]): + (-[WebFrame _createDocumentLoaderWithRequest:]): + (-[WebFrame _prepareForDataSourceReplacement]): + (-[WebFrame _didFinishLoad]): + (-[WebFrame _addHistoryItemForFragmentScroll]): + (-[WebFrame _shouldTreatURLAsSameAsCurrent:]): + (-[WebFrame _provisionalLoadStarted]): + * WebView/WebFrameInternal.h: + +2006-10-09 Maciej Stachowiak + + Not reviewed, build fix. + + - added forgotten files + + * Loader/WebPolicyDecider.h: Added. + * Loader/WebPolicyDecider.m: Added. + (-[WebPolicyDecider invalidate]): + +2006-10-09 Maciej Stachowiak + + Reviewed by Brady. + + - add wrapper for WebPolicyDecisionListener so we can remove the dependency from WebFrameLoader. + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _checkContentPolicyForMIMEType:andCall:withSelector:]): + (-[WebFrameLoader cancelContentPolicy]): + (-[WebFrameLoader invalidatePendingPolicyDecisionCallingDefaultAction:]): + (-[WebFrameLoader checkNewWindowPolicyForRequest:action:frameName:formState:andCall:withSelector:]): + (-[WebFrameLoader checkNavigationPolicyForRequest:documentLoader:formState:andCall:withSelector:]): + (-[WebFrameLoader continueAfterWillSubmitForm:]): + (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]): + * Loader/WebFrameLoaderClient.h: + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebFrame.m: + (-[WebFrame _createPolicyDeciderWithTarget:action:]): + (decisionListener): + (-[WebFrame _dispatchDecidePolicyForMIMEType:request:decider:]): + (-[WebFrame _dispatchDecidePolicyForNewWindowAction:request:newFrameName:decider:]): + (-[WebFrame _dispatchDecidePolicyForNavigationAction:request:decider:]): + (-[WebFrame _dispatchSourceFrame:willSubmitForm:withValues:submissionDecider:]): + * WebView/WebPolicyDeciderMac.h: Added. + * WebView/WebPolicyDeciderMac.m: Added. + (-[WebPolicyDeciderMac initWithTarget:action:]): + (-[WebPolicyDeciderMac dealloc]): + (-[WebPolicyDeciderMac decisionListener]): + (-[WebPolicyDeciderMac invalidate]): + +2006-10-09 Brady Eidson + + Reviewed by John + + http://bugs.webkit.org/show_bug.cgi?id=11195 + Added the WebIconDatabaseDelegate. This allows the ability to allow customization of + IconDatabase behavior in the future, starting now with the ability to override the + default icon fairly flexibly + + * Misc/WebIconDatabase.h: Added setIconDatabaseDelegate: + * Misc/WebIconDatabase.m: + (-[WebIconDatabase iconForURL:withSize:cache:]): Call the delegate for the default icon if delegate is set + (-[WebIconDatabase defaultIconForURL:withSize:]): Get the default icon through the delegate if available, built-in if not + (-[WebIconDatabase setDelegate:]): + (-[WebIconDatabase delegate]): + * Misc/WebIconDatabaseDelegate.h: Added. + * Misc/WebIconDatabasePrivate.h: Added the delegate, nuked an unused class definition + * WebKit.xcodeproj/project.pbxproj: + +2006-10-09 Darin Adler + + Reviewed by Maciej. + + - eliminated uses of WebResource and WebView from WebFrameLoader + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader setDefersCallbacks:]): + (-[WebFrameLoader stopLoading]): + (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]): + (-[WebFrameLoader archiveLoadPendingForLoader:]): + (-[WebFrameLoader cancelPendingArchiveLoadForLoader:]): + (-[WebFrameLoader _canShowMIMEType:]): + (-[WebFrameLoader _representationExistsForURLScheme:]): + (-[WebFrameLoader _generatedMIMETypeForURLScheme:]): + (-[WebFrameLoader loadDocumentLoader:]): + (-[WebFrameLoader continueAfterNavigationPolicy:]): + (-[WebFrameLoader sendRemainingDelegateMessagesWithIdentifier:response:length:error:]): + (-[WebFrameLoader actionInformationForNavigationType:event:originalURL:]): + * Loader/WebFrameLoaderClient.h: + * Loader/WebMainResourceLoader.m: + (-[WebMainResourceLoader continueAfterContentPolicy:response:]): + (-[WebMainResourceLoader loadWithRequestNow:]): + * WebView/WebFrame.m: + (-[WebFramePrivate dealloc]): + (-[WebFrame loadRequest:]): + (-[WebFrame loadArchive:]): + (-[WebFrame _canUseResourceForRequest:]): + (-[WebFrame _canUseResourceWithResponse:]): + (-[WebFrame _deliverArchivedResourcesAfterDelay]): + (-[WebFrame _willUseArchiveForRequest:originalURL:loader:]): + (-[WebFrame _archiveLoadPendingForLoader:]): + (-[WebFrame _cancelPendingArchiveLoadForLoader:]): + (-[WebFrame _clearArchivedResources]): + (-[WebFrame _deliverArchivedResources]): + (-[WebFrame _setDefersCallbacks:]): + (-[WebFrame _canHandleRequest:]): + (-[WebFrame _canShowMIMEType:]): + (-[WebFrame _representationExistsForURLScheme:]): + (-[WebFrame _generatedMIMETypeForURLScheme:]): + (-[WebFrame _elementForEvent:]): + +2006-10-09 Maciej Stachowiak + + Reviewed by Darin. + + - do all the stuff that setting the referrer should + + * Loader/WebFrameLoader.m: + (setHTTPReferrer): + (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrameLoader postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): + * WebKit.xcodeproj/project.pbxproj: + +2006-10-09 Brady Eidson + + Reviewed by Maciej + + Fix to elminate WebIconDatabaseBridge.h from WebFrameLoader + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _notifyIconChanged:]): + * WebCoreSupport/WebIconDatabaseBridge.m: + (+[WebIconDatabaseBridge createInstance]): + +2006-10-09 Maciej Stachowiak + + Reviewed by Darin. + + (Was reviewed as part of a larger patch but it looks like Darin already did the rest of it) + + - avoid a needless use of WebFrame + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader loadDocumentLoader:withLoadType:formState:]): + +2006-10-09 Brady Eidson + + A *real* fake fix for the layouttest problem until the real fix + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _notifyIconChanged:]): + +2006-10-09 Brady Eidson + + Quick layouttest fix until I make the real fix + + * Loader/WebFrameLoader.m: + +2006-10-09 Maciej Stachowiak + + Reviewed by Darin. + + - wean WebFrameLoader from WebDataSource private stuff + + (actually just tweaks tot he above to make merging my future + patches easier since Darin did a lot of the same stuff) + + * Loader/WebDocumentLoader.h: + * Loader/WebDocumentLoader.m: + (-[WebDocumentLoader URLForHistory]): + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _loadRequest:archive:]): + (-[WebFrameLoader revertToProvisionalWithDocumentLoader:]): + (-[WebFrameLoader documentLoader:setMainDocumentError:]): + (-[WebFrameLoader finalSetupForReplaceWithDocumentLoader:]): + (-[WebFrameLoader didChangeTitleForDocument:]): + (-[WebFrameLoader loadDocumentLoader:withLoadType:formState:]): + * Loader/WebFrameLoaderClient.h: + * WebView/WebDataSource.m: + (-[WebDataSource _URLForHistory]): + * WebView/WebFrame.m: + (-[WebFrame _addDocumentLoader:toUnarchiveState:]): + (-[WebFrame _revertToProvisionalStateForDocumentLoader:]): + (-[WebFrame _setMainDocumentError:forDocumentLoader:]): + (-[WebFrame _clearUnarchivingStateForLoader:]): + +2006-10-09 Darin Adler + + Reviewed by Brady. + + - eliminated WebFrameLoader dependency on WebDataSourceInternal.h, + WebIconDatabasePrivate.h, and WebKitErrorsPrivate.h, along with + most but not all references to WebView + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader removePlugInStreamLoader:]): + (-[WebFrameLoader _receivedMainResourceError:complete:]): + (-[WebFrameLoader _notifyIconChanged:]): + (-[WebFrameLoader cancelledErrorWithRequest:]): + (-[WebFrameLoader fileDoesNotExistErrorWithResponse:]): + (-[WebFrameLoader handleUnimplementablePolicyWithError:]): + (-[WebFrameLoader cannotShowMIMETypeWithResponse:]): + (-[WebFrameLoader interruptForPolicyChangeErrorWithRequest:]): + (-[WebFrameLoader _loadRequest:archive:]): + (-[WebFrameLoader finishedLoadingDocument:]): + (-[WebFrameLoader committedLoadWithDocumentLoader:data:]): + (-[WebFrameLoader revertToProvisionalWithDocumentLoader:]): + (-[WebFrameLoader documentLoader:setMainDocumentError:]): + (-[WebFrameLoader finalSetupForReplaceWithDocumentLoader:]): + (-[WebFrameLoader didChangeTitleForDocument:]): + (-[WebFrameLoader continueAfterNavigationPolicy:]): + (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]): + (-[WebFrameLoader loadDocumentLoader:withLoadType:formState:]): + (-[WebFrameLoader transitionToCommitted:]): + (-[WebFrameLoader checkLoadCompleteForThisFrame]): + (-[WebFrameLoader requestFromDelegateForRequest:identifier:error:]): + (-[WebFrameLoader addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): + (-[WebFrameLoader checkLoadComplete]): + * Loader/WebFrameLoaderClient.h: + * Loader/WebMainResourceLoader.m: + (-[WebMainResourceLoader continueAfterContentPolicy:response:]): + * WebView/WebFrame.m: + (-[WebFrame _addDocumentLoader:toUnarchiveState:]): + (-[WebFrame _formDelegate]): + (-[WebFrame _finishedLoadingDocument:]): + (-[WebFrame _committedLoadWithDocumentLoader:data:]): + (-[WebFrame _revertToProvisionalWithDocumentLoader:]): + (-[WebFrame _documentLoader:setMainDocumentError:]): + (-[WebFrame _finalSetupForReplaceWithDocumentLoader:]): + (-[WebFrame _URLForHistoryForDocumentLoader:]): + (-[WebFrame _cancelledErrorWithRequest:]): + (-[WebFrame _cannotShowURLErrorWithRequest:]): + (-[WebFrame _interruptForPolicyChangeErrorWithRequest:]): + (-[WebFrame _cannotShowMIMETypeErrorWithResponse:]): + (-[WebFrame _fileDoesNotExistErrorWithResponse:]): + (-[WebFrame _shouldFallBackForError:]): + (-[WebFrame _hasWebView]): + (-[WebFrame _mainFrameURL]): + * WebView/WebFrameInternal.h: + +2006-10-09 Maciej Stachowiak + + Reviewed, landed, tweaked a bit by Darin. + + - removed most uses of WebFrameBridge from WebFrameLoader + (WebCoreFrameBridge use is OK) + + * Loader/WebDocumentLoader.m: + (-[WebDocumentLoader bridge]): + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader initWithFrame:client:]): + (-[WebFrameLoader defersCallbacksChanged]): + (-[WebFrameLoader defersCallbacks]): + (-[WebFrameLoader provisionalLoadStarted]): + (-[WebFrameLoader stopLoadingSubframes]): + (-[WebFrameLoader _willSendRequest:forResource:redirectResponse:]): + (-[WebFrameLoader _receivedMainResourceError:complete:]): + (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrameLoader continueFragmentScrollAfterNavigationPolicy:formState:]): + (-[WebFrameLoader closeOldDataSources]): + (-[WebFrameLoader commitProvisionalLoad:]): + (-[WebFrameLoader bridge]): + (-[WebFrameLoader _handleFallbackContent]): + (-[WebFrameLoader _finishedLoading]): + (-[WebFrameLoader reload]): + (-[WebFrameLoader checkNavigationPolicyForRequest:documentLoader:formState:andCall:withSelector:]): + (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]): + (-[WebFrameLoader transitionToCommitted:]): + (-[WebFrameLoader continueLoadRequestAfterNewWindowPolicy:frameName:formState:]): + (-[WebFrameLoader loadRequest:inFrameNamed:]): + (-[WebFrameLoader postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): + (-[WebFrameLoader detachFromParent]): + (-[WebFrameLoader addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): + (-[WebFrameLoader safeLoadURL:]): + (-[WebFrameLoader actionInformationForLoadType:isFormSubmission:event:originalURL:]): + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge initMainFrameWithPage:frameName:view:]): + (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]): + * WebView/WebFrame.m: + (-[WebFrame _atMostOneFrameHasSelection]): + * WebView/WebFrameInternal.h: + +2006-10-09 Darin Adler + + Reviewed by Brady. + + - removed almost all direct use of WebView from WebFrameLoader + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader defersCallbacksChanged]): + (-[WebFrameLoader defersCallbacks]): + (-[WebFrameLoader clearProvisionalLoad]): + (-[WebFrameLoader _willSendRequest:forResource:redirectResponse:]): + (-[WebFrameLoader _didReceiveResponse:forResource:]): + (-[WebFrameLoader _didReceiveData:contentLength:forResource:]): + (-[WebFrameLoader _didFinishLoadingForResource:]): + (-[WebFrameLoader _didFailLoadingWithError:forResource:]): + (-[WebFrameLoader closeOldDataSources]): + (-[WebFrameLoader _notifyIconChanged:]): + (-[WebFrameLoader prepareForLoadStart]): + (-[WebFrameLoader willChangeTitleForDocument:]): + (-[WebFrameLoader didChangeTitleForDocument:]): + (-[WebFrameLoader continueAfterNewWindowPolicy:]): + (-[WebFrameLoader continueAfterNavigationPolicy:]): + (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]): + (-[WebFrameLoader didFirstLayout]): + (-[WebFrameLoader transitionToCommitted:]): + (-[WebFrameLoader checkLoadCompleteForThisFrame]): + (-[WebFrameLoader addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): + * Loader/WebFrameLoaderClient.h: + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebFrame.m: + (-[WebFrame _currentBackForwardListItemToResetTo]): + (-[WebFrame _hasBackForwardList]): + (-[WebFrame _resetBackForwardList]): + (-[WebFrame _dispatchDidReceiveIcon:]): + (-[WebFrame _dispatchDidStartProvisionalLoadForFrame]): + (-[WebFrame _dispatchDidCommitLoadForFrame]): + (-[WebFrame _dispatchDidFailProvisionalLoadWithError:]): + (-[WebFrame _dispatchDidFailLoadWithError:]): + (-[WebFrame _dispatchDidFinishLoadForFrame]): + (-[WebFrame _progressStarted]): + (-[WebFrame _progressCompleted]): + (-[WebFrame _incrementProgressForIdentifier:response:]): + (-[WebFrame _incrementProgressForIdentifier:data:]): + (-[WebFrame _completeProgressForIdentifier:]): + (-[WebFrame _setMainFrameDocumentReady:]): + (-[WebFrame _willChangeTitleForDocument:]): + (-[WebFrame _didChangeTitleForDocument:]): + (-[WebFrame _startDownloadWithRequest:]): + +2006-10-09 Maciej Stachowiak + + Reviewed by Alice. + + - moved WebFormState into Loader directory and tweaked to avoid WebKit dependencies + + * Loader/WebDocumentLoader.h: + * Loader/WebFormState.h: Added. + * Loader/WebFormState.m: Added. + (-[WebFormState initWithForm:values:sourceFrame:]): + (-[WebFormState dealloc]): + (-[WebFormState form]): + (-[WebFormState values]): + (-[WebFormState sourceFrame]): + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]): + (-[WebFrameLoader postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebFrame.m: + * WebView/WebFrameInternal.h: + +2006-10-09 Maciej Stachowiak + + Reviewed by Oliver. + + - remove dependency on WebNSURLRequestExtras.h + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrameLoader postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): + (-[WebFrameLoader addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): + +2006-10-09 Maciej Stachowiak + + Reviewed by Oliver. + + - removed unneeded logging code so I can take WebKitLogging.h out and remove a WebKit dependency + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader setState:]): + (-[WebFrameLoader clientRedirectCancelledOrFinished:]): + (-[WebFrameLoader clientRedirectedTo:delay:fireDate:lockHistory:isJavaScriptFormAction:]): + (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrameLoader continueFragmentScrollAfterNavigationPolicy:formState:]): + (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]): + (-[WebFrameLoader checkLoadCompleteForThisFrame]): + +2006-10-09 Maciej Stachowiak + + Reviewed by Oliver. + + - remove WebDataSource from the WebFrameLoader interface (and thereby from a lot of internal use) + + * Loader/WebDocumentLoader.h: + * Loader/WebDocumentLoader.m: + (-[WebDocumentLoader dealloc]): + (-[WebDocumentLoader initialRequest]): + (-[WebDocumentLoader URL]): + (-[WebDocumentLoader unreachableURL]): + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader setState:]): + (-[WebFrameLoader startLoading]): + (-[WebFrameLoader startProvisionalLoad:]): + (-[WebFrameLoader clientRedirectedTo:delay:fireDate:lockHistory:isJavaScriptFormAction:]): + (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrameLoader opened]): + (-[WebFrameLoader commitProvisionalLoad:]): + (-[WebFrameLoader initialRequest]): + (-[WebFrameLoader _finishedLoading]): + (-[WebFrameLoader _notifyIconChanged:]): + (-[WebFrameLoader _URL]): + (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]): + (-[WebFrameLoader _checkNavigationPolicyForRequest:andCall:withSelector:]): + (-[WebFrameLoader shouldReloadToHandleUnreachableURLFromRequest:]): + (-[WebFrameLoader _loadRequest:archive:]): + (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]): + (-[WebFrameLoader _reloadAllowingStaleDataWithOverrideEncoding:]): + (-[WebFrameLoader reload]): + (-[WebFrameLoader checkNavigationPolicyForRequest:documentLoader:formState:andCall:withSelector:]): + (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]): + (-[WebFrameLoader loadDocumentLoader:withLoadType:formState:]): + (-[WebFrameLoader frameLoadCompleted]): + (-[WebFrameLoader transitionToCommitted:]): + (-[WebFrameLoader checkLoadCompleteForThisFrame]): + (-[WebFrameLoader safeLoadURL:]): + * Loader/WebFrameLoaderClient.h: + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge originalRequestURL]): + * WebView/WebDataSource.m: + (-[WebDataSource _URL]): + (-[WebDataSource dealloc]): + (-[WebDataSource initialRequest]): + (-[WebDataSource unreachableURL]): + * WebView/WebFrame.m: + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _prepareForDataSourceReplacement]): + (-[WebFrame provisionalDataSource]): + (-[WebFrame dataSource]): + (-[WebFrame _makeDocumentView]): + (-[WebFrame _updateHistoryForReload]): + (-[WebFrame _updateHistoryForStandardLoad]): + (-[WebFrame _updateHistoryForInternalLoad]): + (-[WebFrame _forceLayoutForNonHTML]): + (-[WebFrame _clearLoadingFromPageCacheForDocumentLoader:]): + (-[WebFrame _isDocumentLoaderLoadingFromPageCache:]): + (-[WebFrame _archivedSubresourceForURL:fromDocumentLoader:]): + (-[WebFrame _makeRepresentationForDocumentLoader:]): + +2006-10-09 Maciej Stachowiak + + Reviewed by Darin. + + - removed need for WebFrameLoader to now about WebDocumentLoaderMac + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader loadDataSource:withLoadType:formState:]): + * WebView/WebDocumentLoaderMac.h: + * WebView/WebDocumentLoaderMac.m: + (-[WebDocumentLoaderMac setFrameLoader:]): + (-[WebDocumentLoaderMac detachFromFrameLoader]): + +2006-10-09 Darin Adler + + Reviewed by Maciej. + + - passed calls that require WebScriptDebugServer across the client interface + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _finishedLoading]): + (-[WebFrameLoader documentLoader:mainReceivedCompleteError:]): + * Loader/WebFrameLoaderClient.h: + * WebView/WebFrame.m: + (-[WebFrame _dispatchDidLoadMainResourceForDocumentLoader:]): + +2006-10-08 Darin Adler + + Reviewed by Maciej. + + - passed calls that require WebHTMLView or WebFrameView calls across + the client interface + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (isCaseInsensitiveEqual): + (isBackForwardLoadType): + (-[WebFrameLoader opened]): + (-[WebFrameLoader cancelledErrorWithRequest:]): + (-[WebFrameLoader fileDoesNotExistErrorWithResponse:]): + (-[WebFrameLoader reload]): + (-[WebFrameLoader transitionToCommitted:]): + * Loader/WebFrameLoaderClient.h: + * WebView/WebFrame.m: + (-[WebFrame _forceLayout]): + (-[WebFrame _setDocumentViewFromPageCache:]): + (-[WebFrame _setCopiesOnScroll]): + +2006-10-08 Maciej Stachowiak + + Reviewed by Darin. + + - pass remaining delegate methods across client interface + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _checkContentPolicyForMIMEType:andCall:withSelector:]): + (-[WebFrameLoader checkNewWindowPolicyForRequest:action:frameName:formState:andCall:withSelector:]): + (-[WebFrameLoader checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector:]): + (-[WebFrameLoader handleUnimplementablePolicyWithErrorCode:forURL:]): + (-[WebFrameLoader didFirstLayout]): + (-[WebFrameLoader continueLoadRequestAfterNewWindowPolicy:frameName:formState:]): + * Loader/WebFrameLoaderClient.h: + * WebView/WebFrame.m: + (-[WebFrame _dispatchDidFirstLayoutInFrame]): + (-[WebFrame _dispatchCreateWebViewWithRequest:]): + (-[WebFrame _dispatchShow]): + (-[WebFrame _dispatchDecidePolicyForMIMEType:request:decisionListener:]): + (-[WebFrame _dispatchDecidePolicyForNewWindowAction:request:newFrameName:decisionListener:]): + (-[WebFrame _dispatchDecidePolicyForNavigationAction:request:decisionListener:]): + (-[WebFrame _dispatchUnableToImplementPolicyWithError:]): + +2006-10-08 Darin Adler + + Reviewed by Maciej. + + - use WebCoreSystemInterface instead of WebSystemInterface in Loader directory + + * Loader/WebFrameLoader.m: Update includes. + (-[WebFrameLoader commitProvisionalLoad:]): Use wk calls istead of WK. + (-[WebFrameLoader _canUseResourceWithResponse:]): Ditto. + + * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): + Added the three new symbols, and resorted the list. + + * Loader/WebDataProtocol.m: + * Loader/WebLoader.m: + * Loader/WebMainResourceLoader.h: + * Loader/WebMainResourceLoader.m: + * Loader/WebNetscapePlugInStreamLoader.h: + * Loader/WebNetscapePlugInStreamLoader.m: + * Loader/WebSubresourceLoader.h: + * Loader/WebSubresourceLoader.m: + Changed import statements to consistently use the "" format. + +2006-10-08 Maciej Stachowiak + + Not reviewed. + + - fix accidental build break due to editing while committing + + * Loader/WebFrameLoader.m: + +2006-10-08 Maciej Stachowiak + + Reviewed by Darin. + + - move all WebFrameLoadDelegate methods across client interface + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader clientRedirectCancelledOrFinished:]): + (-[WebFrameLoader clientRedirectedTo:delay:fireDate:lockHistory:isJavaScriptFormAction:]): + (-[WebFrameLoader continueFragmentScrollAfterNavigationPolicy:formState:]): + (-[WebFrameLoader closeOldDataSources]): + (-[WebFrameLoader _notifyIconChanged:]): + (-[WebFrameLoader prepareForLoadStart]): + (-[WebFrameLoader didChangeTitleForDocument:]): + (-[WebFrameLoader transitionToCommitted:]): + (-[WebFrameLoader checkLoadCompleteForThisFrame]): + * Loader/WebFrameLoaderClient.h: + * WebView/WebFrame.m: + (-[WebFrame _dispatchDidCancelClientRedirectForFrame]): + (-[WebFrame _dispatchWillPerformClientRedirectToURL:delay:fireDate:]): + (-[WebFrame _dispatchDidChangeLocationWithinPageForFrame]): + (-[WebFrame _dispatchWillCloseFrame]): + (-[WebFrame _dispatchDidReceiveIcon:]): + (-[WebFrame _dispatchDidStartProvisionalLoadForFrame]): + (-[WebFrame _dispatchDidReceiveTitle:]): + (-[WebFrame _dispatchDidCommitLoadForFrame]): + (-[WebFrame _dispatchDidFailProvisionalLoadWithError:]): + (-[WebFrame _dispatchDidFailLoadWithError:]): + (-[WebFrame _dispatchDidFinishLoadForFrame]): + +2006-10-08 Darin Adler + + Reviewed by Maciej. + + - removed some of the WebKit dependencies in WebFrameLoader + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrameLoader _downloadWithLoadingConnection:request:response:proxy:]): + (-[WebFrameLoader reload]): + (-[WebFrameLoader didChangeTitleForDocument:]): + * Loader/WebFrameLoaderClient.h: + * WebView/WebFrame.m: + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _loadURL:referrer:intoChild:]): + (-[WebFrame _setTitle:forURL:]): + (-[WebFrame _downloadWithLoadingConnection:request:response:proxy:]): + * WebView/WebFrameInternal.h: + + - some other tweaks + + * Misc/WebNSURLRequestExtras.m: + (-[NSMutableURLRequest _web_setHTTPReferrer:]): + (-[NSMutableURLRequest _web_setHTTPUserAgent:]): + +2006-10-08 Maciej Stachowiak + + Reviewed by Darin. + + - pass all WebResourceLoadDelegate methods across client, removing need to include related headers + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _willSendRequest:forResource:redirectResponse:]): + (-[WebFrameLoader _didReceiveAuthenticationChallenge:forResource:]): + (-[WebFrameLoader _didCancelAuthenticationChallenge:forResource:]): + (-[WebFrameLoader _didReceiveResponse:forResource:]): + (-[WebFrameLoader _didReceiveData:contentLength:forResource:]): + (-[WebFrameLoader _didFinishLoadingForResource:]): + (-[WebFrameLoader _didFailLoadingWithError:forResource:]): + (-[WebFrameLoader sendRemainingDelegateMessagesWithIdentifier:response:length:error:]): + (-[WebFrameLoader requestFromDelegateForRequest:identifier:error:]): + * Loader/WebFrameLoaderClient.h: + * WebView/WebFrame.m: + (-[WebFrame _dispatchDidHandleOnloadEventsForFrame]): + (-[WebFrame _dispatchDidReceiveServerRedirectForProvisionalLoadForFrame]): + (-[WebFrame _dispatchIdentifierForInitialRequest:fromDocumentLoader:]): + (-[WebFrame _dispatchResource:willSendRequest:redirectResponse:fromDocumentLoader:]): + (-[WebFrame _dispatchDidReceiveAuthenticationChallenge:forResource:fromDocumentLoader:]): + (-[WebFrame _dispatchDidCancelAuthenticationChallenge:forResource:fromDocumentLoader:]): + (-[WebFrame _dispatchResource:didReceiveResponse:fromDocumentLoader:]): + (-[WebFrame _dispatchResource:didReceiveContentLength:fromDocumentLoader:]): + (-[WebFrame _dispatchResource:didFinishLoadingFromDocumentLoader:]): + (-[WebFrame _dispatchResource:didFailLoadingWithError:fromDocumentLoader:]): + +2006-10-08 Maciej Stachowiak + + Reviewed by Darin. + + - started adding some _dispatch methods to WebFrameLoaderClient for delegate dispatch + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader startLoading]): + (-[WebFrameLoader didReceiveServerRedirectForProvisionalLoadForFrame]): + * Loader/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge handledOnloadEvents]): + * WebView/WebFrame.m: + (dataSource): + (-[WebFrame _dataSourceForDocumentLoader:]): + (-[WebFrame _dispatchDidHandleOnloadEventsForFrame]): + (-[WebFrame _dispatchDidReceiveServerRedirectForProvisionalLoadForFrame]): + (-[WebFrame _dispatchIdentifierForInitialRequest:fromDocumentLoader:]): + * WebView/WebFrameInternal.h: + +2006-10-08 Darin Adler + + Reviewed by Maciej. + + - moved more methods to WebFrameLoader from WebFrame + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader defersCallbacksChanged]): + (-[WebFrameLoader startLoadingMainResourceWithRequest:identifier:]): + (-[WebFrameLoader setState:]): + (-[WebFrameLoader clearProvisionalLoad]): + (-[WebFrameLoader markLoadComplete]): + (-[WebFrameLoader commitProvisionalLoad]): + (-[WebFrameLoader stopLoading]): + (-[WebFrameLoader startProvisionalLoad:]): + (-[WebFrameLoader setupForReplace]): + (-[WebFrameLoader _identifierForInitialRequest:]): + (-[WebFrameLoader _finishedLoadingResource]): + (-[WebFrameLoader _receivedError:]): + (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrameLoader continueFragmentScrollAfterNavigationPolicy:formState:]): + (-[WebFrameLoader opened]): + (-[WebFrameLoader commitProvisionalLoad:]): + (-[WebFrameLoader _finishedLoading]): + (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]): + (-[WebFrameLoader _loadRequest:archive:]): + (-[WebFrameLoader reload]): + (-[WebFrameLoader documentLoader:mainReceivedCompleteError:]): + (-[WebFrameLoader subframeIsLoading]): + (-[WebFrameLoader checkNewWindowPolicyForRequest:action:frameName:formState:andCall:withSelector:]): + (-[WebFrameLoader continueAfterNewWindowPolicy:]): + (-[WebFrameLoader checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector:]): + (-[WebFrameLoader sendRemainingDelegateMessagesWithIdentifier:response:length:error:]): + (-[WebFrameLoader loadRequest:inFrameNamed:]): + (-[WebFrameLoader postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): + (-[WebFrameLoader detachChildren]): + (-[WebFrameLoader detachFromParent]): + (-[WebFrameLoader addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): + (-[WebFrameLoader safeLoadURL:]): + (-[WebFrameLoader actionInformationForLoadType:isFormSubmission:event:originalURL:]): + (-[WebFrameLoader actionInformationForNavigationType:event:originalURL:]): + (-[WebFrameLoader checkLoadComplete]): + * Loader/WebFrameLoaderClient.h: + * Loader/WebSubresourceLoader.m: + (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]): + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge close]): + (-[WebFrameBridge tokenizerProcessedData]): + (-[WebFrameBridge frameDetached]): + * WebView/WebDataSourceInternal.h: + * WebView/WebFrame.m: + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _prepareForDataSourceReplacement]): + (-[WebFrame _detachedFromParent1]): + (-[WebFrame _detachedFromParent2]): + (-[WebFrame _detachedFromParent3]): + (-[WebFrame _detachedFromParent4]): + (-[WebFrame _updateHistoryAfterClientRedirect]): + (-[WebFrame _loadedFromPageCache]): + * WebView/WebFrameInternal.h: + * WebView/WebPDFView.m: + (-[WebPDFView PDFViewWillClickOnLink:withURL:]): + * WebView/WebView.m: + (-[WebView _close]): + (-[WebView setDefersCallbacks:]): + +2006-10-08 Maciej Stachowiak + + Reviewed by Darin. + + - avoid need for WebKitSystemInterface in loader code, via WebCore cover for wkSupportsMultipartXMixedReplace + + * Loader/WebDocumentLoader.m: + (-[WebDocumentLoader initWithRequest:]): + * Loader/WebMainResourceLoader.m: + * Loader/WebSubresourceLoader.m: + (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]): + * WebCoreSupport/WebSystemInterface.m: + (InitWebCoreSystemInterface): + * WebView/WebDataSource.m: + (-[WebDataSource _initWithDocumentLoader:]): + +2006-10-08 Darin Adler + + - build fix (also a fix for a crasher I forgot to commit before) + + * Loader/WebFrameLoader.m: Added some missing includes. + (-[WebFrameLoader checkLoadCompleteForThisFrame]): + Added a needed retain/release. + +2006-10-08 Darin Adler + + Reviewed by Anders. + + - quick fix to loader problem causing layout test failures + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _finishedLoading]): Use a local variable for the bridge + that we retain/release. + (-[WebFrameLoader continueLoadRequestAfterNewWindowPolicy:frameName:formState:]): + Same here. + +2006-10-08 Maciej Stachowiak + + Reviewed by Adam. + + - removed a few includes from WebFrameLoader, fixed up as appropriate + - segregated header includes into ones that need to go away to move the code and ones that don't + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _privateBrowsingEnabled]): + (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]): + * Loader/WebFrameLoaderClient.h: + * WebView/WebFrame.m: + (-[WebFrame _privateBrowsingEnabled]): + +2006-10-08 Darin Adler + + Reviewed by Maciej. + + - moved a few methods from WebFrame to WebFrameLoader + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _setState:]): + (-[WebFrameLoader stopLoadingSubframes]): + (-[WebFrameLoader _receivedMainResourceError:complete:]): + (-[WebFrameLoader closeOldDataSources]): + (-[WebFrameLoader commitProvisionalLoad:]): + (-[WebFrameLoader _finishedLoading]): + (isBackForwardLoadType): + (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]): + (-[WebFrameLoader didFirstLayout]): + (-[WebFrameLoader frameLoadCompleted]): + (-[WebFrameLoader transitionToCommitted:]): + (-[WebFrameLoader checkLoadCompleteForThisFrame]): + (-[WebFrameLoader continueLoadRequestAfterNewWindowPolicy:frameName:formState:]): + (-[WebFrameLoader sendRemainingDelegateMessagesWithIdentifier:response:length:error:]): + (-[WebFrameLoader requestFromDelegateForRequest:identifier:error:]): + (-[WebFrameLoader loadRequest:inFrameNamed:]): + (-[WebFrameLoader postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): + * Loader/WebFrameLoaderClient.h: + * Plugins/WebPluginController.m: + (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]): + * WebCoreSupport/WebFrameBridge.h: + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge initMainFrameWithPage:frameName:view:]): + (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]): + (-[WebFrameBridge dealloc]): + (-[WebFrameBridge frameLoader]): + (-[WebFrameBridge setTitle:]): + (-[WebFrameBridge receivedData:textEncodingName:]): + (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:]): + (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]): + (-[WebFrameBridge objectLoadedFromCacheWithURL:response:data:]): + (-[WebFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]): + (-[WebFrameBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]): + (-[WebFrameBridge reportClientRedirectCancelled:]): + (-[WebFrameBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]): + (-[WebFrameBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): + (-[WebFrameBridge didFirstLayout]): + (-[WebFrameBridge notifyIconChanged:]): + (-[WebFrameBridge originalRequestURL]): + (-[WebFrameBridge isLoadTypeReload]): + * WebView/WebFrame.m: + (-[WebFrame _opened]): + (-[WebFrame _checkLoadComplete]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _actionInformationForLoadType:isFormSubmission:event:originalURL:]): + (-[WebFrame _loadURL:referrer:intoChild:]): + (-[WebFrame _currentBackForwardListItemToResetTo]): + (-[WebFrame _updateBackground]): + (-[WebFrame _frameLoader]): + (-[WebFrame _frameLoadCompleted]): + (-[WebFrame _makeDocumentView]): + (-[WebFrame _updateHistoryForCommit]): + (-[WebFrame _updateHistoryForReload]): + (-[WebFrame _updateHistoryForStandardLoad]): + (-[WebFrame _updateHistoryForBackForwardNavigation]): + (-[WebFrame _updateHistoryForInternalLoad]): + (-[WebFrame _tokenForLoadErrorReset]): + (-[WebFrame _resetAfterLoadError:]): + (-[WebFrame _doNotResetAfterLoadError:]): + * WebView/WebFrameInternal.h: + +2006-10-09 Mark Rowe + + Rubber-stamped by Darin. + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge imageTitleForFilename:size:]): Revert accidental change to a UI_STRING that + is triggering an assertion failure. + +2006-10-08 Maciej Stachowiak + + Reviewed by Darin. + + - remove unneeded non-Loader header includes from WebFrameLoader.h (split WebFrameLoadType into + two coincidentally matching enums) + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrameLoader commitProvisionalLoad:]): + (isBackForwardLoadType): + (-[WebFrameLoader _loadRequest:archive:]): + (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]): + (-[WebFrameLoader _reloadAllowingStaleDataWithOverrideEncoding:]): + (-[WebFrameLoader reload]): + (-[WebFrameLoader isReplacing]): + (-[WebFrameLoader setReplacing]): + (-[WebFrameLoader loadType]): + (-[WebFrameLoader setLoadType:]): + (-[WebFrameLoader checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector:]): + (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]): + (-[WebFrameLoader loadDataSource:withLoadType:formState:]): + (-[WebFrameLoader didFirstLayout]): + * WebCoreSupport/WebFrameBridge.m: + * WebView/WebFrame.m: + (-[WebFrame _transitionToCommitted:]): + (-[WebFrame _provisionalLoadStarted]): + (-[WebFrame _opened]): + (-[WebFrame _checkLoadCompleteForThisFrame]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _recursiveGoToItem:fromItem:withLoadType:]): + (-[WebFrame _goToItem:withLoadType:]): + (-[WebFrame _actionInformationForLoadType:isFormSubmission:event:originalURL:]): + (-[WebFrame _continueLoadRequestAfterNewWindowPolicy:frameName:formState:]): + (-[WebFrame _loadURL:referrer:intoChild:]): + (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): + (-[WebFrame _currentBackForwardListItemToResetTo]): + (-[WebFrame _itemForRestoringDocState]): + (-[WebFrame _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): + (-[WebFrame _loadType]): + (-[WebFrame loadRequest:]): + * WebView/WebFrameInternal.h: + * WebView/WebView.m: + +2006-10-08 Darin Adler + + Reviewed by Maciej. + + - move WebFrameLoader creation and ownership from WebFrame to WebFrameBridge + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader stopLoadingSubframes]): + (-[WebFrameLoader closeOldDataSources]): + * WebCoreSupport/WebFrameBridge.h: + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge initMainFrameWithPage:frameName:view:]): + (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]): + (-[WebFrameBridge dealloc]): + (-[WebFrameBridge loader]): + (-[WebFrameBridge setTitle:]): + (-[WebFrameBridge receivedData:textEncodingName:]): + (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:]): + (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]): + (-[WebFrameBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]): + (-[WebFrameBridge reportClientRedirectCancelled:]): + (-[WebFrameBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]): + (-[WebFrameBridge didFirstLayout]): + (-[WebFrameBridge imageTitleForFilename:size:]): + (-[WebFrameBridge notifyIconChanged:]): + (-[WebFrameBridge originalRequestURL]): + (-[WebFrameBridge isLoadTypeReload]): + * WebView/WebFrame.m: + (-[NSView setWebFrame::]): + (-[WebFramePrivate dealloc]): + (-[WebFramePrivate setWebFrameView:]): + (-[WebFramePrivate setProvisionalItem:]): + (-[WebFrame _webDataRequestForData:MIMEType:textEncodingName:baseURL:unreachableURL:]): + (-[WebFrame _createItem:]): + (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]): + (-[WebFrame _detachFromParent]): + (-[WebFrame _makeDocumentView]): + (-[WebFrame _transitionToCommitted:]): + (-[WebFrame _provisionalLoadStarted]): + (-[WebFrame _opened]): + (-[WebFrame _checkLoadCompleteForThisFrame]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _recursiveGoToItem:fromItem:withLoadType:]): + (-[WebFrame _continueLoadRequestAfterNewWindowPolicy:frameName:formState:]): + (-[WebFrame _loadURL:referrer:intoChild:]): + (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): + (-[WebFrame _setTitle:]): + (-[WebFrame _defersCallbacksChanged]): + (-[WebFrame _currentBackForwardListItemToResetTo]): + (-[WebFrame _itemForSavingDocState]): + (-[WebFrame _itemForRestoringDocState]): + (-[WebFrame _saveDocumentAndScrollState]): + (-[WebFrame _shouldTreatURLAsSameAsCurrent:]): + (-[WebFrame _loadRequest:inFrameNamed:]): + (-[WebFrame _initWithWebFrameView:webView:bridge:]): + (-[WebFrame _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): + (-[WebFrame _frameLoader]): + (-[WebFrame _prepareForDataSourceReplacement]): + (-[WebFrame _restoreScrollPositionAndViewState]): + (-[WebFrame _firstLayoutDone]): + (-[WebFrame _loadType]): + (-[WebFrame frameView]): + (-[WebFrame provisionalDataSource]): + (-[WebFrame dataSource]): + (-[WebFrame loadRequest:]): + (-[WebFrame loadArchive:]): + (-[WebFrame stopLoading]): + (-[WebFrame reload]): + (-[WebFrame _resetBackForwardList]): + (-[WebFrame _invalidateCurrentItemPageCache]): + (-[WebFrame _provisionalItemIsTarget]): + (-[WebFrame _loadProvisionalItemFromPageCache]): + * WebView/WebFrameInternal.h: + +2006-10-08 Maciej Stachowiak + + Reviewed by Darin. + + - move remaining movable data fields from WebFrameLoader to WebFrame + + * Loader/WebDocumentLoadState.m: + (-[WebDocumentLoadState commitIfReady]): + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader provisionalLoadStarted]): + (-[WebFrameLoader _setState:]): + (-[WebFrameLoader stopLoadingSubframes]): + (-[WebFrameLoader stopLoading]): + (-[WebFrameLoader startLoading]): + (-[WebFrameLoader _receivedMainResourceError:complete:]): + (-[WebFrameLoader clientRedirectCancelledOrFinished:]): + (-[WebFrameLoader clientRedirectedTo:delay:fireDate:lockHistory:isJavaScriptFormAction:]): + (-[WebFrameLoader shouldReloadForCurrent:andDestination:]): + (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrameLoader continueFragmentScrollAfterNavigationPolicy:formState:]): + (-[WebFrameLoader closeOldDataSources]): + (-[WebFrameLoader commitProvisionalLoad:]): + (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]): + (-[WebFrameLoader isQuickRedirectComing]): + * Loader/WebFrameLoaderClient.h: + * WebCoreSupport/WebFrameBridge.h: + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge frameLoader]): + (-[WebFrameBridge setTitle:]): + (-[WebFrameBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]): + (-[WebFrameBridge reportClientRedirectCancelled:]): + (-[WebFrameBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]): + * WebView/WebDataSource.m: + (-[WebDataSource _loadFromPageCache:]): + * WebView/WebFrame.m: + (-[NSView setWebFrame::]): + (-[WebFrame _addHistoryItemForFragmentScroll]): + (-[WebFrame _didFinishLoad]): + (-[WebFrame _provisionalLoadStarted]): + (-[WebFrame _checkLoadCompleteForThisFrame]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _loadURL:referrer:intoChild:]): + (-[WebFrame _frameLoadCompleted]): + (-[WebFrame stopLoading]): + (-[WebFrame _invalidateCurrentItemPageCache]): + * WebView/WebFrameInternal.h: + +2006-10-08 Darin Adler + + Rubber stamped by Maciej. + + - changed "document load state" to "document loader" + + * Loader/WebDocumentLoadState.h: Removed. + * Loader/WebDocumentLoadState.m: Removed. + * Loader/WebDocumentLoader.h: Added. + * Loader/WebDocumentLoader.m: Added. + (-[WebDocumentLoader setMainDocumentError:]): + (-[WebDocumentLoader mainReceivedError:complete:]): + (-[WebDocumentLoader finishedLoading]): + (-[WebDocumentLoader commitLoadWithData:]): + (-[WebDocumentLoader setupForReplaceByMIMEType:]): + (-[WebDocumentLoader updateLoading]): + (-[WebDocumentLoader setTitle:]): + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader dealloc]): + (-[WebFrameLoader activeDocumentLoader]): + (-[WebFrameLoader activeDataSource]): + (-[WebFrameLoader addPlugInStreamLoader:]): + (-[WebFrameLoader removePlugInStreamLoader:]): + (-[WebFrameLoader addSubresourceLoader:]): + (-[WebFrameLoader removeSubresourceLoader:]): + (-[WebFrameLoader dataSource]): + (-[WebFrameLoader setDocumentLoader:]): + (-[WebFrameLoader documentLoader]): + (-[WebFrameLoader policyDataSource]): + (-[WebFrameLoader setPolicyDocumentLoader:]): + (-[WebFrameLoader clearDataSource]): + (-[WebFrameLoader provisionalDataSource]): + (-[WebFrameLoader provisionalDocumentLoader]): + (-[WebFrameLoader setProvisionalDocumentLoader:]): + (-[WebFrameLoader _clearProvisionalDataSource]): + (-[WebFrameLoader _setState:]): + (-[WebFrameLoader clearProvisionalLoad]): + (-[WebFrameLoader commitProvisionalLoad]): + (-[WebFrameLoader stopLoading]): + (-[WebFrameLoader startLoading]): + (-[WebFrameLoader startProvisionalLoad:]): + (-[WebFrameLoader setupForReplace]): + (-[WebFrameLoader _didReceiveResponse:forResource:]): + (-[WebFrameLoader _originalRequest]): + (-[WebFrameLoader _receivedMainResourceError:complete:]): + (-[WebFrameLoader _receivedData:]): + (-[WebFrameLoader _setRequest:]): + (-[WebFrameLoader _isStopping]): + (-[WebFrameLoader _setupForReplaceByMIMEType:]): + (-[WebFrameLoader _setResponse:]): + (-[WebFrameLoader _mainReceivedError:complete:]): + (-[WebFrameLoader _finishedLoading]): + (-[WebFrameLoader _checkContentPolicyForMIMEType:andCall:withSelector:]): + (-[WebFrameLoader _loadRequest:archive:]): + (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]): + (-[WebFrameLoader _reloadAllowingStaleDataWithOverrideEncoding:]): + (-[WebFrameLoader reload]): + (-[WebFrameLoader finishedLoadingDocument:]): + (-[WebFrameLoader committedLoadWithDocumentLoader:data:]): + (-[WebFrameLoader revertToProvisionalWithDocumentLoader:]): + (-[WebFrameLoader documentLoader:setMainDocumentError:]): + (-[WebFrameLoader documentLoader:mainReceivedCompleteError:]): + (-[WebFrameLoader finalSetupForReplaceWithDocumentLoader:]): + (-[WebFrameLoader willChangeTitleForDocument:]): + (-[WebFrameLoader didChangeTitleForDocument:]): + (-[WebFrameLoader checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector:]): + (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]): + (-[WebFrameLoader loadDataSource:withLoadType:formState:]): + * Plugins/WebPluginController.m: + (-[WebPluginController pluginView:receivedResponse:]): + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge setTitle:]): + (-[WebFrameBridge receivedData:textEncodingName:]): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDataSource.m: + (-[WebDataSourcePrivate dealloc]): + (-[WebDataSource _mainDocumentError]): + (-[WebDataSource _loadFromPageCache:]): + (-[WebDataSource _bridge]): + (-[WebDataSource _webView]): + (-[WebDataSource _URLForHistory]): + (-[WebDataSource _documentLoader]): + (-[WebDataSource _initWithDocumentLoader:]): + (-[WebDataSource initWithRequest:]): + (-[WebDataSource dealloc]): + (-[WebDataSource data]): + (-[WebDataSource webFrame]): + (-[WebDataSource initialRequest]): + (-[WebDataSource request]): + (-[WebDataSource response]): + (-[WebDataSource textEncodingName]): + (-[WebDataSource isLoading]): + (-[WebDataSource unreachableURL]): + (-[WebDataSource webArchive]): + * WebView/WebDataSourceInternal.h: + * WebView/WebDocumentLoadStateMac.h: Removed. + * WebView/WebDocumentLoadStateMac.m: Removed. + * WebView/WebDocumentLoaderMac.h: Added. + * WebView/WebDocumentLoaderMac.m: Added. + * WebView/WebFrame.m: + (-[WebFrame _createItem:]): + (-[WebFrame _receivedMainResourceError:]): + (-[WebFrame _transitionToCommitted:]): + (-[WebFrame _opened]): + (-[WebFrame _checkLoadCompleteForThisFrame]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:formState:]): + (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrame _addChild:]): + (-[WebFrame _provisionalLoadStarted]): + (-[WebFrame _dataSourceForDocumentLoader:]): + (-[WebFrame _createDocumentLoaderWithRequest:]): + * WebView/WebFrameInternal.h: + * WebView/WebHTMLRepresentation.m: + (-[WebHTMLRepresentation title]): + * WebView/WebView.m: + (-[WebView _mainFrameOverrideEncoding]): + +2006-10-08 Darin Adler + + Reviewed by Mitz. + + - fix http://bugs.webkit.org/show_bug.cgi?id=11218 + REGRESSION: Assertion failure in WebFrameLoader when going back from a file: or data: URL + + Also added a helper function in WebFrameLoader so that checks for back/forward load types + are easier to read. + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _setPolicyDocumentLoadState:]): Fixed line of code that was setting the load + state to nil instead of the passed-in object. + (isBackForwardLoadType): Added. + (-[WebFrameLoader shouldReloadToHandleUnreachableURLFromRequest:]): Use isBackForwardLoadType. + (-[WebFrameLoader checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector:]): + Ditto. + (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]): Ditto. + +2006-10-08 Darin Adler + + Reviewed by Maciej. + + - fix two recently introduced leaks: one of an NSString, the other of a WebDataSource + + * Loader/WebDocumentLoadState.m: (-[WebDocumentLoadState setTitle:]): + Rearranged code to avoid storage leak in case of identical title. + + * Loader/WebFrameLoader.h: Removed _setPolicyDocumentLoadState: method + from the header. + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _setPolicyDocumentLoadState:]): Added logic to call detachFromFrameLoader + as needed if this load state is going away rather than moving on to become the provisional + load state. + (-[WebFrameLoader shouldReloadToHandleUnreachableURLFromRequest:]): Tweaked formatting. + (-[WebFrameLoader _loadRequest:archive:]): Added an assertion. + (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]): Added an assertion. + (-[WebFrameLoader _reloadAllowingStaleDataWithOverrideEncoding:]): Added an assertion. + (-[WebFrameLoader reload]): Added an assertion. + (-[WebFrameLoader loadDataSource:withLoadType:formState:]): Added a local variable to avoid + calling _documentLoadState over and over again. + +2006-10-07 Don Gibson + + Reviewed/landed by Adam. + + http://bugs.webkit.org/show_bug.cgi?id=11199 + Update Session History when a load is committed rather than completed. + + * COM/WebFrame.cpp: + (WebFrame::receivedResponse): + (WebFrame::receivedAllData): + +2006-10-07 Sam Weinig + + Reviewed by Tim H. + + Patch for http://bugs.webkit.org/show_bug.cgi?id=11198 + Auto-generate a few more Objective-C DOM interfaces + + * MigrateHeaders.make: + +2006-10-07 Mark Rowe + + Reviewed by Mitz. + + Fix memory leak from -[WebDocumentLoadState setTitle:]. + + * Loader/WebDocumentLoadState.m: + (-[WebDocumentLoadState setTitle:]): Ensure 'trimmed' is released even when length is + zero, and untangle the confusing logic around this case. + +2006-10-06 Brady Eidson + + Reviewed by Darin + + Refactored a whole bunch of WebFramePrivate.h SPI to WebFrameInternal + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + * History/WebHistoryItem.m: + * Loader/WebFrameLoader.h: + * Misc/WebCoreStatistics.m: + * Misc/WebElementDictionary.m: + * Plugins/WebNetscapePluginEmbeddedView.m: + * Plugins/WebPluginController.m: + * WebCoreSupport/WebViewFactory.m: + * WebView/WebArchiver.m: + * WebView/WebDataSource.m: + * WebView/WebFrame.m: + (-[WebFrame _isDescendantOfFrame:]): + (-[WebFrame _setShouldCreateRenderers:]): + (-[WebFrame _bodyBackgroundColor]): + (-[WebFrame _isFrameSet]): + (-[WebFrame _firstLayoutDone]): + (-[WebFrame _loadType]): + * WebView/WebFrameInternal.h: + * WebView/WebFramePrivate.h: + * WebView/WebHTMLRepresentation.m: + * WebView/WebScriptDebugDelegate.m: + +2006-10-06 Maciej Stachowiak + + Reviewed by Darin. + + - Move all delegate dispatching code out of WebDataSource. + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader startLoading]): + (-[WebFrameLoader _identifierForInitialRequest:]): + (-[WebFrameLoader _willSendRequest:forResource:redirectResponse:]): + (-[WebFrameLoader _didReceiveAuthenticationChallenge:forResource:]): + (-[WebFrameLoader _didCancelAuthenticationChallenge:forResource:]): + (-[WebFrameLoader _didReceiveResponse:forResource:]): + (-[WebFrameLoader _didReceiveData:contentLength:forResource:]): + (-[WebFrameLoader _didFinishLoadingForResource:]): + (-[WebFrameLoader _didFailLoadingWithError:forResource:]): + (-[WebFrameLoader _receivedMainResourceError:complete:]): + (-[WebFrameLoader _downloadWithLoadingConnection:request:response:proxy:]): + (-[WebFrameLoader _checkContentPolicyForMIMEType:andCall:withSelector:]): + * WebView/WebDataSource.m: + (-[WebDataSource _setLoadingFromPageCache:]): + (-[WebDataSource _stopLoadingWithError:]): + * WebView/WebDataSourceInternal.h: + +2006-10-06 Darin Adler + + Reviewed by Maciej. + + - moved firstLayoutDone BOOL from WebFrame to WebFrameLoader + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader didFirstLayout]): + (-[WebFrameLoader provisionalLoadStarted]): + (-[WebFrameLoader frameLoadCompleted]): + (-[WebFrameLoader firstLayoutDone]): + * WebCoreSupport/WebFrameBridge.m: (-[WebFrameBridge didFirstLayout]): + * WebView/WebFrame.m: + (-[WebFrame _firstLayoutDone]): + (-[WebFrame _provisionalLoadStarted]): + (-[WebFrame _frameLoadCompleted]): + (-[WebFrame _restoreScrollPositionAndViewState]): + * WebView/WebFrameInternal.h: + +2006-10-06 Darin Adler + + Reviewed by Maciej. + + - moved more data and the corresponding code from WebFrame to WebFrameLoader + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader cannotShowMIMETypeForURL:]): + (-[WebFrameLoader _checkNavigationPolicyForRequest:andCall:withSelector:]): + (-[WebFrameLoader shouldReloadToHandleUnreachableURLFromRequest:]): + (-[WebFrameLoader _loadRequest:archive:]): + (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]): + (-[WebFrameLoader _reloadAllowingStaleDataWithOverrideEncoding:]): + (-[WebFrameLoader reload]): + (-[WebFrameLoader invalidatePendingPolicyDecisionCallingDefaultAction:]): + (-[WebFrameLoader checkNewWindowPolicyForRequest:action:frameName:formState:andCall:withSelector:]): + (-[WebFrameLoader _continueAfterNewWindowPolicy:]): + (-[WebFrameLoader checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector:]): + (-[WebFrameLoader continueAfterNavigationPolicy:]): + (-[WebFrameLoader continueAfterWillSubmitForm:]): + (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]): + (-[WebFrameLoader loadDataSource:withLoadType:formState:]): + (-[WebFrameLoader handleUnimplementablePolicyWithErrorCode:forURL:]): + (-[WebFrameLoader delegateIsHandlingProvisionalLoadError]): + (-[WebFrameLoader setDelegateIsHandlingProvisionalLoadError:]): + * Loader/WebFrameLoaderClient.h: + * WebView/WebFrame.m: + (-[NSView setWebFrame::]): + (-[WebFramePrivate dealloc]): + (-[WebFrame _checkLoadCompleteForThisFrame]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): + (-[WebFrame _loadRequest:inFrameNamed:]): + (-[WebFrame stopLoading]): + (-[WebFrame _resetBackForwardList]): + (-[WebFrame _quickRedirectComing]): + (-[WebFrame _provisionalItemIsTarget]): + (-[WebFrame _loadProvisionalItemFromPageCache]): + * WebView/WebFrameInternal.h: + * WebView/WebFramePrivate.h: + + * WebKit.xcodeproj/project.pbxproj: + +2006-10-06 Maciej Stachowiak + + Rubber stamped by Darin. + + - removed includes of unused headers. + + * WebView/WebDataSource.m: + +2006-10-06 Maciej Stachowiak + + Not reviewed. + + - fix build breakage + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader willChangeTitleForDocumentLoadState:]): + (-[WebFrameLoader didChangeTitleForDocumentLoadState:]): + +2006-10-06 Maciej Stachowiak + + Reviewed by Darin. + + - move remaining movable WebDataSource fields to WebDocumentLoadState + + * Loader/WebDocumentLoadState.h: + * Loader/WebDocumentLoadState.m: + (-[WebDocumentLoadState dealloc]): + (-[WebDocumentLoadState isLoadingInAPISense]): + (-[WebDocumentLoadState addResponse:]): + (-[WebDocumentLoadState stopRecordingResponses]): + (-[WebDocumentLoadState title]): + (-[WebDocumentLoadState setLastCheckedRequest:]): + (-[WebDocumentLoadState lastCheckedRequest]): + (-[WebDocumentLoadState triggeringAction]): + (-[WebDocumentLoadState setTriggeringAction:]): + (-[WebDocumentLoadState responses]): + (-[WebDocumentLoadState setOverrideEncoding:]): + (-[WebDocumentLoadState overrideEncoding]): + (-[WebDocumentLoadState setTitle:]): + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _setState:]): + (-[WebFrameLoader _loadRequest:archive:]): + (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]): + (-[WebFrameLoader _reloadAllowingStaleDataWithOverrideEncoding:]): + (-[WebFrameLoader reload]): + (-[WebFrameLoader willChangeTitleForDocumentLoadState:]): + (-[WebFrameLoader didChangeTitleForDocumentLoadState:]): + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge setTitle:]): + (-[WebFrameBridge receivedData:textEncodingName:]): + * WebView/WebDataSource.m: + (-[WebDataSourcePrivate dealloc]): + (-[WebDataSource _didReceiveResponse:forResource:]): + (-[WebDataSource textEncodingName]): + * WebView/WebDataSourceInternal.h: + * WebView/WebFrame.m: + (-[WebFrame _opened]): + (-[WebFrame _checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector:]): + (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrame _addChild:]): + (-[WebFrame _loadDataSource:withLoadType:formState:]): + * WebView/WebHTMLRepresentation.m: + (-[WebHTMLRepresentation title]): + * WebView/WebView.m: + (-[WebView _mainFrameOverrideEncoding]): + +2006-10-06 Darin Adler + + Reviewed by Maciej. + + - moved loadType into WebFrameLoader + + * WebView/WebFramePrivate.h: Removed _setLoadType, but not _loadType because it's + currently used by Safari. + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _loadRequest:archive:]): + (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]): + (-[WebFrameLoader isReplacing]): + (-[WebFrameLoader setReplacing]): + (-[WebFrameLoader loadType]): + (-[WebFrameLoader setLoadType:]): + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge isLoadTypeReload]): + * WebView/WebFrame.m: + (-[WebFrame _loadType]): + (-[WebFrame _transitionToCommitted:]): + (-[WebFrame _commitProvisionalLoad:]): + (-[WebFrame _opened]): + (-[WebFrame _checkLoadCompleteForThisFrame]): + (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrame _loadURL:referrer:intoChild:]): + (-[WebFrame _currentBackForwardListItemToResetTo]): + (-[WebFrame _itemForRestoringDocState]): + (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]): + (-[WebFrame _didFirstLayout]): + (-[WebFrame _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): + (-[WebFrame _provisionalLoadStarted]): + (-[WebFrame loadRequest:]): + +2006-10-06 Darin Adler + + Reviewed by Maciej. + + - added WebFrameLoaderClient protocol -- to be used to make WebFrameLoader forget all about WebFrame + + * Loader/WebDocumentLoadState.h: Added comment about Maciej's planned renaming here. + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: Renamed webFrame to client and added the new protocol. + Eventually we'll be removing the dependency on WebFrame entirely. + * WebView/WebFrame.m: (-[WebFrame _initWithWebFrameView:webView:bridge:]): Update to call the method + by its new name. + + * Loader/WebFrameLoaderClient.h: Added. + * WebKit.xcodeproj/project.pbxproj: Updated for new file, sorted things. + +2006-10-06 Maciej Stachowiak + + Reviewed by Darin. + + - segregate WebFrame methods into ones that should be moved into WebFrameLoader and ones that don't need to + + Also removed useless WebFrameLoader part + + * WebView/WebFrame.m: + (-[WebFramePrivate dealloc]): + +2006-10-06 Maciej Stachowiak + + Reviewed by Anders. + + - moved more data from WebDataSource to WebDocumentLoadState + + * Loader/WebDocumentLoadState.h: + * Loader/WebDocumentLoadState.m: + (-[WebDocumentLoadState commitLoadWithData:]): + (-[WebDocumentLoadState prepareForLoadStart]): + (-[WebDocumentLoadState loadingStartedTime]): + (-[WebDocumentLoadState setIsClientRedirect:]): + (-[WebDocumentLoadState isClientRedirect]): + (-[WebDocumentLoadState setPrimaryLoadComplete:]): + (-[WebDocumentLoadState isLoadingInAPISense]): + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _setState:]): + (-[WebFrameLoader _finishedLoading]): + (-[WebFrameLoader documentLoadState:mainReceivedCompleteError:]): + (-[WebFrameLoader prepareForLoadStart]): + (-[WebFrameLoader subframeIsLoading]): + * WebView/WebDataSource.m: + (-[WebDataSource _fileWrapperForURL:]): + (-[WebDataSource _startLoading]): + (-[WebDataSource _loadFromPageCache:]): + (-[WebDataSource isLoading]): + * WebView/WebDataSourceInternal.h: + * WebView/WebFrame.m: + (-[WebFrame _transitionToCommitted:]): + (-[WebFrame _opened]): + (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + +2006-10-06 Alexey Proskuryakov + + Reviewed by Darin. + + http://bugs.webkit.org/show_bug.cgi?id=11183 + REGRESSION: Safari loads error pages unstyled + + * WebView/WebFrame.m: + (-[WebFrame _loadHTMLString:baseURL:unreachableURL:]): + Use utf-8 encoding instead of the string's "fastest" encoding. + +2006-10-06 Maciej Stachowiak + + Reviewed by Adam. + + - fixed the following bugs: + + http://bugs.webkit.org/show_bug.cgi?id=11136 + "REGRESSION: Safari snippet editor doesn't work" + http://bugs.webkit.org/show_bug.cgi?id=11140 + "REGRESSION: view source window blank" + http://bugs.webkit.org/show_bug.cgi?id=11146 + "REGRESSION: Instead of showing the error page, Safari opens its Resources folder in the Finder" + + Possibly more. + + * Loader/WebDocumentLoadState.h: + * Loader/WebDocumentLoadState.m: + (-[WebDocumentLoadState actualRequest]): New method. + * WebView/WebDataSource.m: + (-[WebDataSource _startLoading]): We need to make sure not to start loading the main + resource with the fake external request for an applewebdata: request. + +2006-10-05 Adele Peterson + + Reviewed by the letter 'B'. + + More build fixes. + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDynamicScrollBarsView.h: + * WebView/WebDynamicScrollBarsView.m: + (-[WebDynamicScrollBarsView updateScrollers]): + (-[WebDynamicScrollBarsView setAllowsScrolling:]): + (-[WebDynamicScrollBarsView allowsScrolling]): + (-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]): + (-[WebDynamicScrollBarsView setAllowsVerticalScrolling:]): + (-[WebDynamicScrollBarsView allowsHorizontalScrolling]): + (-[WebDynamicScrollBarsView allowsVerticalScrolling]): + (-[WebDynamicScrollBarsView horizontalScrollingMode]): + (-[WebDynamicScrollBarsView verticalScrollingMode]): + (-[WebDynamicScrollBarsView setHorizontalScrollingMode:]): + (-[WebDynamicScrollBarsView setVerticalScrollingMode:]): + (-[WebDynamicScrollBarsView setScrollingMode:]): + * WebView/WebView.m: + (-[WebView setAlwaysShowVerticalScroller:]): + (-[WebView alwaysShowVerticalScroller]): + (-[WebView setAlwaysShowHorizontalScroller:]): + (-[WebView alwaysShowHorizontalScroller]): + +2006-10-05 Vladimir Olexa + + Reviewed by Timothy. + + Bug: http://bugs.webkit.org/show_bug.cgi?id=9887 + Continuous spell checking now remembers user's setting. The change is applied globally, + meaning, both TextArea and TextField are affected when either of them enables/disables + spell checking. + + * WebView/WebPreferenceKeysPrivate.h: added a define for WebContinuousSpellCheckingEnabled + * WebView/WebView.m: + (-[WebViewPrivate init]): reads WebContinuousSpellCheckingEnabled from NSUserDefaults + (-[WebView setContinuousSpellCheckingEnabled:]): + (-[WebView isContinuousSpellCheckingEnabled]): + +2006-10-05 MorganL + + Reviewed by Darin. + + Fixes http://bugs.webkit.org/show_bug.cgi?id=11162 + + * COM/WebFrame.cpp: + (WebFrame::loadDataSource): + (WebFrame::receivedResponse): + +2006-10-05 Don Gibson + + Reviewed by Darin, landed by Adam. + + http://bugs.webkit.org/show_bug.cgi?id=11176 + Fix win32 build, adapt to Maciej's ResourceLoader changes. + + * COM/WebFrame.cpp: + (WebFrame::loadDataSource): + +2006-10-05 Marvin Decker + + Reviewed by Darin. + + http://bugs.webkit.org/show_bug.cgi?id=10989 + Provide a way for embedders to implement BrowserExtensionWin + + * COM/Interfaces/IWebUIDelegate.idl: + * COM/WebFrame.cpp: + (WebFrame::createNewWindow): + * COM/WebFrame.h: + +2006-10-04 Mark Rowe + + Reviewed by NOBODY (build fix). + + * WebView/WebView.m: + (-[WebView scrollDOMRangeToVisible:]): Move scrollDOMRangeToVisible: into the correct category. + +2006-09-26 David Smith + + Reviewed by Timothy. + + http://bugs.webkit.org/show_bug.cgi?id=3723 + Add -scrollDOMRangeToVisible: + + * WebView/WebView.m: + (-[WebView scrollDOMRangeToVisible:]): + * WebView/WebViewPrivate.h: + +2006-10-03 Graham Dennis + + Reviewed by Timothy. + + + When contentEditable, cursor doesn't change to hand + + Allow the behaviour of editable links to be specified by a WebPreference + The preference WebKitEditableLinkBehavior has four options: + - AlwaysLive: Safari 2.0 behaviour + - OnlyLiveWithShiftKey: Firefox/WinIE behaviour (and prior WebKit-ToT behaviour) + - LiveWhenNotFocused: Editable links are live only when their editable block is not + focused, or when the shift key is pressed + - DefaultBehavior: This is the same as OnlyLiveWithShiftKey. + + No layout tests, just a modification of a manual-test as it isn't possible to test + this automatically. + + * WebView/WebPreferenceKeysPrivate.h: + * WebView/WebPreferences.m: + (+[WebPreferences initialize]): + (-[WebPreferences editableLinkBehavior]): + (-[WebPreferences setEditableLinkBehavior:]): + * WebView/WebPreferencesPrivate.h: + * WebView/WebView.m: + (-[WebView _updateWebCoreSettingsFromPreferences:]): + +2006-10-03 Justin Garcia + + Reviewed by harrison + + execCommand("Cut"/"Copy"/"Paste") broken in editable subframes. + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge issueCutCommand]): Issue the command on the WebHTMLView, not the WebView. + (-[WebFrameBridge issueCopyCommand]): Ditto. + (-[WebFrameBridge issuePasteCommand]): Ditto. + (-[WebFrameBridge issuePasteAndMatchStyleCommand]): Ditto. + (-[WebFrameBridge issueTransposeCommand]): Fixed formatting. + (-[WebFrameBridge canPaste]): Ask the WebHTMLView, not the WebView. + * WebView/WebHTMLView.m: + (-[WebHTMLView copy:]): Moved to WebInternal + (-[WebHTMLView cut:]): Ditto. + (-[WebHTMLView paste:]): Ditto. + (-[WebHTMLView pasteAsPlainText:]): Ditto. + * WebView/WebHTMLViewInternal.h: + * WebView/WebView.m: Removed the now unused _canPaste. + * WebView/WebViewInternal.h: Ditto. + +2006-10-03 Justin Garcia + + Reviewed by geoff + + REGRESSION: Multipart/x-mixed-replace sub-resources fail to load + + * Loader/WebSubresourceLoader.m: + (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]): + Enable multipart/x-mixed-replace support on the request. This line was accidently removed during + some loader refactoring. + +2006-10-02 Adam Roben + + Reviewed by Maciej. + + Add message paramter to WebView::mouse* methods to pass down to + PlatformMouseEvent. + + * COM/WebView.cpp: + (WebView::mouseMoved): + (WebView::mouseDown): + (WebView::mouseUp): + (WebView::mouseDoubleClick): + (WebViewWndProc): + * COM/WebView.h: + +2006-10-02 Maciej Stachowiak + + Reviewed by Alice. + + - take away direct knowledge of WebFrame from WebDataSource + + * Loader/WebDocumentLoadState.h: + * Loader/WebDocumentLoadState.m: + (-[WebDocumentLoadState setFrameLoader:]): + (-[WebDocumentLoadState detachFromFrameLoader]): + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _setDocumentLoadState:]): + (-[WebFrameLoader _setProvisionalDocumentLoadState:]): + * WebView/WebDataSource.m: + * WebView/WebDataSourceInternal.h: + * WebView/WebDocumentLoadStateMac.m: + (-[WebDocumentLoadStateMac detachFromFrameLoader]): + * WebView/WebFrame.m: + (-[WebFrame _loadDataSource:withLoadType:formState:]): + +2006-10-02 Maciej Stachowiak + + Reviewed by Darin. + + - move a big slice of data and logic from WebDataSource to WebDocumentLoadState + + * Loader/WebDocumentLoadState.h: + * Loader/WebDocumentLoadState.m: + (-[WebDocumentLoadState initWithRequest:]): + (-[WebDocumentLoadState dealloc]): + (-[WebDocumentLoadState originalRequestCopy]): + (-[WebDocumentLoadState request]): + (-[WebDocumentLoadState replaceRequestURLForAnchorScrollWithURL:]): + (-[WebDocumentLoadState setRequest:]): + (-[WebDocumentLoadState setResponse:]): + (-[WebDocumentLoadState isStopping]): + (-[WebDocumentLoadState bridge]): + (-[WebDocumentLoadState setMainDocumentError:]): + (-[WebDocumentLoadState mainDocumentError]): + (-[WebDocumentLoadState clearErrors]): + (-[WebDocumentLoadState mainReceivedError:complete:]): + (-[WebDocumentLoadState stopLoading]): + (-[WebDocumentLoadState setupForReplace]): + (-[WebDocumentLoadState commitIfReady]): + (-[WebDocumentLoadState finishedLoading]): + (-[WebDocumentLoadState setCommitted:]): + (-[WebDocumentLoadState isCommitted]): + (-[WebDocumentLoadState setLoading:]): + (-[WebDocumentLoadState isLoading]): + (-[WebDocumentLoadState commitLoadWithData:]): + (-[WebDocumentLoadState doesProgressiveLoadWithMIMEType:]): + (-[WebDocumentLoadState receivedData:]): + (-[WebDocumentLoadState setupForReplaceByMIMEType:]): + (-[WebDocumentLoadState updateLoading]): + (-[WebDocumentLoadState response]): + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader activeDocumentLoadState]): + (-[WebFrameLoader activeDataSource]): + (-[WebFrameLoader _archivedSubresourceForURL:]): + (-[WebFrameLoader addPlugInStreamLoader:]): + (-[WebFrameLoader removePlugInStreamLoader:]): + (-[WebFrameLoader addSubresourceLoader:]): + (-[WebFrameLoader removeSubresourceLoader:]): + (-[WebFrameLoader documentLoadState]): + (-[WebFrameLoader provisionalDocumentLoadState]): + (-[WebFrameLoader stopLoading]): + (-[WebFrameLoader _originalRequest]): + (-[WebFrameLoader _receivedData:]): + (-[WebFrameLoader _setRequest:]): + (-[WebFrameLoader bridge]): + (-[WebFrameLoader _handleFallbackContent]): + (-[WebFrameLoader _isStopping]): + (-[WebFrameLoader _setupForReplaceByMIMEType:]): + (-[WebFrameLoader _setResponse:]): + (-[WebFrameLoader _mainReceivedError:complete:]): + (-[WebFrameLoader _finishedLoading]): + (-[WebFrameLoader didReceiveServerRedirectForProvisionalLoadForFrame]): + (-[WebFrameLoader finishedLoadingDocumentLoadState:]): + (-[WebFrameLoader commitProvisitionalLoad]): + (-[WebFrameLoader committedLoadWithDocumentLoadState:data:]): + (-[WebFrameLoader isReplacing]): + (-[WebFrameLoader setReplacing]): + (-[WebFrameLoader revertToProvisionalWithDocumentLoadState:]): + (-[WebFrameLoader documentLoadState:setMainDocumentError:]): + (-[WebFrameLoader documentLoadState:mainReceivedCompleteError:]): + (-[WebFrameLoader finalSetupForReplaceWithDocumentLoadState:]): + * WebView/WebDataSource.m: + (-[WebDataSourcePrivate dealloc]): + (-[WebDataSource _prepareForLoadStart]): + (-[WebDataSource _mainDocumentError]): + (-[WebDataSource _finishedLoading]): + (-[WebDataSource _receivedData:]): + (-[WebDataSource _setMainDocumentError:]): + (-[WebDataSource _clearUnarchivingState]): + (-[WebDataSource _revertToProvisionalState]): + (-[WebDataSource _receivedMainResourceError:complete:]): + (-[WebDataSource _startLoading]): + (-[WebDataSource _loadFromPageCache:]): + (-[WebDataSource _bridge]): + (-[WebDataSource _setPrimaryLoadComplete:]): + (-[WebDataSource _URLForHistory]): + (-[WebDataSource _setTitle:]): + (-[WebDataSource _initWithDocumentLoadState:]): + (-[WebDataSource request]): + (-[WebDataSource response]): + (-[WebDataSource isLoading]): + (-[WebDataSource webArchive]): + * WebView/WebDataSourceInternal.h: + * WebView/WebDocumentLoadStateMac.m: + (-[WebDocumentLoadStateMac initWithRequest:]): + * WebView/WebFrame.m: + (-[WebFrame _createItem:]): + (-[WebFrame _receivedMainResourceError:]): + (-[WebFrame _transitionToCommitted:]): + (-[WebFrame _commitProvisionalLoad:]): + (-[WebFrame _checkLoadCompleteForThisFrame]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:formState:]): + (-[WebFrame _didReceiveServerRedirectForProvisionalLoadForFrame]): + (-[WebFrame _provisionalLoadStarted]): + * WebView/WebFrameInternal.h: + +2006-10-02 Justin Garcia + + Reviewed by john + + + REGRESSION: tabbing into page focuses wrong control on 2nd pass + + REGRESSION: Form field is left with secondary selection after tabbing out of WebView + + * WebView/WebHTMLView.m: + (-[NSArray maintainsInactiveSelection]): Replace code that I removed in error in the patch + for 9642. Only leave inactive editable selections in the WebHTMLView if the nextResponder + is in the same WebView. + +2006-10-02 Maciej Stachowiak + + Reviewed by Anders. + + - remove webFrame field from WebDataSourcePrivate, it can get it from WebDocumentLoadState now + + * Loader/WebDocumentLoadState.h: + * Loader/WebDocumentLoadState.m: + (-[WebDocumentLoadState frameLoader]): + * WebView/WebDataSource.m: + (-[WebDataSourcePrivate dealloc]): + (-[WebDataSource _revertToProvisionalState]): + (-[WebDataSource _setupForReplaceByMIMEType:]): + (-[WebDataSource _updateLoading]): + (-[WebDataSource _startLoading]): + (-[WebDataSource _setWebFrame:]): + (-[WebDataSource _defersCallbacksChanged]): + (-[WebDataSource _stopLoading]): + (-[WebDataSource _webView]): + (-[WebDataSource _stopLoadingWithError:]): + (-[WebDataSource _setPrimaryLoadComplete:]): + (-[WebDataSource dealloc]): + (-[WebDataSource webFrame]): + (-[WebDataSource isLoading]): + +2006-10-02 Maciej Stachowiak + + Reviewed by Anders. + + - fix crash on back/forward - reattach WebDocumentLoadState to data source when needed + + * WebView/WebDataSource.m: + (-[WebDataSource _setWebFrame:]): + (-[WebDataSource _initWithDocumentLoadState:]): + * WebView/WebDataSourceInternal.h: + +2006-10-02 Maciej Stachowiak + + Build fix, not reviewed. + + - Added missing files to fix build. + + * WebView/WebDocumentLoadStateMac.h: Added. + * WebView/WebDocumentLoadStateMac.m: Added. + (-[WebDocumentLoadStateMac initWithRequest:]): + (-[WebDocumentLoadStateMac dealloc]): + (-[WebDocumentLoadStateMac setDataSource:]): + (-[WebDocumentLoadStateMac dataSource]): + (-[WebDocumentLoadStateMac setFrameLoader:]): + +2006-10-01 Maciej Stachowiak + + Reviewed by Brady and Oliver. + + - move things around so that WebDataSource and WebDocumentLoadState know about each other in + the right way. This lines things up to move nearly all functionality down to WebDocumentLoadState. + + * Loader/WebDocumentLoadState.h: + * Loader/WebDocumentLoadState.m: + (-[WebDocumentLoadState initWithRequest:]): + (-[WebDocumentLoadState dealloc]): + (-[WebDocumentLoadState originalRequest]): + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader dealloc]): + (-[WebFrameLoader addSubresourceLoader:]): + (-[WebFrameLoader startLoadingMainResourceWithRequest:identifier:]): + (-[WebFrameLoader dataSource]): + (-[WebFrameLoader _setDocumentLoadState:]): + (-[WebFrameLoader policyDataSource]): + (-[WebFrameLoader _setPolicyDocumentLoadState:]): + (-[WebFrameLoader clearDataSource]): + (-[WebFrameLoader provisionalDataSource]): + (-[WebFrameLoader _setProvisionalDocumentLoadState:]): + (-[WebFrameLoader _clearProvisionalDataSource]): + (-[WebFrameLoader _setState:]): + (-[WebFrameLoader clearProvisionalLoad]): + (-[WebFrameLoader commitProvisionalLoad]): + (-[WebFrameLoader stopLoading]): + (-[WebFrameLoader startLoading]): + (-[WebFrameLoader startProvisionalLoad:]): + (-[WebFrameLoader setupForReplace]): + (-[WebFrameLoader activeDocumentLoadState]): + (-[WebFrameLoader activeDataSource]): + (-[WebFrameLoader _loadRequest:archive:]): + (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]): + (-[WebFrameLoader _reloadAllowingStaleDataWithOverrideEncoding:]): + (-[WebFrameLoader reload]): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDataSource.m: + (-[WebDataSourcePrivate dealloc]): + (-[WebDataSource _startLoading]): + (-[WebDataSource _setWebFrame:]): + (-[WebDataSource _documentLoadState]): + (-[WebDataSource _initWithDocumentLoadState:]): + (-[WebDataSource initWithRequest:]): + (-[WebDataSource initialRequest]): + (-[WebDataSource unreachableURL]): + * WebView/WebDataSourceInternal.h: + * WebView/WebFrame.m: + (-[WebFramePrivate dealloc]): + (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]): + (-[WebFrame _loadDataSource:withLoadType:formState:]): + (-[WebFrame _policyDataSource]): + (-[WebFrame _shouldReloadToHandleUnreachableURLFromRequest:]): + (-[WebFrame _dataSourceForDocumentLoadState:]): + (-[WebFrame _createDocumentLoadStateWithRequest:]): + * WebView/WebFrameInternal.h: + +2006-09-29 David Hyatt + + Change the default minimum font size pref to 0 in order to allow + font-size:0 to work. + + * WebView/WebPreferences.m: + (+[WebPreferences initialize]): + +2006-09-28 Timothy Hatcher + + Reviewed by Maciej. + + Switch the inspector over to use border-image with styled buttons and selects. + + * WebInspector/WebInspector.m: + (-[NSWindow window]): + (-[NSWindow setWebFrame:]): + (-[WebInspector _updateRoot]): + * WebInspector/webInspector/Images/button.png: Added. + * WebInspector/webInspector/Images/buttonDivider.png: Added. + * WebInspector/webInspector/Images/buttonPressed.png: Added. + * WebInspector/webInspector/Images/popup.png: Added. + * WebInspector/webInspector/Images/popupFill.png: Removed. + * WebInspector/webInspector/Images/popupFillPressed.png: Removed. + * WebInspector/webInspector/Images/popupLeft.png: Removed. + * WebInspector/webInspector/Images/popupLeftPressed.png: Removed. + * WebInspector/webInspector/Images/popupPressed.png: Added. + * WebInspector/webInspector/Images/popupRight.png: Removed. + * WebInspector/webInspector/Images/popupRightPressed.png: Removed. + * WebInspector/webInspector/Images/squareButtonRight.png: Removed. + * WebInspector/webInspector/Images/squareButtonRightPressed.png: Removed. + * WebInspector/webInspector/inspector.css: + * WebInspector/webInspector/inspector.html: + * WebInspector/webInspector/inspector.js: + +2006-09-28 Alice Liu + + fixing the windows build + + * COM/WebView.cpp: + (WebView::mouseMoved): + (WebView::mouseDown): + (WebView::mouseUp): + (WebView::mouseDoubleClick): + +2006-09-27 Justin Garcia + + Reviewed by thatcher + + + Writing Direction menu doesn't reflect the current writing direction (9773) + + * English.lproj/Localizable.strings: Added "Right to Left" and "Left to Right" + * WebView/WebHTMLView.m: + (-[NSArray validateUserInterfaceItem:]): Validate menu items that perform + toggleBaseWritingDirection and changeBaseWritingDirection. + Disable the menu item that changes the writing direction to NSWritingDirectionNautral + because NSWritingDirectionNatural's behavior can't be implemented with CSS. + Take control of the title of the menu item that performs toggleBaseWritingDirection: + instead of checking/unchecking it, otherwise we wouldn't know what a check means. + (-[NSArray changeBaseWritingDirection:]): ASSERT that the requested writing + direction is not NSWritingDirectionNatural, since we've disabled the + menu item that performs it. + +2006-09-27 MorganL + + Reviewed by Maciej, landed by Brady + + Update URL request associated with provisional data source on redirect. + Notify IWebFrameLoadDelegate of redirects for the provisional load. + Notify IWebFrameLoadDelegate of a provisional load being commited. + + * COM/WebDataSource.cpp: + (WebDataSource::replaceRequest): + * COM/WebDataSource.h: + * COM/WebFrame.cpp: + (WebFrame::receivedRedirect): + (WebFrame::receivedResponse): + (WebFrame::receivedData): + +2006-09-26 John Sullivan + + Reviewed by Darin + + * WebView/WebHTMLViewPrivate.h: + * WebView/WebHTMLView.m: + (-[WebHTMLView markAllMatchesForText:caseSensitive:limit:]): + Added limit parameter, passed over the bridge. Stop the search if it hits limit. + + * WebView/WebViewPrivate.h: + * WebView/WebView.m: + (-[WebView markAllMatchesForText:caseSensitive:highlight:limit:]): + Added limit parameter, passed to WebHTMLView. + +2006-09-26 David Harrison + + Reviewed by John and TimH. + + Seed: Ctrl-Y key binding does nothing when kill ring is empty + + Use deleteBackward: when the killring string is empty. Was always using insertText:, + but that ends up early-returning if the string to insert is empty. + + * WebView/WebHTMLView.m: + (-[NSArray yank:]): + (-[NSArray yankAndSelect:]): + +2006-09-25 Timothy Hatcher + + Reviewed by Brady. + + Use the non-deprecated method names for getComputedStyle, setEnd and setStart. + + * WebInspector/WebInspector.m: + (-[WebInspector _highlightNode:]): + * WebView/WebHTMLView.m: + (unionDOMRanges): + (-[WebHTMLView _selectRangeInMarkedText:]): + (-[WebTextCompleteController doCompletion]): + * WebView/WebView.m: + (-[WebView computedStyleForElement:pseudoElement:]): + +2006-09-22 Timothy Hatcher + + Reviewed by Darin. + + Pass all headers through unifdef to filter out BUILDING_ON_TIGER blocks + if MACOSX_DEPLOYMENT_TARGET is 10.4. + + * MigrateHeaders.make: + +2006-09-20 Justin Garcia + + Reviewed by john + + + TinyMCE: Dragging & dropping content always leaves a copy when editing inside a subframe + + The top level WebHTMLView is responsible for performing dragging operations, but + the inner view, the view that holds the drag caret, should be consulted to determine + if the drag is a move drag. + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebHTMLView.m: + (-[NSArray dragImage:at:offset:event:pasteboard:source:slideBack:]): Don't set initatedDrag here, because + it's only the top level WebHTMLView that performs this operation. + (-[WebHTMLView _setInitiatedDrag:]): Added. + (-[WebHTMLView _initiatedDrag]): Ditto. + (-[WebHTMLView _canProcessDragWithDraggingInfo:]): Ask the innerView if it initiated the drag, + not the top level view. + (-[WebHTMLView _isMoveDrag]): The top level view asks the innerView if it should perform + a move drag, so don't ASSERT _isTopHTMLView. + (-[WebHTMLView draggingUpdatedWithDraggingInfo:actionMask:]): Ask the innerView if _isMoveDrag. + (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): Ditto. + * WebView/WebHTMLViewInternal.h: Added two private SPI so that + the top level WebHTMLView can set and get the initiatedDrag BOOL. + +=== Safari-521.27 === + +2006-09-20 Brady Eidson + + Reviewed by Tim Omernick + + Fixing part of a crash Tim O showed me. [WebIconDatabase init] should finish + gracefully even if we can't open the database + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase init]): + +2006-09-20 Timothy Hatcher + + Reviewed by Tim O. + + Develop a system to find what version of WebKit an app was linked with + + * Misc/WebKitVersionChecks.h: Added. + * Misc/WebKitVersionChecks.m: Added. + (WebKitLinkedOnOrAfter): Added. + (WebKitLinkTimeVersion): Added. + (WebKitRunTimeVersion): Added. + * WebKit.xcodeproj/project.pbxproj: + +2006-09-20 Tim Omernick + + Reviewed by Darin. + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase init]): + Fixed a typo. + +2006-09-20 Brady Eidson + + Reviewed by Darin + + Preparing to make the WebIconDatabase disabled by default - this patch tells the bridge whether its enabled or not + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase init]): + +2006-09-19 Brady Eidson + + Reviewed by Sarge Decker + + and + - WebCore::IconDatabase needs to have and respect an enabled() flag + - Mail on ToT WebKit crashes in IconDatabase code when mailing a page from Safari + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase init]): If preference says icons are disabled, tell the bridge + (-[WebIconDatabase _isEnabled]): Ask the bridge if the database is enabled + +2006-09-19 Alexey Proskuryakov + + Reviewed by Tim O. + + http://bugs.webkit.org/show_bug.cgi?id=10661 + REGRESSION: CFM plug-ins (Shockwave, SVG) are not loaded + + * Plugins/WebBasePluginPackage.m: + (-[WebBasePluginPackage initWithPath:]): On 32-bit PowerPC, don't bail out if + the bundle is nil - it can be a CFM plugin. + +2006-09-18 Brady Eidson + + Reviewed by Anders + + Implement a bridge method so WebCore can find the reload type of a frame load + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge isLoadTypeReload]): + +2006-09-18 Sam Weinig + + Reviewed by Tim H. + + Patch for http://bugs.webkit.org/show_bug.cgi?id=10903 + Yet Another Objective-C Bindings Patch + + * MigrateHeaders.make: + +2006-09-17 David Harrison + + Reviewed by John Sullivan. + + REGRESSION: Making the font size bigger/smaller in an HTML message doesn't affect the body until you reopen it + + Problem was the public API -[WebView setTextSizeMultiplier] did not notify anyone that the value changed. + + * WebView/WebDocumentInternal.h: + Add _textSizeMultiplierChanged to the _WebDocumentTextSizing protocol. + + * WebView/WebHTMLView.m: + (-[WebHTMLView _textSizeMultiplierChanged]): + Send [self _updateTextSizeMultiplier]. + + * WebView/WebPDFView.m: + (-[WebPDFView _textSizeMultiplierChanged]): + ASSERT_NOT_REACHED() because WebPDFView does not track the common multiplier. + + * WebView/WebView.m: + (-[WebView setTextSizeMultiplier:]): + Send [self _notifyTextSizeMultiplierChanged]; + + (-[WebView _performTextSizingSelector:withObject:onTrackingDocs:selForNonTrackingDocs:newScaleFactor:]): + Alter the _textSizeMultiplier directly so that notification is not sent. + Minor formatting. + + (-[WebView _notifyTextSizeMultiplierChanged]): + New. Send _textSizeMultiplierChanged to all document views that track the common multiplier. + +2006-09-16 Brady Eidson + + Reviewed by Hyatt + + WebIconLoader is dead, long live WebCore::IconLoader + (code prune) + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader dealloc]): + (-[WebFrameLoader commitProvisionalLoad]): + * Loader/WebIconLoader.h: Removed. + * Loader/WebIconLoader.m: Removed. + * Misc/WebIconDatabase.h: + * Misc/WebIconDatabase.m: + * Misc/WebIconDatabasePrivate.h: + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge notifyIconChanged:]): + * WebCoreSupport/WebIconDatabaseBridge.h: + * WebCoreSupport/WebIconDatabaseBridge.m: + (-[WebIconDatabaseBridge _init]): + (-[WebIconDatabaseBridge _setIconData:forIconURL:]): + (-[WebIconDatabaseBridge _setHaveNoIconForIconURL:]): + * WebKit.exp: + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDataSource.m: + (-[WebDataSourcePrivate dealloc]): + (-[WebDataSource _stopLoading]): + (-[WebDataSource _setPrimaryLoadComplete:]): + * WebView/WebDataSourceInternal.h: + +2006-09-16 Mark Rowe + + Reviewed by Anders. + + http://bugs.webkit.org/show_bug.cgi?id=10887 + Fix build error + + * MigrateHeaders.make: Remove reference to DOMEventPrivate.h. + +2006-09-15 Timothy Hatcher + + Reviewed by Brady. + + Make new style ObjC methods public API. + + * MigrateHeaders.make: + +2006-09-15 Sam Weinig + + Reviewed by Tim H. + + Patch for http://bugs.webkit.org/show_bug.cgi?id=10870 + Auto-generate DOMNode for the Objective-C bindings + + * MigrateHeaders.make: + +2006-09-15 Timothy Hatcher + + Reviewed by Justin. + + Call the bridge directly for alter selection calls. All of this logic is now + in WebCore's SelectionController. + + * WebView/WebHTMLView.m: + (-[NSArray moveBackward:]): + (-[NSArray moveBackwardAndModifySelection:]): + (-[NSArray moveDown:]): + (-[NSArray moveDownAndModifySelection:]): + (-[NSArray moveForward:]): + (-[NSArray moveForwardAndModifySelection:]): + (-[NSArray moveLeft:]): + (-[NSArray moveLeftAndModifySelection:]): + (-[NSArray moveRight:]): + (-[NSArray moveRightAndModifySelection:]): + (-[NSArray moveToBeginningOfDocument:]): + (-[NSArray moveToBeginningOfDocumentAndModifySelection:]): + (-[NSArray moveToBeginningOfSentence:]): + (-[NSArray moveToBeginningOfSentenceAndModifySelection:]): + (-[NSArray moveToBeginningOfLine:]): + (-[NSArray moveToBeginningOfLineAndModifySelection:]): + (-[NSArray moveToBeginningOfParagraph:]): + (-[NSArray moveToBeginningOfParagraphAndModifySelection:]): + (-[NSArray moveToEndOfDocument:]): + (-[NSArray moveToEndOfDocumentAndModifySelection:]): + (-[NSArray moveToEndOfSentence:]): + (-[NSArray moveToEndOfSentenceAndModifySelection:]): + (-[NSArray moveToEndOfLine:]): + (-[NSArray moveToEndOfLineAndModifySelection:]): + (-[NSArray moveToEndOfParagraph:]): + (-[NSArray moveToEndOfParagraphAndModifySelection:]): + (-[NSArray moveParagraphBackwardAndModifySelection:]): + (-[NSArray moveParagraphForwardAndModifySelection:]): + (-[NSArray moveUp:]): + (-[NSArray moveUpAndModifySelection:]): + (-[NSArray moveWordBackward:]): + (-[NSArray moveWordBackwardAndModifySelection:]): + (-[NSArray moveWordForward:]): + (-[NSArray moveWordForwardAndModifySelection:]): + (-[NSArray moveWordLeft:]): + (-[NSArray moveWordLeftAndModifySelection:]): + (-[NSArray moveWordRight:]): + (-[NSArray moveWordRightAndModifySelection:]): + (-[NSArray pageUp:]): + (-[NSArray pageDown:]): + (-[NSArray pageUpAndModifySelection:]): + (-[NSArray pageDownAndModifySelection:]): + +2006-09-15 Adam Roben + + Reviewed by eseidel. + + Fixes http://bugs.webkit.org/show_bug.cgi?id=10876 + containsItemForURLUnicode uses matchLetter instead of + matchUnicodeLetter + + Small fixes for _WebCoreHistoryProvider. + + * History/WebHistory.m: Consistently use BUFFER_SIZE #define + (-[_WebCoreHistoryProvider containsItemForURLLatin1:length:]): + (-[_WebCoreHistoryProvider containsItemForURLUnicode:length:]): + Replace incorrect call to matchLetter to matchUnicodeLetter + +2006-09-13 Brady Eidson + + Reviewed by Maciej + + Add infrastructure to support icon loads taking place in WebCore + Will remove WebKit icon loaders in a later patch + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge notifyIconChanged:]): + (-[WebFrameBridge originalRequestURL]): + - Nuked two old, obsolete methods + - Added bridge for notifying of an icon change + - Added bridge for getting the "original request URL" which is still needed + until that info is available in the WebCore loaders + + * WebView/WebDataSource.m: + (-[WebDataSource _loadIcon]): + - Empty body just for now, as it still gets called - next patch will prune all the old impl out + +2006-09-13 Timothy Hatcher + + Reviewed by Tim O. + + obsolete confusing "ADVISORY NOTE" comment in WebHistory.h + + Removed the "ADVISORY NOTE: This method may change for the 1.0 SDK" comments. + + * History/WebHistory.h: + +=== Safari-521.26 === + +2006-09-11 MorganL + + Reviewed/landed by aroben. + + Fixes http://bugs.webkit.org/show_bug.cgi?id=10765 + Windows build busted due to std::copy usage in Vector.h + + * WebKit.vcproj/WebKit.vcproj: Define _SCL_SECURE_NO_DEPRECATE to get + rid of deprecation warnings on std::copy + +2006-09-11 Brady Eidson + + Despite the fact that some people built okay without this change, it sure was biting me, + probably because I just wiped my build directory for a fresh build - + Today's earlier removal of DOMList.h needed to occur in MigrateHeaders.make, as well + + * MigrateHeaders.make: removed DOMList.h + +2006-09-10 Darin Adler + + Reviewed by Brady. + + - fix http://bugs.webkit.org/show_bug.cgi?id=10547 + REGRESSION: Links that should open in a new window open in the same window, + while opening another blank window + + * WebView/WebFrame.m: + (-[WebFrame _continueLoadRequestAfterNewWindowPolicy:frameName:formState:]): + Changed a mistaken "self" to "frame", which was the cause of the bug. Also + fixed the method so that it won't crash if createWebViewWithRequest does + something that has a side effect of releasing this WebView or this frame + by retaining "self" and "frame" as needed. Also fixed a problem where the + code to set "opener" was backwards, and would set the opener of the old + frame to point to the new frame instead of vice versa. + +2006-09-09 Sam Weinig + + Reviewed by Eric. + + Patch for http://bugs.webkit.org/show_bug.cgi?id=10795 + Auto-generate the Objective-C DOM XPath bindings + + * MigrateHeaders.make: + +2006-09-09 Sam Weinig + + Reviewed by Eric. + + Patch for http://bugs.webkit.org/show_bug.cgi?id=10791 + Even More Objective-C DOM auto-generation cleanup + + * MigrateHeaders.make: + +2006-09-08 Tim Omernick + + Reviewed by Brady Eidson. + + Rolled out Maciej's code cleanup from 8/22. It turns out that keeping the "loading" flag + is a useful optimization, as it avoids many Objective-C method calls while polling resources + for their load state. + + This fixes a 3-4% PLT performance regression (as measured on my MacBook Pro). + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader addPlugInStreamLoader:]): + (-[WebFrameLoader removePlugInStreamLoader:]): + (-[WebFrameLoader addSubresourceLoader:]): + (-[WebFrameLoader removeSubresourceLoader:]): + * WebView/WebDataSource.m: + (-[WebDataSourcePrivate dealloc]): + (-[WebDataSource _prepareForLoadStart]): + (-[WebDataSource _setLoading:]): + (-[WebDataSource _updateLoading]): + (-[WebDataSource _startLoading]): + (-[WebDataSource _stopLoading]): + (-[WebDataSource _setPrimaryLoadComplete:]): + (-[WebDataSource isLoading]): + * WebView/WebDataSourceInternal.h: + +2006-09-07 Sam Weinig + + Reviewed by Darin and Tim H. + + Patch for http://bugs.webkit.org/show_bug.cgi?id=10774 + Auto-generate the Objective-C DOM Traversal bindings + + * MigrateHeaders.make: + +2006-09-07 Sam Weinig + + Reviewed by Darin. + + Patch for http://bugs.webkit.org/show_bug.cgi?id=10766 + Auto-generate the Objective-C DOM Events bindings + + * MigrateHeaders.make: + * WebKit.xcodeproj/project.pbxproj: + +2006-09-06 Alexey Proskuryakov + + * MigrateHeaders.make: Fixed a double slash in + "$(PRIVATE_HEADERS_DIR)//DOMCharacterDataPrivate.h" (this was reported + to cause a build failure under certain circumstances). + +2006-09-05 MorganL + + Reviewed/landed by aroben. + + Fixes bug 10743: Windows build is busted. + + * COM/WebView.cpp: + (WebView::keyPress): + +2006-09-05 Timothy Hatcher + + Reviewed by Darin. + + Drastically simplified the makefile for migrating headers from + WebCore and JavaScriptCore. The old version was always copying the files. + + * MigrateHeaders.make: + +2006-09-05 Darin Adler + + Reviewed by Alexey. + + - WebKit side of changes to encoding + + * WebView/WebHTMLRepresentation.m: (-[WebHTMLRepresentation documentSource]): + Changed to call new -[WebCoreFrameBridge stringWithData:] instead of the calling + the old methods that used a CFStringEncoding: -[WebCoreFrameBridge textEncoding] + and +[WebCoreFrameBridge stringWithData:textEncoding:]. + + * WebView/WebResource.m: (-[WebResource _stringValue]): Removed special case for + nil encoding name. The bridge itself now has the rule that "nil encoding name + means Latin-1", so we don't need to check for nil. + + * WebView/WebFrame.m: (-[WebFrame _checkLoadComplete]): Retain the frame until + we get the parent frame while walking up parent frames, because it's possible + for _checkLoadCompleteForThisFrame to release the last reference to the frame. + (Not reviewed; needed to run performance tests successfully.) + +2006-09-05 Timothy Hatcher + + Reviewed by Tim O. + + conflicting typedefs in Netscape plug-in headers + + * Plugins/npfunctions.h: fix the return type for NPN_IntFromIdentifierProcPtr to be int32_t + +2006-09-04 Timothy Hatcher + + Reviewed by Darin. + + Bug 10714: ObjC autogeneration needs safe-guards against easily modifying the public API + http://bugs.webkit.org/show_bug.cgi?id=10714 + + - Added the new private DOM headers. + - Factored out the common commands into variables. + - Made WebDashboardRegion.h private again. + - Rename DOMDOMImplementation.h to DOMImplementation.h when files + are migrated. Also fixes up #imports. + + * MigrateHeaders.make: + +2006-09-03 Sam Weinig + + Reviewed by Darin and Tim H. + + - patch for http://bugs.webkit.org/show_bug.cgi?id=10711 + Auto-generate the Objective-C DOM Stylesheet bindings + + * MigrateHeaders.make: + +2006-09-02 Sam Weinig + + Reviewed by Tim H. + + - patch for http://bugs.webkit.org/show_bug.cgi?id=10684 + Auto-generate the Objective-C DOM CSS bindings + + * MigrateHeaders.make: + +2006-09-01 MorganL + + Reviewed by Darin. Updated/landed by Adam. + + Fixes http://bugs.webkit.org/show_bug.cgi?id=10553 + Windows build fixes + + * COM/WebFrame.cpp: + (WebFrame::initWithName): + +2006-09-01 Brady Eidson + + Reviewed by Darin + + A "never should be reached" method was reached - lets not release the shared database bridge, esp + since we never retain it! + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase _applicationWillTerminate:]): Don't release the bridge + +2006-09-01 Darin Adler + + Reviewed by Brady. + + - a few small tweaks to the icon database bridge + + * Misc/WebIconDatabase.m: (-[WebIconDatabase init]): Updated for name change. + + * WebCoreSupport/WebIconDatabaseBridge.h: Removed unneeded declarations. + * WebCoreSupport/WebIconDatabaseBridge.m: + (-[WebIconDatabaseBridge init]): Added. Always returns nil since you're not supposed + to allocate one of these. + (-[WebIconDatabaseBridge _init]): Renamed from init. Used internally to make the + shared instance. Added the "self = [super init]" idiom even though it's not important + in this case just to be consistent. + (-[WebIconDatabaseBridge releaseCachedLoaderForIconURL:]): Moved this up in the file + so it can be called without declaring it in the header. + (+[WebIconDatabaseBridge sharedInstance]): Renamed. Calls the new _init. Also use + CFRetain for compatibility. + (-[WebIconDatabaseBridge dealloc]): Emptied this out and made it just assert (false). + (-[WebIconDatabaseBridge finalize]): Added and made it assert (false) too. + +2006-09-01 Timothy Hatcher + + Reviewed by Adele. + + Bug 10677: Omit "-webkit-text-security: none;" from the computed style list + http://bugs.webkit.org/show_bug.cgi?id=10677 + + * WebInspector/webInspector/inspector.js: + +2006-08-31 Sam Weinig + + Reviewed by Tim H. + + - patch for http://bugs.webkit.org/show_bug.cgi?id=10669 + Auto-generate the remaining Objective-C HTML DOM bindings + + * MigrateHeaders.make: + +2006-08-31 Adele Peterson + + Reviewed by Darin. + + WebKit part of fix for http://bugs.webkit.org/show_bug.cgi?id=10666 + Password: Disallow Spelling, Font, Speech, and Writing Direction context menu + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]): + Check that the selection isn't in a password field before adding these items to the default editing context menu. + Search In Google, Search In Spotlight, Look up in Dictionary, Spelling, Font, Speech, Writing Direction + * WebView/WebHTMLView.m: (-[WebHTMLView _isSelectionInPasswordField]): Added. + * WebView/WebHTMLViewPrivate.h: + +2006-08-31 Sam Weinig + + Reviewed by Tim H. + + - patch for http://bugs.webkit.org/show_bug.cgi?id=10653 + Auto-generate another 20 Objective-C DOM HTML bindings + + * MigrateHeaders.make: + * WebKit.xcodeproj/project.pbxproj: + +2006-08-31 Adele Peterson + + Reviewed by John Sullivan. + + Removed wkSecureEventInput and wkSetSecureEventInput, since this can be done with API. + + * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): + +2006-08-31 John Sullivan + + Reviewed by Tim Omernick + + - fixed Loading history would be faster if it bypassed + NSURL API for local files + + * History/WebHistory.m: + (-[WebHistoryPrivate _loadHistoryGutsFromURL:savedItemsCount:collectDiscardedItemsInto:error:]): + Load file URLs using [NSDictionary dictionaryWithContentsOfFile:]. I also cleaned up some minor + style issues in this method, and I removed the support for old NSArray-style history files (which we + stopped using before Safari 1.0). + +2006-08-30 Adele Peterson + + Reviewed by Hyatt. + + WebKit part of fix for http://bugs.webkit.org/show_bug.cgi?id=10575 + Enable secure input mode for new password fields + + * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): + +2006-08-30 Brady Eidson + + Reviewed by John + + Change behavior so if the WebCore::IconDatabase can't open, WebKit releases the bridge and + continues on as if the IconDatabase is disabled. + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase init]): Release the bridge on failure to open + * WebCoreSupport/WebIconDatabaseBridge.m: + (+[WebIconDatabaseBridge sharedBridgeInstance]): Moved static shared instance out as a global + (-[WebIconDatabaseBridge dealloc]): Clear pointer to the shared instance + +2006-08-30 Timothy Hatcher + + Reviewed by Darin. + + Simplify the header copies from WebCore and JavaScriptCore. + Headers that need to be migrated from the other projects need + to be added to MigrateHeaders.make. + + * MigrateHeaders.make: Added. + * WebKit.xcodeproj/project.pbxproj: + +2006-08-30 Sam Weinig + + Reviewed by Tim H. + + - patch for http://bugs.webkit.org/show_bug.cgi?id=10640 + Auto-generate 10 more Objective-C DOM HTML bindings + + * WebKit.xcodeproj/project.pbxproj: + +2006-08-30 Adele Peterson + + Reviewed by Darin. + + WebKit part of fix for: + http://bugs.webkit.org/show_bug.cgi?id=10576 + Disallow copy from new password fields + + * WebView/WebHTMLView.m: + (-[WebHTMLView _canCopy]): Now also calls across the bridge to ask if it mayCopy. + (-[WebHTMLView _canCut]): Calls _canCopy now. + (-[NSArray validateUserInterfaceItem:]): Calls _canCut when validating the "Cut" menu item. + This used to call _canDelete (which used to be the same as _canCut), but now _canCut also checks _canCopy. + +2006-08-30 Karl Adam + + Reviewed by Eric and Tim H. + + Bug 10634: -webView:dragDestinationActionMaskForDraggingInfo: is ignored + http://bugs.webkit.org/show_bug.cgi?id=10634 + + Remove the check for canShowFile: from _web_bestURL: since + it shouldn't be concerned with whether or not the view + can show the URL, merely return the most appropriate URL. + + * Misc/WebNSPasteboardExtras.m: + (-[NSPasteboard _web_bestURL]): + * Misc/WebNSViewExtras.m: + (-[NSView _web_dragOperationForDraggingInfo:]): + +2006-08-29 Brady Eidson + + Reviewed by Kevin Decker (Sarge) + + - New IconDB needs to delete icons when asked + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase removeAllIcons]): Call through to WebCore to remove icons, then send notification + +2006-08-29 Brady Eidson + + Reviewed by Alice + + Added a truth value check for to setIconURL:forURL so WebKit can avoid sending a notification + This is a win on the iBench + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase _setIconURL:forURL:]): + +2006-08-29 Brady Eidson + + Reviewed by Tim Hatchers rubber stamp + + Removed some accidentally left-in console spew during the conversion to the new DB + + * Misc/WebIconDatabase.m: + (objectFromPathForKey): Nuked some NSLogs + +2006-08-29 Tim Omernick + + Reviewed by Darin Adler. + + REGRESSION(10.4.7-9A241): JMol java applet fails in Safari not Firefox + + No layout test for now because Java doesn't work in DumpRenderTree. + + * Plugins/WebPluginDatabase.m: + (-[WebPluginDatabase refresh]): + Add each plug-in MIME type to registeredMIMETypes, even if we don't register a document view class for the + MIME type. This fixes -[WebPluginDatabase isMIMETypeRegistered:] and thus fallback content for Java applets + (we were always rendering fallback content, if any, for Java applets). + +2006-08-29 Sam Weinig + + Reviewed by Tim H. + + - patch for http://bugs.webkit.org/show_bug.cgi?id=10628 + Auto-generate the remaining Objective-C DOM bindings + + Auto-generates DOMHTMLCollection, DOMHTMLElement, DOMHTMLFormElement, + and DOMHTMLOptionsCollection. + + * WebKit.xcodeproj/project.pbxproj: + +2006-08-28 Brady Eidson + + Reviewed by Darin + + Short of a few small snippets that still need to be pushed to WebCore, this + is a final prune of WebIconDatabase. WebFileDatabase and WebLRUFileList are gone + and the small remaining snippets of WebFileDatabase code that were still important + are now in static functions in WebIconDatabase.m + + * Loader/WebIconLoader.m: + (-[WebIconLoader didFinishLoading]): Removed the flag + * Misc/WebFileDatabase.h: Removed. + * Misc/WebFileDatabase.m: Removed. + * Misc/WebIconDatabase.m: + (+[WebIconDatabase sharedIconDatabase]): + (-[WebIconDatabase init]): + (-[WebIconDatabase iconForURL:withSize:cache:]): + (-[WebIconDatabase iconURLForURL:]): + (-[WebIconDatabase defaultIconWithSize:]): + (-[WebIconDatabase retainIconForURL:]): + (-[WebIconDatabase releaseIconForURL:]): + (-[WebIconDatabase _isEnabled]): + (-[WebIconDatabase _setIconData:forIconURL:]): + (-[WebIconDatabase _setHaveNoIconForIconURL:]): + (-[WebIconDatabase _setIconURL:forURL:]): + (-[WebIconDatabase _hasEntryForIconURL:]): + (-[WebIconDatabase _applicationWillTerminate:]): + (-[WebIconDatabase _resetCachedWebPreferences:]): + (uniqueFilePathForKey): Added from WebFileDatabase + (objectFromPathForKey): Added from WebFileDatabase + (iconDataFromPathForIconURL): + (-[WebIconDatabase _convertToWebCoreFormat]): Make use of static functions and local variables + instead of using WebFileDatabase and WebIconDatabase variables that are now obsolete + * Misc/WebIconDatabasePrivate.h: Removed alot of obsoleted members + * Misc/WebLRUFileList.h: Removed. + * Misc/WebLRUFileList.m: Removed. + * WebKit.xcodeproj/project.pbxproj: Deleted 4 files + * WebKitPrefix.h: Removed ICONDEBUG + +2006-08-28 Tim Omernick + + Reviewed by Darin Adler. + + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView createPluginScriptableObject]): + Removed a bogus typecast. + +2006-08-28 Tim Omernick + + Reviewed by John Sullivan. + + Part of NetscapeMoviePlugIn example code scripting doesn't work in Firefox (4319) + : NetscapeMoviePlugIn example code scripting doesn't work + in Firefox + + * Plugins/WebBaseNetscapePluginView.h: + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView createPluginScriptableObject]): + Renamed this method (see corresponding WebCore ChangeLog entry for an explanation). + Style changes. + +2006-08-28 Brady Eidson + + Reviewed by Tim Hatcher's rubberstamp + + Rolled out my last change (16070 - pruning WebFileDatabase code) as it caused a difficult-to-track down + failure in layout tests on a release build. + + * Misc/WebFileDatabase.h: + * Misc/WebFileDatabase.m: + (+[WebFileDatabaseOp opWithCode:key:object:]): + (-[WebFileDatabaseOp initWithCode:key:object:]): + (-[WebFileDatabaseOp opcode]): + (-[WebFileDatabaseOp key]): + (-[WebFileDatabaseOp object]): + (-[WebFileDatabaseOp perform:]): + (-[WebFileDatabaseOp dealloc]): + (SetThreadPriority): + (-[WebFileDatabase _createLRUList:]): + (-[WebFileDatabase _truncateToSizeLimit:]): + (+[WebFileDatabase _syncLoop:]): + (databaseInit): + (-[WebFileDatabase setTimer]): + (-[WebFileDatabase setObject:forKey:]): + (-[WebFileDatabase removeObjectForKey:]): + (-[WebFileDatabase removeAllObjects]): + (-[WebFileDatabase objectForKey:]): + (-[WebFileDatabase performSetObject:forKey:]): + (-[WebFileDatabase performRemoveObjectForKey:]): + (-[WebFileDatabase open]): + (-[WebFileDatabase close]): + (-[WebFileDatabase lazySync:]): + (-[WebFileDatabase sync]): + (-[WebFileDatabase sizeLimit]): + (-[WebFileDatabase count]): + (-[WebFileDatabase usage]): + (-[WebFileDatabase setSizeLimit:]): + * Misc/WebIconDatabase.m: + (-[WebIconDatabase _createFileDatabase]): + (-[WebIconDatabase _loadIconDictionaries]): + * WebKit.xcodeproj/project.pbxproj: + +2006-08-28 Darin Adler + + Reviewed by Tim Hatcher. + + * WebInspector/webInspector/inspector.js: Add "resize: none" to the list of + default values for CSS properties so it will be omitted from most displays + of computed style. + +2006-08-28 Brady Eidson + + Reviewed by Maciej + + Major prune of unnecessary WebFileDatabase code. In the end, what + useful code that remains in WebFileDatabase will likely be moved directly + into WebIconDatabase + + * Misc/WebFileDatabase.h: + * Misc/WebFileDatabase.m: + (-[WebFileDatabase initWithPath:]): + (-[WebFileDatabase objectForKey:]): + (-[WebFileDatabase open]): + (-[WebFileDatabase close]): + * Misc/WebIconDatabase.m: + (-[WebIconDatabase _createFileDatabase]): + (-[WebIconDatabase _loadIconDictionaries]): + * Misc/WebLRUFileList.h: Removed. + * Misc/WebLRUFileList.m: Removed. + * WebKit.xcodeproj/project.pbxproj: + +2006-08-27 Sam Weinig + + Reviewed by Tim H. + + - patch for http://bugs.webkit.org/show_bug.cgi?id=4624 + WebCore needs autogenerated Obj-C DOM bindings + + First round of auto-generated Objective C DOM bindings, starting + with the DOM Core. + + * WebKit.xcodeproj/project.pbxproj: + +2006-08-25 Brady Eidson + + Reviewed by Tim Hatcher + + Fixed up some leaks on [WebIconDatabase init] + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase init]): + +2006-08-24 Timothy Hatcher + + Reviewed by Darin. + + * WebView/WebFrame.m: + (-[WebFrame _updateBackground]): reworded the comment about scroll view and setDrawsBackground:YES + * WebView/WebView.m: + (-[WebViewPrivate dealloc]): release the background color + +2006-08-24 Timothy Hatcher + + Reviewed by Hyatt. + + WebView API to allow changing the background color that draws under transparent page backgrounds. + + * WebView/WebFrame.m: + (-[WebFrame _makeDocumentView]): + (-[WebFrame _updateBackground]): + * WebView/WebFrameInternal.h: + * WebView/WebFrameView.m: + (-[WebFrameView drawRect:]): + * WebView/WebView.m: + (-[WebView setBackgroundColor:]): + (-[WebView backgroundColor]): + (-[WebView _commonInitializationWithFrameName:groupName:]): + (-[WebView setDrawsBackground:]): + * WebView/WebViewPrivate.h: + +2006-08-24 Timothy Hatcher + + Reviewed by Darin. + + Fix for Mail stationary. Selecting a stationary item would cause this exception. + *** -[WebSubresourceLoader copyWithZone:]: selector not recognized + Uncaught exception - *** -[WebSubresourceLoader copyWithZone:]: selector not recognized + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]): + Use _webkit_setObject:forUncopiedKey: when addign the resource to pendingArchivedResources. + +2006-08-23 Maciej Stachowiak + + Reviewed by Adele. + + - fix assertion which I accidentally changed to one that sometimes fails + http://bugs.webkit.org/show_bug.cgi?id=10531 + + * Loader/WebDocumentLoadState.m: + (-[WebDocumentLoadState dealloc]): + * WebView/WebDataSource.m: + (-[WebDataSourcePrivate dealloc]): + (-[WebDataSource dealloc]): + +2006-08-23 Maciej Stachowiak + + Reviewed by Brady. + + - move WebFrame code that creates WebDataSources down to WebFrameLoader, in preparation + for WebFrameLoader just holding on to WebDocumentLoadState + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _loadRequest:archive:]): + (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]): + (-[WebFrameLoader _reloadAllowingStaleDataWithOverrideEncoding:]): + (-[WebFrameLoader reload]): + * WebView/WebFrame.m: + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _continueLoadRequestAfterNewWindowPolicy:frameName:formState:]): + (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): + (-[WebFrame _shouldReloadToHandleUnreachableURLFromRequest:]): + (-[WebFrame loadRequest:]): + (-[WebFrame loadArchive:]): + (-[WebFrame reload]): + * WebView/WebFrameInternal.h: + * WebView/WebFramePrivate.h: + * WebView/WebView.m: + (-[WebView setCustomTextEncodingName:]): + +2006-08-23 Brady Eidson + + Reviewed by Maciej + + First pass at pruning unused WebIconDatabase code. Focus on removing methods that simply + have no place in the new DB at all. A few renames and a few important FIXMEs result, but no + functionality changes. + + * Loader/WebIconLoader.m: + (-[WebIconLoader didFinishLoading]): Call to WebIconDatabase instead of directly to the bridge + * Misc/WebIconDatabase.h: + * Misc/WebIconDatabase.m: + (-[WebIconDatabase init]): + (-[WebIconDatabase iconForURL:withSize:cache:]): + (-[WebIconDatabase iconURLForURL:]): + (-[WebIconDatabase defaultIconWithSize:]): + (-[WebIconDatabase retainIconForURL:]): + (-[WebIconDatabase releaseIconForURL:]): + (-[WebIconDatabase removeAllIcons]): + (-[WebIconDatabase _setIconData:forIconURL:]): + (-[WebIconDatabase _setHaveNoIconForIconURL:]): + (-[WebIconDatabase _setIconURL:forURL:]): + (-[WebIconDatabase _hasEntryForIconURL:]): + (-[WebIconDatabase _applicationWillTerminate:]): + (-[WebIconDatabase _resetCachedWebPreferences:]): + * Misc/WebIconDatabasePrivate.h: Changed setIcon: to setIconData: + +2006-08-23 Maciej Stachowiak + + Reviewed by Adele. + + - started factoring most of the guts of WebDataSource into a new class + + WebDocumentLoadState is decoupled from the rest of WebKit and will + be moved down to WebCore. I only moved one of the data fields of + WebDataSource for now. + + * Loader/WebDocumentLoadState.h: Added. + * Loader/WebDocumentLoadState.m: Added. + (-[WebDocumentLoadState initWithRequest:]): New class. + (-[WebDocumentLoadState dealloc]): + (-[WebDocumentLoadState setFrameLoader:]): + (-[WebDocumentLoadState setMainResourceData:]): + (-[WebDocumentLoadState mainResourceData]): + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _setDataSource:]): Remove redundant _setWebFrame: call, + it would have been called already by this point. + (-[WebFrameLoader _setProvisionalDataSource:]): ditto. + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDataSource.m: + (-[WebDataSourcePrivate dealloc]): + (-[WebDataSource _setWebFrame:]): + (-[WebDataSource _setPrimaryLoadComplete:]): + (-[WebDataSource initWithRequest:]): + (-[WebDataSource data]): + +2006-08-23 Maciej Stachowiak + + Reviewed by Adele. + + - refactoring of WebDataSource in preparation for moving a bunch of it to a new class + + - minimize WebDataSourceInternal.h to be only methods called from outside WebDataSource + - reduce Private category implementation to be only the SPI methods + - make new Internal and FileInternal categories which contain the + remainder (depending on whether they are called from outside of + WebDataSource) + + * WebView/WebDataSource.m: + (-[WebDataSource _setMainDocumentError:]): + (addTypesFromClass): + (+[WebDataSource _representationClassForMIMEType:]): + (-[WebDataSource _commitIfReady]): + (-[WebDataSource _commitLoadWithData:]): + (-[WebDataSource _doesProgressiveLoadWithMIMEType:]): + (-[WebDataSource _addResponse:]): + (-[WebDataSource _revertToProvisionalState]): + (-[WebDataSource _mainDocumentError]): + (-[WebDataSource _addSubframeArchives:]): + (-[WebDataSource _fileWrapperForURL:]): + (+[WebDataSource _repTypesAllowImageTypeOmission:]): + (-[WebDataSource _decidePolicyForMIMEType:decisionListener:]): + (-[WebDataSource _finishedLoading]): + (-[WebDataSource _setResponse:]): + (-[WebDataSource _setRequest:]): + (-[WebDataSource _setupForReplaceByMIMEType:]): + (-[WebDataSource _receivedMainResourceError:complete:]): + (-[WebDataSource _mainReceivedError:complete:]): + (-[WebDataSource _defersCallbacks]): + (-[WebDataSource _downloadWithLoadingConnection:request:response:proxy:]): + (-[WebDataSource _didFailLoadingWithError:forResource:]): + (-[WebDataSource _didFinishLoadingForResource:]): + (-[WebDataSource _didReceiveData:contentLength:forResource:]): + (-[WebDataSource _didReceiveResponse:forResource:]): + (-[WebDataSource _didCancelAuthenticationChallenge:forResource:]): + (-[WebDataSource _didReceiveAuthenticationChallenge:forResource:]): + (-[WebDataSource _willSendRequest:forResource:redirectResponse:]): + (-[WebDataSource _identifierForInitialRequest:]): + (-[WebDataSource _archivedSubresourceForURL:]): + (-[WebDataSource _startLoading]): + (-[WebDataSource _stopRecordingResponses]): + (-[WebDataSource _loadingStartedTime]): + (-[WebDataSource _replaceSelectionWithArchive:selectReplacement:]): + (-[WebDataSource _documentFragmentWithArchive:]): + (-[WebDataSource _documentFragmentWithImageResource:]): + (-[WebDataSource _imageElementWithImageResource:]): + (-[WebDataSource _title]): + (-[WebDataSource _isStopping]): + (-[WebDataSource _setWebFrame:]): + (-[WebDataSource _URL]): + (-[WebDataSource _loadFromPageCache:]): + (-[WebDataSource _popSubframeArchiveWithName:]): + (-[WebDataSource _setIsClientRedirect:]): + (-[WebDataSource _setURL:]): + (-[WebDataSource _setLastCheckedRequest:]): + (-[WebDataSource _defersCallbacksChanged]): + (-[WebDataSource _lastCheckedRequest]): + (-[WebDataSource _stopLoading]): + (-[WebDataSource _bridge]): + (-[WebDataSource _webView]): + (-[WebDataSource _triggeringAction]): + (-[WebDataSource _setTriggeringAction:]): + (-[WebDataSource __adoptRequest:]): + (-[WebDataSource _isDocumentHTML]): + (-[WebDataSource _stopLoadingWithError:]): + (-[WebDataSource _setPrimaryLoadComplete:]): + (-[WebDataSource _responses]): + (-[WebDataSource _makeRepresentation]): + (-[WebDataSource _isClientRedirect]): + (-[WebDataSource _originalRequest]): + (-[WebDataSource _URLForHistory]): + (-[WebDataSource _addToUnarchiveState:]): + (-[WebDataSource _setOverrideEncoding:]): + (-[WebDataSource _setIconURL:]): + (-[WebDataSource _setIconURL:withType:]): + (-[WebDataSource _overrideEncoding]): + (-[WebDataSource _setTitle:]): + * WebView/WebDataSourceInternal.h: + +2006-08-23 Brady Eidson + + Reviewed by John Sullivan + + /me crosses fingers + Flip the switch to the new Icon Database + Massive code pruning is coming up + + * WebKitPrefix.h: Flipped the switch + +2006-08-23 Brady Eidson + + Reviewed by Beth + Since I just pushed the default URL icon from WebKit to WebCore, but + WebKit was still using its version of the default icon, this patch makes it + use the WebCore version + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase defaultIconWithSize:]): + +2006-08-22 Maciej Stachowiak + + Reviewed by Brady. + + - remove "loading" flag from WebDataSource and code that manages it; it is redundat. + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader addPlugInStreamLoader:]): + (-[WebFrameLoader removePlugInStreamLoader:]): + (-[WebFrameLoader addSubresourceLoader:]): + (-[WebFrameLoader removeSubresourceLoader:]): + * WebView/WebDataSource.m: + (-[WebDataSourcePrivate dealloc]): + (-[WebDataSource _setPrimaryLoadComplete:]): + (-[WebDataSource _stopLoading]): + (-[WebDataSource _prepareForLoadStart]): + (-[WebDataSource _startLoading]): + (-[WebDataSource isLoading]): + * WebView/WebDataSourceInternal.h: + +2006-08-22 Maciej Stachowiak + + Reviewed by Eric. + + REGRESSION: Assertion failure in [FrameProgressEntry addChild:forDataSource:] (fandango.com) + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader addSubresourceLoader:]): Add a WebKit-level assertion that should fire when this bad + situation occurs. + * Loader/WebSubresourceLoader.m: + (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]): Prevent + the situation from occuring. + +2006-08-22 Maciej Stachowiak + + Reviewed by Anders. + + - pull more WebDataSource code into WebFrameLoader + - make WebMainResourceLoader not depend on WebKit or on SPI + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _downloadWithLoadingConnection:request:response:proxy:]): + (-[WebFrameLoader _updateIconDatabaseWithURL:]): + (-[WebFrameLoader _notifyIconChanged:]): + (-[WebFrameLoader _iconLoaderReceivedPageIcon:]): + (-[WebFrameLoader _checkNavigationPolicyForRequest:andCall:withSelector:]): + (-[WebFrameLoader _checkContentPolicyForMIMEType:andCall:withSelector:]): + (-[WebFrameLoader cancelContentPolicy]): + * Loader/WebIconLoader.m: + (-[WebIconLoader didFinishLoading]): + * Loader/WebLoader.m: + (-[NSURLProtocol loadWithRequest:]): + (-[NSURLProtocol setDefersCallbacks:]): + * Loader/WebMainResourceLoader.h: + * Loader/WebMainResourceLoader.m: + (-[WebMainResourceLoader initWithFrameLoader:]): + (-[WebMainResourceLoader dealloc]): + (-[WebMainResourceLoader cancelWithError:]): + (-[WebMainResourceLoader continueAfterNavigationPolicy:formState:]): + (-[WebMainResourceLoader willSendRequest:redirectResponse:]): + (-[WebMainResourceLoader continueAfterContentPolicy:]): + (-[WebMainResourceLoader checkContentPolicy]): + (-[WebMainResourceLoader didReceiveResponse:]): + * Plugins/WebPluginContainerCheck.m: + * WebCoreSupport/WebSystemInterface.m: + (InitWebCoreSystemInterface): + * WebView/WebDataSource.m: + (-[WebDataSource _loadIcon]): + (-[WebDataSource _cancelledError]): + (+[WebDataSource _repTypesAllowImageTypeOmission:]): + (+[WebDataSource _representationClassForMIMEType:]): + (-[WebDataSource _commitLoadWithData:]): + (-[WebDataSource _isDocumentHTML]): + * WebView/WebDataSourceInternal.h: + * WebView/WebFramePrivate.h: + * WebView/WebPolicyDelegate.m: + * WebView/WebPolicyDelegatePrivate.h: + +2006-08-21 Maciej Stachowiak + + Reviewed by Brady. + + - move more code from WebDataSource to WebFrameLoader + + Also marked a few more methods in WebDataSource as likely MOVABLE in a future round, since they do not + use any of WebDataSource's private data. + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader addPlugInStreamLoader:]): + (-[WebFrameLoader removePlugInStreamLoader:]): + (-[WebFrameLoader addSubresourceLoader:]): + (-[WebFrameLoader removeSubresourceLoader:]): + (-[WebFrameLoader _didReceiveAuthenticationChallenge:forResource:]): + (-[WebFrameLoader _didCancelAuthenticationChallenge:forResource:]): + (-[WebFrameLoader _didReceiveResponse:forResource:]): + (-[WebFrameLoader _didReceiveData:contentLength:forResource:]): + (-[WebFrameLoader _didFinishLoadingForResource:]): + (-[WebFrameLoader _didFailLoadingWithError:forResource:]): + (-[WebFrameLoader _privateBrowsingEnabled]): + (-[WebFrameLoader _finishedLoadingResource]): + (-[WebFrameLoader _receivedError:]): + (-[WebFrameLoader _finishedLoading]): + * Loader/WebMainResourceLoader.m: + (-[WebMainResourceLoader didReceiveData:lengthReceived:allAtOnce:]): + (-[WebMainResourceLoader didFinishLoading]): + * Loader/WebNetscapePlugInStreamLoader.m: + (-[WebNetscapePlugInStreamLoader didFinishLoading]): + (-[WebNetscapePlugInStreamLoader didFailWithError:]): + (-[WebNetscapePlugInStreamLoader cancelWithError:]): + * Loader/WebSubresourceLoader.m: + (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]): + (-[WebSubresourceLoader signalFinish]): + (-[WebSubresourceLoader didFailWithError:]): + (-[WebSubresourceLoader cancel]): + * Plugins/WebNetscapePluginStream.m: + (-[WebNetscapePluginStream start]): + * WebView/WebDataSource.m: + (-[WebDataSource _replaceSelectionWithArchive:selectReplacement:]): + (-[WebDataSource _updateIconDatabaseWithURL:]): + (-[WebDataSource _loadIcon]): + (-[WebDataSource _setPrimaryLoadComplete:]): + (-[WebDataSource _cancelledError]): + (+[WebDataSource _repTypesAllowImageTypeOmission:]): + (+[WebDataSource _representationClassForMIMEType:]): + (-[WebDataSource _commitLoadWithData:]): + (-[WebDataSource _receivedMainResourceError:complete:]): + (-[WebDataSource _iconLoaderReceivedPageIcon:]): + (-[WebDataSource _isDocumentHTML]): + * WebView/WebDataSourceInternal.h: + +2006-08-21 Brady Eidson + + Reviewed by John + + Quick ICONDEBUG flag fix + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase _applicationWillTerminate:]): + +2006-08-21 Brady Eidson + + Reviewed by Anders + + -Renamed an internal only method for clarity + -Tweaked WebDataSource for notification purposes with the new expiring icons + -Fixed a bug with the ICONDEBUG flag + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase init]): + (-[WebIconDatabase iconForURL:withSize:cache:]): #ifdef bug fixed + (-[WebIconDatabase _hasEntryForIconURL:]): Renamed for clarity + * Misc/WebIconDatabasePrivate.h: + * WebView/WebDataSource.m: + (-[WebDataSource _updateIconDatabaseWithURL:]): + (-[WebDataSource _notifyIconChanged:]): + (-[WebDataSource _loadIcon]): + (-[WebDataSource _iconLoaderReceivedPageIcon:]): + +2006-08-17 Maciej Stachowiak + + Reviewed by Brady. + + - pull a bit of WebDataSource code into WebFrameLoader + + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _receivedError:]): + (-[WebFrameLoader webFrame]): + (-[WebFrameLoader _handleFallbackContent]): + (+[WebFrameLoader _canShowMIMEType:]): + (+[WebFrameLoader _representationExistsForURLScheme:]): + (+[WebFrameLoader _generatedMIMETypeForURLScheme:]): + * WebView/WebDataSource.m: + * WebView/WebDataSourceInternal.h: + +2006-08-17 Timothy Hatcher + + Reviewed by Kevin Decker. + + WebKit: WebPreferencesChangedNotification not exported in 64-bit + + * WebKit.LP64.exp: + +2006-08-17 Timothy Hatcher + + Reviewed by Kevin Decker. + + -[WebView close] should clear all delegates and call setHostWindow:nil + Crash when selecting View Source menu using Chinese (-[WebView _close]) + + Check to make sure _private is not null. A WebView can be dealloced before _private is setup. + Set the _private->closed flag at the beginning of _close to prevent reentry. + Set the host window and all the delegates to nil in _close. + + * WebView/WebView.m: + (-[WebView _close]): + +2006-08-16 Brady Eidson + + Reviewed by Maciej + + * Misc/WebIconDatabase.m: Pruned unused method + * Misc/WebIconDatabasePrivate.h: Ditto + + +2006-08-15 Maciej Stachowiak + + Reviewed by Adele (preliminary version) and later by Kevin. + + - remove most WebKit dependencies from WebMainResourceLoader. + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader cannotShowMIMETypeForURL:]): + (-[WebFrameLoader interruptForPolicyChangeErrorWithRequest:]): + (-[WebFrameLoader isHostedByObjectElement]): + (-[WebFrameLoader isLoadingMainFrame]): + (+[WebFrameLoader _canShowMIMEType:]): + (+[WebFrameLoader _representationExistsForURLScheme:]): + (+[WebFrameLoader _generatedMIMETypeForURLScheme:]): + * Loader/WebMainResourceLoader.h: + * Loader/WebMainResourceLoader.m: + (-[WebMainResourceLoader interruptForPolicyChangeError]): + (-[WebMainResourceLoader willSendRequest:redirectResponse:]): + (isCaseInsensitiveEqual): + (shouldLoadAsEmptyDocument): + (-[WebMainResourceLoader continueAfterContentPolicy:response:]): + (-[WebMainResourceLoader didReceiveResponse:]): + (-[WebMainResourceLoader didReceiveData:lengthReceived:allAtOnce:]): + (-[WebMainResourceLoader didFinishLoading]): + (-[WebMainResourceLoader loadWithRequestNow:]): + (-[WebMainResourceLoader loadWithRequest:]): + +2006-08-15 Tim Omernick + + Reviewed by Kevin Decker. + + * Plugins/WebNetscapePluginPackage.m: + (-[WebNetscapePluginPackage _unloadWithShutdown:]): + Fixed a subtle problem with the 64-bit debug build -- as written, this would LOG() on 64-bit and do nothing on + 32-bit! + * Plugins/WebPluginDatabase.m: + (-[WebPluginDatabase _scanForNewPlugins]): + Use +[NSMutableSet set] here. + +2006-08-15 Tim Omernick + + Reviewed by Darin Adler. + + + ASSERTION FAILED: !isLoaded (WebKit/WebKit/Plugins/WebBasePluginPackage.m:228 -[WebBasePluginPackage dealloc]) + + intermittent assertion failure in -[WebBasePluginPackage dealloc] running layout tests (8980) + + * Plugins/WebPluginDatabase.h: + * Plugins/WebPluginDatabase.m: + (+[WebPluginDatabase installedPlugins]): + Observe NSApplicationWillTerminateNotification so we can unload plug-ins on quit. + (-[WebPluginDatabase plugins]): + 'plugins' is now a dictionary. + (-[WebPluginDatabase close]): + Call new -_removePlugin: method. + (-[WebPluginDatabase refresh]): + Moved parts of this method out into other methods: -_addPlugin:, -_removePlugin:, and -_scanForNewPlugins. + (-[WebPluginDatabase _plugInPaths]): + No changes; just moved in file. + (-[WebPluginDatabase _addPlugin:]): + New method. Refactored from -refresh. Adds a plug-in to the database. + (-[WebPluginDatabase _removePlugin:]): + New method. Refactored from -refresh. Remove a plug-in from the database. + (-[WebPluginDatabase _scanForNewPlugins]): + New method. Refactored from -refresh. Returns the list of plug-in packages on disk. + (-[WebPluginDatabase _applicationWillTerminate]): + New method. Called when the application terminates. Closes the plug-in database so that all plug-ins are + removed from the DB (and unloaded if necessary). + + * Plugins/WebBasePluginPackage.h: + * Plugins/WebBasePluginPackage.m: + (-[WebBasePluginPackage initWithPath:]): + Try to create the NSBundle first, so if the file is not a valid bundle we bail out early. This + avoids some stat()s and allocations during the plug-in refresh process. + (-[WebBasePluginPackage isLoaded]): + Removed. + (-[WebBasePluginPackage load]): + Base class for plug-in packages now always loads "successfully". + (-[WebBasePluginPackage dealloc]): + Removed this assertion. The base plug-in package class has no concept of + "unloading". + (-[WebBasePluginPackage finalize]): + ditto. + (-[WebBasePluginPackage wasRemovedFromPluginDatabase:]): + Moved code to unload plug-in package to WebNetscapePluginPackage. Not all plug-in + packages can be "unloaded". + + * Plugins/WebNetscapePluginPackage.h: + * Plugins/WebNetscapePluginPackage.m: + (-[WebNetscapePluginPackage _unloadWithShutdown:]): + Combined old -unload and -unloadWithoutShutdown methods into this new one. + (-[WebNetscapePluginPackage initWithPath:]): + Call new unload method. + (-[WebNetscapePluginPackage load]): + ditto + (-[WebNetscapePluginPackage wasRemovedFromPluginDatabase:]): + ditto + (-[WebNetscapePluginPackage open]): + New method. Called when a plug-in instance starts running. + (-[WebNetscapePluginPackage close]): + New method. Called when a plug-in instance stops running. When all plug-in instances + close the plug-in package, and the plug-in package is removed from the database, the plug-in + is unloaded. + + * Plugins/WebPluginPackage.m: + (-[WebPluginPackage initWithPath:]): + (-[WebPluginPackage load]): + Made this a bit more efficient by checking if the bundle is already loaded. + (-[WebBasePluginPackage unload]): + Removed. + (-[WebBasePluginPackage isLoaded]): + Removed. + + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView start]): + Open the plug-in package so it remains loaded while this instance uses it. + (-[WebBaseNetscapePluginView stop]): + Close the plug-in package when the plug-in instance is stopped. + + * Plugins/WebBaseNetscapePluginStream.m: + (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]): + This check is not necessary. Netscape plug-in packages are never unloaded until all their instances have + been stopped, and a Netscape plug-in instance will stop its streams when it is stopped. + (-[WebBaseNetscapePluginStream _destroyStream]): + ditto + (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): + ditto + (-[WebBaseNetscapePluginStream _deliverData]): + ditto + +2006-08-15 Mark Rowe + + Reviewed by Tim H. + + Build fix: DWARF and -gfull are incompatible with symbol separation. + + * WebKit.xcodeproj/project.pbxproj: + +2006-08-15 Mark Rowe + + Reviewed by Tim H. + + http://bugs.webkit.org/show_bug.cgi?id=10394 + Bug 10394: WebKit Release and Production configurations should enable dead code stripping + + * WebKit.xcodeproj/project.pbxproj: + +2006-08-15 Maciej Stachowiak + + Reviewed by Anders. + + - remove WebKit dependencies from WebPlugInStreamLoader via a protocol veil of ignorance + + * Loader/WebNetscapePlugInStreamLoader.h: + * Loader/WebNetscapePlugInStreamLoader.m: + (-[WebNetscapePlugInStreamLoader initWithDelegate:frameLoader:]): + * Loader/WebPlugInStreamLoaderDelegate.h: Added. + * Plugins/WebBaseNetscapePluginStream.h: + * Plugins/WebNetscapePluginStream.m: + (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]): + * WebKit.xcodeproj/project.pbxproj: + +2006-08-15 Mark Rowe + + Reviewed by Tim H. + + http://bugs.webkit.org/show_bug.cgi?id=10384 + Bug 10384: Switch to DWARF for Release configuration + + * WebKit.xcodeproj/project.pbxproj: + +2006-08-15 Graham Dennis + + Reviewed by Darin. + + - patch for http://bugs.webkit.org/show_bug.cgi?id=10314 + WebUnarchivingState archivedResourceForURL: doesn't work + + * WebView/WebUnarchivingState.m: + (-[WebUnarchivingState archivedResourceForURL:]): + Fixed to get objects from the archived resources dictionary using + the URL as a string instead of as the URL itself (as this is how + the data is put into the dictionary). + +2006-08-14 Maciej Stachowiak + + Reviewed by Beth. + + - remove many (but not all) WebKit dependencies from WebNetscapePlugInStreamLoader (it still + depends on WebNetscapePluginStream). + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader fileDoesNotExistErrorWithResponse:]): + * Loader/WebNetscapePlugInStreamLoader.h: + * Loader/WebNetscapePlugInStreamLoader.m: + (-[WebNetscapePlugInStreamLoader initWithStream:frameLoader:]): + (-[WebNetscapePlugInStreamLoader releaseResources]): + (-[WebNetscapePlugInStreamLoader didReceiveResponse:]): + * Plugins/WebNetscapePluginStream.m: + (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]): + +2006-08-14 Maciej Stachowiak + + Reviewed by Tim Omernick. + + - fixed REGRESSION: crash when leaving youtube page while movie is still loading + http://bugs.webkit.org/show_bug.cgi?id=10398 + + * Loader/WebNetscapePlugInStreamLoader.m: + (-[WebNetscapePlugInStreamLoader initWithStream:view:]): Set the frame loader for this stream. + (-[WebNetscapePlugInStreamLoader cancelWithError:]): Make sure to destroy the stream as well; + otherwise, when we try to clean up later, we won't have the right context. + +2006-08-14 David Hyatt + + Fix for Radar bug 4478840, Safari should not reduce null events sent to + plug-ins in windows that are inactive but visible. + + With this fix you can view videos in visible background windows on YouTube + (for example) and not see any drop in frame rate. + + Reviewed by timo + + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView restartNullEvents]): + +2006-08-14 Maciej Stachowiak + + Reviewed by Brady. + + - removed WebKit-level dependencies from WebFormDataStream. Use WebCore version of system interface + + * Loader/WebFormDataStream.m: + (formCanRead): + (formEventCallback): + (webSetHTTPBody): + * WebCoreSupport/WebSystemInterface.m: + (InitWebCoreSystemInterface): + +2006-08-14 Maciej Stachowiak + + Rubber stamped by Brady. + + - move WebFormDataStream from WebView to Loader + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebFormDataStream.h: Removed. + * WebView/WebFormDataStream.m: Removed. + +2006-08-13 Maciej Stachowiak + + Reviewed by Brady. + + - remove WebKit dependencies from WebSubresourceLoader, except WebFormDataStream + + (WebFormDataStream will be moved into the Loader directory soon) + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): + * Loader/WebSubresourceLoader.m: + (isConditionalRequest): + (hasCaseInsensitivePrefix): + (isFileURLString): + (setHTTPReferrer): + (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]): + +2006-08-13 Brady Eidson + + Reviewed by Maciej + + Relocated the WebIconLoaders + + * Misc/WebIconLoader.h: Moved to Loader/ + * Misc/WebIconLoader.m: Moved to Loader/ + * WebKit.xcodeproj/project.pbxproj: + +2006-08-13 Maciej Stachowiak + + Reviewed by Beth. + + - removed non-Loader WebKit dependencies from WebDataProtocol for + real (whoops) and fix some typos. + + * Loader/WebDataProtocol.m: + (isCaseInsensitiveEqual): Added. + (+[WebDataProtocol _webIsDataProtocolURL:]): Avoid WebKit calls. + (-[WebDataProtocol startLoading]): ditto + * Loader/WebFrameLoader.m: + (isCaseInsensitiveEqual): Fixed spelling from isCaseSensitiveEqual. + (-[WebFrameLoader _canUseResourceForRequest:]): Use proper call. + +2006-08-13 Brady Eidson + + Reviewed by Maciej + + The way of detecting a failed icon load before was to try and construct + an image from the icon and if that image construction failed, mark the icon + as missing. + A much more efficient way is to check for an error response. We'll still + check for invalid image data, but most servers will correctly return an HTTP + error on a missing icon. + + * Misc/WebIconLoader.m: + (-[WebIconLoader didFinishLoading]): Added check for http error response + +2006-08-13 Maciej Stachowiak + + Reviewed by Darin. + + - remove all non-Loader dependencies from WebLoader + + As part of this I moved WebDataProtocol to the loader directory + and removed dependencies on the rest of WebKit from that too. + + * Loader/WebFrameLoader.h: + * Loader/WebFrameLoader.m: + (-[WebFrameLoader setDefersCallbacks:]): + (-[WebFrameLoader stopLoading]): + (-[WebFrameLoader cancelledErrorWithRequest:]): + (-[WebFrameLoader clearArchivedResources]): + (-[WebFrameLoader deliverArchivedResources]): + (-[WebFrameLoader deliverArchivedResourcesAfterDelay]): + (isCaseSensitiveEqual): + (-[WebFrameLoader _canUseResourceForRequest:]): + (-[WebFrameLoader _canUseResourceWithResponse:]): + (-[WebFrameLoader pendingArchivedResources]): + (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]): + (-[WebFrameLoader archiveLoadPendingForLoader:]): + (-[WebFrameLoader cancelPendingArchiveLoadForLoader:]): + * Loader/WebLoader.h: + * Loader/WebLoader.m: + (-[NSURLProtocol releaseResources]): + (-[NSURLProtocol loadWithRequest:]): + (-[NSURLProtocol setDefersCallbacks:]): + (-[NSURLProtocol addData:allAtOnce:]): + (-[NSURLProtocol resourceData]): + (-[NSURLProtocol didReceiveData:lengthReceived:allAtOnce:]): + (-[NSURLProtocol connection:didReceiveData:lengthReceived:]): + (-[NSURLProtocol cancelWithError:]): + (-[NSURLProtocol cancelledError]): + * Loader/WebMainResourceLoader.m: + (-[WebMainResourceLoader addData:allAtOnce:]): + (-[WebMainResourceLoader didReceiveData:lengthReceived:allAtOnce:]): + * Loader/WebNetscapePlugInStreamLoader.m: + (-[WebNetscapePlugInStreamLoader didReceiveData:lengthReceived:allAtOnce:]): + * Loader/WebSubresourceLoader.m: + (-[WebSubresourceLoader didReceiveData:lengthReceived:allAtOnce:]): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDataProtocol.h: Removed. + * WebView/WebDataProtocol.m: Removed. + +2006-08-11 Tim Omernick + + Reviewed by Darin. + + - Menu flickers over Flash content + Plugins don't work with z-index (overlapping elements, etc.) + + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): + Don't just clip to the dirty region for "transparent" plug-ins -- do it for all plug-ins. This is a + generally useful thing to do, as it prevents the plug-in from drawing over parts of the window that + have already been drawn and are not expected to be redrawn in the same update. + +2006-08-11 Brady Eidson + + Reviewed by John, Timo, Adele, and Darin + + In addition to a few style/good-practice cleanups, this patch will convert the old icon database + format to the WebCore format if the WebCore db is empty (implying this conversion has yet to take + place). After the conversion, it will delete all traces of the old format to free the unneeded space + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase init]): + (-[WebIconDatabase _setIconURL:forURL:]): Changed the bridge's name for this method to be more clear + (-[WebIconDatabase _createFileDatabase]): + (-[WebIconDatabase _iconDataForIconURL:]): This grabs the raw data for use in the conversion function + (-[WebIconDatabase _convertToWebCoreFormat]): This does the actual conversion + +2006-08-11 Tim Omernick + + Reviewed by John Sullivan. + + Needed for . + + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView sendEvent:]): + Changed an assertion to an early return. It should be possible to send events, especially updateEvt (for image capturing + purposes), to off-screen plug-ins. It just doesn't work right now. See . + +2006-08-11 John Sullivan + + Reviewed by Darin + + - fixed Would be nice if Safari shrank pages a little if necessary + to avoid printing an almost-empty page + + * WebView/WebHTMLView.m: + (-[NSArray knowsPageRange:]): + If the last page has a short-enough orphan (< 1/10 of the page height is the number I pulled + out of ... the air), then we adjust the scale factor slightly and check whether this reduces + the page count and thus eliminates the orphan. + +2006-08-07 Brady Eidson + + Reviewed by Anders and John + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase init]): + (-[WebIconDatabase isIconExpiredForIconURL:]): Get if an icon expired + (-[WebIconDatabase isIconExpiredForPageURL:]): Ditto + (-[WebIconDatabase _setIconURL:forURL:]): + (-[WebIconDatabase _sendNotificationForURL:]): Moved to WebKitPendingPublic for use outside of WebIconDatabase + (-[WebIconDatabase loadIconFromURL:]): Allow a load outside the context of a page load + * Misc/WebIconDatabasePrivate.h: + + * Misc/WebIconLoader.m: + (-[WebIconLoader didFinishLoading]): fixed up the "flipping the switch" #defs a bit + (-[WebIconLoader willSendRequest:redirectResponse:]): override to allow a load + outside of the context of a page load + + * WebCoreSupport/WebIconDatabaseBridge.h: Added. + * WebCoreSupport/WebIconDatabaseBridge.m: Added. + (-[WebIconDatabaseBridge init]): + (-[WebIconDatabaseBridge dealloc]): + (-[WebIconDatabaseBridge loadIconFromURL:]): Kick off a load on an icon outside + of the context of any page load + (-[WebIconDatabaseBridge _setIconData:forIconURL:]): WebKit side of bridge method + (-[WebIconDatabaseBridge _setHaveNoIconForIconURL:]): WebKit side of bridge method + (-[WebIconDatabaseBridge releaseCachedLoaderForIconURL:]): + (+[WebIconDatabaseBridge sharedBridgeInstance]): Moved this from WebCore to WebKit + so both sides of the bridge get the WebKit version + * WebKit.xcodeproj/project.pbxproj: Added some files + * WebView/WebDataSource.m: + (-[WebDataSource _loadIcon]): Added check for reload/expired icon to force + a load even if we already have it + +2006-08-04 Sam Weinig + + Reviewed by Darin. + + - patch for http://bugs.webkit.org/show_bug.cgi?id=10192 + Make WebCore (and friends) compile with -Wshorten-64-to-32 + + * Adds 'f' to float literals where expecting a float. + * Use ceilf() instead of ceil() when assigning to a float. + * Adds explicit casts where OK. + + NOTE: The -Wshorten-64-to-32 flag was not added for WebKit + because there are still a few places where no error handling + is in place. The flag can be added as soon as those are worked + out. + + * Misc/WebNSControlExtras.m: + (-[NSControl sizeToFitAndAdjustWindowHeight]): + * Misc/WebNSImageExtras.m: + (-[NSImage _web_scaleToMaxSize:]): + * Misc/WebNSViewExtras.h: + * Misc/WebNSViewExtras.m: + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): + (-[WebBaseNetscapePluginView drawRect:]): + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge expiresTimeForResponse:]): + * WebInspector/WebInspector.m: + (-[NSWindow window]): + (-[WebInspector treeViewScrollTo:]): + (-[WebInspector _updateSystemColors]): + (-[WebInspector webView:plugInViewWithArguments:]): + (-[WebInspector outlineView:objectValueForTableColumn:byItem:]): + * WebInspector/WebInspectorOutlineView.m: + (-[WebInspectorOutlineView _highlightRow:clipRect:]): + * WebInspector/WebNodeHighlight.m: + (-[WebNodeHighlight initWithBounds:andRects:forView:]): + * WebInspector/WebNodeHighlightView.m: + (-[WebNodeHighlightView roundedRect:withRadius:]): + (-[WebNodeHighlightView initWithHighlight:andRects:forView:]): + (-[WebNodeHighlightView drawRect:]): + * WebView/WebFrame.m: + (-[WebFrame _opened]): + * WebView/WebFrameView.m: + (-[WebFrameView initWithFrame:]): + * WebView/WebHTMLView.m: + (-[WebHTMLView _dragImageForLinkElement:]): + (-[WebHTMLView _web_setPrintingModeRecursive]): + (-[WebHTMLView _web_clearPrintingModeRecursive]): + (-[NSArray layout]): + (-[NSArray _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]): + (-[NSArray adjustPageHeightNew:top:bottom:limit:]): + (-[NSArray _scaleFactorForPrintOperation:]): + (-[NSArray setPageWidthForPrinting:]): + (-[NSArray _endPrintMode]): + (-[NSArray knowsPageRange:]): + (-[NSArray _originalFontA]): + (-[NSArray _originalFontB]): + (-[WebTextCompleteController _buildUI]): + (-[WebTextCompleteController _placePopupWindow:]): + * WebView/WebPDFView.m: + (-[WebPDFView _makeTextStandardSize:]): + (-[WebPDFView selectionImageForcingWhiteText:]): + (-[PDFPrefUpdatingProxy forwardInvocation:]): + * WebView/WebPreferences.m: + (-[WebPreferences _floatValueForKey:]): + * WebView/WebView.m: + (-[WebView makeTextSmaller:]): + (-[WebView canMakeTextStandardSize]): + (-[WebView makeTextStandardSize:]): + +2006-08-04 David Kilzer + + Reviewed by NOBODY (build fix). + + * WebCoreSupport/WebSubresourceLoader.m: REALLY moved to Loader/ + * WebView/WebFrameLoader.h: REALLY moved to Loader/ + * WebView/WebFrameLoader.m: REALLY moved to Loader/ + * WebView/WebLoader.h: REALLY moved to Loader/ + * WebView/WebLoader.m: REALLY moved to Loader/ + * WebView/WebMainResourceLoader.m: REALLY moved to Loader/ + +2006-08-03 Maciej Stachowiak + + Reviewed by Darin. + + - moved all loader code that is slated to be moved down to WebCore to a new Loader directory + + (next step is to remove dependencies on the rest of WebKit from this directory) + + * Loader/WebNetscapePlugInStreamLoader.h: Added. + * Loader/WebNetscapePlugInStreamLoader.m: Added. Cut out of WebNetscapePluginStream.m + (-[WebNetscapePlugInStreamLoader initWithStream:view:]): + (-[WebNetscapePlugInStreamLoader isDone]): + (-[WebNetscapePlugInStreamLoader releaseResources]): + (-[WebNetscapePlugInStreamLoader didReceiveResponse:]): + (-[WebNetscapePlugInStreamLoader didReceiveData:lengthReceived:]): + (-[WebNetscapePlugInStreamLoader didFinishLoading]): + (-[WebNetscapePlugInStreamLoader didFailWithError:]): + (-[WebNetscapePlugInStreamLoader cancelWithError:]): + * Plugins/WebNetscapePluginStream.m: + * WebKit.xcodeproj/project.pbxproj: + * WebCoreSupport/WebSubresourceLoader.h: Moved to Loader/ + * WebCoreSupport/WebSubresourceLoader.m: Moved to Loader/ + * WebView/WebFrameLoader.h: Moved to Loader/ + * WebView/WebFrameLoader.m: Moved to Loader/ + * WebView/WebLoader.h: Moved to Loader/ + * WebView/WebLoader.m: Moved to Loader/ + * WebView/WebMainResourceLoader.h: Moved to Loader/ + * WebView/WebMainResourceLoader.m: Moved to Loader/ + +2006-08-03 Tim Omernick + + Reviewed by Kevin Decker. + + Windowless OpenGL plug-ins render incorrectly on PowerPC + + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView _aglOffscreenImageForDrawingInRect:]): + Fixed color component swapping so that it works on both x86 and PPC. See comments. + +2006-08-03 Brady Eidson + + Reviewed by Tim Hatcher's rubber stamp + Fixed Intel build break caused by weinig's -W change in r15781 + + * WebView/WebView.m: wrapped cpu-dependent defs with defined() macro + +2006-08-03 Maciej Stachowiak + + Reviewed by John. + + - fixed problem that could cause assertion failures in Safari + + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): Don't + allow a plugin to start new loads once its document is no longer the one actively loading. + +2006-08-03 Maciej Stachowiak + + Reviewed by John. + + - remove use of WebDataSource from WebLoader and subclasses, just have them talk to the + WebFrameLoader instead. + + For now this is done by forarding all the calls. + + * Misc/WebIconLoader.m: + (-[WebIconLoader didFinishLoading]): + * Plugins/WebNetscapePluginStream.m: + (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]): + (-[WebNetscapePluginStream start]): + (-[WebNetscapePlugInStreamLoader didFinishLoading]): + (-[WebNetscapePlugInStreamLoader didFailWithError:]): + (-[WebNetscapePlugInStreamLoader cancelWithError:]): + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:]): + (-[WebFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]): + * WebCoreSupport/WebSubresourceLoader.h: + * WebCoreSupport/WebSubresourceLoader.m: + (-[WebSubresourceLoader initWithLoader:frameLoader:]): + (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forFrameLoader:]): + (+[WebSubresourceLoader startLoadingResource:withMethod:URL:customHeaders:referrer:forFrameLoader:]): + (+[WebSubresourceLoader startLoadingResource:withMethod:URL:customHeaders:postData:referrer:forFrameLoader:]): + (-[WebSubresourceLoader receivedError:]): + (-[WebSubresourceLoader signalFinish]): + (-[WebSubresourceLoader didFailWithError:]): + (-[WebSubresourceLoader cancel]): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDataSource.m: + (-[WebDataSource _updateLoading]): + (-[WebDataSource textEncodingName]): + (-[WebDataSource _mainReceivedBytesSoFar:complete:]): + * WebView/WebFrameLoader.h: + * WebView/WebFrameLoader.m: + (-[WebFrameLoader loadIconWithRequest:]): + (-[WebFrameLoader startLoadingMainResourceWithRequest:identifier:]): + (-[WebFrameLoader clearIconLoader]): + (-[WebFrameLoader commitProvisionalLoad]): + (-[WebFrameLoader activeDataSource]): + (-[WebFrameLoader _archivedSubresourceForURL:]): + (-[WebFrameLoader _defersCallbacks]): + (-[WebFrameLoader _identifierForInitialRequest:]): + (-[WebFrameLoader _willSendRequest:forResource:redirectResponse:]): + (-[WebFrameLoader _didReceiveAuthenticationChallenge:forResource:]): + (-[WebFrameLoader _didCancelAuthenticationChallenge:forResource:]): + (-[WebFrameLoader _didReceiveResponse:forResource:]): + (-[WebFrameLoader _didReceiveData:contentLength:forResource:]): + (-[WebFrameLoader _didFinishLoadingForResource:]): + (-[WebFrameLoader _didFailLoadingWithError:forResource:]): + (-[WebFrameLoader _privateBrowsingEnabled]): + (-[WebFrameLoader _addPlugInStreamLoader:]): + (-[WebFrameLoader _removePlugInStreamLoader:]): + (-[WebFrameLoader _finishedLoadingResource]): + (-[WebFrameLoader _receivedError:]): + (-[WebFrameLoader _addSubresourceLoader:]): + (-[WebFrameLoader _removeSubresourceLoader:]): + (-[WebFrameLoader _originalRequest]): + (-[WebFrameLoader webFrame]): + (-[WebFrameLoader _receivedMainResourceError:complete:]): + (-[WebFrameLoader initialRequest]): + (-[WebFrameLoader _receivedData:]): + (-[WebFrameLoader _setRequest:]): + (-[WebFrameLoader _downloadWithLoadingConnection:request:response:proxy:]): + (-[WebFrameLoader _handleFallbackContent]): + (-[WebFrameLoader _isStopping]): + (-[WebFrameLoader _decidePolicyForMIMEType:decisionListener:]): + (-[WebFrameLoader _setupForReplaceByMIMEType:]): + (-[WebFrameLoader _setResponse:]): + (-[WebFrameLoader _mainReceivedError:complete:]): + (-[WebFrameLoader _finishedLoading]): + (-[WebFrameLoader _mainReceivedBytesSoFar:complete:]): + (-[WebFrameLoader _iconLoaderReceivedPageIcon:]): + (-[WebFrameLoader _URL]): + * WebView/WebLoader.h: + * WebView/WebLoader.m: + (-[NSURLProtocol releaseResources]): + (-[NSURLProtocol loadWithRequest:]): + (-[NSURLProtocol setFrameLoader:]): + (-[NSURLProtocol frameLoader]): + (-[NSURLProtocol willSendRequest:redirectResponse:]): + (-[NSURLProtocol didReceiveAuthenticationChallenge:]): + (-[NSURLProtocol didCancelAuthenticationChallenge:]): + (-[NSURLProtocol didReceiveResponse:]): + (-[NSURLProtocol didReceiveData:lengthReceived:]): + (-[NSURLProtocol signalFinish]): + (-[NSURLProtocol didFailWithError:]): + (-[NSURLProtocol willCacheResponse:]): + (-[NSURLProtocol cancelWithError:]): + * WebView/WebMainResourceLoader.h: + * WebView/WebMainResourceLoader.m: + (-[WebMainResourceLoader initWithFrameLoader:]): + (-[WebMainResourceLoader receivedError:]): + (-[WebMainResourceLoader cancelWithError:]): + (-[WebMainResourceLoader _isPostOrRedirectAfterPost:redirectResponse:]): + (-[WebMainResourceLoader addData:]): + (-[WebMainResourceLoader willSendRequest:redirectResponse:]): + (-[WebMainResourceLoader continueAfterContentPolicy:response:]): + (-[WebMainResourceLoader continueAfterContentPolicy:]): + (-[WebMainResourceLoader checkContentPolicyForResponse:]): + (-[WebMainResourceLoader didReceiveResponse:]): + (-[WebMainResourceLoader didReceiveData:lengthReceived:]): + (-[WebMainResourceLoader didFinishLoading]): + (-[WebMainResourceLoader didFailWithError:]): + (-[WebMainResourceLoader loadWithRequestNow:]): + +2006-08-03 Sam Weinig + + Reviewed by Darin. + + - patch for http://bugs.webkit.org/show_bug.cgi?id=10176 + Make WebCore compile with -Wundef + + * Adds -Wundef flag to Xcode project + * Converts #ifs to #ifdef and #ifndefs where needed. + + * Carbon/CarbonUtils.m: + * Carbon/CarbonWindowAdapter.m: + * Carbon/HIViewAdapter.m: + (+[NSView bindHIViewToNSView:nsView:]): + * Carbon/HIWebView.m: + (HIWebViewEventHandler): + * Misc/WebFileDatabase.m: + (UniqueFilePathForKey): + * Misc/WebNSWindowExtras.m: + (swizzleInstanceMethod): + * Misc/WebTypesInternal.h: + * Plugins/WebNetscapeDeprecatedFunctions.c: + * Plugins/WebNetscapeDeprecatedFunctions.h: + * Plugins/WebNetscapePluginPackage.h: + * Plugins/WebNetscapePluginPackage.m: + (-[WebNetscapePluginPackage unloadWithoutShutdown]): + (-[WebNetscapePluginPackage load]): + * WebKit.xcodeproj/project.pbxproj: + +2006-08-03 Darin Adler + + Reviewed by Eric Seidel. + + - fix storage leak + + * WebView/WebFrame.m: (-[WebFramePrivate dealloc]): Release the frame loader. + +2006-08-02 Timothy Hatcher + + Rubber stamped by Maciej. + + Adding back resultsWithXpathQuery, removed by Darin's earlier change. + This function is called from ObjC, but not used from JavaScript. + + * WebInspector/webInspector/inspector.js: + +2006-08-02 Timothy Hatcher + + Reviewed by Darin. + + Bug 10200: [Drosera] Deadlock between Drosera and Safari while loading page + http://bugs.webkit.org/show_bug.cgi?id=10200 + + Prevent reentrancy in our debugger callbacks. This was causing a deadlock in Drosera because + suspendProcessIfPaused was being called during a DO call into Safari. + + Preventing reentrancy also prevents scripts that Drosera injects and evaluates from showing + up in rare cases (such as a iframe loading about:blank). I thought this would prevent cases + where you call a function from the console and expect it to break on a breakpoint in them, but + this appears to never have worked even without this change. When that is figured out we can + reconsider a better solution to reentrancy. I have filed that as bug 10214. + + I also removed the NSRunLoop runMode:beforeDate: calls since DO handles this for us since + we don't use "onway void" as the return type for the callbacks. Note: using onway void for + the listener callbacks causes bad synchronization issues and obscure crashes. + + * DefaultDelegates/WebScriptDebugServer.m: + (-[WebScriptDebugServer webView:didLoadMainResourceForDataSource:]): + (-[WebScriptDebugServer webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]): + (-[WebScriptDebugServer webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]): + (-[WebScriptDebugServer webView:didEnterCallFrame:sourceId:line:forWebFrame:]): + (-[WebScriptDebugServer webView:willExecuteStatement:sourceId:line:forWebFrame:]): + (-[WebScriptDebugServer webView:willLeaveCallFrame:sourceId:line:forWebFrame:]): + (-[WebScriptDebugServer webView:exceptionWasRaised:sourceId:line:forWebFrame:]): + * DefaultDelegates/WebScriptDebugServerPrivate.h: + +2006-08-02 Maciej Stachowiak + + Reviewed by John. + + - fix assertion failure on layout tests by stopping plugins from loading at a clearly defined time + - add more assertions for safety + + * WebView/WebDataSource.m: + (-[WebDataSourcePrivate dealloc]): Removed obsolete comment. + (-[WebDataSource _updateLoading]): Add assertion ensuring this method is only called + at a time when this data source is the one that might be loading for a frame. + (-[WebDataSource _stopLoading]): Stop loading plugins as a FIXME suggests we should. + * WebView/WebFrameLoader.m: + (-[WebFrameLoader isLoadingPlugIns]): New helper method. + (-[WebFrameLoader isLoading]): Consider plugin loads too - otherwise we won't stop them + at stopLoading time. + +2006-08-02 Adam Roben + + Reviewed by Brady. + + - Rename TransferJob to ResourceLoader (this file was forgotten in an + earlier change by Maciej) + + * COM/WebView.cpp: + +2006-08-01 Maciej Stachowiak + + Reviewed by Adele. + + - Change things around so WebFrameLoader tracks the main and provisional data source, + as well as the frame load state, pulling much code out of WebFrame along the way. + + The most significant aspects of this change are: + + - management of WebDataSources and WebFrameState was moved into WebFrameLoader + - there is now just one WebFrameLoader shared between the primary and provisional data source + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDataSource.m: + (-[WebDataSourcePrivate dealloc]): + (-[WebDataSource _updateLoading]): + (-[WebDataSource _loadIcon]): + (-[WebDataSource _setPrimaryLoadComplete:]): + (-[WebDataSource _stopLoading]): + (-[WebDataSource _startLoading]): + (-[WebDataSource _addSubresourceLoader:]): + (-[WebDataSource _removeSubresourceLoader:]): + (-[WebDataSource _addPlugInStreamLoader:]): + (-[WebDataSource _removePlugInStreamLoader:]): + (-[WebDataSource _defersCallbacksChanged]): + (-[WebDataSource _stopLoadingWithError:]): + (-[WebDataSource _revertToProvisionalState]): + (-[WebDataSource _setupForReplaceByMIMEType:]): + (-[WebDataSource initWithRequest:]): + (-[WebDataSource data]): + (-[WebDataSource isLoading]): + * WebView/WebFrame.m: + (-[WebFramePrivate init]): + (-[WebFramePrivate dealloc]): + (-[WebFrame _closeOldDataSources]): + (-[WebFrame _detachFromParent]): + (-[WebFrame _makeDocumentView]): + (-[WebFrame _receivedMainResourceError:]): + (-[WebFrame _transitionToCommitted:]): + (+[WebFrame _timeOfLastCompletedLoad]): + (-[WebFrame _checkLoadCompleteForThisFrame]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _continueAfterWillSubmitForm:]): + (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]): + (-[WebFrame _initWithWebFrameView:webView:bridge:]): + (-[WebFrame _frameLoader]): + (-[WebFrame _provisionalLoadStarted]): + (-[WebFrame _prepareForDataSourceReplacement]): + (-[WebFrame _frameLoadCompleted]): + (-[WebFrame provisionalDataSource]): + (-[WebFrame dataSource]): + (-[WebFrame stopLoading]): + * WebView/WebFrameInternal.h: + * WebView/WebFrameLoader.h: + * WebView/WebFrameLoader.m: + (-[WebFrameLoader initWithWebFrame:]): + (-[WebFrameLoader dealloc]): + (-[WebFrameLoader dataSource]): + (-[WebFrameLoader _setDataSource:]): + (-[WebFrameLoader clearDataSource]): + (-[WebFrameLoader provisionalDataSource]): + (-[WebFrameLoader _setProvisionalDataSource:]): + (-[WebFrameLoader _clearProvisionalDataSource]): + (-[WebFrameLoader state]): + (+[WebFrameLoader timeOfLastCompletedLoad]): + (-[WebFrameLoader _setState:]): + (-[WebFrameLoader clearProvisionalLoad]): + (-[WebFrameLoader markLoadComplete]): + (-[WebFrameLoader commitProvisionalLoad]): + (-[WebFrameLoader stopLoading]): + (-[WebFrameLoader startLoading]): + (-[WebFrameLoader startProvisionalLoad:]): + (-[WebFrameLoader setupForReplace]): + * WebView/WebFramePrivate.h: + +2006-08-01 Tim Omernick + + Reviewed by John Sullivan. + + Flash crashes after it replaces itself via a document.write() + + I kind of hate to do this, but this is the best way to work around buggy plug-ins like Flash that assume that + NPP_Destroy() cannot be called while the browser is calling one of its other plug-in functions. The classic + situation is a plug-in that replaces itself via an NPN_Invoke() that executes a document.write(). + + * Plugins/WebBaseNetscapePluginView.h: + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView sendEvent:]): + Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions. + (-[WebBaseNetscapePluginView setWindowIfNecessary]): + ditto + (-[WebBaseNetscapePluginView start]): + It should not be possible to start a plug-in instance while we are calling into it (one of those chicken/egg + problems). Added a sanity-checking assertion. + (-[WebBaseNetscapePluginView stop]): + If we're already calling a plug-in function, do not call NPP_Destroy(). The plug-in function we are calling + may assume that its instance->pdata, or other memory freed by NPP_Destroy(), is valid and unchanged until said + plugin-function returns. + (-[WebBaseNetscapePluginView pluginScriptableObject]): + Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions. + (-[WebBaseNetscapePluginView willCallPlugInFunction]): + Increment plug-in function call depth. + (-[WebBaseNetscapePluginView didCallPlugInFunction]): + Decrement plug-in function call depth. Stop if we're supposed to stop. + (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): + Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions. + (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]): + ditto + (-[WebBaseNetscapePluginView _printedPluginBitmap]): + ditto + + * Plugins/WebBaseNetscapePluginStream.m: + (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]): + Call -willCallPlugInFunction and -didCallPlugInFunction around calls to the NPP_* functions. + (-[WebBaseNetscapePluginStream _destroyStream]): + ditto + (-[WebBaseNetscapePluginStream _deliverData]): + ditto + +2006-08-01 Maciej Stachowiak + + - fix build after last change + + * WebView/WebFrame.m: + (-[WebFrame _checkLoadCompleteForThisFrame]): + +2006-08-01 Maciej Stachowiak + + Reviewed by Beth. + + - revert part of my last fix that broke the Safari bookmarks view + + * WebView/WebFrame.m: + (-[WebFrame _checkLoadCompleteForThisFrame]): still send layout message for non-HTML views + +2006-08-01 Tim Omernick + + Reviewed by Anders. + + Fixed an assertion failure I ran into while debugging . + + * Plugins/WebNetscapePluginEmbeddedView.m: + (-[WebNetscapePluginEmbeddedView redeliverStream]): + Don't clear the "instance" ivar here. This code was refactored here from the old WebNetscapePluginRepresentation, + which also had an "instance" ivar. It is never appropriate to clear a plug-in view's instance. That is done when + the plug-in is destroyed. + +2006-08-01 Maciej Stachowiak + + Reviewed by Geoff. + + - some refactoring in preparation for moving more stuff to WebFrameLoader. + + * WebView/WebFrame.m: + (-[WebFrame _clearDataSource]): + (-[WebFrame _detachFromParent]): + (-[WebFrame _commitProvisionalLoad]): + (-[WebFrame _transitionToCommitted:]): + (-[WebFrame _clearProvisionalLoad]): + (-[WebFrame _markLoadComplete]): + (-[WebFrame _checkLoadCompleteForThisFrame]): + (-[WebFrame _startProvisionalLoad:]): + (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]): + (-[WebFrame stopLoading]): + +2006-07-31 Maciej Stachowiak + + Reviewed by Tim Hatcher. + + - renamed TransferJob to ResourceLoader in WebCore + + * COM/WebFrame.cpp: + (WebFrame::loadDataSource): + (WebFrame::receivedRedirect): + (WebFrame::receivedResponse): + (WebFrame::receivedData): + (WebFrame::receivedAllData): + (WebFrame::setStatusText): + * COM/WebFrame.h: + +2006-07-31 Darin Adler + + Reviewed by Maciej. + + - omit the margin and padding boxes for display types where they are ignored + - use CSS instead of properties for table spacing and padding as suggested by Tim H. + + * WebInspector/webInspector/inspector.css: Added rules for spacing and padding. + Added rules that hide the margin and padding boxes (borders and all but the center cell) + when the hide attribute is present. + * WebInspector/webInspector/inspector.html: Added classes for the rules above. + Removed cellpadding and cellspacing attributes. + * WebInspector/webInspector/inspector.js: Added code to hide/show the margin and + padding boxes based on the display type. + +2006-07-31 Duncan Wilcox + + Reviewed by Darin. + + Fixes + "REGRESSION: delegate returning no menu elements crashes webkit" + + No automated test, because there's no way to programmatically open a context menu, + no manual test because there's no way to customize the context menu delegate. + + * WebView/WebView.m: + (-[WebView _menuForElement:defaultItems:]): Make sure the context menu returned + some menu items before accessing the first one. + +2006-07-31 Timothy Hatcher + + Reviewed by John. + + REGRESSION: "Search in Google" + and "Search in Spotlight" fail to work on text selected in a frame + + Use selectedFrame to get the frame with the text selection. + + * WebView/WebView.m: + (-[WebView _searchWithGoogleFromMenu:]): + (-[WebView _searchWithSpotlightFromMenu:]): + +2006-07-31 Darin Adler + + Reviewed by Tim Hatcher. + + - http://bugs.webkit.org/show_bug.cgi?id=10168 + add a first cut at a Metrics pane to the inspector + + * WebInspector/webInspector/inspector.css: Add styles for the new metrics pane. + * WebInspector/webInspector/inspector.html: Add the new metrics pane, starting with + the table to show the box model. + * WebInspector/webInspector/inspector.js: Add the new metrics pane. Add back some + "title" attributes so we have more tooltips. Removed the optional parameter to + getComputedStyle. + +2006-07-31 Anders Carlsson + + Reviewed by John. + + * Plugins/WebPluginDatabase.m: + (-[WebPluginDatabase refresh]): + Create a mutable set instead of a mutable array. + +2006-07-30 Darin Adler + + Reviewed by Tim Hatcher. + + * WebInspector/webInspector/inspector.js: Fix bug where a null property value + leads to an empty style pane. + +2006-07-30 Darin Adler + + Reviewed by Tim Hatcher. + + - http://bugs.webkit.org/show_bug.cgi?id=10163 + some improvements for the inspector + + * WebInspector/WebInspector.m: + (+[WebInspector sharedWebInspector:]): Fixed bug that could cause the inspector + to be garbage collected if used in an application with GC enabled. + (-[WebInspector dealloc]): Removed a call to a non-existent close method. + (-[WebInspector window]): Added a custom WebPreferences object and called + setPrivateBrowsingEnabled:YES so the inspector won't appear in the history menu. + Also call setProhibitsMainFrameScrolling:YES to try to get rid of trouble where + the inspector scrolls when dragging. + + * WebInspector/webInspector/inspector.css: Added style for the new color swatch, + and JavaScript properties. More of the style should be shared between the panes, + but this should be OK for now. + + * WebInspector/webInspector/inspector.html: Added a first cut at a JavaScript + properties pane. Needs work, but better than nothing. + + * WebInspector/webInspector/inspector.js: Lots of improvements: + - Omit "typical" property values from computed style display, making it much shorter. + - Use the words "black", "white", and "transparent" when appropriate for color values. + - Refactored the loaded() function to get rid of repetitive scrollbar setup. + - Added a new scrollarea for the JavaScript properties pane. + - Simplified refreshScrollbars() -- we now refresh all scrollbars every time, which does no harm. + - Removed unused resultsWithXpathQuery(). + - Use [] instead of "new Array()" and {} instead of "new Object()". + - Removed unused xpathForNode(). + - Changed style pane to display the style for a text node's parent instead of saying + it can't display the style for text. + - Fixed regression I caused a while back by checking the length of a computed style + and not trying to display anything if its length is 0. Before this change and the + corresponding change in WebCore, we'd see a complete list of all styles with the + empty string as the value for each one. + - Changed the name of the computedStyle flag on the style rules array to isComputedStyle + to make it easier to understand it's a boolean. + - Fixed an error in the code that does !important scanning where it was trying to + do a special case for computed style, but was checking the computed style flag on + the wrong object. + - Added populateStyleListItem() function to factor out things in common between the + items in the top level list and the expanded tree for shorthand properties. + - Added code to make a color swatch next to the textual representation for any + property that contains a color. + - Implemented a first cut at a simple JavaScript properties pane. + +2006-07-29 Darin Adler + + - Removed tabs from these source files that still had them. + We don't use them; that way source files look fine in editors + that have tabs set to 8 spaces or to 4 spaces. + - Removed allow-tabs Subversion property from the files too. + + * DefaultDelegates/WebDefaultPolicyDelegate.m: + * History/WebHistory.m: + * Misc/WebDownload.m: + * Misc/WebIconDatabase.m: + * Misc/WebKitErrors.m: + * Misc/WebKitLogging.m: + * Misc/WebNSDataExtras.m: + * Misc/WebNSFileManagerExtras.m: + * Panels/WebPanelAuthenticationHandler.m: + * Plugins/WebBaseNetscapePluginView.m: + * Plugins/npfunctions.h: + * WebCoreSupport/WebSubresourceLoader.m: + * WebView/WebMainResourceLoader.m: + * WebView/WebView.h: + * WebView/WebView.m: + +2006-07-29 Sam Weinig + + Reviewed by Darin. + + - patch for http://bugs.webkit.org/show_bug.cgi?id=10080 + Adopt pedantic changes from the Unity project to improve + cross-compiler compatibility + + Changes include: + * Adding missing newline to the end of the file. + * Turning on gcc warning for missing newline at the end of a source file + (GCC_WARN_ABOUT_MISSING_NEWLINE in Xcode, -Wnewline in gcc). + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebResourcePrivate.h: + +2006-07-29 Mitz Pettel + + Reviewed by John Sullivan. + + - fix http://bugs.webkit.org/show_bug.cgi?id=9984 + ASSERTION FAILURE: _private->mouseDownEvent != nil + (WebKit/WebView/WebHTMLView.m:4863 -[WebHTMLView(WebInternal) _delegateDragSourceActionMask]) + + * WebView/WebHTMLView.m: + (-[WebHTMLView _setMouseDownEvent:]): Moved into the WebHTMLViewFileInternal category and changed + to accept nil. + (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): + Copy the hit HTMLView's mouse down event to the top HTMLView. + (-[WebHTMLView acceptsFirstMouse:]): Added a call to _setMouseDownEvent:nil before returning. + (-[WebHTMLView shouldDelayWindowOrderingForEvent:]): Added a call to _setMouseDownEvent:nil + before returning. + (-[WebHTMLView mouseUp:]): Added a call to _setMouseDownEvent:nil to clear the event set in + mouseDown: (and used during dragging). + (-[WebHTMLView _delegateDragSourceActionMask]): Copy the hit HTMLView's mouse down event to + the top HTMLView. + +2006-07-28 Timothy Hatcher + + Reviewed by John. + + REGRESSION: Spell check not available from contextual menu in Mail + + The context menu code should be checking isContentEditable + on DOMNode not just DOMElement. This is needed because DOMText + will be the node class of any text that is clicked. + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]): + +2006-07-25 Geoffrey Garen + + Reviewed by Maciej, inspired by John. + + - Fixed 1% REGRESSION on iBench HTML due to + repeated requests for non-existent favicon + + An optimization to avoid serializing favicon data for missing icons had stomped an + optimization to avoid GETing a missing favicon more than once. The solution + is a happy marriage of optimizations, ensuring that we *retain* the missing + favicon's "i am missing" data without posting a notification or saving it to disk. + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase _setIconURL:forURL:]): + +2006-07-25 David Harrison + + Reviewed by timo and Darin. + + "Paste and Match Style" is not working in Mail (add SPI) + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebView.m: + (-[WebView replaceSelectionWithNode:]): + (-[WebView _replaceSelectionWithNode:matchStyle:]): + * WebView/WebViewPrivate.h: + (-[WebView _replaceSelectionWithNode:matchStyle::]): + New SPI that is same as replaceSelectionWithNode: with added parameter whether to match existing style. + +2006-07-24 Darin Adler + + Reviewed by Adele and Justin. + + - update for change to require context when creating fragments from text + (needed to handle whitespace properly) + + * WebView/WebHTMLView.m: + (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]): + Added context parameter, pass through to bridge. + (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): Pass selection range as context + when calling above method. + (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): Pass drag caret as context when + calling above method. + +2006-07-24 Maciej Stachowiak + + Reviewed by Geoff. + + - fix Help Viewer loads empty window (not getting didFailLoadingWithError: callback) + (without re-introducing http://bugs.webkit.org/show_bug.cgi?id=10062 ) + + * WebView/WebLoader.h: + * WebView/WebMainResourceLoader.m: + (-[WebMainResourceLoader receivedError:]): Copy in some code from the base class to do it in the proper + order, surrounding the call to [ds _receivedMainResourceError:error complete:YES]. + +2006-07-24 Anders Carlsson + + Reviewed by Tim O. + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase removeAllIcons]): + Make an array of the keys and iterate through it to avoid modifying the + dictionary while enumerating it. + +2006-07-24 Timothy Hatcher + + Reviewed by John and Darin. + + Cannot selectively install a custom + scroller that differs from the default Aqua frame size. + + Adds two new private methods to WebFrameView that allows + an application to set a custom scroll view class. This is needed + if the application wants to install a custom scroller that is wider + than the typical scroller, because NSScrollView does the content + rect calculations in a class method (ignoring custom scrollers.) + The _setScrollViewClass method requires the class to be a subclass + of WebDynamicScrollBarView, or nil can be passed to reset to the default class. + A new scroll view of the specified class will then replace the previous + one without the need to reload content of the frame. + + * WebView/WebFrameView.m: + (-[WebFrameView _customScrollViewClass]): + (-[WebFrameView _setCustomScrollViewClass:]): + * WebView/WebFrameViewPrivate.h: + +2006-07-24 Alexey Proskuryakov + + Reviewed by Darin. + + Fix http://bugs.webkit.org/show_bug.cgi?id=10009 + REGRESSION: Schubert-IT PDF Plug-in not working for full page (works in frames) + + * WebView/WebView.m: + (+[WebView _viewClass:andRepresentationClass:forMIMEType:]): If we've got a type supported by WebPDFView, + make sure to initialize the plugin database, in case a plugin wants to handle it. + +2006-07-23 Mark Rowe + + Reviewed by Maciej. + + Bug 9686: [Drosera] Need the ability to break into Drosera on Javascript exceptions + http://bugs.webkit.org/show_bug.cgi?id=9686 + + WebKit portion of the fix. + + * DefaultDelegates/WebDefaultScriptDebugDelegate.m: + (-[WebDefaultScriptDebugDelegate webView:exceptionWasRaised:sourceId:line:forWebFrame:]): + * DefaultDelegates/WebScriptDebugServer.h: + * DefaultDelegates/WebScriptDebugServer.m: + (-[WebScriptDebugServer webView:exceptionWasRaised:sourceId:line:forWebFrame:]): Notify + listeners that an exception has been raised. + * WebView/WebScriptDebugDelegate.h: + * WebView/WebScriptDebugDelegate.m: + (-[WebScriptCallFrame exceptionRaised:sourceId:line:]): Dispatch through to delegate and + WebScriptDebugServer. + +2006-07-23 Adele Peterson + + Reviewed by Darin. + + - Fix for CrashTracer: 7 crashes in Safari at com.apple.WebCore: WebCore::RenderTableSection::paint + 155 + + * WebView/WebHTMLView.m: (-[WebHTMLView _web_layoutIfNeededRecursive:testDirtyRect:]): + needsDisplay was returning NO even though the view has a dirty rect (see ). Since we know about + the dirty rect, we don't actually need to check needsDisplay. + +2006-07-22 Timothy Hatcher + + Rolling out r15572. + + Bug 10062: REGRESSION: dom/xhtml/level2/html/HTMLIFrameElement11.xhtml asserts/crashes + http://bugs.webkit.org/show_bug.cgi?id=10062 + + 2006-07-21 Timothy Hatcher + + Reviewed by Maciej. + + Help Viewer loads empty window + (not getting didFailLoadingWithError: callback) + + Call super's didFailWithError before _receivedMainResourceError + because _receivedMainResourceError will cause the datasource's + frame to be set to nil before the didFailLoadingWithError delegate + callback is sent. (This order is needed now that WebDataSource does + not hold on to the WebView; it uses the WebFrame to get to the WebView. + If the WebFrame is nil we can't get to the WebView's resource load delegate.) + + * WebView/WebMainResourceLoader.m: + (-[WebMainResourceLoader receivedError:]): + + +2006-07-22 Timothy Hatcher + + Reviewed by Adele. + + REGRESSION: Ctrl-clicking on a selection containing a word doesn't display a complete contextual menu + + Show the editing context menu if the WebView is editible. + The original change only checked if the DOM element was editable, + and isContentEditable returns NO if entire WebView is editable. + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]): + +2006-07-21 Timothy Hatcher + + Reviewed by Maciej. + + Help Viewer loads empty window + (not getting didFailLoadingWithError: callback) + + Call super's didFailWithError before _receivedMainResourceError + because _receivedMainResourceError will cause the datasource's + frame to be set to nil before the didFailLoadingWithError delegate + callback is sent. (This order is needed now that WebDataSource does + not hold on to the WebView; it uses the WebFrame to get to the WebView. + If the WebFrame is nil we can't get to the WebView's resource load delegate.) + + * WebView/WebMainResourceLoader.m: + (-[WebMainResourceLoader receivedError:]): + +=== Safari-521.20 === + +2006-07-21 Timothy Hatcher + + Reviewed by John. + + REGRESSION (521.10.1 - 521.13): most context menu items missing when a form field is focused (common on google.com) (9680) + + Do not use _isEditable call since that only checks if the current + selection or frame is editible. We now check if the currently clicked element + is a content editible area, a textarea, an isindex or an input element that + return YES to _isTextField. + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]): + +2006-07-20 John Sullivan + + Reviewed by Maciej + + - WebKit part of fix for: + REGRESSION (419.3-521.19): repro Safari world leak involving + closing tabs after clicking in a web page + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge textViewWasFirstResponderAtMouseDownTime:]): + renamed to be more specific (formerly wasFirstResponderAtMouseDownTime:) + + * WebView/WebHTMLViewInternal.h: + * WebView/WebHTMLView.m: + (-[WebTextCompleteController dealloc]): + updated for name change + (-[NSArray _setMouseDownEvent:]): + Now only retains the first responder if it's a textView, since that's the only case that the only client + actually cares about. This avoids a reference cycle caused by retaining self. This is the only substantive + part of the patch; all the rest is just renaming for clarity, and comments. + (-[NSArray mouseDown:]): + updated for name change + (-[WebHTMLView _textViewWasFirstResponderAtMouseDownTime:]): + renamed to be more specific (formerly _wasFirstResponderAtMouseDownTime:) + +2006-07-19 Tim Omernick + + Reviewed by Darin. + + safari crashed right after disabling "block pop up windows" (or other WebPreferences changes) + + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView viewWillMoveToSuperview:]): + Stop the plug-in when it is removed from its superview. It is not sufficient to do this in -viewWillMoveToWindow:nil, because + the WebView might still has a hostWindow at that point, which prevents the plug-in from being destroyed. + There is no need to start the plug-in when moving into a superview. -viewDidMoveToWindow takes care of that. + +=== Safari-521.19 === + +2006-07-17 Tim Omernick + + Reviewed by Maciej. + + need a way to prevent pages from scrolling to reveal elements that are focused + by script + + * WebView/WebViewPrivate.h: + * WebView/WebView.m: + (-[WebView setProhibitsMainFrameScrolling:]): + New method. Prohibits scrolling in the WebView's main frame. Used to "lock" a WebView to a specific + scroll position. + +2006-07-17 Timothy Hatcher + + Reviewed by Darin. + + REGRESSION: WebKit should call windowScriptObjectAvailable before attaching the script debugger + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge windowObjectCleared]): + +2006-07-17 Timothy Hatcher + + Reviewed by Maciej. + + WebScriptObject and WebUndefined are no longer defined by WebKit + + Copy WebScriptObject.h from WebCore's private headers, not JavaScriptCore. + + * WebKit.xcodeproj/project.pbxproj: + +2006-07-17 John Sullivan + + Reviewed by Tim Omernick. + + - fixed Orange Find highlight displays text in wrong size on PDF pages + if they're not at "actual size" + + To match WebHTMLView, I made the methods that return attributed strings take the view's scale + factor into account. + + * WebView/WebPDFView.m: + (-[WebPDFView _scaledAttributedString:]): + new helper method, takes an attributed string and returns one that's scaled by the view's + current scale factor + (-[WebPDFView attributedString]): + pass result through _scaledAttributedString: + (-[WebPDFView selectedAttributedString]): + ditto + +2006-07-17 Justin Garcia + + Reviewed by levi + + Rolled the first fix for: + + GMail Editor: Operations that use drop down menus blow away the selection + back in and removed the call to _clearSelectionInOtherFrames from + -[WebHTMLView becomeFirstResponder] to fix the bug. + + * WebView/WebHTMLView.m: + (-[NSArray maintainsInactiveSelection]): + (-[NSArray becomeFirstResponder]): + * WebView/WebView.m: + (-[WebView maintainsInactiveSelection]): + +2006-07-15 Darin Adler + + Reviewed by John Sullivan. + + - fix http://bugs.webkit.org/show_bug.cgi?id=9928 + REGRESSION: Text Encoding menu inoperative (after gcc protocol build fix) + + * WebView/WebHTMLView.m: + (-[WebHTMLView _documentRange]): Moved into WebHTMLViewFileInternal category. + (-[WebHTMLView selectionRect]): Moved into WebDocumentPrivateProtocols category. + (-[WebHTMLView selectionView]): Ditto. + (-[WebHTMLView selectionImageForcingWhiteText:]): Ditto. + (-[WebHTMLView selectionImageRect]): Ditto. + (-[WebHTMLView pasteboardTypesForSelection]): Ditto. + (-[WebHTMLView selectAll]): Ditto. + (-[WebHTMLView deselectAll]): Ditto. + (-[WebHTMLView string]): Ditto. + (-[WebHTMLView _attributeStringFromDOMRange:]): Ditto. + (-[WebHTMLView attributedString]): Ditto. + (-[WebHTMLView selectedString]): Ditto. + (-[WebHTMLView selectedAttributedString]): Ditto. + (-[WebHTMLView supportsTextEncoding]): Ditto. + (-[WebHTMLView _canProcessDragWithDraggingInfo:]): Moved into WebDocumentInternalProtocols. + (-[WebHTMLView _isMoveDrag]): Ditto. + (-[WebHTMLView _isNSColorDrag:]): Ditto. + (-[WebHTMLView draggingUpdatedWithDraggingInfo:actionMask:]): Ditto. + (-[WebHTMLView draggingCancelledWithDraggingInfo:]): Ditto. + (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): Ditto. + (-[WebHTMLView elementAtPoint:]): Ditto. + (-[WebHTMLView elementAtPoint:allowShadowContent:]): Ditto. + + * WebKit.xcodeproj/project.pbxproj: Let Xcode 2.3 do its thing. + +=== Safari-521.17 === + +2006-07-14 Timothy Hatcher + + Rolling out this fix from r15358 since it isn't resolved. + + 2006-07-11 Justin Garcia + + Reviewed by levi & thatcher + + + GMail Editor: Operations that use drop down menus blow away the selection + + * WebView/WebHTMLView.m: + (-[WebHTMLView maintainsInactiveSelection]): Maintain an inactive selection + when resigning as first responder if the selection is editable + or if the WebView tells us to. + * WebView/WebView.m: + (-[WebView maintainsInactiveSelection]): Just because a WebView is + editable doesn't mean selections inside subframes will be. Return + NO by default. + +2006-07-14 Timothy Hatcher + + SWB: gcc-5412 (new?) objc warning causes WebCore project failure + + Build fix with the new GCC. Removes forward declarations of protocols. + + * Misc/WebSearchableTextView.h: + * WebCoreSupport/WebSubresourceLoader.h: + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDocumentInternal.h: + * WebView/WebDocumentPrivate.h: + * WebView/WebHTMLView.h: + * WebView/WebPDFView.h: + * WebView/WebScriptDebugDelegatePrivate.h: + +2006-06-28 Darin Adler + + Reviewed by Adele. + + - fix http://bugs.webkit.org/show_bug.cgi?id=9625 + + REGRESSION: Focus not removed from password field after ctrl-click in text field + + * WebView/WebHTMLView.m: (-[WebHTMLView menuForEvent:]): Set handlingMouseDownEvent to + YES while calling sendContextMenuEvent: on the bridge. + +2006-07-14 Timothy Hatcher + + Reviewed by Maciej. + + Moved JavaScriptCore to be a public framework. + + * WebKit.xcodeproj/project.pbxproj: + +2006-07-13 Mitz Pettel + + Reviewed by Darin. + + - fix http://bugs.webkit.org/show_bug.cgi?id=9795 + REGRESSION: Crash in [WebHTMLView(WebPrivate) + _updateMouseoverWithEvent:] + and http://bugs.webkit.org/show_bug.cgi?id=9850 + REGRESSION: Assertion failure (SHOULD NEVER BE REACHED) in - + [WebHTMLView(WebPrivate) removeTrackingRect:] + + * WebView/WebHTMLView.m: + (-[WebHTMLView _updateMouseoverWithEvent:]): Return immediately if + the view has already been closed. + +2006-07-13 David Harrison + + Reviewed by Justin and Levi. + + REGRESSION: Option-Delete doesn't delete words during typing + + * Tests: + editing/deleting/delete-by-word-001.html + editing/deleting/delete-by-word-002.html + + * WebView/WebHTMLView.m: + (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:granularity:]): + +2006-07-13 Timothy Hatcher + + Rolling out this earlier change (r15378) now that it is fixed on AGL's end. + Fixes Restore 64-bit OpenGL plug-in support once AGL is 64-bit + + AGL isn't 64-bit yet; temporarily remove it from WebKit 64-bit build + + * Plugins/WebBaseNetscapePluginView.h: + * Plugins/WebBaseNetscapePluginView.m: + +2006-07-13 Timothy Hatcher + + Reviewed by Darin. + + REGRESSION: tabbing in mail moves focus + to next control instead of inserting a tab space. + + Change editible WebView's tabKeyCyclesThroughElements to NO only + if the setTabKeyCyclesThroughElements SPI wasn't called. + + * WebView/WebView.m: + (-[WebView setEditable:]): + +2006-07-12 Anders Carlsson + + Reviewed by Darin. + + http://bugs.webkit.org/show_bug.cgi?id=9624 + REGRESSION: After ctrl-clicking in a EMPTY input or textarea field, the contextual menu shows "Search in Google" and "Search in Spotlight" as active menu items + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]): + Don't create Dictionary, Spotlight or Google lookup items if there's no selection. + +2006-07-12 Mark Rowe + + Reviewed by Timothy. + + http://bugs.webkit.org/show_bug.cgi?id=9868 + Applications shown in Drosera's "Attach" window remain after exit + + * DefaultDelegates/WebScriptDebugServer.m: + (-[WebScriptDebugServer init]): Register for NSApplicationWillTerminateNotification so we will + know when the application is being exited. + (-[WebScriptDebugServer dealloc]): Unregister notification before we are deallocated. + (-[WebScriptDebugServer applicationTerminating:]): Inform anyone listening that we are going away. + +2006-07-12 Tim Omernick + + Reviewed by Tim Hatcher. + + AGL isn't 64-bit yet; temporarily remove it from WebKit 64-bit build + + Also, fixed a LOG_ERROR() so that it uses the CGL error instead of the AGL error; Tim H missed this in his build fix + from earlier. + + * Plugins/WebBaseNetscapePluginView.h: + * Plugins/WebBaseNetscapePluginView.m: + +2006-07-11 John Sullivan + + Reviewed by Kevin and Tim O + + - added support for creating a selection image with white text + + * WebView/WebDocumentPrivate.h: + added -selectionImageForcingWhiteText: and -selectionImageRect to the private + protocol + + * Misc/WebSearchableTextView.m: + (-[NSString selectionImageForcingWhiteText:]): + added stub for this new method to this obsolete class to satisfy the compiler + (-[NSString selectionImageRect]): + ditto + + * WebView/WebHTMLView.m: + (-[WebHTMLView _selectionDraggingImage]): + now calls -selectionImageForcingWhiteText:NO instead of just -selectionImage + (-[WebHTMLView _selectionDraggingRect]): + now calls selectionImageRect, to which the implementation moved + (-[WebHTMLView selectionImageForcingWhiteText:]): + implemented this new method by calling through to new bridge method selectionImageForcingWhiteText: + (-[WebHTMLView selectionImageRect]): + implemented this new method by using existing _selectionDraggingRect implementation + + * WebView/WebPDFView.m: + (-[WebPDFView selectionImageForcingWhiteText:]): + implemented by using code that was formerly in Safari + (-[WebPDFView selectionImageRect]): + implemented by returning selectionRect + +2006-07-11 Tim Omernick + + Reviewed by Geoff. + + : + Give Netscape plug-ins access to their own DOM element + + * Plugins/WebBaseNetscapePluginView.h: + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView dealloc]): + Release DOM element. + (-[WebBaseNetscapePluginView getVariable:value:]): + Return NPObject for plugin DOM element. + + * Plugins/WebNetscapePluginEmbeddedView.h: + * Plugins/WebNetscapePluginEmbeddedView.m: + (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:DOMElement:]): + Now takes a DOMElement, in much the same way that WebKit plug-in views take a DOMElement. + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]): + Pass DOMElement to Netscape plug-ins. + (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]): + ditto + +2006-07-11 Justin Garcia + + Reviewed by levi & thatcher + + + GMail Editor: Operations that use drop down menus blow away the selection + + * WebView/WebHTMLView.m: + (-[WebHTMLView maintainsInactiveSelection]): Maintain an inactive selection + when resigning as first responder if the selection is editable + or if the WebView tells us to. + * WebView/WebView.m: + (-[WebView maintainsInactiveSelection]): Just because a WebView is + editable doesn't mean selections inside subframes will be. Return + NO by default. + +2006-07-11 Tim Omernick + + Reviewed by Tim Hatcher. + + WebKit now uses deprecated AGL functions + + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView _createWindowedAGLContext]): + aglSetDrawable() is deprecated in AGL 3.0. Use aglSetWindowRef() instead. + (-[WebBaseNetscapePluginView _createWindowlessAGLContext]): + aglSetOffScreen() is deprecated in AGL 3.0. Use CGLSetOffScreen(), which does the same thing. + +2006-07-11 Alexey Proskuryakov + + Reviewed by Tim O. + + - http://bugs.webkit.org/show_bug.cgi?id=7808 + Assertion failure in -[WebBaseNetscapePluginStream dealloc] when requesting an invalid URL + + * Plugins/WebNetscapePluginStream.m: + (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]): + Remove the early return when requesting an invalid (unsupported) URL. + +=== Safari-521.16 === + +2006-07-10 Mitz Pettel + + Reviewed by John Sullivan. + + - fix , aka + REGRESSION (r14968-r14977): View Source doesn't work for pages from the back/forward cache + + * WebView/WebDataSource.m: + (-[WebDataSource _setPrimaryLoadComplete:]): Set our data only if the frame loader is + has just loaded it (when coming from the back/forward cache, it hasn't). + +2006-07-10 Brady Eidson + + Reviewed by Alexey + + Resolved the console error messages people got from the new DB even if they didn't have it enabled + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase init]): + Disabled initializing the IconDatabaseBridge if user is living on the old DB + +2006-07-10 Darin Adler + + - try to fix Windows build + + * COM/WebFrame.h: Qualify DeprecatedString and KURL with WebCore:: prefixes. + +2006-07-09 Darin Adler + + - try to fix Windows build + + * COM/WebFrame.cpp: Rename QChar to DeprecatedChar. + +2006-07-09 Darin Adler + + - fix newlines to be consistent for all files in the COM directory + (many had mixed style) and set the EOL style to "native" on them. + + * COM/*: Set properties and changed files. + +2006-07-09 Tim Omernick + + Reviewed by Maciej. + + Netscape plug-in mouse events broken in HiDPI + + Multiply global mouse coordinates by the window scale factor so that plug-ins can use GlobalToLocal() in HiDPI. + This fixes many bugs involving plug-in mouse event handling in HiDPI. Most notably, the Flash player will now + correctly respond to clicks. + + * Plugins/WebBaseNetscapePluginView.m: + (+[WebBaseNetscapePluginView getCarbonEvent:]): + (-[WebBaseNetscapePluginView getCarbonEvent:withEvent:]): + +2006-07-09 Darin Adler + + Reviewed by Tim Hatcher. + + - fix assertion firing in plug-in layout tests + + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView restartNullEvents]): + Don't start null events if the plug-in is not in the + started state. This happens when the plug-in moves within + its view hierarchy after it has been stopped. + +2006-07-09 Timothy Hatcher + + Reviewed by Darin. + + Bug 9820: Move new DOM API that has been through API review to public headers + http://bugs.webkit.org/show_bug.cgi?id=9820 + + * Misc/WebElementDictionary.m: include DOMExtensions.h + * Misc/WebNSViewExtras.m: include DOMExtensions.h + * WebKit.xcodeproj/project.pbxproj: make DOMXPath.h public + +2006-07-09 Timothy Hatcher + + Reviewed by Kevin. + + Bug 9818: move new UIDelegate API that has been through API review to public headers + http://bugs.webkit.org/show_bug.cgi?id=9818 + + API: Remove webView:setContentRect: & webViewContentRect: delegate methods? + The fix for 4310363 removed the only use of webViewContentRect: in our code. webView:setContentRect: + was never used to begin with. There's no harm in leaving these around in the API, but they'll cruft it up. + + Also removes the never used webViewPrint: SPI that was replaced by webView:printFrameView:. + + * DefaultDelegates/WebDefaultUIDelegate.m: + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge print]): + * WebView/WebFrameView.h: + * WebView/WebFrameView.m: + * WebView/WebFrameViewPrivate.h: + * WebView/WebUIDelegate.h: + * WebView/WebUIDelegatePrivate.h: + +2006-07-09 Timothy Hatcher + + Reviewed by Darin. + + Bug 9814: Move new WebView API that has been through API review to public headers + http://bugs.webkit.org/show_bug.cgi?id=9814 + + * WebView/WebView.h: + * WebView/WebView.m: + (-[WebView close]): + (-[WebView setShouldCloseWithWindow:]): + (-[WebView shouldCloseWithWindow]): + (-[WebView selectedFrame]): + (-[WebView setMainFrameURL:]): + (-[WebView mainFrameURL]): + (-[WebView isLoading]): + (-[WebView mainFrameTitle]): + (-[WebView mainFrameIcon]): + (-[WebView mainFrameDocument]): + (-[WebView setDrawsBackground:]): + (-[WebView drawsBackground]): + (-[WebView toggleSmartInsertDelete:]): + (-[WebView toggleContinuousSpellChecking:]): + (-[WebView canMakeTextStandardSize]): + (-[WebView makeTextStandardSize:]): + (-[WebView maintainsInactiveSelection]): + * WebView/WebViewPrivate.h: + +2006-07-09 Timothy Hatcher + + Reviewed by Maciej. + + Bug 9487: The XPath section should be removed and/or moved. + http://bugs.webkit.org/show_bug.cgi?id=9487 + + * WebInspector/webInspector/inspector.css: + * WebInspector/webInspector/inspector.html: + * WebInspector/webInspector/inspector.js: + +2006-07-09 Anders Carlsson + + Reviewed by Tim O. + + * WebCoreSupport/WebSystemInterface.m: + (InitWebCoreSystemInterface): + Initialize wkPathFromFont. + +2006-07-09 Darin Adler + + - fix release build + + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView restorePortState:]): Cast inside the assertion so + that we don't have an unused variable in versions with assertions disabled. + The alternative would be to wrap the whole thing in an #if statement. + +2006-07-08 Tim Omernick + + Reviewed by John Sullivan. + + * Plugins/WebBaseNetscapePluginView.h: + - Added ivars for OpenGL support. Someday it would be nice to refactor this class so + that each drawing model is encapsulated in a class; this would allow + WebBaseNetscapePluginView to make more efficient use of space, for example by not + keeping OpenGL-related ivars for Quickdraw plug-ins. + + * Plugins/WebBaseNetscapePluginView.m: + - Declared a bunch of internal methods for OpenGL support (see below). + - Removed "forUpdate" from CoreGraphics port state struct; it was always set to "YES", + so I just cleaned up the silly code that used it. + - Declared OpenGL port state struct. + (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): + - Moved a CoreGraphics-related assertion down to the big "switch" statement. + - Don't set window.type here -- according to the Netscape Plug-in API docs, the plug-in + should default to "windowed" mode, and may call NPN_SetValue() during its NPN_New() to + request that the browser use a "windowless" (offscreen) context instead. + - Moved the assertion from the top of this method here; removed a less restrictive + assertion that is now obsolete. + - Removed "forUpdate" flag from CoreGraphics port state struct. + - Fill in OpenGL port state struct. Set up the viewport appropriately for both windowed + and windowless OpenGL plug-ins. Windowed plug-ins need to have their GL viewport + transformed by the amount the plug-in is clipped; windowless plug-ins are drawn off-screen + into a surface whose geometry is never changed or clipped, so they may always draw with + a viewport origin of (0, 0). + (-[WebBaseNetscapePluginView restorePortState:]): + - Removed "forUpdate" flag from CoreGraphics port state struct. + - Restore the old OpenGL context saved by -saveAndSetNewPortStateForUpdate:. + (-[WebBaseNetscapePluginView sendEvent:]): + - Updated an assertion to also include OpenGL. To ensure that attached plug-in window movements + happen atomically with web page redisplays, we assert that the plug-in's window is set only while + the plug-in view is redrawing. + - Same deal as with the assertion; only save/set port state when redrawing the plug-in view. Plug-ins + that use the new drawing models are only allowed to draw when the web page draws. I might consider + changing this for windowed OpenGL plug-ins, since they always obscure the page content anyway. + (-[WebBaseNetscapePluginView isNewWindowEqualToOldWindow]): + - Compare new NP_GLContext structs. + (-[WebBaseNetscapePluginView updateAndSetWindow]): + - In OpenGL mode, can only set window when updating plug-in view. + (-[WebBaseNetscapePluginView setWindowIfNecessary]): + - ditto + - Updated logging for OpenGL drawing mode. + (-[WebBaseNetscapePluginView addWindowObservers]): + - No need to observe frame/bounds change notifications for this and all parent views. See -renewGState + comments below. + (-[WebBaseNetscapePluginView removeWindowObservers]): + - Don't need to remove frame/bounds observers anymore. + (-[WebBaseNetscapePluginView start]): + - Plug-ins are "windowed" by default. This is not a change from our previous behavior, but this is a + better place to set the default value as it allows the plug-in to override it later. + (-[WebBaseNetscapePluginView stop]): + - Destroy AGL context when the plug-in stops. + (-[WebBaseNetscapePluginView dealloc]): + - Assert that the AGL stuff has been cleaned up. + (-[WebBaseNetscapePluginView drawRect:]): + - If this is a windowless OpenGL plugin, blit its contents back into this view. + (-[WebBaseNetscapePluginView renewGState]): + - This method is called when the view or one of its parents is moved or resized (see comments). + (-[WebBaseNetscapePluginView viewWillMoveToWindow:]): + - Hide the AGL window if the plug-in view is about to be removed from its window. + (-[WebBaseNetscapePluginView viewHasMoved:]): + - Renamed and moved to the "Internal" category. + (-[WebBaseNetscapePluginView invalidateRegion:]): + - Style changes. + - Add support for OpenGL (uses the same region type as CoreGraphics). + (-[WebBaseNetscapePluginView getVariable:value:]): + - Style changes. + - Implemented NPNVsupportsOpenGLBool; returns YES since we now support the OpenGL drawing model. + (-[WebBaseNetscapePluginView setVariable:value:]): + - Implemented NPPVpluginWindowBool, which allows plug-ins to specify whether they should be rendered in + "windowed" or "windowless" mode. This is an older part of the Netscape Plug-in API that was never + implemented in WebKit. "Windowed" Quickdraw plug-ins do not actually reside in a separate window, and + can already do many of the same things (such as transparency) that only "windowless" plug-ins can do on + other platforms. However, we need the "windowed" vs. "windowless" distinction for OpenGL plug-ins so + that they have some way of specifying whether they should be rendered on an accelerated overlay surface, + composited into the browser window. + - Support for setting the drawing model to OpenGL. + (-[WebBaseNetscapePluginView _viewHasMoved]): + - Renamed from -viewHasMoved:, and moved down in the file. + - None of this work is necessary when the plug-in is not in a window; the plug-in's state will be properly + restored when it is moved back into a window. + - Reshape OpenGL surface window here. + (-[WebBaseNetscapePluginView _createAGLContextIfNeeded]): + - Creates the AGL context of the appropriate type (windowed/windowless). + (-[WebBaseNetscapePluginView _createWindowedAGLContext]): + - Creates a windowed AGL context, which is an AGL context attached to a child window. This is the only way + to get true hardware acceleration. + (-[WebBaseNetscapePluginView _createWindowlessAGLContext]): + - Creates a windowless AGL context, which is an AGL context attached to an offscreen buffer. This buffer can + then be blitted back into the browser window with a different alpha, or scaled, or whatever. + (-[WebBaseNetscapePluginView _cglContext]): + - Returns the underlying CGL context from the AGL context. We give the plug-in access to the CGL context because + CGL is the more primitive of the GL drawable APIs and allows for finer control over the context. + (-[WebBaseNetscapePluginView _getAGLOffscreenBuffer:width:height:]): + - Returns the buffer allocated for the offscreen AGL context, if there is one. + (-[WebBaseNetscapePluginView _destroyAGLContext]): + - Destroys the AGL context, as well as the associated offscreen buffer or child window. + (-[WebBaseNetscapePluginView _reshapeAGLWindow]): + - Positions the AGL window over the browser window. + (-[WebBaseNetscapePluginView _hideAGLWindow]): + - Hides the AGL window. + (-[WebBaseNetscapePluginView _aglOffscreenImageForDrawingInRect:]): + - Returns an NSImage representation of the offscreen AGL context's framebuffer. This is used to draw the offscreen + bits back into the plug-in view. This is kind of tricky because it has to convert the offscreen buffer in-place + from BGRA to RGBA so that it can be wrapped in an NSBitmapImageRep. See comments. + + * WebKit.xcodeproj/project.pbxproj: + Link OpenGL and AGL. + +2006-07-09 Brady Eidson + + Reviewed by Maciej + + The ICONDEBUG flag now chooses either the new icon database or the old one + No longer any need to live side by side to compare results + + * Misc/WebIconDatabase.m: + (-[NSMutableDictionary iconURLForURL:]): + (-[NSMutableDictionary retainIconForURL:]): + (-[NSMutableDictionary releaseIconForURL:]): + (-[WebIconDatabase _setHaveNoIconForIconURL:]): + (-[WebIconDatabase _setIconURL:forURL:]): + (-[WebIconDatabase _resetCachedWebPreferences:]): + +2006-07-08 Timothy Hatcher + + Reviewed by Maciej. + + Bug 5312: comments aren't available via DOM + http://bugs.webkit.org/show_bug.cgi?id=5312 + + Makes the Web Inspector show comment node contents. + + * WebInspector/WebInspector.m: + (-[DOMNode _displayName]): return the contents of the comment + * WebInspector/webInspector/inspector.js: check for comment nodes + +2006-07-09 Alexey Proskuryakov + + Reviewed by Darin. + + - http://bugs.webkit.org/show_bug.cgi?id=9572 + Add application/xhtml+xml to the Accept header + + * WebView/WebFrame.m: + (-[WebFrame _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): Add an Accept header + to main resource requests. + * English.lproj/StringsNotToBeLocalized.txt: Added new strings. + +2006-07-08 Darin Adler + + * DefaultDelegates/WebDefaultContextMenuDelegate.m: + (-[WebDefaultUIDelegate contextMenuItemsForElement:defaultMenuItems:]): + Removed misleading old comment. + +=== Safari-521.15 === + +2006-07-07 Levi Weintraub + + Reviewed by justin + + Finished moving deletion selection expansion across the bridge... say that 3 times fast. + + * WebView/WebHTMLView.m: Pass granularity to WebCore to handle expansion + (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:granularity:]): + (-[WebHTMLView _deleteSelection]): + (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]): + (-[WebHTMLView deleteToMark:]): + +2006-07-07 Brady Eidson + + Reviewed by John + + Changed an ASSERT to a LOG_ERROR for an error that could be handled gracefully, but + whose assertion was reproducibly causing a build bot failure + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase _releaseIconForIconURLString:]): + +2006-07-06 Levi Weintraub + + Reviewed by justin + + Improved table editing + + * WebCoreSupport/WebFrameBridge.m: Added method to allow WebCore to trigger + deletion editing delegate + (-[WebFrameBridge shouldDeleteSelectedDOMRange:]): + * WebView/WebHTMLView.m: Moved code that expanded a selection when the delete + key is pressed over to WebCore so we can be more intelligent about how to handle it + (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:]): + (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]): + +2006-07-07 John Sullivan + + Reviewed by Tim Hatcher + + - fixed WebKit: WebPreferencesChangedNotification not exported + + * WebKit.exp: + added surprisingly missing _WebPreferencesChangedNotification, defined in + WebPreferences.h + +2006-07-06 Brady Eidson + + Reviewed by John. + + Small fix to my previous small fix that only lets the ASSERT off the hook if the DB + is closing + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase _releaseIconForIconURLString:]): + +2006-07-05 Brady Eidson + + Reviewed by Maciej + + Small fix that prevents an assertion from triggering if the DB is being cleaned up + (ie, the app being shut down) + + * Misc/WebIconDatabase.h: + * Misc/WebIconDatabase.m: + (-[NSMutableDictionary init]): + (-[WebIconDatabase _applicationWillTerminate:]): + (-[WebIconDatabase _releaseIconForIconURLString:]): + +2006-07-05 Adele Peterson + + Reviewed by Maciej and Hyatt. + + WebKit part of initial popup menu implementation. + + * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): + Initialize WKPopupMenu. + +2006-07-05 Anders Carlsson + + Reviewed by Maciej. + + http://bugs.webkit.org/show_bug.cgi?id=3581 + iFrames set to display:none are Missing from frames array + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]): + (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]): + Modify to pass the owner element instead of the owner renderer. + + * WebView/WebHTMLView.m: + (-[WebHTMLView _topHTMLView]): + Remove assertion, it's not valid anymore. + +2006-07-05 Timothy Hatcher + + Reviewed by Harrison. + + HIViewAdapter used but not defined + Adds a new export file to fix the build. + + * WebKit.LP64.exp: Added. + * WebKit.xcodeproj/project.pbxproj: + +2006-07-04 Timothy Hatcher + + Reviewed by Maciej. + + Bug 9731: [Drosera] crash when trying to access the scope chain + http://bugs.webkit.org/show_bug.cgi?id=9731 + + Because of the WebScriptObject, _globalObj, that + WebCoreScriptDebugger holds is unprotected each time the page changes. + This causes Drosera to crash Safari when trying to access the scope chain. + We simply need to detach and re-attach the debugger when the window script + object is cleared until 4608404 is fixed. This change also attaches the + debugger before we call the windowScriptObjectAvailable: delegate method, + so the debugger is ready before anyone might use the window object. + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge windowObjectCleared]): + +2006-07-04 Timothy Hatcher + + Reviewed by Darin. + + Bug 9732: [Drosera] calling removeListener to many times will cause + WebKit's listener count to underflow/wraparound + http://bugs.webkit.org/show_bug.cgi?id=9732 + + Adds a check to make sure the listener was in our listeners set before + decrementing the global listener count. Also checks for nil in addListner + to prevent a possible exception when adding the object to the set. + + * DefaultDelegates/WebScriptDebugServer.m: + (-[WebScriptDebugServer addListener:]): + (-[WebScriptDebugServer removeListener:]): + +2006-07-04 Alexey Proskuryakov + + Reviewed by Maciej. + + - http://bugs.webkit.org/show_bug.cgi?id=8210 + Conditional XMLHttpRequest gets should pass 304 responses unchanged + + Test: http/tests/xmlhttprequest/cache-override.html + + * Misc/WebNSURLRequestExtras.h: Added _web_isConditionalRequest + * Misc/WebNSURLRequestExtras.m: + (-[NSURLRequest _web_isConditionalRequest]): + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]): + Bypass the cache for conditional requests. + * WebCoreSupport/WebSubresourceLoader.m: + (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]): Ditto. + +2006-07-01 David Kilzer + + Reviewed by NOBODY (fixed Tim's build fix). + + * WebView/WebView.m: Added back missing '/' at the beginning of the file. + +2006-07-01 Tim Omernick + + Reviewed by NOBODY (build fix) + + * WebView/WebView.m: + (-[WebView _isMIMETypeRegisteredAsPlugin:]): + Changed nil to NO (typo). + +=== Safari-521.14 === + +2006-06-30 Timothy Hatcher + + Reviewed by Darin. + + Only enable shouldCloseWithWindow when ObjC GC is enabled. + This maintains backwards compatibility with applications + that expect a WebView to be usable after the window closes. + + * WebView/WebView.m: + (-[WebViewPrivate init]): + +2006-06-30 Timothy Hatcher + + Reviewed by Anders. + + Call _close in dealloc to ensure we cleanup for backwards + compatibility. This will safeguard and cleanup even if the + application doesn't use the new close API yet, like Mail. + + * WebView/WebView.m: + (-[WebView dealloc]): + +2006-06-29 Timothy Hatcher + + Reviewed by Darin. + + WebKit leaks, improper tear-down + -[WebBackForwardList finalize] is incorrect; design change needed + -[WebFrame finalize] is incorrect; design change needed + -[WebHTMLView finalize] is incorrect; design change needed + + Adds a close method to WebView, this needs to be called when the + WebView is no longer needed. To make this easier for the common cases + there is now an "auto close" on WebView that listens to the view's + parent window. If the parent window closes and the WebView has no + hostWindow then the WebView is automatically closed if autoClose is YES. + To manage WebView closing yourself call setAutoClose: and pass NO. + + When a WebView closes it will tear-down and not be usable anymore. + Close will will called on various other internal objects as a part + of this, to ensure proper tear-down in GC without relying on finalize. + + * History/WebBackForwardList.m: + (-[WebBackForwardList dealloc]): + (-[WebBackForwardList finalize]): + (-[WebBackForwardList _close]): + * History/WebHistoryItem.m: + (+[WebHistoryItem _closeObjectsInPendingPageCaches]): + (+[WebHistoryItem _releaseAllPendingPageCaches]): + * History/WebHistoryItemPrivate.h: + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge close]): + (-[WebFrameBridge saveDocumentToPageCache:]): + (-[WebFrameBridge canGoBackOrForward:]): + * WebView/WebFrame.m: + (-[WebFrame _detachFromParent]): + (-[WebFrame dealloc]): + (-[WebFrame finalize]): + * WebView/WebFrameView.m: + (-[WebFrameView _setWebFrame:]): + (-[WebFrameView finalize]): + * WebView/WebHTMLView.m: + (-[WebHTMLView close]): + (-[WebHTMLView dealloc]): + (-[WebHTMLView finalize]): + * WebView/WebHTMLViewInternal.h: + * WebView/WebHTMLViewPrivate.h: + * WebView/WebScriptDebugDelegate.m: + (-[WebScriptCallFrame _initWithFrame:initWithWebFrame:]): + (-[WebScriptCallFrame parsedSource:fromURL:sourceId:startLine:errorLine:errorMessage:]): + (-[WebScriptCallFrame enteredFrame:sourceId:line:]): + (-[WebScriptCallFrame hitStatement:sourceId:line:]): + (-[WebScriptCallFrame leavingFrame:sourceId:line:]): + * WebView/WebScriptDebugDelegatePrivate.h: + * WebView/WebView.m: + (-[WebViewPrivate init]): + (-[WebView _close]): + (-[WebView dealloc]): + (-[WebView finalize]): + (-[WebView viewWillMoveToWindow:]): + (-[WebView _windowWillClose:]): + (-[WebView setPreferencesIdentifier:]): + (-[WebView mainFrame]): + (-[WebView setHostWindow:]): + (-[WebView searchFor:direction:caseSensitive:wrap:]): + (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]): + (-[WebView close]): + (-[WebView setAutoClose:]): + (-[WebView autoClose]): + (-[WebView _frameViewAtWindowPoint:]): + * WebView/WebViewPrivate.h: + +2006-06-29 Kevin Decker + + Reviewed by mjs and timo. + + Fixed: handleAuthenticationFromResource was removed; needed by the Dashboard + + * WebView/WebViewPrivate.h: Added handleAuthenticationFromResource back into the header. Needed by the + Dashboard, but was removed in r.14028 on 2006-04-23. + +2006-06-29 Tim Omernick + + Reviewed by Kevin Decker. + + REGRESSION: reproducible crash in +[WebCoreFrameBridge supportedImageMIMETypes] + + * Plugins/WebPluginDatabase.m: + (+[WebPluginDatabase setAdditionalWebPlugInPaths:]): + One might be tempted to add additionalWebPlugInPaths to the global WebPluginDatabase here. + For backward compatibility with earlier versions of the +setAdditionalWebPlugInPaths: SPI, + we need to save a copy of the additional paths and not cause a refresh of the plugin DB + at this time. + (-[WebPluginDatabase _plugInPaths]): + Include additionalWebPlugInPaths if this is the global DB. + (-[WebPluginDatabase refresh]): + Call -_plugInPaths to get the modified array of paths. This is similar to what the old code + (before we had per-WebView plugin search paths). + +2006-06-29 Tim Omernick + + Reviewed by John Sullivan. + + WebHistoryItem now supports getting and setting arbitrary properties via _transientPropertyForKey: and + -_setTransientProperty:forKey:. + For now, these properties do not persist with the rest of the history data. They are intended to hold transient + per-history-item state, which is something that was until now difficult for a WebKit client app to do. + + * History/WebHistoryItemPrivate.h: + * History/WebHistoryItem.m: + (-[WebHistoryItemPrivate dealloc]): + (-[WebHistoryItem _transientPropertyForKey:]): + (-[WebHistoryItem _setTransientProperty:forKey:]): + +2006-06-29 Timothy Hatcher + + Reviewed by Harrison. + + Smart insert and delete, continuous spell checking and autoscroll + can now be used for any WebView, not just editable ones. All of + these make sense for documents that might contain content editable + areas or our new text fields. Autoscroll is usefull for dragging + for file input controls also. + + Added a SPI to toggle WebViews tab key behavior, tabKeyCyclesThroughElements. + WebHTMLView's _interceptEditingKeyEvent now uses WebView's + tabKeyCyclesThroughElements state to determine whether or not + to process tab key events. The idea here is that tabKeyCyclesThroughElements + will be YES when this WebView is being used in a browser, and we + desire the behavior where tab moves to the next element in tab order. + If tabKeyCyclesThroughElements is NO, it is likely that the WebView + is being embedded as the whole view, as in Mail, and tabs should input + tabs as expected in a text editor. Using Option-Tab always cycles + through elements. + + * WebView/WebHTMLRepresentation.m: + (-[WebHTMLRepresentation finishedLoadingWithDataSource:]): + * WebView/WebHTMLView.m: + (-[WebHTMLView _interceptEditingKeyEvent:]): + * WebView/WebView.m: + (-[WebViewPrivate init]): + (-[WebView _autoscrollForDraggingInfo:timeDelta:]): + (-[WebView _shouldAutoscrollForDraggingInfo:]): + (-[WebView validateUserInterfaceItem:]): + (-[WebView toggleSmartInsertDelete:]): + (-[WebView toggleContinuousSpellChecking:]): + (-[WebView setTabKeyCyclesThroughElements:]): + (-[WebView tabKeyCyclesThroughElements]): + * WebView/WebViewPrivate.h: + +2006-06-29 Anders Carlsson + + Reviewed by Tim O. + + * WebKit.xcodeproj/project.pbxproj: + Add DOMXPath.h header. + +2006-06-28 David Hyatt + + Fix custom highlighting so that you can paint the entire line (and go + outside the bounds of the line). + + Reviewed by harrison + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge customHighlightRect:forLine:]): + (-[WebFrameBridge paintCustomHighlight:forBox:onLine:behindText:entireLine:]): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebHTMLViewPrivate.h: + +2006-06-28 Maciej Stachowiak + + Reviewed by Anders. + + - fix Frame leak on layout tests + + * WebCoreSupport/WebPageBridge.m: + (-[WebPageBridge outerView]): Return WebFrameView for main frame instead + of WebView to avoid reference cycle between WebView and Page. + +2006-06-28 Timothy Hatcher + + Prefer the Stabs debugging symbols format until DWARF bugs are fixed. + + * WebKit.xcodeproj/project.pbxproj: + +2006-06-28 Levi Weintraub + + Reviewed by justin + + http://bugs.webkit.org/show_bug.cgi?id=7568 + Bug 7568: Implement Indent/Outdent + Added undo action strings and enum values + + * English.lproj/Localizable.strings: + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge nameForUndoAction:]): + +2006-06-27 Brady Eidson + + Reviewed by Maciej + + Hookup the new semi-functional SQLite icon database. + For now, it is living side-by-side with the old DB so one can compare the + two for debugging purposes. Also, it is disabled (in WebKit) by default unless you + compile with ICONDEBUG #defined. + Note: To repeat that, if you want to try the new DB, #define ICONDEBUG (WebKitPrefix.h is a good place to do it) + + * Misc/WebIconDatabase.m: + (-[NSMutableDictionary iconForURL:withSize:cache:]): + (-[NSMutableDictionary iconURLForURL:]): + (-[NSMutableDictionary retainIconForURL:]): + (-[NSMutableDictionary releaseIconForURL:]): + (-[WebIconDatabase _setHaveNoIconForIconURL:]): + (-[WebIconDatabase _setIconURL:forURL:]): + (-[WebIconDatabase _hasIconForIconURL:]): + (-[WebIconDatabase _resetCachedWebPreferences:]): + * Misc/WebIconLoader.m: + (-[WebIconLoader didFinishLoading]): + * WebKit.xcodeproj/project.pbxproj: + +2006-06-26 David Hyatt + + Fix for 9538, support syntax highlighting for HTML source. + + Reviewed by darin + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebView.m: + (-[WebView _setInViewSourceMode:]): + (-[WebView _inViewSourceMode]): + * WebView/WebViewPrivate.h: + +2006-06-25 Timothy Hatcher + + Reviewed by Darin. + + Bug 9574: Drosera should show inline scripts within the original HTML + http://bugs.webkit.org/show_bug.cgi?id=9574 + + * Adds a new version of the didParseSource delegate callback with base line number. + * Adds a new delegate callback for when a script fails to parse. + * These new callbacks use NSURLs for the url parameter. + * Adds a new script listener callback to notify when the main resource loads. + * Adds a WebScriptErrorDomian and other keys for use with NSError. + + * DefaultDelegates/WebDefaultScriptDebugDelegate.m: + (-[WebDefaultScriptDebugDelegate webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]): + (-[WebDefaultScriptDebugDelegate webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]): + * DefaultDelegates/WebScriptDebugServer.h: + * DefaultDelegates/WebScriptDebugServer.m: + (-[WebScriptDebugServer webView:didLoadMainResourceForDataSource:]): + (-[WebScriptDebugServer webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]): + (-[WebScriptDebugServer webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]): + * DefaultDelegates/WebScriptDebugServerPrivate.h: + * WebKit.exp: + * WebView/WebDataSource.m: + (-[WebDataSource _setPrimaryLoadComplete:]): + * WebView/WebScriptDebugDelegate.h: + * WebView/WebScriptDebugDelegate.m: + (-[WebScriptCallFrame parsedSource:fromURL:sourceId:startLine:errorLine:errorMessage:]): + +2006-06-24 David Kilzer + + Reviewed by Timothy. + + * Info.plist: Fixed copyright to include 2003-2006. + +2006-06-24 Alexey Proskuryakov + + Reviewed by Darin. + + - http://bugs.webkit.org/show_bug.cgi?id=9418 + WebKit will not build when Space exists in path + + * WebKit.xcodeproj/project.pbxproj: Enclose search paths in quotes. + +2006-06-23 Tim Omernick + + Reviewed by John Sullivan. + + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView sendEvent:]): + Fixed a bug I found in the CoreGraphics drawing model that was preventing certain types of + events from being dispatched to the plugin, unless the plugin was being updated. The check + for portState was only required to call -setWindowIfNecessary, not required for the entire + event dispatch. + Also, don't paint the green debug rect unless this is a QuickDraw plugin. Otherwise the + current QD port is not set, and the green rect fills the entire screen. Pretty awesome + looking, but not intended behavior. + (-[WebBaseNetscapePluginView setWindowIfNecessary]): + Improved the logging here to include the NPWindow's width and height. + +2006-06-23 Timothy Hatcher + + Reviewed by Tim O. + + Adds back SPI that Mail is still depending on. + + * WebView/WebDataSource.m: + (-[WebDataSource _addSubframeArchives:]): + * WebView/WebDataSourcePrivate.h: + +=== WebKit-521.13 === + +2006-06-23 Timothy Hatcher + + Reviewed by Geoff. + + script debugger should only attach to JavaScriptCore when there are listeners + http://bugs.webkit.org/show_bug.cgi?id=9552 + + Attaches the debugger to all WebFrames when the first listener + is added. Detaches when the last listener is removed. + Also detach when the script debug delegate is set to nil. + + * DefaultDelegates/WebScriptDebugServer.m: + (+[WebScriptDebugServer listenerCount]): + (-[WebScriptDebugServer dealloc]): + (-[WebScriptDebugServer attachScriptDebuggerToAllWebViews]): + (-[WebScriptDebugServer detachScriptDebuggerFromAllWebViews]): + (-[WebScriptDebugServer listenerConnectionDidDie:]): + (-[WebScriptDebugServer addListener:]): + (-[WebScriptDebugServer removeListener:]): + * DefaultDelegates/WebScriptDebugServerPrivate.h: + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge windowObjectCleared]): + * WebView/WebFrame.m: + (-[WebFrame _attachScriptDebugger]): + (-[WebFrame _detachScriptDebugger]): + * WebView/WebFramePrivate.h: + * WebView/WebScriptDebugDelegate.m: + (-[WebScriptCallFrame parsedSource:fromURL:sourceId:]): + (-[WebScriptCallFrame enteredFrame:sourceId:line:]): + (-[WebScriptCallFrame hitStatement:sourceId:line:]): + (-[WebScriptCallFrame leavingFrame:sourceId:line:]): + * WebView/WebView.m: + (-[WebView _attachScriptDebuggerToAllFrames]): + (-[WebView _detachScriptDebuggerFromAllFrames]): + (-[WebView setScriptDebugDelegate:]): + * WebView/WebViewPrivate.h: + +2006-06-22 John Sullivan + + Reviewed by Tim Omernick + + - added support for UIDelegate to be notified of scrolling in any WebHTMLView + - cleaned up recently-added UIDelegate code + + * WebView/WebUIDelegatePrivate.h: + declared webView:didScrollDocumentInFrameView: method + + * DefaultDelegates/WebDefaultUIDelegate.m: + (-[NSApplication webView:didDrawRect:]): + provide default (empty) implementation of this recently-added method, so the + DelegateForwarder mechanism will work for it + (-[NSApplication webView:didScrollDocumentInFrameView:]): + same thing for the new method + + * WebView/WebHTMLView.m: + (-[WebHTMLView _frameOrBoundsChanged]): + use _UIDelegateForwarder mechanism to notify delegate that scrolling occurred + (-[WebHTMLView drawSingleRect:]): + use _UIDelegateForwarder mechanism instead of checking respondsToSelector stuff + here (that's packaged up nicely by the forwarder mechanism) + +2006-06-22 Tim Omernick + + Reviewed by NOBODY (build fix) + + * WebView/WebFrameLoader.m: + Import WebMainResourceLoader instead of using @class so that we can call WebMainResourceLoader + methods. + +2006-06-22 Tim Omernick + + Reviewed by NOBODY (build fix) + + * WebView/WebFrameLoader.m: + Import JavaScriptCore/Assertions.h instead of WebKit/WebAssertions.h (which no longer exists) + +2006-06-22 Maciej Stachowiak + + Reviewed by Adele. + + - start moving loading logic to new WebFrameLoader class; move management of WebLoaders there + + * Misc/WebIconLoader.h: + * Misc/WebIconLoader.m: + (-[WebIconLoader didFinishLoading]): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDataSource.m: + (-[WebDataSourcePrivate dealloc]): + (-[WebDataSource _updateLoading]): + (-[WebDataSource _loadIcon]): + (-[WebDataSource _setPrimaryLoadComplete:]): + (-[WebDataSource _stopLoading]): + (-[WebDataSource _startLoading]): + (-[WebDataSource _addSubresourceLoader:]): + (-[WebDataSource _removeSubresourceLoader:]): + (-[WebDataSource _addPlugInStreamLoader:]): + (-[WebDataSource _removePlugInStreamLoader:]): + (-[WebDataSource _iconLoaderReceivedPageIcon:]): + (-[WebDataSource _defersCallbacksChanged]): + (-[WebDataSource _stopLoadingWithError:]): + (-[WebDataSource _setupForReplaceByMIMEType:]): + (-[WebDataSource initWithRequest:]): + (-[WebDataSource dealloc]): + (-[WebDataSource finalize]): + (-[WebDataSource data]): + (-[WebDataSource isLoading]): + * WebView/WebFrameLoader.h: Added. + * WebView/WebFrameLoader.m: Added. + (-[WebFrameLoader initWithDataSource:]): + (-[WebFrameLoader dealloc]): + (-[WebFrameLoader hasIconLoader]): + (-[WebFrameLoader loadIconWithRequest:]): + (-[WebFrameLoader stopLoadingIcon]): + (-[WebFrameLoader addPlugInStreamLoader:]): + (-[WebFrameLoader removePlugInStreamLoader:]): + (-[WebFrameLoader setDefersCallbacks:]): + (-[WebFrameLoader stopLoadingPlugIns]): + (-[WebFrameLoader isLoadingMainResource]): + (-[WebFrameLoader isLoadingSubresources]): + (-[WebFrameLoader isLoading]): + (-[WebFrameLoader stopLoadingSubresources]): + (-[WebFrameLoader addSubresourceLoader:]): + (-[WebFrameLoader removeSubresourceLoader:]): + (-[WebFrameLoader mainResourceData]): + (-[WebFrameLoader releaseMainResourceLoader]): + (-[WebFrameLoader cancelMainResourceLoad]): + (-[WebFrameLoader startLoadingMainResourceWithRequest:identifier:]): + (-[WebFrameLoader stopLoadingWithError:]): + +2006-06-21 Brady Eidson + + Reviewed by Maciej + + The WebCoreIconDatabaseBridge was getting messages sent to it after it had been closed, resulting in a crash + on an ASSERT(). After closing the databaseBridge, we simply set it to nil so this can't happen. + anymore. + + * Misc/WebIconDatabase.m: + (-[WebIconDatabase _applicationWillTerminate:]): + +2006-06-21 Tim Omernick + + Reviewed by Geoff Garen. + + WebPluginDatabase setAdditionalWebPlugInPaths needs to be per WebView + + Added some WebView SPI so that individual WebViews may have different plugin search paths. There are some + limitations with the approach taken here: + + - JavaScript may only access the global plugin DB. + - When this SPI is in use, certain WebView methods may not give accurate results, such as +canShowMIMEType:. + - This only works for plugins referenced using the or tags; plugins that reside in non-standard + file system locations may not be loaded directly into frames. + + None of these issues are important to the client that needs this SPI. Rather than re-architect our entire + plugin database, I think it is better to simply accept these limitations for now. + + * Plugins/WebPluginDatabase.h: + Added "plugInPaths" ivar, so different plugin databases can have different search paths. + * Plugins/WebPluginDatabase.m: + (+[WebPluginDatabase installedPlugins]): + Give the global plugin database the default plugin search paths. + (+[WebPluginDatabase setAdditionalWebPlugInPaths:]): + Removed static global; this method now sets the plugin paths on the global plugin database. + (-[WebPluginDatabase setPlugInPaths:]): + Setter method for plugin paths. + (-[WebPluginDatabase close]): + New method; called when the plugin database is no longer needed (when its WebView is being destroyed). + (-[WebPluginDatabase init]): + Don't refresh in -init, so that callers can set the DB's plugin path array before it refreshes. + (-[WebPluginDatabase dealloc]): + Moved here from near the bottom of the file. Release new ivar. + (-[WebPluginDatabase refresh]): + Use the plugInPaths ivar instead of calling pluginLocations(). + Notify plugin packages when they are added to and removed from a plugin database. A plugin package will + unload itself when it is removed from all of its plugin databases. + The only really tricky thing here is that the global MIME <-> view class registrations are only modified + by the shared plugin DB. + (+[WebPluginDatabase _defaultPlugInPaths]): + Refactored from the old pluginLocations() function; returns the default set of plugin search paths. + + * Plugins/WebBasePluginPackage.h: + * Plugins/WebBasePluginPackage.m: + (-[WebBasePluginPackage dealloc]): + Assert that this package has been removed from all of its containing plugin databases. + (-[WebBasePluginPackage finalize]): + ditto + (-[WebBasePluginPackage wasAddedToPluginDatabase:]): + Add plugin database to set. + (-[WebBasePluginPackage wasRemovedFromPluginDatabase:]): + Remove plugin database from set. If it was the last DB, then unload the plugin package. + + * WebView/WebViewInternal.h: + Added instance methods to find the view class or plugin package, given a MIME type or file extension. + * WebView/WebViewPrivate.h: + Added SPI to set plugin search paths per WebView. + * WebView/WebView.m: + (-[WebView _viewClass:andRepresentationClass:forMIMEType:]): + New method; tries the global MIME <-> view map first; failing that, it checks the WebView's plugin DB. + (-[WebView _close]): + Close the plugin DB. + (-[WebView _setAdditionalWebPlugInPaths:]): + Create the plugin DB if necessary, and set its plugin paths. + (-[WebView _pluginForMIMEType:]): + Checks global plugin DB, falls back on WebView DB. + (-[WebView _pluginForExtension:]): + ditto + (-[WebView _isMIMETypeRegisteredAsPlugin:]): + ditto + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]): + Use new WebView instance methods to look for plugins. + (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]): + ditto + (-[WebFrameBridge determineObjectFromMIMEType:URL:]): + ditto + +2006-06-20 Brady Eidson + + Reviewed by Maciej + + Added calls through to the WebCoreIconDatabaseBridge for all the major WebIconDatabase API. For now these calls + are wrapped with #ifdef's and are for debugging only. + + * Misc/WebIconDatabase.h: + * Misc/WebIconDatabase.m: + (-[NSMutableDictionary _scaleIcon:toSize:]): + (-[NSMutableDictionary init]): + (-[NSMutableDictionary iconForURL:withSize:cache:]): + (-[NSMutableDictionary iconURLForURL:]): + (-[NSMutableDictionary retainIconForURL:]): + (-[NSMutableDictionary releaseIconForURL:]): + (-[WebIconDatabase _setHaveNoIconForIconURL:]): + (-[WebIconDatabase _setIconURL:forURL:]): + (-[WebIconDatabase _hasIconForIconURL:]): + * Misc/WebIconLoader.m: + (-[WebIconLoader didFinishLoading]): + + * Misc/WebKitLogging.h: Added a logging channel for WebIconDatabase debugging + * Misc/WebKitLogging.m: + (WebKitInitializeLoggingChannelsIfNecessary): + +2006-06-20 Adele Peterson + + Reviewed by Tim Hatcher. + + * WebView/WebMainResourceLoader.m: Added missing header to fix build on Leopard. + +2006-06-20 Timothy Hatcher + + Reviewed by Darin. + + Removes the @try/@catch from the callbacks to improve performance, + simply check if the proxy object's connection is still valid first. + Listener objects are now required to be NSDistantObjects. + + Adds pause, resume and step support. The debugger process use to handle this, + but it caused problems when there were multiple listeners. + + Sends the bundle identifier in the notification userInfo dictionary along with + process name and process ID. + + * DefaultDelegates/WebScriptDebugServer.h: + * DefaultDelegates/WebScriptDebugServer.m: + (-[WebScriptDebugServer serverQuery:]): + (-[WebScriptDebugServer addListener:]): + (-[WebScriptDebugServer removeListener:]): + (-[WebScriptDebugServer step]): + (-[WebScriptDebugServer pause]): + (-[WebScriptDebugServer resume]): + (-[WebScriptDebugServer isPaused]): + (-[WebScriptDebugServer suspendProcessIfPaused]): + (-[WebScriptDebugServer webView:didParseSource:fromURL:sourceId:forWebFrame:]): + (-[WebScriptDebugServer webView:didEnterCallFrame:sourceId:line:forWebFrame:]): + (-[WebScriptDebugServer webView:willExecuteStatement:sourceId:line:forWebFrame:]): + (-[WebScriptDebugServer webView:willLeaveCallFrame:sourceId:line:forWebFrame:]): + * DefaultDelegates/WebScriptDebugServerPrivate.h: + * WebKit.exp: + +2006-06-19 Alexey Proskuryakov + + Reviewed by Darin. + + - http://bugs.webkit.org/show_bug.cgi?id=5499 + Page reload does not send any cache control headers + + * WebView/WebFrame.m: + (-[WebFrame _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): Set a proper Cache-Control header for + reload requests. + (-[WebFrame loadRequest:]): Reset loadType to WebFrameLoadTypeStandard (after a reload, it stayed at + WebFrameLoadTypeReload, so _addExtraFieldsToRequest erroneously added a Cache-Control header to them). + +2006-06-19 John Sullivan + + Reviewed by Darin. + + - added mechanism to notify UIDelegate when part of the webview is redrawn. For now, it only + works for HTML views. + + * WebView/WebUIDelegatePrivate.h: + Define a new UIDelegate method -webView:didDrawRect: + * WebView/WebHTMLView.m: + (-[WebView drawSingleRect:]): + Call through to UIDelegate if it implements that method. I tested that this does not impact PLT numbers + in the case where the delegate implements the method but does nothing in it. + +2006-06-19 Mitz Pettel + + Reviewed by Maciej. + + - fix http://bugs.webkit.org/show_bug.cgi?id=9452 + Assertion failure in -[WebFramePrivate setProvisionalDataSource:] + + * WebView/WebFrame.m: + (-[WebFrame _checkLoadCompleteForThisFrame]): Avoid re-entering the delegate's + -[webView:didFailProvisionalLoadWithError:forFrame]. + +2006-06-18 Mitz Pettel + + Reviewed by xenon. + + - http://bugs.webkit.org/show_bug.cgi?id=9479 + Disassociate the inspector from the frame when it detaches from its parent + + * WebInspector/WebInspector.m: + (-[NSWindow setWebFrame:]): Added code to (de)register with the WebFrame + the inspector is (no longer) targeting. + (-[WebInspector _webFrameDetached:]): Added. Moved the code that was previously + in -[inspectedWindowWillClose:] here. This is called by the WebFrame when it + is detached from its parent. + * WebInspector/WebInspectorInternal.h: + * WebView/WebFrame.m: + (-[WebFramePrivate dealloc]): + (-[WebFrame _detachFromParent]): Added code to notify all registered inspectors + that the WebFrame is detaching. + (-[WebFrame _addInspector:]): Added. + (-[WebFrame _removeInspector:]): Added. + * WebView/WebFrameInternal.h: + +2006-06-18 Anders Carlsson + + Reviewed by Geoff. + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge shouldInterruptJavaScript]): + Ask the UI delegate if the script should be interrupted. + + * WebView/WebUIDelegatePrivate.h: + Declare webViewShouldInterruptJavaScript: delegate method + +2006-06-17 Mitz Pettel + + Reviewed by Darin. + + - fix http://bugs.webkit.org/show_bug.cgi?id=9466 + Assertion failure when dragging an image from the document into Safari's address bar + + * WebView/WebFrameView.m: + (-[WebFrameView _setDocumentView:]): Reset the WebView's initiatedDrag flag + when the document view is changed. + * WebView/WebHTMLView.m: + (-[WebHTMLView draggedImage:endedAt:operation:]): Changed the ASSERT to allow + for drags that end after the view has been removed from the WebView. + +2006-06-16 Timothy Hatcher + + Reviewed by Tim O. + + Exposes a distributed objects server for clients to register for script debugger calls. + For preformance concerns this is disabled by default, you will need to enable this per application. + To enable for Safari do this: defaults write com.apple.Safari WebKitScriptDebuggerEnabled -bool true + + Clients will need to listen to the following distributed notification to discover servers: + WebScriptDebugServerDidLoadNotification + + To discover servers that previously loaded before the client, the client needs to send the following notification: + WebScriptDebugServerQueryNotification + + All servers will reply with the WebScriptDebugServerQueryReplyNotification notification that contains the + registered server connection name to use with distributed objects. + + * DefaultDelegates/WebScriptDebugServer.h: Added. + * DefaultDelegates/WebScriptDebugServer.m: Added. + (+[WebScriptDebugServer sharedScriptDebugServer]): + (-[WebScriptDebugServer init]): + (-[WebScriptDebugServer dealloc]): + (-[WebScriptDebugServer serverQuery:]): + (-[WebScriptDebugServer listenerConnectionDidDie:]): + (-[WebScriptDebugServer addListener:]): + (-[WebScriptDebugServer removeListener:]): + (-[WebScriptDebugServer webView:didParseSource:fromURL:sourceId:forWebFrame:]): + (-[WebScriptDebugServer webView:didEnterCallFrame:sourceId:line:forWebFrame:]): + (-[WebScriptDebugServer webView:willExecuteStatement:sourceId:line:forWebFrame:]): + (-[WebScriptDebugServer webView:willLeaveCallFrame:sourceId:line:forWebFrame:]): + * DefaultDelegates/WebScriptDebugServerPrivate.h: Added. + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge windowObjectCleared]): + * WebKit.exp: + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebScriptDebugDelegate.m: + (-[WebScriptCallFrame parsedSource:fromURL:sourceId:]): + (-[WebScriptCallFrame enteredFrame:sourceId:line:]): + (-[WebScriptCallFrame hitStatement:sourceId:line:]): + (-[WebScriptCallFrame leavingFrame:sourceId:line:]): + * WebView/WebView.m: + (+[WebView _developerExtrasEnabled]): + (+[WebView _scriptDebuggerEnabled]): + (-[WebView _menuForElement:defaultItems:]): + (-[WebView _commonInitializationWithFrameName:groupName:]): + * WebView/WebViewPrivate.h: + +2006-06-16 Adele Peterson + + Reviewed by Alice. + + Added initialization for WKDrawBezeledTextArea. + + * WebCoreSupport/WebSystemInterface.m: + (InitWebCoreSystemInterface): + +2006-06-15 Timothy Hatcher + + Reviewed by Geoff and Darin. + + Prefer the DWARF debugging symbols format for use in Xcode 2.3. + + * WebKit.xcodeproj/project.pbxproj: + +2006-06-15 John Sullivan + + Reviewed by Tim O. + + Fixed bug in WebKit support for computing but not highlighting rects for text matches. + + * WebView/WebView.m: + (-[WebView rectsForTextMatches]): + leave out empty rects, and convert rects to WebView coordinates. Since this makes a batch + of autoreleased NSValue objects, use a local autorelease pool + +2006-02-11 David Kilzer + + Reviewed by John Sullivan. + + * Plugins/WebPluginController.m: + (-[WebPluginController _cancelOutstandingChecks]): + add nil check before calling CFSetApplyFunction + +2006-06-14 Levi Weintraub + + Reviewed by justin + + + TinyMCE: Implement execCommand(formatBlock, ...) + + * English.lproj/Localizable.strings: + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge nameForUndoAction:]): + +2006-06-14 Tim Omernick + + Reviewed by John Sullivan. + + GC: WebPluginController uses inefficient resurrecting enumeration + + * Plugins/WebPluginController.m: + (cancelOutstandingCheck): + (-[WebPluginController _cancelOutstandingChecks]): + Use CFSetApplyFunction() instead of an enumerator to guard against modifications to the set while enumerating. + +2006-06-13 John Sullivan + + Reviewed by Tim O. + + - fixed REGRESSION (417.8-420+): 3 missing items (but extra separators) in context + menu in Mail message body + + * WebView/WebView.m: + (-[WebView _menuForElement:defaultItems:]): + Add special-case hackery to recover from this SPI -> API mismatch. + +2006-06-13 Tim Omernick + + Reviewed by Anders. + + Fixed a recently-introduced assertion failure when handling 404 errors. + + * WebView/WebDataSource.m: + (-[WebDataSource _handleFallbackContent]): + Use the -[WebFrame _bridge] instead of -[WebDataSource _bridge]. The former is not valid until the data + source has been committed, which is not the case when the resource fails to load. The latter is safe to call + at any time. This broke last night with Maciej's change to WebFrameResourceLoader. The old code used to + call -[WebFrame _bridge]. + +2006-06-13 Anders Carlsson + + Reviewed by Geoff. + + http://bugs.webkit.org/show_bug.cgi?id=9406 + REGRESSION: fix for bug 9390 broke two layout tests + + * Plugins/WebPluginDatabase.h: + (-[WebPluginDatabase isMIMETypeRegistered:]): + Add new function isMIMETypeRegistered which returns whether a given MIME type has a + plugin registered. + + * Plugins/WebPluginDatabase.m: + (-[WebPluginDatabase init]): + Init set of registered MIME types. + + (-[WebPluginDatabase refresh]): + Add and remove MIME types from the set of registered MIME types when registering and unregistering + plugin MIME types. + + (-[WebPluginDatabase dealloc]): + Release set of registered MIME types. + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge determineObjectFromMIMEType:URL:]): + Use isMIMETypeRegistered here. + +2006-06-12 Maciej Stachowiak + + - fix for cocoa exception (whoops) + + * WebView/WebView.m: + (+[WebView _generatedMIMETypeForURLScheme:]): put this back + * WebView/WebDataSource.m: + (+[WebDataSource _generatedMIMETypeForURLScheme:]): call WebView + +2006-06-12 Maciej Stachowiak + + Reviewed by Darin. + + - remove use of WebView and related from WebMainResourceLoader + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDataSource.m: + (+[WebDataSource _generatedMIMETypeForURLScheme:]): + (+[WebDataSource _representationExistsForURLScheme:]): + (+[WebDataSource _canShowMIMEType:]): + (-[WebDataSource _handleFallbackContent]): + (-[WebDataSource _decidePolicyForMIMEType:decisionListener:]): + * WebView/WebDataSourceInternal.h: + * WebView/WebFrame.m: + (-[WebFrame _isMainFrame]): + * WebView/WebFrameInternal.h: + * WebView/WebMainResourceLoader.m: + (-[WebMainResourceLoader willSendRequest:redirectResponse:]): + (-[WebMainResourceLoader continueAfterContentPolicy:response:]): + (-[WebMainResourceLoader checkContentPolicyForResponse:]): + (-[WebMainResourceLoader loadWithRequestNow:]): + * WebView/WebView.m: + +2006-06-12 Tim Omernick + + Reviewed by Maciej. + + intermittent assertion failure in -[WebBasePluginPackage dealloc] running layout tests + + * Plugins/WebNetscapePluginPackage.m: + (-[WebNetscapePluginPackage _initWithPath:]): + Renamed from -initWithPath:. Instead of releasing/deallocating self on error, return NO. + (-[WebNetscapePluginPackage initWithPath:]): + Call the new -_initWithPath:. If it returns NO, unload the plugin package before deallocating it. + +2006-06-11 Darin Adler + + - try to fix Windows build + + * COM/WebKitDLL.cpp: (loadResourceIntoArray): Use Vector instead of + DeprecatedByteArray. + +2006-06-11 Mitz Pettel + + Reviewed by Tim H. + + - fix http://bugs.webkit.org/show_bug.cgi?id=8672 + Red outline from web inspector reappears after inspector is closed + + * WebInspector/WebInspector.m: + (-[NSWindow windowWillClose:]): Added a call to setWebFrame to avoid further + load progress notifications. + (-[NSWindow setWebFrame:]): Changed to resign the WebView's hostWindow rather + than its window for close notifications, to avoid resigning from all windows' close + notifications (including the inspector window's) when the WebView is in a hidden tab. + Also changed to prevent highlighting the initial focused node. + +2006-06-11 Anders Carlsson + + Reviewed by Tim. + + http://bugs.webkit.org/show_bug.cgi?id=9390 + Move full-frame plugins to WebCore + + * Plugins/WebBaseNetscapePluginStream.h: + * Plugins/WebBaseNetscapePluginStream.m: + (-[WebBaseNetscapePluginStream instance]): + Add instance method which returns the plugin instance. + + * Plugins/WebBasePluginPackage.h: + Add WebPluginManualLoader protocol + + * Plugins/WebNetscapePluginDocumentView.h: Removed. + * Plugins/WebNetscapePluginDocumentView.m: Removed. + + * Plugins/WebNetscapePluginEmbeddedView.h: + * Plugins/WebNetscapePluginEmbeddedView.m: + (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:]): + (-[WebNetscapePluginEmbeddedView dealloc]): + (-[WebNetscapePluginEmbeddedView didStart]): + (-[WebNetscapePluginEmbeddedView pluginView:receivedResponse:]): + (-[WebNetscapePluginEmbeddedView pluginView:receivedData:]): + (-[WebNetscapePluginEmbeddedView pluginView:receivedError:]): + (-[WebNetscapePluginEmbeddedView pluginViewFinishedLoading:]): + (-[WebNetscapePluginEmbeddedView redeliverStream]): + Make WebNetscapePluginEmbeddedView support the WebPluginManualLoader protocol. It creates a plugin stream and feeds the + data manually. Much of this code has been copied from WebNetscapePluginRepresentation. + + * Plugins/WebNetscapePluginRepresentation.h: Removed. + * Plugins/WebNetscapePluginRepresentation.m: Removed. + + * Plugins/WebPluginController.h: + * Plugins/WebPluginController.m: + (-[WebPluginController pluginView:receivedResponse:]): + (-[WebPluginController pluginView:receivedData:]): + (-[WebPluginController pluginView:receivedError:]): + (-[WebPluginController pluginViewFinishedLoading:]): + Make WebPluginController support the WebPluginManualLoader protocol so it can feed data manually to WebKit plugins. + + * Plugins/WebPluginDatabase.m: + (-[WebPluginDatabase refresh]): + Use WebHTMLView and WebHTMLRepresentation when registering/unregistering plug-in MIME types. + + * Plugins/WebPluginDocumentView.h: Removed. + * Plugins/WebPluginDocumentView.m: Removed. + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:DOMElement:loadManually:]): + (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]): + Add loadManually argument. + + (-[WebFrameBridge redirectDataToPlugin:]): + Call down to the HTML representation. + + (-[WebFrameBridge viewForJavaAppletWithFrame:attributeNames:attributeValues:baseURL:DOMElement:]): + Pass NO to loadManually. + + (-[WebFrameBridge determineObjectFromMIMEType:URL:]): + Explicitly check if the MIME type is supported by a plug-in instead of checking the view class. + + * WebCoreSupport/WebViewFactory.m: + (-[WebViewFactory pluginSupportsMIMEType:]): + New function which returns whether any plugins support a given MIME type. + + * WebKit.xcodeproj/project.pbxproj: + Update for removed files. + + * WebView/WebFrame.m: + (-[WebFrame _reloadForPluginChanges]): + Remove view type checks. + + (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]): + (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]): + Remove FIXME comments. + + * WebView/WebHTMLRepresentation.m: + (-[WebHTMLRepresentation _redirectDataToManualLoader:forPluginView:]): + New function which redirects incoming data to a manual loader. + + (-[WebHTMLRepresentation receivedData:withDataSource:]): + (-[WebHTMLRepresentation receivedError:withDataSource:]): + (-[WebHTMLRepresentation finishedLoadingWithDataSource:]): + Optionally redirect incoming data. + + * WebView/WebHTMLRepresentationPrivate.h: + +2006-06-09 John Sullivan + + Reviewed by Tim Omernick and Dave Hyatt. + + WebKit support for computing but not highlighting rects for text matches. + + * WebView/WebHTMLViewPrivate.h: + added markedTextMatchesAreHighlighted/setMarkedTextMatchesAreHighlighted and + rectsForTextMatches, and renamed related methods for clarity/consistency + * WebView/WebHTMLView.m: + (-[WebHTMLView markAllMatchesForText:caseSensitive:]): + renamed, calls similarly-renamed method + (-[WebHTMLView setMarkedTextMatchesAreHighlighted:]): + new method, calls through to bridge + (-[WebHTMLView markedTextMatchesAreHighlighted]): + ditto + (-[WebHTMLView unmarkAllTextMatches]): + renamed + (-[WebHTMLView rectsForTextMatches]): + new method, calls through to bridge + + * WebView/WebViewPrivate.h: + added rectsForTextMatches, renamed other methods (and added highlight: parameter) + * WebView/WebView.m: + (-[WebView markAllMatchesForText:caseSensitive:highlight:]): + renamed for clarity/consistency, and now has highlight: parameter, which is passed down + (-[WebView unmarkAllTextMatches]): + renamed for clarity/consistency, and calls similarly-renamed method lower down. diff got + confused with the end of this and the end of the next method. + (-[WebView rectsForTextMatches]): + new method, calls through to WebHTMLView as related methods currently do + +2006-06-10 Graham Dennis + + + WebView's initWithCoder: method does not set useBackForwardList + correctly + + Reviewed by John Sullivan. + + * WebView/WebView.m: + (-[WebView initWithCoder:]): + Make sure that the function variable useBackForwardList is correctly + set, so that the copy in the _private ivar is set. + +2006-06-09 David Hyatt + + Rename updateFocusState to updateActiveState. + + * WebView/WebHTMLView.m: + (-[WebHTMLView _updateActiveState]): + (-[WebHTMLView viewDidMoveToWindow]): + (-[WebHTMLView windowDidBecomeKey:]): + (-[WebHTMLView windowDidResignKey:]): + (-[WebHTMLView becomeFirstResponder]): + (-[WebHTMLView resignFirstResponder]): + (-[WebHTMLView _formControlIsBecomingFirstResponder:]): + (-[WebHTMLView _formControlIsResigningFirstResponder:]): + * WebView/WebHTMLViewPrivate.h: + +2006-06-09 David Hyatt + + Rename displaysWithFocusAttributes to isActive. + + Reviewed by sfalken + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebHTMLView.m: + (-[WebHTMLView _updateFocusState]): + +2006-06-08 Justin Garcia + + Reviewed by levi + + + Implement execCommand(Insert{Un}OrderedList) + + * WebView/WebFrame.m: + (-[WebFrame _findFrameWithSelection]): Removed an assertion + that we only have one frame with a selection. + * WebView/WebView.m: + (-[WebView selectedFrame]): Ditto. + +2006-06-08 Timothy Hatcher + + Reviewed by Darin and John. + + API: please add a way to turn vertical scrollbar + always on (for Mail, to avoid reflow when typing) + + Adds new methods to lock the scrolling mode on WebDynamicScrollBarsView. + Locking the scroll mode prevents WebCore from changing it as needed. + Also adds an SPI on WebView that will lock the "always on" mode + for each scroller. + + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDynamicScrollBarsView.h: + * WebView/WebDynamicScrollBarsView.m: + (-[WebDynamicScrollBarsView setAllowsScrolling:]): + (-[WebDynamicScrollBarsView allowsScrolling]): + (-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]): + (-[WebDynamicScrollBarsView setAllowsVerticalScrolling:]): + (-[WebDynamicScrollBarsView setHorizontalScrollingMode:]): + (-[WebDynamicScrollBarsView setVerticalScrollingMode:]): + (-[WebDynamicScrollBarsView setScrollingMode:]): + (-[WebDynamicScrollBarsView setHorizontalScrollingModeLocked:]): + (-[WebDynamicScrollBarsView setVerticalScrollingModeLocked:]): + (-[WebDynamicScrollBarsView setScrollingModesLocked:]): + (-[WebDynamicScrollBarsView horizontalScrollingModeLocked]): + (-[WebDynamicScrollBarsView verticalScrollingModeLocked]): + * WebView/WebView.m: + (-[WebView setAlwaysShowVerticalScroller:]): + (-[WebView alwaysShowVerticalScroller]): + (-[WebView setAlwaysShowHorizontalScroller:]): + (-[WebView alwaysShowHorizontalScroller]): + * WebView/WebViewPrivate.h: + +2006-06-08 Darin Adler + + Reviewed by Justin. + + - fix http://bugs.webkit.org/show_bug.cgi?id=8616 + REGRESSION: TinyMCE: Crash on Undo + + * WebView/WebHTMLView.m: + (-[WebHTMLView _topHTMLView]): Added. + (-[WebHTMLView _isTopHTMLView]): Added. + (-[WebHTMLView _insideAnotherHTMLView]): Changed to use _topHTMLView. + (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): + Forward to the top HTML view, so that only the top view ever starts a dragging operation. + Change dragging code to not assume that the dragged node is in the current view's document. + Added checks that the node is an element in a couple places and coordinate conversions. + (-[WebHTMLView _mayStartDragAtEventLocation:]): Forward to the top HTML view. + (-[WebHTMLView addMouseMovedObserver]): Change to do nothing when the dataSource field is 0, + since we now use the dataSource field to get to the WebView. + (-[WebHTMLView removeMouseMovedObserver]): Added a comment. + (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): + Forward to the top HTML view. + (-[WebHTMLView draggingSourceOperationMaskForLocal:]): Assert that it's the top HTML view. + (-[WebHTMLView draggedImage:movedTo:]): Ditto. + (-[WebHTMLView draggedImage:endedAt:operation:]): Ditto. + (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto. + (-[WebHTMLView _canProcessDragWithDraggingInfo:]): Ditto. + (-[WebHTMLView _isMoveDrag]): Ditto. + (-[WebHTMLView draggingUpdatedWithDraggingInfo:actionMask:]): Ditto. + (-[WebHTMLView draggingCancelledWithDraggingInfo:]): Ditto. + (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): Ditto. Also added code to work + with the appropriate bridge when receiving a drag. This fixes the problem where the + top level frame got a selection intended for the inner frame; the source of the bug. + (-[WebHTMLView elementAtPoint:allowShadowContent:]): Added code to convert the coordinates + so this works properly when returning an element from an inner frame. + (-[WebHTMLView setDataSource:]): Added a call to addMouseMovedObserver, needed now that + addMouseMovedObserver won't do anything if called when dataSource is nil. + (-[WebHTMLView _delegateDragSourceActionMask]): Forward to the top HTML view. + + * WebView/WebView.m: + (-[WebViewPrivate dealloc]): Removed code to release dragCaretBridge since that field + is now gone. + (-[WebView moveDragCaretToPoint:]): Always call the main frame's bridge, since the + drag caret is now a page-level item. Later we'll move it to the page bridge. + (-[WebView removeDragCaret]): Ditto. + +2006-06-07 David Hyatt + + Add support for custom highlighting to WebKit. + + Reviewed by justin + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge paintCustomHighlight:forBox:onLine:behindText:]): + * WebView/WebHTMLView.m: + (-[WebHTMLView _highlighterForType:]): + * WebView/WebHTMLViewInternal.h: + * WebView/WebHTMLViewPrivate.h: + +2006-06-07 Adele Peterson + + Reviewed by Hyatt. + + Added resources for missingImage and textAreaResizeCorner. + + * COM/WebKitDLL.cpp: + (loadResourceIntoArray): Added. Returns a DeprecatedByteArray with the resource's data. + * WebKit.vcproj/WebKit.rc: Added missing image and resize pngs as resources. + * WebKit.vcproj/WebKit.vcproj: Added pngs. + * WebKit.vcproj/missingImage.png: Added. + * WebKit.vcproj/resource.h: Added entries for pngs. + * WebKit.vcproj/textAreaResizeCorner.png: Added. + +2006-06-07 David Hyatt + + Add SPI for setting and removing custom highlighters. + + Reviewed by Tim H + + * WebView/WebHTMLView.m: + (-[WebTextCompleteController dealloc]): + (-[WebHTMLView _setHighlighter:ofType:]): + (-[WebHTMLView _removeHighlighterOfType:]): + * WebView/WebHTMLViewInternal.h: + * WebView/WebHTMLViewPrivate.h: + +2006-06-06 Adele Peterson + + Reviewed by Justin. + + * COM/WebView.cpp: + (WebView::keyPress): Added case for VK_RETURN. + +2006-06-06 Anders Carlsson + + Reviewed by John. + + * WebView/WebFrame.m: + (-[WebFrame _reloadForPluginChanges]): + Don't traverse the view hierarchy looking for plugin views. Instead, just + ask the frame whether it contains any plugins. + +2006-06-03 Steve Falkenburg + + Reviewed by hyatt. + + Add implementation of loadHTMLString for Spinneret + + * COM/WebFrame.cpp: + (WebFrame::loadHTMLString): + +2006-06-02 Steve Falkenburg + + Reviewed by darin. + + New hosting for Spinneret to avoid static linking + + * COM: Added. + * COM/Interfaces: Added. + * COM/Interfaces/DOMCSS.idl: Added. + * COM/Interfaces/DOMCore.idl: Added. + * COM/Interfaces/DOMHTML.idl: Added. + * COM/Interfaces/DOMRange.idl: Added. + * COM/Interfaces/IWebArchive.idl: Added. + * COM/Interfaces/IWebAttributedString.idl: Added. + * COM/Interfaces/IWebBackForwardList.idl: Added. + * COM/Interfaces/IWebDataSource.idl: Added. + * COM/Interfaces/IWebDocument.idl: Added. + * COM/Interfaces/IWebDownload.idl: Added. + * COM/Interfaces/IWebEditingDelegate.idl: Added. + * COM/Interfaces/IWebError.idl: Added. + * COM/Interfaces/IWebFrame.idl: Added. + * COM/Interfaces/IWebFrameLoadDelegate.idl: Added. + * COM/Interfaces/IWebFrameView.idl: Added. + * COM/Interfaces/IWebHistoryItem.idl: Added. + * COM/Interfaces/IWebIconDatabase.idl: Added. + * COM/Interfaces/IWebImage.idl: Added. + * COM/Interfaces/IWebMutableURLRequest.idl: Added. + * COM/Interfaces/IWebNotification.idl: Added. + * COM/Interfaces/IWebPolicyDelegate.idl: Added. + * COM/Interfaces/IWebPreferences.idl: Added. + * COM/Interfaces/IWebResource.idl: Added. + * COM/Interfaces/IWebResourceLoadDelegate.idl: Added. + * COM/Interfaces/IWebScriptObject.idl: Added. + * COM/Interfaces/IWebUIDelegate.idl: Added. + * COM/Interfaces/IWebURLAuthenticationChallenge.idl: Added. + * COM/Interfaces/IWebURLRequest.idl: Added. + * COM/Interfaces/IWebURLResponse.idl: Added. + * COM/Interfaces/IWebUndoManager.idl: Added. + * COM/Interfaces/IWebView.idl: Added. + * COM/Interfaces/WebKit.idl: Added. + * COM/WebBackForwardList.cpp: Added. + (WebBackForwardList::WebBackForwardList): + (WebBackForwardList::~WebBackForwardList): + (WebBackForwardList::createInstance): + (WebBackForwardList::QueryInterface): + (WebBackForwardList::AddRef): + (WebBackForwardList::Release): + (WebBackForwardList::addItem): + (WebBackForwardList::goBack): + (WebBackForwardList::goForward): + (WebBackForwardList::goToItem): + (WebBackForwardList::backItem): + (WebBackForwardList::currentItem): + (WebBackForwardList::forwardItem): + (WebBackForwardList::backListWithLimit): + (WebBackForwardList::forwardListWithLimit): + (WebBackForwardList::capacity): + (WebBackForwardList::setCapacity): + (WebBackForwardList::backListCount): + (WebBackForwardList::forwardListCount): + (WebBackForwardList::containsItem): + (WebBackForwardList::itemAtIndex): + (WebBackForwardList::setPageCacheSize): + (WebBackForwardList::pageCacheSize): + * COM/WebBackForwardList.h: Added. + * COM/WebDataSource.cpp: Added. + (WebDataSource::WebDataSource): + (WebDataSource::~WebDataSource): + (WebDataSource::createInstance): + (WebDataSource::QueryInterface): + (WebDataSource::AddRef): + (WebDataSource::Release): + (WebDataSource::initWithRequest): + (WebDataSource::data): + (WebDataSource::representation): + (WebDataSource::webFrame): + (WebDataSource::initialRequest): + (WebDataSource::request): + (WebDataSource::response): + (WebDataSource::textEncodingName): + (WebDataSource::isLoading): + (WebDataSource::pageTitle): + (WebDataSource::unreachableURL): + (WebDataSource::webArchive): + (WebDataSource::mainResource): + (WebDataSource::subresources): + (WebDataSource::subresourceForURL): + (WebDataSource::addSubresource): + * COM/WebDataSource.h: Added. + * COM/WebFrame.cpp: Added. + (WebFrame::WebFramePrivate::WebFramePrivate): + (WebFrame::WebFramePrivate::~WebFramePrivate): + (WebFrame::WebFrame): + (WebFrame::~WebFrame): + (WebFrame::createInstance): + (WebFrame::QueryInterface): + (WebFrame::AddRef): + (WebFrame::Release): + (WebFrame::initWithName): + (WebFrame::name): + (WebFrame::webView): + (WebFrame::frameView): + (WebFrame::DOMDocument): + (WebFrame::frameElement): + (WebFrame::loadRequest): + (WebFrame::loadData): + (WebFrame::loadHTMLString): + (WebFrame::loadAlternateHTMLString): + (WebFrame::loadArchive): + (WebFrame::dataSource): + (WebFrame::provisionalDataSource): + (WebFrame::stopLoading): + (WebFrame::reload): + (WebFrame::findFrameNamed): + (WebFrame::parentFrame): + (WebFrame::childFrames): + (WebFrame::paint): + (WebFrame::impl): + (WebFrame::loadDataSource): + (WebFrame::loading): + (WebFrame::goToItem): + (WebFrame::loadItem): + (WebSystemMainMemory): + (WebFrame::getObjectCacheSize): + (WebFrame::receivedRedirect): + (WebFrame::receivedResponse): + (WebFrame::receivedData): + (WebFrame::receivedAllData): + (WebFrame::openURL): + (WebFrame::submitForm): + (WebFrame::setTitle): + (WebFrame::setStatusText): + * COM/WebFrame.h: Added. + * COM/WebHistoryItem.cpp: Added. + (WebHistoryItem::WebHistoryItem): + (WebHistoryItem::~WebHistoryItem): + (WebHistoryItem::createInstance): + (WebHistoryItem::QueryInterface): + (WebHistoryItem::AddRef): + (WebHistoryItem::Release): + (WebHistoryItem::initWithURLString): + (WebHistoryItem::originalURLString): + (WebHistoryItem::URLString): + (WebHistoryItem::title): + (WebHistoryItem::lastVisitedTimeInterval): + (WebHistoryItem::setAlternateTitle): + (WebHistoryItem::alternateTitle): + (WebHistoryItem::icon): + * COM/WebHistoryItem.h: Added. + * COM/WebIconDatabase.cpp: Added. + (WebIconDatabase::WebIconDatabase): + (WebIconDatabase::~WebIconDatabase): + (WebIconDatabase::createInstance): + (WebIconDatabase::QueryInterface): + (WebIconDatabase::AddRef): + (WebIconDatabase::Release): + (WebIconDatabase::sharedIconDatabase): + (WebIconDatabase::iconForURL): + (WebIconDatabase::defaultIconWithSize): + (WebIconDatabase::retainIconForURL): + (WebIconDatabase::releaseIconForURL): + (WebIconDatabase::delayDatabaseCleanup): + (WebIconDatabase::allowDatabaseCleanup): + * COM/WebIconDatabase.h: Added. + * COM/WebKitClassFactory.cpp: Added. + (WebKitClassFactory::WebKitClassFactory): + (WebKitClassFactory::~WebKitClassFactory): + (WebKitClassFactory::QueryInterface): + (WebKitClassFactory::AddRef): + (WebKitClassFactory::Release): + (WebKitClassFactory::CreateInstance): + (WebKitClassFactory::LockServer): + * COM/WebKitClassFactory.h: Added. + * COM/WebKitDLL.cpp: Added. + (DllMain): + (DllGetClassObject): + (DllCanUnloadNow): + (DllUnregisterServer): + (DllRegisterServer): + * COM/WebKitDLL.h: Added. + * COM/WebMutableURLRequest.cpp: Added. + (WebMutableURLRequest::WebMutableURLRequest): + (WebMutableURLRequest::~WebMutableURLRequest): + (WebMutableURLRequest::createInstance): + (WebMutableURLRequest::QueryInterface): + (WebMutableURLRequest::AddRef): + (WebMutableURLRequest::Release): + (WebMutableURLRequest::requestWithURL): + (WebMutableURLRequest::allHTTPHeaderFields): + (WebMutableURLRequest::cachePolicy): + (WebMutableURLRequest::HTTPBody): + (WebMutableURLRequest::HTTPBodyStream): + (WebMutableURLRequest::HTTPMethod): + (WebMutableURLRequest::HTTPShouldHandleCookies): + (WebMutableURLRequest::initWithURL): + (WebMutableURLRequest::mainDocumentURL): + (WebMutableURLRequest::timeoutInterval): + (WebMutableURLRequest::URL): + (WebMutableURLRequest::valueForHTTPHeaderField): + (WebMutableURLRequest::addValue): + (WebMutableURLRequest::setAllHTTPHeaderFields): + (WebMutableURLRequest::setCachePolicy): + (WebMutableURLRequest::setHTTPBody): + (WebMutableURLRequest::setHTTPBodyStream): + (WebMutableURLRequest::setHTTPMethod): + (WebMutableURLRequest::setHTTPShouldHandleCookies): + (WebMutableURLRequest::setMainDocumentURL): + (WebMutableURLRequest::setTimeoutInterval): + (WebMutableURLRequest::setURL): + (WebMutableURLRequest::setValue): + (WebMutableURLRequest::setFormData): + (WebMutableURLRequest::formData): + * COM/WebMutableURLRequest.h: Added. + * COM/WebView.cpp: Added. + (WebView::WebView): + (WebView::~WebView): + (WebView::createInstance): + (WebView::mouseMoved): + (WebView::mouseDown): + (WebView::mouseUp): + (WebView::mouseDoubleClick): + (WebView::keyPress): + (registerWebView): + (WebViewWndProc): + (calculateScrollDelta): + (scrollMessageForKey): + (WebView::goToItem): + (WebView::QueryInterface): + (WebView::AddRef): + (WebView::Release): + (WebView::canShowMIMEType): + (WebView::canShowMIMETypeAsHTML): + (WebView::MIMETypesShownAsHTML): + (WebView::setMIMETypesShownAsHTML): + (WebView::URLFromPasteboard): + (WebView::URLTitleFromPasteboard): + (WebView::initWithFrame): + (WebView::setUIDelegate): + (WebView::uiDelegate): + (WebView::setResourceLoadDelegate): + (WebView::resourceLoadDelegate): + (WebView::setDownloadDelegate): + (WebView::downloadDelegate): + (WebView::setFrameLoadDelegate): + (WebView::frameLoadDelegate): + (WebView::setPolicyDelegate): + (WebView::policyDelegate): + (WebView::mainFrame): + (WebView::backForwardList): + (WebView::setMaintainsBackForwardList): + (WebView::goBack): + (WebView::goForward): + (WebView::goToBackForwardItem): + (WebView::setTextSizeMultiplier): + (WebView::textSizeMultiplier): + (WebView::setApplicationNameForUserAgent): + (WebView::applicationNameForUserAgent): + (WebView::setCustomUserAgent): + (WebView::customUserAgent): + (WebView::userAgentForURL): + (WebView::supportsTextEncoding): + (WebView::setCustomTextEncodingName): + (WebView::customTextEncodingName): + (WebView::setMediaStyle): + (WebView::mediaStyle): + (WebView::stringByEvaluatingJavaScriptFromString): + (WebView::windowScriptObject): + (WebView::setPreferences): + (WebView::preferences): + (WebView::setPreferencesIdentifier): + (WebView::preferencesIdentifier): + (WebView::setHostWindow): + (WebView::hostWindow): + (WebView::searchFor): + (WebView::registerViewClass): + (WebView::takeStringURLFrom): + (WebView::stopLoading): + (WebView::reload): + (WebView::canGoBack): + (WebView::canGoForward): + (WebView::canMakeTextLarger): + (WebView::makeTextLarger): + (WebView::canMakeTextSmaller): + (WebView::makeTextSmaller): + (WebView::computedStyleForElement): + (WebView::editableDOMRangeForPoint): + (WebView::setSelectedDOMRange): + (WebView::selectedDOMRange): + (WebView::selectionAffinity): + (WebView::setEditable): + (WebView::isEditable): + (WebView::setTypingStyle): + (WebView::typingStyle): + (WebView::setSmartInsertDeleteEnabled): + (WebView::smartInsertDeleteEnabled): + (WebView::setContinuousSpellCheckingEnabled): + (WebView::isContinuousSpellCheckingEnabled): + (WebView::spellCheckerDocumentTag): + (WebView::undoManager): + (WebView::setEditingDelegate): + (WebView::editingDelegate): + (WebView::styleDeclarationWithText): + (WebView::replaceSelectionWithNode): + (WebView::replaceSelectionWithText): + (WebView::replaceSelectionWithMarkupString): + (WebView::replaceSelectionWithArchive): + (WebView::deleteSelection): + (WebView::applyStyle): + (WebView::copy): + (WebView::cut): + (WebView::paste): + (WebView::copyFont): + (WebView::pasteFont): + (WebView::delete_): + (WebView::pasteAsPlainText): + (WebView::pasteAsRichText): + (WebView::changeFont): + (WebView::changeAttributes): + (WebView::changeDocumentBackgroundColor): + (WebView::changeColor): + (WebView::alignCenter): + (WebView::alignJustified): + (WebView::alignLeft): + (WebView::alignRight): + (WebView::checkSpelling): + (WebView::showGuessPanel): + (WebView::performFindPanelAction): + (WebView::startSpeaking): + (WebView::stopSpeaking): + (WebView::viewWindow): + * COM/WebView.h: Added. + * WebKit.vcproj: Added. + * WebKit.vcproj/Interfaces.vcproj: Added. + * WebKit.vcproj/WebKit.def: Added. + * WebKit.vcproj/WebKit.rc: Added. + * WebKit.vcproj/WebKit.sln: Added. + * WebKit.vcproj/WebKit.vcproj: Added. + * WebKit.vcproj/WebKitGUID.vcproj: Added. + * WebKit.vcproj/autoversion.h: Added. + * WebKit.vcproj/resource.h: Added. + +2006-06-02 Darin Adler + + * WebCoreSupport/WebImageRendererFactory.m: Fix crash on Safari startup + by include NSObject as a superclass (oops!). + +2006-06-01 Darin Adler + + Reviewed by Maciej. + + - WebCore doesn't need to load WebKit images any more; removed code for that + + * Resources/missing_image.tiff: Removed. + * WebCoreSupport/WebImageRendererFactory.h: Removed. + + * WebCoreSupport/WebImageRendererFactory.m: Moved @interface in here. + Removed all but the "threaded decoding" calls that older Safari calls. + This file can go altogether when compatibility with that older Safari + is no longer needed. + + * WebKit.xcodeproj/project.pbxproj: Removed WebImageRendererFactory.h + and missing_image.tiff. + + * WebView/WebFrameView.m: (-[WebFrameView initWithFrame:]): Removed call + to [WebImageRendererFactory createSharedFactory]. + +2006-06-01 Brady Eidson + + Reviewed by Maciej. + + Simple changes to hook up the new WebCore based Icon Database + for testing. + + * ChangeLog: + * Misc/WebIconDatabase.m: + (-[WebIconDatabase _applicationWillTerminate:]): + * Misc/WebIconDatabasePrivate.h: + * WebKit.xcodeproj/project.pbxproj: + +2006-06-01 Anders Carlsson + + Reviewed by Darin. + + http://bugs.webkit.org/show_bug.cgi?id=6309 + multiple problems prevent bookmarking/back button technique for AJAX/DHTML applications from working + + * Misc/WebNSURLExtras.m: + (-[NSString _webkit_URLFragment]): + Don't include the "#" character in the fragment. + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge historyURL:]): + New function, returns the history URL for a given position in the back/forward list + + * WebView/WebFrame.m: + (-[WebFrame _loadItem:withLoadType:]): + Always call scrollToAnchorWithURL, even if there is no fragment. This way we keep the WebCore frame's + URL up-to-date. + +2006-06-01 Maciej Stachowiak + + Reviewed by Anders. + + - fixed "REGRESSION: Can't order from Pizza Hut (ToT, 05/24/06)" + http://bugs.webkit.org/show_bug.cgi?id=9103 + + * WebView/WebDataSource.m: + (-[WebDataSource _willSendRequest:forResource:redirectResponse:]): Set up the + User-Agent header. + * WebView/WebDataSourceInternal.h: + * WebView/WebLoader.m: + (-[NSURLProtocol willSendRequest:redirectResponse:]): Pass a mutable URL request + so the above can work. + +2006-06-01 Anders Carlsson + + Reviewed by Darin. + + * WebView/WebFrameView.m: + (+[WebFrameView _canShowMIMETypeAsHTML:]): + Use _webkit_objectForMIMEType here so we'll get an object back for "text/". + +2006-05-31 David Hyatt + + Make programmatic focus/blur actually work on sub-frames. Make the + top-level UI delegate get called for deactivation of windows. + + Reviewed by darin + + * WebCoreSupport/WebFrameBridge.m: + (-[WebFrameBridge activateWindow]): + (-[WebFrameBridge deactivateWindow]): + (-[WebFrameBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]): + (-[WebFrameBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): + * WebKit.xcodeproj/project.pbxproj: + +=== WebKit-521.12 === + +2006-05-26 David Harrison + + Reviewed by John Sullivan. + + Add a list type parameter and a return value to _increaseSelectionListLevel + + * WebView/WebHTMLView.m: + (-[WebHTMLView _increaseSelectionListLevel]): + - Now returns DOMNode* + + (-[WebHTMLView _increaseSelectionListLevelOrdered]): + (-[WebHTMLView _increaseSelectionListLevelUnordered]): + - Added. These also return DOMNode* + + * WebView/WebHTMLViewPrivate.h: + - Updated as above + +2006-05-25 Tim Omernick + + Reviewed by Anders. + + + REGRESSION: Flash movie audible but not visible until window is resized + + * Plugins/WebNetscapePluginDocumentView.m: + (-[WebNetscapePluginDocumentView dataSourceUpdated:]): + Layout if needed here. Maciej recently removed the "LayoutAcceptable" frame state, which used to + cause plugin document views to lay out immediately upon receiving data. This call to -layout has + the same effect. + +=== WebKit-521.11.1 === + +2006-05-25 Timothy Hatcher + + Reviewed by Tim O. + + WebKit fails to compile for ppc64 + 64-bit: WebKit uses FSSpec which is not available in 64-bit + Gets WebKit building under 64-bit. Rename WebNSInt and WebNSUInt to WebNSInteger and WebNSUInteger. + Start using WebNSInteger where we need to match AppKit API usage of NSInteger. + + HIWebView and a couple of helper functions are disabled until they can be moved off of QuickDraw. + HIWebView needs to be reworked to not use QuickDraw, needed for 64-bit + + * Carbon/CarbonUtils.m: disabled this file in 64-bit + * Carbon/CarbonWindowAdapter.m: + (-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:disableOrdering:carbon:]): + * Carbon/CarbonWindowFrame.m: + (+[CarbonWindowFrame frameRectForContentRect:styleMask:]): + (+[CarbonWindowFrame contentRectForFrameRect:styleMask:]): + (+[CarbonWindowFrame minFrameSizeForMinContentSize:styleMask:]): + (-[CarbonWindowFrame frameRectForContentRect:styleMask:]): + (-[CarbonWindowFrame contentRectForFrameRect:styleMask:]): + (-[CarbonWindowFrame minFrameSizeForMinContentSize:styleMask:]): + * Carbon/HIViewAdapter.m: disabled this file in 64-bit + * Carbon/HIWebView.m: disabled this file in 64-bit + (HIWebViewEventHandler): + * DefaultDelegates/WebDefaultResourceLoadDelegate.m: + (-[WebDefaultResourceLoadDelegate webView:resource:didReceiveContentLength:fromDataSource:]): + * History/WebBackForwardList.m: + (-[WebBackForwardList removeItem:]): + (-[WebBackForwardList goToItem:]): + * Misc/WebDownload.m: + (-[WebDownloadInternal download:didReceiveDataOfLength:]): + * Misc/WebFileDatabase.m: + (UniqueFilePathForKey): + * Misc/WebIconDatabase.m: + (-[NSMutableDictionary retainIconForURL:]): + (-[NSMutableDictionary releaseIconForURL:]): + (-[WebIconDatabase _totalRetainCountForIconURLString:]): + (-[WebIconDatabase _retainIconForIconURLString:]): + (-[WebIconDatabase _releaseIconForIconURLString:]): + * Misc/WebSearchableTextView.m: + (-[NSString selectionRect]): + * Misc/WebTypesInternal.h: Added. + * Plugins/WebBaseNetscapePluginStream.m: + (-[WebBaseNetscapePluginStream _destroyStream]): + (CarbonPathFromPOSIXPath): + * Plugins/WebBaseNetscapePluginView.m: + (-[WebBaseNetscapePluginView sendActivateEvent:]): + (-[WebBaseNetscapePluginView sendUpdateEvent]): + (TSMEventHandler): + (-[WebBaseNetscapePluginView _postURL:target:len:buf:file:notifyData:sendNotification:allowHeaders:]): + (-[WebBaseNetscapePluginView _printedPluginBitmap]): + (-[NSData _web_locationAfterFirstBlankLine]): + * Plugins/WebBasePluginPackage.m: + (-[WebBasePluginPackage hash]): + * Plugins/WebNetscapePluginPackage.m: + (-[WebNetscapePluginPackage load]): + (functionPointerForTVector): + * WebInspector/WebInspector.m: + (-[WebInspector _updateSystemColors]): + * WebKit.xcodeproj/project.pbxproj: + * WebView/WebDataSource.m: + (-[WebDataSource _didReceiveData:contentLength:forResource:]): + * WebView/WebFrame.m: + (-[WebFrame _sendRemainingDelegateMessagesWithIdentifier:response:length:error:]): + * WebView/WebHTMLView.m: + (-[WebHTMLView drawRect:]): + (-[WebHTMLView characterIndexForPoint:]): + (-[WebHTMLView conversationIdentifier]): + * WebView/WebResourceLoadDelegate.h: + * WebView/WebUIDelegate.h: + * WebView/WebView.h: + * WebView/WebView.m: + (-[WebView _mouseDidMoveOverElement:modifierFlags:]): + (-[WebView spellCheckerDocumentTag]): + * WebView/WebViewInternal.h: + * WebView/WebViewPrivate.h: + +=== WebKit-521.11 === + +2006-05-23 Maciej Stachowiak + + Reviewed by Tim. + + - more loader refactoring to simplify things and remove knowledge of WebView from WebSubresourceLoader + + * WebCoreSupport/WebSubresourceLoader.m: + (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]): + (-[WebSubresourceLoader didReceiveResponse:]): + * WebView/WebDataSource.m: + (-[WebDataSource _loadIcon]): + (-[WebDataSource _startLoading]): + * WebView/WebFrame.m: + (-[WebFrame _loadRequest:archive:]): + (-[WebFrame _loadItem:withLoadType:]): + (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): + (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): + (-[WebFrame _addExtraFieldsToRequest:mainResource:alwaysFromRequest:]): + * WebView/WebFrameInternal.h: + * WebView/WebFramePrivate.h: + * WebView/WebLoader.h: + * WebView/WebLoader.m: + * WebView/WebMainResourceLoader.m: + (-[WebMainResourceLoader initWithDataSource:]): + (-[WebMainResourceLoader didReceiveResponse:]): + +2006-05-23 Tim Omernick + + Reviewed by John Sullivan. + + REGRESSION (420+): After clearing history and closing bookmark view window, + attempting to select Safari's menu bar results in a crash + + * Misc/WebNSWindowExtras.m: + (replacementPostWindowNeedsDisplay): + My fix yesterday for 4557117 was not quite good enough. Now that we cancel the display timer for a + window *before* it deallocates, we need to make sure that while a window deallocates, no new display + timers are scheduled for that window. This is actually possible, as 4558301 demonstrates. + Luckily, NSWindow sets a handy "windowDying" flag when it deallocates, so we can just check that flag + and bail out of the throttle hack if it is set. This should fix the last of the crashes involving + display timers scheduled for deallocated or deallocating windows. + +2006-05-23 Maciej Stachowiak + + Reviewed by Eric. + + - remove knowledge of WebView from WebLoader in preparation for moving the code down + + * WebView/WebDataSource.m: + (-[WebDataSource _defersCallbacks]): + (-[WebDataSource _identifierForInitialRequest:]): + (-[WebDataSource _willSendRequest:forResource:redirectResponse:]): + (-[WebDataSource _didReceiveAuthenticationChallenge:forResource:]): + (-[WebDataSource _didCancelAuthenticationChallenge:forResource:]): + (-[WebDataSource _didReceiveResponse:forResource:]): + (-[WebDataSource _didReceiveData:contentLength:forResource:]): + (-[WebDataSource _didFinishLoadingForResource:]): + (-[WebDataSource _didFailLoadingWithError:forResource:]): + (-[WebDataSource _downloadWithLoadingConnection:request:response:proxy:]): + (-[WebDataSource _privateBrowsingEnabled]): + * WebView/WebDataSourceInternal.h: + * WebView/WebLoader.h: + * WebView/WebLoader.m: + (-[WebLoader releaseResources]): + (-[WebLoader setDataSource:]): + (-[WebLoader willSendRequest:redirectResponse:]): + (-[WebLoader didReceiveAuthenticationChallenge:]): + (-[WebLoader didCancelAuthenticationChallenge:]): + (-[WebLoader didReceiveResponse:]): + (-[WebLoader didReceiveData:lengthReceived:]): + (-[WebLoader signalFinish]): + (-[WebLoader didFinishLoading]): + (-[WebLoader didFailWithError:]): + (-[WebLoader willCacheResponse:]): + (-[WebLoader cancelWithError:]): + * WebView/WebMainResourceLoader.m: + (-[WebMainResourceLoader continueAfterContentPolicy:response:]): + * WebView/WebView.m: + (-[WebView _incrementProgressForIdentifier:response:]): + (-[WebView _incrementProgressForIdentifier:data:]): + (-[WebView _completeProgressForIdentifier:]): + * WebView/WebViewInternal.h: + +=== WebKit-521.10 === + +2006-05-22 Tim Omernick + + Reviewed by Geoff. + + TOT REGRESSION: Repro crash in cancelPendingWindowDisplay --> _timerRelease when + opening file from file open dialog + + Note that I could not reproduce this situation at all on any of my machines; I had to debug this on Geoff's + machine. + + * Misc/WebNSWindowExtras.m: + (replacementDealloc): + Cancel display timer before dealloc, not after. Cancelling the timer can cause a message to be sent to the + window; best to do that before the window deallocates. + (replacementFinalize): + ditto + +2006-05-20 Maciej Stachowiak + + Reviewed by Beth. + + - fix assertion failure on layout tests + + * WebView/WebDataSource.m: + (-[WebDataSource _mainReceivedError:complete:]): Don't do anything + if this data source is no longer connected to a frame. Used to be + this couldn't happen because the WebView would have been nil, but + we no longer go through the WebView. + +2006-05-20 Timothy Hatcher + + Reviewed by Anders. + + Bug 9018: REGRESSION: resizing the top area of the inspector does not grow as expected + http://bugs.webkit.org/show_bug.cgi?id=9018 + + Use clientHeight now that offsetHeight includes the border and padding. + clientHeight should have been used initially. + + * WebInspector/WebInspector.m: + (-[WebInspector resizeTopArea]): + +2006-05-18 Maciej Stachowiak + + Reviewed by Eric. + + - remove loading-related code from WebView + http://bugs.webkit.org/show_bug.cgi?id=8981 + + * Plugins/WebNetscapePluginStream.m: + (-[WebNetscapePlugInStreamLoader didFinishLoading]): + (-[WebNetscapePlugInStreamLoader didFailWithError:]): + * WebCoreSupport/WebSubresourceLoader.m: + (-[WebSubresourceLoader receivedError:]): + (-[WebSubresourceLoader signalFinish]): + * WebView/WebDataSource.m: + (-[WebDataSource _stopLoading]): + (-[WebDataSource _receivedMainResourceError:complete:]): + (-[WebDataSource _finishedLoadingResource]): + (-[WebDataSource _mainReceivedBytesSoFar:complete:]): + (-[WebDataSource _receivedError:]): + (-[WebDataSource _mainReceivedError:complete:]): + * WebView/WebDataSourceInternal.h: + * WebView/WebFrame.m: + (-[WebFrame _sendRemainingDelegateMessagesWithIdentifier:response:length:error:]): + * WebView/WebMainResourceLoader.m: + (-[WebMainResourceLoader didReceiveData:lengthReceived:]): + (-[WebMainResourceLoader didFinishLoading]): + * WebView/WebView.m: + * WebView/WebViewInternal.h: + +2006-05-18 Tim Omernick + + Reviewed by John Sullivan. + + More options needed for window display throttle + + We decided to play it safe and leave our window flushing behavior unchanged from the previous + public release. By default, CoreGraphics deferred updates are once again OFF, and the window + display throttle is OFF. + + Individual applications should set the WebKitThrottleWindowDisplayPreferenceKey and + WebKitEnableDeferredUpdatesPreferenceKey defaults to suit their needs. + + Old behavior (like 10.4.6): WebKitThrottleWindowDisplayPreferenceKey=0 (or unset), + WebKitEnableDeferredUpdatesPreferenceKey (or unset). + + Tear-free scrolling/animations: WebKitThrottleWindowDisplayPreferenceKey=0 (or unset), + WebKitEnableDeferredUpdatesPreferenceKey=1. While this configuration fixes the tearing issues + caused by over-flushing, some applications will experience performance problems as over-flushing + with CG deferred updates enabled will cause the app to block. + + Tear-free scrolling/animations, high performance: WebKitThrottleWindowDisplayPreferenceKey=1, + WebKitEnableDeferredUpdatesPreferenceKey=1. This is the riskiest configuration in that it + enables the window display throttle "feature", potentially breaking applications' assumptions + about when displays occur. However, it provides the "best of both worlds", in that updates + are tear-free, and performance impact should me minimal. + + * WebView/WebPreferenceKeysPrivate.h: + Declared WebKitThrottleWindowDisplayPreferenceKey and WebKitEnableDeferredUpdatesPreferenceKey. + + * WebView/WebFrameView.m: + (-[WebFrameView initWithFrame:]): + Turn off CG deferred updates if WebKitEnableDeferredUpdatesPreferenceKey is NO or has no value. + Added some comments. + +2006-05-18 John Sullivan + + Reviewed by Darin Adler. + + - fixed REGRESSION: WebFrameView no longer responds to responder methods sent by Safari code + + * WebView/WebView.m: + (-[WebView _responderForResponderOperations]): + Treat sibling views of the main frameView the same as views outside of the webview for the purposes of this mechanism. + +2006-05-18 Tim Omernick + + Reviewed by John Sullivan. + + Make disabling window throttle safer + + * Misc/WebNSWindowExtras.m: + (+[NSWindow _webkit_enableWindowDisplayThrottle]): + Don't assume that +_webkit_disableWindowDisplayThrottle restored the NSWindow method implementations; + now we'll only swizzle them once, and our replacement IMPs will call the old IMPs when the window + throttle is disabled. This is a safer approach when other components/"haxies" override the same methods + that we are overriding, as it allows the overrides to "chain" properly. + Moved the dictionary initialization code down a bit. The order doesn't matter here. + (disableWindowDisplayThrottleApplierFunction): + Noticed that this could have been written safer with respect to the timer having the last reference to + the window. I never experienced a crash here, but this code is definitely safer. + (+[NSWindow _webkit_disableWindowDisplayThrottle]): + Don't restore NSWindow method implementations; just clear the flag, flush pending displays, and destroy + the dictionary. + (replacementPostWindowNeedsDisplay): + If throttling is disabled, just call the original IMP. + (clearWindowDisplayInfo): + Added an assert. + (replacementDealloc): + Don't call clearWindowDisplayInfo() when throttling is disabled. + (replacementFinalize): + ditto + (cancelPendingWindowDisplay): + Removed an unnecessary assertion. + +2006-05-17 Tim Omernick + + Reviewed by Kevin Decker and John Sullivan. + + REGRESSION: Window throttle code can sometimes leak NSWindows + + The window display throttle depended on windows being closed before they were deallocated; this is + not guaranteed by AppKit. Windows that were being released without being closed were getting stuck + in our NSWindow -> WindowDisplayInfo dictionary. + + * Misc/WebNSWindowExtras.m: + (+[NSWindow _webkit_enableWindowDisplayThrottle]): + Don't retain the NSWindow keys in the window display info dictionary. + Instead of overriding -close, override -dealloc and -finalize so that we can remove the NSWindow -> + WindowDisplayInfo mapping when a window deallocates. + (+[NSWindow _webkit_disableWindowDisplayThrottle]): + Restore -dealloc and -finalize. + (clearWindowDisplayInfo): + Factored the WindowDisplayInfo cleanup code out of the now-defunct replacementClose(). + (replacementClose): + Removed; no longer needed. + (replacementDealloc): + Clear the WindowDisplayInfo for the window after deallocation. + (replacementFinalize): + ditto + (-[NSWindow _webkit_doPendingPostWindowNeedsDisplay:]): + Rewrote this method to be safe in the case where the firing display timer has the last reference to the + window. + Added comments. + +2006-05-17 bradeeoh + + Reviewed by Tim Hatcher + + Consolidated WebDatabase base class into WebFileDatabase as the inheritance relationship became + obsolete. This improves readability and sets the stage for a further in-depth rewrite of the + WebIcon* code. + + * Misc/WebDatabase.h: Removed. + * Misc/WebDatabase.m: Removed. + * Misc/WebFileDatabase.h: + * Misc/WebFileDatabase.m: + (-[WebFileDatabaseOp dealloc]): + (-[WebFileDatabase dealloc]): + (-[WebFileDatabase path]): + (-[WebFileDatabase isOpen]): + (-[WebFileDatabase sizeLimit]): + * WebKit.xcodeproj/project.pbxproj: + +2006-05-17 Adele Peterson + + Reviewed by Hyatt. + + WebKit part of initial checkin to prepare for http://bugs.webkit.org/show_bug.cgi?id=8948 + Switch to use new text field implementation for